#------------------------------------------------------------------------------
#
# LoongArch interrupt enable operations
#
# Copyright (c) 2024, Loongson Technology Corporation Limited. All rights reserved.<BR>
#
# SPDX-License-Identifier: BSD-2-Clause-Patent
#
#------------------------------------------------------------------------------

#include <Base.h>
#include <Register/LoongArch64/Csr.h>

ASM_GLOBAL ASM_PFX(EnableLocalInterrupts)
ASM_GLOBAL ASM_PFX(EnableInterrupts)

#/**
#  Enables local CPU interrupts.
#
#  @param  Needs to enable local interrupt bit.
#**/
ASM_PFX(EnableLocalInterrupts):
  csrxchg $a0, $a0, LOONGARCH_CSR_ECFG
  jirl    $zero, $ra, 0

#/**
#  Enables global CPU interrupts.
#**/
ASM_PFX(EnableInterrupts):
  li.w    $t0, BIT2
  csrxchg $t0, $t0, LOONGARCH_CSR_CRMD
  jirl    $zero, $ra, 0
  .end
