Re: [PATCH] ARC: io.h: Implement reads{x}()/writes{x}()

From: Alexey Brodkin
Date: Thu Nov 29 2018 - 07:55:15 EST


Hi Jose,

On Thu, 2018-11-29 at 12:42 +0000, Jose Abreu wrote:
> Some ARC CPU's do not support unaligned loads/stores. Currently, generic
> implementation of reads{b/w/l}()/writes{b/w/l}() is being used with ARC.
> This can lead to misfunction of some drivers as generic functions do a
> plain dereference of a pointer that can be unaligned.
>
> Let's use {get/put}_unaligned() helper instead of plain dereference of
> pointer in order to fix this.
>
> We do not implement readsq()/writesq() as we assume that only HS is a
> 64 Bit CPU and that it supports unaligned loads/stores.

Pls note that ARC HS is still only 32-bit core at least as of today.

-Alexey