summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJens Arnold <amiconn@rockbox.org>2006-10-29 13:49:43 +0000
committerJens Arnold <amiconn@rockbox.org>2006-10-29 13:49:43 +0000
commit9aa5be6c4c2ad5e455ea3f763ff886ac1350688f (patch)
treecf52ce3458a7ce58c03f13c68f06601f3c01c008
parent85c9a05c56a290a0dd1686808d5bdb966d72f9a5 (diff)
downloadrockbox-9aa5be6c4c2ad5e455ea3f763ff886ac1350688f.tar.gz
rockbox-9aa5be6c4c2ad5e455ea3f763ff886ac1350688f.zip
H300: Slight simplification of adc_scan(), ported from X5.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11384 a1c6a512-1295-4272-9138-f99709370657
-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;