diff options
author | Kevin Wells <wellsk40@gmail.com> | 2010-09-16 09:18:50 -0400 |
---|---|---|
committer | Grant Likely <grant.likely@secretlab.ca> | 2010-10-12 23:37:37 -0400 |
commit | bde435a9ca376d0b7809768ca803dbf14416b9c1 (patch) | |
tree | dd9678beb7c219922ad9b94db0e8f0a804ae2ab4 /arch/arm/mach-ux500/board-mop500.c | |
parent | fadcf49b9bd7ec5fb69befbf477e747d5b6a0328 (diff) |
spi/pl022: Add spi->mode support to AMBA SPI driver
This patch adds spi->mode support for the AMBA pl022 driver and
allows spidev to correctly alter SPI modes. Unused fields used in
the pl022 header file for the pl022_config_chip have been removed.
The ab8500 client driver selects the data transfer size instead
of the platform data.
For platforms that use the amba pl022 driver, the unused fields
in the controller data structure have been removed and the .mode
field in the SPI board info structure is used instead.
Signed-off-by: Kevin Wells <wellsk40@gmail.com>
Tested-by: Linus Walleij <linus.walleij@stericsson.com>
Acked-by: Linus Walleij <linus.walleij@stericsson.com>
Signed-off-by: Grant Likely <grant.likely@secretlab.ca>
Diffstat (limited to 'arch/arm/mach-ux500/board-mop500.c')
-rw-r--r-- | arch/arm/mach-ux500/board-mop500.c | 8 |
1 files changed, 1 insertions, 7 deletions
diff --git a/arch/arm/mach-ux500/board-mop500.c b/arch/arm/mach-ux500/board-mop500.c index 0e8fd135a57d..219ae0ca4eef 100644 --- a/arch/arm/mach-ux500/board-mop500.c +++ b/arch/arm/mach-ux500/board-mop500.c | |||
@@ -55,19 +55,13 @@ static void ab4500_spi_cs_control(u32 command) | |||
55 | } | 55 | } |
56 | 56 | ||
57 | struct pl022_config_chip ab4500_chip_info = { | 57 | struct pl022_config_chip ab4500_chip_info = { |
58 | .lbm = LOOPBACK_DISABLED, | ||
59 | .com_mode = INTERRUPT_TRANSFER, | 58 | .com_mode = INTERRUPT_TRANSFER, |
60 | .iface = SSP_INTERFACE_MOTOROLA_SPI, | 59 | .iface = SSP_INTERFACE_MOTOROLA_SPI, |
61 | /* we can act as master only */ | 60 | /* we can act as master only */ |
62 | .hierarchy = SSP_MASTER, | 61 | .hierarchy = SSP_MASTER, |
63 | .slave_tx_disable = 0, | 62 | .slave_tx_disable = 0, |
64 | .endian_rx = SSP_RX_MSB, | ||
65 | .endian_tx = SSP_TX_MSB, | ||
66 | .data_size = SSP_DATA_BITS_24, | ||
67 | .rx_lev_trig = SSP_RX_1_OR_MORE_ELEM, | 63 | .rx_lev_trig = SSP_RX_1_OR_MORE_ELEM, |
68 | .tx_lev_trig = SSP_TX_1_OR_MORE_EMPTY_LOC, | 64 | .tx_lev_trig = SSP_TX_1_OR_MORE_EMPTY_LOC, |
69 | .clk_phase = SSP_CLK_SECOND_EDGE, | ||
70 | .clk_pol = SSP_CLK_POL_IDLE_HIGH, | ||
71 | .cs_control = ab4500_spi_cs_control, | 65 | .cs_control = ab4500_spi_cs_control, |
72 | }; | 66 | }; |
73 | 67 | ||
@@ -83,7 +77,7 @@ static struct spi_board_info u8500_spi_devices[] = { | |||
83 | .max_speed_hz = 12000000, | 77 | .max_speed_hz = 12000000, |
84 | .bus_num = 0, | 78 | .bus_num = 0, |
85 | .chip_select = 0, | 79 | .chip_select = 0, |
86 | .mode = SPI_MODE_0, | 80 | .mode = SPI_MODE_3, |
87 | .irq = IRQ_DB8500_AB8500, | 81 | .irq = IRQ_DB8500_AB8500, |
88 | }, | 82 | }, |
89 | }; | 83 | }; |