summaryrefslogtreecommitdiff
path: root/target/linux/mvebu/patches-3.10/0091-mtd-add-data-structures-for-Extended-Parameter-Page.patch
diff options
context:
space:
mode:
Diffstat (limited to 'target/linux/mvebu/patches-3.10/0091-mtd-add-data-structures-for-Extended-Parameter-Page.patch')
-rw-r--r--target/linux/mvebu/patches-3.10/0091-mtd-add-data-structures-for-Extended-Parameter-Page.patch85
1 files changed, 0 insertions, 85 deletions
diff --git a/target/linux/mvebu/patches-3.10/0091-mtd-add-data-structures-for-Extended-Parameter-Page.patch b/target/linux/mvebu/patches-3.10/0091-mtd-add-data-structures-for-Extended-Parameter-Page.patch
deleted file mode 100644
index e772d09..0000000
--- a/target/linux/mvebu/patches-3.10/0091-mtd-add-data-structures-for-Extended-Parameter-Page.patch
+++ /dev/null
@@ -1,85 +0,0 @@
-From 50a7db84f71e7c4779596fb5f8efb579a5d29f97 Mon Sep 17 00:00:00 2001
-From: Huang Shijie <b32955@freescale.com>
-Date: Fri, 17 May 2013 11:17:27 +0800
-Subject: [PATCH 091/203] mtd: add data structures for Extended Parameter Page
-
-Since the ONFI 2.1, the onfi spec adds the Extended Parameter Page
-to store the ECC info.
-
-The onfi spec tells us that if the nand chip's recommended ECC codeword
-size is not 512 bytes, then the @ecc_bits is 0xff. The host _SHOULD_ then
-read the Extended ECC information that is part of the extended parameter
-page to retrieve the ECC requirements for this device.
-
-This patch adds
- [1] the neccessary fields for nand_onfi_params{},
- [2] and adds the onfi_ext_ecc_info{} for Extended ECC information,
- [3] adds onfi_ext_section{} for extended sections,
- [4] and adds onfi_ext_param_page{} for the Extended Parameter Page.
-
-Acked-by: Pekon Gupta <pekon@ti.com>
-Signed-off-by: Huang Shijie <b32955@freescale.com>
-Reviewed-and-tested-by: Brian Norris <computersforpeace@gmail.com>
-[Brian: amended for checkpatch.pl]
-Signed-off-by: Brian Norris <computersforpeace@gmail.com>
-
-Signed-off-by: David Woodhouse <David.Woodhouse@intel.com>
----
- include/linux/mtd/nand.h | 39 ++++++++++++++++++++++++++++++++++++++-
- 1 file changed, 38 insertions(+), 1 deletion(-)
-
---- a/include/linux/mtd/nand.h
-+++ b/include/linux/mtd/nand.h
-@@ -224,7 +224,10 @@ struct nand_onfi_params {
- __le16 revision;
- __le16 features;
- __le16 opt_cmd;
-- u8 reserved[22];
-+ u8 reserved0[2];
-+ __le16 ext_param_page_length; /* since ONFI 2.1 */
-+ u8 num_of_param_pages; /* since ONFI 2.1 */
-+ u8 reserved1[17];
-
- /* manufacturer information block */
- char manufacturer[12];
-@@ -281,6 +284,40 @@ struct nand_onfi_params {
-
- #define ONFI_CRC_BASE 0x4F4E
-
-+/* Extended ECC information Block Definition (since ONFI 2.1) */
-+struct onfi_ext_ecc_info {
-+ u8 ecc_bits;
-+ u8 codeword_size;
-+ __le16 bb_per_lun;
-+ __le16 block_endurance;
-+ u8 reserved[2];
-+} __packed;
-+
-+#define ONFI_SECTION_TYPE_0 0 /* Unused section. */
-+#define ONFI_SECTION_TYPE_1 1 /* for additional sections. */
-+#define ONFI_SECTION_TYPE_2 2 /* for ECC information. */
-+struct onfi_ext_section {
-+ u8 type;
-+ u8 length;
-+} __packed;
-+
-+#define ONFI_EXT_SECTION_MAX 8
-+
-+/* Extended Parameter Page Definition (since ONFI 2.1) */
-+struct onfi_ext_param_page {
-+ __le16 crc;
-+ u8 sig[4]; /* 'E' 'P' 'P' 'S' */
-+ u8 reserved0[10];
-+ struct onfi_ext_section sections[ONFI_EXT_SECTION_MAX];
-+
-+ /*
-+ * The actual size of the Extended Parameter Page is in
-+ * @ext_param_page_length of nand_onfi_params{}.
-+ * The following are the variable length sections.
-+ * So we do not add any fields below. Please see the ONFI spec.
-+ */
-+} __packed;
-+
- /**
- * struct nand_hw_control - Control structure for hardware controller (e.g ECC generator) shared among independent devices
- * @lock: protection lock