This API is defined in the header file sysroot-*-kos/include/coresrv/xhcidbg/xhcidbg_api.h from the KasperskyOS SDK.
This API is intended for use in the code of drivers that implement a USB stack (kusb class drivers) and lets you temporarily suspend the XHCI DbC (Debug Capability) driver of the KasperskyOS kernel. (The KasperskyOS kernel includes the XHCI DbC driver, which is a simplified XHCI controller driver and is used by the kernel for diagnostic output or by the kernel GDB server to interact with the GDB debugger.) If a kusb class driver needs to restart the XHCI controller, the kernel's XHCI DbC driver must be suspended by calling the KnXhcidbgSuspend() function before the restart and then started by calling the KnXhcidbgResume() function after the restart. If you do not do this, a restart of the XHCI controller will lead to a failure of diagnostic output (or debugging) via the USB port.
This API has not been implemented for the majority of hardware platforms that are supported by KasperskyOS (the functions return rcUnimplemented).
Information about API functions is provided in the table below.
xhcidbg_api.h functions
Function |
Information about the function |
|---|---|
|
Purpose Suspends the XHCI DbC driver of the KasperskyOS kernel. Parameters N/A Returned values If successful, the function returns |
|
Purpose Starts a suspended XHCI DbC driver of the KasperskyOS kernel. Parameters N/A Returned values If successful, the function returns |