davinci: add tnetv107x ssp platform device
This patch adds an SSP platform device definition for the tnetv107x soc family. The clock lookup entry has also been updated to match. Signed-off-by: Cyril Chemparathy <cyril@ti.com> Signed-off-by: Sekhar Nori <nsekhar@ti.com> Signed-off-by: Kevin Hilman <khilman@ti.com>
This commit is contained in:
parent
a72aeefebe
commit
24981753dd
3 changed files with 28 additions and 1 deletions
|
@ -35,6 +35,7 @@
|
||||||
#define TNETV107X_SDIO0_BASE 0x08088700
|
#define TNETV107X_SDIO0_BASE 0x08088700
|
||||||
#define TNETV107X_SDIO1_BASE 0x08088800
|
#define TNETV107X_SDIO1_BASE 0x08088800
|
||||||
#define TNETV107X_KEYPAD_BASE 0x08088a00
|
#define TNETV107X_KEYPAD_BASE 0x08088a00
|
||||||
|
#define TNETV107X_SSP_BASE 0x08088c00
|
||||||
#define TNETV107X_ASYNC_EMIF_CNTRL_BASE 0x08200000
|
#define TNETV107X_ASYNC_EMIF_CNTRL_BASE 0x08200000
|
||||||
#define TNETV107X_ASYNC_EMIF_DATA_CE0_BASE 0x30000000
|
#define TNETV107X_ASYNC_EMIF_DATA_CE0_BASE 0x30000000
|
||||||
#define TNETV107X_ASYNC_EMIF_DATA_CE1_BASE 0x40000000
|
#define TNETV107X_ASYNC_EMIF_DATA_CE1_BASE 0x40000000
|
||||||
|
@ -342,6 +343,25 @@ static struct platform_device tsc_device = {
|
||||||
.resource = tsc_resources,
|
.resource = tsc_resources,
|
||||||
};
|
};
|
||||||
|
|
||||||
|
static struct resource ssp_resources[] = {
|
||||||
|
{
|
||||||
|
.start = TNETV107X_SSP_BASE,
|
||||||
|
.end = TNETV107X_SSP_BASE + 0x1ff,
|
||||||
|
.flags = IORESOURCE_MEM,
|
||||||
|
},
|
||||||
|
{
|
||||||
|
.start = IRQ_TNETV107X_SSP,
|
||||||
|
.flags = IORESOURCE_IRQ,
|
||||||
|
},
|
||||||
|
};
|
||||||
|
|
||||||
|
static struct platform_device ssp_device = {
|
||||||
|
.name = "ti-ssp",
|
||||||
|
.id = -1,
|
||||||
|
.num_resources = ARRAY_SIZE(ssp_resources),
|
||||||
|
.resource = ssp_resources,
|
||||||
|
};
|
||||||
|
|
||||||
void __init tnetv107x_devices_init(struct tnetv107x_device_info *info)
|
void __init tnetv107x_devices_init(struct tnetv107x_device_info *info)
|
||||||
{
|
{
|
||||||
int i, error;
|
int i, error;
|
||||||
|
@ -380,4 +400,9 @@ void __init tnetv107x_devices_init(struct tnetv107x_device_info *info)
|
||||||
keypad_device.dev.platform_data = info->keypad_config;
|
keypad_device.dev.platform_data = info->keypad_config;
|
||||||
platform_device_register(&keypad_device);
|
platform_device_register(&keypad_device);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (info->ssp_config) {
|
||||||
|
ssp_device.dev.platform_data = info->ssp_config;
|
||||||
|
platform_device_register(&ssp_device);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -34,6 +34,7 @@
|
||||||
|
|
||||||
#include <linux/serial_8250.h>
|
#include <linux/serial_8250.h>
|
||||||
#include <linux/input/matrix_keypad.h>
|
#include <linux/input/matrix_keypad.h>
|
||||||
|
#include <linux/mfd/ti_ssp.h>
|
||||||
|
|
||||||
#include <mach/mmc.h>
|
#include <mach/mmc.h>
|
||||||
#include <mach/nand.h>
|
#include <mach/nand.h>
|
||||||
|
@ -44,6 +45,7 @@ struct tnetv107x_device_info {
|
||||||
struct davinci_mmc_config *mmc_config[2]; /* 2 controllers */
|
struct davinci_mmc_config *mmc_config[2]; /* 2 controllers */
|
||||||
struct davinci_nand_pdata *nand_config[4]; /* 4 chipsels */
|
struct davinci_nand_pdata *nand_config[4]; /* 4 chipsels */
|
||||||
struct matrix_keypad_platform_data *keypad_config;
|
struct matrix_keypad_platform_data *keypad_config;
|
||||||
|
struct ti_ssp_data *ssp_config;
|
||||||
};
|
};
|
||||||
|
|
||||||
extern struct platform_device tnetv107x_wdt_device;
|
extern struct platform_device tnetv107x_wdt_device;
|
||||||
|
|
|
@ -278,7 +278,7 @@ static struct clk_lookup clks[] = {
|
||||||
CLK(NULL, "timer1", &clk_timer1),
|
CLK(NULL, "timer1", &clk_timer1),
|
||||||
CLK("tnetv107x_wdt.0", NULL, &clk_wdt_arm),
|
CLK("tnetv107x_wdt.0", NULL, &clk_wdt_arm),
|
||||||
CLK(NULL, "clk_wdt_dsp", &clk_wdt_dsp),
|
CLK(NULL, "clk_wdt_dsp", &clk_wdt_dsp),
|
||||||
CLK("ti-ssp.0", NULL, &clk_ssp),
|
CLK("ti-ssp", NULL, &clk_ssp),
|
||||||
CLK(NULL, "clk_tdm0", &clk_tdm0),
|
CLK(NULL, "clk_tdm0", &clk_tdm0),
|
||||||
CLK(NULL, "clk_vlynq", &clk_vlynq),
|
CLK(NULL, "clk_vlynq", &clk_vlynq),
|
||||||
CLK(NULL, "clk_mcdma", &clk_mcdma),
|
CLK(NULL, "clk_mcdma", &clk_mcdma),
|
||||||
|
|
Loading…
Add table
Reference in a new issue