lkml.org 
[lkml]   [2020]   [Dec]   [11]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
SubjectRe: [PATCH] net: ethernet: fs-enet: remove casting dma_alloc_coherent
From
Date


Le 11/12/2020 à 17:07, David Laight a écrit :
> From: Christophe Leroy
>> Sent: 11 December 2020 15:22
>>
>> Le 11/12/2020 à 09:52, Xu Wang a écrit :
>>> Remove casting the values returned by dma_alloc_coherent.
>>
>> Can you explain more in the commit log ?
>>
>> As far as I can see, dma_alloc_coherent() doesn't return __iomem, and ring_base member is __iomem
>
> Which is probably wrong - that is the kernel address of kernel memory.
> So it shouldn't have the __iomem marker.

That's where the buffer descriptors are, the driver accesses to the content of the buffer
descriptors using the IO accessors in_be16()/out_be16(). Is it not correct ?

Christophe

>
> I wonder what else is wrong....
>
> David
>
>>
>> Christophe
>>
>>>
>>> Signed-off-by: Xu Wang <vulab@iscas.ac.cn>
>>> ---
>>> drivers/net/ethernet/freescale/fs_enet/mac-fec.c | 2 +-
>>> 1 file changed, 1 insertion(+), 1 deletion(-)
>>>
>>> diff --git a/drivers/net/ethernet/freescale/fs_enet/mac-fec.c
>> b/drivers/net/ethernet/freescale/fs_enet/mac-fec.c
>>> index 99fe2c210d0f..3ae345676e50 100644
>>> --- a/drivers/net/ethernet/freescale/fs_enet/mac-fec.c
>>> +++ b/drivers/net/ethernet/freescale/fs_enet/mac-fec.c
>>> @@ -131,7 +131,7 @@ static int allocate_bd(struct net_device *dev)
>>> struct fs_enet_private *fep = netdev_priv(dev);
>>> const struct fs_platform_info *fpi = fep->fpi;
>>>
>>> - fep->ring_base = (void __force __iomem *)dma_alloc_coherent(fep->dev,
>>> + fep->ring_base = dma_alloc_coherent(fep->dev,
>>> (fpi->tx_ring + fpi->rx_ring) *
>>> sizeof(cbd_t), &fep->ring_mem_addr,
>>> GFP_KERNEL);
>>>
>
> -
> Registered Address Lakeside, Bramley Road, Mount Farm, Milton Keynes, MK1 1PT, UK
> Registration No: 1397386 (Wales)
>

\
 
 \ /
  Last update: 2020-12-11 17:46    [W:0.081 / U:0.796 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site