hw/misc/mps2-scc: Implement CFG_REG5 and CFG_REG6 for MPS3 AN524
commit8e4b4c1ca6a9d46ddc727d9485e1ae2e98226aca
authorPeter Maydell <peter.maydell@linaro.org>
Mon, 15 Feb 2021 11:51:24 +0000 (15 11:51 +0000)
committerPeter Maydell <peter.maydell@linaro.org>
Sat, 6 Mar 2021 13:30:39 +0000 (6 13:30 +0000)
tree497b9cf4c51cbebe16c3a58671b859480a66dace
parent11e1d41265c3915c5fa4c4bc2457bcad2fe1da74
hw/misc/mps2-scc: Implement CFG_REG5 and CFG_REG6 for MPS3 AN524

The AN524 version of the SCC interface has different behaviour for
some of the CFG registers; implement it.

Each board in this family can have minor differences in the meaning
of the CFG registers, so rather than trying to specify all the
possible semantics via individual device properties, we make the
behaviour conditional on the part-number field of the SCC_ID register
which the board code already passes us.

For the AN524, the differences are:
 * CFG3 is reserved rather than being board switches
 * CFG5 is a new register ("ACLK Frequency in Hz")
 * CFG6 is a new register ("Clock divider for BRAM")

We implement both of the new registers as reads-as-written.

Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Message-id: 20210215115138.20465-11-peter.maydell@linaro.org
hw/misc/mps2-scc.c
include/hw/misc/mps2-scc.h