superio/nuvoton/nct5539d: use SuperIO ACPI generator
Adds SuperIO SSDT ACPI generator[1] support. Not tested on real hardware. [1] https://review.coreboot.org/c/coreboot/+/33033 Change-Id: If9fd56efd40ee0f860e206882418c8bdc7c16802 Signed-off-by: Maxim Polyakov <max.senia.poliak@gmail.com> Reviewed-on: https://review.coreboot.org/c/coreboot/+/36380 Tested-by: build bot (Jenkins) <no-reply@coreboot.org> Reviewed-by: Felix Held <felix-coreboot@felixheld.de>
This commit is contained in:
parent
c4f77d943a
commit
0dd8fe7ec3
|
@ -14,3 +14,5 @@
|
||||||
##
|
##
|
||||||
|
|
||||||
ramstage-$(CONFIG_SUPERIO_NUVOTON_NCT5539D) += superio.c
|
ramstage-$(CONFIG_SUPERIO_NUVOTON_NCT5539D) += superio.c
|
||||||
|
ramstage-$(CONFIG_SUPERIO_NUVOTON_NCT5539D) += ../../common/ssdt.c
|
||||||
|
ramstage-$(CONFIG_SUPERIO_NUVOTON_NCT5539D) += ../../common/generic.c
|
||||||
|
|
|
@ -40,6 +40,26 @@ static void nct5539d_init(struct device *dev)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#if CONFIG(HAVE_ACPI_TABLES)
|
||||||
|
/* Provide ACPI HIDs for generic Super I/O SSDT */
|
||||||
|
static const char *nct5539d_acpi_hid(const struct device *dev)
|
||||||
|
{
|
||||||
|
if ((dev->path.type != DEVICE_PATH_PNP) ||
|
||||||
|
(dev->path.pnp.port == 0) ||
|
||||||
|
((dev->path.pnp.device & 0xff) > NCT5539D_DS))
|
||||||
|
return NULL;
|
||||||
|
|
||||||
|
switch (dev->path.pnp.device & 0xff) {
|
||||||
|
case NCT5539D_SP1:
|
||||||
|
return ACPI_HID_COM;
|
||||||
|
case NCT5539D_KBC:
|
||||||
|
return ACPI_HID_KEYBOARD;
|
||||||
|
default:
|
||||||
|
return ACPI_HID_PNP;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
|
||||||
static struct device_operations ops = {
|
static struct device_operations ops = {
|
||||||
.read_resources = pnp_read_resources,
|
.read_resources = pnp_read_resources,
|
||||||
.set_resources = pnp_set_resources,
|
.set_resources = pnp_set_resources,
|
||||||
|
@ -47,6 +67,11 @@ static struct device_operations ops = {
|
||||||
.enable = pnp_alt_enable,
|
.enable = pnp_alt_enable,
|
||||||
.init = nct5539d_init,
|
.init = nct5539d_init,
|
||||||
.ops_pnp_mode = &pnp_conf_mode_8787_aa,
|
.ops_pnp_mode = &pnp_conf_mode_8787_aa,
|
||||||
|
#if CONFIG(HAVE_ACPI_TABLES)
|
||||||
|
.acpi_fill_ssdt_generator = superio_common_fill_ssdt_generator,
|
||||||
|
.acpi_name = superio_common_ldn_acpi_name,
|
||||||
|
.acpi_hid = nct5539d_acpi_hid,
|
||||||
|
#endif
|
||||||
};
|
};
|
||||||
|
|
||||||
static struct pnp_info pnp_dev_info[] = {
|
static struct pnp_info pnp_dev_info[] = {
|
||||||
|
|
Loading…
Reference in New Issue