On Wed 16 Jun 10:52 CDT 2021, Enrico Weigelt, metux IT consult wrote:
On 16.06.21 05:30, Bjorn Andersson wrote:
Combined with the virtio-i2c effort this could provide an alternative by simply tunneling the busses and GPIOs into Linux and use standard iio drivers, for cases where this suits your product requirements better.
So, you wanna use virtio as logical interface between the two CPUs ? Interesting idea. Usually folks use rpmsg for those things.
rpmsg is a layer on top of virtio, so this would be an extension of the existing model.
There's been discussions (and I believe some implementations) related to bridging I2C requests over rpmsg, but I think it's preferable to standardize around the virtio based bearer directly.
What is running on the secondary CPU ? Some OS like Linux or some bare metal stuff ? What kind of CPU is that anyways ?
These ideas revolves around platforms that implements something like the "Android Sensor Hub", which provides some resource constraint co-processor that deals with sensor device interaction and processing of the data without waking up the power-hungry ARM cores.
Given the focus on power consumption I would guess that these are not going to run Linux. Core-wise I've seen this implemented using primarily ARM and Hexagon cores.
Regards, Bjorn