MdePkg/Library/BaseLib/Ipf/AccessEicr.s File Reference


Detailed Description

IPF specific External Interrupt Control Registers accessing functions
Copyright (c) 2006, Intel Corporation. All rights reserved.

This program and the accompanying materials
are licensed and made available under the terms and conditions of the BSD License
which accompanies this distribution. The full text of the license may be found at
http://opensource.org/licenses/bsd-license.php.
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
Module Name: AccessEicr.s

AsmReadLid
This routine is used to read the value of Local Interrupt ID Register (LID).
Arguments :
On Entry :
Return Value: The current value of LID.
.text
.type AsmReadLid,
.proc AsmReadLid

AsmReadLid::
mov r8 = cr.lid;;
srlz.d;;
br.ret.dpnt b0;;
.endp AsmReadLid

AsmWriteLid
This routine is used to write the value to Local Interrupt ID Register (LID).
Arguments :
On Entry : The value need to be written to LID.
Return Value: The value written to LID.
.text
.type AsmWriteLid,
.proc AsmWriteLid
.regstk 1, 0, 0, 0

AsmWriteLid::
mov cr.lid = in0
mov r8 = in0;;
srlz.d;;
br.ret.dpnt b0;;
.endp AsmWriteLid


AsmReadIvr
This routine is used to read the value of External Interrupt Vector Register (IVR).
Arguments :
On Entry :
Return Value: The current value of IVR.
.text
.type AsmReadIvr,
.proc AsmReadIvr

AsmReadIvr::
mov r8 = cr.ivr;;
srlz.d;;
br.ret.dpnt b0;;
.endp AsmReadIvr


AsmReadTpr
This routine is used to read the value of Task Priority Register (TPR).
Arguments :
On Entry :
Return Value: The current value of TPR.
.text
.type AsmReadTpr,
.proc AsmReadTpr

AsmReadTpr::
mov r8 = cr.tpr;;
br.ret.dpnt b0;;
.endp AsmReadTpr

AsmWriteTpr
This routine is used to write the value to Task Priority Register (TPR).
Arguments :
On Entry : The value need to be written to TPR.
Return Value: The value written to TPR.
.text
.type AsmWriteTpr,
.proc AsmWriteTpr
.regstk 1, 0, 0, 0

AsmWriteTpr::
mov cr.tpr = in0
mov r8 = in0;;
srlz.d;;
br.ret.dpnt b0;;
.endp AsmWriteTpr


AsmWriteEoi
This routine is used to write the value to End of External Interrupt Register (EOI).
Arguments :
On Entry : The value need to be written to EOI.
Return Value: The value written to EOI.
.text
.type AsmWriteEoi,
.proc AsmWriteEoi

AsmWriteEoi::
mov cr.eoi = r0;;
srlz.d;;
br.ret.dpnt b0;;
.endp AsmWriteEoi


AsmReadIrr0
This routine is used to Read the value of External Interrupt Request Register 0 (IRR0).
Arguments :
On Entry :
Return Value: The current value of IRR0.
.text
.type AsmReadIrr0,
.proc AsmReadIrr0

AsmReadIrr0::
mov r8 = cr.irr0;;
br.ret.dpnt b0;;
.endp AsmReadIrr0


AsmReadIrr1
This routine is used to Read the value of External Interrupt Request Register 1 (IRR1).
Arguments :
On Entry :
Return Value: The current value of IRR1.
.text
.type AsmReadIrr1,
.proc AsmReadIrr1

AsmReadIrr1::
mov r8 = cr.irr1;;
br.ret.dpnt b0;;
.endp AsmReadIrr1


AsmReadIrr2
This routine is used to Read the value of External Interrupt Request Register 2 (IRR2).
Arguments :
On Entry :
Return Value: The current value of IRR2.
.text
.type AsmReadIrr2,
.proc AsmReadIrr2

AsmReadIrr2::
mov r8 = cr.irr2;;
br.ret.dpnt b0;;
.endp AsmReadIrr2


AsmReadIrr3
This routine is used to Read the value of External Interrupt Request Register 3 (IRR3).
Arguments :
On Entry :
Return Value: The current value of IRR3.
.text
.type AsmReadIrr3,
.proc AsmReadIrr3

AsmReadIrr3::
mov r8 = cr.irr3;;
br.ret.dpnt b0;;
.endp AsmReadIrr3


