spi: dw-spi: Convert 16bit accesses to 32bit accesses
authorThor Thayer <tthayer@opensource.altera.com>
Thu, 12 Mar 2015 19:19:31 +0000 (14:19 -0500)
committerMark Brown <broonie@kernel.org>
Tue, 17 Mar 2015 12:27:09 +0000 (12:27 +0000)
commitdd11444327ce0fd549cce552b04aa441688ef2d3
tree837d1035ba6b02b54d3691415feb81caeeccbd08
parent2306509605d3cb45b8480089af2d282600650e9e
spi: dw-spi: Convert 16bit accesses to 32bit accesses

Altera's Arria10 SoC interconnect requires a 32-bit write for APB
peripherals. The current spi-dw driver uses 16-bit accesses in
some locations. This patch converts all the 16-bit reads and
writes to 32-bit reads and writes.

Additional Documentation to Support this Change:
The DW_apb_ssi databook states:
"All registers in the DW_apb_ssi are addressed at 32-bit boundaries
to remain consistent with the AHB bus. Where the physical size of
any register is less than 32-bits wide, the upper unused bits of
the 32-bit boundary are reserved. Writing to these bits has no
effect; reading from these bits returns 0." [1]

[1] Section 6.1 of dw_apb_ssi.pdf (version 3.22a)

Request for test with platforms using the DesignWare SPI IP.

Tested On:
Altera CycloneV development kit
Altera Arria10 development kit
Compile tested for build errors on x86_64 (allyesconfigs)

Signed-off-by: Thor Thayer <tthayer@opensource.altera.com>
Reviewed-and-tested-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
Signed-off-by: Mark Brown <broonie@kernel.org>
drivers/spi/spi-dw-mid.c
drivers/spi/spi-dw.c
drivers/spi/spi-dw.h