Refreshed all patches.
Remove upstreamed:
- 950-0307-Revert-pwm-Set-class-for-exported-channels-in-sysfs.patch
Compile-tested on: cns3xxx
Runtime-tested on: cns3xxx
Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
LINUX_VERSION-4.9 = .190
LINUX_VERSION-4.14 = .140
-LINUX_VERSION-4.19 = .67
+LINUX_VERSION-4.19 = .68
LINUX_KERNEL_HASH-4.9.190 = fe8a1ca080a462de6832762ba8b71410b828f0e52c1e11d3c46d83e9ac1e0a16
LINUX_KERNEL_HASH-4.14.140 = 795eed2515715ef29edd24f7a70912040cc206ec9a049c370cb305515f3fbdf2
-LINUX_KERNEL_HASH-4.19.67 = 5a1c3d60c38a7a0a086fcd6fdce5603c31c487852b1b64c071ee6de62c98a502
+LINUX_KERNEL_HASH-4.19.68 = 91875940518c0a8cecfa02ffcf371e4d8266b80971a95103e89a86b8a326a02b
remove_uri_prefix=$(subst git://,,$(subst http://,,$(subst https://,,$(1))))
sanitize_uri=$(call qstrip,$(subst @,_,$(subst :,_,$(subst .,_,$(subst -,_,$(subst /,_,$(1)))))))
--- a/drivers/mtd/spi-nor/spi-nor.c
+++ b/drivers/mtd/spi-nor/spi-nor.c
-@@ -1295,6 +1295,18 @@ static const struct flash_info *spi_nor_
+@@ -1297,6 +1297,18 @@ static const struct flash_info *spi_nor_
}
dev_err(nor->dev, "unrecognized JEDEC id bytes: %02x, %02x, %02x\n",
id[0], id[1], id[2]);
+++ /dev/null
-From 50edca9454fa2c35a2c3537a024a587addb4e823 Mon Sep 17 00:00:00 2001
-From: Fabrice Gasnier <fabrice.gasnier@st.com>
-Date: Mon, 1 Oct 2018 15:23:56 +0200
-Subject: [PATCH 307/773] Revert "pwm: Set class for exported channels in
- sysfs"
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
-commit c289d6625237aa785b484b4e94c23b3b91ea7e60 upstream.
-
-This reverts commit 7e5d1fd75c3dde9fc10c4472b9368089d1b81d00 ("pwm: Set
-class for exported channels in sysfs") as it causes regression with
-multiple pwm chip[1], when exporting a pwm channel (echo X > export):
-
-- ABI (Documentation/ABI/testing/sysfs-class-pwm) states pwmX should be
- created in /sys/class/pwm/pwmchipN/pwmX
-- Reverted patch causes new entry to be also created directly in
- /sys/class/pwm/pwmX
-- 1st time, exporting pwmX will create an entry in /sys/class/pwm/pwmX
-- class attributes are added under pwmX folder, such as export, unexport
- npwm, symlinks. This is wrong as it belongs to pwmchipN. It may cause
- bad behavior and report wrong values.
-- when another export happens on another pwmchip, it can't be created
- (e.g. -EEXIST). This is causing the issue with multiple pwmchip.
-
-Example on stm32 (stm32429i-eval) platform:
-$ ls /sys/class/pwm
-pwmchip0 pwmchip4
-
-$ cd /sys/class/pwm/pwmchip0/
-$ echo 0 > export
-$ ls /sys/class/pwm
-pwm0 pwmchip0 pwmchip4
-
-$ cd /sys/class/pwm/pwmchip4/
-$ echo 0 > export
-sysfs: cannot create duplicate filename '/class/pwm/pwm0'
-...Exception stack follows...
-
-This is also seen on other platform [2]
-
-[1] https://lkml.org/lkml/2018/9/25/713
-[2] https://lkml.org/lkml/2018/9/25/447
-
-Signed-off-by: Fabrice Gasnier <fabrice.gasnier@st.com>
-Tested-by: Gottfried Haider <gottfried.haider@gmail.com>
-Tested-by: Michal Vokáč <michal.vokac@ysoft.com>
-Signed-off-by: Thierry Reding <thierry.reding@gmail.com>
----
- drivers/pwm/sysfs.c | 1 -
- 1 file changed, 1 deletion(-)
-
---- a/drivers/pwm/sysfs.c
-+++ b/drivers/pwm/sysfs.c
-@@ -263,7 +263,6 @@ static int pwm_export_child(struct devic
- export->pwm = pwm;
- mutex_init(&export->lock);
-
-- export->child.class = parent->class;
- export->child.release = pwm_export_release;
- export->child.parent = parent;
- export->child.devt = MKDEV(0, 0);
if (!net_eq(dev_net(dev), sock_net(sk)))
goto drop;
-@@ -3251,6 +3253,7 @@ static int packet_create(struct net *net
+@@ -3258,6 +3260,7 @@ static int packet_create(struct net *net
mutex_init(&po->pg_vec_lock);
po->rollover = NULL;
po->prot_hook.func = packet_rcv;
if (sock->type == SOCK_PACKET)
po->prot_hook.func = packet_rcv_spkt;
-@@ -3862,6 +3865,16 @@ packet_setsockopt(struct socket *sock, i
+@@ -3869,6 +3872,16 @@ packet_setsockopt(struct socket *sock, i
po->xmit = val ? packet_direct_xmit : dev_queue_xmit;
return 0;
}
default:
return -ENOPROTOOPT;
}
-@@ -3914,6 +3927,13 @@ static int packet_getsockopt(struct sock
+@@ -3921,6 +3934,13 @@ static int packet_getsockopt(struct sock
case PACKET_VNET_HDR:
val = po->has_vnet_hdr;
break;
--- a/drivers/mtd/spi-nor/spi-nor.c
+++ b/drivers/mtd/spi-nor/spi-nor.c
-@@ -1092,6 +1092,7 @@ static const struct flash_info spi_nor_i
- { "mx25l12805d", INFO(0xc22018, 0, 64 * 1024, 256, 0) },
- { "mx25l12855e", INFO(0xc22618, 0, 64 * 1024, 256, 0) },
+@@ -1094,6 +1094,7 @@ static const struct flash_info spi_nor_i
+ { "mx25u12835f", INFO(0xc22538, 0, 64 * 1024, 256,
+ SECT_4K | SPI_NOR_DUAL_READ | SPI_NOR_QUAD_READ) },
{ "mx25l25635e", INFO(0xc22019, 0, 64 * 1024, 512, SPI_NOR_DUAL_READ | SPI_NOR_QUAD_READ) },
+ { "mx25l25635f", INFO(0xc22019, 0, 64 * 1024, 512, SPI_NOR_DUAL_READ | SPI_NOR_QUAD_READ | SPI_NOR_4B_OPCODES) },
{ "mx25u25635f", INFO(0xc22539, 0, 64 * 1024, 512, SECT_4K | SPI_NOR_4B_OPCODES) },
{ "mx25l25655e", INFO(0xc22619, 0, 64 * 1024, 512, 0) },
{ "mx66l51235l", INFO(0xc2201a, 0, 64 * 1024, 1024, SPI_NOR_DUAL_READ | SPI_NOR_QUAD_READ | SPI_NOR_4B_OPCODES) },
-@@ -1274,11 +1275,12 @@ static const struct flash_info spi_nor_i
+@@ -1276,11 +1277,12 @@ static const struct flash_info spi_nor_i
{ },
};
tmp = nor->read_reg(nor, SPINOR_OP_RDID, id, SPI_NOR_MAX_ID_LEN);
if (tmp < 0) {
-@@ -1289,10 +1291,16 @@ static const struct flash_info *spi_nor_
+@@ -1291,10 +1293,16 @@ static const struct flash_info *spi_nor_
for (tmp = 0; tmp < ARRAY_SIZE(spi_nor_ids) - 1; tmp++) {
info = &spi_nor_ids[tmp];
if (info->id_len) {
dev_err(nor->dev, "unrecognized JEDEC id bytes: %02x, %02x, %02x\n",
id[0], id[1], id[2]);
return ERR_PTR(-ENODEV);
-@@ -2826,7 +2834,7 @@ int spi_nor_scan(struct spi_nor *nor, co
+@@ -2828,7 +2836,7 @@ int spi_nor_scan(struct spi_nor *nor, co
info = spi_nor_match_id(name);
/* Try to auto-detect if chip name wasn't specified or not found */
if (!info)
if (IS_ERR_OR_NULL(info))
return -ENOENT;
-@@ -2837,7 +2845,7 @@ int spi_nor_scan(struct spi_nor *nor, co
+@@ -2839,7 +2847,7 @@ int spi_nor_scan(struct spi_nor *nor, co
if (name && info->id_len) {
const struct flash_info *jinfo;