Skip to content

Add Pancake serial drivers - #771

Draft
KurtWu10 wants to merge 21 commits into
mainfrom
kurt/sddf-pancake-zhewen-test2
Draft

Add Pancake serial drivers#771
KurtWu10 wants to merge 21 commits into
mainfrom
kurt/sddf-pancake-zhewen-test2

Conversation

@KurtWu10

@KurtWu10 KurtWu10 commented Aug 18, 2026

Copy link
Copy Markdown
Contributor

This PR adds Pancake drivers for the serial device class for most platforms except virtio, and the corresponding serial queue implementation. It does not include the virtualisers for the serial subsystem, which will be upstreamed later.

This is based on Richard Shen's work during his thesis. I added some new drivers and also updated the code to make it consistent with the C implementation.

  • For serial queues, unlike the current C implementation, they are always concurrency-safe regardless of the kernel SMP configuration. The C implementation will be adjusted later.

In general, the current Pancake implementation still requires the corresponding C code for initialisation. In the Makefile, a new variable PANCAKE_SERIAL_DRIVER is introduced to select the Pancake implementation during compile time, which is off by default for now.

The inline keyword of Pancake may not be supported by older compilers. We should decide how to handle compatibility issues like this.

Signed-off-by: Kurt Wu <rihui.wu@unsw.edu.au>
Signed-off-by: Kurt Wu <rihui.wu@unsw.edu.au>
Signed-off-by: Kurt Wu <rihui.wu@unsw.edu.au>
Signed-off-by: Kurt Wu <rihui.wu@unsw.edu.au>
Signed-off-by: Kurt Wu <rihui.wu@unsw.edu.au>
Signed-off-by: Kurt Wu <rihui.wu@unsw.edu.au>
Signed-off-by: Kurt Wu <rihui.wu@unsw.edu.au>
Signed-off-by: Kurt Wu <rihui.wu@unsw.edu.au>
Signed-off-by: Kurt Wu <rihui.wu@unsw.edu.au>
Signed-off-by: Kurt Wu <rihui.wu@unsw.edu.au>
Signed-off-by: Kurt Wu <rihui.wu@unsw.edu.au>
Signed-off-by: Kurt Wu <rihui.wu@unsw.edu.au>
Signed-off-by: Kurt Wu <rihui.wu@unsw.edu.au>
Signed-off-by: Kurt Wu <rihui.wu@unsw.edu.au>
Signed-off-by: Kurt Wu <rihui.wu@unsw.edu.au>
Signed-off-by: Kurt Wu <rihui.wu@unsw.edu.au>
Signed-off-by: Kurt Wu <rihui.wu@unsw.edu.au>
Signed-off-by: Kurt Wu <rihui.wu@unsw.edu.au>
@KurtWu10
KurtWu10 force-pushed the kurt/sddf-pancake-zhewen-test2 branch from 1d9928b to ce467dc Compare August 18, 2026 10:01
Signed-off-by: Kurt Wu <rihui.wu@unsw.edu.au>
@KurtWu10
KurtWu10 requested a review from Courtney3141 August 19, 2026 00:32
Signed-off-by: Julia Vassiliki <julia.vassiliki@unsw.edu.au>
Signed-off-by: Julia Vassiliki <julia.vassiliki@unsw.edu.au>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants