summaryrefslogtreecommitdiff
path: root/chip
diff options
context:
space:
mode:
authorVic (Chun-Ju) Yang <victoryang@chromium.org>2013-12-19 14:44:24 +0800
committerchrome-internal-fetch <chrome-internal-fetch@google.com>2013-12-20 05:07:58 +0000
commitc455d255076f50b217f35115f2591bc5ce5f0c69 (patch)
tree37706a3e649cd9dd1bc23110b5b4ed21f6149cb1 /chip
parent9a11fab20e1e55fadcdcb748db02b84f938a68d1 (diff)
downloadchrome-ec-c455d255076f50b217f35115f2591bc5ce5f0c69.tar.gz
Move ADC console command to common
We have three duplicated ADC read console command, and we are about to have the fourth. Let's consolidate them to a single implementation in common/. Note that we have to add a simple implementation of adc_read_all_channels() for LM4. BUG=chrome-os-partner:18343 TEST=Build all boards TEST=Read single channel TEST=Read all channels BRANCH=None Change-Id: I079c0b33ab6b81a188f309cf99875eb02e9d78a4 Signed-off-by: Vic (Chun-Ju) Yang <victoryang@chromium.org> Reviewed-on: https://chromium-review.googlesource.com/180831
Diffstat (limited to 'chip')
-rw-r--r--chip/lm4/adc.c27
-rw-r--r--chip/stm32/adc-stm32f.c18
-rw-r--r--chip/stm32/adc-stm32l.c18
3 files changed, 12 insertions, 51 deletions
diff --git a/chip/lm4/adc.c b/chip/lm4/adc.c
index 1e4fdf16c5..19548b12bd 100644
--- a/chip/lm4/adc.c
+++ b/chip/lm4/adc.c
@@ -162,6 +162,18 @@ int adc_read_channel(enum adc_channel ch)
return rv * adc->factor_mul / adc->factor_div + adc->shift;
}
+int adc_read_all_channels(int *data)
+{
+ int i;
+
+ for (i = 0; i < ADC_CH_COUNT; ++i) {
+ data[i] = adc_read_channel(i);
+ if (data[i] == ADC_READ_ERROR)
+ return EC_ERROR_UNKNOWN;
+ }
+ return EC_SUCCESS;
+}
+
/*****************************************************************************/
/* Interrupt handlers */
@@ -206,21 +218,6 @@ DECLARE_CONSOLE_COMMAND(ectemp, command_ectemp,
NULL);
#endif
-static int command_adc(int argc, char **argv)
-{
- int i;
-
- for (i = 0; i < ADC_CH_COUNT; ++i)
- ccprintf("ADC channel \"%s\" = %d\n",
- adc_channels[i].name, adc_read_channel(i));
-
- return EC_SUCCESS;
-}
-DECLARE_CONSOLE_COMMAND(adc, command_adc,
- NULL,
- "Print ADC channels",
- NULL);
-
/*****************************************************************************/
/* Initialization */
diff --git a/chip/stm32/adc-stm32f.c b/chip/stm32/adc-stm32f.c
index 22d909a339..e2053e331b 100644
--- a/chip/stm32/adc-stm32f.c
+++ b/chip/stm32/adc-stm32f.c
@@ -289,21 +289,3 @@ static void adc_init(void)
STM32_ADC_SMPR2 = 0x12492492;
}
DECLARE_HOOK(HOOK_INIT, adc_init, HOOK_PRIO_DEFAULT);
-
-static int command_adc(int argc, char **argv)
-{
- int i;
- int data[ADC_CH_COUNT];
-
- if (adc_read_all_channels(data))
- return EC_ERROR_UNKNOWN;
- for (i = 0; i < ADC_CH_COUNT; ++i)
- ccprintf("ADC channel \"%s\" = %d\n",
- adc_channels[i].name, data[i]);
-
- return EC_SUCCESS;
-}
-DECLARE_CONSOLE_COMMAND(adc, command_adc,
- NULL,
- "Print ADC channels",
- NULL);
diff --git a/chip/stm32/adc-stm32l.c b/chip/stm32/adc-stm32l.c
index 75b640fde1..3e8edde278 100644
--- a/chip/stm32/adc-stm32l.c
+++ b/chip/stm32/adc-stm32l.c
@@ -211,21 +211,3 @@ exit_all_channels:
return ret;
}
-
-static int command_adc(int argc, char **argv)
-{
- int i;
- int data[ADC_CH_COUNT];
-
- if (adc_read_all_channels(data))
- return EC_ERROR_UNKNOWN;
- for (i = 0; i < ADC_CH_COUNT; ++i)
- ccprintf("ADC channel \"%s\" = %d\n",
- adc_channels[i].name, data[i]);
-
- return EC_SUCCESS;
-}
-DECLARE_CONSOLE_COMMAND(adc, command_adc,
- NULL,
- "Print ADC channels",
- NULL);