Skip to content

Conversation

@AlexJones0
Copy link
Contributor

Move some of the existing QEMU documentation, and add much more. This aims to be some short introductory documentation (deferring to upstream QEMU docs where necessary), explanations of many key caveats found during development & integration to be aware of, and more comprehensive documentation on the different Bazel parameters and arguments that are available.

See the commit messages for more details.

Copy link
Contributor

@jwnrt jwnrt left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks a lot, very helpful

To allow for more general OpenTitan QEMU documentation, move the current
setup / build system documentation to its own separate `setup.md` page.

Make a new general QEMU `README.md` containing documentation not
specific to setup / using a local build override.

Signed-off-by: Alex Jones <[email protected]>
Add the new `bootstrap` parameter to the existing documentation, and
also add a link to better explain the `traces` parameter.

Signed-off-by: Alex Jones <[email protected]>
Now that we're adding more centralized OpenTitan QEMU documentation,
document the newly support command-line argument format here.

Signed-off-by: Alex Jones <[email protected]>
Add a short section on the QEMU tessting documentation that describes
how the QEMU UART console output and log output are muxed into stdout
without line buffering, to avoid confusion about interleaving of
characters from both inputs.

Signed-off-by: Alex Jones <[email protected]>
Add some introductory documentation to explain QEMU, it's integration
into OpenTitan itself, and caveats that users should be aware of.

The focus of these docs are primarily on introducing the basic concepts
of QEMU, explaining the integration with OpenTitan, and noting any
caveats that are useful to be aware of when testing or developing
software stacks. Where possible, detailed explanations of QEMU's
internals or explanations of how OpenTitan emulation works is delegated
to the existing QEMU / QEMU fork documentation, to avoid replication and
docs getting out of date.

The one exception is the list of unemulated features - a short
non-comprehensive list is reproduced as it is probably useful that
anyone who wants to use QEMU is aware of some of the major caveats, even
if the list is not complete / comprehensive.

Signed-off-by: Alex Jones <[email protected]>
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