superio/nuvoton/nct5572d: Add missing logical devices

While the actual pins behind these devices are not exposed on the chip,
the enable registers are implemented in hardware. Allow to turn these LDNs
off, like the vendor bios for asrock/e350m1 does.

Change-Id: I4d6d5a8de12b09095138cacbad62b2dfbbe54028
Signed-off-by: Kyösti Mälkki <kyosti.malkki@gmail.com>
Reviewed-on: http://review.coreboot.org/12213
Tested-by: build bot (Jenkins)
Reviewed-by: Paul Menzel <paulepanter@users.sourceforge.net>
Reviewed-by: Felix Held <felix-coreboot@felixheld.de>
This commit is contained in:
Kyösti Mälkki 2015-10-27 18:00:57 +02:00
parent 70460249fd
commit 3b01cf17d2
2 changed files with 8 additions and 0 deletions

View File

@ -18,6 +18,8 @@
#define SUPERIO_NUVOTON_NCT5572D
/* Logical Device Numbers (LDN). */
#define NCT5572D_FDC 0x00
#define NCT5572D_PP 0x01
#define NCT5572D_SP1 0x02 /* Com1 */
#define NCT5572D_IR 0x03
#define NCT5572D_KBC 0x05
@ -35,8 +37,10 @@
/* virtual LDN for GPIO */
#define NCT5572D_GPIO2 ((0 << 8) | NCT5572D_GPIO235_V)
#define NCT5572D_GPIO3 ((1 << 8) | NCT5572D_GPIO235_V)
#define NCT5572D_GPIO4 ((2 << 8) | NCT5572D_GPIO235_V)
#define NCT5572D_GPIO5 ((3 << 8) | NCT5572D_GPIO235_V)
#define NCT5572D_GPIO6 ((1 << 8) | NCT5572D_GPIO689_V)
#define NCT5572D_GPIO7 ((2 << 8) | NCT5572D_GPIO689_V)
#define NCT5572D_GPIO8 ((3 << 8) | NCT5572D_GPIO689_V)
#define NCT5572D_GPIO9 ((4 << 8) | NCT5572D_GPIO689_V)

View File

@ -76,6 +76,8 @@ static struct device_operations ops = {
};
static struct pnp_info pnp_dev_info[] = {
{ &ops, NCT5572D_FDC}, /* no pins, removed from datasheet */
{ &ops, NCT5572D_PP}, /* no pins, removed from datasheet */
{ &ops, NCT5572D_SP1, PNP_IO0 | PNP_IRQ0, {0x0FF8, 0}, },
{ &ops, NCT5572D_IR, PNP_IO0 | PNP_IRQ0, {0x0FF8, 0}, },
{ &ops, NCT5572D_KBC, PNP_IO0 | PNP_IO1 | PNP_IRQ0 | PNP_IRQ1, {0x0FFF, 0}, {0x0FFF, 4}, },
@ -89,8 +91,10 @@ static struct pnp_info pnp_dev_info[] = {
{ &ops, NCT5572D_GPIO_PP_OD},
{ &ops, NCT5572D_GPIO2},
{ &ops, NCT5572D_GPIO3},
{ &ops, NCT5572D_GPIO4}, /* no pins, removed from datasheet */
{ &ops, NCT5572D_GPIO5},
{ &ops, NCT5572D_GPIO6},
{ &ops, NCT5572D_GPIO7}, /* no pins, removed from datasheet */
{ &ops, NCT5572D_GPIO8},
{ &ops, NCT5572D_GPIO9},
};