Compartilhar via


OID_NIC_SWITCH_CREATE_SWITCH

O NDIS emite uma solicitação de método OID (identificador de objeto) de OID_NIC_SWITCH_CREATE_SWITCH para criar um comutador NIC em um adaptador de rede. Quando ele lida com essa solicitação OID, o driver de miniporto aloca os recursos para a opção NIC no adaptador.

O NDIS emite essa solicitação de método OID para o driver de miniporte da PF (Função Física) PCI Express (PCIe) do adaptador de rede. Essa solicitação de método OID é necessária para drivers de miniporto PF que dão suporte à interface sr-IOV (virtualização de E/S) raiz única.

Nota Drivers sobrepostos, como drivers de protocolo ou filtro, não podem emitir solicitações de método OID de OID_NIC_SWITCH_CREATE_SWITCH para o driver de miniporto PF.

O membro InformationBuffer da estrutura NDIS_OID_REQUEST contém um ponteiro para uma estrutura NDIS_NIC_SWITCH_PARAMETERS .

Comentários

Quando ele recebe a solicitação de método OID de OID_NIC_SWITCH_CREATE_SWITCH, o driver de miniporto PF deve fazer o seguinte:

  1. Se o driver de miniporto PF der suporte à criação e à configuração do comutador estático, ele criará a opção NIC quando o NDIS chamar MiniportInitializeEx. Quando o driver lida com essa solicitação OID, ele deve verificar os parâmetros de configuração na estrutura NDIS_NIC_SWITCH_PARAMETERS . Os parâmetros devem ser iguais aos usados pelo driver para criar a opção durante a chamada para MiniportInitializeEx. Se isso não for verdade, o driver deverá falhar na solicitação OID.

    Para obter mais informações, consulte Criação estática de um comutador NIC.

  2. Se o driver de miniporto PF der suporte à criação e à configuração do comutador dinâmico, o driver deverá validar os valores de configuração da estrutura NDIS_NIC_SWITCH_PARAMETERS e criar a opção NIC com base nesses valores.

    Para obter mais informações, consulte Criação dinâmica de um comutador NIC.

  3. O driver de miniporto PF deve alocar os recursos de hardware e software necessários para o VPort padrão na opção NIC.

    Nota O VPort padrão sempre é criado por meio de uma solicitação OID de OID_NIC_SWITCH_CREATE_SWITCH e excluído por meio de uma solicitação OID de OID_NIC_SWITCH_DELETE_SWITCH. Solicitações OID de OID_NIC_SWITCH_CREATE_VPORT e OID_NIC_SWITCH_DELETE_VPORT são usadas para a criação e exclusão de VPorts não padrão na opção NIC.

  4. O driver de miniporto PF que dá suporte à criação e à configuração do comutador dinâmico deve habilitar a virtualização SR-IOV na opção chamando NdisMEnableVirtualization. Essa chamada configura o membro NumVFs e o bit Habilitar VF na estrutura de Funcionalidade Estendida SR-IOV do espaço de configuração PCI Express (PCIe) do adaptador.

    Para obter mais informações sobre o espaço de configuração SR-IOV, consulte a especificação PCI-SIG Single Root I/O Virtualization and Sharing 1.1 .

    Nota Se o driver de miniporto PF der suporte à criação de comutador estático, ele habilitará a virtualização SR-IOV depois de criar a opção quando MiniportInitializeEx for chamado.

Se o driver de miniporto PF concluir com êxito a solicitação de método OID de OID_NIC_SWITCH_CREATE_SWITCH, ele permitirá que o seguinte ocorra:

Para obter mais informações sobre como lidar com essa solicitação de OID, consulte Manipulando a solicitação de OID_NIC_SWITCH_CREATE_SWITCH.

Retornar códigos de status

O driver de miniporto PF retorna um dos seguintes códigos de status para a solicitação de método OID de OID_NIC_SWITCH_CREATE_SWITCH.

Código de status Descrição

NDIS_STATUS_SUCCESS

A solicitação OID foi concluída com êxito.

NDIS_STATUS_NOT_SUPPORTED

O driver de miniporto PF não dá suporte à interface SR-IOV ou não está habilitado para usar a interface.

NDIS_STATUS_INVALID_PARAMETER

Um ou mais dos membros da estrutura NDIS_NIC_SWITCH_PARAMETERS têm valores inválidos.

NDIS_STATUS_INVALID_LENGTH

O comprimento do buffer de informações é menor que sizeof(NDIS_NIC_SWITCH_PARAMETERS). O driver de miniporto PF deve definir os DADOS. METHOD_INFORMATION. Membro BytesNeeded na estrutura NDIS_OID_REQUEST para o tamanho mínimo do buffer necessário.

NDIS_STATUS_FAILURE

A solicitação falhou por outros motivos.

Requisitos

Versão

Com suporte no NDIS 6.30 e posterior.

Cabeçalho

Ntddndis.h (inclua Ndis.h)

Confira também


MiniportInitializeEx

NDIS_OID_REQUEST

NDIS_NIC_SWITCH_PARAMETERS

NdisMEnableVirtualization

OID_NIC_SWITCH_ALLOCATE_VF

OID_NIC_SWITCH_CREATE_VPORT