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

   ## Summary
   
   RH850 is Renesas' 32-bit automotive MCU family. This PR adds the RH850 
architecture with the G4KH core, the RH850/U2C chip and a board for the QEMU 
rh850-u2c machine, so the port can be built and tested in CI before real boards 
follow. The chip covers what is needed to run NuttX: the interrupt controllers, 
the OSTM system timer (ticked or tickless), the RLIN3 UART console and software 
reset. The board has nsh and citest configurations; CI builds both and runs 
ostest under QEMU through citest.
   
   v850 GCC prefixes C symbols with "_", so compiler.h now uses the compiler's 
user label prefix in the asm names of the builtin and fortify wrappers. Targets 
without a prefix are unaffected. RH850 does not link without this change, so it 
is part of this PR.
   
   Toolchain: https://github.com/linumiz/rh850-gcc-toolchain/releases/tag/v1.0.0
   QEMU: https://github.com/linumiz/qemu-rh850/releases/tag/v1.0.0
   
   ## Impact
   
   - New architecture, chip and board; no change to existing boards.
   - compiler.h: same symbols and code on targets without a user label prefix 
(checked on sim and ARM, see Testing).
   - CI: the Linux image gets the RH850 toolchain and QEMU.
   - Tested on QEMU only as first level; RH850 hardware supports will come as 
follow up PR.
   
   ## Testing
   
   Host: Debian 13, x86_64
   Toolchain: v850-elf GCC 14.3.0 (release above)
   QEMU: qemu-system-rh850 11.1.1 (release above)
   nuttx-apps: f04aee6015
   
   - qemu-rh850-u2c:nsh and :citest, Make and CMake: build OK, 0 warnings, 
savedefconfig matches defconfig.
   - citest (ostest) under QEMU, run.sh rc 0:
     ostest_main: Exiting with status 0
   - nsh under QEMU: uname -a, ps, free all OK.
   - tools/testbuild.sh -A -N -R on the rh850 testlist: nsh (CMake) and citest 
(Make + run) pass.
   - tools/checkpatch.sh -g and -m: all checks pass.
   - Documentation build (make html): 0 warnings.
   
   
   ## Run Test and Boot log
   ```bash
   $ export PATH=<v850-elf-toolchain>/bin:<qemu-rh850>/bin:$PATH
   $ cd nuttx
   $ ./tools/configure.sh -l qemu-rh850-u2c:nsh
   $ make -j$(nproc)
   $ qemu-system-rh850 -M rh850-u2c,test-exit=on -icount shift=4,sleep=on 
-nographic -kernel nuttx
   # console input (scripted): uname -a, ps, free, help; then Ctrl-A x
   # the nuttx image is the one built in build-nsh-make.log
   
   NuttShell (NSH) NuttX-13.1.0
   nsh> uname -a
   NuttX 13.1.0 c1a6b803db Nov  4 2026 21:33:12 rh850 qemu-rh850-u2c
   nsh> ps
     TID   PID  PPID PRI POLICY   TYPE    NPX STATE    EVENT     SIGMASK        
    STACK    USED FILLED COMMAND
       0     0     0   0 FIFO     Kthread   - Ready              
0000000000000000 0002024 0000304  15.0%  Idle_Task
       2     2     0 100 FIFO     Task      - Running            
0000000000000000 0003028 0001496  49.4%  nsh_main
   nsh> free
         total       used       free    maxused    maxfree  nused  nfree name
        116496       8048     108448       8416     108216     22      2 Umem
   nsh> help
   help usage:  help [-v] [<cmd>]
   
       .           cp          expr        mkrd        rmdir       true        
       [           cmp         false       mount       set         truncate    
       ?           dirname     fdinfo      mv          kill        uname       
       alias       df          free        pidof       pkill       umount      
       unalias     dmesg       help        printf      sleep       unset       
       basename    echo        hexdump     ps          usleep      uptime      
       break       env         ls          pwd         source      watch       
       cat         exec        du          reboot      test        xd          
       cd          exit        mkdir       rm          time        wait        
   
   Builtin Apps:
       dd     nsh    sh     
   nsh> QEMU: Terminated
   ```


-- 
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