/* * (C) Copyright 2015 * Texas Instruments Incorporated - http://www.ti.com/ * SPDX-License-Identifier: GPL-2.0+ */ #include #include #include #include #include #include /** * dm_test_remoteproc_base() - test the operations after initializations * @uts: unit test state * * Return: 0 if test passed, else error */ static int dm_test_remoteproc_base(struct unit_test_state *uts) { if (!rproc_is_initialized()) ut_assertok(rproc_init()); /* Ensure we are initialized */ ut_asserteq(true, rproc_is_initialized()); /* platform data device 1 */ ut_assertok(rproc_stop(0)); ut_assertok(rproc_reset(0)); /* -> invalid attempt tests */ ut_asserteq(-EINVAL, rproc_start(0)); ut_asserteq(-EINVAL, rproc_ping(0)); /* Valid tests */ ut_assertok(rproc_load(0, 1, 0)); ut_assertok(rproc_start(0)); ut_assertok(rproc_is_running(0)); ut_assertok(rproc_ping(0)); ut_assertok(rproc_reset(0)); ut_assertok(rproc_stop(0)); /* dt device device 1 */ ut_assertok(rproc_stop(1)); ut_assertok(rproc_reset(1)); ut_assertok(rproc_load(1, 1, 0)); ut_assertok(rproc_start(1)); ut_assertok(rproc_is_running(1)); ut_assertok(rproc_ping(1)); ut_assertok(rproc_reset(1)); ut_assertok(rproc_stop(1)); /* dt device device 2 */ ut_assertok(rproc_stop(0)); ut_assertok(rproc_reset(0)); /* -> invalid attempt tests */ ut_asserteq(-EINVAL, rproc_start(0)); ut_asserteq(-EINVAL, rproc_ping(0)); /* Valid tests */ ut_assertok(rproc_load(2, 1, 0)); ut_assertok(rproc_start(2)); ut_assertok(rproc_is_running(2)); ut_assertok(rproc_ping(2)); ut_assertok(rproc_reset(2)); ut_assertok(rproc_stop(2)); return 0; } DM_TEST(dm_test_remoteproc_base, DM_TESTF_SCAN_PDATA | DM_TESTF_SCAN_FDT);