omap4: board-omap4panda: Initialise the serial pads
Use the mux framework to initialise the serial pads. Signed-off-by: sricharan <r.sricharan@ti.com> Signed-off-by: Tony Lindgren <tony@atomide.com>
This commit is contained in:
parent
626dda8a4e
commit
573efc2bab
1 changed files with 68 additions and 1 deletions
|
@ -463,8 +463,75 @@ static struct omap_board_mux board_mux[] __initdata = {
|
||||||
OMAP4_MUX(SDMMC5_DAT3, OMAP_MUX_MODE0 | OMAP_PIN_INPUT_PULLUP),
|
OMAP4_MUX(SDMMC5_DAT3, OMAP_MUX_MODE0 | OMAP_PIN_INPUT_PULLUP),
|
||||||
{ .reg_offset = OMAP_MUX_TERMINATOR },
|
{ .reg_offset = OMAP_MUX_TERMINATOR },
|
||||||
};
|
};
|
||||||
|
|
||||||
|
static struct omap_device_pad serial2_pads[] __initdata = {
|
||||||
|
OMAP_MUX_STATIC("uart2_cts.uart2_cts",
|
||||||
|
OMAP_PIN_INPUT_PULLUP | OMAP_MUX_MODE0),
|
||||||
|
OMAP_MUX_STATIC("uart2_rts.uart2_rts",
|
||||||
|
OMAP_PIN_OUTPUT | OMAP_MUX_MODE0),
|
||||||
|
OMAP_MUX_STATIC("uart2_rx.uart2_rx",
|
||||||
|
OMAP_PIN_INPUT_PULLUP | OMAP_MUX_MODE0),
|
||||||
|
OMAP_MUX_STATIC("uart2_tx.uart2_tx",
|
||||||
|
OMAP_PIN_OUTPUT | OMAP_MUX_MODE0),
|
||||||
|
};
|
||||||
|
|
||||||
|
static struct omap_device_pad serial3_pads[] __initdata = {
|
||||||
|
OMAP_MUX_STATIC("uart3_cts_rctx.uart3_cts_rctx",
|
||||||
|
OMAP_PIN_INPUT_PULLUP | OMAP_MUX_MODE0),
|
||||||
|
OMAP_MUX_STATIC("uart3_rts_sd.uart3_rts_sd",
|
||||||
|
OMAP_PIN_OUTPUT | OMAP_MUX_MODE0),
|
||||||
|
OMAP_MUX_STATIC("uart3_rx_irrx.uart3_rx_irrx",
|
||||||
|
OMAP_PIN_INPUT | OMAP_MUX_MODE0),
|
||||||
|
OMAP_MUX_STATIC("uart3_tx_irtx.uart3_tx_irtx",
|
||||||
|
OMAP_PIN_OUTPUT | OMAP_MUX_MODE0),
|
||||||
|
};
|
||||||
|
|
||||||
|
static struct omap_device_pad serial4_pads[] __initdata = {
|
||||||
|
OMAP_MUX_STATIC("uart4_rx.uart4_rx",
|
||||||
|
OMAP_PIN_INPUT | OMAP_MUX_MODE0),
|
||||||
|
OMAP_MUX_STATIC("uart4_tx.uart4_tx",
|
||||||
|
OMAP_PIN_OUTPUT | OMAP_MUX_MODE0),
|
||||||
|
};
|
||||||
|
|
||||||
|
static struct omap_board_data serial2_data = {
|
||||||
|
.id = 1,
|
||||||
|
.pads = serial2_pads,
|
||||||
|
.pads_cnt = ARRAY_SIZE(serial2_pads),
|
||||||
|
};
|
||||||
|
|
||||||
|
static struct omap_board_data serial3_data = {
|
||||||
|
.id = 2,
|
||||||
|
.pads = serial3_pads,
|
||||||
|
.pads_cnt = ARRAY_SIZE(serial3_pads),
|
||||||
|
};
|
||||||
|
|
||||||
|
static struct omap_board_data serial4_data = {
|
||||||
|
.id = 3,
|
||||||
|
.pads = serial4_pads,
|
||||||
|
.pads_cnt = ARRAY_SIZE(serial4_pads),
|
||||||
|
};
|
||||||
|
|
||||||
|
static inline void board_serial_init(void)
|
||||||
|
{
|
||||||
|
struct omap_board_data bdata;
|
||||||
|
bdata.flags = 0;
|
||||||
|
bdata.pads = NULL;
|
||||||
|
bdata.pads_cnt = 0;
|
||||||
|
bdata.id = 0;
|
||||||
|
/* pass dummy data for UART1 */
|
||||||
|
omap_serial_init_port(&bdata);
|
||||||
|
|
||||||
|
omap_serial_init_port(&serial2_data);
|
||||||
|
omap_serial_init_port(&serial3_data);
|
||||||
|
omap_serial_init_port(&serial4_data);
|
||||||
|
}
|
||||||
#else
|
#else
|
||||||
#define board_mux NULL
|
#define board_mux NULL
|
||||||
|
|
||||||
|
static inline void board_serial_init(void)
|
||||||
|
{
|
||||||
|
omap_serial_init();
|
||||||
|
}
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
static void __init omap4_panda_init(void)
|
static void __init omap4_panda_init(void)
|
||||||
|
@ -481,7 +548,7 @@ static void __init omap4_panda_init(void)
|
||||||
omap4_panda_i2c_init();
|
omap4_panda_i2c_init();
|
||||||
platform_add_devices(panda_devices, ARRAY_SIZE(panda_devices));
|
platform_add_devices(panda_devices, ARRAY_SIZE(panda_devices));
|
||||||
platform_device_register(&omap_vwlan_device);
|
platform_device_register(&omap_vwlan_device);
|
||||||
omap_serial_init();
|
board_serial_init();
|
||||||
omap4_twl6030_hsmmc_init(mmc);
|
omap4_twl6030_hsmmc_init(mmc);
|
||||||
omap4_ehci_init();
|
omap4_ehci_init();
|
||||||
usb_musb_init(&musb_board_data);
|
usb_musb_init(&musb_board_data);
|
||||||
|
|
Loading…
Add table
Reference in a new issue