mirror of
https://github.com/torvalds/linux.git
synced 2024-12-02 17:11:33 +00:00
platform/chrome: cros_ec_proto: add Kunit test for cros_ec_cmd()
cros_ec_cmd() is a wrapper of cros_ec_cmd_xfer_status(). Add Kunit test for cros_ec_cmd(). Signed-off-by: Tzung-Bi Shih <tzungbi@kernel.org> Reviewed-by: Guenter Roeck <groeck@chromium.org> Link: https://lore.kernel.org/r/20220622041040.202737-8-tzungbi@kernel.org
This commit is contained in:
parent
33f0fdba60
commit
9399b2cb20
@ -2592,6 +2592,53 @@ static void cros_ec_proto_test_get_sensor_count_legacy(struct kunit *test)
|
||||
}
|
||||
}
|
||||
|
||||
static void cros_ec_proto_test_ec_cmd(struct kunit *test)
|
||||
{
|
||||
struct cros_ec_proto_test_priv *priv = test->priv;
|
||||
struct cros_ec_device *ec_dev = &priv->ec_dev;
|
||||
struct ec_xfer_mock *mock;
|
||||
int ret;
|
||||
u8 out[3], in[2];
|
||||
|
||||
ec_dev->max_request = 0xff;
|
||||
ec_dev->max_response = 0xee;
|
||||
|
||||
out[0] = 0xdd;
|
||||
out[1] = 0xcc;
|
||||
out[2] = 0xbb;
|
||||
|
||||
{
|
||||
u8 *data;
|
||||
|
||||
mock = cros_kunit_ec_xfer_mock_add(test, 2);
|
||||
KUNIT_ASSERT_PTR_NE(test, mock, NULL);
|
||||
|
||||
data = (u8 *)mock->o_data;
|
||||
data[0] = 0xaa;
|
||||
data[1] = 0x99;
|
||||
}
|
||||
|
||||
ret = cros_ec_cmd(ec_dev, 0x88, 0x77, out, ARRAY_SIZE(out), in, ARRAY_SIZE(in));
|
||||
KUNIT_EXPECT_EQ(test, ret, 2);
|
||||
|
||||
{
|
||||
u8 *data;
|
||||
|
||||
mock = cros_kunit_ec_xfer_mock_next();
|
||||
KUNIT_EXPECT_PTR_NE(test, mock, NULL);
|
||||
|
||||
KUNIT_EXPECT_EQ(test, mock->msg.version, 0x88);
|
||||
KUNIT_EXPECT_EQ(test, mock->msg.command, 0x77);
|
||||
KUNIT_EXPECT_EQ(test, mock->msg.insize, ARRAY_SIZE(in));
|
||||
KUNIT_EXPECT_EQ(test, mock->msg.outsize, ARRAY_SIZE(out));
|
||||
|
||||
data = (u8 *)mock->i_data;
|
||||
KUNIT_EXPECT_EQ(test, data[0], 0xdd);
|
||||
KUNIT_EXPECT_EQ(test, data[1], 0xcc);
|
||||
KUNIT_EXPECT_EQ(test, data[2], 0xbb);
|
||||
}
|
||||
}
|
||||
|
||||
static void cros_ec_proto_test_release(struct device *dev)
|
||||
{
|
||||
}
|
||||
@ -2690,6 +2737,7 @@ static struct kunit_case cros_ec_proto_test_cases[] = {
|
||||
KUNIT_CASE(cros_ec_proto_test_get_sensor_count_normal),
|
||||
KUNIT_CASE(cros_ec_proto_test_get_sensor_count_xfer_error),
|
||||
KUNIT_CASE(cros_ec_proto_test_get_sensor_count_legacy),
|
||||
KUNIT_CASE(cros_ec_proto_test_ec_cmd),
|
||||
{}
|
||||
};
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user