forked from Minki/linux
OMAP4: Keyboard: Mux changes in the board file
The mux settings for keypad are done for omap4430sdp in board file. Signed-off-by: Shubhrajyoti D <shubhrajyoti@ti.com> [tony@atomide.com: improved formatting a bit] Signed-off-by: Tony Lindgren <tony@atomide.com>
This commit is contained in:
parent
6de8bae86c
commit
f67df6c670
@ -129,6 +129,64 @@ static const int sdp4430_keymap[] = {
|
||||
KEY(7, 6, KEY_OK),
|
||||
KEY(7, 7, KEY_DOWN),
|
||||
};
|
||||
static struct omap_device_pad keypad_pads[] __initdata = {
|
||||
{ .name = "kpd_col1.kpd_col1",
|
||||
.enable = OMAP_WAKEUP_EN | OMAP_MUX_MODE1,
|
||||
},
|
||||
{ .name = "kpd_col1.kpd_col1",
|
||||
.enable = OMAP_WAKEUP_EN | OMAP_MUX_MODE1,
|
||||
},
|
||||
{ .name = "kpd_col2.kpd_col2",
|
||||
.enable = OMAP_WAKEUP_EN | OMAP_MUX_MODE1,
|
||||
},
|
||||
{ .name = "kpd_col3.kpd_col3",
|
||||
.enable = OMAP_WAKEUP_EN | OMAP_MUX_MODE1,
|
||||
},
|
||||
{ .name = "kpd_col4.kpd_col4",
|
||||
.enable = OMAP_WAKEUP_EN | OMAP_MUX_MODE1,
|
||||
},
|
||||
{ .name = "kpd_col5.kpd_col5",
|
||||
.enable = OMAP_WAKEUP_EN | OMAP_MUX_MODE1,
|
||||
},
|
||||
{ .name = "gpmc_a23.kpd_col7",
|
||||
.enable = OMAP_WAKEUP_EN | OMAP_MUX_MODE1,
|
||||
},
|
||||
{ .name = "gpmc_a22.kpd_col6",
|
||||
.enable = OMAP_WAKEUP_EN | OMAP_MUX_MODE1,
|
||||
},
|
||||
{ .name = "kpd_row0.kpd_row0",
|
||||
.enable = OMAP_PULL_ENA | OMAP_PULL_UP | OMAP_WAKEUP_EN |
|
||||
OMAP_MUX_MODE1 | OMAP_INPUT_EN,
|
||||
},
|
||||
{ .name = "kpd_row1.kpd_row1",
|
||||
.enable = OMAP_PULL_ENA | OMAP_PULL_UP | OMAP_WAKEUP_EN |
|
||||
OMAP_MUX_MODE1 | OMAP_INPUT_EN,
|
||||
},
|
||||
{ .name = "kpd_row2.kpd_row2",
|
||||
.enable = OMAP_PULL_ENA | OMAP_PULL_UP | OMAP_WAKEUP_EN |
|
||||
OMAP_MUX_MODE1 | OMAP_INPUT_EN,
|
||||
},
|
||||
{ .name = "kpd_row3.kpd_row3",
|
||||
.enable = OMAP_PULL_ENA | OMAP_PULL_UP | OMAP_WAKEUP_EN |
|
||||
OMAP_MUX_MODE1 | OMAP_INPUT_EN,
|
||||
},
|
||||
{ .name = "kpd_row4.kpd_row4",
|
||||
.enable = OMAP_PULL_ENA | OMAP_PULL_UP | OMAP_WAKEUP_EN |
|
||||
OMAP_MUX_MODE1 | OMAP_INPUT_EN,
|
||||
},
|
||||
{ .name = "kpd_row5.kpd_row5",
|
||||
.enable = OMAP_PULL_ENA | OMAP_PULL_UP | OMAP_WAKEUP_EN |
|
||||
OMAP_MUX_MODE1 | OMAP_INPUT_EN,
|
||||
},
|
||||
{ .name = "gpmc_a18.kpd_row6",
|
||||
.enable = OMAP_PULL_ENA | OMAP_PULL_UP | OMAP_WAKEUP_EN |
|
||||
OMAP_MUX_MODE1 | OMAP_INPUT_EN,
|
||||
},
|
||||
{ .name = "gpmc_a19.kpd_row7",
|
||||
.enable = OMAP_PULL_ENA | OMAP_PULL_UP | OMAP_WAKEUP_EN |
|
||||
OMAP_MUX_MODE1 | OMAP_INPUT_EN,
|
||||
},
|
||||
};
|
||||
|
||||
static struct matrix_keymap_data sdp4430_keymap_data = {
|
||||
.keymap = sdp4430_keymap,
|
||||
@ -140,6 +198,13 @@ static struct omap4_keypad_platform_data sdp4430_keypad_data = {
|
||||
.rows = 8,
|
||||
.cols = 8,
|
||||
};
|
||||
|
||||
static struct omap_board_data keypad_data = {
|
||||
.id = 1,
|
||||
.pads = keypad_pads,
|
||||
.pads_cnt = ARRAY_SIZE(keypad_pads),
|
||||
};
|
||||
|
||||
static struct gpio_led sdp4430_gpio_leds[] = {
|
||||
{
|
||||
.name = "omap4:green:debug0",
|
||||
@ -825,7 +890,7 @@ static void __init omap_4430sdp_init(void)
|
||||
ARRAY_SIZE(sdp4430_spi_board_info));
|
||||
}
|
||||
|
||||
status = omap4_keyboard_init(&sdp4430_keypad_data);
|
||||
status = omap4_keyboard_init(&sdp4430_keypad_data, &keypad_data);
|
||||
if (status)
|
||||
pr_err("Keypad initialization failed: %d\n", status);
|
||||
|
||||
|
@ -230,7 +230,7 @@ struct omap_device_pm_latency omap_keyboard_latency[] = {
|
||||
};
|
||||
|
||||
int __init omap4_keyboard_init(struct omap4_keypad_platform_data
|
||||
*sdp4430_keypad_data)
|
||||
*sdp4430_keypad_data, struct omap_board_data *bdata)
|
||||
{
|
||||
struct omap_device *od;
|
||||
struct omap_hwmod *oh;
|
||||
@ -257,6 +257,7 @@ int __init omap4_keyboard_init(struct omap4_keypad_platform_data
|
||||
name, oh->name);
|
||||
return PTR_ERR(od);
|
||||
}
|
||||
oh->mux = omap_hwmod_mux_init(bdata->pads, bdata->pads_cnt);
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
@ -10,5 +10,6 @@ struct omap4_keypad_platform_data {
|
||||
u8 cols;
|
||||
};
|
||||
|
||||
extern int omap4_keyboard_init(struct omap4_keypad_platform_data *);
|
||||
extern int omap4_keyboard_init(struct omap4_keypad_platform_data *,
|
||||
struct omap_board_data *);
|
||||
#endif
|
||||
|
Loading…
Reference in New Issue
Block a user