diff options
author | Cástor Muñoz <cmvidal@gmail.com> | 2014-12-06 19:00:34 +0100 |
---|---|---|
committer | Cástor Muñoz <cmvidal@gmail.com> | 2015-10-07 06:15:03 +0200 |
commit | 291b2338c98c211794d55a68c9585d278fc86563 (patch) | |
tree | c894f7d5db4e93b94c153b8125bec344e590e93c /firmware/target/arm/s5l8702/debug-s5l8702.c | |
parent | 42abc6a49670cd546737a4dc7542f9f3f62e3831 (diff) | |
download | rockbox-291b2338c98c211794d55a68c9585d278fc86563.tar.gz rockbox-291b2338c98c211794d55a68c9585d278fc86563.zip |
ipod Classic: implement HAVE_RECORDING
This patch has been tested on iPod 80 and 160slim, actually
it works but some updates must be done to the final version:
- unlimitted input buffer
- decrease CHUNK_SIZE
- use non-cached addresses instead of discard d-cache ???
Capture hardware versions:
Ver iPod models capture support
--- ----------- ---------------
0 80/160fat dock line-in
1 120/160slim dock line-in + jack mic
HW version 1 includes an amplifier for the jack plug mic.
Capture HW detection only tested on iPod 80 and 160slim.
CODEC power:
AFAIK, OF powers CS42L55 at VA=2.4V for capture (1.8V for
playback) and turns on the ADC charge pump. CODEC datasheet
recommmends to disable the charge pump for VA>2.1V.
CS42L55 DS, s4.13 (Required Initialization Settings): for
VA>2.1V, some adjustments "must" be done using undocummented
"control port compensation" registers. OF does not modifies
these registers when VA=2.4V.
This patch configures capture HW in the same way as OF does.
TODO:
- ADC full scale voltage depends on VA, perform tests to find
clipping levels for VA=1.8V and VA=2.4V
Change-Id: I7e20fd3ecaa83b1c58d5c746f5153fe5c3891d75
Diffstat (limited to 'firmware/target/arm/s5l8702/debug-s5l8702.c')
-rw-r--r-- | firmware/target/arm/s5l8702/debug-s5l8702.c | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/firmware/target/arm/s5l8702/debug-s5l8702.c b/firmware/target/arm/s5l8702/debug-s5l8702.c index 74f765e447..c49737756c 100644 --- a/firmware/target/arm/s5l8702/debug-s5l8702.c +++ b/firmware/target/arm/s5l8702/debug-s5l8702.c | |||
@@ -39,6 +39,8 @@ | |||
39 | #define _DEBUG_PRINTF(a, varargs...) lcd_putsf(0, line++, (a), ##varargs); | 39 | #define _DEBUG_PRINTF(a, varargs...) lcd_putsf(0, line++, (a), ##varargs); |
40 | 40 | ||
41 | extern int lcd_type; | 41 | extern int lcd_type; |
42 | extern int rec_hw_ver; | ||
43 | |||
42 | bool dbg_hw_info(void) | 44 | bool dbg_hw_info(void) |
43 | { | 45 | { |
44 | int line; | 46 | int line; |
@@ -70,6 +72,9 @@ bool dbg_hw_info(void) | |||
70 | 72 | ||
71 | _DEBUG_PRINTF("LCD type: %d", lcd_type); | 73 | _DEBUG_PRINTF("LCD type: %d", lcd_type); |
72 | line++; | 74 | line++; |
75 | |||
76 | _DEBUG_PRINTF("capture HW: %d", rec_hw_ver); | ||
77 | line++; | ||
73 | } | 78 | } |
74 | else if(state==1) | 79 | else if(state==1) |
75 | { | 80 | { |