Secure Digital Card Host Controller Driver
9/8/2008
O Seguro Digital (SD) cartão hospedar controlador driver é o componente software que controla o hardware controlador hospedar e está em conformidade com uma interface software controlador hospedar que o driver barramento usa para se comunicar e definir parâmetros operacionais. O driver controlador hospedar usa um conjunto API exportado pelo driver de barramento para registro e unregistration.
Registro envolve fornecer informações sobre recursos hospedar e slot, incluindo taxa máxima relógio, janelas de voltagem aceitável, SD dados barramento largura e energia backup atraso. O Registro também fornece funções callback, um manipulador opções slot, um manipulador de energia e um manipulador solicitação barramento.
A pilha SD Card usa um dinâmico arquitetura que permite que hospedar drivers do controlador para registrar ou cancelar o registro a qualquer momento.
A interface driver controlador hospedar fornece uma camada de abstração hardware entre o driver barramento e a implementação controlador hospedar. Drivers do controlador de host contenham plataforma e dependente do conjunto de chips codificar e somente se comunicar informações para o driver barramento por esta interface. Isso mantém o driver barramento independente do controlador hospedar e design plataforma. A interface driver controlador hospedar só é exigido por drivers de controlador hospedar e é independente do driver cliente API.
O driver controlador hospedar:
- Inclui o controlador, slot e a lógica de suporte e compreende o real implementação hardware.
- Implementa o SD e multimídia cartão (MMC) transmitir e Receber eletrônicos.
- Pode ser um dispositivo Memory-mapped em um local barramento such as um integrado controlador, ou em um barramento periférico such as PCI, PCMCIA e USB.
- Pode também usar programados E/S ou direcionar acessar memória (acesso direto à memória (DMA)). **
- Começando com Windows Embedded CE 6.0 R2, pode usar única operação direcionar acessar memória (SDMA). Se você estiver usando um driver controlador hospedar diferentes, você poderá referir para o padrão Microsoft SD implementação driver controlador hospedar para obter ajuda sobre modificando seus próprios. Para obter informações adicionais sobre suporte acesso direto à memória (DMA), consulte Secure Digital Card Direct Memory Access Support**
A arquitetura driver cartão SD permite que um ilimitado número dos drivers controlador hospedar por sistema. Várias implementações slot devem utilizar energia independente, relógio e controle largura barramento. Isso permite que o sistema para placas aceitar que têm diferentes requisitos interface SD.
A interface elétrica controlador hospedar cartão SD é totalmente hot substituíveis e pode operar no 1 - bit ou 4 - modo bit, com uma velocidade relógio de 0 to 50 megahertz (MHz) As of Windows Embedded CE 6.0 R2. Ao usar uma versão Windows Embedded CE Windows Embedded CE 6.0 R2 de com suporte prior to velocidade relógio é 0 to 25 megahertz (MHz). A velocidade relógio usar como padrão é 25 megahertz (MHz) para todas as versões. O driver controlador hospedar é responsável por registrar os recursos de um slot para o driver barramento.
Observação
Suporte de relógio velocidades up to 50 megahertz (MHz) é hardware dependente. O hardware cliente SD devem suporte modo Alta velocidade e o relógio desejado específico velocidade.
Um controlador hospedar pode se basear em qualquer arquitetura barramento subordinadas. De exemplo, um controlador PCI-Based hospedar pode ser carregado como um driver fluxos.
**Applies to Windows Embedded CE 6.0 R2
O novo driver barramento SD implementa versão 2.0 da SD Card Physical Layer Specification. Para obter mais informações, consulte Secure Digital Card Bus Driver. Geralmente, nenhuma alteração será necessário para o driver controlador hospedar cartão SD ao usar o novo driver barramento SD. No entanto, é possível que alguns drivers do controlador hospedar cartão SD existentes não serão trabalho com o novo barramento SD. Uma das the most comum problemas encontrados considera os novos comandos com suporte na versão 2.0 de SD Card Physical Layer Specification que usam Response 7. A maiúsculas e minúsculas Response 7 devem ser contemplada ao barramento solicitações são enviadas para o controlador hospedar cartão SD ou a solicitação falhará com SD_API_STATUS_INVALID_PARAMETER. Manipular esse emitir pode envolver apresentando um enum novo para a resposta de comando no driver controlador hospedar SD cartão. Para obter mais informações, consulte o seguinte excerto de código.
SD_API_STATUS
CSDHCSlotBase::SubmitBusRequestHandler( PSD_BUS_REQUEST pRequest)
{
…
// bypass CMD12 if AutoCMD12 was done by hardware
…
// initialize command register with command code
wRegCommand = (pRequest->CommandCode << CMD_INDEX_SHIFT) & CMD_INDEX_MASK;
// check for a response
switch (pRequest->CommandResponse.ResponseType) {
case NoResponse:
break;
case ResponseR2:
wRegCommand |= CMD_RESPONSE_R2;
break;
case ResponseR3:
case ResponseR4:
wRegCommand |= CMD_RESPONSE_R3_R4;
break;
case ResponseR1:
case ResponseR5:
case ResponseR6:
case ResponseR7:
wRegCommand |= CMD_RESPONSE_R1_R5_R6_R7;
break;
case ResponseR1b:
wRegCommand |= CMD_RESPONSE_R1B_R5B;
break;
default:
status = SD_API_STATUS_INVALID_PARAMETER;
goto EXIT;
}
…
}
See Also
Concepts
Secure Digital Card Driver Development Concepts
Secure Digital Card Multimedia Card Compatibility
High Capacity Secure Digital Card Common Issues