1 /* 2 * Copyright (c) 2016, NVIDIA CORPORATION. 3 * 4 * SPDX-License-Identifier: GPL-2.0 5 */ 6 7 #include <common.h> 8 #include <dm.h> 9 #include <dm/test.h> 10 #include <asm/reset.h> 11 #include <test/ut.h> 12 13 /* This must match the specifier for mbox-names="test" in the DT node */ 14 #define TEST_RESET_ID 2 15 16 static int dm_test_reset(struct unit_test_state *uts) 17 { 18 struct udevice *dev_reset; 19 struct udevice *dev_test; 20 21 ut_assertok(uclass_get_device_by_name(UCLASS_RESET, "reset-ctl", 22 &dev_reset)); 23 ut_asserteq(0, sandbox_reset_query(dev_reset, TEST_RESET_ID)); 24 25 ut_assertok(uclass_get_device_by_name(UCLASS_MISC, "reset-ctl-test", 26 &dev_test)); 27 ut_assertok(sandbox_reset_test_get(dev_test)); 28 29 ut_assertok(sandbox_reset_test_assert(dev_test)); 30 ut_asserteq(1, sandbox_reset_query(dev_reset, TEST_RESET_ID)); 31 32 ut_assertok(sandbox_reset_test_deassert(dev_test)); 33 ut_asserteq(0, sandbox_reset_query(dev_reset, TEST_RESET_ID)); 34 35 ut_assertok(sandbox_reset_test_free(dev_test)); 36 37 return 0; 38 } 39 DM_TEST(dm_test_reset, DM_TESTF_SCAN_FDT); 40