diff options
author | Linus Torvalds <torvalds@linux-foundation.org> | 2022-08-04 18:13:19 -0700 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2022-08-04 18:13:19 -0700 |
commit | 5bb3bf24b0aaa76253c77e437b88927a32a10c4e (patch) | |
tree | 72485d2ff59171240b7d532c6bf96b60c48d9399 /drivers/platform/chrome/cros_kunit_util.h | |
parent | da8d07af4b3e2e407c5dd13f08b64580931fd1a6 (diff) | |
parent | afef1e1a0223623d063a6df51dbc342c9517b948 (diff) |
Merge tag 'tag-chrome-platform-for-v5.20' of git://git.kernel.org/pub/scm/linux/kernel/git/chrome-platform/linux
Pull chrome platform updates from Tzung-Bi Shih:
"cros_ec_proto:
- Leverage Kunit and add Kunit test cases
- Clean-ups
- Fix typo
cros_ec_commands:
- Fix typo
- Fix compile errors
cros_kbd_led_backlight:
- Support OF match
- Support EC PWM backend
cros_ec:
- Always expose the last resume result to fix sleep hang detection on
ARM-based chromebooks
wilco_ec:
- Fix typo
cros_ec_typec:
- Clean-ups
- Use Type-C framework utilities to manage altmode structs"
* tag 'tag-chrome-platform-for-v5.20' of git://git.kernel.org/pub/scm/linux/kernel/git/chrome-platform/linux: (59 commits)
platform/chrome: cros_kunit_util: add default value for `msg->result`
platform/chrome: merge Kunit utils and test cases
platform/chrome: cros_kbd_led_backlight: fix build warning
platform/chrome: cros_ec_proto: add Kunit test for cros_ec_cmd()
platform/chrome: cros_ec_proto: add Kunit tests for get_sensor_count
platform/chrome: cros_ec_proto: add Kunit tests for check_features
platform/chrome: cros_ec_proto: add Kunit tests for get_host_event
platform/chrome: cros_ec_proto: add Kunit tests for get_next_event
platform/chrome: cros_ec_proto: add Kunit test for cros_ec_map_error()
platform/chrome: cros_ec_proto: add Kunit tests for cmd_xfer_status
platform/chrome: cros_ec_proto: return -EPROTO if empty payload
platform/chrome: cros_ec_proto: add Kunit test for empty payload
platform/chrome: cros_ec_proto: return -EAGAIN when retries timed out
platform/chrome: cros_ec_proto: change Kunit expectation when timed out
platform/chrome: cros_ec_proto: separate cros_ec_wait_until_complete()
platform/chrome: cros_ec_proto: separate cros_ec_xfer_command()
platform/chrome: cros_ec_proto: add Kunit tests for cros_ec_send_command()
platform/chrome: cros_ec_proto: add Kunit tests for cros_ec_cmd_xfer()
platform/chrome: cros_ec_proto: add "cros_ec_" prefix to send_command()
platform/chrome: cros_ec_typec: Register port altmodes
...
Diffstat (limited to 'drivers/platform/chrome/cros_kunit_util.h')
-rw-r--r-- | drivers/platform/chrome/cros_kunit_util.h | 48 |
1 files changed, 48 insertions, 0 deletions
diff --git a/drivers/platform/chrome/cros_kunit_util.h b/drivers/platform/chrome/cros_kunit_util.h new file mode 100644 index 000000000000..414002271c9c --- /dev/null +++ b/drivers/platform/chrome/cros_kunit_util.h @@ -0,0 +1,48 @@ +/* SPDX-License-Identifier: GPL-2.0 */ +/* + * CrOS Kunit tests utilities. + */ + +#ifndef _CROS_KUNIT_UTIL_H_ +#define _CROS_KUNIT_UTIL_H_ + +#include <linux/platform_data/cros_ec_proto.h> + +struct ec_xfer_mock { + struct list_head list; + struct kunit *test; + + /* input */ + struct cros_ec_command msg; + void *i_data; + + /* output */ + int ret; + int result; + void *o_data; + u32 o_data_len; +}; + +extern int cros_kunit_ec_xfer_mock_default_result; +extern int cros_kunit_ec_xfer_mock_default_ret; +extern int cros_kunit_ec_cmd_xfer_mock_called; +extern int cros_kunit_ec_pkt_xfer_mock_called; + +int cros_kunit_ec_xfer_mock(struct cros_ec_device *ec_dev, struct cros_ec_command *msg); +int cros_kunit_ec_cmd_xfer_mock(struct cros_ec_device *ec_dev, struct cros_ec_command *msg); +int cros_kunit_ec_pkt_xfer_mock(struct cros_ec_device *ec_dev, struct cros_ec_command *msg); +struct ec_xfer_mock *cros_kunit_ec_xfer_mock_add(struct kunit *test, size_t size); +struct ec_xfer_mock *cros_kunit_ec_xfer_mock_addx(struct kunit *test, + int ret, int result, size_t size); +struct ec_xfer_mock *cros_kunit_ec_xfer_mock_next(void); + +extern int cros_kunit_readmem_mock_offset; +extern u8 *cros_kunit_readmem_mock_data; +extern int cros_kunit_readmem_mock_ret; + +int cros_kunit_readmem_mock(struct cros_ec_device *ec_dev, unsigned int offset, + unsigned int bytes, void *dest); + +void cros_kunit_mock_reset(void); + +#endif |