* [patch V2 0/6] dma: edma: Provide granular residue accounting
@ 2014-04-28 10:49 Thomas Gleixner
2014-04-28 10:49 ` [patch V2 2/6] dma: edma: Check the current decriptor first in tx_status() Thomas Gleixner
` (6 more replies)
0 siblings, 7 replies; 14+ messages in thread
From: Thomas Gleixner @ 2014-04-28 10:49 UTC (permalink / raw)
To: linux-arm-kernel
A simpler version to provide granular residue accounting and readout
for EDMA.
Delta to V1:
- Removed the double read of the address in PaRAM
- Simplified the stats update in the interrupt callback for
intermediate transfers
Thanks,
tglx
^ permalink raw reply [flat|nested] 14+ messages in thread
* [patch V2 2/6] dma: edma: Check the current decriptor first in tx_status()
2014-04-28 10:49 [patch V2 0/6] dma: edma: Provide granular residue accounting Thomas Gleixner
@ 2014-04-28 10:49 ` Thomas Gleixner
2014-04-28 10:49 ` [patch V2 1/6] dma: edma: Sanitize residue reporting Thomas Gleixner
` (5 subsequent siblings)
6 siblings, 0 replies; 14+ messages in thread
From: Thomas Gleixner @ 2014-04-28 10:49 UTC (permalink / raw)
To: linux-arm-kernel
An embedded and charset-unspecified text was scrubbed...
Name: dma-edma-tx-status-check-current-desc-first.patch
URL: <http://lists.infradead.org/pipermail/linux-arm-kernel/attachments/20140428/4419ac4d/attachment.ksh>
^ permalink raw reply [flat|nested] 14+ messages in thread
* [patch V2 1/6] dma: edma: Sanitize residue reporting
2014-04-28 10:49 [patch V2 0/6] dma: edma: Provide granular residue accounting Thomas Gleixner
2014-04-28 10:49 ` [patch V2 2/6] dma: edma: Check the current decriptor first in tx_status() Thomas Gleixner
@ 2014-04-28 10:49 ` Thomas Gleixner
2014-04-28 10:49 ` [patch V2 3/6] dma: edma: Create private pset struct Thomas Gleixner
` (4 subsequent siblings)
6 siblings, 0 replies; 14+ messages in thread
From: Thomas Gleixner @ 2014-04-28 10:49 UTC (permalink / raw)
To: linux-arm-kernel
An embedded and charset-unspecified text was scrubbed...
Name: dma-edma-sanitize-residue-reporting.patch
URL: <http://lists.infradead.org/pipermail/linux-arm-kernel/attachments/20140428/41e3656c/attachment.ksh>
^ permalink raw reply [flat|nested] 14+ messages in thread
* [patch V2 3/6] dma: edma: Create private pset struct
2014-04-28 10:49 [patch V2 0/6] dma: edma: Provide granular residue accounting Thomas Gleixner
2014-04-28 10:49 ` [patch V2 2/6] dma: edma: Check the current decriptor first in tx_status() Thomas Gleixner
2014-04-28 10:49 ` [patch V2 1/6] dma: edma: Sanitize residue reporting Thomas Gleixner
@ 2014-04-28 10:49 ` Thomas Gleixner
2014-04-28 10:49 ` [patch V2 4/6] dma: edma: Store transfer data in edma_desc and edma_pset Thomas Gleixner
` (3 subsequent siblings)
6 siblings, 0 replies; 14+ messages in thread
From: Thomas Gleixner @ 2014-04-28 10:49 UTC (permalink / raw)
To: linux-arm-kernel
An embedded and charset-unspecified text was scrubbed...
Name: dma-edma-create-private-pset-struct.patch
URL: <http://lists.infradead.org/pipermail/linux-arm-kernel/attachments/20140428/05c1b24e/attachment.ksh>
^ permalink raw reply [flat|nested] 14+ messages in thread
* [patch V2 4/6] dma: edma: Store transfer data in edma_desc and edma_pset
2014-04-28 10:49 [patch V2 0/6] dma: edma: Provide granular residue accounting Thomas Gleixner
` (2 preceding siblings ...)
2014-04-28 10:49 ` [patch V2 3/6] dma: edma: Create private pset struct Thomas Gleixner
@ 2014-04-28 10:49 ` Thomas Gleixner
2014-04-28 10:49 ` [patch V2 5/6] edma: Make reading the position of active channels work Thomas Gleixner
` (2 subsequent siblings)
6 siblings, 0 replies; 14+ messages in thread
From: Thomas Gleixner @ 2014-04-28 10:49 UTC (permalink / raw)
To: linux-arm-kernel
An embedded and charset-unspecified text was scrubbed...
Name: dma-edma-store-per-pset-info.patch
URL: <http://lists.infradead.org/pipermail/linux-arm-kernel/attachments/20140428/60959b39/attachment.ksh>
^ permalink raw reply [flat|nested] 14+ messages in thread
* [patch V2 5/6] edma: Make reading the position of active channels work
2014-04-28 10:49 [patch V2 0/6] dma: edma: Provide granular residue accounting Thomas Gleixner
` (3 preceding siblings ...)
2014-04-28 10:49 ` [patch V2 4/6] dma: edma: Store transfer data in edma_desc and edma_pset Thomas Gleixner
@ 2014-04-28 10:49 ` Thomas Gleixner
2014-04-28 14:44 ` Sekhar Nori
2014-04-28 16:11 ` Joel Fernandes
2014-04-28 10:49 ` [patch V2 6/6] dma: edma: Provide granular accounting Thomas Gleixner
2014-04-28 20:47 ` [patch V2 0/6] dma: edma: Provide granular residue accounting Joel Fernandes
6 siblings, 2 replies; 14+ messages in thread
From: Thomas Gleixner @ 2014-04-28 10:49 UTC (permalink / raw)
To: linux-arm-kernel
An embedded and charset-unspecified text was scrubbed...
Name: arm-edma-make-read-position-useful.patch
URL: <http://lists.infradead.org/pipermail/linux-arm-kernel/attachments/20140428/ac025ce8/attachment.ksh>
^ permalink raw reply [flat|nested] 14+ messages in thread
* [patch V2 6/6] dma: edma: Provide granular accounting
2014-04-28 10:49 [patch V2 0/6] dma: edma: Provide granular residue accounting Thomas Gleixner
` (4 preceding siblings ...)
2014-04-28 10:49 ` [patch V2 5/6] edma: Make reading the position of active channels work Thomas Gleixner
@ 2014-04-28 10:49 ` Thomas Gleixner
2014-04-28 20:47 ` [patch V2 0/6] dma: edma: Provide granular residue accounting Joel Fernandes
6 siblings, 0 replies; 14+ messages in thread
From: Thomas Gleixner @ 2014-04-28 10:49 UTC (permalink / raw)
To: linux-arm-kernel
An embedded and charset-unspecified text was scrubbed...
Name: dma-edma-provide-granular-accounting.patch
URL: <http://lists.infradead.org/pipermail/linux-arm-kernel/attachments/20140428/91648c28/attachment.ksh>
^ permalink raw reply [flat|nested] 14+ messages in thread
* [patch V2 5/6] edma: Make reading the position of active channels work
2014-04-28 10:49 ` [patch V2 5/6] edma: Make reading the position of active channels work Thomas Gleixner
@ 2014-04-28 14:44 ` Sekhar Nori
2014-04-28 16:11 ` Joel Fernandes
1 sibling, 0 replies; 14+ messages in thread
From: Sekhar Nori @ 2014-04-28 14:44 UTC (permalink / raw)
To: linux-arm-kernel
On Monday 28 April 2014 04:19 PM, Thomas Gleixner wrote:
> As Joel pointed out, edma_read_position() uses memcpy_fromio() to read
> the parameter ram. That's not synchronized with the internal update as
> it does a byte by byte copy. We need to do a 32bit read to get a
> consistent value.
>
> Further reading destination and source is pointless. In DEV_TO_MEM
> transfers we are only interested in the destination, in MEM_TO_DEV we
> care about the source. In MEM_TO_MEM it really does not matter which
> one you read.
>
> Simple solution: Remove the pointers, select dest/source via a bool
> and return the read value.
> Remove the export of this function while at it. The only potential
> user is the dmaengine and that's always builtin.
While this is true today, there are other DMA drivers which
are modules.
>
> Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Irrespective of above,
Acked-by: Sekhar Nori <nsekhar@ti.com>
Thanks,
Sekhar
^ permalink raw reply [flat|nested] 14+ messages in thread
* [patch V2 5/6] edma: Make reading the position of active channels work
2014-04-28 10:49 ` [patch V2 5/6] edma: Make reading the position of active channels work Thomas Gleixner
2014-04-28 14:44 ` Sekhar Nori
@ 2014-04-28 16:11 ` Joel Fernandes
1 sibling, 0 replies; 14+ messages in thread
From: Joel Fernandes @ 2014-04-28 16:11 UTC (permalink / raw)
To: linux-arm-kernel
On 04/28/2014 05:49 AM, Thomas Gleixner wrote:
> As Joel pointed out, edma_read_position() uses memcpy_fromio() to read
> the parameter ram. That's not synchronized with the internal update as
> it does a byte by byte copy. We need to do a 32bit read to get a
> consistent value.
>
> Further reading destination and source is pointless. In DEV_TO_MEM
> transfers we are only interested in the destination, in MEM_TO_DEV we
> care about the source. In MEM_TO_MEM it really does not matter which
> one you read.
>
> Simple solution: Remove the pointers, select dest/source via a bool
> and return the read value.
>
> Remove the export of this function while at it. The only potential
> user is the dmaengine and that's always builtin.
>
> Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Thanks, this looks good.
Acked-by: Joel Fernandes <joelf@ti.com>
Regards,
-Joel
^ permalink raw reply [flat|nested] 14+ messages in thread
* [patch V2 0/6] dma: edma: Provide granular residue accounting
2014-04-28 10:49 [patch V2 0/6] dma: edma: Provide granular residue accounting Thomas Gleixner
` (5 preceding siblings ...)
2014-04-28 10:49 ` [patch V2 6/6] dma: edma: Provide granular accounting Thomas Gleixner
@ 2014-04-28 20:47 ` Joel Fernandes
2014-04-29 8:46 ` Vinod Koul
6 siblings, 1 reply; 14+ messages in thread
From: Joel Fernandes @ 2014-04-28 20:47 UTC (permalink / raw)
To: linux-arm-kernel
On 04/28/2014 05:49 AM, Thomas Gleixner wrote:
> A simpler version to provide granular residue accounting and readout
> for EDMA.
>
> Delta to V1:
>
> - Removed the double read of the address in PaRAM
>
> - Simplified the stats update in the interrupt callback for
> intermediate transfers
>
> Thanks,
>
> tglx
>
Thanks for the series. I went over all the patches and it looks great.
Acked-by: Joel Fernandes <joelf@ti.com>
The patches however didn't apply and had some conflicts with my dma
memcpy series and peter's cyclic series so I resolved conflicts and
created a single branch based on Vinod's slave-dma next branch (commit
406efb1a745c1dc512dc9c3c859e302e7b7f907e) that Vinod can pull.
I also renamed subject line of patches in Thomas's series to be
"dmaengine: edma" and documented some of the variables used.
https://github.com/joelagnel/linux-kernel.git (for-vinod branch)
Vinod, could you pull if it looks OK?
regards,
-Joel
^ permalink raw reply [flat|nested] 14+ messages in thread
* [patch V2 0/6] dma: edma: Provide granular residue accounting
2014-04-28 20:47 ` [patch V2 0/6] dma: edma: Provide granular residue accounting Joel Fernandes
@ 2014-04-29 8:46 ` Vinod Koul
2014-04-30 4:25 ` Joel Fernandes
0 siblings, 1 reply; 14+ messages in thread
From: Vinod Koul @ 2014-04-29 8:46 UTC (permalink / raw)
To: linux-arm-kernel
On Mon, Apr 28, 2014 at 03:47:37PM -0500, Joel Fernandes wrote:
> On 04/28/2014 05:49 AM, Thomas Gleixner wrote:
> > A simpler version to provide granular residue accounting and readout
> > for EDMA.
> >
> > Delta to V1:
> >
> > - Removed the double read of the address in PaRAM
> >
> > - Simplified the stats update in the interrupt callback for
> > intermediate transfers
> >
> > Thanks,
> >
> > tglx
> >
>
> Thanks for the series. I went over all the patches and it looks great.
> Acked-by: Joel Fernandes <joelf@ti.com>
>
> The patches however didn't apply and had some conflicts with my dma
> memcpy series and peter's cyclic series so I resolved conflicts and
> created a single branch based on Vinod's slave-dma next branch (commit
> 406efb1a745c1dc512dc9c3c859e302e7b7f907e) that Vinod can pull.
>
> I also renamed subject line of patches in Thomas's series to be
> "dmaengine: edma" and documented some of the variables used.
>
> https://github.com/joelagnel/linux-kernel.git (for-vinod branch)
>
> Vinod, could you pull if it looks OK?
The patches look good.
But,
commit 770f0f3a20188b7e17db2790803b9da925dc0b94
Author: Thomas Gleixner <tglx@linutronix.de>
Date: Mon Apr 28 10:49:43 2014 +0000
dmaengine: edma: Make reading the position of active channels work
As Joel pointed out, edma_read_position() uses memcpy_fromio() to read
the parameter ram. That's not synchronized with the internal update as
it does a byte by byte copy. We need to do a 32bit read to get a
consistent value.
Further reading destination and source is pointless. In DEV_TO_MEM
transfers we are only interested in the destination, in MEM_TO_DEV we
care about the source. In MEM_TO_MEM it really does not matter which
one you read.
Simple solution: Remove the pointers, select dest/source via a bool
and return the read value.
Remove the export of this function while at it. The only potential
user is the dmaengine and that's always builtin.
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
You s-o-b missing in this one, also ack from Sekhar missing. Do you want to redo
this or prefer me to cherry-pick patches adding acks and your s-o-b, since I
already fetched your branch
Either way is fine with me...
--
~Vinod
^ permalink raw reply [flat|nested] 14+ messages in thread
* [patch V2 0/6] dma: edma: Provide granular residue accounting
2014-04-29 8:46 ` Vinod Koul
@ 2014-04-30 4:25 ` Joel Fernandes
2014-04-30 5:08 ` Vinod Koul
0 siblings, 1 reply; 14+ messages in thread
From: Joel Fernandes @ 2014-04-30 4:25 UTC (permalink / raw)
To: linux-arm-kernel
On 04/29/2014 03:46 AM, Vinod Koul wrote:
[..]
> commit 770f0f3a20188b7e17db2790803b9da925dc0b94
> Author: Thomas Gleixner <tglx@linutronix.de>
> Date: Mon Apr 28 10:49:43 2014 +0000
>
> dmaengine: edma: Make reading the position of active channels work
>
> As Joel pointed out, edma_read_position() uses memcpy_fromio() to read
> the parameter ram. That's not synchronized with the internal update as
> it does a byte by byte copy. We need to do a 32bit read to get a
> consistent value.
>
> Further reading destination and source is pointless. In DEV_TO_MEM
> transfers we are only interested in the destination, in MEM_TO_DEV we
> care about the source. In MEM_TO_MEM it really does not matter which
> one you read.
>
> Simple solution: Remove the pointers, select dest/source via a bool
> and return the read value.
>
> Remove the export of this function while at it. The only potential
> user is the dmaengine and that's always builtin.
>
> Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
>
> You s-o-b missing in this one, also ack from Sekhar missing. Do you want to redo
> this or prefer me to cherry-pick patches adding acks and your s-o-b, since I
> already fetched your branch
>
> Either way is fine with me...
>
If its Ok with you, it would great if you could add my Ack and Sob.
Thanks a lot. Let me know if you'd want me to do anything else here.
Regards,
-Joel
^ permalink raw reply [flat|nested] 14+ messages in thread
* [patch V2 0/6] dma: edma: Provide granular residue accounting
2014-04-30 4:25 ` Joel Fernandes
@ 2014-04-30 5:08 ` Vinod Koul
2014-05-01 1:57 ` Joel Fernandes
0 siblings, 1 reply; 14+ messages in thread
From: Vinod Koul @ 2014-04-30 5:08 UTC (permalink / raw)
To: linux-arm-kernel
On Tue, Apr 29, 2014 at 11:25:02PM -0500, Joel Fernandes wrote:
> On 04/29/2014 03:46 AM, Vinod Koul wrote:
> [..]
> > commit 770f0f3a20188b7e17db2790803b9da925dc0b94
> > Author: Thomas Gleixner <tglx@linutronix.de>
> > Date: Mon Apr 28 10:49:43 2014 +0000
> >
> > dmaengine: edma: Make reading the position of active channels work
> >
> > As Joel pointed out, edma_read_position() uses memcpy_fromio() to read
> > the parameter ram. That's not synchronized with the internal update as
> > it does a byte by byte copy. We need to do a 32bit read to get a
> > consistent value.
> >
> > Further reading destination and source is pointless. In DEV_TO_MEM
> > transfers we are only interested in the destination, in MEM_TO_DEV we
> > care about the source. In MEM_TO_MEM it really does not matter which
> > one you read.
> >
> > Simple solution: Remove the pointers, select dest/source via a bool
> > and return the read value.
> >
> > Remove the export of this function while at it. The only potential
> > user is the dmaengine and that's always builtin.
> >
> > Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
> >
> > You s-o-b missing in this one, also ack from Sekhar missing. Do you want to redo
> > this or prefer me to cherry-pick patches adding acks and your s-o-b, since I
> > already fetched your branch
> >
> > Either way is fine with me...
> >
>
> If its Ok with you, it would great if you could add my Ack and Sob.
> Thanks a lot. Let me know if you'd want me to do anything else here.
Done, The changes are getting pushed, pls do verify
--
~Vinod
^ permalink raw reply [flat|nested] 14+ messages in thread
* [patch V2 0/6] dma: edma: Provide granular residue accounting
2014-04-30 5:08 ` Vinod Koul
@ 2014-05-01 1:57 ` Joel Fernandes
0 siblings, 0 replies; 14+ messages in thread
From: Joel Fernandes @ 2014-05-01 1:57 UTC (permalink / raw)
To: linux-arm-kernel
On Wed, Apr 30, 2014 at 12:08 AM, Vinod Koul <vinod.koul@intel.com> wrote:
> On Tue, Apr 29, 2014 at 11:25:02PM -0500, Joel Fernandes wrote:
>> On 04/29/2014 03:46 AM, Vinod Koul wrote:
>> [..]
>> > commit 770f0f3a20188b7e17db2790803b9da925dc0b94
>> > Author: Thomas Gleixner <tglx@linutronix.de>
>> > Date: Mon Apr 28 10:49:43 2014 +0000
>> >
>> > dmaengine: edma: Make reading the position of active channels work
>> >
>> > As Joel pointed out, edma_read_position() uses memcpy_fromio() to read
>> > the parameter ram. That's not synchronized with the internal update as
>> > it does a byte by byte copy. We need to do a 32bit read to get a
>> > consistent value.
>> >
>> > Further reading destination and source is pointless. In DEV_TO_MEM
>> > transfers we are only interested in the destination, in MEM_TO_DEV we
>> > care about the source. In MEM_TO_MEM it really does not matter which
>> > one you read.
>> >
>> > Simple solution: Remove the pointers, select dest/source via a bool
>> > and return the read value.
>> >
>> > Remove the export of this function while at it. The only potential
>> > user is the dmaengine and that's always builtin.
>> >
>> > Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
>> >
>> > You s-o-b missing in this one, also ack from Sekhar missing. Do you want to redo
>> > this or prefer me to cherry-pick patches adding acks and your s-o-b, since I
>> > already fetched your branch
>> >
>> > Either way is fine with me...
>> >
>>
>> If its Ok with you, it would great if you could add my Ack and Sob.
>> Thanks a lot. Let me know if you'd want me to do anything else here.
> Done, The changes are getting pushed, pls do verify
Sorry for the late reply as I'm at a conference.
Thanks, I verified and it looks OK.
Regards,
-Joel
^ permalink raw reply [flat|nested] 14+ messages in thread
end of thread, other threads:[~2014-05-01 1:57 UTC | newest]
Thread overview: 14+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2014-04-28 10:49 [patch V2 0/6] dma: edma: Provide granular residue accounting Thomas Gleixner
2014-04-28 10:49 ` [patch V2 2/6] dma: edma: Check the current decriptor first in tx_status() Thomas Gleixner
2014-04-28 10:49 ` [patch V2 1/6] dma: edma: Sanitize residue reporting Thomas Gleixner
2014-04-28 10:49 ` [patch V2 3/6] dma: edma: Create private pset struct Thomas Gleixner
2014-04-28 10:49 ` [patch V2 4/6] dma: edma: Store transfer data in edma_desc and edma_pset Thomas Gleixner
2014-04-28 10:49 ` [patch V2 5/6] edma: Make reading the position of active channels work Thomas Gleixner
2014-04-28 14:44 ` Sekhar Nori
2014-04-28 16:11 ` Joel Fernandes
2014-04-28 10:49 ` [patch V2 6/6] dma: edma: Provide granular accounting Thomas Gleixner
2014-04-28 20:47 ` [patch V2 0/6] dma: edma: Provide granular residue accounting Joel Fernandes
2014-04-29 8:46 ` Vinod Koul
2014-04-30 4:25 ` Joel Fernandes
2014-04-30 5:08 ` Vinod Koul
2014-05-01 1:57 ` Joel Fernandes
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).