Re: GPMI iMX6ull timeout on DMA

Christian Eggers
2021-10-08T13:14:10Z

On Friday, 8 October 2021, 14:27:24 CEST, Miquel Raynal wrote:
> Hello,
>
> Could it be possible to quantify the extra time spent in
> disabling/re-enabling clocks just for the record? So far this driver
> only supports a single chip and thus frequency changes do not happen
> frequently (a couple times at boot) but if someday we introduce support
> for several chips it might become very impacting.
>
> Thanks,
> Miquèl
>

ktime_t start = ktime_get(), duration;
__gpmi_enable_clk(this, false);
clk_set_rate(r->clock[0], hw->clk_rate);
__gpmi_enable_clk(this, true);
duration = ktime_get() - start;
printk(KERN_ERR "%s() duration = %lld ns\n", __func__, ktime_to_ns(duration));

-->

gpmi_nfc_apply_timings() duration = 39250 ns
...
nand: device found, Manufacturer ID: 0x2c, Chip ID: 0xdc
nand: Micron MT29F4G08ABADAH4
nand: 512 MiB, SLC, erase size: 128 KiB, page size: 2048, OOB size: 64
gpmi_nfc_apply_timings() duration = 36750 ns
gpmi_nfc_apply_timings() duration = 170750 ns

On i.MX6ULL @ 792MHz this takes less than 250 us.

regards
Christian