gBS->FreePool (WorkingBuffer);\r
}\r
\r
-/**\r
- TODO: Add function description\r
-\r
- @param IdeDev TODO: add argument description\r
-\r
- TODO: add return values\r
-\r
-**/\r
-BOOLEAN\r
-BadIdeDeviceCheck (\r
- IN IDE_BLK_IO_DEV *IdeDev\r
- )\r
-{\r
- //\r
- // check whether all registers return 0xff,\r
- // if so, deem the channel is disabled.\r
- //\r
-#ifdef EFI_DEBUG\r
-\r
- if (IDEReadPortB (IdeDev->PciIo, IdeDev->IoPort->Data) != 0xff) {\r
- return FALSE;\r
- }\r
-\r
- if (IDEReadPortB (IdeDev->PciIo, IdeDev->IoPort->Reg1.Feature) != 0xff) {\r
- return FALSE;\r
- }\r
-\r
- if (IDEReadPortB (IdeDev->PciIo, IdeDev->IoPort->SectorCount) != 0xff) {\r
- return FALSE;\r
- }\r
-\r
- if (IDEReadPortB (IdeDev->PciIo, IdeDev->IoPort->SectorNumber) != 0xff) {\r
- return FALSE;\r
- }\r
-\r
- if (IDEReadPortB (IdeDev->PciIo, IdeDev->IoPort->CylinderLsb) != 0xff) {\r
- return FALSE;\r
- }\r
-\r
- if (IDEReadPortB (IdeDev->PciIo, IdeDev->IoPort->CylinderMsb) != 0xff) {\r
- return FALSE;\r
- }\r
-\r
- if (IDEReadPortB (IdeDev->PciIo, IdeDev->IoPort->Head) != 0xff) {\r
- return FALSE;\r
- }\r
-\r
- if (IDEReadPortB (IdeDev->PciIo, IdeDev->IoPort->Reg.Command) != 0xff) {\r
- return FALSE;\r
- }\r
-\r
- if (IDEReadPortB (IdeDev->PciIo, IdeDev->IoPort->Alt.AltStatus) != 0xff) {\r
- return FALSE;\r
- }\r
-\r
- return TRUE;\r
-\r
-#else\r
-\r
- return FALSE;\r
-\r
-#endif\r
-}\r
-\r
//\r
// GetIdeRegistersBaseAddr\r
//\r