GIISR_INFO
9/8/2008
Essa estrutura é passada para a rotina serviço interrupção (ISR) por meio KernelLibIoControl Depois que o ISR é carregado com LoadIntChainHandler.
Syntax
typedef struct _GIISR_INFO {
DWORD SysIntr;
BOOL CheckPort;
BOOL PortIsIO;
BOOL UseMaskReg;
DWORD PortAddr;
DWORD PortSize;
DWORD Mask;
DWORD MaskAddr;
} GIISR_INFO, *PGIISR_INFO;
Os membros
SysIntr
Número interrupção do sistema (SYSINTR) para o ISR para retornar se o associado dispositivo está declarando solicitação de interrupção (IRQ).Esse valor é ler a partir de Registro.
CheckPort
Se TRUE, o ISR lê uma porta no dispositivo para determinar se o dispositivo está declarando o IRQ. A PortAddr é exigido para endereço de porta que está ler para determinar se o dispositivo é declarar a interrupção.Se FALSE, o ISR supõe que o dispositivo está declarando o IRQ e retorna imediatamente SysIntr.
Essa opção é usada somente se a linha interrupção que o dispositivo está usando não estiver compartilhada, ou se o ISR é garantido seja Última no encadear; exemplo, o ISR é instalado com o último LoadIntChainHandler chamar nesse IRQ.
Em geral, use esta opção somente se houver não meios para detecção se o dispositivo está declarando o IRQ.
PortIsIO
Se TRUE, a porta é a porta E/S.Isso determina se a porta é E/S ou de memória mapeada.
Isso é relevante para x 86 arquiteturas porque todos os outros microprocessadores são mapeados na memória.
UseMaskReg
Se TRUE, ler a partir MaskAddr Para obter máscara. Opcionalmente, registrar outro dispositivo pode ser usado como uma máscara.Esse recurso é ativado se o UseMaskReg campo é TRUE. O associado MaskAddr campo é o endereço virtual mapeado estaticamente de registrar a máscara.
Essa opção é usada se o dispositivo tiver múltiplo interrupção fontes que é habilitado pela registrar apontado pelo MaskAddr. Máscara bits desativado desativar a interrupção pendente registrar apontado pelo PortAddr.
PortAddr
Endereço de porta.Este é um endereço virtual statically-mapped que é obtido através TransBusAddrToStatic.
Isso é exigido se CheckPort é TRUE.
- PortSize
Porta largura dados em 1, 2 ou 4 bytes.
Máscara
Uma máscara para usar na porta para determinar se o dispositivo está declarando o IRQ.O Máscara membro é usado para desativar o valor de máscara de PortAddr Forma individual bits podem ser examinados pelo Máscara e o conteúdo de registrar residentes no PortAddr.
Se o resultado for diferente de zero, retorna o ISR SysIntr.
Caso contrário, SYSINTR_CHAIN é retornado, indicando que o dispositivo não está atualmente declarar o IRQ.
- MaskAddr
Endereço de registrar para usar como máscara.
Requirements
Header | giisr.h |
Windows Embedded CE | Windows CE .NET 4.0 and later |