CV-Bowen opened a new pull request, #17816: URL: https://github.com/apache/nuttx/pull/17816
## Summary This PR represents a major refactoring of the RPTUN (Remote Processor Tunnel) framework in NuttX, modernizing the architecture to separate concerns between remoteproc, virtio transport, and RPMSG layers while improving reliability and maintainability. ### Major Architectural Changes: RPTUN Framework Refactoring: Removed RPMSG virtio device from RPTUN core, positioning RPTUN purely as a remoteproc and remoteproc_virtio transport layer. RPMSG virtio devices now exist as standalone virtio/vhost drivers in the virtio bus (~881 lines refactored, net -89 lines). ### Power Management Removal Removed power management code from RPTUN as preparation for framework refactoring, simplifying the codebase (-139 lines). ### New Resource Table Model Updated to use fw_rsc_carveout in resource tables to provide shared memory to virtio driver side, with role determination via fw_rsc_vdev.reserved[0] and driver master/slave flags. ### Multi-Architecture Port Ported all chip-specific RPTUN drivers to the new framework: ARM: mx8mp, nrf53, stm32h7 RISC-V: k230, qemu-rv Simulator: sim_rptun Simulator Improvements: ### Sim RPTUN Enhancements Fixed shared memory initialization race condition when proxy starts before server Added host_kill() API to properly terminate proxy cores and avoid hangs in host_waitpid() Moved rptun_boot() to work queue to prevent deadlock scenarios Removed unnecessary command initialization Restart Command Revert: Reverted restart command feature to reduce RPTUN driver complexity. ### Benefits: Clear separation between remoteproc, virtio, and RPMSG layers ## Impact All boards that use the rptun framework ## Testing Waiting -- 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]
