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

   ## Summary
   
     Add initial NuttX support for the Realtek RTL8730E, a tri-core SoC
     (dual Cortex-A32 "CA32" + Cortex-M33 KM4 + Cortex-M23 KM0) targeting
     Wi-Fi 6 / Bluetooth 5.0 applications.  NuttX runs on the CA32 application
     processor; KM4 and KM0 remain as vendor firmware, with KM4 acting as
     the Wi-Fi network processor over the WHC IPC bus.
   
     - arch/arm/src/rtl8730e/: CA32 boot / exception vectors / MMU + page
       allocator / heap; LOGUART console with RX delivered via KM0-owned IPC
       interrupt (GIC SPI 24) and shared SRAM ring; IRQ controller, system
       timer, and serial driver.
     - arch/arm/src/rtl8730e/rtl8730e_flash_stubs.c: copies flash_init_para
       from KM4 before any SPI NOR access; without it lib_rom.a hangs waiting
       for SPIC.  SPI NOR MTD wired to littlefs at /data.
     - arch/arm/src/rtl8730e/rtl8730e_wifi_stubs.c,
       arch/arm/src/common/ameba/ameba_wifi_init.c: WHC-host Wi-Fi netdev
       (STA + SoftAP).  The NP pushes its real efuse MAC to the host at
       wifi-on time; the driver caches it so the netdev MAC and the NP 802.11
       RX filter agree (fixes DHCP OFFER loss caused by MAC divergence).
     - arch/arm/src/rtl8730e/rtl8730e_smp.c: Core1 HSYS power-on sequence
       before PSCI CPU_ON; CONFIG_MM_DEFAULT_ALIGNMENT=64 to satisfy WHC skb
       cache-line requirement (without it SMP DDR sharing corrupts skb buf
       pointers under concurrent load).
     - arch/arm/src/rtl8730e/CMakeLists.txt: full SDK build machinery with
       per-toolchain version guard; libameba_fwlib.a / libameba_wifi.a
       compiled with isolated flags to avoid NuttX header conflicts.
     - boards/arm/rtl8730e/rtl8730e_evb: board Kconfig, nsh defconfig
       (dual-core SMP, Wi-Fi STA + SoftAP, DHCP client + server, littlefs
       /data, iperf2), board.h pin table, boot and bringup hooks.
     - tools/nxstyle.c: whitelist RTL8730E SDK mixed-case symbol prefixes
       (CPU_, Diag, TRNG_, System_, vPort) that cannot be renamed without
       breaking linkage against the vendor blob; extends the existing Ameba
       SDK comment block.
     - Documentation/platforms/arm/rtl8730e/: SoC overview (ATF boot chain,
       memory map, vendor SDK info, build/flash procedure) and EVB board page.
   
     ## Impact
   
     - New platform: arch/arm/src/rtl8730e/ and boards/arm/rtl8730e/ are
       entirely new directories; no existing platform is modified.
     - arch/arm/src/common/ameba/: three files extended with RTL8730E-specific
       guards (CONFIG_AMEBASMART); no behavioural change for RTL8721Dx,
       RTL8720F, or RTL8721F builds.
     - tools/nxstyle.c: five new SDK prefixes added to the whitelist inside
       the existing Ameba comment block; no behavioural change for any other
       platform.
     - arch/arm/Kconfig and boards/Kconfig: new ARCH_CHIP_RTL8730E and
       ARCH_BOARD_RTL8730E_EVB entries appended; no existing entries changed.
   
     ## Testing
   
     Built for `rtl8730e_evb:nsh` with both make and cmake, verified on
     hardware (RTL8730E EVB):
   
     - NSH boots to prompt over LOG-UART.
     - Both CA32 cores online: /proc/cpuinfo shows processor 0 and processor 1;
       getprime 2 runs two threads in parallel (~573 ms).
     - Wi-Fi STA: scan → connect → DHCP → ping pass end-to-end; ifconfig
       shows real Realtek OUI MAC (00:e0:4c:..).
     - renew wlan0 stable with SMP enabled (skb alignment fix verified).
     - littlefs /data mounts and persists across reboot.
     - tools/checkpatch.sh clean on all new/changed sources (0 error: lines);
       full build produces nuttx.bin with no new warnings.


-- 
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: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to