From 95313d824dabcbdecaa74346a2d9e0ab2af9df9d Mon Sep 17 00:00:00 2001 From: Uwe Hermann Date: Wed, 7 Oct 2009 21:51:33 +0000 Subject: Major CONFIG_IRQ_TABLE_COUNT fixing and cleanups. Some of these boards and PIRQ tables were actually wrong, I cannot imagine they ever worked properly. - Use CONFIG_IRQ_TABLE_COUNT in all irq_tables.c files instead of hard-coded numbers. - Make all CONFIG_IRQ_TABLE_COUNT values in irq_tables.c match Options.lb. - Make all CONFIG_IRQ_TABLE_COUNT values match the actual number of entries in the irq_tables.c file. - Set all CONFIG_IRQ_SLOT_COUNT values in src/.../Options.lb for those boards where they were set to 0 (in order to be overridden in the respective targets/.../Config.lb). This is mainly done to aid Patrick's scripts for kconfig conversion. - Fix a number of comments in irq_tables.c files. - Drop CONFIG_IRQ_SLOT_COUNT usage from boards that don't have irq_tables.c: - tyan/s1846 - asus/a8v-e_se - asus/m2v-mx_se Signed-off-by: Uwe Hermann Acked-by: Myles Watson git-svn-id: svn://svn.coreboot.org/coreboot/trunk@4739 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1 --- src/mainboard/intel/eagleheights/Options.lb | 2 +- src/mainboard/intel/eagleheights/irq_tables.c | 2 +- src/mainboard/intel/jarrell/Options.lb | 2 +- src/mainboard/intel/jarrell/irq_tables.c | 2 +- src/mainboard/intel/xe7501devkit/irq_tables.c | 2 +- 5 files changed, 5 insertions(+), 5 deletions(-) (limited to 'src/mainboard/intel') diff --git a/src/mainboard/intel/eagleheights/Options.lb b/src/mainboard/intel/eagleheights/Options.lb index cf15134d57..2b0441e9ff 100644 --- a/src/mainboard/intel/eagleheights/Options.lb +++ b/src/mainboard/intel/eagleheights/Options.lb @@ -154,7 +154,7 @@ default CONFIG_MMCONF_BASE_ADDRESS=0xE0000000 ## Build code to export a programmable irq routing table ## default CONFIG_HAVE_PIRQ_TABLE=1 -default CONFIG_IRQ_SLOT_COUNT=18 +default CONFIG_IRQ_SLOT_COUNT=9 ## ## Build code to export an x86 MP table diff --git a/src/mainboard/intel/eagleheights/irq_tables.c b/src/mainboard/intel/eagleheights/irq_tables.c index 0b43bd7aba..9942b8e9ec 100644 --- a/src/mainboard/intel/eagleheights/irq_tables.c +++ b/src/mainboard/intel/eagleheights/irq_tables.c @@ -23,7 +23,7 @@ const struct irq_routing_table intel_irq_routing_table = { PIRQ_SIGNATURE, /* u32 signature */ PIRQ_VERSION, /* u16 version */ - 32 + 16 * 9, /* Max. number of devices on the bus */ + 32 + 16 * CONFIG_IRQ_SLOT_COUNT, /* Max. number of devices on the bus */ 0x00, /* Interrupt router bus */ (0x1f << 3) | 0x0, /* Interrupt router dev */ 0, /* IRQs devoted exclusively to PCI usage */ diff --git a/src/mainboard/intel/jarrell/Options.lb b/src/mainboard/intel/jarrell/Options.lb index ca671ea706..56096a32da 100644 --- a/src/mainboard/intel/jarrell/Options.lb +++ b/src/mainboard/intel/jarrell/Options.lb @@ -94,7 +94,7 @@ default CONFIG_HAVE_HARD_RESET=1 ## Build code to export a programmable irq routing table ## default CONFIG_HAVE_PIRQ_TABLE=1 -default CONFIG_IRQ_SLOT_COUNT=9 +default CONFIG_IRQ_SLOT_COUNT=18 ## ## Build code to export an x86 MP table diff --git a/src/mainboard/intel/jarrell/irq_tables.c b/src/mainboard/intel/jarrell/irq_tables.c index bdb0f7d93e..70e3f3b0f0 100644 --- a/src/mainboard/intel/jarrell/irq_tables.c +++ b/src/mainboard/intel/jarrell/irq_tables.c @@ -5,7 +5,7 @@ const struct irq_routing_table intel_irq_routing_table = { 0x52495024, /* u32 signature */ 0x0100, /* u16 version */ - 320, /* u16 Table size 32+(16*devices) */ + 32 + 16 * CONFIG_IRQ_SLOT_COUNT, /* u16 Table size 32+(16*devices) */ 0x00, /* u8 Bus 0 */ 0xf8, /* u8 Device 1, Function 0 */ 0x0000, /* u16 reserve IRQ for PCI */ diff --git a/src/mainboard/intel/xe7501devkit/irq_tables.c b/src/mainboard/intel/xe7501devkit/irq_tables.c index 0134f3be6d..b329351b6b 100644 --- a/src/mainboard/intel/xe7501devkit/irq_tables.c +++ b/src/mainboard/intel/xe7501devkit/irq_tables.c @@ -20,7 +20,7 @@ const struct irq_routing_table intel_irq_routing_table = { PIRQ_SIGNATURE, PIRQ_VERSION, - 32 + 12*sizeof(struct irq_info), // Size of this struct in bytes + 32 + 16 * CONFIG_IRQ_SLOT_COUNT, // Size of this struct in bytes 0, // PCI bus number on which the interrupt router resides PCI_DEVFN(31, 0), // PCI device/function number of the interrupt router 0, // PCI-exclusive IRQ bitmap -- cgit v1.2.3