tree bb7e66a85f9f0dbcd3c9ca348decaa7bc99fab41
parent 24b665175669d1796b04820a2af30c9015373ede
author Sam Elliott <selliott@lowrisc.org> 1594828944 +0100
committer Sam Elliott <sam@lenary.co.uk> 1594905301 +0100

[sw] Redesign MMIO and Bitfield Library

This commit lays the groundwork described in #2203 for updating the MMIO
library to split the concerns of volatile access (now the duty of the
MMIO library) and bitfield manipulation (now the duty of the bitfield
library).

For the moment, this commit has left in (without warnings) the
deprecated MMIO functions, but has reimplemented them entirely in terms
of the bitfield library.

The bitfield library has also been changed. There is a clearer split
between describing the data field or bit to be changed separately from
what to change it to; and various functions have been renamed to the
`<module>_<noun>_<verb>` convention. In particular, the verb used for
updating a field or bit is "write" (as in "overwrite"), rather than
"set", because set can mean "set this field to all ones" or "set this
bit to one" (respectively). So we have moved to using "read"/"write" as
the verbs everywhere.

This change has caused a lot of changes in the existing DIFs. I have not
yet marked the deprecated functions as `__attribute__((deprecated))`
because it causes a lot of build warning noise. This will happen in a
follow-up commit.

Closes #2203.

Signed-off-by: Sam Elliott <selliott@lowrisc.org>
