Skip to content

Rewrite Pio{8,16,32} as generics

Jeremy Soller requested to merge imp:pio-generic into master

Created by: imp

While working on PCI stuff I noticed that while MMIO is implemented as generics, PIO isn't. Since I am trying to use generics in PCI code as well I thought it is a good opportunity to convert the PIO to use generics as well. [Little did I knew about how to do it right. However, I am glad I went through it as I learned a lot. Special thanks to @Ticki for helping me out!]

Anyway, this work is splitted into 5 commits. Each does only one thing for the ease of review. I do appreciate review by the way.

I believe the new interface in pio.rs is a little bit cleaner. And it resembles mmio.rs now, which is nice. I think I will be able to unify it even more eventually.

Also as a nice side effect I was able to drop some number of unsafe blocks.

Merge request reports