The data on this page is based on the the PinePhone v1.1 - Braveheart.
Regulators
Current Assignments
| Name/GPIO
|
Output Voltage
|
Can disable at runtime?
|
Can disable in suspend?
|
Consumers (internal/external separated by semicolon)
|
| DCDC1
|
3.3V
|
No
|
No
|
VCC-EFUSE, VCC-IO, VCC-PC (VQMMC2), VCC-PD, VCC-USB; Modem [I2C, PCM, UART], Motor, Pogo I2C, UART0, VMMC0, VMMC2, WiFi CHIP_EN
|
| DCDC2
|
DVFS
|
No
|
Yes
|
VDD-CPUX
|
| DCDC3
|
DVFS
|
N/A
|
N/A
|
VDD-CPUX (polyphase with DCDC2)
|
| DCDC4
|
N/A
|
Yes
|
Yes
|
Not used
|
| DCDC5
|
1.2V
|
No
|
Yes (future)
|
VCC-DRAM; DRAM
|
| DCDC6
|
1.1V
|
No
|
Yes (future)
|
VDD-SYS
|
| DC1SW
|
N/A
|
Yes
|
Yes
|
Not used
|
| ALDO1
|
2.8V
|
Yes
|
Yes
|
VCC-PE; Camera AFVCC, Camera DOVDD, CSI I2C, Pogo I2C
|
| ALDO2
|
1.8V
|
No
|
No
|
VCC-PL; Pogo INT
|
| ALDO3
|
3.0V
|
No
|
No
|
AVCC, KEYADC, VCC-PLL
|
| DLDO1
|
3.3V
|
No (ANX7688 [AVDD33, VCONN_EN Disable Pull-up])
|
No
|
HVCC, VCC-DSI; ANX7688 [AVDD33, HDMI_VT, I2C, ANX-V1.0 Enable, VCONN_EN Disable Pull-up], HDMI [DDC, HPD], Proximity LED, Sensor I2C, Sensor VDD
|
| DLDO2
|
1.8V? 3.3V?
|
Yes
|
Yes
|
MIPI-DSI VIO
|
| DLDO3
|
2.8V
|
Yes
|
Yes
|
Camera AVDD
|
| DLDO4
|
1.8V-3.3V
|
Yes
|
Yes
|
VCC-PG; VQMMC1
|
| ELDO1
|
1.8V
|
No
|
No (DRAM)
|
CPVDD; DRAM
|
| ELDO2
|
N/A
|
Yes
|
Yes
|
Not used
|
| ELDO3
|
1.8V
|
Yes
|
Yes
|
Camera DVDD
|
| FLDO1
|
1.2V
|
Yes
|
Yes
|
HSIC-VCC (not used)
|
| FLDO2
|
1.1V
|
No
|
No (VDD-CPUS)
|
VDD-CPUS
|
| GPIO0-LDO
|
3.3V
|
Yes
|
Yes
|
Backlight PWM, LCD, Proximity sensor VDD, Touchscreen [I2C, VCC]
|
| GPIO1-LDO
|
1.8V
|
No (ANX7688 DVDD1V8)
|
No
|
ANX7688 [AVDD1V8, DVDD1V8, CC, HDMI DDC, I2C, Power/Reset pull-up]
|
| PD6
|
5.0V
|
Yes
|
Yes
|
USB OTG
|
| PD8
|
5.0V
|
Yes
|
Yes
|
Pogo supply, USB OTG via PD6
|
| PD9
|
5.0V
|
Yes
|
Yes
|
VCONN (USB Type C)
|
| PH10
|
PWM
|
Yes
|
Yes
|
Backlight
|
| PL7
|
VBAT
|
Yes
|
Yes
|
Modem
|
| ANX-V1.0
|
1.0V
|
Yes
|
Yes
|
ANX7688 [AVDD1V0, DVDD1V0]
|
Suggested Hardware Changes
ANX7688
- Move ANX7688 AVDD33 (the chip input only, not the other things connected to 3v3) and ANX7688 I2C Level Shift (3.3V side) from DLD01 to DCDC1
- Move ANX7688 DVDD1V8 (the chip input only, not the other things labeled DVDD1V8) from GPIO1-LDO to ALDO2
- Move ANX7688 ANX-V1.0 Regulator Enable and ANX7688 VCONN_EN Disable Pull-up from DLDO1 to GPIO1-LDO
The result of these changes would be that:
- The always-on part of the ANX7688 chip (AVDD33, DVDD1V8) will always be powered
- GPIO1-LDO only needs to be powered when a USB cable is detected, and is enough to power the rest of the chip (except HDMI)
- DLDO1 only needs to be enabled if the display pipeline or sensors are active, even if a USB cable is plugged in
Sensors
- Swap the VDD and LEDA inputs of the STK3311-A sensor, moving VDD to DLDO1 and LEDA to GPIO0-LDO. The sensor VDD needs to match the I2C voltage, and the LED driver should be on a separate power supply from the sensors. There is some concern, because GPIO0-LDO has a 100mA limit, but the proximity sensor should work properly at the lowest LED drive current (12.5mA).
Assignments after Suggested Changes
Note: Only regulators that were modified are included here.
| Name/GPIO
|
Output Voltage
|
Can disable at runtime?
|
Can disable in suspend?
|
Consumers (internal/external separated by semicolon)
|
| DCDC1
|
3.3V
|
No
|
No
|
VCC-EFUSE, VCC-IO, VCC-PC (VQMMC2), VCC-PD, VCC-USB; ANX7688 [AVDD33, I2C], Modem [I2C, PCM, UART], Motor, Pogo I2C, UART0, VMMC0, VMMC2, WiFi CHIP_EN
|
| ALDO2
|
1.8V
|
No
|
No
|
VCC-PL; ANX7688 [DVDD1V8], Pogo INT
|
| DLDO1
|
3.3V
|
Yes
|
Yes
|
HVCC, VCC-DSI; ANX7688 [HDMI_VT], HDMI [DDC, HPD], Proximity sensor VDD, Sensor I2C, Sensor VDD
|
| GPIO0-LDO
|
3.3V
|
Yes
|
Yes
|
Backlight PWM, LCD, Proximity LED, Touchscreen [I2C, VCC]
|
| GPIO1-LDO
|
1.8V
|
Yes
|
Yes
|
ANX7688 [ANX-V1.0 Enable, AVDD1V8, CC, HDMI DDC, I2C, Power/Reset pull-up, VCONN_EN Disable Pull-up]
|
Open Questions
- How is ANX1.8V actually powered? from GPIO1-LDO or PS or both?
- Is DLDO2 supposed to be 1.8V or 3.3V? The schematic says both in different places.
- If DLDO2 is 3.3V, can we spread the HDMI/DSI/Sensors better across DLDO1 and DLDO2 so they can be more independent?
Software Updates Needed
Drivers that Need Regulator Consumers
- LCD Panel for VCC-LCD
- MIPI-DSI/DPHY/Panel for MIPI-DSI VIO
- STK3311-A
Drivers that Need to Suspend Regulators
- STK3311-A
- LIS3MDL
- MPU6050
- Goodix touchscreen
- sunxi pinctrl (maybe)
- USB PHY
GPIO
Current Modem Pin Assignments
Note: only pins relevant to power management are included in this table.
| Pin
|
Signal Name
|
Description
|
Direction (as modem)
|
Needed in suspend?
|
Connected to
|
| 1
|
WAKEUP_IN
|
Drive low to wake up the modem
|
I
|
No
|
PH7 (active high)
|
| 2
|
AP_READY
|
Drive high/low to signal the A64 is ready to receive URCs
|
I
|
No (if held)
|
NC
|
| 4
|
W_DISABLE#
|
Drive low to enter Airplane Mode
|
I
|
No (if held/tristate)
|
PH8 (active high)
|
| 20
|
RESET_N
|
Drive low to reset the modem
|
I
|
No (if held/tristate)
|
PC4 (active high)
|
| 21
|
PWRKEY
|
Drive low to turn the modem on/off
|
I
|
No (if held/tristate)
|
PB3 (active high)
|
| 61
|
STATUS
|
Open drain output, pulled low when the modem is on
|
O
|
No
|
PB3
|
| 62
|
RI
|
Pulled low to request host wakeup
|
O
|
Yes
|
PB2
|
| 66
|
DTR
|
Drive low to wake up the modem
|
I
|
No
|
PL6 (active low)
|
Current Port L Pin Assignments
| Pin
|
Signal Name
|
Description
|
Direction
|
Needed in suspend?
|
| PL0
|
PMU-SCK
|
AXP803 I2C/RSB Clock
|
O
|
Yes
|
| PL1
|
PMU-SDA
|
AXP803 I2C/RSB Data
|
I/O
|
Yes
|
| PL2
|
WL-REG-ON
|
Not Connected
|
N/A
|
N/A
|
| PL3
|
WL-WAKE-AP
|
Wake-on-WLAN Interrupt
|
I
|
Yes
|
| PL4
|
BT-RST-N
|
Bluetooth Reset Control
|
O
|
No (if held)
|
| PL5
|
BT-WAKE-AP
|
Wake-on-BT Interrupt
|
I
|
Yes
|
| PL6
|
DTR
|
Modem DTR (Wakeup Request)
|
O
|
No
|
| PL7
|
4G-PWR-BAT
|
Modem Power Supply Control
|
O
|
No (if held)
|
| PL8
|
ANX7688-CABLE_DET
|
ANX7688 Cable Detection Interrupt
|
I
|
Yes
|
| PL9
|
ANX_RESET
|
ANX7688 Reset Control
|
O
|
No (if held)
|
| PL10
|
LCD-PWM
|
LCD Backlight PWM Brightness Control
|
O
|
No
|
| PL11
|
ANX7688-INT
|
ANX7688 Alert Interrupt
|
I
|
Yes
|
| PL12
|
POGO-INT
|
Pogo Pin Interrupt
|
I
|
Yes
|
Pins Held During Suspend
Pins Active During Suspend
Suggested Hardware Changes
Open Questions
- What exactly is the modem PWRKEY connected to?