1*e96fa6c9SSimon Glass // SPDX-License-Identifier: GPL-2.0+ 2*e96fa6c9SSimon Glass /* 3*e96fa6c9SSimon Glass * Copyright 2018 Google LLC 4*e96fa6c9SSimon Glass * Written by Simon Glass <sjg@chromium.org> 5*e96fa6c9SSimon Glass */ 6*e96fa6c9SSimon Glass 7*e96fa6c9SSimon Glass #include <common.h> 8*e96fa6c9SSimon Glass #include <dm.h> 9*e96fa6c9SSimon Glass #include <i2s.h> 10*e96fa6c9SSimon Glass #include <dm/test.h> 11*e96fa6c9SSimon Glass #include <test/ut.h> 12*e96fa6c9SSimon Glass #include <asm/test.h> 13*e96fa6c9SSimon Glass 14*e96fa6c9SSimon Glass /* Basic test of the i2s codec uclass */ dm_test_i2s(struct unit_test_state * uts)15*e96fa6c9SSimon Glassstatic int dm_test_i2s(struct unit_test_state *uts) 16*e96fa6c9SSimon Glass { 17*e96fa6c9SSimon Glass struct udevice *dev; 18*e96fa6c9SSimon Glass u8 data[3]; 19*e96fa6c9SSimon Glass 20*e96fa6c9SSimon Glass /* check probe success */ 21*e96fa6c9SSimon Glass ut_assertok(uclass_first_device_err(UCLASS_I2S, &dev)); 22*e96fa6c9SSimon Glass data[0] = 1; 23*e96fa6c9SSimon Glass data[1] = 4; 24*e96fa6c9SSimon Glass data[2] = 6; 25*e96fa6c9SSimon Glass ut_assertok(i2s_tx_data(dev, data, ARRAY_SIZE(data))); 26*e96fa6c9SSimon Glass ut_asserteq(11, sandbox_get_i2s_sum(dev)); 27*e96fa6c9SSimon Glass ut_assertok(i2s_tx_data(dev, data, 1)); 28*e96fa6c9SSimon Glass ut_asserteq(12, sandbox_get_i2s_sum(dev)); 29*e96fa6c9SSimon Glass 30*e96fa6c9SSimon Glass return 0; 31*e96fa6c9SSimon Glass } 32*e96fa6c9SSimon Glass DM_TEST(dm_test_i2s, DM_TESTF_SCAN_PDATA | DM_TESTF_SCAN_FDT); 33