Commit d8e0db11 authored by eric miao's avatar eric miao Committed by Russell King

[ARM] pxa: add ssp devices and clk support for pxa25x/pxa27x/pxa3xx

Signed-off-by: default avatareric miao <eric.miao@marvell.com>
Signed-off-by: default avatarRussell King <rmk+kernel@arm.linux.org.uk>
parent d2b82dde
...@@ -120,12 +120,15 @@ static struct clk pxa25x_clks[] = { ...@@ -120,12 +120,15 @@ static struct clk pxa25x_clks[] = {
INIT_CKEN("UDCCLK", USB, 47923000, 5, &pxa_device_udc.dev), INIT_CKEN("UDCCLK", USB, 47923000, 5, &pxa_device_udc.dev),
INIT_CKEN("MMCCLK", MMC, 19169000, 0, &pxa_device_mci.dev), INIT_CKEN("MMCCLK", MMC, 19169000, 0, &pxa_device_mci.dev),
INIT_CKEN("I2CCLK", I2C, 31949000, 0, &pxa_device_i2c.dev), INIT_CKEN("I2CCLK", I2C, 31949000, 0, &pxa_device_i2c.dev),
INIT_CKEN("SSPCLK", SSP, 3686400, 0, &pxa25x_device_ssp.dev),
INIT_CKEN("SSPCLK", NSSP, 3686400, 0, &pxa25x_device_nssp.dev),
INIT_CKEN("SSPCLK", ASSP, 3686400, 0, &pxa25x_device_assp.dev),
/* /*
INIT_CKEN("PWMCLK", PWM0, 3686400, 0, NULL), INIT_CKEN("PWMCLK", PWM0, 3686400, 0, NULL),
INIT_CKEN("PWMCLK", PWM0, 3686400, 0, NULL), INIT_CKEN("PWMCLK", PWM0, 3686400, 0, NULL),
INIT_CKEN("SSPCLK", SSP, 3686400, 0, NULL),
INIT_CKEN("I2SCLK", I2S, 14745600, 0, NULL), INIT_CKEN("I2SCLK", I2S, 14745600, 0, NULL),
INIT_CKEN("NSSPCLK", NSSP, 3686400, 0, NULL),
*/ */
INIT_CKEN("FICPCLK", FICP, 47923000, 0, NULL), INIT_CKEN("FICPCLK", FICP, 47923000, 0, NULL),
}; };
...@@ -293,6 +296,9 @@ static struct platform_device *pxa25x_devices[] __initdata = { ...@@ -293,6 +296,9 @@ static struct platform_device *pxa25x_devices[] __initdata = {
&pxa_device_stuart, &pxa_device_stuart,
&pxa_device_i2s, &pxa_device_i2s,
&pxa_device_rtc, &pxa_device_rtc,
&pxa25x_device_ssp,
&pxa25x_device_nssp,
&pxa25x_device_assp,
}; };
static int __init pxa25x_init(void) static int __init pxa25x_init(void)
......
...@@ -150,11 +150,12 @@ static struct clk pxa27x_clks[] = { ...@@ -150,11 +150,12 @@ static struct clk pxa27x_clks[] = {
INIT_CKEN("I2CCLK", PWRI2C, 13000000, 0, &pxa27x_device_i2c_power.dev), INIT_CKEN("I2CCLK", PWRI2C, 13000000, 0, &pxa27x_device_i2c_power.dev),
INIT_CKEN("KBDCLK", KEYPAD, 32768, 0, NULL), INIT_CKEN("KBDCLK", KEYPAD, 32768, 0, NULL),
INIT_CKEN("SSPCLK", SSP1, 13000000, 0, &pxa27x_device_ssp1.dev),
INIT_CKEN("SSPCLK", SSP2, 13000000, 0, &pxa27x_device_ssp2.dev),
INIT_CKEN("SSPCLK", SSP3, 13000000, 0, &pxa27x_device_ssp3.dev),
/* /*
INIT_CKEN("PWMCLK", PWM0, 13000000, 0, NULL), INIT_CKEN("PWMCLK", PWM0, 13000000, 0, NULL),
INIT_CKEN("SSPCLK", SSP1, 13000000, 0, NULL),
INIT_CKEN("SSPCLK", SSP2, 13000000, 0, NULL),
INIT_CKEN("SSPCLK", SSP3, 13000000, 0, NULL),
INIT_CKEN("MSLCLK", MSL, 48000000, 0, NULL), INIT_CKEN("MSLCLK", MSL, 48000000, 0, NULL),
INIT_CKEN("USIMCLK", USIM, 48000000, 0, NULL), INIT_CKEN("USIMCLK", USIM, 48000000, 0, NULL),
INIT_CKEN("MSTKCLK", MEMSTK, 19500000, 0, NULL), INIT_CKEN("MSTKCLK", MEMSTK, 19500000, 0, NULL),
...@@ -431,6 +432,9 @@ static struct platform_device *devices[] __initdata = { ...@@ -431,6 +432,9 @@ static struct platform_device *devices[] __initdata = {
&pxa_device_i2s, &pxa_device_i2s,
&pxa_device_rtc, &pxa_device_rtc,
&pxa27x_device_i2c_power, &pxa27x_device_i2c_power,
&pxa27x_device_ssp1,
&pxa27x_device_ssp2,
&pxa27x_device_ssp3,
}; };
static int __init pxa27x_init(void) static int __init pxa27x_init(void)
......
...@@ -189,6 +189,11 @@ static struct clk pxa3xx_clks[] = { ...@@ -189,6 +189,11 @@ static struct clk pxa3xx_clks[] = {
PXA3xx_CKEN("I2CCLK", I2C, 32842000, 0, &pxa_device_i2c.dev), PXA3xx_CKEN("I2CCLK", I2C, 32842000, 0, &pxa_device_i2c.dev),
PXA3xx_CKEN("UDCCLK", UDC, 48000000, 5, &pxa_device_udc.dev), PXA3xx_CKEN("UDCCLK", UDC, 48000000, 5, &pxa_device_udc.dev),
PXA3xx_CKEN("SSPCLK", SSP1, 13000000, 0, &pxa27x_device_ssp1.dev),
PXA3xx_CKEN("SSPCLK", SSP2, 13000000, 0, &pxa27x_device_ssp2.dev),
PXA3xx_CKEN("SSPCLK", SSP3, 13000000, 0, &pxa27x_device_ssp3.dev),
PXA3xx_CKEN("SSPCLK", SSP4, 13000000, 0, &pxa3xx_device_ssp4.dev),
}; };
void __init pxa3xx_init_irq(void) void __init pxa3xx_init_irq(void)
...@@ -215,6 +220,10 @@ static struct platform_device *devices[] __initdata = { ...@@ -215,6 +220,10 @@ static struct platform_device *devices[] __initdata = {
&pxa_device_stuart, &pxa_device_stuart,
&pxa_device_i2s, &pxa_device_i2s,
&pxa_device_rtc, &pxa_device_rtc,
&pxa27x_device_ssp1,
&pxa27x_device_ssp2,
&pxa27x_device_ssp3,
&pxa3xx_device_ssp4,
}; };
static int __init pxa3xx_init(void) static int __init pxa3xx_init(void)
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment