Dear QEMU risc-v maintainers,
We (lowRISC) would like to contribute OpenTitan changes to QEMU from our fork into the upstream project. These changes introduce a newer OpenTitan Earl Grey machine that would be up to date with the OpenTitan 1.0 release.
We would like some advice on the practicalities of doing this, and any ways that we can make it easier for upstream to review.
There are a lot of commits required to introduce the new machine. Currently there are about 1800, but that number will reduce as I remove some things we don't actually need, and perhaps also squash some runs of small/trivial commits into more reasonably sized commits. I still expect a substantial number of commits, but I'm happy to squash them as much as upstream reviewers would prefer. I'd like to know how you'd like us to approach upstreaming these changes.
Alistair, you advised us previously that we should add test cases for the new code. I am in favour of all the new code being tested, however:
Our test programs expect lots of peripherals that are added in later commits in our branch.
We will always be able to run the tests on our fork at any time during the upstreaming process, and only some of these tests are in a form that can be upstreamed without significant changes. These will only work on the upstream version once most of our changes are upstream. What's the current best practice for testing these devices in QEMU?
Thanks! Lex Bailey (lowRISC)
OpenPGP_0x7CBB20D40B55582C.asc
Description: OpenPGP public key
OpenPGP_signature.asc
Description: OpenPGP digital signature
