summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--firmware/drivers/adc.c14
1 files changed, 7 insertions, 7 deletions
diff --git a/firmware/drivers/adc.c b/firmware/drivers/adc.c
index 9e6ed19e4b..646509b8a8 100644
--- a/firmware/drivers/adc.c
+++ b/firmware/drivers/adc.c
@@ -112,20 +112,20 @@ void adc_init(void)
112static unsigned char adcdata[NUM_ADC_CHANNELS]; 112static unsigned char adcdata[NUM_ADC_CHANNELS];
113 113
114#ifdef IRIVER_H300_SERIES 114#ifdef IRIVER_H300_SERIES
115static int channelnum[] = 115static int adcc2_parms[] =
116{ 116{
117 5, /* ADC_BUTTONS (ADCIN2) */ 117 [ADC_BUTTONS] = 0x80 | (5 << 1) | 1, /* ADCIN2 */
118 6, /* ADC_REMOTE (ADCIN3) */ 118 [ADC_REMOTE] = 0x80 | (6 << 1) | 1, /* ADCIN3 */
119 0, /* ADC_BATTERY (BATVOLT, resistive divider) */ 119 [ADC_BATTERY] = 0x80 | (0 << 1) | 1, /* BATVOLT, resistive divider */
120 2, /* ADC_REMOTEDETECT (ADCIN1, resistive divider) */ 120 [ADC_REMOTEDETECT] = 0x80 | (2 << 1) | 1, /* ADCIN1, resistive divider */
121}; 121};
122 122
123unsigned short adc_scan(int channel) 123unsigned short adc_scan(int channel)
124{ 124{
125 int level = set_irq_level(HIGHEST_IRQ_LEVEL); 125 int level = set_irq_level(HIGHEST_IRQ_LEVEL);
126 unsigned char data; 126 unsigned char data;
127 127
128 pcf50606_write(0x2f, 0x80 | (channelnum[channel] << 1) | 1); 128 pcf50606_write(0x2f, adcc2_parms[channel]);
129 data = pcf50606_read(0x30); 129 data = pcf50606_read(0x30);
130 130
131 adcdata[channel] = data; 131 adcdata[channel] = data;