Управление драйвером XHCI DbC ядра KasperskyOS (xhcidbg_api.h)

API определен в заголовочном файле sysroot-*-kos/include/coresrv/xhcidbg/xhcidbg_api.h из состава KasperskyOS SDK.

API предназначен для использования в коде драйверов, реализующих стек USB (драйверов класса kusb), и позволяет временно приостанавливать драйвер XHCI DbC (Debug Capability) ядра KasperskyOS. (Ядро KasperskyOS включает драйвер XHCI DbC, который представляет собой упрощенный драйвер контроллера XHCI и используется ядром для диагностического вывода либо GDB-сервером ядра для взаимодействия с отладчиком GDB.) Если драйверу класс kusb нужно перезагрузить контроллер XHCI, то драйвер XHCI DbC ядра необходимо приостановить вызовом функции KnXhcidbgSuspend() перед перезагрузкой и запустить вызовом функции KnXhcidbgResume() после перезагрузки. Если этого не сделать, перезагрузка контроллера XHCI приведет к невозможности выполнять диагностический вывод (или отладку) через порт USB.

Для большинства аппаратных платформ, поддерживаемых KasperskyOS, API не реализован (функции возвращают rcUnimplemented).

Сведения о функциях API приведены в таблице ниже.

Функции xhcidbg_api.h

Функция

Сведения о функции

KnXhcidbgSuspend()

Назначение

Приостанавливает драйвер XHCI DbC ядра KasperskyOS.

Параметры

Нет.

Возвращаемые значения

В случае успеха возвращает rcOk, иначе возвращает код ошибки.

KnXhcidbgResume()

Назначение

Запускает приостановленный драйвер XHCI DbC ядра KasperskyOS.

Параметры

Нет.

Возвращаемые значения

В случае успеха возвращает rcOk, иначе возвращает код ошибки.

В начало