[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PATCH v2 6/8] target/mips/addr: Add translation helpers for KSEG1
From: |
Jiaxun Yang |
Subject: |
[PATCH v2 6/8] target/mips/addr: Add translation helpers for KSEG1 |
Date: |
Tue, 15 Dec 2020 14:45:06 +0800 |
It's useful for bootloader to do IO opreations.
Signed-off-by: Jiaxun Yang <jiaxun.yang@flygoat.com>
---
target/mips/addr.c | 10 ++++++++++
target/mips/cpu.h | 2 ++
2 files changed, 12 insertions(+)
diff --git a/target/mips/addr.c b/target/mips/addr.c
index 27a6036c45..86f1c129c9 100644
--- a/target/mips/addr.c
+++ b/target/mips/addr.c
@@ -40,6 +40,16 @@ uint64_t cpu_mips_kvm_um_phys_to_kseg0(void *opaque,
uint64_t addr)
return addr | 0x40000000ll;
}
+uint64_t cpu_mips_kseg1_to_phys(void *opaque, uint64_t addr)
+{
+ return addr & 0x1fffffffll;
+}
+
+uint64_t cpu_mips_phys_to_kseg1(void *opaque, uint64_t addr)
+{
+ return (addr & 0x1fffffffll) | 0xffffffffa0000000ll;
+}
+
bool mips_um_ksegs_enabled(void)
{
return mips_um_ksegs;
diff --git a/target/mips/cpu.h b/target/mips/cpu.h
index 3ac21d0e9c..0bb1218a57 100644
--- a/target/mips/cpu.h
+++ b/target/mips/cpu.h
@@ -1303,6 +1303,8 @@ uint64_t cpu_mips_kseg0_to_phys(void *opaque, uint64_t
addr);
uint64_t cpu_mips_phys_to_kseg0(void *opaque, uint64_t addr);
uint64_t cpu_mips_kvm_um_phys_to_kseg0(void *opaque, uint64_t addr);
+uint64_t cpu_mips_kseg1_to_phys(void *opaque, uint64_t addr);
+uint64_t cpu_mips_phys_to_kseg1(void *opaque, uint64_t addr);
bool mips_um_ksegs_enabled(void);
void mips_um_ksegs_enable(void);
--
2.29.2
- [PATCH v2 0/8] MIPS Bootloader helper, Jiaxun Yang, 2020/12/15
- [PATCH v2 1/8] hw/mips: Make bootloader addresses unsgined, Jiaxun Yang, 2020/12/15
- [PATCH v2 2/8] hw/mips/malta: Use address translation helper to calculate bootloader_run_addr, Jiaxun Yang, 2020/12/15
- [PATCH v2 3/8] hw/mips: Use address translation helper to handle ENVP_ADDR, Jiaxun Yang, 2020/12/15
- [PATCH v2 4/8] hw/mips: Add a bootloader helper, Jiaxun Yang, 2020/12/15
- [PATCH v2 6/8] target/mips/addr: Add translation helpers for KSEG1,
Jiaxun Yang <=
- [PATCH v2 5/8] hw/mips: Use bl_gen_kernel_jump to generate bootloaders, Jiaxun Yang, 2020/12/15
- [PATCH v2 7/8] hw/mips/malta: Use bootloader helper to set BAR resgiters, Jiaxun Yang, 2020/12/15
- [PATCH v2 8/8] hw/mips/boston: Use bootloader helper to set GCRs, Jiaxun Yang, 2020/12/15
- Re: [PATCH v2 0/8] MIPS Bootloader helper, Jiaxun Yang, 2020/12/19
- Re: [PATCH v2 0/8] MIPS Bootloader helper, Philippe Mathieu-Daudé, 2020/12/19