diff options
Diffstat (limited to 'firmware')
-rw-r--r-- | firmware/drivers/ata.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/firmware/drivers/ata.c b/firmware/drivers/ata.c index 1dd05133fe..4f4fb4c9b3 100644 --- a/firmware/drivers/ata.c +++ b/firmware/drivers/ata.c | |||
@@ -956,6 +956,8 @@ int ata_hard_reset(void) | |||
956 | { | 956 | { |
957 | int ret; | 957 | int ret; |
958 | 958 | ||
959 | mutex_lock(&ata_mtx); | ||
960 | |||
959 | ata_reset(); | 961 | ata_reset(); |
960 | 962 | ||
961 | /* state HRR2 */ | 963 | /* state HRR2 */ |
@@ -965,6 +967,8 @@ int ata_hard_reset(void) | |||
965 | /* Massage the return code so it is 0 on success and -1 on failure */ | 967 | /* Massage the return code so it is 0 on success and -1 on failure */ |
966 | ret = ret?0:-1; | 968 | ret = ret?0:-1; |
967 | 969 | ||
970 | mutex_unlock(&ata_mtx); | ||
971 | |||
968 | return ret; | 972 | return ret; |
969 | } | 973 | } |
970 | 974 | ||