From: Michael Nazzareno Trimarchi <michael@amarulasolutions.com> To: Miquel Raynal <miquel.raynal@bootlin.com> Cc: linux-mtd@lists.infradead.org, Sascha Hauer <s.hauer@pengutronix.de>, Greg Ungerer <gerg@kernel.org>, Boris Brezillon <bbrezillon@kernel.org>, Boris Brezillon <boris.brezillon@collabora.com> Subject: Re: GPMI iMX6ull timeout on DMA Date: Mon, 1 Feb 2021 16:08:23 +0100 Message-ID: <CAOf5uwnXB-2xXXXxvH9Fo3ngscccA5Hv7iNTbUYRNFs_iLGJqw@mail.gmail.com> (raw) In-Reply-To: <CAOf5uwkivHhMX_mPJymBZxQge_wc4K1p_1S3gsQYHPV40aaj3w@mail.gmail.com> Hi On Mon, Feb 1, 2021 at 3:32 PM Michael Nazzareno Trimarchi <michael@amarulasolutions.com> wrote: > > Hi > > On Mon, Feb 1, 2021 at 3:13 PM Miquel Raynal <miquel.raynal@bootlin.com> wrote: > > > > Hi Michael, > > > > Michael Nazzareno Trimarchi <michael@amarulasolutions.com> wrote on > > Sat, 30 Jan 2021 10:41:29 +0100: > > > > > Hi Miquel > > > > > > commit f8e6ad14388067f91b26d044185d95623fbc9535 > > > Author: Michael Trimarchi <michael@amarulasolutions.com> > > > Date: Fri Jan 29 08:46:53 2021 +0100 > > > > > > mtd: nand: Calculate the clock before enable it > > > > > > Signed-off-by: Michael Trimarchi <michael@amarulasolutions.com> > > > Change-Id: I79b0da39de0a9b32ea0b002fa200d7f44d4f8ce7 > > > > > > diff --git a/drivers/mtd/nand/raw/gpmi-nand/gpmi-lib.c > > > b/drivers/mtd/nand/raw/gpmi-nand/gpmi-lib.c > > > index 322a008290e5..0bca52b3bc8f 100644 > > > --- a/drivers/mtd/nand/raw/gpmi-nand/gpmi-lib.c > > > +++ b/drivers/mtd/nand/raw/gpmi-nand/gpmi-lib.c > > > @@ -377,6 +377,7 @@ static void gpmi_nfc_compute_timings(struct > > > gpmi_nand_data *this, > > > const struct nand_sdr_timings *sdr) > > > { > > > struct gpmi_nfc_hardware_timing *hw = &this->hw; > > > + struct resources *r = &this->resources; > > > unsigned int dll_threshold_ps = this->devdata->max_chain_delay; > > > unsigned int period_ps, reference_period_ps; > > > unsigned int data_setup_cycles, data_hold_cycles, addr_setup_cycles; > > > @@ -440,6 +441,8 @@ static void gpmi_nfc_compute_timings(struct > > > gpmi_nand_data *this, > > > hw->ctrl1n |= BF_GPMI_CTRL1_RDN_DELAY(sample_delay_factor) | > > > BM_GPMI_CTRL1_DLL_ENABLE | > > > (use_half_period ? BM_GPMI_CTRL1_HALF_PERIOD : 0); > > > + > > > + clk_set_rate(r->clock[0], hw->clk_rate); > > > } > > > > > > void gpmi_nfc_apply_timings(struct gpmi_nand_data *this) > > > @@ -449,8 +452,6 @@ void gpmi_nfc_apply_timings(struct gpmi_nand_data *this) > > > void __iomem *gpmi_regs = r->gpmi_regs; > > > unsigned int dll_wait_time_us; > > > > > > - clk_set_rate(r->clock[0], hw->clk_rate); > > > - > > > writel(hw->timing0, gpmi_regs + HW_GPMI_TIMING0); > > > writel(hw->timing1, gpmi_regs + HW_GPMI_TIMING1); > > > > > > Right now I have this change applied and seems fine. That is the only > > > difference I get. Clock is apply a bit earlier that when is enabled > > > it. > > > > This is very interesting. So this would mean the issue you are > > experiencing comes from the clock driver which kind of returns too > > early from clk_set_rate()? Could you report this to the clk ML/NXP clk > > maintainers and keep us in copy? If it is as global as it sounds, we > > might not be the only ones affected. > > > > The imx28 is broken too, so it's a general problem. I need to trace it down > I have a reverting for lts but it\s not the way to go > For imx28 you ask to set the rate to 22Mhz but you don't care about the clock that you get back. You get back 12Mhz because the base clock is 24 Mhz and seems that it can not get the point. You need to check if the clock requested is in range or ask for set_rate_clk_min to avoid to have somenthing lower. Then for imx6ull because is sporadic I think that is more connected to the clk_set_rate and when you change the register. Can not be a setting time? Michael > Michael > > > Thanks, > > Miquèl > > > > -- > Michael Nazzareno Trimarchi > Amarula Solutions BV > COO Co-Founder > Cruquiuskade 47 Amsterdam 1018 AM NL > T. +31(0)851119172 > M. +39(0)3479132170 > [`as] https://www.amarulasolutions.com -- Michael Nazzareno Trimarchi Amarula Solutions BV COO Co-Founder Cruquiuskade 47 Amsterdam 1018 AM NL T. +31(0)851119172 M. +39(0)3479132170 [`as] https://www.amarulasolutions.com ______________________________________________________ Linux MTD discussion mailing list http://lists.infradead.org/mailman/listinfo/linux-mtd/
next prev parent reply index Thread overview: 50+ messages / expand[flat|nested] mbox.gz Atom feed top 2019-07-29 6:41 Greg Ungerer 2019-07-29 8:36 ` Miquel Raynal 2019-07-29 8:42 ` Michael Nazzareno Trimarchi 2019-07-29 12:18 ` Greg Ungerer 2019-07-29 12:20 ` Michael Nazzareno Trimarchi 2019-07-29 12:33 ` Greg Ungerer 2019-07-29 12:47 ` Miquel Raynal 2019-07-29 12:49 ` Michael Nazzareno Trimarchi 2019-07-29 12:55 ` Miquel Raynal 2019-07-29 13:00 ` Michael Nazzareno Trimarchi 2019-07-29 13:22 ` Miquel Raynal 2019-07-29 20:00 ` Michael Nazzareno Trimarchi 2019-07-29 21:02 ` Miquel Raynal 2019-07-30 0:28 ` Greg Ungerer 2019-07-30 0:41 ` Greg Ungerer 2019-07-30 6:06 ` Greg Ungerer 2019-07-30 8:38 ` Miquel Raynal 2019-07-30 8:58 ` Boris Brezillon 2019-07-31 2:05 ` Greg Ungerer 2019-07-31 6:28 ` Boris Brezillon 2019-08-02 7:19 ` Greg Ungerer 2019-08-02 12:34 ` Greg Ungerer 2019-08-02 12:51 ` Boris Brezillon 2019-08-05 5:51 ` Greg Ungerer 2019-08-07 16:05 ` Miquel Raynal 2019-08-08 0:43 ` Greg Ungerer 2019-08-08 16:36 ` Boris Brezillon 2019-08-09 5:20 ` Greg Ungerer 2019-08-09 6:23 ` Boris Brezillon 2019-08-09 6:55 ` Greg Ungerer 2019-08-09 7:32 ` Boris Brezillon 2019-08-09 13:57 ` Greg Ungerer 2019-08-09 13:59 ` Boris Brezillon 2019-08-12 2:50 ` Greg Ungerer 2019-08-12 4:04 ` Greg Ungerer 2019-08-12 7:31 ` Boris Brezillon 2019-08-13 0:50 ` Greg Ungerer 2021-01-28 9:45 ` Michael Nazzareno Trimarchi 2021-01-28 10:26 ` Miquel Raynal 2021-01-28 10:35 ` Michael Nazzareno Trimarchi 2021-01-28 11:55 ` Michael Nazzareno Trimarchi 2021-01-29 12:43 ` Greg Ungerer 2021-01-30 9:41 ` Michael Nazzareno Trimarchi 2021-02-01 14:13 ` Miquel Raynal 2021-02-01 14:32 ` Michael Nazzareno Trimarchi 2021-02-01 15:08 ` Michael Nazzareno Trimarchi [this message] 2021-02-01 15:14 ` Miquel Raynal 2021-02-01 15:17 ` Michael Nazzareno Trimarchi -- strict thread matches above, loose matches on Subject: below -- 2018-10-02 13:22 GPMI IMX6ull timeout on dma Michael Nazzareno Trimarchi 2018-10-04 14:36 ` Michael Nazzareno Trimarchi
Reply instructions: You may reply publicly to this message via plain-text email using any one of the following methods: * Save the following mbox file, import it into your mail client, and reply-to-all from there: mbox Avoid top-posting and favor interleaved quoting: https://en.wikipedia.org/wiki/Posting_style#Interleaved_style * Reply using the --to, --cc, and --in-reply-to switches of git-send-email(1): git send-email \ --in-reply-to=CAOf5uwnXB-2xXXXxvH9Fo3ngscccA5Hv7iNTbUYRNFs_iLGJqw@mail.gmail.com \ --to=michael@amarulasolutions.com \ --cc=bbrezillon@kernel.org \ --cc=boris.brezillon@collabora.com \ --cc=gerg@kernel.org \ --cc=linux-mtd@lists.infradead.org \ --cc=miquel.raynal@bootlin.com \ --cc=s.hauer@pengutronix.de \ /path/to/YOUR_REPLY https://kernel.org/pub/software/scm/git/docs/git-send-email.html * If your mail client supports setting the In-Reply-To header via mailto: links, try the mailto: link
Linux-mtd Archive on lore.kernel.org Archives are clonable: git clone --mirror https://lore.kernel.org/linux-mtd/0 linux-mtd/git/0.git # If you have public-inbox 1.1+ installed, you may # initialize and index your mirror using the following commands: public-inbox-init -V2 linux-mtd linux-mtd/ https://lore.kernel.org/linux-mtd \ linux-mtd@lists.infradead.org public-inbox-index linux-mtd Example config snippet for mirrors Newsgroup available over NNTP: nntp://nntp.lore.kernel.org/org.infradead.lists.linux-mtd AGPL code for this site: git clone https://public-inbox.org/public-inbox.git