Update URL

This commit is contained in:
Lee Lup Yuen 2022-12-15 09:11:32 +08:00
parent 1f21543f93
commit f282299c79
6 changed files with 20 additions and 20 deletions

View file

@ -4336,11 +4336,11 @@ https://github.com/apache/nuttx/pull/7796
We're adding the MIPI DSI Driver to the NuttX Kernel... We're adding the MIPI DSI Driver to the NuttX Kernel...
- [mipi_dsi.c](https://github.com/lupyuen2/wip-pinephone-nuttx/blob/dsi/arch/arm64/src/a64/mipi_dsi.c): Compose MIPI DSI Packets (Long, Short, Short with Parameter) - [mipi_dsi.c](https://github.com/apache/nuttx/blob/master/arch/arm64/src/a64/mipi_dsi.c): Compose MIPI DSI Packets (Long, Short, Short with Parameter)
- [a64_mipi_dsi.c](https://github.com/lupyuen2/wip-pinephone-nuttx/blob/dsi/arch/arm64/src/a64/a64_mipi_dsi.c): MIPI Display Serial Interface (DSI) for Allwinner A64 - [a64_mipi_dsi.c](https://github.com/apache/nuttx/blob/master/arch/arm64/src/a64/a64_mipi_dsi.c): MIPI Display Serial Interface (DSI) for Allwinner A64
- [a64_mipi_dphy.c](https://github.com/lupyuen2/wip-pinephone-nuttx/blob/dsi/arch/arm64/src/a64/a64_mipi_dphy.c): MIPI Display Physical Layer (D-PHY) for Allwinner A64 - [a64_mipi_dphy.c](https://github.com/apache/nuttx/blob/master/arch/arm64/src/a64/a64_mipi_dphy.c): MIPI Display Physical Layer (D-PHY) for Allwinner A64
We created the above NuttX Source Files (in C) by converting our Zig MIPI DSI Driver to C... We created the above NuttX Source Files (in C) by converting our Zig MIPI DSI Driver to C...
@ -4366,7 +4366,7 @@ Here's the Zig code for our MIPI DSI Driver...
https://github.com/lupyuen/pinephone-nuttx/blob/3d33e5a49a5a3857c39fe8aa79af60902a70088e/display.zig#L115-L170 https://github.com/lupyuen/pinephone-nuttx/blob/3d33e5a49a5a3857c39fe8aa79af60902a70088e/display.zig#L115-L170
And here's the converted C code for NuttX: [mipi_dsi.c](https://github.com/lupyuen2/wip-pinephone-nuttx/blob/dsi/arch/arm64/src/a64/mipi_dsi.c#L392-L484) And here's the converted C code for NuttX: [mipi_dsi.c](https://github.com/apache/nuttx/blob/master/arch/arm64/src/a64/mipi_dsi.c#L392-L484)
```c ```c
ssize_t mipi_dsi_short_packet(FAR uint8_t *pktbuf, ssize_t mipi_dsi_short_packet(FAR uint8_t *pktbuf,
@ -4530,7 +4530,7 @@ Here's the Test Log for our Zig Test Program running on NuttX and PinePhone...
_What about Unit Testing? Can we test the MIPI DSI / D-PHY Driver without other drivers?_ _What about Unit Testing? Can we test the MIPI DSI / D-PHY Driver without other drivers?_
Yep! Our MIPI DSI Driver simply writes values to a bunch of A64 Hardware Registers, like so: [a64_mipi_dsi.c](https://github.com/lupyuen2/wip-pinephone-nuttx/blob/dsi/arch/arm64/src/a64/a64_mipi_dsi.c#L633-L646) Yep! Our MIPI DSI Driver simply writes values to a bunch of A64 Hardware Registers, like so: [a64_mipi_dsi.c](https://github.com/apache/nuttx/blob/master/arch/arm64/src/a64/a64_mipi_dsi.c#L633-L646)
```c ```c
/* DSI Configuration Register 1 (A31 Page 846) /* DSI Configuration Register 1 (A31 Page 846)
@ -4612,23 +4612,23 @@ Our Display Engine Driver will follow the design of STM32F7 Display Driver...
1. `stm32_bringup` calls `fb_register`... 1. `stm32_bringup` calls `fb_register`...
[boards/arm/stm32f7/stm32f746g-disco/src/stm32_bringup.c](https://github.com/lupyuen2/wip-pinephone-nuttx/blob/dsi/boards/arm/stm32f7/stm32f746g-disco/src/stm32_bringup.c#L100) [boards/arm/stm32f7/stm32f746g-disco/src/stm32_bringup.c](https://github.com/apache/nuttx/blob/master/boards/arm/stm32f7/stm32f746g-disco/src/stm32_bringup.c#L100)
1. `fb_register` calls `up_fbinitialize`... 1. `fb_register` calls `up_fbinitialize`...
[drivers/video/fb.c](https://github.com/lupyuen2/wip-pinephone-nuttx/blob/dsi/drivers/video/fb.c#L664) [drivers/video/fb.c](https://github.com/apache/nuttx/blob/master/drivers/video/fb.c#L664)
1. `up_fbinitialize` calls `stm32_ltdcinitialize`... 1. `up_fbinitialize` calls `stm32_ltdcinitialize`...
[boards/arm/stm32f7/stm32f746g-disco/src/stm32_lcd.c](https://github.com/lupyuen2/wip-pinephone-nuttx/blob/dsi/boards/arm/stm32f7/stm32f746g-disco/src/stm32_lcd.c#L72) [boards/arm/stm32f7/stm32f746g-disco/src/stm32_lcd.c](https://github.com/apache/nuttx/blob/master/boards/arm/stm32f7/stm32f746g-disco/src/stm32_lcd.c#L72)
1. `stm32_ltdcinitialize` creates the NuttX Framebuffer... 1. `stm32_ltdcinitialize` creates the NuttX Framebuffer...
[arch/arm/src/stm32f7/stm32_ltdc.c](https://github.com/lupyuen2/wip-pinephone-nuttx/blob/dsi/arch/arm/src/stm32f7/stm32_ltdc.c#L2971) [arch/arm/src/stm32f7/stm32_ltdc.c](https://github.com/apache/nuttx/blob/master/arch/arm/src/stm32f7/stm32_ltdc.c#L2971)
1. NuttX Framebuffer is here... 1. NuttX Framebuffer is here...
[arch/arm/src/stm32f7/stm32_ltdc.c](https://github.com/lupyuen2/wip-pinephone-nuttx/blob/dsi/arch/arm/src/stm32f7/stm32_ltdc.c#L864) [arch/arm/src/stm32f7/stm32_ltdc.c](https://github.com/apache/nuttx/blob/master/arch/arm/src/stm32f7/stm32_ltdc.c#L864)
# Add Backlight Driver to NuttX Kernel # Add Backlight Driver to NuttX Kernel
@ -4638,13 +4638,13 @@ TODO: PinePhone Backlight Driver, convert from Zig to C
Our Backlight Driver will follow the design of the STM32 Backlight Driver: `stm32_backlight`... Our Backlight Driver will follow the design of the STM32 Backlight Driver: `stm32_backlight`...
- [boards/arm/stm32/hymini-stm32v/src/stm32_ssd1289.c](https://github.com/lupyuen2/wip-pinephone-nuttx/blob/dsi/boards/arm/stm32/hymini-stm32v/src/stm32_ssd1289.c#L230) - [boards/arm/stm32/hymini-stm32v/src/stm32_ssd1289.c](https://github.com/apache/nuttx/blob/master/boards/arm/stm32/hymini-stm32v/src/stm32_ssd1289.c#L230)
- [boards/arm/stm32/viewtool-stm32f107/src/stm32_ssd1289.c](https://github.com/lupyuen2/wip-pinephone-nuttx/blob/dsi/boards/arm/stm32/viewtool-stm32f107/src/stm32_ssd1289.c#L298) - [boards/arm/stm32/viewtool-stm32f107/src/stm32_ssd1289.c](https://github.com/apache/nuttx/blob/master/boards/arm/stm32/viewtool-stm32f107/src/stm32_ssd1289.c#L298)
The code will go inside our Board LCD Source File, similar to this... The code will go inside our Board LCD Source File, similar to this...
- [boards/arm/stm32f7/stm32f746g-disco/src/stm32_lcd.c](https://github.com/lupyuen2/wip-pinephone-nuttx/blob/dsi/boards/arm/stm32f7/stm32f746g-disco/src/stm32_lcd.c) - [boards/arm/stm32f7/stm32f746g-disco/src/stm32_lcd.c](https://github.com/apache/nuttx/blob/master/boards/arm/stm32f7/stm32f746g-disco/src/stm32_lcd.c)
# Add LCD Panel Driver to NuttX Kernel # Add LCD Panel Driver to NuttX Kernel
@ -4654,7 +4654,7 @@ TODO: PinePhone LCD Panel Driver, convert from Zig to C
The code will go inside our Board LCD Source File, similar to this... The code will go inside our Board LCD Source File, similar to this...
- [boards/arm/stm32f7/stm32f746g-disco/src/stm32_lcd.c](https://github.com/lupyuen2/wip-pinephone-nuttx/blob/dsi/boards/arm/stm32f7/stm32f746g-disco/src/stm32_lcd.c) - [boards/arm/stm32f7/stm32f746g-disco/src/stm32_lcd.c](https://github.com/apache/nuttx/blob/master/boards/arm/stm32f7/stm32f746g-disco/src/stm32_lcd.c)
# Add Power Management Integrated Circuit Driver to NuttX Kernel # Add Power Management Integrated Circuit Driver to NuttX Kernel
@ -4664,7 +4664,7 @@ TODO: PinePhone PMIC, convert from Zig to C, needs more reverse engineering
The code will go inside our Board LCD Source File, similar to this... The code will go inside our Board LCD Source File, similar to this...
- [boards/arm/stm32f7/stm32f746g-disco/src/stm32_lcd.c](https://github.com/lupyuen2/wip-pinephone-nuttx/blob/dsi/boards/arm/stm32f7/stm32f746g-disco/src/stm32_lcd.c) - [boards/arm/stm32f7/stm32f746g-disco/src/stm32_lcd.c](https://github.com/apache/nuttx/blob/master/boards/arm/stm32f7/stm32f746g-disco/src/stm32_lcd.c)
# Test Logs # Test Logs

View file

@ -1,6 +1,6 @@
// Test Code for Allwinner A64 MIPI D-PHY // Test Code for Allwinner A64 MIPI D-PHY
// Add `#include "../../pinephone-nuttx/test/test_a64_mipi_dphy.c"` to the end of a64_mipi_dphy_enable() in: // Add `#include "../../pinephone-nuttx/test/test_a64_mipi_dphy.c"` to the end of a64_mipi_dphy_enable() in:
// https://github.com/lupyuen2/wip-pinephone-nuttx/blob/dsi/arch/arm64/src/a64/a64_mipi_dphy.c // https://github.com/apache/nuttx/blob/master/arch/arm64/src/a64/a64_mipi_dphy.c
{ {

View file

@ -1,6 +1,6 @@
// Test Code for Allwinner A64 MIPI DSI // Test Code for Allwinner A64 MIPI DSI
// Add `#include "../../pinephone-nuttx/test/test_a64_mipi_dsi.c"` to the end of this file: // Add `#include "../../pinephone-nuttx/test/test_a64_mipi_dsi.c"` to the end of this file:
// https://github.com/lupyuen2/wip-pinephone-nuttx/blob/dsi/arch/arm64/src/a64/a64_mipi_dsi.c // https://github.com/apache/nuttx/blob/master/arch/arm64/src/a64/a64_mipi_dsi.c
/// Write the DCS Command to MIPI DSI /// Write the DCS Command to MIPI DSI
static int write_dcs(const uint8_t *buf, size_t len) static int write_dcs(const uint8_t *buf, size_t len)

View file

@ -1,6 +1,6 @@
// Test Code for Allwinner A64 MIPI DSI // Test Code for Allwinner A64 MIPI DSI
// Add `#include "../../pinephone-nuttx/test/test_a64_mipi_dsi2.c"` to the end of a64_mipi_dsi_enable() in this file: // Add `#include "../../pinephone-nuttx/test/test_a64_mipi_dsi2.c"` to the end of a64_mipi_dsi_enable() in this file:
// https://github.com/lupyuen2/wip-pinephone-nuttx/blob/dsi/arch/arm64/src/a64/a64_mipi_dsi.c // https://github.com/apache/nuttx/blob/master/arch/arm64/src/a64/a64_mipi_dsi.c
{ {
DEBUGASSERT(BUS_CLK_GATING_REG0 == 0x1c20060); DEBUGASSERT(BUS_CLK_GATING_REG0 == 0x1c20060);

View file

@ -1,6 +1,6 @@
// Test Code for Allwinner A64 MIPI DSI // Test Code for Allwinner A64 MIPI DSI
// Add `#include "../../pinephone-nuttx/test/test_a64_mipi_dsi3.c"` to the end of a64_mipi_dsi_start() in this file: // Add `#include "../../pinephone-nuttx/test/test_a64_mipi_dsi3.c"` to the end of a64_mipi_dsi_start() in this file:
// https://github.com/lupyuen2/wip-pinephone-nuttx/blob/dsi/arch/arm64/src/a64/a64_mipi_dsi.c // https://github.com/apache/nuttx/blob/master/arch/arm64/src/a64/a64_mipi_dsi.c
{ {
DEBUGASSERT(DSI_INST_JUMP_SEL_REG == 0x1ca0048); DEBUGASSERT(DSI_INST_JUMP_SEL_REG == 0x1ca0048);

View file

@ -1,6 +1,6 @@
// Test Code for MIPI DSI // Test Code for MIPI DSI
// Add `#include "../../pinephone-nuttx/test/test_mipi_dsi.c"` to the end of this file: // Add `#include "../../pinephone-nuttx/test/test_mipi_dsi.c"` to the end of this file:
// https://github.com/lupyuen2/wip-pinephone-nuttx/blob/dsi/arch/arm64/src/a64/mipi_dsi.c // https://github.com/apache/nuttx/blob/master/arch/arm64/src/a64/mipi_dsi.c
void mipi_dsi_test(void) //// TODO: Remove void mipi_dsi_test(void) //// TODO: Remove
{ {