Richard Henderson
aa9f21b1f0
target/i386: Split out check_vm86_iopl
...
Signed-off-by: Richard Henderson <richard.henderson@linaro.org >
Reviewed-by: Paolo Bonzini <pbonzini@redhat.com >
Message-Id: <20210514151342.384376-5-richard.henderson@linaro.org >
2021-05-19 12:15:46 -05:00
Richard Henderson
e048f3d6b9
target/i386: Unify code paths for IRET
...
In vm86 mode, we use the same helper as real-mode, but with
an extra check for IOPL. All non-exceptional paths set EFLAGS.
Signed-off-by: Richard Henderson <richard.henderson@linaro.org >
Reviewed-by: Paolo Bonzini <pbonzini@redhat.com >
Message-Id: <20210514151342.384376-4-richard.henderson@linaro.org >
2021-05-19 12:15:46 -05:00
Richard Henderson
bc19f5052d
target/i386: Split out check_cpl0
...
Split out the check for CPL != 0 and the raising of #GP.
Signed-off-by: Richard Henderson <richard.henderson@linaro.org >
Reviewed-by: Paolo Bonzini <pbonzini@redhat.com >
Message-Id: <20210514151342.384376-3-richard.henderson@linaro.org >
2021-05-19 12:15:46 -05:00
Richard Henderson
6bd9958645
target/i386: Split out gen_exception_gpf
...
Signed-off-by: Richard Henderson <richard.henderson@linaro.org >
Reviewed-by: Paolo Bonzini <pbonzini@redhat.com >
Message-Id: <20210514151342.384376-2-richard.henderson@linaro.org >
2021-05-19 12:15:46 -05:00
Peter Maydell
d874bc0816
Merge remote-tracking branch 'remotes/kevin/tags/for-upstream' into staging
...
Block layer patches
- vhost-user-blk: Fix error handling during initialisation
- Add test cases for the vhost-user-blk export
- Fix leaked Transaction objects
- qcow2: Expose dirty bit in 'qemu-img info'
# gpg: Signature made Tue 18 May 2021 11:57:46 BST
# gpg: using RSA key DC3DEB159A9AF95D3D7456FE7F09B272C88F2FD6
# gpg: issuer "kwolf@redhat.com "
# gpg: Good signature from "Kevin Wolf <kwolf@redhat.com >" [full]
# Primary key fingerprint: DC3D EB15 9A9A F95D 3D74 56FE 7F09 B272 C88F 2FD6
* remotes/kevin/tags/for-upstream:
vhost-user-blk: Check that num-queues is supported by backend
virtio: Fail if iommu_platform is requested, but unsupported
vhost-user-blk: Get more feature flags from vhost device
vhost-user-blk: Improve error reporting in realize
vhost-user-blk: Don't reconnect during initialisation
vhost-user-blk: Make sure to set Error on realize failure
vhost-user-blk-test: test discard/write zeroes invalid inputs
tests/qtest: add multi-queue test case to vhost-user-blk-test
test: new qTest case to test the vhost-user-blk-server
block/export: improve vu_blk_sect_range_ok()
block: Fix Transaction leak in bdrv_reopen_multiple()
block: Fix Transaction leak in bdrv_root_attach_child()
qcow2: set bdi->is_dirty
Signed-off-by: Peter Maydell <peter.maydell@linaro.org >
2021-05-19 16:10:35 +01:00
Richard Henderson
e543f94685
target/ppc: Remove type argument for mmubooke206_get_physical_address
...
It is no longer used.
Signed-off-by: Richard Henderson <richard.henderson@linaro.org >
Message-Id: <20210518201146.794854-16-richard.henderson@linaro.org >
Signed-off-by: David Gibson <david@gibson.dropbear.id.au >
2021-05-19 12:52:07 +10:00
Richard Henderson
5507d62609
target/ppc: Remove type argument from mmubooke206_check_tlb
...
We can now use MMU_INST_FETCH from access_type for this.
Unify the I/D code paths, making use of prot_for_access_type.
Signed-off-by: Richard Henderson <richard.henderson@linaro.org >
Message-Id: <20210518201146.794854-15-richard.henderson@linaro.org >
Signed-off-by: David Gibson <david@gibson.dropbear.id.au >
2021-05-19 12:52:07 +10:00
Richard Henderson
40079604ae
target/ppc: Remove type argument from mmubooke_get_physical_address
...
It is no longer used.
Signed-off-by: Richard Henderson <richard.henderson@linaro.org >
Message-Id: <20210518201146.794854-14-richard.henderson@linaro.org >
Signed-off-by: David Gibson <david@gibson.dropbear.id.au >
2021-05-19 12:52:07 +10:00
Richard Henderson
05c3ef1451
target/ppc: Remove type argument from mmubooke_check_tlb
...
We can now use MMU_INST_FETCH from access_type for this.
Unify the I/D code paths, making use of prot_for_access_type.
Signed-off-by: Richard Henderson <richard.henderson@linaro.org >
Message-Id: <20210518201146.794854-13-richard.henderson@linaro.org >
Signed-off-by: David Gibson <david@gibson.dropbear.id.au >
2021-05-19 12:52:07 +10:00
Richard Henderson
61d2cde867
target/ppc: Remove type argument from mmu40x_get_physical_address
...
It is no longer used.
Signed-off-by: Richard Henderson <richard.henderson@linaro.org >
Message-Id: <20210518201146.794854-12-richard.henderson@linaro.org >
Signed-off-by: David Gibson <david@gibson.dropbear.id.au >
2021-05-19 12:52:07 +10:00
Richard Henderson
590fc3c01d
target/ppc: Remove type argument from get_bat_6xx_tlb
...
We can now use MMU_INST_FETCH from access_type for this.
Signed-off-by: Richard Henderson <richard.henderson@linaro.org >
Message-Id: <20210518201146.794854-11-richard.henderson@linaro.org >
Signed-off-by: David Gibson <david@gibson.dropbear.id.au >
2021-05-19 12:52:07 +10:00
Richard Henderson
f3f5794d79
target/ppc: Remove type argument from ppc6xx_tlb_check
...
We can now use MMU_INST_FETCH from access_type for this.
Signed-off-by: Richard Henderson <richard.henderson@linaro.org >
Message-Id: <20210518201146.794854-10-richard.henderson@linaro.org >
Signed-off-by: David Gibson <david@gibson.dropbear.id.au >
2021-05-19 12:52:07 +10:00
Richard Henderson
574c5585e3
target/ppc: Remove type argument from ppc6xx_tlb_pte_check
...
It is no longer used.
Signed-off-by: Richard Henderson <richard.henderson@linaro.org >
Message-Id: <20210518201146.794854-9-richard.henderson@linaro.org >
Signed-off-by: David Gibson <david@gibson.dropbear.id.au >
2021-05-19 12:52:07 +10:00
Richard Henderson
91e615a07d
target/ppc: Remove type argument from check_prot
...
We can now use MMU_INST_FETCH from access_type for this.
Use prot_for_access_type to simplify everything.
Signed-off-by: Richard Henderson <richard.henderson@linaro.org >
Message-Id: <20210518201146.794854-8-richard.henderson@linaro.org >
[dwg: Remove a stray trailing whitespace]
Signed-off-by: David Gibson <david@gibson.dropbear.id.au >
2021-05-19 12:51:51 +10:00
Richard Henderson
9630cd6262
target/ppc: Use MMUAccessType in mmu_helper.c
...
This replaces 'int rw' with 'MMUAccessType access_type'.
Comparisons vs zero become either MMU_DATA_LOAD or MMU_DATA_STORE,
since we had previously squashed rw to 0 for code access.
Signed-off-by: Richard Henderson <richard.henderson@linaro.org >
Message-Id: <20210518201146.794854-7-richard.henderson@linaro.org >
Signed-off-by: David Gibson <david@gibson.dropbear.id.au >
2021-05-19 12:50:47 +10:00
Richard Henderson
352e3627b2
target/ppc: Rename access_type to type in mmu_helper.c
...
The variable that holds ACCESS_INT, ACCESS_FLOAT, etc is
variously called 'int type' or 'int access_type' within
this file. Standardize on 'int type' throughout.
Signed-off-by: Richard Henderson <richard.henderson@linaro.org >
Message-Id: <20210518201146.794854-6-richard.henderson@linaro.org >
Signed-off-by: David Gibson <david@gibson.dropbear.id.au >
2021-05-19 12:50:47 +10:00
Richard Henderson
31fa64ecfd
target/ppc: Use MMUAccessType in mmu-hash32.c
...
We must leave the 'int rwx' parameter to ppc_hash32_handle_mmu_fault
for now, but will clean that up later.
Signed-off-by: Richard Henderson <richard.henderson@linaro.org >
Message-Id: <20210518201146.794854-5-richard.henderson@linaro.org >
Signed-off-by: David Gibson <david@gibson.dropbear.id.au >
2021-05-19 12:50:47 +10:00
Richard Henderson
59dec5bf5a
target/ppc: Use MMUAccessType in mmu-hash64.c
...
We must leave the 'int rwx' parameter to ppc_hash64_handle_mmu_fault
for now, but will clean that up later.
Signed-off-by: Ricgard Henderson <richard.henderson@linaro.org >
Message-Id: <20210518201146.794854-4-richard.henderson@linaro.org >
Signed-off-by: David Gibson <david@gibson.dropbear.id.au >
2021-05-19 12:50:47 +10:00
Richard Henderson
13c5fdbac6
target/ppc: Use MMUAccessType in mmu-radix64.c
...
We must leave the 'int rwx' parameter to ppc_radix64_handle_mmu_fault
for now, but will clean that up later.
Signed-off-by: Richard Henderson <richard.henderson@linaro.org >
Message-Id: <20210518201146.794854-3-richard.henderson@linaro.org >
Signed-off-by: David Gibson <david@gibson.dropbear.id.au >
2021-05-19 12:50:47 +10:00
Richard Henderson
182357dbb6
target/ppc: Introduce prot_for_access_type
...
Use this in the three places we currently have a local array
indexed by rwx (which happens to have the same values).
The types will match up correctly with additional changes.
Signed-off-by: Richard Henderson <richard.henderson@linaro.org >
Message-Id: <20210518201146.794854-2-richard.henderson@linaro.org >
Signed-off-by: David Gibson <david@gibson.dropbear.id.au >
2021-05-19 12:50:47 +10:00
Giuseppe Musacchio
861f10fd52
target/ppc: Fix load endianness for lxvwsx/lxvdsx
...
TARGET_WORDS_BIGENDIAN may not match the machine endianness if that's a
runtime-configurable parameter.
Fixes: bcb0b7b1a1
Fixes: afae37d98a
Resolves: https://gitlab.com/qemu-project/qemu/-/issues/212
Signed-off-by: Giuseppe Musacchio <thatlemon@gmail.com >
Message-Id: <20210518133020.58927-1-thatlemon@gmail.com >
Tested-by: Paul A. Clarke <pc@us.ibm.com >
Signed-off-by: David Gibson <david@gibson.dropbear.id.au >
2021-05-19 10:44:04 +10:00
Richard Henderson
51eb7b1d10
target/ppc: Use translator_loop_temp_check
...
The special logging is unnecessary. It will have been done
immediately before in the log file.
Signed-off-by: Richard Henderson <richard.henderson@linaro.org >
Signed-off-by: Matheus Ferst <matheus.ferst@eldorado.org.br >
Reviewed-by: Bruno Larsen (billionai) <bruno.larsen@eldorado.org.br >
Message-Id: <20210517205025.3777947-9-matheus.ferst@eldorado.org.br >
Signed-off-by: David Gibson <david@gibson.dropbear.id.au >
2021-05-19 10:30:29 +10:00
Richard Henderson
46a0add975
target/ppc: Mark helper_raise_exception* as noreturn
...
Signed-off-by: Richard Henderson <richard.henderson@linaro.org >
Signed-off-by: Matheus Ferst <matheus.ferst@eldorado.org.br >
Message-Id: <20210517205025.3777947-8-matheus.ferst@eldorado.org.br >
Signed-off-by: David Gibson <david@gibson.dropbear.id.au >
2021-05-19 10:30:29 +10:00
Richard Henderson
0032dbdb41
target/ppc: Tidy exception vs exit_tb
...
We do not need to emit an exit_tb after an exception,
as the latter will exit via longjmp.
Signed-off-by: Richard Henderson <richard.henderson@linaro.org >
Signed-off-by: Matheus Ferst <matheus.ferst@eldorado.org.br >
Message-Id: <20210517205025.3777947-7-matheus.ferst@eldorado.org.br >
Signed-off-by: David Gibson <david@gibson.dropbear.id.au >
2021-05-19 10:30:29 +10:00
Richard Henderson
13b4557567
target/ppc: Move single-step check to ppc_tr_tb_stop
...
When single-stepping, force max_insns to 1 in init_disas
so that we exit the translation loop immediately.
Combine the single-step checks in tb_stop, and give the
gdb exception priority over the cpu exception, just as
we already do in gen_lookup_and_goto_ptr.
Signed-off-by: Richard Henderson <richard.henderson@linaro.org >
Signed-off-by: Matheus Ferst <matheus.ferst@eldorado.org.br >
Message-Id: <20210517205025.3777947-6-matheus.ferst@eldorado.org.br >
Signed-off-by: David Gibson <david@gibson.dropbear.id.au >
2021-05-19 10:30:29 +10:00
Richard Henderson
7a3fe174b1
target/ppc: Remove DisasContext.exception
...
Now that we have removed all of the fake exceptions, and all real
exceptions exit via DISAS_NORETURN, we can remove this field.
Signed-off-by: Richard Henderson <richard.henderson@linaro.org >
Signed-off-by: Matheus Ferst <matheus.ferst@eldorado.org.br >
Message-Id: <20210517205025.3777947-5-matheus.ferst@eldorado.org.br >
Signed-off-by: David Gibson <david@gibson.dropbear.id.au >
2021-05-19 10:30:29 +10:00
Richard Henderson
6086c751c3
target/ppc: Replace POWERPC_EXCP_BRANCH with DISAS_NORETURN
...
The translation of branch instructions always results in exit from
the TB. Remove the synthetic "exception" after no more uses.
Signed-off-by: Richard Henderson <richard.henderson@linaro.org >
Signed-off-by: Matheus Ferst <matheus.ferst@eldorado.org.br >
Message-Id: <20210517205025.3777947-4-matheus.ferst@eldorado.org.br >
Signed-off-by: David Gibson <david@gibson.dropbear.id.au >
2021-05-19 10:30:29 +10:00
Richard Henderson
d736de8ff6
target/ppc: Replace POWERPC_EXCP_STOP with DISAS_EXIT_UPDATE
...
Remove the synthetic "exception" after no more uses.
Signed-off-by: Richard Henderson <richard.henderson@linaro.org >
Signed-off-by: Matheus Ferst <matheus.ferst@eldorado.org.br >
Message-Id: <20210517205025.3777947-3-matheus.ferst@eldorado.org.br >
Signed-off-by: David Gibson <david@gibson.dropbear.id.au >
2021-05-19 10:30:29 +10:00
Richard Henderson
f5b6daacd6
target/ppc: Introduce gen_icount_io_start
...
Create a function to handle the details for interacting with icount.
Force the exit from the tb via DISAS_TOO_MANY, which allows chaining
to the next tb, where the code emitted for gen_tb_start() will
determine if we must exit. We can thus remove any matching
conditional call to gen_stop_exception.
Signed-off-by: Richard Henderson <richard.henderson@linaro.org >
Signed-off-by: Matheus Ferst <matheus.ferst@eldorado.org.br >
Message-Id: <20210517205025.3777947-2-matheus.ferst@eldorado.org.br >
Signed-off-by: David Gibson <david@gibson.dropbear.id.au >
2021-05-19 10:30:29 +10:00
Richard Henderson
a68cf3a520
target/ppc: Remove unnecessary gen_io_end calls
...
Since ba3e792669 , we switched the implementation of icount
to always reset can_do_io at the start of the following TB.
Most of them were removed in 9e9b10c649 , but some were missed.
Signed-off-by: Richard Henderson <richard.henderson@linaro.org >
Signed-off-by: Matheus Ferst <matheus.ferst@eldorado.org.br >
Message-Id: <20210512185441.3619828-10-matheus.ferst@eldorado.org.br >
Signed-off-by: David Gibson <david@gibson.dropbear.id.au >
2021-05-19 10:30:28 +10:00
Richard Henderson
59bf23faf5
target/ppc: Replace POWERPC_EXCP_SYNC with DISAS_EXIT
...
Remove the synthetic "exception" after no more uses.
Signed-off-by: Richard Henderson <richard.henderson@linaro.org >
Signed-off-by: Matheus Ferst <matheus.ferst@eldorado.org.br >
Message-Id: <20210512185441.3619828-9-matheus.ferst@eldorado.org.br >
Reviewed-by: Bruno Larsen (billionai) <bruno.larsen@eldorado.org.br >
Signed-off-by: David Gibson <david@gibson.dropbear.id.au >
2021-05-19 10:30:28 +10:00
Richard Henderson
a9b5b3d06c
target/ppc: Introduce DISAS_{EXIT,CHAIN}{,_UPDATE}
...
Rewrite ppc_tr_tb_stop to handle these new codes.
Convert ctx->exception into these new codes at the end of
ppc_tr_translate_insn, prior to pushing the change back
throughout translate.c.
Signed-off-by: Richard Henderson <richard.henderson@linaro.org >
Signed-off-by: Matheus Ferst <matheus.ferst@eldorado.org.br >
Message-Id: <20210512185441.3619828-8-matheus.ferst@eldorado.org.br >
Signed-off-by: David Gibson <david@gibson.dropbear.id.au >
2021-05-19 10:30:28 +10:00
Richard Henderson
2736fc6181
target/ppc: Simplify gen_debug_exception
...
Two of the call sites that use gen_debug_exception have already
updated NIP. Only ppc_tr_breakpoint_check requires the update.
Signed-off-by: Richard Henderson <richard.henderson@linaro.org >
Signed-off-by: Matheus Ferst <matheus.ferst@eldorado.org.br >
Message-Id: <20210512185441.3619828-7-matheus.ferst@eldorado.org.br >
Signed-off-by: David Gibson <david@gibson.dropbear.id.au >
2021-05-19 10:30:28 +10:00
Richard Henderson
506fadcfd7
target/ppc: Remove special case for POWERPC_EXCP_TRAP
...
Since POWERPC_EXCP_TRAP is raised by gen_exception_err,
we will have also set DISAS_NORETURN.
Signed-off-by: Richard Henderson <richard.henderson@linaro.org >
Reviewed-by: Luis Pires <luis.pires@eldorado.org.br >
Signed-off-by: Matheus Ferst <matheus.ferst@eldorado.org.br >
Message-Id: <20210512185441.3619828-6-matheus.ferst@eldorado.org.br >
Signed-off-by: David Gibson <david@gibson.dropbear.id.au >
2021-05-19 10:30:28 +10:00
Richard Henderson
da3527d96d
target/ppc: Remove special case for POWERPC_SYSCALL
...
Since POWERPC_SYSCALL is raised by gen_exception_err,
we will have also set DISAS_NORETURN.
Signed-off-by: Richard Henderson <richard.henderson@linaro.org >
Reviewed-by: Luis Pires <luis.pires@eldorado.org.br >
Signed-off-by: Matheus Ferst <matheus.ferst@eldorado.org.br >
Message-Id: <20210512185441.3619828-5-matheus.ferst@eldorado.org.br >
Signed-off-by: David Gibson <david@gibson.dropbear.id.au >
2021-05-19 10:30:28 +10:00
Richard Henderson
3d8a5b69bd
target/ppc: Move DISAS_NORETURN setting into gen_exception*
...
There are other valid settings for is_jmp besides
DISAS_NEXT and DISAS_NORETURN, so eliminating that
dichotomy from ppc_tr_translate_insn is helpful.
Signed-off-by: Richard Henderson <richard.henderson@linaro.org >
Reviewed-by: Luis Pires <luis.pires@eldorado.org.br >
Signed-off-by: Matheus Ferst <matheus.ferst@eldorado.org.br >
Message-Id: <20210512185441.3619828-4-matheus.ferst@eldorado.org.br >
Signed-off-by: David Gibson <david@gibson.dropbear.id.au >
2021-05-19 10:30:28 +10:00
Richard Henderson
624cb07fde
target/ppc: Split out decode_legacy
...
Signed-off-by: Richard Henderson <richard.henderson@linaro.org >
Reviewed-by: Luis Pires <luis.pires@eldorado.org.br >
Signed-off-by: Matheus Ferst <matheus.ferst@eldorado.org.br >
Message-Id: <20210512185441.3619828-3-matheus.ferst@eldorado.org.br >
Signed-off-by: David Gibson <david@gibson.dropbear.id.au >
2021-05-19 10:30:28 +10:00
Richard Henderson
2c2bcb1b50
target/ppc: Add cia field to DisasContext
...
Signed-off-by: Richard Henderson <richard.henderson@linaro.org >
Reviewed-by: Bruno Larsen (billionai) <bruno.larsen@eldorado.org.br >
Reviewed-by: Luis Pires <luis.pires@eldorado.org.br >
Signed-off-by: Matheus Ferst <matheus.ferst@eldorado.org.br >
Message-Id: <20210512185441.3619828-2-matheus.ferst@eldorado.org.br >
Signed-off-by: David Gibson <david@gibson.dropbear.id.au >
2021-05-19 10:30:28 +10:00
Bruno Larsen (billionai)
47334e1738
target/ppc: moved ppc_cpu_dump_state to cpu_init.c
...
This function was forgotten in the cpu_init code motion series, but it
seems to be used regardless of TCG, and so needs to be moved to support
disabling TCG.
Signed-off-by: Bruno Larsen (billionai) <bruno.larsen@eldorado.org.br >
Message-Id: <20210512140813.112884-4-bruno.larsen@eldorado.org.br >
Reviewed-by: Richard Henderson <richard.henderson@linaro.org >
Signed-off-by: David Gibson <david@gibson.dropbear.id.au >
2021-05-19 10:30:28 +10:00
Bruno Larsen (billionai)
172d74efda
target/ppc: moved ppc_store_sdr1 to cpu.c
...
Moved this function that is required in !TCG cases into a
common code file
Signed-off-by: Bruno Larsen (billionai) <bruno.larsen@eldorado.org.br >
Message-Id: <20210512140813.112884-3-bruno.larsen@eldorado.org.br >
Reviewed-by: Richard Henderson <richard.henderson@linaro.org >
[dwg: Fixed compile error with linux-user targets]
Signed-off-by: David Gibson <david@gibson.dropbear.id.au >
2021-05-19 10:30:28 +10:00
Bruno Larsen (billionai)
87aff23827
target/ppc: updated vscr manipulation in machine.c
...
Updated the code in machine.c to use the generic ppc_{store,get}_vscr
instead of helper style functions, so it can build without TCG
Signed-off-by: Bruno Larsen (billionai) <bruno.larsen@eldorado.org.br >
Message-Id: <20210512140813.112884-7-bruno.larsen@eldorado.org.br >
Signed-off-by: David Gibson <david@gibson.dropbear.id.au >
2021-05-19 10:30:28 +10:00
Bruno Larsen (billionai)
c19940db0f
target/ppc: created ppc_{store,get}_vscr for generic vscr usage
...
Some functions unrelated to TCG use helper_m{t,f}vscr, so generic versions
of those functions were added to cpu.c, in preparation for compilation
without TCG
Signed-off-by: Bruno Larsen (billionai) <bruno.larsen@eldorado.org.br >
Message-Id: <20210512140813.112884-2-bruno.larsen@eldorado.org.br >
Reviewed-by: Richard Henderson <richard.henderson@linaro.org >
Signed-off-by: David Gibson <david@gibson.dropbear.id.au >
2021-05-19 10:30:28 +10:00
Bruno Larsen (billionai)
3e770bf7a9
target/ppc: isolated cpu init from translation logic
...
finished isolation of CPU initialization logic from
translation logic. CPU initialization now only has common code
and may or may not call accelerator-specific code, as the
build options require.
Signed-off-by: Bruno Larsen (billionai) <bruno.larsen@eldorado.org.br >
Reviewed-by: David Gibson <david@gibson.dropbear.id.au >
Message-Id: <20210507115551.11436-1-bruno.larsen@eldorado.org.br >
[dwg: Fix compile error with clang linux-user builds]
Signed-off-by: David Gibson <david@gibson.dropbear.id.au >
2021-05-19 10:30:28 +10:00
Bruno Larsen (billionai)
a829cec3a3
target/ppc: turned SPR R/W callbacks not static
...
To be able to compile translate_init.c.inc as a standalone file,
we have to make the callbacks accessible outside of translate.c;
This patch does exactly that
Signed-off-by: Bruno Larsen (billionai) <bruno.larsen@eldorado.org.br >
Message-Id: <20210507115512.11376-1-bruno.larsen@eldorado.org.br >
Signed-off-by: David Gibson <david@gibson.dropbear.id.au >
2021-05-19 10:30:28 +10:00
Lucas Mateus Castro (alqotel)
03282a3ab8
hw/ppc: moved has_spr to cpu.h
...
Moved has_spr to cpu.h as ppc_has_spr and turned it into an inline function.
Change spr verification in pnv.c and spapr.c to a version that can
compile in a !TCG environment.
Signed-off-by: Lucas Mateus Castro (alqotel) <lucas.araujo@eldorado.org.br >
Message-Id: <20210507164146.67086-1-lucas.araujo@eldorado.org.br >
Reviewed-by: Richard Henderson <richard.henderson@linaro.org >
Signed-off-by: David Gibson <david@gibson.dropbear.id.au >
2021-05-19 10:30:28 +10:00
Lucas Mateus Castro (alqotel)
45998ffcb4
target/ppc: moved ppc_store_lpcr to misc_helper.c
...
Moved the function ppc_store from mmu-hash64.c to misc_helper.c and the
prototype from mmu-hash64.h to cpu.h as it is a more appropriate place,
but it will have to have its implementation moved to a new file as
misc_helper.c should not be compiled in a !TCG environment.
Signed-off-by: Lucas Mateus Castro (alqotel) <lucas.araujo@eldorado.org.br >
Message-Id: <20210506163941.106984-4-lucas.araujo@eldorado.org.br >
Signed-off-by: David Gibson <david@gibson.dropbear.id.au >
2021-05-19 10:30:28 +10:00
Lucas Mateus Castro (alqotel)
fd1eb085da
target/ppc: moved function out of mmu-hash64
...
The function ppc_hash64_filter_pagesizes has been moved from a function
with prototype in mmu-hash64.h and implemented in mmu-hash64.c to
a static function in hw/ppc/spapr_caps.c as it's only used in that file.
Signed-off-by: Lucas Mateus Castro (alqotel) <lucas.araujo@eldorado.org.br >
Message-Id: <20210506163941.106984-3-lucas.araujo@eldorado.org.br >
Signed-off-by: David Gibson <david@gibson.dropbear.id.au >
2021-05-19 10:30:28 +10:00
Lucas Mateus Castro (alqotel)
962104f044
hw/ppc: moved hcalls that depend on softmmu
...
The hypercalls h_enter, h_remove, h_bulk_remove, h_protect, and h_read,
have been moved to spapr_softmmu.c with the functions they depend on. The
functions is_ram_address and push_sregs_to_kvm_pr are not static anymore
as functions on both spapr_hcall.c and spapr_softmmu.c depend on them.
The hypercalls h_resize_hpt_prepare and h_resize_hpt_commit have been
divided, the KVM part stayed in spapr_hcall.c while the softmmu part
was moved to spapr_softmmu.c
Signed-off-by: Lucas Mateus Castro (alqotel) <lucas.araujo@eldorado.org.br >
Message-Id: <20210506163941.106984-2-lucas.araujo@eldorado.org.br >
Signed-off-by: David Gibson <david@gibson.dropbear.id.au >
2021-05-19 10:30:28 +10:00
Bruno Larsen (billionai)
37f219c8f8
target/ppc: move SPR R/W callbacks to translate.c
...
Moved all read and write callbacks for SPRs away from
translate_init.c.inc and into translate.c; these functions are
TCG only, so this motion is required to enable building with
the flag disable-tcg
Signed-off-by: Bruno Larsen (billionai) <bruno.larsen@eldorado.org.br >
Reviewed-by: Richard Henderson <richard.henderson@linaro.org >
Message-Id: <20210506190837.6921-1-bruno.larsen@eldorado.org.br >
Signed-off-by: David Gibson <david@gibson.dropbear.id.au >
2021-05-19 10:30:28 +10:00
Bruno Larsen (billionai)
a08eea67cb
target/ppc: renamed SPR registration functions
...
Renamed all gen_spr_* and gen_* functions specifically related to
registering SPRs to register_*_sprs and register_*, to avoid future
confusion with other TCG related code.
Signed-off-by: Bruno Larsen (billionai) <bruno.larsen@eldorado.org.br >
Reviewed-by: Richard Henderson <richard.henderson@linaro.org >
Message-Id: <20210505155310.62710-2-bruno.larsen@eldorado.org.br >
Signed-off-by: David Gibson <david@gibson.dropbear.id.au >
2021-05-19 10:30:28 +10:00