From f0f1758067b7afb9d8b56d12f1672861269fd7da Mon Sep 17 00:00:00 2001 From: Amaury Pouly Date: Sun, 16 Feb 2014 20:47:09 +0100 Subject: zenxfi2: implement headphones detection Change-Id: Ifbc8b10cebb3b7b126f1d6a212f6731f91e234e4 --- firmware/export/config/creativezenxfi2.h | 1 + firmware/target/arm/imx233/creative-zenxfi2/button-zenxfi2.c | 9 +++++++++ 2 files changed, 10 insertions(+) (limited to 'firmware') diff --git a/firmware/export/config/creativezenxfi2.h b/firmware/export/config/creativezenxfi2.h index b60c4441ee..cc38aae123 100644 --- a/firmware/export/config/creativezenxfi2.h +++ b/firmware/export/config/creativezenxfi2.h @@ -88,6 +88,7 @@ #define HAVE_SW_TONE_CONTROLS #define CONFIG_KEYPAD CREATIVE_ZENXFI2_PAD +#define HAVE_HEADPHONE_DETECTION #define HAVE_TOUCHSCREEN #define HAVE_BUTTON_DATA diff --git a/firmware/target/arm/imx233/creative-zenxfi2/button-zenxfi2.c b/firmware/target/arm/imx233/creative-zenxfi2/button-zenxfi2.c index 4f2a2775bf..2e72eabdb4 100644 --- a/firmware/target/arm/imx233/creative-zenxfi2/button-zenxfi2.c +++ b/firmware/target/arm/imx233/creative-zenxfi2/button-zenxfi2.c @@ -78,6 +78,10 @@ void button_init_device(void) imx233_pinctrl_acquire(0, 14, "select"); imx233_pinctrl_set_function(0, 14, PINCTRL_FUNCTION_GPIO); imx233_pinctrl_enable_gpio(0, 14, false); + /* jack detect */ + imx233_pinctrl_acquire(2, 7, "jack_detect"); + imx233_pinctrl_set_function(2, 7, PINCTRL_FUNCTION_GPIO); + imx233_pinctrl_enable_gpio(2, 7, false); } static int touch_to_pixels(int *val_x, int *val_y) @@ -119,6 +123,11 @@ static int touchscreen_read_device(int *data) return touchscreen_to_pixels(x, y, data); } +bool headphones_inserted(void) +{ + return imx233_pinctrl_get_gpio(2, 7); +} + int button_read_device(int *data) { int res = 0; -- cgit v1.2.3