diff options
author | Maurus Cuelenaere <mcuelenaere@gmail.com> | 2009-04-20 18:28:51 +0000 |
---|---|---|
committer | Maurus Cuelenaere <mcuelenaere@gmail.com> | 2009-04-20 18:28:51 +0000 |
commit | be8a27ad818c0db4c6687edce159bbbe9df7ff5e (patch) | |
tree | a6baefd29b28329bf107786669a86311d5f40db6 /firmware/target | |
parent | 0eb5dc649f34ca136d0160bf5d43961a2c3cea05 (diff) | |
download | rockbox-be8a27ad818c0db4c6687edce159bbbe9df7ff5e.tar.gz rockbox-be8a27ad818c0db4c6687edce159bbbe9df7ff5e.zip |
Onda VX747: fix touchscreen issues when switching from bootloader to 'normal' Rockbox
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20754 a1c6a512-1295-4272-9138-f99709370657
Diffstat (limited to 'firmware/target')
-rw-r--r-- | firmware/target/mips/ingenic_jz47xx/onda_vx747/sadc-onda_vx747.c | 44 |
1 files changed, 26 insertions, 18 deletions
diff --git a/firmware/target/mips/ingenic_jz47xx/onda_vx747/sadc-onda_vx747.c b/firmware/target/mips/ingenic_jz47xx/onda_vx747/sadc-onda_vx747.c index d7ad3eb3e6..ebc2f214a9 100644 --- a/firmware/target/mips/ingenic_jz47xx/onda_vx747/sadc-onda_vx747.c +++ b/firmware/target/mips/ingenic_jz47xx/onda_vx747/sadc-onda_vx747.c | |||
@@ -123,22 +123,7 @@ unsigned int battery_adc_voltage(void) | |||
123 | } | 123 | } |
124 | 124 | ||
125 | void button_init_device(void) | 125 | void button_init_device(void) |
126 | { | 126 | { |
127 | __cpm_start_sadc(); | ||
128 | REG_SADC_ENA = 0; | ||
129 | REG_SADC_STATE &= ~REG_SADC_STATE; | ||
130 | REG_SADC_CTRL = 0x1F; | ||
131 | |||
132 | REG_SADC_CFG = SADC_CFG_INIT; | ||
133 | |||
134 | system_enable_irq(IRQ_SADC); | ||
135 | |||
136 | REG_SADC_SAMETIME = 10; | ||
137 | REG_SADC_WAITTIME = 100; | ||
138 | REG_SADC_STATE &= ~REG_SADC_STATE; | ||
139 | REG_SADC_CTRL = ~(SADC_CTRL_PENDM | SADC_CTRL_PENUM | SADC_CTRL_TSRDYM | SADC_CTRL_PBATRDYM); | ||
140 | REG_SADC_ENA = SADC_ENA_TSEN; | ||
141 | |||
142 | #ifdef ONDA_VX747 | 127 | #ifdef ONDA_VX747 |
143 | __gpio_as_input(32*3 + 29); | 128 | __gpio_as_input(32*3 + 29); |
144 | __gpio_as_input(32*3 + 27); | 129 | __gpio_as_input(32*3 + 27); |
@@ -152,8 +137,6 @@ void button_init_device(void) | |||
152 | __gpio_as_input(32*3 + 19); | 137 | __gpio_as_input(32*3 + 19); |
153 | __gpio_as_input(32*2 + 22); | 138 | __gpio_as_input(32*2 + 22); |
154 | #endif | 139 | #endif |
155 | |||
156 | mutex_init(&battery_mtx); | ||
157 | } | 140 | } |
158 | 141 | ||
159 | bool button_hold(void) | 142 | bool button_hold(void) |
@@ -282,4 +265,29 @@ void SADC(void) | |||
282 | 265 | ||
283 | void adc_init(void) | 266 | void adc_init(void) |
284 | { | 267 | { |
268 | __cpm_start_sadc(); | ||
269 | REG_SADC_ENA = 0; | ||
270 | REG_SADC_STATE &= (~REG_SADC_STATE); | ||
271 | REG_SADC_CTRL = 0x1f; | ||
272 | |||
273 | REG_SADC_CFG = SADC_CFG_INIT; | ||
274 | |||
275 | system_enable_irq(IRQ_SADC); | ||
276 | |||
277 | REG_SADC_SAMETIME = 10; | ||
278 | REG_SADC_WAITTIME = 100; | ||
279 | REG_SADC_STATE &= ~REG_SADC_STATE; | ||
280 | REG_SADC_CTRL = ~(SADC_CTRL_PENDM | SADC_CTRL_PENUM | SADC_CTRL_TSRDYM | SADC_CTRL_PBATRDYM); | ||
281 | REG_SADC_ENA = SADC_ENA_TSEN; | ||
282 | |||
283 | mutex_init(&battery_mtx); | ||
284 | } | ||
285 | |||
286 | void adc_close(void) | ||
287 | { | ||
288 | REG_SADC_ENA = 0; | ||
289 | __intc_mask_irq(IRQ_SADC); | ||
290 | sleep(20); | ||
291 | __cpm_stop_sadc(); | ||
285 | } | 292 | } |
293 | |||