i3c: add i3c shell

Add an I3C shell. This includes support of all I3C CCC commands that
currently have helper functions implemented. This also includes all
the read/write shell commands that the i2c shell supported. An Info
command is also provided which will print out all i3c and i2c info
of an i3c bus. Only SDR read/writes are currently implemented.

Signed-off-by: Ryan McClelland <ryanmcclelland@meta.com>
This commit is contained in:
Ryan McClelland 2024-03-26 18:45:48 -07:00 committed by Anas Nashif
parent 8654daeebd
commit 732c2e1989
3 changed files with 1453 additions and 0 deletions

View file

@ -16,6 +16,11 @@ zephyr_library_sources_ifdef(
i3c_handlers.c
)
zephyr_library_sources_ifdef(
CONFIG_I3C_SHELL
i3c_shell.c
)
zephyr_library_sources_ifdef(
CONFIG_I3C_IBI_WORKQUEUE
i3c_ibi_workq.c

View file

@ -15,6 +15,15 @@ module = I3C
module-str = i3c
source "subsys/logging/Kconfig.template.log_config"
config I3C_SHELL
bool "I3C Shell"
depends on SHELL
help
Enable I3C Shell.
The I3C shell supports info, bus recovery, CCC, I3C read and
write operations.
config I3C_USE_GROUP_ADDR
bool "Use Group Addresses"
default y

1439
drivers/i3c/i3c_shell.c Normal file

File diff suppressed because it is too large Load diff