diff mbox series

[2/2] goldfish_rtc: change MemoryRegionOps endianness to DEVICE_NATIVE_ENDIAN

Message ID 20201009113843.60995-2-lvivier@redhat.com
State New
Headers show
Series [1/2] hw/char/serial: remove duplicate .class_init in serial_mm_info | expand

Commit Message

Laurent Vivier Oct. 9, 2020, 11:38 a.m. UTC
The doc [1] doesn't define the endianness, but the kernel driver
uses readl() to access the registers, so we can guess it depends
on the architecture endianness.

As riscv architecture endianness is little it might not change anything
for it.

Moreover, android implementation uses DEVICE_NATIVE_ENDIAN [2]

[1] https://android.googlesource.com/platform/external/qemu/+/master/docs/GOLDFISH-VIRTUAL-HARDWARE.TXT
[2] https://android.googlesource.com/platform/external/qemu/+/refs/heads/emu-master-dev/hw/timer/goldfish_timer.c#177

Fixes: 9a5b40b84279 ("hw: rtc: Add Goldfish RTC device")
Cc: Anup.Patel@wdc.com
Signed-off-by: Laurent Vivier <lvivier@redhat.com>
---
 hw/rtc/goldfish_rtc.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

Comments

Alistair Francis Oct. 9, 2020, 10:02 p.m. UTC | #1
On Fri, Oct 9, 2020 at 4:40 AM Laurent Vivier <lvivier@redhat.com> wrote:
>

> The doc [1] doesn't define the endianness, but the kernel driver

> uses readl() to access the registers, so we can guess it depends

> on the architecture endianness.

>

> As riscv architecture endianness is little it might not change anything

> for it.

>

> Moreover, android implementation uses DEVICE_NATIVE_ENDIAN [2]

>

> [1] https://android.googlesource.com/platform/external/qemu/+/master/docs/GOLDFISH-VIRTUAL-HARDWARE.TXT

> [2] https://android.googlesource.com/platform/external/qemu/+/refs/heads/emu-master-dev/hw/timer/goldfish_timer.c#177

>

> Fixes: 9a5b40b84279 ("hw: rtc: Add Goldfish RTC device")

> Cc: Anup.Patel@wdc.com

> Signed-off-by: Laurent Vivier <lvivier@redhat.com>


Reviewed-by: Alistair Francis <alistair.francis@wdc.com>


Alistair

> ---

>  hw/rtc/goldfish_rtc.c | 2 +-

>  1 file changed, 1 insertion(+), 1 deletion(-)

>

> diff --git a/hw/rtc/goldfish_rtc.c b/hw/rtc/goldfish_rtc.c

> index 6ddd45cce039..0f4e8185a796 100644

> --- a/hw/rtc/goldfish_rtc.c

> +++ b/hw/rtc/goldfish_rtc.c

> @@ -217,7 +217,7 @@ static int goldfish_rtc_post_load(void *opaque, int version_id)

>  static const MemoryRegionOps goldfish_rtc_ops = {

>      .read = goldfish_rtc_read,

>      .write = goldfish_rtc_write,

> -    .endianness = DEVICE_LITTLE_ENDIAN,

> +    .endianness = DEVICE_NATIVE_ENDIAN,

>      .valid = {

>          .min_access_size = 4,

>          .max_access_size = 4

> --

> 2.26.2

>

>
Laurent Vivier Oct. 12, 2020, 2:40 p.m. UTC | #2
Le 09/10/2020 à 13:38, Laurent Vivier a écrit :
> The doc [1] doesn't define the endianness, but the kernel driver

> uses readl() to access the registers, so we can guess it depends

> on the architecture endianness.

> 

> As riscv architecture endianness is little it might not change anything

> for it.

> 

> Moreover, android implementation uses DEVICE_NATIVE_ENDIAN [2]

> 

> [1] https://android.googlesource.com/platform/external/qemu/+/master/docs/GOLDFISH-VIRTUAL-HARDWARE.TXT

> [2] https://android.googlesource.com/platform/external/qemu/+/refs/heads/emu-master-dev/hw/timer/goldfish_timer.c#177

> 

> Fixes: 9a5b40b84279 ("hw: rtc: Add Goldfish RTC device")

> Cc: Anup.Patel@wdc.com

> Signed-off-by: Laurent Vivier <lvivier@redhat.com>

> ---

>  hw/rtc/goldfish_rtc.c | 2 +-

>  1 file changed, 1 insertion(+), 1 deletion(-)

> 

> diff --git a/hw/rtc/goldfish_rtc.c b/hw/rtc/goldfish_rtc.c

> index 6ddd45cce039..0f4e8185a796 100644

> --- a/hw/rtc/goldfish_rtc.c

> +++ b/hw/rtc/goldfish_rtc.c

> @@ -217,7 +217,7 @@ static int goldfish_rtc_post_load(void *opaque, int version_id)

>  static const MemoryRegionOps goldfish_rtc_ops = {

>      .read = goldfish_rtc_read,

>      .write = goldfish_rtc_write,

> -    .endianness = DEVICE_LITTLE_ENDIAN,

> +    .endianness = DEVICE_NATIVE_ENDIAN,

>      .valid = {

>          .min_access_size = 4,

>          .max_access_size = 4

> 


Applied to my trivial-patches branch.

Thanks,
Laurent
diff mbox series

Patch

diff --git a/hw/rtc/goldfish_rtc.c b/hw/rtc/goldfish_rtc.c
index 6ddd45cce039..0f4e8185a796 100644
--- a/hw/rtc/goldfish_rtc.c
+++ b/hw/rtc/goldfish_rtc.c
@@ -217,7 +217,7 @@  static int goldfish_rtc_post_load(void *opaque, int version_id)
 static const MemoryRegionOps goldfish_rtc_ops = {
     .read = goldfish_rtc_read,
     .write = goldfish_rtc_write,
-    .endianness = DEVICE_LITTLE_ENDIAN,
+    .endianness = DEVICE_NATIVE_ENDIAN,
     .valid = {
         .min_access_size = 4,
         .max_access_size = 4