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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.