From: Frank Neuber <linux-mips@kernelport.de>
To: Manuel Lauss <mano@roarinelk.homelinux.net>
Cc: borasah@gmail.com, linux-mips@linux-mips.org
Subject: Re: Au1200 and NAND Flash - K9F1G08U0A -
Date: Thu, 12 Feb 2009 09:40:43 +0100 [thread overview]
Message-ID: <1234428043.12847.138.camel@t60p> (raw)
In-Reply-To: <20090212081707.GA3656@roarinelk.homelinux.net>
Thank you for this very quick answer ...
Am Donnerstag, den 12.02.2009, 09:17 +0100 schrieb Manuel Lauss:
> Here's the NAND portion of a DB1200 board support rewrite I did a while
> ago. It uses gen_nand instead of the au1550nd.c driver (which seems to
I saw this gen_nand (plat_nand.c) never before (because it is not
configurable in the Makefile)
> only work on the Db1550 and small page devices). It shouls also work on
> any Au1550 since the Au1200 has identical NAND hardware.
Do I understand right, this is not a handmade patch aginst
plat_nand.c ?
I try to mix this code now with the plat_nand.c, rigth?
Kind regards,
Frank
>
> ---------- 8< --------------------------- 8< ---------------------
>
>
> #include <linux/mtd/mtd.h>
> #include <linux/mtd/nand.h>
> #include <linux/mtd/partitions.h>
>
> [...]
>
> static void au1200_nand_cmd_ctrl(struct mtd_info *mtd, int cmd,
> unsigned int ctrl)
> {
> struct nand_chip *this = mtd->priv;
> unsigned long ioaddr = (unsigned long)this->IO_ADDR_W;
>
> ioaddr &= 0xffffff00;
>
> if (ctrl & NAND_CLE) {
> ioaddr += MEM_STNAND_CMD;
> } else if (ctrl & NAND_ALE) {
> ioaddr += MEM_STNAND_ADDR;
> } else {
> /* assume we want to r/w real data by default */
> ioaddr += MEM_STNAND_DATA;
> }
> this->IO_ADDR_R = this->IO_ADDR_W = (void __iomem *)ioaddr;
> if (cmd != NAND_CMD_NONE) {
> au_writeb(cmd, ioaddr);
> au_sync();
> }
> }
>
> static int au1200_nand_device_ready(struct mtd_info *mtd)
> {
> return au_readl(MEM_STSTAT) & 1;
> }
>
> static const char *db1200_part_probes[] = { "cmdlinepart", NULL };
>
> static struct mtd_partition db1200_nand_parts[] = {
> {
> .name = "NAND FS 0",
> .offset = 0,
> .size = 8 * 1024 * 1024,
> },
> {
> .name = "NAND FS 1",
> .offset = MTDPART_OFS_APPEND,
> .size = MTDPART_SIZ_FULL
> },
> };
>
> struct platform_nand_data db1200_nand_platdata = {
> .chip = {
> .nr_chips = 1,
> .chip_offset = 0,
> .nr_partitions = ARRAY_SIZE(db1200_nand_parts),
> .partitions = db1200_nand_parts,
> .chip_delay = 20,
> .part_probe_types = db1200_part_probes,
> },
> .ctrl = {
> .hwcontrol = 0,
> .dev_ready = au1200_nand_device_ready,
> .select_chip = 0,
> .cmd_ctrl = au1200_nand_cmd_ctrl,
> },
> };
>
> static struct resource db1200_nand_res[] = {
> [0] = {
> .start = 0x20000000,
> .end = 0x200000ff,
> .flags = IORESOURCE_MEM,
> },
> };
>
> static struct platform_device nand_dev = {
> .name = "gen_nand",
> .num_resources = ARRAY_SIZE(db1200_nand_res),
> .resource = db1200_nand_res,
> .id = -1,
> .dev = {
> .platform_data = &db1200_nand_platdata,
> }
> };
>
> [...]
>
> static struct platform_device *db1200_devs[] __initdata = {
> [...]
> &nand_dev,
> [...]
> };
>
> -------------------- 8< ------------------------ 8< -------------------
>
>
> Best regards,
> Manuel Lauss
>
next prev parent reply other threads:[~2009-02-12 8:40 UTC|newest]
Thread overview: 7+ messages / expand[flat|nested] mbox.gz Atom feed top
2007-05-19 19:13 Au1200 and NAND Flash - K9F1G08U0A - borasah
2007-05-19 19:13 ` borasah
2009-02-12 7:55 ` Frank Neuber
2009-02-12 8:17 ` Manuel Lauss
2009-02-12 8:40 ` Frank Neuber [this message]
2009-02-12 8:53 ` Manuel Lauss
2009-02-12 13:24 ` Frank Neuber
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=1234428043.12847.138.camel@t60p \
--to=linux-mips@kernelport.de \
--cc=borasah@gmail.com \
--cc=linux-mips@linux-mips.org \
--cc=mano@roarinelk.homelinux.net \
/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.