On 25/11/2014 16:11, Fabio Estevam wrote: > Leave the OCOTP turned on, so that we subsequent access do not fail. > > After enabling the thermal driver on a mx6sxsabresd board: > > U-Boot 2015.01-rc1-18267-g99d4189-dirty (Nov 24 2014 - 12:59:01) > > > > CPU: Freescale i.MX6SX rev1.0 at 792 MHz > > CPU: Temperature 48 C > > Reset cause: POR > > Board: MX6SX SABRE SDB > > I2C: ready > > DRAM: 1 GiB > > PMIC: PFUZE100 ID=0x10 > > MMC: FSL_SDHC: 0, FSL_SDHC: 1, FSL_SDHC: 2 > > 00:01.0 - 16c3:abcd - Bridge device > > 01:00.0 - 8086:08b1 - Network controller > > In: serial > > Out: serial > > Err: serial > > Net: > (hang) > > As the thermal driver accesses the ocotp registers, its clock will be disabled > afterwards. > > Then when the MAC address is read (also from ocotp registers) it will cause a > hang. > > Do not disable the ocotp clock to prevent this problem. > > Signed-off-by: Fabio Estevam <fabio.este...@freescale.com> > --- > drivers/misc/mxc_ocotp.c | 2 -- > 1 file changed, 2 deletions(-) > > diff --git a/drivers/misc/mxc_ocotp.c b/drivers/misc/mxc_ocotp.c > index 3de1245..67f9429 100644 > --- a/drivers/misc/mxc_ocotp.c > +++ b/drivers/misc/mxc_ocotp.c > @@ -81,8 +81,6 @@ static int finish_access(struct ocotp_regs *regs, const > char *caller) > err = !!(readl(®s->ctrl) & BM_CTRL_ERROR); > clear_error(regs); > > - enable_ocotp_clk(0); > - > if (err) { > printf("mxc_ocotp %s(): Access protect error\n", caller); > return -EIO; >
Applied to u-boot-imx, thanks ! Best regards, Stefano Babic -- ===================================================================== DENX Software Engineering GmbH, MD: Wolfgang Denk & Detlev Zundel HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany Phone: +49-8142-66989-53 Fax: +49-8142-66989-80 Email: sba...@denx.de ===================================================================== _______________________________________________ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot