CV-Bowen commented on PR #21557:
URL: https://github.com/apache/nuttx/pull/21557#issuecomment-6730885941
@acassis In tree, nothing needs it: the only users were sim:rpserver_virtio
and sim:rpproxy_virtio, which this PR removes. No real board enables
RPMSG_VIRTIO_LITE or RPMSG_VIRTIO_IVSHMEM.
Size, measured on nucleo-h745zi:nsh_cm7_rptun (Cortex-M7, -Os,
--gc-sections, bytes linked per object): the rptun path is about 6.9 KB
more than lite. rptun.c + rpmsg_virtio.c are 5.3 KB vs 1.6 KB for
rpmsg_virtio_lite.c, and rptun also links openamp remoteproc.c,
remoteproc_virtio.c and rsc_table_parser.c (3.2 KB). The openamp rpmsg
and virtqueue code (~5.6 KB) is needed by both.
The way we want to shrink rptun:
- isolate the remoteproc part behind a Kconfig option and keep only what
the rpmsg path needs: remoteproc_virtio (vdev/vring creation and
notification) and the resource table parser. That drops the
remoteproc lifecycle in remoteproc.c and the rptun start thread,
start/stop and ioctl handling for systems that only need rpmsg.
- make the optional parts of rpmsg_virtio configurable. PM is already
under CONFIG_RPMSG_VIRTIO_PM (off in the numbers above); the dump
support (~0.8 KB) can get its own option as well.
If there is an out-of-tree board that depends on rpmsg_virtio_lite
today, let us know and we will keep this PR open until that rptun change
is in.
--
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]