[PATCH 1/1] mtd: cfi_flash: use __raw_writeq(), __raw_readq()
Stefan Roese
sr at denx.de
Mon Jun 8 09:27:29 CEST 2020
On 08.06.20 09:12, Heinrich Schuchardt wrote:
> On 6/8/20 9:07 AM, Stefan Roese wrote:
>> On 07.06.20 20:42, Heinrich Schuchardt wrote:
>>> On 6/6/20 11:13 PM, Heinrich Schuchardt wrote:
>>>> Functions __raw_writeq(), __raw_readq() are available for all
>>>> architectures. So let's use them.
>>>
>>> The major architectures have these but not m68k, microblaze, nd32,
>>> nios2, powerpc, sh, xtenza.
>>
>> Just checking to be clear: This patch breaks compiling on these
>> platforms and you are withdrawing it (for now)?
>
> Yes, it breaks compiling on the specified platforms.
>
> This can be fixed by adding the missing functions to the platforms:
> https://gitlab.denx.de/u-boot/custodians/u-boot-efi/-/commits/sunxi
>
> But is it worthwhile to add __raw_writeq(), __raw_readq() to all of these?
Sure, why not?
Thanks,
Stefan
> Best regards
>
> Heinrich
>
>>
>> Thanks,
>> Stefan
>>
>>>>
>>>> Signed-off-by: Heinrich Schuchardt <xypron.glpk at gmx.de>
>>>> ---
>>>> drivers/mtd/cfi_flash.c | 6 ++----
>>>> 1 file changed, 2 insertions(+), 4 deletions(-)
>>>>
>>>> diff --git a/drivers/mtd/cfi_flash.c b/drivers/mtd/cfi_flash.c
>>>> index b7289ba539..e31e07ca80 100644
>>>> --- a/drivers/mtd/cfi_flash.c
>>>> +++ b/drivers/mtd/cfi_flash.c
>>>> @@ -155,8 +155,7 @@ __maybe_weak void flash_write32(u32 value, void
>>>> *addr)
>>>>
>>>> __maybe_weak void flash_write64(u64 value, void *addr)
>>>> {
>>>> - /* No architectures currently implement __raw_writeq() */
>>>> - *(volatile u64 *)addr = value;
>>>> + __raw_writeq(value, addr);
>>>> }
>>>>
>>>> __maybe_weak u8 flash_read8(void *addr)
>>>> @@ -176,8 +175,7 @@ __maybe_weak u32 flash_read32(void *addr)
>>>>
>>>> __maybe_weak u64 flash_read64(void *addr)
>>>> {
>>>> - /* No architectures currently implement __raw_readq() */
>>>> - return *(volatile u64 *)addr;
>>>> + return __raw_readq(addr);
>>>> }
>>>>
>>>>
>>>> /*-----------------------------------------------------------------------
>>>>
>>>> --
>>>> 2.26.2
>>>>
>>>
>>
>>
>> Viele Grüße,
>> Stefan
>>
>
Viele Grüße,
Stefan
--
DENX Software Engineering GmbH, Managing Director: Wolfgang Denk
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
Phone: (+49)-8142-66989-51 Fax: (+49)-8142-66989-80 Email: sr at denx.de
More information about the U-Boot
mailing list