[coreboot-gerrit] Change in coreboot[master]: device/pnp: remove struct io_info

Samuel Holland (Code Review) gerrit at coreboot.org
Wed Jun 7 06:32:01 CEST 2017


Samuel Holland has uploaded this change for review. ( https://review.coreboot.org/20078


Change subject: device/pnp: remove struct io_info
......................................................................

device/pnp: remove struct io_info

The 'set' field was not used anywhere. Replace the struct with a simple
integer.

superio.c updates performed with:
sed -i -r 's/\{ ?0(x([[:digit:]abcdefABCDEF]{3,4}))?, (0x)?[04] ?\}/0\1/g' src/superio/*/*/superio.c
sed -i 's/{},/0,/g' src/superio/*/*/superio.c

Change-Id: I1e7853844605cd2a6d568caf05488e1218fb53f9
Signed-off-by: Samuel Holland <samuel at sholland.org>
---
M src/device/pnp_device.c
M src/include/device/pnp.h
M src/superio/fintek/f71805f/superio.c
M src/superio/fintek/f71808a/superio.c
M src/superio/fintek/f71859/superio.c
M src/superio/fintek/f71863fg/superio.c
M src/superio/fintek/f71869ad/superio.c
M src/superio/fintek/f71872/superio.c
M src/superio/fintek/f81216h/superio.c
M src/superio/fintek/f81865f/superio.c
M src/superio/fintek/f81866d/superio.c
M src/superio/intel/i3100/superio.c
M src/superio/intel/i8900/superio.c
M src/superio/ite/it8671f/superio.c
M src/superio/ite/it8712f/superio.c
M src/superio/ite/it8716f/superio.c
M src/superio/ite/it8718f/superio.c
M src/superio/ite/it8721f/superio.c
M src/superio/ite/it8728f/superio.c
M src/superio/ite/it8772f/superio.c
M src/superio/ite/it8783ef/superio.c
M src/superio/nsc/pc87309/superio.c
M src/superio/nsc/pc87360/superio.c
M src/superio/nsc/pc87366/superio.c
M src/superio/nsc/pc87382/superio.c
M src/superio/nsc/pc87384/superio.c
M src/superio/nsc/pc87392/superio.c
M src/superio/nsc/pc87417/superio.c
M src/superio/nsc/pc97317/superio.c
M src/superio/nuvoton/nct5104d/superio.c
M src/superio/nuvoton/nct5572d/superio.c
M src/superio/nuvoton/nct6776/superio.c
M src/superio/nuvoton/nct6779d/superio.c
M src/superio/nuvoton/nct6791d/superio.c
M src/superio/nuvoton/wpcm450/superio.c
M src/superio/renesas/m3885x/superio.c
M src/superio/smsc/dme1737/superio.c
M src/superio/smsc/kbc1100/superio.c
M src/superio/smsc/lpc47b272/superio.c
M src/superio/smsc/lpc47b397/superio.c
M src/superio/smsc/lpc47m10x/superio.c
M src/superio/smsc/lpc47m15x/superio.c
M src/superio/smsc/lpc47n217/superio.c
M src/superio/smsc/lpc47n227/superio.c
M src/superio/smsc/mec1308/superio.c
M src/superio/smsc/sch4037/superio.c
M src/superio/smsc/sio1036/superio.c
M src/superio/smsc/smscsuperio/superio.c
M src/superio/winbond/w83627dhg/superio.c
M src/superio/winbond/w83627ehg/superio.c
M src/superio/winbond/w83627hf/superio.c
M src/superio/winbond/w83627thg/superio.c
M src/superio/winbond/w83627uhg/superio.c
M src/superio/winbond/w83667hg-a/superio.c
M src/superio/winbond/w83697hf/superio.c
M src/superio/winbond/w83977tf/superio.c
M src/superio/winbond/wpcd376i/superio.c
57 files changed, 341 insertions(+), 345 deletions(-)



  git pull ssh://review.coreboot.org:29418/coreboot refs/changes/78/20078/1

diff --git a/src/device/pnp_device.c b/src/device/pnp_device.c
index a04469b..e7839de 100644
--- a/src/device/pnp_device.c
+++ b/src/device/pnp_device.c
@@ -191,12 +191,12 @@
 
 /* PNP chip operations */
 
-static void pnp_get_ioresource(device_t dev, u8 index, struct io_info *info)
+static void pnp_get_ioresource(device_t dev, u8 index, u16 mask)
 {
 	struct resource *resource;
 	unsigned moving, gran, step;
 
-	if (!info->mask) {
+	if (!mask) {
 		printk(BIOS_ERR, "ERROR: device %s index %d has no mask.\n",
 				dev_path(dev), index);
 		return;
@@ -210,7 +210,7 @@
 
 	/* Get the resource size... */
 
-	moving = info->mask;
+	moving = mask;
 	gran = 15;
 	step = 1 << gran;
 
@@ -238,7 +238,7 @@
 	/* Set the resource size and alignment. */
 	resource->gran  = gran;
 	resource->align = gran;
-	resource->limit = info->mask | (step - 1);
+	resource->limit = mask | (step - 1);
 	resource->size  = 1 << gran;
 }
 
@@ -247,13 +247,13 @@
 	struct resource *resource;
 
 	if (info->flags & PNP_IO0)
-		pnp_get_ioresource(dev, PNP_IDX_IO0, &info->io0);
+		pnp_get_ioresource(dev, PNP_IDX_IO0, info->io0);
 	if (info->flags & PNP_IO1)
-		pnp_get_ioresource(dev, PNP_IDX_IO1, &info->io1);
+		pnp_get_ioresource(dev, PNP_IDX_IO1, info->io1);
 	if (info->flags & PNP_IO2)
-		pnp_get_ioresource(dev, PNP_IDX_IO2, &info->io2);
+		pnp_get_ioresource(dev, PNP_IDX_IO2, info->io2);
 	if (info->flags & PNP_IO3)
-		pnp_get_ioresource(dev, PNP_IDX_IO3, &info->io3);
+		pnp_get_ioresource(dev, PNP_IDX_IO3, info->io3);
 
 	if (info->flags & PNP_IRQ0) {
 		resource = new_resource(dev, PNP_IDX_IRQ0);
diff --git a/src/include/device/pnp.h b/src/include/device/pnp.h
index bb66317..e3839c6 100644
--- a/src/include/device/pnp.h
+++ b/src/include/device/pnp.h
@@ -30,10 +30,6 @@
 
 /* PNP helper operations */
 
-struct io_info {
-	unsigned int mask, set;
-};
-
 struct pnp_info {
 	struct device_operations *ops;
 	unsigned int function; /* Must be at least 16 bits (virtual LDNs)! */
@@ -62,7 +58,7 @@
 #define PNP_MSCC 0x200000
 #define PNP_MSCD 0x400000
 #define PNP_MSCE 0x800000
-	struct io_info io0, io1, io2, io3;
+	u16 io0, io1, io2, io3;
 };
 struct resource *pnp_get_resource(device_t dev, unsigned int index);
 void pnp_enable_devices(struct device *dev, struct device_operations *ops,
diff --git a/src/superio/fintek/f71805f/superio.c b/src/superio/fintek/f71805f/superio.c
index 8df904c..c03d10f 100644
--- a/src/superio/fintek/f71805f/superio.c
+++ b/src/superio/fintek/f71805f/superio.c
@@ -41,11 +41,11 @@
 
 static struct pnp_info pnp_dev_info[] = {
 	/* TODO: Some of the 0x07f8 etc. values may not be correct. */
-	{ &ops, F71805F_FDC,  PNP_IO0 | PNP_IRQ0 | PNP_DRQ0, {0x07f8, 0}, },
-	{ &ops, F71805F_SP1,  PNP_IO0 | PNP_IRQ0, {0x07f8, 0}, },
-	{ &ops, F71805F_SP2,  PNP_IO0 | PNP_IRQ0, {0x07f8, 0}, },
-	{ &ops, F71805F_PP,   PNP_IO0 | PNP_IRQ0 | PNP_DRQ0, {0x07f8, 0}, },
-	{ &ops, F71805F_HWM,  PNP_IO0 | PNP_IRQ0, {0x0ff8, 0}, },
+	{ &ops, F71805F_FDC,  PNP_IO0 | PNP_IRQ0 | PNP_DRQ0, 0x07f8, },
+	{ &ops, F71805F_SP1,  PNP_IO0 | PNP_IRQ0, 0x07f8, },
+	{ &ops, F71805F_SP2,  PNP_IO0 | PNP_IRQ0, 0x07f8, },
+	{ &ops, F71805F_PP,   PNP_IO0 | PNP_IRQ0 | PNP_DRQ0, 0x07f8, },
+	{ &ops, F71805F_HWM,  PNP_IO0 | PNP_IRQ0, 0x0ff8, },
 	{ &ops, F71805F_GPIO, PNP_IRQ0, },
 	{ &ops, F71805F_PME, },
 };
diff --git a/src/superio/fintek/f71808a/superio.c b/src/superio/fintek/f71808a/superio.c
index ee84daf..eef7242 100644
--- a/src/superio/fintek/f71808a/superio.c
+++ b/src/superio/fintek/f71808a/superio.c
@@ -54,12 +54,12 @@
 
 static struct pnp_info pnp_dev_info[] = {
 	/* TODO: Some of the 0x07f8 etc. values may not be correct. */
-	{ &ops, F71808A_SP1,  PNP_IO0 | PNP_IRQ0, {0x07f8, 0}, },
-	{ &ops, F71808A_HWM,  PNP_IO0 | PNP_IRQ0, {0x07f8, 0}, },
-	{ &ops, F71808A_KBC,  PNP_IO0 | PNP_IRQ0 | PNP_IRQ1, {0x07ff, 0}, },
+	{ &ops, F71808A_SP1,  PNP_IO0 | PNP_IRQ0, 0x07f8, },
+	{ &ops, F71808A_HWM,  PNP_IO0 | PNP_IRQ0, 0x07f8, },
+	{ &ops, F71808A_KBC,  PNP_IO0 | PNP_IRQ0 | PNP_IRQ1, 0x07ff, },
 	{ &ops, F71808A_GPIO, PNP_IRQ0, },
-	{ &ops, F71808A_WDT,  PNP_IO0, {0x07f8, 0},},
-	{ &ops, F71808A_CIR,  PNP_IO0 | PNP_IRQ0, {0x07f8, 0}, },
+	{ &ops, F71808A_WDT,  PNP_IO0, 0x07f8,},
+	{ &ops, F71808A_CIR,  PNP_IO0 | PNP_IRQ0, 0x07f8, },
 	{ &ops, F71808A_PME, },
 };
 
diff --git a/src/superio/fintek/f71859/superio.c b/src/superio/fintek/f71859/superio.c
index e710a45..6de68df 100644
--- a/src/superio/fintek/f71859/superio.c
+++ b/src/superio/fintek/f71859/superio.c
@@ -42,7 +42,7 @@
 
 static struct pnp_info pnp_dev_info[] = {
 	/* TODO: Some of the 0x07f8 etc. values may not be correct. */
-	{ &ops, F71859_SP1, PNP_IO0 | PNP_IRQ0, {0x07f8, 0}, },
+	{ &ops, F71859_SP1, PNP_IO0 | PNP_IRQ0, 0x07f8, },
 };
 
 static void enable_dev(struct device *dev)
diff --git a/src/superio/fintek/f71863fg/superio.c b/src/superio/fintek/f71863fg/superio.c
index c108503..3ed269e 100644
--- a/src/superio/fintek/f71863fg/superio.c
+++ b/src/superio/fintek/f71863fg/superio.c
@@ -50,14 +50,14 @@
 
 static struct pnp_info pnp_dev_info[] = {
 	/* TODO: Some of the 0x07f8 etc. values may not be correct. */
-	{ &ops, F71863FG_FDC,  PNP_IO0 | PNP_IRQ0 | PNP_DRQ0, {0x07f8, 0}, },
-	{ &ops, F71863FG_SP1,  PNP_IO0 | PNP_IRQ0, {0x07f8, 0}, },
-	{ &ops, F71863FG_SP2,  PNP_IO0 | PNP_IRQ0, {0x07f8, 0}, },
-	{ &ops, F71863FG_PP,   PNP_IO0 | PNP_IRQ0 | PNP_DRQ0, {0x07f8, 0}, },
-	{ &ops, F71863FG_HWM,  PNP_IO0 | PNP_IRQ0, {0x0ff8, 0}, },
-	{ &ops, F71863FG_KBC,  PNP_IO0 | PNP_IRQ0 | PNP_IRQ1, {0x07ff, 0}, },
+	{ &ops, F71863FG_FDC,  PNP_IO0 | PNP_IRQ0 | PNP_DRQ0, 0x07f8, },
+	{ &ops, F71863FG_SP1,  PNP_IO0 | PNP_IRQ0, 0x07f8, },
+	{ &ops, F71863FG_SP2,  PNP_IO0 | PNP_IRQ0, 0x07f8, },
+	{ &ops, F71863FG_PP,   PNP_IO0 | PNP_IRQ0 | PNP_DRQ0, 0x07f8, },
+	{ &ops, F71863FG_HWM,  PNP_IO0 | PNP_IRQ0, 0x0ff8, },
+	{ &ops, F71863FG_KBC,  PNP_IO0 | PNP_IRQ0 | PNP_IRQ1, 0x07ff, },
 	{ &ops, F71863FG_GPIO, },
-	{ &ops, F71863FG_VID,  PNP_IO0, {0x07f8, 0}, },
+	{ &ops, F71863FG_VID,  PNP_IO0, 0x07f8, },
 	{ &ops, F71863FG_SPI, },
 	{ &ops, F71863FG_PME, },
 };
diff --git a/src/superio/fintek/f71869ad/superio.c b/src/superio/fintek/f71869ad/superio.c
index 6999a13..43a9ee6 100644
--- a/src/superio/fintek/f71869ad/superio.c
+++ b/src/superio/fintek/f71869ad/superio.c
@@ -106,15 +106,15 @@
  *
  */
 static struct pnp_info pnp_dev_info[] = {
-	{ &ops, F71869AD_FDC,  PNP_IO0 | PNP_IRQ0 | PNP_DRQ0, {0x07f8, 0}, },
-	{ &ops, F71869AD_SP1,  PNP_IO0 | PNP_IRQ0, {0x07f8, 0}, },
-	{ &ops, F71869AD_SP2,  PNP_IO0 | PNP_IRQ0, {0x07f8, 0}, },
-	{ &ops, F71869AD_PP,   PNP_IO0 | PNP_IRQ0 | PNP_DRQ0, {0x07f8, 0}, },
-	{ &ops, F71869AD_HWM,  PNP_IO0 | PNP_IRQ0, {0x0ff8, 0}, },
-	{ &ops, F71869AD_KBC,  PNP_IO0 | PNP_IRQ0 | PNP_IRQ1, {0x07ff, 0}, },
+	{ &ops, F71869AD_FDC,  PNP_IO0 | PNP_IRQ0 | PNP_DRQ0, 0x07f8, },
+	{ &ops, F71869AD_SP1,  PNP_IO0 | PNP_IRQ0, 0x07f8, },
+	{ &ops, F71869AD_SP2,  PNP_IO0 | PNP_IRQ0, 0x07f8, },
+	{ &ops, F71869AD_PP,   PNP_IO0 | PNP_IRQ0 | PNP_DRQ0, 0x07f8, },
+	{ &ops, F71869AD_HWM,  PNP_IO0 | PNP_IRQ0, 0x0ff8, },
+	{ &ops, F71869AD_KBC,  PNP_IO0 | PNP_IRQ0 | PNP_IRQ1, 0x07ff, },
 	{ &ops, F71869AD_GPIO, },
 	{ &ops, F71869AD_WDT, },
-	{ &ops, F71869AD_CIR,  PNP_IO0 | PNP_IRQ0, {0x07f8, 0}, },
+	{ &ops, F71869AD_CIR,  PNP_IO0 | PNP_IRQ0, 0x07f8, },
 	{ &ops, F71869AD_PME, },
 };
 
diff --git a/src/superio/fintek/f71872/superio.c b/src/superio/fintek/f71872/superio.c
index d617cb4..c2163bd 100644
--- a/src/superio/fintek/f71872/superio.c
+++ b/src/superio/fintek/f71872/superio.c
@@ -48,14 +48,14 @@
 
 static struct pnp_info pnp_dev_info[] = {
 	/* TODO: Some of the 0x07f8 etc. values may not be correct. */
-	{ &ops, F71872_FDC,  PNP_IO0 | PNP_IRQ0 | PNP_DRQ0, {0x07f8, 0}, },
-	{ &ops, F71872_SP1,  PNP_IO0 | PNP_IRQ0, {0x07f8, 0}, },
-	{ &ops, F71872_SP2,  PNP_IO0 | PNP_IRQ0, {0x07f8, 0}, },
-	{ &ops, F71872_PP,   PNP_IO0 | PNP_IRQ0 | PNP_DRQ0, {0x07f8, 0}, },
-	{ &ops, F71872_HWM,  PNP_IO0 | PNP_IRQ0, {0x0ff8, 0}, },
-	{ &ops, F71872_KBC,  PNP_IO0 | PNP_IRQ0 | PNP_IRQ1, {0x07ff, 0}, },
+	{ &ops, F71872_FDC,  PNP_IO0 | PNP_IRQ0 | PNP_DRQ0, 0x07f8, },
+	{ &ops, F71872_SP1,  PNP_IO0 | PNP_IRQ0, 0x07f8, },
+	{ &ops, F71872_SP2,  PNP_IO0 | PNP_IRQ0, 0x07f8, },
+	{ &ops, F71872_PP,   PNP_IO0 | PNP_IRQ0 | PNP_DRQ0, 0x07f8, },
+	{ &ops, F71872_HWM,  PNP_IO0 | PNP_IRQ0, 0x0ff8, },
+	{ &ops, F71872_KBC,  PNP_IO0 | PNP_IRQ0 | PNP_IRQ1, 0x07ff, },
 	{ &ops, F71872_GPIO, PNP_IRQ0, },
-	{ &ops, F71872_VID,  PNP_IO0, {0x0ff8, 0}, },
+	{ &ops, F71872_VID,  PNP_IO0, 0x0ff8, },
 	{ &ops, F71872_PM, },
 };
 
diff --git a/src/superio/fintek/f81216h/superio.c b/src/superio/fintek/f81216h/superio.c
index 26a719e..17483c3 100644
--- a/src/superio/fintek/f81216h/superio.c
+++ b/src/superio/fintek/f81216h/superio.c
@@ -94,10 +94,10 @@
 };
 
 static struct pnp_info pnp_dev_info[] = {
-	{ &ops, F81216H_SP1,  PNP_IO0 | PNP_IRQ0, {0x07f8, 0}, },
-	{ &ops, F81216H_SP2,  PNP_IO0 | PNP_IRQ0, {0x07f8, 0}, },
-	{ &ops, F81216H_SP3,  PNP_IO0 | PNP_IRQ0, {0x07f8, 0}, },
-	{ &ops, F81216H_SP4,  PNP_IO0 | PNP_IRQ0, {0x07f8, 0}, },
+	{ &ops, F81216H_SP1,  PNP_IO0 | PNP_IRQ0, 0x07f8, },
+	{ &ops, F81216H_SP2,  PNP_IO0 | PNP_IRQ0, 0x07f8, },
+	{ &ops, F81216H_SP3,  PNP_IO0 | PNP_IRQ0, 0x07f8, },
+	{ &ops, F81216H_SP4,  PNP_IO0 | PNP_IRQ0, 0x07f8, },
 	{ &ops, F81216H_WDT, },
 };
 
diff --git a/src/superio/fintek/f81865f/superio.c b/src/superio/fintek/f81865f/superio.c
index 09d47fb..5bc4f6e 100644
--- a/src/superio/fintek/f81865f/superio.c
+++ b/src/superio/fintek/f81865f/superio.c
@@ -48,12 +48,12 @@
 
 static struct pnp_info pnp_dev_info[] = {
 	/* TODO: Some of the 0x7f8 etc. values may not be correct. */
-	{ &ops, F81865F_FDC,  PNP_IO0 | PNP_IRQ0 | PNP_DRQ0, { 0x07f8, 0}, },
-	{ &ops, F81865F_SP1,  PNP_IO0 | PNP_IRQ0, { 0x7f8, 0 }, },
-	{ &ops, F81865F_SP2,  PNP_IO0 | PNP_IRQ0, { 0x7f8, 0 }, },
-	{ &ops, F81865F_KBC,  PNP_IO0 | PNP_IRQ0 | PNP_IRQ1, { 0x07ff, 0}, },
-	{ &ops, F81865F_PP,   PNP_IO0 | PNP_IRQ0 | PNP_DRQ0, { 0x07f8, 0}, },
-	{ &ops, F81865F_HWM,  PNP_IO0 | PNP_IRQ0, { 0xff8, 0}, },
+	{ &ops, F81865F_FDC,  PNP_IO0 | PNP_IRQ0 | PNP_DRQ0, 0x07f8, },
+	{ &ops, F81865F_SP1,  PNP_IO0 | PNP_IRQ0, 0x7f8, },
+	{ &ops, F81865F_SP2,  PNP_IO0 | PNP_IRQ0, 0x7f8, },
+	{ &ops, F81865F_KBC,  PNP_IO0 | PNP_IRQ0 | PNP_IRQ1, 0x07ff, },
+	{ &ops, F81865F_PP,   PNP_IO0 | PNP_IRQ0 | PNP_DRQ0, 0x07f8, },
+	{ &ops, F81865F_HWM,  PNP_IO0 | PNP_IRQ0, 0xff8, },
 	{ &ops, F81865F_GPIO, PNP_IRQ0, },
 	{ &ops, F81865F_PME, },
 };
diff --git a/src/superio/fintek/f81866d/superio.c b/src/superio/fintek/f81866d/superio.c
index 775e2e8..938019d 100644
--- a/src/superio/fintek/f81866d/superio.c
+++ b/src/superio/fintek/f81866d/superio.c
@@ -70,16 +70,16 @@
 
 static struct pnp_info pnp_dev_info[] = {
 	/* TODO: Some of the 0x7f8 etc. values may not be correct. */
-	{ &ops, F81866D_FDC,  PNP_IO0 | PNP_IRQ0 | PNP_DRQ0, { 0x07f8, 0}, },
-	{ &ops, F81866D_SP1,  PNP_IO0 | PNP_IRQ0, { 0x7f8, 0 }, },
-	{ &ops, F81866D_SP2,  PNP_IO0 | PNP_IRQ0, { 0x7f8, 0 }, },
-	{ &ops, F81866D_SP3,  PNP_IO0 | PNP_IRQ0, { 0x7f8, 0 }, },
-	{ &ops, F81866D_SP4,  PNP_IO0 | PNP_IRQ0, { 0x7f8, 0 }, },
-	{ &ops, F81866D_SP5,  PNP_IO0 | PNP_IRQ0, { 0x7f8, 0 }, },
-	{ &ops, F81866D_SP6,  PNP_IO0 | PNP_IRQ0, { 0x7f8, 0 }, },
-	{ &ops, F81866D_KBC,  PNP_IO0 | PNP_IRQ0 | PNP_IRQ1, { 0x07ff, 0}, },
-	{ &ops, F81866D_PP,   PNP_IO0 | PNP_IRQ0 | PNP_DRQ0, { 0x07f8, 0}, },
-	{ &ops, F81866D_HWM,  PNP_IO0 | PNP_IRQ0, { 0xff8, 0}, },
+	{ &ops, F81866D_FDC,  PNP_IO0 | PNP_IRQ0 | PNP_DRQ0, 0x07f8, },
+	{ &ops, F81866D_SP1,  PNP_IO0 | PNP_IRQ0, 0x7f8, },
+	{ &ops, F81866D_SP2,  PNP_IO0 | PNP_IRQ0, 0x7f8, },
+	{ &ops, F81866D_SP3,  PNP_IO0 | PNP_IRQ0, 0x7f8, },
+	{ &ops, F81866D_SP4,  PNP_IO0 | PNP_IRQ0, 0x7f8, },
+	{ &ops, F81866D_SP5,  PNP_IO0 | PNP_IRQ0, 0x7f8, },
+	{ &ops, F81866D_SP6,  PNP_IO0 | PNP_IRQ0, 0x7f8, },
+	{ &ops, F81866D_KBC,  PNP_IO0 | PNP_IRQ0 | PNP_IRQ1, 0x07ff, },
+	{ &ops, F81866D_PP,   PNP_IO0 | PNP_IRQ0 | PNP_DRQ0, 0x07f8, },
+	{ &ops, F81866D_HWM,  PNP_IO0 | PNP_IRQ0, 0xff8, },
 	{ &ops, F81866D_GPIO, PNP_IRQ0, },
 	{ &ops, F81866D_PME, },
 	{ &ops, F81866D_WDT, },
diff --git a/src/superio/intel/i3100/superio.c b/src/superio/intel/i3100/superio.c
index bb7dc7e..1055b7a 100644
--- a/src/superio/intel/i3100/superio.c
+++ b/src/superio/intel/i3100/superio.c
@@ -53,8 +53,8 @@
 };
 
 static struct pnp_info pnp_dev_info[] = {
-	{ &ops, I3100_SP1, PNP_IO0 | PNP_IRQ0, {0x07f8, 0}, },
-	{ &ops, I3100_SP2, PNP_IO0 | PNP_IRQ0, {0x07f8, 0}, },
+	{ &ops, I3100_SP1, PNP_IO0 | PNP_IRQ0, 0x07f8, },
+	{ &ops, I3100_SP2, PNP_IO0 | PNP_IRQ0, 0x07f8, },
 };
 
 static void enable_dev(struct device *dev)
diff --git a/src/superio/intel/i8900/superio.c b/src/superio/intel/i8900/superio.c
index 57649a8..73e9407 100644
--- a/src/superio/intel/i8900/superio.c
+++ b/src/superio/intel/i8900/superio.c
@@ -70,9 +70,9 @@
 };
 
 static struct pnp_info pnp_dev_info[] = {
-	{ &ops, I8900_SP1, PNP_IO0 | PNP_IRQ0, {0x07f8, 0}, },
-	{ &ops, I8900_SP2, PNP_IO0 | PNP_IRQ0, {0x07f8, 0}, },
-	{ &ops, I8900_WDT, PNP_IO0 | PNP_IRQ0, {0x07f8, 0}, },
+	{ &ops, I8900_SP1, PNP_IO0 | PNP_IRQ0, 0x07f8, },
+	{ &ops, I8900_SP2, PNP_IO0 | PNP_IRQ0, 0x07f8, },
+	{ &ops, I8900_WDT, PNP_IO0 | PNP_IRQ0, 0x07f8, },
 };
 
 static void enable_dev(struct device *dev)
diff --git a/src/superio/ite/it8671f/superio.c b/src/superio/ite/it8671f/superio.c
index 60a2414..f69a06c 100644
--- a/src/superio/ite/it8671f/superio.c
+++ b/src/superio/ite/it8671f/superio.c
@@ -49,9 +49,9 @@
 
 /* TODO: FDC, PP, KBCM. */
 static struct pnp_info pnp_dev_info[] = {
-	{ &ops, IT8671F_SP1,  PNP_IO0 | PNP_IRQ0, {0x07f8, 0}, },
-	{ &ops, IT8671F_SP2,  PNP_IO0 | PNP_IRQ0 | PNP_DRQ0 | PNP_DRQ1, {0x07f8, 0}, },
-	{ &ops, IT8671F_KBCK, PNP_IO0 | PNP_IO1 | PNP_IRQ0, {0x07f8, 0}, {0x07f8, 4}, },
+	{ &ops, IT8671F_SP1,  PNP_IO0 | PNP_IRQ0, 0x07f8, },
+	{ &ops, IT8671F_SP2,  PNP_IO0 | PNP_IRQ0 | PNP_DRQ0 | PNP_DRQ1, 0x07f8, },
+	{ &ops, IT8671F_KBCK, PNP_IO0 | PNP_IO1 | PNP_IRQ0, 0x07f8, 0x07f8, },
 };
 
 static void enable_dev(struct device *dev)
diff --git a/src/superio/ite/it8712f/superio.c b/src/superio/ite/it8712f/superio.c
index 9a950e3..6501a60 100644
--- a/src/superio/ite/it8712f/superio.c
+++ b/src/superio/ite/it8712f/superio.c
@@ -62,17 +62,17 @@
 };
 
 static struct pnp_info pnp_dev_info[] = {
-	{ &ops, IT8712F_FDC, PNP_IO0 | PNP_IRQ0 | PNP_DRQ0, {0x0ff8, 0}, },
-	{ &ops, IT8712F_SP1, PNP_IO0 | PNP_IRQ0, {0x0ff8, 0}, },
-	{ &ops, IT8712F_SP2, PNP_IO0 | PNP_IRQ0, {0x0ff8, 0}, },
-	{ &ops, IT8712F_PP, PNP_IO0 | PNP_IRQ0 | PNP_DRQ0, {0x0ffc, 0}, },
-	{ &ops, IT8712F_EC, PNP_IO0 | PNP_IO1 | PNP_IRQ0, {0x0ff8, 0}, {0x0ff8, 4}, },
-	{ &ops, IT8712F_KBCK, PNP_IO0 | PNP_IO1 | PNP_IRQ0, {0x0fff, 0}, {0x0fff, 4}, },
+	{ &ops, IT8712F_FDC, PNP_IO0 | PNP_IRQ0 | PNP_DRQ0, 0x0ff8, },
+	{ &ops, IT8712F_SP1, PNP_IO0 | PNP_IRQ0, 0x0ff8, },
+	{ &ops, IT8712F_SP2, PNP_IO0 | PNP_IRQ0, 0x0ff8, },
+	{ &ops, IT8712F_PP, PNP_IO0 | PNP_IRQ0 | PNP_DRQ0, 0x0ffc, },
+	{ &ops, IT8712F_EC, PNP_IO0 | PNP_IO1 | PNP_IRQ0, 0x0ff8, 0x0ff8, },
+	{ &ops, IT8712F_KBCK, PNP_IO0 | PNP_IO1 | PNP_IRQ0, 0x0fff, 0x0fff, },
 	{ &ops, IT8712F_KBCM, PNP_IRQ0, },
-	{ &ops, IT8712F_GPIO, PNP_IO0 | PNP_IO1 | PNP_IO2 | PNP_IRQ0, {0x0fff, 0}, {0x0ff8, 0}, {0x0ff8, 0}, },
-	{ &ops, IT8712F_MIDI, PNP_IO0 | PNP_IRQ0, {0x0ff8, 0}, },
-	{ &ops, IT8712F_GAME, PNP_IO0, {0x0fff, 0}, },
-	{ &ops, IT8712F_IR, PNP_IO0 | PNP_IRQ0, {0x0ff8, 0}, },
+	{ &ops, IT8712F_GPIO, PNP_IO0 | PNP_IO1 | PNP_IO2 | PNP_IRQ0, 0x0fff, 0x0ff8, 0x0ff8, },
+	{ &ops, IT8712F_MIDI, PNP_IO0 | PNP_IRQ0, 0x0ff8, },
+	{ &ops, IT8712F_GAME, PNP_IO0, 0x0fff, },
+	{ &ops, IT8712F_IR, PNP_IO0 | PNP_IRQ0, 0x0ff8, },
 };
 
 static void enable_dev(struct device *dev)
diff --git a/src/superio/ite/it8716f/superio.c b/src/superio/ite/it8716f/superio.c
index e42b617..09c8bb9 100644
--- a/src/superio/ite/it8716f/superio.c
+++ b/src/superio/ite/it8716f/superio.c
@@ -75,16 +75,16 @@
 };
 
 static struct pnp_info pnp_dev_info[] = {
-	{ &ops, IT8716F_FDC, PNP_IO0 | PNP_IRQ0 | PNP_DRQ0, {0x07f8, 0}, },
-	{ &ops, IT8716F_SP1, PNP_IO0 | PNP_IRQ0, {0x07f8, 0}, },
-	{ &ops, IT8716F_SP2, PNP_IO0 | PNP_IRQ0, {0x07f8, 0}, },
-	{ &ops, IT8716F_PP, PNP_IO0 | PNP_IRQ0 | PNP_DRQ0, {0x07f8, 0}, },
-	{ &ops, IT8716F_EC, PNP_IO0 | PNP_IO1 | PNP_IRQ0, {0x07f8, 0}, {0x07f8, 4}, },
-	{ &ops, IT8716F_KBCK, PNP_IO0 | PNP_IO1 | PNP_IRQ0, {0x07ff, 0}, {0x07ff, 4}, },
+	{ &ops, IT8716F_FDC, PNP_IO0 | PNP_IRQ0 | PNP_DRQ0, 0x07f8, },
+	{ &ops, IT8716F_SP1, PNP_IO0 | PNP_IRQ0, 0x07f8, },
+	{ &ops, IT8716F_SP2, PNP_IO0 | PNP_IRQ0, 0x07f8, },
+	{ &ops, IT8716F_PP, PNP_IO0 | PNP_IRQ0 | PNP_DRQ0, 0x07f8, },
+	{ &ops, IT8716F_EC, PNP_IO0 | PNP_IO1 | PNP_IRQ0, 0x07f8, 0x07f8, },
+	{ &ops, IT8716F_KBCK, PNP_IO0 | PNP_IO1 | PNP_IRQ0, 0x07ff, 0x07ff, },
 	{ &ops, IT8716F_KBCM, PNP_IRQ0, },
-	{ &ops, IT8716F_GPIO, PNP_IO1 | PNP_IO2, {0, 0}, {0x07f8, 0}, {0x07f8, 0}, },
-	{ &ops, IT8716F_MIDI, PNP_IO0 | PNP_IRQ0, {0x07fe, 4}, },
-	{ &ops, IT8716F_GAME, PNP_IO0, {0x07ff, 0}, },
+	{ &ops, IT8716F_GPIO, PNP_IO1 | PNP_IO2, 0, 0x07f8, 0x07f8, },
+	{ &ops, IT8716F_MIDI, PNP_IO0 | PNP_IRQ0, 0x07fe, },
+	{ &ops, IT8716F_GAME, PNP_IO0, 0x07ff, },
 	{ &ops, IT8716F_IR, },
 };
 
diff --git a/src/superio/ite/it8718f/superio.c b/src/superio/ite/it8718f/superio.c
index a384ec0..b4ac679 100644
--- a/src/superio/ite/it8718f/superio.c
+++ b/src/superio/ite/it8718f/superio.c
@@ -64,18 +64,18 @@
 /* TODO: IR. */
 static struct pnp_info pnp_dev_info[] = {
 	{ &ops, IT8718F_FDC,  PNP_IO0 | PNP_IRQ0 | PNP_DRQ0
-			| PNP_MSC0 | PNP_MSC1, {0x0ff8, 0}, },
-	{ &ops, IT8718F_SP1,  PNP_IO0 | PNP_IRQ0, {0x07f8, 0}, },
-	{ &ops, IT8718F_SP2,  PNP_IO0 | PNP_IRQ0, {0x07f8, 0}, },
+			| PNP_MSC0 | PNP_MSC1, 0x0ff8, },
+	{ &ops, IT8718F_SP1,  PNP_IO0 | PNP_IRQ0, 0x07f8, },
+	{ &ops, IT8718F_SP2,  PNP_IO0 | PNP_IRQ0, 0x07f8, },
 	{ &ops, IT8718F_EC,   PNP_IO0 | PNP_IO1 | PNP_IRQ0
 			| PNP_MSC0 | PNP_MSC1 | PNP_MSC2 | PNP_MSC3
 			| PNP_MSC4 | PNP_MSC5 | PNP_MSC6,
-			{0x0ff8, 0}, {0x0ff8, 4}, },
+			0x0ff8, 0x0ff8, },
 	{ &ops, IT8718F_KBCK, PNP_IO0 | PNP_IO1 | PNP_IRQ0
-			| PNP_MSC0, {0x07f8, 0}, {0x07f8, 4}, },
+			| PNP_MSC0, 0x07f8, 0x07f8, },
 	{ &ops, IT8718F_KBCM, PNP_IRQ0 | PNP_MSC0, },
 	{ &ops, IT8718F_PP,   PNP_IO0 | PNP_IO1 | PNP_IRQ0
-			| PNP_DRQ0 | PNP_MSC0, {0x0ff8, 0}, {0x0ff8, 4}, },
+			| PNP_DRQ0 | PNP_MSC0, 0x0ff8, 0x0ff8, },
 };
 
 static void enable_dev(struct device *dev)
