au-ts / sddf

A collection of interfaces, libraries and tools for writing device drivers for seL4 that allow accessing devices securely and with low overhead.
Other
16 stars 12 forks source link

Re-design serial sub-system #99

Closed Courtney3141 closed 3 months ago

Courtney3141 commented 4 months ago

This pull request improves the usability of the serial subsystem by making it easier to add and remove clients from the system, as well as change the total number of buffers each client has.

This is done by using a serial config file which contains all system configuration information. All initialisation dependent on the system is handled in this file.

This pull request also simplifies a couple of notification decisions to notify unconditionally - as I noticed there were some possible scenarios where deadlock could occur.

This pull request contains only a small number of the changes which are still under development to improve the subsystem. There will be a larger pull request improving data management (removing buffers from the system) and hardware interactions, as well as protocol improvements to remove any possible deadlocks and all busy-waiting from every component.

(FYI - these changes have been tested on the odroidc4 as well as the maaxboard, but I have no experience with running qemu so someone will have to test this system on my behalf. Thanks.)

Ivan-Velickovic commented 3 months ago

I will review this when I get back. There is a couple of things I would like to discuss (but maybe you guys already have).