spi: xilinx_spi: Fix up I/O routine wrapping bogosity.
authorPaul Mundt <lethal@linux-sh.org>
Wed, 20 Jan 2010 20:49:45 +0000 (13:49 -0700)
committerGrant Likely <grant.likely@secretlab.ca>
Wed, 20 Jan 2010 20:49:45 +0000 (13:49 -0700)
commit9778214990af88ec6720bd771d7fc0fa1b140b02
tree64f4f5550795ae5e4c81fcbb49bb5266c677a2f4
parentf4d4ecfe788b4141d8c90cfc3ac2831f620f5c1b
spi: xilinx_spi: Fix up I/O routine wrapping bogosity.

xilinx_spi presently makes some fairly questionable assumptions about I/O
routines, and attempts to assign ioread32/iowrite32 and friends directly
to its own internal function pointers. On many platforms these I/O
routines are macros or wrappers and not actual functions on their own,
resulting in things like:

ERROR: "ioread32be" [drivers/spi/xilinx_spi.ko] undefined!
ERROR: "iowrite32be" [drivers/spi/xilinx_spi.ko] undefined!
ERROR: "iowrite32" [drivers/spi/xilinx_spi.ko] undefined!
ERROR: "ioread32" [drivers/spi/xilinx_spi.ko] undefined!

If xilinx_spi wants to do this sort of casting, it needs to provide its
own wrappers for these, or change how it does accesses completely.

I've opted for the first approach, and the attached silly patch does
that. If someone with the hardware available wants to give the second
option a try that's ok too. In any event, the current code is broken for
at least: arm, avr32, blackfin, microblaze, mn10300, and sh.

Signed-off-by: Paul Mundt <lethal@linux-sh.org>
Acked-by: Richard Röjfors <richard.rojfors@pelagicore.com>
Signed-off-by: Grant Likely <grant.likely@secretlab.ca>
drivers/spi/xilinx_spi.c