diff options
author | Maximilian Luz <luzmaximilian@gmail.com> | 2020-12-21 19:39:55 +0100 |
---|---|---|
committer | Hans de Goede <hdegoede@redhat.com> | 2021-01-07 00:06:22 +0100 |
commit | 02be44f6b5a9e4ff1215d337ac4d2a6fbafc7874 (patch) | |
tree | d9ca5068c272e80d1fb086ab93b6775abcd02f1d /drivers/platform/surface/aggregator/Kconfig | |
parent | 0d21bb8560ef6bd09cab873120f940a939ad3aec (diff) | |
download | lwn-02be44f6b5a9e4ff1215d337ac4d2a6fbafc7874.tar.gz lwn-02be44f6b5a9e4ff1215d337ac4d2a6fbafc7874.zip |
platform/surface: aggregator: Add error injection capabilities
This commit adds error injection hooks to the Surface Serial Hub
communication protocol implementation, to:
- simulate simple serial transmission errors,
- drop packets, requests, and responses, simulating communication
failures and potentially trigger retransmission timeouts, as well as
- inject invalid data into submitted and received packets.
Together with the trace points introduced in the previous commit, these
facilities are intended to aid in testing, validation, and debugging of
the Surface Aggregator communication layer.
Signed-off-by: Maximilian Luz <luzmaximilian@gmail.com>
Reviewed-by: Hans de Goede <hdegoede@redhat.com>
Acked-by: Steven Rostedt (VMware) <rostedt@goodmis.org>
Link: https://lore.kernel.org/r/20201221183959.1186143-6-luzmaximilian@gmail.com
Signed-off-by: Hans de Goede <hdegoede@redhat.com>
Diffstat (limited to 'drivers/platform/surface/aggregator/Kconfig')
-rw-r--r-- | drivers/platform/surface/aggregator/Kconfig | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/drivers/platform/surface/aggregator/Kconfig b/drivers/platform/surface/aggregator/Kconfig index e9f4ad96e40a..e417bac67088 100644 --- a/drivers/platform/surface/aggregator/Kconfig +++ b/drivers/platform/surface/aggregator/Kconfig @@ -40,3 +40,17 @@ menuconfig SURFACE_AGGREGATOR Choose m if you want to build the SAM subsystem core and SSH driver as module, y if you want to build it into the kernel and n if you don't want it at all. + +config SURFACE_AGGREGATOR_ERROR_INJECTION + bool "Surface System Aggregator Module Error Injection Capabilities" + depends on SURFACE_AGGREGATOR + depends on FUNCTION_ERROR_INJECTION + help + Provides error-injection capabilities for the Surface System + Aggregator Module subsystem and Surface Serial Hub driver. + + Specifically, exports error injection hooks to be used with the + kernel's function error injection capabilities to simulate underlying + transport and communication problems, such as invalid data sent to or + received from the EC, dropped data, and communication timeouts. + Intended for development and debugging. |