eenurkka opened a new pull request, #6249:
URL: https://github.com/apache/incubator-nuttx/pull/6249

   This provides an example of Asymmetric Multiprocessing (AMP). The
   master from Linux sends pings that this NuttX echoes back. The system
   uses RPMsg from OpenAMP.
   
   The Inter-Hart Communication module is present in the vendor's software
   stack with the tag "2021.11". The software is present on github at the
   polarfire-soc project. The following conditions must be met:
   
    1. FPGA programmed with 2021.11 software
    2. HSS (Vendor bootloader) with 2021.11 software
    3. U-boot and Linux kernel from 2011.11 software
   
   Currently the IHC works as a slave only on the hart number 4.
   
   On the NuttX side, this patch uses rptun that incorporates rpmsg and
   virtio. If it used only rpmsg and virtio, the future maintenance would
   likely be much heavier. Using rptun also simplifies many things.
   
   Upon success, the master side from Linux may issue an example test:
   
   root@icicle-kit-es-amp:/opt/microchip/amp/rpmsg-pingpong# ./rpmsg-pingpong
   
   However, the rpmsg-pingpong.c (compiled on target with gcc), may need to
   be modified as seen below to match the device id:
    - char *rpmsg_dev="virtio0.rpmsg-amp-demo-channel.-1.0";
    + char *rpmsg_dev="virtio0.rpmsg-amp-demo-channel.-1.1024";
   
   This work uses a separate linker script. Due to a bug yet unknown to date,
   a small NuttX, when loaded by the vendor HSS bootloader, will cause the
   Linux kernel to hang at boot. Thus, the binary size is increased with
   a section 'filler_area' whose only purpose is to increase the image size
   so that the Linux kernel will boot up.
   
   Signed-off-by: Eero Nurkkala <[email protected]>
   
   ## Summary
   
   Adds preliminary AMP support for MPFS 
   
   ## Impact
   
   Depends on OpenAMP and rptun.
   
   ## Testing
   
   Polarfire MPFS board, HSS bootloader on hart 0, Linux kernel on harts 1-3, 
NuttX on hart 4


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