mirror of
https://github.com/u-boot/u-boot.git
synced 2025-04-16 09:54:35 +00:00
test: regmap: add regmap_read_poll_timeout test
Add test to regmap_read_poll_timeout() helper to check the timeout works properly but cannot test proper condition matching since read/write calls are not executed in sandbox. Tested-by: Jerome Brunet <jbrunet@baylibre.com> Acked-by: Jagan Teki <jagan@openedev.com> Signed-off-by: Neil Armstrong <narmstrong@baylibre.com>
This commit is contained in:
parent
d13801ef1d
commit
ebe3497c9c
1 changed files with 26 additions and 0 deletions
|
@ -144,3 +144,29 @@ static int dm_test_regmap_getset(struct unit_test_state *uts)
|
||||||
}
|
}
|
||||||
|
|
||||||
DM_TEST(dm_test_regmap_getset, DM_TESTF_SCAN_PDATA | DM_TESTF_SCAN_FDT);
|
DM_TEST(dm_test_regmap_getset, DM_TESTF_SCAN_PDATA | DM_TESTF_SCAN_FDT);
|
||||||
|
|
||||||
|
/* Read polling test */
|
||||||
|
static int dm_test_regmap_poll(struct unit_test_state *uts)
|
||||||
|
{
|
||||||
|
struct udevice *dev;
|
||||||
|
struct regmap *map;
|
||||||
|
uint reg;
|
||||||
|
unsigned long start;
|
||||||
|
|
||||||
|
ut_assertok(uclass_get_device(UCLASS_SYSCON, 0, &dev));
|
||||||
|
map = syscon_get_regmap(dev);
|
||||||
|
ut_assertok_ptr(map);
|
||||||
|
|
||||||
|
start = get_timer(0);
|
||||||
|
|
||||||
|
ut_asserteq(-ETIMEDOUT,
|
||||||
|
regmap_read_poll_timeout(map, 0, reg,
|
||||||
|
(reg == 0xcacafafa),
|
||||||
|
1, 5 * CONFIG_SYS_HZ));
|
||||||
|
|
||||||
|
ut_assert(get_timer(start) > (5 * CONFIG_SYS_HZ));
|
||||||
|
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
DM_TEST(dm_test_regmap_poll, DM_TESTF_SCAN_PDATA | DM_TESTF_SCAN_FDT);
|
||||||
|
|
Loading…
Add table
Reference in a new issue