Downloads
release
dev builds
extras
themes
Documentation
manual
wiki
device status
Support
forums
mailing lists
IRC
Development
bugs
patches
dev guide
Search
Search
| Go
Wiki
>
Main
>
OtherTargets
>
PortalPlayer
>
DeviceEnableRegistersPP502x
---+!! PortalPlayer PP502x Device Enable Registers %TOC% ---++ Overview The PortalPlayer PP502x SoC have three device enable registers: DEV_EN = 0x6000600c DEV_EN2 = 0x60006010 DEV_EN3 = 0x60006044 Each bit in these registers enables and disables a particular part of the device. Hence, it is thought that this is the key to improving power usage and battery life on these devices. If we can figure out what each bit does, then we can selectively enable and disable bits that we're not using to give a nice battery life boost. This page collects all the information we know so far about these registers. ---++ Known bits The following bits are already known. ---+++ DEV_EN | Bit | Function | | 0 | | | 1 | External Device Clocks (according to firmware/drivers/audio/as3514.c:154) | | 2 | System | | 3 | USB0, needs to be set for USB-initialization and when USB is inserted. Otherwise should be unset to save power. | | 4 | | | 5 | 5G, nano: must be set, otherwise system freezes | | 6 | Serial 0 | | 7 | Serial 1 | | 8 | 5G: enables GPIO? | | 9 | | | 10 | | | 11 | I2S | | 12 | I2C | | 13 | | | 14 | ATA | | 15 | | | 16 | OPTO/PIEZO | | 17 | 4G: backlight PWM | | 18 | | | 19 | | | 20 | | | 21 | | | 22 | USB1, needs to be set for USB-initialization and when USB is inserted. Otherwise should be unset to save power. | | 23 | Firewire | | 24 | | | 25 | IDE0 | | 26 | LCD | | 27 | | | 28 | | | 29 | | | 30 | 5G, nano: must be set, otherwise system freezes | | 31 | 5G, nano: must be set at startup (otherwise doesn't start), can be unset later | ---+++ DEV_EN2 | Bit | Function | | 0 | | | 1 | | | 2 | | | 3 | | | 4 | | | 5 | PP5020: ADC | | 6 | | | 7 | | | 8 | | | 9 | | | 10 | | | 11 | | | 12 | | | 13 | nano, H10, 4G Color/Photo: LCD | | 14 | | | 15 | | | 16 | | | 17 | | | 18 | | | 19 | | | 20 | | | 21 | | | 22 | | | 23 | | | 24 | | | 25 | | | 26 | | | 27 | | | 28 | | | 29 | | | 30 | | | 31 | | ---+++ DEV_EN3 | Bit | Function | | 0 | 5G: must be set, otherwise system freezes | | 1 | 5G: must be set, otherwise system freezes | | 2 | 5G: must be set, otherwise crash on playback | | 3 | 5G: must be set at startup (otherise doesn't reboot into disk mode), can be unset later | | 4 | 5G: must be set, otherwise system freezes / Doesn't Boot if unset | | 5 | 5G: must be set, otherwise crash on playback | | 6 | | | 7 | | | 8 | | | 9 | | | 10 | | | 11 | | | 12 | | | 13 | | | 14 | | | 15 | | | 16 | | | 17 | | | 18 | | | 19 | | | 20 | | | 21 | | | 22 | | | 23 | | | 24 | | | 25 | | | 26 | | | 27 | | | 28 | | | 29 | | | 30 | | | 31 | | ---+++ DEV_INIT1 | Bit | Function | | 0 | | | 1 | | | 2 | | | 3 | | | 4 | | | 5 | | | 6 | | | 7 | | | 8 | H10: ADC remote, mrobe100: needed for startup | | 9 | | | 10 | | | 11 | | | 12 | H10: ADC wheel, mrobe100: needed for startup | | 13 | | | 14 | | | 15 | | | 16 | | | 17 | | | 18 | nano, 5G: needed for button detection (e.g. hold) | | 19 | | | 20 | | | 21 | | | 22 | | | 23 | | | 24 | | | 25 | | | 26 | e280: needed for LCD, H10, 4G Color/Photo: needed for startup | | 27 | nano: needed for LCD, H10, 4G Color/Photo: needed for startup | | 28 | e280: needed for LCD, H10, 4G Color/Photo: needed for startup | | 29 | nano: needed for LCD | | 30 | e280: needed for LCD, H10, 4G Color/Photo: needed for startup | | 31 | nano: needed for LCD, H10, 4G Color/Photo: needed for startup | ---+++ DEV_INIT2 | Bit | Function | | 0 | | | 1 | | | 2 | | | 3 | | | 4 | | | 5 | | | 6 | | | 7 | | | 8 | CDI/I2S for sansa c200/e200 I2C and I2S | | 9 | CDI/I2S for sansa c200/e200 I2C and I2S | | 10 | | | 11 | mystery amplification device for sansa C200 tuner | | 12 | | | 13 | | | 14 | | | 15 | | | 16 | | | 17 | | | 18 | | | 19 | | | 20 | | | 21 | | | 22 | | | 23 | | | 24 | | | 25 | | | 26 | | | 27 | | | 28 | | | 29 | | | 30 | PP502x: enable PLL | | 31 | PP502x: init USB | ---++ Known values for devices The following lists the values as obtained from the I/O ports debug screen for some devices (idle, no hold-button, no USB connected, not boosted): | Device | DEV_EN | DEV_EN2 | DEV_EN3 | DEV_INIT1 | DEV_INIT2 | | iPod 4G Greyscale | 0xC2C3197F | 0x00000000 | 0x0007003F | | | | iPod Color | 0xC2C3197F | 0x00002000 | 0x0007003F | | | | iPod Mini 1G (svn < 16259) | 0xC2801977 | 0x00000000 | 0x0007003F |0x00040000 |0x00000000 | | iPod Mini 2G | 0xC2C1197F | 0x00000000 | 0x0007003F | | | | iPod Video (5.5G) | 0xC2C1197F | 0x00000000 | 0x0007003F | | | | iPod Video (5.5G) (svn >= 16259) | 0xC0011926 | 0x00000000 | 0x0000003F | 0x00040000 | 0x00000000 | | iriver H10 20GB | 0xC240197F | 0x00002020 | 0x0007003F | | | | iriver H10 6GB | 0xC240197F | 0x00002020 | 0x0007003F | | | | iiriver H10 6GB (5.5G) (svn >= 16259) | 0xC2001926 | 0x00002020 | 0x0000003F | 0xDC001100 | 0x00000000 | | Sansa c240 | 0xC040597F | 0x00000000 | | | | | Sansa e280 | 0xC440597F | 0x00000000 | 0x0007003F | | | | Sansa e200 (svn >= 16259) | 0xC4005926 | 0x00000000 | 0x0000003F | 0x54000000 | 0x00000000 | | Sansa e250 (-radio) (JonathanGordon) | 0xC440597F | 0x00002000 | 0x0007003F | | |
E
dit
|
A
ttach
|
P
rint version
|
H
istory
: r22
<
r21
<
r20
<
r19
|
B
acklinks
|
V
iew topic
|
M
ore topic actions
r22 - 11 May 2008 - 21:43:09 -
BertrikSikken
Parents:
OtherTargets
>
PortalPlayer
Copyright © by the contributing authors.