AsmReadItv
This routine is used to Read the value of Interval Timer Vector Register (ITV).
Arguments :
On Entry :
Return Value: The current value of ITV.
.text
.type AsmReadItv,
.proc AsmReadItv

AsmReadItv::
mov r8 = cr.itv;;
br.ret.dpnt b0;;
.endp AsmReadItv

AsmWriteItv
This routine is used to write the value to Interval Timer Vector Register (ITV).
Arguments :
On Entry : The value need to be written to ITV
Return Value: The value written to ITV.
.text
.type AsmWriteItv,
.proc AsmWriteItv
.regstk 1, 0, 0, 0

AsmWriteItv::
mov cr.itv = in0
mov r8 = in0;;
srlz.d;;
br.ret.dpnt b0;;
.endp AsmWriteItv


AsmReadPmv
This routine is used to Read the value of Performance Monitoring Vector Register (PMV).
Arguments :
On Entry :
Return Value: The current value of PMV.
.text
.type AsmReadPmv,
.proc AsmReadPmv

AsmReadPmv::
mov r8 = cr.pmv;;
br.ret.dpnt b0;;
.endp AsmReadPmv

AsmWritePmv
This routine is used to write the value to Performance Monitoring Vector Register (PMV).
Arguments :
On Entry : The value need to be written to PMV
Return Value: The value written to PMV.
.text
.type AsmWritePmv,
.proc AsmWritePmv
.regstk 1, 0, 0, 0

AsmWritePmv::
mov cr.pmv = in0
mov r8 = in0;;
srlz.d;;
br.ret.dpnt b0;;
.endp AsmWritePmv


AsmReadCmcv
This routine is used to Read the value of Corrected Machine Check Vector Register (CMCV).
Arguments :
On Entry :
Return Value: The current value of CMCV.
.text
.type AsmReadCmcv,
.proc AsmReadCmcv

AsmReadCmcv::
mov r8 = cr.cmcv;;
br.ret.dpnt b0;;
.endp AsmReadCmcv

AsmWriteCmcv
This routine is used to write the value to Corrected Machine Check Vector Register (CMCV).
Arguments :
On Entry : The value need to be written to CMCV
Return Value: The value written to CMCV.
.text
.type AsmWriteCmcv,
.proc AsmWriteCmcv
.regstk 1, 0, 0, 0

AsmWriteCmcv::
mov cr.cmcv = in0
mov r8 = in0;;
srlz.d;;
br.ret.dpnt b0;;
.endp AsmWriteCmcv


AsmReadLrr0
This routine is used to read the value of Local Redirection Register 0 (LRR0).
Arguments :
On Entry :
Return Value: The current value of LRR0.
.text
.type AsmReadLrr0,
.proc AsmReadLrr0

AsmReadLrr0::
mov r8 = cr.lrr0;;
br.ret.dpnt b0;;
.endp AsmReadLrr0

AsmWriteLrr0
This routine is used to write the value to Local Redirection Register 0 (LRR0).
Arguments :
On Entry : The value need to be written to LRR0.
Return Value: The value written to LRR0.
.text
.type AsmWriteLrr0,
.proc AsmWriteLrr0
.regstk 1, 0, 0, 0

AsmWriteLrr0::
mov cr.lrr0 = in0
mov r8 = in0;;
srlz.d;;
br.ret.dpnt b0;;
.endp AsmWriteLrr0


AsmReadLrr1
This routine is used to read the value of Local Redirection Register 1 (LRR1).
Arguments :
On Entry :
Return Value: The current value of LRR1.
.text
.type AsmReadLrr1,
.proc AsmReadLrr1

AsmReadLrr1::
mov r8 = cr.lrr1;;
br.ret.dpnt b0;;
.endp AsmReadLrr1

AsmWriteLrr1
This routine is used to write the value to Local Redirection Register 1 (LRR1).
Arguments :
On Entry : The value need to be written to LRR1.
Return Value: The value written to LRR1.
.text
.type AsmWriteLrr1,
.proc AsmWriteLrr1
.regstk 1, 0, 0, 0

AsmWriteLrr1::
mov cr.lrr1 = in0
mov r8 = in0;;
srlz.d;;
br.ret.dpnt b0;;
.endp AsmWriteLrr1



Generated on Thu Sep 24 23:14:22 2015 for MdePkg[ALL] by  doxygen 1.5.7.1