diff options
author | Sam Ravnborg <sam@ravnborg.org> | 2011-04-17 13:49:55 +0200 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2011-04-19 22:11:39 -0700 |
commit | 06010fb588700e7fcb29e720c56884e3de5fd327 (patch) | |
tree | 832891d6ffcf8f2f762094c37b5e88a86bbdd007 /arch | |
parent | db1cdd146a0814b6f312fe1a7fa1ab87ac177b2a (diff) | |
download | linux-stable-06010fb588700e7fcb29e720c56884e3de5fd327.tar.gz linux-stable-06010fb588700e7fcb29e720c56884e3de5fd327.tar.bz2 linux-stable-06010fb588700e7fcb29e720c56884e3de5fd327.zip |
sparc32: cleanup code for pci init
Move the ifdeffery to a header file to make the logic more
obvious where we decide between PCI or SBUS init
Signed-off-by: Sam Ravnborg <sam@ravnborg.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'arch')
-rw-r--r-- | arch/sparc/include/asm/pcic.h | 12 | ||||
-rw-r--r-- | arch/sparc/kernel/irq_32.c | 9 | ||||
-rw-r--r-- | arch/sparc/kernel/time_32.c | 10 |
3 files changed, 15 insertions, 16 deletions
diff --git a/arch/sparc/include/asm/pcic.h b/arch/sparc/include/asm/pcic.h index f20ef562b265..7eb5d78f5211 100644 --- a/arch/sparc/include/asm/pcic.h +++ b/arch/sparc/include/asm/pcic.h @@ -29,11 +29,17 @@ struct linux_pcic { int pcic_imdim; }; -extern int pcic_probe(void); -/* Erm... MJ redefined pcibios_present() so that it does not work early. */ +#ifdef CONFIG_PCI extern int pcic_present(void); +extern int pcic_probe(void); +extern void pci_time_init(void); extern void sun4m_pci_init_IRQ(void); - +#else +static inline int pcic_present(void) { return 0; } +static inline int pcic_probe(void) { return 0; } +static inline void pci_time_init(void) {} +static inline void sun4m_pci_init_IRQ(void) {} +#endif #endif /* Size of PCI I/O space which we relocate. */ diff --git a/arch/sparc/kernel/irq_32.c b/arch/sparc/kernel/irq_32.c index 7c93df4099cb..b2dbb4ba8608 100644 --- a/arch/sparc/kernel/irq_32.c +++ b/arch/sparc/kernel/irq_32.c @@ -607,14 +607,11 @@ void __init init_IRQ(void) break; case sun4m: -#ifdef CONFIG_PCI pcic_probe(); - if (pcic_present()) { + if (pcic_present()) sun4m_pci_init_IRQ(); - break; - } -#endif - sun4m_init_IRQ(); + else + sun4m_init_IRQ(); break; case sun4d: diff --git a/arch/sparc/kernel/time_32.c b/arch/sparc/kernel/time_32.c index 4e236391b635..b61840300101 100644 --- a/arch/sparc/kernel/time_32.c +++ b/arch/sparc/kernel/time_32.c @@ -228,14 +228,10 @@ static void __init sbus_time_init(void) void __init time_init(void) { -#ifdef CONFIG_PCI - extern void pci_time_init(void); - if (pcic_present()) { + if (pcic_present()) pci_time_init(); - return; - } -#endif - sbus_time_init(); + else + sbus_time_init(); } |