Compartilhar via


Loading Drivers on the PCI Bus

Windows Mobile Not SupportedWindows Embedded CE Supported

9/8/2008

Driver de barramento PCI é responsável por enumerando o barramento PCI e, em seguida, carregar drivers dispositivo para qualquer um dos dispositivos que ele encontra. Driver de barramento PCI segue estas etapas para carregar drivers:

  1. Enumera o barramento PCI por Procurando dispositivos e enumerando os recursos exigido pelos dispositivos. Esses recursos incluem memória endereços de base, E/S de base endereços e números de IRQ.

  2. Usa, se aplicável, uma rotina configuração fornecido pelo driver de dispositivo para configurar recursos que não são compatíveis com PCI e recursos extensão ROM.

  3. Atribui recursos a cada um dos dispositivos.

  4. Executa uma segunda transmitir enumeração coincidir com os dispositivos com Registro entradas encontradas na PCI\Template chave.

  5. Procura por correspondências exatas sob a PCI\Instance chave.
    Para obter mais informações, consulte Carregando drivers de dispositivo.

  6. Coincide com o dispositivo para uma entrada Registro ao aplicar um algoritmo de melhor ajuste para as entradas Registro.
    A seguinte tabela mostra as entradas Registro.

    Entrada Descrição

    Classe

    Função básica de um dispositivo, de exemplo, um controlador armazenamento em massa.

    SubClass

    Subclasse específica de uma função básica, de exemplo, um controlador Integrated Device Electronics (IDE).

    ProgIF

    Interface programação Register-specific, de exemplo, USB aberto hospedar controlador interface (OHCI) ou USB Universal hospedar controlador interface (UHCI).

    VendorID

    Fabricante do dispositivo.

    DeviceID

    Tipo de dispositivo.

    SubsystemVendorID

    Fornecedor de um cartão ou subsistema que usa um dispositivo.

    SubsystemID

    Tipo de cartão ou subsistema que usa um dispositivo.

    Os identificadores são listados na ordem de aumento especificidade. Quando compatível um dispositivo encontrado com uma entrada Registro, todos os valores que são listados no Registro deve coincidir com o dispositivo encontrado. De exemplo, a seguinte tabela mostra as entradas Registro para um driver que funciona com todas as 16550-compatível serial controladores.

    Entrada Descrições

    Classe

    Valor para controladores de comunicações simples.

    SubClass

    Valor de serial.

    ProgIF

    Valor de 16550-compatível serial controladores.

    Se um determinado serial driver foi configurado para dispositivo de um fornecedor específico, e o VendorID e DeviceID Valores deve estar listados bem. A entrada Registro para este driver só seria coincidir com um dispositivo que contém exatamente a mesma Classe, SubClass, ProgIF, VendorID e DeviceID. O VendorID, DeviceID, SubsystemVendorID e SubsystemID pode ter uma lista de valores associado para o driver pode corresponder com um subconjunto dos dispositivos. Se as listas são usadas, eles devem todos estar do mesmo comprimento.

  7. Copia as informações modelo para um PCI\Instance chave quando uma correspondência for localizada, along with AS informações ADICIONAIS recurso such as MemBase, MemLen, IoBase, IoLen e IRQ.
    Um mapeamento IRQ-to-SYSINTR é solicitado nesse tempo a partir de OAL, e o SYSINTR é escrito para a chave Registro SysIntr.

  8. Carrega o driver com sua chave instância recém-criado.
    Como o driver agora tem todas as suas informações configuração contidas o Registro, ele não precisa enumerar o barramento para descobrir sua correspondente dispositivo. Para obter mais informações sobre driver carregando, consulte Barramento de enumerador.

See Also

Concepts

Example: Loading Drivers on the PCI Bus