diff --git a/src/superio/ite/it8721f/superio.c b/src/superio/ite/it8721f/superio.c
index 1b5d32e..9838659 100644
--- a/src/superio/ite/it8721f/superio.c
+++ b/src/superio/ite/it8721f/superio.c
@@ -54,9 +54,9 @@
 
 /* TODO: FDC, PP, EC, KBCM, IR. */
 static struct pnp_info pnp_dev_info[] = {
-	{ &ops, IT8721F_SP1,  PNP_IO0 | PNP_IRQ0, {0x07f8, 0}, },
-	{ &ops, IT8721F_SP2,  PNP_IO0 | PNP_IRQ0 | PNP_DRQ0 | PNP_DRQ1, {0x07f8, 0}, },
-	{ &ops, IT8721F_KBCK, PNP_IO0 | PNP_IO1 | PNP_IRQ0, {0x07f8, 0}, {0x07f8, 4}, },
+	{ &ops, IT8721F_SP1,  PNP_IO0 | PNP_IRQ0, 0x07f8, },
+	{ &ops, IT8721F_SP2,  PNP_IO0 | PNP_IRQ0 | PNP_DRQ0 | PNP_DRQ1, 0x07f8, },
+	{ &ops, IT8721F_KBCK, PNP_IO0 | PNP_IO1 | PNP_IRQ0, 0x07f8, 0x07f8, },
 };
 
 static void enable_dev(struct device *dev)
