X-Git-Url: https://git.proxmox.com/?p=mirror_edk2.git;a=blobdiff_plain;f=PcAtChipsetPkg%2F8259InterruptControllerDxe%2F8259.c;h=7d8265dbd1da59885114e7e5cad49e5ede5f6bdf;hp=447106afe92ce60eff749a6e5296ec0c7b6c6fee;hb=e78aab9d2f1423f2ec4a82e0e36eff4dfd7c56ea;hpb=3d78c020d22023d35d27b48817d73ff31a361ac7 diff --git a/PcAtChipsetPkg/8259InterruptControllerDxe/8259.c b/PcAtChipsetPkg/8259InterruptControllerDxe/8259.c index 447106afe9..7d8265dbd1 100644 --- a/PcAtChipsetPkg/8259InterruptControllerDxe/8259.c +++ b/PcAtChipsetPkg/8259InterruptControllerDxe/8259.c @@ -123,8 +123,10 @@ Interrupt8259SetVectorBase ( IN UINT8 SlaveBase ) { - UINT8 Mask; + UINT8 Mask; + EFI_TPL OriginalTpl; + OriginalTpl = gBS->RaiseTPL (TPL_HIGH_LEVEL); // // Set vector base for slave PIC // @@ -137,7 +139,7 @@ Interrupt8259SetVectorBase ( // // Preserve interrtup mask register before initialization sequence - // because it will be cleared during intialization + // because it will be cleared during initialization // Mask = IoRead8 (LEGACY_8259_MASK_REGISTER_SLAVE); @@ -179,7 +181,7 @@ Interrupt8259SetVectorBase ( // // Preserve interrtup mask register before initialization sequence - // because it will be cleared during intialization + // because it will be cleared during initialization // Mask = IoRead8 (LEGACY_8259_MASK_REGISTER_MASTER); @@ -211,6 +213,8 @@ Interrupt8259SetVectorBase ( IoWrite8 (LEGACY_8259_CONTROL_REGISTER_SLAVE, LEGACY_8259_EOI); IoWrite8 (LEGACY_8259_CONTROL_REGISTER_MASTER, LEGACY_8259_EOI); + + gBS->RestoreTPL (OriginalTpl); return EFI_SUCCESS; }