Incorrect struct onfi_params definition
Kristof Provost
kristof at sigsegv.be
Fri Nov 15 19:13:17 UTC 2013
On 2013-11-15 10:39:13 (-0700), Ian Lepore <ian at FreeBSD.org> wrote:
> On Wed, 2013-11-13 at 23:32 +0100, kristof at sigsegv.be wrote:
> > Hi Ian,
> >
> > Here's my attempt at a cleaned up patch series.
> >
> > It doesn't include the delay modifications from your nand2.diff, as that
> > didn't actually work for me. On my OpenRD is appears that the time tick is
> > started after the NAND initialisation, leading to infinite delays.
> >
>
> I'm interested in hearing more about this. I don't quite understand
> what you mean by "time tick is started after...". The delay-related
> changes should completely remove all use of clocks or timing. What it
> does instead is repeatedly issue "get status" commands to the chip until
> the chip says it's done with the previous operation and ready to
> continue.
>
Actually, it's probably a combination of two problems.
I get a timeout while reading the parameter page, or rather, I'm
supposed to get a timeout, but nandbus_wait_ready() uses getmicrotime(),
which always returns 0. In effect it creates an infinite loop.
The fact that there's never a NAND_STATUS_RDY after the
NAND_CMD_READ_PARAMETER is interesting, but not really the point here.
As I understand it getmicrotime() (at least when FFCLOCK is not defined)
is not updated until after inittimecounter(), which is done after the
nand initialisation.
Regards,
Kristof
More information about the freebsd-embedded
mailing list