Removed FDD_AcquireSpinlock and FDD_FreeSpinlock, replacing them with LOCK() and...
authorJohn Hodge <[email protected]>
Mon, 15 Mar 2010 10:59:52 +0000 (18:59 +0800)
committerJohn Hodge <[email protected]>
Mon, 15 Mar 2010 10:59:52 +0000 (18:59 +0800)
Modules/Storage/FDD/fdd.c

index 229c66a..d56a527 100644 (file)
@@ -94,12 +94,6 @@ Uint FDD_ReadSectors(Uint64 SectorAddr, Uint Count, void *Buffer, Uint Disk);
 void   FDD_IRQHandler(int Num);\r
 void   FDD_WaitIRQ();\r
 void   FDD_SensInt(int base, Uint8 *sr0, Uint8 *cyl);\r
-inline void    FDD_AquireSpinlock();\r
-inline void    FDD_FreeSpinlock();\r
-#if USE_CACHE\r
-inline void FDD_AquireCacheSpinlock();\r
-inline void FDD_FreeCacheSpinlock();\r
-#endif\r
 void   FDD_int_SendByte(int base, char byte);\r
  int   FDD_int_GetByte(int base);\r
 void   FDD_Reset(int id);\r
@@ -385,7 +379,7 @@ int FDD_ReadSector(Uint32 Disk, Uint64 SectorAddr, void *Buffer)
        LOG("Cyl=%i, Head=%i, Sector=%i", cyl, head, sec);\r
        LOG("Acquire Spinlock");\r
        \r
-       FDD_AquireSpinlock();\r
+       LOCK(&glFDD);\r
        \r
        // Seek to track\r
        outb(base + CALIBRATE_DRIVE, 0);\r
@@ -431,7 +425,7 @@ int FDD_ReadSector(Uint32 Disk, Uint64 SectorAddr, void *Buffer)
        \r
        // Release Spinlock\r
        LOG("Realeasing Spinlock and setting motor to stop");\r
-       FDD_FreeSpinlock();\r
+       RELEASE(&glFDD);\r
        \r
        // Don't turn the motor off now, wait for a while\r
        gFDD_Devices[Disk].timer = Time_CreateTimer(MOTOR_OFF_DELAY, FDD_int_StopMotor, (void*)Disk);
@@ -571,16 +565,6 @@ void FDD_SensInt(int base, Uint8 *sr0, Uint8 *cyl)
        else    FDD_int_GetByte(base);\r
 }\r
 \r
-inline void FDD_AquireSpinlock()\r
-{\r
-       LOCK(&glFDD);\r
-}\r
-\r
-inline void FDD_FreeSpinlock()\r
-{\r
-       RELEASE(&glFDD)\r
-}\r
-\r
 /**\r
  * void FDD_int_SendByte(int base, char byte)\r
  * \brief Sends a command to the controller\r
@@ -726,11 +710,13 @@ void FDD_int_StopMotor(int disk)
  */\r
 void ModuleUnload()\r
 {\r
-       int i;\r
-       FDD_AquireSpinlock();\r
+        int    i;\r
+       //DevFS_DelDevice( &gFDD_DriverInfo );\r
+       LOCK(&glFDD);\r
        for(i=0;i<4;i++) {\r
                Time_RemoveTimer(gFDD_Devices[i].timer);\r
                FDD_int_StopMotor(i);\r
        }\r
+       RELEASE(&glFDD);\r
        //IRQ_Clear(6);\r
 }\r

UCC git Repository :: git.ucc.asn.au