aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAndrea Adami <andrea.adami@gmail.com>2014-05-30 00:56:08 +0200
committerPaul Eggleton <paul.eggleton@linux.intel.com>2014-06-03 21:57:02 +0100
commit5d8b11f28917774cf72b2f0a0df8bdd94734ef85 (patch)
tree2c6f0d3237cec6d50686823e6fcd19a431dfa10a
parentdac17673f683805bbb8bea643725c48a1afecf7c (diff)
downloadmeta-handheld-5d8b11f28917774cf72b2f0a0df8bdd94734ef85.tar.gz
linux-yocto_3.14: collie: remove detection hack
The collie used for development has unfortunately an hw flaw and the CFI table is missing on one NOR chip. Further testings on other models are giving normal readings. Signed-off-by: Andrea Adami <andrea.adami@gmail.com>
-rw-r--r--recipes-kernel/linux/linux-yocto-3.14/collie/collie-match-cfi-qry.patch47
-rw-r--r--recipes-kernel/linux/linux-yocto_3.14.bbappend1
2 files changed, 0 insertions, 48 deletions
diff --git a/recipes-kernel/linux/linux-yocto-3.14/collie/collie-match-cfi-qry.patch b/recipes-kernel/linux/linux-yocto-3.14/collie/collie-match-cfi-qry.patch
deleted file mode 100644
index a315d93..0000000
--- a/recipes-kernel/linux/linux-yocto-3.14/collie/collie-match-cfi-qry.patch
+++ /dev/null
@@ -1,47 +0,0 @@
-From 66ec11df6561d5ba7cdf41977af828a53ba6b99f Mon Sep 17 00:00:00 2001
-From: Andrea Adami <andrea.adami@gmail.com>
-Date: Sat, 1 Feb 2014 13:17:24 +0100
-Subject: [PATCH] mtd: cfi_util.c: force CFI detection of 2x LH28F640BF
-
-Signed-off-by: Andrea Adami <andrea.adami@gmail.com>
----
- drivers/mtd/chips/cfi_util.c | 16 ++++++++++++++++
- 1 file changed, 16 insertions(+)
-
-diff --git a/drivers/mtd/chips/cfi_util.c b/drivers/mtd/chips/cfi_util.c
-index f992418..2c7a13d 100644
---- a/drivers/mtd/chips/cfi_util.c
-+++ b/drivers/mtd/chips/cfi_util.c
-@@ -29,6 +29,7 @@ int __xipram cfi_qry_present(struct map_info *map, __u32 base,
- int osf = cfi->interleave * cfi->device_type; /* scale factor */
- map_word val[3];
- map_word qry[3];
-+ unsigned long mask = (1 << (cfi->device_type * 8)) - 1;
-
- qry[0] = cfi_build_cmd('Q', map, cfi);
- qry[1] = cfi_build_cmd('R', map, cfi);
-@@ -38,6 +39,21 @@ int __xipram cfi_qry_present(struct map_info *map, __u32 base,
- val[1] = map_read(map, base + osf*0x11);
- val[2] = map_read(map, base + osf*0x12);
-
-+ /* Apparently only one of the 2 interleaved LH28F640BF 16 bit chips on
-+ * a 32 bit wide bus is answering to the CFI Query.
-+ * Using the expected map bankwidth=4 and chip interleave=2 we get wrong
-+ * readings like 0xffff0051 instead of 0x00510051 etc.
-+ * We take the valid bytes and recreate the expected answer as workaround.
-+ */
-+ if (((val[0].x[0] >> (cfi->device_type * 8)) == mask) &&
-+ ((val[1].x[0] >> (cfi->device_type * 8)) == mask) &&
-+ ((val[2].x[0] >> (cfi->device_type * 8)) == mask))
-+ {
-+ val[0].x[0] = (val[0].x[0] & mask) + ((val[0].x[0] & mask) << (cfi->device_type * 8));
-+ val[1].x[0] = (val[1].x[0] & mask) + ((val[1].x[0] & mask) << (cfi->device_type * 8));
-+ val[2].x[0] = (val[2].x[0] & mask) + ((val[2].x[0] & mask) << (cfi->device_type * 8));
-+ }
-+
- if (!map_word_equal(map, qry[0], val[0]))
- return 0;
-
---
-1.8.1.5
-
diff --git a/recipes-kernel/linux/linux-yocto_3.14.bbappend b/recipes-kernel/linux/linux-yocto_3.14.bbappend
index 9591f1a..79fff8d 100644
--- a/recipes-kernel/linux/linux-yocto_3.14.bbappend
+++ b/recipes-kernel/linux/linux-yocto_3.14.bbappend
@@ -55,7 +55,6 @@ SRC_URI_append_collie = " \
\
file://collie-cfi-probe-again.patch \
file://collie-mtd-resize.patch \
- file://collie-match-cfi-qry.patch \
file://collie-LH28F640BF.patch \
file://collie-add-bootblock.patch \
\