Re: [PATCH v3] i2c: tegra: Share same DMA channel for RX and TX

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

 



On Thu, Mar 23, 2023 at 12:16:23PM +0000, Akhil R wrote:
> , Mar 23, 2023 at 09:26:00AM +0000, Akhil R wrote:
> > > > On 22/03/2023 12:00, Akhil R wrote:
> > > > >> On 22/03/2023 10:24, Akhil R wrote:
> > > > >>> Allocate only one DMA channel for I2C and share it for both TX and
> > RX
> > > > >>> instead of using two different DMA hardware channels with the
> > same
> > > > >>> slave ID. Since I2C supports only half duplex, there is no impact on
> > > > >>> perf with this.
> > > > >>>
> > > > >>> Signed-off-by: Akhil R <akhilrajeev@xxxxxxxxxx>
> > > > >>
> > > > >> Just to confirm. This impacts all Tegra devices from Tegra20 to the
> > > > >> latest. Does this work for all Tegra and the different DMA controllers
> > > > >> that they have?
> > > > >>
> > > > > Yes, It should. I could see in the APB DMA driver that the same channel
> > > > > could be used for TX and RX and the direction is configured only during
> > > > > dma_prep_*() calls.
> > > > > I did not test it on a Tegra with APB DMA, but since it works very
> > similar
> > > > > to GPC DMA there should not be any impact.
> > > >
> > > >
> > > > OK. BTW, this does not apply cleanly on top of -next. It appears that
> > > > this is based on top "i2c: tegra: Fix PEC support for SMBUS block read"
> > > > and that one needs to be applied first. This can be avoided if you send
> > > > as a series.
> > > >
> > > Oh. Okay. I used 'git am --3way' when I tried, and the conflict went
> > unnoticed.
> > > Shall I send a new version on top of -next?
> > > The two patches were added in different contexts and that’s why I did not
> > > combine them as a series.
> > 
> > It's usually best to combine them in a series even if they are in
> > slightly different contexts. This is especially true if they cause
> > conflicts between one another. If you send them as a series, you can
> > resolve the conflicts yourself (you may not even have conflicts locally
> > if you create the patches in the same branch), but if you send them
> > separately the maintainer will end up having to resolve the conflicts
> > (or apply in the right order).
> > 
> > It's best if you resolve the conflicts because you know better than the
> > maintainer (usually) or specify any dependencies to make it easier for
> > the maintainer to do the right thing.
> > 
> > But again, in the vast majority of cases, it's best to combine all the
> > work on one driver in a single series before sending out.
> > 
> Okay. Got it. I shall send a new patchset with both the patches. 
> Can I put the patchset as v1 or does it have to be something different?
> Because this patch is in v3 and "i2c: tegra: Fix PEC support for SMBUS 
> block read" is v2 now.

Best to keep versioning. I'd go with making the combined series v4,
which is probably the least confusing. You can technically also make a
combined series where each patch is at a different version, but that
would probably confuse people even more.

Thierry

Attachment: signature.asc
Description: PGP signature


[Index of Archives]     [Linux GPIO]     [Linux SPI]     [Linux Hardward Monitoring]     [LM Sensors]     [Linux USB Devel]     [Linux Media]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux