#PinePhone’s mysterious LCD Display and its MIPI Digital Serial Interface ... All secrets shall be revealed in this article
#PinePhone's LCD Display works like a super-sized PineTime Display ... We'll find out why
https://lupyuen.github.io/articles/dsi?2#from-pinetime-to-pinephone
#PinePhone Schematic says that the Allwinner A64 SoC is connected to the LCD Display via a MIPI Digital Serial Interface (DSI)
https://lupyuen.github.io/articles/dsi?3#pinephone-schematic
#PinePhone's MIPI Display Serial Interface has 4 Data Lanes ... And uses Differential Signalling (similar to HDMI and USB)
https://lupyuen.github.io/articles/dsi?4#connector-for-mipi-dsi
#PinePhone is connected to the Xingbangda XBD599 LCD Panel ... Says the Linux Device Tree
https://lupyuen.github.io/articles/dsi?5#xingbangda-xbd599-lcd-panel
Inside #PinePhone's Display is Sitronix ST7703 LCD Controller ... Yep the super-sized sibling of PineTime's LCD Controller!
https://lupyuen.github.io/articles/dsi?6#sitronix-st7703-lcd-controller
#PinePhone must send these (mysterious) commands to ST7703 LCD Controller at startup
https://lupyuen.github.io/articles/dsi?7#initialise-lcd-controller
#PinePhone controls its LCD Display by sending DCS Commands to ST7703
https://lupyuen.github.io/articles/dsi?8#display-command-set-for-mipi-dsi
#PinePhone's ST7703 LCD Controller only works in MIPI DSI Video Mode (not Command Mode)
https://lupyuen.github.io/articles/dsi?9#video-mode-only-for-mipi-dsi
#PinePhone's MIPI DSI Interface uses Data Types to differentiate Display Commands and Pixel Data
https://lupyuen.github.io/articles/dsi?9#video-mode-only-for-mipi-dsi
#PinePhone's MIPI DSI Registers are actually documented in Allwinner A31 ... Which is a 32-bit SoC!
https://lupyuen.github.io/articles/dsi?10#a64-registers-for-mipi-dsi
How #PinePhone initialises the MIPI Display Serial Interface
https://lupyuen.github.io/articles/dsi?11#initialise-mipi-dsi
#PinePhone sends Long Packets to the MIPI Display Serial Interface ... To init the ST7703 LCD Controller
https://lupyuen.github.io/articles/dsi?12#long-packet-for-mipi-dsi
How #PinePhone transmits Long Packets over the MIPI Display Serial Interface
https://lupyuen.github.io/articles/dsi?15#transmit-packet-over-mipi-dsi
Rendering on #PinePhone's MIPI DSI Display gets complicated ... We need Allwinner A64's Display Engine and Timing Controller
#PinePhone p-boot has helpful code for Allwinner A64's Display Engine and Timing Controller
MIPI DPHY is the Physical Layer for #PinePhone's MIPI DSI Display ... Doesn't seem to be documented in Allwinner A64 🤔
https://lupyuen.github.io/articles/dsi?18#appendix-mipi-dphy
How does #PinePhone @PINE64 control its LCD Display? Let's uncover all the secrets about PinePhone's mysterious LCD Display and its MIPI Display Serial Interface...
For details on MIPI Display Serial Interface, check out the BL808 Reference Manual
https://lupyuen.github.io/articles/dsi?18#notes