PCI/MSI: Use #ifdefs instead of weak functions
authorMichael Ellerman <michael@ellerman.id.au>
Mon, 19 Jan 2009 00:31:00 +0000 (11:31 +1100)
committerJesse Barnes <jbarnes@hobbes.lan>
Fri, 20 Mar 2009 02:29:26 +0000 (19:29 -0700)
commit11df1f05514beaf0269484191007dbc8d47e0e6f
treed4fce7438e5513d86b866c4890a38c0d437df76f
parentb43d451385ef833e0696032aac2629da04d46c59
PCI/MSI: Use #ifdefs instead of weak functions

Weak functions aren't all they're cracked up to be. They lead to
incorrect binaries with some toolchains, they require us to have empty
functions we otherwise wouldn't, and the unused code is not elided
(as of gcc 4.3.2 anyway).

So replace the weak MSI arch hooks with the #define foo foo idiom. We no
longer need empty versions of arch_setup/teardown_msi_irq().

This is less source (by 1 line!), and results in smaller binaries too:

   text    data     bss     dec     hex filename
9354300 1693916  678424 11726640 b2ef30 build/powerpc/vmlinux-before
9354052 1693852  678424 11726328 b2edf8 build/powerpc/vmlinux-after

Also smaller on x86_64 and arm (iop13xx).

Signed-off-by: Michael Ellerman <michael@ellerman.id.au>
Signed-off-by: Jesse Barnes <jbarnes@virtuousgeek.org>
arch/powerpc/include/asm/pci.h
arch/x86/include/asm/pci.h
drivers/pci/msi.c