diff --git a/src/superio/ite/it8728f/superio.c b/src/superio/ite/it8728f/superio.c
index b8c5b22..8a93e1d 100644
--- a/src/superio/ite/it8728f/superio.c
+++ b/src/superio/ite/it8728f/superio.c
@@ -60,15 +60,15 @@
 };
 
 static struct pnp_info pnp_dev_info[] = {
-	{ &ops, IT8728F_FDC, PNP_IO0 | PNP_IRQ0 | PNP_DRQ0, {0x0ff8, 0}, },
-	{ &ops, IT8728F_SP1, PNP_IO0 | PNP_IRQ0, {0x0ff8, 0}, },
-	{ &ops, IT8728F_SP2, PNP_IO0 | PNP_IRQ0, {0x0ff8, 0}, },
-	{ &ops, IT8728F_PP, PNP_IO0 | PNP_IRQ0 | PNP_DRQ0, {0x0ffc, 0}, },
-	{ &ops, IT8728F_EC, PNP_IO0 | PNP_IO1 | PNP_IRQ0, {0x0ff8, 0}, {0x0ff8, 4}, },
-	{ &ops, IT8728F_KBCK, PNP_IO0 | PNP_IO1 | PNP_IRQ0, {0x0fff, 0}, {0x0fff, 4}, },
+	{ &ops, IT8728F_FDC, PNP_IO0 | PNP_IRQ0 | PNP_DRQ0, 0x0ff8, },
+	{ &ops, IT8728F_SP1, PNP_IO0 | PNP_IRQ0, 0x0ff8, },
+	{ &ops, IT8728F_SP2, PNP_IO0 | PNP_IRQ0, 0x0ff8, },
+	{ &ops, IT8728F_PP, PNP_IO0 | PNP_IRQ0 | PNP_DRQ0, 0x0ffc, },
+	{ &ops, IT8728F_EC, PNP_IO0 | PNP_IO1 | PNP_IRQ0, 0x0ff8, 0x0ff8, },
+	{ &ops, IT8728F_KBCK, PNP_IO0 | PNP_IO1 | PNP_IRQ0, 0x0fff, 0x0fff, },
 	{ &ops, IT8728F_KBCM, PNP_IRQ0, },
-	{ &ops, IT8728F_GPIO, PNP_IO0 | PNP_IO1 | PNP_IO2 | PNP_IRQ0, {0x0fff, 0}, {0x0ff8, 0}, {0x0ff8, 0}, },
-	{ &ops, IT8728F_IR, PNP_IO0 | PNP_IRQ0, {0x0ff8, 0}, },
+	{ &ops, IT8728F_GPIO, PNP_IO0 | PNP_IO1 | PNP_IO2 | PNP_IRQ0, 0x0fff, 0x0ff8, 0x0ff8, },
+	{ &ops, IT8728F_IR, PNP_IO0 | PNP_IRQ0, 0x0ff8, },
 };
 
 static void enable_dev(struct device *dev)
diff --git a/src/superio/ite/it8772f/superio.c b/src/superio/ite/it8772f/superio.c
index 40e0bda..015db80 100644
--- a/src/superio/ite/it8772f/superio.c
+++ b/src/superio/ite/it8772f/superio.c
@@ -267,23 +267,23 @@
 
 static struct pnp_info pnp_dev_info[] = {
 	/* Floppy Disk Controller */
-	{ &ops, IT8772F_FDC, PNP_IO0 | PNP_IRQ0, {0x0ff8, 0}, },
+	{ &ops, IT8772F_FDC, PNP_IO0 | PNP_IRQ0, 0x0ff8, },
 	/* Serial Port 1 */
-	{ &ops, IT8772F_SP1, PNP_IO0 | PNP_IRQ0, {0x0ff8, 0}, },
+	{ &ops, IT8772F_SP1, PNP_IO0 | PNP_IRQ0, 0x0ff8, },
 	/* Environmental Controller */
 	{ &ops, IT8772F_EC, PNP_IO0 | PNP_IO1 | PNP_IRQ0 |
 		PNP_MSC4 | PNP_MSCA,
-	  {0x0ff8, 0}, {0x0ffc, 4}, },
+	  0x0ff8, 0x0ffc, },
 	/* KBC Keyboard */
 	{ &ops, IT8772F_KBCK, PNP_IO0 | PNP_IO1 | PNP_IRQ0,
-	  {0x0fff, 0}, {0x0fff, 4}, },
+	  0x0fff, 0x0fff, },
 	/* KBC Mouse */
 	{ &ops, IT8772F_KBCM, PNP_IRQ0, },
 	/* 27 GPIOs */
 	{ &ops, IT8772F_GPIO, PNP_IO0 | PNP_IO1,
-	  {0x0fff, 0}, {0x0ff8, 0}, },
+	  0x0fff, 0x0ff8, },
 	/* Infrared */
-	{ &ops, IT8772F_IR, PNP_IO0 | PNP_IRQ0, {0x0ff8, 0}, },
+	{ &ops, IT8772F_IR, PNP_IO0 | PNP_IRQ0, 0x0ff8, },
 };
 
 static void enable_dev(struct device *dev)
diff --git a/src/superio/ite/it8783ef/superio.c b/src/superio/ite/it8783ef/superio.c
index f9044e3..71ac4dc 100644
--- a/src/superio/ite/it8783ef/superio.c
+++ b/src/superio/ite/it8783ef/superio.c
@@ -59,23 +59,23 @@
 static struct pnp_info pnp_dev_info[] = {
 	/* Floppy Disk Controller */
 	{ &ops, IT8783EF_FDC, PNP_IO0 | PNP_IRQ0 | PNP_MSC0 | PNP_MSC1,
-	  {0x0ff8, 0}, },
+	  0x0ff8, },
 	/* Serial Port 1 */
-	{ &ops, IT8783EF_SP1, PNP_IO0 | PNP_IRQ0 | PNP_MSC0, {0x0ff8, 0}, },
+	{ &ops, IT8783EF_SP1, PNP_IO0 | PNP_IRQ0 | PNP_MSC0, 0x0ff8, },
 	/* Serial Port 2 */
-	{ &ops, IT8783EF_SP2, PNP_IO0 | PNP_IRQ0 | PNP_MSC0, {0x0ff8, 0}, },
+	{ &ops, IT8783EF_SP2, PNP_IO0 | PNP_IRQ0 | PNP_MSC0, 0x0ff8, },
 	/* Printer Port */
 	{ &ops, IT8783EF_PP,  PNP_IO0 | PNP_IO1 | PNP_IRQ0 | PNP_DRQ0 |
 				PNP_MSC0,
-	  {0x0ffc, 0}, {0x0ffc, 0}, },
+	  0x0ffc, 0x0ffc, },
 	/* Environmental Controller */
 	{ &ops, IT8783EF_EC,  PNP_IO0 | PNP_IO1 | PNP_IRQ0 | PNP_MSC0 |
 				PNP_MSC1 | PNP_MSC2 | PNP_MSC3 | PNP_MSC4 |
 				PNP_MSC5 | PNP_MSC6 | PNP_MSC7,
-	  {0x0ff8, 0}, {0x0ff8, 0}, },
+	  0x0ff8, 0x0ff8, },
 	/* KBC Keyboard */
 	{ &ops, IT8783EF_KBCK, PNP_IO0 | PNP_IO1 | PNP_IRQ0 | PNP_MSC0,
-	  {0x0fff, 0}, {0x0fff, 0}, },
+	  0x0fff, 0x0fff, },
 	/* KBC Mouse */
 	{ &ops, IT8783EF_KBCM, PNP_IRQ0 | PNP_MSC0, },
 	/* GPIO */
@@ -83,17 +83,17 @@
 				PNP_MSC0 | PNP_MSC1 | PNP_MSC2 | PNP_MSC3 |
 				PNP_MSC4 | PNP_MSC5 | PNP_MSC6 | PNP_MSC7 |
 				PNP_MSC8 | PNP_MSC9 | PNP_MSCA | PNP_MSCB,
-	  {0x0ffc, 0}, {0x0fff, 0}, {0x0ff8, 0}, },
+	  0x0ffc, 0x0fff, 0x0ff8, },
 	/* Serial Port 3 */
-	{ &ops, IT8783EF_SP3, PNP_IO0 | PNP_IRQ0 | PNP_MSC0, {0x0ff8, 0}, },
+	{ &ops, IT8783EF_SP3, PNP_IO0 | PNP_IRQ0 | PNP_MSC0, 0x0ff8, },
 	/* Serial Port 4 */
-	{ &ops, IT8783EF_SP4, PNP_IO0 | PNP_IRQ0 | PNP_MSC0, {0x0ff8, 0}, },
+	{ &ops, IT8783EF_SP4, PNP_IO0 | PNP_IRQ0 | PNP_MSC0, 0x0ff8, },
 	/* Serial Port 5 */
-	{ &ops, IT8783EF_SP5, PNP_IO0 | PNP_IRQ0 | PNP_MSC0, {0x0ff8, 0}, },
+	{ &ops, IT8783EF_SP5, PNP_IO0 | PNP_IRQ0 | PNP_MSC0, 0x0ff8, },
 	/* Serial Port 6 */
