summaryrefslogtreecommitdiffstats
path: root/MdePkg/Library/BaseLib/RiscV64/RiscVCacheMgmt.S
blob: 4752aa72d95e446fa05239ebeac34df15a66eafe (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
//------------------------------------------------------------------------------
//
// RISC-V cache operation.
//
// Copyright (c) 2020, Hewlett Packard Enterprise Development LP. All rights reserved.<BR>
// Copyright (c) 2023, Rivos Inc. All rights reserved.<BR>
//
// SPDX-License-Identifier: BSD-2-Clause-Patent
//
//------------------------------------------------------------------------------
.include "RiscVasm.inc"

.align 3
ASM_GLOBAL ASM_PFX(RiscVInvalidateInstCacheFenceAsm)
ASM_GLOBAL ASM_PFX(RiscVInvalidateDataCacheFenceAsm)

ASM_PFX(RiscVInvalidateInstCacheFenceAsm):
    fence.i
    ret

ASM_PFX(RiscVInvalidateDataCacheFenceAsm):
    fence
    ret

ASM_GLOBAL ASM_PFX (RiscVCpuCacheFlushCmoAsm)
ASM_PFX (RiscVCpuCacheFlushCmoAsm):
    RISCVCMOFLUSH
    ret

ASM_GLOBAL ASM_PFX (RiscVCpuCacheCleanCmoAsm)
ASM_PFX (RiscVCpuCacheCleanCmoAsm):
    RISCVCMOCLEAN
    ret

ASM_GLOBAL ASM_PFX (RiscVCpuCacheInvalCmoAsm)
ASM_PFX (RiscVCpuCacheInvalCmoAsm):
    RISCVCMOINVALIDATE
    ret