lkml.org 
[lkml]   [2022]   [Jan]   [3]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [PATCH v6] sun4i-emac.c: add dma support
Le Mon, Jan 03, 2022 at 10:55:04AM +0800, Conley Lee a écrit :
> On 01/02/22 at 06:38下午, Corentin Labbe wrote:
> > Date: Sun, 2 Jan 2022 18:38:51 +0100
> > From: Corentin Labbe <clabbe.montjoie@gmail.com>
> > To: Conley Lee <conleylee@foxmail.com>
> > Cc: davem@davemloft.net, kuba@kernel.org, mripard@kernel.org,
> > wens@csie.org, netdev@vger.kernel.org,
> > linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org,
> > linux-sunxi@lists.linux.dev, jernej.skrabec@gmail.com
> > Subject: Re: [PATCH v6] sun4i-emac.c: add dma support
> >
> > Le Sat, Jan 01, 2022 at 03:09:01PM +0800, Conley Lee a écrit :
> > > On 12/31/21 at 11:43上午, Corentin Labbe wrote:
> > > > Date: Fri, 31 Dec 2021 11:43:53 +0100
> > > > From: Corentin Labbe <clabbe.montjoie@gmail.com>
> > > > To: conleylee@foxmail.com
> > > > Cc: davem@davemloft.net, kuba@kernel.org, mripard@kernel.org,
> > > > wens@csie.org, netdev@vger.kernel.org,
> > > > linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org
> > > > Subject: Re: [PATCH v6] sun4i-emac.c: add dma support
> > > >
> > > > Le Wed, Dec 29, 2021 at 09:43:51AM +0800, conleylee@foxmail.com a écrit :
> > > > > From: Conley Lee <conleylee@foxmail.com>
> > > > >
> > > > > Thanks for your review. Here is the new version for this patch.
> > > > >
> > > > > This patch adds support for the emac rx dma present on sun4i. The emac
> > > > > is able to move packets from rx fifo to RAM by using dma.
> > > > >
> > > > > Change since v4.
> > > > > - rename sbk field to skb
> > > > > - rename alloc_emac_dma_req to emac_alloc_dma_req
> > > > > - using kzalloc(..., GPF_ATOMIC) in interrupt context to avoid
> > > > > sleeping
> > > > > - retry by using emac_inblk_32bit when emac_dma_inblk_32bit fails
> > > > > - fix some code style issues
> > > > >
> > > > > Change since v5.
> > > > > - fix some code style issue
> > > > >
> > > >
> > > > Hello
> > > >
> > > > I just tested this on a sun4i-a10-olinuxino-lime
> > > >
> > > > I got:
> > > > [ 2.922812] sun4i-emac 1c0b000.ethernet (unnamed net_device) (uninitialized): get io resource from device: 0x1c0b000, size = 4096
> > > > [ 2.934512] sun4i-emac 1c0b000.ethernet (unnamed net_device) (uninitialized): failed to request dma channel. dma is disabled
> > > > [ 2.945740] sun4i-emac 1c0b000.ethernet (unnamed net_device) (uninitialized): configure dma failed. disable dma.
> > > > [ 2.957887] sun4i-emac 1c0b000.ethernet: eth0: at (ptrval), IRQ 19 MAC: 02:49:09:40:ab:3d
> > > >
> > > > On which board did you test it and how ?
> > > >
> > > > Regards
> > >
> > > Sorry. I sent the email with text/html format. This email is an clean version.
> > >
> > > In order to enable dma rx channel. `dmas` and `dma-names` properties
> > > should be added to emac section in dts:
> > >
> > > emac: ethernet@1c0b000 {
> > > ...
> > > dmas = <&dma SUN4I_DMA_DEDICATED 7>;
> > > dma-names = "rx";
> > > ...
> > > }
> >
> > Helo
> >
> > Yes I figured that out. But you should have done a patch serie adding this.
> > Your patch is now applied but it is a useless change without the dtb change.
> > You should also probably update the driver binding (Documentation/devicetree/bindings/net/allwinner,sun4i-a10-emac.yaml) since you add new members to DT node.
> >
> > Furthermore, why did you add RX only and not TX dma also ?
> >
> > Probably it is too late since patch is applied but it is:
> > Tested-by: Corentin Labbe <clabbe.montjoie@gmail.com>
> > Tested-on: sun4i-a10-olinuxino-lime
> >
> > Regards
>
> Thanks for your suggestion. I will submit a patch to add those changes
> later.
>
> And the reason why I didn't add TX support is becasuse there is no any
> public page to describe sun4i emac TX DMA register map. So, I don't known
> how to enable TX DMA at hardware level. If you has any page or datasheet
> about EMAC TX DMA, can you share with me ? Thanks.

Hello

You can find TX DMA info on the R40 Use manual (8.10.5.2 Register Name: EMAC_TX_MODE)

You should keep all people in CC when you answer to someone.

Regards

\
 
 \ /
  Last update: 2022-01-03 12:43    [W:0.654 / U:1.660 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site