summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorPeter Robinson <pbrobinson@gmail.com>2018-04-12 18:11:57 +0100
committerPeter Robinson <pbrobinson@gmail.com>2018-04-12 18:11:57 +0100
commit40766321c4c36d31471fbcc095303f49251ea019 (patch)
tree4f8802becb2abbfe6351e9d453a67b93eb959325
parentdf0ed2af7a5b7a0f4ba05edc2280ee55ab04b67c (diff)
downloadkernel-40766321c4c36d31471fbcc095303f49251ea019.tar.gz
kernel-40766321c4c36d31471fbcc095303f49251ea019.tar.xz
kernel-40766321c4c36d31471fbcc095303f49251ea019.zip
Disable tps65217-charger, fix for the BeagleBone boot failure, Further fix for ThunderX ZIP driver, fix olpc i686 config
-rw-r--r--clk-ti-fix-flag-space-conflict-with-clkctrl-clocks.patch58
-rw-r--r--configs/fedora/generic/arm/armv7/armv7/CONFIG_CHARGER_TPS652172
-rw-r--r--configs/fedora/generic/arm/armv7/armv7/CONFIG_MFD_TPS652171
-rw-r--r--configs/fedora/generic/x86/i686/CONFIG_MFD_CS55352
-rw-r--r--configs/fedora/generic/x86/i686PAE/CONFIG_MFD_CS55352
-rw-r--r--crypto-testmgr-Allow-different-compression-results.patch163
-rw-r--r--kernel-armv7hl-debug.config4
-rw-r--r--kernel-armv7hl.config4
-rw-r--r--kernel-i686-PAE.config2
-rw-r--r--kernel-i686-PAEdebug.config2
-rw-r--r--kernel-i686-debug.config2
-rw-r--r--kernel-i686.config2
-rw-r--r--kernel.spec11
13 files changed, 242 insertions, 13 deletions
diff --git a/clk-ti-fix-flag-space-conflict-with-clkctrl-clocks.patch b/clk-ti-fix-flag-space-conflict-with-clkctrl-clocks.patch
new file mode 100644
index 000000000..c1ef68279
--- /dev/null
+++ b/clk-ti-fix-flag-space-conflict-with-clkctrl-clocks.patch
@@ -0,0 +1,58 @@
+From patchwork Tue Mar 27 17:47:04 2018
+Content-Type: text/plain; charset="utf-8"
+MIME-Version: 1.0
+Content-Transfer-Encoding: 7bit
+Subject: clk: ti: fix flag space conflict with clkctrl clocks
+From: Tero Kristo <t-kristo@ti.com>
+X-Patchwork-Id: 10311335
+Message-Id: <1522172824-14094-1-git-send-email-t-kristo@ti.com>
+To: <sboyd@kernel.org>, <mturquette@baylibre.com>,
+ <linux-omap@vger.kernel.org>, <linux-clk@vger.kernel.org>,
+ <tony@atomide.com>
+Cc: <arnd@arndb.de>, <linux-arm-kernel@lists.infradead.org>
+Date: Tue, 27 Mar 2018 20:47:04 +0300
+
+The introduction of support for CLK_SET_RATE_PARENT flag for clkctrl
+clocks used a generic clock flag, which causes a conflict with the
+rest of the clkctrl flags, namely the NO_IDLEST flag. This can cause
+boot failures on certain platforms where this flag is introduced, by
+omitting the wait for the clockctrl module to be fully enabled before
+proceeding with rest of the code.
+
+Fix this by moving all the clkctrl specific flags to their own bit-range.
+
+Signed-off-by: Tero Kristo <t-kristo@ti.com>
+Fixes: 49159a9dc3da ("clk: ti: add support for CLK_SET_RATE_PARENT flag")
+Reported-by: Christophe Lyon <christophe.lyon@linaro.org>
+Tested-by: Tony Lindgren <tony@atomide.com>
+---
+ drivers/clk/ti/clock.h | 9 +++++----
+ 1 file changed, 5 insertions(+), 4 deletions(-)
+
+diff --git a/drivers/clk/ti/clock.h b/drivers/clk/ti/clock.h
+index 90b86aa..b582780 100644
+--- a/drivers/clk/ti/clock.h
++++ b/drivers/clk/ti/clock.h
+@@ -76,6 +76,11 @@ enum {
+ #define CLKF_CORE (1 << 9)
+ #define CLKF_J_TYPE (1 << 10)
+
++/* CLKCTRL flags */
++#define CLKF_SW_SUP BIT(5)
++#define CLKF_HW_SUP BIT(6)
++#define CLKF_NO_IDLEST BIT(7)
++
+ #define CLK(dev, con, ck) \
+ { \
+ .lk = { \
+@@ -185,10 +190,6 @@ struct omap_clkctrl_data {
+ extern const struct omap_clkctrl_data dm814_clkctrl_data[];
+ extern const struct omap_clkctrl_data dm816_clkctrl_data[];
+
+-#define CLKF_SW_SUP BIT(0)
+-#define CLKF_HW_SUP BIT(1)
+-#define CLKF_NO_IDLEST BIT(2)
+-
+ typedef void (*ti_of_clk_init_cb_t)(void *, struct device_node *);
+
+ struct clk *ti_clk_register(struct device *dev, struct clk_hw *hw,
diff --git a/configs/fedora/generic/arm/armv7/armv7/CONFIG_CHARGER_TPS65217 b/configs/fedora/generic/arm/armv7/armv7/CONFIG_CHARGER_TPS65217
index e77c2fc05..629b8503c 100644
--- a/configs/fedora/generic/arm/armv7/armv7/CONFIG_CHARGER_TPS65217
+++ b/configs/fedora/generic/arm/armv7/armv7/CONFIG_CHARGER_TPS65217
@@ -1 +1 @@
-CONFIG_CHARGER_TPS65217=m
+# CONFIG_CHARGER_TPS65217 is not set
diff --git a/configs/fedora/generic/arm/armv7/armv7/CONFIG_MFD_TPS65217 b/configs/fedora/generic/arm/armv7/armv7/CONFIG_MFD_TPS65217
deleted file mode 100644
index 54a061854..000000000
--- a/configs/fedora/generic/arm/armv7/armv7/CONFIG_MFD_TPS65217
+++ /dev/null
@@ -1 +0,0 @@
-CONFIG_MFD_TPS65217=y
diff --git a/configs/fedora/generic/x86/i686/CONFIG_MFD_CS5535 b/configs/fedora/generic/x86/i686/CONFIG_MFD_CS5535
index ac2f3c2fc..e3d240387 100644
--- a/configs/fedora/generic/x86/i686/CONFIG_MFD_CS5535
+++ b/configs/fedora/generic/x86/i686/CONFIG_MFD_CS5535
@@ -1 +1 @@
-CONFIG_MFD_CS5535=m
+CONFIG_MFD_CS5535=y
diff --git a/configs/fedora/generic/x86/i686PAE/CONFIG_MFD_CS5535 b/configs/fedora/generic/x86/i686PAE/CONFIG_MFD_CS5535
index ac2f3c2fc..e3d240387 100644
--- a/configs/fedora/generic/x86/i686PAE/CONFIG_MFD_CS5535
+++ b/configs/fedora/generic/x86/i686PAE/CONFIG_MFD_CS5535
@@ -1 +1 @@
-CONFIG_MFD_CS5535=m
+CONFIG_MFD_CS5535=y
diff --git a/crypto-testmgr-Allow-different-compression-results.patch b/crypto-testmgr-Allow-different-compression-results.patch
new file mode 100644
index 000000000..c752770ef
--- /dev/null
+++ b/crypto-testmgr-Allow-different-compression-results.patch
@@ -0,0 +1,163 @@
+From patchwork Wed Apr 11 18:28:32 2018
+Content-Type: text/plain; charset="utf-8"
+MIME-Version: 1.0
+Content-Transfer-Encoding: 7bit
+Subject: crypto: testmgr: Allow different compression results
+From: Jan Glauber <jglauber@cavium.com>
+X-Patchwork-Id: 10336001
+Message-Id: <20180411182832.27761-1-jglauber@cavium.com>
+To: Herbert Xu <herbert@gondor.apana.org.au>
+Cc: "David S . Miller" <davem@davemloft.net>,
+ linux-crypto@vger.kernel.org, linux-kernel@vger.kernel.org,
+ Mahipal Challa <mchalla@cavium.com>,
+ Balakrishna Bhamidipati <bbhamidipati@cavium.com>,
+ Jan Glauber <jglauber@cavium.com>
+Date: Wed, 11 Apr 2018 20:28:32 +0200
+
+From: Mahipal Challa <mchalla@cavium.com>
+
+The following error is triggered by the ThunderX ZIP driver
+if the testmanager is enabled:
+
+[ 199.069437] ThunderX-ZIP 0000:03:00.0: Found ZIP device 0 177d:a01a on Node 0
+[ 199.073573] alg: comp: Compression test 1 failed for deflate-generic: output len = 37
+
+The reason for this error is the verification of the compression
+results. Verifying the compression result only works if all
+algorithm parameters are identical, in this case to the software
+implementation.
+
+Different compression engines like the ThunderX ZIP coprocessor
+might yield different compression results by tuning the
+algorithm parameters. In our case the compressed result is
+shorter than the test vector.
+
+We should not forbid different compression results but only
+check that compression -> decompression yields the same
+result. This is done already in the acomp test. Do something
+similar for test_comp().
+
+Signed-off-by: Mahipal Challa <mchalla@cavium.com>
+Signed-off-by: Balakrishna Bhamidipati <bbhamidipati@cavium.com>
+[jglauber@cavium.com: removed unrelated printk changes, rewrote commit msg,
+ fixed whitespace and unneeded initialization]
+Signed-off-by: Jan Glauber <jglauber@cavium.com>
+---
+ crypto/testmgr.c | 50 +++++++++++++++++++++++++++++++++++++-------------
+ 1 file changed, 37 insertions(+), 13 deletions(-)
+
+diff --git a/crypto/testmgr.c b/crypto/testmgr.c
+index af4a01c..627e82e 100644
+--- a/crypto/testmgr.c
++++ b/crypto/testmgr.c
+@@ -1342,19 +1342,30 @@ static int test_comp(struct crypto_comp *tfm,
+ int ctcount, int dtcount)
+ {
+ const char *algo = crypto_tfm_alg_driver_name(crypto_comp_tfm(tfm));
++ char *output, *decomp_output;
+ unsigned int i;
+- char result[COMP_BUF_SIZE];
+ int ret;
+
++ output = kmalloc(COMP_BUF_SIZE, GFP_KERNEL);
++ if (!output)
++ return -ENOMEM;
++
++ decomp_output = kmalloc(COMP_BUF_SIZE, GFP_KERNEL);
++ if (!decomp_output) {
++ kfree(output);
++ return -ENOMEM;
++ }
++
+ for (i = 0; i < ctcount; i++) {
+ int ilen;
+ unsigned int dlen = COMP_BUF_SIZE;
+
+- memset(result, 0, sizeof (result));
++ memset(output, 0, sizeof(COMP_BUF_SIZE));
++ memset(decomp_output, 0, sizeof(COMP_BUF_SIZE));
+
+ ilen = ctemplate[i].inlen;
+ ret = crypto_comp_compress(tfm, ctemplate[i].input,
+- ilen, result, &dlen);
++ ilen, output, &dlen);
+ if (ret) {
+ printk(KERN_ERR "alg: comp: compression failed "
+ "on test %d for %s: ret=%d\n", i + 1, algo,
+@@ -1362,7 +1373,17 @@ static int test_comp(struct crypto_comp *tfm,
+ goto out;
+ }
+
+- if (dlen != ctemplate[i].outlen) {
++ ilen = dlen;
++ dlen = COMP_BUF_SIZE;
++ ret = crypto_comp_decompress(tfm, output,
++ ilen, decomp_output, &dlen);
++ if (ret) {
++ pr_err("alg: comp: compression failed: decompress: on test %d for %s failed: ret=%d\n",
++ i + 1, algo, -ret);
++ goto out;
++ }
++
++ if (dlen != ctemplate[i].inlen) {
+ printk(KERN_ERR "alg: comp: Compression test %d "
+ "failed for %s: output len = %d\n", i + 1, algo,
+ dlen);
+@@ -1370,10 +1391,11 @@ static int test_comp(struct crypto_comp *tfm,
+ goto out;
+ }
+
+- if (memcmp(result, ctemplate[i].output, dlen)) {
+- printk(KERN_ERR "alg: comp: Compression test %d "
+- "failed for %s\n", i + 1, algo);
+- hexdump(result, dlen);
++ if (memcmp(decomp_output, ctemplate[i].input,
++ ctemplate[i].inlen)) {
++ pr_err("alg: comp: compression failed: output differs: on test %d for %s\n",
++ i + 1, algo);
++ hexdump(decomp_output, dlen);
+ ret = -EINVAL;
+ goto out;
+ }
+@@ -1383,11 +1405,11 @@ static int test_comp(struct crypto_comp *tfm,
+ int ilen;
+ unsigned int dlen = COMP_BUF_SIZE;
+
+- memset(result, 0, sizeof (result));
++ memset(decomp_output, 0, sizeof(COMP_BUF_SIZE));
+
+ ilen = dtemplate[i].inlen;
+ ret = crypto_comp_decompress(tfm, dtemplate[i].input,
+- ilen, result, &dlen);
++ ilen, decomp_output, &dlen);
+ if (ret) {
+ printk(KERN_ERR "alg: comp: decompression failed "
+ "on test %d for %s: ret=%d\n", i + 1, algo,
+@@ -1403,10 +1425,10 @@ static int test_comp(struct crypto_comp *tfm,
+ goto out;
+ }
+
+- if (memcmp(result, dtemplate[i].output, dlen)) {
++ if (memcmp(decomp_output, dtemplate[i].output, dlen)) {
+ printk(KERN_ERR "alg: comp: Decompression test %d "
+ "failed for %s\n", i + 1, algo);
+- hexdump(result, dlen);
++ hexdump(decomp_output, dlen);
+ ret = -EINVAL;
+ goto out;
+ }
+@@ -1415,11 +1437,13 @@ static int test_comp(struct crypto_comp *tfm,
+ ret = 0;
+
+ out:
++ kfree(decomp_output);
++ kfree(output);
+ return ret;
+ }
+
+ static int test_acomp(struct crypto_acomp *tfm,
+- const struct comp_testvec *ctemplate,
++ const struct comp_testvec *ctemplate,
+ const struct comp_testvec *dtemplate,
+ int ctcount, int dtcount)
+ {
diff --git a/kernel-armv7hl-debug.config b/kernel-armv7hl-debug.config
index 20c123d6e..a036d4594 100644
--- a/kernel-armv7hl-debug.config
+++ b/kernel-armv7hl-debug.config
@@ -883,7 +883,7 @@ CONFIG_CHARGER_QCOM_SMBB=m
# CONFIG_CHARGER_SBS is not set
CONFIG_CHARGER_SMB347=m
CONFIG_CHARGER_TPS65090=m
-CONFIG_CHARGER_TPS65217=m
+# CONFIG_CHARGER_TPS65217 is not set
CONFIG_CHARGER_TWL4030=m
# CONFIG_CHASH_SELFTEST is not set
# CONFIG_CHASH_STATS is not set
@@ -3333,7 +3333,7 @@ CONFIG_MFD_TI_LMU=m
# CONFIG_MFD_TIMBERDALE is not set
# CONFIG_MFD_TPS65086 is not set
CONFIG_MFD_TPS65090=y
-CONFIG_MFD_TPS65217=y
+# CONFIG_MFD_TPS65217 is not set
CONFIG_MFD_TPS65218=m
CONFIG_MFD_TPS6586X=y
CONFIG_MFD_TPS65910=y
diff --git a/kernel-armv7hl.config b/kernel-armv7hl.config
index e79bc3e44..e0428c8b9 100644
--- a/kernel-armv7hl.config
+++ b/kernel-armv7hl.config
@@ -882,7 +882,7 @@ CONFIG_CHARGER_QCOM_SMBB=m
# CONFIG_CHARGER_SBS is not set
CONFIG_CHARGER_SMB347=m
CONFIG_CHARGER_TPS65090=m
-CONFIG_CHARGER_TPS65217=m
+# CONFIG_CHARGER_TPS65217 is not set
CONFIG_CHARGER_TWL4030=m
# CONFIG_CHASH_SELFTEST is not set
# CONFIG_CHASH_STATS is not set
@@ -3312,7 +3312,7 @@ CONFIG_MFD_TI_LMU=m
# CONFIG_MFD_TIMBERDALE is not set
# CONFIG_MFD_TPS65086 is not set
CONFIG_MFD_TPS65090=y
-CONFIG_MFD_TPS65217=y
+# CONFIG_MFD_TPS65217 is not set
CONFIG_MFD_TPS65218=m
CONFIG_MFD_TPS6586X=y
CONFIG_MFD_TPS65910=y
diff --git a/kernel-i686-PAE.config b/kernel-i686-PAE.config
index 8034b533c..3a69c9329 100644
--- a/kernel-i686-PAE.config
+++ b/kernel-i686-PAE.config
@@ -2955,7 +2955,7 @@ CONFIG_MFD_BD9571MWV=m
CONFIG_MFD_CORE=y
# CONFIG_MFD_CPCAP is not set
# CONFIG_MFD_CROS_EC is not set
-CONFIG_MFD_CS5535=m
+CONFIG_MFD_CS5535=y
# CONFIG_MFD_DA9052_I2C is not set
# CONFIG_MFD_DA9052_SPI is not set
# CONFIG_MFD_DA9055 is not set
diff --git a/kernel-i686-PAEdebug.config b/kernel-i686-PAEdebug.config
index f63457072..95aaed21a 100644
--- a/kernel-i686-PAEdebug.config
+++ b/kernel-i686-PAEdebug.config
@@ -2976,7 +2976,7 @@ CONFIG_MFD_BD9571MWV=m
CONFIG_MFD_CORE=y
# CONFIG_MFD_CPCAP is not set
# CONFIG_MFD_CROS_EC is not set
-CONFIG_MFD_CS5535=m
+CONFIG_MFD_CS5535=y
# CONFIG_MFD_DA9052_I2C is not set
# CONFIG_MFD_DA9052_SPI is not set
# CONFIG_MFD_DA9055 is not set
diff --git a/kernel-i686-debug.config b/kernel-i686-debug.config
index 9bacbf714..440887c14 100644
--- a/kernel-i686-debug.config
+++ b/kernel-i686-debug.config
@@ -2976,7 +2976,7 @@ CONFIG_MFD_BD9571MWV=m
CONFIG_MFD_CORE=y
# CONFIG_MFD_CPCAP is not set
# CONFIG_MFD_CROS_EC is not set
-CONFIG_MFD_CS5535=m
+CONFIG_MFD_CS5535=y
# CONFIG_MFD_DA9052_I2C is not set
# CONFIG_MFD_DA9052_SPI is not set
# CONFIG_MFD_DA9055 is not set
diff --git a/kernel-i686.config b/kernel-i686.config
index 7f6abb026..5a528effb 100644
--- a/kernel-i686.config
+++ b/kernel-i686.config
@@ -2955,7 +2955,7 @@ CONFIG_MFD_BD9571MWV=m
CONFIG_MFD_CORE=y
# CONFIG_MFD_CPCAP is not set
# CONFIG_MFD_CROS_EC is not set
-CONFIG_MFD_CS5535=m
+CONFIG_MFD_CS5535=y
# CONFIG_MFD_DA9052_I2C is not set
# CONFIG_MFD_DA9052_SPI is not set
# CONFIG_MFD_DA9055 is not set
diff --git a/kernel.spec b/kernel.spec
index 5c7883e06..abfd3db73 100644
--- a/kernel.spec
+++ b/kernel.spec
@@ -583,7 +583,13 @@ Patch304: arm-dts-imx6qdl-udoo-Disable-usbh1-to-avoid-kernel-hang.patch
# https://marc.info/?l=linux-kernel&m=152328880417846&w=2
Patch308: arm64-thunderx-crypto-zip-fixes.patch
-Patch309: arm-tegra-fix-nouveau-crash.patch
+# https://www.spinics.net/lists/linux-crypto/msg32725.html
+Patch309: crypto-testmgr-Allow-different-compression-results.patch
+
+Patch310: arm-tegra-fix-nouveau-crash.patch
+
+# https://patchwork.kernel.org/patch/10311335/
+Patch312: clk-ti-fix-flag-space-conflict-with-clkctrl-clocks.patch
# Fix USB on the RPi https://patchwork.kernel.org/patch/9879371/
Patch320: bcm283x-dma-mapping-skip-USB-devices-when-configuring-DMA-during-probe.patch
@@ -1864,6 +1870,9 @@ fi
* Thu Apr 12 2018 Peter Robinson <pbrobinson@fedoraproject.org>
- Patch to fix nouveau on Tegra platforms
- Enable IOMMU on Exynos now upstream does
+- Disable tps65217-charger on BeagleBone to fix USB-OTG port rhbz 1487399
+- Add fix for the BeagleBone boot failure
+- Further fix for ThunderX ZIP driver
* Wed Apr 11 2018 Laura Abbott <labbott@redhat.com>
- Enable JFFS2 and some MTD modules (rhbz 1474493)