-	{ &ops, IT8783EF_SP6, PNP_IO0 | PNP_IRQ0 | PNP_MSC0, {0x0ff8, 0}, },
+	{ &ops, IT8783EF_SP6, PNP_IO0 | PNP_IRQ0 | PNP_MSC0, 0x0ff8, },
 	/* Consumer Infrared */
-	{ &ops, IT8783EF_CIR, PNP_IO0 | PNP_IRQ0 | PNP_MSC0, {0x0ff8, 0}, },
+	{ &ops, IT8783EF_CIR, PNP_IO0 | PNP_IRQ0 | PNP_MSC0, 0x0ff8, },
 };
 
 static void enable_dev(struct device *dev)
diff --git a/src/superio/nsc/pc87309/superio.c b/src/superio/nsc/pc87309/superio.c
index 361c4c5..ff36294 100644
--- a/src/superio/nsc/pc87309/superio.c
+++ b/src/superio/nsc/pc87309/superio.c
@@ -43,13 +43,13 @@
 };
 
 static struct pnp_info pnp_dev_info[] = {
-	{ &ops, PC87309_FDC,  PNP_IO0 | PNP_IRQ0 | PNP_DRQ0, {0x07fa, 0}, },
-	{ &ops, PC87309_PP,   PNP_IO0 | PNP_IRQ0 | PNP_DRQ0, {0x04f8, 0}, },
-	{ &ops, PC87309_SP2,  PNP_IO0 | PNP_IRQ0 | PNP_DRQ0 | PNP_DRQ1, {0x07f8, 0}, },
-	{ &ops, PC87309_SP1,  PNP_IO0 | PNP_IRQ0, {0x07f8, 0}, },
+	{ &ops, PC87309_FDC,  PNP_IO0 | PNP_IRQ0 | PNP_DRQ0, 0x07fa, },
+	{ &ops, PC87309_PP,   PNP_IO0 | PNP_IRQ0 | PNP_DRQ0, 0x04f8, },
+	{ &ops, PC87309_SP2,  PNP_IO0 | PNP_IRQ0 | PNP_DRQ0 | PNP_DRQ1, 0x07f8, },
+	{ &ops, PC87309_SP1,  PNP_IO0 | PNP_IRQ0, 0x07f8, },
 	/* TODO: PM. */
 	{ &ops, PC87309_KBCM, PNP_IRQ0, },
-	{ &ops, PC87309_KBCK, PNP_IO0 | PNP_IO1 | PNP_IRQ0, {0x07f8, 0}, {0x7f8, 4}, },
+	{ &ops, PC87309_KBCK, PNP_IO0 | PNP_IO1 | PNP_IRQ0, 0x07f8, 0x7f8, },
 };
 
 static void enable_dev(struct device *dev)
diff --git a/src/superio/nsc/pc87360/superio.c b/src/superio/nsc/pc87360/superio.c
index 8d91e79..237023b 100644
--- a/src/superio/nsc/pc87360/superio.c
+++ b/src/superio/nsc/pc87360/superio.c
@@ -45,17 +45,17 @@
 };
 
 static struct pnp_info pnp_dev_info[] = {
-	{ &ops, PC87360_FDC,  PNP_IO0 | PNP_IRQ0 | PNP_DRQ0, {0x07fa, 0}, },
-	{ &ops, PC87360_PP,   PNP_IO0 | PNP_IRQ0 | PNP_DRQ0, {0x04f8, 0}, },
-	{ &ops, PC87360_SP2,  PNP_IO0 | PNP_IRQ0 | PNP_DRQ0 | PNP_DRQ1, {0x07f8, 0}, },
-	{ &ops, PC87360_SP1,  PNP_IO0 | PNP_IRQ0, {0x07f8, 0}, },
-	{ &ops, PC87360_SWC,  PNP_IO0 | PNP_IRQ0, {0xfff0, 0}, },
+	{ &ops, PC87360_FDC,  PNP_IO0 | PNP_IRQ0 | PNP_DRQ0, 0x07fa, },
+	{ &ops, PC87360_PP,   PNP_IO0 | PNP_IRQ0 | PNP_DRQ0, 0x04f8, },
+	{ &ops, PC87360_SP2,  PNP_IO0 | PNP_IRQ0 | PNP_DRQ0 | PNP_DRQ1, 0x07f8, },
+	{ &ops, PC87360_SP1,  PNP_IO0 | PNP_IRQ0, 0x07f8, },
+	{ &ops, PC87360_SWC,  PNP_IO0 | PNP_IRQ0, 0xfff0, },
 	{ &ops, PC87360_KBCM, PNP_IRQ0, },
-	{ &ops, PC87360_KBCK, PNP_IO0 | PNP_IO1 | PNP_IRQ0, {0x07f8, 0}, {0x07f8, 4}, },
-	{ &ops, PC87360_GPIO, PNP_IO0 | PNP_IRQ0, {0xfff8, 0}, },
-	{ &ops, PC87360_ACB,  PNP_IO0 | PNP_IRQ0, {0xfff8, 0}, },
-	{ &ops, PC87360_FSCM, PNP_IO0 | PNP_IRQ0, {0xfff8, 0}, },
-	{ &ops, PC87360_WDT,  PNP_IO0 | PNP_IRQ0, {0xfffc, 0}, },
+	{ &ops, PC87360_KBCK, PNP_IO0 | PNP_IO1 | PNP_IRQ0, 0x07f8, 0x07f8, },
+	{ &ops, PC87360_GPIO, PNP_IO0 | PNP_IRQ0, 0xfff8, },
+	{ &ops, PC87360_ACB,  PNP_IO0 | PNP_IRQ0, 0xfff8, },
+	{ &ops, PC87360_FSCM, PNP_IO0 | PNP_IRQ0, 0xfff8, },
+	{ &ops, PC87360_WDT,  PNP_IO0 | PNP_IRQ0, 0xfffc, },
 };
 
 static void enable_dev(struct device *dev)
diff --git a/src/superio/nsc/pc87366/superio.c b/src/superio/nsc/pc87366/superio.c
index c02f532..8d5b291 100644
--- a/src/superio/nsc/pc87366/superio.c
+++ b/src/superio/nsc/pc87366/superio.c
@@ -45,17 +45,17 @@
 };
 
 static struct pnp_info pnp_dev_info[] = {
-	{ &ops, PC87366_FDC,  PNP_IO0 | PNP_IRQ0 | PNP_DRQ0, {0x07fa, 0}, },
-	{ &ops, PC87366_PP,   PNP_IO0 | PNP_IRQ0 | PNP_DRQ0, {0x04f8, 0}, },
-	{ &ops, PC87366_SP2,  PNP_IO0 | PNP_IRQ0 | PNP_DRQ0 | PNP_DRQ1, {0x07f8, 0}, },
-	{ &ops, PC87366_SP1,  PNP_IO0 | PNP_IRQ0, {0x07f8, 0}, },
-	{ &ops, PC87366_SWC,  PNP_IO0 | PNP_IRQ0, {0xfff0, 0}, },
+	{ &ops, PC87366_FDC,  PNP_IO0 | PNP_IRQ0 | PNP_DRQ0, 0x07fa, },
+	{ &ops, PC87366_PP,   PNP_IO0 | PNP_IRQ0 | PNP_DRQ0, 0x04f8, },
+	{ &ops, PC87366_SP2,  PNP_IO0 | PNP_IRQ0 | PNP_DRQ0 | PNP_DRQ1, 0x07f8, },
+	{ &ops, PC87366_SP1,  PNP_IO0 | PNP_IRQ0, 0x07f8, },
+	{ &ops, PC87366_SWC,  PNP_IO0 | PNP_IRQ0, 0xfff0, },
 	{ &ops, PC87366_KBCM, PNP_IRQ0, },
-	{ &ops, PC87366_KBCK, PNP_IO0 | PNP_IO1 | PNP_IRQ0, {0x07f8, 0}, {0x07f8, 4}, },
-	{ &ops, PC87366_GPIO, PNP_IO0 | PNP_IRQ0, {0xfff8, 0}, },
-	{ &ops, PC87366_ACB,  PNP_IO0 | PNP_IRQ0, {0xfff8, 0}, },
-	{ &ops, PC87366_FSCM, PNP_IO0 | PNP_IRQ0, {0xfff8, 0}, },
-	{ &ops, PC87366_WDT,  PNP_IO0 | PNP_IRQ0, {0xfffc, 0}, },
+	{ &ops, PC87366_KBCK, PNP_IO0 | PNP_IO1 | PNP_IRQ0, 0x07f8, 0x07f8, },
+	{ &ops, PC87366_GPIO, PNP_IO0 | PNP_IRQ0, 0xfff8, },
+	{ &ops, PC87366_ACB,  PNP_IO0 | PNP_IRQ0, 0xfff8, },
+	{ &ops, PC87366_FSCM, PNP_IO0 | PNP_IRQ0, 0xfff8, },
+	{ &ops, PC87366_WDT,  PNP_IO0 | PNP_IRQ0, 0xfffc, },
 };
 
 static void enable_dev(struct device *dev)
diff --git a/src/superio/nsc/pc87382/superio.c b/src/superio/nsc/pc87382/superio.c
index 377107e..7377c9e 100644
--- a/src/superio/nsc/pc87382/superio.c
+++ b/src/superio/nsc/pc87382/superio.c
@@ -46,10 +46,10 @@
 };
 
 static struct pnp_info pnp_dev_info[] = {
-	{ &ops, PC87382_IR,   PNP_IO0 | PNP_IRQ0 | PNP_DRQ0 | PNP_DRQ1, { 0x07f8, 0 } },
-	{ &ops, PC87382_SP1,  PNP_IO0 | PNP_IRQ0, { 0x07f8, 0 } },
-	{ &ops, PC87382_GPIO, PNP_IO0 | PNP_IRQ0, { 0xfff0, 0 } },
-	{ &ops, PC87382_DOCK, PNP_IO0 | PNP_IRQ0, { 0xfffe, 0 } },
+	{ &ops, PC87382_IR,   PNP_IO0 | PNP_IRQ0 | PNP_DRQ0 | PNP_DRQ1, 0x07f8 },
+	{ &ops, PC87382_SP1,  PNP_IO0 | PNP_IRQ0, 0x07f8 },
+	{ &ops, PC87382_GPIO, PNP_IO0 | PNP_IRQ0, 0xfff0 },
+	{ &ops, PC87382_DOCK, PNP_IO0 | PNP_IRQ0, 0xfffe },
 };
 
 static void enable_dev(struct device *dev)
diff --git a/src/superio/nsc/pc87384/superio.c b/src/superio/nsc/pc87384/superio.c
index b9773a4..bd59a5b 100644
--- a/src/superio/nsc/pc87384/superio.c
+++ b/src/superio/nsc/pc87384/superio.c
@@ -31,10 +31,10 @@
 };
 
 static struct pnp_info pnp_dev_info[] = {
-	{ &ops, PC87384_PP,   PNP_IO0 | PNP_IRQ0 | PNP_DRQ0, {0x04f8, 0} },
-	{ &ops, PC87384_SP1,  PNP_IO0 | PNP_IRQ0, { 0x07f8, 0 } },
-	{ &ops, PC87384_SP2,  PNP_IO0 | PNP_IRQ0, { 0x07f8, 0 } },
-	{ &ops, PC87384_GPIO, PNP_IO0 | PNP_IRQ0, { 0xfff0, 0 } },
+	{ &ops, PC87384_PP,   PNP_IO0 | PNP_IRQ0 | PNP_DRQ0, 0x04f8 },
+	{ &ops, PC87384_SP1,  PNP_IO0 | PNP_IRQ0, 0x07f8 },
+	{ &ops, PC87384_SP2,  PNP_IO0 | PNP_IRQ0, 0x07f8 },
+	{ &ops, PC87384_GPIO, PNP_IO0 | PNP_IRQ0, 0xfff0 },
 };
 
 static void enable_dev(struct device *dev)
diff --git a/src/superio/nsc/pc87392/superio.c b/src/superio/nsc/pc87392/superio.c
index 6b425a5..e75e0a4 100644
--- a/src/superio/nsc/pc87392/superio.c
+++ b/src/superio/nsc/pc87392/superio.c
@@ -37,12 +37,12 @@
 };
 
 static struct pnp_info pnp_dev_info[] = {
-	{ &ops, PC87392_FDC,  PNP_IO0 | PNP_IRQ0 | PNP_DRQ0, {0x07fa, 0} },
-	{ &ops, PC87392_PP,   PNP_IO0 | PNP_IRQ0 | PNP_DRQ0, {0x04f8, 0} },
-	{ &ops, PC87392_SP2,  PNP_IO0 | PNP_IRQ0 | PNP_DRQ0 | PNP_DRQ1, {0x07f8, 0} },
-	{ &ops, PC87392_SP1,  PNP_IO0 | PNP_IRQ0, {0x07f8, 0} },
-	{ &ops, PC87392_GPIO, PNP_IO0 | PNP_IRQ0, {0xfff8, 0} },
-	{ &ops, PC87392_WDT,  PNP_IO0 | PNP_IRQ0, {0xfffc, 0} },
+	{ &ops, PC87392_FDC,  PNP_IO0 | PNP_IRQ0 | PNP_DRQ0, 0x07fa },
+	{ &ops, PC87392_PP,   PNP_IO0 | PNP_IRQ0 | PNP_DRQ0, 0x04f8 },
+	{ &ops, PC87392_SP2,  PNP_IO0 | PNP_IRQ0 | PNP_DRQ0 | PNP_DRQ1, 0x07f8 },
+	{ &ops, PC87392_SP1,  PNP_IO0 | PNP_IRQ0, 0x07f8 },
+	{ &ops, PC87392_GPIO, PNP_IO0 | PNP_IRQ0, 0xfff8 },
+	{ &ops, PC87392_WDT,  PNP_IO0 | PNP_IRQ0, 0xfffc },
 };
 
 static void enable_dev(struct device *dev)
diff --git a/src/superio/nsc/pc87417/superio.c b/src/superio/nsc/pc87417/superio.c
index 7415025..6f9dfe8 100644
--- a/src/superio/nsc/pc87417/superio.c
+++ b/src/superio/nsc/pc87417/superio.c
@@ -46,16 +46,16 @@
 };
 
 static struct pnp_info pnp_dev_info[] = {
-	{ &ops, PC87417_FDC,  PNP_IO0 | PNP_IRQ0 | PNP_DRQ0, {0x07fa, 0}, },
-	{ &ops, PC87417_PP,   PNP_IO0 | PNP_IRQ0 | PNP_DRQ0, {0x04f8, 0}, },
-	{ &ops, PC87417_SP2,  PNP_IO0 | PNP_IRQ0 | PNP_DRQ0 | PNP_DRQ1, {0x07f8, 0}, },
-	{ &ops, PC87417_SP1,  PNP_IO0 | PNP_IRQ0, {0x07f8, 0}, },
-	{ &ops, PC87417_SWC,  PNP_IO0 | PNP_IRQ0, {0xfff0, 0}, },
+	{ &ops, PC87417_FDC,  PNP_IO0 | PNP_IRQ0 | PNP_DRQ0, 0x07fa, },
+	{ &ops, PC87417_PP,   PNP_IO0 | PNP_IRQ0 | PNP_DRQ0, 0x04f8, },
+	{ &ops, PC87417_SP2,  PNP_IO0 | PNP_IRQ0 | PNP_DRQ0 | PNP_DRQ1, 0x07f8, },
+	{ &ops, PC87417_SP1,  PNP_IO0 | PNP_IRQ0, 0x07f8, },
+	{ &ops, PC87417_SWC,  PNP_IO0 | PNP_IRQ0, 0xfff0, },
 	{ &ops, PC87417_KBCM, PNP_IRQ0, },
-	{ &ops, PC87417_KBCK, PNP_IO0 | PNP_IO1 | PNP_IRQ0, {0x07f8, 0}, {0x07f8, 4}, },
-	{ &ops, PC87417_GPIO, PNP_IO0 | PNP_IRQ0, {0xfff8, 0}, },
-	{ &ops, PC87417_XBUS, PNP_IO0 | PNP_IRQ0, {0xffe0, 0}, },
-	{ &ops, PC87417_RTC,  PNP_IO0 | PNP_IO1, {0xfffe, 0}, {0xfffe, 4}, },
+	{ &ops, PC87417_KBCK, PNP_IO0 | PNP_IO1 | PNP_IRQ0, 0x07f8, 0x07f8, },
+	{ &ops, PC87417_GPIO, PNP_IO0 | PNP_IRQ0, 0xfff8, },
+	{ &ops, PC87417_XBUS, PNP_IO0 | PNP_IRQ0, 0xffe0, },
+	{ &ops, PC87417_RTC,  PNP_IO0 | PNP_IO1, 0xfffe, 0xfffe, },
 };
 
 static void enable_dev(struct device *dev)
