From: Maxim Levitsky <maximlevitsky@gmail.com>
To: Vitaly Wool <vitalywool@gmail.com>
Cc: Alex Dubov <oakad@yahoo.com>,
Artem Bityutskiy <dedekind1@gmail.com>, joern <joern@logfs.org>,
linux-kernel <linux-kernel@vger.kernel.org>,
linux-mtd <linux-mtd@lists.infradead.org>,
Thomas Gleixner <tglx@linutronix.de>,
David Woodhouse <dwmw2@infradead.org>
Subject: Re: [PATCH 10/17] MTD: nand: make reads using MTD_OOB_RAW affect only ECC validation
Date: Fri, 05 Feb 2010 11:25:01 +0200 [thread overview]
Message-ID: <1265361901.15383.9.camel@maxim-laptop> (raw)
In-Reply-To: <acd2a5931002050056l119844f5s30c30ccfc1a15596@mail.gmail.com>
On Fri, 2010-02-05 at 09:56 +0100, Vitaly Wool wrote:
> On Fri, Feb 5, 2010 at 12:30 AM, Maxim Levitsky <maximlevitsky@gmail.com> wrote:
> > This changes the behavier of MTD_OOB_RAW. It used to read both OOB and data
> > to the data buffer, however you would still need to specify the dummy oob buffer.
> >
> > This is only used in one place, but makes it hard to read data+oob without ECC
> > test, thus I removed that behavier, and fixed the user.
> >
> > Now MTD_OOB_RAW behaves like MTD_OOB_PLACE, but doesn't do ECC validation
> >
> > Signed-off-by: Maxim Levitsky <maximlevitsky@gmail.com>
> > ---
> > drivers/mtd/nand/nand_base.c | 5 -----
> > drivers/mtd/nand/nand_bbt.c | 26 ++++++++++++++++++++++----
> > include/linux/mtd/mtd.h | 4 +---
> > 3 files changed, 23 insertions(+), 12 deletions(-)
>
> Could you please provide a clearer description of why you think this
> is necessary?
Sure.
I have two distinct buffers. One holds the data and is 512 bytes long,
other is the oob and is 16 bytes long.
I want to write these buffers to flash but without ECC
Currently I would have to allocate new buffer and copy both buffers
there.
Why I need it?
To make my SmartMedia FTL complete I need to add support for 256 byte
nands. These have 256 bytes per page and 8 bytes of oob.
However, pages are always written in pairs, forming 512 bytes sector.
Combined oob of first and second page is identical to the one that is
written to 512 byte page, thus its layout depends on page number.
Also I want the nand driver to have as little as possible smartmedia
dependencies, thus allow it to be used with any FTL, UBI, jffs2, etc..
Therefore I decided to make nand driver use standard oob layout and ECC
in case of 256 byte flash, but make my FTL bypass it.
It also happens to work with nandsim unmodified... :-)
Also, this makes the interface more orthogonal.
This feature is used in just one place too.
Best regards,
Maxim Levitsky
next prev parent reply other threads:[~2010-02-05 9:25 UTC|newest]
Thread overview: 28+ messages / expand[flat|nested] mbox.gz Atom feed top
2010-02-04 23:30 [PATCH V6] Work to enable SmartMedia/xD support Maxim Levitsky
2010-02-04 23:30 ` [PATCH 01/17] MTD: create lockless versions of {get, put}_mtd_device This will be used to resolve deadlock in block translation layer Maxim Levitsky
2010-02-04 23:30 ` [PATCH 02/17] blktrans: nuke mtd_blkcore_priv and make both thread and disk queue be per device Maxim Levitsky
2010-02-04 23:30 ` [PATCH 03/17] blktrans: track open and close calls Maxim Levitsky
2010-02-04 23:30 ` [PATCH 04/17] blktrans: don't free mtd_blktrans_dev, core will do that for you Maxim Levitsky
2010-02-04 23:30 ` [PATCH 05/17] blktrans: add proper locking Maxim Levitsky
2010-02-04 23:30 ` [PATCH 06/17] blktrans: flush all requests before we remove the device Maxim Levitsky
2010-02-04 23:30 ` [PATCH 07/17] blktrans: allow FTL drivers to export sysfs attributes Maxim Levitsky
2010-02-04 23:30 ` [PATCH 08/17] MTD: call remove notifiers before removing the device Maxim Levitsky
2010-02-04 23:30 ` [PATCH 09/17] MTD: nand: make MTD_OOB_PLACE work correctly Maxim Levitsky
2010-02-04 23:30 ` [PATCH 10/17] MTD: nand: make reads using MTD_OOB_RAW affect only ECC validation Maxim Levitsky
2010-02-05 2:48 ` stanley.miao
2010-02-05 8:56 ` Vitaly Wool
2010-02-05 9:25 ` Maxim Levitsky [this message]
2010-02-04 23:30 ` [PATCH 11/17] MTD: nand: fix bug that prevented write of more that one page by ->write_oob Maxim Levitsky
2010-02-05 2:25 ` stanley.miao
2010-02-05 9:44 ` Maxim Levitsky
2010-02-05 2:34 ` stanley.miao
2010-02-04 23:30 ` [PATCH 12/17] MTD: nand: make suspend work if device is accessed by kernel threads Maxim Levitsky
2010-02-04 23:30 ` [PATCH 13/17] MTD: export few functions from nand_base.c Maxim Levitsky
2010-02-05 2:32 ` stanley.miao
2010-02-05 9:30 ` Maxim Levitsky
2010-02-05 17:05 ` Maxim Levitsky
2010-02-04 23:30 ` [PATCH 14/17] MTD: common module for smartmedia/xD support Maxim Levitsky
2010-02-04 23:30 ` [PATCH 15/17] MTD: add few workarounds to nand system for SmartMedia/xD chips Maxim Levitsky
2010-02-04 23:30 ` [PATCH 16/17] MTD: Add nand driver for ricoh xD/SmartMedia reader Maxim Levitsky
2010-02-04 23:30 ` [PATCH 17/17] MTD: Add new SmartMedia/xD FTL Maxim Levitsky
-- strict thread matches above, loose matches on Subject: below --
2010-01-30 15:02 [PATCH V5] Work to enable SmartMedia/xD support Maxim Levitsky
2010-01-30 15:02 ` [PATCH 10/17] MTD: nand: make reads using MTD_OOB_RAW affect only ECC validation Maxim Levitsky
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=1265361901.15383.9.camel@maxim-laptop \
--to=maximlevitsky@gmail.com \
--cc=dedekind1@gmail.com \
--cc=dwmw2@infradead.org \
--cc=joern@logfs.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-mtd@lists.infradead.org \
--cc=oakad@yahoo.com \
--cc=tglx@linutronix.de \
--cc=vitalywool@gmail.com \
/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