UINT8 PollingInterval;\r
UINT8 PacketSize;\r
BOOLEAN Found;\r
+ EFI_TPL OldTpl;\r
\r
+ OldTpl = gBS->RaiseTPL (TPL_CALLBACK);\r
//\r
// Open USB I/O Protocol\r
//\r
EFI_OPEN_PROTOCOL_BY_DRIVER\r
);\r
if (EFI_ERROR (Status)) {\r
- return Status;\r
+ goto ErrorExit1;\r
}\r
\r
UsbKeyboardDevice = AllocateZeroPool (sizeof (USB_KB_DEV));\r
FALSE\r
);\r
\r
+ gBS->RestoreTPL (OldTpl);\r
return EFI_SUCCESS;\r
\r
//\r
This->DriverBindingHandle,\r
Controller\r
);\r
+\r
+ErrorExit1:\r
+ gBS->RestoreTPL (OldTpl);\r
+\r
return Status;\r
\r
}\r
UINT8 MaxLun;\r
EFI_STATUS Status;\r
EFI_USB_IO_PROTOCOL *UsbIo; \r
- \r
+ EFI_TPL OldTpl;\r
+\r
+ OldTpl = gBS->RaiseTPL (TPL_CALLBACK);\r
+\r
Transport = NULL;\r
Context = NULL;\r
MaxLun = 0;\r
\r
if (EFI_ERROR (Status)) {\r
DEBUG ((EFI_D_ERROR, "USBMassDriverBindingStart: UsbMassInitTransport (%r)\n", Status));\r
- return Status;\r
+ goto Exit;\r
}\r
if (MaxLun == 0) {\r
//\r
\r
if (EFI_ERROR (Status)) {\r
DEBUG ((EFI_D_ERROR, "USBMassDriverBindingStart: OpenDevicePathProtocol By Driver (%r)\n", Status));\r
- return Status;\r
+ goto Exit;\r
}\r
\r
Status = gBS->OpenProtocol (\r
This->DriverBindingHandle,\r
Controller\r
);\r
- return Status;\r
+ goto Exit;\r
}\r
\r
//\r
DEBUG ((EFI_D_ERROR, "USBMassDriverBindingStart: UsbMassInitMultiLun (%r) with Maxlun=%d\n", Status, MaxLun));\r
}\r
}\r
+Exit:\r
+ gBS->RestoreTPL (OldTpl);\r
return Status;\r
}\r
\r
UINT8 PollingInterval;\r
UINT8 PacketSize;\r
BOOLEAN Found;\r
+ EFI_TPL OldTpl;\r
\r
+ OldTpl = gBS->RaiseTPL (TPL_CALLBACK);\r
//\r
// Open USB I/O Protocol\r
//\r
EFI_OPEN_PROTOCOL_BY_DRIVER \r
);\r
if (EFI_ERROR (Status)) {\r
- return Status;\r
+ goto ErrorExit1;\r
}\r
\r
UsbMouseAbsolutePointerDevice = AllocateZeroPool (sizeof (USB_MOUSE_ABSOLUTE_POINTER_DEV));\r
FALSE\r
);\r
\r
+ gBS->RestoreTPL (OldTpl);\r
return EFI_SUCCESS;\r
\r
//\r
}\r
}\r
\r
+ErrorExit1:\r
+ gBS->RestoreTPL (OldTpl);\r
+\r
return Status;\r
}\r
\r
UINT8 PollingInterval;\r
UINT8 PacketSize;\r
BOOLEAN Found;\r
+ EFI_TPL OldTpl;\r
\r
+ OldTpl = gBS->RaiseTPL (TPL_CALLBACK);\r
//\r
// Open USB I/O Protocol\r
//\r
EFI_OPEN_PROTOCOL_BY_DRIVER\r
);\r
if (EFI_ERROR (Status)) {\r
- return Status;\r
+ goto ErrorExit1;\r
}\r
\r
UsbMouseDevice = AllocateZeroPool (sizeof (USB_MOUSE_DEV));\r
FALSE\r
);\r
\r
+ gBS->RestoreTPL (OldTpl);\r
+\r
return EFI_SUCCESS;\r
\r
//\r
}\r
}\r
\r
+ErrorExit1:\r
+ gBS->RestoreTPL (OldTpl);\r
return Status;\r
}\r
\r
{\r
EFI_STATUS Status;\r
DISK_IO_PRIVATE_DATA *Private;\r
+ EFI_TPL OldTpl;\r
\r
+ OldTpl = gBS->RaiseTPL (TPL_CALLBACK);\r
Private = NULL;\r
\r
//\r
EFI_OPEN_PROTOCOL_BY_DRIVER\r
);\r
if (EFI_ERROR (Status)) {\r
- return Status;\r
+ goto ErrorExit1;\r
}\r
\r
//\r
);\r
}\r
\r
+ErrorExit1:\r
+ gBS->RestoreTPL (OldTpl);\r
return Status;\r
}\r
\r
EFI_DEVICE_PATH_PROTOCOL *ParentDevicePath;\r
PARTITION_DETECT_ROUTINE *Routine;\r
BOOLEAN MediaPresent;\r
+ EFI_TPL OldTpl;\r
\r
+ OldTpl = gBS->RaiseTPL (TPL_CALLBACK); \r
//\r
// Check RemainingDevicePath validation\r
//\r
// if yes, return EFI_SUCCESS\r
//\r
if (IsDevicePathEnd (RemainingDevicePath)) {\r
- return EFI_SUCCESS;\r
+ Status = EFI_SUCCESS;\r
+ goto Exit;\r
}\r
}\r
\r
EFI_OPEN_PROTOCOL_GET_PROTOCOL\r
);\r
if (EFI_ERROR (Status)) {\r
- return Status;\r
+ goto Exit;\r
}\r
//\r
// Get the Device Path Protocol on ControllerHandle's handle\r
EFI_OPEN_PROTOCOL_BY_DRIVER\r
);\r
if (EFI_ERROR (Status) && Status != EFI_ALREADY_STARTED) {\r
- return Status;\r
+ goto Exit;\r
}\r
\r
Status = gBS->OpenProtocol (\r
This->DriverBindingHandle,\r
ControllerHandle\r
);\r
- return Status;\r
+ goto Exit;\r
}\r
\r
OpenStatus = Status;\r
);\r
}\r
\r
+Exit:\r
+ gBS->RestoreTPL (OldTpl);\r
return Status;\r
}\r
\r