diff --git a/src/superio/nsc/pc97317/superio.c b/src/superio/nsc/pc97317/superio.c
index 91a3c77..e007ef7 100644
--- a/src/superio/nsc/pc97317/superio.c
+++ b/src/superio/nsc/pc97317/superio.c
@@ -49,15 +49,15 @@
 };
 
 static struct pnp_info pnp_dev_info[] = {
-	{ &ops, PC97317_KBCK, PNP_IO0 | PNP_IO1 | PNP_IRQ0, {0x0ffb, 0}, {0x0ffb, 4}, },
+	{ &ops, PC97317_KBCK, PNP_IO0 | PNP_IO1 | PNP_IRQ0, 0x0ffb, 0x0ffb, },
 	{ &ops, PC97317_KBCM, PNP_IRQ0, },
-	{ &ops, PC97317_RTC,  PNP_IO0 | PNP_IRQ0, {0xfffe, 0}, },
-	{ &ops, PC97317_FDC,  PNP_IO0 | PNP_IRQ0 | PNP_DRQ0, {0xfffa, 0}, },
-	{ &ops, PC97317_PP,   PNP_IO0 | PNP_IRQ0 | PNP_DRQ0, {0x03fc, 0}, },
-	{ &ops, PC97317_SP2,  PNP_IO0 | PNP_IRQ0 | PNP_DRQ0 | PNP_DRQ1, {0xfff8, 0}, },
-	{ &ops, PC97317_SP1,  PNP_IO0 | PNP_IRQ0, {0xfff8, 0}, },
-	{ &ops, PC97317_GPIO, PNP_IO0, {0xfff8, 0}, },
-	{ &ops, PC97317_PM,   PNP_IO0, {0xfffe, 0}, },
+	{ &ops, PC97317_RTC,  PNP_IO0 | PNP_IRQ0, 0xfffe, },
+	{ &ops, PC97317_FDC,  PNP_IO0 | PNP_IRQ0 | PNP_DRQ0, 0xfffa, },
+	{ &ops, PC97317_PP,   PNP_IO0 | PNP_IRQ0 | PNP_DRQ0, 0x03fc, },
+	{ &ops, PC97317_SP2,  PNP_IO0 | PNP_IRQ0 | PNP_DRQ0 | PNP_DRQ1, 0xfff8, },
+	{ &ops, PC97317_SP1,  PNP_IO0 | PNP_IRQ0, 0xfff8, },
+	{ &ops, PC97317_GPIO, PNP_IO0, 0xfff8, },
+	{ &ops, PC97317_PM,   PNP_IO0, 0xfffe, },
 };
 
 static void enable_dev(struct device *dev)
diff --git a/src/superio/nuvoton/nct5104d/superio.c b/src/superio/nuvoton/nct5104d/superio.c
index 980acc7..76e1ffc 100644
--- a/src/superio/nuvoton/nct5104d/superio.c
+++ b/src/superio/nuvoton/nct5104d/superio.c
@@ -147,11 +147,11 @@
 };
 
 static struct pnp_info pnp_dev_info[] = {
-	{ &ops, NCT5104D_FDC,  PNP_IO0 | PNP_IRQ0, {0x07f8, 0}, },
-	{ &ops, NCT5104D_SP1,  PNP_IO0 | PNP_IRQ0, {0x07f8, 0}, },
-	{ &ops, NCT5104D_SP2,  PNP_IO0 | PNP_IRQ0, {0x07f8, 0}, },
-	{ &ops, NCT5104D_SP3,  PNP_IO0 | PNP_IRQ0, {0x07f8, 0}, },
-	{ &ops, NCT5104D_SP4,  PNP_IO0 | PNP_IRQ0, {0x07f8, 0}, },
+	{ &ops, NCT5104D_FDC,  PNP_IO0 | PNP_IRQ0, 0x07f8, },
+	{ &ops, NCT5104D_SP1,  PNP_IO0 | PNP_IRQ0, 0x07f8, },
+	{ &ops, NCT5104D_SP2,  PNP_IO0 | PNP_IRQ0, 0x07f8, },
+	{ &ops, NCT5104D_SP3,  PNP_IO0 | PNP_IRQ0, 0x07f8, },
+	{ &ops, NCT5104D_SP4,  PNP_IO0 | PNP_IRQ0, 0x07f8, },
 	{ &ops, NCT5104D_GPIO_WDT},
 	{ &ops, NCT5104D_GPIO_PP_OD},
 	{ &ops, NCT5104D_GPIO0},
diff --git a/src/superio/nuvoton/nct5572d/superio.c b/src/superio/nuvoton/nct5572d/superio.c
index 8c80a3e..04e6967 100644
--- a/src/superio/nuvoton/nct5572d/superio.c
+++ b/src/superio/nuvoton/nct5572d/superio.c
@@ -96,16 +96,16 @@
 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}, },
-	{ &ops, NCT5572D_CIR, PNP_IO0 | PNP_IRQ0, {0x0FF8, 0}, },
+	{ &ops, NCT5572D_SP1, PNP_IO0 | PNP_IRQ0, 0x0FF8, },
+	{ &ops, NCT5572D_IR, PNP_IO0 | PNP_IRQ0, 0x0FF8, },
+	{ &ops, NCT5572D_KBC, PNP_IO0 | PNP_IO1 | PNP_IRQ0 | PNP_IRQ1, 0x0FFF, 0x0FFF, },
+	{ &ops, NCT5572D_CIR, PNP_IO0 | PNP_IRQ0, 0x0FF8, },
 	{ &ops, NCT5572D_WDT1},
 	{ &ops, NCT5572D_ACPI},
-	{ &ops, NCT5572D_HWM_TSI_FPLED, PNP_IO0 | PNP_IO1 | PNP_IRQ0, {0x0FFE, 0}, {0x0FFE, 4}, },
+	{ &ops, NCT5572D_HWM_TSI_FPLED, PNP_IO0 | PNP_IO1 | PNP_IRQ0, 0x0FFE, 0x0FFE, },
 	{ &ops, NCT5572D_PECI},
 	{ &ops, NCT5572D_SUSLED},
-	{ &ops, NCT5572D_CIRWKUP, PNP_IO0 | PNP_IRQ0, {0x0FF8, 0}, },
+	{ &ops, NCT5572D_CIRWKUP, PNP_IO0 | PNP_IRQ0, 0x0FF8, },
 	{ &ops, NCT5572D_GPIO_PP_OD},
 	{ &ops, NCT5572D_GPIO2},
 	{ &ops, NCT5572D_GPIO3},
diff --git a/src/superio/nuvoton/nct6776/superio.c b/src/superio/nuvoton/nct6776/superio.c
index 85f52cf..1512d56 100644
--- a/src/superio/nuvoton/nct6776/superio.c
+++ b/src/superio/nuvoton/nct6776/superio.c
@@ -51,30 +51,30 @@
 
 static struct pnp_info pnp_dev_info[] = {
 	{ &ops, NCT6776_FDC, PNP_IO0 | PNP_IRQ0 | PNP_DRQ0,
-		{0x0ff8, 0}, },
+		0x0ff8, },
 	{ &ops, NCT6776_PP, PNP_IO0 | PNP_IRQ0 | PNP_DRQ0,
-		{0x0ff8, 0}, },
+		0x0ff8, },
 	{ &ops, NCT6776_SP1, PNP_IO0 | PNP_IRQ0,
-		{0x0ff8, 0}, },
+		0x0ff8, },
 	{ &ops, NCT6776_SP2, PNP_IO0 | PNP_IRQ0,
-		{0x0ff8, 0}, },
+		0x0ff8, },
 	{ &ops, NCT6776_KBC, PNP_IO0 | PNP_IO1 | PNP_IRQ0 | PNP_IRQ1,
-		{0x0fff, 0}, {0x0fff, 4}, },
+		0x0fff, 0x0fff, },
 	{ &ops, NCT6776_CIR, PNP_IO0 | PNP_IRQ0,
-		{0x0ff8, 0}, },
+		0x0ff8, },
 	{ &ops, NCT6776_ACPI},
 	{ &ops, NCT6776_HWM_FPLED, PNP_IO0 | PNP_IO1 | PNP_IRQ0,
-		{0x0ffe, 0}, {0x0ffe, 4}, },
+		0x0ffe, 0x0ffe, },
 	{ &ops, NCT6776_VID},
 	{ &ops, NCT6776_CIRWKUP, PNP_IO0 | PNP_IRQ0,
-		{0x0ff8, 0}, },
+		0x0ff8, },
 	{ &ops, NCT6776_GPIO_PP_OD},
 	{ &ops, NCT6776_SVID},
 	{ &ops, NCT6776_DSLP},
 	{ &ops, NCT6776_GPIOA_LDN},
 	{ &ops, NCT6776_WDT1},
 	{ &ops, NCT6776_GPIOBASE, PNP_IO0,
-		{0x0ff8, 0}, },
+		0x0ff8, },
 	{ &ops, NCT6776_GPIO0},
 	{ &ops, NCT6776_GPIO1},
 	{ &ops, NCT6776_GPIO2},
diff --git a/src/superio/nuvoton/nct6779d/superio.c b/src/superio/nuvoton/nct6779d/superio.c
index ab7a5ac..887ce7c 100644
--- a/src/superio/nuvoton/nct6779d/superio.c
+++ b/src/superio/nuvoton/nct6779d/superio.c
@@ -50,19 +50,19 @@
 };
 
 static struct pnp_info pnp_dev_info[] = {
-	{ &ops, NCT6779D_PP, PNP_IO0 | PNP_IRQ0 | PNP_DRQ0, {0x0ff8, 0}, },
-	{ &ops, NCT6779D_SP1, PNP_IO0 | PNP_IRQ0, {0x0ff8, 0}, },
-	{ &ops, NCT6779D_SP2, PNP_IO0 | PNP_IRQ0, {0x0ff8, 0}, },
-	{ &ops, NCT6779D_KBC, PNP_IO0 | PNP_IO1 | PNP_IRQ0 | PNP_IRQ1, {0x0fff, 0}, {0x0fff, 4}, },
-	{ &ops, NCT6779D_CIR, PNP_IO0 | PNP_IRQ0, {0x0ff8, 0}, },
+	{ &ops, NCT6779D_PP, PNP_IO0 | PNP_IRQ0 | PNP_DRQ0, 0x0ff8, },
+	{ &ops, NCT6779D_SP1, PNP_IO0 | PNP_IRQ0, 0x0ff8, },
+	{ &ops, NCT6779D_SP2, PNP_IO0 | PNP_IRQ0, 0x0ff8, },
+	{ &ops, NCT6779D_KBC, PNP_IO0 | PNP_IO1 | PNP_IRQ0 | PNP_IRQ1, 0x0fff, 0x0fff, },
+	{ &ops, NCT6779D_CIR, PNP_IO0 | PNP_IRQ0, 0x0ff8, },
 	{ &ops, NCT6779D_ACPI},
-	{ &ops, NCT6779D_HWM_FPLED, PNP_IO0 | PNP_IO1 | PNP_IRQ0, {0x0ffe, 0}, {0x0ffe, 4}, },
+	{ &ops, NCT6779D_HWM_FPLED, PNP_IO0 | PNP_IO1 | PNP_IRQ0, 0x0ffe, 0x0ffe, },
 	{ &ops, NCT6779D_WDT1},
-	{ &ops, NCT6779D_CIRWKUP, PNP_IO0 | PNP_IRQ0, {0x0ff8, 0}, },
+	{ &ops, NCT6779D_CIRWKUP, PNP_IO0 | PNP_IRQ0, 0x0ff8, },
 	{ &ops, NCT6779D_GPIO_PP_OD},
 	{ &ops, NCT6779D_PRT80},
 	{ &ops, NCT6779D_DSLP},
-	{ &ops, NCT6779D_GPIOBASE, PNP_IO0, {0x0ff8, 0}, },
+	{ &ops, NCT6779D_GPIOBASE, PNP_IO0, 0x0ff8, },
 	{ &ops, NCT6779D_GPIO0},
 	{ &ops, NCT6779D_GPIO1},
 	{ &ops, NCT6779D_GPIO2},
diff --git a/src/superio/nuvoton/nct6791d/superio.c b/src/superio/nuvoton/nct6791d/superio.c
index f0da0367..f66689e 100644
--- a/src/superio/nuvoton/nct6791d/superio.c
+++ b/src/superio/nuvoton/nct6791d/superio.c
@@ -51,27 +51,27 @@
 
 static struct pnp_info pnp_dev_info[] = {
 	{ &ops, NCT6791D_PP, PNP_IO0 | PNP_IRQ0 | PNP_DRQ0,
-		{0x0ff8, 0}, },
+		0x0ff8, },
 	{ &ops, NCT6791D_SP1, PNP_IO0 | PNP_IRQ0,
-		{0x0ff8, 0}, },
+		0x0ff8, },
 	{ &ops, NCT6791D_SP2, PNP_IO0 | PNP_IRQ0,
-		{0x0ff8, 0}, },
+		0x0ff8, },
 	{ &ops, NCT6791D_KBC, PNP_IO0 | PNP_IO1 | PNP_IRQ0 | PNP_IRQ1,
-		{0x0fff, 0}, {0x0fff, 4}, },
+		0x0fff, 0x0fff, },
 	{ &ops, NCT6791D_CIR, PNP_IO0 | PNP_IRQ0,
-		{0x0ff8, 0}, },
+		0x0ff8, },
 	{ &ops, NCT6791D_ACPI},
 	{ &ops, NCT6791D_HWM_FPLED, PNP_IO0 | PNP_IO1 | PNP_IRQ0,
-		{0x0ffe, 0}, {0x0ffe, 4}, },
+		0x0ffe, 0x0ffe, },
 	{ &ops, NCT6791D_BCLK_WDT2_WDTMEM},
 	{ &ops, NCT6791D_CIRWUP, PNP_IO0 | PNP_IRQ0,
-		{0x0ff8, 0}, },
+		0x0ff8, },
 	{ &ops, NCT6791D_GPIO_PP_OD},
 	{ &ops, NCT6791D_PORT80},
 	{ &ops, NCT6791D_WDT1},
 	{ &ops, NCT6791D_WDTMEM},
 	{ &ops, NCT6791D_GPIOBASE, PNP_IO0,
-		{0x0ff8, 0}, },
+		0x0ff8, },
 	{ &ops, NCT6791D_GPIO0},
 	{ &ops, NCT6791D_GPIO1},
 	{ &ops, NCT6791D_GPIO2},
