[PATCH 1/1] mtd: cfi_flash: use __raw_writeq(), __raw_readq()

Stefan Roese sr at denx.de
Mon Jun 8 09:07:12 CEST 2020


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)?

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

-- 
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