diff options
author | Patrick Georgi <patrick@georgi-clan.de> | 2012-10-08 09:33:38 +0200 |
---|---|---|
committer | Patrick Georgi <patrick@georgi-clan.de> | 2012-11-29 10:24:14 +0100 |
commit | 95efb565b6581c98df9064aeaa6b63dc3dfad2f6 (patch) | |
tree | 5a321cdccc7f9930776fc5d94f88d43dec5da24b /src/arch/x86/boot | |
parent | 23547ddb94476a2f65cf76c11b019ca86419cc35 (diff) |
pirq_route_irqs is private
Change-Id: I120913dac3150a72c2e66c74872ee00074ee0267
Signed-off-by: Patrick Georgi <patrick@georgi-clan.de>
Reviewed-on: http://review.coreboot.org/1936
Tested-by: build bot (Jenkins)
Reviewed-by: Stefan Reinauer <stefan.reinauer@coreboot.org>
Diffstat (limited to 'src/arch/x86/boot')
-rw-r--r-- | src/arch/x86/boot/pirq_routing.c | 36 |
1 files changed, 19 insertions, 17 deletions
diff --git a/src/arch/x86/boot/pirq_routing.c b/src/arch/x86/boot/pirq_routing.c index 55deac100a..86af63f812 100644 --- a/src/arch/x86/boot/pirq_routing.c +++ b/src/arch/x86/boot/pirq_routing.c @@ -98,22 +98,6 @@ static int verify_copy_pirq_routing_table(unsigned long addr, const struct irq_r } #endif -unsigned long copy_pirq_routing_table(unsigned long addr, const struct irq_routing_table *routing_table) -{ - /* Align the table to be 16 byte aligned. */ - addr = ALIGN(addr, 16); - - /* This table must be betweeen 0xf0000 & 0x100000 */ - printk(BIOS_INFO, "Copying Interrupt Routing Table to 0x%08lx... ", addr); - memcpy((void *)addr, routing_table, routing_table->size); - printk(BIOS_INFO, "done.\n"); -#if CONFIG_DEBUG_PIRQ - verify_copy_pirq_routing_table(addr, routing_table); -#endif - pirq_route_irqs(addr); - return addr + routing_table->size; -} - #if CONFIG_PIRQ_ROUTE static u8 pirq_get_next_free_irq(u8* pirq, u16 bitmap) { @@ -145,7 +129,7 @@ static u8 pirq_get_next_free_irq(u8* pirq, u16 bitmap) return irq; } -void pirq_route_irqs(unsigned long addr) +static void pirq_route_irqs(unsigned long addr) { int i, intx, num_entries; unsigned char irq_slot[MAX_INTX_ENTRIES]; @@ -204,3 +188,21 @@ void pirq_route_irqs(unsigned long addr) pirq_assign_irqs(pirq); } #endif + +unsigned long copy_pirq_routing_table(unsigned long addr, const struct irq_routing_table *routing_table) +{ + /* Align the table to be 16 byte aligned. */ + addr = ALIGN(addr, 16); + + /* This table must be betweeen 0xf0000 & 0x100000 */ + printk(BIOS_INFO, "Copying Interrupt Routing Table to 0x%08lx... ", addr); + memcpy((void *)addr, routing_table, routing_table->size); + printk(BIOS_INFO, "done.\n"); +#if CONFIG_DEBUG_PIRQ + verify_copy_pirq_routing_table(addr, routing_table); +#endif +#if CONFIG_PIRQ_ROUTE + pirq_route_irqs(addr); +#endif + return addr + routing_table->size; +} |