summaryrefslogtreecommitdiff
path: root/firmware/drivers
diff options
context:
space:
mode:
authorAndree Buschmann <AndreeBuschmann@t-online.de>2008-06-14 22:22:51 +0000
committerAndree Buschmann <AndreeBuschmann@t-online.de>2008-06-14 22:22:51 +0000
commit3d40144e34f5852cf433a77aba853efa9c6c3b13 (patch)
tree9132a5be7089db2a7c15390641a020fb6c6e2545 /firmware/drivers
parent80af160fbfd5dcff50ace0c320ccbf8493513be9 (diff)
downloadrockbox-3d40144e34f5852cf433a77aba853efa9c6c3b13.zip
rockbox-3d40144e34f5852cf433a77aba853efa9c6c3b13.tar.gz
rockbox-3d40144e34f5852cf433a77aba853efa9c6c3b13.tar.bz2
rockbox-3d40144e34f5852cf433a77aba853efa9c6c3b13.tar.xz
Commit FS#9076, unification of PCF-initialization for iPod Video and nano. The nano's runtime will increase by about 45min.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@17721 a1c6a512-1295-4272-9138-f99709370657
Diffstat (limited to 'firmware/drivers')
-rw-r--r--firmware/drivers/pcf50605.c35
1 files changed, 25 insertions, 10 deletions
diff --git a/firmware/drivers/pcf50605.c b/firmware/drivers/pcf50605.c
index 9fb04dd..e8e9676 100644
--- a/firmware/drivers/pcf50605.c
+++ b/firmware/drivers/pcf50605.c
@@ -76,25 +76,40 @@ void pcf50605_standby_mode(void)
void pcf50605_init(void)
{
-#if defined (IPOD_VIDEO)
- /* I/O and GPO voltage supply (default: 0xf8 = 3.3V ON) */
- /* ECO not allowed regarding data sheet */
- pcf50605_write(PCF5060X_IOREGC, 0xf8); /* 3.3V ON */
+#if (defined (IPOD_VIDEO) || defined (IPOD_NANO))
+ /* I/O and GPO voltage supply. ECO not allowed regarding data sheet. Defaults:
+ * iPod Video = 0xf8 = 3.3V ON
+ * iPod nano = 0xf5 = 3.0V ON */
+ pcf50605_write(PCF5060X_IOREGC, 0xf5); /* 3.0V ON */
- /* core voltage supply (default DCDC1/DCDC2: 0xec = 1.2V ON) */
- /* ECO not stable, assumed due to less precision of voltage in ECO mode */
+ /* Core voltage supply. ECO not stable, assumed due to less precision of
+ * voltage in ECO mode. DCDC2 is not relevant as this may be used for
+ * voltage scaling. Default is 1.2V ON for PP5022/PP5024 */
pcf50605_write(PCF5060X_DCDC1, 0xec); /* 1.2V ON */
pcf50605_write(PCF5060X_DCDC2, 0x0c); /* OFF */
- /* unknown (default: 0xe3 = 1.8V ON) */
+ /* Unknown. Defaults:
+ * iPod Video = 0xe3 = 1.8V ON
+ * iPod nano = 0xe3 = 1.8V ON */
pcf50605_write(PCF5060X_DCUDC1, 0xe3); /* 1.8V ON */
- /* WM8758 voltage supply (default: 0xf5 = 3.0V ON) */
- /* ECO not allowed as max. current of 5mA is not sufficient */
+ /* Codec voltage supply. ECO not allowed as max. current of 5mA is not
+ * sufficient. Defaults:
+ * iPod Video = 0xf5 = 3.0V ON
+ * iPod nano = 0xef = 2.4V ON */
pcf50605_write(PCF5060X_D1REGC1, 0xf0); /* 2.5V ON */
- /* LCD voltage supply (default: 0xf5 = 3.0V ON) */
+ /* PCF5060X_D2REGC1 is set in accordance to the accessory power setting */
+
+ /* LCD voltage supply. Defaults:
+ * iPod Video = 0xf5 = 3.0V ON
+ * iPod nano = 0xf5 = 3.0V ON */
pcf50605_write(PCF5060X_D3REGC1, 0xf1); /* 2.6V ON */
+
+ /* PCF5060X_LPREGC1 is leaved untouched as the setting varies over the
+ * different iPod platforms. Defaults:
+ * iPod Video = 0x1f = 0ff
+ * iPod nano = 0xf6 = 3.1V ON */
#else
/* keep initialization from svn for other iPods */
pcf50605_write(PCF5060X_D1REGC1, 0xf5); /* 3.0V ON */