From 3c7e49956d87d8bd4fb81ef07a58ebccbe1e9bda Mon Sep 17 00:00:00 2001 From: Bjarki Arge Andreasen Date: Thu, 21 Nov 2024 21:54:21 +0100 Subject: [PATCH] tests: drivers: clock_control: nrf: add global hsfll clock Extend test suite to test global HSFLL clock. Signed-off-by: Bjarki Arge Andreasen --- .../nrf_clock_control/src/main.c | 36 +++++++++++++++++-- 1 file changed, 34 insertions(+), 2 deletions(-) diff --git a/tests/drivers/clock_control/nrf_clock_control/src/main.c b/tests/drivers/clock_control/nrf_clock_control/src/main.c index 60cb9549f3d..1f12969eb3d 100644 --- a/tests/drivers/clock_control/nrf_clock_control/src/main.c +++ b/tests/drivers/clock_control/nrf_clock_control/src/main.c @@ -104,6 +104,29 @@ static const struct test_clk_context cpurad_hsfll_test_clk_contexts[] = { }; #endif +const struct nrf_clock_spec test_clk_specs_global_hsfll[] = { + { + .frequency = MHZ(320), + }, + { + .frequency = MHZ(256), + }, + { + .frequency = MHZ(128), + }, + { + .frequency = MHZ(64), + }, +}; + +static const struct test_clk_context global_hsfll_test_clk_contexts[] = { + { + .clk_dev = DEVICE_DT_GET(DT_NODELABEL(hsfll120)), + .clk_specs = test_clk_specs_global_hsfll, + .clk_specs_size = ARRAY_SIZE(test_clk_specs_global_hsfll), + }, +}; + const struct nrf_clock_spec test_clk_specs_lfclk[] = { { .frequency = 32768, @@ -151,8 +174,10 @@ static void test_request_release_clock_spec(const struct device *clk_dev, zassert_ok(ret); zassert_ok(res); ret = clock_control_get_rate(clk_dev, NULL, &rate); - zassert_ok(ret); - zassert_equal(rate, clk_spec->frequency); + if (ret != -ENOSYS) { + zassert_ok(ret); + zassert_equal(rate, clk_spec->frequency); + } k_msleep(1000); ret = nrf_clock_control_release(clk_dev, clk_spec); zassert_equal(ret, ONOFF_STATE_ON); @@ -249,6 +274,13 @@ ZTEST(nrf2_clock_control, test_lfclk_control) test_clock_control_request(lfclk_test_clk_contexts, ARRAY_SIZE(lfclk_test_clk_contexts)); } +ZTEST(nrf2_clock_control, test_global_hsfll_control) +{ + TC_PRINT("Global HSFLL test\n"); + test_clock_control_request(global_hsfll_test_clk_contexts, + ARRAY_SIZE(global_hsfll_test_clk_contexts)); +} + ZTEST(nrf2_clock_control, test_safe_request_cancellation) { int ret = 0;