Merge pull request #1 from mardab/main

Added index to an overwhelmingly large README.md
This commit is contained in:
Lee Lup Yuen 2023-02-07 12:52:26 +08:00 committed by GitHub
commit 5490c62eae
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23

109
README.md
View file

@ -4,7 +4,114 @@
# Apache NuttX RTOS for PinePhone
Read the articles...
* [Read the articles...](#read-the-articles)
* [Download NuttX](#download-nuttx)
* [Download toolchain](#download-toolchain)
* [Download QEMU](#download-qemu)
* [Build NuttX: Single Core](#build-nuttx-single-core)
* [Test NuttX with QEMU: Single Core](#test-nuttx-with-qemu-single-core)
* [Build NuttX: Multi Core](#build-nuttx-multi-core)
* [Test NuttX with QEMU: Multi Core](#test-nuttx-with-qemu-multi-core)
* [Inside NuttX for Cortex-A53](#inside-nuttx-for-cortex-a53)
* [NuttX Image](#nuttx-image)
* [PinePhone Image](#pinephone-image)
* [Will NuttX Boot On PinePhone?](#will-nuttx-boot-on-pinephone)
* [UART Driver for NuttX](#uart-driver-for-nuttx)
* [PinePhone U-Boot Log](#pinephone-u-boot-log)
* [NuttX Boots On PinePhone](#nuttx-boots-on-pinephone)
* [NuttX Boot Log](#nuttx-boot-log)
* [Interrupt controller](#interrupt-controller)
* [Multi Core SMP](#multi-core-smp)
* [System Timer](#system-timer)
* [Timer Interrupt Isn't Handled](#timer-interrupt-isnt-handled)
* [Arm64 Vector Table Is Wrong](#arm64-vector-table-is-wrong)
* [Test PinePhone GIC with QEMU](#test-pinephone-gic-with-qemu)
* [Handling Interrupts](#handling-interrupts)
* [Dump Interrupt Vector Table](#dump-interrupt-vector-table)
* [Interrupt Debugging](#interrupt-debugging)
* [Memory Map](#memory-map)
* [Boot Sequence](#boot-sequence)
* [Boot Debugging](#boot-debugging)
* [UART Interrupts](#uart-interrupts)
* [Backlight and LEDs](#backlight-and-leds)
* [BASIC Blinks The LEDs](#basic-blinks-the-leds)
* [PinePhone Device Tree](#pinephone-device-tree)
* [LCD Controller (TCON0)](#lcd-controller-tcon0)
* [MIPI DSI Interface](#mipi-dsi-interface)
* [Backlight PWM](#backlight-pwm)
* [LED](#led)
* [Framebuffer](#framebuffer)
* [Display Engine](#display-engine)
* [Touch Panel](#touch-panel)
* [Video Codec](#video-codec)
* [GPU](#gpu)
* [Deinterlace](#deinterlace)
* [Zig on PinePhone](#zig-on-pinephone)
* [Zig Driver for PinePhone MIPI DSI](#zig-driver-for-pinephone-mipi-dsi)
* [Compose MIPI DSI Long Packet in Zig](#compose-mipi-dsi-long-packet-in-zig)
* [Compose MIPI DSI Short Packet in Zig](#compose-mipi-dsi-short-packet-in-zig)
* [Compute Error Correction Code in Zig](#compute-error-correction-code-in-zig)
* [Compute Cyclic Redundancy Check in Zig](#compute-cyclic-redundancy-check-in-zig)
* [Test PinePhone MIPI DSI Driver with QEMU}](#test-pinephone-mipi-dsi-driver-with-qemu)
* [Test Case for PinePhone MIPI DSI Driver](#test-case-for-pinephone-mipi-dsi-driver)
* [Initialise ST7703 LCD Controller in Zig](#initialise-st7703-lcd-controller-in-zig)
* [Test Zig Display Driver for PinePhone](#test-zig-display-driver-for-pinephone)
* [Display Engine in Allwinner A64](#display-engine-in-allwinner-a64)
* [Display Engine Mixers](#display-engine-mixers)
* [Render Colours](#render-colours)
* [Render Mandelbrot Set](#render-mandelbrot-set)
* [Animate Madelbrot Set](#animate-madelbrot-set)
* [Render Square Overlay](#render-square-overlay)
* [Render Circle Overlay](#render-circle-overlay)
* [Test PinePhone Display Engine](#test-pinephone-display-engine)
* [Display Engine Usage](#display-engine-usage)
* [Other Display Engine Features](#other-display-engine-features)
* [Timing Controller in Allwinner A64](#timing-controller-in-allwinner-a64)
* [Zig Driver for PinePhone Display Engine](#zig-driver-for-pinephone-display-engine)
* [Test Zig Driver for PinePhone Display Engine](#test-zig-driver-for-pinephone-display-engine)
* [Merge PinePhone into NuttX Mainline](#merge-pinephone-into-nuttx-mainline)
* [Complete PinePhone Display Driver in Zig](#complete-pinephone-display-driver-in-zig)
* [NuttX Drivers for Allwinner A64 PIO and PinePhone LEDs](#nuttx-drivers-for-allwinner-a64-pio-and-pinephone-leds)
* [Add MIPI DSI to NuttX Kernel](#add-mipi-dsi-to-nuttx-kernel)
* [Test MIPI DSI for NuttX Kernel](#test-mipi-dsi-for-nuttx-kernel)
* [Test Timing Controller TCON0 Driver for NuttX Kernel](#test-timing-controller-tcon0-driver-for-nuttx-kernel)
* [Test Display Engine Driver for NuttX Kernel](#test-display-engine-driver-for-nuttx-kernel)
* [Garbled Console Output](#garbled-console-output)
* [Missing Pixels in PinePhone Image](#missing-pixels-in-pinephone-image)
* [Fix Missing Pixels in PinePhone Image](#fix-missing-pixels-in-pinephone-image)
* [LVGL on NuttX on PinePhone](#lvgl-on-nuttx-on-pinephone)
* [PinePhone Touch Panel](#pinephone-touch-panel)
* [Handle Interrupts from Touch Panel](#handle-interrupts-from-touch-panel)
* [NuttX Touch Panel Driver for PinePhone](#nuttx-touch-panel-driver-for-pinephone)
* [LVGL Settings for PinePhone](#lvgl-settings-for-pinephone)
* [LVGL Demos on PinePhone](#lvgl-demos-on-pinephone)
* [Boot to LVGL on PinePhone](#boot-to-lvgl-on-pinephone)
* [LVGL Terminal for NuttX](#lvgl-terminal-for-nuttx)
* [Pipe a Command to NuttX NSH Shell](#pipe-a-command-to-nuttx-nsh-shell)
* [Poll for NSH Output](#poll-for-nsh-output)
* [Timer for LVGL Terminal](#timer-for-lvgl-terminal)
* [Poll for NSH Output in LVGL Timer](#poll-for-nsh-output-in-lvgl-timer)
* [Render Terminal with LVGL Widgets](#render-terminal-with-lvgl-widgets)
* [Set LVGL Terminal Font to Monospace](#set-lvgl-terminal-font-to-monospace)
* [Handle Input from LVGL Keyboard](#handle-input-from-lvgl-keyboard)
* [Handle Output from NSH Shell](#handle-output-from-nsh-shell)
* [Test Logs](#test-logs)
* [USB Devices on PinePhone](#usb-devices-on-pinephone)
* [Testing Zig Backlight Driver on PinePhone](#testing-zig-backlight-driver-on-pinephone)
* [Testing Zig Display Engine Driver on PinePhone](#testing-zig-display-engine-driver-on-pinephone)
* [Testing Zig Display Engine Driver on QEMU](#testing-zig-display-engine-driver-on-qemu)
* [Testing p-boot Display Engine on PinePhone](#testing-p-boot-display-engine-on-pinephone)
* [Testing NuttX Zig Driver for MIPI DSI on PinePhone](#testing-nuttx-zig-driver-for-mipi-dsi-on-pinephone)
* [Testing NuttX Zig Driver for MIPI DSI on QEMU](#testing-nuttx-zig-driver-for-mipi-dsi-on-qemu)
* [Testing p-boot Driver for MIPI DSI (with logging)](#testing-p-boot-driver-for-mipi-dsi-with-logging)
* [Testing p-boot Driver for MIPI DSI (without logging)](#testing-p-boot-driver-for-mipi-dsi-without-logging)
* [Testing Zig on PinePhone](#testing-zig-on-pinephone)
* [Testing GIC Version 2 on PinePhone](#testing-gic-version-2-on-pinephone)
* [Testing GIC Version 2 on QEMU](#testing-gic-version-2-on-qemu)
* [Boot Files for Manjaro Phosh on PinePhone](#boot-files-for-manjaro-phosh-on-pinephone)
* [GIC Register Dump](#gic-register-dump)
## Read the articles...
1. ["NuttX RTOS for PinePhone: What is it?"](https://lupyuen.github.io/articles/what)