test: bootcount: add bootcount-uclass test
Add a test for the bootcount uclass, which uses the RTC bootcount backend (i.e. drivers/bootcount/rtc.c is implictly also tested). Signed-off-by: Philipp Tomsich <philipp.tomsich@theobroma-systems.com> Reviewed-by: Simon Glass <sjg@chromium.org>
This commit is contained in:
parent
d3689267f9
commit
6f2d59cb7f
4 changed files with 42 additions and 0 deletions
|
@ -315,6 +315,12 @@
|
|||
};
|
||||
};
|
||||
|
||||
bootcount@0 {
|
||||
compatible = "u-boot,bootcount-rtc";
|
||||
rtc = <&rtc_1>;
|
||||
offset = <0x13>;
|
||||
};
|
||||
|
||||
adc@0 {
|
||||
compatible = "sandbox,adc";
|
||||
vdd-supply = <&buck2>;
|
||||
|
|
|
@ -57,6 +57,7 @@ CONFIG_CMD_DNS=y
|
|||
CONFIG_CMD_LINK_LOCAL=y
|
||||
CONFIG_CMD_ETHSW=y
|
||||
CONFIG_CMD_BMP=y
|
||||
CONFIG_CMD_BOOTCOUNT=y
|
||||
CONFIG_CMD_TIME=y
|
||||
CONFIG_CMD_TIMER=y
|
||||
CONFIG_CMD_SOUND=y
|
||||
|
@ -86,6 +87,9 @@ CONFIG_ADC=y
|
|||
CONFIG_ADC_SANDBOX=y
|
||||
CONFIG_AXI=y
|
||||
CONFIG_AXI_SANDBOX=y
|
||||
CONFIG_BOOTCOUNT_LIMIT=y
|
||||
CONFIG_DM_BOOTCOUNT=y
|
||||
CONFIG_DM_BOOTCOUNT_RTC=y
|
||||
CONFIG_CLK=y
|
||||
CONFIG_CPU=y
|
||||
CONFIG_DM_DEMO=y
|
||||
|
@ -217,3 +221,4 @@ CONFIG_UNIT_TEST=y
|
|||
CONFIG_UT_TIME=y
|
||||
CONFIG_UT_DM=y
|
||||
CONFIG_UT_ENV=y
|
||||
CONFIG_UT_OVERLAY=y
|
||||
|
|
|
@ -15,6 +15,7 @@ ifneq ($(CONFIG_SANDBOX),)
|
|||
obj-$(CONFIG_SOUND) += audio.o
|
||||
obj-$(CONFIG_BLK) += blk.o
|
||||
obj-$(CONFIG_BOARD) += board.o
|
||||
obj-$(CONFIG_DM_BOOTCOUNT) += bootcount.o
|
||||
obj-$(CONFIG_CLK) += clk.o
|
||||
obj-$(CONFIG_DM_ETH) += eth.o
|
||||
obj-$(CONFIG_FIRMWARE) += firmware.o
|
||||
|
|
30
test/dm/bootcount.c
Normal file
30
test/dm/bootcount.c
Normal file
|
@ -0,0 +1,30 @@
|
|||
// SPDX-License-Identifier: GPL-2.0+
|
||||
/*
|
||||
* (C) 2018 Theobroma Systems Design und Consulting GmbH
|
||||
*/
|
||||
|
||||
#include <common.h>
|
||||
#include <dm.h>
|
||||
#include <bootcount.h>
|
||||
#include <asm/test.h>
|
||||
#include <dm/test.h>
|
||||
#include <test/ut.h>
|
||||
|
||||
static int dm_test_bootcount(struct unit_test_state *uts)
|
||||
{
|
||||
struct udevice *dev;
|
||||
u32 val;
|
||||
|
||||
ut_assertok(uclass_get_device(UCLASS_BOOTCOUNT, 0, &dev));
|
||||
ut_assertok(dm_bootcount_set(dev, 0));
|
||||
ut_assertok(dm_bootcount_get(dev, &val));
|
||||
ut_assert(val == 0);
|
||||
ut_assertok(dm_bootcount_set(dev, 0xab));
|
||||
ut_assertok(dm_bootcount_get(dev, &val));
|
||||
ut_assert(val == 0xab);
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
DM_TEST(dm_test_bootcount, DM_TESTF_SCAN_PDATA | DM_TESTF_SCAN_FDT);
|
||||
|
Loading…
Reference in a new issue