diff --git a/packages/linux/package.mk b/packages/linux/package.mk index cad5441f3a..66adf58092 100644 --- a/packages/linux/package.mk +++ b/packages/linux/package.mk @@ -37,8 +37,8 @@ case "$LINUX" in PKG_SOURCE_NAME="linux-$LINUX-$PKG_VERSION.tar.gz" ;; *) - PKG_VERSION="5.0.7" - PKG_SHA256="16e177662b9fc7255bfc51018513979f6effcbe52e459c543aa83a5b15ef54ec" + PKG_VERSION="5.1.9" + PKG_SHA256="58c9eca99c3dd2fff5b559302996c985c3f3f2aad0b99b2172a61c4df7122a79" PKG_URL="https://www.kernel.org/pub/linux/kernel/v5.x/$PKG_NAME-$PKG_VERSION.tar.xz" PKG_PATCH_DIRS="default" ;; diff --git a/packages/linux/patches/default/linux-902-extend-rc6-toggle-support-for-zotac.patch b/packages/linux/patches/default/linux-902-extend-rc6-toggle-support-for-zotac.patch deleted file mode 100644 index 65fe5fd6c7..0000000000 --- a/packages/linux/patches/default/linux-902-extend-rc6-toggle-support-for-zotac.patch +++ /dev/null @@ -1,41 +0,0 @@ -From ae1ccaa3587c0bd3d6d01841fa2e668cdf738f1e Mon Sep 17 00:00:00 2001 -From: Matthias Reichl -Date: Sun, 3 Feb 2019 14:24:00 +0100 -Subject: [PATCH] media: rc: ir-rc6-decoder: enable toggle bit for Zotac - remotes - -The Zotac RC2604323/01G and RC2604329/02BG remotes use the 32-bit -rc6 protocol and toggle bit 15 (0x8000) on repeated button presses, -like MCE remotes. - -Add the customer code 0x80340000 to the 32-bit rc6 toggle -handling code to get proper scancodes and toggle reports. - -Signed-off-by: Matthias Reichl ---- - drivers/media/rc/ir-rc6-decoder.c | 2 ++ - 1 file changed, 2 insertions(+) - -diff --git a/drivers/media/rc/ir-rc6-decoder.c b/drivers/media/rc/ir-rc6-decoder.c -index d96aed1343e4..5cc302fa4daa 100644 ---- a/drivers/media/rc/ir-rc6-decoder.c -+++ b/drivers/media/rc/ir-rc6-decoder.c -@@ -40,6 +40,7 @@ - #define RC6_6A_MCE_TOGGLE_MASK 0x8000 /* for the body bits */ - #define RC6_6A_LCC_MASK 0xffff0000 /* RC6-6A-32 long customer code mask */ - #define RC6_6A_MCE_CC 0x800f0000 /* MCE customer code */ -+#define RC6_6A_ZOTAC_CC 0x80340000 /* Zotac customer code */ - #define RC6_6A_KATHREIN_CC 0x80460000 /* Kathrein RCU-676 customer code */ - #ifndef CHAR_BIT - #define CHAR_BIT 8 /* Normally in */ -@@ -246,6 +247,7 @@ static int ir_rc6_decode(struct rc_dev *dev, struct ir_raw_event ev) - switch (scancode & RC6_6A_LCC_MASK) { - case RC6_6A_MCE_CC: - case RC6_6A_KATHREIN_CC: -+ case RC6_6A_ZOTAC_CC: - protocol = RC_PROTO_RC6_MCE; - toggle = !!(scancode & RC6_6A_MCE_TOGGLE_MASK); - scancode &= ~RC6_6A_MCE_TOGGLE_MASK; --- -2.20.1 - diff --git a/packages/linux/patches/default/linux-903-backport-rcmm-ir-decoder.patch b/packages/linux/patches/default/linux-903-backport-rcmm-ir-decoder.patch deleted file mode 100644 index ae2cba8494..0000000000 --- a/packages/linux/patches/default/linux-903-backport-rcmm-ir-decoder.patch +++ /dev/null @@ -1,506 +0,0 @@ -From da8a71104dda4a85a9d9546ff462542347f8efa6 Mon Sep 17 00:00:00 2001 -From: Matthias Reichl -Date: Wed, 20 Mar 2019 09:11:53 +0100 -Subject: [PATCH] media: rc: rcmm decoder and encoder - -commit 721074b03411327e7bf41555d4cc7c18f49313f7 upstream. - -media: add support for RCMM infrared remote controls. - -Signed-off-by: Patrick Lerda -Signed-off-by: Sean Young -Signed-off-by: Mauro Carvalho Chehab -Signed-off-by: Matthias Reichl ---- - Documentation/media/lirc.h.rst.exceptions | 3 + - MAINTAINERS | 5 + - drivers/media/rc/Kconfig | 13 ++ - drivers/media/rc/Makefile | 1 + - drivers/media/rc/ir-rcmm-decoder.c | 254 ++++++++++++++++++++++ - drivers/media/rc/rc-core-priv.h | 5 + - drivers/media/rc/rc-main.c | 9 + - include/media/rc-map.h | 14 +- - include/uapi/linux/lirc.h | 6 + - tools/include/uapi/linux/lirc.h | 12 + - 10 files changed, 319 insertions(+), 3 deletions(-) - create mode 100644 drivers/media/rc/ir-rcmm-decoder.c - -diff --git a/Documentation/media/lirc.h.rst.exceptions b/Documentation/media/lirc.h.rst.exceptions -index 984b61dc3f2e..e7a41d4b3d46 100644 ---- a/Documentation/media/lirc.h.rst.exceptions -+++ b/Documentation/media/lirc.h.rst.exceptions -@@ -58,6 +58,9 @@ ignore symbol RC_PROTO_SHARP - ignore symbol RC_PROTO_XMP - ignore symbol RC_PROTO_CEC - ignore symbol RC_PROTO_IMON -+ignore symbol RC_PROTO_RCMM12 -+ignore symbol RC_PROTO_RCMM24 -+ignore symbol RC_PROTO_RCMM32 - - # Undocumented macros - -diff --git a/MAINTAINERS b/MAINTAINERS -index 9e9b19ecf6f7..57b60dd42729 100644 ---- a/MAINTAINERS -+++ b/MAINTAINERS -@@ -15837,6 +15837,11 @@ M: David Härdeman - S: Maintained - F: drivers/media/rc/winbond-cir.c - -+RCMM REMOTE CONTROLS DECODER -+M: Patrick Lerda -+S: Maintained -+F: drivers/media/rc/ir-rcmm-decoder.c -+ - WINSYSTEMS EBC-C384 WATCHDOG DRIVER - M: William Breathitt Gray - L: linux-watchdog@vger.kernel.org -diff --git a/drivers/media/rc/Kconfig b/drivers/media/rc/Kconfig -index 1021c08a9ba4..8164a889011a 100644 ---- a/drivers/media/rc/Kconfig -+++ b/drivers/media/rc/Kconfig -@@ -133,6 +133,19 @@ config IR_IMON_DECODER - remote control and you would like to use it with a raw IR - receiver, or if you wish to use an encoder to transmit this IR. - -+config IR_RCMM_DECODER -+ tristate "Enable IR raw decoder for the RC-MM protocol" -+ depends on RC_CORE -+ help -+ Enable this option when you have IR with RC-MM protocol, and -+ you need the software decoder. The driver supports 12, -+ 24 and 32 bits RC-MM variants. You can enable or disable the -+ different modes using the following RC protocol keywords: -+ 'rc-mm-12', 'rc-mm-24' and 'rc-mm-32'. -+ -+ To compile this driver as a module, choose M here: the module -+ will be called ir-rcmm-decoder. -+ - endif #RC_DECODERS - - menuconfig RC_DEVICES -diff --git a/drivers/media/rc/Makefile b/drivers/media/rc/Makefile -index e0340d043fe8..fc4058013234 100644 ---- a/drivers/media/rc/Makefile -+++ b/drivers/media/rc/Makefile -@@ -16,6 +16,7 @@ obj-$(CONFIG_IR_SHARP_DECODER) += ir-sharp-decoder.o - obj-$(CONFIG_IR_MCE_KBD_DECODER) += ir-mce_kbd-decoder.o - obj-$(CONFIG_IR_XMP_DECODER) += ir-xmp-decoder.o - obj-$(CONFIG_IR_IMON_DECODER) += ir-imon-decoder.o -+obj-$(CONFIG_IR_RCMM_DECODER) += ir-rcmm-decoder.o - - # stand-alone IR receivers/transmitters - obj-$(CONFIG_RC_ATI_REMOTE) += ati_remote.o -diff --git a/drivers/media/rc/ir-rcmm-decoder.c b/drivers/media/rc/ir-rcmm-decoder.c -new file mode 100644 -index 000000000000..f1096ac1e5c5 ---- /dev/null -+++ b/drivers/media/rc/ir-rcmm-decoder.c -@@ -0,0 +1,254 @@ -+// SPDX-License-Identifier: GPL-2.0+ -+// ir-rcmm-decoder.c - A decoder for the RCMM IR protocol -+// -+// Copyright (C) 2018 by Patrick Lerda -+ -+#include "rc-core-priv.h" -+#include -+#include -+ -+#define RCMM_UNIT 166667 /* nanosecs */ -+#define RCMM_PREFIX_PULSE 416666 /* 166666.666666666*2.5 */ -+#define RCMM_PULSE_0 277777 /* 166666.666666666*(1+2/3) */ -+#define RCMM_PULSE_1 444444 /* 166666.666666666*(2+2/3) */ -+#define RCMM_PULSE_2 611111 /* 166666.666666666*(3+2/3) */ -+#define RCMM_PULSE_3 777778 /* 166666.666666666*(4+2/3) */ -+ -+enum rcmm_state { -+ STATE_INACTIVE, -+ STATE_LOW, -+ STATE_BUMP, -+ STATE_VALUE, -+ STATE_FINISHED, -+}; -+ -+static bool rcmm_mode(const struct rcmm_dec *data) -+{ -+ return !((0x000c0000 & data->bits) == 0x000c0000); -+} -+ -+static int rcmm_miscmode(struct rc_dev *dev, struct rcmm_dec *data) -+{ -+ switch (data->count) { -+ case 24: -+ if (dev->enabled_protocols & RC_PROTO_BIT_RCMM24) { -+ rc_keydown(dev, RC_PROTO_RCMM24, data->bits, 0); -+ data->state = STATE_INACTIVE; -+ return 0; -+ } -+ return -1; -+ -+ case 12: -+ if (dev->enabled_protocols & RC_PROTO_BIT_RCMM12) { -+ rc_keydown(dev, RC_PROTO_RCMM12, data->bits, 0); -+ data->state = STATE_INACTIVE; -+ return 0; -+ } -+ return -1; -+ } -+ -+ return -1; -+} -+ -+/** -+ * ir_rcmm_decode() - Decode one RCMM pulse or space -+ * @dev: the struct rc_dev descriptor of the device -+ * @ev: the struct ir_raw_event descriptor of the pulse/space -+ * -+ * This function returns -EINVAL if the pulse violates the state machine -+ */ -+static int ir_rcmm_decode(struct rc_dev *dev, struct ir_raw_event ev) -+{ -+ struct rcmm_dec *data = &dev->raw->rcmm; -+ u32 scancode; -+ u8 toggle; -+ int value; -+ -+ if (!(dev->enabled_protocols & (RC_PROTO_BIT_RCMM32 | -+ RC_PROTO_BIT_RCMM24 | -+ RC_PROTO_BIT_RCMM12))) -+ return 0; -+ -+ if (!is_timing_event(ev)) { -+ if (ev.reset) -+ data->state = STATE_INACTIVE; -+ return 0; -+ } -+ -+ switch (data->state) { -+ case STATE_INACTIVE: -+ if (!ev.pulse) -+ break; -+ -+ if (!eq_margin(ev.duration, RCMM_PREFIX_PULSE, RCMM_UNIT / 2)) -+ break; -+ -+ data->state = STATE_LOW; -+ data->count = 0; -+ data->bits = 0; -+ return 0; -+ -+ case STATE_LOW: -+ if (ev.pulse) -+ break; -+ -+ if (!eq_margin(ev.duration, RCMM_PULSE_0, RCMM_UNIT / 2)) -+ break; -+ -+ data->state = STATE_BUMP; -+ return 0; -+ -+ case STATE_BUMP: -+ if (!ev.pulse) -+ break; -+ -+ if (!eq_margin(ev.duration, RCMM_UNIT, RCMM_UNIT / 2)) -+ break; -+ -+ data->state = STATE_VALUE; -+ return 0; -+ -+ case STATE_VALUE: -+ if (ev.pulse) -+ break; -+ -+ if (eq_margin(ev.duration, RCMM_PULSE_0, RCMM_UNIT / 2)) -+ value = 0; -+ else if (eq_margin(ev.duration, RCMM_PULSE_1, RCMM_UNIT / 2)) -+ value = 1; -+ else if (eq_margin(ev.duration, RCMM_PULSE_2, RCMM_UNIT / 2)) -+ value = 2; -+ else if (eq_margin(ev.duration, RCMM_PULSE_3, RCMM_UNIT / 2)) -+ value = 3; -+ else -+ value = -1; -+ -+ if (value == -1) { -+ if (!rcmm_miscmode(dev, data)) -+ return 0; -+ break; -+ } -+ -+ data->bits <<= 2; -+ data->bits |= value; -+ -+ data->count += 2; -+ -+ if (data->count < 32) -+ data->state = STATE_BUMP; -+ else -+ data->state = STATE_FINISHED; -+ -+ return 0; -+ -+ case STATE_FINISHED: -+ if (!ev.pulse) -+ break; -+ -+ if (!eq_margin(ev.duration, RCMM_UNIT, RCMM_UNIT / 2)) -+ break; -+ -+ if (rcmm_mode(data)) { -+ toggle = !!(0x8000 & data->bits); -+ scancode = data->bits & ~0x8000; -+ } else { -+ toggle = 0; -+ scancode = data->bits; -+ } -+ -+ if (dev->enabled_protocols & RC_PROTO_BIT_RCMM32) { -+ rc_keydown(dev, RC_PROTO_RCMM32, scancode, toggle); -+ data->state = STATE_INACTIVE; -+ return 0; -+ } -+ -+ break; -+ } -+ -+ data->state = STATE_INACTIVE; -+ return -EINVAL; -+} -+ -+static const int rcmmspace[] = { -+ RCMM_PULSE_0, -+ RCMM_PULSE_1, -+ RCMM_PULSE_2, -+ RCMM_PULSE_3, -+}; -+ -+static int ir_rcmm_rawencoder(struct ir_raw_event **ev, unsigned int max, -+ unsigned int n, u32 data) -+{ -+ int i; -+ int ret; -+ -+ ret = ir_raw_gen_pulse_space(ev, &max, RCMM_PREFIX_PULSE, RCMM_PULSE_0); -+ if (ret) -+ return ret; -+ -+ for (i = n - 2; i >= 0; i -= 2) { -+ const unsigned int space = rcmmspace[(data >> i) & 3]; -+ -+ ret = ir_raw_gen_pulse_space(ev, &max, RCMM_UNIT, space); -+ if (ret) -+ return ret; -+ } -+ -+ return ir_raw_gen_pulse_space(ev, &max, RCMM_UNIT, RCMM_PULSE_3 * 2); -+} -+ -+static int ir_rcmm_encode(enum rc_proto protocol, u32 scancode, -+ struct ir_raw_event *events, unsigned int max) -+{ -+ struct ir_raw_event *e = events; -+ int ret; -+ -+ switch (protocol) { -+ case RC_PROTO_RCMM32: -+ ret = ir_rcmm_rawencoder(&e, max, 32, scancode); -+ break; -+ case RC_PROTO_RCMM24: -+ ret = ir_rcmm_rawencoder(&e, max, 24, scancode); -+ break; -+ case RC_PROTO_RCMM12: -+ ret = ir_rcmm_rawencoder(&e, max, 12, scancode); -+ break; -+ default: -+ ret = -EINVAL; -+ } -+ -+ if (ret < 0) -+ return ret; -+ -+ return e - events; -+} -+ -+static struct ir_raw_handler rcmm_handler = { -+ .protocols = RC_PROTO_BIT_RCMM32 | -+ RC_PROTO_BIT_RCMM24 | -+ RC_PROTO_BIT_RCMM12, -+ .decode = ir_rcmm_decode, -+ .encode = ir_rcmm_encode, -+ .carrier = 36000, -+ .min_timeout = RCMM_PULSE_3 + RCMM_UNIT, -+}; -+ -+static int __init ir_rcmm_decode_init(void) -+{ -+ ir_raw_handler_register(&rcmm_handler); -+ -+ pr_info("IR RCMM protocol handler initialized\n"); -+ return 0; -+} -+ -+static void __exit ir_rcmm_decode_exit(void) -+{ -+ ir_raw_handler_unregister(&rcmm_handler); -+} -+ -+module_init(ir_rcmm_decode_init); -+module_exit(ir_rcmm_decode_exit); -+ -+MODULE_LICENSE("GPL"); -+MODULE_AUTHOR("Patrick Lerda"); -+MODULE_DESCRIPTION("RCMM IR protocol decoder"); -diff --git a/drivers/media/rc/rc-core-priv.h b/drivers/media/rc/rc-core-priv.h -index e847bdad5c51..59c252f24194 100644 ---- a/drivers/media/rc/rc-core-priv.h -+++ b/drivers/media/rc/rc-core-priv.h -@@ -136,6 +136,11 @@ struct ir_raw_event_ctrl { - struct input_dev *idev; - char name[64]; - } imon; -+ struct rcmm_dec { -+ int state; -+ unsigned int count; -+ u32 bits; -+ } rcmm; - }; - - /* Mutex for locking raw IR processing and handler change */ -diff --git a/drivers/media/rc/rc-main.c b/drivers/media/rc/rc-main.c -index 0f218afdadaa..78e79c37f208 100644 ---- a/drivers/media/rc/rc-main.c -+++ b/drivers/media/rc/rc-main.c -@@ -70,6 +70,12 @@ static const struct { - [RC_PROTO_CEC] = { .name = "cec", .repeat_period = 0 }, - [RC_PROTO_IMON] = { .name = "imon", - .scancode_bits = 0x7fffffff, .repeat_period = 114 }, -+ [RC_PROTO_RCMM12] = { .name = "rc-mm-12", -+ .scancode_bits = 0x00000fff, .repeat_period = 114 }, -+ [RC_PROTO_RCMM24] = { .name = "rc-mm-24", -+ .scancode_bits = 0x00ffffff, .repeat_period = 114 }, -+ [RC_PROTO_RCMM32] = { .name = "rc-mm-32", -+ .scancode_bits = 0xffffffff, .repeat_period = 114 }, - }; - - /* Used to keep track of known keymaps */ -@@ -1018,6 +1024,9 @@ static const struct { - { RC_PROTO_BIT_XMP, "xmp", "ir-xmp-decoder" }, - { RC_PROTO_BIT_CEC, "cec", NULL }, - { RC_PROTO_BIT_IMON, "imon", "ir-imon-decoder" }, -+ { RC_PROTO_BIT_RCMM12 | -+ RC_PROTO_BIT_RCMM24 | -+ RC_PROTO_BIT_RCMM32, "rc-mm", "ir-rcmm-decoder" }, - }; - - /** -diff --git a/include/media/rc-map.h b/include/media/rc-map.h -index bfa3017cecba..cf308b73edae 100644 ---- a/include/media/rc-map.h -+++ b/include/media/rc-map.h -@@ -37,6 +37,9 @@ - #define RC_PROTO_BIT_XMP BIT_ULL(RC_PROTO_XMP) - #define RC_PROTO_BIT_CEC BIT_ULL(RC_PROTO_CEC) - #define RC_PROTO_BIT_IMON BIT_ULL(RC_PROTO_IMON) -+#define RC_PROTO_BIT_RCMM12 BIT_ULL(RC_PROTO_RCMM12) -+#define RC_PROTO_BIT_RCMM24 BIT_ULL(RC_PROTO_RCMM24) -+#define RC_PROTO_BIT_RCMM32 BIT_ULL(RC_PROTO_RCMM32) - - #define RC_PROTO_BIT_ALL \ - (RC_PROTO_BIT_UNKNOWN | RC_PROTO_BIT_OTHER | \ -@@ -51,7 +54,8 @@ - RC_PROTO_BIT_RC6_6A_24 | RC_PROTO_BIT_RC6_6A_32 | \ - RC_PROTO_BIT_RC6_MCE | RC_PROTO_BIT_SHARP | \ - RC_PROTO_BIT_XMP | RC_PROTO_BIT_CEC | \ -- RC_PROTO_BIT_IMON) -+ RC_PROTO_BIT_IMON | RC_PROTO_BIT_RCMM12 | \ -+ RC_PROTO_BIT_RCMM24 | RC_PROTO_BIT_RCMM32) - /* All rc protocols for which we have decoders */ - #define RC_PROTO_BIT_ALL_IR_DECODER \ - (RC_PROTO_BIT_RC5 | RC_PROTO_BIT_RC5X_20 | \ -@@ -64,7 +68,9 @@ - RC_PROTO_BIT_RC6_0 | RC_PROTO_BIT_RC6_6A_20 | \ - RC_PROTO_BIT_RC6_6A_24 | RC_PROTO_BIT_RC6_6A_32 | \ - RC_PROTO_BIT_RC6_MCE | RC_PROTO_BIT_SHARP | \ -- RC_PROTO_BIT_XMP | RC_PROTO_BIT_IMON) -+ RC_PROTO_BIT_XMP | RC_PROTO_BIT_IMON | \ -+ RC_PROTO_BIT_RCMM12 | RC_PROTO_BIT_RCMM24 | \ -+ RC_PROTO_BIT_RCMM32) - - #define RC_PROTO_BIT_ALL_IR_ENCODER \ - (RC_PROTO_BIT_RC5 | RC_PROTO_BIT_RC5X_20 | \ -@@ -77,7 +83,9 @@ - RC_PROTO_BIT_RC6_0 | RC_PROTO_BIT_RC6_6A_20 | \ - RC_PROTO_BIT_RC6_6A_24 | \ - RC_PROTO_BIT_RC6_6A_32 | RC_PROTO_BIT_RC6_MCE | \ -- RC_PROTO_BIT_SHARP | RC_PROTO_BIT_IMON) -+ RC_PROTO_BIT_SHARP | RC_PROTO_BIT_IMON | \ -+ RC_PROTO_BIT_RCMM12 | RC_PROTO_BIT_RCMM24 | \ -+ RC_PROTO_BIT_RCMM32) - - #define RC_SCANCODE_UNKNOWN(x) (x) - #define RC_SCANCODE_OTHER(x) (x) -diff --git a/include/uapi/linux/lirc.h b/include/uapi/linux/lirc.h -index 6b319581882f..45fcbf99d72e 100644 ---- a/include/uapi/linux/lirc.h -+++ b/include/uapi/linux/lirc.h -@@ -192,6 +192,9 @@ struct lirc_scancode { - * @RC_PROTO_XMP: XMP protocol - * @RC_PROTO_CEC: CEC protocol - * @RC_PROTO_IMON: iMon Pad protocol -+ * @RC_PROTO_RCMM12: RC-MM protocol 12 bits -+ * @RC_PROTO_RCMM24: RC-MM protocol 24 bits -+ * @RC_PROTO_RCMM32: RC-MM protocol 32 bits - */ - enum rc_proto { - RC_PROTO_UNKNOWN = 0, -@@ -218,6 +221,9 @@ enum rc_proto { - RC_PROTO_XMP = 21, - RC_PROTO_CEC = 22, - RC_PROTO_IMON = 23, -+ RC_PROTO_RCMM12 = 24, -+ RC_PROTO_RCMM24 = 25, -+ RC_PROTO_RCMM32 = 26, - }; - - #endif -diff --git a/tools/include/uapi/linux/lirc.h b/tools/include/uapi/linux/lirc.h -index f189931042a7..45fcbf99d72e 100644 ---- a/tools/include/uapi/linux/lirc.h -+++ b/tools/include/uapi/linux/lirc.h -@@ -133,6 +133,12 @@ - - #define LIRC_SET_WIDEBAND_RECEIVER _IOW('i', 0x00000023, __u32) - -+/* -+ * Return the recording timeout, which is either set by -+ * the ioctl LIRC_SET_REC_TIMEOUT or by the kernel after setting the protocols. -+ */ -+#define LIRC_GET_REC_TIMEOUT _IOR('i', 0x00000024, __u32) -+ - /* - * struct lirc_scancode - decoded scancode with protocol for use with - * LIRC_MODE_SCANCODE -@@ -186,6 +192,9 @@ struct lirc_scancode { - * @RC_PROTO_XMP: XMP protocol - * @RC_PROTO_CEC: CEC protocol - * @RC_PROTO_IMON: iMon Pad protocol -+ * @RC_PROTO_RCMM12: RC-MM protocol 12 bits -+ * @RC_PROTO_RCMM24: RC-MM protocol 24 bits -+ * @RC_PROTO_RCMM32: RC-MM protocol 32 bits - */ - enum rc_proto { - RC_PROTO_UNKNOWN = 0, -@@ -212,6 +221,9 @@ enum rc_proto { - RC_PROTO_XMP = 21, - RC_PROTO_CEC = 22, - RC_PROTO_IMON = 23, -+ RC_PROTO_RCMM12 = 24, -+ RC_PROTO_RCMM24 = 25, -+ RC_PROTO_RCMM32 = 26, - }; - - #endif --- -2.20.1 - diff --git a/packages/linux/patches/default/linux-999.03-dvbskys960-fix.patch b/packages/linux/patches/default/linux-999.03-dvbskys960-fix.patch deleted file mode 100644 index bc610f8642..0000000000 --- a/packages/linux/patches/default/linux-999.03-dvbskys960-fix.patch +++ /dev/null @@ -1,39 +0,0 @@ -From: jahutchi -Date: Fri, 11 Jan 2019 13:35:00 +0000 -Subject: [PATCH] media: m88ds3103: serialize reset messages in m88ds3103_set_frontend - -Ref: -https://bugzilla.kernel.org/show_bug.cgi?id=199323 -https://forum.libreelec.tv/thread/12452-problems-with-dvbsky-technotrend-usb-dvb-s2-tuners-since-le8/ - -DVBSky S960/S960C are partly broken since linux kernel commit (4.10rc1) -https://github.com/torvalds/linux/commit/9d659ae14b545c4296e812c70493bfdc999b5c1c - -diff --git a/drivers/media/dvb-frontends/m88ds3103.c b/drivers/media/dvb-frontends/m88ds3103.c -index dffd2d4bf1..e495a26e6e 100644 ---- a/drivers/media/dvb-frontends/m88ds3103.c -+++ b/drivers/media/dvb-frontends/m88ds3103.c -@@ -309,6 +309,7 @@ static int m88ds3103_set_frontend(struct dvb_frontend *fe) - u16 u16tmp; - u32 tuner_frequency_khz, target_mclk; - s32 s32tmp; -+ static const struct reg_sequence reset_buf[] = {{0x07, 0x80}, {0x07, 0x00}}; - - dev_dbg(&client->dev, - "delivery_system=%d modulation=%d frequency=%u symbol_rate=%d inversion=%d pilot=%d rolloff=%d\n", -@@ -321,11 +322,7 @@ static int m88ds3103_set_frontend(struct dvb_frontend *fe) - } - - /* reset */ -- ret = regmap_write(dev->regmap, 0x07, 0x80); -- if (ret) -- goto err; -- -- ret = regmap_write(dev->regmap, 0x07, 0x00); -+ ret = regmap_multi_reg_write(dev->regmap, reset_buf, 2); - if (ret) - goto err; - --- -2.7.4 - diff --git a/packages/linux/patches/default/linux-999.99-revert-faulty-bt-encryption-commit.patch b/packages/linux/patches/default/linux-999.99-revert-faulty-bt-encryption-commit.patch new file mode 100644 index 0000000000..43bdf5e60f --- /dev/null +++ b/packages/linux/patches/default/linux-999.99-revert-faulty-bt-encryption-commit.patch @@ -0,0 +1,48 @@ +From aa843e35a472a2aff26250662d21ff30629d294c Mon Sep 17 00:00:00 2001 +From: MilhouseVH +Date: Wed, 5 Jun 2019 16:35:18 +0100 +Subject: [PATCH] Revert "Bluetooth: Align minimum encryption key size for LE + and BR/EDR connections" + +This reverts commit 07e38998a19d72b916c39a983c19134522ae806b. +--- + include/net/bluetooth/hci_core.h | 3 --- + net/bluetooth/hci_conn.c | 8 -------- + 2 files changed, 11 deletions(-) + +diff --git a/include/net/bluetooth/hci_core.h b/include/net/bluetooth/hci_core.h +index 05b1b96..094e61e 100644 +--- a/include/net/bluetooth/hci_core.h ++++ b/include/net/bluetooth/hci_core.h +@@ -190,9 +190,6 @@ struct adv_info { + + #define HCI_MAX_SHORT_NAME_LENGTH 10 + +-/* Min encryption key size to match with SMP */ +-#define HCI_MIN_ENC_KEY_SIZE 7 +- + /* Default LE RPA expiry time, 15 minutes */ + #define HCI_DEFAULT_RPA_TIMEOUT (15 * 60) + +diff --git a/net/bluetooth/hci_conn.c b/net/bluetooth/hci_conn.c +index 3cf0764..bd4978c 100644 +--- a/net/bluetooth/hci_conn.c ++++ b/net/bluetooth/hci_conn.c +@@ -1276,14 +1276,6 @@ int hci_conn_check_link_mode(struct hci_conn *conn) + !test_bit(HCI_CONN_ENCRYPT, &conn->flags)) + return 0; + +- /* The minimum encryption key size needs to be enforced by the +- * host stack before establishing any L2CAP connections. The +- * specification in theory allows a minimum of 1, but to align +- * BR/EDR and LE transports, a minimum of 7 is chosen. +- */ +- if (conn->enc_key_size < HCI_MIN_ENC_KEY_SIZE) +- return 0; +- + return 1; + } + +-- +2.14.1 + diff --git a/projects/Allwinner/patches/linux/0011-hdmi-init-fix.patch b/projects/Allwinner/patches/linux/0011-hdmi-init-fix.patch deleted file mode 100644 index 7022c77884..0000000000 --- a/projects/Allwinner/patches/linux/0011-hdmi-init-fix.patch +++ /dev/null @@ -1,118 +0,0 @@ -From 4029cb43656ede363011e199e589357b2de95617 Mon Sep 17 00:00:00 2001 -From: Jernej Skrabec -Date: Tue, 14 May 2019 22:02:46 +0200 -Subject: [PATCH 1/2] drm/sun4i: Fix sun8i HDMI PHY clock initialization - -Current code initializes HDMI PHY clock driver before reset line is -deasserted and clocks enabled. Because of that, initial readout of -clock divider is incorrect (0 instead of 2). This causes any clock -rate with divider 1 (register value 0) to be set incorrectly. - -Fix this by moving initialization of HDMI PHY clock driver after reset -line is deasserted and clocks enabled. - -Cc: stable@vger.kernel.org # 4.17+ -Fixes: 4f86e81748fe ("drm/sun4i: Add support for H3 HDMI PHY variant") -Signed-off-by: Jernej Skrabec ---- - drivers/gpu/drm/sun4i/sun8i_hdmi_phy.c | 26 ++++++++++++++------------ - 1 file changed, 14 insertions(+), 12 deletions(-) - -diff --git a/drivers/gpu/drm/sun4i/sun8i_hdmi_phy.c b/drivers/gpu/drm/sun4i/sun8i_hdmi_phy.c -index 66ea3a902e36..afc6d4a9c20b 100644 ---- a/drivers/gpu/drm/sun4i/sun8i_hdmi_phy.c -+++ b/drivers/gpu/drm/sun4i/sun8i_hdmi_phy.c -@@ -672,22 +672,13 @@ int sun8i_hdmi_phy_probe(struct sun8i_dw_hdmi *hdmi, struct device_node *node) - goto err_put_clk_pll0; - } - } -- -- ret = sun8i_phy_clk_create(phy, dev, -- phy->variant->has_second_pll); -- if (ret) { -- dev_err(dev, "Couldn't create the PHY clock\n"); -- goto err_put_clk_pll1; -- } -- -- clk_prepare_enable(phy->clk_phy); - } - - phy->rst_phy = of_reset_control_get_shared(node, "phy"); - if (IS_ERR(phy->rst_phy)) { - dev_err(dev, "Could not get phy reset control\n"); - ret = PTR_ERR(phy->rst_phy); -- goto err_disable_clk_phy; -+ goto err_put_clk_pll1; - } - - ret = reset_control_deassert(phy->rst_phy); -@@ -708,18 +699,29 @@ int sun8i_hdmi_phy_probe(struct sun8i_dw_hdmi *hdmi, struct device_node *node) - goto err_disable_clk_bus; - } - -+ if (phy->variant->has_phy_clk) { -+ ret = sun8i_phy_clk_create(phy, dev, -+ phy->variant->has_second_pll); -+ if (ret) { -+ dev_err(dev, "Couldn't create the PHY clock\n"); -+ goto err_disable_clk_mod; -+ } -+ -+ clk_prepare_enable(phy->clk_phy); -+ } -+ - hdmi->phy = phy; - - return 0; - -+err_disable_clk_mod: -+ clk_disable_unprepare(phy->clk_mod); - err_disable_clk_bus: - clk_disable_unprepare(phy->clk_bus); - err_deassert_rst_phy: - reset_control_assert(phy->rst_phy); - err_put_rst_phy: - reset_control_put(phy->rst_phy); --err_disable_clk_phy: -- clk_disable_unprepare(phy->clk_phy); - err_put_clk_pll1: - clk_put(phy->clk_pll1); - err_put_clk_pll0: --- -2.21.0 - -From 3ebe28afd2b9250375d38bc1144a4aac74340464 Mon Sep 17 00:00:00 2001 -From: Jernej Skrabec -Date: Tue, 14 May 2019 22:26:20 +0200 -Subject: [PATCH 2/2] drm/sun4i: Fix sun8i HDMI PHY configuration for > 148.5 - MHz - -Vendor provided documentation says that EMP bits should be set to 3 for -pixel clocks greater than 148.5 MHz. - -Fix that. - -Cc: stable@vger.kernel.org # 4.17+ -Fixes: 4f86e81748fe ("drm/sun4i: Add support for H3 HDMI PHY variant") -Signed-off-by: Jernej Skrabec ---- - drivers/gpu/drm/sun4i/sun8i_hdmi_phy.c | 3 ++- - 1 file changed, 2 insertions(+), 1 deletion(-) - -diff --git a/drivers/gpu/drm/sun4i/sun8i_hdmi_phy.c b/drivers/gpu/drm/sun4i/sun8i_hdmi_phy.c -index afc6d4a9c20b..43643ad31730 100644 ---- a/drivers/gpu/drm/sun4i/sun8i_hdmi_phy.c -+++ b/drivers/gpu/drm/sun4i/sun8i_hdmi_phy.c -@@ -293,7 +293,8 @@ static int sun8i_hdmi_phy_config_h3(struct dw_hdmi *hdmi, - SUN8I_HDMI_PHY_ANA_CFG2_REG_BIGSW | - SUN8I_HDMI_PHY_ANA_CFG2_REG_SLV(4); - ana_cfg3_init |= SUN8I_HDMI_PHY_ANA_CFG3_REG_AMPCK(9) | -- SUN8I_HDMI_PHY_ANA_CFG3_REG_AMP(13); -+ SUN8I_HDMI_PHY_ANA_CFG3_REG_AMP(13) | -+ SUN8I_HDMI_PHY_ANA_CFG3_REG_EMP(3); - } - - regmap_update_bits(phy->regs, SUN8I_HDMI_PHY_ANA_CFG1_REG, --- -2.21.0 - diff --git a/projects/Generic/linux/linux.x86_64.conf b/projects/Generic/linux/linux.x86_64.conf index 477a829856..b401135c1e 100644 --- a/projects/Generic/linux/linux.x86_64.conf +++ b/projects/Generic/linux/linux.x86_64.conf @@ -1,6 +1,6 @@ # # Automatically generated file; DO NOT EDIT. -# Linux/x86_64 5.0.6 Kernel Configuration +# Linux/x86_64 5.1.6 Kernel Configuration # # @@ -10,6 +10,7 @@ CONFIG_CC_IS_GCC=y CONFIG_GCC_VERSION=70200 CONFIG_CLANG_VERSION=0 CONFIG_CC_HAS_ASM_GOTO=y +CONFIG_CC_HAS_WARN_MAYBE_UNINITIALIZED=y CONFIG_IRQ_WORK=y CONFIG_BUILDTIME_EXTABLE_SORT=y CONFIG_THREAD_INFO_IN_TASK=y @@ -193,6 +194,7 @@ CONFIG_TIMERFD=y CONFIG_EVENTFD=y CONFIG_SHMEM=y CONFIG_AIO=y +CONFIG_IO_URING=y CONFIG_ADVISE_SYSCALLS=y CONFIG_MEMBARRIER=y CONFIG_KALLSYMS=y @@ -469,6 +471,7 @@ CONFIG_ACPI_THERMAL=y CONFIG_ACPI_NUMA=y CONFIG_ARCH_HAS_ACPI_TABLE_UPGRADE=y CONFIG_ACPI_TABLE_UPGRADE=y +# CONFIG_ACPI_TABLE_OVERRIDE_VIA_BUILTIN_INITRD is not set # CONFIG_ACPI_DEBUG is not set # CONFIG_ACPI_PCI_SLOT is not set CONFIG_ACPI_CONTAINER=y @@ -531,6 +534,7 @@ CONFIG_X86_SPEEDSTEP_LIB=y CONFIG_CPU_IDLE=y CONFIG_CPU_IDLE_GOV_LADDER=y CONFIG_CPU_IDLE_GOV_MENU=y +# CONFIG_CPU_IDLE_GOV_TEO is not set CONFIG_INTEL_IDLE=y # @@ -549,7 +553,6 @@ CONFIG_AMD_NB=y # Binary Emulations # CONFIG_IA32_EMULATION=y -# CONFIG_IA32_AOUT is not set # CONFIG_X86_X32 is not set CONFIG_COMPAT_32=y CONFIG_COMPAT=y @@ -672,6 +675,7 @@ CONFIG_HAVE_STACK_VALIDATION=y CONFIG_HAVE_RELIABLE_STACKTRACE=y CONFIG_OLD_SIGSUSPEND3=y CONFIG_COMPAT_OLD_SIGACTION=y +CONFIG_64BIT_TIME=y CONFIG_COMPAT_32BIT_TIME=y CONFIG_HAVE_ARCH_VMAP_STACK=y # CONFIG_VMAP_STACK is not set @@ -837,6 +841,7 @@ CONFIG_SKB_EXTENSIONS=y CONFIG_PACKET=y # CONFIG_PACKET_DIAG is not set CONFIG_UNIX=y +CONFIG_UNIX_SCM=y # CONFIG_UNIX_DIAG is not set # CONFIG_TLS is not set # CONFIG_XFRM_USER is not set @@ -960,6 +965,7 @@ CONFIG_NF_NAT_NEEDED=y CONFIG_NF_NAT_FTP=m CONFIG_NF_NAT_IRC=m CONFIG_NF_NAT_SIP=m +CONFIG_NF_NAT_MASQUERADE=y # CONFIG_NF_TABLES is not set CONFIG_NETFILTER_XTABLES=m @@ -1053,8 +1059,6 @@ CONFIG_NF_DEFRAG_IPV4=m # CONFIG_NF_LOG_ARP is not set # CONFIG_NF_LOG_IPV4 is not set CONFIG_NF_REJECT_IPV4=m -CONFIG_NF_NAT_IPV4=m -CONFIG_NF_NAT_MASQUERADE_IPV4=y CONFIG_IP_NF_IPTABLES=m # CONFIG_IP_NF_MATCH_AH is not set # CONFIG_IP_NF_MATCH_ECN is not set @@ -1082,7 +1086,6 @@ CONFIG_IP_NF_MANGLE=m # CONFIG_NF_DUP_IPV6 is not set CONFIG_NF_REJECT_IPV6=m # CONFIG_NF_LOG_IPV6 is not set -CONFIG_NF_NAT_IPV6=m CONFIG_IP6_NF_IPTABLES=m # CONFIG_IP6_NF_MATCH_AH is not set # CONFIG_IP6_NF_MATCH_EUI64 is not set @@ -1312,7 +1315,6 @@ CONFIG_RFKILL_INPUT=y CONFIG_DST_CACHE=y CONFIG_GRO_CELLS=y # CONFIG_NET_DEVLINK is not set -CONFIG_MAY_USE_DEVLINK=y CONFIG_FAILOVER=y CONFIG_HAVE_EBPF_JIT=y @@ -1337,6 +1339,7 @@ CONFIG_PCIEASPM_DEFAULT=y CONFIG_PCIE_PME=y # CONFIG_PCIE_DPC is not set # CONFIG_PCIE_PTM is not set +# CONFIG_PCIE_BW is not set CONFIG_PCI_MSI=y CONFIG_PCI_MSI_IRQ_DOMAIN=y CONFIG_PCI_QUIRKS=y @@ -1502,6 +1505,7 @@ CONFIG_ALTERA_STAPL=m # CONFIG_INTEL_MEI is not set # CONFIG_INTEL_MEI_ME is not set # CONFIG_INTEL_MEI_TXE is not set +# CONFIG_INTEL_MEI_HDCP is not set # CONFIG_VMWARE_VMCI is not set # @@ -1547,6 +1551,7 @@ CONFIG_ALTERA_STAPL=m # CONFIG_MISC_ALCOR_PCI is not set CONFIG_MISC_RTSX_PCI=y CONFIG_MISC_RTSX_USB=y +# CONFIG_HABANA_AI is not set CONFIG_HAVE_IDE=y # CONFIG_IDE is not set @@ -1640,7 +1645,6 @@ CONFIG_MEGARAID_SAS=y # CONFIG_SCSI_PM8001 is not set # CONFIG_SCSI_VIRTIO is not set # CONFIG_SCSI_DH is not set -# CONFIG_SCSI_OSD_INITIATOR is not set CONFIG_ATA=y # CONFIG_ATA_VERBOSE_ERROR is not set CONFIG_ATA_ACPI=y @@ -2162,6 +2166,7 @@ CONFIG_MT76x0E=m CONFIG_MT76x2_COMMON=m CONFIG_MT76x2E=m CONFIG_MT76x2U=m +CONFIG_MT7603E=m CONFIG_WLAN_VENDOR_RALINK=y CONFIG_RT2X00=m CONFIG_RT2400PCI=m @@ -2422,6 +2427,7 @@ CONFIG_INPUT_MISC=y # CONFIG_INPUT_AD714X is not set # CONFIG_INPUT_BMA150 is not set # CONFIG_INPUT_E3X0_BUTTON is not set +# CONFIG_INPUT_MSM_VIBRATOR is not set # CONFIG_INPUT_MMA8450 is not set # CONFIG_INPUT_APANEL is not set # CONFIG_INPUT_GP2A is not set @@ -2492,6 +2498,7 @@ CONFIG_UNIX98_PTYS=y # CONFIG_NOZOMI is not set # CONFIG_N_GSM is not set # CONFIG_TRACE_SINK is not set +CONFIG_LDISC_AUTOLOAD=y CONFIG_DEVMEM=y # CONFIG_DEVKMEM is not set @@ -2545,7 +2552,6 @@ CONFIG_HW_RANDOM_AMD=m # CONFIG_HW_RANDOM_VIA is not set CONFIG_HW_RANDOM_VIRTIO=m # CONFIG_NVRAM is not set -# CONFIG_R3964 is not set # CONFIG_APPLICOM is not set # CONFIG_MWAVE is not set # CONFIG_RAW_DRIVER is not set @@ -2708,6 +2714,7 @@ CONFIG_GPIO_SYSFS=y # CONFIG_GPIO_MB86S7X is not set # CONFIG_GPIO_MOCKUP is not set # CONFIG_GPIO_VX855 is not set +# CONFIG_GPIO_AMD_FCH is not set # # Port-mapped I/O GPIO drivers @@ -3047,6 +3054,7 @@ CONFIG_MFD_INTEL_LPSS_PCI=y # CONFIG_TWL6040_CORE is not set # CONFIG_MFD_WL1273_CORE is not set # CONFIG_MFD_LM3533 is not set +# CONFIG_MFD_TQMX86 is not set # CONFIG_MFD_VX855 is not set # CONFIG_MFD_ARIZONA_I2C is not set # CONFIG_MFD_WM8400 is not set @@ -3417,10 +3425,6 @@ CONFIG_VIDEO_SAA6752HS=m # # Miscellaneous helper chips # - -# -# Sensors used on soc_camera driver -# CONFIG_MEDIA_TUNER=m CONFIG_MEDIA_TUNER_SIMPLE=m CONFIG_MEDIA_TUNER_TDA18250=m @@ -3643,6 +3647,10 @@ CONFIG_DRM_SCHED=y # CONFIG_DRM_I2C_SIL164 is not set # CONFIG_DRM_I2C_NXP_TDA998X is not set # CONFIG_DRM_I2C_NXP_TDA9950 is not set + +# +# ARM devices +# CONFIG_DRM_RADEON=y # CONFIG_DRM_RADEON_USERPTR is not set CONFIG_DRM_AMDGPU=y @@ -3716,6 +3724,7 @@ CONFIG_DRM_PANEL_BRIDGE=y # Display Interface Bridges # # CONFIG_DRM_ANALOGIX_ANX78XX is not set +# CONFIG_DRM_ETNAVIV is not set # CONFIG_DRM_HISI_HIBMC is not set # CONFIG_DRM_TINYDRM is not set # CONFIG_DRM_LEGACY is not set @@ -3995,6 +4004,7 @@ CONFIG_SND_SOC_AMD_ACP3x=m # CONFIG_SND_SOC_FSL_SSI is not set # CONFIG_SND_SOC_FSL_SPDIF is not set # CONFIG_SND_SOC_FSL_ESAI is not set +# CONFIG_SND_SOC_FSL_MICFIL is not set # CONFIG_SND_SOC_IMX_AUDMUX is not set # CONFIG_SND_I2S_HI6210_I2S is not set # CONFIG_SND_SOC_IMG is not set @@ -4044,11 +4054,14 @@ CONFIG_SND_SOC_INTEL_BYT_CHT_NOCODEC_MACH=m # CONFIG_SND_SOC_INTEL_KBL_RT5660_MACH is not set # CONFIG_SND_SOC_INTEL_GLK_RT5682_MAX98357A_MACH is not set CONFIG_SND_SOC_INTEL_SKL_HDA_DSP_GENERIC_MACH=m +# CONFIG_SND_SOC_MTK_BTCVSD is not set # # STMicroelectronics STM32 SOC audio support # # CONFIG_SND_SOC_XILINX_I2S is not set +# CONFIG_SND_SOC_XILINX_AUDIO_FORMATTER is not set +# CONFIG_SND_SOC_XILINX_SPDIF is not set # CONFIG_SND_SOC_XTFPGA_I2S is not set # CONFIG_ZX_TDM is not set CONFIG_SND_SOC_I2C_AND_SPI=y @@ -4074,6 +4087,7 @@ CONFIG_SND_SOC_ADAU7002=m # CONFIG_SND_SOC_CS35L33 is not set # CONFIG_SND_SOC_CS35L34 is not set # CONFIG_SND_SOC_CS35L35 is not set +# CONFIG_SND_SOC_CS35L36 is not set # CONFIG_SND_SOC_CS42L42 is not set # CONFIG_SND_SOC_CS42L51_I2C is not set # CONFIG_SND_SOC_CS42L52 is not set @@ -4084,6 +4098,7 @@ CONFIG_SND_SOC_ADAU7002=m # CONFIG_SND_SOC_CS4271_I2C is not set # CONFIG_SND_SOC_CS42XX8_I2C is not set # CONFIG_SND_SOC_CS43130 is not set +# CONFIG_SND_SOC_CS4341 is not set # CONFIG_SND_SOC_CS4349 is not set # CONFIG_SND_SOC_CS53L30 is not set CONFIG_SND_SOC_DA7213=m @@ -4113,6 +4128,7 @@ CONFIG_SND_SOC_MAX98927=m # CONFIG_SND_SOC_PCM3060_I2C is not set # CONFIG_SND_SOC_PCM3168A_I2C is not set # CONFIG_SND_SOC_PCM512x_I2C is not set +# CONFIG_SND_SOC_RK3328 is not set CONFIG_SND_SOC_RL6231=m # CONFIG_SND_SOC_RT5616 is not set # CONFIG_SND_SOC_RT5631 is not set @@ -4159,6 +4175,7 @@ CONFIG_SND_SOC_TS3A227E=m # CONFIG_SND_SOC_WM8782 is not set # CONFIG_SND_SOC_WM8804_I2C is not set # CONFIG_SND_SOC_WM8903 is not set +# CONFIG_SND_SOC_WM8904 is not set # CONFIG_SND_SOC_WM8960 is not set # CONFIG_SND_SOC_WM8962 is not set # CONFIG_SND_SOC_WM8974 is not set @@ -4167,6 +4184,7 @@ CONFIG_SND_SOC_TS3A227E=m # CONFIG_SND_SOC_ZX_AUD96P22 is not set # CONFIG_SND_SOC_MAX9759 is not set # CONFIG_SND_SOC_MT6351 is not set +# CONFIG_SND_SOC_MT6358 is not set # CONFIG_SND_SOC_NAU8540 is not set # CONFIG_SND_SOC_NAU8810 is not set # CONFIG_SND_SOC_NAU8822 is not set @@ -4223,6 +4241,7 @@ CONFIG_HID_EZKEY=y CONFIG_HID_KYE=y # CONFIG_HID_UCLOGIC is not set # CONFIG_HID_WALTOP is not set +# CONFIG_HID_VIEWSONIC is not set CONFIG_HID_GYRATION=y # CONFIG_HID_ICADE is not set # CONFIG_HID_ITE is not set @@ -4240,6 +4259,7 @@ CONFIG_LOGIRUMBLEPAD2_FF=y CONFIG_LOGIG940_FF=y CONFIG_LOGIWHEELS_FF=y # CONFIG_HID_MAGICMOUSE is not set +# CONFIG_HID_MALTRON is not set # CONFIG_HID_MAYFLASH is not set # CONFIG_HID_REDRAGON is not set CONFIG_HID_MICROSOFT=y @@ -4316,6 +4336,7 @@ CONFIG_USB_DEFAULT_PERSIST=y # CONFIG_USB_OTG_WHITELIST is not set # CONFIG_USB_OTG_BLACKLIST_HUB is not set # CONFIG_USB_LEDS_TRIGGER_USBPORT is not set +CONFIG_USB_AUTOSUSPEND_DELAY=2 CONFIG_USB_MON=m # CONFIG_USB_WUSB_CBAF is not set @@ -4331,6 +4352,7 @@ CONFIG_USB_EHCI_HCD=y CONFIG_USB_EHCI_ROOT_HUB_TT=y CONFIG_USB_EHCI_TT_NEWSCHED=y CONFIG_USB_EHCI_PCI=y +# CONFIG_USB_EHCI_FSL is not set # CONFIG_USB_EHCI_HCD_PLATFORM is not set # CONFIG_USB_OXU210HP_HCD is not set # CONFIG_USB_ISP116X_HCD is not set @@ -4624,6 +4646,7 @@ CONFIG_RTC_INTF_DEV=y # I2C RTC drivers # # CONFIG_RTC_DRV_ABB5ZES3 is not set +# CONFIG_RTC_DRV_ABEOZ9 is not set # CONFIG_RTC_DRV_ABX80X is not set # CONFIG_RTC_DRV_DS1307 is not set # CONFIG_RTC_DRV_DS1374 is not set @@ -4646,7 +4669,9 @@ CONFIG_RTC_INTF_DEV=y # CONFIG_RTC_DRV_RX8581 is not set # CONFIG_RTC_DRV_RX8025 is not set # CONFIG_RTC_DRV_EM3027 is not set +# CONFIG_RTC_DRV_RV3028 is not set # CONFIG_RTC_DRV_RV8803 is not set +# CONFIG_RTC_DRV_SD3078 is not set # # SPI RTC drivers @@ -4687,7 +4712,6 @@ CONFIG_RTC_DRV_CMOS=y # # HID Sensor RTC drivers # -# CONFIG_RTC_DRV_HID_SENSOR_TIME is not set CONFIG_DMADEVICES=y # CONFIG_DMADEVICES_DEBUG is not set @@ -4759,7 +4783,6 @@ CONFIG_RTS5208=y # CONFIG_VT6655 is not set CONFIG_VT6656=m # CONFIG_FB_SM750 is not set -# CONFIG_FB_XGI is not set # # Speakup console speech @@ -4768,6 +4791,10 @@ CONFIG_VT6656=m CONFIG_STAGING_MEDIA=y # CONFIG_VIDEO_ZORAN is not set +# +# soc_camera sensor drivers +# + # # Android # @@ -4780,13 +4807,11 @@ CONFIG_STAGING_MEDIA=y # CONFIG_KS7010 is not set # CONFIG_GREYBUS is not set # CONFIG_DRM_VBOXVIDEO is not set -# CONFIG_MTK_MMC is not set # # Gasket devices # # CONFIG_STAGING_GASKET_FRAMEWORK is not set -# CONFIG_XIL_AXIS_FIFO is not set # CONFIG_EROFS_FS is not set CONFIG_X86_PLATFORM_DEVICES=y # CONFIG_ACER_WMI is not set @@ -4849,6 +4874,7 @@ CONFIG_WMI_BMOF=y # CONFIG_I2C_MULTI_INSTANTIATE is not set CONFIG_INTEL_ATOMISP2_PM=y # CONFIG_HUAWEI_WMI is not set +# CONFIG_PCENGINES_APU2 is not set CONFIG_PMC_ATOM=y # CONFIG_CHROME_PLATFORMS is not set # CONFIG_MELLANOX_PLATFORM is not set @@ -4969,11 +4995,13 @@ CONFIG_NVMEM=y # CONFIG_UNISYS_VISORBUS is not set # CONFIG_SIOX is not set # CONFIG_SLIMBUS is not set +# CONFIG_INTERCONNECT is not set # # File systems # CONFIG_DCACHE_WORD_ACCESS=y +CONFIG_VALIDATE_FS_PARSER=y CONFIG_FS_IOMAP=y # CONFIG_EXT2_FS is not set # CONFIG_EXT3_FS is not set @@ -4981,7 +5009,6 @@ CONFIG_EXT4_FS=y CONFIG_EXT4_USE_FOR_EXT2=y CONFIG_EXT4_FS_POSIX_ACL=y CONFIG_EXT4_FS_SECURITY=y -# CONFIG_EXT4_ENCRYPTION is not set # CONFIG_EXT4_DEBUG is not set CONFIG_JBD2=y # CONFIG_JBD2_DEBUG is not set @@ -5150,6 +5177,7 @@ CONFIG_SUNRPC_GSS=y CONFIG_SUNRPC_BACKCHANNEL=y CONFIG_SUNRPC_SWAP=y CONFIG_RPCSEC_GSS_KRB5=m +# CONFIG_CONFIG_SUNRPC_DISABLE_INSECURE_ENCTYPES is not set # CONFIG_SUNRPC_DEBUG is not set # CONFIG_CEPH_FS is not set CONFIG_CIFS=y @@ -5234,7 +5262,7 @@ CONFIG_HAVE_HARDENED_USERCOPY_ALLOCATOR=y # CONFIG_FORTIFY_SOURCE is not set # CONFIG_STATIC_USERMODEHELPER is not set CONFIG_DEFAULT_SECURITY_DAC=y -CONFIG_DEFAULT_SECURITY="" +CONFIG_LSM="yama,loadpin,safesetid,integrity,selinux,smack,tomoyo,apparmor" CONFIG_XOR_BLOCKS=y CONFIG_CRYPTO=y @@ -5264,6 +5292,7 @@ CONFIG_CRYPTO_MANAGER=y CONFIG_CRYPTO_MANAGER2=y # CONFIG_CRYPTO_USER is not set # CONFIG_CRYPTO_MANAGER_DISABLE_TESTS is not set +# CONFIG_CRYPTO_MANAGER_EXTRA_TESTS is not set CONFIG_CRYPTO_GF128MUL=m CONFIG_CRYPTO_NULL=y CONFIG_CRYPTO_NULL2=y @@ -5478,7 +5507,6 @@ CONFIG_XZ_DEC=y # CONFIG_XZ_DEC_ARMTHUMB is not set # CONFIG_XZ_DEC_SPARC is not set # CONFIG_XZ_DEC_TEST is not set -CONFIG_DECOMPRESS_GZIP=y CONFIG_INTERVAL_TREE=y CONFIG_XARRAY_MULTI=y CONFIG_ASSOCIATIVE_ARRAY=y @@ -5489,6 +5517,7 @@ CONFIG_NEED_SG_DMA_LENGTH=y CONFIG_NEED_DMA_MAP_STATE=y CONFIG_ARCH_DMA_ADDR_T_64BIT=y CONFIG_SWIOTLB=y +# CONFIG_DMA_API_DEBUG is not set CONFIG_SGL_ALLOC=y CONFIG_IOMMU_HELPER=y CONFIG_CHECK_SIGNATURE=y @@ -5522,6 +5551,7 @@ CONFIG_SBITMAP=y # printk and dmesg options # CONFIG_PRINTK_TIME=y +# CONFIG_PRINTK_CALLER is not set CONFIG_CONSOLE_LOGLEVEL_DEFAULT=7 CONFIG_CONSOLE_LOGLEVEL_QUIET=4 CONFIG_MESSAGE_LOGLEVEL_DEFAULT=4 @@ -5537,7 +5567,6 @@ CONFIG_FRAME_WARN=1024 CONFIG_STRIP_ASM_SYMS=y # CONFIG_READABLE_ASM is not set # CONFIG_UNUSED_SYMBOLS is not set -# CONFIG_PAGE_OWNER is not set CONFIG_DEBUG_FS=y # CONFIG_HEADERS_CHECK is not set # CONFIG_DEBUG_SECTION_MISMATCH is not set @@ -5555,6 +5584,7 @@ CONFIG_DEBUG_KERNEL=y # # CONFIG_PAGE_EXTENSION is not set # CONFIG_DEBUG_PAGEALLOC is not set +# CONFIG_PAGE_OWNER is not set # CONFIG_PAGE_POISONING is not set # CONFIG_DEBUG_PAGE_REF is not set # CONFIG_DEBUG_RODATA_TEST is not set @@ -5703,7 +5733,6 @@ CONFIG_FTRACE_MCOUNT_RECORD=y # CONFIG_TRACE_EVAL_MAP_FILE is not set CONFIG_TRACING_EVENTS_GPIO=y # CONFIG_PROVIDE_OHCI1394_DMA_INIT is not set -# CONFIG_DMA_API_DEBUG is not set CONFIG_RUNTIME_TESTING_MENU=y # CONFIG_LKDTM is not set # CONFIG_TEST_LIST_SORT is not set @@ -5727,6 +5756,7 @@ CONFIG_RUNTIME_TESTING_MENU=y # CONFIG_TEST_HASH is not set # CONFIG_TEST_IDA is not set # CONFIG_TEST_LKM is not set +# CONFIG_TEST_VMALLOC is not set # CONFIG_TEST_USER_COPY is not set # CONFIG_TEST_BPF is not set # CONFIG_FIND_BIT_BENCHMARK is not set @@ -5736,6 +5766,7 @@ CONFIG_RUNTIME_TESTING_MENU=y # CONFIG_TEST_STATIC_KEYS is not set # CONFIG_TEST_KMOD is not set # CONFIG_TEST_MEMCAT_P is not set +# CONFIG_TEST_STACKINIT is not set # CONFIG_MEMTEST is not set # CONFIG_BUG_ON_DATA_CORRUPTION is not set # CONFIG_SAMPLES is not set @@ -5743,6 +5774,7 @@ CONFIG_HAVE_ARCH_KGDB=y # CONFIG_KGDB is not set CONFIG_ARCH_HAS_UBSAN_SANITIZE_ALL=y # CONFIG_UBSAN is not set +CONFIG_UBSAN_ALIGNMENT=y CONFIG_ARCH_HAS_DEVMEM_IS_ALLOWED=y CONFIG_STRICT_DEVMEM=y # CONFIG_IO_STRICT_DEVMEM is not set