From: Justin Ipsen <justin.ipsen@ctam.com.au>
To: David Woodhouse <dwmw2@infradead.org>
Cc: linux-mtd@lists.infradead.org
Subject: Re: ECC Reset problems
Date: Thu, 14 Mar 2002 10:50:53 +1100 [thread overview]
Message-ID: <3C8FE5DD.5A4561B2@ctam.com.au> (raw)
In-Reply-To: 25659.1016011052@redhat.com
Thanks David.
Its seems to be a timing issue, although not with ECC resets.
We had to make the following changes to affect all delays used in doc2000.c
I had forgotten that I multiplied "cycles" by 6 to make the 32M DOC work.
I increased this to 9 and the 48M DOC now works fine.
Would this just be a specific board architecture thing?
Thanks again.
Justin.
/* Perform the required delay cycles by reading from the appropriate
register */
static void DoC_Delay(struct DiskOnChip *doc, unsigned short cycles)
{
volatile char dummy;
int i;
for (i = 0; i < cycles*12; i++) {
if (DoC_is_Millennium(doc))
dummy = ReadDOC(doc->virtadr, NOP);
else
dummy = ReadDOC(doc->virtadr, DOCStatus);
}
}
David Woodhouse wrote:
> justin.ipsen@ctam.com.au said:
> > I'm running linux 2.4.1-pre11 on a powerPC platform. I have been
> > using a 32M doc2000 with no problems. I've just started to use a 48M
> > doc2000 but the On-Chip ECC engine seems to work just once after reset
> > and not again. It looks like the "ECC Config" Resets function has
> > stopped working?
>
> Hmmm. I can't see any documented timing constraints on the ECC Reset. But
> try adding a delay between...
>
> /* Prime the ECC engine */
> WriteDOC(DOC_ECC_RESET, docptr, ECCConf);
> WriteDOC(DOC_ECC_EN, docptr, ECCConf);
>
> Might also be worth looking in include/linux/mtd/doc2000.h and changing the
> definition of DOC_ECC_RESET to DOC_ECC_RESV instead of zero.
>
> --
> dwmw2
prev parent reply other threads:[~2002-03-13 23:42 UTC|newest]
Thread overview: 3+ messages / expand[flat|nested] mbox.gz Atom feed top
2002-03-13 7:50 ECC Reset problems Justin Ipsen
2002-03-13 9:17 ` David Woodhouse
2002-03-13 23:50 ` Justin Ipsen [this message]
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=3C8FE5DD.5A4561B2@ctam.com.au \
--to=justin.ipsen@ctam.com.au \
--cc=dwmw2@infradead.org \
--cc=linux-mtd@lists.infradead.org \
/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
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox