]> git.proxmox.com Git - mirror_edk2.git/blame - ArmPkg/Library/ArmLib/Arm/ArmV7ArchTimerSupport.asm
ArmPkg/ArmBaseLib: clean up directory structure
[mirror_edk2.git] / ArmPkg / Library / ArmLib / Arm / ArmV7ArchTimerSupport.asm
CommitLineData
3402aac7 1//------------------------------------------------------------------------------\r
da9675a2 2//\r
3// Copyright (c) 2011, ARM Limited. All rights reserved.\r
4//\r
5// This program and the accompanying materials\r
6// are licensed and made available under the terms and conditions of the BSD License\r
7// which accompanies this distribution. The full text of the license may be found at\r
8// http://opensource.org/licenses/bsd-license.php\r
9//\r
10// THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,\r
11// WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.\r
12//\r
13//------------------------------------------------------------------------------\r
14\r
efda1775
EC
15\r
16 INCLUDE AsmMacroExport.inc\r
da9675a2 17 PRESERVE8\r
18\r
efda1775 19 RVCT_ASM_EXPORT ArmReadCntFrq\r
da9675a2 20 mrc p15, 0, r0, c14, c0, 0 ; Read CNTFRQ\r
21 bx lr\r
22\r
efda1775 23 RVCT_ASM_EXPORT ArmWriteCntFrq\r
da9675a2 24 mcr p15, 0, r0, c14, c0, 0 ; Write to CNTFRQ\r
25 bx lr\r
26\r
efda1775 27 RVCT_ASM_EXPORT ArmReadCntPct\r
da9675a2 28 mrrc p15, 0, r0, r1, c14 ; Read CNTPT (Physical counter register)\r
29 bx lr\r
30\r
efda1775 31 RVCT_ASM_EXPORT ArmReadCntkCtl\r
da9675a2 32 mrc p15, 0, r0, c14, c1, 0 ; Read CNTK_CTL (Timer PL1 Control Register)\r
33 bx lr\r
34\r
efda1775 35 RVCT_ASM_EXPORT ArmWriteCntkCtl\r
da9675a2 36 mcr p15, 0, r0, c14, c1, 0 ; Write to CNTK_CTL (Timer PL1 Control Register)\r
37 bx lr\r
38\r
efda1775 39 RVCT_ASM_EXPORT ArmReadCntpTval\r
da9675a2 40 mrc p15, 0, r0, c14, c2, 0 ; Read CNTP_TVAL (PL1 physical timer value register)\r
41 bx lr\r
42\r
efda1775 43 RVCT_ASM_EXPORT ArmWriteCntpTval\r
da9675a2 44 mcr p15, 0, r0, c14, c2, 0 ; Write to CNTP_TVAL (PL1 physical timer value register)\r
45 bx lr\r
46\r
efda1775 47 RVCT_ASM_EXPORT ArmReadCntpCtl\r
da9675a2 48 mrc p15, 0, r0, c14, c2, 1 ; Read CNTP_CTL (PL1 Physical Timer Control Register)\r
49 bx lr\r
50\r
efda1775 51 RVCT_ASM_EXPORT ArmWriteCntpCtl\r
da9675a2 52 mcr p15, 0, r0, c14, c2, 1 ; Write to CNTP_CTL (PL1 Physical Timer Control Register)\r
53 bx lr\r
54\r
efda1775 55 RVCT_ASM_EXPORT ArmReadCntvTval\r
da9675a2 56 mrc p15, 0, r0, c14, c3, 0 ; Read CNTV_TVAL (Virtual Timer Value register)\r
57 bx lr\r
58\r
efda1775 59 RVCT_ASM_EXPORT ArmWriteCntvTval\r
da9675a2 60 mcr p15, 0, r0, c14, c3, 0 ; Write to CNTV_TVAL (Virtual Timer Value register)\r
61 bx lr\r
62\r
efda1775 63 RVCT_ASM_EXPORT ArmReadCntvCtl\r
da9675a2 64 mrc p15, 0, r0, c14, c3, 1 ; Read CNTV_CTL (Virtual Timer Control Register)\r
65 bx lr\r
66\r
efda1775 67 RVCT_ASM_EXPORT ArmWriteCntvCtl\r
da9675a2 68 mcr p15, 0, r0, c14, c3, 1 ; Write to CNTV_CTL (Virtual Timer Control Register)\r
69 bx lr\r
70\r
efda1775 71 RVCT_ASM_EXPORT ArmReadCntvCt\r
da9675a2 72 mrrc p15, 1, r0, r1, c14 ; Read CNTVCT (Virtual Count Register)\r
73 bx lr\r
74\r
efda1775 75 RVCT_ASM_EXPORT ArmReadCntpCval\r
da9675a2 76 mrrc p15, 2, r0, r1, c14 ; Read CNTP_CTVAL (Physical Timer Compare Value Register)\r
77 bx lr\r
78\r
efda1775 79 RVCT_ASM_EXPORT ArmWriteCntpCval\r
da9675a2 80 mcrr p15, 2, r0, r1, c14 ; Write to CNTP_CTVAL (Physical Timer Compare Value Register)\r
81 bx lr\r
82\r
efda1775 83 RVCT_ASM_EXPORT ArmReadCntvCval\r
da9675a2 84 mrrc p15, 3, r0, r1, c14 ; Read CNTV_CTVAL (Virtual Timer Compare Value Register)\r
85 bx lr\r
86\r
efda1775 87 RVCT_ASM_EXPORT ArmWriteCntvCval\r
da9675a2 88 mcrr p15, 3, r0, r1, c14 ; write to CNTV_CTVAL (Virtual Timer Compare Value Register)\r
89 bx lr\r
90\r
efda1775 91 RVCT_ASM_EXPORT ArmReadCntvOff\r
da9675a2 92 mrrc p15, 4, r0, r1, c14 ; Read CNTVOFF (virtual Offset register)\r
93 bx lr\r
94\r
efda1775 95 RVCT_ASM_EXPORT ArmWriteCntvOff\r
da9675a2 96 mcrr p15, 4, r0, r1, c14 ; Write to CNTVOFF (Virtual Offset register)\r
97 bx lr\r
98\r
99 END\r