aboutsummaryrefslogtreecommitdiffstats
path: root/arch/arm/mach-imx/mach-mx31moboard.c
diff options
context:
space:
mode:
Diffstat (limited to 'arch/arm/mach-imx/mach-mx31moboard.c')
-rw-r--r--arch/arm/mach-imx/mach-mx31moboard.c22
1 files changed, 20 insertions, 2 deletions
diff --git a/arch/arm/mach-imx/mach-mx31moboard.c b/arch/arm/mach-imx/mach-mx31moboard.c
index f17a15f28316..016791f038b0 100644
--- a/arch/arm/mach-imx/mach-mx31moboard.c
+++ b/arch/arm/mach-imx/mach-mx31moboard.c
@@ -47,6 +47,7 @@
47#include <mach/hardware.h> 47#include <mach/hardware.h>
48#include <mach/iomux-mx3.h> 48#include <mach/iomux-mx3.h>
49#include <mach/ulpi.h> 49#include <mach/ulpi.h>
50#include <mach/ssi.h>
50 51
51#include "devices-imx31.h" 52#include "devices-imx31.h"
52 53
@@ -102,6 +103,9 @@ static unsigned int moboard_pins[] = {
102 MX31_PIN_CSPI3_MOSI__MOSI, MX31_PIN_CSPI3_MISO__MISO, 103 MX31_PIN_CSPI3_MOSI__MOSI, MX31_PIN_CSPI3_MISO__MISO,
103 MX31_PIN_CSPI3_SCLK__SCLK, MX31_PIN_CSPI3_SPI_RDY__SPI_RDY, 104 MX31_PIN_CSPI3_SCLK__SCLK, MX31_PIN_CSPI3_SPI_RDY__SPI_RDY,
104 MX31_PIN_CSPI2_SS1__CSPI3_SS1, 105 MX31_PIN_CSPI2_SS1__CSPI3_SS1,
106 /* SSI */
107 MX31_PIN_STXD4__STXD4, MX31_PIN_SRXD4__SRXD4,
108 MX31_PIN_SCK4__SCK4, MX31_PIN_SFS4__SFS4,
105}; 109};
106 110
107static struct physmap_flash_data mx31moboard_flash_data = { 111static struct physmap_flash_data mx31moboard_flash_data = {
@@ -276,6 +280,11 @@ static struct mc13xxx_buttons_platform_data moboard_buttons = {
276 .b1on_key = KEY_POWER, 280 .b1on_key = KEY_POWER,
277}; 281};
278 282
283static struct mc13xxx_codec_platform_data moboard_codec = {
284 .dac_ssi_port = MC13783_SSI1_PORT,
285 .adc_ssi_port = MC13783_SSI1_PORT,
286};
287
279static struct mc13xxx_platform_data moboard_pmic = { 288static struct mc13xxx_platform_data moboard_pmic = {
280 .regulators = { 289 .regulators = {
281 .regulators = moboard_regulators, 290 .regulators = moboard_regulators,
@@ -283,7 +292,12 @@ static struct mc13xxx_platform_data moboard_pmic = {
283 }, 292 },
284 .leds = &moboard_leds, 293 .leds = &moboard_leds,
285 .buttons = &moboard_buttons, 294 .buttons = &moboard_buttons,
286 .flags = MC13XXX_USE_RTC | MC13XXX_USE_ADC, 295 .codec = &moboard_codec,
296 .flags = MC13XXX_USE_RTC | MC13XXX_USE_ADC | MC13XXX_USE_CODEC,
297};
298
299static struct imx_ssi_platform_data moboard_ssi_pdata = {
300 .flags = IMX_SSI_DMA | IMX_SSI_NET,
287}; 301};
288 302
289static struct spi_board_info moboard_spi_board_info[] __initdata = { 303static struct spi_board_info moboard_spi_board_info[] __initdata = {
@@ -554,6 +568,10 @@ static void __init mx31moboard_init(void)
554 568
555 moboard_usbh2_init(); 569 moboard_usbh2_init();
556 570
571 imx31_add_imx_ssi(0, &moboard_ssi_pdata);
572
573 imx_add_platform_device("imx_mc13783", 0, NULL, 0, NULL, 0);
574
557 pm_power_off = mx31moboard_poweroff; 575 pm_power_off = mx31moboard_poweroff;
558 576
559 switch (mx31moboard_baseboard) { 577 switch (mx31moboard_baseboard) {
@@ -580,7 +598,7 @@ static void __init mx31moboard_timer_init(void)
580 mx31_clocks_init(26000000); 598 mx31_clocks_init(26000000);
581} 599}
582 600
583struct sys_timer mx31moboard_timer = { 601static struct sys_timer mx31moboard_timer = {
584 .init = mx31moboard_timer_init, 602 .init = mx31moboard_timer_init,
585}; 603};
586 604