[PATCH v3 07/12] dma: edma: Add function to dump a PaRAM set from PaRAM

Joel Fernandes joelf at ti.com
Mon Aug 12 21:06:36 EDT 2013


On 08/12/2013 12:52 AM, Sekhar Nori wrote:
> On Monday 05 August 2013 09:44 PM, Joel Fernandes wrote:
>> Previously, such a dump function was used but it wasn't reading
>> from the PaRAM, rather just from a edmacc_param structure, we
>> add a helpful function for debugging that directly reads from
>> the PaRAM and gives the current state correctly (including links
>> and interrupt information).
>>
>> Signed-off-by: Joel Fernandes <joelf at ti.com>
> 
> You should convert existing instances of PaRAM set dump to use this new
> function along with introducing it.

Well, the old dump callers were thrown out with completely rewritten
code. This rewritten code already contains the dump calls. Are you
saying pull out those dump pset calls into a separate patch?

Thanks,

-Joel

> Sekhar
> 
>> ---
>>  drivers/dma/edma.c |   31 +++++++++++++++++++++++++++++++
>>  1 file changed, 31 insertions(+)
>>
>> diff --git a/drivers/dma/edma.c b/drivers/dma/edma.c
>> index 080d669..a242269 100644
>> --- a/drivers/dma/edma.c
>> +++ b/drivers/dma/edma.c
>> @@ -102,6 +102,37 @@ static void edma_desc_free(struct virt_dma_desc *vdesc)
>>  	kfree(container_of(vdesc, struct edma_desc, vdesc));
>>  }
>>  
>> +static inline void dump_pset(struct edma_chan *echan, int slot,
>> +		     struct edmacc_param *pset_unused, int pset_idx)
>> +{
>> +	struct edmacc_param pset_local, *pset;
>> +	pset = &pset_local;
>> +
>> +	edma_read_slot(slot, pset);
>> +
>> +	dev_dbg(echan->vchan.chan.device->dev,
>> +		"\n pset[%d]:\n"
>> +		"  chnum\t%d\n"
>> +		"  slot\t%d\n"
>> +		"  opt\t%08x\n"
>> +		"  src\t%08x\n"
>> +		"  dst\t%08x\n"
>> +		"  abcnt\t%08x\n"
>> +		"  ccnt\t%08x\n"
>> +		"  bidx\t%08x\n"
>> +		"  cidx\t%08x\n"
>> +		"  lkrld\t%08x\n",
>> +		pset_idx, echan->ch_num, slot,
>> +		pset[0].opt,
>> +		pset[0].src,
>> +		pset[0].dst,
>> +		pset[0].a_b_cnt,
>> +		pset[0].ccnt,
>> +		pset[0].src_dst_bidx,
>> +		pset[0].src_dst_cidx,
>> +		pset[0].link_bcntrld);
>> +}
>> +
>>  /* Dispatch a queued descriptor to the controller (caller holds lock) */
>>  static void edma_execute(struct edma_chan *echan)
>>  {
>>
> 
> --
> To unsubscribe from this list: send the line "unsubscribe linux-omap" in
> the body of a message to majordomo at vger.kernel.org
> More majordomo info at  http://vger.kernel.org/majordomo-info.html
> 




More information about the linux-arm-kernel mailing list