h1. PinePhone The prototype version of PinePhone is already in the hands of developers and a new batch is shipping in January 2020[12], hardware won't change much from now on. |_. Feature |_. Hardware |_. Comments |_. TODO | | System on a chip | Allwinner A64 Quad Core[9] | * The bootloader should be fully free software[7] including ARM Trusted Firmware[8] * The code should be upstream already[7] | TODO: * Look at the code | | GPU | Mali 400 MP2 GPU[1] | * A "pipe" driver is in Linux since 5.2 * Has (very early) support in Mesa | TODO: * Regularly check kernel and Mesa status | | Modem |/2. Quectel EG-25G[1] with[2] worldwide bands[4] | * The EG-25G is an international version of the EC25. * Runs GNU/Linux[18]. * USB connection for data and I2S connection for audio[18]. * Audio connected to both PCM interfaces on the A64[14]. * PCM audio still experimental: sending to the modem works fine, receiving produces mangled samples[14]. | TODO: * How supported is the AT support? * How supported is the QMI the protocol? * What's the similarity with the EC-25? | | GNSS[1]: GPS, GPS-A, GLONASS[4] | | | WiFi |/2. RTL8723cs[3] | * Requires a nonfree loadable firmware[3] * Connected via SDIO[18]. | | | Bluetooth: 4.0, A2DP[1] | * Requires a nonfree firmware[3]. * Connected via UART[18]. | TODO: * Check if it really requires that firmware or if it has some ROM code that could be used? | | USB – C[1] (Power, Data and Video Out) | |* USB 2.0[9] * Serial console is only available in the headphone connector (activated by the 6th contact on the dipswitch[10])| | | RAM | 2GB of LPDDR3 RAM | * Initialized by u-boot SPL[18]. | TODO: * Check if it meets [[HardwareRequirements|Android 9 requirements]] | | Main Camera | Single OmniVision OV6540, 5MP, 1/4″, LED Flash[1] | * Mainline driver[5] * No firmware required[5] * There's an optional non-free firmware for the auto-focus[18]. | | | Selfie Camera | Single GC2035[1], 2MP, f/2.8, 1/5″ | | | | Bootable Micro SD[1] 16GB eMMC[1] | *Boot order:MicroSD->eMMC[6]| | | Sensors accelerator, gyro, proximity, compass, barometer, ambient light[1] | | | TODO: * What chips are used | | LCD panel and touchscreen | 5.95″ LCD 1440×720 18:9 aspect ratio (hardened glass) | Probably works with free software[11] | | | Power Management IC (PMIC) | AXP803[13] | | | | Power Management coprocessor | AR100[15] | * The proprietary firmware can be replaced with Crust[16]. * Allows deep power-saving modes and later wake-up. * Use case: receive signal from modem to wake-up device[17]. | | h2. Source code Kernel and bootloader are available at https://gitlab.com/pine64-org They are a fork of sunxi-next through MoeIcenowy. Current upstreaming path looks like this: pine64 > sunxi-next > linux-next > torvalds Patches relevant to all A64 devices should be directly sent to sunxi-next. Patches only relevant to PinePhone should be sent to pine64. Downstream projects such as UBports and postmarketOs gather efforts there for future upstreaming. Support for several features (e.g. modem PCM audio, power management) still needs to be upstreamed to mainline Linux. h2. Hardware kill switches The PinePhone has 6 hardware switches[19] that allow turning on/off different hardware components: modem, WiFi/Bluetooth, microphone, rear camera, front camera and headphones. Unfortunately these are located under the back cover, which needs to be taken out to operate them. h2. Schematics "PinePhone Brave Heart Schematic":http://files.pine64.org/doc/PinePhone/PinePhone_Schematic_v1.1_20191031.pdf "PinePhone Brave Heart Changes (vs prototype units)":http://files.pine64.org/doc/PinePhone/PinePhone_BraveHeart_edition_version_1.1_change_list.pdf "PinePhone Exploded Diagram of Brave Heart edition PinePhones":http://files.pine64.org/doc/PinePhone/PinePhone_Exploded_Diagram_ver_1.0.pdf h2. References fn1. Some specifications are available at the "device page":https://www.pine64.org/pinephone/ and "wiki page":https://wiki.pine64.org/index.php/PinePhone. fn2. PinePhone discussion in Replicant's mailing list: https://lists.osuosl.org/pipermail/replicant/2019-July/001997.html fn3. From #replicant channel on Freenode:
fn4. From #replicant channel on Freenode:The Wi-Fi changed to RTL8723CS (this chip also does BT), which needs non-free firmware to be feed
fn5. From #replicant channel on Freenode:The GNSS should be also done by EG25-G
fn6. From #replicant channel on Freenode:The OV5640 camera doesn't need firmware and its driver is mainlined
fn7. From #replicant channel on Freenode:The boot order is strictly MicroSD->eMMC, which is set in the A64's boot ROM
fn8. From #replicant channel on Freenode:The bootloader (U-Boot SPL + ATF + U-Boot) is free software, all mainlined now (and the downstream dirty U-Boot cannot boot upstream Linux kernel)
fn9. Allwinner A64 Datasheet: http://files.pine64.org/doc/datasheet/pine64/A64_Datasheet_V1.1.pdf fn10. PostmarketOS Pinephone page: https://wiki.postmarketos.org/wiki/PINE64_PinePhone_(pine64-pinephone)#Serial_console fn11. From #replicant channel on Freenode:https://github.com/ARM-software/arm-trusted-firmware
01:48fn12. PINE64 December 2019 Update: https://www.pine64.org/2019/12/05/december-update-thank-you-for-2019/ fn13. From Xalius on "PINE64 IRC":https://forum.pine64.org/showthread.php?tid=892. Details at: https://linux-sunxi.org/AXP803 fn14. From Xalius. fn15. https://linux-sunxi.org/AR100 fn16. https://github.com/crust-firmware/crust fn17. From Xalius. fn18. PinePhone Misconceptions: https://www.pine64.org/2020/01/24/setting-the-record-straight-pinephone-misconceptions/ fn19. PinePhone at PINE64 wiki: https://wiki.pine64.org/index.php/PinePhone#Killswitch_configurationGNUtoo, lukasz confirmed me that the lcd doesn't require proprietary firmware to be uploaded 01:49 the conversation between pine64 staff about the lcd that someone posted on irc was probably before deciding in the last lcd