summaryrefslogtreecommitdiffstats
path: root/rbutil/mkimxboot/dualboot
diff options
context:
space:
mode:
authorAmaury Pouly <amaury.pouly@gmail.com>2014-02-04 00:27:35 +0100
committerAmaury Pouly <amaury.pouly@gmail.com>2014-02-10 23:14:25 +0100
commit61dbeb60b73d771abb86270579e8669fe08586cf (patch)
tree02c7e2546f1aab65583df29646f189932873b8cf /rbutil/mkimxboot/dualboot
parentcf99d48ab7255ba8119f4ee157e49b1a567c1643 (diff)
downloadrockbox-61dbeb60b73d771abb86270579e8669fe08586cf.tar.gz
rockbox-61dbeb60b73d771abb86270579e8669fe08586cf.zip
mkimxboot: don't forget to select LRADC source before reading
Change-Id: I3435857f48580d7b3bf9363a2eed96738fbda69a
Diffstat (limited to 'rbutil/mkimxboot/dualboot')
-rw-r--r--rbutil/mkimxboot/dualboot/dualboot.c9
1 files changed, 7 insertions, 2 deletions
diff --git a/rbutil/mkimxboot/dualboot/dualboot.c b/rbutil/mkimxboot/dualboot/dualboot.c
index 0e3cca2bd9..4aa128e15b 100644
--- a/rbutil/mkimxboot/dualboot/dualboot.c
+++ b/rbutil/mkimxboot/dualboot/dualboot.c
@@ -28,6 +28,9 @@
#define BOOT_ROM_SECTION 1 /* switch to new section *result_id */
#define BOOT_ARG_CHARGE ('c' | 'h' << 8 | 'r' << 16 | 'g' << 24)
+/** additional defines */
+#define BP_LRADC_CTRL4_LRADCxSELECT(x) (4 * (x))
+#define BM_LRADC_CTRL4_LRADCxSELECT(x) (0xf << (4 * (x)))
typedef unsigned long uint32_t;
@@ -69,8 +72,10 @@ static inline void __attribute__((always_inline)) setup_lradc(int src)
{
BF_CLR(LRADC_CTRL0, SFTRST);
BF_CLR(LRADC_CTRL0, CLKGATE);
- /* don't bother changing the source, we are early enough at boot so that
- * channel x is mapped to source x */
+#if IMX233_SUBTARGET >= 3700
+ HW_LRADC_CTRL4_CLR = BM_LRADC_CTRL4_LRADCxSELECT(src);
+ HW_LRADC_CTRL4_SET = src << BP_LRADC_CTRL4_LRADCxSELECT(src);
+#endif
HW_LRADC_CHn_CLR(src) = BM_OR2(LRADC_CHn, NUM_SAMPLES, ACCUMULATE);
BF_SETV(LRADC_CTRL2, DIVIDE_BY_TWO, 1 << src);
}