Hi Jeff,
Thank you, that sounds great! :) Here is a list of information we need:
## RISC-V Core Manual
It refers to `IO_PADSHARE_SEL`, which can be found in the Linux source code, too, so we could take the address from there. Grepping through multiple repositories to figure things out is rather tedious, though.
Where can we find documentation on the peripherals themselves, how they work in general, and the control and status registers?
## DRAM
It would be great to have the registers and setup flow documented and what they mean/do. Then we could adapt and document the code for comprehensibility, and potentially reuse the knowledge for further ports and boards.
As a benchmark comparison, for the Allwinner D1 SoC we had an assembly dump with rough function names, which had been translated to C, and I then ported to Rust.
We got to the point where we boot from power-on into a full LinuxBoot environment within 5 seconds. It would be very beneficial to get to the same level with the JH7100.
## How to provide documentation
In the oreboot project, we have a repository where documents can be added:
https://github.com/oreboot/datasheetsAdditionally, the Rust ecosystem features so-called PACs (peripheral access crates), which reflect the documentation of hardware, its registers, peripherals, etc..
Those can be generated from SVD files, which are machine-processable hardware descriptions.
Thank you again very kindly.
Daniel