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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox