mirror of
https://github.com/Motorhead1991/qemu.git
synced 2025-08-06 09:13:55 -06:00
exec: Make ldq/ldub_*_phys input an AddressSpace
Reviewed-by: Peter Maydell <peter.maydell@linaro.org> Signed-off-by: Edgar E. Iglesias <edgar.iglesias@xilinx.com>
This commit is contained in:
parent
fdfba1a298
commit
2c17449b30
25 changed files with 184 additions and 136 deletions
|
@ -3036,6 +3036,7 @@ static int get_phys_addr_lpae(CPUARMState *env, uint32_t address,
|
|||
hwaddr *phys_ptr, int *prot,
|
||||
target_ulong *page_size_ptr)
|
||||
{
|
||||
CPUState *cs = ENV_GET_CPU(env);
|
||||
/* Read an LPAE long-descriptor translation table. */
|
||||
MMUFaultType fault_type = translation_fault;
|
||||
uint32_t level = 1;
|
||||
|
@ -3124,7 +3125,7 @@ static int get_phys_addr_lpae(CPUARMState *env, uint32_t address,
|
|||
uint64_t descriptor;
|
||||
|
||||
descaddr |= ((address >> (9 * (4 - level))) & 0xff8);
|
||||
descriptor = ldq_phys(descaddr);
|
||||
descriptor = ldq_phys(cs->as, descaddr);
|
||||
if (!(descriptor & 1) ||
|
||||
(!(descriptor & 2) && (level == 3))) {
|
||||
/* Invalid, or the Reserved level 3 encoding */
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue