Re: [PATCH 3/7] DMA: PL330: Add DMA capabilities

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

 



On Tue, Jul 5, 2011 at 12:03 PM, Chanho Park <parkch98@xxxxxxxxx> wrote:
> Kukjin Kim <kgene.kim <at> samsung.com> writes:
>
> (snip)
>
>> +             if (slave_config->direction == DMA_TO_DEVICE) {
>> +                     if (slave_config->dst_addr)
>> +                             peri->fifo_addr = slave_config->dst_addr;
>> +                     if (slave_config->dst_addr_width) {
>> +                             i = 0;
>> +                             while (slave_config->dst_addr_width != (1 <<
> i))
>> +                                     i++;
>> +                             peri->burst_sz = i;
>> +                     }
>> +             } else if (slave_config->direction == DMA_FROM_DEVICE) {
>> +                     if (slave_config->src_addr)
>> +                             peri->fifo_addr = slave_config->src_addr;
>> +                     if (slave_config->src_addr_width) {
>> +                             i = 0;
>> +                             while (slave_config->src_addr_width != (1 <<
> i))
>> +                                     i++;
>> +                             peri->burst_sz = i;
>
> Re-send including cc and mailing lists
> --
> pl330 dmac only supports 1/2/4/8/16 bytes burst size.
> If some bad D/D doesn't use powers of 2 width,
> dmaengine is going to infinite loop.
> You'd better check it instead of running loop.
>
It might be even better to start with max possible width and
keep decreasing 'i' in the loop.
��.n��������+%������w��{.n�����{��Ʀ����)��jg��������ݢj����G�������j:+v���w�m������w�������h�����٥



[Index of Archives]     [Linux SoC Development]     [Linux Rockchip Development]     [Linux USB Development]     [Video for Linux]     [Linux Audio Users]     [Linux SCSI]     [Yosemite News]

  Powered by Linux