Signed-off-by: Philippe Mathieu-Daudé <f4...@amsat.org> Reviewed-by: Stefan Hajnoczi <stefa...@redhat.com> --- tests/sdhci-test.c | 15 +++++++++++++++ 1 file changed, 15 insertions(+)
diff --git a/tests/sdhci-test.c b/tests/sdhci-test.c index 0443a23e45..2aa3fa0d3b 100644 --- a/tests/sdhci-test.c +++ b/tests/sdhci-test.c @@ -7,9 +7,11 @@ * See the COPYING file in the top-level directory. */ #include "qemu/osdep.h" +#include "hw/registerfields.h" #include "libqtest.h" #define SDHC_CAPAB 0x40 +FIELD(SDHC_CAPAB, BASECLKFREQ, 8, 8); /* since v2 */ #define SDHC_HCVER 0xFE static const struct sdhci_t { @@ -99,6 +101,18 @@ static void check_capab_readonly(uintptr_t addr) g_assert_cmpuint(capab1, ==, capab0); } +static void check_capab_baseclock(uintptr_t addr, uint8_t expected_freq) +{ + uint64_t capab, capab_freq; + + if (!expected_freq) { + return; + } + capab = sdhci_readq(addr, SDHC_CAPAB); + capab_freq = FIELD_EX64(capab, SDHC_CAPAB, BASECLKFREQ); + g_assert_cmpuint(capab_freq, ==, expected_freq); +} + static void test_machine(const void *data) { const struct sdhci_t *test = data; @@ -108,6 +122,7 @@ static void test_machine(const void *data) check_capab_capareg(test->sdhci.addr, test->sdhci.capab.reg); check_specs_version(test->sdhci.addr, test->sdhci.version); check_capab_readonly(test->sdhci.addr); + check_capab_baseclock(test->sdhci.addr, test->sdhci.baseclock); qtest_quit(global_qtest); } -- 2.15.1