diff options
author | eric miao <eric.miao@marvell.com> | 2007-11-21 05:50:53 -0500 |
---|---|---|
committer | Russell King <rmk+kernel@arm.linux.org.uk> | 2008-01-26 10:07:52 -0500 |
commit | 2f1a74e5a2de0459139b85af95e901448726c375 (patch) | |
tree | 87b7bccdcff291b4956632f44c0233d228536299 /arch/arm/mach-pxa | |
parent | 3dcb00ea58f6b5dc62b89bbfd54353a06e6af921 (diff) |
[ARM] pxa: make pxa2xx_spi driver use ssp_request()/ssp_free()
1. make pxa2xx_spi.c use ssp_request() and ssp_free() to get the common
information of the designated SSP port.
2. remove those IRQ/memory request code, ssp_request() has done that for
the driver
3. the SPI platform device is thus made psuedo, no resource (memory/IRQ)
has to be defined, all will be retreived by ssp_request()
4. introduce ssp_get_clk_div() to handle controller difference in clock
divisor setting
5. use clk_xxx() API for clock enable/disable, and clk_get_rate() to
handle the different SSP clock frequency between different processors
Signed-off-by: eric miao <eric.miao@marvell.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Diffstat (limited to 'arch/arm/mach-pxa')
-rw-r--r-- | arch/arm/mach-pxa/lubbock.c | 17 |
1 files changed, 0 insertions, 17 deletions
diff --git a/arch/arm/mach-pxa/lubbock.c b/arch/arm/mach-pxa/lubbock.c index 1d3112dc629e..ebb73f133486 100644 --- a/arch/arm/mach-pxa/lubbock.c +++ b/arch/arm/mach-pxa/lubbock.c | |||
@@ -206,30 +206,13 @@ static struct resource smc91x_resources[] = { | |||
206 | * (to J5) and poking board registers (as done below). Else it's only useful | 206 | * (to J5) and poking board registers (as done below). Else it's only useful |
207 | * for the temperature sensors. | 207 | * for the temperature sensors. |
208 | */ | 208 | */ |
209 | static struct resource pxa_ssp_resources[] = { | ||
210 | [0] = { | ||
211 | .start = __PREG(SSCR0_P(1)), | ||
212 | .end = __PREG(SSCR0_P(1)) + 0x14, | ||
213 | .flags = IORESOURCE_MEM, | ||
214 | }, | ||
215 | [1] = { | ||
216 | .start = IRQ_SSP, | ||
217 | .end = IRQ_SSP, | ||
218 | .flags = IORESOURCE_IRQ, | ||
219 | }, | ||
220 | }; | ||
221 | |||
222 | static struct pxa2xx_spi_master pxa_ssp_master_info = { | 209 | static struct pxa2xx_spi_master pxa_ssp_master_info = { |
223 | .ssp_type = PXA25x_SSP, | ||
224 | .clock_enable = CKEN_SSP, | ||
225 | .num_chipselect = 0, | 210 | .num_chipselect = 0, |
226 | }; | 211 | }; |
227 | 212 | ||
228 | static struct platform_device pxa_ssp = { | 213 | static struct platform_device pxa_ssp = { |
229 | .name = "pxa2xx-spi", | 214 | .name = "pxa2xx-spi", |
230 | .id = 1, | 215 | .id = 1, |
231 | .resource = pxa_ssp_resources, | ||
232 | .num_resources = ARRAY_SIZE(pxa_ssp_resources), | ||
233 | .dev = { | 216 | .dev = { |
234 | .platform_data = &pxa_ssp_master_info, | 217 | .platform_data = &pxa_ssp_master_info, |
235 | }, | 218 | }, |