[PATCHv2 1/3] mtd: onenand: add option and variable for cache program feature

Kyungmin Park kyungmin.park at samsung.com
Wed Nov 3 07:06:21 EDT 2010


Acked-by: Kyungmin Park <kyungmin.park at samsung.com>

On Wed, Nov 3, 2010 at 7:55 PM, Roman Tereshonkov
<roman.tereshonkov at nokia.com> wrote:
> A new option is added for cache program feature. A new variable
> ongoing is introduced for onenand_chip to handle the multi-command
> cache program operation.
>
> Signed-off-by: Roman Tereshonkov <roman.tereshonkov at nokia.com>
> ---
>  include/linux/mtd/onenand.h |   12 ++++++++++++
>  1 files changed, 12 insertions(+), 0 deletions(-)
>
> diff --git a/include/linux/mtd/onenand.h b/include/linux/mtd/onenand.h
> index 0c8815b..6da3fe3 100644
> --- a/include/linux/mtd/onenand.h
> +++ b/include/linux/mtd/onenand.h
> @@ -137,6 +137,14 @@ struct onenand_chip {
>        void                    *bbm;
>
>        void                    *priv;
> +
> +       /*
> +        * Shows that the current operation is composed
> +        * of sequence of commands. For example, cache program.
> +        * Such command status OnGo bit is checked at the end of
> +        * sequence.
> +        */
> +       unsigned int            ongoing;
>  };
>
>  /*
> @@ -171,6 +179,9 @@ struct onenand_chip {
>  #define ONENAND_IS_2PLANE(this)                        (0)
>  #endif
>
> +#define ONENAND_IS_CACHE_PROGRAM(this)                                 \
> +       (this->options & ONENAND_HAS_CACHE_PROGRAM)
> +
>  /* Check byte access in OneNAND */
>  #define ONENAND_CHECK_BYTE_ACCESS(addr)                (addr & 0x1)
>
> @@ -181,6 +192,7 @@ struct onenand_chip {
>  #define ONENAND_HAS_UNLOCK_ALL         (0x0002)
>  #define ONENAND_HAS_2PLANE             (0x0004)
>  #define ONENAND_HAS_4KB_PAGE           (0x0008)
> +#define ONENAND_HAS_CACHE_PROGRAM      (0x0010)
>  #define ONENAND_SKIP_UNLOCK_CHECK      (0x0100)
>  #define ONENAND_PAGEBUF_ALLOC          (0x1000)
>  #define ONENAND_OOBBUF_ALLOC           (0x2000)
> --
> 1.7.0.4
>
>
> ______________________________________________________
> Linux MTD discussion mailing list
> http://lists.infradead.org/mailman/listinfo/linux-mtd/
>



More information about the linux-mtd mailing list