This is a seriously impressive effort! Having reverse engineered and written drivers for much less complex devices, I can only imagine the amount of determination and work this has taken - and how much is still to come.
It’s also very cool to see a practical use of Rust in the Linux kernel on the horizon. And I should also take this as a sign that I should stop being a wimp about having to write Rust wrappers for C APIs and falling back to writing stuff in C or C++ because of this. 1500 lines of API wrapper code is something else!