lupyuen opened a new pull request, #7944:
URL: https://github.com/apache/nuttx/pull/7944

   ## Summary
   
   This PR adds the driver for Display Engine 2.0 on Allwinner A64 SoC. The 
Display Engine Driver will be called by the upcoming LCD Driver for PINE64 
PinePhone.
   
   ### Modified Files
   
   `arch/arm64/src/a64/Kconfig`: Added the Kconfig option for "A64 Peripheral 
Selection > DE" (`CONFIG_A64_DE`), which enables the Display Engine Driver
   
   `arch/arm64/src/a64/hardware/a64_memorymap.h`: Added the Base Address for 
Display Engine
   
   `arch/arm64/src/a64/Make.defs`: Added the Display Engine Driver to the 
Makefile
   
   `boards/arm64/a64/pinephone/configs/nsh/defconfig`: Removed Scheduler Debug 
Info (`CONFIG_DEBUG_SCHED_INFO`) from the PinePhone Board Config, because it 
garbles the Console Output.
   
   ### New Files
   
   `arch/arm64/src/a64/a64_de.c`, `a64_de.h`: Display Engine Driver for 
Allwinner A64
   
   ### Updated Documentation
   
   `platforms/arm/a64/boards/pinephone/index.rst`: Added Display Engine as 
supported peripheral for PinePhone
   
   ## Impact
   
   Our Display Engine Driver will be built only when we select the Kconfig 
option for "A64 Peripheral Selection > DE" (`CONFIG_A64_DE`).
   
   The Display Driver will be called by the upcoming LCD Driver for PinePhone.
   
   Our Display Engine Driver has no impact on existing code because it's not 
called yet by the existing code.
   
   The Driver Code is derived from my Reverse-Engineering of the PinePhone 
Display Driver, based on the logs captured from the PinePhone p-boot Bootloader:
   
   -   ["Rendering PinePhone's Display (DE and 
TCON0)"](https://lupyuen.github.io/articles/de)
   
   -   ["NuttX RTOS for PinePhone: Render Graphics in 
Zig"](https://lupyuen.github.io/articles/de2)
   
   ## Testing
   
   We tested the Display Engine Driver with a Zig Test Program [as explained 
here](https://github.com/lupyuen/pinephone-nuttx#test-display-engine-driver-for-nuttx-kernel).
   
   Our Zig Test Program renders the [Test 
Pattern](https://lupyuen.github.io/images/de3-title.jpg) successfully on 
PinePhone.
   
   Here's the Test Log, with Graphics Logging Enabled...
   
   -   [NuttX Kernel Display Engine Test 
Log](https://gist.github.com/lupyuen/f76ec0bcafce670220ab304a70c28fab)
   
   We also tested with Graphics Logging Disabled, to preempt any timing 
issues...
   
   -   [NuttX Kernel Display Engine Test Log (Graphics Logging 
Disabled)](https://gist.github.com/lupyuen/ff133730c07730cb3b588a5027e7f524)


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscr...@nuttx.apache.org

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org

Reply via email to