RE: [PATCH 16/16] usb: dwc3: convert structures into bitshifts

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

 



> From: Sebastian Andrzej Siewior [mailto:bigeasy@xxxxxxxxxxxxx]
> Sent: Monday, October 17, 2011 1:06 PM
> 
> > But wouldn't it be simpler and more efficient to just get rid of the
> > bitfields and use the normal shift and mask method to do the TRBs and
> > events? For e.g. high-bandwidth Isoc transfers, the driver needs to
> > process a _lot_ of TRBs to keep up with the USB 3.0 bandwidth. We
> > should avoid any unnecessary processing overhead in hot paths such as
> > that.
> 
> Now it is performance and not a BE problem.
> The only problem with the bit fields is that each assignment is a write
> access. This write access ends up in cache. So let me look at
> dwc3_prepare_trbs(). You write bpl/h most likely the same way it is
> now. The other two require a local variable each for setup / shifts.
> Hmmm. Not sure how much overhead you save after converting.
> 
> We did this way because Felipe preferred it over bit shifts. If you want
> it the other way due to performance issues then I would say please post
> some numbers which prove your point.

Fair enough, my original concern was about an endianness problem. Since I
see that shouldn't be an issue, I will drop this.

-- 
Paul

��.n��������+%������w��{.n�����{���)��jg��������ݢj����G�������j:+v���w�m������w�������h�����٥



[Index of Archives]     [Linux Media]     [Linux Input]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [Old Linux USB Devel Archive]

  Powered by Linux