From faca0bc2fa5a347a98fc3ee8dd1a5dd9c9763459 Mon Sep 17 00:00:00 2001 From: Felix Held Date: Wed, 27 Dec 2017 22:51:29 +0100 Subject: superio/nsc: pass the chip-specific ops struct to pnp_enable_devices Pass the address of the chip-specific ops struct instead of the one of the generic pnp_ops struct to the PNP device enable function. This allows the removal of the LDN-specific ops overrides which is also done in this patch. Change-Id: I0c820254e97e3f80470d148552af06940e147b74 Signed-off-by: Felix Held Reviewed-on: https://review.coreboot.org/23008 Tested-by: build bot (Jenkins) Reviewed-by: Arthur Heymans --- src/superio/nsc/pc87309/superio.c | 16 ++++++++-------- src/superio/nsc/pc87360/superio.c | 23 ++++++++++++----------- src/superio/nsc/pc87366/superio.c | 26 +++++++++++++------------- src/superio/nsc/pc87382/superio.c | 12 ++++++------ src/superio/nsc/pc87384/superio.c | 11 +++++------ src/superio/nsc/pc87392/superio.c | 16 ++++++++-------- src/superio/nsc/pc87417/superio.c | 24 ++++++++++++------------ src/superio/nsc/pc97317/superio.c | 19 ++++++++++--------- 8 files changed, 74 insertions(+), 73 deletions(-) (limited to 'src/superio') diff --git a/src/superio/nsc/pc87309/superio.c b/src/superio/nsc/pc87309/superio.c index ff362945b7fe..ba5d97a40346 100644 --- a/src/superio/nsc/pc87309/superio.c +++ b/src/superio/nsc/pc87309/superio.c @@ -43,19 +43,19 @@ static struct device_operations ops = { }; static struct pnp_info pnp_dev_info[] = { - { &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, }, + { NULL, PC87309_FDC, PNP_IO0 | PNP_IRQ0 | PNP_DRQ0, 0x07fa, }, + { NULL, PC87309_PP, PNP_IO0 | PNP_IRQ0 | PNP_DRQ0, 0x04f8, }, + { NULL, PC87309_SP2, PNP_IO0 | PNP_IRQ0 | PNP_DRQ0 | PNP_DRQ1, + 0x07f8, }, + { NULL, PC87309_SP1, PNP_IO0 | PNP_IRQ0, 0x07f8, }, /* TODO: PM. */ - { &ops, PC87309_KBCM, PNP_IRQ0, }, - { &ops, PC87309_KBCK, PNP_IO0 | PNP_IO1 | PNP_IRQ0, 0x07f8, 0x7f8, }, + { NULL, PC87309_KBCM, PNP_IRQ0, }, + { NULL, PC87309_KBCK, PNP_IO0 | PNP_IO1 | PNP_IRQ0, 0x07f8, 0x7f8, }, }; static void enable_dev(struct device *dev) { - pnp_enable_devices(dev, &pnp_ops, - ARRAY_SIZE(pnp_dev_info), pnp_dev_info); + pnp_enable_devices(dev, &ops, ARRAY_SIZE(pnp_dev_info), pnp_dev_info); } struct chip_operations superio_nsc_pc87309_ops = { diff --git a/src/superio/nsc/pc87360/superio.c b/src/superio/nsc/pc87360/superio.c index 237023bb4b32..85ccdea8889a 100644 --- a/src/superio/nsc/pc87360/superio.c +++ b/src/superio/nsc/pc87360/superio.c @@ -45,17 +45,18 @@ static struct device_operations ops = { }; static struct pnp_info pnp_dev_info[] = { - { &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, 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, }, + { NULL, PC87360_FDC, PNP_IO0 | PNP_IRQ0 | PNP_DRQ0, 0x07fa, }, + { NULL, PC87360_PP, PNP_IO0 | PNP_IRQ0 | PNP_DRQ0, 0x04f8, }, + { NULL, PC87360_SP2, PNP_IO0 | PNP_IRQ0 | PNP_DRQ0 | PNP_DRQ1, + 0x07f8, }, + { NULL, PC87360_SP1, PNP_IO0 | PNP_IRQ0, 0x07f8, }, + { NULL, PC87360_SWC, PNP_IO0 | PNP_IRQ0, 0xfff0, }, + { NULL, PC87360_KBCM, PNP_IRQ0, }, + { NULL, PC87360_KBCK, PNP_IO0 | PNP_IO1 | PNP_IRQ0, 0x07f8, 0x07f8, }, + { NULL, PC87360_GPIO, PNP_IO0 | PNP_IRQ0, 0xfff8, }, + { NULL, PC87360_ACB, PNP_IO0 | PNP_IRQ0, 0xfff8, }, + { NULL, PC87360_FSCM, PNP_IO0 | PNP_IRQ0, 0xfff8, }, + { NULL, 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 8d5b291bfe80..6883e81945f6 100644 --- a/src/superio/nsc/pc87366/superio.c +++ b/src/superio/nsc/pc87366/superio.c @@ -45,23 +45,23 @@ static struct device_operations ops = { }; static struct pnp_info pnp_dev_info[] = { - { &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, 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, }, + { NULL, PC87366_FDC, PNP_IO0 | PNP_IRQ0 | PNP_DRQ0, 0x07fa, }, + { NULL, PC87366_PP, PNP_IO0 | PNP_IRQ0 | PNP_DRQ0, 0x04f8, }, + { NULL, PC87366_SP2, PNP_IO0 | PNP_IRQ0 | PNP_DRQ0 | PNP_DRQ1, + 0x07f8, }, + { NULL, PC87366_SP1, PNP_IO0 | PNP_IRQ0, 0x07f8, }, + { NULL, PC87366_SWC, PNP_IO0 | PNP_IRQ0, 0xfff0, }, + { NULL, PC87366_KBCM, PNP_IRQ0, }, + { NULL, PC87366_KBCK, PNP_IO0 | PNP_IO1 | PNP_IRQ0, 0x07f8, 0x07f8, }, + { NULL, PC87366_GPIO, PNP_IO0 | PNP_IRQ0, 0xfff8, }, + { NULL, PC87366_ACB, PNP_IO0 | PNP_IRQ0, 0xfff8, }, + { NULL, PC87366_FSCM, PNP_IO0 | PNP_IRQ0, 0xfff8, }, + { NULL, PC87366_WDT, PNP_IO0 | PNP_IRQ0, 0xfffc, }, }; static void enable_dev(struct device *dev) { - pnp_enable_devices(dev, &pnp_ops, - ARRAY_SIZE(pnp_dev_info), pnp_dev_info); + pnp_enable_devices(dev, &ops, ARRAY_SIZE(pnp_dev_info), pnp_dev_info); } struct chip_operations superio_nsc_pc87366_ops = { diff --git a/src/superio/nsc/pc87382/superio.c b/src/superio/nsc/pc87382/superio.c index 7377c9e334b6..8e0d61ce6cfa 100644 --- a/src/superio/nsc/pc87382/superio.c +++ b/src/superio/nsc/pc87382/superio.c @@ -46,16 +46,16 @@ static struct device_operations ops = { }; static struct pnp_info pnp_dev_info[] = { - { &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 }, + { NULL, PC87382_IR, PNP_IO0 | PNP_IRQ0 | PNP_DRQ0 | PNP_DRQ1, + 0x07f8 }, + { NULL, PC87382_SP1, PNP_IO0 | PNP_IRQ0, 0x07f8 }, + { NULL, PC87382_GPIO, PNP_IO0 | PNP_IRQ0, 0xfff0 }, + { NULL, PC87382_DOCK, PNP_IO0 | PNP_IRQ0, 0xfffe }, }; static void enable_dev(struct device *dev) { - pnp_enable_devices(dev, &pnp_ops, - ARRAY_SIZE(pnp_dev_info), pnp_dev_info); + pnp_enable_devices(dev, &ops, ARRAY_SIZE(pnp_dev_info), pnp_dev_info); } struct chip_operations superio_nsc_pc87382_ops = { diff --git a/src/superio/nsc/pc87384/superio.c b/src/superio/nsc/pc87384/superio.c index bd59a5b7a0e5..a24e1b65cfe0 100644 --- a/src/superio/nsc/pc87384/superio.c +++ b/src/superio/nsc/pc87384/superio.c @@ -31,16 +31,15 @@ static struct device_operations ops = { }; static struct pnp_info pnp_dev_info[] = { - { &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 }, + { NULL, PC87384_PP, PNP_IO0 | PNP_IRQ0 | PNP_DRQ0, 0x04f8 }, + { NULL, PC87384_SP1, PNP_IO0 | PNP_IRQ0, 0x07f8 }, + { NULL, PC87384_SP2, PNP_IO0 | PNP_IRQ0, 0x07f8 }, + { NULL, PC87384_GPIO, PNP_IO0 | PNP_IRQ0, 0xfff0 }, }; static void enable_dev(struct device *dev) { - pnp_enable_devices(dev, &pnp_ops, - ARRAY_SIZE(pnp_dev_info), pnp_dev_info); + pnp_enable_devices(dev, &ops, ARRAY_SIZE(pnp_dev_info), pnp_dev_info); } struct chip_operations superio_nsc_pc87384_ops = { diff --git a/src/superio/nsc/pc87392/superio.c b/src/superio/nsc/pc87392/superio.c index e75e0a41f240..bf02e19eb12f 100644 --- a/src/superio/nsc/pc87392/superio.c +++ b/src/superio/nsc/pc87392/superio.c @@ -37,18 +37,18 @@ static struct device_operations ops = { }; static struct pnp_info pnp_dev_info[] = { - { &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 }, + { NULL, PC87392_FDC, PNP_IO0 | PNP_IRQ0 | PNP_DRQ0, 0x07fa }, + { NULL, PC87392_PP, PNP_IO0 | PNP_IRQ0 | PNP_DRQ0, 0x04f8 }, + { NULL, PC87392_SP2, PNP_IO0 | PNP_IRQ0 | PNP_DRQ0 | PNP_DRQ1, + 0x07f8 }, + { NULL, PC87392_SP1, PNP_IO0 | PNP_IRQ0, 0x07f8 }, + { NULL, PC87392_GPIO, PNP_IO0 | PNP_IRQ0, 0xfff8 }, + { NULL, PC87392_WDT, PNP_IO0 | PNP_IRQ0, 0xfffc }, }; static void enable_dev(struct device *dev) { - pnp_enable_devices(dev, &pnp_ops, - ARRAY_SIZE(pnp_dev_info), pnp_dev_info); + pnp_enable_devices(dev, &ops, ARRAY_SIZE(pnp_dev_info), pnp_dev_info); } struct chip_operations superio_nsc_pc87392_ops = { diff --git a/src/superio/nsc/pc87417/superio.c b/src/superio/nsc/pc87417/superio.c index 6f9dfe8009de..73b76557125f 100644 --- a/src/superio/nsc/pc87417/superio.c +++ b/src/superio/nsc/pc87417/superio.c @@ -46,22 +46,22 @@ static struct device_operations ops = { }; static struct pnp_info pnp_dev_info[] = { - { &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, 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, }, + { NULL, PC87417_FDC, PNP_IO0 | PNP_IRQ0 | PNP_DRQ0, 0x07fa, }, + { NULL, PC87417_PP, PNP_IO0 | PNP_IRQ0 | PNP_DRQ0, 0x04f8, }, + { NULL, PC87417_SP2, PNP_IO0 | PNP_IRQ0 | PNP_DRQ0 | PNP_DRQ1, + 0x07f8, }, + { NULL, PC87417_SP1, PNP_IO0 | PNP_IRQ0, 0x07f8, }, + { NULL, PC87417_SWC, PNP_IO0 | PNP_IRQ0, 0xfff0, }, + { NULL, PC87417_KBCM, PNP_IRQ0, }, + { NULL, PC87417_KBCK, PNP_IO0 | PNP_IO1 | PNP_IRQ0, 0x07f8, 0x07f8, }, + { NULL, PC87417_GPIO, PNP_IO0 | PNP_IRQ0, 0xfff8, }, + { NULL, PC87417_XBUS, PNP_IO0 | PNP_IRQ0, 0xffe0, }, + { NULL, PC87417_RTC, PNP_IO0 | PNP_IO1, 0xfffe, 0xfffe, }, }; static void enable_dev(struct device *dev) { - pnp_enable_devices(dev, &pnp_ops, - ARRAY_SIZE(pnp_dev_info), pnp_dev_info); + pnp_enable_devices(dev, &ops, ARRAY_SIZE(pnp_dev_info), pnp_dev_info); } struct chip_operations superio_nsc_pc87417_ops = { diff --git a/src/superio/nsc/pc97317/superio.c b/src/superio/nsc/pc97317/superio.c index e007ef7f1c0d..c840ced324fb 100644 --- a/src/superio/nsc/pc97317/superio.c +++ b/src/superio/nsc/pc97317/superio.c @@ -49,15 +49,16 @@ static struct device_operations ops = { }; static struct pnp_info pnp_dev_info[] = { - { &ops, PC97317_KBCK, PNP_IO0 | PNP_IO1 | PNP_IRQ0, 0x0ffb, 0x0ffb, }, - { &ops, PC97317_KBCM, PNP_IRQ0, }, - { &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, }, + { NULL, PC97317_KBCK, PNP_IO0 | PNP_IO1 | PNP_IRQ0, 0x0ffb, 0x0ffb, }, + { NULL, PC97317_KBCM, PNP_IRQ0, }, + { NULL, PC97317_RTC, PNP_IO0 | PNP_IRQ0, 0xfffe, }, + { NULL, PC97317_FDC, PNP_IO0 | PNP_IRQ0 | PNP_DRQ0, 0xfffa, }, + { NULL, PC97317_PP, PNP_IO0 | PNP_IRQ0 | PNP_DRQ0, 0x03fc, }, + { NULL, PC97317_SP2, PNP_IO0 | PNP_IRQ0 | PNP_DRQ0 | PNP_DRQ1, + 0xfff8, }, + { NULL, PC97317_SP1, PNP_IO0 | PNP_IRQ0, 0xfff8, }, + { NULL, PC97317_GPIO, PNP_IO0, 0xfff8, }, + { NULL, PC97317_PM, PNP_IO0, 0xfffe, }, }; static void enable_dev(struct device *dev) -- cgit v1.2.3