diff --git a/src/superio/nuvoton/wpcm450/superio.c b/src/superio/nuvoton/wpcm450/superio.c
index 6c1cdb8..0a42d13 100644
--- a/src/superio/nuvoton/wpcm450/superio.c
+++ b/src/superio/nuvoton/wpcm450/superio.c
@@ -45,9 +45,9 @@
 };
 
 static struct pnp_info pnp_dev_info[] = {
-	{ &ops, WPCM450_SP2,  PNP_IO0 | PNP_IRQ0 | PNP_DRQ0 | PNP_DRQ1, {0x07f8, 0}, },
-	{ &ops, WPCM450_SP1,  PNP_IO0 | PNP_IRQ0, {0x07f8, 0}, },
-	{ &ops, WPCM450_KBCK, PNP_IO0 | PNP_IO1 | PNP_IRQ0, {0x07f8, 0}, {0x07f8, 4}, },
+	{ &ops, WPCM450_SP2,  PNP_IO0 | PNP_IRQ0 | PNP_DRQ0 | PNP_DRQ1, 0x07f8, },
+	{ &ops, WPCM450_SP1,  PNP_IO0 | PNP_IRQ0, 0x07f8, },
+	{ &ops, WPCM450_KBCK, PNP_IO0 | PNP_IO1 | PNP_IRQ0, 0x07f8, 0x07f8, },
 };
 
 static void enable_dev(struct device *dev)
diff --git a/src/superio/renesas/m3885x/superio.c b/src/superio/renesas/m3885x/superio.c
index e2082de..94f6a07 100644
--- a/src/superio/renesas/m3885x/superio.c
+++ b/src/superio/renesas/m3885x/superio.c
@@ -54,7 +54,7 @@
 };
 
 static struct pnp_info pnp_dev_info[] = {
-	{ &ops, 0, 0, { 0, 0 }, }
+	{ &ops, 0, 0, 0, }
 };
 
 static void enable_dev(struct device *dev)
diff --git a/src/superio/smsc/dme1737/superio.c b/src/superio/smsc/dme1737/superio.c
index 802735b..7b4b947 100644
--- a/src/superio/smsc/dme1737/superio.c
+++ b/src/superio/smsc/dme1737/superio.c
@@ -50,12 +50,12 @@
 };
 
 static struct pnp_info pnp_dev_info[] = {
-	{ &ops, DME1737_FDC, PNP_IO0 | PNP_IRQ0 | PNP_DRQ0, {0x07f8, 0}, },
-	{ &ops, DME1737_PP,  PNP_IO0 | PNP_IRQ0 | PNP_DRQ0, {0x07f8, 0}, },
-	{ &ops, DME1737_SP1, PNP_IO0 | PNP_IRQ0, {0x07f8, 0}, },
-	{ &ops, DME1737_SP2, PNP_IO0 | PNP_IRQ0, {0x07f8, 0}, },
-	{ &ops, DME1737_KBC, PNP_IO0 | PNP_IO1 | PNP_IRQ0 | PNP_IRQ1, {0x07ff, 0}, {0x07ff, 4}, },
-	{ &ops, DME1737_RT,  PNP_IO0, {0x0780, 0}, },
+	{ &ops, DME1737_FDC, PNP_IO0 | PNP_IRQ0 | PNP_DRQ0, 0x07f8, },
+	{ &ops, DME1737_PP,  PNP_IO0 | PNP_IRQ0 | PNP_DRQ0, 0x07f8, },
+	{ &ops, DME1737_SP1, PNP_IO0 | PNP_IRQ0, 0x07f8, },
+	{ &ops, DME1737_SP2, PNP_IO0 | PNP_IRQ0, 0x07f8, },
+	{ &ops, DME1737_KBC, PNP_IO0 | PNP_IO1 | PNP_IRQ0 | PNP_IRQ1, 0x07ff, 0x07ff, },
+	{ &ops, DME1737_RT,  PNP_IO0, 0x0780, },
 };
 
 static void enable_dev(struct device *dev)
diff --git a/src/superio/smsc/kbc1100/superio.c b/src/superio/smsc/kbc1100/superio.c
index aa17473..448070a 100644
--- a/src/superio/smsc/kbc1100/superio.c
+++ b/src/superio/smsc/kbc1100/superio.c
@@ -45,7 +45,7 @@
 };
 
 static struct pnp_info pnp_dev_info[] = {
-  { &ops, KBC1100_KBC,  PNP_IO0 | PNP_IO1 | PNP_IRQ0 | PNP_IRQ1, { 0x7ff, 0 }, { 0x7ff, 0x4}, },
+  { &ops, KBC1100_KBC,  PNP_IO0 | PNP_IO1 | PNP_IRQ0 | PNP_IRQ1, 0x7ff, 0x7ff, },
 };
 
 static void enable_dev(struct device *dev)
diff --git a/src/superio/smsc/lpc47b272/superio.c b/src/superio/smsc/lpc47b272/superio.c
index 00df880..a269b3b 100644
--- a/src/superio/smsc/lpc47b272/superio.c
+++ b/src/superio/smsc/lpc47b272/superio.c
@@ -61,12 +61,12 @@
 };
 
 static struct pnp_info pnp_dev_info[] = {
-	{ &ops, LPC47B272_FDC, PNP_IO0 | PNP_IRQ0 | PNP_DRQ0, {0x07f8, 0}, },
-	{ &ops, LPC47B272_PP,  PNP_IO0 | PNP_IRQ0 | PNP_DRQ0, {0x07f8, 0}, },
-	{ &ops, LPC47B272_SP1, PNP_IO0 | PNP_IRQ0, {0x07f8, 0}, },
-	{ &ops, LPC47B272_SP2, PNP_IO0 | PNP_IRQ0, {0x07f8, 0}, },
-	{ &ops, LPC47B272_KBC, PNP_IO0 | PNP_IO1 | PNP_IRQ0 | PNP_IRQ1, {0x07ff, 0}, {0x07ff, 4}, },
-	{ &ops, LPC47B272_RT,  PNP_IO0, {0x0780, 0}, },
+	{ &ops, LPC47B272_FDC, PNP_IO0 | PNP_IRQ0 | PNP_DRQ0, 0x07f8, },
+	{ &ops, LPC47B272_PP,  PNP_IO0 | PNP_IRQ0 | PNP_DRQ0, 0x07f8, },
+	{ &ops, LPC47B272_SP1, PNP_IO0 | PNP_IRQ0, 0x07f8, },
+	{ &ops, LPC47B272_SP2, PNP_IO0 | PNP_IRQ0, 0x07f8, },
+	{ &ops, LPC47B272_KBC, PNP_IO0 | PNP_IO1 | PNP_IRQ0 | PNP_IRQ1, 0x07ff, 0x07ff, },
+	{ &ops, LPC47B272_RT,  PNP_IO0, 0x0780, },
 };
 
 /**
diff --git a/src/superio/smsc/lpc47b397/superio.c b/src/superio/smsc/lpc47b397/superio.c
index a4ab46a..93e453f 100644
--- a/src/superio/smsc/lpc47b397/superio.c
+++ b/src/superio/smsc/lpc47b397/superio.c
@@ -135,13 +135,13 @@
 };
 
 static struct pnp_info pnp_dev_info[] = {
-	{ &ops, LPC47B397_FDC, PNP_IO0 | PNP_IRQ0 | PNP_DRQ0, {0x07f8, 0}, },
-	{ &ops, LPC47B397_PP,  PNP_IO0 | PNP_IRQ0 | PNP_DRQ0, {0x07f8, 0}, },
-	{ &ops, LPC47B397_SP1, PNP_IO0 | PNP_IRQ0, {0x07f8, 0}, },
-	{ &ops, LPC47B397_SP2, PNP_IO0 | PNP_IRQ0, {0x07f8, 0}, },
-	{ &ops, LPC47B397_KBC, PNP_IO0 | PNP_IO1 | PNP_IRQ0 | PNP_IRQ1, {0x07ff, 0}, {0x07ff, 4}, },
-	{ &ops_hwm, LPC47B397_HWM,  PNP_IO0, {0x07f0, 0}, },
-	{ &ops, LPC47B397_RT,  PNP_IO0, {0x0780, 0}, },
+	{ &ops, LPC47B397_FDC, PNP_IO0 | PNP_IRQ0 | PNP_DRQ0, 0x07f8, },
+	{ &ops, LPC47B397_PP,  PNP_IO0 | PNP_IRQ0 | PNP_DRQ0, 0x07f8, },
+	{ &ops, LPC47B397_SP1, PNP_IO0 | PNP_IRQ0, 0x07f8, },
+	{ &ops, LPC47B397_SP2, PNP_IO0 | PNP_IRQ0, 0x07f8, },
+	{ &ops, LPC47B397_KBC, PNP_IO0 | PNP_IO1 | PNP_IRQ0 | PNP_IRQ1, 0x07ff, 0x07ff, },
+	{ &ops_hwm, LPC47B397_HWM,  PNP_IO0, 0x07f0, },
+	{ &ops, LPC47B397_RT,  PNP_IO0, 0x0780, },
 };
 
 static void enable_dev(struct device *dev)
diff --git a/src/superio/smsc/lpc47m10x/superio.c b/src/superio/smsc/lpc47m10x/superio.c
index 1fc56d4..58e7c95 100644
--- a/src/superio/smsc/lpc47m10x/superio.c
+++ b/src/superio/smsc/lpc47m10x/superio.c
@@ -59,12 +59,12 @@
 };
 
 static struct pnp_info pnp_dev_info[] = {
-	{ &ops, LPC47M10X2_FDC, PNP_IO0 | PNP_IRQ0 | PNP_DRQ0, {0x07f8, 0}, },
-	{ &ops, LPC47M10X2_PP,  PNP_IO0 | PNP_IRQ0 | PNP_DRQ0, {0x07f8, 0}, },
-	{ &ops, LPC47M10X2_SP1, PNP_IO0 | PNP_IRQ0, {0x07f8, 0}, },
-	{ &ops, LPC47M10X2_SP2, PNP_IO0 | PNP_IRQ0, {0x07f8, 0}, },
-	{ &ops, LPC47M10X2_KBC, PNP_IO0 | PNP_IO1 | PNP_IRQ0 | PNP_IRQ1, {0x07ff, 0}, {0x07ff, 4}, },
-	{ &ops, LPC47M10X2_PME, PNP_IO0, { 0x0f80, 0 }, },
+	{ &ops, LPC47M10X2_FDC, PNP_IO0 | PNP_IRQ0 | PNP_DRQ0, 0x07f8, },
+	{ &ops, LPC47M10X2_PP,  PNP_IO0 | PNP_IRQ0 | PNP_DRQ0, 0x07f8, },
+	{ &ops, LPC47M10X2_SP1, PNP_IO0 | PNP_IRQ0, 0x07f8, },
+	{ &ops, LPC47M10X2_SP2, PNP_IO0 | PNP_IRQ0, 0x07f8, },
+	{ &ops, LPC47M10X2_KBC, PNP_IO0 | PNP_IO1 | PNP_IRQ0 | PNP_IRQ1, 0x07ff, 0x07ff, },
+	{ &ops, LPC47M10X2_PME, PNP_IO0, 0x0f80, },
 };
 
 /**
diff --git a/src/superio/smsc/lpc47m15x/superio.c b/src/superio/smsc/lpc47m15x/superio.c
index 7486938..814b70e 100644
--- a/src/superio/smsc/lpc47m15x/superio.c
+++ b/src/superio/smsc/lpc47m15x/superio.c
@@ -45,11 +45,11 @@
 };
 
 static struct pnp_info pnp_dev_info[] = {
-	{ &ops, LPC47M15X_FDC, PNP_IO0 | PNP_IRQ0 | PNP_DRQ0, {0x07f8, 0}, },
-	{ &ops, LPC47M15X_PP,  PNP_IO0 | PNP_IRQ0 | PNP_DRQ0, {0x07f8, 0}, },
-	{ &ops, LPC47M15X_SP1, PNP_IO0 | PNP_IRQ0, {0x07f8, 0}, },
-	{ &ops, LPC47M15X_SP2, PNP_IO0 | PNP_IRQ0, {0x07f8, 0}, },
-	{ &ops, LPC47M15X_KBC, PNP_IO0 | PNP_IO1 | PNP_IRQ0 | PNP_IRQ1, {0x07ff, 0}, {0x07ff, 4}, },
+	{ &ops, LPC47M15X_FDC, PNP_IO0 | PNP_IRQ0 | PNP_DRQ0, 0x07f8, },
+	{ &ops, LPC47M15X_PP,  PNP_IO0 | PNP_IRQ0 | PNP_DRQ0, 0x07f8, },
+	{ &ops, LPC47M15X_SP1, PNP_IO0 | PNP_IRQ0, 0x07f8, },
+	{ &ops, LPC47M15X_SP2, PNP_IO0 | PNP_IRQ0, 0x07f8, },
+	{ &ops, LPC47M15X_KBC, PNP_IO0 | PNP_IO1 | PNP_IRQ0 | PNP_IRQ1, 0x07ff, 0x07ff, },
 };
 
 static void enable_dev(struct device *dev)
diff --git a/src/superio/smsc/lpc47n217/superio.c b/src/superio/smsc/lpc47n217/superio.c
index 86912a0..9c5dff0 100644
--- a/src/superio/smsc/lpc47n217/superio.c
+++ b/src/superio/smsc/lpc47n217/superio.c
@@ -57,9 +57,9 @@
 };
 
 static struct pnp_info pnp_dev_info[] = {
-	{ &ops, LPC47N217_PP,   PNP_IO0 | PNP_IRQ0 | PNP_DRQ0, {0x07f8, 0}, },
-	{ &ops, LPC47N217_SP1,  PNP_IO0 | PNP_IRQ0, {0x07f8, 0}, },
-	{ &ops, LPC47N217_SP2,  PNP_IO0 | PNP_IRQ0, {0x07f8, 0}, }
+	{ &ops, LPC47N217_PP,   PNP_IO0 | PNP_IRQ0 | PNP_DRQ0, 0x07f8, },
+	{ &ops, LPC47N217_SP1,  PNP_IO0 | PNP_IRQ0, 0x07f8, },
+	{ &ops, LPC47N217_SP2,  PNP_IO0 | PNP_IRQ0, 0x07f8, }
 };
 
 /**
diff --git a/src/superio/smsc/lpc47n227/superio.c b/src/superio/smsc/lpc47n227/superio.c
index af4c7ef..c831957 100644
--- a/src/superio/smsc/lpc47n227/superio.c
+++ b/src/superio/smsc/lpc47n227/superio.c
@@ -55,10 +55,10 @@
 };
 
 static struct pnp_info pnp_dev_info[] = {
-	{ &ops, LPC47N227_PP, PNP_IO0 | PNP_IRQ0 | PNP_DRQ0, {0x07f8, 0}, },
-	{ &ops, LPC47N227_SP1, PNP_IO0 | PNP_IRQ0, {0x07f8, 0}, },
-	{ &ops, LPC47N227_SP2, PNP_IO0 | PNP_IRQ0, {0x07f8, 0}, },
-	{ &ops, LPC47N227_KBDC, PNP_IO0 | PNP_IO1 | PNP_IRQ0, {0x07f8, 0}, {0x07f8, 4}, },
+	{ &ops, LPC47N227_PP, PNP_IO0 | PNP_IRQ0 | PNP_DRQ0, 0x07f8, },
+	{ &ops, LPC47N227_SP1, PNP_IO0 | PNP_IRQ0, 0x07f8, },
+	{ &ops, LPC47N227_SP2, PNP_IO0 | PNP_IRQ0, 0x07f8, },
+	{ &ops, LPC47N227_KBDC, PNP_IO0 | PNP_IO1 | PNP_IRQ0, 0x07f8, 0x07f8, },
 };
 
 /**
diff --git a/src/superio/smsc/mec1308/superio.c b/src/superio/smsc/mec1308/superio.c
index fe2135f..b11374c 100644
--- a/src/superio/smsc/mec1308/superio.c
+++ b/src/superio/smsc/mec1308/superio.c
@@ -49,13 +49,13 @@
 };
 
 static struct pnp_info pnp_dev_info[] = {
-	{ &ops, MEC1308_PM1,  PNP_IO0, { 0x7ff, 0 } },
-	{ &ops, MEC1308_EC1,  PNP_IO0, { 0x7ff, 0 } },
-	{ &ops, MEC1308_EC2,  PNP_IO0, { 0x7ff, 0 } },
-	{ &ops, MEC1308_UART, PNP_IO0 | PNP_IRQ0, {0x0ff8, 0}, },
-	{ &ops, MEC1308_KBC,  PNP_IRQ0, { 0, 0 } /* IO Fixed at 0x60/0x64 */ },
-	{ &ops, MEC1308_EC0,  PNP_IO0, { 0x7ff, 0 } },
-	{ &ops, MEC1308_MBX,  PNP_IO0, { 0x7ff, 0 } },
+	{ &ops, MEC1308_PM1,  PNP_IO0, 0x7ff },
+	{ &ops, MEC1308_EC1,  PNP_IO0, 0x7ff },
+	{ &ops, MEC1308_EC2,  PNP_IO0, 0x7ff },
+	{ &ops, MEC1308_UART, PNP_IO0 | PNP_IRQ0, 0x0ff8, },
+	{ &ops, MEC1308_KBC,  PNP_IRQ0, 0 /* IO Fixed at 0x60/0x64 */ },
+	{ &ops, MEC1308_EC0,  PNP_IO0, 0x7ff },
+	{ &ops, MEC1308_MBX,  PNP_IO0, 0x7ff },
 };
 
 static void enable_dev(struct device *dev)
