Skip to content

Open one chardev per PIO pin.

Currently, we open one socket for all PIO controllers, so we get three PIO sockets. It would be better if we could open sockets only for the pins that are needed, and also to hardwire certain pins to ground or VDD. For example, it could look something like this:

-device at91-pio,pins=14:server:/tmp/pin14;8:client:/tmp/otherpin;31:hardwire:1

Where pin 14 is a socket at /tmp/pin14, pin 8 connects to a socket at /tmp/otherpin, and pin 31 is always high. The other pins are not connected and writing to them has no effect and reading from them returns an "undefined value".

This approach makes it easier to run several QEMU instances and connect their pins to eachother, instead of using some coordinator middleman process that maps each pin to another pin.