Date: Tue, 16 Mar 2010 10:10:44 +0900 From: Andrew Turner <andrew@fubar.geek.nz> To: Grzegorz Bernacki <gjb@semihalf.com> Cc: embedded@freebsd.org, Luiz Otavio O Souza <loos.br@gmail.com> Subject: Re: NAND Flash Framework for review Message-ID: <20100316101044.0401295e@fubar.geek.nz> In-Reply-To: <4B9E1697.9090602@semihalf.com> References: <0AE04EFA-A3EB-4939-BD81-607C00355B67@semihalf.com> <20100314165825.121d346b@fubar.geek.nz> <CC419602-A9E8-4FE2-A5A5-0BFBD8240EDD@gmail.com> <4B9E1697.9090602@semihalf.com>
next in thread | previous in thread | raw e-mail | index | archive | help
On Mon, 15 Mar 2010 12:14:31 +0100 Grzegorz Bernacki <gjb@semihalf.com> wrote: > >> Chip drivers: > >> - lnand and snand have magic numbers to figure out which drive to > >> use. We should move these to a flag in the chip parameters. > > > > We just need to add the chip size in nand_params and based on that > > we can calculate the number of address cycles (see below) and the > > type of chip (if chip >= 128MB and pagesize > 512 then you have a > > large page device). > > > Yes, I was thinking about adding size of page and column address to > parameters of nfc_send_address. Why not just send each address byte separately like when the command is sent? This will then push the requirement to know how many address bytes to the chip driver. > >> - nand_read_pages should be a device method so we can customise > >> how we handle reading of pages. > > By customising you mean, using interlea Yes. I have also seen some interesting ways of connecting NAND flash. I would like to allow the developers to handle these by overriding the KOBJ methods as required. > >> > >> Ideas: > >> - Can we move ecc and bbt handling into GEOM? This will allow us to > >> bypass them when required. > > > > This is a mandatory feature (disable ecc and may be the bbt checks) > > if you need to deal with some kind of unknown nand FS or unknown > > nand oob layout (like make a backup of your unknown nand data > > before erase it). > > Ok, I didn't know that disabling ECC and BBT is so important. Let me > think about moving it to geom layer. It is also important for filesystems that have their own ECC handling code, e.g. YAFFS expects to manage the OOB it's self including the ECC. I'm not sure how it expects to handle the BBT. Andrew
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20100316101044.0401295e>