diff --git a/src/superio/smsc/sch4037/superio.c b/src/superio/smsc/sch4037/superio.c
index 26fdba2..78c6148 100644
--- a/src/superio/smsc/sch4037/superio.c
+++ b/src/superio/smsc/sch4037/superio.c
@@ -48,7 +48,7 @@
 };
 
 static struct pnp_info pnp_dev_info[] = {
-	{ &ops, SCH4037_KBC,  PNP_IO0 | PNP_IO1 | PNP_IRQ0 | PNP_IRQ1, { 0x7ff, 0 }, { 0x7ff, 0x4}, },
+	{ &ops, SCH4037_KBC,  PNP_IO0 | PNP_IO1 | PNP_IRQ0 | PNP_IRQ1, 0x7ff, 0x7ff, },
 };
 
 static void enable_dev(struct device *dev)
diff --git a/src/superio/smsc/sio1036/superio.c b/src/superio/smsc/sio1036/superio.c
index b3ad048..c1bfae3 100644
--- a/src/superio/smsc/sio1036/superio.c
+++ b/src/superio/smsc/sio1036/superio.c
@@ -41,7 +41,7 @@
 };
 
 static struct pnp_info pnp_dev_info[] = {
-	{ &ops, SIO1036_SP1,  PNP_IO0 | PNP_IRQ0, {0x07f8, 0}, },
+	{ &ops, SIO1036_SP1,  PNP_IO0 | PNP_IRQ0, 0x07f8, },
 };
 
 static void enable_dev(struct device *dev)
diff --git a/src/superio/smsc/smscsuperio/superio.c b/src/superio/smsc/smscsuperio/superio.c
index 6cd3382..414ae8d 100644
--- a/src/superio/smsc/smscsuperio/superio.c
+++ b/src/superio/smsc/smscsuperio/superio.c
@@ -194,19 +194,19 @@
  * TODO: FDC, PP, SP1, SP2, and KBC should work, the rest probably not (yet).
  */
 static struct pnp_info pnp_dev_info[] = {
-	{ &ops, LD_FDC, PNP_IO0 | PNP_IRQ0 | PNP_DRQ0, {0x07f8, 0}, },
-	{ &ops, LD_PP,  PNP_IO0 | PNP_IRQ0 | PNP_DRQ0, {0x07f8, 0}, },
-	{ &ops, LD_SP1, PNP_IO0 | PNP_IRQ0, {0x07f8, 0}, },
-	{ &ops, LD_SP2, PNP_IO0 | PNP_IRQ0, {0x07f8, 0}, },
+	{ &ops, LD_FDC, PNP_IO0 | PNP_IRQ0 | PNP_DRQ0, 0x07f8, },
+	{ &ops, LD_PP,  PNP_IO0 | PNP_IRQ0 | PNP_DRQ0, 0x07f8, },
+	{ &ops, LD_SP1, PNP_IO0 | PNP_IRQ0, 0x07f8, },
+	{ &ops, LD_SP2, PNP_IO0 | PNP_IRQ0, 0x07f8, },
 	{ &ops, LD_RTC, },
-	{ &ops, LD_KBC, PNP_IO0 | PNP_IO1 | PNP_IRQ0 | PNP_IRQ1, {0x07ff, 0}, {0x07ff, 4}, },
+	{ &ops, LD_KBC, PNP_IO0 | PNP_IO1 | PNP_IRQ0 | PNP_IRQ1, 0x07ff, 0x07ff, },
 	{ &ops, LD_AUX, },
 	{ &ops, LD_XBUS, },
-	{ &ops, LD_HWM, PNP_IO0, {0x07f0, 0}, },
+	{ &ops, LD_HWM, PNP_IO0, 0x07f0, },
 	{ &ops, LD_GAME, },
 	{ &ops, LD_PME, },
 	{ &ops, LD_MPU401, },
-	{ &ops, LD_RT,  PNP_IO0, {0x0780, 0}, },
+	{ &ops, LD_RT,  PNP_IO0, 0x0780, },
 	{ &ops, LD_ACPI, },
 	{ &ops, LD_SMB, },
 };
diff --git a/src/superio/winbond/w83627dhg/superio.c b/src/superio/winbond/w83627dhg/superio.c
index 5a1502a..4907435 100644
--- a/src/superio/winbond/w83627dhg/superio.c
+++ b/src/superio/winbond/w83627dhg/superio.c
@@ -58,12 +58,12 @@
 };
 
 static struct pnp_info pnp_dev_info[] = {
-	{ &ops, W83627DHG_FDC, PNP_IO0 | PNP_IRQ0 | PNP_DRQ0, {0x07f8, 0}, },
-	{ &ops, W83627DHG_PP,  PNP_IO0 | PNP_IRQ0 | PNP_DRQ0, {0x07f8, 0}, },
-	{ &ops, W83627DHG_SP1, PNP_IO0 | PNP_IRQ0, {0x07f8, 0}, },
-	{ &ops, W83627DHG_SP2, PNP_IO0 | PNP_IRQ0, {0x07f8, 0}, },
-	{ &ops, W83627DHG_KBC, PNP_IO0 | PNP_IO1 | PNP_IRQ0 | PNP_IRQ1, {0x07ff, 0}, {0x07ff, 4}, },
-	{ &ops, W83627DHG_SPI, PNP_IO1, {}, { 0x7f8, 0 }, },
+	{ &ops, W83627DHG_FDC, PNP_IO0 | PNP_IRQ0 | PNP_DRQ0, 0x07f8, },
+	{ &ops, W83627DHG_PP,  PNP_IO0 | PNP_IRQ0 | PNP_DRQ0, 0x07f8, },
+	{ &ops, W83627DHG_SP1, PNP_IO0 | PNP_IRQ0, 0x07f8, },
+	{ &ops, W83627DHG_SP2, PNP_IO0 | PNP_IRQ0, 0x07f8, },
+	{ &ops, W83627DHG_KBC, PNP_IO0 | PNP_IO1 | PNP_IRQ0 | PNP_IRQ1, 0x07ff, 0x07ff, },
+	{ &ops, W83627DHG_SPI, PNP_IO1, 0, 0x7f8, },
 	{ &ops, W83627DHG_GPIO6, },
 	{ &ops, W83627DHG_WDTO_PLED, },
 	{ &ops, W83627DHG_GPIO2, },
@@ -71,7 +71,7 @@
 	{ &ops, W83627DHG_GPIO4, },
 	{ &ops, W83627DHG_GPIO5, },
 	{ &ops, W83627DHG_ACPI, PNP_IRQ0, },
-	{ &ops, W83627DHG_HWM, PNP_IO0 | PNP_IRQ0, {0x07fe, 0}, },
+	{ &ops, W83627DHG_HWM, PNP_IO0 | PNP_IRQ0, 0x07fe, },
 	{ &ops, W83627DHG_PECI_SST, },
 };
 
diff --git a/src/superio/winbond/w83627ehg/superio.c b/src/superio/winbond/w83627ehg/superio.c
index ed2b75d..9d1eb3d 100644
--- a/src/superio/winbond/w83627ehg/superio.c
+++ b/src/superio/winbond/w83627ehg/superio.c
@@ -122,18 +122,18 @@
 };
 
 static struct pnp_info pnp_dev_info[] = {
-	{ &ops, W83627EHG_FDC,  PNP_IO0 | PNP_IRQ0 | PNP_DRQ0, {0x07f8, 0}, },
-	{ &ops, W83627EHG_PP,   PNP_IO0 | PNP_IRQ0 | PNP_DRQ0, {0x07f8, 0}, },
-	{ &ops, W83627EHG_SP1,  PNP_IO0 | PNP_IRQ0, {0x07f8, 0}, },
-	{ &ops, W83627EHG_SP2,  PNP_IO0 | PNP_IRQ0, {0x07f8, 0}, },
-	{ &ops, W83627EHG_KBC,  PNP_IO0 | PNP_IO1 | PNP_IRQ0 | PNP_IRQ1, {0x07ff, 0}, {0x07ff, 4}, },
-	{ &ops, W83627EHG_SFI,  PNP_IO0 | PNP_IRQ0, {0x07f8, 0}, },
+	{ &ops, W83627EHG_FDC,  PNP_IO0 | PNP_IRQ0 | PNP_DRQ0, 0x07f8, },
+	{ &ops, W83627EHG_PP,   PNP_IO0 | PNP_IRQ0 | PNP_DRQ0, 0x07f8, },
+	{ &ops, W83627EHG_SP1,  PNP_IO0 | PNP_IRQ0, 0x07f8, },
+	{ &ops, W83627EHG_SP2,  PNP_IO0 | PNP_IRQ0, 0x07f8, },
+	{ &ops, W83627EHG_KBC,  PNP_IO0 | PNP_IO1 | PNP_IRQ0 | PNP_IRQ1, 0x07ff, 0x07ff, },
+	{ &ops, W83627EHG_SFI,  PNP_IO0 | PNP_IRQ0, 0x07f8, },
 	{ &ops, W83627EHG_WDTO_PLED, },
 	{ &ops, W83627EHG_ACPI, PNP_IRQ0, },
-	{ &ops, W83627EHG_HWM,  PNP_IO0 | PNP_IRQ0, {0x07fe, 0}, },
+	{ &ops, W83627EHG_HWM,  PNP_IO0 | PNP_IRQ0, 0x07fe, },
 
-	{ &ops, W83627EHG_GAME, PNP_IO0, {0x07ff, 0}, },
-	{ &ops, W83627EHG_MIDI, PNP_IO1 | PNP_IRQ0, {0, 0}, {0x07fe, 4}, },
+	{ &ops, W83627EHG_GAME, PNP_IO0, 0x07ff, },
+	{ &ops, W83627EHG_MIDI, PNP_IO1 | PNP_IRQ0, 0, 0x07fe, },
 	{ &ops, W83627EHG_GPIO1, },
 	{ &ops, W83627EHG_GPIO2, },
 	{ &ops, W83627EHG_GPIO3, },
diff --git a/src/superio/winbond/w83627hf/superio.c b/src/superio/winbond/w83627hf/superio.c
index 4039f5f..2ef5a5d 100644
--- a/src/superio/winbond/w83627hf/superio.c
+++ b/src/superio/winbond/w83627hf/superio.c
@@ -129,17 +129,17 @@
 };
 
 static struct pnp_info pnp_dev_info[] = {
-	{ &ops, W83627HF_FDC,  PNP_IO0 | PNP_IRQ0 | PNP_DRQ0, {0x07f8, 0}, },
-	{ &ops, W83627HF_PP,   PNP_IO0 | PNP_IRQ0 | PNP_DRQ0, {0x07f8, 0}, },
-	{ &ops, W83627HF_SP1,  PNP_IO0 | PNP_IRQ0, {0x07f8, 0}, },
-	{ &ops, W83627HF_SP2,  PNP_IO0 | PNP_IRQ0, {0x07f8, 0}, },
-	{ &ops, W83627HF_KBC,  PNP_IO0 | PNP_IO1 | PNP_IRQ0 | PNP_IRQ1, {0x07ff, 0}, {0x07ff, 4}, },
-	{ &ops, W83627HF_CIR, PNP_IO0 | PNP_IRQ0, {0x07f8, 0}, },
-	{ &ops, W83627HF_GAME_MIDI_GPIO1, PNP_IO0 | PNP_IO1 | PNP_IRQ0, {0x07ff, 0}, {0x07fe, 4}, },
+	{ &ops, W83627HF_FDC,  PNP_IO0 | PNP_IRQ0 | PNP_DRQ0, 0x07f8, },
+	{ &ops, W83627HF_PP,   PNP_IO0 | PNP_IRQ0 | PNP_DRQ0, 0x07f8, },
+	{ &ops, W83627HF_SP1,  PNP_IO0 | PNP_IRQ0, 0x07f8, },
+	{ &ops, W83627HF_SP2,  PNP_IO0 | PNP_IRQ0, 0x07f8, },
+	{ &ops, W83627HF_KBC,  PNP_IO0 | PNP_IO1 | PNP_IRQ0 | PNP_IRQ1, 0x07ff, 0x07ff, },
+	{ &ops, W83627HF_CIR, PNP_IO0 | PNP_IRQ0, 0x07f8, },
+	{ &ops, W83627HF_GAME_MIDI_GPIO1, PNP_IO0 | PNP_IO1 | PNP_IRQ0, 0x07ff, 0x07fe, },
 	{ &ops, W83627HF_GPIO2, },
 	{ &ops, W83627HF_GPIO3, },
 	{ &ops, W83627HF_ACPI, },
-	{ &ops, W83627HF_HWM,  PNP_IO0 | PNP_IRQ0, {0x0ff8, 0}, },
+	{ &ops, W83627HF_HWM,  PNP_IO0 | PNP_IRQ0, 0x0ff8, },
 };
 
 static void enable_dev(struct device *dev)
