From: Thomas Gleixner <tglx@linutronix.de>
To: Savin Zlobec <savin@epico.si>
Cc: linux-mtd@lists.infradead.org
Subject: Re: [PATCH] AT91RM9200 NAND support
Date: Tue, 20 Jun 2006 13:55:00 +0200 [thread overview]
Message-ID: <1150804501.6780.141.camel@localhost.localdomain> (raw)
In-Reply-To: <4497DF09.70404@epico.si>
On Tue, 2006-06-20 at 13:42 +0200, Savin Zlobec wrote:
> >Well, we read the manufacturer ID. When we get 98H, how should we know
> >that this is a Samsung part ? And I doubt that this is a quad bit flip.
> >
> What bothers me is that MTD from 2.6.17 reads manufacturer ID = 0xec, and
> the latest git MTD reads 0x98. The chip on my board is Samsung.
Thats indeed strange. Whats the exact part number ?
> >Can you please remove the nand_wait_ready() call in nand_command() and
> >test the following patch ? It disables the ready busy pin and uses the
> >chip_delay. Please check, whether the 20us are correct. You can safely
> >set it to 50 without breaking stuff.
> >
> It doesn't work with 20us nor with 50us.
Ok, revert the patch. I really need to know which code path triggers
this behaviour. Can you apply the patch below and compile the kernel
with CONFIG_DEBUG_INFO.
When the chip is not in READY state on entry of nand_command() debug
info is printed. Please decode the kernel addresses of "Last caller" and
"Current caller" with
addr2line -e vmlinux 0xNNNNNNNNN
Thanks
tglx
diff --git a/drivers/mtd/nand/nand_base.c b/drivers/mtd/nand/nand_base.c
index 77406fc..b6e08ea 100644
--- a/drivers/mtd/nand/nand_base.c
+++ b/drivers/mtd/nand/nand_base.c
@@ -430,6 +430,9 @@ static void nand_wait_ready(struct mtd_i
led_trigger_event(nand_led_trigger, LED_OFF);
}
+static void *last_caller;
+static int last_command;
+
/**
* nand_command - [DEFAULT] Send command to NAND device
* @mtd: MTD device structure
@@ -446,6 +449,20 @@ static void nand_command(struct mtd_info
register struct nand_chip *chip = mtd->priv;
int ctrl = NAND_CTRL_CLE | NAND_CTRL_CHANGE;
+ if (command != NAND_CMD_RESET && command != NAND_CMD_STATUS &&
+ chip->dev_ready && !chip->dev_ready(mtd)) {
+
+ printk("Chip not ready in nand_command():\n");
+ printk("Last caller: %p\n", last_caller);
+ printk("Last command: 0x%02x\n", last_command);
+ printk("Current caller: %p\n", __builtin_return_address(0););
+ printk("Current command: 0x%02x\n", command);
+
+ nand_wait_ready(mtd);
+ }
+ last_caller = __builtin_return_address(0);
+ last_command = command;
+
/*
* Write out the command to the device.
*/
next prev parent reply other threads:[~2006-06-20 11:53 UTC|newest]
Thread overview: 28+ messages / expand[flat|nested] mbox.gz Atom feed top
2006-06-20 6:54 [PATCH] AT91RM9200 NAND support Andrew Victor
2006-06-20 7:08 ` Thomas Gleixner
2006-06-20 7:17 ` Andrew Victor
2006-06-20 7:43 ` Savin Zlobec
2006-06-20 8:00 ` Thomas Gleixner
2006-06-20 8:08 ` Thomas Gleixner
2006-06-20 9:07 ` Savin Zlobec
2006-06-20 9:18 ` Thomas Gleixner
2006-06-20 10:49 ` Savin Zlobec
2006-06-20 11:12 ` Thomas Gleixner
2006-06-20 11:42 ` Savin Zlobec
2006-06-20 11:55 ` Thomas Gleixner [this message]
2006-06-20 12:28 ` Savin Zlobec
2006-06-20 12:44 ` Thomas Gleixner
2006-06-20 12:52 ` Thomas Gleixner
2006-06-20 13:17 ` Savin Zlobec
2006-06-20 13:01 ` Savin Zlobec
2006-06-20 13:21 ` Thomas Gleixner
2006-06-20 13:48 ` Savin Zlobec
2006-06-20 13:57 ` Thomas Gleixner
2006-06-20 14:24 ` Savin Zlobec
2006-06-20 14:24 ` Thomas Gleixner
2006-06-20 14:29 ` Thomas Gleixner
2006-06-20 15:53 ` Savin Zlobec
2006-06-20 15:53 ` Thomas Gleixner
2006-06-20 16:03 ` Savin Zlobec
2006-06-20 9:07 ` David Woodhouse
2006-06-20 9:14 ` Thomas Gleixner
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=1150804501.6780.141.camel@localhost.localdomain \
--to=tglx@linutronix.de \
--cc=linux-mtd@lists.infradead.org \
--cc=savin@epico.si \
/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