39
39
#define SMD_FEC_PHY_RST IMX_GPIO_NR(7, 6)
41
41
static iomux_v3_cfg_t mx53_smd_pads[] = {
42
MX53_PAD_CSI0_D10__UART1_TXD,
43
MX53_PAD_CSI0_D11__UART1_RXD,
44
MX53_PAD_ATA_DIOW__UART1_TXD,
45
MX53_PAD_ATA_DMACK__UART1_RXD,
47
MX53_PAD_ATA_BUFFER_EN__UART2_RXD,
48
MX53_PAD_ATA_DMARQ__UART2_TXD,
49
MX53_PAD_ATA_DIOR__UART2_RTS,
50
MX53_PAD_ATA_INTRQ__UART2_CTS,
52
MX53_PAD_ATA_CS_0__UART3_TXD,
53
MX53_PAD_ATA_CS_1__UART3_RXD,
54
MX53_PAD_ATA_DA_1__UART3_CTS,
55
MX53_PAD_ATA_DA_2__UART3_RTS,
42
MX53_PAD_CSI0_DAT10__UART1_TXD_MUX,
43
MX53_PAD_CSI0_DAT11__UART1_RXD_MUX,
45
MX53_PAD_PATA_BUFFER_EN__UART2_RXD_MUX,
46
MX53_PAD_PATA_DMARQ__UART2_TXD_MUX,
48
MX53_PAD_PATA_CS_0__UART3_TXD_MUX,
49
MX53_PAD_PATA_CS_1__UART3_RXD_MUX,
50
MX53_PAD_PATA_DA_1__UART3_CTS,
51
MX53_PAD_PATA_DA_2__UART3_RTS,
53
MX53_PAD_CSI0_DAT8__I2C1_SDA,
54
MX53_PAD_CSI0_DAT9__I2C1_SCL,
58
57
static const struct imxuart_platform_data mx53_smd_uart_data __initconst = {
62
61
static inline void mx53_smd_init_uart(void)
64
imx53_add_imx_uart(0, &mx53_smd_uart_data);
65
imx53_add_imx_uart(1, &mx53_smd_uart_data);
63
imx53_add_imx_uart(0, NULL);
64
imx53_add_imx_uart(1, NULL);
66
65
imx53_add_imx_uart(2, &mx53_smd_uart_data);
85
84
.phy = PHY_INTERFACE_MODE_RMII,
87
static const struct imxi2c_platform_data mx53_smd_i2c_data __initconst = {
88
91
static void __init mx53_smd_board_init(void)
90
93
mxc_iomux_v3_setup_multiple_pads(mx53_smd_pads,
92
95
mx53_smd_init_uart();
93
96
mx53_smd_fec_reset();
94
97
imx53_add_fec(&mx53_smd_fec_data);
98
imx53_add_imx2_wdt(0, NULL);
99
imx53_add_imx_i2c(0, &mx53_smd_i2c_data);
97
102
static void __init mx53_smd_timer_init(void)
106
111
MACHINE_START(MX53_SMD, "Freescale MX53 SMD Board")
107
112
.map_io = mx53_map_io,
113
.init_early = imx53_init_early,
108
114
.init_irq = mx53_init_irq,
115
.timer = &mx53_smd_timer,
109
116
.init_machine = mx53_smd_board_init,
110
.timer = &mx53_smd_timer,