diff options
author | Andree Buschmann <AndreeBuschmann@t-online.de> | 2008-06-14 22:22:51 +0000 |
---|---|---|
committer | Andree Buschmann <AndreeBuschmann@t-online.de> | 2008-06-14 22:22:51 +0000 |
commit | 3d40144e34f5852cf433a77aba853efa9c6c3b13 (patch) | |
tree | 9132a5be7089db2a7c15390641a020fb6c6e2545 /firmware/drivers | |
parent | 80af160fbfd5dcff50ace0c320ccbf8493513be9 (diff) | |
download | rockbox-3d40144e34f5852cf433a77aba853efa9c6c3b13.tar.gz rockbox-3d40144e34f5852cf433a77aba853efa9c6c3b13.zip |
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.c | 35 |
1 files changed, 25 insertions, 10 deletions
diff --git a/firmware/drivers/pcf50605.c b/firmware/drivers/pcf50605.c index 9fb04ddcf2..e8e9676a2c 100644 --- a/firmware/drivers/pcf50605.c +++ b/firmware/drivers/pcf50605.c | |||
@@ -76,25 +76,40 @@ void pcf50605_standby_mode(void) | |||
76 | 76 | ||
77 | void pcf50605_init(void) | 77 | void pcf50605_init(void) |
78 | { | 78 | { |
79 | #if defined (IPOD_VIDEO) | 79 | #if (defined (IPOD_VIDEO) || defined (IPOD_NANO)) |
80 | /* I/O and GPO voltage supply (default: 0xf8 = 3.3V ON) */ | 80 | /* I/O and GPO voltage supply. ECO not allowed regarding data sheet. Defaults: |
81 | /* ECO not allowed regarding data sheet */ | 81 | * iPod Video = 0xf8 = 3.3V ON |
82 | pcf50605_write(PCF5060X_IOREGC, 0xf8); /* 3.3V ON */ | 82 | * iPod nano = 0xf5 = 3.0V ON */ |
83 | pcf50605_write(PCF5060X_IOREGC, 0xf5); /* 3.0V ON */ | ||
83 | 84 | ||
84 | /* core voltage supply (default DCDC1/DCDC2: 0xec = 1.2V ON) */ | 85 | /* Core voltage supply. ECO not stable, assumed due to less precision of |
85 | /* ECO not stable, assumed due to less precision of voltage in ECO mode */ | 86 | * voltage in ECO mode. DCDC2 is not relevant as this may be used for |
87 | * voltage scaling. Default is 1.2V ON for PP5022/PP5024 */ | ||
86 | pcf50605_write(PCF5060X_DCDC1, 0xec); /* 1.2V ON */ | 88 | pcf50605_write(PCF5060X_DCDC1, 0xec); /* 1.2V ON */ |
87 | pcf50605_write(PCF5060X_DCDC2, 0x0c); /* OFF */ | 89 | pcf50605_write(PCF5060X_DCDC2, 0x0c); /* OFF */ |
88 | 90 | ||
89 | /* unknown (default: 0xe3 = 1.8V ON) */ | 91 | /* Unknown. Defaults: |
92 | * iPod Video = 0xe3 = 1.8V ON | ||
93 | * iPod nano = 0xe3 = 1.8V ON */ | ||
90 | pcf50605_write(PCF5060X_DCUDC1, 0xe3); /* 1.8V ON */ | 94 | pcf50605_write(PCF5060X_DCUDC1, 0xe3); /* 1.8V ON */ |
91 | 95 | ||
92 | /* WM8758 voltage supply (default: 0xf5 = 3.0V ON) */ | 96 | /* Codec voltage supply. ECO not allowed as max. current of 5mA is not |
93 | /* ECO not allowed as max. current of 5mA is not sufficient */ | 97 | * sufficient. Defaults: |
98 | * iPod Video = 0xf5 = 3.0V ON | ||
99 | * iPod nano = 0xef = 2.4V ON */ | ||
94 | pcf50605_write(PCF5060X_D1REGC1, 0xf0); /* 2.5V ON */ | 100 | pcf50605_write(PCF5060X_D1REGC1, 0xf0); /* 2.5V ON */ |
95 | 101 | ||
96 | /* LCD voltage supply (default: 0xf5 = 3.0V ON) */ | 102 | /* PCF5060X_D2REGC1 is set in accordance to the accessory power setting */ |
103 | |||
104 | /* LCD voltage supply. Defaults: | ||
105 | * iPod Video = 0xf5 = 3.0V ON | ||
106 | * iPod nano = 0xf5 = 3.0V ON */ | ||
97 | pcf50605_write(PCF5060X_D3REGC1, 0xf1); /* 2.6V ON */ | 107 | pcf50605_write(PCF5060X_D3REGC1, 0xf1); /* 2.6V ON */ |
108 | |||
109 | /* PCF5060X_LPREGC1 is leaved untouched as the setting varies over the | ||
110 | * different iPod platforms. Defaults: | ||
111 | * iPod Video = 0x1f = 0ff | ||
112 | * iPod nano = 0xf6 = 3.1V ON */ | ||
98 | #else | 113 | #else |
99 | /* keep initialization from svn for other iPods */ | 114 | /* keep initialization from svn for other iPods */ |
100 | pcf50605_write(PCF5060X_D1REGC1, 0xf5); /* 3.0V ON */ | 115 | pcf50605_write(PCF5060X_D1REGC1, 0xf5); /* 3.0V ON */ |