diff mbox series

[12/17] target/avr: Handle offset_io in helper.c

Message ID 20250323173730.3213964-13-richard.henderson@linaro.org
State New
Headers show
Series target/avr: Increase page size | expand

Commit Message

Richard Henderson March 23, 2025, 5:37 p.m. UTC
Prepare for offset_io being non-zero in do_stb.

Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
---
 target/avr/helper.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

Comments

Philippe Mathieu-Daudé March 23, 2025, 9:34 p.m. UTC | #1
On 23/3/25 18:37, Richard Henderson wrote:
> Prepare for offset_io being non-zero in do_stb.
> 
> Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
> ---
>   target/avr/helper.c | 3 ++-
>   1 file changed, 2 insertions(+), 1 deletion(-)

Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Pierrick Bouvier March 25, 2025, 1:20 a.m. UTC | #2
On 3/23/25 10:37, Richard Henderson wrote:
> Prepare for offset_io being non-zero in do_stb.
> 
> Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
> ---
>   target/avr/helper.c | 3 ++-
>   1 file changed, 2 insertions(+), 1 deletion(-)
> 
> diff --git a/target/avr/helper.c b/target/avr/helper.c
> index 9608e59584..3323f32c22 100644
> --- a/target/avr/helper.c
> +++ b/target/avr/helper.c
> @@ -69,7 +69,8 @@ bool avr_cpu_exec_interrupt(CPUState *cs, int interrupt_request)
>   
>   static void do_stb(CPUAVRState *env, uint32_t addr, uint8_t data, uintptr_t ra)
>   {
> -    cpu_stb_mmuidx_ra(env, addr, data, MMU_DATA_IDX, ra);
> +    cpu_stb_mmuidx_ra(env, addr + env_archcpu(env)->offset_io,
> +                      data, MMU_DATA_IDX, ra);
>   }
>   
>   void avr_cpu_do_interrupt(CPUState *cs)

Reviewed-by: Pierrick Bouvier <pierrick.bouvier@linaro.org>
diff mbox series

Patch

diff --git a/target/avr/helper.c b/target/avr/helper.c
index 9608e59584..3323f32c22 100644
--- a/target/avr/helper.c
+++ b/target/avr/helper.c
@@ -69,7 +69,8 @@  bool avr_cpu_exec_interrupt(CPUState *cs, int interrupt_request)
 
 static void do_stb(CPUAVRState *env, uint32_t addr, uint8_t data, uintptr_t ra)
 {
-    cpu_stb_mmuidx_ra(env, addr, data, MMU_DATA_IDX, ra);
+    cpu_stb_mmuidx_ra(env, addr + env_archcpu(env)->offset_io,
+                      data, MMU_DATA_IDX, ra);
 }
 
 void avr_cpu_do_interrupt(CPUState *cs)