IOCTL_MIPI_DSI_RESET IOCTL (ntddvdeo.h)

IOCTL_MIPI_DSI_RESET запрашивает сброс устройства под управлением графического драйвера и управления ОС.

Основной код

IRP_MJ_DEVICE_CONTROL

Входной буфер

Недоступно

Длина входного буфера

Недоступно

Выходной буфер

Недоступно

Длина выходного буфера

Недоступно

Буфер входных и выходных данных

Структура DXGK_DSI_RESET.

Длина входного/выходного буфера

sizeof(DXGK_DSI_RESET) или новее

Блок состояния

Irp-IoStatus.Status> имеет значение STATUS_SUCCESS, если запрос выполнен успешно. В противном случае — Состояние до соответствующего условия ошибки в виде кода NTSTATUS.

Дополнительные сведения см. в разделе Значения NTSTATUS.

Комментарии

Списки IOCTL интерфейса mipi (DSI) должны обрабатываться монитором, oem-панелью или драйвером порта или мини-порта.

Если драйвер панели oem обнаруживает, что панель находится в плохом состоянии, он должен отправить IOCTL_MIPI_DSI_RESET , чтобы запросить сброс устройства в графическом драйвере и управлении ОС. Операционная система будет координировать сброс с графическим драйвером. Сброс — это операция с большими нагрузками, которая приведет к пустому отображению для нескольких кадров, поэтому ее следует использовать только в качестве крайнего средства.

Обычная работа панели не может продолжаться при обработке сброса, поэтому ОС будет обрабатываться аналогично изменению режима отображения, очистке ожидающих действий GPU, включая любые переворачивания, и блокировке новой работы до завершения. ОС преобразует IOCTL в вызов DDI DSIReset . Драйвер должен полностью удалить питание с панели и повторно инициализировать его с нуля, а после соответствующей задержки выполнить все действия, необходимые для восстановления панели до работоспособного состояния перед возвращением. Если этот параметр задан, флаг SecondaryPort указывает, что сброс должен быть направлен на вторичную панель, а не на основную.

Если графическому драйверу требуется полный режим для выполнения или восстановления на панели сброса, он должен установить выходной флаг NeedModeSet. Если этот параметр задан при возвращении из вызова, ос будет отвечать вызовом DxgkDdiSetTimingsFromVidPn перед разблокировкой нормальной активности. При необходимости драйвер может отложить некоторые операции сброса для этого вызова при условии, что ожидается работоспособное состояние после вызова заданного времени.

Графический драйвер должен сообщать о всех низкоуровневых ошибках MIPI, обнаруженных и не обрабатываемых драйвером, через поле вывода MipiErrors .

Если во время сброса возникает неустранимая ошибка, графический драйвер должен установить выходной флаг ResetFailed . Ожидается, что это катастрофический сбой. Графический драйвер также должен сигнализировать о недоступности отображения на целевом объекте, указывая, что произошло отключение с помощью обратного вызова DxgkCbIndicateConnectorChange , а затем ответив на DxgkDdiQueryConnectionChange , сообщить TargetStatusDisconnected для целевого объекта, который завершился сбоем.

Поля вывода будут распространяться обратно в выходной буфер IOCTL.

Требования

Требование Значение
Минимальная версия клиента Windows 10 версии 2004
Верхняя часть ntddvdeo.h

См. также раздел

DsiReset

DXGK_DSI_RESET

IOCTL_MIPI_DSI_QUERY_CAPS

IOCTL_MIPI_DSI_TRANSMISSION