RE: [PATCH v3 0/2] net: stmmac: Enhanced addressing mode for DWMAC 4.10

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



From: Jose Abreu <joabreu@xxxxxxxxxxxx>
Date: Sep/25/2019, 12:41:04 (UTC+00:00)

> From: David Miller <davem@xxxxxxxxxxxxx>
> Date: Sep/25/2019, 12:33:53 (UTC+00:00)
> 
> > From: Jose Abreu <Jose.Abreu@xxxxxxxxxxxx>
> > Date: Wed, 25 Sep 2019 10:44:53 +0000
> > 
> > > From: David Miller <davem@xxxxxxxxxxxxx>
> > > Date: Sep/24/2019, 20:45:08 (UTC+00:00)
> > > 
> > >> From: Thierry Reding <thierry.reding@xxxxxxxxx>
> > >> Date: Fri, 20 Sep 2019 19:00:34 +0200
> > >> 
> > >> Also, you're now writing to the high 32-bits unconditionally, even when
> > >> it will always be zero because of 32-bit addressing.  That looks like
> > >> a step backwards to me.
> > > 
> > > Don't agree. As per previous discussions and as per my IP knowledge, if 
> > > EAME is not enabled / not supported the register can still be written. 
> > > This is not fast path and will not impact any remaining operation. Can 
> > > you please explain what exactly is the concern about this ?
> > > 
> > > Anyway, this is an important feature for performance so I hope Thierry 
> > > re-submits this once -next opens and addressing the review comments.
> > 
> > Perhaps I misunderstand the context, isn't this code writing the
> > descriptors for every packet?
> 
> No, its just setting up the base address for the descriptors which is 
> done in open(). The one that's in the fast path is the tail address, 
> which is always the lower 32 bits.

Oops, sorry. Indeed it's done in refill operation in function 
dwmac4_set_addr() for rx/tx which is fast path so you do have a point 
that I was not seeing. Thanks for bringing this up!

Now, the point would be:
	a) Is it faster to have an condition check in dwmac4_set_addr(), or
	b) Always write to descs the upper 32 bits. Which always exists in the 
IP and is a standard write to memory.

---
Thanks,
Jose Miguel Abreu




[Index of Archives]     [ARM Kernel]     [Linux ARM]     [Linux ARM MSM]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux