Home | History | Annotate | Download | only in AtaAtapiPassThru

Lines Matching refs:IdeRegisters

221   @param IdeRegisters     A pointer to EFI_IDE_REGISTERS data structure.

229 IN EFI_IDE_REGISTERS *IdeRegisters,
236 ASSERT (IdeRegisters != NULL);
240 StatusBlock.AtaStatus = IdeReadPortB (PciIo, IdeRegisters->CmdOrStatus);
241 StatusBlock.AtaError = IdeReadPortB (PciIo, IdeRegisters->ErrOrFeature);
242 StatusBlock.AtaSectorCount = IdeReadPortB (PciIo, IdeRegisters->SectorCount);
243 StatusBlock.AtaSectorCountExp = IdeReadPortB (PciIo, IdeRegisters->SectorCount);
244 StatusBlock.AtaSectorNumber = IdeReadPortB (PciIo, IdeRegisters->SectorNumber);
245 StatusBlock.AtaSectorNumberExp = IdeReadPortB (PciIo, IdeRegisters->SectorNumber);
246 StatusBlock.AtaCylinderLow = IdeReadPortB (PciIo, IdeRegisters->CylinderLsb);
247 StatusBlock.AtaCylinderLowExp = IdeReadPortB (PciIo, IdeRegisters->CylinderLsb);
248 StatusBlock.AtaCylinderHigh = IdeReadPortB (PciIo, IdeRegisters->CylinderMsb);
249 StatusBlock.AtaCylinderHighExp = IdeReadPortB (PciIo, IdeRegisters->CylinderMsb);
250 StatusBlock.AtaDeviceHead = IdeReadPortB (PciIo, IdeRegisters->Head);
301 @param IdeRegisters A pointer to EFI_IDE_REGISTERS data structure.
311 IN EFI_IDE_REGISTERS *IdeRegisters
317 ASSERT (IdeRegisters != NULL);
319 StatusRegister = IdeReadPortB (PciIo, IdeRegisters->CmdOrStatus);
337 @param IdeRegisters A pointer to EFI_IDE_REGISTERS data structure.
352 IN EFI_IDE_REGISTERS *IdeRegisters,
361 ASSERT (IdeRegisters != NULL);
371 StatusRegister = IdeReadPortB (PciIo, IdeRegisters->CmdOrStatus);
402 @param IdeRegisters A pointer to EFI_IDE_REGISTERS data structure.
415 IN EFI_IDE_REGISTERS *IdeRegisters,
424 ASSERT (IdeRegisters != NULL);
434 AltRegister = IdeReadPortB (PciIo, IdeRegisters->AltOrDev);
467 @param IdeRegisters A pointer to EFI_IDE_REGISTERS data structure.
490 IN EFI_IDE_REGISTERS *IdeRegisters,
500 ASSERT (IdeRegisters != NULL);
513 StatusRegister = IdeReadPortB (PciIo, IdeRegisters->CmdOrStatus);
520 ErrorRegister = IdeReadPortB (PciIo, IdeRegisters->ErrOrFeature);
551 @param IdeRegisters A pointer to EFI_IDE_REGISTERS data structure.
574 IN EFI_IDE_REGISTERS *IdeRegisters,
584 ASSERT (IdeRegisters != NULL);
598 AltRegister = IdeReadPortB (PciIo, IdeRegisters->AltOrDev);
604 ErrorRegister = IdeReadPortB (PciIo, IdeRegisters->ErrOrFeature);
636 @param IdeRegisters A pointer to EFI_IDE_REGISTERS data structure.
648 IN EFI_IDE_REGISTERS *IdeRegisters,
658 ASSERT (IdeRegisters != NULL);
668 StatusRegister = IdeReadPortB (PciIo, IdeRegisters->CmdOrStatus);
674 ErrorRegister = IdeReadPortB (PciIo, IdeRegisters->ErrOrFeature);
706 @param IdeRegisters A pointer to EFI_IDE_REGISTERS data structure.
719 IN EFI_IDE_REGISTERS *IdeRegisters,
729 ASSERT (IdeRegisters != NULL);
739 AltRegister = IdeReadPortB (PciIo, IdeRegisters->AltOrDev);
745 ErrorRegister = IdeReadPortB (PciIo, IdeRegisters->ErrOrFeature);
776 @param IdeRegisters A pointer to EFI_IDE_REGISTERS data structure.
788 IN EFI_IDE_REGISTERS *IdeRegisters,
797 ASSERT (IdeRegisters != NULL);
807 StatusRegister = IdeReadPortB (PciIo, IdeRegisters->CmdOrStatus);
830 @param IdeRegisters A pointer to EFI_IDE_REGISTERS data structure.
842 IN EFI_IDE_REGISTERS *IdeRegisters,
851 ASSERT (IdeRegisters != NULL);
861 AltStatusRegister = IdeReadPortB (PciIo, IdeRegisters->AltOrDev);
918 @param[in, out] IdeRegisters Pointer to EFI_IDE_REGISTERS which is used to
930 IN OUT EFI_IDE_REGISTERS *IdeRegisters
939 if ((PciIo == NULL) || (IdeRegisters == NULL)) {
976 IdeRegisters[EfiIdePrimary].Data = CommandBlockBaseAddr;
977 IdeRegisters[EfiIdePrimary].ErrOrFeature = (UINT16) (CommandBlockBaseAddr + 0x01);
978 IdeRegisters[EfiIdePrimary].SectorCount = (UINT16) (CommandBlockBaseAddr + 0x02);
979 IdeRegisters[EfiIdePrimary].SectorNumber = (UINT16) (CommandBlockBaseAddr + 0x03);
980 IdeRegisters[EfiIdePrimary].CylinderLsb = (UINT16) (CommandBlockBaseAddr + 0x04);
981 IdeRegisters[EfiIdePrimary].CylinderMsb = (UINT16) (CommandBlockBaseAddr + 0x05);
982 IdeRegisters[EfiIdePrimary].Head = (UINT16) (CommandBlockBaseAddr + 0x06);
983 IdeRegisters[EfiIdePrimary].CmdOrStatus = (UINT16) (CommandBlockBaseAddr + 0x07);
984 IdeRegisters[EfiIdePrimary].AltOrDev = ControlBlockBaseAddr;
985 IdeRegisters[EfiIdePrimary].BusMasterBaseAddr = BusMasterBaseAddr;
1006 IdeRegisters[EfiIdeSecondary].Data = CommandBlockBaseAddr;
1007 IdeRegisters[EfiIdeSecondary].ErrOrFeature = (UINT16) (CommandBlockBaseAddr + 0x01);
1008 IdeRegisters[EfiIdeSecondary].SectorCount = (UINT16) (CommandBlockBaseAddr + 0x02);
1009 IdeRegisters[EfiIdeSecondary].SectorNumber = (UINT16) (CommandBlockBaseAddr + 0x03);
1010 IdeRegisters[EfiIdeSecondary].CylinderLsb = (UINT16) (CommandBlockBaseAddr + 0x04);
1011 IdeRegisters[EfiIdeSecondary].CylinderMsb = (UINT16) (CommandBlockBaseAddr + 0x05);
1012 IdeRegisters[EfiIdeSecondary].Head = (UINT16) (CommandBlockBaseAddr + 0x06);
1013 IdeRegisters[EfiIdeSecondary].CmdOrStatus = (UINT16) (CommandBlockBaseAddr + 0x07);
1014 IdeRegisters[EfiIdeSecondary].AltOrDev = ControlBlockBaseAddr;
1015 IdeRegisters[EfiIdeSecondary].BusMasterBaseAddr = (UINT16) (BusMasterBaseAddr + 0x8);
1032 @param IdeRegisters A pointer to EFI_IDE_REGISTERS data structure.
1045 IN EFI_IDE_REGISTERS *IdeRegisters,
1057 IdeWritePortB (PciIo, IdeRegisters->AltOrDev, DeviceControl);
1069 IdeWritePortB (PciIo, IdeRegisters->AltOrDev, DeviceControl);
1080 if (WaitForBSYClear (PciIo, IdeRegisters, Timeout) == EFI_TIMEOUT) {
1091 @param IdeRegisters A pointer to EFI_IDE_REGISTERS data structure.
1103 IN EFI_IDE_REGISTERS *IdeRegisters,
1113 ASSERT (IdeRegisters != NULL);
1119 Status = WaitForBSYClear (PciIo, IdeRegisters, Timeout);
1127 IdeWritePortB (PciIo, IdeRegisters->Head, (UINT8) (0xe0 | DeviceHead));
1133 Status = DRQClear2 (PciIo, IdeRegisters, Timeout);
1141 IdeWritePortB (PciIo, IdeRegisters->ErrOrFeature, AtaCommandBlock->AtaFeaturesExp);
1142 IdeWritePortB (PciIo, IdeRegisters->ErrOrFeature, AtaCommandBlock->AtaFeatures);
1147 IdeWritePortB (PciIo, IdeRegisters->SectorCount, AtaCommandBlock->AtaSectorCountExp);
1148 IdeWritePortB (PciIo, IdeRegisters->SectorCount, AtaCommandBlock->AtaSectorCount);
1153 IdeWritePortB (PciIo, IdeRegisters->SectorNumber, AtaCommandBlock->AtaSectorNumberExp);
1154 IdeWritePortB (PciIo, IdeRegisters->SectorNumber, AtaCommandBlock->AtaSectorNumber);
1156 IdeWritePortB (PciIo, IdeRegisters->CylinderLsb, AtaCommandBlock->AtaCylinderLowExp);
1157 IdeWritePortB (PciIo, IdeRegisters->CylinderLsb, AtaCommandBlock->AtaCylinderLow);
1159 IdeWritePortB (PciIo, IdeRegisters->CylinderMsb, AtaCommandBlock->AtaCylinderHighExp);
1160 IdeWritePortB (PciIo, IdeRegisters->CylinderMsb, AtaCommandBlock->AtaCylinderHigh);
1165 IdeWritePortB (PciIo, IdeRegisters->CmdOrStatus, AtaCommand);
1180 @param[in] IdeRegisters A pointer to EFI_IDE_REGISTERS data structure.
1201 IN EFI_IDE_REGISTERS *IdeRegisters,
1216 if ((PciIo == NULL) || (IdeRegisters == NULL) || (Buffer == NULL) || (AtaCommandBlock == NULL)) {
1223 Status = AtaIssueCommand (PciIo, IdeRegisters, AtaCommandBlock, Timeout);
1257 Status = DRQReady2 (PciIo, IdeRegisters, Timeout);
1273 IdeRegisters->Data,
1280 IdeRegisters->Data,
1286 Status = CheckStatusRegister (PciIo, IdeRegisters);
1296 Status = DRQClear (PciIo, IdeRegisters, Timeout);
1306 DumpAllIdeRegisters (PciIo, IdeRegisters, AtaStatusBlock);
1319 @param[in] IdeRegisters A pointer to EFI_IDE_REGISTERS data structure.
1336 IN EFI_IDE_REGISTERS *IdeRegisters,
1345 if ((PciIo == NULL) || (IdeRegisters == NULL) || (AtaCommandBlock == NULL)) {
1352 Status = AtaIssueCommand (PciIo, IdeRegisters, AtaCommandBlock, Timeout);
1361 Status = WaitForBSYClear (PciIo, IdeRegisters, Timeout);
1367 Status = CheckStatusRegister (PciIo, IdeRegisters);
1377 DumpAllIdeRegisters (PciIo, IdeRegisters, AtaStatusBlock);
1389 @param[in] IdeRegisters A pointer to EFI_IDE_REGISTERS data structure.
1400 IN EFI_IDE_REGISTERS *IdeRegisters,
1419 Status = CheckStatusRegister (PciIo, IdeRegisters);
1425 IoPortForBmis = (UINT16) (IdeRegisters->BusMasterBaseAddr + BMIS_OFFSET);
1453 @param[in] IdeRegisters A pointer to EFI_IDE_REGISTERS data structure.
1465 IN EFI_IDE_REGISTERS *IdeRegisters
1474 Status = CheckStatusRegister (PciIo, IdeRegisters);
1479 IoPortForBmis = (UINT16) (IdeRegisters->BusMasterBaseAddr + BMIS_OFFSET);
1506 @param[in] IdeRegisters A pointer to EFI_IDE_REGISTERS data structure.
1529 IN EFI_IDE_REGISTERS *IdeRegisters,
1578 if ((PciIo == NULL) || (IdeRegisters == NULL) || (DataBuffer == NULL) || (AtaCommandBlock == NULL)) {
1607 IoPortForBmic = (UINT16) (IdeRegisters->BusMasterBaseAddr + BMIC_OFFSET);
1608 IoPortForBmis = (UINT16) (IdeRegisters->BusMasterBaseAddr + BMIS_OFFSET);
1609 IoPortForBmid = (UINT16) (IdeRegisters->BusMasterBaseAddr + BMID_OFFSET);
1740 IdeWritePortB (PciIo, IdeRegisters->Head, (UINT8)(0xe0 | DeviceHead));
1746 IdeWritePortB (PciIo, IdeRegisters->AltOrDev, DeviceControl);
1782 Status = AtaIssueCommand (PciIo, IdeRegisters, AtaCommandBlock, Timeout);
1789 Status = CheckStatusRegister (PciIo, IdeRegisters);
1807 Status = AtaUdmStatusCheck (PciIo, Task, IdeRegisters);
1809 Status = AtaUdmStatusWait (PciIo, IdeRegisters, Timeout);
1829 RegisterValue = IdeReadPortB(PciIo, IdeRegisters->CmdOrStatus);
1841 DeviceControl = IdeReadPortB (PciIo, IdeRegisters->AltOrDev);
1843 IdeWritePortB (PciIo, IdeRegisters->AltOrDev, DeviceControl);
1869 DumpAllIdeRegisters (PciIo, IdeRegisters, AtaStatusBlock);
1879 @param IdeRegisters A pointer to EFI_IDE_REGISTERS data structure.
1889 IN EFI_IDE_REGISTERS *IdeRegisters
1895 AltRegister = IdeReadPortB (PciIo, IdeRegisters->AltOrDev);
1901 TempWordBuffer = IdeReadPortB (PciIo, IdeRegisters->AltOrDev);
1905 IdeRegisters->Data,
1909 TempWordBuffer = IdeReadPortB (PciIo, IdeRegisters->AltOrDev);
1921 @param IdeRegisters A pointer to EFI_IDE_REGISTERS data structure.
1937 IN EFI_IDE_REGISTERS *IdeRegisters,
1970 Status = DRQReady2 (PciIo, IdeRegisters, Timeout);
1986 WordCount = IdeReadPortB (PciIo, IdeRegisters->CylinderMsb) << 8;
1987 WordCount = WordCount | IdeReadPortB (PciIo, IdeRegisters->CylinderLsb);
1996 IdeRegisters->Data,
2003 IdeRegisters->Data,
2012 Status = CheckStatusRegister (PciIo, IdeRegisters);
2027 AtaPacketReadPendingData (PciIo, IdeRegisters);
2033 Status = CheckStatusRegister (PciIo, IdeRegisters);
2041 Status = DRQClear (PciIo, IdeRegisters, Timeout);
2055 @param[in] IdeRegisters Pointer to EFI_IDE_REGISTERS which is used to
2070 IN EFI_IDE_REGISTERS *IdeRegisters,
2107 IdeWritePortB (PciIo, IdeRegisters->Head, (UINT8)(0xe0 | (Device << 0x4)));
2111 IdeWritePortB (PciIo, IdeRegisters->AltOrDev, ATA_DEFAULT_CTL);
2116 Status = AtaIssueCommand (PciIo, IdeRegisters, &AtaCommandBlock, Packet->Timeout);
2121 Status = DRQReady (PciIo, IdeRegisters, Packet->Timeout);
2130 IdeWritePortW (PciIo, IdeRegisters->Data, *((UINT16*)PacketCommand + Count));
2143 IdeRegisters,
2152 IdeRegisters,
2203 &Instance->IdeRegisters[Channel],
2251 &Instance->IdeRegisters[Channel],
2267 &Instance->IdeRegisters[Channel],
2316 &Instance->IdeRegisters[Channel],
2336 LBAMid = IdeReadPortB (Instance->PciIo, Instance->IdeRegisters[Channel].CylinderLsb);
2337 LBAHigh = IdeReadPortB (Instance->PciIo, Instance->IdeRegisters[Channel].CylinderMsb);
2422 &Instance->IdeRegisters[Channel],
2444 &Instance->IdeRegisters[Channel],
2512 &Instance->IdeRegisters[Channel],
2580 &Instance->IdeRegisters[Channel],
2630 EFI_IDE_REGISTERS *IdeRegisters;
2640 IdeRegisters = &Instance->IdeRegisters[IdeChannel];
2648 IdeWritePortB (PciIo, IdeRegisters->Head, (UINT8)((IdeDevice << 4) | 0xe0));
2654 IdeWritePortB (PciIo, IdeRegisters->CmdOrStatus, ATA_CMD_EXEC_DRIVE_DIAG);
2656 Status = WaitForBSYClear (PciIo, IdeRegisters, 350000000);
2665 IdeWritePortB (PciIo, IdeRegisters->Head, (UINT8)((IdeDevice << 4) | 0xe0));
2671 SectorCountReg = IdeReadPortB (PciIo, IdeRegisters->SectorCount);
2672 LBALowReg = IdeReadPortB (PciIo, IdeRegisters->SectorNumber);
2673 LBAMidReg = IdeReadPortB (PciIo, IdeRegisters->CylinderLsb);
2674 LBAHighReg = IdeReadPortB (PciIo, IdeRegisters->CylinderMsb);
2867 Status = GetIdeRegisterIoAddr (PciIo, Instance->IdeRegisters);