linux/drivers/spi
Uwe Kleine-König f4ba6315cb spi/imx: convert driver to use platform ids
This has the advantage not to need to much cpu_is_... macros.  Still more
when imx51 support is added which has two different spi interfaces which
would introduce additional checks on the device id.

With this setup it's not possible for the compiler anymore to detect the
unused functions, so four additional kconfig symbols are introduced to
ifdef out the unneeded functions in the callback array and all these
functions are marked with __maybe_unused to suppress the corresponding
gcc warnings.

Comparing the driver footprint with and without the patch for a mx27
kernel yields:

add/remove: 2/0 grow/shrink: 2/0 up/down: 280/0 (280)
function                                     old     new   delta
spi_imx_devtype                                -     192    +192
spi_imx_probe                                980    1032     +52
spi_imx_devtype_data                           -      32     +32
spi_imx_setupxfer                            276     280      +4

Later when the platform code is updated to use the platform ids, the
autodetection can be removed which will make the driver a bit smaller
again.  (~60 Bytes in my test.)

Acked-by: Jason Wang <jason77.wang@gmail.com>
Acked-by: Grant Likely <grant.likely@secretlab.ca>
Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2010-10-01 09:32:11 +02:00
..
amba-pl022.c spi/amba_pl022: Fix probe and remove hook section annotations. 2010-08-01 01:35:29 -06:00
atmel_spi.c include cleanup: Update gfp.h and slab.h includes to prepare for breaking implicit slab.h inclusion from percpu.h 2010-03-30 22:02:32 +09:00
atmel_spi.h
au1550_spi.c include cleanup: Update gfp.h and slab.h includes to prepare for breaking implicit slab.h inclusion from percpu.h 2010-03-30 22:02:32 +09:00
coldfire_qspi.c m68knommu: include sched.h in ColdFire/SPI driver 2010-08-18 12:44:31 +10:00
davinci_spi.c spi/davinci: Fix clock prescale factor computation 2010-05-25 00:23:54 -06:00
dw_spi.c include cleanup: Update gfp.h and slab.h includes to prepare for breaking implicit slab.h inclusion from percpu.h 2010-03-30 22:02:32 +09:00
dw_spi_mmio.c include cleanup: Update gfp.h and slab.h includes to prepare for breaking implicit slab.h inclusion from percpu.h 2010-03-30 22:02:32 +09:00
dw_spi_pci.c include cleanup: Update gfp.h and slab.h includes to prepare for breaking implicit slab.h inclusion from percpu.h 2010-03-30 22:02:32 +09:00
ep93xx_spi.c spi/ep93xx: implemented driver for Cirrus EP93xx SPI controller 2010-05-25 00:23:16 -06:00
Kconfig spi/imx: convert driver to use platform ids 2010-10-01 09:32:11 +02:00
Makefile spi/mpc5121: Add SPI master driver for MPC5121 PSC 2010-05-25 00:23:17 -06:00
mpc52xx_psc_spi.c of/device: Replace struct of_device with struct platform_device 2010-08-06 09:25:50 -06:00
mpc52xx_spi.c of/device: Replace struct of_device with struct platform_device 2010-08-06 09:25:50 -06:00
mpc512x_psc_spi.c Merge branch 'next-spi' of git://git.secretlab.ca/git/linux-2.6 2010-08-14 11:54:09 -07:00
omap2_mcspi.c spi/omap2_mcspi: Check params before dereference or use 2010-05-25 00:23:15 -06:00
omap_spi_100k.c SPI100k: Fix 8-bit and RX-only transfers 2010-07-03 22:45:44 -06:00
omap_uwire.c include cleanup: Update gfp.h and slab.h includes to prepare for breaking implicit slab.h inclusion from percpu.h 2010-03-30 22:02:32 +09:00
orion_spi.c spi: move more spi_setup() functionality into core 2009-06-18 13:03:42 -07:00
pxa2xx_spi.c [ARM] pxa: add namespace on ssp 2010-05-11 17:25:06 +02:00
spi.c Merge branch 'next-spi' of git://git.secretlab.ca/git/linux-2.6 2010-08-14 11:54:09 -07:00
spi_bfin5xx.c include cleanup: Update gfp.h and slab.h includes to prepare for breaking implicit slab.h inclusion from percpu.h 2010-03-30 22:02:32 +09:00
spi_bitbang.c spi/bitbang: reinitialize transfer parameters for every message 2010-07-03 22:59:18 -06:00
spi_bitbang_txrx.h spi/bitbang: add support for SPI_MASTER_NO_{TX, RX} modes 2010-07-03 22:45:44 -06:00
spi_butterfly.c spi/bitbang: add support for SPI_MASTER_NO_{TX, RX} modes 2010-07-03 22:45:44 -06:00
spi_gpio.c spi/spi-gpio: add support for controllers without MISO or MOSI pin 2010-07-03 22:45:44 -06:00
spi_imx.c spi/imx: convert driver to use platform ids 2010-10-01 09:32:11 +02:00
spi_lm70llp.c spi/bitbang: add support for SPI_MASTER_NO_{TX, RX} modes 2010-07-03 22:45:44 -06:00
spi_mpc8xxx.c of/device: Replace struct of_device with struct platform_device 2010-08-06 09:25:50 -06:00
spi_nuc900.c include cleanup: Update gfp.h and slab.h includes to prepare for breaking implicit slab.h inclusion from percpu.h 2010-03-30 22:02:32 +09:00
spi_ppc4xx.c of/device: Replace struct of_device with struct platform_device 2010-08-06 09:25:50 -06:00
spi_s3c24xx.c include cleanup: Update gfp.h and slab.h includes to prepare for breaking implicit slab.h inclusion from percpu.h 2010-03-30 22:02:32 +09:00
spi_s3c24xx_fiq.h spi_s3c24xx: add FIQ pseudo-DMA support 2009-12-17 08:57:01 -07:00
spi_s3c24xx_fiq.S spi_s3c24xx: add FIQ pseudo-DMA support 2009-12-17 08:57:01 -07:00
spi_s3c24xx_gpio.c spi/bitbang: add support for SPI_MASTER_NO_{TX, RX} modes 2010-07-03 22:45:44 -06:00
spi_s3c64xx.c spi/spi_s3c64xx.c: Fix continuation line formats 2010-02-02 01:07:07 -07:00
spi_sh_msiof.c Merge branch 'next-spi' of git://git.secretlab.ca/git/linux-2.6 2010-02-25 15:38:03 -08:00
spi_sh_sci.c spi/bitbang: add support for SPI_MASTER_NO_{TX, RX} modes 2010-07-03 22:45:44 -06:00
spi_stmp.c spi: Fix reversed args to time_before() in Freescale stmp driver. 2010-01-20 13:49:44 -07:00
spi_txx9.c Merge branch 'next-spi' of git://git.secretlab.ca/git/linux-2.6 2009-12-17 15:59:05 -08:00
spidev.c Merge branch 'next-spi' of git://git.secretlab.ca/git/linux-2.6 2009-12-17 15:59:05 -08:00
tle62x0.c include cleanup: Update gfp.h and slab.h includes to prepare for breaking implicit slab.h inclusion from percpu.h 2010-03-30 22:02:32 +09:00
xilinx_spi.c of/spi: call of_register_spi_devices() from spi core code 2010-07-30 00:03:59 -06:00
xilinx_spi.h xilinx_spi: Split into of driver and generic part. 2009-12-08 18:48:14 -07:00
xilinx_spi_of.c of/device: Replace struct of_device with struct platform_device 2010-08-06 09:25:50 -06:00
xilinx_spi_pltfm.c xilinx_spi: add a platform driver using the xilinx_spi common module. 2009-12-08 18:48:14 -07:00