From 9891c27f02059829a11155edeca902233a31d1c2 Mon Sep 17 00:00:00 2001 From: Heesub Shin Date: Thu, 6 Apr 2017 21:02:20 +0900 Subject: [PATCH] sidk_s5jt200: register ADC driver at boot S5J supports 4 ADC channels that are exported through GPIO pins. This commit initializes the ADC driver and registers a device node at boot stage. Change-Id: Ida2f6932dc6a8d8b73b36eda735ff6d207b9aca4 Signed-off-by: Heesub Shin --- os/arch/arm/src/sidk_s5jt200/src/s5jt200_tash.c | 38 +++++++++++++++++++++++++ 1 file changed, 38 insertions(+) diff --git a/os/arch/arm/src/sidk_s5jt200/src/s5jt200_tash.c b/os/arch/arm/src/sidk_s5jt200/src/s5jt200_tash.c index 9a5b5f0..32853ca 100644 --- a/os/arch/arm/src/sidk_s5jt200/src/s5jt200_tash.c +++ b/os/arch/arm/src/sidk_s5jt200/src/s5jt200_tash.c @@ -66,6 +66,7 @@ #include #include "s5j_rtc.h" +#include "s5j_adc.h" #include "up_internal.h" #include @@ -225,6 +226,41 @@ static void sidk_s5jt200_configure_partitions(void) } /**************************************************************************** + * Name: sidk_s5jt200_adc_setup + * + * Description: + * Initialize ADC and register the ADC driver. + * + ****************************************************************************/ +int sidk_s5jt200_adc_setup(void) +{ +#ifdef CONFIG_S5J_ADC + int ret; + struct adc_dev_s *adc; + uint8_t chanlist[] = { + adc_channel_0, + adc_channel_1, + adc_channel_2, + adc_channel_3, + }; + + /* Get an instance of the ADC interface */ + adc = s5j_adc_initialize(chanlist, sizeof(chanlist)); + if (adc == NULL) { + return -ENODEV; + } + + /* Register the ADC driver at "/dev/adc0" */ + ret = adc_register("/dev/adc0", adc); + if (ret < 0) { + return ret; + } +#endif /* CONFIG_S5J_ADC */ + + return OK; +} + +/**************************************************************************** * Name: board_app_initialize * * Description: @@ -317,6 +353,8 @@ int board_app_initialize(void) #endif /* CONFIG_RTC_DRIVER */ #endif /* CONFIG_RTC */ + sidk_s5jt200_adc_setup(); + scsc_wpa_ctrl_iface_init(); #ifdef CONFIG_TASH -- 2.7.4