Controladores de minipuerto de ATA

Nota:

Los modelos de controlador de puerto ATA y controlador de minipuerto de ATA pueden modificarse o no estar disponibles en el futuro. En su lugar, se recomienda usar el controlador Storport y los modelos de controlador de miniport storport .

Los controladores de minipuerto de ATA funcionan con el controlador de puerto ATA. En esta página se enumeran las rutinas implementadas en los controladores de miniporte de ATA a los que llama el controlador de puerto de ATA. Consulte Rutinas de compatibilidad del controlador de puerto de ATA para obtener una lista de rutinas de controlador de puerto ATA proporcionadas por el sistema a las que pueden llamar los controladores de miniporte de ATA.

Rutinas de interfaz del controlador de ATA

Cada controlador de miniporte proporcionado por el proveedor es necesario para implementar un conjunto de rutinas que definen la interfaz del controlador. Con estas rutinas, el controlador de minipuerto se comunica con el controlador del controlador proporcionado por el sistema, pciidex.sys.

Un controlador de miniporte proporcionado por el proveedor se comunica con el controlador del controlador para inicializar los controladores de puerto y miniporte y para intercambiar parámetros necesarios para configurar el adaptador de bus host (HBA). Si una rutina no se identifica explícitamente en esta sección como opcional, es necesario. Si decide no implementar una rutina opcional, debe asegurarse de que el controlador de miniporte establece los punteros de función correspondientes en la estructura de IDE_CONTROLLER_INTERFACE en NULL.

  • DriverEntry
  • AtaAdapterControl
  • AtaControllerChannelEnabled
  • AtaControllerTransferModeSelect

Rutinas de interfaz de canal de ATA

Los controladores de miniport proporcionados por el proveedor pueden implementar opcionalmente un conjunto de rutinas que definen la interfaz de canal. Con estas rutinas, el controlador de minipuerto puede procesar todas las solicitudes que se envían al hardware. El controlador de minipuerto no debe implementar parcialmente la interfaz de canal. Si el controlador de minipuerto admite la rutina AtaChannelInitRoutine , también debe implementar las siguientes rutinas:

  • AtaChannelInitRoutine
  • IdeHwInitialize
  • IdeHwBuildIo
  • IdeHwStartIo
  • IdeHwInterrupt
  • IdeHwReset
  • IdeHwControl