summaryrefslogtreecommitdiffstats
path: root/arch/arm/mach-omap1
diff options
context:
space:
mode:
authorJanusz Krzysztofik <jmkrzyszt@gmail.com>2018-06-22 00:41:23 +0200
committerTony Lindgren <tony@atomide.com>2018-07-02 14:30:47 +0200
commit41f8fee385a00dcbc6107e7d356490391505a59a (patch)
tree3c7faa0a6fed45a32196feb4a04c5898f935aee3 /arch/arm/mach-omap1
parentInput: ams_delta_serio: Replace power GPIO with regulator (diff)
downloadlinux-41f8fee385a00dcbc6107e7d356490391505a59a.tar.xz
linux-41f8fee385a00dcbc6107e7d356490391505a59a.zip
ARM: OMAP1: ams-delta: Hog "keybrd_dataout" GPIO pin
"keybrd_dataout" GPIO pin used to be initialized by ams-delta-serio driver to a state safe for ams-delta-serio device function and not changed thereafter. As such, it may be assumed not under the driver control and responsibility for its initialization handed over to board init file. Introduce a GPIO hog table and take over control of the "keybrd_dataout" GPIO pin from the ams-delta-serio driver. Signed-off-by: Janusz Krzysztofik <jmkrzyszt@gmail.com> Signed-off-by: Tony Lindgren <tony@atomide.com>
Diffstat (limited to 'arch/arm/mach-omap1')
-rw-r--r--arch/arm/mach-omap1/board-ams-delta.c8
1 files changed, 8 insertions, 0 deletions
diff --git a/arch/arm/mach-omap1/board-ams-delta.c b/arch/arm/mach-omap1/board-ams-delta.c
index 6573e1014908..9b3073e698eb 100644
--- a/arch/arm/mach-omap1/board-ams-delta.c
+++ b/arch/arm/mach-omap1/board-ams-delta.c
@@ -607,6 +607,12 @@ static int gpiochip_match_by_label(struct gpio_chip *chip, void *data)
return !strcmp(label, chip->label);
}
+static struct gpiod_hog ams_delta_gpio_hogs[] = {
+ GPIO_HOG(LATCH2_LABEL, LATCH2_PIN_KEYBRD_DATAOUT, "keybrd_dataout",
+ GPIO_ACTIVE_HIGH, GPIOD_OUT_LOW),
+ {},
+};
+
static void __init ams_delta_init(void)
{
/* mux pins for uarts */
@@ -627,6 +633,8 @@ static void __init ams_delta_init(void)
omap_cfg_reg(J19_1610_CAM_D6);
omap_cfg_reg(J18_1610_CAM_D7);
+ gpiod_add_hogs(ams_delta_gpio_hogs);
+
omap_serial_init();
omap_register_i2c_bus(1, 100, NULL, 0);