This is an automated email from the ASF dual-hosted git repository.

xiaoxiang781216 pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/nuttx.git

commit 90219df0ecc5fce941f38b82f7389b09b036ce80
Author: Piyush Patle <[email protected]>
AuthorDate: Wed May 20 08:01:01 2026 +0530

    Documentation/arm64: add AM62x board bring-up guides
    
    Document the AM62x platform and add board guides for BeaglePlay and
    PocketBeagle2. The BeaglePlay guide includes the validated manual
    U-Boot boot flow used for hardware testing.
    
    Signed-off-by: Piyush Patle <[email protected]>
---
 .../arm64/am62x/boards/beagleplay/index.rst        | 120 +++++++++++++++++++++
 .../arm64/am62x/boards/pocketbeagle2/index.rst     | 110 +++++++++++++++++++
 Documentation/platforms/arm64/am62x/index.rst      |  21 ++++
 3 files changed, 251 insertions(+)

diff --git a/Documentation/platforms/arm64/am62x/boards/beagleplay/index.rst 
b/Documentation/platforms/arm64/am62x/boards/beagleplay/index.rst
new file mode 100644
index 00000000000..7b87f6b3628
--- /dev/null
+++ b/Documentation/platforms/arm64/am62x/boards/beagleplay/index.rst
@@ -0,0 +1,120 @@
+==========
+BeaglePlay
+==========
+
+.. tags:: chip:am62x, arch:arm64, vendor:beagleboard
+
+`BeaglePlay <https://www.beagleboard.org/boards/beagleplay>`_ is an
+open-hardware single-board computer from BeagleBoard.org based on the
+TI AM6254 SoC.
+
+Features
+========
+
+* TI AM6254 quad-core Arm Cortex-A53 SoC
+* 2 GiB DDR4
+* microSD and on-board eMMC boot options
+* USB-C debug port with serial console access
+* Four user LEDs
+* Gigabit Ethernet, USB, Wi-Fi, and Bluetooth hardware on the board
+
+Current NuttX support is limited to early boot, the 16550 serial console,
+interactive NSH, and ``procfs`` mount during board bring-up. GPIO, LEDs,
+I2C, SPI, MMC/SD, Ethernet, Wi-Fi, Bluetooth, and USB runtime support are
+not implemented yet.
+
+Buttons and LEDs
+================
+
+BeaglePlay exposes four user LEDs connected to the AM62x main GPIO block:
+
+======  ========  ==================
+LED     GPIO      Notes
+======  ========  ==================
+USR0    GPIO1_22  Green user LED
+USR1    GPIO1_23  Yellow user LED
+USR2    GPIO1_24  Red user LED
+USR3    GPIO1_25  Blue user LED
+======  ========  ==================
+
+The current NuttX port does not yet provide functional GPIO-backed LED
+control. The ``CONFIG_ARCH_LEDS`` hooks are present as placeholders only.
+
+Serial Console
+==============
+
+Use the BeaglePlay **DEBUG** USB-C port and a host serial terminal at
+**115200 8N1**.
+
+Pin Mapping
+===========
+
+The current bring-up uses the on-board debug interfaces rather than the
+expansion headers:
+
+===========  ======================  =======================================
+Interface    SoC signal              Notes
+===========  ======================  =======================================
+DEBUG USB-C  UART0                   Default NuttX serial console
+microSD      MMC1                    Validated boot media for ``nuttx.bin``
+USR0-3       GPIO1_22 through 1_25   User LEDs, not yet driven by NuttX
+===========  ======================  =======================================
+
+Power Supply
+============
+
+Follow the BeagleBoard.org board documentation for the supported USB-C power
+inputs and peripherals. For NuttX bring-up, use the dedicated **DEBUG**
+USB-C port for the serial console and the normal power path for board power.
+
+Installation
+============
+
+Install an ``aarch64-none-elf`` bare-metal toolchain and make sure its
+``bin`` directory is on your ``PATH``.
+
+One option is the
+`Arm GNU Toolchain 
<https://developer.arm.com/downloads/-/arm-gnu-toolchain-downloads>`_.
+
+Building NuttX
+==============
+
+.. code:: console
+
+   $ ./tools/configure.sh beagleplay:nsh
+   $ make -j$(nproc) CROSS_COMPILE=aarch64-none-elf-
+
+A successful build produces ``nuttx`` and ``nuttx.bin``.
+
+Flashing
+========
+
+The currently validated boot path loads ``nuttx.bin`` from a FAT partition on
+microSD using the BeaglePlay U-Boot prompt.
+
+1. Format a microSD card with a single FAT32 partition.
+2. Copy ``nuttx.bin`` to the root of the card.
+3. Insert the card and connect the **DEBUG** USB-C serial cable.
+4. Stop at the U-Boot prompt and run:
+
+   .. code:: console
+
+      => mmc dev 1 0
+      => fatload mmc 1:1 0x82000000 nuttx.bin
+      => go 0x82000000
+
+5. Confirm the board reaches the NuttX prompt:
+
+   .. code:: text
+
+      NuttShell (NSH) NuttX-12.x
+      nsh>
+
+Configurations
+==============
+
+``beagleplay:nsh``
+  Interactive NSH configuration for serial bring-up and shell access.
+
+``beagleplay:ostest``
+  Hardware validation configuration that boots directly into ``ostest_main``.
diff --git a/Documentation/platforms/arm64/am62x/boards/pocketbeagle2/index.rst 
b/Documentation/platforms/arm64/am62x/boards/pocketbeagle2/index.rst
new file mode 100644
index 00000000000..85941e44214
--- /dev/null
+++ b/Documentation/platforms/arm64/am62x/boards/pocketbeagle2/index.rst
@@ -0,0 +1,110 @@
+==============
+PocketBeagle 2
+==============
+
+.. tags:: chip:am62x, arch:arm64, vendor:beagleboard
+
+`PocketBeagle 2 <https://docs.beagleboard.org/boards/pocketbeagle-2/>`_ is a
+compact open-hardware board from BeagleBoard.org based on the TI AM6254 SoC.
+
+Features
+========
+
+* TI AM6254 quad-core Arm Cortex-A53 SoC
+* 512 MiB DDR4
+* microSD boot with on-board QSPI boot firmware
+* USB-C debug/power connection with serial console access
+* Expansion headers for GPIO, I2C, SPI, UART, PWM, and ADC
+* User LEDs exposed by the board port
+
+Current NuttX support is limited to early boot, the 16550 serial console,
+interactive NSH, and ``procfs`` mount during board bring-up. GPIO, functional
+LED control, I2C, SPI, MMC/SD runtime support, Ethernet, and USB runtime
+support are not implemented yet.
+
+Buttons and LEDs
+================
+
+The current NuttX board port defines three logical user LEDs:
+
+======  ========  =====================
+LED     Colour    Notes
+======  ========  =====================
+USR0    Green     ``CONFIG_ARCH_LEDS`` placeholder
+USR1    Amber     ``CONFIG_ARCH_LEDS`` placeholder
+USR2    Red       ``CONFIG_ARCH_LEDS`` placeholder
+======  ========  =====================
+
+These LEDs are not driven yet because AM62x GPIO support has not been added.
+
+Serial Console
+==============
+
+AM62x UART6 is routed to the USB-C debug interface. In the current NuttX
+configuration it is exposed as the first 16550 console device. Connect the
+USB-C cable to your host and open the enumerated serial port at **115200 8N1**.
+
+Pin Mapping
+===========
+
+The current bring-up primarily relies on the on-board debug path:
+
+===========  ======================  =======================================
+Interface    SoC signal              Notes
+===========  ======================  =======================================
+USB-C debug  UART6                   Default NuttX serial console
+microSD      MMC1                    Validated boot media for ``nuttx.bin``
+USR0-2       Board user LEDs         Not yet driven by NuttX GPIO support
+===========  ======================  =======================================
+
+Power Supply
+============
+
+PocketBeagle 2 can be powered through its USB-C connector. Follow the vendor
+documentation for external peripherals and header power limits during bring-up.
+
+Installation
+============
+
+Install an ``aarch64-none-elf`` bare-metal toolchain and make sure its
+``bin`` directory is on your ``PATH``.
+
+One option is the
+`Arm GNU Toolchain 
<https://developer.arm.com/downloads/-/arm-gnu-toolchain-downloads>`_.
+
+Building NuttX
+==============
+
+.. code:: console
+
+   $ ./tools/configure.sh pocketbeagle2:nsh
+   $ make -j$(nproc) CROSS_COMPILE=aarch64-none-elf-
+
+A successful build produces ``nuttx`` and ``nuttx.bin``.
+
+Flashing
+========
+
+PocketBeagle 2 boots NuttX from microSD using the U-Boot firmware already
+present in on-board flash.
+
+1. Format a microSD card with a single FAT32 partition.
+2. Copy ``nuttx.bin`` and ``boards/arm64/am62x/pocketbeagle2/scripts/uEnv.txt``
+   to the root of the card.
+3. Insert the card and connect the USB-C debug cable.
+4. Power on the board and let U-Boot load the image automatically.
+5. Confirm the board reaches the NuttX prompt:
+
+   .. code:: text
+
+      NuttShell (NSH) NuttX-12.x
+      nsh>
+
+Configurations
+==============
+
+``pocketbeagle2:nsh``
+  Interactive NSH configuration for serial bring-up and shell access.
+
+``pocketbeagle2:ostest``
+  Hardware validation configuration that boots directly into ``ostest_main``.
diff --git a/Documentation/platforms/arm64/am62x/index.rst 
b/Documentation/platforms/arm64/am62x/index.rst
new file mode 100644
index 00000000000..acb2457aee2
--- /dev/null
+++ b/Documentation/platforms/arm64/am62x/index.rst
@@ -0,0 +1,21 @@
+============
+TI AM62x
+============
+
+`TI AM62x <https://www.ti.com/product/AM6254>`_ is a family of ARM64 SoCs from
+Texas Instruments featuring:
+
+- **CPU:** Quad-Core ARM Cortex-A53 (up to 1.4 GHz)
+- **Interrupt Controller:** ARM GIC-600 (GICv3), 480 SPIs
+- **Boot:** ROM → R5 SYSFW (TIFS) → U-Boot SPL → U-Boot → NuttX
+- **Memory:** External DDR4/LPDDR4 (512 MB – 2 GB depending on board)
+- **UART:** Seven 16550-compatible UARTs (48 MHz clock)
+
+Supported Boards
+================
+
+.. toctree::
+   :glob:
+   :maxdepth: 1
+
+   boards/*/*

Reply via email to