diff --git a/src/superio/winbond/w83627thg/superio.c b/src/superio/winbond/w83627thg/superio.c
index 77aaf7d..3ee75d7 100644
--- a/src/superio/winbond/w83627thg/superio.c
+++ b/src/superio/winbond/w83627thg/superio.c
@@ -48,16 +48,16 @@
 };
 
 static struct pnp_info pnp_dev_info[] = {
-	{ &ops, W83627THG_FDC,   PNP_IO0 | PNP_IRQ0 | PNP_DRQ0, {0x07f8, 0}, },
-	{ &ops, W83627THG_PP,    PNP_IO0 | PNP_IRQ0 | PNP_DRQ0, {0x07f8, 0}, },
-	{ &ops, W83627THG_SP1,   PNP_IO0 | PNP_IRQ0, {0x07f8, 0}, },
-	{ &ops, W83627THG_SP2,   PNP_IO0 | PNP_IRQ0 | PNP_MSC1, {0x07f8, 0}, },
-	{ &ops, W83627THG_KBC,   PNP_IO0 | PNP_IO1 | PNP_IRQ0 | PNP_IRQ1 | PNP_MSC0, {0x07ff, 0}, {0x07ff, 4}, },
-	{ &ops, W83627THG_GAME_MIDI_GPIO1, PNP_IO0 | PNP_IO1 | PNP_IRQ0, {0x07ff, 0}, {0x07fe, 4}, },
+	{ &ops, W83627THG_FDC,   PNP_IO0 | PNP_IRQ0 | PNP_DRQ0, 0x07f8, },
+	{ &ops, W83627THG_PP,    PNP_IO0 | PNP_IRQ0 | PNP_DRQ0, 0x07f8, },
+	{ &ops, W83627THG_SP1,   PNP_IO0 | PNP_IRQ0, 0x07f8, },
+	{ &ops, W83627THG_SP2,   PNP_IO0 | PNP_IRQ0 | PNP_MSC1, 0x07f8, },
+	{ &ops, W83627THG_KBC,   PNP_IO0 | PNP_IO1 | PNP_IRQ0 | PNP_IRQ1 | PNP_MSC0, 0x07ff, 0x07ff, },
+	{ &ops, W83627THG_GAME_MIDI_GPIO1, PNP_IO0 | PNP_IO1 | PNP_IRQ0, 0x07ff, 0x07fe, },
 	{ &ops, W83627THG_GPIO2, },
 	{ &ops, W83627THG_GPIO3, PNP_EN | PNP_MSC0 | PNP_MSC1, },
 	{ &ops, W83627THG_ACPI,  PNP_IRQ0, },
-	{ &ops, W83627THG_HWM,   PNP_IO0 | PNP_IRQ0, {0x0ff8, 0}, },
+	{ &ops, W83627THG_HWM,   PNP_IO0 | PNP_IRQ0, 0x0ff8, },
 };
 
 static void enable_dev(struct device *dev)
diff --git a/src/superio/winbond/w83627uhg/superio.c b/src/superio/winbond/w83627uhg/superio.c
index b8f5d2f..cb7e474 100644
--- a/src/superio/winbond/w83627uhg/superio.c
+++ b/src/superio/winbond/w83627uhg/superio.c
@@ -94,21 +94,21 @@
 };
 
 static struct pnp_info pnp_dev_info[] = {
-	{ &ops, W83627UHG_FDC,  PNP_IO0 | PNP_IRQ0 | PNP_DRQ0, {0x07f8, 0}, },
-	{ &ops, W83627UHG_PP,   PNP_IO0 | PNP_IRQ0 | PNP_DRQ0, {0x07f8, 0}, },
-	{ &ops, W83627UHG_SP1,  PNP_IO0 | PNP_IRQ0, {0x07f8, 0}, },
-	{ &ops, W83627UHG_SP2,  PNP_IO0 | PNP_IRQ0, {0x07f8, 0}, },
-	{ &ops, W83627UHG_KBC,  PNP_IO0 | PNP_IO1 | PNP_IRQ0 | PNP_IRQ1, {0x07ff, 0}, {0x07ff, 4}, },
-	{ &ops, W83627UHG_SP3,  PNP_IO0 | PNP_IRQ0, {0x07f8, 0}, },
+	{ &ops, W83627UHG_FDC,  PNP_IO0 | PNP_IRQ0 | PNP_DRQ0, 0x07f8, },
+	{ &ops, W83627UHG_PP,   PNP_IO0 | PNP_IRQ0 | PNP_DRQ0, 0x07f8, },
+	{ &ops, W83627UHG_SP1,  PNP_IO0 | PNP_IRQ0, 0x07f8, },
+	{ &ops, W83627UHG_SP2,  PNP_IO0 | PNP_IRQ0, 0x07f8, },
+	{ &ops, W83627UHG_KBC,  PNP_IO0 | PNP_IO1 | PNP_IRQ0 | PNP_IRQ1, 0x07ff, 0x07ff, },
+	{ &ops, W83627UHG_SP3,  PNP_IO0 | PNP_IRQ0, 0x07f8, },
 	{ &ops, W83627UHG_GPIO3_4, },
 	{ &ops, W83627UHG_WDTO_PLED_GPIO5_6, },
 	{ &ops, W83627UHG_GPIO1_2, },
 	{ &ops, W83627UHG_ACPI, PNP_IRQ0, },
-	{ &ops, W83627UHG_HWM,  PNP_IO0 | PNP_IRQ0, {0x0ff8, 0}, },
+	{ &ops, W83627UHG_HWM,  PNP_IO0 | PNP_IRQ0, 0x0ff8, },
 	{ &ops, W83627UHG_PECI_SST, },
-	{ &ops, W83627UHG_SP4,  PNP_IO0 | PNP_IRQ0, {0x07f8, 0}, },
-	{ &ops, W83627UHG_SP5,  PNP_IO0 | PNP_IRQ0, {0x07f8, 0}, },
-	{ &ops, W83627UHG_SP6,  PNP_IO0 | PNP_IRQ0, {0x07f8, 0}, },
+	{ &ops, W83627UHG_SP4,  PNP_IO0 | PNP_IRQ0, 0x07f8, },
+	{ &ops, W83627UHG_SP5,  PNP_IO0 | PNP_IRQ0, 0x07f8, },
+	{ &ops, W83627UHG_SP6,  PNP_IO0 | PNP_IRQ0, 0x07f8, },
 };
 
 static void enable_dev(struct device *dev)
diff --git a/src/superio/winbond/w83667hg-a/superio.c b/src/superio/winbond/w83667hg-a/superio.c
index 43b4674..9ffbefe 100644
--- a/src/superio/winbond/w83667hg-a/superio.c
+++ b/src/superio/winbond/w83667hg-a/superio.c
@@ -94,15 +94,15 @@
 };
 
 static struct pnp_info pnp_dev_info[] = {
-	{ &ops, W83667HG_A_FDC, PNP_IO0 | PNP_IRQ0 | PNP_DRQ0, {0x0ff8, 0}, },
-	{ &ops, W83667HG_A_PP, PNP_IO0 | PNP_IRQ0 | PNP_DRQ0, {0x0ff8, 0}, },
-	{ &ops, W83667HG_A_SP1, PNP_IO0 | PNP_IRQ0, {0x0ff8, 0}, },
-	{ &ops, W83667HG_A_SP2, PNP_IO0 | PNP_IRQ0, {0x0ff8, 0}, },
-	{ &ops, W83667HG_A_KBC, PNP_IO0 | PNP_IO1 | PNP_IRQ0 | PNP_IRQ1, {0x0fff, 0}, {0x0fff, 4}, },
-	{ &ops, W83667HG_A_SPI1, PNP_IO1, {}, {0x0ff8, 0}},
+	{ &ops, W83667HG_A_FDC, PNP_IO0 | PNP_IRQ0 | PNP_DRQ0, 0x0ff8, },
+	{ &ops, W83667HG_A_PP, PNP_IO0 | PNP_IRQ0 | PNP_DRQ0, 0x0ff8, },
+	{ &ops, W83667HG_A_SP1, PNP_IO0 | PNP_IRQ0, 0x0ff8, },
+	{ &ops, W83667HG_A_SP2, PNP_IO0 | PNP_IRQ0, 0x0ff8, },
+	{ &ops, W83667HG_A_KBC, PNP_IO0 | PNP_IO1 | PNP_IRQ0 | PNP_IRQ1, 0x0fff, 0x0fff, },
+	{ &ops, W83667HG_A_SPI1, PNP_IO1, 0, 0x0ff8},
 	{ &ops, W83667HG_A_WDT1},
 	{ &ops, W83667HG_A_ACPI},
-	{ &ops, W83667HG_A_HWM_TSI, PNP_IO0 | PNP_IRQ0, {0x0ffe, 0}, },
+	{ &ops, W83667HG_A_HWM_TSI, PNP_IO0 | PNP_IRQ0, 0x0ffe, },
 	{ &ops, W83667HG_A_PECI},
 	{ &ops, W83667HG_A_VID_BUSSEL},
 	{ &ops, W83667HG_A_GPIO_PP_OD},
diff --git a/src/superio/winbond/w83697hf/superio.c b/src/superio/winbond/w83697hf/superio.c
index 77e074f..e5e4e67 100644
--- a/src/superio/winbond/w83697hf/superio.c
+++ b/src/superio/winbond/w83697hf/superio.c
@@ -77,16 +77,16 @@
 };
 
 static struct pnp_info pnp_dev_info[] = {
-	{ &ops, W83697HF_FDC,  PNP_IO0 | PNP_IRQ0 | PNP_DRQ0, {0x07f8, 0}, },
-	{ &ops, W83697HF_PP,   PNP_IO0 | PNP_IRQ0 | PNP_DRQ0, {0x07f8, 0}, },
-	{ &ops, W83697HF_SP1,  PNP_IO0 | PNP_IRQ0, {0x07f8, 0}, },
-	{ &ops, W83697HF_SP2,  PNP_IO0 | PNP_IRQ0, {0x07f8, 0}, },
-	{ &ops, W83697HF_CIR,  PNP_IO0 | PNP_IRQ0, {0x07f8, 0}, },
-	{ &ops, W83697HF_GAME_GPIO1, PNP_IO0 | PNP_IO1 | PNP_IRQ0, {0x07ff, 0}, {0x07fe, 4}, },
+	{ &ops, W83697HF_FDC,  PNP_IO0 | PNP_IRQ0 | PNP_DRQ0, 0x07f8, },
+	{ &ops, W83697HF_PP,   PNP_IO0 | PNP_IRQ0 | PNP_DRQ0, 0x07f8, },
+	{ &ops, W83697HF_SP1,  PNP_IO0 | PNP_IRQ0, 0x07f8, },
+	{ &ops, W83697HF_SP2,  PNP_IO0 | PNP_IRQ0, 0x07f8, },
+	{ &ops, W83697HF_CIR,  PNP_IO0 | PNP_IRQ0, 0x07f8, },
+	{ &ops, W83697HF_GAME_GPIO1, PNP_IO0 | PNP_IO1 | PNP_IRQ0, 0x07ff, 0x07fe, },
 	{ &ops, W83697HF_MIDI_GPIO5, },
 	{ &ops, W83697HF_GPIO234, },
 	{ &ops, W83697HF_ACPI, },
-	{ &ops, W83697HF_HWM,  PNP_IO0 | PNP_IRQ0, {0x0ff8, 0}, },
+	{ &ops, W83697HF_HWM,  PNP_IO0 | PNP_IRQ0, 0x0ff8, },
 };
 
 static void enable_dev(struct device *dev)
diff --git a/src/superio/winbond/w83977tf/superio.c b/src/superio/winbond/w83977tf/superio.c
index 45520f8..8fb9075 100644
--- a/src/superio/winbond/w83977tf/superio.c
+++ b/src/superio/winbond/w83977tf/superio.c
@@ -49,13 +49,13 @@
 };
 
 static struct pnp_info pnp_dev_info[] = {
-	{ &ops, W83977TF_FDC,  PNP_IO0 | PNP_IRQ0 | PNP_DRQ0, {0x07f8, 0}, },
-	{ &ops, W83977TF_PP,   PNP_IO0 | PNP_IRQ0 | PNP_DRQ0, {0x07f8, 0}, },
-	{ &ops, W83977TF_SP1,  PNP_IO0 | PNP_IRQ0, {0x07f8, 0}, },
-	{ &ops, W83977TF_SP2,  PNP_IO0 | PNP_IRQ0, {0x07f8, 0}, },
-	{ &ops, W83977TF_KBC,  PNP_IO0 | PNP_IO1 | PNP_IRQ0 | PNP_IRQ1, {0x07ff, 0}, {0x07ff, 4}, },
-	{ &ops, W83977TF_CIR,  PNP_IO0 | PNP_IRQ0, {0x07f8, 0}, },
-	{ &ops, W83977TF_GAME_MIDI_GPIO1, PNP_IO0 | PNP_IO1 | PNP_IRQ0, {0x07ff, 0}, {0x07fe, 4}, },
+	{ &ops, W83977TF_FDC,  PNP_IO0 | PNP_IRQ0 | PNP_DRQ0, 0x07f8, },
+	{ &ops, W83977TF_PP,   PNP_IO0 | PNP_IRQ0 | PNP_DRQ0, 0x07f8, },
+	{ &ops, W83977TF_SP1,  PNP_IO0 | PNP_IRQ0, 0x07f8, },
+	{ &ops, W83977TF_SP2,  PNP_IO0 | PNP_IRQ0, 0x07f8, },
+	{ &ops, W83977TF_KBC,  PNP_IO0 | PNP_IO1 | PNP_IRQ0 | PNP_IRQ1, 0x07ff, 0x07ff, },
+	{ &ops, W83977TF_CIR,  PNP_IO0 | PNP_IRQ0, 0x07f8, },
+	{ &ops, W83977TF_GAME_MIDI_GPIO1, PNP_IO0 | PNP_IO1 | PNP_IRQ0, 0x07ff, 0x07fe, },
 	{ &ops, W83977TF_ACPI, PNP_IRQ0, },
 };
 
diff --git a/src/superio/winbond/wpcd376i/superio.c b/src/superio/winbond/wpcd376i/superio.c
index 9f41627..25012b0 100644
--- a/src/superio/winbond/wpcd376i/superio.c
+++ b/src/superio/winbond/wpcd376i/superio.c
@@ -55,13 +55,13 @@
 };
 
 static struct pnp_info pnp_dev_info[] = {
-	{ &ops, WPCD376I_FDC,  PNP_IO0 | PNP_IRQ0 | PNP_DRQ0, {0x07fa, 0}, },
-	{ &ops, WPCD376I_LPT,  PNP_IO0 | PNP_IRQ0 | PNP_DRQ0, {0x04f8, 0}, },
-	{ &ops, WPCD376I_IR,   PNP_IO0 | PNP_IRQ0 | PNP_DRQ0 | PNP_DRQ1, {0x07f8, 0}, },
-	{ &ops, WPCD376I_SP1,  PNP_IO0 | PNP_IRQ0, {0x07f8, 0}, },
+	{ &ops, WPCD376I_FDC,  PNP_IO0 | PNP_IRQ0 | PNP_DRQ0, 0x07fa, },
+	{ &ops, WPCD376I_LPT,  PNP_IO0 | PNP_IRQ0 | PNP_DRQ0, 0x04f8, },
+	{ &ops, WPCD376I_IR,   PNP_IO0 | PNP_IRQ0 | PNP_DRQ0 | PNP_DRQ1, 0x07f8, },
+	{ &ops, WPCD376I_SP1,  PNP_IO0 | PNP_IRQ0, 0x07f8, },
 	{ &ops, WPCD376I_KBCM, PNP_IRQ0, },
-	{ &ops, WPCD376I_KBCK, PNP_IO0 | PNP_IO1 | PNP_IRQ0, {0x07f8, 0}, {0x07f8, 4}, },
-	{ &ops, WPCD376I_GPIO, PNP_IO0 | PNP_IRQ0, {0xfff8, 0}, },
+	{ &ops, WPCD376I_KBCK, PNP_IO0 | PNP_IO1 | PNP_IRQ0, 0x07f8, 0x07f8, },
+	{ &ops, WPCD376I_GPIO, PNP_IO0 | PNP_IRQ0, 0xfff8, },
 };
 
 static void enable_dev(struct device *dev)

-- 
To view, visit https://review.coreboot.org/20078
To unsubscribe, visit https://review.coreboot.org/settings

Gerrit-Project: coreboot
Gerrit-Branch: master
Gerrit-MessageType: newchange
Gerrit-Change-Id: I1e7853844605cd2a6d568caf05488e1218fb53f9
Gerrit-Change-Number: 20078
Gerrit-PatchSet: 1
Gerrit-Owner: Samuel Holland <samuel at sholland.org>



More information about the coreboot-gerrit mailing list