diff options
616 files changed, 12578 insertions, 10549 deletions
diff --git a/0001-HID-multitouch-enable-the-Surface-3-Type-Cover-to-re.patch b/0001-HID-multitouch-enable-the-Surface-3-Type-Cover-to-re.patch deleted file mode 100644 index 37c896420..000000000 --- a/0001-HID-multitouch-enable-the-Surface-3-Type-Cover-to-re.patch +++ /dev/null @@ -1,99 +0,0 @@ -From 8fe89ef076fa104f514da6ef61d90f5bf93488e3 Mon Sep 17 00:00:00 2001 -From: Benjamin Tissoires <benjamin.tissoires@redhat.com> -Date: Fri, 25 Nov 2016 14:27:23 +0100 -Subject: [PATCH] HID: multitouch: enable the Surface 3 Type Cover to report - multitouch data - -There is no reasons to filter out keyboard and consumer control collections -in hid-multitouch. -With the previous hid-input fix, there is now a full support of the Type -Cover and we can remove all specific bits from hid-core and hid-microsoft. - -hid-multitouch will automatically set HID_QUIRK_NO_INIT_REPORTS so we can -also remove it from the list of ushbid quirks. - -Signed-off-by: Benjamin Tissoires <benjamin.tissoires@redhat.com> -Signed-off-by: Jiri Kosina <jkosina@suse.cz> ---- - drivers/hid/hid-core.c | 2 -- - drivers/hid/hid-ids.h | 1 - - drivers/hid/hid-microsoft.c | 2 -- - drivers/hid/hid-multitouch.c | 4 +++- - drivers/hid/usbhid/hid-quirks.c | 1 - - 5 files changed, 3 insertions(+), 7 deletions(-) - -diff --git a/drivers/hid/hid-core.c b/drivers/hid/hid-core.c -index 2b89c70..a5dd7e6 100644 ---- a/drivers/hid/hid-core.c -+++ b/drivers/hid/hid-core.c -@@ -728,7 +728,6 @@ static void hid_scan_collection(struct hid_parser *parser, unsigned type) - hid->product == USB_DEVICE_ID_MS_TYPE_COVER_PRO_3_2 || - hid->product == USB_DEVICE_ID_MS_TYPE_COVER_PRO_3_JP || - hid->product == USB_DEVICE_ID_MS_TYPE_COVER_PRO_4_JP || -- hid->product == USB_DEVICE_ID_MS_TYPE_COVER_3 || - hid->product == USB_DEVICE_ID_MS_POWER_COVER) && - hid->group == HID_GROUP_MULTITOUCH) - hid->group = HID_GROUP_GENERIC; -@@ -1984,7 +1983,6 @@ static const struct hid_device_id hid_have_special_driver[] = { - { HID_USB_DEVICE(USB_VENDOR_ID_MICROSOFT, USB_DEVICE_ID_MS_TYPE_COVER_PRO_3_2) }, - { HID_USB_DEVICE(USB_VENDOR_ID_MICROSOFT, USB_DEVICE_ID_MS_TYPE_COVER_PRO_3_JP) }, - { HID_USB_DEVICE(USB_VENDOR_ID_MICROSOFT, USB_DEVICE_ID_MS_TYPE_COVER_PRO_4_JP) }, -- { HID_USB_DEVICE(USB_VENDOR_ID_MICROSOFT, USB_DEVICE_ID_MS_TYPE_COVER_3) }, - { HID_USB_DEVICE(USB_VENDOR_ID_MICROSOFT, USB_DEVICE_ID_MS_DIGITAL_MEDIA_7K) }, - { HID_USB_DEVICE(USB_VENDOR_ID_MICROSOFT, USB_DEVICE_ID_MS_DIGITAL_MEDIA_600) }, - { HID_USB_DEVICE(USB_VENDOR_ID_MICROSOFT, USB_DEVICE_ID_MS_DIGITAL_MEDIA_3KV1) }, -diff --git a/drivers/hid/hid-ids.h b/drivers/hid/hid-ids.h -index 575aa65..10d1535 100644 ---- a/drivers/hid/hid-ids.h -+++ b/drivers/hid/hid-ids.h -@@ -719,7 +719,6 @@ - #define USB_DEVICE_ID_MS_TYPE_COVER_PRO_3_2 0x07e2 - #define USB_DEVICE_ID_MS_TYPE_COVER_PRO_3_JP 0x07dd - #define USB_DEVICE_ID_MS_TYPE_COVER_PRO_4_JP 0x07e9 --#define USB_DEVICE_ID_MS_TYPE_COVER_3 0x07de - #define USB_DEVICE_ID_MS_POWER_COVER 0x07da - - #define USB_VENDOR_ID_MOJO 0x8282 -diff --git a/drivers/hid/hid-microsoft.c b/drivers/hid/hid-microsoft.c -index c6cd392..ba02667 100644 ---- a/drivers/hid/hid-microsoft.c -+++ b/drivers/hid/hid-microsoft.c -@@ -282,8 +282,6 @@ static const struct hid_device_id ms_devices[] = { - .driver_data = MS_HIDINPUT }, - { HID_USB_DEVICE(USB_VENDOR_ID_MICROSOFT, USB_DEVICE_ID_MS_TYPE_COVER_PRO_4_JP), - .driver_data = MS_HIDINPUT }, -- { HID_USB_DEVICE(USB_VENDOR_ID_MICROSOFT, USB_DEVICE_ID_MS_TYPE_COVER_3), -- .driver_data = MS_HIDINPUT }, - { HID_USB_DEVICE(USB_VENDOR_ID_MICROSOFT, USB_DEVICE_ID_MS_POWER_COVER), - .driver_data = MS_HIDINPUT }, - { HID_USB_DEVICE(USB_VENDOR_ID_MICROSOFT, USB_DEVICE_ID_MS_COMFORT_KEYBOARD), -diff --git a/drivers/hid/hid-multitouch.c b/drivers/hid/hid-multitouch.c -index fb6f1f4..84c56e6 100644 ---- a/drivers/hid/hid-multitouch.c -+++ b/drivers/hid/hid-multitouch.c -@@ -842,7 +842,9 @@ static int mt_input_mapping(struct hid_device *hdev, struct hid_input *hi, - if (!td->mtclass.export_all_inputs && - field->application != HID_DG_TOUCHSCREEN && - field->application != HID_DG_PEN && -- field->application != HID_DG_TOUCHPAD) -+ field->application != HID_DG_TOUCHPAD && -+ field->application != HID_GD_KEYBOARD && -+ field->application != HID_CP_CONSUMER_CONTROL) - return -1; - - /* -diff --git a/drivers/hid/usbhid/hid-quirks.c b/drivers/hid/usbhid/hid-quirks.c -index e6cfd32..18ae715 100644 ---- a/drivers/hid/usbhid/hid-quirks.c -+++ b/drivers/hid/usbhid/hid-quirks.c -@@ -102,7 +102,6 @@ static const struct hid_blacklist { - { USB_VENDOR_ID_MICROSOFT, USB_DEVICE_ID_MS_TYPE_COVER_PRO_3_2, HID_QUIRK_NO_INIT_REPORTS }, - { USB_VENDOR_ID_MICROSOFT, USB_DEVICE_ID_MS_TYPE_COVER_PRO_3_JP, HID_QUIRK_NO_INIT_REPORTS }, - { USB_VENDOR_ID_MICROSOFT, USB_DEVICE_ID_MS_TYPE_COVER_PRO_4_JP, HID_QUIRK_NO_INIT_REPORTS }, -- { USB_VENDOR_ID_MICROSOFT, USB_DEVICE_ID_MS_TYPE_COVER_3, HID_QUIRK_NO_INIT_REPORTS }, - { USB_VENDOR_ID_MICROSOFT, USB_DEVICE_ID_MS_POWER_COVER, HID_QUIRK_NO_INIT_REPORTS }, - { USB_VENDOR_ID_MSI, USB_DEVICE_ID_MSI_GT683R_LED_PANEL, HID_QUIRK_NO_INIT_REPORTS }, - { USB_VENDOR_ID_NEXIO, USB_DEVICE_ID_NEXIO_MULTITOUCH_PTI0750, HID_QUIRK_NO_INIT_REPORTS }, --- -2.9.3 - diff --git a/0001-Work-around-for-gcc7-and-arm64.patch b/0001-Work-around-for-gcc7-and-arm64.patch deleted file mode 100644 index 88f40be5d..000000000 --- a/0001-Work-around-for-gcc7-and-arm64.patch +++ /dev/null @@ -1,62 +0,0 @@ -From 975dcf140bd307b431aff7b6d671155c796cfe5e Mon Sep 17 00:00:00 2001 -From: Laura Abbott <labbott@redhat.com> -Date: Sat, 28 Jan 2017 16:13:49 +0100 -Subject: [PATCH] Work around for gcc7 and arm64 - -Originally proposed by Will Deacon <will.deacon@arm.com> - -http://lists.infradead.org/pipermail/linux-arm-kernel/2016-October/462224.html - -Signed-off-by: Laura Abbott <labbott@redhat.com> ---- - include/linux/log2.h | 13 ++----------- - 1 file changed, 2 insertions(+), 11 deletions(-) - -diff --git a/include/linux/log2.h b/include/linux/log2.h -index fd7ff3d91e6a..1ab22b79681e 100644 ---- a/include/linux/log2.h -+++ b/include/linux/log2.h -@@ -16,12 +16,6 @@ - #include <linux/bitops.h> - - /* -- * deal with unrepresentable constant logarithms -- */ --extern __attribute__((const, noreturn)) --int ____ilog2_NaN(void); -- --/* - * non-constant log of base 2 calculators - * - the arch may override these in asm/bitops.h if they can be implemented - * more efficiently than using fls() and fls64() -@@ -85,7 +79,7 @@ unsigned long __rounddown_pow_of_two(unsigned long n) - #define ilog2(n) \ - ( \ - __builtin_constant_p(n) ? ( \ -- (n) < 1 ? ____ilog2_NaN() : \ -+ (n) < 1 ? 0 : \ - (n) & (1ULL << 63) ? 63 : \ - (n) & (1ULL << 62) ? 62 : \ - (n) & (1ULL << 61) ? 61 : \ -@@ -149,9 +143,7 @@ unsigned long __rounddown_pow_of_two(unsigned long n) - (n) & (1ULL << 3) ? 3 : \ - (n) & (1ULL << 2) ? 2 : \ - (n) & (1ULL << 1) ? 1 : \ -- (n) & (1ULL << 0) ? 0 : \ -- ____ilog2_NaN() \ -- ) : \ -+ 0 ) : \ - (sizeof(n) <= 4) ? \ - __ilog2_u32(n) : \ - __ilog2_u64(n) \ -@@ -194,7 +186,6 @@ unsigned long __rounddown_pow_of_two(unsigned long n) - * @n: parameter - * - * The first few values calculated by this routine: -- * ob2(0) = 0 - * ob2(1) = 0 - * ob2(2) = 1 - * ob2(3) = 2 --- -2.11.0 - diff --git a/0001-drm-mgag200-Black-screen-fix-for-G200e-rev-4.patch b/0001-drm-mgag200-Black-screen-fix-for-G200e-rev-4.patch deleted file mode 100644 index e583d09e8..000000000 --- a/0001-drm-mgag200-Black-screen-fix-for-G200e-rev-4.patch +++ /dev/null @@ -1,58 +0,0 @@ -From 1e5895f2c6068fb9ae5356e3a751a29a22af5f01 Mon Sep 17 00:00:00 2001 -From: Fedora Kernel Team <kernel-team@fedoraproject.org> -Date: Mon, 20 Jun 2016 14:53:03 +0200 -Subject: [PATCH 1/6] drm/mgag200: Black screen fix for G200e rev 4 - -Upstream: since drm-fixes-for-v4.7 -commit d3922b69617b62bb2509936b68301f837229d9f0 - -Author: Mathieu Larouche <mathieu.larouche@matrox.com> -AuthorDate: Fri May 27 15:12:50 2016 -0400 -Commit: Dave Airlie <airlied@redhat.com> -CommitDate: Wed Jun 1 15:25:04 2016 +1000 - - drm/mgag200: Black screen fix for G200e rev 4 - - - Fixed black screen for some resolutions of G200e rev4 - - Fixed testm & testn which had predetermined value. - - Reported-by: Jan Beulich <jbeulich@suse.com> - - Signed-off-by: Mathieu Larouche <mathieu.larouche@matrox.com> - Cc: stable@vger.kernel.org - Signed-off-by: Dave Airlie <airlied@redhat.com> ---- - drivers/gpu/drm/mgag200/mgag200_mode.c | 10 +++++++++- - 1 file changed, 9 insertions(+), 1 deletion(-) - -diff --git a/drivers/gpu/drm/mgag200/mgag200_mode.c b/drivers/gpu/drm/mgag200/mgag200_mode.c -index 14e64e0..d347dca 100644 ---- a/drivers/gpu/drm/mgag200/mgag200_mode.c -+++ b/drivers/gpu/drm/mgag200/mgag200_mode.c -@@ -182,7 +182,7 @@ static int mga_g200se_set_plls(struct mga_device *mdev, long clock) - } - } - -- fvv = pllreffreq * testn / testm; -+ fvv = pllreffreq * (n + 1) / (m + 1); - fvv = (fvv - 800000) / 50000; - - if (fvv > 15) -@@ -202,6 +202,14 @@ static int mga_g200se_set_plls(struct mga_device *mdev, long clock) - WREG_DAC(MGA1064_PIX_PLLC_M, m); - WREG_DAC(MGA1064_PIX_PLLC_N, n); - WREG_DAC(MGA1064_PIX_PLLC_P, p); -+ -+ if (mdev->unique_rev_id >= 0x04) { -+ WREG_DAC(0x1a, 0x09); -+ msleep(20); -+ WREG_DAC(0x1a, 0x01); -+ -+ } -+ - return 0; - } - --- -2.7.4 - diff --git a/0001-i2c-bcm2835-Debug-test-for-curr_msg.patch b/0001-i2c-bcm2835-Debug-test-for-curr_msg.patch deleted file mode 100644 index 4d4f0cb0f..000000000 --- a/0001-i2c-bcm2835-Debug-test-for-curr_msg.patch +++ /dev/null @@ -1,29 +0,0 @@ -From 81c53729ee7c7f721c357ed3b531ebc97ca44051 Mon Sep 17 00:00:00 2001 -From: Eric Anholt <eric@anholt.net> -Date: Wed, 15 Feb 2017 11:57:57 -0800 -Subject: [PATCH] i2c-bcm2835: Debug test for curr_msg - -Signed-off-by: Eric Anholt <eric@anholt.net> ---- - drivers/i2c/busses/i2c-bcm2835.c | 5 ++++- - 1 file changed, 4 insertions(+), 1 deletion(-) - -diff --git a/drivers/i2c/busses/i2c-bcm2835.c b/drivers/i2c/busses/i2c-bcm2835.c -index c3436f627028..a75fab4dd660 100644 ---- a/drivers/i2c/busses/i2c-bcm2835.c -+++ b/drivers/i2c/busses/i2c-bcm2835.c -@@ -195,7 +195,10 @@ static irqreturn_t bcm2835_i2c_isr(int this_irq, void *data) - } - - if (val & BCM2835_I2C_S_DONE) { -- if (i2c_dev->curr_msg->flags & I2C_M_RD) { -+ if (!i2c_dev->curr_msg) { -+ dev_info(i2c_dev->dev, -+ "Processing DONE interrupt with no msg\n"); -+ } else if (i2c_dev->curr_msg->flags & I2C_M_RD) { - bcm2835_drain_rxfifo(i2c_dev); - val = bcm2835_i2c_readl(i2c_dev, BCM2835_I2C_S); - } --- -2.11.0 - diff --git a/0002-HID-multitouch-enable-the-Surface-4-Type-Cover-Pro-J.patch b/0002-HID-multitouch-enable-the-Surface-4-Type-Cover-Pro-J.patch deleted file mode 100644 index 40b010bb3..000000000 --- a/0002-HID-multitouch-enable-the-Surface-4-Type-Cover-Pro-J.patch +++ /dev/null @@ -1,83 +0,0 @@ -From 4fed0231994b27b3896bc63885ac66d02fff625b Mon Sep 17 00:00:00 2001 -From: Yuta Kobayashi <alu.ula@outlook.com> -Date: Mon, 19 Dec 2016 02:36:45 +0000 -Subject: [PATCH] HID: multitouch: enable the Surface 4 Type Cover Pro (JP) to - report multitouch data - -Since commit 8fe89ef076fa1 ("HID: multitouch: enable the Surface 3 Type -Cover to report multitouch data"), the TypeCover can be properly handled -by hid-multitouch and don't require any special quirk in the kernel. - -Remove the support of the Surface 4 Type Cover Pro (JP) from -hid-microsoft so it can properly report multitouch from the touchpad. - -Signed-off-by: Yuta Kobayashi <alu.ula@outlook.com> -Reviewed-by: Benjamin Tissoires <benjamin.tissoires@redhat.com> -Signed-off-by: Jiri Kosina <jkosina@suse.cz> ---- - drivers/hid/hid-core.c | 2 -- - drivers/hid/hid-ids.h | 1 - - drivers/hid/hid-microsoft.c | 2 -- - drivers/hid/usbhid/hid-quirks.c | 1 - - 4 files changed, 6 deletions(-) - -diff --git a/drivers/hid/hid-core.c b/drivers/hid/hid-core.c -index cff060b..db87d91 100644 ---- a/drivers/hid/hid-core.c -+++ b/drivers/hid/hid-core.c -@@ -729,7 +729,6 @@ static void hid_scan_collection(struct hid_parser *parser, unsigned type) - hid->product == USB_DEVICE_ID_MS_TYPE_COVER_PRO_3_JP || - hid->product == USB_DEVICE_ID_MS_TYPE_COVER_PRO_4 || - hid->product == USB_DEVICE_ID_MS_TYPE_COVER_PRO_4_2 || -- hid->product == USB_DEVICE_ID_MS_TYPE_COVER_PRO_4_JP || - hid->product == USB_DEVICE_ID_MS_POWER_COVER) && - hid->group == HID_GROUP_MULTITOUCH) - hid->group = HID_GROUP_GENERIC; -@@ -1990,7 +1989,6 @@ static const struct hid_device_id hid_have_special_driver[] = { - { HID_USB_DEVICE(USB_VENDOR_ID_MICROSOFT, USB_DEVICE_ID_MS_TYPE_COVER_PRO_3_JP) }, - { HID_USB_DEVICE(USB_VENDOR_ID_MICROSOFT, USB_DEVICE_ID_MS_TYPE_COVER_PRO_4) }, - { HID_USB_DEVICE(USB_VENDOR_ID_MICROSOFT, USB_DEVICE_ID_MS_TYPE_COVER_PRO_4_2) }, -- { HID_USB_DEVICE(USB_VENDOR_ID_MICROSOFT, USB_DEVICE_ID_MS_TYPE_COVER_PRO_4_JP) }, - { HID_USB_DEVICE(USB_VENDOR_ID_MICROSOFT, USB_DEVICE_ID_MS_DIGITAL_MEDIA_7K) }, - { HID_USB_DEVICE(USB_VENDOR_ID_MICROSOFT, USB_DEVICE_ID_MS_DIGITAL_MEDIA_600) }, - { HID_USB_DEVICE(USB_VENDOR_ID_MICROSOFT, USB_DEVICE_ID_MS_DIGITAL_MEDIA_3KV1) }, -diff --git a/drivers/hid/hid-ids.h b/drivers/hid/hid-ids.h -index ec277b9..55758f7 100644 ---- a/drivers/hid/hid-ids.h -+++ b/drivers/hid/hid-ids.h -@@ -723,7 +723,6 @@ - #define USB_DEVICE_ID_MS_TYPE_COVER_PRO_3_JP 0x07dd - #define USB_DEVICE_ID_MS_TYPE_COVER_PRO_4 0x07e4 - #define USB_DEVICE_ID_MS_TYPE_COVER_PRO_4_2 0x07e8 --#define USB_DEVICE_ID_MS_TYPE_COVER_PRO_4_JP 0x07e9 - #define USB_DEVICE_ID_MS_POWER_COVER 0x07da - - #define USB_VENDOR_ID_MOJO 0x8282 -diff --git a/drivers/hid/hid-microsoft.c b/drivers/hid/hid-microsoft.c -index 74b7b84..2b706b5 100644 ---- a/drivers/hid/hid-microsoft.c -+++ b/drivers/hid/hid-microsoft.c -@@ -284,8 +284,6 @@ static const struct hid_device_id ms_devices[] = { - .driver_data = MS_HIDINPUT }, - { HID_USB_DEVICE(USB_VENDOR_ID_MICROSOFT, USB_DEVICE_ID_MS_TYPE_COVER_PRO_4_2), - .driver_data = MS_HIDINPUT }, -- { HID_USB_DEVICE(USB_VENDOR_ID_MICROSOFT, USB_DEVICE_ID_MS_TYPE_COVER_PRO_4_JP), -- .driver_data = MS_HIDINPUT }, - { HID_USB_DEVICE(USB_VENDOR_ID_MICROSOFT, USB_DEVICE_ID_MS_POWER_COVER), - .driver_data = MS_HIDINPUT }, - { HID_USB_DEVICE(USB_VENDOR_ID_MICROSOFT, USB_DEVICE_ID_MS_COMFORT_KEYBOARD), -diff --git a/drivers/hid/usbhid/hid-quirks.c b/drivers/hid/usbhid/hid-quirks.c -index b3e01c8..ebb8e95c 100644 ---- a/drivers/hid/usbhid/hid-quirks.c -+++ b/drivers/hid/usbhid/hid-quirks.c -@@ -105,7 +105,6 @@ static const struct hid_blacklist { - { USB_VENDOR_ID_MICROSOFT, USB_DEVICE_ID_MS_TYPE_COVER_PRO_3_JP, HID_QUIRK_NO_INIT_REPORTS }, - { USB_VENDOR_ID_MICROSOFT, USB_DEVICE_ID_MS_TYPE_COVER_PRO_4, HID_QUIRK_NO_INIT_REPORTS }, - { USB_VENDOR_ID_MICROSOFT, USB_DEVICE_ID_MS_TYPE_COVER_PRO_4_2, HID_QUIRK_NO_INIT_REPORTS }, -- { USB_VENDOR_ID_MICROSOFT, USB_DEVICE_ID_MS_TYPE_COVER_PRO_4_JP, HID_QUIRK_NO_INIT_REPORTS }, - { USB_VENDOR_ID_MICROSOFT, USB_DEVICE_ID_MS_POWER_COVER, HID_QUIRK_NO_INIT_REPORTS }, - { USB_VENDOR_ID_MSI, USB_DEVICE_ID_MSI_GT683R_LED_PANEL, HID_QUIRK_NO_INIT_REPORTS }, - { USB_VENDOR_ID_NEXIO, USB_DEVICE_ID_NEXIO_MULTITOUCH_PTI0750, HID_QUIRK_NO_INIT_REPORTS }, --- -2.9.3 - diff --git a/0002-drm-nouveau-fbcon-fix-out-of-bounds-memory-accesses.patch b/0002-drm-nouveau-fbcon-fix-out-of-bounds-memory-accesses.patch deleted file mode 100644 index d1c32b439..000000000 --- a/0002-drm-nouveau-fbcon-fix-out-of-bounds-memory-accesses.patch +++ /dev/null @@ -1,138 +0,0 @@ -From 02510a8805db2c3f8ca2926f90c4b3793934404a Mon Sep 17 00:00:00 2001 -From: Fedora Kernel Team <kernel-team@fedoraproject.org> -Date: Mon, 20 Jun 2016 14:51:45 +0200 -Subject: [PATCH 2/6] drm/nouveau/fbcon: fix out-of-bounds memory accesses - -Upstream: drm-fixes for 4.7 (and cc'd 4.6-stable) -commit f045f459d925138fe7d6193a8c86406bda7e49da - -Author: Ben Skeggs <bskeggs@redhat.com> -AuthorDate: Thu Jun 2 12:23:31 2016 +1000 -Commit: Ben Skeggs <bskeggs@redhat.com> -CommitDate: Thu Jun 2 13:53:44 2016 +1000 - - drm/nouveau/fbcon: fix out-of-bounds memory accesses - - Reported by KASAN. - - Signed-off-by: Ben Skeggs <bskeggs@redhat.com> - Cc: stable@vger.kernel.org ---- - drivers/gpu/drm/nouveau/nouveau_fbcon.c | 1 + - drivers/gpu/drm/nouveau/nv04_fbcon.c | 7 ++----- - drivers/gpu/drm/nouveau/nv50_fbcon.c | 6 ++---- - drivers/gpu/drm/nouveau/nvc0_fbcon.c | 6 ++---- - 4 files changed, 7 insertions(+), 13 deletions(-) - -diff --git a/drivers/gpu/drm/nouveau/nouveau_fbcon.c b/drivers/gpu/drm/nouveau/nouveau_fbcon.c -index 59f27e7..bd89c86 100644 ---- a/drivers/gpu/drm/nouveau/nouveau_fbcon.c -+++ b/drivers/gpu/drm/nouveau/nouveau_fbcon.c -@@ -557,6 +557,7 @@ nouveau_fbcon_init(struct drm_device *dev) - if (ret) - goto fini; - -+ fbcon->helper.fbdev->pixmap.buf_align = 4; - return 0; - - fini: -diff --git a/drivers/gpu/drm/nouveau/nv04_fbcon.c b/drivers/gpu/drm/nouveau/nv04_fbcon.c -index 789dc29..8f715fe 100644 ---- a/drivers/gpu/drm/nouveau/nv04_fbcon.c -+++ b/drivers/gpu/drm/nouveau/nv04_fbcon.c -@@ -82,7 +82,6 @@ nv04_fbcon_imageblit(struct fb_info *info, const struct fb_image *image) - uint32_t fg; - uint32_t bg; - uint32_t dsize; -- uint32_t width; - uint32_t *data = (uint32_t *)image->data; - int ret; - -@@ -93,9 +92,6 @@ nv04_fbcon_imageblit(struct fb_info *info, const struct fb_image *image) - if (ret) - return ret; - -- width = ALIGN(image->width, 8); -- dsize = ALIGN(width * image->height, 32) >> 5; -- - if (info->fix.visual == FB_VISUAL_TRUECOLOR || - info->fix.visual == FB_VISUAL_DIRECTCOLOR) { - fg = ((uint32_t *) info->pseudo_palette)[image->fg_color]; -@@ -111,10 +107,11 @@ nv04_fbcon_imageblit(struct fb_info *info, const struct fb_image *image) - ((image->dx + image->width) & 0xffff)); - OUT_RING(chan, bg); - OUT_RING(chan, fg); -- OUT_RING(chan, (image->height << 16) | width); -+ OUT_RING(chan, (image->height << 16) | image->width); - OUT_RING(chan, (image->height << 16) | image->width); - OUT_RING(chan, (image->dy << 16) | (image->dx & 0xffff)); - -+ dsize = ALIGN(image->width * image->height, 32) >> 5; - while (dsize) { - int iter_len = dsize > 128 ? 128 : dsize; - -diff --git a/drivers/gpu/drm/nouveau/nv50_fbcon.c b/drivers/gpu/drm/nouveau/nv50_fbcon.c -index e05499d..a4e259a 100644 ---- a/drivers/gpu/drm/nouveau/nv50_fbcon.c -+++ b/drivers/gpu/drm/nouveau/nv50_fbcon.c -@@ -95,7 +95,7 @@ nv50_fbcon_imageblit(struct fb_info *info, const struct fb_image *image) - struct nouveau_fbdev *nfbdev = info->par; - struct nouveau_drm *drm = nouveau_drm(nfbdev->dev); - struct nouveau_channel *chan = drm->channel; -- uint32_t width, dwords, *data = (uint32_t *)image->data; -+ uint32_t dwords, *data = (uint32_t *)image->data; - uint32_t mask = ~(~0 >> (32 - info->var.bits_per_pixel)); - uint32_t *palette = info->pseudo_palette; - int ret; -@@ -107,9 +107,6 @@ nv50_fbcon_imageblit(struct fb_info *info, const struct fb_image *image) - if (ret) - return ret; - -- width = ALIGN(image->width, 32); -- dwords = (width * image->height) >> 5; -- - BEGIN_NV04(chan, NvSub2D, 0x0814, 2); - if (info->fix.visual == FB_VISUAL_TRUECOLOR || - info->fix.visual == FB_VISUAL_DIRECTCOLOR) { -@@ -128,6 +125,7 @@ nv50_fbcon_imageblit(struct fb_info *info, const struct fb_image *image) - OUT_RING(chan, 0); - OUT_RING(chan, image->dy); - -+ dwords = ALIGN(image->width * image->height, 32) >> 5; - while (dwords) { - int push = dwords > 2047 ? 2047 : dwords; - -diff --git a/drivers/gpu/drm/nouveau/nvc0_fbcon.c b/drivers/gpu/drm/nouveau/nvc0_fbcon.c -index c97395b..f28315e 100644 ---- a/drivers/gpu/drm/nouveau/nvc0_fbcon.c -+++ b/drivers/gpu/drm/nouveau/nvc0_fbcon.c -@@ -95,7 +95,7 @@ nvc0_fbcon_imageblit(struct fb_info *info, const struct fb_image *image) - struct nouveau_fbdev *nfbdev = info->par; - struct nouveau_drm *drm = nouveau_drm(nfbdev->dev); - struct nouveau_channel *chan = drm->channel; -- uint32_t width, dwords, *data = (uint32_t *)image->data; -+ uint32_t dwords, *data = (uint32_t *)image->data; - uint32_t mask = ~(~0 >> (32 - info->var.bits_per_pixel)); - uint32_t *palette = info->pseudo_palette; - int ret; -@@ -107,9 +107,6 @@ nvc0_fbcon_imageblit(struct fb_info *info, const struct fb_image *image) - if (ret) - return ret; - -- width = ALIGN(image->width, 32); -- dwords = (width * image->height) >> 5; -- - BEGIN_NVC0(chan, NvSub2D, 0x0814, 2); - if (info->fix.visual == FB_VISUAL_TRUECOLOR || - info->fix.visual == FB_VISUAL_DIRECTCOLOR) { -@@ -128,6 +125,7 @@ nvc0_fbcon_imageblit(struct fb_info *info, const struct fb_image *image) - OUT_RING (chan, 0); - OUT_RING (chan, image->dy); - -+ dwords = ALIGN(image->width * image->height, 32) >> 5; - while (dwords) { - int push = dwords > 2047 ? 2047 : dwords; - --- -2.7.4 - diff --git a/0003-HID-multitouch-enable-Surface-4-Type-Cover-Pro-non-J.patch b/0003-HID-multitouch-enable-Surface-4-Type-Cover-Pro-non-J.patch deleted file mode 100644 index 22bc8b482..000000000 --- a/0003-HID-multitouch-enable-Surface-4-Type-Cover-Pro-non-J.patch +++ /dev/null @@ -1,88 +0,0 @@ -From 66e5c5ffc7a5e4d36d136ce4fd8bdb4e92ecec7b Mon Sep 17 00:00:00 2001 -From: Daniel Keller <daniel.keller@gcd.de> -Date: Tue, 10 Jan 2017 20:39:31 +0100 -Subject: [PATCH] HID: multitouch: enable Surface 4 Type Cover Pro (non-JP) to - report multitouch data - -Nearly identical to the patch "multitouch: enable the Surface 4 Type Cover Pro -(JP) to report multitouch data" - -We can now remove the support of the Surface 4 Type Cover Pro (not JP versions) -from hid-microsoft so it can properly report multi touch from the touchpad. - -Signed-off-by: Daniel Keller <daniel.keller@gcd.de> -Acked-by: Benjamin Tissoires <benjamin.tissoires@redhat.com> -Signed-off-by: Jiri Kosina <jkosina@suse.cz> ---- - drivers/hid/hid-core.c | 4 ---- - drivers/hid/hid-ids.h | 2 -- - drivers/hid/hid-microsoft.c | 4 ---- - drivers/hid/usbhid/hid-quirks.c | 2 -- - 4 files changed, 12 deletions(-) - -diff --git a/drivers/hid/hid-core.c b/drivers/hid/hid-core.c -index db87d91..1ff9142 100644 ---- a/drivers/hid/hid-core.c -+++ b/drivers/hid/hid-core.c -@@ -727,8 +727,6 @@ static void hid_scan_collection(struct hid_parser *parser, unsigned type) - (hid->product == USB_DEVICE_ID_MS_TYPE_COVER_PRO_3 || - hid->product == USB_DEVICE_ID_MS_TYPE_COVER_PRO_3_2 || - hid->product == USB_DEVICE_ID_MS_TYPE_COVER_PRO_3_JP || -- hid->product == USB_DEVICE_ID_MS_TYPE_COVER_PRO_4 || -- hid->product == USB_DEVICE_ID_MS_TYPE_COVER_PRO_4_2 || - hid->product == USB_DEVICE_ID_MS_POWER_COVER) && - hid->group == HID_GROUP_MULTITOUCH) - hid->group = HID_GROUP_GENERIC; -@@ -1987,8 +1985,6 @@ static const struct hid_device_id hid_have_special_driver[] = { - { HID_USB_DEVICE(USB_VENDOR_ID_MICROSOFT, USB_DEVICE_ID_MS_TYPE_COVER_PRO_3) }, - { HID_USB_DEVICE(USB_VENDOR_ID_MICROSOFT, USB_DEVICE_ID_MS_TYPE_COVER_PRO_3_2) }, - { HID_USB_DEVICE(USB_VENDOR_ID_MICROSOFT, USB_DEVICE_ID_MS_TYPE_COVER_PRO_3_JP) }, -- { HID_USB_DEVICE(USB_VENDOR_ID_MICROSOFT, USB_DEVICE_ID_MS_TYPE_COVER_PRO_4) }, -- { HID_USB_DEVICE(USB_VENDOR_ID_MICROSOFT, USB_DEVICE_ID_MS_TYPE_COVER_PRO_4_2) }, - { HID_USB_DEVICE(USB_VENDOR_ID_MICROSOFT, USB_DEVICE_ID_MS_DIGITAL_MEDIA_7K) }, - { HID_USB_DEVICE(USB_VENDOR_ID_MICROSOFT, USB_DEVICE_ID_MS_DIGITAL_MEDIA_600) }, - { HID_USB_DEVICE(USB_VENDOR_ID_MICROSOFT, USB_DEVICE_ID_MS_DIGITAL_MEDIA_3KV1) }, -diff --git a/drivers/hid/hid-ids.h b/drivers/hid/hid-ids.h -index 55758f7..9d87716 100644 ---- a/drivers/hid/hid-ids.h -+++ b/drivers/hid/hid-ids.h -@@ -721,8 +721,6 @@ - #define USB_DEVICE_ID_MS_TYPE_COVER_PRO_3 0x07dc - #define USB_DEVICE_ID_MS_TYPE_COVER_PRO_3_2 0x07e2 - #define USB_DEVICE_ID_MS_TYPE_COVER_PRO_3_JP 0x07dd --#define USB_DEVICE_ID_MS_TYPE_COVER_PRO_4 0x07e4 --#define USB_DEVICE_ID_MS_TYPE_COVER_PRO_4_2 0x07e8 - #define USB_DEVICE_ID_MS_POWER_COVER 0x07da - - #define USB_VENDOR_ID_MOJO 0x8282 -diff --git a/drivers/hid/hid-microsoft.c b/drivers/hid/hid-microsoft.c -index 2b706b5..d856726 100644 ---- a/drivers/hid/hid-microsoft.c -+++ b/drivers/hid/hid-microsoft.c -@@ -280,10 +280,6 @@ static const struct hid_device_id ms_devices[] = { - .driver_data = MS_HIDINPUT }, - { HID_USB_DEVICE(USB_VENDOR_ID_MICROSOFT, USB_DEVICE_ID_MS_TYPE_COVER_PRO_3_JP), - .driver_data = MS_HIDINPUT }, -- { HID_USB_DEVICE(USB_VENDOR_ID_MICROSOFT, USB_DEVICE_ID_MS_TYPE_COVER_PRO_4), -- .driver_data = MS_HIDINPUT }, -- { HID_USB_DEVICE(USB_VENDOR_ID_MICROSOFT, USB_DEVICE_ID_MS_TYPE_COVER_PRO_4_2), -- .driver_data = MS_HIDINPUT }, - { HID_USB_DEVICE(USB_VENDOR_ID_MICROSOFT, USB_DEVICE_ID_MS_POWER_COVER), - .driver_data = MS_HIDINPUT }, - { HID_USB_DEVICE(USB_VENDOR_ID_MICROSOFT, USB_DEVICE_ID_MS_COMFORT_KEYBOARD), -diff --git a/drivers/hid/usbhid/hid-quirks.c b/drivers/hid/usbhid/hid-quirks.c -index ebb8e95c..6108649 100644 ---- a/drivers/hid/usbhid/hid-quirks.c -+++ b/drivers/hid/usbhid/hid-quirks.c -@@ -103,8 +103,6 @@ static const struct hid_blacklist { - { USB_VENDOR_ID_MICROSOFT, USB_DEVICE_ID_MS_TYPE_COVER_PRO_3, HID_QUIRK_NO_INIT_REPORTS }, - { USB_VENDOR_ID_MICROSOFT, USB_DEVICE_ID_MS_TYPE_COVER_PRO_3_2, HID_QUIRK_NO_INIT_REPORTS }, - { USB_VENDOR_ID_MICROSOFT, USB_DEVICE_ID_MS_TYPE_COVER_PRO_3_JP, HID_QUIRK_NO_INIT_REPORTS }, -- { USB_VENDOR_ID_MICROSOFT, USB_DEVICE_ID_MS_TYPE_COVER_PRO_4, HID_QUIRK_NO_INIT_REPORTS }, -- { USB_VENDOR_ID_MICROSOFT, USB_DEVICE_ID_MS_TYPE_COVER_PRO_4_2, HID_QUIRK_NO_INIT_REPORTS }, - { USB_VENDOR_ID_MICROSOFT, USB_DEVICE_ID_MS_POWER_COVER, HID_QUIRK_NO_INIT_REPORTS }, - { USB_VENDOR_ID_MSI, USB_DEVICE_ID_MSI_GT683R_LED_PANEL, HID_QUIRK_NO_INIT_REPORTS }, - { USB_VENDOR_ID_NEXIO, USB_DEVICE_ID_NEXIO_MULTITOUCH_PTI0750, HID_QUIRK_NO_INIT_REPORTS }, --- -2.9.3 - diff --git a/0003-drm-nouveau-disp-sor-gf119-both-links-use-the-same-t.patch b/0003-drm-nouveau-disp-sor-gf119-both-links-use-the-same-t.patch deleted file mode 100644 index b93bdff17..000000000 --- a/0003-drm-nouveau-disp-sor-gf119-both-links-use-the-same-t.patch +++ /dev/null @@ -1,46 +0,0 @@ -From de35f524e89daf8862d49724b9045f9254bfdfea Mon Sep 17 00:00:00 2001 -From: Fedora Kernel Team <kernel-team@fedoraproject.org> -Date: Mon, 20 Jun 2016 14:52:01 +0200 -Subject: [PATCH 3/6] drm/nouveau/disp/sor/gf119: both links use the same - training register - -Upstream: drm-fixes for 4.7 (and cc'd 4.6-stable) -commit a8953c52b95167b5d21a66f0859751570271d834 - -Author: Ben Skeggs <bskeggs@redhat.com> -AuthorDate: Fri Jun 3 14:37:40 2016 +1000 -Commit: Ben Skeggs <bskeggs@redhat.com> -CommitDate: Tue Jun 7 08:11:14 2016 +1000 - - drm/nouveau/disp/sor/gf119: both links use the same training register - - It appears that, for whatever reason, both link A and B use the same - register to control the training pattern. It's a little odd, as the - GPUs before this (Tesla/Fermi1) have per-link registers, as do newer - GPUs (Maxwell). - - Fixes the third DP output on NVS 510 (GK107). - - Signed-off-by: Ben Skeggs <bskeggs@redhat.com> - Cc: stable@vger.kernel.org ---- - drivers/gpu/drm/nouveau/nvkm/engine/disp/sorgf119.c | 3 +-- - 1 file changed, 1 insertion(+), 2 deletions(-) - -diff --git a/drivers/gpu/drm/nouveau/nvkm/engine/disp/sorgf119.c b/drivers/gpu/drm/nouveau/nvkm/engine/disp/sorgf119.c -index b4b41b1..5111560 100644 ---- a/drivers/gpu/drm/nouveau/nvkm/engine/disp/sorgf119.c -+++ b/drivers/gpu/drm/nouveau/nvkm/engine/disp/sorgf119.c -@@ -40,8 +40,7 @@ static int - gf119_sor_dp_pattern(struct nvkm_output_dp *outp, int pattern) - { - struct nvkm_device *device = outp->base.disp->engine.subdev.device; -- const u32 loff = gf119_sor_loff(outp); -- nvkm_mask(device, 0x61c110 + loff, 0x0f0f0f0f, 0x01010101 * pattern); -+ nvkm_mask(device, 0x61c110, 0x0f0f0f0f, 0x01010101 * pattern); - return 0; - } - --- -2.7.4 - diff --git a/0004-drm-nouveau-disp-sor-gm107-training-pattern-register.patch b/0004-drm-nouveau-disp-sor-gm107-training-pattern-register.patch deleted file mode 100644 index a0b6171d8..000000000 --- a/0004-drm-nouveau-disp-sor-gm107-training-pattern-register.patch +++ /dev/null @@ -1,195 +0,0 @@ -From eb4668302adce316f53896b0fd8144ffe380a3ad Mon Sep 17 00:00:00 2001 -From: Fedora Kernel Team <kernel-team@fedoraproject.org> -Date: Mon, 20 Jun 2016 14:52:06 +0200 -Subject: [PATCH 4/6] drm/nouveau/disp/sor/gm107: training pattern registers - are like gm200 - -Upstream: drm-fixes for 4.7 (and cc'd 4.6-stable) -commit 4691409b3e2250ed66aa8dcefa23fe765daf7add - -Author: Ben Skeggs <bskeggs@redhat.com> -AuthorDate: Fri Jun 3 15:05:52 2016 +1000 -Commit: Ben Skeggs <bskeggs@redhat.com> -CommitDate: Tue Jun 7 08:11:25 2016 +1000 - - drm/nouveau/disp/sor/gm107: training pattern registers are like gm200 - - Signed-off-by: Ben Skeggs <bskeggs@redhat.com> - Cc: stable@vger.kernel.org ---- - drivers/gpu/drm/nouveau/nvkm/engine/disp/Kbuild | 1 + - drivers/gpu/drm/nouveau/nvkm/engine/disp/gm107.c | 2 +- - drivers/gpu/drm/nouveau/nvkm/engine/disp/outpdp.h | 9 +++- - .../gpu/drm/nouveau/nvkm/engine/disp/sorgf119.c | 2 +- - .../nvkm/engine/disp/{gm107.c => sorgm107.c} | 50 +++++++++++----------- - .../gpu/drm/nouveau/nvkm/engine/disp/sorgm200.c | 15 +------ - 6 files changed, 36 insertions(+), 43 deletions(-) - copy drivers/gpu/drm/nouveau/nvkm/engine/disp/{gm107.c => sorgm107.c} (55%) - -diff --git a/drivers/gpu/drm/nouveau/nvkm/engine/disp/Kbuild b/drivers/gpu/drm/nouveau/nvkm/engine/disp/Kbuild -index a74c5dd..e2a64ed 100644 ---- a/drivers/gpu/drm/nouveau/nvkm/engine/disp/Kbuild -+++ b/drivers/gpu/drm/nouveau/nvkm/engine/disp/Kbuild -@@ -18,6 +18,7 @@ nvkm-y += nvkm/engine/disp/piornv50.o - nvkm-y += nvkm/engine/disp/sornv50.o - nvkm-y += nvkm/engine/disp/sorg94.o - nvkm-y += nvkm/engine/disp/sorgf119.o -+nvkm-y += nvkm/engine/disp/sorgm107.o - nvkm-y += nvkm/engine/disp/sorgm200.o - nvkm-y += nvkm/engine/disp/dport.o - -diff --git a/drivers/gpu/drm/nouveau/nvkm/engine/disp/gm107.c b/drivers/gpu/drm/nouveau/nvkm/engine/disp/gm107.c -index b694414..f4b9cf8 100644 ---- a/drivers/gpu/drm/nouveau/nvkm/engine/disp/gm107.c -+++ b/drivers/gpu/drm/nouveau/nvkm/engine/disp/gm107.c -@@ -36,7 +36,7 @@ gm107_disp = { - .outp.internal.crt = nv50_dac_output_new, - .outp.internal.tmds = nv50_sor_output_new, - .outp.internal.lvds = nv50_sor_output_new, -- .outp.internal.dp = gf119_sor_dp_new, -+ .outp.internal.dp = gm107_sor_dp_new, - .dac.nr = 3, - .dac.power = nv50_dac_power, - .dac.sense = nv50_dac_sense, -diff --git a/drivers/gpu/drm/nouveau/nvkm/engine/disp/outpdp.h b/drivers/gpu/drm/nouveau/nvkm/engine/disp/outpdp.h -index e9067ba..4e983f6 100644 ---- a/drivers/gpu/drm/nouveau/nvkm/engine/disp/outpdp.h -+++ b/drivers/gpu/drm/nouveau/nvkm/engine/disp/outpdp.h -@@ -62,7 +62,12 @@ int g94_sor_dp_lnk_pwr(struct nvkm_output_dp *, int); - int gf119_sor_dp_new(struct nvkm_disp *, int, struct dcb_output *, - struct nvkm_output **); - int gf119_sor_dp_lnk_ctl(struct nvkm_output_dp *, int, int, bool); -+int gf119_sor_dp_drv_ctl(struct nvkm_output_dp *, int, int, int, int); - --int gm200_sor_dp_new(struct nvkm_disp *, int, struct dcb_output *, -- struct nvkm_output **); -+int gm107_sor_dp_new(struct nvkm_disp *, int, struct dcb_output *, -+ struct nvkm_output **); -+int gm107_sor_dp_pattern(struct nvkm_output_dp *, int); -+ -+int gm200_sor_dp_new(struct nvkm_disp *, int, struct dcb_output *, -+ struct nvkm_output **); - #endif -diff --git a/drivers/gpu/drm/nouveau/nvkm/engine/disp/sorgf119.c b/drivers/gpu/drm/nouveau/nvkm/engine/disp/sorgf119.c -index 5111560..22706c0 100644 ---- a/drivers/gpu/drm/nouveau/nvkm/engine/disp/sorgf119.c -+++ b/drivers/gpu/drm/nouveau/nvkm/engine/disp/sorgf119.c -@@ -63,7 +63,7 @@ gf119_sor_dp_lnk_ctl(struct nvkm_output_dp *outp, int nr, int bw, bool ef) - return 0; - } - --static int -+int - gf119_sor_dp_drv_ctl(struct nvkm_output_dp *outp, - int ln, int vs, int pe, int pc) - { -diff --git a/drivers/gpu/drm/nouveau/nvkm/engine/disp/gm107.c b/drivers/gpu/drm/nouveau/nvkm/engine/disp/sorgm107.c -similarity index 55% -copy from drivers/gpu/drm/nouveau/nvkm/engine/disp/gm107.c -copy to drivers/gpu/drm/nouveau/nvkm/engine/disp/sorgm107.c -index b694414..37790b2 100644 ---- a/drivers/gpu/drm/nouveau/nvkm/engine/disp/gm107.c -+++ b/drivers/gpu/drm/nouveau/nvkm/engine/disp/sorgm107.c -@@ -1,5 +1,5 @@ - /* -- * Copyright 2012 Red Hat Inc. -+ * Copyright 2016 Red Hat Inc. - * - * Permission is hereby granted, free of charge, to any person obtaining a - * copy of this software and associated documentation files (the "Software"), -@@ -19,35 +19,35 @@ - * ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR - * OTHER DEALINGS IN THE SOFTWARE. - * -- * Authors: Ben Skeggs -+ * Authors: Ben Skeggs <bskeggs@redhat.com> - */ - #include "nv50.h" --#include "rootnv50.h" -+#include "outpdp.h" - --static const struct nv50_disp_func --gm107_disp = { -- .intr = gf119_disp_intr, -- .uevent = &gf119_disp_chan_uevent, -- .super = gf119_disp_intr_supervisor, -- .root = &gm107_disp_root_oclass, -- .head.vblank_init = gf119_disp_vblank_init, -- .head.vblank_fini = gf119_disp_vblank_fini, -- .head.scanoutpos = gf119_disp_root_scanoutpos, -- .outp.internal.crt = nv50_dac_output_new, -- .outp.internal.tmds = nv50_sor_output_new, -- .outp.internal.lvds = nv50_sor_output_new, -- .outp.internal.dp = gf119_sor_dp_new, -- .dac.nr = 3, -- .dac.power = nv50_dac_power, -- .dac.sense = nv50_dac_sense, -- .sor.nr = 4, -- .sor.power = nv50_sor_power, -- .sor.hda_eld = gf119_hda_eld, -- .sor.hdmi = gk104_hdmi_ctrl, -+int -+gm107_sor_dp_pattern(struct nvkm_output_dp *outp, int pattern) -+{ -+ struct nvkm_device *device = outp->base.disp->engine.subdev.device; -+ const u32 soff = outp->base.or * 0x800; -+ const u32 data = 0x01010101 * pattern; -+ if (outp->base.info.sorconf.link & 1) -+ nvkm_mask(device, 0x61c110 + soff, 0x0f0f0f0f, data); -+ else -+ nvkm_mask(device, 0x61c12c + soff, 0x0f0f0f0f, data); -+ return 0; -+} -+ -+static const struct nvkm_output_dp_func -+gm107_sor_dp_func = { -+ .pattern = gm107_sor_dp_pattern, -+ .lnk_pwr = g94_sor_dp_lnk_pwr, -+ .lnk_ctl = gf119_sor_dp_lnk_ctl, -+ .drv_ctl = gf119_sor_dp_drv_ctl, - }; - - int --gm107_disp_new(struct nvkm_device *device, int index, struct nvkm_disp **pdisp) -+gm107_sor_dp_new(struct nvkm_disp *disp, int index, -+ struct dcb_output *dcbE, struct nvkm_output **poutp) - { -- return gf119_disp_new_(&gm107_disp, device, index, pdisp); -+ return nvkm_output_dp_new_(&gm107_sor_dp_func, disp, index, dcbE, poutp); - } -diff --git a/drivers/gpu/drm/nouveau/nvkm/engine/disp/sorgm200.c b/drivers/gpu/drm/nouveau/nvkm/engine/disp/sorgm200.c -index 2cfbef9..c44fa7e 100644 ---- a/drivers/gpu/drm/nouveau/nvkm/engine/disp/sorgm200.c -+++ b/drivers/gpu/drm/nouveau/nvkm/engine/disp/sorgm200.c -@@ -57,19 +57,6 @@ gm200_sor_dp_lane_map(struct nvkm_device *device, u8 lane) - } - - static int --gm200_sor_dp_pattern(struct nvkm_output_dp *outp, int pattern) --{ -- struct nvkm_device *device = outp->base.disp->engine.subdev.device; -- const u32 soff = gm200_sor_soff(outp); -- const u32 data = 0x01010101 * pattern; -- if (outp->base.info.sorconf.link & 1) -- nvkm_mask(device, 0x61c110 + soff, 0x0f0f0f0f, data); -- else -- nvkm_mask(device, 0x61c12c + soff, 0x0f0f0f0f, data); -- return 0; --} -- --static int - gm200_sor_dp_lnk_pwr(struct nvkm_output_dp *outp, int nr) - { - struct nvkm_device *device = outp->base.disp->engine.subdev.device; -@@ -129,7 +116,7 @@ gm200_sor_dp_drv_ctl(struct nvkm_output_dp *outp, - - static const struct nvkm_output_dp_func - gm200_sor_dp_func = { -- .pattern = gm200_sor_dp_pattern, -+ .pattern = gm107_sor_dp_pattern, - .lnk_pwr = gm200_sor_dp_lnk_pwr, - .lnk_ctl = gf119_sor_dp_lnk_ctl, - .drv_ctl = gm200_sor_dp_drv_ctl, --- -2.7.4 - diff --git a/0005-i915-fbc-Disable-on-HSW-by-default-for-now.patch b/0005-i915-fbc-Disable-on-HSW-by-default-for-now.patch deleted file mode 100644 index d95f2f4d0..000000000 --- a/0005-i915-fbc-Disable-on-HSW-by-default-for-now.patch +++ /dev/null @@ -1,55 +0,0 @@ -From 28d0147bded959b2c4d3eb1aa957452d5dbb0cc9 Mon Sep 17 00:00:00 2001 -From: Fedora Kernel Team <kernel-team@fedoraproject.org> -Date: Mon, 20 Jun 2016 14:52:10 +0200 -Subject: [PATCH 5/6] i915/fbc: Disable on HSW by default for now - -Upstream: posted on dri-devel (and r-b'd) - -Author: cpaul@redhat.com <cpaul@redhat.com> -AuthorDate: Thu Jun 9 11:58:15 2016 -0400 -Commit: Rob Clark <rclark@redhat.com> -CommitDate: Thu Jun 9 15:43:07 2016 -0400 - - i915/fbc: Disable on HSW by default for now - - >From https://bugs.freedesktop.org/show_bug.cgi?id=96461 : - - This was kind of a difficult bug to track down. If you're using a - Haswell system running GNOME and you have fbc completely enabled and - working, playing videos can result in video artifacts. Steps to - reproduce: - - - Run GNOME - - Ensure FBC is enabled and active - - Download a movie, I used the ogg version of Big Buck Bunny for this - - Run `gst-launch-1.0 filesrc location='some_movie.ogg' ! decodebin ! - glimagesink` in a terminal - - Watch for about over a minute, you'll see small horizontal lines go - down the screen. - - For the time being, disable FBC for Haswell by default. - - Signed-off-by: Lyude <cpaul@redhat.com> - Reviewed-by: Paulo Zanoni <paulo.r.zanoni@intel.com> - Cc: stable@vger.kernel.org ---- - drivers/gpu/drm/i915/intel_fbc.c | 3 +-- - 1 file changed, 1 insertion(+), 2 deletions(-) - -diff --git a/drivers/gpu/drm/i915/intel_fbc.c b/drivers/gpu/drm/i915/intel_fbc.c -index 0f0492f..28f4407 100644 ---- a/drivers/gpu/drm/i915/intel_fbc.c -+++ b/drivers/gpu/drm/i915/intel_fbc.c -@@ -823,8 +823,7 @@ static bool intel_fbc_can_choose(struct intel_crtc *crtc) - { - struct drm_i915_private *dev_priv = crtc->base.dev->dev_private; - struct intel_fbc *fbc = &dev_priv->fbc; -- bool enable_by_default = IS_HASWELL(dev_priv) || -- IS_BROADWELL(dev_priv); -+ bool enable_by_default = IS_BROADWELL(dev_priv); - - if (intel_vgpu_active(dev_priv->dev)) { - fbc->no_fbc_reason = "VGPU is active"; --- -2.7.4 - diff --git a/ALSA-timer-Fix-leak-in-SNDRV_TIMER_IOCTL_PARAMS.patch b/ALSA-timer-Fix-leak-in-SNDRV_TIMER_IOCTL_PARAMS.patch deleted file mode 100644 index 3eb8bf183..000000000 --- a/ALSA-timer-Fix-leak-in-SNDRV_TIMER_IOCTL_PARAMS.patch +++ /dev/null @@ -1,33 +0,0 @@ -From 527a5767c165abd2b4dba99da992c51ca7547562 Mon Sep 17 00:00:00 2001 -From: Kangjie Lu <kangjielu@gmail.com> -Date: Tue, 3 May 2016 16:44:07 -0400 -Subject: [PATCH 1/3] ALSA: timer: Fix leak in SNDRV_TIMER_IOCTL_PARAMS -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -The stack object “tread” has a total size of 32 bytes. Its field -“event” and “val” both contain 4 bytes padding. These 8 bytes -padding bytes are sent to user without being initialized. - -Signed-off-by: Kangjie Lu <kjlu@gatech.edu> -Signed-off-by: Takashi Iwai <tiwai@suse.de> ---- - sound/core/timer.c | 1 + - 1 file changed, 1 insertion(+) - -diff --git a/sound/core/timer.c b/sound/core/timer.c -index 6469bedda2f3..964f5ebf495e 100644 ---- a/sound/core/timer.c -+++ b/sound/core/timer.c -@@ -1739,6 +1739,7 @@ static int snd_timer_user_params(struct file *file, - if (tu->timeri->flags & SNDRV_TIMER_IFLG_EARLY_EVENT) { - if (tu->tread) { - struct snd_timer_tread tread; -+ memset(&tread, 0, sizeof(tread)); - tread.event = SNDRV_TIMER_EVENT_EARLY; - tread.tstamp.tv_sec = 0; - tread.tstamp.tv_nsec = 0; --- -2.5.5 - diff --git a/ALSA-timer-Fix-leak-in-events-via-snd_timer_user_cca.patch b/ALSA-timer-Fix-leak-in-events-via-snd_timer_user_cca.patch deleted file mode 100644 index e6f46f8a8..000000000 --- a/ALSA-timer-Fix-leak-in-events-via-snd_timer_user_cca.patch +++ /dev/null @@ -1,34 +0,0 @@ -From addd6e9f0e25efb00d813d54528607c75b77c416 Mon Sep 17 00:00:00 2001 -From: Kangjie Lu <kangjielu@gmail.com> -Date: Tue, 3 May 2016 16:44:20 -0400 -Subject: [PATCH 2/3] ALSA: timer: Fix leak in events via - snd_timer_user_ccallback -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -The stack object “r1” has a total size of 32 bytes. Its field -“event” and “val” both contain 4 bytes padding. These 8 bytes -padding bytes are sent to user without being initialized. - -Signed-off-by: Kangjie Lu <kjlu@gatech.edu> -Signed-off-by: Takashi Iwai <tiwai@suse.de> ---- - sound/core/timer.c | 1 + - 1 file changed, 1 insertion(+) - -diff --git a/sound/core/timer.c b/sound/core/timer.c -index 964f5ebf495e..e98fa5feb731 100644 ---- a/sound/core/timer.c -+++ b/sound/core/timer.c -@@ -1225,6 +1225,7 @@ static void snd_timer_user_ccallback(struct snd_timer_instance *timeri, - tu->tstamp = *tstamp; - if ((tu->filter & (1 << event)) == 0 || !tu->tread) - return; -+ memset(&r1, 0, sizeof(r1)); - r1.event = event; - r1.tstamp = *tstamp; - r1.val = resolution; --- -2.5.5 - diff --git a/ALSA-timer-Fix-leak-in-events-via-snd_timer_user_tin.patch b/ALSA-timer-Fix-leak-in-events-via-snd_timer_user_tin.patch deleted file mode 100644 index 7851c55a2..000000000 --- a/ALSA-timer-Fix-leak-in-events-via-snd_timer_user_tin.patch +++ /dev/null @@ -1,34 +0,0 @@ -From b06a443b5679e9a0298e2f206ddb60845569f62f Mon Sep 17 00:00:00 2001 -From: Kangjie Lu <kangjielu@gmail.com> -Date: Tue, 3 May 2016 16:44:32 -0400 -Subject: [PATCH 3/3] ALSA: timer: Fix leak in events via - snd_timer_user_tinterrupt -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -The stack object “r1” has a total size of 32 bytes. Its field -“event” and “val” both contain 4 bytes padding. These 8 bytes -padding bytes are sent to user without being initialized. - -Signed-off-by: Kangjie Lu <kjlu@gatech.edu> -Signed-off-by: Takashi Iwai <tiwai@suse.de> ---- - sound/core/timer.c | 1 + - 1 file changed, 1 insertion(+) - -diff --git a/sound/core/timer.c b/sound/core/timer.c -index e98fa5feb731..c69a27155433 100644 ---- a/sound/core/timer.c -+++ b/sound/core/timer.c -@@ -1268,6 +1268,7 @@ static void snd_timer_user_tinterrupt(struct snd_timer_instance *timeri, - } - if ((tu->filter & (1 << SNDRV_TIMER_EVENT_RESOLUTION)) && - tu->last_resolution != resolution) { -+ memset(&r1, 0, sizeof(r1)); - r1.event = SNDRV_TIMER_EVENT_RESOLUTION; - r1.tstamp = tstamp; - r1.val = resolution; --- -2.5.5 - diff --git a/Add-option-to-automatically-enforce-module-signature.patch b/Add-option-to-automatically-enforce-module-signature.patch deleted file mode 100644 index ebabac62e..000000000 --- a/Add-option-to-automatically-enforce-module-signature.patch +++ /dev/null @@ -1,217 +0,0 @@ -From 6b6203b92cfb457a0669a9c87a29b360405bffc6 Mon Sep 17 00:00:00 2001 -From: Matthew Garrett <matthew.garrett@nebula.com> -Date: Fri, 9 Aug 2013 18:36:30 -0400 -Subject: [PATCH 10/20] Add option to automatically enforce module signatures - when in Secure Boot mode - -UEFI Secure Boot provides a mechanism for ensuring that the firmware will -only load signed bootloaders and kernels. Certain use cases may also -require that all kernel modules also be signed. Add a configuration option -that enforces this automatically when enabled. - -Signed-off-by: Matthew Garrett <matthew.garrett@nebula.com> ---- - Documentation/x86/zero-page.txt | 2 ++ - arch/x86/Kconfig | 11 ++++++ - arch/x86/boot/compressed/eboot.c | 66 +++++++++++++++++++++++++++++++++++ - arch/x86/include/uapi/asm/bootparam.h | 3 +- - arch/x86/kernel/setup.c | 6 ++++ - include/linux/module.h | 6 ++++ - kernel/module.c | 7 ++++ - 7 files changed, 100 insertions(+), 1 deletion(-) - -diff --git a/Documentation/x86/zero-page.txt b/Documentation/x86/zero-page.txt -index 95a4d34af3fd..b8527c6b7646 100644 ---- a/Documentation/x86/zero-page.txt -+++ b/Documentation/x86/zero-page.txt -@@ -31,6 +31,8 @@ Offset Proto Name Meaning - 1E9/001 ALL eddbuf_entries Number of entries in eddbuf (below) - 1EA/001 ALL edd_mbr_sig_buf_entries Number of entries in edd_mbr_sig_buffer - (below) -+1EB/001 ALL kbd_status Numlock is enabled -+1EC/001 ALL secure_boot Secure boot is enabled in the firmware - 1EF/001 ALL sentinel Used to detect broken bootloaders - 290/040 ALL edd_mbr_sig_buffer EDD MBR signatures - 2D0/A00 ALL e820_map E820 memory map table -diff --git a/arch/x86/Kconfig b/arch/x86/Kconfig -index bada636d1065..d666ef8b616c 100644 ---- a/arch/x86/Kconfig -+++ b/arch/x86/Kconfig -@@ -1786,6 +1786,17 @@ config EFI_MIXED - - If unsure, say N. - -+config EFI_SECURE_BOOT_SIG_ENFORCE -+ def_bool n -+ depends on EFI -+ prompt "Force module signing when UEFI Secure Boot is enabled" -+ ---help--- -+ UEFI Secure Boot provides a mechanism for ensuring that the -+ firmware will only load signed bootloaders and kernels. Certain -+ use cases may also require that all kernel modules also be signed. -+ Say Y here to automatically enable module signature enforcement -+ when a system boots with UEFI Secure Boot enabled. -+ - config SECCOMP - def_bool y - prompt "Enable seccomp to safely compute untrusted bytecode" -diff --git a/arch/x86/boot/compressed/eboot.c b/arch/x86/boot/compressed/eboot.c -index cc69e37548db..ebc85c1eefd6 100644 ---- a/arch/x86/boot/compressed/eboot.c -+++ b/arch/x86/boot/compressed/eboot.c -@@ -12,6 +12,7 @@ - #include <asm/efi.h> - #include <asm/setup.h> - #include <asm/desc.h> -+#include <asm/bootparam_utils.h> - - #include "../string.h" - #include "eboot.h" -@@ -537,6 +538,67 @@ static void setup_efi_pci(struct boot_params *params) - efi_call_early(free_pool, pci_handle); - } - -+static int get_secure_boot(void) -+{ -+ u8 sb, setup; -+ unsigned long datasize = sizeof(sb); -+ efi_guid_t var_guid = EFI_GLOBAL_VARIABLE_GUID; -+ efi_status_t status; -+ -+ status = efi_early->call((unsigned long)sys_table->runtime->get_variable, -+ L"SecureBoot", &var_guid, NULL, &datasize, &sb); -+ -+ if (status != EFI_SUCCESS) -+ return 0; -+ -+ if (sb == 0) -+ return 0; -+ -+ -+ status = efi_early->call((unsigned long)sys_table->runtime->get_variable, -+ L"SetupMode", &var_guid, NULL, &datasize, -+ &setup); -+ -+ if (status != EFI_SUCCESS) -+ return 0; -+ -+ if (setup == 1) -+ return 0; -+ -+ return 1; -+} -+ -+ -+/* -+ * See if we have Graphics Output Protocol -+ */ -+static efi_status_t setup_gop(struct screen_info *si, efi_guid_t *proto, -+ unsigned long size) -+{ -+ efi_status_t status; -+ void **gop_handle = NULL; -+ -+ status = efi_call_early(allocate_pool, EFI_LOADER_DATA, -+ size, (void **)&gop_handle); -+ if (status != EFI_SUCCESS) -+ return status; -+ -+ status = efi_call_early(locate_handle, -+ EFI_LOCATE_BY_PROTOCOL, -+ proto, NULL, &size, gop_handle); -+ if (status != EFI_SUCCESS) -+ goto free_handle; -+ -+ if (efi_early->is64) -+ status = setup_gop64(si, proto, size, gop_handle); -+ else -+ status = setup_gop32(si, proto, size, gop_handle); -+ -+free_handle: -+ efi_call_early(free_pool, gop_handle); -+ return status; -+} -+ - static efi_status_t - setup_uga32(void **uga_handle, unsigned long size, u32 *width, u32 *height) - { -@@ -1094,6 +1156,10 @@ struct boot_params *efi_main(struct efi_config *c, - else - setup_boot_services32(efi_early); - -+ sanitize_boot_params(boot_params); -+ -+ boot_params->secure_boot = get_secure_boot(); -+ - setup_graphics(boot_params); - - setup_efi_pci(boot_params); -diff --git a/arch/x86/include/uapi/asm/bootparam.h b/arch/x86/include/uapi/asm/bootparam.h -index c18ce67495fa..2b3e5427097b 100644 ---- a/arch/x86/include/uapi/asm/bootparam.h -+++ b/arch/x86/include/uapi/asm/bootparam.h -@@ -134,7 +134,8 @@ struct boot_params { - __u8 eddbuf_entries; /* 0x1e9 */ - __u8 edd_mbr_sig_buf_entries; /* 0x1ea */ - __u8 kbd_status; /* 0x1eb */ -- __u8 _pad5[3]; /* 0x1ec */ -+ __u8 secure_boot; /* 0x1ec */ -+ __u8 _pad5[2]; /* 0x1ed */ - /* - * The sentinel is set to a nonzero value (0xff) in header.S. - * -diff --git a/arch/x86/kernel/setup.c b/arch/x86/kernel/setup.c -index bbfbca5fea0c..d40e961753c9 100644 ---- a/arch/x86/kernel/setup.c -+++ b/arch/x86/kernel/setup.c -@@ -1160,6 +1160,12 @@ void __init setup_arch(char **cmdline_p) - - io_delay_init(); - -+#ifdef CONFIG_EFI_SECURE_BOOT_SIG_ENFORCE -+ if (boot_params.secure_boot) { -+ enforce_signed_modules(); -+ } -+#endif -+ - /* - * Parse the ACPI tables for possible boot-time SMP configuration. - */ -diff --git a/include/linux/module.h b/include/linux/module.h -index 05bd6c989a0c..32327704e18d 100644 ---- a/include/linux/module.h -+++ b/include/linux/module.h -@@ -260,6 +260,12 @@ extern const typeof(name) __mod_##type##__##name##_device_table \ - - struct notifier_block; - -+#ifdef CONFIG_MODULE_SIG -+extern void enforce_signed_modules(void); -+#else -+static inline void enforce_signed_modules(void) {}; -+#endif -+ - #ifdef CONFIG_MODULES - - extern int modules_disabled; /* for sysctl */ -diff --git a/kernel/module.c b/kernel/module.c -index cb864505d020..cb1f1da69bf4 100644 ---- a/kernel/module.c -+++ b/kernel/module.c -@@ -4285,6 +4285,13 @@ void module_layout(struct module *mod, - EXPORT_SYMBOL(module_layout); - #endif - -+#ifdef CONFIG_MODULE_SIG -+void enforce_signed_modules(void) -+{ -+ sig_enforce = true; -+} -+#endif -+ - bool secure_modules(void) - { - #ifdef CONFIG_MODULE_SIG --- -2.9.3 - diff --git a/AllWinner-h3.patch b/AllWinner-h3.patch new file mode 100644 index 000000000..c75da8aa8 --- /dev/null +++ b/AllWinner-h3.patch @@ -0,0 +1,1080 @@ +From patchwork Mon Mar 6 17:17:45 2017 +Content-Type: text/plain; charset="utf-8" +MIME-Version: 1.0 +Content-Transfer-Encoding: 7bit +Subject: [v8, 1/6] ARM: dts: sun8i: h3: drop skeleton.dtsi inclusion in H3 DTSI +From: Icenowy Zheng <icenowy@aosc.xyz> +X-Patchwork-Id: 9607205 +Message-Id: <20170306171750.7491-2-icenowy@aosc.xyz> +To: Rob Herring <robh+dt@kernel.org>, + Maxime Ripard <maxime.ripard@free-electrons.com>, + Chen-Yu Tsai <wens@csie.org> +Cc: devicetree@vger.kernel.org, linux-sunxi@googlegroups.com, + linux-kernel@vger.kernel.org, linux-arm-kernel@lists.infradead.org, + Icenowy Zheng <icenowy@aosc.xyz> +Date: Tue, 7 Mar 2017 01:17:45 +0800 + +The skeleton.dtsi file is now deprecated, and do not exist in ARM64 +environment. + +Since we will soon reuse most part of H3 DTSI for H5, which is an ARM64 +chip, drop skeleton.dtsi inclusion now. + +Signed-off-by: Icenowy Zheng <icenowy@aosc.xyz> +--- +Changes in v8: +- Add h3: in commit message. + + arch/arm/boot/dts/sun8i-h3.dtsi | 2 -- + 1 file changed, 2 deletions(-) + +diff --git a/arch/arm/boot/dts/sun8i-h3.dtsi b/arch/arm/boot/dts/sun8i-h3.dtsi +index 27780b97c863..9a3435527fde 100644 +--- a/arch/arm/boot/dts/sun8i-h3.dtsi ++++ b/arch/arm/boot/dts/sun8i-h3.dtsi +@@ -40,8 +40,6 @@ + * OTHER DEALINGS IN THE SOFTWARE. + */ + +-#include "skeleton.dtsi" +- + #include <dt-bindings/clock/sun8i-h3-ccu.h> + #include <dt-bindings/interrupt-controller/arm-gic.h> + #include <dt-bindings/pinctrl/sun4i-a10.h> +From patchwork Mon Mar 6 17:17:46 2017 +Content-Type: text/plain; charset="utf-8" +MIME-Version: 1.0 +Content-Transfer-Encoding: 7bit +Subject: [v8, + 2/6] ARM: dts: sun8i: h3: drop pinctrl-a10.h inclusion for H3 DTSI +From: Icenowy Zheng <icenowy@aosc.xyz> +X-Patchwork-Id: 9607207 +Message-Id: <20170306171750.7491-3-icenowy@aosc.xyz> +To: Rob Herring <robh+dt@kernel.org>, + Maxime Ripard <maxime.ripard@free-electrons.com>, + Chen-Yu Tsai <wens@csie.org> +Cc: devicetree@vger.kernel.org, linux-sunxi@googlegroups.com, + linux-kernel@vger.kernel.org, linux-arm-kernel@lists.infradead.org, + Icenowy Zheng <icenowy@aosc.xyz> +Date: Tue, 7 Mar 2017 01:17:46 +0800 + +After converting to generic pinconf binding, pinctrl-a10.h is now not +used at all. + +Drop its inclusion for H3 DTSI. + +Signed-off-by: Icenowy Zheng <icenowy@aosc.xyz> +--- +Changes in v8: +- Add h3: in commit message. + + arch/arm/boot/dts/sun8i-h3.dtsi | 1 - + 1 file changed, 1 deletion(-) + +diff --git a/arch/arm/boot/dts/sun8i-h3.dtsi b/arch/arm/boot/dts/sun8i-h3.dtsi +index 9a3435527fde..b250e6d03b57 100644 +--- a/arch/arm/boot/dts/sun8i-h3.dtsi ++++ b/arch/arm/boot/dts/sun8i-h3.dtsi +@@ -42,7 +42,6 @@ + + #include <dt-bindings/clock/sun8i-h3-ccu.h> + #include <dt-bindings/interrupt-controller/arm-gic.h> +-#include <dt-bindings/pinctrl/sun4i-a10.h> + #include <dt-bindings/reset/sun8i-h3-ccu.h> + + / { +From patchwork Mon Mar 6 17:17:47 2017 +Content-Type: text/plain; charset="utf-8" +MIME-Version: 1.0 +Content-Transfer-Encoding: 7bit +Subject: [v8, + 3/6] ARM: dts: sun8i: h3: correct the GIC compatible in H3 to gic-400 +From: Icenowy Zheng <icenowy@aosc.xyz> +X-Patchwork-Id: 9607209 +Message-Id: <20170306171750.7491-4-icenowy@aosc.xyz> +To: Rob Herring <robh+dt@kernel.org>, + Maxime Ripard <maxime.ripard@free-electrons.com>, + Chen-Yu Tsai <wens@csie.org> +Cc: devicetree@vger.kernel.org, linux-sunxi@googlegroups.com, + linux-kernel@vger.kernel.org, linux-arm-kernel@lists.infradead.org, + Icenowy Zheng <icenowy@aosc.xyz> +Date: Tue, 7 Mar 2017 01:17:47 +0800 + +According to the datasheets provided by Allwinner, both Allwinner H3 and +H5 use GIC-400 as their interrupt controller. + +For better device tree reusing, correct the GIC compatible in H3 DTSI to +"arm,gic-400", thus this node can be reused in H5. + +Signed-off-by: Icenowy Zheng <icenowy@aosc.xyz> +--- +Changes in v8: +- Add h3: in commit message. + + arch/arm/boot/dts/sun8i-h3.dtsi | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/arch/arm/boot/dts/sun8i-h3.dtsi b/arch/arm/boot/dts/sun8i-h3.dtsi +index b250e6d03b57..c13fbfb92592 100644 +--- a/arch/arm/boot/dts/sun8i-h3.dtsi ++++ b/arch/arm/boot/dts/sun8i-h3.dtsi +@@ -586,7 +586,7 @@ + }; + + gic: interrupt-controller@01c81000 { +- compatible = "arm,cortex-a7-gic", "arm,cortex-a15-gic"; ++ compatible = "arm,gic-400"; + reg = <0x01c81000 0x1000>, + <0x01c82000 0x2000>, + <0x01c84000 0x2000>, +From patchwork Mon Mar 6 17:17:48 2017 +Content-Type: text/plain; charset="utf-8" +MIME-Version: 1.0 +Content-Transfer-Encoding: 7bit +Subject: [v8,4/6] arm: dts: sun8i: h3: split Allwinner H3 .dtsi +From: Icenowy Zheng <icenowy@aosc.xyz> +X-Patchwork-Id: 9607211 +Message-Id: <20170306171750.7491-5-icenowy@aosc.xyz> +To: Rob Herring <robh+dt@kernel.org>, + Maxime Ripard <maxime.ripard@free-electrons.com>, + Chen-Yu Tsai <wens@csie.org> +Cc: devicetree@vger.kernel.org, Andre Przywara <andre.przywara@arm.com>, + linux-kernel@vger.kernel.org, linux-sunxi@googlegroups.com, + Icenowy Zheng <icenowy@aosc.xyz>, linux-arm-kernel@lists.infradead.org +Date: Tue, 7 Mar 2017 01:17:48 +0800 + +From: Andre Przywara <andre.przywara@arm.com> + +The new Allwinner H5 SoC is pin-compatible to the H3 SoC, but with the +Cortex-A7 cores replaced by Cortex-A53 cores and the MMC controller +updated. So we should really share almost the whole .dtsi. +In preparation for that move the peripheral parts of the existing +sun8i-h3.dtsi into a new sunxi-h3-h5.dtsi. +The actual sun8i-h3.dtsi then includes that and defines the H3 specific +parts on top of it. + +Signed-off-by: Andre Przywara <andre.przywara@arm.com> +[Icenowy: also split out mmc and gic, as well as pio and ccu's + compatible, and make drop of skeleton into a seperated patch] +Signed-off-by: Icenowy Zheng <icenowy@aosc.xyz> +--- +Changes in v8: +- Add h3: in commit message. +Changes in v7: +- Extract GIC, skeleton.dtsi and pinctrl-a10.h changes to seperate patches. +Changes in v6: +- Extract GIC device node to sunxi-h3-h5.dtsi and correct its compatible + as "arm,gic-400". +Changes in v3: +- Use label-based syntax to reference nodes in H3 DTSI file. +Changes in v2: +- Rebase on current linux-next (because of the add of audio codec) + + arch/arm/boot/dts/sun8i-h3.dtsi | 771 ++++----------------- + .../boot/dts/{sun8i-h3.dtsi => sunxi-h3-h5.dtsi} | 73 +- + 2 files changed, 133 insertions(+), 711 deletions(-) + rewrite arch/arm/boot/dts/sun8i-h3.dtsi (83%) + copy arch/arm/boot/dts/{sun8i-h3.dtsi => sunxi-h3-h5.dtsi} (90%) + +diff --git a/arch/arm/boot/dts/sun8i-h3.dtsi b/arch/arm/boot/dts/sun8i-h3.dtsi +dissimilarity index 83% +index c13fbfb92592..b36f9f423c39 100644 +--- a/arch/arm/boot/dts/sun8i-h3.dtsi ++++ b/arch/arm/boot/dts/sun8i-h3.dtsi +@@ -1,645 +1,126 @@ +-/* +- * Copyright (C) 2015 Jens Kuske <jenskuske@gmail.com> +- * +- * This file is dual-licensed: you can use it either under the terms +- * of the GPL or the X11 license, at your option. Note that this dual +- * licensing only applies to this file, and not this project as a +- * whole. +- * +- * a) This file is free software; you can redistribute it and/or +- * modify it under the terms of the GNU General Public License as +- * published by the Free Software Foundation; either version 2 of the +- * License, or (at your option) any later version. +- * +- * This file is distributed in the hope that it will be useful, +- * but WITHOUT ANY WARRANTY; without even the implied warranty of +- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +- * GNU General Public License for more details. +- * +- * Or, alternatively, +- * +- * b) Permission is hereby granted, free of charge, to any person +- * obtaining a copy of this software and associated documentation +- * files (the "Software"), to deal in the Software without +- * restriction, including without limitation the rights to use, +- * copy, modify, merge, publish, distribute, sublicense, and/or +- * sell copies of the Software, and to permit persons to whom the +- * Software is furnished to do so, subject to the following +- * conditions: +- * +- * The above copyright notice and this permission notice shall be +- * included in all copies or substantial portions of the Software. +- * +- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, +- * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES +- * OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND +- * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT +- * HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, +- * WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING +- * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR +- * OTHER DEALINGS IN THE SOFTWARE. +- */ +- +-#include <dt-bindings/clock/sun8i-h3-ccu.h> +-#include <dt-bindings/interrupt-controller/arm-gic.h> +-#include <dt-bindings/reset/sun8i-h3-ccu.h> +- +-/ { +- interrupt-parent = <&gic>; +- +- cpus { +- #address-cells = <1>; +- #size-cells = <0>; +- +- cpu@0 { +- compatible = "arm,cortex-a7"; +- device_type = "cpu"; +- reg = <0>; +- }; +- +- cpu@1 { +- compatible = "arm,cortex-a7"; +- device_type = "cpu"; +- reg = <1>; +- }; +- +- cpu@2 { +- compatible = "arm,cortex-a7"; +- device_type = "cpu"; +- reg = <2>; +- }; +- +- cpu@3 { +- compatible = "arm,cortex-a7"; +- device_type = "cpu"; +- reg = <3>; +- }; +- }; +- +- timer { +- compatible = "arm,armv7-timer"; +- interrupts = <GIC_PPI 13 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>, +- <GIC_PPI 14 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>, +- <GIC_PPI 11 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>, +- <GIC_PPI 10 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>; +- }; +- +- clocks { +- #address-cells = <1>; +- #size-cells = <1>; +- ranges; +- +- osc24M: osc24M_clk { +- #clock-cells = <0>; +- compatible = "fixed-clock"; +- clock-frequency = <24000000>; +- clock-output-names = "osc24M"; +- }; +- +- osc32k: osc32k_clk { +- #clock-cells = <0>; +- compatible = "fixed-clock"; +- clock-frequency = <32768>; +- clock-output-names = "osc32k"; +- }; +- +- apb0: apb0_clk { +- compatible = "fixed-factor-clock"; +- #clock-cells = <0>; +- clock-div = <1>; +- clock-mult = <1>; +- clocks = <&osc24M>; +- clock-output-names = "apb0"; +- }; +- +- apb0_gates: clk@01f01428 { +- compatible = "allwinner,sun8i-h3-apb0-gates-clk", +- "allwinner,sun4i-a10-gates-clk"; +- reg = <0x01f01428 0x4>; +- #clock-cells = <1>; +- clocks = <&apb0>; +- clock-indices = <0>, <1>; +- clock-output-names = "apb0_pio", "apb0_ir"; +- }; +- +- ir_clk: ir_clk@01f01454 { +- compatible = "allwinner,sun4i-a10-mod0-clk"; +- reg = <0x01f01454 0x4>; +- #clock-cells = <0>; +- clocks = <&osc32k>, <&osc24M>; +- clock-output-names = "ir"; +- }; +- }; +- +- soc { +- compatible = "simple-bus"; +- #address-cells = <1>; +- #size-cells = <1>; +- ranges; +- +- dma: dma-controller@01c02000 { +- compatible = "allwinner,sun8i-h3-dma"; +- reg = <0x01c02000 0x1000>; +- interrupts = <GIC_SPI 50 IRQ_TYPE_LEVEL_HIGH>; +- clocks = <&ccu CLK_BUS_DMA>; +- resets = <&ccu RST_BUS_DMA>; +- #dma-cells = <1>; +- }; +- +- mmc0: mmc@01c0f000 { +- compatible = "allwinner,sun7i-a20-mmc"; +- reg = <0x01c0f000 0x1000>; +- clocks = <&ccu CLK_BUS_MMC0>, +- <&ccu CLK_MMC0>, +- <&ccu CLK_MMC0_OUTPUT>, +- <&ccu CLK_MMC0_SAMPLE>; +- clock-names = "ahb", +- "mmc", +- "output", +- "sample"; +- resets = <&ccu RST_BUS_MMC0>; +- reset-names = "ahb"; +- interrupts = <GIC_SPI 60 IRQ_TYPE_LEVEL_HIGH>; +- status = "disabled"; +- #address-cells = <1>; +- #size-cells = <0>; +- }; +- +- mmc1: mmc@01c10000 { +- compatible = "allwinner,sun7i-a20-mmc"; +- reg = <0x01c10000 0x1000>; +- clocks = <&ccu CLK_BUS_MMC1>, +- <&ccu CLK_MMC1>, +- <&ccu CLK_MMC1_OUTPUT>, +- <&ccu CLK_MMC1_SAMPLE>; +- clock-names = "ahb", +- "mmc", +- "output", +- "sample"; +- resets = <&ccu RST_BUS_MMC1>; +- reset-names = "ahb"; +- interrupts = <GIC_SPI 61 IRQ_TYPE_LEVEL_HIGH>; +- status = "disabled"; +- #address-cells = <1>; +- #size-cells = <0>; +- }; +- +- mmc2: mmc@01c11000 { +- compatible = "allwinner,sun7i-a20-mmc"; +- reg = <0x01c11000 0x1000>; +- clocks = <&ccu CLK_BUS_MMC2>, +- <&ccu CLK_MMC2>, +- <&ccu CLK_MMC2_OUTPUT>, +- <&ccu CLK_MMC2_SAMPLE>; +- clock-names = "ahb", +- "mmc", +- "output", +- "sample"; +- resets = <&ccu RST_BUS_MMC2>; +- reset-names = "ahb"; +- interrupts = <GIC_SPI 62 IRQ_TYPE_LEVEL_HIGH>; +- status = "disabled"; +- #address-cells = <1>; +- #size-cells = <0>; +- }; +- +- usbphy: phy@01c19400 { +- compatible = "allwinner,sun8i-h3-usb-phy"; +- reg = <0x01c19400 0x2c>, +- <0x01c1a800 0x4>, +- <0x01c1b800 0x4>, +- <0x01c1c800 0x4>, +- <0x01c1d800 0x4>; +- reg-names = "phy_ctrl", +- "pmu0", +- "pmu1", +- "pmu2", +- "pmu3"; +- clocks = <&ccu CLK_USB_PHY0>, +- <&ccu CLK_USB_PHY1>, +- <&ccu CLK_USB_PHY2>, +- <&ccu CLK_USB_PHY3>; +- clock-names = "usb0_phy", +- "usb1_phy", +- "usb2_phy", +- "usb3_phy"; +- resets = <&ccu RST_USB_PHY0>, +- <&ccu RST_USB_PHY1>, +- <&ccu RST_USB_PHY2>, +- <&ccu RST_USB_PHY3>; +- reset-names = "usb0_reset", +- "usb1_reset", +- "usb2_reset", +- "usb3_reset"; +- status = "disabled"; +- #phy-cells = <1>; +- }; +- +- ehci1: usb@01c1b000 { +- compatible = "allwinner,sun8i-h3-ehci", "generic-ehci"; +- reg = <0x01c1b000 0x100>; +- interrupts = <GIC_SPI 74 IRQ_TYPE_LEVEL_HIGH>; +- clocks = <&ccu CLK_BUS_EHCI1>, <&ccu CLK_BUS_OHCI1>; +- resets = <&ccu RST_BUS_EHCI1>, <&ccu RST_BUS_OHCI1>; +- phys = <&usbphy 1>; +- phy-names = "usb"; +- status = "disabled"; +- }; +- +- ohci1: usb@01c1b400 { +- compatible = "allwinner,sun8i-h3-ohci", "generic-ohci"; +- reg = <0x01c1b400 0x100>; +- interrupts = <GIC_SPI 75 IRQ_TYPE_LEVEL_HIGH>; +- clocks = <&ccu CLK_BUS_EHCI1>, <&ccu CLK_BUS_OHCI1>, +- <&ccu CLK_USB_OHCI1>; +- resets = <&ccu RST_BUS_EHCI1>, <&ccu RST_BUS_OHCI1>; +- phys = <&usbphy 1>; +- phy-names = "usb"; +- status = "disabled"; +- }; +- +- ehci2: usb@01c1c000 { +- compatible = "allwinner,sun8i-h3-ehci", "generic-ehci"; +- reg = <0x01c1c000 0x100>; +- interrupts = <GIC_SPI 76 IRQ_TYPE_LEVEL_HIGH>; +- clocks = <&ccu CLK_BUS_EHCI2>, <&ccu CLK_BUS_OHCI2>; +- resets = <&ccu RST_BUS_EHCI2>, <&ccu RST_BUS_OHCI2>; +- phys = <&usbphy 2>; +- phy-names = "usb"; +- status = "disabled"; +- }; +- +- ohci2: usb@01c1c400 { +- compatible = "allwinner,sun8i-h3-ohci", "generic-ohci"; +- reg = <0x01c1c400 0x100>; +- interrupts = <GIC_SPI 77 IRQ_TYPE_LEVEL_HIGH>; +- clocks = <&ccu CLK_BUS_EHCI2>, <&ccu CLK_BUS_OHCI2>, +- <&ccu CLK_USB_OHCI2>; +- resets = <&ccu RST_BUS_EHCI2>, <&ccu RST_BUS_OHCI2>; +- phys = <&usbphy 2>; +- phy-names = "usb"; +- status = "disabled"; +- }; +- +- ehci3: usb@01c1d000 { +- compatible = "allwinner,sun8i-h3-ehci", "generic-ehci"; +- reg = <0x01c1d000 0x100>; +- interrupts = <GIC_SPI 78 IRQ_TYPE_LEVEL_HIGH>; +- clocks = <&ccu CLK_BUS_EHCI3>, <&ccu CLK_BUS_OHCI3>; +- resets = <&ccu RST_BUS_EHCI3>, <&ccu RST_BUS_OHCI3>; +- phys = <&usbphy 3>; +- phy-names = "usb"; +- status = "disabled"; +- }; +- +- ohci3: usb@01c1d400 { +- compatible = "allwinner,sun8i-h3-ohci", "generic-ohci"; +- reg = <0x01c1d400 0x100>; +- interrupts = <GIC_SPI 79 IRQ_TYPE_LEVEL_HIGH>; +- clocks = <&ccu CLK_BUS_EHCI3>, <&ccu CLK_BUS_OHCI3>, +- <&ccu CLK_USB_OHCI3>; +- resets = <&ccu RST_BUS_EHCI3>, <&ccu RST_BUS_OHCI3>; +- phys = <&usbphy 3>; +- phy-names = "usb"; +- status = "disabled"; +- }; +- +- ccu: clock@01c20000 { +- compatible = "allwinner,sun8i-h3-ccu"; +- reg = <0x01c20000 0x400>; +- clocks = <&osc24M>, <&osc32k>; +- clock-names = "hosc", "losc"; +- #clock-cells = <1>; +- #reset-cells = <1>; +- }; +- +- pio: pinctrl@01c20800 { +- compatible = "allwinner,sun8i-h3-pinctrl"; +- reg = <0x01c20800 0x400>; +- interrupts = <GIC_SPI 11 IRQ_TYPE_LEVEL_HIGH>, +- <GIC_SPI 17 IRQ_TYPE_LEVEL_HIGH>; +- clocks = <&ccu CLK_BUS_PIO>, <&osc24M>, <&osc32k>; +- clock-names = "apb", "hosc", "losc"; +- gpio-controller; +- #gpio-cells = <3>; +- interrupt-controller; +- #interrupt-cells = <3>; +- +- i2c0_pins: i2c0 { +- pins = "PA11", "PA12"; +- function = "i2c0"; +- }; +- +- i2c1_pins: i2c1 { +- pins = "PA18", "PA19"; +- function = "i2c1"; +- }; +- +- i2c2_pins: i2c2 { +- pins = "PE12", "PE13"; +- function = "i2c2"; +- }; +- +- mmc0_pins_a: mmc0@0 { +- pins = "PF0", "PF1", "PF2", "PF3", +- "PF4", "PF5"; +- function = "mmc0"; +- drive-strength = <30>; +- bias-pull-up; +- }; +- +- mmc0_cd_pin: mmc0_cd_pin@0 { +- pins = "PF6"; +- function = "gpio_in"; +- bias-pull-up; +- }; +- +- mmc1_pins_a: mmc1@0 { +- pins = "PG0", "PG1", "PG2", "PG3", +- "PG4", "PG5"; +- function = "mmc1"; +- drive-strength = <30>; +- bias-pull-up; +- }; +- +- mmc2_8bit_pins: mmc2_8bit { +- pins = "PC5", "PC6", "PC8", +- "PC9", "PC10", "PC11", +- "PC12", "PC13", "PC14", +- "PC15", "PC16"; +- function = "mmc2"; +- drive-strength = <30>; +- bias-pull-up; +- }; +- +- spdif_tx_pins_a: spdif@0 { +- pins = "PA17"; +- function = "spdif"; +- }; +- +- spi0_pins: spi0 { +- pins = "PC0", "PC1", "PC2", "PC3"; +- function = "spi0"; +- }; +- +- spi1_pins: spi1 { +- pins = "PA15", "PA16", "PA14", "PA13"; +- function = "spi1"; +- }; +- +- uart0_pins_a: uart0@0 { +- pins = "PA4", "PA5"; +- function = "uart0"; +- }; +- +- uart1_pins: uart1 { +- pins = "PG6", "PG7"; +- function = "uart1"; +- }; +- +- uart1_rts_cts_pins: uart1_rts_cts { +- pins = "PG8", "PG9"; +- function = "uart1"; +- }; +- +- uart2_pins: uart2 { +- pins = "PA0", "PA1"; +- function = "uart2"; +- }; +- +- uart3_pins: uart3 { +- pins = "PA13", "PA14"; +- function = "uart3"; +- }; +- }; +- +- timer@01c20c00 { +- compatible = "allwinner,sun4i-a10-timer"; +- reg = <0x01c20c00 0xa0>; +- interrupts = <GIC_SPI 18 IRQ_TYPE_LEVEL_HIGH>, +- <GIC_SPI 19 IRQ_TYPE_LEVEL_HIGH>; +- clocks = <&osc24M>; +- }; +- +- spi0: spi@01c68000 { +- compatible = "allwinner,sun8i-h3-spi"; +- reg = <0x01c68000 0x1000>; +- interrupts = <GIC_SPI 65 IRQ_TYPE_LEVEL_HIGH>; +- clocks = <&ccu CLK_BUS_SPI0>, <&ccu CLK_SPI0>; +- clock-names = "ahb", "mod"; +- dmas = <&dma 23>, <&dma 23>; +- dma-names = "rx", "tx"; +- pinctrl-names = "default"; +- pinctrl-0 = <&spi0_pins>; +- resets = <&ccu RST_BUS_SPI0>; +- status = "disabled"; +- #address-cells = <1>; +- #size-cells = <0>; +- }; +- +- spi1: spi@01c69000 { +- compatible = "allwinner,sun8i-h3-spi"; +- reg = <0x01c69000 0x1000>; +- interrupts = <GIC_SPI 66 IRQ_TYPE_LEVEL_HIGH>; +- clocks = <&ccu CLK_BUS_SPI1>, <&ccu CLK_SPI1>; +- clock-names = "ahb", "mod"; +- dmas = <&dma 24>, <&dma 24>; +- dma-names = "rx", "tx"; +- pinctrl-names = "default"; +- pinctrl-0 = <&spi1_pins>; +- resets = <&ccu RST_BUS_SPI1>; +- status = "disabled"; +- #address-cells = <1>; +- #size-cells = <0>; +- }; +- +- wdt0: watchdog@01c20ca0 { +- compatible = "allwinner,sun6i-a31-wdt"; +- reg = <0x01c20ca0 0x20>; +- interrupts = <GIC_SPI 25 IRQ_TYPE_LEVEL_HIGH>; +- }; +- +- spdif: spdif@01c21000 { +- #sound-dai-cells = <0>; +- compatible = "allwinner,sun8i-h3-spdif"; +- reg = <0x01c21000 0x400>; +- interrupts = <GIC_SPI 12 IRQ_TYPE_LEVEL_HIGH>; +- clocks = <&ccu CLK_BUS_SPDIF>, <&ccu CLK_SPDIF>; +- resets = <&ccu RST_BUS_SPDIF>; +- clock-names = "apb", "spdif"; +- dmas = <&dma 2>; +- dma-names = "tx"; +- status = "disabled"; +- }; +- +- pwm: pwm@01c21400 { +- compatible = "allwinner,sun8i-h3-pwm"; +- reg = <0x01c21400 0x8>; +- clocks = <&osc24M>; +- #pwm-cells = <3>; +- status = "disabled"; +- }; +- +- codec: codec@01c22c00 { +- #sound-dai-cells = <0>; +- compatible = "allwinner,sun8i-h3-codec"; +- reg = <0x01c22c00 0x400>; +- interrupts = <GIC_SPI 29 IRQ_TYPE_LEVEL_HIGH>; +- clocks = <&ccu CLK_BUS_CODEC>, <&ccu CLK_AC_DIG>; +- clock-names = "apb", "codec"; +- resets = <&ccu RST_BUS_CODEC>; +- dmas = <&dma 15>, <&dma 15>; +- dma-names = "rx", "tx"; +- allwinner,codec-analog-controls = <&codec_analog>; +- status = "disabled"; +- }; +- +- uart0: serial@01c28000 { +- compatible = "snps,dw-apb-uart"; +- reg = <0x01c28000 0x400>; +- interrupts = <GIC_SPI 0 IRQ_TYPE_LEVEL_HIGH>; +- reg-shift = <2>; +- reg-io-width = <4>; +- clocks = <&ccu CLK_BUS_UART0>; +- resets = <&ccu RST_BUS_UART0>; +- dmas = <&dma 6>, <&dma 6>; +- dma-names = "rx", "tx"; +- status = "disabled"; +- }; +- +- uart1: serial@01c28400 { +- compatible = "snps,dw-apb-uart"; +- reg = <0x01c28400 0x400>; +- interrupts = <GIC_SPI 1 IRQ_TYPE_LEVEL_HIGH>; +- reg-shift = <2>; +- reg-io-width = <4>; +- clocks = <&ccu CLK_BUS_UART1>; +- resets = <&ccu RST_BUS_UART1>; +- dmas = <&dma 7>, <&dma 7>; +- dma-names = "rx", "tx"; +- status = "disabled"; +- }; +- +- uart2: serial@01c28800 { +- compatible = "snps,dw-apb-uart"; +- reg = <0x01c28800 0x400>; +- interrupts = <GIC_SPI 2 IRQ_TYPE_LEVEL_HIGH>; +- reg-shift = <2>; +- reg-io-width = <4>; +- clocks = <&ccu CLK_BUS_UART2>; +- resets = <&ccu RST_BUS_UART2>; +- dmas = <&dma 8>, <&dma 8>; +- dma-names = "rx", "tx"; +- status = "disabled"; +- }; +- +- uart3: serial@01c28c00 { +- compatible = "snps,dw-apb-uart"; +- reg = <0x01c28c00 0x400>; +- interrupts = <GIC_SPI 3 IRQ_TYPE_LEVEL_HIGH>; +- reg-shift = <2>; +- reg-io-width = <4>; +- clocks = <&ccu CLK_BUS_UART3>; +- resets = <&ccu RST_BUS_UART3>; +- dmas = <&dma 9>, <&dma 9>; +- dma-names = "rx", "tx"; +- status = "disabled"; +- }; +- +- i2c0: i2c@01c2ac00 { +- compatible = "allwinner,sun6i-a31-i2c"; +- reg = <0x01c2ac00 0x400>; +- interrupts = <GIC_SPI 6 IRQ_TYPE_LEVEL_HIGH>; +- clocks = <&ccu CLK_BUS_I2C0>; +- resets = <&ccu RST_BUS_I2C0>; +- pinctrl-names = "default"; +- pinctrl-0 = <&i2c0_pins>; +- status = "disabled"; +- #address-cells = <1>; +- #size-cells = <0>; +- }; +- +- i2c1: i2c@01c2b000 { +- compatible = "allwinner,sun6i-a31-i2c"; +- reg = <0x01c2b000 0x400>; +- interrupts = <GIC_SPI 7 IRQ_TYPE_LEVEL_HIGH>; +- clocks = <&ccu CLK_BUS_I2C1>; +- resets = <&ccu RST_BUS_I2C1>; +- pinctrl-names = "default"; +- pinctrl-0 = <&i2c1_pins>; +- status = "disabled"; +- #address-cells = <1>; +- #size-cells = <0>; +- }; +- +- i2c2: i2c@01c2b400 { +- compatible = "allwinner,sun6i-a31-i2c"; +- reg = <0x01c2b000 0x400>; +- interrupts = <GIC_SPI 8 IRQ_TYPE_LEVEL_HIGH>; +- clocks = <&ccu CLK_BUS_I2C2>; +- resets = <&ccu RST_BUS_I2C2>; +- pinctrl-names = "default"; +- pinctrl-0 = <&i2c2_pins>; +- status = "disabled"; +- #address-cells = <1>; +- #size-cells = <0>; +- }; +- +- gic: interrupt-controller@01c81000 { +- compatible = "arm,gic-400"; +- reg = <0x01c81000 0x1000>, +- <0x01c82000 0x2000>, +- <0x01c84000 0x2000>, +- <0x01c86000 0x2000>; +- interrupt-controller; +- #interrupt-cells = <3>; +- interrupts = <GIC_PPI 9 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_HIGH)>; +- }; +- +- rtc: rtc@01f00000 { +- compatible = "allwinner,sun6i-a31-rtc"; +- reg = <0x01f00000 0x54>; +- interrupts = <GIC_SPI 40 IRQ_TYPE_LEVEL_HIGH>, +- <GIC_SPI 41 IRQ_TYPE_LEVEL_HIGH>; +- }; +- +- apb0_reset: reset@01f014b0 { +- reg = <0x01f014b0 0x4>; +- compatible = "allwinner,sun6i-a31-clock-reset"; +- #reset-cells = <1>; +- }; +- +- codec_analog: codec-analog@01f015c0 { +- compatible = "allwinner,sun8i-h3-codec-analog"; +- reg = <0x01f015c0 0x4>; +- }; +- +- ir: ir@01f02000 { +- compatible = "allwinner,sun5i-a13-ir"; +- clocks = <&apb0_gates 1>, <&ir_clk>; +- clock-names = "apb", "ir"; +- resets = <&apb0_reset 1>; +- interrupts = <GIC_SPI 37 IRQ_TYPE_LEVEL_HIGH>; +- reg = <0x01f02000 0x40>; +- status = "disabled"; +- }; +- +- r_pio: pinctrl@01f02c00 { +- compatible = "allwinner,sun8i-h3-r-pinctrl"; +- reg = <0x01f02c00 0x400>; +- interrupts = <GIC_SPI 45 IRQ_TYPE_LEVEL_HIGH>; +- clocks = <&apb0_gates 0>, <&osc24M>, <&osc32k>; +- clock-names = "apb", "hosc", "losc"; +- resets = <&apb0_reset 0>; +- gpio-controller; +- #gpio-cells = <3>; +- interrupt-controller; +- #interrupt-cells = <3>; +- +- ir_pins_a: ir@0 { +- pins = "PL11"; +- function = "s_cir_rx"; +- }; +- }; +- }; +-}; ++/* ++ * Copyright (C) 2015 Jens Kuske <jenskuske@gmail.com> ++ * ++ * This file is dual-licensed: you can use it either under the terms ++ * of the GPL or the X11 license, at your option. Note that this dual ++ * licensing only applies to this file, and not this project as a ++ * whole. ++ * ++ * a) This file is free software; you can redistribute it and/or ++ * modify it under the terms of the GNU General Public License as ++ * published by the Free Software Foundation; either version 2 of the ++ * License, or (at your option) any later version. ++ * ++ * This file is distributed in the hope that it will be useful, ++ * but WITHOUT ANY WARRANTY; without even the implied warranty of ++ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ++ * GNU General Public License for more details. ++ * ++ * Or, alternatively, ++ * ++ * b) Permission is hereby granted, free of charge, to any person ++ * obtaining a copy of this software and associated documentation ++ * files (the "Software"), to deal in the Software without ++ * restriction, including without limitation the rights to use, ++ * copy, modify, merge, publish, distribute, sublicense, and/or ++ * sell copies of the Software, and to permit persons to whom the ++ * Software is furnished to do so, subject to the following ++ * conditions: ++ * ++ * The above copyright notice and this permission notice shall be ++ * included in all copies or substantial portions of the Software. ++ * ++ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, ++ * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES ++ * OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND ++ * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT ++ * HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, ++ * WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING ++ * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR ++ * OTHER DEALINGS IN THE SOFTWARE. ++ */ ++ ++#include "sunxi-h3-h5.dtsi" ++ ++/ { ++ cpus { ++ #address-cells = <1>; ++ #size-cells = <0>; ++ ++ cpu@0 { ++ compatible = "arm,cortex-a7"; ++ device_type = "cpu"; ++ reg = <0>; ++ }; ++ ++ cpu@1 { ++ compatible = "arm,cortex-a7"; ++ device_type = "cpu"; ++ reg = <1>; ++ }; ++ ++ cpu@2 { ++ compatible = "arm,cortex-a7"; ++ device_type = "cpu"; ++ reg = <2>; ++ }; ++ ++ cpu@3 { ++ compatible = "arm,cortex-a7"; ++ device_type = "cpu"; ++ reg = <3>; ++ }; ++ }; ++ ++ timer { ++ compatible = "arm,armv7-timer"; ++ interrupts = <GIC_PPI 13 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>, ++ <GIC_PPI 14 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>, ++ <GIC_PPI 11 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>, ++ <GIC_PPI 10 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>; ++ }; ++}; ++ ++&ccu { ++ compatible = "allwinner,sun8i-h3-ccu"; ++}; ++ ++&mmc0 { ++ compatible = "allwinner,sun7i-a20-mmc"; ++ clocks = <&ccu CLK_BUS_MMC0>, ++ <&ccu CLK_MMC0>, ++ <&ccu CLK_MMC0_OUTPUT>, ++ <&ccu CLK_MMC0_SAMPLE>; ++ clock-names = "ahb", ++ "mmc", ++ "output", ++ "sample"; ++}; ++ ++&mmc1 { ++ compatible = "allwinner,sun7i-a20-mmc"; ++ clocks = <&ccu CLK_BUS_MMC1>, ++ <&ccu CLK_MMC1>, ++ <&ccu CLK_MMC1_OUTPUT>, ++ <&ccu CLK_MMC1_SAMPLE>; ++ clock-names = "ahb", ++ "mmc", ++ "output", ++ "sample"; ++}; ++ ++&mmc2 { ++ compatible = "allwinner,sun7i-a20-mmc"; ++ clocks = <&ccu CLK_BUS_MMC2>, ++ <&ccu CLK_MMC2>, ++ <&ccu CLK_MMC2_OUTPUT>, ++ <&ccu CLK_MMC2_SAMPLE>; ++ clock-names = "ahb", ++ "mmc", ++ "output", ++ "sample"; ++}; ++ ++&pio { ++ compatible = "allwinner,sun8i-h3-pinctrl"; ++}; +diff --git a/arch/arm/boot/dts/sun8i-h3.dtsi b/arch/arm/boot/dts/sunxi-h3-h5.dtsi +similarity index 90% +copy from arch/arm/boot/dts/sun8i-h3.dtsi +copy to arch/arm/boot/dts/sunxi-h3-h5.dtsi +index c13fbfb92592..2494ea063cd4 100644 +--- a/arch/arm/boot/dts/sun8i-h3.dtsi ++++ b/arch/arm/boot/dts/sunxi-h3-h5.dtsi +@@ -46,43 +46,8 @@ + + / { + interrupt-parent = <&gic>; +- +- cpus { +- #address-cells = <1>; +- #size-cells = <0>; +- +- cpu@0 { +- compatible = "arm,cortex-a7"; +- device_type = "cpu"; +- reg = <0>; +- }; +- +- cpu@1 { +- compatible = "arm,cortex-a7"; +- device_type = "cpu"; +- reg = <1>; +- }; +- +- cpu@2 { +- compatible = "arm,cortex-a7"; +- device_type = "cpu"; +- reg = <2>; +- }; +- +- cpu@3 { +- compatible = "arm,cortex-a7"; +- device_type = "cpu"; +- reg = <3>; +- }; +- }; +- +- timer { +- compatible = "arm,armv7-timer"; +- interrupts = <GIC_PPI 13 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>, +- <GIC_PPI 14 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>, +- <GIC_PPI 11 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>, +- <GIC_PPI 10 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>; +- }; ++ #address-cells = <1>; ++ #size-cells = <1>; + + clocks { + #address-cells = <1>; +@@ -147,16 +112,8 @@ + }; + + mmc0: mmc@01c0f000 { +- compatible = "allwinner,sun7i-a20-mmc"; ++ /* compatible and clocks are in per SoC .dtsi file */ + reg = <0x01c0f000 0x1000>; +- clocks = <&ccu CLK_BUS_MMC0>, +- <&ccu CLK_MMC0>, +- <&ccu CLK_MMC0_OUTPUT>, +- <&ccu CLK_MMC0_SAMPLE>; +- clock-names = "ahb", +- "mmc", +- "output", +- "sample"; + resets = <&ccu RST_BUS_MMC0>; + reset-names = "ahb"; + interrupts = <GIC_SPI 60 IRQ_TYPE_LEVEL_HIGH>; +@@ -166,16 +123,8 @@ + }; + + mmc1: mmc@01c10000 { +- compatible = "allwinner,sun7i-a20-mmc"; ++ /* compatible and clocks are in per SoC .dtsi file */ + reg = <0x01c10000 0x1000>; +- clocks = <&ccu CLK_BUS_MMC1>, +- <&ccu CLK_MMC1>, +- <&ccu CLK_MMC1_OUTPUT>, +- <&ccu CLK_MMC1_SAMPLE>; +- clock-names = "ahb", +- "mmc", +- "output", +- "sample"; + resets = <&ccu RST_BUS_MMC1>; + reset-names = "ahb"; + interrupts = <GIC_SPI 61 IRQ_TYPE_LEVEL_HIGH>; +@@ -185,16 +134,8 @@ + }; + + mmc2: mmc@01c11000 { +- compatible = "allwinner,sun7i-a20-mmc"; ++ /* compatible and clocks are in per SoC .dtsi file */ + reg = <0x01c11000 0x1000>; +- clocks = <&ccu CLK_BUS_MMC2>, +- <&ccu CLK_MMC2>, +- <&ccu CLK_MMC2_OUTPUT>, +- <&ccu CLK_MMC2_SAMPLE>; +- clock-names = "ahb", +- "mmc", +- "output", +- "sample"; + resets = <&ccu RST_BUS_MMC2>; + reset-names = "ahb"; + interrupts = <GIC_SPI 62 IRQ_TYPE_LEVEL_HIGH>; +@@ -305,7 +246,7 @@ + }; + + ccu: clock@01c20000 { +- compatible = "allwinner,sun8i-h3-ccu"; ++ /* compatible is in per SoC .dtsi file */ + reg = <0x01c20000 0x400>; + clocks = <&osc24M>, <&osc32k>; + clock-names = "hosc", "losc"; +@@ -314,7 +255,7 @@ + }; + + pio: pinctrl@01c20800 { +- compatible = "allwinner,sun8i-h3-pinctrl"; ++ /* compatible is in per SoC .dtsi file */ + reg = <0x01c20800 0x400>; + interrupts = <GIC_SPI 11 IRQ_TYPE_LEVEL_HIGH>, + <GIC_SPI 17 IRQ_TYPE_LEVEL_HIGH>; diff --git a/AllWinner-net-emac.patch b/AllWinner-net-emac.patch index 42dadabab..ebe9a3c94 100644 --- a/AllWinner-net-emac.patch +++ b/AllWinner-net-emac.patch @@ -1,186 +1,396 @@ -From fb909e29d6c073f4c5777a0db75df72b726e4314 Mon Sep 17 00:00:00 2001 +From patchwork Tue Mar 14 14:18:37 2017 +Content-Type: text/plain; charset="utf-8" +MIME-Version: 1.0 +Content-Transfer-Encoding: 7bit +Subject: [v2, 01/20] net-next: stmmac: export + stmmac_set_mac_addr/stmmac_get_mac_addr From: Corentin LABBE <clabbe.montjoie@gmail.com> -Date: Fri, 7 Oct 2016 10:25:48 +0200 -Subject: [PATCH 1/8] ethernet: add sun8i-emac driver +X-Patchwork-Id: 9623505 +Message-Id: <20170314141856.24560-2-clabbe.montjoie@gmail.com> +To: robh+dt@kernel.org, mark.rutland@arm.com, + maxime.ripard@free-electrons.com, + wens@csie.org, linux@armlinux.org.uk, catalin.marinas@arm.com, + will.deacon@arm.com, peppe.cavallaro@st.com, alexandre.torgue@st.com, + davem@davemloft.net +Cc: devicetree@vger.kernel.org, f.fainelli@gmail.com, netdev@vger.kernel.org, + linux-kernel@vger.kernel.org, Corentin Labbe <clabbe.montjoie@gmail.com>, + linux-arm-kernel@lists.infradead.org +Date: Tue, 14 Mar 2017 15:18:37 +0100 -This patch add support for sun8i-emac ethernet MAC hardware. -It could be found in Allwinner H3/A83T/A64 SoCs. +Thoses symbol will be needed for the dwmac-sun8i ethernet driver. +For letting it to be build as module, they need to be exported. -It supports 10/100/1000 Mbit/s speed with half/full duplex. -It can use an internal PHY (MII 10/100) or an external PHY -via RGMII/RMII. +Signed-off-by: Corentin Labbe <clabbe.montjoie@gmail.com> +--- + drivers/net/ethernet/stmicro/stmmac/dwmac_lib.c | 3 ++- + 1 file changed, 2 insertions(+), 1 deletion(-) + +diff --git a/drivers/net/ethernet/stmicro/stmmac/dwmac_lib.c b/drivers/net/ethernet/stmicro/stmmac/dwmac_lib.c +index e60bfca..0ab985c8 100644 +--- a/drivers/net/ethernet/stmicro/stmmac/dwmac_lib.c ++++ b/drivers/net/ethernet/stmicro/stmmac/dwmac_lib.c +@@ -248,6 +248,7 @@ void stmmac_set_mac_addr(void __iomem *ioaddr, u8 addr[6], + data = (addr[3] << 24) | (addr[2] << 16) | (addr[1] << 8) | addr[0]; + writel(data, ioaddr + low); + } ++EXPORT_SYMBOL_GPL(stmmac_set_mac_addr); + + /* Enable disable MAC RX/TX */ + void stmmac_set_mac(void __iomem *ioaddr, bool enable) +@@ -279,4 +280,4 @@ void stmmac_get_mac_addr(void __iomem *ioaddr, unsigned char *addr, + addr[4] = hi_addr & 0xff; + addr[5] = (hi_addr >> 8) & 0xff; + } +- ++EXPORT_SYMBOL_GPL(stmmac_get_mac_addr); +From patchwork Tue Mar 14 14:18:38 2017 +Content-Type: text/plain; charset="utf-8" +MIME-Version: 1.0 +Content-Transfer-Encoding: 7bit +Subject: [v2,02/20] net-next: stmmac: add optional setup function +From: Corentin LABBE <clabbe.montjoie@gmail.com> +X-Patchwork-Id: 9623509 +Message-Id: <20170314141856.24560-3-clabbe.montjoie@gmail.com> +To: robh+dt@kernel.org, mark.rutland@arm.com, + maxime.ripard@free-electrons.com, + wens@csie.org, linux@armlinux.org.uk, catalin.marinas@arm.com, + will.deacon@arm.com, peppe.cavallaro@st.com, alexandre.torgue@st.com, + davem@davemloft.net +Cc: devicetree@vger.kernel.org, f.fainelli@gmail.com, netdev@vger.kernel.org, + linux-kernel@vger.kernel.org, Corentin Labbe <clabbe.montjoie@gmail.com>, + linux-arm-kernel@lists.infradead.org +Date: Tue, 14 Mar 2017 15:18:38 +0100 + +Instead of ading more ifthen logic for adding a new mac_device_info +setup function, it is easier to add a function pointer to the function +needed. Signed-off-by: Corentin Labbe <clabbe.montjoie@gmail.com> --- - drivers/net/ethernet/allwinner/Kconfig | 13 + - drivers/net/ethernet/allwinner/Makefile | 1 + - drivers/net/ethernet/allwinner/sun8i-emac.c | 2266 +++++++++++++++++++++++++++ - 3 files changed, 2280 insertions(+) - create mode 100644 drivers/net/ethernet/allwinner/sun8i-emac.c + drivers/net/ethernet/stmicro/stmmac/stmmac_main.c | 4 +++- + include/linux/stmmac.h | 3 +++ + 2 files changed, 6 insertions(+), 1 deletion(-) -diff --git a/drivers/net/ethernet/allwinner/Kconfig b/drivers/net/ethernet/allwinner/Kconfig -index 47da7e7..060569c 100644 ---- a/drivers/net/ethernet/allwinner/Kconfig -+++ b/drivers/net/ethernet/allwinner/Kconfig -@@ -33,4 +33,17 @@ config SUN4I_EMAC - To compile this driver as a module, choose M here. The module - will be called sun4i-emac. +diff --git a/drivers/net/ethernet/stmicro/stmmac/stmmac_main.c b/drivers/net/ethernet/stmicro/stmmac/stmmac_main.c +index 4498a38..856ac57 100644 +--- a/drivers/net/ethernet/stmicro/stmmac/stmmac_main.c ++++ b/drivers/net/ethernet/stmicro/stmmac/stmmac_main.c +@@ -3101,7 +3101,9 @@ static int stmmac_hw_init(struct stmmac_priv *priv) + struct mac_device_info *mac; -+config SUN8I_EMAC -+ tristate "Allwinner sun8i EMAC support" -+ depends on ARCH_SUNXI || COMPILE_TEST -+ depends on OF -+ select MII -+ select PHYLIB -+ ---help--- -+ This driver support the sun8i EMAC ethernet driver present on -+ H3/A83T/A64 Allwinner SoCs. -+ -+ To compile this driver as a module, choose M here. The module -+ will be called sun8i-emac. -+ - endif # NET_VENDOR_ALLWINNER -diff --git a/drivers/net/ethernet/allwinner/Makefile b/drivers/net/ethernet/allwinner/Makefile -index 03129f7..8bd1693c 100644 ---- a/drivers/net/ethernet/allwinner/Makefile -+++ b/drivers/net/ethernet/allwinner/Makefile -@@ -3,3 +3,4 @@ - # + /* Identify the MAC HW device */ +- if (priv->plat->has_gmac) { ++ if (priv->plat->setup) { ++ mac = priv->plat->setup(priv); ++ } else if (priv->plat->has_gmac) { + priv->dev->priv_flags |= IFF_UNICAST_FLT; + mac = dwmac1000_setup(priv->ioaddr, + priv->plat->multicast_filter_bins, +diff --git a/include/linux/stmmac.h b/include/linux/stmmac.h +index fc273e9..8f09f18 100644 +--- a/include/linux/stmmac.h ++++ b/include/linux/stmmac.h +@@ -109,6 +109,8 @@ struct stmmac_axi { + bool axi_rb; + }; - obj-$(CONFIG_SUN4I_EMAC) += sun4i-emac.o -+obj-$(CONFIG_SUN8I_EMAC) += sun8i-emac.o -diff --git a/drivers/net/ethernet/allwinner/sun8i-emac.c b/drivers/net/ethernet/allwinner/sun8i-emac.c ++struct stmmac_priv; ++ + struct plat_stmmacenet_data { + int bus_id; + int phy_addr; +@@ -136,6 +138,7 @@ struct plat_stmmacenet_data { + void (*fix_mac_speed)(void *priv, unsigned int speed); + int (*init)(struct platform_device *pdev, void *priv); + void (*exit)(struct platform_device *pdev, void *priv); ++ struct mac_device_info *(*setup)(struct stmmac_priv *priv); + void *bsp_priv; + struct clk *stmmac_clk; + struct clk *pclk; +From patchwork Tue Mar 14 14:18:39 2017 +Content-Type: text/plain; charset="utf-8" +MIME-Version: 1.0 +Content-Transfer-Encoding: 7bit +Subject: [v2, + 03/20] ARM: sun8i: dt: Add DT bindings documentation for Allwinner + dwmac-sun8i +From: Corentin LABBE <clabbe.montjoie@gmail.com> +X-Patchwork-Id: 9623517 +Message-Id: <20170314141856.24560-4-clabbe.montjoie@gmail.com> +To: robh+dt@kernel.org, mark.rutland@arm.com, + maxime.ripard@free-electrons.com, + wens@csie.org, linux@armlinux.org.uk, catalin.marinas@arm.com, + will.deacon@arm.com, peppe.cavallaro@st.com, alexandre.torgue@st.com, + davem@davemloft.net +Cc: devicetree@vger.kernel.org, f.fainelli@gmail.com, netdev@vger.kernel.org, + linux-kernel@vger.kernel.org, Corentin Labbe <clabbe.montjoie@gmail.com>, + linux-arm-kernel@lists.infradead.org +Date: Tue, 14 Mar 2017 15:18:39 +0100 + +This patch adds documentation for Device-Tree bindings for the +Allwinner dwmac-sun8i driver. + +Signed-off-by: Corentin Labbe <clabbe.montjoie@gmail.com> +--- + .../devicetree/bindings/net/dwmac-sun8i.txt | 77 ++++++++++++++++++++++ + 1 file changed, 77 insertions(+) + create mode 100644 Documentation/devicetree/bindings/net/dwmac-sun8i.txt + +diff --git a/Documentation/devicetree/bindings/net/dwmac-sun8i.txt b/Documentation/devicetree/bindings/net/dwmac-sun8i.txt new file mode 100644 -index 0000000..bc74467 +index 0000000..f01ef17 --- /dev/null -+++ b/drivers/net/ethernet/allwinner/sun8i-emac.c -@@ -0,0 +1,2266 @@ ++++ b/Documentation/devicetree/bindings/net/dwmac-sun8i.txt +@@ -0,0 +1,77 @@ ++* Allwinner sun8i GMAC ethernet controller ++ ++This device is a platform glue layer for stmmac. ++Please see stmmac.txt for the other unchanged properties. ++ ++Required properties: ++- compatible: should be one of the following string: ++ "allwinner,sun8i-a83t-emac" ++ "allwinner,sun8i-h3-emac" ++ "allwinner,sun50i-a64-emac" ++- reg: address and length of the register for the device. ++- interrupts: interrupt for the device ++- interrupt-names: should be "macirq" ++- clocks: A phandle to the reference clock for this device ++- clock-names: should be "stmmaceth" ++- resets: A phandle to the reset control for this device ++- reset-names: should be "stmmaceth" ++- phy-mode: See ethernet.txt ++- phy-handle: See ethernet.txt ++- #address-cells: shall be 1 ++- #size-cells: shall be 0 ++- syscon: A phandle to the syscon of the SoC with one of the following ++ compatible string: ++ - allwinner,sun8i-h3-system-controller ++ - allwinner,sun8i-a64-system-controller ++ - allwinner,sun8i-a83t-system-controller ++ ++Optional properties: ++- allwinner,tx-delay: TX clock delay chain value. Range value is 0-0x07. Default is 0) ++- allwinner,rx-delay: RX clock delay chain value. Range value is 0-0x1F. Default is 0) ++Both delay properties are in 0.1ns step. ++ ++Optional properties for "allwinner,sun8i-h3-emac": ++- allwinner,leds-active-low: EPHY LEDs are active low ++ ++Required child node of emac: ++- mdio bus node: should be named mdio ++ ++Required properties of the mdio node: ++- #address-cells: shall be 1 ++- #size-cells: shall be 0 ++ ++The device node referenced by "phy" or "phy-handle" should be a child node ++of the mdio node. See phy.txt for the generic PHY bindings. ++ ++Required properties of the phy node with "allwinner,sun8i-h3-emac": ++- clocks: a phandle to the reference clock for the EPHY ++- resets: a phandle to the reset control for the EPHY ++ ++Example: ++ ++emac: ethernet@1c0b000 { ++ compatible = "allwinner,sun8i-h3-emac"; ++ syscon = <&syscon>; ++ reg = <0x01c0b000 0x104>; ++ interrupts = <GIC_SPI 82 IRQ_TYPE_LEVEL_HIGH>; ++ interrupt-names = "macirq"; ++ resets = <&ccu RST_BUS_EMAC>; ++ reset-names = "stmmaceth"; ++ clocks = <&ccu CLK_BUS_EMAC>; ++ clock-names = "stmmaceth"; ++ #address-cells = <1>; ++ #size-cells = <0>; ++ ++ phy = <&int_mii_phy>; ++ phy-mode = "mii"; ++ allwinner,leds-active-low; ++ mdio: mdio { ++ #address-cells = <1>; ++ #size-cells = <0>; ++ int_mii_phy: ethernet-phy@1 { ++ reg = <1>; ++ clocks = <&ccu CLK_BUS_EPHY>; ++ resets = <&ccu RST_BUS_EPHY>; ++ }; ++ }; ++}; +From patchwork Tue Mar 14 14:18:40 2017 +Content-Type: text/plain; charset="utf-8" +MIME-Version: 1.0 +Content-Transfer-Encoding: 7bit +Subject: [v2, + 04/20] ARM: sun8i: dt: Add DT bindings documentation for Allwinner + syscon +From: Corentin LABBE <clabbe.montjoie@gmail.com> +X-Patchwork-Id: 9623533 +Message-Id: <20170314141856.24560-5-clabbe.montjoie@gmail.com> +To: robh+dt@kernel.org, mark.rutland@arm.com, + maxime.ripard@free-electrons.com, + wens@csie.org, linux@armlinux.org.uk, catalin.marinas@arm.com, + will.deacon@arm.com, peppe.cavallaro@st.com, alexandre.torgue@st.com, + davem@davemloft.net +Cc: devicetree@vger.kernel.org, f.fainelli@gmail.com, netdev@vger.kernel.org, + linux-kernel@vger.kernel.org, Corentin Labbe <clabbe.montjoie@gmail.com>, + linux-arm-kernel@lists.infradead.org +Date: Tue, 14 Mar 2017 15:18:40 +0100 + +Signed-off-by: Corentin Labbe <clabbe.montjoie@gmail.com> +--- + .../devicetree/bindings/misc/allwinner,syscon.txt | 19 +++++++++++++++++++ + 1 file changed, 19 insertions(+) + create mode 100644 Documentation/devicetree/bindings/misc/allwinner,syscon.txt + +diff --git a/Documentation/devicetree/bindings/misc/allwinner,syscon.txt b/Documentation/devicetree/bindings/misc/allwinner,syscon.txt +new file mode 100644 +index 0000000..9f5f1f5 +--- /dev/null ++++ b/Documentation/devicetree/bindings/misc/allwinner,syscon.txt +@@ -0,0 +1,19 @@ ++* Allwinner sun8i system controller ++ ++This file describes the bindings for the system controller present in ++Allwinner SoC H3, A83T and A64. ++The principal function of this syscon is to control EMAC PHY choice and ++config. ++ ++Required properties for the system controller: ++- reg: address and length of the register for the device. ++- compatible: should be "syscon" and one of the following string: ++ "allwinner,sun8i-h3-system-controller" ++ "allwinner,sun8i-a64-system-controller" ++ "allwinner,sun8i-a83t-system-controller" ++ ++Example: ++syscon: syscon@01c00000 { ++ compatible = "syscon", "allwinner,sun8i-h3-system-controller"; ++ reg = <0x01c00000 0x1000>; ++}; +From patchwork Tue Mar 14 14:18:41 2017 +Content-Type: text/plain; charset="utf-8" +MIME-Version: 1.0 +Content-Transfer-Encoding: 7bit +Subject: [v2,05/20] net-next: stmmac: Add dwmac-sun8i +From: Corentin LABBE <clabbe.montjoie@gmail.com> +X-Patchwork-Id: 9623523 +Message-Id: <20170314141856.24560-6-clabbe.montjoie@gmail.com> +To: robh+dt@kernel.org, mark.rutland@arm.com, + maxime.ripard@free-electrons.com, + wens@csie.org, linux@armlinux.org.uk, catalin.marinas@arm.com, + will.deacon@arm.com, peppe.cavallaro@st.com, alexandre.torgue@st.com, + davem@davemloft.net +Cc: devicetree@vger.kernel.org, f.fainelli@gmail.com, netdev@vger.kernel.org, + linux-kernel@vger.kernel.org, Corentin Labbe <clabbe.montjoie@gmail.com>, + linux-arm-kernel@lists.infradead.org +Date: Tue, 14 Mar 2017 15:18:41 +0100 + +The dwmac-sun8i is a heavy hacked version of stmmac hardware by +allwinner. +In fact the only common part is the descriptor management and the first +register function. + +Signed-off-by: Corentin Labbe <clabbe.montjoie@gmail.com> +--- + drivers/net/ethernet/stmicro/stmmac/Kconfig | 11 + + drivers/net/ethernet/stmicro/stmmac/Makefile | 1 + + drivers/net/ethernet/stmicro/stmmac/dwmac-sun8i.c | 938 +++++++++++++++++++++ + drivers/net/ethernet/stmicro/stmmac/stmmac_main.c | 27 +- + .../net/ethernet/stmicro/stmmac/stmmac_platform.c | 9 +- + include/linux/stmmac.h | 1 + + 6 files changed, 984 insertions(+), 3 deletions(-) + create mode 100644 drivers/net/ethernet/stmicro/stmmac/dwmac-sun8i.c + +diff --git a/drivers/net/ethernet/stmicro/stmmac/Kconfig b/drivers/net/ethernet/stmicro/stmmac/Kconfig +index cfbe363..85c0e41 100644 +--- a/drivers/net/ethernet/stmicro/stmmac/Kconfig ++++ b/drivers/net/ethernet/stmicro/stmmac/Kconfig +@@ -145,6 +145,17 @@ config DWMAC_SUNXI + This selects Allwinner SoC glue layer support for the + stmmac device driver. This driver is used for A20/A31 + GMAC ethernet controller. ++ ++config DWMAC_SUN8I ++ tristate "Allwinner sun8i GMAC support" ++ default ARCH_SUNXI ++ depends on OF && (ARCH_SUNXI || COMPILE_TEST) ++ ---help--- ++ Support for Allwinner H3 A83T A64 EMAC ethernet controllers. ++ ++ This selects Allwinner SoC glue layer support for the ++ stmmac device driver. This driver is used for H3/A83T/A64 ++ EMAC ethernet controller. + endif + + config STMMAC_PCI +diff --git a/drivers/net/ethernet/stmicro/stmmac/Makefile b/drivers/net/ethernet/stmicro/stmmac/Makefile +index 700c603..fd4937a 100644 +--- a/drivers/net/ethernet/stmicro/stmmac/Makefile ++++ b/drivers/net/ethernet/stmicro/stmmac/Makefile +@@ -16,6 +16,7 @@ obj-$(CONFIG_DWMAC_SOCFPGA) += dwmac-altr-socfpga.o + obj-$(CONFIG_DWMAC_STI) += dwmac-sti.o + obj-$(CONFIG_DWMAC_STM32) += dwmac-stm32.o + obj-$(CONFIG_DWMAC_SUNXI) += dwmac-sunxi.o ++obj-$(CONFIG_DWMAC_SUN8I) += dwmac-sun8i.o + obj-$(CONFIG_DWMAC_DWC_QOS_ETH) += dwmac-dwc-qos-eth.o + obj-$(CONFIG_DWMAC_GENERIC) += dwmac-generic.o + stmmac-platform-objs:= stmmac_platform.o +diff --git a/drivers/net/ethernet/stmicro/stmmac/dwmac-sun8i.c b/drivers/net/ethernet/stmicro/stmmac/dwmac-sun8i.c +new file mode 100644 +index 0000000..52ab67c +--- /dev/null ++++ b/drivers/net/ethernet/stmicro/stmmac/dwmac-sun8i.c +@@ -0,0 +1,938 @@ +/* -+ * sun8i-emac driver ++ * dwmac-sun8i.c - Allwinner sun8i DWMAC specific glue layer + * -+ * Copyright (C) 2015-2016 Corentin LABBE <clabbe.montjoie@gmail.com> ++ * Copyright (C) 2017 Corentin Labbe <clabbe.montjoie@gmail.com> + * -+ * This is the driver for Allwinner Ethernet MAC found in H3/A83T/A64 SoC ++ * This program is free software; you can redistribute it and/or modify ++ * it under the terms of the GNU General Public License as published by ++ * the Free Software Foundation; either version 2 of the License, or ++ * (at your option) any later version. + * -+ * TODO: -+ * - MAC filtering -+ * - Jumbo frame -+ * - features rx-all (NETIF_F_RXALL_BIT) -+ * - PM runtime ++ * This program is distributed in the hope that it will be useful, ++ * but WITHOUT ANY WARRANTY; without even the implied warranty of ++ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ++ * GNU General Public License for more details. + */ -+#include <linux/bitops.h> ++ +#include <linux/clk.h> -+#include <linux/dma-mapping.h> -+#include <linux/etherdevice.h> -+#include <linux/interrupt.h> ++#include <linux/io.h> +#include <linux/iopoll.h> -+#include <linux/mii.h> ++#include <linux/mfd/syscon.h> +#include <linux/module.h> -+#include <linux/netdevice.h> +#include <linux/of_device.h> +#include <linux/of_mdio.h> +#include <linux/of_net.h> +#include <linux/phy.h> -+#include <linux/pinctrl/consumer.h> -+#include <linux/pinctrl/pinctrl.h> +#include <linux/platform_device.h> -+#include <linux/reset.h> -+#include <linux/scatterlist.h> -+#include <linux/skbuff.h> -+#include <linux/mfd/syscon.h> ++#include <linux/regulator/consumer.h> +#include <linux/regmap.h> ++#include <linux/stmmac.h> + -+#define EMAC_BASIC_CTL0 0x00 -+#define EMAC_BASIC_CTL1 0x04 -+#define EMAC_INT_STA 0x08 -+#define EMAC_INT_EN 0x0C -+#define EMAC_TX_CTL0 0x10 -+#define EMAC_TX_CTL1 0x14 -+#define EMAC_TX_FLOW_CTL 0x1C -+#define EMAC_RX_CTL0 0x24 -+#define EMAC_RX_CTL1 0x28 -+#define EMAC_RX_FRM_FLT 0x38 -+#define EMAC_MDIO_CMD 0x48 -+#define EMAC_MDIO_DATA 0x4C -+#define EMAC_TX_DMA_STA 0xB0 -+#define EMAC_TX_CUR_DESC 0xB4 -+#define EMAC_TX_CUR_BUF 0xB8 -+#define EMAC_RX_DMA_STA 0xC0 -+ -+#define MDIO_CMD_MII_BUSY BIT(0) -+#define MDIO_CMD_MII_WRITE BIT(1) -+#define MDIO_CMD_MII_PHY_REG_ADDR_MASK GENMASK(8, 4) -+#define MDIO_CMD_MII_PHY_REG_ADDR_SHIFT 4 -+#define MDIO_CMD_MII_PHY_ADDR_MASK GENMASK(16, 12) -+#define MDIO_CMD_MII_PHY_ADDR_SHIFT 12 -+ -+#define EMAC_MACADDR_HI 0x50 -+#define EMAC_MACADDR_LO 0x54 -+ -+#define EMAC_RX_DESC_LIST 0x34 -+#define EMAC_TX_DESC_LIST 0x20 -+ -+#define EMAC_RX_DO_CRC BIT(27) -+#define EMAC_RX_STRIP_FCS BIT(28) -+ -+#define LE32_BIT(x) (cpu_to_le32(BIT(x))) ++#include "stmmac.h" ++#include "stmmac_platform.h" + -+#define EMAC_COULD_BE_USED_BY_DMA LE32_BIT(31) -+ -+/* Used in RX_CTL1*/ -+#define EMAC_RX_DMA_EN BIT(30) -+#define EMAC_RX_DMA_START BIT(31) -+/* Used in TX_CTL1*/ -+#define EMAC_TX_DMA_EN BIT(30) -+#define EMAC_TX_DMA_START BIT(31) ++/* General notes on dwmac-sun8i: ++ * Locking: no locking is necessary in this file because all necessary locking ++ * is done in the "stmmac files" ++ */ + -+/* Used in RX_CTL0 */ -+#define EMAC_RX_RECEIVER_EN BIT(31) -+/* Used in TX_CTL0 */ -+#define EMAC_TX_TRANSMITTER_EN BIT(31) -+ -+/* Basic CTL0 */ -+#define EMAC_BCTL0_FD BIT(0) -+#define EMAC_BCTL0_SPEED_10 2 -+#define EMAC_BCTL0_SPEED_100 3 -+#define EMAC_BCTL0_SPEED_MASK GENMASK(3, 2) -+#define EMAC_BCTL0_SPEED_SHIFT 2 -+ -+#define EMAC_FLOW_RX 1 -+#define EMAC_FLOW_TX 2 -+ -+#define EMAC_TX_INT BIT(0) -+#define EMAC_TX_DMA_STOP_INT BIT(1) -+#define EMAC_TX_BUF_UA_INT BIT(2) -+#define EMAC_TX_TIMEOUT_INT BIT(3) -+#define EMAC_TX_UNDERFLOW_INT BIT(4) -+#define EMAC_TX_EARLY_INT BIT(5) -+#define EMAC_RX_INT BIT(8) -+#define EMAC_RX_BUF_UA_INT BIT(9) -+#define EMAC_RX_DMA_STOP_INT BIT(10) -+#define EMAC_RX_TIMEOUT_INT BIT(11) -+#define EMAC_RX_OVERFLOW_INT BIT(12) -+#define EMAC_RX_EARLY_INT BIT(13) -+#define EMAC_RGMII_STA_INT BIT(16) -+ -+/* Bits used in frame RX status */ -+#define EMAC_DSC_RX_FIRST BIT(9) -+#define EMAC_DSC_RX_LAST BIT(8) -+ -+/* Bits used in frame TX ctl */ -+#define EMAC_MAGIC_TX_BIT LE32_BIT(24) -+#define EMAC_TX_DO_CRC (LE32_BIT(27) | LE32_BIT(28)) -+#define EMAC_DSC_TX_FIRST LE32_BIT(29) -+#define EMAC_DSC_TX_LAST LE32_BIT(30) -+#define EMAC_WANT_INT LE32_BIT(31) -+ -+/* struct emac_variant - Describe an emac variant of sun8i-emac -+ * @default_syscon_value: Default value of the syscon EMAC register -+ * The default_syscon_value is also used for powering down the PHY -+ * @internal_phy: which PHY type is internal -+ * @support_mii: Does the SoC support MII -+ * @support_rmii: Does the SoC support RMII -+ * @support_rgmii: Does the SoC support RGMII ++/* struct emac_variant - Descrive dwmac-sun8i hardware variant ++ * @default_syscon_value: The default value of the EMAC register in syscon ++ * This value is used for disabling properly EMAC ++ * and used as a good starting value in case of the ++ * boot process(uboot) leave some stuff. ++ * @internal_phy: Does the MAC embed an internal PHY ++ * @support_mii: Does the MAC handle MII ++ * @support_rmii: Does the MAC handle RMII ++ * @support_rgmii: Does the MAC handle RGMII + */ +struct emac_variant { + u32 default_syscon_value; @@ -190,6 +400,25 @@ index 0000000..bc74467 + bool support_rgmii; +}; + ++/* struct sunxi_priv_data - hold all sunxi private data ++ * @tx_clk: reference to MAC TX clock ++ * @ephy_clk: reference to the optional EPHY clock for the internal PHY ++ * @regulator: reference to the optional regulator ++ * @rst_ephy: reference to the optional EPHY reset for the internal PHY ++ * @variant: reference to the current board variant ++ * @regmap: regmap for using the syscon ++ * @use_internal_phy: Does the current PHY choice imply using the internal PHY ++ */ ++struct sunxi_priv_data { ++ struct clk *tx_clk; ++ struct clk *ephy_clk; ++ struct regulator *regulator; ++ struct reset_control *rst_ephy; ++ const struct emac_variant *variant; ++ struct regmap *regmap; ++ bool use_internal_phy; ++}; ++ +static const struct emac_variant emac_variant_h3 = { + .default_syscon_value = 0x58000, + .internal_phy = PHY_INTERFACE_MODE_MII, @@ -213,862 +442,536 @@ index 0000000..bc74467 + .support_rgmii = true +}; + -+static const char const estats_str[][ETH_GSTRING_LEN] = { -+ /* errors */ -+ "rx_payload_error", -+ "rx_CRC_error", -+ "rx_phy_error", -+ "rx_length_error", -+ "rx_col_error", -+ "rx_header_error", -+ "rx_overflow_error", -+ "rx_saf_error", -+ "rx_daf_error", -+ "rx_buf_error", -+ "rx_invalid_error", -+ "tx_timeout", -+ /* misc infos */ -+ "tx_stop_queue", -+ "rx_dma_ua", -+ "rx_dma_stop", -+ "tx_dma_ua", -+ "tx_dma_stop", -+ "rx_hw_csum", -+ "tx_hw_csum", -+ /* interrupts */ -+ "rx_int", -+ "tx_int", -+ "tx_early_int", -+ "tx_underflow_int", -+ "tx_timeout_int", -+ "rx_early_int", -+ "rx_overflow_int", -+ "rx_timeout_int", -+ "rgmii_state_int", -+ /* debug */ -+ "tx_used_desc", -+ "napi_schedule", -+ "napi_underflow", -+}; -+ -+struct sun8i_emac_stats { -+ u64 rx_payload_error; -+ u64 rx_crc_error; -+ u64 rx_phy_error; -+ u64 rx_length_error; -+ u64 rx_col_error; -+ u64 rx_header_error; -+ u64 rx_overflow_error; -+ u64 rx_saf_fail; -+ u64 rx_daf_fail; -+ u64 rx_buf_error; -+ u64 rx_invalid_error; -+ u64 tx_timeout; -+ -+ u64 tx_stop_queue; -+ u64 rx_dma_ua; -+ u64 rx_dma_stop; -+ u64 tx_dma_ua; -+ u64 tx_dma_stop; -+ u64 rx_hw_csum; -+ u64 tx_hw_csum; -+ -+ u64 rx_int; -+ u64 tx_int; -+ u64 tx_early_int; -+ u64 tx_underflow_int; -+ u64 tx_timeout_int; -+ u64 rx_early_int; -+ u64 rx_overflow_int; -+ u64 rx_timeout_int; -+ u64 rgmii_state_int; -+ -+ u64 tx_used_desc; -+ u64 napi_schedule; -+ u64 napi_underflow; -+}; -+ -+/* The datasheet said that each descriptor can transfers up to 4096bytes -+ * But latter, a register documentation reduce that value to 2048 -+ * Anyway using 2048 cause strange behaviours and even BSP driver use 2047 -+ */ -+#define DESC_BUF_MAX 2044 -+ -+/* MAGIC value for knowing if a descriptor is available or not */ -+#define DCLEAN cpu_to_le32(BIT(16) | BIT(14) | BIT(12) | BIT(10) | BIT(9)) ++#define EMAC_BASIC_CTL0 0x00 ++#define EMAC_BASIC_CTL1 0x04 ++#define EMAC_INT_STA 0x08 ++#define EMAC_INT_EN 0x0C ++#define EMAC_TX_CTL0 0x10 ++#define EMAC_TX_CTL1 0x14 ++#define EMAC_TX_FLOW_CTL 0x1C ++#define EMAC_TX_DESC_LIST 0x20 ++#define EMAC_RX_CTL0 0x24 ++#define EMAC_RX_CTL1 0x28 ++#define EMAC_RX_DESC_LIST 0x34 ++#define EMAC_RX_FRM_FLT 0x38 ++#define EMAC_MDIO_CMD 0x48 ++#define EMAC_MDIO_DATA 0x4C ++#define EMAC_MACADDR_HI(reg) (0x50 + (reg) * 8) ++#define EMAC_MACADDR_LO(reg) (0x54 + (reg) * 8) ++#define EMAC_TX_DMA_STA 0xB0 ++#define EMAC_TX_CUR_DESC 0xB4 ++#define EMAC_TX_CUR_BUF 0xB8 ++#define EMAC_RX_DMA_STA 0xC0 ++#define EMAC_RX_CUR_DESC 0xC4 ++#define EMAC_RX_CUR_BUF 0xC8 ++ ++/* Use in EMAC_BASIC_CTL1 */ ++#define EMAC_BURSTLEN_SHIFT 24 ++ ++/* Used in EMAC_RX_FRM_FLT */ ++#define EMAC_FRM_FLT_RXALL BIT(0) ++#define EMAC_FRM_FLT_CTL BIT(13) ++#define EMAC_FRM_FLT_MULTICAST BIT(16) + -+/* struct dma_desc - Structure of DMA descriptor used by the hardware -+ * @status: Status of the frame written by HW, so RO for the -+ * driver (except for BIT(31) which is R/W) -+ * @ctl: Information on the frame written by the driver (INT, len,...) -+ * @buf_addr: physical address of the frame data -+ * @next: physical address of next dma_desc -+ */ -+struct dma_desc { -+ __le32 status; -+ __le32 ctl; -+ __le32 buf_addr; -+ __le32 next; -+}; ++/* Used in RX_CTL1*/ ++#define EMAC_RX_MD BIT(1) ++#define EMAC_RX_TH_MASK GENMASK(4, 5) ++#define EMAC_RX_TH_32 0 ++#define EMAC_RX_TH_64 (0x1 << 4) ++#define EMAC_RX_TH_96 (0x2 << 4) ++#define EMAC_RX_TH_128 (0x3 << 4) ++#define EMAC_RX_DMA_EN BIT(30) ++#define EMAC_RX_DMA_START BIT(31) + -+/* Describe how data from skb are DMA mapped (used in txinfo map member) */ -+#define MAP_SINGLE 1 -+#define MAP_PAGE 2 ++/* Used in TX_CTL1*/ ++#define EMAC_TX_MD BIT(1) ++#define EMAC_TX_NEXT_FRM BIT(2) ++#define EMAC_TX_TH_MASK GENMASK(8, 10) ++#define EMAC_TX_TH_64 0 ++#define EMAC_TX_TH_128 (0x1 << 8) ++#define EMAC_TX_TH_192 (0x2 << 8) ++#define EMAC_TX_TH_256 (0x3 << 8) ++#define EMAC_TX_DMA_EN BIT(30) ++#define EMAC_TX_DMA_START BIT(31) + -+/* Structure for storing information about data in TX ring buffer */ -+struct txinfo { -+ struct sk_buff *skb; -+ int map; -+}; ++/* Used in RX_CTL0 */ ++#define EMAC_RX_RECEIVER_EN BIT(31) ++#define EMAC_RX_DO_CRC BIT(27) ++#define EMAC_RX_FLOW_CTL_EN BIT(16) + -+struct sun8i_emac_priv { -+ void __iomem *base; -+ struct regmap *regmap; -+ int irq; -+ struct device *dev; -+ struct net_device *ndev; -+ struct mii_bus *mdio; -+ struct napi_struct napi; -+ spinlock_t tx_lock;/* control the access of transmit descriptors */ -+ int duplex; -+ int speed; -+ int link; -+ int phy_interface; -+ const struct emac_variant *variant; -+ struct device_node *phy_node; -+ struct device_node *mdio_node; -+ struct clk *ahb_clk; -+ struct clk *ephy_clk; -+ bool use_internal_phy; ++/* Used in TX_CTL0 */ ++#define EMAC_TX_TRANSMITTER_EN BIT(31) ++ ++/* Used in EMAC_TX_FLOW_CTL */ ++#define EMAC_TX_FLOW_CTL_EN BIT(0) ++ ++/* Used in EMAC_INT_STA */ ++#define EMAC_TX_INT BIT(0) ++#define EMAC_TX_DMA_STOP_INT BIT(1) ++#define EMAC_TX_BUF_UA_INT BIT(2) ++#define EMAC_TX_TIMEOUT_INT BIT(3) ++#define EMAC_TX_UNDERFLOW_INT BIT(4) ++#define EMAC_TX_EARLY_INT BIT(5) ++#define EMAC_RX_INT BIT(8) ++#define EMAC_RX_BUF_UA_INT BIT(9) ++#define EMAC_RX_DMA_STOP_INT BIT(10) ++#define EMAC_RX_TIMEOUT_INT BIT(11) ++#define EMAC_RX_OVERFLOW_INT BIT(12) ++#define EMAC_RX_EARLY_INT BIT(13) ++#define EMAC_RGMII_STA_INT BIT(16) ++ ++#define MAC_ADDR_TYPE_DST BIT(31) + -+ struct reset_control *rst_mac; -+ struct reset_control *rst_ephy; ++/* H3 specific bits for EPHY */ ++#define H3_EPHY_ADDR_SHIFT 20 ++#define H3_EPHY_LED_POL BIT(17) /* 1: active low, 0: active high */ ++#define H3_EPHY_SHUTDOWN BIT(16) /* 1: shutdown, 0: power up */ ++#define H3_EPHY_SELECT BIT(15) /* 1: internal PHY, 0: external PHY */ + -+ struct dma_desc *dd_rx; -+ dma_addr_t dd_rx_phy; -+ struct dma_desc *dd_tx; -+ dma_addr_t dd_tx_phy; -+ struct sk_buff **rx_skb; -+ struct txinfo *txl; -+ -+ int nbdesc_tx; -+ int nbdesc_rx; -+ int tx_slot; -+ int tx_dirty; -+ int rx_dirty; -+ struct sun8i_emac_stats estats; -+ u32 msg_enable; -+ int flow_ctrl; -+ int pause; -+}; ++/* H3/A64 specific bits */ ++#define SYSCON_RMII_EN BIT(13) /* 1: enable RMII (overrides EPIT) */ + -+static irqreturn_t sun8i_emac_dma_interrupt(int irq, void *dev_id); ++/* Generic system control EMAC_CLK bits */ ++#define SYSCON_ETXDC_MASK GENMASK(2, 0) ++#define SYSCON_ETXDC_SHIFT 10 ++#define SYSCON_ERXDC_MASK GENMASK(4, 0) ++#define SYSCON_ERXDC_SHIFT 5 ++/* EMAC PHY Interface Type */ ++#define SYSCON_EPIT BIT(2) /* 1: RGMII, 0: MII */ ++#define SYSCON_ETCS_MASK GENMASK(1, 0) ++#define SYSCON_ETCS_MII 0x0 ++#define SYSCON_ETCS_EXT_GMII 0x1 ++#define SYSCON_ETCS_INT_GMII 0x2 ++#define SYSCON_EMAC_REG 0x30 + -+static void rb_inc(int *p, const int max) ++/* sun8i_dwmac_dma_reset() - reset the EMAC ++ * Called from stmmac via stmmac_dma_ops->reset ++ */ ++static int sun8i_dwmac_dma_reset(void __iomem *ioaddr) +{ -+ (*p)++; -+ (*p) %= max; ++ writel(0, ioaddr + EMAC_RX_CTL1); ++ writel(0, ioaddr + EMAC_TX_CTL1); ++ writel(0, ioaddr + EMAC_RX_FRM_FLT); ++ writel(0, ioaddr + EMAC_RX_DESC_LIST); ++ writel(0, ioaddr + EMAC_TX_DESC_LIST); ++ writel(0, ioaddr + EMAC_INT_EN); ++ writel(0x1FFFFFF, ioaddr + EMAC_INT_STA); ++ return 0; +} + -+/* Locking strategy: -+ * RX queue does not need any lock since only sun8i_emac_poll() access it. -+ * (All other RX modifiers (ringparam/ndo_stop) disable NAPI and so -+ * sun8i_emac_poll()) -+ * TX queue is handled by sun8i_emac_xmit(), sun8i_emac_complete_xmit() and -+ * sun8i_emac_tx_timeout() -+ * (All other RX modifiers (ringparam/ndo_stop) disable NAPI and stop queue) -+ * -+ * sun8i_emac_xmit() could fire only once (netif_tx_lock) -+ * sun8i_emac_complete_xmit() could fire only once (called from NAPI) -+ * sun8i_emac_tx_timeout() could fire only once (netif_tx_lock) and could not -+ * race with sun8i_emac_xmit (due to netif_tx_lock) and with -+ * sun8i_emac_complete_xmit which disable NAPI. -+ * -+ * So only sun8i_emac_xmit and sun8i_emac_complete_xmit could fire at the same -+ * time. -+ * But they never could modify the same descriptors: -+ * - sun8i_emac_complete_xmit() will modify only descriptors with empty status -+ * - sun8i_emac_xmit() will modify only descriptors set to DCLEAN -+ * Proper memory barriers ensure that descriptor set to DCLEAN could not be -+ * modified latter by sun8i_emac_complete_xmit(). -+ */ -+ -+/* Return the number of contiguous free descriptors -+ * starting from tx_slot ++/* sun8i_dwmac_dma_init() - initialize the EMAC ++ * Called from stmmac via stmmac_dma_ops->init + */ -+static int rb_tx_numfreedesc(struct net_device *ndev) ++static void sun8i_dwmac_dma_init(void __iomem *ioaddr, ++ struct stmmac_dma_cfg *dma_cfg, ++ u32 dma_tx, u32 dma_rx, int atds) +{ -+ struct sun8i_emac_priv *priv = netdev_priv(ndev); -+ -+ if (priv->tx_slot < priv->tx_dirty) -+ return priv->tx_dirty - priv->tx_slot; ++ /* Write TX and RX descriptors address */ ++ writel(dma_rx, ioaddr + EMAC_RX_DESC_LIST); ++ writel(dma_tx, ioaddr + EMAC_TX_DESC_LIST); + -+ return (priv->nbdesc_tx - priv->tx_slot) + priv->tx_dirty; ++ writel(EMAC_RX_INT | EMAC_TX_INT, ioaddr + EMAC_INT_EN); ++ writel(0x1FFFFFF, ioaddr + EMAC_INT_STA); +} + -+/* sun8i_emac_rx_skb - Allocate a skb in a DMA descriptor -+ * -+ * @ndev: The net_device for this interface -+ * @i: index of slot to fill -+ * -+ * Refill a DMA descriptor with a fresh skb and map it for DMA. -+*/ -+static int sun8i_emac_rx_skb(struct net_device *ndev, int i) ++/* sun8i_dwmac_dump_regs() - Dump EMAC address space ++ * Called from stmmac_dma_ops->dump_regs ++ * Used for ethtool ++ */ ++static void sun8i_dwmac_dump_regs(void __iomem *ioaddr, u32 *reg_space) +{ -+ struct sun8i_emac_priv *priv = netdev_priv(ndev); -+ struct dma_desc *ddesc; -+ struct sk_buff *skb; -+ -+ ddesc = priv->dd_rx + i; -+ -+ ddesc->ctl = 0; -+ -+ skb = netdev_alloc_skb_ip_align(ndev, DESC_BUF_MAX); -+ if (!skb) -+ return -ENOMEM; -+ -+ /* should not happen */ -+ if (unlikely(priv->rx_skb[i])) -+ dev_warn(priv->dev, "BUG: Leaking a skbuff\n"); -+ -+ priv->rx_skb[i] = skb; ++ int i; + -+ ddesc->buf_addr = dma_map_single(priv->dev, skb->data, -+ DESC_BUF_MAX, DMA_FROM_DEVICE); -+ if (dma_mapping_error(priv->dev, ddesc->buf_addr)) { -+ dev_err(priv->dev, "ERROR: Cannot map RX buffer for DMA\n"); -+ dev_kfree_skb(skb); -+ return -EFAULT; ++ for (i = 0; i < 0xC8; i += 4) { ++ if (i == 0x32 || i == 0x3C) ++ continue; ++ reg_space[i / 4] = readl(ioaddr + i); + } -+ /* We cannot direcly use cpu_to_le32() after dma_map_single -+ * since dma_mapping_error use it -+ */ -+ ddesc->buf_addr = cpu_to_le32(ddesc->buf_addr); -+ ddesc->ctl |= cpu_to_le32(DESC_BUF_MAX); -+ /* EMAC_COULD_BE_USED_BY_DMA must be the last value written */ -+ wmb(); -+ ddesc->status = EMAC_COULD_BE_USED_BY_DMA; -+ -+ return 0; +} + -+static void sun8i_emac_stop_tx(struct net_device *ndev) ++/* sun8i_dwmac_dump_mac_regs() - Dump EMAC address space ++ * Called from stmmac_ops->dump_regs ++ * Used for ethtool ++ */ ++static void sun8i_dwmac_dump_mac_regs(struct mac_device_info *hw, ++ u32 *reg_space) +{ -+ struct sun8i_emac_priv *priv = netdev_priv(ndev); -+ u32 v; -+ -+ netif_stop_queue(ndev); -+ -+ v = readl(priv->base + EMAC_TX_CTL0); -+ /* Disable transmitter after current reception */ -+ v &= ~EMAC_TX_TRANSMITTER_EN; -+ writel(v, priv->base + EMAC_TX_CTL0); -+ -+ v = readl(priv->base + EMAC_TX_CTL1); -+ /* Stop TX DMA */ -+ v &= ~EMAC_TX_DMA_EN; -+ writel(v, priv->base + EMAC_TX_CTL1); ++ int i; ++ void __iomem *ioaddr = hw->pcsr; + -+ /* We must be sure that all is stopped before leaving this function */ -+ wmb(); ++ for (i = 0; i < 0xC8; i += 4) { ++ if (i == 0x32 || i == 0x3C) ++ continue; ++ reg_space[i / 4] = readl(ioaddr + i); ++ } +} + -+static void sun8i_emac_stop_rx(struct net_device *ndev) ++static void sun8i_dwmac_enable_dma_irq(void __iomem *ioaddr) +{ -+ struct sun8i_emac_priv *priv = netdev_priv(ndev); -+ u32 v; -+ -+ v = readl(priv->base + EMAC_RX_CTL0); -+ /* Disable receiver after current reception */ -+ v &= ~EMAC_RX_RECEIVER_EN; -+ writel(v, priv->base + EMAC_RX_CTL0); -+ -+ v = readl(priv->base + EMAC_RX_CTL1); -+ /* Stop RX DMA */ -+ v &= ~EMAC_RX_DMA_EN; -+ writel(v, priv->base + EMAC_RX_CTL1); ++ writel(EMAC_RX_INT | EMAC_TX_INT, ioaddr + EMAC_INT_EN); ++} + -+ /* We must be sure that all is stopped before leaving this function */ -+ wmb(); ++static void sun8i_dwmac_disable_dma_irq(void __iomem *ioaddr) ++{ ++ writel(0, ioaddr + EMAC_INT_EN); +} + -+static void sun8i_emac_start_rx(struct net_device *ndev) ++static void sun8i_dwmac_dma_start_tx(void __iomem *ioaddr) +{ -+ struct sun8i_emac_priv *priv = netdev_priv(ndev); + u32 v; + -+ v = readl(priv->base + EMAC_RX_CTL0); -+ /* Enable receiver */ -+ v |= EMAC_RX_RECEIVER_EN; -+ writel(v, priv->base + EMAC_RX_CTL0); -+ -+ v = readl(priv->base + EMAC_RX_CTL1); -+ v |= EMAC_RX_DMA_START; -+ v |= EMAC_RX_DMA_EN; -+ writel(v, priv->base + EMAC_RX_CTL1); ++ v = readl(ioaddr + EMAC_TX_CTL0); ++ v |= EMAC_TX_TRANSMITTER_EN; ++ writel(v, ioaddr + EMAC_TX_CTL0); +} + -+static void sun8i_emac_start_tx(struct net_device *ndev) ++static void sun8i_dwmac_enable_dma_transmission(void __iomem *ioaddr) +{ -+ struct sun8i_emac_priv *priv = netdev_priv(ndev); + u32 v; + -+ v = readl(priv->base + EMAC_TX_CTL0); -+ v |= EMAC_TX_TRANSMITTER_EN; -+ writel(v, priv->base + EMAC_TX_CTL0); -+ -+ v = readl(priv->base + EMAC_TX_CTL1); ++ v = readl(ioaddr + EMAC_TX_CTL1); + v |= EMAC_TX_DMA_START; + v |= EMAC_TX_DMA_EN; -+ writel(v, priv->base + EMAC_TX_CTL1); ++ writel_relaxed(v, ioaddr + EMAC_TX_CTL1); +} + -+/* sun8i_emac_set_macaddr - Set MAC address for slot index -+ * -+ * @addr: the MAC address to set -+ * @index: The index of slot where to set address. -+ * -+ * The slot 0 is the main MAC address -+ */ -+static void sun8i_emac_set_macaddr(struct sun8i_emac_priv *priv, -+ const u8 *addr, int index) ++static void sun8i_dwmac_dma_stop_tx(void __iomem *ioaddr) +{ + u32 v; + -+ dev_info(priv->dev, "device MAC address slot %d %pM", index, addr); -+ -+ v = (addr[5] << 8) | addr[4]; -+ writel(v, priv->base + EMAC_MACADDR_HI + index * 8); -+ -+ v = (addr[3] << 24) | (addr[2] << 16) | (addr[1] << 8) | addr[0]; -+ writel(v, priv->base + EMAC_MACADDR_LO + index * 8); ++ v = readl(ioaddr + EMAC_TX_CTL0); ++ v &= ~EMAC_TX_TRANSMITTER_EN; ++ writel(v, ioaddr + EMAC_TX_CTL0); +} + -+static void sun8i_emac_set_link_mode(struct sun8i_emac_priv *priv) ++static void sun8i_dwmac_dma_start_rx(void __iomem *ioaddr) +{ + u32 v; + -+ v = readl(priv->base + EMAC_BASIC_CTL0); -+ -+ if (priv->duplex) -+ v |= EMAC_BCTL0_FD; -+ else -+ v &= ~EMAC_BCTL0_FD; -+ -+ v &= ~EMAC_BCTL0_SPEED_MASK; -+ -+ switch (priv->speed) { -+ case 1000: -+ break; -+ case 100: -+ v |= EMAC_BCTL0_SPEED_100 << EMAC_BCTL0_SPEED_SHIFT; -+ break; -+ case 10: -+ v |= EMAC_BCTL0_SPEED_10 << EMAC_BCTL0_SPEED_SHIFT; -+ break; -+ default: -+ dev_err(priv->dev, "Unsupported speed %d\n", priv->speed); -+ return; -+ } ++ v = readl(ioaddr + EMAC_RX_CTL0); ++ v |= EMAC_RX_RECEIVER_EN; ++ writel(v, ioaddr + EMAC_RX_CTL0); + -+ writel(v, priv->base + EMAC_BASIC_CTL0); ++ v = readl(ioaddr + EMAC_RX_CTL1); ++ v |= EMAC_RX_DMA_START; ++ v |= EMAC_RX_DMA_EN; ++ writel(v, ioaddr + EMAC_RX_CTL1); +} + -+static void sun8i_emac_flow_ctrl(struct sun8i_emac_priv *priv, int duplex, -+ int fc) ++static void sun8i_dwmac_dma_stop_rx(void __iomem *ioaddr) +{ -+ u32 flow = 0; ++ u32 v; + -+ flow = readl(priv->base + EMAC_RX_CTL0); -+ if (fc & EMAC_FLOW_RX) -+ flow |= BIT(16); -+ else -+ flow &= ~BIT(16); -+ writel(flow, priv->base + EMAC_RX_CTL0); ++ v = readl(ioaddr + EMAC_RX_CTL0); ++ v &= ~EMAC_RX_RECEIVER_EN; ++ writel(v, ioaddr + EMAC_RX_CTL0); + -+ flow = readl(priv->base + EMAC_TX_FLOW_CTL); -+ if (fc & EMAC_FLOW_TX) -+ flow |= BIT(0); -+ else -+ flow &= ~BIT(0); -+ writel(flow, priv->base + EMAC_TX_FLOW_CTL); ++ v = readl(ioaddr + EMAC_RX_CTL1); ++ v &= ~EMAC_RX_DMA_EN; ++ writel(v, ioaddr + EMAC_RX_CTL1); +} + -+/* Grab a frame into a skb from descriptor number i */ -+static int sun8i_emac_rx_from_ddesc(struct net_device *ndev, int i) ++static int sun8i_dwmac_dma_interrupt(void __iomem *ioaddr, ++ struct stmmac_extra_stats *x) +{ -+ struct sk_buff *skb; -+ struct sun8i_emac_priv *priv = netdev_priv(ndev); -+ struct dma_desc *ddesc = priv->dd_rx + i; -+ int frame_len; -+ int rxcsum_done = 0; -+ u32 dstatus = le32_to_cpu(ddesc->status); -+ -+ if (ndev->features & NETIF_F_RXCSUM) -+ rxcsum_done = 1; -+ -+ /* bit0/bit7 work only on IPv4/IPv6 TCP traffic, -+ * (not on ARP for example) so we do not raise rx_errors/discard frame -+ */ -+ /* the checksum or length of received frame's payload is wrong*/ -+ if (dstatus & BIT(0)) { -+ priv->estats.rx_payload_error++; -+ rxcsum_done = 0; -+ } -+ -+ /* RX_CRC_ERR */ -+ if (dstatus & BIT(1)) { -+ priv->ndev->stats.rx_errors++; -+ priv->ndev->stats.rx_crc_errors++; -+ priv->estats.rx_crc_error++; -+ goto discard_frame; -+ } ++ u32 v; ++ int ret = 0; + -+ /* RX_PHY_ERR */ -+ if ((dstatus & BIT(3))) { -+ priv->ndev->stats.rx_errors++; -+ priv->estats.rx_phy_error++; -+ goto discard_frame; -+ } ++ v = readl(ioaddr + EMAC_INT_STA); + -+ /* RX_LENGTH_ERR */ -+ if ((dstatus & BIT(4))) { -+ priv->ndev->stats.rx_errors++; -+ priv->ndev->stats.rx_length_errors++; -+ priv->estats.rx_length_error++; -+ goto discard_frame; ++ if (v & EMAC_TX_INT) { ++ ret |= handle_tx; ++ x->tx_normal_irq_n++; + } + -+ /* RX_COL_ERR */ -+ if ((dstatus & BIT(6))) { -+ priv->ndev->stats.rx_errors++; -+ priv->estats.rx_col_error++; -+ goto discard_frame; -+ } ++ if (v & EMAC_TX_DMA_STOP_INT) ++ x->tx_process_stopped_irq++; + -+ /* RX_HEADER_ERR */ -+ if ((dstatus & BIT(7))) { -+ priv->estats.rx_header_error++; -+ rxcsum_done = 0; -+ } ++ if (v & EMAC_TX_BUF_UA_INT) ++ x->tx_process_stopped_irq++; + -+ /* RX_OVERFLOW_ERR */ -+ if ((dstatus & BIT(11))) { -+ priv->ndev->stats.rx_over_errors++; -+ priv->estats.rx_overflow_error++; -+ goto discard_frame; -+ } ++ if (v & EMAC_TX_TIMEOUT_INT) ++ ret |= tx_hard_error; + -+ /* RX_NO_ENOUGTH_BUF_ERR */ -+ if ((dstatus & BIT(14))) { -+ priv->ndev->stats.rx_errors++; -+ priv->estats.rx_buf_error++; -+ goto discard_frame; ++ if (v & EMAC_TX_UNDERFLOW_INT) { ++ ret |= tx_hard_error; ++ x->tx_undeflow_irq++; + } + -+ /* BIT(9) is for the first frame, not having it is bad since we do not -+ * handle Jumbo frame -+ */ -+ if ((dstatus & EMAC_DSC_RX_FIRST) == 0) { -+ priv->ndev->stats.rx_errors++; -+ priv->estats.rx_invalid_error++; -+ goto discard_frame; -+ } ++ if (v & EMAC_TX_EARLY_INT) ++ x->tx_early_irq++; + -+ /* this frame is not the last */ -+ if ((dstatus & EMAC_DSC_RX_LAST) == 0) { -+ priv->ndev->stats.rx_errors++; -+ priv->estats.rx_invalid_error++; -+ goto discard_frame; ++ if (v & EMAC_RX_INT) { ++ ret |= handle_rx; ++ x->rx_normal_irq_n++; + } + -+ frame_len = (dstatus >> 16) & 0x3FFF; -+ if (!(ndev->features & NETIF_F_RXFCS)) -+ frame_len -= ETH_FCS_LEN; ++ if (v & EMAC_RX_BUF_UA_INT) ++ x->rx_buf_unav_irq++; + -+ skb = priv->rx_skb[i]; -+ -+ netif_dbg(priv, rx_status, priv->ndev, -+ "%s from %02d %pad len=%d status=%x st=%x\n", -+ __func__, i, &ddesc, frame_len, dstatus, -+ cpu_to_le32(ddesc->ctl)); ++ if (v & EMAC_RX_DMA_STOP_INT) ++ x->rx_process_stopped_irq++; + -+ skb_put(skb, frame_len); ++ if (v & EMAC_RX_TIMEOUT_INT) ++ ret |= tx_hard_error; + -+ dma_unmap_single(priv->dev, le32_to_cpu(ddesc->buf_addr), DESC_BUF_MAX, -+ DMA_FROM_DEVICE); -+ skb->protocol = eth_type_trans(skb, priv->ndev); -+ if (rxcsum_done) { -+ skb->ip_summed = CHECKSUM_UNNECESSARY; -+ priv->estats.rx_hw_csum++; -+ } else { -+ skb->ip_summed = CHECKSUM_PARTIAL; ++ if (v & EMAC_RX_OVERFLOW_INT) { ++ ret |= tx_hard_error; ++ x->rx_overflow_irq++; + } + -+ priv->ndev->stats.rx_packets++; -+ priv->ndev->stats.rx_bytes += frame_len; -+ priv->rx_skb[i] = NULL; ++ if (v & EMAC_RX_EARLY_INT) ++ x->rx_early_irq++; + -+ sun8i_emac_rx_skb(ndev, i); -+ napi_gro_receive(&priv->napi, skb); ++ if (v & EMAC_RGMII_STA_INT) ++ x->irq_rgmii_n++; + -+ return 0; -+ /* If the frame need to be dropped, we simply reuse the buffer */ -+discard_frame: -+ ddesc->ctl = cpu_to_le32(DESC_BUF_MAX); -+ /* EMAC_COULD_BE_USED_BY_DMA must be the last value written */ -+ wmb(); -+ ddesc->status = EMAC_COULD_BE_USED_BY_DMA; -+ return 0; ++ writel(v, ioaddr + EMAC_INT_STA); ++ ++ return ret; +} + -+/* Iterate over dma_desc for finding completed xmit. -+ * -+ * The problem is: how to know that a descriptor is sent and not just in -+ * preparation. -+ * Need to have status=0 and st set but this is the state of first frame just -+ * before setting the own-by-DMA bit. -+ * The solution is to used the artificial value DCLEAN. -+ */ -+static int sun8i_emac_complete_xmit(struct net_device *ndev, int budget) ++static void sun8i_dwmac_dma_operation_mode(void __iomem *ioaddr, int txmode, ++ int rxmode, int rxfifosz) +{ -+ struct sun8i_emac_priv *priv = netdev_priv(ndev); -+ struct dma_desc *ddesc; -+ int frame_len; -+ int work = 0; -+ unsigned int bytes_compl = 0, pkts_compl = 0; -+ u32 dstatus; -+ -+ do { -+ ddesc = priv->dd_tx + priv->tx_dirty; ++ u32 v; + -+ if (ddesc->status & EMAC_COULD_BE_USED_BY_DMA) -+ goto xmit_end; ++ v = readl(ioaddr + EMAC_TX_CTL1); ++ if (txmode == SF_DMA_MODE) { ++ v |= EMAC_TX_MD; ++ /* Undocumented bit (called TX_NEXT_FRM in BSP), the original ++ * comment is ++ * "Operating on second frame increase the performance ++ * especially when transmit store-and-forward is used." ++ */ ++ v |= EMAC_TX_NEXT_FRM; ++ } else { ++ v &= ~EMAC_TX_MD; ++ v &= ~EMAC_TX_TH_MASK; ++ if (txmode < 64) ++ v |= EMAC_TX_TH_64; ++ else if (txmode < 128) ++ v |= EMAC_TX_TH_128; ++ else if (txmode < 192) ++ v |= EMAC_TX_TH_192; ++ else if (txmode < 256) ++ v |= EMAC_TX_TH_256; ++ } ++ writel(v, ioaddr + EMAC_TX_CTL1); ++ ++ v = readl(ioaddr + EMAC_RX_CTL1); ++ if (rxmode == SF_DMA_MODE) { ++ v |= EMAC_RX_MD; ++ } else { ++ v &= ~EMAC_RX_MD; ++ v &= ~EMAC_RX_TH_MASK; ++ if (rxmode < 32) ++ v |= EMAC_RX_TH_32; ++ else if (rxmode < 64) ++ v |= EMAC_RX_TH_64; ++ else if (rxmode < 96) ++ v |= EMAC_RX_TH_96; ++ else if (rxmode < 128) ++ v |= EMAC_RX_TH_128; ++ } ++ writel(v, ioaddr + EMAC_RX_CTL1); ++} + -+ if (ddesc->status == DCLEAN) -+ goto xmit_end; ++static const struct stmmac_dma_ops sun8i_dwmac_dma_ops = { ++ .reset = sun8i_dwmac_dma_reset, ++ .init = sun8i_dwmac_dma_init, ++ .dump_regs = sun8i_dwmac_dump_regs, ++ .dma_mode = sun8i_dwmac_dma_operation_mode, ++ .enable_dma_transmission = sun8i_dwmac_enable_dma_transmission, ++ .enable_dma_irq = sun8i_dwmac_enable_dma_irq, ++ .disable_dma_irq = sun8i_dwmac_disable_dma_irq, ++ .start_tx = sun8i_dwmac_dma_start_tx, ++ .stop_tx = sun8i_dwmac_dma_stop_tx, ++ .start_rx = sun8i_dwmac_dma_start_rx, ++ .stop_rx = sun8i_dwmac_dma_stop_rx, ++ .dma_interrupt = sun8i_dwmac_dma_interrupt, ++}; + -+ dstatus = cpu_to_le32(ddesc->status); ++static int sun8i_dwmac_init(struct platform_device *pdev, void *priv) ++{ ++ struct sunxi_priv_data *gmac = priv; ++ int ret; + -+ if (ddesc->status == 0 && !ddesc->ctl) { -+ dev_err(priv->dev, "BUG: reached the void %d %d\n", -+ priv->tx_dirty, priv->tx_slot); -+ goto xmit_end; ++ if (gmac->regulator) { ++ ret = regulator_enable(gmac->regulator); ++ if (ret) { ++ dev_err(&pdev->dev, "Fail to enable regulator\n"); ++ return ret; + } ++ } + -+ /* TX_UNDERFLOW_ERR */ -+ if (dstatus & BIT(1)) -+ priv->ndev->stats.tx_errors++; -+ /* TX_DEFER_ERR */ -+ if (dstatus & BIT(2)) -+ priv->ndev->stats.tx_errors++; -+ /* BIT 6:3 numbers of collisions */ -+ if (dstatus & 0x78) -+ priv->ndev->stats.collisions += -+ (dstatus & 0x78) >> 3; -+ /* TX_COL_ERR_1 */ -+ if (dstatus & BIT(8)) -+ priv->ndev->stats.tx_errors++; -+ /* TX_COL_ERR_0 */ -+ if (dstatus & BIT(9)) -+ priv->ndev->stats.tx_errors++; -+ /* TX_CRS_ERR */ -+ if (dstatus & BIT(10)) -+ priv->ndev->stats.tx_carrier_errors++; -+ /* TX_PAYLOAD_ERR */ -+ if (dstatus & BIT(12)) -+ priv->ndev->stats.tx_errors++; -+ /* TX_LENGTH_ERR */ -+ if (dstatus & BIT(14)) -+ priv->ndev->stats.tx_errors++; -+ /* TX_HEADER_ERR */ -+ if (dstatus & BIT(16)) -+ priv->ndev->stats.tx_errors++; -+ -+ frame_len = le32_to_cpu(ddesc->ctl) & 0x3FFF; -+ bytes_compl += frame_len; -+ -+ if (priv->txl[priv->tx_dirty].map == MAP_SINGLE) -+ dma_unmap_single(priv->dev, -+ le32_to_cpu(ddesc->buf_addr), -+ frame_len, DMA_TO_DEVICE); -+ else -+ dma_unmap_page(priv->dev, -+ le32_to_cpu(ddesc->buf_addr), -+ frame_len, DMA_TO_DEVICE); -+ /* we can free skb only on last frame */ -+ if (priv->txl[priv->tx_dirty].skb && -+ (ddesc->ctl & EMAC_DSC_TX_LAST)) { -+ dev_kfree_skb_irq(priv->txl[priv->tx_dirty].skb); -+ pkts_compl++; -+ } ++ ret = clk_prepare_enable(gmac->tx_clk); ++ if (ret) { ++ if (gmac->regulator) ++ regulator_disable(gmac->regulator); ++ dev_err(&pdev->dev, "Could not enable AHB clock\n"); ++ return ret; ++ } + -+ priv->txl[priv->tx_dirty].skb = NULL; -+ priv->txl[priv->tx_dirty].map = 0; -+ ddesc->ctl = 0; -+ /* setting status to DCLEAN is the last value to be set */ -+ wmb(); -+ ddesc->status = DCLEAN; -+ work++; -+ -+ rb_inc(&priv->tx_dirty, priv->nbdesc_tx); -+ ddesc = priv->dd_tx + priv->tx_dirty; -+ } while (ddesc->ctl && -+ !(ddesc->status & EMAC_COULD_BE_USED_BY_DMA) && -+ work < budget); -+ -+xmit_end: -+ netdev_completed_queue(ndev, pkts_compl, bytes_compl); -+ -+ /* if we don't have handled all packets */ -+ if (work < budget) -+ work = 0; -+ -+ if (netif_queue_stopped(ndev) && -+ rb_tx_numfreedesc(ndev) > MAX_SKB_FRAGS + 1) -+ netif_wake_queue(ndev); -+ return work; ++ return 0; +} + -+static int sun8i_emac_poll(struct napi_struct *napi, int budget) ++static void sun8i_dwmac_core_init(struct mac_device_info *hw, int mtu) +{ -+ struct sun8i_emac_priv *priv = -+ container_of(napi, struct sun8i_emac_priv, napi); -+ struct net_device *ndev = priv->ndev; -+ int worked; -+ struct dma_desc *ddesc; -+ -+ priv->estats.napi_schedule++; -+ worked = sun8i_emac_complete_xmit(ndev, budget); -+ -+ ddesc = priv->dd_rx + priv->rx_dirty; -+ while (!(ddesc->status & EMAC_COULD_BE_USED_BY_DMA) && -+ worked < budget) { -+ sun8i_emac_rx_from_ddesc(ndev, priv->rx_dirty); -+ worked++; -+ rb_inc(&priv->rx_dirty, priv->nbdesc_rx); -+ ddesc = priv->dd_rx + priv->rx_dirty; -+ }; -+ if (worked < budget) { -+ priv->estats.napi_underflow++; -+ napi_complete(&priv->napi); -+ writel(EMAC_RX_INT | EMAC_TX_INT, priv->base + EMAC_INT_EN); -+ } -+ return worked; ++ void __iomem *ioaddr = hw->pcsr; ++ u32 v; ++ ++ v = (8 << EMAC_BURSTLEN_SHIFT); /* burst len */ ++ writel(v, ioaddr + EMAC_BASIC_CTL1); +} + -+static int sun8i_mdio_read(struct mii_bus *bus, int phy_addr, int phy_reg) ++static void sun8i_dwmac_set_umac_addr(struct mac_device_info *hw, ++ unsigned char *addr, ++ unsigned int reg_n) +{ -+ struct net_device *ndev = bus->priv; -+ struct sun8i_emac_priv *priv = netdev_priv(ndev); -+ int err; -+ u32 reg; -+ -+ err = readl_poll_timeout(priv->base + EMAC_MDIO_CMD, reg, -+ !(reg & MDIO_CMD_MII_BUSY), 100, 10000); -+ if (err) { -+ dev_err(priv->dev, "%s timeout %x\n", __func__, reg); -+ return err; -+ } -+ -+ reg &= ~MDIO_CMD_MII_WRITE; -+ reg &= ~MDIO_CMD_MII_PHY_REG_ADDR_MASK; -+ reg |= (phy_reg << MDIO_CMD_MII_PHY_REG_ADDR_SHIFT) & -+ MDIO_CMD_MII_PHY_REG_ADDR_MASK; -+ -+ reg &= ~MDIO_CMD_MII_PHY_ADDR_MASK; -+ -+ reg |= (phy_addr << MDIO_CMD_MII_PHY_ADDR_SHIFT) & -+ MDIO_CMD_MII_PHY_ADDR_MASK; -+ -+ reg |= MDIO_CMD_MII_BUSY; -+ -+ writel(reg, priv->base + EMAC_MDIO_CMD); -+ -+ err = readl_poll_timeout(priv->base + EMAC_MDIO_CMD, reg, -+ !(reg & MDIO_CMD_MII_BUSY), 100, 10000); ++ void __iomem *ioaddr = hw->pcsr; ++ u32 v; + -+ if (err) { -+ dev_err(priv->dev, "%s timeout %x\n", __func__, reg); -+ return err; ++ stmmac_set_mac_addr(ioaddr, addr, EMAC_MACADDR_HI(reg_n), ++ EMAC_MACADDR_LO(reg_n)); ++ if (reg_n > 0) { ++ v = readl(ioaddr + EMAC_MACADDR_HI(reg_n)); ++ v |= MAC_ADDR_TYPE_DST; ++ writel(v, ioaddr + EMAC_MACADDR_HI(reg_n)); + } -+ -+ return readl(priv->base + EMAC_MDIO_DATA); +} + -+static int sun8i_mdio_write(struct mii_bus *bus, int phy_addr, int phy_reg, -+ u16 data) ++static void sun8i_dwmac_get_umac_addr(struct mac_device_info *hw, ++ unsigned char *addr, ++ unsigned int reg_n) +{ -+ struct net_device *ndev = bus->priv; -+ struct sun8i_emac_priv *priv = netdev_priv(ndev); -+ u32 reg; -+ int err; ++ void __iomem *ioaddr = hw->pcsr; + -+ err = readl_poll_timeout(priv->base + EMAC_MDIO_CMD, reg, -+ !(reg & MDIO_CMD_MII_BUSY), 100, 10000); -+ if (err) { -+ dev_err(priv->dev, "%s timeout %x\n", __func__, reg); -+ return err; -+ } -+ -+ reg &= ~MDIO_CMD_MII_PHY_REG_ADDR_MASK; -+ reg |= (phy_reg << MDIO_CMD_MII_PHY_REG_ADDR_SHIFT) & -+ MDIO_CMD_MII_PHY_REG_ADDR_MASK; -+ -+ reg &= ~MDIO_CMD_MII_PHY_ADDR_MASK; -+ reg |= (phy_addr << MDIO_CMD_MII_PHY_ADDR_SHIFT) & -+ MDIO_CMD_MII_PHY_ADDR_MASK; ++ stmmac_get_mac_addr(ioaddr, addr, EMAC_MACADDR_HI(reg_n), ++ EMAC_MACADDR_LO(reg_n)); ++} + -+ reg |= MDIO_CMD_MII_WRITE; -+ reg |= MDIO_CMD_MII_BUSY; ++/* caution this function must return non 0 to work */ ++static int sun8i_dwmac_rx_ipc_enable(struct mac_device_info *hw) ++{ ++ void __iomem *ioaddr = hw->pcsr; ++ u32 v; + -+ writel(reg, priv->base + EMAC_MDIO_CMD); -+ writel(data, priv->base + EMAC_MDIO_DATA); ++ v = readl(ioaddr + EMAC_RX_CTL0); ++ v |= EMAC_RX_DO_CRC; ++ writel(v, ioaddr + EMAC_RX_CTL0); + -+ err = readl_poll_timeout(priv->base + EMAC_MDIO_CMD, reg, -+ !(reg & MDIO_CMD_MII_BUSY), 100, 10000); -+ if (err) { -+ dev_err(priv->dev, "%s timeout %x\n", __func__, reg); -+ return err; -+ } -+ -+ return 0; ++ return 1; +} + -+static int sun8i_emac_mdio_register(struct net_device *ndev) ++static void sun8i_dwmac_set_filter(struct mac_device_info *hw, ++ struct net_device *dev) +{ -+ struct sun8i_emac_priv *priv = netdev_priv(ndev); -+ struct mii_bus *bus; -+ int ret; -+ -+ bus = mdiobus_alloc(); -+ if (!bus) { -+ netdev_err(ndev, "Failed to allocate a new mdio bus\n"); -+ return -ENOMEM; -+ } ++ void __iomem *ioaddr = hw->pcsr; ++ u32 v; ++ int i = 0; ++ struct netdev_hw_addr *ha; + -+ bus->name = dev_name(priv->dev); -+ bus->read = &sun8i_mdio_read; -+ bus->write = &sun8i_mdio_write; -+ snprintf(bus->id, MII_BUS_ID_SIZE, "%s-%x", bus->name, priv->dev->id); ++ v = readl(ioaddr + EMAC_RX_FRM_FLT); + -+ bus->parent = priv->dev; -+ bus->priv = ndev; ++ v |= EMAC_FRM_FLT_CTL; + -+ ret = of_mdiobus_register(bus, priv->mdio_node); -+ if (ret) { -+ netdev_err(ndev, "Could not register a MDIO bus: %d\n", ret); -+ mdiobus_free(bus); -+ return ret; ++ if (dev->flags & IFF_PROMISC) { ++ v = EMAC_FRM_FLT_RXALL; ++ } else if (dev->flags & IFF_ALLMULTI) { ++ v = EMAC_FRM_FLT_MULTICAST; ++ } else if (!netdev_mc_empty(dev)) { ++ netdev_for_each_mc_addr(ha, dev) { ++ i++; ++ sun8i_dwmac_set_umac_addr(hw, ha->addr, i); ++ } + } + -+ priv->mdio = bus; -+ -+ return 0; ++ if (netdev_uc_count(dev) + i > hw->unicast_filter_entries) { ++ netdev_info(dev, "Too many address, switching to promiscuous\n"); ++ v = EMAC_FRM_FLT_RXALL; ++ } else { ++ netdev_for_each_uc_addr(ha, dev) { ++ i++; ++ sun8i_dwmac_set_umac_addr(hw, ha->addr, i); ++ } ++ } ++ writel(v, ioaddr + EMAC_RX_FRM_FLT); +} + -+static void sun8i_emac_mdio_unregister(struct net_device *ndev) ++static void sun8i_dwmac_flow_ctrl(struct mac_device_info *hw, ++ unsigned int duplex, ++ unsigned int fc, unsigned int pause_time) +{ -+ struct sun8i_emac_priv *priv = netdev_priv(ndev); ++ void __iomem *ioaddr = hw->pcsr; ++ u32 v; ++ ++ v = readl(ioaddr + EMAC_RX_CTL0); ++ if (fc == FLOW_AUTO) ++ v |= EMAC_RX_FLOW_CTL_EN; ++ else ++ v &= ~EMAC_RX_FLOW_CTL_EN; ++ writel(v, ioaddr + EMAC_RX_CTL0); + -+ mdiobus_unregister(priv->mdio); -+ mdiobus_free(priv->mdio); ++ v = readl(ioaddr + EMAC_TX_FLOW_CTL); ++ if (fc == FLOW_AUTO) ++ v |= EMAC_TX_FLOW_CTL_EN; ++ else ++ v &= ~EMAC_TX_FLOW_CTL_EN; ++ writel(v, ioaddr + EMAC_TX_FLOW_CTL); +} + -+/* Run within phydev->lock */ -+static void sun8i_emac_adjust_link(struct net_device *ndev) ++static int sun8i_dwmac_reset(struct stmmac_priv *priv) +{ -+ struct sun8i_emac_priv *priv = netdev_priv(ndev); -+ struct phy_device *phydev = ndev->phydev; -+ int new_state = 0; -+ -+ netif_dbg(priv, link, priv->ndev, -+ "%s link=%x duplex=%x speed=%x\n", __func__, -+ phydev->link, phydev->duplex, phydev->speed); -+ if (!phydev) -+ return; -+ -+ if (phydev->link) { -+ if (phydev->duplex != priv->duplex) { -+ new_state = 1; -+ priv->duplex = phydev->duplex; -+ } -+ if (phydev->pause) -+ sun8i_emac_flow_ctrl(priv, phydev->duplex, -+ priv->flow_ctrl); ++ u32 v; ++ int err; + -+ if (phydev->speed != priv->speed) { -+ new_state = 1; -+ priv->speed = phydev->speed; -+ } ++ v = readl(priv->ioaddr + EMAC_BASIC_CTL1); ++ writel(v | 0x01, priv->ioaddr + EMAC_BASIC_CTL1); + -+ if (priv->link == 0) { -+ new_state = 1; -+ priv->link = phydev->link; -+ } ++ err = readl_poll_timeout(priv->ioaddr + EMAC_BASIC_CTL1, v, ++ !(v & 0x01), 100, 10000); + -+ netif_dbg(priv, link, priv->ndev, -+ "%s new=%d link=%d pause=%d\n", -+ __func__, new_state, priv->link, phydev->pause); -+ if (new_state) -+ sun8i_emac_set_link_mode(priv); -+ } else if (priv->link != phydev->link) { -+ new_state = 1; -+ priv->link = 0; -+ priv->speed = 0; -+ priv->duplex = -1; ++ if (err) { ++ dev_err(priv->device, "EMAC reset timeout\n"); ++ return -EFAULT; + } -+ -+ if (new_state) -+ phy_print_status(phydev); ++ return 0; +} + -+/* H3 specific bits for EPHY */ -+#define H3_EPHY_ADDR_SHIFT 20 -+#define H3_EPHY_LED_POL BIT(17) /* 1: active low, 0: active high */ -+#define H3_EPHY_SHUTDOWN BIT(16) /* 1: shutdown, 0: power up */ -+#define H3_EPHY_SELECT BIT(15) /* 1: internal PHY, 0: external PHY */ -+ -+/* H3/A64 specific bits */ -+#define SYSCON_RMII_EN BIT(13) /* 1: enable RMII (overrides EPIT) */ -+ -+/* Generic system control EMAC_CLK bits */ -+#define SYSCON_ETXDC_MASK GENMASK(2, 0) -+#define SYSCON_ETXDC_SHIFT 10 -+#define SYSCON_ERXDC_MASK GENMASK(4, 0) -+#define SYSCON_ERXDC_SHIFT 5 -+/* EMAC PHY Interface Type */ -+#define SYSCON_EPIT BIT(2) /* 1: RGMII, 0: MII */ -+#define SYSCON_ETCS_MASK GENMASK(1, 0) -+#define SYSCON_ETCS_MII 0x0 -+#define SYSCON_ETCS_EXT_GMII 0x1 -+#define SYSCON_ETCS_INT_GMII 0x2 -+#define SYSCON_EMAC_REG 0x30 -+ -+static int sun8i_emac_set_syscon(struct net_device *ndev) ++static int sun8i_dwmac_set_syscon(struct stmmac_priv *priv) +{ -+ struct sun8i_emac_priv *priv = netdev_priv(ndev); -+ struct device_node *node = priv->dev->of_node; ++ struct sunxi_priv_data *gmac = priv->plat->bsp_priv; ++ struct device_node *node = priv->device->of_node; + int ret; + u32 reg, val; + -+ reg = priv->variant->default_syscon_value; ++ regmap_read(gmac->regmap, SYSCON_EMAC_REG, &val); ++ reg = gmac->variant->default_syscon_value; ++ if (reg != val) ++ dev_warn(priv->device, ++ "Current syscon value is not the default %x (expect %x)\n", ++ val, reg); + -+ if (priv->variant->internal_phy) { -+ if (!priv->use_internal_phy) { ++ if (gmac->variant->internal_phy) { ++ if (!gmac->use_internal_phy) { + /* switch to external PHY interface */ + reg &= ~H3_EPHY_SELECT; + } else { + reg |= H3_EPHY_SELECT; + reg &= ~H3_EPHY_SHUTDOWN; ++ dev_dbg(priv->device, "Select internal_phy %x\n", reg); + -+ if (of_property_read_bool(priv->phy_node, ++ if (of_property_read_bool(priv->plat->phy_node, + "allwinner,leds-active-low")) + reg |= H3_EPHY_LED_POL; ++ else ++ reg &= ~H3_EPHY_LED_POL; + -+ ret = of_mdio_parse_addr(priv->dev, priv->phy_node); ++ ret = of_mdio_parse_addr(priv->device, ++ priv->plat->phy_node); + if (ret < 0) { -+ netdev_err(ndev, "Could not parse MDIO addr\n"); ++ dev_err(priv->device, "Could not parse MDIO addr\n"); + return ret; + } + /* of_mdio_parse_addr returns a valid (0 ~ 31) PHY @@ -1079,29 +982,35 @@ index 0000000..bc74467 + } + + if (!of_property_read_u32(node, "allwinner,tx-delay", &val)) { ++ dev_dbg(priv->device, "set tx-delay to %x\n", val); + if (val <= SYSCON_ETXDC_MASK) { + reg &= ~(SYSCON_ETXDC_MASK << SYSCON_ETXDC_SHIFT); + reg |= (val << SYSCON_ETXDC_SHIFT); + } else { -+ netdev_warn(ndev, "Invalid TX clock delay: %d\n", val); ++ dev_err(priv->device, "Invalid TX clock delay: %d\n", ++ val); ++ return -EINVAL; + } + } + + if (!of_property_read_u32(node, "allwinner,rx-delay", &val)) { ++ dev_dbg(priv->device, "set rx-delay to %x\n", val); + if (val <= SYSCON_ERXDC_MASK) { + reg &= ~(SYSCON_ERXDC_MASK << SYSCON_ERXDC_SHIFT); + reg |= (val << SYSCON_ERXDC_SHIFT); + } else { -+ netdev_warn(ndev, "Invalid RX clock delay: %d\n", val); ++ dev_err(priv->device, "Invalid RX clock delay: %d\n", ++ val); ++ return -EINVAL; + } + } + + /* Clear interface mode bits */ + reg &= ~(SYSCON_ETCS_MASK | SYSCON_EPIT); -+ if (priv->variant->support_rmii) ++ if (gmac->variant->support_rmii) + reg &= ~SYSCON_RMII_EN; + -+ switch (priv->phy_interface) { ++ switch (priv->plat->interface) { + case PHY_INTERFACE_MODE_MII: + /* default */ + break; @@ -1112,1402 +1021,483 @@ index 0000000..bc74467 + reg |= SYSCON_RMII_EN | SYSCON_ETCS_EXT_GMII; + break; + default: -+ netdev_err(ndev, "Unsupported interface mode: %s", -+ phy_modes(priv->phy_interface)); ++ dev_err(priv->device, "Unsupported interface mode: %s", ++ phy_modes(priv->plat->interface)); + return -EINVAL; + } + -+ regmap_write(priv->regmap, SYSCON_EMAC_REG, reg); ++ regmap_write(gmac->regmap, SYSCON_EMAC_REG, reg); + + return 0; +} + -+static void sun8i_emac_unset_syscon(struct net_device *ndev) ++static void sun8i_dwmac_unset_syscon(struct sunxi_priv_data *gmac) +{ -+ struct sun8i_emac_priv *priv = netdev_priv(ndev); -+ u32 reg = priv->variant->default_syscon_value; ++ u32 reg = gmac->variant->default_syscon_value; + -+ regmap_write(priv->regmap, SYSCON_EMAC_REG, reg); -+} -+ -+/* Set Management Data Clock, must be call after device reset */ -+static void sun8i_emac_set_mdc(struct net_device *ndev) -+{ -+ struct sun8i_emac_priv *priv = netdev_priv(ndev); -+ unsigned long rate; -+ u32 reg; -+ -+ rate = clk_get_rate(priv->ahb_clk); -+ if (rate > 160000000) -+ reg = 0x3 << 20; /* AHB / 128 */ -+ else if (rate > 80000000) -+ reg = 0x2 << 20; /* AHB / 64 */ -+ else if (rate > 40000000) -+ reg = 0x1 << 20; /* AHB / 32 */ -+ else -+ reg = 0x0 << 20; /* AHB / 16 */ -+ netif_dbg(priv, link, ndev, "MDC auto : %x\n", reg); -+ writel(reg, priv->base + EMAC_MDIO_CMD); ++ regmap_write(gmac->regmap, SYSCON_EMAC_REG, reg); +} + -+/* "power" the device, by enabling clk/reset/regulators */ -+static int sun8i_emac_power(struct net_device *ndev) ++static int sun8i_dwmac_power_internal_phy(struct stmmac_priv *priv) +{ -+ struct sun8i_emac_priv *priv = netdev_priv(ndev); ++ struct sunxi_priv_data *gmac = priv->plat->bsp_priv; + int ret; + -+ ret = clk_prepare_enable(priv->ahb_clk); -+ if (ret) { -+ netdev_err(ndev, "Could not enable AHB clock\n"); -+ return ret; -+ } -+ -+ if (priv->rst_mac) { -+ ret = reset_control_deassert(priv->rst_mac); -+ if (ret) { -+ netdev_err(ndev, "Could not deassert reset\n"); -+ goto err_reset; -+ } -+ } -+ -+ if (priv->ephy_clk) { -+ ret = clk_prepare_enable(priv->ephy_clk); ++ if (gmac->ephy_clk) { ++ ret = clk_prepare_enable(gmac->ephy_clk); + if (ret) { -+ netdev_err(ndev, "Could not enable EPHY clock\n"); -+ goto err_ephy_clk; ++ dev_err(priv->device, "Cannot enable ephy\n"); ++ return ret; + } + } + -+ if (priv->rst_ephy) { -+ ret = reset_control_deassert(priv->rst_ephy); ++ if (gmac->rst_ephy) { ++ ret = reset_control_deassert(gmac->rst_ephy); + if (ret) { -+ netdev_err(ndev, "Could not deassert EPHY reset\n"); -+ goto err_ephy_reset; ++ dev_err(priv->device, "Cannot deassert ephy\n"); ++ clk_disable_unprepare(gmac->ephy_clk); ++ return ret; + } + } + + return 0; -+ -+err_ephy_reset: -+ if (priv->ephy_clk) -+ clk_disable_unprepare(priv->ephy_clk); -+err_ephy_clk: -+ if (priv->rst_mac) -+ reset_control_assert(priv->rst_mac); -+err_reset: -+ clk_disable_unprepare(priv->ahb_clk); -+ return ret; +} + -+/* "Unpower" the device, disabling clocks and regulators, asserting reset */ -+static void sun8i_emac_unpower(struct net_device *ndev) ++static int sun8i_dwmac_unpower_internal_phy(struct sunxi_priv_data *gmac) +{ -+ struct sun8i_emac_priv *priv = netdev_priv(ndev); -+ -+ if (priv->rst_ephy) -+ reset_control_assert(priv->rst_ephy); -+ -+ if (priv->ephy_clk) -+ clk_disable_unprepare(priv->ephy_clk); -+ -+ if (priv->rst_mac) -+ reset_control_assert(priv->rst_mac); -+ -+ clk_disable_unprepare(priv->ahb_clk); -+} -+ -+static int sun8i_emac_init(struct net_device *ndev) -+{ -+ struct sun8i_emac_priv *priv = netdev_priv(ndev); -+ struct device_node *node = priv->dev->of_node; -+ const u8 *addr; -+ -+ /* Try to get MAC address from DT, or assign a random one */ -+ addr = of_get_mac_address(node); -+ if (addr) -+ ether_addr_copy(ndev->dev_addr, addr); -+ else -+ eth_hw_addr_random(ndev); -+ -+ return 0; -+} -+ -+static int sun8i_emac_mdio_probe(struct net_device *ndev) -+{ -+ struct sun8i_emac_priv *priv = netdev_priv(ndev); -+ struct phy_device *phydev = NULL; -+ -+ phydev = of_phy_connect(ndev, priv->phy_node, &sun8i_emac_adjust_link, -+ 0, priv->phy_interface); -+ -+ if (!phydev) { -+ netdev_err(ndev, "Could not attach to PHY\n"); -+ return -ENODEV; -+ } -+ -+ phy_attached_info(phydev); -+ -+ /* mask with MAC supported features */ -+ phydev->supported &= PHY_GBIT_FEATURES; -+ phydev->advertising = phydev->supported; -+ -+ priv->link = 0; -+ priv->speed = 0; -+ priv->duplex = -1; -+ -+ return 0; -+} -+ -+/* Allocate both RX and TX ring buffer and init them -+ * This function also write the startbase of thoses ring in the device. -+ * All structures that help managing thoses rings are also handled -+ * by this functions (rx_skb/txl) -+ */ -+static int sun8i_emac_alloc_rings(struct net_device *ndev) -+{ -+ struct sun8i_emac_priv *priv = netdev_priv(ndev); -+ struct dma_desc *ddesc; -+ int err, i; -+ -+ priv->rx_skb = kcalloc(priv->nbdesc_rx, sizeof(struct sk_buff *), -+ GFP_KERNEL); -+ if (!priv->rx_skb) { -+ err = -ENOMEM; -+ goto rx_skb_error; -+ } -+ priv->txl = kcalloc(priv->nbdesc_tx, sizeof(struct txinfo), GFP_KERNEL); -+ if (!priv->txl) { -+ err = -ENOMEM; -+ goto tx_error; -+ } -+ -+ /* allocate/init RX ring */ -+ priv->dd_rx = dma_zalloc_coherent(priv->dev, -+ priv->nbdesc_rx * sizeof(struct dma_desc), -+ &priv->dd_rx_phy, GFP_KERNEL); -+ if (!priv->dd_rx) { -+ dev_err(priv->dev, "ERROR: cannot allocate DMA RX buffer"); -+ err = -ENOMEM; -+ goto dma_rx_error; -+ } -+ ddesc = priv->dd_rx; -+ for (i = 0; i < priv->nbdesc_rx; i++) { -+ sun8i_emac_rx_skb(ndev, i); -+ ddesc->next = cpu_to_le32(priv->dd_rx_phy + (i + 1) -+ * sizeof(struct dma_desc)); -+ ddesc++; -+ } -+ /* last descriptor point back to first one */ -+ ddesc--; -+ ddesc->next = cpu_to_le32(priv->dd_rx_phy); -+ -+ /* allocate/init TX ring */ -+ priv->dd_tx = dma_zalloc_coherent(priv->dev, -+ priv->nbdesc_tx * sizeof(struct dma_desc), -+ &priv->dd_tx_phy, GFP_KERNEL); -+ if (!priv->dd_tx) { -+ dev_err(priv->dev, "ERROR: cannot allocate DMA TX buffer"); -+ err = -ENOMEM; -+ goto dma_tx_error; -+ } -+ ddesc = priv->dd_tx; -+ for (i = 0; i < priv->nbdesc_tx; i++) { -+ ddesc->status = DCLEAN; -+ ddesc->ctl = 0; -+ ddesc->next = cpu_to_le32(priv->dd_tx_phy + (i + 1) -+ * sizeof(struct dma_desc)); -+ ddesc++; -+ } -+ /* last descriptor point back to first one */ -+ ddesc--; -+ ddesc->next = cpu_to_le32(priv->dd_tx_phy); -+ i--; -+ -+ priv->tx_slot = 0; -+ priv->tx_dirty = 0; -+ priv->rx_dirty = 0; -+ -+ /* write start of RX ring descriptor */ -+ writel(priv->dd_rx_phy, priv->base + EMAC_RX_DESC_LIST); -+ /* write start of TX ring descriptor */ -+ writel(priv->dd_tx_phy, priv->base + EMAC_TX_DESC_LIST); -+ -+ return 0; -+dma_tx_error: -+ dma_free_coherent(priv->dev, priv->nbdesc_rx * sizeof(struct dma_desc), -+ priv->dd_rx, priv->dd_rx_phy); -+dma_rx_error: -+ kfree(priv->txl); -+tx_error: -+ kfree(priv->rx_skb); -+rx_skb_error: -+ return err; -+} -+ -+static int sun8i_emac_open(struct net_device *ndev) -+{ -+ struct sun8i_emac_priv *priv = netdev_priv(ndev); -+ int err; -+ u32 v; -+ -+ err = sun8i_emac_power(ndev); -+ if (err) -+ return err; -+ -+ err = request_irq(priv->irq, sun8i_emac_dma_interrupt, 0, -+ dev_name(priv->dev), ndev); -+ if (err) { -+ dev_err(priv->dev, "Cannot request IRQ: %d\n", err); -+ goto err_power; -+ } -+ -+ /* Set interface mode (and configure internal PHY on H3) */ -+ err = sun8i_emac_set_syscon(ndev); -+ if (err) -+ goto err_irq; -+ -+ /* Do SOFT RST */ -+ v = readl(priv->base + EMAC_BASIC_CTL1); -+ writel(v | 0x01, priv->base + EMAC_BASIC_CTL1); -+ -+ err = readl_poll_timeout(priv->base + EMAC_BASIC_CTL1, v, -+ !(v & 0x01), 100, 10000); -+ if (err) { -+ dev_err(priv->dev, "EMAC reset timeout\n"); -+ err = -EFAULT; -+ goto err_syscon; -+ } -+ -+ sun8i_emac_set_mdc(ndev); -+ -+ err = sun8i_emac_mdio_register(ndev); -+ if (err) -+ goto err_syscon; -+ -+ err = sun8i_emac_mdio_probe(ndev); -+ if (err) -+ goto err_syscon; -+ -+ /* DMA */ -+ v = (8 << 24);/* burst len */ -+ writel(v, priv->base + EMAC_BASIC_CTL1); -+ -+ writel(EMAC_RX_INT | EMAC_TX_INT, priv->base + EMAC_INT_EN); -+ -+ v = readl(priv->base + EMAC_RX_CTL0); -+ /* CHECK_CRC */ -+ if (ndev->features & NETIF_F_RXCSUM) -+ v |= EMAC_RX_DO_CRC; -+ else -+ v &= ~EMAC_RX_DO_CRC; -+ /* STRIP_FCS */ -+ if (ndev->features & NETIF_F_RXFCS) -+ v &= ~EMAC_RX_STRIP_FCS; -+ else -+ v |= EMAC_RX_STRIP_FCS; -+ writel(v, priv->base + EMAC_RX_CTL0); -+ -+ v = readl(priv->base + EMAC_TX_CTL1); -+ /* TX_MD Transmission starts after a full frame located in TX DMA FIFO*/ -+ v |= BIT(1); -+ /* Undocumented bit (called TX_NEXT_FRM in BSP), the original comment is -+ * "Operating on second frame increase the performance -+ * especially when transmit store-and-forward is used." -+ */ -+ v |= BIT(2); -+ writel(v, priv->base + EMAC_TX_CTL1); -+ -+ v = readl(priv->base + EMAC_RX_CTL1); -+ /* RX_MD RX DMA reads data from RX DMA FIFO to host memory after a -+ * complete frame has been written to RX DMA FIFO -+ */ -+ v |= BIT(1); -+ writel(v, priv->base + EMAC_RX_CTL1); -+ -+ sun8i_emac_set_macaddr(priv, ndev->dev_addr, 0); -+ -+ err = sun8i_emac_alloc_rings(ndev); -+ if (err) { -+ netdev_err(ndev, "Fail to allocate rings\n"); -+ goto err_mdio; -+ } -+ -+ phy_start(ndev->phydev); -+ -+ sun8i_emac_start_rx(ndev); -+ sun8i_emac_start_tx(ndev); -+ -+ netif_napi_add(ndev, &priv->napi, sun8i_emac_poll, 64); -+ napi_enable(&priv->napi); -+ netif_start_queue(ndev); -+ ++ if (gmac->ephy_clk) ++ clk_disable_unprepare(gmac->ephy_clk); ++ if (gmac->rst_ephy) ++ reset_control_assert(gmac->rst_ephy); + return 0; -+err_mdio: -+ phy_disconnect(ndev->phydev); -+err_syscon: -+ sun8i_emac_unset_syscon(ndev); -+err_irq: -+ free_irq(priv->irq, ndev); -+err_power: -+ sun8i_emac_unpower(ndev); -+ return err; -+} -+ -+/* Clean the TX ring of any accepted skb for xmit */ -+static void sun8i_emac_tx_clean(struct net_device *ndev) -+{ -+ struct sun8i_emac_priv *priv = netdev_priv(ndev); -+ int i; -+ struct dma_desc *ddesc; -+ int frame_len; -+ -+ for (i = 0; i < priv->nbdesc_tx; i++) { -+ if (priv->txl[i].skb) { -+ ddesc = priv->dd_tx + i; -+ frame_len = le32_to_cpu(ddesc->ctl) & 0x3FFF; -+ switch (priv->txl[i].map) { -+ case MAP_SINGLE: -+ dma_unmap_single(priv->dev, -+ le32_to_cpu(ddesc->buf_addr), -+ frame_len, DMA_TO_DEVICE); -+ break; -+ case MAP_PAGE: -+ dma_unmap_page(priv->dev, -+ le32_to_cpu(ddesc->buf_addr), -+ frame_len, DMA_TO_DEVICE); -+ break; -+ default: -+ dev_err(priv->dev, "Trying to free an empty slot\n"); -+ continue; -+ } -+ dev_kfree_skb_any(priv->txl[i].skb); -+ priv->txl[i].skb = NULL; -+ ddesc->ctl = 0; -+ ddesc->status = DCLEAN; -+ } -+ } -+ priv->tx_slot = 0; -+ priv->tx_dirty = 0; -+} -+ -+/* Clean the RX ring */ -+static void sun8i_emac_rx_clean(struct net_device *ndev) -+{ -+ struct sun8i_emac_priv *priv = netdev_priv(ndev); -+ int i; -+ struct dma_desc *ddesc; -+ -+ /* clean RX ring */ -+ for (i = 0; i < priv->nbdesc_rx; i++) -+ if (priv->rx_skb[i]) { -+ ddesc = priv->dd_rx + i; -+ dma_unmap_single(priv->dev, -+ le32_to_cpu(ddesc->buf_addr), -+ DESC_BUF_MAX, DMA_FROM_DEVICE); -+ dev_kfree_skb_any(priv->rx_skb[i]); -+ priv->rx_skb[i] = NULL; -+ } -+} -+ -+static int sun8i_emac_stop(struct net_device *ndev) -+{ -+ struct sun8i_emac_priv *priv = netdev_priv(ndev); -+ -+ napi_disable(&priv->napi); -+ -+ sun8i_emac_stop_tx(ndev); -+ sun8i_emac_stop_rx(ndev); -+ -+ phy_stop(ndev->phydev); -+ phy_disconnect(ndev->phydev); -+ -+ sun8i_emac_mdio_unregister(ndev); -+ -+ sun8i_emac_unset_syscon(ndev); -+ -+ free_irq(priv->irq, ndev); -+ -+ sun8i_emac_rx_clean(ndev); -+ sun8i_emac_tx_clean(ndev); -+ -+ kfree(priv->rx_skb); -+ kfree(priv->txl); -+ -+ dma_free_coherent(priv->dev, priv->nbdesc_rx * sizeof(struct dma_desc), -+ priv->dd_rx, priv->dd_rx_phy); -+ dma_free_coherent(priv->dev, priv->nbdesc_tx * sizeof(struct dma_desc), -+ priv->dd_tx, priv->dd_tx_phy); -+ -+ sun8i_emac_unpower(ndev); -+ -+ return 0; -+} -+ -+static netdev_tx_t sun8i_emac_xmit(struct sk_buff *skb, struct net_device *ndev) -+{ -+ struct sun8i_emac_priv *priv = netdev_priv(ndev); -+ struct dma_desc *ddesc; -+ struct dma_desc *first; -+ int i = 0, rbd_first; -+ unsigned int len, fraglen, tlen; -+ u32 v; -+ int n; -+ int nf; -+ const skb_frag_t *frag; -+ int do_csum = 0; -+ -+ if (skb_put_padto(skb, ETH_ZLEN)) -+ return NETDEV_TX_OK; -+ len = skb_headlen(skb); -+ -+ n = skb_shinfo(skb)->nr_frags; -+ -+ if (skb->ip_summed == CHECKSUM_PARTIAL) { -+ do_csum = 1; -+ priv->estats.tx_hw_csum++; -+ } -+ netif_dbg(priv, tx_queued, ndev, "%s len=%u skblen=%u %x\n", __func__, -+ len, skb->len, -+ (skb->ip_summed == CHECKSUM_PARTIAL)); -+ -+ /* check for contigous space -+ * We need at least 1(skb->data) + n(numfrags) + 1(one clean slot) -+ */ -+ if (rb_tx_numfreedesc(ndev) < n + 2) { -+ dev_err_ratelimited(priv->dev, "BUG!: TX is full %d %d\n", -+ priv->tx_dirty, priv->tx_slot); -+ netif_stop_queue(ndev); -+ return NETDEV_TX_BUSY; -+ } -+ i = priv->tx_slot; -+ -+ ddesc = priv->dd_tx + i; -+ first = priv->dd_tx + i; -+ rbd_first = i; -+ -+ ddesc->buf_addr = dma_map_single(priv->dev, skb->data, len, -+ DMA_TO_DEVICE); -+ if (dma_mapping_error(priv->dev, ddesc->buf_addr)) { -+ dev_err(priv->dev, "ERROR: Cannot map buffer for DMA\n"); -+ goto xmit_error; -+ } -+ /* We cannot direcly use cpu_to_le32() after dma_map_single -+ * since dma_mapping_error use it -+ */ -+ ddesc->buf_addr = cpu_to_le32(ddesc->buf_addr); -+ priv->txl[i].map = MAP_SINGLE; -+ priv->txl[i].skb = skb; -+ -+ tlen = len; -+ ddesc->ctl = le32_to_cpu(len); -+ /* Undocumented bit that make it works -+ * Without it, packets never be sent on H3 SoC -+ */ -+ ddesc->ctl |= EMAC_MAGIC_TX_BIT; -+ if (do_csum) -+ ddesc->ctl |= EMAC_TX_DO_CRC; -+ -+ /* handle fragmented skb, one descriptor per fragment */ -+ for (nf = 0; nf < n; nf++) { -+ frag = &skb_shinfo(skb)->frags[nf]; -+ rb_inc(&i, priv->nbdesc_tx); -+ priv->txl[i].skb = skb; -+ ddesc = priv->dd_tx + i; -+ fraglen = skb_frag_size(frag); -+ ddesc->ctl = le32_to_cpu(fraglen); -+ tlen += fraglen, -+ ddesc->ctl |= EMAC_MAGIC_TX_BIT; -+ if (do_csum) -+ ddesc->ctl |= EMAC_TX_DO_CRC; -+ -+ ddesc->buf_addr = skb_frag_dma_map(priv->dev, frag, 0, -+ fraglen, DMA_TO_DEVICE); -+ if (dma_mapping_error(priv->dev, ddesc->buf_addr)) { -+ dev_err(priv->dev, "Cannot map buffer for DMA\n"); -+ goto xmit_error; -+ } -+ /* Cannot directly use cpu_to_le32() after skb_frag_dma_map -+ * since dma_mapping_error use it -+ */ -+ ddesc->buf_addr = cpu_to_le32(ddesc->buf_addr); -+ priv->txl[i].map = MAP_PAGE; -+ ddesc->status = EMAC_COULD_BE_USED_BY_DMA; -+ } -+ -+ /* frame end */ -+ ddesc->ctl |= EMAC_DSC_TX_LAST; -+ /* We want an interrupt after transmission */ -+ ddesc->ctl |= EMAC_WANT_INT; -+ -+ rb_inc(&i, priv->nbdesc_tx); -+ -+ /* This line was previously after DMA start, but with that we hit a -+ * small race with complete_xmit() where we complete more data than -+ * sent. -+ * The packet is sent just after EMAC_COULD_BE_USED_BY_DMA flag set and -+ * complete_xmit fire just after before netdev_sent_queue(). -+ * This race could be observed only when overflowing a gigabit line. -+ */ -+ netdev_sent_queue(ndev, skb->len); -+ -+ /* frame begin */ -+ first->ctl |= EMAC_DSC_TX_FIRST; -+ wmb();/* EMAC_COULD_BE_USED_BY_DMA must be the last value written */ -+ first->status = EMAC_COULD_BE_USED_BY_DMA; -+ priv->tx_slot = i; -+ -+ /* Trying to optimize this (recording DMA start/stop) seems -+ * to lead to errors. So we always start DMA. -+ */ -+ v = readl(priv->base + EMAC_TX_CTL1); -+ v |= EMAC_TX_DMA_START; -+ v |= EMAC_TX_DMA_EN; -+ writel_relaxed(v, priv->base + EMAC_TX_CTL1); -+ -+ if (rb_tx_numfreedesc(ndev) < MAX_SKB_FRAGS + 1) { -+ netif_stop_queue(ndev); -+ priv->estats.tx_stop_queue++; -+ } -+ priv->estats.tx_used_desc = rb_tx_numfreedesc(ndev); -+ priv->ndev->stats.tx_packets++; -+ priv->ndev->stats.tx_bytes += tlen; -+ -+ return NETDEV_TX_OK; -+ -+xmit_error: -+ /* destroy skb and return TX OK Documentation/DMA-API-HOWTO.txt */ -+ /* clean descritors from rbd_first to i */ -+ ddesc->ctl = 0; -+ /* setting status to DCLEAN is the last value to be set */ -+ wmb(); -+ ddesc->status = DCLEAN; -+ do { -+ ddesc = priv->dd_tx + rbd_first; -+ ddesc->ctl = 0; -+ /* setting status to DCLEAN is the last value to be set */ -+ wmb(); -+ ddesc->status = DCLEAN; -+ rb_inc(&rbd_first, priv->nbdesc_tx); -+ } while (rbd_first != i); -+ dev_kfree_skb_any(skb); -+ return NETDEV_TX_OK; +} + -+static int sun8i_emac_change_mtu(struct net_device *ndev, int new_mtu) ++static int sun8i_power_phy(struct stmmac_priv *priv) +{ -+ struct sun8i_emac_priv *priv = netdev_priv(ndev); -+ int max_mtu; -+ -+ dev_info(priv->dev, "%s set MTU to %d\n", __func__, new_mtu); -+ -+ if (netif_running(ndev)) { -+ dev_err(priv->dev, "%s: must be stopped to change its MTU\n", -+ ndev->name); -+ return -EBUSY; -+ } -+ -+ max_mtu = SKB_MAX_HEAD(NET_SKB_PAD + NET_IP_ALIGN); -+ -+ if ((new_mtu < 68) || (new_mtu > max_mtu)) { -+ dev_err(priv->dev, "%s: invalid MTU, max MTU is: %d\n", -+ ndev->name, max_mtu); -+ return -EINVAL; -+ } -+ -+ ndev->mtu = new_mtu; -+ netdev_update_features(ndev); -+ return 0; -+} -+ -+static int sun8i_emac_set_features(struct net_device *ndev, -+ netdev_features_t features) -+{ -+ struct sun8i_emac_priv *priv = netdev_priv(ndev); -+ u32 v; -+ -+ v = readl(priv->base + EMAC_BASIC_CTL0); -+ if (features & NETIF_F_LOOPBACK && netif_running(ndev)) { -+ netif_info(priv, hw, ndev, "Set loopback features"); -+ v |= BIT(1); -+ } else { -+ netif_info(priv, hw, ndev, "Unset loopback features"); -+ v &= ~BIT(1); -+ } -+ writel(v, priv->base + EMAC_BASIC_CTL0); -+ -+ v = readl(priv->base + EMAC_RX_CTL0); -+ if (features & NETIF_F_RXCSUM) { -+ v |= EMAC_RX_DO_CRC; -+ netif_info(priv, hw, ndev, "Doing RX CRC check by hardware"); -+ } else { -+ v &= ~EMAC_RX_DO_CRC; -+ netif_info(priv, hw, ndev, "No RX CRC check by hardware"); -+ } -+ if (features & NETIF_F_RXFCS) { -+ v &= ~EMAC_RX_STRIP_FCS; -+ netif_info(priv, hw, ndev, "Keep FCS"); -+ } else { -+ v |= EMAC_RX_STRIP_FCS; -+ netif_info(priv, hw, ndev, "Strip FCS"); -+ } -+ writel(v, priv->base + EMAC_RX_CTL0); -+ -+ netif_dbg(priv, drv, ndev, "%s %llx %x\n", __func__, features, v); -+ -+ return 0; -+} -+ -+static void sun8i_emac_set_rx_mode(struct net_device *ndev) -+{ -+ struct sun8i_emac_priv *priv = netdev_priv(ndev); -+ u32 v = 0; -+ int i = 0; -+ struct netdev_hw_addr *ha; -+ -+ /* Receive all multicast frames */ -+ v |= BIT(16); -+ /* Receive all control frames */ -+ v |= BIT(13); -+ if (ndev->flags & IFF_PROMISC) -+ v |= BIT(1); -+ if (netdev_uc_count(ndev) > 7) { -+ v |= BIT(1); -+ } else { -+ netdev_for_each_uc_addr(ha, ndev) { -+ i++; -+ sun8i_emac_set_macaddr(priv, ha->addr, i); -+ } -+ } -+ writel(v, priv->base + EMAC_RX_FRM_FLT); -+} -+ -+static void sun8i_emac_tx_timeout(struct net_device *ndev) -+{ -+ struct sun8i_emac_priv *priv = netdev_priv(ndev); -+ -+ netdev_err(ndev, "%s\n", __func__); -+ -+ sun8i_emac_stop_tx(ndev); -+ -+ sun8i_emac_tx_clean(ndev); -+ -+ /* write start of the new TX ring descriptor */ -+ writel(priv->dd_tx_phy, priv->base + EMAC_TX_DESC_LIST); -+ -+ sun8i_emac_start_tx(ndev); -+ -+ netdev_reset_queue(ndev); -+ -+ priv->estats.tx_timeout++; -+ ndev->stats.tx_errors++; -+ netif_wake_queue(ndev); -+} -+ -+static int sun8i_emac_ioctl(struct net_device *ndev, struct ifreq *rq, int cmd) -+{ -+ struct phy_device *phydev = ndev->phydev; ++ struct sunxi_priv_data *gmac = priv->plat->bsp_priv; ++ int ret; + -+ if (!netif_running(ndev)) -+ return -EINVAL; ++ ret = sun8i_dwmac_power_internal_phy(priv); ++ if (ret) ++ return ret; + -+ if (!phydev) -+ return -ENODEV; ++ ret = sun8i_dwmac_set_syscon(priv); ++ if (ret) ++ goto error_phy; + -+ return phy_mii_ioctl(phydev, rq, cmd); -+} -+ -+static int sun8i_emac_check_if_running(struct net_device *ndev) -+{ -+ if (!netif_running(ndev)) -+ return -EINVAL; ++ ret = sun8i_dwmac_reset(priv); ++ if (ret) ++ goto error_phy; + return 0; -+} -+ -+static int sun8i_emac_get_sset_count(struct net_device *ndev, int sset) -+{ -+ switch (sset) { -+ case ETH_SS_STATS: -+ return ARRAY_SIZE(estats_str); -+ } -+ return -EOPNOTSUPP; -+} + -+static int sun8i_emac_ethtool_get_settings(struct net_device *ndev, -+ struct ethtool_cmd *cmd) -+{ -+ struct phy_device *phy = ndev->phydev; -+ struct sun8i_emac_priv *priv = netdev_priv(ndev); -+ -+ if (!phy) { -+ netdev_err(ndev, "%s: %s: PHY is not registered\n", -+ __func__, ndev->name); -+ return -ENODEV; -+ } -+ -+ if (!netif_running(ndev)) { -+ dev_err(priv->dev, "interface disabled: we cannot track link speed / duplex setting\n"); -+ return -EBUSY; -+ } -+ -+ return phy_ethtool_gset(phy, cmd); -+} -+ -+static int sun8i_emac_ethtool_set_settings(struct net_device *ndev, -+ struct ethtool_cmd *cmd) -+{ -+ struct phy_device *phy = ndev->phydev; -+ -+ return phy_ethtool_sset(phy, cmd); -+} -+ -+static void sun8i_emac_ethtool_getdrvinfo(struct net_device *ndev, -+ struct ethtool_drvinfo *info) -+{ -+ strlcpy(info->driver, "sun8i_emac", sizeof(info->driver)); -+ strcpy(info->version, "00"); -+ info->fw_version[0] = '\0'; -+} -+ -+static void sun8i_emac_ethtool_stats(struct net_device *ndev, -+ struct ethtool_stats *dummy, u64 *data) -+{ -+ struct sun8i_emac_priv *priv = netdev_priv(ndev); -+ -+ memcpy(data, &priv->estats, -+ sun8i_emac_get_sset_count(ndev, ETH_SS_STATS) * sizeof(u64)); -+} -+ -+static void sun8i_emac_ethtool_strings(struct net_device *dev, u32 stringset, -+ u8 *buffer) -+{ -+ switch (stringset) { -+ case ETH_SS_STATS: -+ memcpy(buffer, &estats_str, sizeof(estats_str)); -+ break; -+ } -+} -+ -+static u32 sun8i_emac_ethtool_getmsglevel(struct net_device *ndev) -+{ -+ struct sun8i_emac_priv *priv = netdev_priv(ndev); -+ -+ return priv->msg_enable; -+} -+ -+static void sun8i_emac_ethtool_setmsglevel(struct net_device *ndev, u32 level) -+{ -+ struct sun8i_emac_priv *priv = netdev_priv(ndev); -+ -+ priv->msg_enable = level; -+} -+ -+static void sun8i_emac_get_pauseparam(struct net_device *ndev, -+ struct ethtool_pauseparam *pause) -+{ -+ struct sun8i_emac_priv *priv = netdev_priv(ndev); -+ -+ pause->rx_pause = 0; -+ pause->tx_pause = 0; -+ pause->autoneg = ndev->phydev->autoneg; -+ -+ if (priv->flow_ctrl & EMAC_FLOW_RX) -+ pause->rx_pause = 1; -+ if (priv->flow_ctrl & EMAC_FLOW_TX) -+ pause->tx_pause = 1; -+} -+ -+static int sun8i_emac_set_pauseparam(struct net_device *ndev, -+ struct ethtool_pauseparam *pause) -+{ -+ struct sun8i_emac_priv *priv = netdev_priv(ndev); -+ struct phy_device *phy = ndev->phydev; -+ int new_pause = 0; -+ int ret = 0; -+ -+ if (pause->rx_pause) -+ new_pause |= EMAC_FLOW_RX; -+ if (pause->tx_pause) -+ new_pause |= EMAC_FLOW_TX; -+ -+ priv->flow_ctrl = new_pause; -+ phy->autoneg = pause->autoneg; -+ -+ if (phy->autoneg) { -+ if (netif_running(ndev)) -+ ret = phy_start_aneg(phy); -+ } else { -+ sun8i_emac_flow_ctrl(priv, phy->duplex, priv->flow_ctrl); -+ } ++error_phy: ++ sun8i_dwmac_unset_syscon(gmac); ++ sun8i_dwmac_unpower_internal_phy(gmac); + return ret; +} + -+static void sun8i_emac_ethtool_get_ringparam(struct net_device *ndev, -+ struct ethtool_ringparam *ring) ++static void sun8i_unpower_phy(struct sunxi_priv_data *gmac) +{ -+ struct sun8i_emac_priv *priv = netdev_priv(ndev); -+ -+ ring->rx_pending = priv->nbdesc_rx; -+ ring->tx_pending = priv->nbdesc_tx; ++ sun8i_dwmac_unset_syscon(gmac); ++ sun8i_dwmac_unpower_internal_phy(gmac); +} + -+static int sun8i_emac_ethtool_set_ringparam(struct net_device *ndev, -+ struct ethtool_ringparam *ring) ++static void sun8i_dwmac_exit(struct platform_device *pdev, void *priv) +{ -+ struct sun8i_emac_priv *priv = netdev_priv(ndev); -+ int err; ++ struct sunxi_priv_data *gmac = priv; + -+ if (ring->rx_max_pending || ring->rx_mini_max_pending || -+ ring->rx_jumbo_max_pending || ring->rx_mini_pending || -+ ring->rx_jumbo_pending || ring->tx_max_pending) -+ return -EINVAL; -+ -+ if (ring->tx_pending < MAX_SKB_FRAGS + 1) { -+ netdev_err(ndev, "The number of TX descriptors is too low"); -+ return -EINVAL; -+ } ++ sun8i_unpower_phy(gmac); + -+ sun8i_emac_stop_tx(ndev); -+ sun8i_emac_stop_rx(ndev); ++ clk_disable_unprepare(gmac->tx_clk); + -+ sun8i_emac_rx_clean(ndev); -+ sun8i_emac_tx_clean(ndev); -+ -+ kfree(priv->rx_skb); -+ kfree(priv->txl); -+ -+ dma_free_coherent(priv->dev, priv->nbdesc_rx * sizeof(struct dma_desc), -+ priv->dd_rx, priv->dd_rx_phy); -+ dma_free_coherent(priv->dev, priv->nbdesc_tx * sizeof(struct dma_desc), -+ priv->dd_tx, priv->dd_tx_phy); -+ -+ priv->nbdesc_rx = ring->rx_pending; -+ priv->nbdesc_tx = ring->tx_pending; -+ err = sun8i_emac_alloc_rings(ndev); -+ if (err) { -+ /* Fatal error, we cannot re start */ -+ netdev_err(ndev, "Fail to allocate rings\n"); -+ return -EFAULT; -+ } -+ -+ sun8i_emac_start_rx(ndev); -+ sun8i_emac_start_tx(ndev); -+ -+ netif_start_queue(ndev); -+ -+ netdev_info(ndev, "Ring Param settings: rx: %d, tx %d\n", -+ ring->rx_pending, ring->tx_pending); -+ return 0; ++ if (gmac->regulator) ++ regulator_disable(gmac->regulator); +} + -+static const struct ethtool_ops sun8i_emac_ethtool_ops = { -+ .begin = sun8i_emac_check_if_running, -+ .get_settings = sun8i_emac_ethtool_get_settings, -+ .set_settings = sun8i_emac_ethtool_set_settings, -+ .get_link = ethtool_op_get_link, -+ .get_pauseparam = sun8i_emac_get_pauseparam, -+ .set_pauseparam = sun8i_emac_set_pauseparam, -+ .get_ethtool_stats = sun8i_emac_ethtool_stats, -+ .get_strings = sun8i_emac_ethtool_strings, -+ .get_sset_count = sun8i_emac_get_sset_count, -+ .get_drvinfo = sun8i_emac_ethtool_getdrvinfo, -+ .get_msglevel = sun8i_emac_ethtool_getmsglevel, -+ .set_msglevel = sun8i_emac_ethtool_setmsglevel, -+ .get_ringparam = sun8i_emac_ethtool_get_ringparam, -+ .set_ringparam = sun8i_emac_ethtool_set_ringparam, -+}; -+ -+static const struct net_device_ops sun8i_emac_netdev_ops = { -+ .ndo_init = sun8i_emac_init, -+ .ndo_open = sun8i_emac_open, -+ .ndo_start_xmit = sun8i_emac_xmit, -+ .ndo_stop = sun8i_emac_stop, -+ .ndo_change_mtu = sun8i_emac_change_mtu, -+ .ndo_set_features = sun8i_emac_set_features, -+ .ndo_set_rx_mode = sun8i_emac_set_rx_mode, -+ .ndo_tx_timeout = sun8i_emac_tx_timeout, -+ .ndo_do_ioctl = sun8i_emac_ioctl, -+ .ndo_set_mac_address = eth_mac_addr, ++static const struct stmmac_ops sun8i_dwmac_ops = { ++ .core_init = sun8i_dwmac_core_init, ++ .dump_regs = sun8i_dwmac_dump_mac_regs, ++ .rx_ipc = sun8i_dwmac_rx_ipc_enable, ++ .set_filter = sun8i_dwmac_set_filter, ++ .flow_ctrl = sun8i_dwmac_flow_ctrl, ++ .set_umac_addr = sun8i_dwmac_set_umac_addr, ++ .get_umac_addr = sun8i_dwmac_get_umac_addr, +}; + -+/* No locking in this function since it is guaranteed to be run once and -+ * do actions only done here: -+ * - Scheduling NAPI -+ * - Stopping interrupts -+ * - Updating stats -+ * -+ * Even when not enabled via EMAC_INT_EN, some interrupt could fire, so we need -+ * to handle all of them. -+ * Interrupts know to fire when not enabled are: -+ * - EMAC_TX_DMA_STOP_INT -+ * - EMAC_TX_BUF_UA_INT -+ * - EMAC_TX_EARLY_INT -+ * - EMAC_RX_BUF_UA_INT -+ * - EMAC_RX_EARLY_INT -+ */ -+static irqreturn_t sun8i_emac_dma_interrupt(int irq, void *dev_id) ++static struct mac_device_info *sun8i_dwmac_setup(struct stmmac_priv *priv) +{ -+ struct net_device *ndev = dev_id; -+ struct sun8i_emac_priv *priv = netdev_priv(ndev); -+ u32 v, u; -+ -+ v = readl(priv->base + EMAC_INT_STA); -+ -+ /* When this bit is asserted, a frame transmission is completed. */ -+ if (v & EMAC_TX_INT) { -+ priv->estats.tx_int++; -+ writel(0, priv->base + EMAC_INT_EN); -+ napi_schedule(&priv->napi); -+ } -+ -+ /* When this bit is asserted, the TX DMA FSM is stopped. -+ * For the moment only a call to tx_timeout cause this interrupt -+ * to fire. -+ */ -+ if (v & EMAC_TX_DMA_STOP_INT) -+ priv->estats.tx_dma_stop++; -+ -+ /* When this asserted, the TX DMA can not acquire next TX descriptor -+ * and TX DMA FSM is suspended. -+ */ -+ if (v & EMAC_TX_BUF_UA_INT) { -+ priv->estats.tx_dma_ua++; -+ writel(0, priv->base + EMAC_INT_EN); -+ napi_schedule(&priv->napi); -+ } -+ -+ if (v & EMAC_TX_TIMEOUT_INT) -+ priv->estats.tx_timeout_int++; -+ -+ if (v & EMAC_TX_UNDERFLOW_INT) -+ priv->estats.tx_underflow_int++; -+ -+ /* When this bit asserted , the frame is transmitted to FIFO totally. */ -+ if (v & EMAC_TX_EARLY_INT) -+ priv->estats.tx_early_int++; -+ -+ /* When this bit is asserted, a frame reception is completed */ -+ if (v & EMAC_RX_INT) { -+ priv->estats.rx_int++; -+ writel(0, priv->base + EMAC_INT_EN); -+ napi_schedule(&priv->napi); -+ } -+ -+ /* When this asserted, the RX DMA can not acquire next RX descriptor -+ * and RX DMA FSM is suspended. -+ */ -+ if (v & EMAC_RX_BUF_UA_INT) { -+ u = readl(priv->base + EMAC_RX_CTL1); -+ writel(u | EMAC_RX_DMA_START, priv->base + EMAC_RX_CTL1); -+ priv->estats.rx_dma_ua++; -+ } -+ -+ /* Same as TX DMA STOP, but never hit it */ -+ if (v & EMAC_RX_DMA_STOP_INT) -+ priv->estats.rx_dma_stop++; -+ -+ if (v & EMAC_RX_TIMEOUT_INT) -+ priv->estats.rx_timeout_int++; -+ -+ if (v & EMAC_RX_OVERFLOW_INT) -+ priv->estats.rx_overflow_int++; -+ -+ if (v & EMAC_RX_EARLY_INT) -+ priv->estats.rx_early_int++; -+ -+ if (v & EMAC_RGMII_STA_INT) -+ priv->estats.rgmii_state_int++; -+ -+ /* the datasheet state those register as read-only -+ * but nothing work(freeze) without writing to it -+ */ -+ writel(v, priv->base + EMAC_INT_STA); ++ struct mac_device_info *mac; ++ int ret; + -+ return IRQ_HANDLED; ++ mac = devm_kzalloc(priv->device, sizeof(*mac), GFP_KERNEL); ++ if (!mac) ++ return NULL; ++ ++ ret = sun8i_power_phy(priv); ++ if (ret) ++ return NULL; ++ ++ mac->pcsr = priv->ioaddr; ++ mac->mac = &sun8i_dwmac_ops; ++ mac->dma = &sun8i_dwmac_dma_ops; ++ ++ mac->link.port = 0; ++ mac->link.duplex = BIT(0); ++ mac->link.speed = 1; ++ mac->mii.addr = EMAC_MDIO_CMD; ++ mac->mii.data = EMAC_MDIO_DATA; ++ mac->mii.reg_shift = 4; ++ mac->mii.reg_mask = GENMASK(8, 4); ++ mac->mii.addr_shift = 12; ++ mac->mii.addr_mask = GENMASK(16, 12); ++ mac->mii.clk_csr_shift = 20; ++ mac->mii.clk_csr_mask = GENMASK(22, 20); ++ mac->unicast_filter_entries = 8; ++ ++ /* Synopsys Id is not available */ ++ priv->synopsys_id = 0; ++ ++ return mac; +} + -+static int sun8i_emac_probe(struct platform_device *pdev) ++static int sun8i_dwmac_probe(struct platform_device *pdev) +{ -+ struct device_node *node = pdev->dev.of_node; -+ struct sun8i_emac_priv *priv; -+ struct net_device *ndev; -+ struct resource *res; ++ struct plat_stmmacenet_data *plat_dat; ++ struct stmmac_resources stmmac_res; ++ struct sunxi_priv_data *gmac; ++ struct device *dev = &pdev->dev; + int ret; + -+ ndev = alloc_etherdev(sizeof(*priv)); -+ if (!ndev) -+ return -ENOMEM; ++ ret = stmmac_get_platform_resources(pdev, &stmmac_res); ++ if (ret) ++ return ret; + -+ SET_NETDEV_DEV(ndev, &pdev->dev); -+ priv = netdev_priv(ndev); -+ platform_set_drvdata(pdev, ndev); ++ plat_dat = stmmac_probe_config_dt(pdev, &stmmac_res.mac); ++ if (IS_ERR(plat_dat)) ++ return PTR_ERR(plat_dat); + -+ priv->variant = of_device_get_match_data(&pdev->dev); -+ if (!priv->variant) { ++ gmac = devm_kzalloc(dev, sizeof(*gmac), GFP_KERNEL); ++ if (!gmac) ++ return -ENOMEM; ++ ++ gmac->variant = of_device_get_match_data(&pdev->dev); ++ if (!gmac->variant) { + dev_err(&pdev->dev, "Missing sun8i-emac variant\n"); + return -EINVAL; + } + -+ priv->mdio_node = of_get_child_by_name(node, "mdio"); -+ if (!priv->mdio_node) { -+ netdev_err(ndev, "Could not find a MDIO node\n"); -+ return -EINVAL; ++ gmac->tx_clk = devm_clk_get(dev, "stmmaceth"); ++ if (IS_ERR(gmac->tx_clk)) { ++ dev_err(dev, "could not get tx clock\n"); ++ return PTR_ERR(gmac->tx_clk); + } + -+ priv->phy_node = of_parse_phandle(node, "phy-handle", 0); -+ if (!priv->phy_node) { -+ netdev_err(ndev, "No associated PHY\n"); -+ return -EINVAL; ++ /* Optional regulator for PHY */ ++ gmac->regulator = devm_regulator_get_optional(dev, "phy"); ++ if (IS_ERR(gmac->regulator)) { ++ if (PTR_ERR(gmac->regulator) == -EPROBE_DEFER) ++ return -EPROBE_DEFER; ++ dev_info(dev, "no regulator found\n"); ++ gmac->regulator = NULL; + } + -+ priv->regmap = syscon_regmap_lookup_by_phandle(pdev->dev.of_node, ++ gmac->regmap = syscon_regmap_lookup_by_phandle(pdev->dev.of_node, + "syscon"); -+ if (IS_ERR(priv->regmap)) { -+ ret = PTR_ERR(priv->regmap); ++ if (IS_ERR(gmac->regmap)) { ++ ret = PTR_ERR(gmac->regmap); + dev_err(&pdev->dev, "unable to map SYSCON:%d\n", ret); + return ret; + } + -+ res = platform_get_resource(pdev, IORESOURCE_MEM, 0); -+ priv->base = devm_ioremap_resource(&pdev->dev, res); -+ if (IS_ERR(priv->base)) { -+ ret = PTR_ERR(priv->base); -+ dev_err(&pdev->dev, "Cannot request MMIO: %d\n", ret); -+ return ret; -+ } -+ -+ priv->ahb_clk = devm_clk_get(&pdev->dev, "ahb"); -+ if (IS_ERR(priv->ahb_clk)) { -+ ret = PTR_ERR(priv->ahb_clk); -+ dev_err(&pdev->dev, "Cannot get AHB clock err=%d\n", ret); -+ goto probe_err; -+ } -+ -+ priv->rst_mac = devm_reset_control_get_optional(&pdev->dev, "ahb"); -+ if (IS_ERR(priv->rst_mac)) { -+ ret = PTR_ERR(priv->rst_mac); -+ if (ret == -EPROBE_DEFER) -+ return -EPROBE_DEFER; -+ dev_info(&pdev->dev, "No MAC reset control found %d\n", ret); -+ priv->rst_mac = NULL; -+ } -+ -+ priv->phy_interface = of_get_phy_mode(node); -+ if (priv->phy_interface < 0) { -+ netdev_err(ndev, "PHY interface mode node unspecified\n"); -+ return priv->phy_interface; -+ } -+ -+ switch (priv->phy_interface) { -+ case PHY_INTERFACE_MODE_MII: -+ if (!priv->variant->support_mii) -+ return -EINVAL; -+ break; -+ case PHY_INTERFACE_MODE_RMII: -+ if (!priv->variant->support_rmii) -+ return -EINVAL; -+ break; -+ case PHY_INTERFACE_MODE_RGMII: -+ if (!priv->variant->support_rgmii) -+ return -EINVAL; -+ break; -+ default: -+ netdev_err(ndev, "Unsupported interface mode: %s", -+ phy_modes(priv->phy_interface)); -+ return -EINVAL; -+ } -+ -+ if (priv->phy_interface == priv->variant->internal_phy) -+ priv->use_internal_phy = true; -+ -+ if (priv->use_internal_phy) { -+ priv->ephy_clk = of_clk_get(priv->phy_node, 0); -+ if (IS_ERR(priv->ephy_clk)) { -+ ret = PTR_ERR(priv->ephy_clk); ++ plat_dat->interface = of_get_phy_mode(dev->of_node); ++ if (plat_dat->interface == gmac->variant->internal_phy) { ++ dev_info(&pdev->dev, "Will use internal PHY\n"); ++ gmac->use_internal_phy = true; ++ gmac->ephy_clk = of_clk_get(plat_dat->phy_node, 0); ++ if (IS_ERR(gmac->ephy_clk)) { ++ ret = PTR_ERR(gmac->ephy_clk); + dev_err(&pdev->dev, "Cannot get EPHY clock err=%d\n", + ret); -+ goto probe_err; ++ return -EINVAL; + } + -+ priv->rst_ephy = of_reset_control_get(priv->phy_node, 0); -+ if (IS_ERR(priv->rst_ephy)) { -+ ret = PTR_ERR(priv->rst_ephy); ++ gmac->rst_ephy = of_reset_control_get(plat_dat->phy_node, NULL); ++ if (IS_ERR(gmac->rst_ephy)) { ++ ret = PTR_ERR(gmac->rst_ephy); + if (ret == -EPROBE_DEFER) -+ goto probe_err; -+ dev_info(&pdev->dev, -+ "No EPHY reset control found %d\n", ret); -+ priv->rst_ephy = NULL; ++ return ret; ++ dev_err(&pdev->dev, "No EPHY reset control found %d\n", ++ ret); ++ return -EINVAL; + } ++ } else { ++ dev_info(&pdev->dev, "Will use external PHY\n"); ++ gmac->use_internal_phy = false; + } + -+ priv->irq = platform_get_irq(pdev, 0); -+ if (priv->irq < 0) { -+ ret = priv->irq; -+ dev_err(&pdev->dev, "Cannot claim IRQ: %d\n", ret); -+ goto probe_err; -+ } -+ -+ spin_lock_init(&priv->tx_lock); -+ -+ ndev->netdev_ops = &sun8i_emac_netdev_ops; -+ ndev->ethtool_ops = &sun8i_emac_ethtool_ops; -+ -+ priv->ndev = ndev; -+ priv->dev = &pdev->dev; -+ -+ ndev->hw_features = NETIF_F_SG | NETIF_F_HIGHDMA; -+ ndev->hw_features |= NETIF_F_IP_CSUM | NETIF_F_IPV6_CSUM | -+ NETIF_F_RXCSUM; -+ ndev->features |= ndev->hw_features; -+ ndev->hw_features |= NETIF_F_RXFCS; -+ ndev->hw_features |= NETIF_F_RXALL; -+ ndev->hw_features |= NETIF_F_LOOPBACK; -+ ndev->priv_flags |= IFF_UNICAST_FLT; -+ -+ ndev->watchdog_timeo = msecs_to_jiffies(5000); -+ netif_carrier_off(ndev); -+ -+ /* Benched on OPIPC with 100M, setting more than 256 does not give any -+ * perf boost ++ /* platform data specifying hardware features and callbacks. ++ * hardware features were copied from Allwinner drivers. + */ -+ priv->nbdesc_rx = 128; -+ priv->nbdesc_tx = 256; -+ -+ ret = register_netdev(ndev); -+ if (ret) { -+ dev_err(&pdev->dev, "ERROR: Register %s failed\n", ndev->name); -+ goto probe_err; -+ } ++ plat_dat->rx_coe = STMMAC_RX_COE_TYPE2; ++ plat_dat->tx_coe = 1; ++ plat_dat->has_sun8i = true; ++ plat_dat->bsp_priv = gmac; ++ plat_dat->init = sun8i_dwmac_init; ++ plat_dat->exit = sun8i_dwmac_exit; ++ plat_dat->setup = sun8i_dwmac_setup; ++ ++ ret = sun8i_dwmac_init(pdev, plat_dat->bsp_priv); ++ if (ret) ++ return ret; + -+ return 0; ++ ret = stmmac_dvr_probe(&pdev->dev, plat_dat, &stmmac_res); ++ if (ret) ++ sun8i_dwmac_exit(pdev, plat_dat->bsp_priv); + -+probe_err: -+ free_netdev(ndev); + return ret; +} + -+static int sun8i_emac_remove(struct platform_device *pdev) -+{ -+ struct net_device *ndev = platform_get_drvdata(pdev); -+ -+ unregister_netdev(ndev); -+ platform_set_drvdata(pdev, NULL); -+ free_netdev(ndev); -+ -+ return 0; -+} -+ -+static const struct of_device_id sun8i_emac_of_match_table[] = { -+ { .compatible = "allwinner,sun8i-a83t-emac", -+ .data = &emac_variant_a83t }, ++static const struct of_device_id sun8i_dwmac_match[] = { + { .compatible = "allwinner,sun8i-h3-emac", -+ .data = &emac_variant_h3 }, ++ .data = &emac_variant_h3 }, ++ { .compatible = "allwinner,sun8i-a83t-emac", ++ .data = &emac_variant_a83t }, + { .compatible = "allwinner,sun50i-a64-emac", -+ .data = &emac_variant_a64 }, -+ {} ++ .data = &emac_variant_a64 }, ++ { } +}; -+MODULE_DEVICE_TABLE(of, sun8i_emac_of_match_table); -+ -+static struct platform_driver sun8i_emac_driver = { -+ .probe = sun8i_emac_probe, -+ .remove = sun8i_emac_remove, -+ .driver = { -+ .name = "sun8i-emac", -+ .of_match_table = sun8i_emac_of_match_table, ++MODULE_DEVICE_TABLE(of, sun8i_dwmac_match); ++ ++static struct platform_driver sun8i_dwmac_driver = { ++ .probe = sun8i_dwmac_probe, ++ .remove = stmmac_pltfr_remove, ++ .driver = { ++ .name = "sun8i-dwmac", ++ .pm = &stmmac_pltfr_pm_ops, ++ .of_match_table = sun8i_dwmac_match, + }, +}; ++module_platform_driver(sun8i_dwmac_driver); + -+module_platform_driver(sun8i_emac_driver); -+ -+MODULE_DESCRIPTION("sun8i Ethernet driver"); ++MODULE_AUTHOR("Corentin Labbe <clabbe.montjoie@gmail.com>"); ++MODULE_DESCRIPTION("Allwinner sun8i DWMAC specific glue layer"); +MODULE_LICENSE("GPL"); -+MODULE_AUTHOR("Corentin Labbe <clabbe.montjoie@gmail.com"); --- -2.9.3 - -From 1d9ea1f4df27f3a2e2ed7094852a23a4dd45e2be Mon Sep 17 00:00:00 2001 -From: Corentin LABBE <clabbe.montjoie@gmail.com> -Date: Fri, 7 Oct 2016 10:25:49 +0200 -Subject: [PATCH 2/8] MAINTAINERS: Add myself as maintainer of sun8i-emac - -This patch add myself as maintainer of the sun8i-emac driver. - -Signed-off-by: Corentin Labbe <clabbe.montjoie@gmail.com> ---- - MAINTAINERS | 6 ++++++ - 1 file changed, 6 insertions(+) - -diff --git a/MAINTAINERS b/MAINTAINERS -index 411e3b8..e99a087 100644 ---- a/MAINTAINERS -+++ b/MAINTAINERS -@@ -590,6 +590,12 @@ S: Maintained - F: Documentation/i2c/busses/i2c-ali1563 - F: drivers/i2c/busses/i2c-ali1563.c +diff --git a/drivers/net/ethernet/stmicro/stmmac/stmmac_main.c b/drivers/net/ethernet/stmicro/stmmac/stmmac_main.c +index 856ac57..05e8018 100644 +--- a/drivers/net/ethernet/stmicro/stmmac/stmmac_main.c ++++ b/drivers/net/ethernet/stmicro/stmmac/stmmac_main.c +@@ -177,6 +177,17 @@ static void stmmac_clk_csr_set(struct stmmac_priv *priv) + else if ((clk_rate >= CSR_F_250M) && (clk_rate < CSR_F_300M)) + priv->clk_csr = STMMAC_CSR_250_300M; + } ++ ++ if (priv->plat->has_sun8i) { ++ if (clk_rate > 160000000) ++ priv->clk_csr = 0x03; ++ else if (clk_rate > 80000000) ++ priv->clk_csr = 0x02; ++ else if (clk_rate > 40000000) ++ priv->clk_csr = 0x01; ++ else ++ priv->clk_csr = 0; ++ } + } -+ALLWINNER SUN8I-EMAC ETHERNET DRIVER -+M: Corentin Labbe <clabbe.montjoie@gmail.com> -+L: netdev@vger.kernel.org -+S: Maintained -+F: drivers/net/ethernet/allwinner/sun8i-emac.c -+ - ALLWINNER SECURITY SYSTEM - M: Corentin Labbe <clabbe.montjoie@gmail.com> - L: linux-crypto@vger.kernel.org --- -2.9.3 - -From 6b3093e31b877f39475454b5af3b820dbb3a4f73 Mon Sep 17 00:00:00 2001 -From: Corentin LABBE <clabbe.montjoie@gmail.com> -Date: Fri, 7 Oct 2016 10:25:50 +0200 -Subject: [PATCH 3/8] ARM: sun8i: dt: Add DT bindings documentation for - Allwinner sun8i-emac - -This patch adds documentation for Device-Tree bindings for the -Allwinner sun8i-emac driver. - -Signed-off-by: Corentin Labbe <clabbe.montjoie@gmail.com> ---- - .../bindings/net/allwinner,sun8i-emac.txt | 70 ++++++++++++++++++++++ - 1 file changed, 70 insertions(+) - create mode 100644 Documentation/devicetree/bindings/net/allwinner,sun8i-emac.txt - -diff --git a/Documentation/devicetree/bindings/net/allwinner,sun8i-emac.txt b/Documentation/devicetree/bindings/net/allwinner,sun8i-emac.txt -new file mode 100644 -index 0000000..92e4ef3b ---- /dev/null -+++ b/Documentation/devicetree/bindings/net/allwinner,sun8i-emac.txt -@@ -0,0 +1,70 @@ -+* Allwinner sun8i EMAC ethernet controller -+ -+Required properties: -+- compatible: should be one of the following string: -+ "allwinner,sun8i-a83t-emac" -+ "allwinner,sun8i-h3-emac" -+ "allwinner,sun50i-a64-emac" -+- reg: address and length of the register for the device. -+- syscon: A phandle to the syscon of the SoC -+- interrupts: interrupt for the device -+- clocks: A phandle to the reference clock for this device -+- clock-names: should be "ahb" -+- resets: A phandle to the reset control for this device -+- reset-names: should be "ahb" -+- phy-mode: See ethernet.txt -+- phy-handle: See ethernet.txt -+- #address-cells: shall be 1 -+- #size-cells: shall be 0 -+ -+Optional properties: -+- allwinner,tx-delay: TX clock delay chain value. Range value is 0-0x07. Default is 0) -+- allwinner,rx-delay: RX clock delay chain value. Range value is 0-0x1F. Default is 0) -+Both delay properties does not have units, there are arbitrary value. -+The TX/RX clock delay chain settings are board specific and could be found -+in vendor FEX files. -+ -+Optional properties for "allwinner,sun8i-h3-emac": -+- allwinner,leds-active-low: EPHY LEDs are active low -+ -+Required child node of emac: -+- mdio bus node: should be named mdio -+ -+Required properties of the mdio node: -+- #address-cells: shall be 1 -+- #size-cells: shall be 0 -+ -+The device node referenced by "phy" or "phy-handle" should be a child node -+of the mdio node. See phy.txt for the generic PHY bindings. -+ -+Required properties of the phy node with "allwinner,sun8i-h3-emac": -+- clocks: an extra phandle to the reference clock for the EPHY -+- resets: an extra phandle to the reset control for the EPHY -+ -+Example: -+ -+emac: ethernet@01c0b000 { -+ compatible = "allwinner,sun8i-h3-emac"; -+ syscon = <&syscon>; -+ reg = <0x01c0b000 0x104>; -+ interrupts = <GIC_SPI 82 IRQ_TYPE_LEVEL_HIGH>; -+ resets = <&ccu RST_BUS_EMAC>; -+ reset-names = "ahb"; -+ clocks = <&ccu CLK_BUS_EMAC>; -+ clock-names = "ahb"; -+ #address-cells = <1>; -+ #size-cells = <0>; -+ -+ phy = <&int_mii_phy>; -+ phy-mode = "mii"; -+ allwinner,leds-active-low; -+ mdio: mdio { -+ #address-cells = <1>; -+ #size-cells = <0>; -+ int_mii_phy: ethernet-phy@1 { -+ reg = <1>; -+ clocks = <&ccu CLK_BUS_EPHY>; -+ resets = <&ccu RST_BUS_EPHY>; -+ }; + static void print_pkt(unsigned char *buf, int len) +@@ -697,6 +708,10 @@ static void stmmac_adjust_link(struct net_device *dev) + if (phydev->link) { + u32 ctrl = readl(priv->ioaddr + MAC_CTRL_REG); + ++ /* disable loopback */ ++ if (priv->plat->has_sun8i) ++ ctrl &= ~BIT(1); ++ + /* Now we make sure that we can be in full duplex mode. + * If not, we operate in half-duplex mode. */ + if (phydev->duplex != priv->oldduplex) { +@@ -714,6 +729,8 @@ static void stmmac_adjust_link(struct net_device *dev) + + if (phydev->speed != priv->speed) { + new_state = 1; ++ if (priv->plat->has_sun8i) ++ ctrl &= ~GENMASK(3, 2); + switch (phydev->speed) { + case 1000: + if (priv->plat->has_gmac || +@@ -725,6 +742,8 @@ static void stmmac_adjust_link(struct net_device *dev) + priv->plat->has_gmac4) { + ctrl |= priv->hw->link.port; + ctrl |= priv->hw->link.speed; ++ } else if (priv->plat->has_sun8i) { ++ ctrl |= 3 << 2; + } else { + ctrl &= ~priv->hw->link.port; + } +@@ -734,6 +753,8 @@ static void stmmac_adjust_link(struct net_device *dev) + priv->plat->has_gmac4) { + ctrl |= priv->hw->link.port; + ctrl &= ~(priv->hw->link.speed); ++ } else if (priv->plat->has_sun8i) { ++ ctrl |= 2 << 2; + } else { + ctrl &= ~priv->hw->link.port; + } +@@ -1702,7 +1723,7 @@ static int stmmac_hw_setup(struct net_device *dev, bool init_ptp) + /* Enable the MAC Rx/Tx */ + if (priv->synopsys_id >= DWMAC_CORE_4_00) + stmmac_dwmac4_set_mac(priv->ioaddr, true); +- else ++ else if (!priv->plat->has_sun8i) + stmmac_set_mac(priv->ioaddr, true); + + /* Set the HW DMA mode and the COE */ +@@ -3123,6 +3144,10 @@ static int stmmac_hw_init(struct stmmac_priv *priv) + + priv->hw = mac; + ++ /* dwmac-sun8i only work in chain mode */ ++ if (priv->plat->has_sun8i) ++ chain_mode = 1; ++ + /* To use the chained or ring mode */ + if (priv->synopsys_id >= DWMAC_CORE_4_00) { + priv->hw->mode = &dwmac4_ring_mode_ops; +diff --git a/drivers/net/ethernet/stmicro/stmmac/stmmac_platform.c b/drivers/net/ethernet/stmicro/stmmac/stmmac_platform.c +index 0ba1caf..3c21862 100644 +--- a/drivers/net/ethernet/stmicro/stmmac/stmmac_platform.c ++++ b/drivers/net/ethernet/stmicro/stmmac/stmmac_platform.c +@@ -160,6 +160,12 @@ static int stmmac_dt_phy(struct plat_stmmacenet_data *plat, + struct device_node *np, struct device *dev) + { + bool mdio = true; ++ static const struct of_device_id need_mdio_ids[] = { ++ { .compatible = "snps,dwc-qos-ethernet-4.10" }, ++ { .compatible = "allwinner,sun8i-a83t-emac" }, ++ { .compatible = "allwinner,sun8i-h3-emac" }, ++ { .compatible = "allwinner,sun50i-a64-emac" }, + }; -+}; --- -2.9.3 - -From aa634aa1b0454befe54a14d03b9a3ba6f750dcfd Mon Sep 17 00:00:00 2001 -From: Corentin LABBE <clabbe.montjoie@gmail.com> -Date: Fri, 7 Oct 2016 10:25:51 +0200 -Subject: [PATCH 4/8] ARM: dts: sun8i-h3: Add dt node for the syscon control + + /* If phy-handle property is passed from DT, use it as the PHY */ + plat->phy_node = of_parse_phandle(np, "phy-handle", 0); +@@ -176,8 +182,7 @@ static int stmmac_dt_phy(struct plat_stmmacenet_data *plat, + mdio = false; + } + +- /* exception for dwmac-dwc-qos-eth glue logic */ +- if (of_device_is_compatible(np, "snps,dwc-qos-ethernet-4.10")) { ++ if (of_match_node(need_mdio_ids, np)) { + plat->mdio_node = of_get_child_by_name(np, "mdio"); + } else { + /** +diff --git a/include/linux/stmmac.h b/include/linux/stmmac.h +index 8f09f18..100386c 100644 +--- a/include/linux/stmmac.h ++++ b/include/linux/stmmac.h +@@ -147,6 +147,7 @@ struct plat_stmmacenet_data { + struct reset_control *stmmac_rst; + struct stmmac_axi *axi; + int has_gmac4; ++ bool has_sun8i; + bool tso_en; + int mac_port_sel_speed; + bool en_tx_lpi_clockgating; +From patchwork Tue Mar 14 14:18:42 2017 +Content-Type: text/plain; charset="utf-8" +MIME-Version: 1.0 +Content-Transfer-Encoding: 7bit +Subject: [v2, 06/20] ARM: dts: sunxi-h3-h5: Add dt node for the syscon control module +From: Corentin LABBE <clabbe.montjoie@gmail.com> +X-Patchwork-Id: 9623549 +Message-Id: <20170314141856.24560-7-clabbe.montjoie@gmail.com> +To: robh+dt@kernel.org, mark.rutland@arm.com, + maxime.ripard@free-electrons.com, + wens@csie.org, linux@armlinux.org.uk, catalin.marinas@arm.com, + will.deacon@arm.com, peppe.cavallaro@st.com, alexandre.torgue@st.com, + davem@davemloft.net +Cc: devicetree@vger.kernel.org, f.fainelli@gmail.com, netdev@vger.kernel.org, + linux-kernel@vger.kernel.org, Corentin Labbe <clabbe.montjoie@gmail.com>, + linux-arm-kernel@lists.infradead.org +Date: Tue, 14 Mar 2017 15:18:42 +0100 This patch add the dt node for the syscon register present on the -Allwinner H3. +Allwinner H3/H5 Only two register are present in this syscon and the only one useful is -the one dedicated to EMAC clock. +the one dedicated to EMAC clock.. Signed-off-by: Corentin Labbe <clabbe.montjoie@gmail.com> --- - arch/arm/boot/dts/sun8i-h3.dtsi | 5 +++++ - 1 file changed, 5 insertions(+) + arch/arm/boot/dts/sunxi-h3-h5.dtsi | 6 ++++++ + 1 file changed, 6 insertions(+) -diff --git a/arch/arm/boot/dts/sun8i-h3.dtsi b/arch/arm/boot/dts/sun8i-h3.dtsi -index 75a8654..eac7d00 100644 ---- a/arch/arm/boot/dts/sun8i-h3.dtsi -+++ b/arch/arm/boot/dts/sun8i-h3.dtsi -@@ -140,6 +140,11 @@ +diff --git a/arch/arm/boot/dts/sunxi-h3-h5.dtsi b/arch/arm/boot/dts/sunxi-h3-h5.dtsi +index 2494ea0..07e4f36 100644 +--- a/arch/arm/boot/dts/sunxi-h3-h5.dtsi ++++ b/arch/arm/boot/dts/sunxi-h3-h5.dtsi +@@ -102,6 +102,12 @@ #size-cells = <1>; ranges; + syscon: syscon@01c00000 { -+ compatible = "syscon"; ++ compatible = "syscon", ++ "allwinner,sun8i-h3-system-controller"; + reg = <0x01c00000 0x1000>; + }; + dma: dma-controller@01c02000 { compatible = "allwinner,sun8i-h3-dma"; reg = <0x01c02000 0x1000>; --- -2.9.3 - -From 976cca2d4eb5bf85c26dfaad03ea70bff88981fd Mon Sep 17 00:00:00 2001 -From: Peter Robinson <pbrobinson@gmail.com> -Date: Tue, 8 Nov 2016 10:23:08 +0000 -Subject: [PATCH 5/8] ARM: dts: sun8i-h3: add sun8i-emac ethernet driver +From patchwork Tue Mar 14 14:18:43 2017 +Content-Type: text/plain; charset="utf-8" +MIME-Version: 1.0 +Content-Transfer-Encoding: 7bit +Subject: [v2,07/20] ARM: dts: sunxi-h3-h5: add dwmac-sun8i ethernet driver +From: Corentin LABBE <clabbe.montjoie@gmail.com> +X-Patchwork-Id: 9623561 +Message-Id: <20170314141856.24560-8-clabbe.montjoie@gmail.com> +To: robh+dt@kernel.org, mark.rutland@arm.com, + maxime.ripard@free-electrons.com, + wens@csie.org, linux@armlinux.org.uk, catalin.marinas@arm.com, + will.deacon@arm.com, peppe.cavallaro@st.com, alexandre.torgue@st.com, + davem@davemloft.net +Cc: devicetree@vger.kernel.org, f.fainelli@gmail.com, netdev@vger.kernel.org, + linux-kernel@vger.kernel.org, Corentin Labbe <clabbe.montjoie@gmail.com>, + linux-arm-kernel@lists.infradead.org +Date: Tue, 14 Mar 2017 15:18:43 +0100 -The sun8i-emac is an ethernet MAC hardware that support 10/100/1000 +The dwmac-sun8i is an ethernet MAC hardware that support 10/100/1000 speed. -This patch enable the sun8i-emac on the Allwinner H3 SoC Device-tree. -The SoC H3 have an internal PHY, so optionals syscon and ephy are set. +This patch enable the dwmac-sun8i on Allwinner H3/H5 SoC Device-tree. +SoC H3/H5 have an internal PHY, so optionals syscon and ephy are set. Signed-off-by: Corentin Labbe <clabbe.montjoie@gmail.com> --- - arch/arm/boot/dts/sun8i-h3.dtsi | 24 ++++++++++++++++++++++++ - 1 file changed, 24 insertions(+) + arch/arm/boot/dts/sunxi-h3-h5.dtsi | 33 +++++++++++++++++++++++++++++++++ + 1 file changed, 33 insertions(+) -diff --git a/arch/arm/boot/dts/sun8i-h3.dtsi b/arch/arm/boot/dts/sun8i-h3.dtsi -index eac7d00..86a8665 100644 ---- a/arch/arm/boot/dts/sun8i-h3.dtsi -+++ b/arch/arm/boot/dts/sun8i-h3.dtsi -@@ -535,6 +535,30 @@ - #size-cells = <0>; +diff --git a/arch/arm/boot/dts/sunxi-h3-h5.dtsi b/arch/arm/boot/dts/sunxi-h3-h5.dtsi +index 07e4f36..c35af5e 100644 +--- a/arch/arm/boot/dts/sunxi-h3-h5.dtsi ++++ b/arch/arm/boot/dts/sunxi-h3-h5.dtsi +@@ -272,6 +272,14 @@ + interrupt-controller; + #interrupt-cells = <3>; + ++ emac_rgmii_pins: emac0@0 { ++ pins = "PD0", "PD1", "PD2", "PD3", "PD4", ++ "PD5", "PD7", "PD8", "PD9", "PD10", ++ "PD12", "PD13", "PD15", "PD16", "PD17"; ++ function = "emac"; ++ drive-strength = <40>; ++ }; ++ + i2c0_pins: i2c0 { + pins = "PA11", "PA12"; + function = "i2c0"; +@@ -368,6 +376,31 @@ + clocks = <&osc24M>; }; + emac: ethernet@1c30000 { @@ -2515,10 +1505,11 @@ index eac7d00..86a8665 100644 + syscon = <&syscon>; + reg = <0x01c30000 0x104>; + interrupts = <GIC_SPI 82 IRQ_TYPE_LEVEL_HIGH>; ++ interrupt-names = "macirq"; + resets = <&ccu RST_BUS_EMAC>; -+ reset-names = "ahb"; ++ reset-names = "stmmaceth"; + clocks = <&ccu CLK_BUS_EMAC>; -+ clock-names = "ahb"; ++ clock-names = "stmmaceth"; + #address-cells = <1>; + #size-cells = <0>; + status = "disabled"; @@ -2527,25 +1518,119 @@ index eac7d00..86a8665 100644 + #address-cells = <1>; + #size-cells = <0>; + int_mii_phy: ethernet-phy@1 { -+ reg = <1>; -+ clocks = <&ccu CLK_BUS_EPHY>; -+ resets = <&ccu RST_BUS_EPHY>; ++ reg = <1>; ++ clocks = <&ccu CLK_BUS_EPHY>; ++ resets = <&ccu RST_BUS_EPHY>; + }; + }; + }; + - gic: interrupt-controller@01c81000 { - compatible = "arm,cortex-a7-gic", "arm,cortex-a15-gic"; - reg = <0x01c81000 0x1000>, --- -2.9.3 + spi0: spi@01c68000 { + compatible = "allwinner,sun8i-h3-spi"; + reg = <0x01c68000 0x1000>; +From patchwork Tue Mar 14 14:18:44 2017 +Content-Type: text/plain; charset="utf-8" +MIME-Version: 1.0 +Content-Transfer-Encoding: 7bit +Subject: [v2,08/20] ARM: dts: sun8i: Enable dwmac-sun8i on the Banana Pi M2+ +From: Corentin LABBE <clabbe.montjoie@gmail.com> +X-Patchwork-Id: 9623539 +Message-Id: <20170314141856.24560-9-clabbe.montjoie@gmail.com> +To: robh+dt@kernel.org, mark.rutland@arm.com, + maxime.ripard@free-electrons.com, + wens@csie.org, linux@armlinux.org.uk, catalin.marinas@arm.com, + will.deacon@arm.com, peppe.cavallaro@st.com, alexandre.torgue@st.com, + davem@davemloft.net +Cc: devicetree@vger.kernel.org, f.fainelli@gmail.com, netdev@vger.kernel.org, + linux-kernel@vger.kernel.org, LABBE Corentin <clabbe.montjoie@gmail.com>, + linux-arm-kernel@lists.infradead.org +Date: Tue, 14 Mar 2017 15:18:44 +0100 + +From: LABBE Corentin <clabbe.montjoie@gmail.com> + +The dwmac-sun8i hardware is present on the Banana Pi M2+ +It uses an external PHY rtl8211e via RGMII. + +This patch create the needed regulator, emac and phy nodes. + +Signed-off-by: Corentin Labbe <clabbe.montjoie@gmail.com> +--- + arch/arm/boot/dts/sun8i-h3-bananapi-m2-plus.dts | 37 +++++++++++++++++++++++++ + 1 file changed, 37 insertions(+) -From 6e483713dda9e0d5e8e5f37d8b0367ff216c53db Mon Sep 17 00:00:00 2001 +diff --git a/arch/arm/boot/dts/sun8i-h3-bananapi-m2-plus.dts b/arch/arm/boot/dts/sun8i-h3-bananapi-m2-plus.dts +index 52acbe1..30b0a41 100644 +--- a/arch/arm/boot/dts/sun8i-h3-bananapi-m2-plus.dts ++++ b/arch/arm/boot/dts/sun8i-h3-bananapi-m2-plus.dts +@@ -90,6 +90,18 @@ + pinctrl-0 = <&wifi_en_bpi_m2p>; + reset-gpios = <&r_pio 0 7 GPIO_ACTIVE_LOW>; /* PL7 */ + }; ++ ++ reg_gmac_3v3: gmac-3v3 { ++ compatible = "regulator-fixed"; ++ pinctrl-names = "default"; ++ pinctrl-0 = <&gmac_power_pin_orangepi>; ++ regulator-name = "gmac-3v3"; ++ regulator-min-microvolt = <3300000>; ++ regulator-max-microvolt = <3300000>; ++ startup-delay-us = <100000>; ++ enable-active-high; ++ gpio = <&pio 3 6 GPIO_ACTIVE_HIGH>; ++ }; + }; + + &ehci1 { +@@ -186,3 +198,28 @@ + /* USB VBUS is on as long as VCC-IO is on */ + status = "okay"; + }; ++ ++&pio { ++ gmac_power_pin_orangepi: gmac_power_pin@0 { ++ pins = "PD6"; ++ function = "gpio_out"; ++ drive-strength = <10>; ++ }; ++}; ++ ++&mdio { ++ ext_rgmii_phy: ethernet-phy@1 { ++ reg = <0>; ++ }; ++}; ++ ++&emac { ++ pinctrl-names = "default"; ++ pinctrl-0 = <&emac_rgmii_pins>; ++ phy-supply = <®_gmac_3v3>; ++ phy-handle = <&ext_rgmii_phy>; ++ phy-mode = "rgmii"; ++ ++ allwinner,leds-active-low; ++ status = "okay"; ++}; +From patchwork Tue Mar 14 14:18:45 2017 +Content-Type: text/plain; charset="utf-8" +MIME-Version: 1.0 +Content-Transfer-Encoding: 7bit +Subject: [v2,09/20] ARM: dts: sun8i: Enable dwmac-sun8i on the Orange PI PC From: Corentin LABBE <clabbe.montjoie@gmail.com> -Date: Fri, 7 Oct 2016 10:25:53 +0200 -Subject: [PATCH 6/8] ARM: dts: sun8i: Enable sun8i-emac on the Orange PI PC +X-Patchwork-Id: 9623555 +Message-Id: <20170314141856.24560-10-clabbe.montjoie@gmail.com> +To: robh+dt@kernel.org, mark.rutland@arm.com, + maxime.ripard@free-electrons.com, + wens@csie.org, linux@armlinux.org.uk, catalin.marinas@arm.com, + will.deacon@arm.com, peppe.cavallaro@st.com, alexandre.torgue@st.com, + davem@davemloft.net +Cc: devicetree@vger.kernel.org, f.fainelli@gmail.com, netdev@vger.kernel.org, + linux-kernel@vger.kernel.org, LABBE Corentin <clabbe.montjoie@gmail.com>, + linux-arm-kernel@lists.infradead.org +Date: Tue, 14 Mar 2017 15:18:45 +0100 + +From: LABBE Corentin <clabbe.montjoie@gmail.com> -The sun8i-emac hardware is present on the Orange PI PC. +The dwmac-sun8i hardware is present on the Orange PI PC. It uses the internal PHY. This patch create the needed emac node. @@ -2556,10 +1641,10 @@ Signed-off-by: Corentin Labbe <clabbe.montjoie@gmail.com> 1 file changed, 8 insertions(+) diff --git a/arch/arm/boot/dts/sun8i-h3-orangepi-pc.dts b/arch/arm/boot/dts/sun8i-h3-orangepi-pc.dts -index 3ec9712..1b8dbc0 100644 +index f148111..746c25a 100644 --- a/arch/arm/boot/dts/sun8i-h3-orangepi-pc.dts +++ b/arch/arm/boot/dts/sun8i-h3-orangepi-pc.dts -@@ -54,6 +54,7 @@ +@@ -53,6 +53,7 @@ aliases { serial0 = &uart0; @@ -2567,7 +1652,7 @@ index 3ec9712..1b8dbc0 100644 }; chosen { -@@ -183,3 +184,10 @@ +@@ -184,3 +185,10 @@ /* USB VBUS is always on */ status = "okay"; }; @@ -2578,30 +1663,90 @@ index 3ec9712..1b8dbc0 100644 + allwinner,leds-active-low; + status = "okay"; +}; --- -2.9.3 +From patchwork Tue Mar 14 14:18:46 2017 +Content-Type: text/plain; charset="utf-8" +MIME-Version: 1.0 +Content-Transfer-Encoding: 7bit +Subject: [v2,10/20] ARM: dts: sun8i: Enable dwmac-sun8i on the Orange Pi 2 +From: Corentin LABBE <clabbe.montjoie@gmail.com> +X-Patchwork-Id: 9623557 +Message-Id: <20170314141856.24560-11-clabbe.montjoie@gmail.com> +To: robh+dt@kernel.org, mark.rutland@arm.com, + maxime.ripard@free-electrons.com, + wens@csie.org, linux@armlinux.org.uk, catalin.marinas@arm.com, + will.deacon@arm.com, peppe.cavallaro@st.com, alexandre.torgue@st.com, + davem@davemloft.net +Cc: devicetree@vger.kernel.org, f.fainelli@gmail.com, netdev@vger.kernel.org, + linux-kernel@vger.kernel.org, Corentin Labbe <clabbe.montjoie@gmail.com>, + linux-arm-kernel@lists.infradead.org +Date: Tue, 14 Mar 2017 15:18:46 +0100 + +The dwmac-sun8i hardware is present on the Orange PI 2. +It uses the internal PHY. + +This patch create the needed emac node. -From 05cf4e2c77424ad5c9dc8495a65d6695d2831b0a Mon Sep 17 00:00:00 2001 -From: Hans de Goede <hdegoede@redhat.com> -Date: Fri, 7 Oct 2016 10:25:54 +0200 -Subject: [PATCH 7/8] ARM: dts: sun8i: Enable sun8i-emac on the Orange PI One +Signed-off-by: Corentin Labbe <clabbe.montjoie@gmail.com> +--- + arch/arm/boot/dts/sun8i-h3-orangepi-2.dts | 8 ++++++++ + 1 file changed, 8 insertions(+) + +diff --git a/arch/arm/boot/dts/sun8i-h3-orangepi-2.dts b/arch/arm/boot/dts/sun8i-h3-orangepi-2.dts +index 5b6d145..3f54b12 100644 +--- a/arch/arm/boot/dts/sun8i-h3-orangepi-2.dts ++++ b/arch/arm/boot/dts/sun8i-h3-orangepi-2.dts +@@ -55,6 +55,7 @@ + serial0 = &uart0; + /* ethernet0 is the H3 emac, defined in sun8i-h3.dtsi */ + ethernet1 = &rtl8189; ++ ethernet0 = &emac; + }; + + chosen { +@@ -203,3 +204,10 @@ + usb1_vbus-supply = <®_usb1_vbus>; + status = "okay"; + }; ++ ++&emac { ++ phy-handle = <&int_mii_phy>; ++ phy-mode = "mii"; ++ allwinner,leds-active-low; ++ status = "okay"; ++}; +From patchwork Tue Mar 14 14:18:47 2017 +Content-Type: text/plain; charset="utf-8" +MIME-Version: 1.0 +Content-Transfer-Encoding: 7bit +Subject: [v2,11/20] ARM: dts: sun8i: Enable dwmac-sun8i on the Orange PI One +From: Corentin LABBE <clabbe.montjoie@gmail.com> +X-Patchwork-Id: 9623541 +Message-Id: <20170314141856.24560-12-clabbe.montjoie@gmail.com> +To: robh+dt@kernel.org, mark.rutland@arm.com, + maxime.ripard@free-electrons.com, + wens@csie.org, linux@armlinux.org.uk, catalin.marinas@arm.com, + will.deacon@arm.com, peppe.cavallaro@st.com, alexandre.torgue@st.com, + davem@davemloft.net +Cc: devicetree@vger.kernel.org, f.fainelli@gmail.com, netdev@vger.kernel.org, + linux-kernel@vger.kernel.org, Corentin Labbe <clabbe.montjoie@gmail.com>, + linux-arm-kernel@lists.infradead.org +Date: Tue, 14 Mar 2017 15:18:47 +0100 -The sun8i-emac hardware is present on the Orange PI One. +The dwmac-sun8i hardware is present on the Orange PI One. It uses the internal PHY. This patch create the needed emac node. -Signed-off-by: Hans de Goede <hdegoede@redhat.com> Signed-off-by: Corentin Labbe <clabbe.montjoie@gmail.com> --- arch/arm/boot/dts/sun8i-h3-orangepi-one.dts | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/arch/arm/boot/dts/sun8i-h3-orangepi-one.dts b/arch/arm/boot/dts/sun8i-h3-orangepi-one.dts -index 5c9b5bf..fa398cc 100644 +index ea8fd13..1f98ddc 100644 --- a/arch/arm/boot/dts/sun8i-h3-orangepi-one.dts +++ b/arch/arm/boot/dts/sun8i-h3-orangepi-one.dts -@@ -54,6 +54,7 @@ +@@ -53,6 +53,7 @@ aliases { serial0 = &uart0; @@ -2609,7 +1754,7 @@ index 5c9b5bf..fa398cc 100644 }; chosen { -@@ -94,6 +95,13 @@ +@@ -93,6 +94,13 @@ status = "okay"; }; @@ -2623,47 +1768,412 @@ index 5c9b5bf..fa398cc 100644 &mmc0 { pinctrl-names = "default"; pinctrl-0 = <&mmc0_pins_a>, <&mmc0_cd_pin>; --- -2.9.3 - -From 52c300b614fcb29e81067aa7ed8aafa489b590b7 Mon Sep 17 00:00:00 2001 -From: Peter Robinson <pbrobinson@gmail.com> -Date: Tue, 8 Nov 2016 10:24:42 +0000 -Subject: [PATCH 8/8] ARM: dts: sun8i: Enable sun8i-emac on the Orange Pi 2 +From patchwork Tue Mar 14 14:18:48 2017 +Content-Type: text/plain; charset="utf-8" +MIME-Version: 1.0 +Content-Transfer-Encoding: 7bit +Subject: [v2,12/20] ARM: dts: sun8i: Enable dwmac-sun8i on the Orange Pi plus +From: Corentin LABBE <clabbe.montjoie@gmail.com> +X-Patchwork-Id: 9623569 +Message-Id: <20170314141856.24560-13-clabbe.montjoie@gmail.com> +To: robh+dt@kernel.org, mark.rutland@arm.com, + maxime.ripard@free-electrons.com, + wens@csie.org, linux@armlinux.org.uk, catalin.marinas@arm.com, + will.deacon@arm.com, peppe.cavallaro@st.com, alexandre.torgue@st.com, + davem@davemloft.net +Cc: devicetree@vger.kernel.org, f.fainelli@gmail.com, netdev@vger.kernel.org, + linux-kernel@vger.kernel.org, Corentin Labbe <clabbe.montjoie@gmail.com>, + linux-arm-kernel@lists.infradead.org +Date: Tue, 14 Mar 2017 15:18:48 +0100 -The sun8i-emac hardware is present on the Orange PI 2. -It uses the internal PHY. +The dwmac-sun8i hardware is present on the Orange PI plus. +It uses an external PHY rtl8211e via RGMII. -This patch create the needed emac node. +This patch create the needed regulator, emac and phy nodes. Signed-off-by: Corentin Labbe <clabbe.montjoie@gmail.com> --- - arch/arm/boot/dts/sun8i-h3-orangepi-2.dts | 8 ++++++++ - 1 file changed, 8 insertions(+) + arch/arm/boot/dts/sun8i-h3-orangepi-plus.dts | 35 ++++++++++++++++++++++++++++ + 1 file changed, 35 insertions(+) -diff --git a/arch/arm/boot/dts/sun8i-h3-orangepi-2.dts b/arch/arm/boot/dts/sun8i-h3-orangepi-2.dts -index e5bcaba..ad66b61 100644 ---- a/arch/arm/boot/dts/sun8i-h3-orangepi-2.dts -+++ b/arch/arm/boot/dts/sun8i-h3-orangepi-2.dts -@@ -54,6 +54,7 @@ +diff --git a/arch/arm/boot/dts/sun8i-h3-orangepi-plus.dts b/arch/arm/boot/dts/sun8i-h3-orangepi-plus.dts +index 8c40ab7..4e075a2 100644 +--- a/arch/arm/boot/dts/sun8i-h3-orangepi-plus.dts ++++ b/arch/arm/boot/dts/sun8i-h3-orangepi-plus.dts +@@ -58,6 +58,18 @@ + enable-active-high; + gpio = <&pio 6 11 GPIO_ACTIVE_HIGH>; + }; ++ ++ reg_gmac_3v3: gmac-3v3 { ++ compatible = "regulator-fixed"; ++ pinctrl-names = "default"; ++ pinctrl-0 = <&gmac_power_pin_orangepi>; ++ regulator-name = "gmac-3v3"; ++ regulator-min-microvolt = <3300000>; ++ regulator-max-microvolt = <3300000>; ++ startup-delay-us = <100000>; ++ enable-active-high; ++ gpio = <&pio 3 6 GPIO_ACTIVE_HIGH>; ++ }; + }; - aliases { - serial0 = &uart0; -+ ethernet0 = &emac; - /* ethernet0 is the H3 emac, defined in sun8i-h3.dtsi */ - ethernet1 = &rtl8189; + &ehci3 { +@@ -86,8 +98,31 @@ + pins = "PG11"; + function = "gpio_out"; }; -@@ -212,3 +213,10 @@ - usb1_vbus-supply = <®_usb1_vbus>; - status = "okay"; ++ ++ gmac_power_pin_orangepi: gmac_power_pin@0 { ++ pins = "PD6"; ++ function = "gpio_out"; ++ drive-strength = <10>; ++ }; + }; + + &usbphy { + usb3_vbus-supply = <®_usb3_vbus>; }; + ++&mdio { ++ ext_rgmii_phy: ethernet-phy@1 { ++ reg = <0>; ++ }; ++}; ++ +&emac { -+ phy-handle = <&int_mii_phy>; -+ phy-mode = "mii"; ++ pinctrl-names = "default"; ++ pinctrl-0 = <&emac_rgmii_pins>; ++ phy-supply = <®_gmac_3v3>; ++ phy-handle = <&ext_rgmii_phy>; ++ phy-mode = "rgmii"; ++ + allwinner,leds-active-low; + status = "okay"; +}; --- -2.9.3 +From patchwork Tue Mar 14 14:18:49 2017 +Content-Type: text/plain; charset="utf-8" +MIME-Version: 1.0 +Content-Transfer-Encoding: 7bit +Subject: [v2, + 13/20] ARM: dts: sun8i: orangepi-pc-plus: Set EMAC activity LEDs to + active high +From: Corentin LABBE <clabbe.montjoie@gmail.com> +X-Patchwork-Id: 9623593 +Message-Id: <20170314141856.24560-14-clabbe.montjoie@gmail.com> +To: robh+dt@kernel.org, mark.rutland@arm.com, + maxime.ripard@free-electrons.com, + wens@csie.org, linux@armlinux.org.uk, catalin.marinas@arm.com, + will.deacon@arm.com, peppe.cavallaro@st.com, alexandre.torgue@st.com, + davem@davemloft.net +Cc: devicetree@vger.kernel.org, f.fainelli@gmail.com, netdev@vger.kernel.org, + linux-kernel@vger.kernel.org, Corentin Labbe <clabbe.montjoie@gmail.com>, + linux-arm-kernel@lists.infradead.org +Date: Tue, 14 Mar 2017 15:18:49 +0100 + +On the Orange Pi PC Plus, the polarity of the LEDs on the RJ45 Ethernet +port were changed from active low to active high. + +Signed-off-by: Chen-Yu Tsai <wens@csie.org> +Signed-off-by: Corentin Labbe <clabbe.montjoie@gmail.com> +--- + arch/arm/boot/dts/sun8i-h3-orangepi-pc-plus.dts | 5 +++++ + 1 file changed, 5 insertions(+) + +diff --git a/arch/arm/boot/dts/sun8i-h3-orangepi-pc-plus.dts b/arch/arm/boot/dts/sun8i-h3-orangepi-pc-plus.dts +index 8b93f5c..0380769 100644 +--- a/arch/arm/boot/dts/sun8i-h3-orangepi-pc-plus.dts ++++ b/arch/arm/boot/dts/sun8i-h3-orangepi-pc-plus.dts +@@ -86,3 +86,8 @@ + /* eMMC is missing pull-ups */ + bias-pull-up; + }; ++ ++&emac { ++ /* LEDs changed to active high on the plus */ ++ /delete-property/ allwinner,leds-active-low; ++}; +From patchwork Tue Mar 14 14:18:50 2017 +Content-Type: text/plain; charset="utf-8" +MIME-Version: 1.0 +Content-Transfer-Encoding: 7bit +Subject: [v2, 14/20] ARM64: dts: sun50i-a64: Add dt node for the syscon control + module +From: Corentin LABBE <clabbe.montjoie@gmail.com> +X-Patchwork-Id: 9623591 +Message-Id: <20170314141856.24560-15-clabbe.montjoie@gmail.com> +To: robh+dt@kernel.org, mark.rutland@arm.com, + maxime.ripard@free-electrons.com, + wens@csie.org, linux@armlinux.org.uk, catalin.marinas@arm.com, + will.deacon@arm.com, peppe.cavallaro@st.com, alexandre.torgue@st.com, + davem@davemloft.net +Cc: devicetree@vger.kernel.org, f.fainelli@gmail.com, netdev@vger.kernel.org, + linux-kernel@vger.kernel.org, Corentin Labbe <clabbe.montjoie@gmail.com>, + linux-arm-kernel@lists.infradead.org +Date: Tue, 14 Mar 2017 15:18:50 +0100 + +This patch add the dt node for the syscon register present on the +Allwinner A64. + +Only two register are present in this syscon and the only one useful is +the one dedicated to EMAC clock. + +Signed-off-by: Corentin Labbe <clabbe.montjoie@gmail.com> +--- + arch/arm64/boot/dts/allwinner/sun50i-a64.dtsi | 6 ++++++ + 1 file changed, 6 insertions(+) + +diff --git a/arch/arm64/boot/dts/allwinner/sun50i-a64.dtsi b/arch/arm64/boot/dts/allwinner/sun50i-a64.dtsi +index 1c64ea2..3b09af2 100644 +--- a/arch/arm64/boot/dts/allwinner/sun50i-a64.dtsi ++++ b/arch/arm64/boot/dts/allwinner/sun50i-a64.dtsi +@@ -121,6 +121,12 @@ + #size-cells = <1>; + ranges; + ++ syscon: syscon@01c00000 { ++ compatible = "syscon", ++ "allwinner,sun8i-h3-system-controller"; ++ reg = <0x01c00000 0x1000>; ++ }; ++ + mmc0: mmc@1c0f000 { + compatible = "allwinner,sun50i-a64-mmc"; + reg = <0x01c0f000 0x1000>; +From patchwork Tue Mar 14 14:18:51 2017 +Content-Type: text/plain; charset="utf-8" +MIME-Version: 1.0 +Content-Transfer-Encoding: 7bit +Subject: [v2,15/20] ARM64: dts: sun50i-a64: add dwmac-sun8i Ethernet driver +From: Corentin LABBE <clabbe.montjoie@gmail.com> +X-Patchwork-Id: 9623621 +Message-Id: <20170314141856.24560-16-clabbe.montjoie@gmail.com> +To: robh+dt@kernel.org, mark.rutland@arm.com, + maxime.ripard@free-electrons.com, + wens@csie.org, linux@armlinux.org.uk, catalin.marinas@arm.com, + will.deacon@arm.com, peppe.cavallaro@st.com, alexandre.torgue@st.com, + davem@davemloft.net +Cc: devicetree@vger.kernel.org, f.fainelli@gmail.com, netdev@vger.kernel.org, + linux-kernel@vger.kernel.org, Corentin Labbe <clabbe.montjoie@gmail.com>, + linux-arm-kernel@lists.infradead.org +Date: Tue, 14 Mar 2017 15:18:51 +0100 + +The dwmac-sun8i is an Ethernet MAC that supports 10/100/1000 Mbit +connections. It is very similar to the device found in the Allwinner +H3, but lacks the internal 100 Mbit PHY and its associated control +bits. +This adds the necessary bits to the Allwinner A64 SoC .dtsi, but keeps +it disabled at this level. + +Signed-off-by: Corentin Labbe <clabbe.montjoie@gmail.com> +--- + arch/arm64/boot/dts/allwinner/sun50i-a64.dtsi | 37 +++++++++++++++++++++++++++ + 1 file changed, 37 insertions(+) + +diff --git a/arch/arm64/boot/dts/allwinner/sun50i-a64.dtsi b/arch/arm64/boot/dts/allwinner/sun50i-a64.dtsi +index 3b09af2..57d69e5 100644 +--- a/arch/arm64/boot/dts/allwinner/sun50i-a64.dtsi ++++ b/arch/arm64/boot/dts/allwinner/sun50i-a64.dtsi +@@ -277,6 +277,23 @@ + bias-pull-up; + }; + ++ rmii_pins: rmii_pins { ++ pins = "PD10", "PD11", "PD13", "PD14", ++ "PD17", "PD18", "PD19", "PD20", ++ "PD22", "PD23"; ++ function = "emac"; ++ drive-strength = <40>; ++ }; ++ ++ rgmii_pins: rgmii_pins { ++ pins = "PD8", "PD9", "PD10", "PD11", ++ "PD12", "PD13", "PD15", ++ "PD16", "PD17", "PD18", "PD19", ++ "PD20", "PD21", "PD22", "PD23"; ++ function = "emac"; ++ drive-strength = <40>; ++ }; ++ + uart0_pins_a: uart0@0 { + pins = "PB8", "PB9"; + function = "uart0"; +@@ -381,6 +398,26 @@ + #size-cells = <0>; + }; + ++ emac: ethernet@1c30000 { ++ compatible = "allwinner,sun50i-a64-emac"; ++ syscon = <&syscon>; ++ reg = <0x01c30000 0x100>; ++ interrupts = <GIC_SPI 82 IRQ_TYPE_LEVEL_HIGH>; ++ interrupt-names = "macirq"; ++ resets = <&ccu RST_BUS_EMAC>; ++ reset-names = "stmmaceth"; ++ clocks = <&ccu CLK_BUS_EMAC>; ++ clock-names = "stmmaceth"; ++ status = "disabled"; ++ #address-cells = <1>; ++ #size-cells = <0>; ++ ++ mdio: mdio { ++ #address-cells = <1>; ++ #size-cells = <0>; ++ }; ++ }; ++ + gic: interrupt-controller@1c81000 { + compatible = "arm,gic-400"; + reg = <0x01c81000 0x1000>, +From patchwork Tue Mar 14 14:18:52 2017 +Content-Type: text/plain; charset="utf-8" +MIME-Version: 1.0 +Content-Transfer-Encoding: 7bit +Subject: [v2,16/20] ARM: dts: sun50i-a64: enable dwmac-sun8i on pine64 +From: Corentin LABBE <clabbe.montjoie@gmail.com> +X-Patchwork-Id: 9623607 +Message-Id: <20170314141856.24560-17-clabbe.montjoie@gmail.com> +To: robh+dt@kernel.org, mark.rutland@arm.com, + maxime.ripard@free-electrons.com, + wens@csie.org, linux@armlinux.org.uk, catalin.marinas@arm.com, + will.deacon@arm.com, peppe.cavallaro@st.com, alexandre.torgue@st.com, + davem@davemloft.net +Cc: devicetree@vger.kernel.org, f.fainelli@gmail.com, netdev@vger.kernel.org, + linux-kernel@vger.kernel.org, Corentin Labbe <clabbe.montjoie@gmail.com>, + linux-arm-kernel@lists.infradead.org +Date: Tue, 14 Mar 2017 15:18:52 +0100 + +The dwmac-sun8i hardware is present on the pine64 +It uses an external PHY via RMII. + +Signed-off-by: Corentin Labbe <clabbe.montjoie@gmail.com> +--- + arch/arm64/boot/dts/allwinner/sun50i-a64-pine64.dts | 15 +++++++++++++++ + 1 file changed, 15 insertions(+) + +diff --git a/arch/arm64/boot/dts/allwinner/sun50i-a64-pine64.dts b/arch/arm64/boot/dts/allwinner/sun50i-a64-pine64.dts +index c680ed3..b53994d 100644 +--- a/arch/arm64/boot/dts/allwinner/sun50i-a64-pine64.dts ++++ b/arch/arm64/boot/dts/allwinner/sun50i-a64-pine64.dts +@@ -109,3 +109,18 @@ + &usbphy { + status = "okay"; + }; ++ ++&mdio { ++ ext_rmii_phy1: ethernet-phy@1 { ++ reg = <1>; ++ }; ++}; ++ ++&emac { ++ pinctrl-names = "default"; ++ pinctrl-0 = <&rmii_pins>; ++ phy-mode = "rmii"; ++ phy-handle = <&ext_rmii_phy1>; ++ status = "okay"; ++ ++}; +From patchwork Tue Mar 14 14:18:53 2017 +Content-Type: text/plain; charset="utf-8" +MIME-Version: 1.0 +Content-Transfer-Encoding: 7bit +Subject: [v2,17/20] ARM: dts: sun50i-a64: enable dwmac-sun8i on pine64 plus +From: Corentin LABBE <clabbe.montjoie@gmail.com> +X-Patchwork-Id: 9623597 +Message-Id: <20170314141856.24560-18-clabbe.montjoie@gmail.com> +To: robh+dt@kernel.org, mark.rutland@arm.com, + maxime.ripard@free-electrons.com, + wens@csie.org, linux@armlinux.org.uk, catalin.marinas@arm.com, + will.deacon@arm.com, peppe.cavallaro@st.com, alexandre.torgue@st.com, + davem@davemloft.net +Cc: devicetree@vger.kernel.org, f.fainelli@gmail.com, netdev@vger.kernel.org, + linux-kernel@vger.kernel.org, Corentin Labbe <clabbe.montjoie@gmail.com>, + linux-arm-kernel@lists.infradead.org +Date: Tue, 14 Mar 2017 15:18:53 +0100 + +The dwmac-sun8i hardware is present on the pine64 plus. +It uses an external PHY rtl8211e via RGMII. + +Signed-off-by: Corentin Labbe <clabbe.montjoie@gmail.com> +--- + arch/arm64/boot/dts/allwinner/sun50i-a64-pine64-plus.dts | 16 +++++++++++++++- + 1 file changed, 15 insertions(+), 1 deletion(-) + +diff --git a/arch/arm64/boot/dts/allwinner/sun50i-a64-pine64-plus.dts b/arch/arm64/boot/dts/allwinner/sun50i-a64-pine64-plus.dts +index 790d14d..8e06aed 100644 +--- a/arch/arm64/boot/dts/allwinner/sun50i-a64-pine64-plus.dts ++++ b/arch/arm64/boot/dts/allwinner/sun50i-a64-pine64-plus.dts +@@ -46,5 +46,19 @@ + model = "Pine64+"; + compatible = "pine64,pine64-plus", "allwinner,sun50i-a64"; + +- /* TODO: Camera, Ethernet PHY, touchscreen, etc. */ ++ /* TODO: Camera, touchscreen, etc. */ ++}; ++ ++&mdio { ++ ext_rgmii_phy: ethernet-phy@1 { ++ reg = <1>; ++ }; ++}; ++ ++&emac { ++ pinctrl-names = "default"; ++ pinctrl-0 = <&rgmii_pins>; ++ phy-mode = "rgmii"; ++ phy-handle = <&ext_rgmii_phy>; ++ status = "okay"; + }; +From patchwork Tue Mar 14 14:18:54 2017 +Content-Type: text/plain; charset="utf-8" +MIME-Version: 1.0 +Content-Transfer-Encoding: 7bit +Subject: [v2, + 18/20] ARM: dts: sun50i-a64: enable dwmac-sun8i on the BananaPi M64 +From: Corentin LABBE <clabbe.montjoie@gmail.com> +X-Patchwork-Id: 9623595 +Message-Id: <20170314141856.24560-19-clabbe.montjoie@gmail.com> +To: robh+dt@kernel.org, mark.rutland@arm.com, + maxime.ripard@free-electrons.com, + wens@csie.org, linux@armlinux.org.uk, catalin.marinas@arm.com, + will.deacon@arm.com, peppe.cavallaro@st.com, alexandre.torgue@st.com, + davem@davemloft.net +Cc: devicetree@vger.kernel.org, f.fainelli@gmail.com, netdev@vger.kernel.org, + linux-kernel@vger.kernel.org, Corentin Labbe <clabbe.montjoie@gmail.com>, + linux-arm-kernel@lists.infradead.org +Date: Tue, 14 Mar 2017 15:18:54 +0100 +The dwmac-sun8i hardware is present on the BananaPi M64. +It uses an external PHY rtl8211e via RGMII. + +Signed-off-by: Corentin Labbe <clabbe.montjoie@gmail.com> +--- + arch/arm64/boot/dts/allwinner/sun50i-a64-bananapi-m64.dts | 14 ++++++++++++++ + 1 file changed, 14 insertions(+) + +diff --git a/arch/arm64/boot/dts/allwinner/sun50i-a64-bananapi-m64.dts b/arch/arm64/boot/dts/allwinner/sun50i-a64-bananapi-m64.dts +index 6872135..347c262 100644 +--- a/arch/arm64/boot/dts/allwinner/sun50i-a64-bananapi-m64.dts ++++ b/arch/arm64/boot/dts/allwinner/sun50i-a64-bananapi-m64.dts +@@ -77,6 +77,20 @@ + bias-pull-up; + }; + ++&mdio { ++ ext_rgmii_phy: ethernet-phy@1 { ++ reg = <1>; ++ }; ++}; ++ ++&emac { ++ pinctrl-names = "default"; ++ pinctrl-0 = <&rgmii_pins>; ++ phy-mode = "rgmii"; ++ phy-handle = <&ext_rgmii_phy>; ++ status = "okay"; ++}; ++ + &mmc0 { + pinctrl-names = "default"; + pinctrl-0 = <&mmc0_pins>; diff --git a/Armada-trace-build-fix.patch b/Armada-trace-build-fix.patch deleted file mode 100644 index f78b121c0..000000000 --- a/Armada-trace-build-fix.patch +++ /dev/null @@ -1,20 +0,0 @@ -From: Fedora Kernel Team <kernel-team@fedoraproject.org> -Date: Wed, 14 Dec 2016 16:53:21 -0600 -Subject: [PATCH] Armada trace build fix - ---- - drivers/gpu/drm/armada/Makefile | 2 ++ - 1 file changed, 2 insertions(+) - -diff --git a/drivers/gpu/drm/armada/Makefile b/drivers/gpu/drm/armada/Makefile ---- a/drivers/gpu/drm/armada/Makefile -+++ b/drivers/gpu/drm/armada/Makefile -@@ -4,3 +4,5 @@ armada-y += armada_510.o - armada-$(CONFIG_DEBUG_FS) += armada_debugfs.o - - obj-$(CONFIG_DRM_ARMADA) := armada.o -+ -+CFLAGS_armada_trace.o := -I$(src) --- -2.9.3 - diff --git a/CVE-2017-7477.patch b/CVE-2017-7477.patch new file mode 100644 index 000000000..6405614cc --- /dev/null +++ b/CVE-2017-7477.patch @@ -0,0 +1,73 @@ +From 4d6fa57b4dab0d77f4d8e9d9c73d1e63f6fe8fee Mon Sep 17 00:00:00 2001 +From: "Jason A. Donenfeld" <Jason@zx2c4.com> +Date: Fri, 21 Apr 2017 23:14:48 +0200 +Subject: macsec: avoid heap overflow in skb_to_sgvec + +While this may appear as a humdrum one line change, it's actually quite +important. An sk_buff stores data in three places: + +1. A linear chunk of allocated memory in skb->data. This is the easiest + one to work with, but it precludes using scatterdata since the memory + must be linear. +2. The array skb_shinfo(skb)->frags, which is of maximum length + MAX_SKB_FRAGS. This is nice for scattergather, since these fragments + can point to different pages. +3. skb_shinfo(skb)->frag_list, which is a pointer to another sk_buff, + which in turn can have data in either (1) or (2). + +The first two are rather easy to deal with, since they're of a fixed +maximum length, while the third one is not, since there can be +potentially limitless chains of fragments. Fortunately dealing with +frag_list is opt-in for drivers, so drivers don't actually have to deal +with this mess. For whatever reason, macsec decided it wanted pain, and +so it explicitly specified NETIF_F_FRAGLIST. + +Because dealing with (1), (2), and (3) is insane, most users of sk_buff +doing any sort of crypto or paging operation calls a convenient function +called skb_to_sgvec (which happens to be recursive if (3) is in use!). +This takes a sk_buff as input, and writes into its output pointer an +array of scattergather list items. Sometimes people like to declare a +fixed size scattergather list on the stack; othertimes people like to +allocate a fixed size scattergather list on the heap. However, if you're +doing it in a fixed-size fashion, you really shouldn't be using +NETIF_F_FRAGLIST too (unless you're also ensuring the sk_buff and its +frag_list children arent't shared and then you check the number of +fragments in total required.) + +Macsec specifically does this: + + size += sizeof(struct scatterlist) * (MAX_SKB_FRAGS + 1); + tmp = kmalloc(size, GFP_ATOMIC); + *sg = (struct scatterlist *)(tmp + sg_offset); + ... + sg_init_table(sg, MAX_SKB_FRAGS + 1); + skb_to_sgvec(skb, sg, 0, skb->len); + +Specifying MAX_SKB_FRAGS + 1 is the right answer usually, but not if you're +using NETIF_F_FRAGLIST, in which case the call to skb_to_sgvec will +overflow the heap, and disaster ensues. + +Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com> +Cc: stable@vger.kernel.org +Cc: security@kernel.org +Signed-off-by: David S. Miller <davem@davemloft.net> +--- + drivers/net/macsec.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/drivers/net/macsec.c b/drivers/net/macsec.c +index ff0a5ed..dbab05a 100644 +--- a/drivers/net/macsec.c ++++ b/drivers/net/macsec.c +@@ -2716,7 +2716,7 @@ static netdev_tx_t macsec_start_xmit(struct sk_buff *skb, + } + + #define MACSEC_FEATURES \ +- (NETIF_F_SG | NETIF_F_HIGHDMA | NETIF_F_FRAGLIST) ++ (NETIF_F_SG | NETIF_F_HIGHDMA) + static struct lock_class_key macsec_netdev_addr_lock_key; + + static int macsec_dev_init(struct net_device *dev) +-- +cgit v1.1 + diff --git a/CVE-2017-7645.patch b/CVE-2017-7645.patch new file mode 100644 index 000000000..0be019cc3 --- /dev/null +++ b/CVE-2017-7645.patch @@ -0,0 +1,180 @@ +From: "J. Bruce Fields" <bfields@redhat.com> +Date: 2017-04-14 15:04:40 +Subject: [PATCH] nfsd: check for oversized NFSv2/v3 arguments + +A client can append random data to the end of an NFSv2 or NFSv3 RPC call +without our complaining; we'll just stop parsing at the end of the +expected data and ignore the rest. + +Encoded arguments and replies are stored together in an array of pages, +and if a call is too large it could leave inadequate space for the +reply. This is normally OK because NFS RPC's typically have either +short arguments and long replies (like READ) or long arguments and short +replies (like WRITE). But a client that sends an incorrectly long reply +can violate those assumptions. This was observed to cause crashes. + +So, insist that the argument not be any longer than we expect. + +Also, several operations increment rq_next_page in the decode routine +before checking the argument size, which can leave rq_next_page pointing +well past the end of the page array, causing trouble later in +svc_free_pages. + +As followup we may also want to rewrite the encoding routines to check +more carefully that they aren't running off the end of the page array. + +Reported-by: Tuomas Haanpää <thaan@synopsys.com> +Reported-by: Ari Kauppi <ari@synopsys.com> +Cc: stable@vger.kernel.org +Signed-off-by: J. Bruce Fields <bfields@redhat.com> +--- + fs/nfsd/nfs3xdr.c | 23 +++++++++++++++++------ + fs/nfsd/nfsxdr.c | 13 ++++++++++--- + include/linux/sunrpc/svc.h | 3 +-- + 3 files changed, 28 insertions(+), 11 deletions(-) + +diff --git a/fs/nfsd/nfs3xdr.c b/fs/nfsd/nfs3xdr.c +index dba2ff8eaa68..be66bcadfaea 100644 +--- a/fs/nfsd/nfs3xdr.c ++++ b/fs/nfsd/nfs3xdr.c +@@ -334,8 +334,11 @@ nfs3svc_decode_readargs(struct svc_rqst *rqstp, __be32 *p, + if (!p) + return 0; + p = xdr_decode_hyper(p, &args->offset); +- + args->count = ntohl(*p++); ++ ++ if (!xdr_argsize_check(rqstp, p)) ++ return 0; ++ + len = min(args->count, max_blocksize); + + /* set up the kvec */ +@@ -349,7 +352,7 @@ nfs3svc_decode_readargs(struct svc_rqst *rqstp, __be32 *p, + v++; + } + args->vlen = v; +- return xdr_argsize_check(rqstp, p); ++ return 1; + } + + int +@@ -536,9 +539,11 @@ nfs3svc_decode_readlinkargs(struct svc_rqst *rqstp, __be32 *p, + p = decode_fh(p, &args->fh); + if (!p) + return 0; ++ if (!xdr_argsize_check(rqstp, p)) ++ return 0; + args->buffer = page_address(*(rqstp->rq_next_page++)); + +- return xdr_argsize_check(rqstp, p); ++ return 1; + } + + int +@@ -564,10 +569,14 @@ nfs3svc_decode_readdirargs(struct svc_rqst *rqstp, __be32 *p, + args->verf = p; p += 2; + args->dircount = ~0; + args->count = ntohl(*p++); ++ ++ if (!xdr_argsize_check(rqstp, p)) ++ return 0; ++ + args->count = min_t(u32, args->count, PAGE_SIZE); + args->buffer = page_address(*(rqstp->rq_next_page++)); + +- return xdr_argsize_check(rqstp, p); ++ return 1; + } + + int +@@ -585,6 +594,9 @@ nfs3svc_decode_readdirplusargs(struct svc_rqst *rqstp, __be32 *p, + args->dircount = ntohl(*p++); + args->count = ntohl(*p++); + ++ if (!xdr_argsize_check(rqstp, p)) ++ return 0; ++ + len = args->count = min(args->count, max_blocksize); + while (len > 0) { + struct page *p = *(rqstp->rq_next_page++); +@@ -592,8 +604,7 @@ nfs3svc_decode_readdirplusargs(struct svc_rqst *rqstp, __be32 *p, + args->buffer = page_address(p); + len -= PAGE_SIZE; + } +- +- return xdr_argsize_check(rqstp, p); ++ return 1; + } + + int +diff --git a/fs/nfsd/nfsxdr.c b/fs/nfsd/nfsxdr.c +index 41b468a6a90f..79268369f7b3 100644 +--- a/fs/nfsd/nfsxdr.c ++++ b/fs/nfsd/nfsxdr.c +@@ -257,6 +257,9 @@ nfssvc_decode_readargs(struct svc_rqst *rqstp, __be32 *p, + len = args->count = ntohl(*p++); + p++; /* totalcount - unused */ + ++ if (!xdr_argsize_check(rqstp, p)) ++ return 0; ++ + len = min_t(unsigned int, len, NFSSVC_MAXBLKSIZE_V2); + + /* set up somewhere to store response. +@@ -272,7 +275,7 @@ nfssvc_decode_readargs(struct svc_rqst *rqstp, __be32 *p, + v++; + } + args->vlen = v; +- return xdr_argsize_check(rqstp, p); ++ return 1; + } + + int +@@ -360,9 +363,11 @@ nfssvc_decode_readlinkargs(struct svc_rqst *rqstp, __be32 *p, struct nfsd_readli + p = decode_fh(p, &args->fh); + if (!p) + return 0; ++ if (!xdr_argsize_check(rqstp, p)) ++ return 0; + args->buffer = page_address(*(rqstp->rq_next_page++)); + +- return xdr_argsize_check(rqstp, p); ++ return 1; + } + + int +@@ -400,9 +405,11 @@ nfssvc_decode_readdirargs(struct svc_rqst *rqstp, __be32 *p, + args->cookie = ntohl(*p++); + args->count = ntohl(*p++); + args->count = min_t(u32, args->count, PAGE_SIZE); ++ if (!xdr_argsize_check(rqstp, p)) ++ return 0; + args->buffer = page_address(*(rqstp->rq_next_page++)); + +- return xdr_argsize_check(rqstp, p); ++ return 1; + } + + /* +diff --git a/include/linux/sunrpc/svc.h b/include/linux/sunrpc/svc.h +index e770abeed32d..6ef19cf658b4 100644 +--- a/include/linux/sunrpc/svc.h ++++ b/include/linux/sunrpc/svc.h +@@ -336,8 +336,7 @@ xdr_argsize_check(struct svc_rqst *rqstp, __be32 *p) + { + char *cp = (char *)p; + struct kvec *vec = &rqstp->rq_arg.head[0]; +- return cp >= (char*)vec->iov_base +- && cp <= (char*)vec->iov_base + vec->iov_len; ++ return cp == (char *)vec->iov_base + vec->iov_len; + } + + static inline int +-- +2.9.3 + +-- +To unsubscribe from this list: send the line "unsubscribe linux-nfs" in +the body of a message to majordomo@vger.kernel.org +More majordomo info at http://vger.kernel.org/majordomo-info.html diff --git a/Fix-tegra-to-use-stdout-path-for-serial-console.patch b/Fix-tegra-to-use-stdout-path-for-serial-console.patch deleted file mode 100644 index 80a2d1b95..000000000 --- a/Fix-tegra-to-use-stdout-path-for-serial-console.patch +++ /dev/null @@ -1,318 +0,0 @@ -From 15b8caef5f380d9465876478ff5e365bc6afa5b6 Mon Sep 17 00:00:00 2001 -From: Peter Robinson <pbrobinson@gmail.com> -Date: Sun, 6 Mar 2016 10:59:13 +0000 -Subject: [PATCH] Fix tegra to use stdout-path for serial console - ---- - arch/arm/boot/dts/tegra114-dalmore.dts | 4 ++++ - arch/arm/boot/dts/tegra124-jetson-tk1.dts | 4 ++++ - arch/arm/boot/dts/tegra124-nyan.dtsi | 4 ++++ - arch/arm/boot/dts/tegra124-venice2.dts | 4 ++++ - arch/arm/boot/dts/tegra20-harmony.dts | 4 ++++ - arch/arm/boot/dts/tegra20-iris-512.dts | 4 ++++ - arch/arm/boot/dts/tegra20-medcom-wide.dts | 4 ++++ - arch/arm/boot/dts/tegra20-paz00.dts | 4 ++++ - arch/arm/boot/dts/tegra20-seaboard.dts | 4 ++++ - arch/arm/boot/dts/tegra20-tamonten.dtsi | 4 ++++ - arch/arm/boot/dts/tegra20-trimslice.dts | 4 ++++ - arch/arm/boot/dts/tegra20-ventana.dts | 4 ++++ - arch/arm/boot/dts/tegra20-whistler.dts | 4 ++++ - arch/arm/boot/dts/tegra30-apalis-eval.dts | 4 ++++ - arch/arm/boot/dts/tegra30-beaver.dts | 4 ++++ - arch/arm/boot/dts/tegra30-cardhu.dtsi | 4 ++++ - arch/arm/boot/dts/tegra30-colibri-eval-v3.dts | 4 ++++ - arch/arm64/boot/dts/nvidia/tegra132-norrin.dts | 5 ++++- - arch/arm64/boot/dts/nvidia/tegra210-p2530.dtsi | 4 ++++ - 19 files changed, 76 insertions(+), 1 deletion(-) - -diff --git a/arch/arm/boot/dts/tegra114-dalmore.dts b/arch/arm/boot/dts/tegra114-dalmore.dts -index 8b7aa0d..b5748ee 100644 ---- a/arch/arm/boot/dts/tegra114-dalmore.dts -+++ b/arch/arm/boot/dts/tegra114-dalmore.dts -@@ -18,6 +18,10 @@ - serial0 = &uartd; - }; - -+ chosen { -+ stdout-path = "serial0:115200n8"; -+ }; -+ - memory { - reg = <0x80000000 0x40000000>; - }; -diff --git a/arch/arm/boot/dts/tegra124-jetson-tk1.dts b/arch/arm/boot/dts/tegra124-jetson-tk1.dts -index 66b4451..abf046a 100644 ---- a/arch/arm/boot/dts/tegra124-jetson-tk1.dts -+++ b/arch/arm/boot/dts/tegra124-jetson-tk1.dts -@@ -15,6 +15,10 @@ - serial0 = &uartd; - }; - -+ chosen { -+ stdout-path = "serial0:115200n8"; -+ }; -+ - memory { - reg = <0x0 0x80000000 0x0 0x80000000>; - }; -diff --git a/arch/arm/boot/dts/tegra124-nyan.dtsi b/arch/arm/boot/dts/tegra124-nyan.dtsi -index ec1aa64..e2cd39e 100644 ---- a/arch/arm/boot/dts/tegra124-nyan.dtsi -+++ b/arch/arm/boot/dts/tegra124-nyan.dtsi -@@ -8,6 +8,10 @@ - serial0 = &uarta; - }; - -+ chosen { -+ stdout-path = "serial0:115200n8"; -+ }; -+ - memory { - reg = <0x0 0x80000000 0x0 0x80000000>; - }; -diff --git a/arch/arm/boot/dts/tegra124-venice2.dts b/arch/arm/boot/dts/tegra124-venice2.dts -index cfbdf42..604f4b7 100644 ---- a/arch/arm/boot/dts/tegra124-venice2.dts -+++ b/arch/arm/boot/dts/tegra124-venice2.dts -@@ -13,6 +13,10 @@ - serial0 = &uarta; - }; - -+ chosen { -+ stdout-path = "serial0:115200n8"; -+ }; -+ - memory { - reg = <0x0 0x80000000 0x0 0x80000000>; - }; -diff --git a/arch/arm/boot/dts/tegra20-harmony.dts b/arch/arm/boot/dts/tegra20-harmony.dts -index b926a07..4b73c76 100644 ---- a/arch/arm/boot/dts/tegra20-harmony.dts -+++ b/arch/arm/boot/dts/tegra20-harmony.dts -@@ -13,6 +13,10 @@ - serial0 = &uartd; - }; - -+ chosen { -+ stdout-path = "serial0:115200n8"; -+ }; -+ - memory { - reg = <0x00000000 0x40000000>; - }; -diff --git a/arch/arm/boot/dts/tegra20-iris-512.dts b/arch/arm/boot/dts/tegra20-iris-512.dts -index 1dd7d7b..bb56dfe 100644 ---- a/arch/arm/boot/dts/tegra20-iris-512.dts -+++ b/arch/arm/boot/dts/tegra20-iris-512.dts -@@ -11,6 +11,10 @@ - serial1 = &uartd; - }; - -+ chosen { -+ stdout-path = "serial0:115200n8"; -+ }; -+ - host1x@50000000 { - hdmi@54280000 { - status = "okay"; -diff --git a/arch/arm/boot/dts/tegra20-medcom-wide.dts b/arch/arm/boot/dts/tegra20-medcom-wide.dts -index 9b87526..34c6588 100644 ---- a/arch/arm/boot/dts/tegra20-medcom-wide.dts -+++ b/arch/arm/boot/dts/tegra20-medcom-wide.dts -@@ -10,6 +10,10 @@ - serial0 = &uartd; - }; - -+ chosen { -+ stdout-path = "serial0:115200n8"; -+ }; -+ - pwm@7000a000 { - status = "okay"; - }; -diff --git a/arch/arm/boot/dts/tegra20-paz00.dts b/arch/arm/boot/dts/tegra20-paz00.dts -index ed7e100..81a10a9 100644 ---- a/arch/arm/boot/dts/tegra20-paz00.dts -+++ b/arch/arm/boot/dts/tegra20-paz00.dts -@@ -14,6 +14,10 @@ - serial1 = &uartc; - }; - -+ chosen { -+ stdout-path = "serial0:115200n8"; -+ }; -+ - memory { - reg = <0x00000000 0x20000000>; - }; -diff --git a/arch/arm/boot/dts/tegra20-seaboard.dts b/arch/arm/boot/dts/tegra20-seaboard.dts -index aea8994..0aed748 100644 ---- a/arch/arm/boot/dts/tegra20-seaboard.dts -+++ b/arch/arm/boot/dts/tegra20-seaboard.dts -@@ -13,6 +13,10 @@ - serial0 = &uartd; - }; - -+ chosen { -+ stdout-path = "serial0:115200n8"; -+ }; -+ - memory { - reg = <0x00000000 0x40000000>; - }; -diff --git a/arch/arm/boot/dts/tegra20-tamonten.dtsi b/arch/arm/boot/dts/tegra20-tamonten.dtsi -index 13d4e61..025e9e8 100644 ---- a/arch/arm/boot/dts/tegra20-tamonten.dtsi -+++ b/arch/arm/boot/dts/tegra20-tamonten.dtsi -@@ -10,6 +10,10 @@ - serial0 = &uartd; - }; - -+ chosen { -+ stdout-path = "serial0:115200n8"; -+ }; -+ - memory { - reg = <0x00000000 0x20000000>; - }; -diff --git a/arch/arm/boot/dts/tegra20-trimslice.dts b/arch/arm/boot/dts/tegra20-trimslice.dts -index d99af4e..69d25ca 100644 ---- a/arch/arm/boot/dts/tegra20-trimslice.dts -+++ b/arch/arm/boot/dts/tegra20-trimslice.dts -@@ -13,6 +13,10 @@ - serial0 = &uarta; - }; - -+ chosen { -+ stdout-path = "serial0:115200n8"; -+ }; -+ - memory { - reg = <0x00000000 0x40000000>; - }; -diff --git a/arch/arm/boot/dts/tegra20-ventana.dts b/arch/arm/boot/dts/tegra20-ventana.dts -index 04c58e9..c61533a 100644 ---- a/arch/arm/boot/dts/tegra20-ventana.dts -+++ b/arch/arm/boot/dts/tegra20-ventana.dts -@@ -13,6 +13,10 @@ - serial0 = &uartd; - }; - -+ chosen { -+ stdout-path = "serial0:115200n8"; -+ }; -+ - memory { - reg = <0x00000000 0x40000000>; - }; -diff --git a/arch/arm/boot/dts/tegra20-whistler.dts b/arch/arm/boot/dts/tegra20-whistler.dts -index 340d811..bd76585 100644 ---- a/arch/arm/boot/dts/tegra20-whistler.dts -+++ b/arch/arm/boot/dts/tegra20-whistler.dts -@@ -13,6 +13,10 @@ - serial0 = &uarta; - }; - -+ chosen { -+ stdout-path = "serial0:115200n8"; -+ }; -+ - memory { - reg = <0x00000000 0x20000000>; - }; -diff --git a/arch/arm/boot/dts/tegra30-apalis-eval.dts b/arch/arm/boot/dts/tegra30-apalis-eval.dts -index f2879cf..b914bcb 100644 ---- a/arch/arm/boot/dts/tegra30-apalis-eval.dts -+++ b/arch/arm/boot/dts/tegra30-apalis-eval.dts -@@ -17,6 +17,10 @@ - serial3 = &uartd; - }; - -+ chosen { -+ stdout-path = "serial0:115200n8"; -+ }; -+ - pcie-controller@00003000 { - status = "okay"; - -diff --git a/arch/arm/boot/dts/tegra30-beaver.dts b/arch/arm/boot/dts/tegra30-beaver.dts -index 3dede39..1eca3b2 100644 ---- a/arch/arm/boot/dts/tegra30-beaver.dts -+++ b/arch/arm/boot/dts/tegra30-beaver.dts -@@ -12,6 +12,10 @@ - serial0 = &uarta; - }; - -+ chosen { -+ stdout-path = "serial0:115200n8"; -+ }; -+ - memory { - reg = <0x80000000 0x7ff00000>; - }; -diff --git a/arch/arm/boot/dts/tegra30-cardhu.dtsi b/arch/arm/boot/dts/tegra30-cardhu.dtsi -index bb1ca15..de9d6cc 100644 ---- a/arch/arm/boot/dts/tegra30-cardhu.dtsi -+++ b/arch/arm/boot/dts/tegra30-cardhu.dtsi -@@ -35,6 +35,10 @@ - serial1 = &uartc; - }; - -+ chosen { -+ stdout-path = "serial0:115200n8"; -+ }; -+ - memory { - reg = <0x80000000 0x40000000>; - }; -diff --git a/arch/arm/boot/dts/tegra30-colibri-eval-v3.dts b/arch/arm/boot/dts/tegra30-colibri-eval-v3.dts -index 3ff019f..93e1ffd 100644 ---- a/arch/arm/boot/dts/tegra30-colibri-eval-v3.dts -+++ b/arch/arm/boot/dts/tegra30-colibri-eval-v3.dts -@@ -15,6 +15,10 @@ - serial2 = &uartd; - }; - -+ chosen { -+ stdout-path = "serial0:115200n8"; -+ }; -+ - host1x@50000000 { - dc@54200000 { - rgb { -diff --git a/arch/arm64/boot/dts/nvidia/tegra132-norrin.dts b/arch/arm64/boot/dts/nvidia/tegra132-norrin.dts -index 62f33fc..3c0b4d7 100644 ---- a/arch/arm64/boot/dts/nvidia/tegra132-norrin.dts -+++ b/arch/arm64/boot/dts/nvidia/tegra132-norrin.dts -@@ -10,9 +10,12 @@ - aliases { - rtc0 = "/i2c@0,7000d000/as3722@40"; - rtc1 = "/rtc@0,7000e000"; -+ serial0 = &uarta; - }; - -- chosen { }; -+ chosen { -+ stdout-path = "serial0:115200n8"; -+ }; - - memory { - device_type = "memory"; -diff --git a/arch/arm64/boot/dts/nvidia/tegra210-p2530.dtsi b/arch/arm64/boot/dts/nvidia/tegra210-p2530.dtsi -index ece0dec..73ba582 100644 ---- a/arch/arm64/boot/dts/nvidia/tegra210-p2530.dtsi -+++ b/arch/arm64/boot/dts/nvidia/tegra210-p2530.dtsi -@@ -9,6 +9,10 @@ - serial0 = &uarta; - }; - -+ chosen { -+ stdout-path = "serial0:115200n8"; -+ }; -+ - memory { - device_type = "memory"; - reg = <0x0 0x80000000 0x0 0xc0000000>; --- -2.5.0 - diff --git a/Initial-AllWinner-A64-and-PINE64-support.patch b/Initial-AllWinner-A64-and-PINE64-support.patch deleted file mode 100644 index 966275a8f..000000000 --- a/Initial-AllWinner-A64-and-PINE64-support.patch +++ /dev/null @@ -1,1200 +0,0 @@ -From 97f002d28e975991226ab70599731bd2ccc8c060 Mon Sep 17 00:00:00 2001 -From: Peter Robinson <pbrobinson@gmail.com> -Date: Sun, 6 Mar 2016 12:06:41 +0000 -Subject: [PATCH] Initial AllWinner A64 and PINE64 support - ---- - Documentation/devicetree/bindings/arm/sunxi.txt | 1 + - Documentation/devicetree/bindings/clock/sunxi.txt | 7 + - .../devicetree/bindings/vendor-prefixes.txt | 1 + - arch/arm/boot/dts/sun8i-h3.dtsi | 18 +- - arch/arm/mach-sunxi/Kconfig | 7 + - arch/arm64/Kconfig.platforms | 6 + - arch/arm64/boot/dts/Makefile | 1 + - arch/arm64/boot/dts/allwinner/Makefile | 5 + - .../dts/allwinner/sun50i-a64-pine64-common.dtsi | 80 +++ - .../boot/dts/allwinner/sun50i-a64-pine64-plus.dts | 59 ++ - .../arm64/boot/dts/allwinner/sun50i-a64-pine64.dts | 58 ++ - arch/arm64/boot/dts/allwinner/sun50i-a64.dtsi | 624 +++++++++++++++++++++ - drivers/clk/sunxi/Makefile | 1 + - drivers/clk/sunxi/clk-factors.c | 3 +- - drivers/clk/sunxi/clk-factors.h | 1 + - drivers/clk/sunxi/clk-multi-gates.c | 105 ++++ - drivers/clk/sunxi/clk-sunxi.c | 4 +- - drivers/crypto/Kconfig | 2 +- - 23 files changed, 1582 insertions(+), 16 deletions(-) - create mode 100644 arch/arm64/boot/dts/allwinner/Makefile - create mode 100644 arch/arm64/boot/dts/allwinner/sun50i-a64-pine64-common.dtsi - create mode 100644 arch/arm64/boot/dts/allwinner/sun50i-a64-pine64-plus.dts - create mode 100644 arch/arm64/boot/dts/allwinner/sun50i-a64-pine64.dts - create mode 100644 arch/arm64/boot/dts/allwinner/sun50i-a64.dtsi - create mode 100644 drivers/clk/sunxi/clk-multi-gates.c - create mode 100644 drivers/pinctrl/sunxi/pinctrl-sun50i-a64.c - -diff --git a/Documentation/devicetree/bindings/arm/sunxi.txt b/Documentation/devicetree/bindings/arm/sunxi.txt -index bb9b0faa..8b39d2b 100644 ---- a/Documentation/devicetree/bindings/arm/sunxi.txt -+++ b/Documentation/devicetree/bindings/arm/sunxi.txt -@@ -13,3 +13,4 @@ using one of the following compatible strings: - allwinner,sun8i-a83t - allwinner,sun8i-h3 - allwinner,sun9i-a80 -+ allwinner,sun50i-a64 -diff --git a/Documentation/devicetree/bindings/clock/sunxi.txt b/Documentation/devicetree/bindings/clock/sunxi.txt -index e59f57b..8af12b5 100644 ---- a/Documentation/devicetree/bindings/clock/sunxi.txt -+++ b/Documentation/devicetree/bindings/clock/sunxi.txt -@@ -77,6 +77,8 @@ Required properties: - "allwinner,sun9i-a80-usb-mod-clk" - for usb gates + resets on A80 - "allwinner,sun9i-a80-usb-phy-clk" - for usb phy gates + resets on A80 - "allwinner,sun4i-a10-ve-clk" - for the Video Engine clock -+ "allwinner,sunxi-multi-bus-gates-clk" - for the multi-parent bus gates -+ "allwinner,sun50i-a64-bus-gates-clk" - for the bus gates on A64 - - Required properties for all clocks: - - reg : shall be the control register address for the clock. -@@ -117,6 +119,11 @@ For "allwinner,sun6i-a31-pll6-clk", there are 2 outputs. The first output - is the normal PLL6 output, or "pll6". The second output is rate doubled - PLL6, or "pll6x2". - -+The "allwinner,sunxi-multi-bus-gates-clk" holds the actual clocks in -+child nodes, where each one specifies the parent clock that the particular -+gates are depending from. The child nodes each follow the common clock -+binding as described in this document. -+ - The "allwinner,*-mmc-clk" clocks have three different outputs: the - main clock, with the ID 0, and the output and sample clocks, with the - IDs 1 and 2, respectively. -diff --git a/Documentation/devicetree/bindings/vendor-prefixes.txt b/Documentation/devicetree/bindings/vendor-prefixes.txt -index 72e2c5a..0c22fa9 100644 ---- a/Documentation/devicetree/bindings/vendor-prefixes.txt -+++ b/Documentation/devicetree/bindings/vendor-prefixes.txt -@@ -175,6 +175,7 @@ parade Parade Technologies Inc. - pericom Pericom Technology Inc. - phytec PHYTEC Messtechnik GmbH - picochip Picochip Ltd -+pine64 Pine64 - plathome Plat'Home Co., Ltd. - plda PLDA - pixcir PIXCIR MICROELECTRONICS Co., Ltd -diff --git a/arch/arm/boot/dts/sun8i-h3.dtsi b/arch/arm/boot/dts/sun8i-h3.dtsi -index 1524130e..7c50fa0 100644 ---- a/arch/arm/boot/dts/sun8i-h3.dtsi -+++ b/arch/arm/boot/dts/sun8i-h3.dtsi -@@ -137,12 +137,12 @@ - clock-output-names = "pll6d2"; - }; - -- /* dummy clock until pll6 can be reused */ -- pll8: pll8_clk { -- #clock-cells = <0>; -- compatible = "fixed-clock"; -- clock-frequency = <1>; -- clock-output-names = "pll8"; -+ pll8: clk@c01c20044 { -+ #clock-cells = <1>; -+ compatible = "allwinner,sun6i-a31-pll6-clk"; -+ reg = <0x01c20044 0x4>; -+ clocks = <&osc24M>; -+ clock-output-names = "pll8", "pll8x2"; - }; - - cpu: cpu_clk@01c20050 { -@@ -243,7 +243,7 @@ - #clock-cells = <1>; - compatible = "allwinner,sun4i-a10-mmc-clk"; - reg = <0x01c20088 0x4>; -- clocks = <&osc24M>, <&pll6 0>, <&pll8>; -+ clocks = <&osc24M>, <&pll6 0>, <&pll8 0>; - clock-output-names = "mmc0", - "mmc0_output", - "mmc0_sample"; -@@ -253,7 +253,7 @@ - #clock-cells = <1>; - compatible = "allwinner,sun4i-a10-mmc-clk"; - reg = <0x01c2008c 0x4>; -- clocks = <&osc24M>, <&pll6 0>, <&pll8>; -+ clocks = <&osc24M>, <&pll6 0>, <&pll8 0>; - clock-output-names = "mmc1", - "mmc1_output", - "mmc1_sample"; -@@ -263,7 +263,7 @@ - #clock-cells = <1>; - compatible = "allwinner,sun4i-a10-mmc-clk"; - reg = <0x01c20090 0x4>; -- clocks = <&osc24M>, <&pll6 0>, <&pll8>; -+ clocks = <&osc24M>, <&pll6 0>, <&pll8 0>; - clock-output-names = "mmc2", - "mmc2_output", - "mmc2_sample"; -diff --git a/arch/arm/mach-sunxi/Kconfig b/arch/arm/mach-sunxi/Kconfig -index c124d65..b305f5b 100644 ---- a/arch/arm/mach-sunxi/Kconfig -+++ b/arch/arm/mach-sunxi/Kconfig -@@ -46,4 +46,11 @@ config MACH_SUN9I - default ARCH_SUNXI - select ARM_GIC - -+config MACH_SUN50I -+ bool "Allwinner A64 (sun50i) SoCs support" -+ default ARCH_SUNXI -+ select ARM_GIC -+ select HAVE_ARM_ARCH_TIMER -+ select PINCTRL_SUN50I_A64 -+ - endif -diff --git a/arch/arm64/Kconfig.platforms b/arch/arm64/Kconfig.platforms -index 21074f6..63a690d 100644 ---- a/arch/arm64/Kconfig.platforms -+++ b/arch/arm64/Kconfig.platforms -@@ -72,6 +72,12 @@ config ARCH_SEATTLE - config ARCH_SHMOBILE - bool - -+config ARCH_SUNXI -+ bool "Allwinner sunxi 64-bit SoC Family" -+ select PINCTRL_SUN50I_A64 -+ help -+ This enables support for Allwinner sunxi based SoCs like the A64. -+ - config ARCH_RENESAS - bool "Renesas SoC Platforms" - select ARCH_SHMOBILE -diff --git a/arch/arm64/boot/dts/Makefile b/arch/arm64/boot/dts/Makefile -index f832b8a..3b7428a 100644 ---- a/arch/arm64/boot/dts/Makefile -+++ b/arch/arm64/boot/dts/Makefile -@@ -2,3 +2,4 @@ - dts-dirs += al -+dts-dirs += allwinner - dts-dirs += altera - dts-dirs += amd -diff --git a/arch/arm64/boot/dts/allwinner/Makefile b/arch/arm64/boot/dts/allwinner/Makefile -new file mode 100644 -index 0000000..1e29a5a ---- /dev/null -+++ b/arch/arm64/boot/dts/allwinner/Makefile -@@ -0,0 +1,5 @@ -+dtb-$(CONFIG_ARCH_SUNXI) += sun50i-a64-pine64-plus.dtb sun50i-a64-pine64.dtb -+ -+always := $(dtb-y) -+subdir-y := $(dts-dirs) -+clean-files := *.dtb -diff --git a/arch/arm64/boot/dts/allwinner/sun50i-a64-pine64-common.dtsi b/arch/arm64/boot/dts/allwinner/sun50i-a64-pine64-common.dtsi -new file mode 100644 -index 0000000..d5a7249 ---- /dev/null -+++ b/arch/arm64/boot/dts/allwinner/sun50i-a64-pine64-common.dtsi -@@ -0,0 +1,80 @@ -+/* -+ * Copyright (c) 2016 ARM Ltd. -+ * -+ * This file is dual-licensed: you can use it either under the terms -+ * of the GPL or the X11 license, at your option. Note that this dual -+ * licensing only applies to this file, and not this project as a -+ * whole. -+ * -+ * a) This library is free software; you can redistribute it and/or -+ * modify it under the terms of the GNU General Public License as -+ * published by the Free Software Foundation; either version 2 of the -+ * License, or (at your option) any later version. -+ * -+ * This library is distributed in the hope that it will be useful, -+ * but WITHOUT ANY WARRANTY; without even the implied warranty of -+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -+ * GNU General Public License for more details. -+ * -+ * Or, alternatively, -+ * -+ * b) Permission is hereby granted, free of charge, to any person -+ * obtaining a copy of this software and associated documentation -+ * files (the "Software"), to deal in the Software without -+ * restriction, including without limitation the rights to use, -+ * copy, modify, merge, publish, distribute, sublicense, and/or -+ * sell copies of the Software, and to permit persons to whom the -+ * Software is furnished to do so, subject to the following -+ * conditions: -+ * -+ * The above copyright notice and this permission notice shall be -+ * included in all copies or substantial portions of the Software. -+ * -+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, -+ * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES -+ * OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND -+ * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT -+ * HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, -+ * WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING -+ * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR -+ * OTHER DEALINGS IN THE SOFTWARE. -+ */ -+ -+#include "sun50i-a64.dtsi" -+ -+/ { -+ -+ aliases { -+ serial0 = &uart0; -+ }; -+ -+ soc { -+ reg_vcc3v3: vcc3v3 { -+ compatible = "regulator-fixed"; -+ regulator-name = "vcc3v3"; -+ regulator-min-microvolt = <3300000>; -+ regulator-max-microvolt = <3300000>; -+ }; -+ }; -+}; -+ -+&mmc0 { -+ pinctrl-names = "default"; -+ pinctrl-0 = <&mmc0_pins>, <&mmc0_default_cd_pin>; -+ vmmc-supply = <®_vcc3v3>; -+ cd-gpios = <&pio 5 6 0>; -+ cd-inverted; -+ status = "okay"; -+}; -+ -+&uart0 { -+ pinctrl-names = "default"; -+ pinctrl-0 = <&uart0_pins_a>; -+ status = "okay"; -+}; -+ -+&i2c1 { -+ pinctrl-names = "default"; -+ pinctrl-0 = <&i2c1_pins>; -+ status = "okay"; -+}; -diff --git a/arch/arm64/boot/dts/allwinner/sun50i-a64-pine64-plus.dts b/arch/arm64/boot/dts/allwinner/sun50i-a64-pine64-plus.dts -new file mode 100644 -index 0000000..549dc15 ---- /dev/null -+++ b/arch/arm64/boot/dts/allwinner/sun50i-a64-pine64-plus.dts -@@ -0,0 +1,59 @@ -+/* -+ * Copyright (c) 2016 ARM Ltd. -+ * -+ * This file is dual-licensed: you can use it either under the terms -+ * of the GPL or the X11 license, at your option. Note that this dual -+ * licensing only applies to this file, and not this project as a -+ * whole. -+ * -+ * a) This library is free software; you can redistribute it and/or -+ * modify it under the terms of the GNU General Public License as -+ * published by the Free Software Foundation; either version 2 of the -+ * License, or (at your option) any later version. -+ * -+ * This library is distributed in the hope that it will be useful, -+ * but WITHOUT ANY WARRANTY; without even the implied warranty of -+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -+ * GNU General Public License for more details. -+ * -+ * Or, alternatively, -+ * -+ * b) Permission is hereby granted, free of charge, to any person -+ * obtaining a copy of this software and associated documentation -+ * files (the "Software"), to deal in the Software without -+ * restriction, including without limitation the rights to use, -+ * copy, modify, merge, publish, distribute, sublicense, and/or -+ * sell copies of the Software, and to permit persons to whom the -+ * Software is furnished to do so, subject to the following -+ * conditions: -+ * -+ * The above copyright notice and this permission notice shall be -+ * included in all copies or substantial portions of the Software. -+ * -+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, -+ * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES -+ * OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND -+ * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT -+ * HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, -+ * WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING -+ * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR -+ * OTHER DEALINGS IN THE SOFTWARE. -+ */ -+ -+/dts-v1/; -+ -+#include "sun50i-a64-pine64-common.dtsi" -+ -+/ { -+ model = "Pine64+"; -+ compatible = "pine64,pine64-plus", "allwinner,sun50i-a64"; -+ -+ chosen { -+ stdout-path = "serial0:115200n8"; -+ }; -+ -+ /* There is a model with 2GB of DRAM, but U-Boot fixes this for us. */ -+ memory { -+ reg = <0x40000000 0x40000000>; -+ }; -+}; -diff --git a/arch/arm64/boot/dts/allwinner/sun50i-a64-pine64.dts b/arch/arm64/boot/dts/allwinner/sun50i-a64-pine64.dts -new file mode 100644 -index 0000000..ebe029e ---- /dev/null -+++ b/arch/arm64/boot/dts/allwinner/sun50i-a64-pine64.dts -@@ -0,0 +1,58 @@ -+/* -+ * Copyright (c) 2016 ARM Ltd. -+ * -+ * This file is dual-licensed: you can use it either under the terms -+ * of the GPL or the X11 license, at your option. Note that this dual -+ * licensing only applies to this file, and not this project as a -+ * whole. -+ * -+ * a) This library is free software; you can redistribute it and/or -+ * modify it under the terms of the GNU General Public License as -+ * published by the Free Software Foundation; either version 2 of the -+ * License, or (at your option) any later version. -+ * -+ * This library is distributed in the hope that it will be useful, -+ * but WITHOUT ANY WARRANTY; without even the implied warranty of -+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -+ * GNU General Public License for more details. -+ * -+ * Or, alternatively, -+ * -+ * b) Permission is hereby granted, free of charge, to any person -+ * obtaining a copy of this software and associated documentation -+ * files (the "Software"), to deal in the Software without -+ * restriction, including without limitation the rights to use, -+ * copy, modify, merge, publish, distribute, sublicense, and/or -+ * sell copies of the Software, and to permit persons to whom the -+ * Software is furnished to do so, subject to the following -+ * conditions: -+ * -+ * The above copyright notice and this permission notice shall be -+ * included in all copies or substantial portions of the Software. -+ * -+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, -+ * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES -+ * OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND -+ * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT -+ * HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, -+ * WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING -+ * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR -+ * OTHER DEALINGS IN THE SOFTWARE. -+ */ -+ -+/dts-v1/; -+ -+#include "sun50i-a64-pine64-common.dtsi" -+ -+/ { -+ model = "Pine64"; -+ compatible = "pine64,pine64", "allwinner,sun50i-a64"; -+ -+ chosen { -+ stdout-path = "serial0:115200n8"; -+ }; -+ -+ memory { -+ reg = <0x40000000 0x20000000>; -+ }; -+}; -diff --git a/arch/arm64/boot/dts/allwinner/sun50i-a64.dtsi b/arch/arm64/boot/dts/allwinner/sun50i-a64.dtsi -new file mode 100644 -index 0000000..1bd436f ---- /dev/null -+++ b/arch/arm64/boot/dts/allwinner/sun50i-a64.dtsi -@@ -0,0 +1,624 @@ -+/* -+ * Copyright (C) 2016 ARM Ltd. -+ * based on the Allwinner H3 dtsi: -+ * Copyright (C) 2015 Jens Kuske <jenskuske@gmail.com> -+ * -+ * This file is dual-licensed: you can use it either under the terms -+ * of the GPL or the X11 license, at your option. Note that this dual -+ * licensing only applies to this file, and not this project as a -+ * whole. -+ * -+ * a) This file is free software; you can redistribute it and/or -+ * modify it under the terms of the GNU General Public License as -+ * published by the Free Software Foundation; either version 2 of the -+ * License, or (at your option) any later version. -+ * -+ * This file is distributed in the hope that it will be useful, -+ * but WITHOUT ANY WARRANTY; without even the implied warranty of -+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -+ * GNU General Public License for more details. -+ * -+ * Or, alternatively, -+ * -+ * b) Permission is hereby granted, free of charge, to any person -+ * obtaining a copy of this software and associated documentation -+ * files (the "Software"), to deal in the Software without -+ * restriction, including without limitation the rights to use, -+ * copy, modify, merge, publish, distribute, sublicense, and/or -+ * sell copies of the Software, and to permit persons to whom the -+ * Software is furnished to do so, subject to the following -+ * conditions: -+ * -+ * The above copyright notice and this permission notice shall be -+ * included in all copies or substantial portions of the Software. -+ * -+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, -+ * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES -+ * OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND -+ * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT -+ * HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, -+ * WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING -+ * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR -+ * OTHER DEALINGS IN THE SOFTWARE. -+ */ -+ -+#include <dt-bindings/interrupt-controller/arm-gic.h> -+#include <dt-bindings/pinctrl/sun4i-a10.h> -+ -+/ { -+ interrupt-parent = <&gic>; -+ #address-cells = <1>; -+ #size-cells = <1>; -+ -+ cpus { -+ #address-cells = <1>; -+ #size-cells = <0>; -+ -+ cpu@0 { -+ compatible = "arm,cortex-a53", "arm,armv8"; -+ device_type = "cpu"; -+ reg = <0>; -+ enable-method = "psci"; -+ }; -+ -+ cpu@1 { -+ compatible = "arm,cortex-a53", "arm,armv8"; -+ device_type = "cpu"; -+ reg = <1>; -+ enable-method = "psci"; -+ }; -+ -+ cpu@2 { -+ compatible = "arm,cortex-a53", "arm,armv8"; -+ device_type = "cpu"; -+ reg = <2>; -+ enable-method = "psci"; -+ }; -+ -+ cpu@3 { -+ compatible = "arm,cortex-a53", "arm,armv8"; -+ device_type = "cpu"; -+ reg = <3>; -+ enable-method = "psci"; -+ }; -+ }; -+ -+ psci { -+ compatible = "arm,psci-0.2"; -+ method = "smc"; -+ }; -+ -+ memory { -+ device_type = "memory"; -+ reg = <0x40000000 0>; -+ }; -+ -+ gic: interrupt-controller@1c81000 { -+ compatible = "arm,gic-400"; -+ interrupt-controller; -+ #interrupt-cells = <3>; -+ #address-cells = <0>; -+ -+ reg = <0x01c81000 0x1000>, -+ <0x01c82000 0x2000>, -+ <0x01c84000 0x2000>, -+ <0x01c86000 0x2000>; -+ interrupts = <GIC_PPI 9 -+ (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_HIGH)>; -+ }; -+ -+ timer { -+ compatible = "arm,armv8-timer"; -+ interrupts = <GIC_PPI 13 -+ (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_HIGH)>, -+ <GIC_PPI 14 -+ (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_HIGH)>, -+ <GIC_PPI 11 -+ (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_HIGH)>, -+ <GIC_PPI 10 -+ (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_HIGH)>; -+ }; -+ -+ clocks { -+ #address-cells = <1>; -+ #size-cells = <1>; -+ ranges; -+ -+ osc24M: osc24M_clk { -+ #clock-cells = <0>; -+ compatible = "fixed-clock"; -+ clock-frequency = <24000000>; -+ clock-output-names = "osc24M"; -+ }; -+ -+ osc32k: osc32k_clk { -+ #clock-cells = <0>; -+ compatible = "fixed-clock"; -+ clock-frequency = <32768>; -+ clock-output-names = "osc32k"; -+ }; -+ -+ pll1: pll1_clk@1c20000 { -+ #clock-cells = <0>; -+ compatible = "allwinner,sun8i-a23-pll1-clk"; -+ reg = <0x01c20000 0x4>; -+ clocks = <&osc24M>; -+ clock-output-names = "pll1"; -+ }; -+ -+ pll6: pll6_clk@1c20028 { -+ #clock-cells = <1>; -+ compatible = "allwinner,sun6i-a31-pll6-clk"; -+ reg = <0x01c20028 0x4>; -+ clocks = <&osc24M>; -+ clock-output-names = "pll6", "pll6x2"; -+ }; -+ -+ pll6d2: pll6d2_clk { -+ #clock-cells = <0>; -+ compatible = "fixed-factor-clock"; -+ clock-div = <2>; -+ clock-mult = <1>; -+ clocks = <&pll6 0>; -+ clock-output-names = "pll6d2"; -+ }; -+ -+ pll7: pll7_clk@1c2002c { -+ #clock-cells = <1>; -+ compatible = "allwinner,sun6i-a31-pll6-clk"; -+ reg = <0x01c2002c 0x4>; -+ clocks = <&osc24M>; -+ clock-output-names = "pll7", "pll7x2"; -+ }; -+ -+ cpu: cpu_clk@1c20050 { -+ #clock-cells = <0>; -+ compatible = "allwinner,sun4i-a10-cpu-clk"; -+ reg = <0x01c20050 0x4>; -+ clocks = <&osc32k>, <&osc24M>, <&pll1>, <&pll1>; -+ clock-output-names = "cpu"; -+ critical-clocks = <0>; -+ }; -+ -+ axi: axi_clk@1c20050 { -+ #clock-cells = <0>; -+ compatible = "allwinner,sun4i-a10-axi-clk"; -+ reg = <0x01c20050 0x4>; -+ clocks = <&cpu>; -+ clock-output-names = "axi"; -+ }; -+ -+ ahb1: ahb1_clk@1c20054 { -+ #clock-cells = <0>; -+ compatible = "allwinner,sun6i-a31-ahb1-clk"; -+ reg = <0x01c20054 0x4>; -+ clocks = <&osc32k>, <&osc24M>, <&axi>, <&pll6 0>; -+ clock-output-names = "ahb1"; -+ }; -+ -+ ahb2: ahb2_clk@1c2005c { -+ #clock-cells = <0>; -+ compatible = "allwinner,sun8i-h3-ahb2-clk"; -+ reg = <0x01c2005c 0x4>; -+ clocks = <&ahb1>, <&pll6d2>; -+ clock-output-names = "ahb2"; -+ }; -+ -+ apb1: apb1_clk@1c20054 { -+ #clock-cells = <0>; -+ compatible = "allwinner,sun4i-a10-apb0-clk"; -+ reg = <0x01c20054 0x4>; -+ clocks = <&ahb1>; -+ clock-output-names = "apb1"; -+ }; -+ -+ apb2: apb2_clk@1c20058 { -+ #clock-cells = <0>; -+ compatible = "allwinner,sun4i-a10-apb1-clk"; -+ reg = <0x01c20058 0x4>; -+ clocks = <&osc32k>, <&osc24M>, <&pll6 1>, <&pll6 1>; -+ clock-output-names = "apb2"; -+ }; -+ -+ bus_gates: bus_gates_clk@1c20060 { -+ #clock-cells = <1>; -+ compatible = "allwinner,sun50i-a64-bus-gates-clk", -+ "allwinner,sunxi-multi-bus-gates-clk"; -+ reg = <0x01c20060 0x14>; -+ ahb1_parent { -+ clocks = <&ahb1>; -+ clock-indices = <1>, <5>, -+ <6>, <8>, -+ <9>, <10>, -+ <13>, <14>, -+ <18>, <19>, -+ <20>, <21>, -+ <23>, <24>, -+ <25>, <28>, -+ <32>, <35>, -+ <36>, <37>, -+ <40>, <43>, -+ <44>, <52>, -+ <53>, <54>, -+ <135>; -+ clock-output-names = "bus_mipidsi", "bus_ce", -+ "bus_dma", "bus_mmc0", -+ "bus_mmc1", "bus_mmc2", -+ "bus_nand", "bus_sdram", -+ "bus_ts", "bus_hstimer", -+ "bus_spi0", "bus_spi1", -+ "bus_otg", "bus_otg_ehci0", -+ "bus_ehci0", "bus_otg_ohci0", -+ "bus_ve", "bus_lcd0", -+ "bus_lcd1", "bus_deint", -+ "bus_csi", "bus_hdmi", -+ "bus_de", "bus_gpu", -+ "bus_msgbox", "bus_spinlock", -+ "bus_dbg"; -+ }; -+ ahb2_parent { -+ clocks = <&ahb2>; -+ clock-indices = <17>, <29>; -+ clock-output-names = "bus_gmac", "bus_ohci0"; -+ }; -+ apb1_parent { -+ clocks = <&apb1>; -+ clock-indices = <64>, <65>, -+ <69>, <72>, -+ <76>, <77>, -+ <78>; -+ clock-output-names = "bus_codec", "bus_spdif", -+ "bus_pio", "bus_ths", -+ "bus_i2s0", "bus_i2s1", -+ "bus_i2s2"; -+ }; -+ abp2_parent { -+ clocks = <&apb2>; -+ clock-indices = <96>, <97>, -+ <98>, <101>, -+ <112>, <113>, -+ <114>, <115>, -+ <116>; -+ clock-output-names = "bus_i2c0", "bus_i2c1", -+ "bus_i2c2", "bus_scr", -+ "bus_uart0", "bus_uart1", -+ "bus_uart2", "bus_uart3", -+ "bus_uart4"; -+ }; -+ }; -+ -+ mmc0_clk: mmc0_clk@1c20088 { -+ #clock-cells = <0>; -+ compatible = "allwinner,sun4i-a10-mod0-clk"; -+ reg = <0x01c20088 0x4>; -+ clocks = <&osc24M>, <&pll6 1>, <&pll7 1>; -+ clock-output-names = "mmc0"; -+ }; -+ -+ mmc1_clk: mmc1_clk@1c2008c { -+ #clock-cells = <0>; -+ compatible = "allwinner,sun4i-a10-mod0-clk"; -+ reg = <0x01c2008c 0x4>; -+ clocks = <&osc24M>, <&pll6 1>, <&pll7 1>; -+ clock-output-names = "mmc1"; -+ }; -+ -+ mmc2_clk: mmc2_clk@1c20090 { -+ #clock-cells = <0>; -+ compatible = "allwinner,sun4i-a10-mod0-clk"; -+ reg = <0x01c20090 0x4>; -+ clocks = <&osc24M>, <&pll6 1>, <&pll7 1>; -+ clock-output-names = "mmc2"; -+ }; -+ }; -+ -+ soc { -+ compatible = "simple-bus"; -+ #address-cells = <1>; -+ #size-cells = <1>; -+ ranges; -+ -+ mmc0: mmc@1c0f000 { -+ compatible = "allwinner,sun50i-a64-mmc", -+ "allwinner,sun5i-a13-mmc"; -+ reg = <0x01c0f000 0x1000>; -+ clocks = <&bus_gates 8>, <&mmc0_clk>, -+ <&mmc0_clk>, <&mmc0_clk>; -+ clock-names = "ahb", "mmc", -+ "output", "sample"; -+ resets = <&ahb_rst 8>; -+ reset-names = "ahb"; -+ interrupts = <GIC_SPI 60 IRQ_TYPE_LEVEL_HIGH>; -+ status = "disabled"; -+ #address-cells = <1>; -+ #size-cells = <0>; -+ }; -+ -+ mmc1: mmc@1c10000 { -+ compatible = "allwinner,sun50i-a64-mmc", -+ "allwinner,sun5i-a13-mmc"; -+ reg = <0x01c10000 0x1000>; -+ clocks = <&bus_gates 9>, <&mmc1_clk>, -+ <&mmc1_clk>, <&mmc1_clk>; -+ clock-names = "ahb", "mmc", -+ "output", "sample"; -+ resets = <&ahb_rst 9>; -+ reset-names = "ahb"; -+ interrupts = <GIC_SPI 61 IRQ_TYPE_LEVEL_HIGH>; -+ status = "disabled"; -+ #address-cells = <1>; -+ #size-cells = <0>; -+ }; -+ -+ mmc2: mmc@1c11000 { -+ compatible = "allwinner,sun50i-a64-mmc", -+ "allwinner,sun5i-a13-mmc"; -+ reg = <0x01c11000 0x1000>; -+ clocks = <&bus_gates 10>, <&mmc2_clk>, -+ <&mmc2_clk>, <&mmc2_clk>; -+ clock-names = "ahb", "mmc", -+ "output", "sample"; -+ resets = <&ahb_rst 10>; -+ reset-names = "ahb"; -+ interrupts = <GIC_SPI 62 IRQ_TYPE_LEVEL_HIGH>; -+ status = "disabled"; -+ #address-cells = <1>; -+ #size-cells = <0>; -+ }; -+ -+ pio: pinctrl@1c20800 { -+ compatible = "allwinner,sun50i-a64-pinctrl"; -+ reg = <0x01c20800 0x400>; -+ interrupts = <GIC_SPI 11 IRQ_TYPE_LEVEL_HIGH>, -+ <GIC_SPI 17 IRQ_TYPE_LEVEL_HIGH>, -+ <GIC_SPI 21 IRQ_TYPE_LEVEL_HIGH>; -+ clocks = <&bus_gates 69>; -+ gpio-controller; -+ #gpio-cells = <3>; -+ interrupt-controller; -+ #interrupt-cells = <2>; -+ -+ uart0_pins_a: uart0@0 { -+ allwinner,pins = "PB8", "PB9"; -+ allwinner,function = "uart0"; -+ allwinner,drive = <SUN4I_PINCTRL_10_MA>; -+ allwinner,pull = <SUN4I_PINCTRL_NO_PULL>; -+ }; -+ -+ uart0_pins_b: uart0@1 { -+ allwinner,pins = "PF2", "PF3"; -+ allwinner,function = "uart0"; -+ allwinner,drive = <SUN4I_PINCTRL_10_MA>; -+ allwinner,pull = <SUN4I_PINCTRL_NO_PULL>; -+ }; -+ -+ uart1_2pins: uart1_2@0 { -+ allwinner,pins = "PG6", "PG7"; -+ allwinner,function = "uart1"; -+ allwinner,drive = <SUN4I_PINCTRL_10_MA>; -+ allwinner,pull = <SUN4I_PINCTRL_NO_PULL>; -+ }; -+ -+ uart1_4pins: uart1_4@0 { -+ allwinner,pins = "PG6", "PG7", "PG8", "PG9"; -+ allwinner,function = "uart1"; -+ allwinner,drive = <SUN4I_PINCTRL_10_MA>; -+ allwinner,pull = <SUN4I_PINCTRL_NO_PULL>; -+ }; -+ -+ uart2_2pins: uart2_2@0 { -+ allwinner,pins = "PB0", "PB1"; -+ allwinner,function = "uart2"; -+ allwinner,drive = <SUN4I_PINCTRL_10_MA>; -+ allwinner,pull = <SUN4I_PINCTRL_NO_PULL>; -+ }; -+ -+ uart2_4pins: uart2_4@0 { -+ allwinner,pins = "PB0", "PB1", "PB2", "PB3"; -+ allwinner,function = "uart2"; -+ allwinner,drive = <SUN4I_PINCTRL_10_MA>; -+ allwinner,pull = <SUN4I_PINCTRL_NO_PULL>; -+ }; -+ -+ uart3_pins_a: uart3@0 { -+ allwinner,pins = "PD0", "PD1"; -+ allwinner,function = "uart3"; -+ allwinner,drive = <SUN4I_PINCTRL_10_MA>; -+ allwinner,pull = <SUN4I_PINCTRL_NO_PULL>; -+ }; -+ -+ uart3_2pins_b: uart3_2@1 { -+ allwinner,pins = "PH4", "PH5"; -+ allwinner,function = "uart3"; -+ allwinner,drive = <SUN4I_PINCTRL_10_MA>; -+ allwinner,pull = <SUN4I_PINCTRL_NO_PULL>; -+ }; -+ -+ uart3_4pins_b: uart3_4@1 { -+ allwinner,pins = "PH4", "PH5", "PH6", "PH7"; -+ allwinner,function = "uart3"; -+ allwinner,drive = <SUN4I_PINCTRL_10_MA>; -+ allwinner,pull = <SUN4I_PINCTRL_NO_PULL>; -+ }; -+ -+ uart4_2pins: uart4_2@0 { -+ allwinner,pins = "PD2", "PD3"; -+ allwinner,function = "uart4"; -+ allwinner,drive = <SUN4I_PINCTRL_10_MA>; -+ allwinner,pull = <SUN4I_PINCTRL_NO_PULL>; -+ }; -+ -+ uart4_4pins: uart4_4@0 { -+ allwinner,pins = "PD2", "PD3", "PD4", "PD5"; -+ allwinner,function = "uart4"; -+ allwinner,drive = <SUN4I_PINCTRL_10_MA>; -+ allwinner,pull = <SUN4I_PINCTRL_NO_PULL>; -+ }; -+ -+ mmc0_pins: mmc0@0 { -+ allwinner,pins = "PF0", "PF1", "PF2", "PF3", -+ "PF4", "PF5"; -+ allwinner,function = "mmc0"; -+ allwinner,drive = <SUN4I_PINCTRL_30_MA>; -+ allwinner,pull = <SUN4I_PINCTRL_NO_PULL>; -+ }; -+ -+ mmc0_default_cd_pin: mmc0_cd_pin@0 { -+ allwinner,pins = "PF6"; -+ allwinner,function = "gpio_in"; -+ allwinner,drive = <SUN4I_PINCTRL_10_MA>; -+ allwinner,pull = <SUN4I_PINCTRL_PULL_UP>; -+ }; -+ -+ mmc1_pins: mmc1@0 { -+ allwinner,pins = "PG0", "PG1", "PG2", "PG3", -+ "PG4", "PG5"; -+ allwinner,function = "mmc1"; -+ allwinner,drive = <SUN4I_PINCTRL_30_MA>; -+ allwinner,pull = <SUN4I_PINCTRL_NO_PULL>; -+ }; -+ -+ mmc2_pins: mmc2@0 { -+ allwinner,pins = "PC1", "PC5", "PC6", "PC8", -+ "PC9", "PC10"; -+ allwinner,function = "mmc2"; -+ allwinner,drive = <SUN4I_PINCTRL_30_MA>; -+ allwinner,pull = <SUN4I_PINCTRL_NO_PULL>; -+ }; -+ -+ i2c0_pins: i2c0_pins { -+ allwinner,pins = "PH0", "PH1"; -+ allwinner,function = "i2c0"; -+ allwinner,drive = <SUN4I_PINCTRL_10_MA>; -+ allwinner,pull = <SUN4I_PINCTRL_NO_PULL>; -+ }; -+ -+ i2c1_pins: i2c1_pins { -+ allwinner,pins = "PH2", "PH3"; -+ allwinner,function = "i2c1"; -+ allwinner,drive = <SUN4I_PINCTRL_10_MA>; -+ allwinner,pull = <SUN4I_PINCTRL_NO_PULL>; -+ }; -+ -+ i2c2_pins: i2c2_pins { -+ allwinner,pins = "PE14", "PE15"; -+ allwinner,function = "i2c2"; -+ allwinner,drive = <SUN4I_PINCTRL_10_MA>; -+ allwinner,pull = <SUN4I_PINCTRL_NO_PULL>; -+ }; -+ }; -+ -+ ahb_rst: reset@1c202c0 { -+ #reset-cells = <1>; -+ compatible = "allwinner,sun6i-a31-clock-reset"; -+ reg = <0x01c202c0 0xc>; -+ }; -+ -+ apb1_rst: reset@1c202d0 { -+ #reset-cells = <1>; -+ compatible = "allwinner,sun6i-a31-clock-reset"; -+ reg = <0x01c202d0 0x4>; -+ }; -+ -+ apb2_rst: reset@1c202d8 { -+ #reset-cells = <1>; -+ compatible = "allwinner,sun6i-a31-clock-reset"; -+ reg = <0x01c202d8 0x4>; -+ }; -+ -+ uart0: serial@1c28000 { -+ compatible = "snps,dw-apb-uart"; -+ reg = <0x01c28000 0x400>; -+ interrupts = <GIC_SPI 0 IRQ_TYPE_LEVEL_HIGH>; -+ reg-shift = <2>; -+ reg-io-width = <4>; -+ clocks = <&bus_gates 112>; -+ resets = <&apb2_rst 16>; -+ status = "disabled"; -+ }; -+ -+ uart1: serial@1c28400 { -+ compatible = "snps,dw-apb-uart"; -+ reg = <0x01c28400 0x400>; -+ interrupts = <GIC_SPI 1 IRQ_TYPE_LEVEL_HIGH>; -+ reg-shift = <2>; -+ reg-io-width = <4>; -+ clocks = <&bus_gates 113>; -+ resets = <&apb2_rst 17>; -+ status = "disabled"; -+ }; -+ -+ uart2: serial@1c28800 { -+ compatible = "snps,dw-apb-uart"; -+ reg = <0x01c28800 0x400>; -+ interrupts = <GIC_SPI 2 IRQ_TYPE_LEVEL_HIGH>; -+ reg-shift = <2>; -+ reg-io-width = <4>; -+ clocks = <&bus_gates 114>; -+ resets = <&apb2_rst 18>; -+ status = "disabled"; -+ }; -+ -+ uart3: serial@1c28c00 { -+ compatible = "snps,dw-apb-uart"; -+ reg = <0x01c28c00 0x400>; -+ interrupts = <GIC_SPI 3 IRQ_TYPE_LEVEL_HIGH>; -+ reg-shift = <2>; -+ reg-io-width = <4>; -+ clocks = <&bus_gates 115>; -+ resets = <&apb2_rst 19>; -+ status = "disabled"; -+ }; -+ -+ uart4: serial@1c29000 { -+ compatible = "snps,dw-apb-uart"; -+ reg = <0x01c29000 0x400>; -+ interrupts = <GIC_SPI 4 IRQ_TYPE_LEVEL_HIGH>; -+ reg-shift = <2>; -+ reg-io-width = <4>; -+ clocks = <&bus_gates 116>; -+ resets = <&apb2_rst 20>; -+ status = "disabled"; -+ }; -+ -+ rtc: rtc@1f00000 { -+ compatible = "allwinner,sun6i-a31-rtc"; -+ reg = <0x01f00000 0x54>; -+ interrupts = <GIC_SPI 40 IRQ_TYPE_LEVEL_HIGH>, -+ <GIC_SPI 41 IRQ_TYPE_LEVEL_HIGH>; -+ }; -+ -+ i2c0: i2c@1c2ac00 { -+ compatible = "allwinner,sun6i-a31-i2c"; -+ reg = <0x01c2ac00 0x400>; -+ interrupts = <GIC_SPI 6 IRQ_TYPE_LEVEL_HIGH>; -+ clocks = <&bus_gates 96>; -+ resets = <&apb2_rst 0>; -+ status = "disabled"; -+ #address-cells = <1>; -+ #size-cells = <0>; -+ }; -+ -+ i2c1: i2c@1c2b000 { -+ compatible = "allwinner,sun6i-a31-i2c"; -+ reg = <0x01c2b000 0x400>; -+ interrupts = <GIC_SPI 7 IRQ_TYPE_LEVEL_HIGH>; -+ clocks = <&bus_gates 97>; -+ resets = <&apb2_rst 1>; -+ status = "disabled"; -+ #address-cells = <1>; -+ #size-cells = <0>; -+ }; -+ -+ i2c2: i2c@1c2b400 { -+ compatible = "allwinner,sun6i-a31-i2c"; -+ reg = <0x01c2b400 0x400>; -+ interrupts = <GIC_SPI 8 IRQ_TYPE_LEVEL_HIGH>; -+ clocks = <&bus_gates 98>; -+ resets = <&apb2_rst 2>; -+ status = "disabled"; -+ #address-cells = <1>; -+ #size-cells = <0>; -+ }; -+ }; -+}; -diff --git a/drivers/clk/sunxi/Makefile b/drivers/clk/sunxi/Makefile -index 3fd7901..3a9dc31 100644 ---- a/drivers/clk/sunxi/Makefile -+++ b/drivers/clk/sunxi/Makefile -@@ -11,6 +11,7 @@ obj-y += clk-a10-ve.o - obj-y += clk-a20-gmac.o - obj-y += clk-mod0.o - obj-y += clk-simple-gates.o -+obj-y += clk-multi-gates.o - obj-y += clk-sun8i-bus-gates.o - obj-y += clk-sun8i-mbus.o - obj-y += clk-sun9i-core.o -diff --git a/drivers/clk/sunxi/clk-factors.c b/drivers/clk/sunxi/clk-factors.c -index 59428db..607ba53 100644 ---- a/drivers/clk/sunxi/clk-factors.c -+++ b/drivers/clk/sunxi/clk-factors.c -@@ -184,7 +184,8 @@ struct clk *sunxi_factors_register(struct device_node *node, - if (data->name) - clk_name = data->name; - else -- of_property_read_string(node, "clock-output-names", &clk_name); -+ of_property_read_string_index(node, "clock-output-names", -+ data->name_idx, &clk_name); - - factors = kzalloc(sizeof(struct clk_factors), GFP_KERNEL); - if (!factors) -diff --git a/drivers/clk/sunxi/clk-factors.h b/drivers/clk/sunxi/clk-factors.h -index 171085a..cc89d1f 100644 ---- a/drivers/clk/sunxi/clk-factors.h -+++ b/drivers/clk/sunxi/clk-factors.h -@@ -26,6 +26,7 @@ struct factors_data { - void (*getter)(struct factors_request *req); - void (*recalc)(struct factors_request *req); - const char *name; -+ int name_idx; - }; - - struct clk_factors { -diff --git a/drivers/clk/sunxi/clk-multi-gates.c b/drivers/clk/sunxi/clk-multi-gates.c -new file mode 100644 -index 0000000..76e715a ---- /dev/null -+++ b/drivers/clk/sunxi/clk-multi-gates.c -@@ -0,0 +1,105 @@ -+/* -+ * Copyright (C) 2016 ARM Ltd. -+ * -+ * Based on clk-sun8i-bus-gates.c, which is: -+ * Copyright (C) 2015 Jens Kuske <jenskuske@gmail.com> -+ * Based on clk-simple-gates.c, which is: -+ * Copyright 2015 Maxime Ripard <maxime.ripard@free-electrons.com> -+ * -+ * This program is free software; you can redistribute it and/or modify -+ * it under the terms of the GNU General Public License as published by -+ * the Free Software Foundation; either version 2 of the License, or -+ * (at your option) any later version. -+ * -+ * This program is distributed in the hope that it will be useful, -+ * but WITHOUT ANY WARRANTY; without even the implied warranty of -+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -+ * GNU General Public License for more details. -+ */ -+ -+#include <linux/clk-provider.h> -+#include <linux/of.h> -+#include <linux/of_address.h> -+#include <linux/slab.h> -+#include <linux/spinlock.h> -+ -+static DEFINE_SPINLOCK(gates_lock); -+ -+static void __init sunxi_parse_parent(struct device_node *node, -+ struct clk_onecell_data *clk_data, -+ void __iomem *reg) -+{ -+ const char *parent = of_clk_get_parent_name(node, 0); -+ const char *clk_name; -+ struct property *prop; -+ struct clk *clk; -+ const __be32 *p; -+ int index, i = 0; -+ -+ of_property_for_each_u32(node, "clock-indices", prop, p, index) { -+ of_property_read_string_index(node, "clock-output-names", -+ i, &clk_name); -+ -+ clk = clk_register_gate(NULL, clk_name, parent, 0, -+ reg + 4 * (index / 32), index % 32, -+ 0, &gates_lock); -+ i++; -+ if (IS_ERR(clk)) { -+ pr_warn("could not register gate clock \"%s\"\n", -+ clk_name); -+ continue; -+ } -+ if (clk_data->clks[index]) -+ pr_warn("bus-gate clock %s: index #%d already registered as %s\n", -+ clk_name, index, "?"); -+ else -+ clk_data->clks[index] = clk; -+ } -+} -+ -+static void __init sunxi_multi_bus_gates_init(struct device_node *node) -+{ -+ struct clk_onecell_data *clk_data; -+ struct device_node *child; -+ struct property *prop; -+ struct resource res; -+ void __iomem *reg; -+ const __be32 *p; -+ int number = 0; -+ int index; -+ -+ reg = of_io_request_and_map(node, 0, of_node_full_name(node)); -+ if (IS_ERR(reg)) -+ return; -+ -+ clk_data = kmalloc(sizeof(struct clk_onecell_data), GFP_KERNEL); -+ if (!clk_data) -+ goto err_unmap; -+ -+ for_each_child_of_node(node, child) -+ of_property_for_each_u32(child, "clock-indices", prop, p, index) -+ number = max(number, index); -+ -+ clk_data->clks = kcalloc(number + 1, sizeof(struct clk *), GFP_KERNEL); -+ if (!clk_data->clks) -+ goto err_free_data; -+ -+ for_each_child_of_node(node, child) -+ sunxi_parse_parent(child, clk_data, reg); -+ -+ clk_data->clk_num = number + 1; -+ if (of_clk_add_provider(node, of_clk_src_onecell_get, clk_data)) -+ pr_err("registering bus-gate clock %s failed\n", node->name); -+ -+ return; -+ -+err_free_data: -+ kfree(clk_data); -+err_unmap: -+ iounmap(reg); -+ of_address_to_resource(node, 0, &res); -+ release_mem_region(res.start, resource_size(&res)); -+} -+ -+CLK_OF_DECLARE(sunxi_multi_bus_gates, "allwinner,sunxi-multi-bus-gates-clk", -+ sunxi_multi_bus_gates_init); -diff --git a/drivers/clk/sunxi/clk-sunxi.c b/drivers/clk/sunxi/clk-sunxi.c -index 5ba2188..ca59458 100644 ---- a/drivers/clk/sunxi/clk-sunxi.c -+++ b/drivers/clk/sunxi/clk-sunxi.c -@@ -711,14 +711,14 @@ static const struct factors_data sun4i_pll6_data __initconst = { - .enable = 31, - .table = &sun4i_pll5_config, - .getter = sun4i_get_pll5_factors, -- .name = "pll6", -+ .name_idx = 2, - }; - - static const struct factors_data sun6i_a31_pll6_data __initconst = { - .enable = 31, - .table = &sun6i_a31_pll6_config, - .getter = sun6i_a31_get_pll6_factors, -- .name = "pll6x2", -+ .name_idx = 1, - }; - - static const struct factors_data sun5i_a13_ahb_data __initconst = { --- -2.5.0 - diff --git a/KEYS-potential-uninitialized-variable.patch b/KEYS-potential-uninitialized-variable.patch deleted file mode 100644 index 23cabbb2e..000000000 --- a/KEYS-potential-uninitialized-variable.patch +++ /dev/null @@ -1,30 +0,0 @@ -From 82a50018782f84e733e718d4b24e1653d19333be Mon Sep 17 00:00:00 2001 -From: Dan Carpenter <dan.carpenter@oracle.com> -Date: Wed, 15 Jun 2016 09:31:45 -0400 -Subject: [PATCH] KEYS: potential uninitialized variable - -If __key_link_begin() failed then "edit" would be uninitialized. I've -added a check to fix that. - -Fixes: f70e2e06196a ('KEYS: Do preallocation for __key_link()') -Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com> ---- - security/keys/key.c | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/security/keys/key.c b/security/keys/key.c -index bd5a272f28a6..346fbf201c22 100644 ---- a/security/keys/key.c -+++ b/security/keys/key.c -@@ -597,7 +597,7 @@ int key_reject_and_link(struct key *key, - - mutex_unlock(&key_construction_mutex); - -- if (keyring) -+ if (keyring && link_ret == 0) - __key_link_end(keyring, &key->index_key, edit); - - /* wake up anyone waiting for a key to be constructed */ --- -2.5.5 - diff --git a/USB-usbfs-fix-potential-infoleak-in-devio.patch b/USB-usbfs-fix-potential-infoleak-in-devio.patch deleted file mode 100644 index 48360c930..000000000 --- a/USB-usbfs-fix-potential-infoleak-in-devio.patch +++ /dev/null @@ -1,41 +0,0 @@ -From 7adc5cbc25dcc47dc3856108d9823d08da75da9d Mon Sep 17 00:00:00 2001 -From: Kangjie Lu <kangjielu@gmail.com> -Date: Tue, 3 May 2016 16:32:16 -0400 -Subject: [PATCH] USB: usbfs: fix potential infoleak in devio -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -The stack object “ci” has a total size of 8 bytes. Its last 3 bytes -are padding bytes which are not initialized and leaked to userland -via “copy_to_user”. - -Signed-off-by: Kangjie Lu <kjlu@gatech.edu> -Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> ---- - drivers/usb/core/devio.c | 9 +++++---- - 1 file changed, 5 insertions(+), 4 deletions(-) - -diff --git a/drivers/usb/core/devio.c b/drivers/usb/core/devio.c -index 52c4461dfccd..9b7f1f75e887 100644 ---- a/drivers/usb/core/devio.c -+++ b/drivers/usb/core/devio.c -@@ -1316,10 +1316,11 @@ static int proc_getdriver(struct usb_dev_state *ps, void __user *arg) - - static int proc_connectinfo(struct usb_dev_state *ps, void __user *arg) - { -- struct usbdevfs_connectinfo ci = { -- .devnum = ps->dev->devnum, -- .slow = ps->dev->speed == USB_SPEED_LOW -- }; -+ struct usbdevfs_connectinfo ci; -+ -+ memset(&ci, 0, sizeof(ci)); -+ ci.devnum = ps->dev->devnum; -+ ci.slow = ps->dev->speed == USB_SPEED_LOW; - - if (copy_to_user(arg, &ci, sizeof(ci))) - return -EFAULT; --- -2.5.5 - diff --git a/arm-imx6-hummingboard2.patch b/arm-imx6-hummingboard2.patch index bcf2961dc..bcb93214e 100644 --- a/arm-imx6-hummingboard2.patch +++ b/arm-imx6-hummingboard2.patch @@ -1,34 +1,39 @@ -From e2b55af60f9f498b95ffb458955f4ff787bd55a1 Mon Sep 17 00:00:00 2001 +From e9e601215d294d473a593641b1ecfd1fa4586a90 Mon Sep 17 00:00:00 2001 From: Peter Robinson <pbrobinson@gmail.com> -Date: Fri, 20 Jan 2017 08:32:55 +0000 -Subject: [PATCH] Add support for Hummingobard2 (Edge/Gate) +Date: Thu, 6 Apr 2017 13:52:54 +0100 +Subject: [PATCH 1/4] [RFC,v2,1/4] ARM: dts: imx6qdl: add HummingBoard2 boards -http://www.spinics.net/lists/arm-kernel/msg552554.html +From: Jon Nettleton <jon@solid-run.com> -Signed-off-by: Peter Robinson <pbrobinson@gmail.com> +This adds support for the Hummingboard Gate and Edge devices from +SolidRun. + +Signed-off-by: Jon Nettleton <jon@solid-run.com> +Signed-off-by: Rabeeh Khoury <rabeeh@solid-run.com> +Signed-off-by: Russell King <rmk+kernel@armlinux.org.uk> --- arch/arm/boot/dts/Makefile | 2 + arch/arm/boot/dts/imx6dl-hummingboard2.dts | 52 +++ arch/arm/boot/dts/imx6q-hummingboard2.dts | 60 +++ - arch/arm/boot/dts/imx6qdl-hummingboard2.dtsi | 562 +++++++++++++++++++++++++++ - 4 files changed, 676 insertions(+) + arch/arm/boot/dts/imx6qdl-hummingboard2.dtsi | 543 +++++++++++++++++++++++++++ + 4 files changed, 657 insertions(+) create mode 100644 arch/arm/boot/dts/imx6dl-hummingboard2.dts create mode 100644 arch/arm/boot/dts/imx6q-hummingboard2.dts create mode 100644 arch/arm/boot/dts/imx6qdl-hummingboard2.dtsi diff --git a/arch/arm/boot/dts/Makefile b/arch/arm/boot/dts/Makefile -index 7327250..09227cc 100644 +index 011808490fed..ccdff6650541 100644 --- a/arch/arm/boot/dts/Makefile +++ b/arch/arm/boot/dts/Makefile -@@ -348,6 +348,7 @@ dtb-$(CONFIG_SOC_IMX6Q) += \ +@@ -353,6 +353,7 @@ dtb-$(CONFIG_SOC_IMX6Q) += \ imx6dl-gw552x.dtb \ imx6dl-gw553x.dtb \ imx6dl-hummingboard.dtb \ + imx6dl-hummingboard2.dtb \ imx6dl-icore.dtb \ + imx6dl-icore-rqs.dtb \ imx6dl-nit6xlite.dtb \ - imx6dl-nitrogen6x.dtb \ -@@ -390,6 +391,7 @@ dtb-$(CONFIG_SOC_IMX6Q) += \ +@@ -397,6 +398,7 @@ dtb-$(CONFIG_SOC_IMX6Q) += \ imx6q-gw553x.dtb \ imx6q-h100.dtb \ imx6q-hummingboard.dtb \ @@ -38,7 +43,7 @@ index 7327250..09227cc 100644 imx6q-marsboard.dtb \ diff --git a/arch/arm/boot/dts/imx6dl-hummingboard2.dts b/arch/arm/boot/dts/imx6dl-hummingboard2.dts new file mode 100644 -index 0000000..990b505 +index 000000000000..990b5050de5b --- /dev/null +++ b/arch/arm/boot/dts/imx6dl-hummingboard2.dts @@ -0,0 +1,52 @@ @@ -96,7 +101,7 @@ index 0000000..990b505 +}; diff --git a/arch/arm/boot/dts/imx6q-hummingboard2.dts b/arch/arm/boot/dts/imx6q-hummingboard2.dts new file mode 100644 -index 0000000..f5eec91 +index 000000000000..f5eec9163bb8 --- /dev/null +++ b/arch/arm/boot/dts/imx6q-hummingboard2.dts @@ -0,0 +1,60 @@ @@ -162,10 +167,10 @@ index 0000000..f5eec91 +}; diff --git a/arch/arm/boot/dts/imx6qdl-hummingboard2.dtsi b/arch/arm/boot/dts/imx6qdl-hummingboard2.dtsi new file mode 100644 -index 0000000..66098a5 +index 000000000000..11b63f6f2b89 --- /dev/null +++ b/arch/arm/boot/dts/imx6qdl-hummingboard2.dtsi -@@ -0,0 +1,562 @@ +@@ -0,0 +1,543 @@ +/* + * Device Tree file for SolidRun HummingBoard2 + * Copyright (C) 2015 Rabeeh Khoury <rabeeh@solid-run.com> @@ -180,12 +185,12 @@ index 0000000..66098a5 + * published by the Free Software Foundation; either version 2 of the + * License. + * -+ * This file is distributed in the hope that it will be useful ++ * This file is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * -+ * Or, alternatively ++ * Or, alternatively, + * + * b) Permission is hereby granted, free of charge, to any person + * obtaining a copy of this software and associated documentation @@ -199,11 +204,11 @@ index 0000000..66098a5 + * The above copyright notice and this permission notice shall be + * included in all copies or substantial portions of the Software. + * -+ * THE SOFTWARE IS PROVIDED , WITHOUT WARRANTY OF ANY KIND ++ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, + * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES + * OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND + * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT -+ * HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY ++ * HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, + * WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING + * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR + * OTHER DEALINGS IN THE SOFTWARE. @@ -218,88 +223,77 @@ index 0000000..66098a5 + + ir_recv: ir-receiver { + compatible = "gpio-ir-receiver"; -+ gpios = <&gpio7 9 GPIO_ACTIVE_LOW>; ++ gpios = <&gpio7 9 1>; + pinctrl-names = "default"; + pinctrl-0 = <&pinctrl_hummingboard2_gpio7_9>; + linux,rc-map-name = "rc-rc6-mce"; + }; + -+ regulators { -+ compatible = "simple-bus"; -+ -+ reg_3p3v: 3p3v { -+ compatible = "regulator-fixed"; -+ regulator-name = "3P3V"; -+ regulator-min-microvolt = <3300000>; -+ regulator-max-microvolt = <3300000>; -+ regulator-always-on; -+ }; ++ usdhc2_pwrseq: usdhc2-pwrseq { ++ compatible = "mmc-pwrseq-simple"; ++ reset-gpios = <&gpio4 30 GPIO_ACTIVE_HIGH>; ++ }; + -+ reg_1p8v: 1p8v { -+ compatible = "regulator-fixed"; -+ regulator-name = "1P8V"; -+ regulator-min-microvolt = <1800000>; -+ regulator-max-microvolt = <1800000>; -+ regulator-always-on; -+ }; ++ reg_3p3v: regulator-3p3v { ++ compatible = "regulator-fixed"; ++ regulator-name = "3P3V"; ++ regulator-min-microvolt = <3300000>; ++ regulator-max-microvolt = <3300000>; ++ regulator-always-on; ++ }; + -+ reg_usdhc2_vmmc: reg-usdhc2-vmmc { -+ compatible = "regulator-fixed"; -+ gpio = <&gpio4 30 GPIO_ACTIVE_HIGH>; -+ pinctrl-names = "default"; -+ pinctrl-0 = <&pinctrl_hummingboard2_vmmc>; -+ regulator-boot-on; -+ regulator-max-microvolt = <3300000>; -+ regulator-min-microvolt = <3300000>; -+ regulator-name = "usdhc2_vmmc"; -+ startup-delay-us = <1000>; -+ }; ++ reg_1p8v: regulator-1p8v { ++ compatible = "regulator-fixed"; ++ regulator-name = "1P8V"; ++ regulator-min-microvolt = <1800000>; ++ regulator-max-microvolt = <1800000>; ++ regulator-always-on; ++ }; + -+ reg_usbh1_vbus: usb-h1-vbus { -+ compatible = "regulator-fixed"; -+ enable-active-high; -+ gpio = <&gpio1 0 GPIO_ACTIVE_HIGH>; -+ pinctrl-names = "default"; -+ pinctrl-0 = <&pinctrl_hummingboard2_usbh1_vbus>; -+ regulator-name = "usb_h1_vbus"; -+ regulator-min-microvolt = <5000000>; -+ regulator-max-microvolt = <5000000>; -+ }; ++ reg_usbh1_vbus: regulator-usb-h1-vbus { ++ compatible = "regulator-fixed"; ++ enable-active-high; ++ gpio = <&gpio1 0 0>; ++ pinctrl-names = "default"; ++ pinctrl-0 = <&pinctrl_hummingboard2_usbh1_vbus>; ++ regulator-name = "usb_h1_vbus"; ++ regulator-min-microvolt = <5000000>; ++ regulator-max-microvolt = <5000000>; ++ }; + -+ reg_usbotg_vbus: usb-otg-vbus { -+ compatible = "regulator-fixed"; -+ enable-active-high; -+ gpio = <&gpio3 22 GPIO_ACTIVE_HIGH>; -+ pinctrl-names = "default"; -+ pinctrl-0 = <&pinctrl_hummingboard2_usbotg_vbus>; -+ regulator-name = "usb_otg_vbus"; -+ regulator-min-microvolt = <5000000>; -+ regulator-max-microvolt = <5000000>; -+ }; ++ reg_usbotg_vbus: regulator-usb-otg-vbus { ++ compatible = "regulator-fixed"; ++ enable-active-high; ++ gpio = <&gpio3 22 0>; ++ pinctrl-names = "default"; ++ pinctrl-0 = <&pinctrl_hummingboard2_usbotg_vbus>; ++ regulator-name = "usb_otg_vbus"; ++ regulator-min-microvolt = <5000000>; ++ regulator-max-microvolt = <5000000>; ++ }; + -+ reg_usbh2_vbus: usb-h2-vbus { -+ compatible = "regulator-gpio"; -+ enable-active-high; -+ enable-gpio = <&gpio2 13 GPIO_ACTIVE_HIGH>; -+ pinctrl-names = "default"; -+ pinctrl-0 = <&pinctrl_hummingboard2_usbh2_vbus>; -+ regulator-name = "usb_h2_vbus"; -+ regulator-min-microvolt = <5000000>; -+ regulator-max-microvolt = <5000000>; -+ regulator-boot-on; -+ }; ++ reg_usbh2_vbus: regulator-usb-h2-vbus { ++ compatible = "regulator-gpio"; ++ enable-active-high; ++ enable-gpio = <&gpio2 13 0>; ++ pinctrl-names = "default"; ++ pinctrl-0 = <&pinctrl_hummingboard2_usbh2_vbus>; ++ regulator-name = "usb_h2_vbus"; ++ regulator-min-microvolt = <5000000>; ++ regulator-max-microvolt = <5000000>; ++ regulator-boot-on; ++ }; + -+ reg_usbh3_vbus: usb-h3-vbus { -+ compatible = "regulator-gpio"; -+ enable-active-high; -+ enable-gpio = <&gpio7 10 GPIO_ACTIVE_HIGH>; -+ pinctrl-names = "default"; -+ pinctrl-0 = <&pinctrl_hummingboard2_usbh3_vbus>; -+ regulator-name = "usb_h3_vbus"; -+ regulator-min-microvolt = <5000000>; -+ regulator-max-microvolt = <5000000>; -+ regulator-boot-on; -+ }; ++ reg_usbh3_vbus: regulator-usb-h3-vbus { ++ compatible = "regulator-gpio"; ++ enable-active-high; ++ enable-gpio = <&gpio7 10 0>; ++ pinctrl-names = "default"; ++ pinctrl-0 = <&pinctrl_hummingboard2_usbh3_vbus>; ++ regulator-name = "usb_h3_vbus"; ++ regulator-min-microvolt = <5000000>; ++ regulator-max-microvolt = <5000000>; ++ regulator-boot-on; + }; + + sound-sgtl5000 { @@ -323,7 +317,6 @@ index 0000000..66098a5 +&ecspi2 { + pinctrl-names = "default"; + pinctrl-0 = <&pinctrl_hummingboard2_ecspi2>; -+ fsl,spi-num-chipselects = <1>; + cs-gpios = <&gpio2 26 0>; + status = "okay"; +}; @@ -341,13 +334,13 @@ index 0000000..66098a5 + pinctrl-0 = <&pinctrl_hummingboard2_i2c1>; + status = "okay"; + -+ rtc: pcf8523@68 { ++ pcf8523: rtc@68 { + compatible = "nxp,pcf8523"; + reg = <0x68>; + nxp,12p5_pf; + }; + -+ sgtl5000: sgtl5000@0a { ++ sgtl5000: codec@0a { + clocks = <&clks IMX6QDL_CLK_CKO>; + compatible = "fsl,sgtl5000"; + pinctrl-names = "default"; @@ -375,6 +368,7 @@ index 0000000..66098a5 +&iomuxc { + pinctrl-names = "default"; + pinctrl-0 = <&pinctrl_hog>; ++ + hummingboard2 { + pinctrl_hog: hoggrp { + fsl,pins = < @@ -474,6 +468,15 @@ index 0000000..66098a5 + >; + }; + ++ pinctrl_hummingboard2_ecspi2: hummingboard2-ecspi2grp { ++ fsl,pins = < ++ MX6QDL_PAD_EIM_OE__ECSPI2_MISO 0x100b1 ++ MX6QDL_PAD_EIM_CS1__ECSPI2_MOSI 0x100b1 ++ MX6QDL_PAD_EIM_CS0__ECSPI2_SCLK 0x100b1 ++ MX6QDL_PAD_EIM_RW__GPIO2_IO26 0x000b1 /* CS */ ++ >; ++ }; ++ + pinctrl_hummingboard2_gpio7_9: hummingboard2-gpio7_9 { + fsl,pins = < + MX6QDL_PAD_SD4_CMD__GPIO7_IO09 0x80000000 @@ -507,13 +510,13 @@ index 0000000..66098a5 + >; + }; + -+ pinctrl_hummingboard2_mipi: hummingboard2_mipi { -+ fsl,pins = < -+ MX6QDL_PAD_SD4_DAT2__GPIO2_IO10 0x4001b8b1 -+ MX6QDL_PAD_KEY_COL4__GPIO4_IO14 0x4001b8b1 -+ MX6QDL_PAD_NANDF_CS2__CCM_CLKO2 0x130b0 -+ >; -+ }; ++ pinctrl_hummingboard2_mipi: hummingboard2_mipi { ++ fsl,pins = < ++ MX6QDL_PAD_SD4_DAT2__GPIO2_IO10 0x4001b8b1 ++ MX6QDL_PAD_KEY_COL4__GPIO4_IO14 0x4001b8b1 ++ MX6QDL_PAD_NANDF_CS2__CCM_CLKO2 0x130b0 ++ >; ++ }; + + pinctrl_hummingboard2_pcie_reset: hummingboard2-pcie-reset { + fsl,pins = < @@ -563,6 +566,7 @@ index 0000000..66098a5 + + pinctrl_hummingboard2_usdhc2_aux: hummingboard2-usdhc2-aux { + fsl,pins = < ++ MX6QDL_PAD_GPIO_4__GPIO1_IO04 0x13071 + MX6QDL_PAD_KEY_ROW1__SD2_VSELECT 0x1b071 + MX6QDL_PAD_DISP0_DAT9__GPIO4_IO30 0x1b0b0 + >; @@ -601,12 +605,6 @@ index 0000000..66098a5 + >; + }; + -+ pinctrl_hummingboard2_vmmc: hummingboard2-vmmc { -+ fsl,pins = < -+ MX6QDL_PAD_GPIO_4__GPIO1_IO04 0x1f071 -+ >; -+ }; -+ + pinctrl_hummingboard2_usdhc3: hummingboard2-usdhc3 { + fsl,pins = < + MX6QDL_PAD_SD3_CMD__SD3_CMD 0x17059 @@ -629,15 +627,6 @@ index 0000000..66098a5 + MX6QDL_PAD_EIM_D24__UART3_RX_DATA 0x40013000 + >; + }; -+ -+ pinctrl_hummingboard2_ecspi2: hummingboard2-ecspi2grp { -+ fsl,pins = < -+ MX6QDL_PAD_EIM_OE__ECSPI2_MISO 0x100b1 -+ MX6QDL_PAD_EIM_CS1__ECSPI2_MOSI 0x100b1 -+ MX6QDL_PAD_EIM_CS0__ECSPI2_SCLK 0x100b1 -+ MX6QDL_PAD_EIM_RW__GPIO2_IO26 0x000b1 /* CS */ -+ >; -+ }; + }; +}; + @@ -652,9 +641,7 @@ index 0000000..66098a5 + +&pcie { + pinctrl-names = "default"; -+ pinctrl-0 = < -+ &pinctrl_hummingboard2_pcie_reset -+ >; ++ pinctrl-0 = <&pinctrl_hummingboard2_pcie_reset>; + reset-gpio = <&gpio2 11 0>; + status = "okay"; +}; @@ -674,7 +661,6 @@ index 0000000..66098a5 +}; + +&ssi1 { -+ fsl,mode = "i2s-slave"; + status = "okay"; +}; + @@ -706,8 +692,8 @@ index 0000000..66098a5 + &pinctrl_hummingboard2_usdhc2_aux + &pinctrl_hummingboard2_usdhc2_200mhz + >; -+ vmmc-supply = <®_usdhc2_vmmc>; -+ cd-gpios = <&gpio1 4 GPIO_ACTIVE_LOW>; ++ mmc-pwrseq = <&usdhc2_pwrseq>; ++ cd-gpios = <&gpio1 4 0>; + status = "okay"; +}; + @@ -729,5 +715,188 @@ index 0000000..66098a5 + status = "okay"; +}; -- -2.9.3 +2.12.2 + +From 3da2a99c4a8f19e846b19071441d2c6b88e00c06 Mon Sep 17 00:00:00 2001 +From: Russell King <rmk+kernel@arm.linux.org.uk> +Date: Fri, 13 Jan 2017 14:45:30 +0000 +Subject: [PATCH 2/4] ARM: dts: imx6*-hummingboard2: fix SD card detect + +Fix the SD card detect signal, which was missing the polarity +specification, and the pull-up necessary for proper signalling. + +Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk> +--- + arch/arm/boot/dts/imx6qdl-hummingboard2.dtsi | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +diff --git a/arch/arm/boot/dts/imx6qdl-hummingboard2.dtsi b/arch/arm/boot/dts/imx6qdl-hummingboard2.dtsi +index 11b63f6f2b89..734487edf200 100644 +--- a/arch/arm/boot/dts/imx6qdl-hummingboard2.dtsi ++++ b/arch/arm/boot/dts/imx6qdl-hummingboard2.dtsi +@@ -393,7 +393,7 @@ + + pinctrl_hummingboard2_usdhc2_aux: hummingboard2-usdhc2-aux { + fsl,pins = < +- MX6QDL_PAD_GPIO_4__GPIO1_IO04 0x13071 ++ MX6QDL_PAD_GPIO_4__GPIO1_IO04 0x1f071 + MX6QDL_PAD_KEY_ROW1__SD2_VSELECT 0x1b071 + MX6QDL_PAD_DISP0_DAT9__GPIO4_IO30 0x1b0b0 + >; +@@ -520,7 +520,7 @@ + &pinctrl_hummingboard2_usdhc2_200mhz + >; + mmc-pwrseq = <&usdhc2_pwrseq>; +- cd-gpios = <&gpio1 4 0>; ++ cd-gpios = <&gpio1 4 GPIO_ACTIVE_LOW>; + status = "okay"; + }; + +-- +2.12.2 + +From 57b0103b600a535a35e5ff9714649519a0b3a77a Mon Sep 17 00:00:00 2001 +From: Russell King <rmk+kernel@armlinux.org.uk> +Date: Fri, 13 Jan 2017 14:45:35 +0000 +Subject: [PATCH 3/4] ARM: dts: imx6*-hummingboard2: use proper gpio flags + definitions + +Use proper gpio flag definitions for GPIOs rather than using opaque +uninformative numbers. + +Signed-off-by: Russell King <rmk+kernel@armlinux.org.uk> +--- + arch/arm/boot/dts/imx6qdl-hummingboard2.dtsi | 10 +++++----- + 1 file changed, 5 insertions(+), 5 deletions(-) + +diff --git a/arch/arm/boot/dts/imx6qdl-hummingboard2.dtsi b/arch/arm/boot/dts/imx6qdl-hummingboard2.dtsi +index 734487edf200..88aaed26dd77 100644 +--- a/arch/arm/boot/dts/imx6qdl-hummingboard2.dtsi ++++ b/arch/arm/boot/dts/imx6qdl-hummingboard2.dtsi +@@ -50,7 +50,7 @@ + + ir_recv: ir-receiver { + compatible = "gpio-ir-receiver"; +- gpios = <&gpio7 9 1>; ++ gpios = <&gpio7 9 GPIO_ACTIVE_LOW>; + pinctrl-names = "default"; + pinctrl-0 = <&pinctrl_hummingboard2_gpio7_9>; + linux,rc-map-name = "rc-rc6-mce"; +@@ -80,7 +80,7 @@ + reg_usbh1_vbus: regulator-usb-h1-vbus { + compatible = "regulator-fixed"; + enable-active-high; +- gpio = <&gpio1 0 0>; ++ gpio = <&gpio1 0 GPIO_ACTIVE_HIGH>; + pinctrl-names = "default"; + pinctrl-0 = <&pinctrl_hummingboard2_usbh1_vbus>; + regulator-name = "usb_h1_vbus"; +@@ -91,7 +91,7 @@ + reg_usbotg_vbus: regulator-usb-otg-vbus { + compatible = "regulator-fixed"; + enable-active-high; +- gpio = <&gpio3 22 0>; ++ gpio = <&gpio3 22 GPIO_ACTIVE_HIGH>; + pinctrl-names = "default"; + pinctrl-0 = <&pinctrl_hummingboard2_usbotg_vbus>; + regulator-name = "usb_otg_vbus"; +@@ -102,7 +102,7 @@ + reg_usbh2_vbus: regulator-usb-h2-vbus { + compatible = "regulator-gpio"; + enable-active-high; +- enable-gpio = <&gpio2 13 0>; ++ enable-gpio = <&gpio2 13 GPIO_ACTIVE_HIGH>; + pinctrl-names = "default"; + pinctrl-0 = <&pinctrl_hummingboard2_usbh2_vbus>; + regulator-name = "usb_h2_vbus"; +@@ -114,7 +114,7 @@ + reg_usbh3_vbus: regulator-usb-h3-vbus { + compatible = "regulator-gpio"; + enable-active-high; +- enable-gpio = <&gpio7 10 0>; ++ enable-gpio = <&gpio7 10 GPIO_ACTIVE_HIGH>; + pinctrl-names = "default"; + pinctrl-0 = <&pinctrl_hummingboard2_usbh3_vbus>; + regulator-name = "usb_h3_vbus"; +-- +2.12.2 + +From f931de70370ff576f381cb9745bc54225a1a8056 Mon Sep 17 00:00:00 2001 +From: Russell King <rmk+kernel@arm.linux.org.uk> +Date: Fri, 13 Jan 2017 14:45:40 +0000 +Subject: [PATCH 4/4] ARM: dts: imx6*-hummingboard2: convert to more + conventional vmmc-supply + +Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk> +--- + arch/arm/boot/dts/imx6qdl-hummingboard2.dtsi | 26 +++++++++++++++++++------- + 1 file changed, 19 insertions(+), 7 deletions(-) + +diff --git a/arch/arm/boot/dts/imx6qdl-hummingboard2.dtsi b/arch/arm/boot/dts/imx6qdl-hummingboard2.dtsi +index 88aaed26dd77..f19d30b34ac4 100644 +--- a/arch/arm/boot/dts/imx6qdl-hummingboard2.dtsi ++++ b/arch/arm/boot/dts/imx6qdl-hummingboard2.dtsi +@@ -56,11 +56,6 @@ + linux,rc-map-name = "rc-rc6-mce"; + }; + +- usdhc2_pwrseq: usdhc2-pwrseq { +- compatible = "mmc-pwrseq-simple"; +- reset-gpios = <&gpio4 30 GPIO_ACTIVE_HIGH>; +- }; +- + reg_3p3v: regulator-3p3v { + compatible = "regulator-fixed"; + regulator-name = "3P3V"; +@@ -123,6 +118,18 @@ + regulator-boot-on; + }; + ++ reg_usdhc2_vmmc: reg-usdhc2-vmmc { ++ compatible = "regulator-fixed"; ++ gpio = <&gpio4 30 GPIO_ACTIVE_HIGH>; ++ pinctrl-names = "default"; ++ pinctrl-0 = <&pinctrl_hummingboard2_vmmc>; ++ regulator-boot-on; ++ regulator-max-microvolt = <3300000>; ++ regulator-min-microvolt = <3300000>; ++ regulator-name = "usdhc2_vmmc"; ++ startup-delay-us = <1000>; ++ }; ++ + sound-sgtl5000 { + audio-codec = <&sgtl5000>; + audio-routing = +@@ -393,7 +400,6 @@ + + pinctrl_hummingboard2_usdhc2_aux: hummingboard2-usdhc2-aux { + fsl,pins = < +- MX6QDL_PAD_GPIO_4__GPIO1_IO04 0x1f071 + MX6QDL_PAD_KEY_ROW1__SD2_VSELECT 0x1b071 + MX6QDL_PAD_DISP0_DAT9__GPIO4_IO30 0x1b0b0 + >; +@@ -432,6 +438,12 @@ + >; + }; + ++ pinctrl_hummingboard2_vmmc: hummingboard2-vmmc { ++ fsl,pins = < ++ MX6QDL_PAD_GPIO_4__GPIO1_IO04 0x1f071 ++ >; ++ }; ++ + pinctrl_hummingboard2_usdhc3: hummingboard2-usdhc3 { + fsl,pins = < + MX6QDL_PAD_SD3_CMD__SD3_CMD 0x17059 +@@ -519,7 +531,7 @@ + &pinctrl_hummingboard2_usdhc2_aux + &pinctrl_hummingboard2_usdhc2_200mhz + >; +- mmc-pwrseq = <&usdhc2_pwrseq>; ++ vmmc-supply = <®_usdhc2_vmmc>; + cd-gpios = <&gpio1 4 GPIO_ACTIVE_LOW>; + status = "okay"; + }; +-- +2.12.2 diff --git a/arm-rk3288-tinker.patch b/arm-rk3288-tinker.patch new file mode 100644 index 000000000..d7a4897b3 --- /dev/null +++ b/arm-rk3288-tinker.patch @@ -0,0 +1,573 @@ +From 223599514133293bb9afe7b82937140c3b275877 Mon Sep 17 00:00:00 2001 +From: Eddie Cai <eddie.cai.linux@gmail.com> +Date: Tue, 14 Feb 2017 18:07:31 +0800 +Subject: ARM: dts: rockchip: add dts for RK3288-Tinker board + +This patch add basic support for RK3288-Tinker board. We can boot in to rootfs +with this patch. + +Signed-off-by: Eddie Cai <eddie.cai.linux@gmail.com> +Signed-off-by: Heiko Stuebner <heiko@sntech.de> +--- + arch/arm/boot/dts/Makefile | 1 + + arch/arm/boot/dts/rk3288-tinker.dts | 536 ++++++++++++++++++++++++++++++++++++ + 2 files changed, 537 insertions(+) + create mode 100644 arch/arm/boot/dts/rk3288-tinker.dts + +diff --git a/arch/arm/boot/dts/Makefile b/arch/arm/boot/dts/Makefile +index 0118084..fb46849 100644 +--- a/arch/arm/boot/dts/Makefile ++++ b/arch/arm/boot/dts/Makefile +@@ -695,6 +695,7 @@ dtb-$(CONFIG_ARCH_ROCKCHIP) += \ + rk3288-popmetal.dtb \ + rk3288-r89.dtb \ + rk3288-rock2-square.dtb \ ++ rk3288-tinker.dtb \ + rk3288-veyron-brain.dtb \ + rk3288-veyron-jaq.dtb \ + rk3288-veyron-jerry.dtb \ +diff --git a/arch/arm/boot/dts/rk3288-tinker.dts b/arch/arm/boot/dts/rk3288-tinker.dts +new file mode 100644 +index 0000000..f601c78 +--- /dev/null ++++ b/arch/arm/boot/dts/rk3288-tinker.dts +@@ -0,0 +1,536 @@ ++/* ++ * Copyright (c) 2017 Fuzhou Rockchip Electronics Co., Ltd. ++ * ++ * This file is dual-licensed: you can use it either under the terms ++ * of the GPL or the X11 license, at your option. Note that this dual ++ * licensing only applies to this file, and not this project as a ++ * whole. ++ * ++ * a) This file is free software; you can redistribute it and/or ++ * modify it under the terms of the GNU General Public License as ++ * published by the Free Software Foundation; either version 2 of the ++ * License, or (at your option) any later version. ++ * ++ * This file is distributed in the hope that it will be useful, ++ * but WITHOUT ANY WARRANTY; without even the implied warranty of ++ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ++ * GNU General Public License for more details. ++ * ++ * Or, alternatively, ++ * ++ * b) Permission is hereby granted, free of charge, to any person ++ * obtaining a copy of this software and associated documentation ++ * files (the "Software"), to deal in the Software without ++ * restriction, including without limitation the rights to use, ++ * copy, modify, merge, publish, distribute, sublicense, and/or ++ * sell copies of the Software, and to permit persons to whom the ++ * Software is furnished to do so, subject to the following ++ * conditions: ++ * ++ * The above copyright notice and this permission notice shall be ++ * included in all copies or substantial portions of the Software. ++ * ++ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, ++ * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES ++ * OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND ++ * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT ++ * HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, ++ * WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING ++ * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR ++ * OTHER DEALINGS IN THE SOFTWARE. ++ */ ++ ++/dts-v1/; ++ ++#include "rk3288.dtsi" ++#include <dt-bindings/input/input.h> ++ ++/ { ++ model = "Rockchip RK3288 Tinker Board"; ++ compatible = "asus,rk3288-tinker", "rockchip,rk3288"; ++ ++ memory { ++ reg = <0x0 0x80000000>; ++ device_type = "memory"; ++ }; ++ ++ ext_gmac: external-gmac-clock { ++ compatible = "fixed-clock"; ++ #clock-cells = <0>; ++ clock-frequency = <125000000>; ++ clock-output-names = "ext_gmac"; ++ }; ++ ++ gpio-keys { ++ compatible = "gpio-keys"; ++ #address-cells = <1>; ++ #size-cells = <0>; ++ autorepeat; ++ ++ pinctrl-names = "default"; ++ pinctrl-0 = <&pwrbtn>; ++ ++ button@0 { ++ gpios = <&gpio0 RK_PA5 GPIO_ACTIVE_LOW>; ++ linux,code = <KEY_POWER>; ++ label = "GPIO Key Power"; ++ linux,input-type = <1>; ++ wakeup-source; ++ debounce-interval = <100>; ++ }; ++ }; ++ ++ gpio-leds { ++ compatible = "gpio-leds"; ++ ++ act-led { ++ gpios=<&gpio1 RK_PD0 GPIO_ACTIVE_HIGH>; ++ linux,default-trigger="mmc0"; ++ }; ++ ++ heartbeat-led { ++ gpios=<&gpio1 RK_PD1 GPIO_ACTIVE_HIGH>; ++ linux,default-trigger="heartbeat"; ++ }; ++ ++ pwr-led { ++ gpios = <&gpio0 RK_PA3 GPIO_ACTIVE_HIGH>; ++ linux,default-trigger = "default-on"; ++ }; ++ }; ++ ++ sound { ++ compatible = "simple-audio-card"; ++ simple-audio-card,format = "i2s"; ++ simple-audio-card,name = "rockchip,tinker-codec"; ++ simple-audio-card,mclk-fs = <512>; ++ ++ simple-audio-card,codec { ++ sound-dai = <&hdmi>; ++ }; ++ ++ simple-audio-card,cpu { ++ sound-dai = <&i2s>; ++ }; ++ }; ++ ++ vcc_sys: vsys-regulator { ++ compatible = "regulator-fixed"; ++ regulator-name = "vcc_sys"; ++ regulator-min-microvolt = <5000000>; ++ regulator-max-microvolt = <5000000>; ++ regulator-always-on; ++ regulator-boot-on; ++ }; ++ ++ vcc_sd: sdmmc-regulator { ++ compatible = "regulator-fixed"; ++ gpio = <&gpio7 11 GPIO_ACTIVE_LOW>; ++ pinctrl-names = "default"; ++ pinctrl-0 = <&sdmmc_pwr>; ++ regulator-name = "vcc_sd"; ++ regulator-min-microvolt = <3300000>; ++ regulator-max-microvolt = <3300000>; ++ startup-delay-us = <100000>; ++ vin-supply = <&vcc_io>; ++ }; ++}; ++ ++&cpu0 { ++ cpu0-supply = <&vdd_cpu>; ++}; ++ ++&gmac { ++ assigned-clocks = <&cru SCLK_MAC>; ++ assigned-clock-parents = <&ext_gmac>; ++ clock_in_out = "input"; ++ phy-mode = "rgmii"; ++ phy-supply = <&vcc33_lan>; ++ pinctrl-names = "default"; ++ pinctrl-0 = <&rgmii_pins>; ++ snps,reset-gpio = <&gpio4 7 0>; ++ snps,reset-active-low; ++ snps,reset-delays-us = <0 10000 1000000>; ++ tx_delay = <0x30>; ++ rx_delay = <0x10>; ++ status = "ok"; ++}; ++ ++&hdmi { ++ ddc-i2c-bus = <&i2c5>; ++ status = "okay"; ++}; ++ ++&i2c0 { ++ clock-frequency = <400000>; ++ status = "okay"; ++ ++ rk808: pmic@1b { ++ compatible = "rockchip,rk808"; ++ reg = <0x1b>; ++ interrupt-parent = <&gpio0>; ++ interrupts = <4 IRQ_TYPE_LEVEL_LOW>; ++ #clock-cells = <1>; ++ clock-output-names = "xin32k", "rk808-clkout2"; ++ dvs-gpios = <&gpio0 11 GPIO_ACTIVE_HIGH>, ++ <&gpio0 12 GPIO_ACTIVE_HIGH>; ++ pinctrl-names = "default"; ++ pinctrl-0 = <&pmic_int &global_pwroff &dvs_1 &dvs_2>; ++ rockchip,system-power-controller; ++ wakeup-source; ++ ++ vcc1-supply = <&vcc_sys>; ++ vcc2-supply = <&vcc_sys>; ++ vcc3-supply = <&vcc_sys>; ++ vcc4-supply = <&vcc_sys>; ++ vcc6-supply = <&vcc_sys>; ++ vcc7-supply = <&vcc_sys>; ++ vcc8-supply = <&vcc_io>; ++ vcc9-supply = <&vcc_io>; ++ vcc10-supply = <&vcc_io>; ++ vcc11-supply = <&vcc_sys>; ++ vcc12-supply = <&vcc_io>; ++ vddio-supply = <&vcc_io>; ++ ++ regulators { ++ vdd_cpu: DCDC_REG1 { ++ regulator-always-on; ++ regulator-boot-on; ++ regulator-min-microvolt = <750000>; ++ regulator-max-microvolt = <1350000>; ++ regulator-name = "vdd_arm"; ++ regulator-ramp-delay = <6000>; ++ regulator-state-mem { ++ regulator-off-in-suspend; ++ }; ++ }; ++ ++ vdd_gpu: DCDC_REG2 { ++ regulator-always-on; ++ regulator-boot-on; ++ regulator-min-microvolt = <850000>; ++ regulator-max-microvolt = <1250000>; ++ regulator-name = "vdd_gpu"; ++ regulator-ramp-delay = <6000>; ++ regulator-state-mem { ++ regulator-on-in-suspend; ++ regulator-suspend-microvolt = <1000000>; ++ }; ++ }; ++ ++ vcc_ddr: DCDC_REG3 { ++ regulator-always-on; ++ regulator-boot-on; ++ regulator-name = "vcc_ddr"; ++ regulator-state-mem { ++ regulator-on-in-suspend; ++ }; ++ }; ++ ++ vcc_io: DCDC_REG4 { ++ regulator-always-on; ++ regulator-boot-on; ++ regulator-min-microvolt = <3300000>; ++ regulator-max-microvolt = <3300000>; ++ regulator-name = "vcc_io"; ++ regulator-state-mem { ++ regulator-on-in-suspend; ++ regulator-suspend-microvolt = <3300000>; ++ }; ++ }; ++ ++ vcc18_ldo1: LDO_REG1 { ++ regulator-always-on; ++ regulator-boot-on; ++ regulator-min-microvolt = <1800000>; ++ regulator-max-microvolt = <1800000>; ++ regulator-name = "vcc18_ldo1"; ++ regulator-state-mem { ++ regulator-on-in-suspend; ++ regulator-suspend-microvolt = <1800000>; ++ }; ++ }; ++ ++ vcc33_mipi: LDO_REG2 { ++ regulator-always-on; ++ regulator-boot-on; ++ regulator-min-microvolt = <3300000>; ++ regulator-max-microvolt = <3300000>; ++ regulator-name = "vcc33_mipi"; ++ regulator-state-mem { ++ regulator-off-in-suspend; ++ }; ++ }; ++ ++ vdd_10: LDO_REG3 { ++ regulator-always-on; ++ regulator-boot-on; ++ regulator-min-microvolt = <1000000>; ++ regulator-max-microvolt = <1000000>; ++ regulator-name = "vdd_10"; ++ regulator-state-mem { ++ regulator-on-in-suspend; ++ regulator-suspend-microvolt = <1000000>; ++ }; ++ }; ++ ++ vcc18_codec: LDO_REG4 { ++ regulator-always-on; ++ regulator-boot-on; ++ regulator-min-microvolt = <1800000>; ++ regulator-max-microvolt = <1800000>; ++ regulator-name = "vcc18_codec"; ++ regulator-state-mem { ++ regulator-on-in-suspend; ++ regulator-suspend-microvolt = <1800000>; ++ }; ++ }; ++ ++ vccio_sd: LDO_REG5 { ++ regulator-min-microvolt = <1800000>; ++ regulator-max-microvolt = <3300000>; ++ regulator-name = "vccio_sd"; ++ regulator-state-mem { ++ regulator-on-in-suspend; ++ regulator-suspend-microvolt = <3300000>; ++ }; ++ }; ++ ++ vdd10_lcd: LDO_REG6 { ++ regulator-always-on; ++ regulator-boot-on; ++ regulator-min-microvolt = <1000000>; ++ regulator-max-microvolt = <1000000>; ++ regulator-name = "vdd10_lcd"; ++ regulator-state-mem { ++ regulator-on-in-suspend; ++ regulator-suspend-microvolt = <1000000>; ++ }; ++ }; ++ ++ vcc_18: LDO_REG7 { ++ regulator-always-on; ++ regulator-boot-on; ++ regulator-min-microvolt = <1800000>; ++ regulator-max-microvolt = <1800000>; ++ regulator-name = "vcc_18"; ++ regulator-state-mem { ++ regulator-on-in-suspend; ++ regulator-suspend-microvolt = <1800000>; ++ }; ++ }; ++ ++ vcc18_lcd: LDO_REG8 { ++ regulator-always-on; ++ regulator-boot-on; ++ regulator-min-microvolt = <1800000>; ++ regulator-max-microvolt = <1800000>; ++ regulator-name = "vcc18_lcd"; ++ regulator-state-mem { ++ regulator-on-in-suspend; ++ regulator-suspend-microvolt = <1800000>; ++ }; ++ }; ++ ++ vcc33_sd: SWITCH_REG1 { ++ regulator-always-on; ++ regulator-boot-on; ++ regulator-name = "vcc33_sd"; ++ regulator-state-mem { ++ regulator-on-in-suspend; ++ }; ++ }; ++ ++ vcc33_lan: SWITCH_REG2 { ++ regulator-always-on; ++ regulator-boot-on; ++ regulator-name = "vcc33_lan"; ++ regulator-state-mem { ++ regulator-on-in-suspend; ++ }; ++ }; ++ }; ++ }; ++}; ++ ++&i2c2 { ++ status = "okay"; ++}; ++ ++&i2c5 { ++ status = "okay"; ++}; ++ ++&i2s { ++ #sound-dai-cells = <0>; ++ status = "okay"; ++}; ++ ++&io_domains { ++ status = "okay"; ++ ++ sdcard-supply = <&vccio_sd>; ++}; ++ ++&pinctrl { ++ pcfg_pull_none_drv_8ma: pcfg-pull-none-drv-8ma { ++ drive-strength = <8>; ++ }; ++ ++ pcfg_pull_up_drv_8ma: pcfg-pull-up-drv-8ma { ++ bias-pull-up; ++ drive-strength = <8>; ++ }; ++ ++ backlight { ++ bl_en: bl-en { ++ rockchip,pins = <7 2 RK_FUNC_GPIO &pcfg_pull_none>; ++ }; ++ }; ++ ++ buttons { ++ pwrbtn: pwrbtn { ++ rockchip,pins = <0 5 RK_FUNC_GPIO &pcfg_pull_up>; ++ }; ++ }; ++ ++ eth_phy { ++ eth_phy_pwr: eth-phy-pwr { ++ rockchip,pins = <0 6 RK_FUNC_GPIO &pcfg_pull_none>; ++ }; ++ }; ++ ++ pmic { ++ pmic_int: pmic-int { ++ rockchip,pins = <RK_GPIO0 4 RK_FUNC_GPIO \ ++ &pcfg_pull_up>; ++ }; ++ ++ dvs_1: dvs-1 { ++ rockchip,pins = <RK_GPIO0 11 RK_FUNC_GPIO \ ++ &pcfg_pull_down>; ++ }; ++ ++ dvs_2: dvs-2 { ++ rockchip,pins = <RK_GPIO0 12 RK_FUNC_GPIO \ ++ &pcfg_pull_down>; ++ }; ++ }; ++ ++ sdmmc { ++ sdmmc_bus4: sdmmc-bus4 { ++ rockchip,pins = <6 16 RK_FUNC_1 &pcfg_pull_up_drv_8ma>, ++ <6 17 RK_FUNC_1 &pcfg_pull_up_drv_8ma>, ++ <6 18 RK_FUNC_1 &pcfg_pull_up_drv_8ma>, ++ <6 19 RK_FUNC_1 &pcfg_pull_up_drv_8ma>; ++ }; ++ ++ sdmmc_clk: sdmmc-clk { ++ rockchip,pins = <6 20 RK_FUNC_1 \ ++ &pcfg_pull_none_drv_8ma>; ++ }; ++ ++ sdmmc_cmd: sdmmc-cmd { ++ rockchip,pins = <6 21 RK_FUNC_1 &pcfg_pull_up_drv_8ma>; ++ }; ++ ++ sdmmc_pwr: sdmmc-pwr { ++ rockchip,pins = <7 11 RK_FUNC_GPIO &pcfg_pull_none>; ++ }; ++ }; ++ ++ usb { ++ host_vbus_drv: host-vbus-drv { ++ rockchip,pins = <0 14 RK_FUNC_GPIO &pcfg_pull_none>; ++ }; ++ ++ pwr_3g: pwr-3g { ++ rockchip,pins = <7 8 RK_FUNC_GPIO &pcfg_pull_none>; ++ }; ++ }; ++}; ++ ++&pwm0 { ++ status = "okay"; ++}; ++ ++&saradc { ++ vref-supply = <&vcc18_ldo1>; ++ status ="okay"; ++}; ++ ++&sdmmc { ++ bus-width = <4>; ++ cap-mmc-highspeed; ++ cap-sd-highspeed; ++ card-detect-delay = <200>; ++ disable-wp; /* wp not hooked up */ ++ num-slots = <1>; ++ pinctrl-names = "default"; ++ pinctrl-0 = <&sdmmc_clk &sdmmc_cmd &sdmmc_cd &sdmmc_bus4>; ++ status = "okay"; ++ vmmc-supply = <&vcc33_sd>; ++ vqmmc-supply = <&vccio_sd>; ++}; ++ ++&tsadc { ++ rockchip,hw-tshut-mode = <1>; /* tshut mode 0:CRU 1:GPIO */ ++ rockchip,hw-tshut-polarity = <1>; /* tshut polarity 0:LOW 1:HIGH */ ++ status = "okay"; ++}; ++ ++&uart0 { ++ status = "okay"; ++}; ++ ++&uart1 { ++ status = "okay"; ++}; ++ ++&uart2 { ++ status = "okay"; ++}; ++ ++&uart3 { ++ status = "okay"; ++}; ++ ++&uart4 { ++ status = "okay"; ++}; ++ ++&usbphy { ++ status = "okay"; ++}; ++ ++&usb_host0_ehci { ++ status = "okay"; ++}; ++ ++&usb_host1 { ++ status = "okay"; ++}; ++ ++&usb_otg { ++ status= "okay"; ++}; ++ ++&vopb { ++ status = "okay"; ++}; ++ ++&vopb_mmu { ++ status = "okay"; ++}; ++ ++&vopl { ++ status = "okay"; ++}; ++ ++&vopl_mmu { ++ status = "okay"; ++}; ++ ++&wdt { ++ status = "okay"; ++}; +-- +cgit v1.1 + diff --git a/arm64-Add-option-of-13-for-FORCE_MAX_ZONEORDER.patch b/arm64-Add-option-of-13-for-FORCE_MAX_ZONEORDER.patch new file mode 100644 index 000000000..6417bc29a --- /dev/null +++ b/arm64-Add-option-of-13-for-FORCE_MAX_ZONEORDER.patch @@ -0,0 +1,29 @@ +From 487ff7b0e537506057960a0c2d9482d19f2acf4a Mon Sep 17 00:00:00 2001 +From: Peter Robinson <pbrobinson@gmail.com> +Date: Wed, 26 Apr 2017 11:12:54 +0100 +Subject: [PATCH] Add option of 13 for FORCE_MAX_ZONEORDER + +This is a hack, but it's what the other distros currently use +for aarch64 with 4K pages so we'll do the same while upstream +decides what the best outcome is (which isn't this). + +Signed-off-by: Peter Robinson <pbrobinson@gmail.com> +--- + arch/arm64/Kconfig | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/arch/arm64/Kconfig b/arch/arm64/Kconfig +index 3741859765cf..deec9511f1d3 100644 +--- a/arch/arm64/Kconfig ++++ b/arch/arm64/Kconfig +@@ -751,6 +751,7 @@ config XEN + config FORCE_MAX_ZONEORDER + int + default "14" if (ARM64_64K_PAGES && TRANSPARENT_HUGEPAGE) ++ default "13" if (ARCH_THUNDER && !ARM64_64K_PAGES) + default "12" if (ARM64_16K_PAGES && TRANSPARENT_HUGEPAGE) + default "11" + help +-- +2.12.2 + diff --git a/arm64-acpi-drop-expert-patch.patch b/arm64-acpi-drop-expert-patch.patch deleted file mode 100644 index 6122732d6..000000000 --- a/arm64-acpi-drop-expert-patch.patch +++ /dev/null @@ -1,21 +0,0 @@ -From: Peter Robinson <pbrobinson@gmail.com> -Date: Sun, 3 May 2015 18:35:23 +0100 -Subject: [PATCH] arm64: acpi drop expert patch - ---- - drivers/acpi/Kconfig | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/drivers/acpi/Kconfig b/drivers/acpi/Kconfig -index 114cf48085ab..70ba3ef9a37b 100644 ---- a/drivers/acpi/Kconfig -+++ b/drivers/acpi/Kconfig -@@ -5,7 +5,7 @@ - menuconfig ACPI - bool "ACPI (Advanced Configuration and Power Interface) Support" - depends on !IA64_HP_SIM -- depends on IA64 || X86 || (ARM64 && EXPERT) -+ depends on IA64 || X86 || ARM64 - depends on PCI - select PNP - default y diff --git a/arm64-avoid-needing-console-to-enable-serial-console.patch b/arm64-avoid-needing-console-to-enable-serial-console.patch deleted file mode 100644 index 3c639a0a3..000000000 --- a/arm64-avoid-needing-console-to-enable-serial-console.patch +++ /dev/null @@ -1,46 +0,0 @@ -From ce7a9e482dcf66d155e74b39ada1708cf6d9cb25 Mon Sep 17 00:00:00 2001 -From: Mark Salter <msalter@redhat.com> -Date: Wed, 25 Mar 2015 14:17:50 -0400 -Subject: [PATCH] arm64: avoid needing console= to enable serial console - -Tell kernel to prefer one of the serial ports for console on -platforms currently supported (pl011 or 8250). console= on -command line will override these assumed preferences. This is -just a hack to get the behavior we want from DT provided by -firmware. - -Signed-off-by: Mark Salter <msalter@redhat.com> ---- - arch/arm64/kernel/setup.c | 20 ++++++++++++++++++++ - 1 file changed, 20 insertions(+) - -diff --git a/arch/arm64/kernel/setup.c b/arch/arm64/kernel/setup.c -index 9dc67769b6a4..dfac33b47423 100644 ---- a/arch/arm64/kernel/setup.c -+++ b/arch/arm64/kernel/setup.c -@@ -417,3 +417,22 @@ static int __init register_kernel_offset_dumper(void) - return 0; - } - __initcall(register_kernel_offset_dumper); -+ -+/* -+ * Temporary hack to avoid need for console= on command line -+ */ -+static int __init arm64_console_setup(void) -+{ -+ /* Allow cmdline to override our assumed preferences */ -+ if (console_set_on_cmdline) -+ return 0; -+ -+ if (IS_ENABLED(CONFIG_SERIAL_AMBA_PL011)) -+ add_preferred_console("ttyAMA", 0, "115200"); -+ -+ if (IS_ENABLED(CONFIG_SERIAL_8250)) -+ add_preferred_console("ttyS", 0, "115200"); -+ -+ return 0; -+} -+early_initcall(arm64_console_setup); --- -2.5.0 - diff --git a/arm64-hikey-fixes.patch b/arm64-hikey-fixes.patch new file mode 100644 index 000000000..18bc05b2b --- /dev/null +++ b/arm64-hikey-fixes.patch @@ -0,0 +1,77 @@ +From patchwork Sat Apr 8 07:18:40 2017 +Content-Type: text/plain; charset="utf-8" +MIME-Version: 1.0 +Content-Transfer-Encoding: 7bit +Subject: reset: hi6220: Set module license so that it can be loaded +From: Jeremy Linton <lintonrjeremy@gmail.com> +X-Patchwork-Id: 9670985 +Message-Id: <20170408071840.29380-1-lintonrjeremy@gmail.com> +To: linux-kernel@vger.kernel.org +Cc: p.zabel@pengutronix.de, saberlily.xia@hisilicon.com, + puck.chen@hisilicon.com, xinliang.liu@linaro.org, + Jeremy Linton <lintonrjeremy@gmail.com> +Date: Sat, 8 Apr 2017 02:18:40 -0500 + +The hi6220_reset driver can be built as a standalone module +yet it cannot be loaded because it depends on GPL exported symbols. + +Lets set the module license so that the module loads, and things like +the on-board kirin drm starts working. + +Signed-off-by: Jeremy Linton <lintonrjeremy@gmail.com> +reviewed-by: Xinliang Liu <xinliang.liu@linaro.org> +--- + drivers/reset/hisilicon/hi6220_reset.c | 2 ++ + 1 file changed, 2 insertions(+) + +diff --git a/drivers/reset/hisilicon/hi6220_reset.c b/drivers/reset/hisilicon/hi6220_reset.c +index 35ce53e..d5e5229 100644 +--- a/drivers/reset/hisilicon/hi6220_reset.c ++++ b/drivers/reset/hisilicon/hi6220_reset.c +@@ -155,3 +155,5 @@ static int __init hi6220_reset_init(void) + } + + postcore_initcall(hi6220_reset_init); ++ ++MODULE_LICENSE("GPL v2"); +From patchwork Mon Apr 3 05:28:42 2017 +Content-Type: text/plain; charset="utf-8" +MIME-Version: 1.0 +Content-Transfer-Encoding: 7bit +Subject: [v2,1/2] regulator: hi655x: Describe consumed platform device +From: Jeremy Linton <lintonrjeremy@gmail.com> +X-Patchwork-Id: 9658793 +Message-Id: <20170403052843.12711-2-lintonrjeremy@gmail.com> +To: linux-kernel@vger.kernel.org +Cc: broonie@kernel.org, lgirdwood@gmail.com, puck.chen@hisilicon.com, + lee.jones@linaro.org, Jeremy Linton <lintonrjeremy@gmail.com> +Date: Mon, 3 Apr 2017 00:28:42 -0500 + +The hi655x-regulator driver consumes a similarly named platform device. +Adding that to the module device table, allows modprobe to locate this +driver once the device is created. + +Signed-off-by: Jeremy Linton <lintonrjeremy@gmail.com> +--- + drivers/regulator/hi655x-regulator.c | 7 +++++++ + 1 file changed, 7 insertions(+) + +diff --git a/drivers/regulator/hi655x-regulator.c b/drivers/regulator/hi655x-regulator.c +index 065c100..36ae54b 100644 +--- a/drivers/regulator/hi655x-regulator.c ++++ b/drivers/regulator/hi655x-regulator.c +@@ -214,7 +214,14 @@ static int hi655x_regulator_probe(struct platform_device *pdev) + return 0; + } + ++static const struct platform_device_id hi655x_regulator_table[] = { ++ { .name = "hi655x-regulator" }, ++ {}, ++}; ++MODULE_DEVICE_TABLE(platform, hi655x_regulator_table); ++ + static struct platform_driver hi655x_regulator_driver = { ++ .id_table = hi655x_regulator_table, + .driver = { + .name = "hi655x-regulator", + }, diff --git a/arm64-pcie-acpi.patch b/arm64-pcie-acpi.patch deleted file mode 100644 index e9a359db6..000000000 --- a/arm64-pcie-acpi.patch +++ /dev/null @@ -1,1247 +0,0 @@ -From 1fc02559de87cd88339a83ad05baa9c2b5bd1ac0 Mon Sep 17 00:00:00 2001 -From: Jayachandran C <jchandra@broadcom.com> -Date: Fri, 10 Jun 2016 21:55:09 +0200 -Subject: [PATCH 01/11] PCI/ECAM: Move ecam.h to linux/include/pci-ecam.h - -This header will be used from arch/arm64 for ACPI PCI implementation -so it needs to be moved out of drivers/pci. - -Update users of the header file to use the new name. No functional -changes. - -Signed-off-by: Jayachandran C <jchandra@broadcom.com> -Acked-by: Lorenzo Pieralisi <lorenzo.pieralisi@arm.com> ---- - drivers/pci/ecam.c | 3 +- - drivers/pci/ecam.h | 67 ------------------------------------- - drivers/pci/host/pci-host-common.c | 3 +- - drivers/pci/host/pci-host-generic.c | 3 +- - drivers/pci/host/pci-thunder-ecam.c | 3 +- - drivers/pci/host/pci-thunder-pem.c | 3 +- - include/linux/pci-ecam.h | 67 +++++++++++++++++++++++++++++++++++++ - 7 files changed, 72 insertions(+), 77 deletions(-) - delete mode 100644 drivers/pci/ecam.h - create mode 100644 include/linux/pci-ecam.h - -diff --git a/drivers/pci/ecam.c b/drivers/pci/ecam.c -index f9832ad..820e26b 100644 ---- a/drivers/pci/ecam.c -+++ b/drivers/pci/ecam.c -@@ -19,10 +19,9 @@ - #include <linux/kernel.h> - #include <linux/module.h> - #include <linux/pci.h> -+#include <linux/pci-ecam.h> - #include <linux/slab.h> - --#include "ecam.h" -- - /* - * On 64-bit systems, we do a single ioremap for the whole config space - * since we have enough virtual address range available. On 32-bit, we -diff --git a/drivers/pci/ecam.h b/drivers/pci/ecam.h -deleted file mode 100644 -index 9878beb..0000000 ---- a/drivers/pci/ecam.h -+++ /dev/null -@@ -1,67 +0,0 @@ --/* -- * Copyright 2016 Broadcom -- * -- * This program is free software; you can redistribute it and/or modify -- * it under the terms of the GNU General Public License, version 2, as -- * published by the Free Software Foundation (the "GPL"). -- * -- * This program is distributed in the hope that it will be useful, but -- * WITHOUT ANY WARRANTY; without even the implied warranty of -- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -- * General Public License version 2 (GPLv2) for more details. -- * -- * You should have received a copy of the GNU General Public License -- * version 2 (GPLv2) along with this source code. -- */ --#ifndef DRIVERS_PCI_ECAM_H --#define DRIVERS_PCI_ECAM_H -- --#include <linux/kernel.h> --#include <linux/platform_device.h> -- --/* -- * struct to hold pci ops and bus shift of the config window -- * for a PCI controller. -- */ --struct pci_config_window; --struct pci_ecam_ops { -- unsigned int bus_shift; -- struct pci_ops pci_ops; -- int (*init)(struct device *, -- struct pci_config_window *); --}; -- --/* -- * struct to hold the mappings of a config space window. This -- * is expected to be used as sysdata for PCI controllers that -- * use ECAM. -- */ --struct pci_config_window { -- struct resource res; -- struct resource busr; -- void *priv; -- struct pci_ecam_ops *ops; -- union { -- void __iomem *win; /* 64-bit single mapping */ -- void __iomem **winp; /* 32-bit per-bus mapping */ -- }; --}; -- --/* create and free pci_config_window */ --struct pci_config_window *pci_ecam_create(struct device *dev, -- struct resource *cfgres, struct resource *busr, -- struct pci_ecam_ops *ops); --void pci_ecam_free(struct pci_config_window *cfg); -- --/* map_bus when ->sysdata is an instance of pci_config_window */ --void __iomem *pci_ecam_map_bus(struct pci_bus *bus, unsigned int devfn, -- int where); --/* default ECAM ops */ --extern struct pci_ecam_ops pci_generic_ecam_ops; -- --#ifdef CONFIG_PCI_HOST_GENERIC --/* for DT-based PCI controllers that support ECAM */ --int pci_host_common_probe(struct platform_device *pdev, -- struct pci_ecam_ops *ops); --#endif --#endif -diff --git a/drivers/pci/host/pci-host-common.c b/drivers/pci/host/pci-host-common.c -index 8cba7ab..c18b9e3 100644 ---- a/drivers/pci/host/pci-host-common.c -+++ b/drivers/pci/host/pci-host-common.c -@@ -20,10 +20,9 @@ - #include <linux/module.h> - #include <linux/of_address.h> - #include <linux/of_pci.h> -+#include <linux/pci-ecam.h> - #include <linux/platform_device.h> - --#include "../ecam.h" -- - static int gen_pci_parse_request_of_pci_ranges(struct device *dev, - struct list_head *resources, struct resource **bus_range) - { -diff --git a/drivers/pci/host/pci-host-generic.c b/drivers/pci/host/pci-host-generic.c -index 6eaceab..f0ca6de 100644 ---- a/drivers/pci/host/pci-host-generic.c -+++ b/drivers/pci/host/pci-host-generic.c -@@ -23,10 +23,9 @@ - #include <linux/module.h> - #include <linux/of_address.h> - #include <linux/of_pci.h> -+#include <linux/pci-ecam.h> - #include <linux/platform_device.h> - --#include "../ecam.h" -- - static struct pci_ecam_ops gen_pci_cfg_cam_bus_ops = { - .bus_shift = 16, - .pci_ops = { -diff --git a/drivers/pci/host/pci-thunder-ecam.c b/drivers/pci/host/pci-thunder-ecam.c -index 540d030..a9fc1c9 100644 ---- a/drivers/pci/host/pci-thunder-ecam.c -+++ b/drivers/pci/host/pci-thunder-ecam.c -@@ -11,10 +11,9 @@ - #include <linux/ioport.h> - #include <linux/of_pci.h> - #include <linux/of.h> -+#include <linux/pci-ecam.h> - #include <linux/platform_device.h> - --#include "../ecam.h" -- - static void set_val(u32 v, int where, int size, u32 *val) - { - int shift = (where & 3) * 8; -diff --git a/drivers/pci/host/pci-thunder-pem.c b/drivers/pci/host/pci-thunder-pem.c -index 9b8ab94..5020d3d 100644 ---- a/drivers/pci/host/pci-thunder-pem.c -+++ b/drivers/pci/host/pci-thunder-pem.c -@@ -18,10 +18,9 @@ - #include <linux/module.h> - #include <linux/of_address.h> - #include <linux/of_pci.h> -+#include <linux/pci-ecam.h> - #include <linux/platform_device.h> - --#include "../ecam.h" -- - #define PEM_CFG_WR 0x28 - #define PEM_CFG_RD 0x30 - -diff --git a/include/linux/pci-ecam.h b/include/linux/pci-ecam.h -new file mode 100644 -index 0000000..9878beb ---- /dev/null -+++ b/include/linux/pci-ecam.h -@@ -0,0 +1,67 @@ -+/* -+ * Copyright 2016 Broadcom -+ * -+ * This program is free software; you can redistribute it and/or modify -+ * it under the terms of the GNU General Public License, version 2, as -+ * published by the Free Software Foundation (the "GPL"). -+ * -+ * This program is distributed in the hope that it will be useful, but -+ * WITHOUT ANY WARRANTY; without even the implied warranty of -+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ * General Public License version 2 (GPLv2) for more details. -+ * -+ * You should have received a copy of the GNU General Public License -+ * version 2 (GPLv2) along with this source code. -+ */ -+#ifndef DRIVERS_PCI_ECAM_H -+#define DRIVERS_PCI_ECAM_H -+ -+#include <linux/kernel.h> -+#include <linux/platform_device.h> -+ -+/* -+ * struct to hold pci ops and bus shift of the config window -+ * for a PCI controller. -+ */ -+struct pci_config_window; -+struct pci_ecam_ops { -+ unsigned int bus_shift; -+ struct pci_ops pci_ops; -+ int (*init)(struct device *, -+ struct pci_config_window *); -+}; -+ -+/* -+ * struct to hold the mappings of a config space window. This -+ * is expected to be used as sysdata for PCI controllers that -+ * use ECAM. -+ */ -+struct pci_config_window { -+ struct resource res; -+ struct resource busr; -+ void *priv; -+ struct pci_ecam_ops *ops; -+ union { -+ void __iomem *win; /* 64-bit single mapping */ -+ void __iomem **winp; /* 32-bit per-bus mapping */ -+ }; -+}; -+ -+/* create and free pci_config_window */ -+struct pci_config_window *pci_ecam_create(struct device *dev, -+ struct resource *cfgres, struct resource *busr, -+ struct pci_ecam_ops *ops); -+void pci_ecam_free(struct pci_config_window *cfg); -+ -+/* map_bus when ->sysdata is an instance of pci_config_window */ -+void __iomem *pci_ecam_map_bus(struct pci_bus *bus, unsigned int devfn, -+ int where); -+/* default ECAM ops */ -+extern struct pci_ecam_ops pci_generic_ecam_ops; -+ -+#ifdef CONFIG_PCI_HOST_GENERIC -+/* for DT-based PCI controllers that support ECAM */ -+int pci_host_common_probe(struct platform_device *pdev, -+ struct pci_ecam_ops *ops); -+#endif -+#endif --- -2.7.4 - -From 5eb9996fc097629854f359f9ad3d959fdacb7f8f Mon Sep 17 00:00:00 2001 -From: Jayachandran C <jchandra@broadcom.com> -Date: Fri, 10 Jun 2016 21:55:10 +0200 -Subject: [PATCH 02/11] PCI/ECAM: Add parent device field to pci_config_window - -Add a parent device field to struct pci_config_window. The parent -is not saved now, but will be useful to save it in some cases. -Specifically in case of ACPI for ARM64, it can be used to setup -ACPI companion and domain. - -Since the parent dev is in struct pci_config_window now, we need -not pass it to the init function as a separate argument. - -Signed-off-by: Jayachandran C <jchandra@broadcom.com> -Acked-by: Lorenzo Pieralisi <lorenzo.pieralisi@arm.com> ---- - drivers/pci/ecam.c | 3 ++- - drivers/pci/host/pci-thunder-pem.c | 3 ++- - include/linux/pci-ecam.h | 4 ++-- - 3 files changed, 6 insertions(+), 4 deletions(-) - -diff --git a/drivers/pci/ecam.c b/drivers/pci/ecam.c -index 820e26b..66e0d71 100644 ---- a/drivers/pci/ecam.c -+++ b/drivers/pci/ecam.c -@@ -51,6 +51,7 @@ struct pci_config_window *pci_ecam_create(struct device *dev, - if (!cfg) - return ERR_PTR(-ENOMEM); - -+ cfg->parent = dev; - cfg->ops = ops; - cfg->busr.start = busr->start; - cfg->busr.end = busr->end; -@@ -94,7 +95,7 @@ struct pci_config_window *pci_ecam_create(struct device *dev, - } - - if (ops->init) { -- err = ops->init(dev, cfg); -+ err = ops->init(cfg); - if (err) - goto err_exit; - } -diff --git a/drivers/pci/host/pci-thunder-pem.c b/drivers/pci/host/pci-thunder-pem.c -index 5020d3d..91f6fc6 100644 ---- a/drivers/pci/host/pci-thunder-pem.c -+++ b/drivers/pci/host/pci-thunder-pem.c -@@ -284,8 +284,9 @@ static int thunder_pem_config_write(struct pci_bus *bus, unsigned int devfn, - return pci_generic_config_write(bus, devfn, where, size, val); - } - --static int thunder_pem_init(struct device *dev, struct pci_config_window *cfg) -+static int thunder_pem_init(struct pci_config_window *cfg) - { -+ struct device *dev = cfg->parent; - resource_size_t bar4_start; - struct resource *res_pem; - struct thunder_pem_pci *pem_pci; -diff --git a/include/linux/pci-ecam.h b/include/linux/pci-ecam.h -index 9878beb..7adad20 100644 ---- a/include/linux/pci-ecam.h -+++ b/include/linux/pci-ecam.h -@@ -27,8 +27,7 @@ struct pci_config_window; - struct pci_ecam_ops { - unsigned int bus_shift; - struct pci_ops pci_ops; -- int (*init)(struct device *, -- struct pci_config_window *); -+ int (*init)(struct pci_config_window *); - }; - - /* -@@ -45,6 +44,7 @@ struct pci_config_window { - void __iomem *win; /* 64-bit single mapping */ - void __iomem **winp; /* 32-bit per-bus mapping */ - }; -+ struct device *parent;/* ECAM res was from this dev */ - }; - - /* create and free pci_config_window */ --- -2.7.4 - -From 6ed6c1365df5c9201e9b275e8ed4eaa64ef2ec0d Mon Sep 17 00:00:00 2001 -From: Sinan Kaya <okaya@codeaurora.org> -Date: Fri, 10 Jun 2016 21:55:11 +0200 -Subject: [PATCH 03/11] PCI: Add new function to unmap IO resources - -We need to release I/O resources so that the same I/O resources -can be allocated again in pci_remap_iospace(), like in PCI hotplug removal -scenario. Therefore implement new pci_unmap_iospace() call which -unmaps I/O space as the symmetry to pci_remap_iospace(). - -Signed-off-by: Sinan Kaya <okaya@codeaurora.org> -Signed-off-by: Tomasz Nowicki <tn@semihalf.com> -Acked-by: Lorenzo Pieralisi <lorenzo.pieralisi@arm.com> ---- - drivers/pci/pci.c | 18 ++++++++++++++++++ - include/linux/pci.h | 1 + - 2 files changed, 19 insertions(+) - -diff --git a/drivers/pci/pci.c b/drivers/pci/pci.c -index c8b4dbd..eb431b5 100644 ---- a/drivers/pci/pci.c -+++ b/drivers/pci/pci.c -@@ -25,6 +25,7 @@ - #include <linux/device.h> - #include <linux/pm_runtime.h> - #include <linux/pci_hotplug.h> -+#include <linux/vmalloc.h> - #include <asm/setup.h> - #include <linux/aer.h> - #include "pci.h" -@@ -3165,6 +3166,23 @@ int __weak pci_remap_iospace(const struct resource *res, phys_addr_t phys_addr) - #endif - } - -+/** -+ * pci_unmap_iospace - Unmap the memory mapped I/O space -+ * @res: resource to be unmapped -+ * -+ * Unmap the CPU virtual address @res from virtual address space. -+ * Only architectures that have memory mapped IO functions defined -+ * (and the PCI_IOBASE value defined) should call this function. -+ */ -+void pci_unmap_iospace(struct resource *res) -+{ -+#if defined(PCI_IOBASE) && defined(CONFIG_MMU) -+ unsigned long vaddr = (unsigned long)PCI_IOBASE + res->start; -+ -+ unmap_kernel_range(vaddr, resource_size(res)); -+#endif -+} -+ - static void __pci_set_master(struct pci_dev *dev, bool enable) - { - u16 old_cmd, cmd; -diff --git a/include/linux/pci.h b/include/linux/pci.h -index b67e4df..12349de 100644 ---- a/include/linux/pci.h -+++ b/include/linux/pci.h -@@ -1167,6 +1167,7 @@ int pci_register_io_range(phys_addr_t addr, resource_size_t size); - unsigned long pci_address_to_pio(phys_addr_t addr); - phys_addr_t pci_pio_to_address(unsigned long pio); - int pci_remap_iospace(const struct resource *res, phys_addr_t phys_addr); -+void pci_unmap_iospace(struct resource *res); - - static inline pci_bus_addr_t pci_bus_address(struct pci_dev *pdev, int bar) - { --- -2.7.4 - -From 62f4d54fc2d2882b9ebaa920189574f422e12207 Mon Sep 17 00:00:00 2001 -From: Jayachandran C <jchandra@broadcom.com> -Date: Fri, 10 Jun 2016 21:55:12 +0200 -Subject: [PATCH 04/11] ACPI/PCI: Support IO resources when parsing PCI host - bridge resources - -Platforms that have memory mapped IO port (such as ARM64) need special -handling for PCI I/O resources. For host bridge's resource probing case -these resources need to be fixed up with -pci_register_io_range()/pci_remap_iospace() etc. - -The same I/O resources need to be released after hotplug -removal so that it can be re-added back by the pci_remap_iospace() -function during insertion. As a consequence unmap I/O resources -with pci_unmap_iospace() when we release host bridge resources. - -Signed-off-by: Jayachandran C <jchandra@broadcom.com> -Signed-off-by: Sinan Kaya <okaya@codeaurora.org> -[ Tomasz: merged in Sinan's patch to unmap IO resources properly, updated changelog] -Signed-off-by: Tomasz Nowicki <tn@semihalf.com> -Reviewed-by: Lorenzo Pieralisi <lorenzo.pieralisi@arm.com> ---- - drivers/acpi/pci_root.c | 39 +++++++++++++++++++++++++++++++++++++++ - 1 file changed, 39 insertions(+) - -diff --git a/drivers/acpi/pci_root.c b/drivers/acpi/pci_root.c -index ae3fe4e..9a26dd1 100644 ---- a/drivers/acpi/pci_root.c -+++ b/drivers/acpi/pci_root.c -@@ -720,6 +720,40 @@ next: - } - } - -+#ifdef PCI_IOBASE -+static void acpi_pci_root_remap_iospace(struct resource_entry *entry) -+{ -+ struct resource *res = entry->res; -+ resource_size_t cpu_addr = res->start; -+ resource_size_t pci_addr = cpu_addr - entry->offset; -+ resource_size_t length = resource_size(res); -+ unsigned long port; -+ -+ if (pci_register_io_range(cpu_addr, length)) -+ goto err; -+ -+ port = pci_address_to_pio(cpu_addr); -+ if (port == (unsigned long)-1) -+ goto err; -+ -+ res->start = port; -+ res->end = port + length - 1; -+ entry->offset = port - pci_addr; -+ -+ if (pci_remap_iospace(res, cpu_addr) < 0) -+ goto err; -+ -+ pr_info("Remapped I/O %pa to %pR\n", &cpu_addr, res); -+ return; -+err: -+ res->flags |= IORESOURCE_DISABLED; -+} -+#else -+static inline void acpi_pci_root_remap_iospace(struct resource_entry *entry) -+{ -+} -+#endif -+ - int acpi_pci_probe_root_resources(struct acpi_pci_root_info *info) - { - int ret; -@@ -740,6 +774,9 @@ int acpi_pci_probe_root_resources(struct acpi_pci_root_info *info) - "no IO and memory resources present in _CRS\n"); - else { - resource_list_for_each_entry_safe(entry, tmp, list) { -+ if (entry->res->flags & IORESOURCE_IO) -+ acpi_pci_root_remap_iospace(entry); -+ - if (entry->res->flags & IORESOURCE_DISABLED) - resource_list_destroy_entry(entry); - else -@@ -811,6 +848,8 @@ static void acpi_pci_root_release_info(struct pci_host_bridge *bridge) - - resource_list_for_each_entry(entry, &bridge->windows) { - res = entry->res; -+ if (res->flags & IORESOURCE_IO) -+ pci_unmap_iospace(res); - if (res->parent && - (res->flags & (IORESOURCE_MEM | IORESOURCE_IO))) - release_resource(res); --- -2.7.4 - -From dd4f7822d702cca83baa1de7a5f69344ffb82af9 Mon Sep 17 00:00:00 2001 -From: Tomasz Nowicki <tn@semihalf.com> -Date: Fri, 10 Jun 2016 21:55:13 +0200 -Subject: [PATCH 05/11] ACPI/PCI: Add generic MCFG table handling - -According to PCI firmware specifications, on systems booting with ACPI, -PCI configuration for a host bridge must be set-up through the MCFG table -regions for non-hotpluggable bridges and _CBA method for hotpluggable ones. - -Current MCFG table handling code, as implemented for x86, cannot be -easily generalized owing to x86 specific quirks handling and related -code, which makes it hard to reuse on other architectures. - -In order to implement MCFG PCI configuration handling for new platforms -booting with ACPI (eg ARM64) this patch re-implements MCFG handling from -scratch in a streamlined fashion and provides (through a generic -interface available to all arches): - -- Simplified MCFG table parsing (executed through the pci_mmcfg_late_init() - hook as in current x86) -- MCFG regions look-up interface through domain:bus_start:bus_end tuple - -The new MCFG regions handling interface is added to generic ACPI code -so that existing architectures (eg x86) can be moved over to it and -architectures relying on MCFG for ACPI PCI config space can rely on it -without having to resort to arch specific implementations. - -Signed-off-by: Tomasz Nowicki <tn@semihalf.com> -Signed-off-by: Jayachandran C <jchandra@broadcom.com> -Reviewed-by: Lorenzo Pieralisi <lorenzo.pieralisi@arm.com> ---- - drivers/acpi/Kconfig | 3 ++ - drivers/acpi/Makefile | 1 + - drivers/acpi/pci_mcfg.c | 92 ++++++++++++++++++++++++++++++++++++++++++++++++ - include/linux/pci-acpi.h | 2 ++ - include/linux/pci.h | 2 +- - 5 files changed, 99 insertions(+), 1 deletion(-) - create mode 100644 drivers/acpi/pci_mcfg.c - -diff --git a/drivers/acpi/Kconfig b/drivers/acpi/Kconfig -index b7e2e77..f98c328 100644 ---- a/drivers/acpi/Kconfig -+++ b/drivers/acpi/Kconfig -@@ -217,6 +217,9 @@ config ACPI_PROCESSOR_IDLE - bool - select CPU_IDLE - -+config ACPI_MCFG -+ bool -+ - config ACPI_CPPC_LIB - bool - depends on ACPI_PROCESSOR -diff --git a/drivers/acpi/Makefile b/drivers/acpi/Makefile -index 251ce85..632e81f 100644 ---- a/drivers/acpi/Makefile -+++ b/drivers/acpi/Makefile -@@ -40,6 +40,7 @@ acpi-$(CONFIG_ARCH_MIGHT_HAVE_ACPI_PDC) += processor_pdc.o - acpi-y += ec.o - acpi-$(CONFIG_ACPI_DOCK) += dock.o - acpi-y += pci_root.o pci_link.o pci_irq.o -+obj-$(CONFIG_ACPI_MCFG) += pci_mcfg.o - acpi-y += acpi_lpss.o acpi_apd.o - acpi-y += acpi_platform.o - acpi-y += acpi_pnp.o -diff --git a/drivers/acpi/pci_mcfg.c b/drivers/acpi/pci_mcfg.c -new file mode 100644 -index 0000000..d3c3e85 ---- /dev/null -+++ b/drivers/acpi/pci_mcfg.c -@@ -0,0 +1,92 @@ -+/* -+ * Copyright (C) 2016 Broadcom -+ * Author: Jayachandran C <jchandra@broadcom.com> -+ * Copyright (C) 2016 Semihalf -+ * Author: Tomasz Nowicki <tn@semihalf.com> -+ * -+ * This program is free software; you can redistribute it and/or modify -+ * it under the terms of the GNU General Public License, version 2, as -+ * published by the Free Software Foundation (the "GPL"). -+ * -+ * This program is distributed in the hope that it will be useful, but -+ * WITHOUT ANY WARRANTY; without even the implied warranty of -+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ * General Public License version 2 (GPLv2) for more details. -+ * -+ * You should have received a copy of the GNU General Public License -+ * version 2 (GPLv2) along with this source code. -+ */ -+ -+#define pr_fmt(fmt) "ACPI: " fmt -+ -+#include <linux/kernel.h> -+#include <linux/pci.h> -+#include <linux/pci-acpi.h> -+ -+/* Structure to hold entries from the MCFG table */ -+struct mcfg_entry { -+ struct list_head list; -+ phys_addr_t addr; -+ u16 segment; -+ u8 bus_start; -+ u8 bus_end; -+}; -+ -+/* List to save mcfg entries */ -+static LIST_HEAD(pci_mcfg_list); -+ -+phys_addr_t pci_mcfg_lookup(u16 seg, struct resource *bus_res) -+{ -+ struct mcfg_entry *e; -+ -+ /* -+ * We expect exact match, unless MCFG entry end bus covers more than -+ * specified by caller. -+ */ -+ list_for_each_entry(e, &pci_mcfg_list, list) { -+ if (e->segment == seg && e->bus_start == bus_res->start && -+ e->bus_end >= bus_res->end) -+ return e->addr; -+ } -+ -+ return 0; -+} -+ -+static __init int pci_mcfg_parse(struct acpi_table_header *header) -+{ -+ struct acpi_table_mcfg *mcfg; -+ struct acpi_mcfg_allocation *mptr; -+ struct mcfg_entry *e, *arr; -+ int i, n; -+ -+ if (header->length < sizeof(struct acpi_table_mcfg)) -+ return -EINVAL; -+ -+ n = (header->length - sizeof(struct acpi_table_mcfg)) / -+ sizeof(struct acpi_mcfg_allocation); -+ mcfg = (struct acpi_table_mcfg *)header; -+ mptr = (struct acpi_mcfg_allocation *) &mcfg[1]; -+ -+ arr = kcalloc(n, sizeof(*arr), GFP_KERNEL); -+ if (!arr) -+ return -ENOMEM; -+ -+ for (i = 0, e = arr; i < n; i++, mptr++, e++) { -+ e->segment = mptr->pci_segment; -+ e->addr = mptr->address; -+ e->bus_start = mptr->start_bus_number; -+ e->bus_end = mptr->end_bus_number; -+ list_add(&e->list, &pci_mcfg_list); -+ } -+ -+ pr_info("MCFG table detected, %d entries\n", n); -+ return 0; -+} -+ -+/* Interface called by ACPI - parse and save MCFG table */ -+void __init pci_mmcfg_late_init(void) -+{ -+ int err = acpi_table_parse(ACPI_SIG_MCFG, pci_mcfg_parse); -+ if (err) -+ pr_err("Failed to parse MCFG (%d)\n", err); -+} -diff --git a/include/linux/pci-acpi.h b/include/linux/pci-acpi.h -index 89ab057..7d63a66 100644 ---- a/include/linux/pci-acpi.h -+++ b/include/linux/pci-acpi.h -@@ -24,6 +24,8 @@ static inline acpi_status pci_acpi_remove_pm_notifier(struct acpi_device *dev) - } - extern phys_addr_t acpi_pci_root_get_mcfg_addr(acpi_handle handle); - -+extern phys_addr_t pci_mcfg_lookup(u16 domain, struct resource *bus_res); -+ - static inline acpi_handle acpi_find_root_bridge_handle(struct pci_dev *pdev) - { - struct pci_bus *pbus = pdev->bus; -diff --git a/include/linux/pci.h b/include/linux/pci.h -index 12349de..ce03d65 100644 ---- a/include/linux/pci.h -+++ b/include/linux/pci.h -@@ -1723,7 +1723,7 @@ void pcibios_free_irq(struct pci_dev *dev); - extern struct dev_pm_ops pcibios_pm_ops; - #endif - --#ifdef CONFIG_PCI_MMCONFIG -+#if defined(CONFIG_PCI_MMCONFIG) || defined(CONFIG_ACPI_MCFG) - void __init pci_mmcfg_early_init(void); - void __init pci_mmcfg_late_init(void); - #else --- -2.7.4 - -From fc1907f9c79f9a0a0c2f4d579896e678915fec48 Mon Sep 17 00:00:00 2001 -From: Tomasz Nowicki <tn@semihalf.com> -Date: Fri, 10 Jun 2016 21:55:14 +0200 -Subject: [PATCH 06/11] PCI: Refactor generic bus domain assignment - -Change the way PCI bus domain number is assigned and improve function -name to reflect what function does. No functional changes. - -Instead of assigning bus domain number inside of pci_bus_assign_domain_nr() -simply return domain number and let pci_create_root_bus() do assignment. -This way pci_create_root_bus() setups bus structure data in the consistent -way. Since pci_bus_assign_domain_nr() now does not assign but retrieves -domain number instead, rename it to pci_bus_find_domain_nr(). - -Signed-off-by: Tomasz Nowicki <tn@semihalf.com> -Reviewed-by: Lorenzo Pieralisi <lorenzo.pieralisi@arm.com> ---- - drivers/pci/pci.c | 4 ++-- - drivers/pci/probe.c | 4 +++- - include/linux/pci.h | 7 +------ - 3 files changed, 6 insertions(+), 9 deletions(-) - -diff --git a/drivers/pci/pci.c b/drivers/pci/pci.c -index eb431b5..b9a7833 100644 ---- a/drivers/pci/pci.c -+++ b/drivers/pci/pci.c -@@ -4941,7 +4941,7 @@ int pci_get_new_domain_nr(void) - } - - #ifdef CONFIG_PCI_DOMAINS_GENERIC --void pci_bus_assign_domain_nr(struct pci_bus *bus, struct device *parent) -+int pci_bus_find_domain_nr(struct pci_bus *bus, struct device *parent) - { - static int use_dt_domains = -1; - int domain = -1; -@@ -4985,7 +4985,7 @@ void pci_bus_assign_domain_nr(struct pci_bus *bus, struct device *parent) - domain = -1; - } - -- bus->domain_nr = domain; -+ return domain; - } - #endif - #endif -diff --git a/drivers/pci/probe.c b/drivers/pci/probe.c -index 8e3ef72..380d46d 100644 ---- a/drivers/pci/probe.c -+++ b/drivers/pci/probe.c -@@ -2127,7 +2127,9 @@ struct pci_bus *pci_create_root_bus(struct device *parent, int bus, - b->sysdata = sysdata; - b->ops = ops; - b->number = b->busn_res.start = bus; -- pci_bus_assign_domain_nr(b, parent); -+#ifdef CONFIG_PCI_DOMAINS_GENERIC -+ b->domain_nr = pci_bus_find_domain_nr(b, parent); -+#endif - b2 = pci_find_bus(pci_domain_nr(b), bus); - if (b2) { - /* If we already got to this bus through a different bridge, ignore it */ -diff --git a/include/linux/pci.h b/include/linux/pci.h -index ce03d65..48839e8 100644 ---- a/include/linux/pci.h -+++ b/include/linux/pci.h -@@ -1390,12 +1390,7 @@ static inline int pci_domain_nr(struct pci_bus *bus) - { - return bus->domain_nr; - } --void pci_bus_assign_domain_nr(struct pci_bus *bus, struct device *parent); --#else --static inline void pci_bus_assign_domain_nr(struct pci_bus *bus, -- struct device *parent) --{ --} -+int pci_bus_find_domain_nr(struct pci_bus *bus, struct device *parent); - #endif - - /* some architectures require additional setup to direct VGA traffic */ --- -2.7.4 - -From d6d45ae1d58658111d5e838c41b9ed4729bbb81e Mon Sep 17 00:00:00 2001 -From: Tomasz Nowicki <tn@semihalf.com> -Date: Fri, 10 Jun 2016 21:55:15 +0200 -Subject: [PATCH 07/11] PCI: Factor DT specific pci_bus_find_domain_nr() code - out - -pci_bus_find_domain_nr() retrieves the host bridge domain number in a DT -specific way. Factor our pci_bus_find_domain_nr() in a separate DT -function (ie of_pci_bus_find_domain_nr()) so that DT code is self -contained, paving the way for retrieving domain number in -pci_bus_find_domain_nr() with additional firmware methods (ie ACPI). - -Signed-off-by: Tomasz Nowicki <tn@semihalf.com> -Reviewed-by: Lorenzo Pieralisi <lorenzo.pieralisi@arm.com> ---- - drivers/pci/pci.c | 7 ++++++- - 1 file changed, 6 insertions(+), 1 deletion(-) - -diff --git a/drivers/pci/pci.c b/drivers/pci/pci.c -index b9a7833..97f7cd4 100644 ---- a/drivers/pci/pci.c -+++ b/drivers/pci/pci.c -@@ -4941,7 +4941,7 @@ int pci_get_new_domain_nr(void) - } - - #ifdef CONFIG_PCI_DOMAINS_GENERIC --int pci_bus_find_domain_nr(struct pci_bus *bus, struct device *parent) -+static int of_pci_bus_find_domain_nr(struct device *parent) - { - static int use_dt_domains = -1; - int domain = -1; -@@ -4987,6 +4987,11 @@ int pci_bus_find_domain_nr(struct pci_bus *bus, struct device *parent) - - return domain; - } -+ -+int pci_bus_find_domain_nr(struct pci_bus *bus, struct device *parent) -+{ -+ return of_pci_bus_find_domain_nr(parent); -+} - #endif - #endif - --- -2.7.4 - -From 92d59511fd365d3c0c31d074b5e96cf48c58f68b Mon Sep 17 00:00:00 2001 -From: Peter Robinson <pbrobinson@gmail.com> -Date: Thu, 30 Jun 2016 16:56:24 +0100 -Subject: [PATCH 08/11] ARM64/PCI: Add ACPI hook to assign domain number - -PCI core code provides a config option (CONFIG_PCI_DOMAINS_GENERIC) -that allows assigning the PCI bus domain number generically by -relying on device tree bindings, and falling back to a simple counter -when the respective DT properties (ie "linux,pci-domain") are not -specified in the host bridge device tree node. - -In a similar way, when a system is booted through ACPI, architectures -that are selecting CONFIG_PCI_DOMAINS_GENERIC (ie ARM64) require kernel -hooks to retrieve the domain number so that the PCI bus domain number -set-up can be handled seamlessly with DT and ACPI in generic core code -when CONFIG_PCI_DOMAINS_GENERIC is selected. - -Since currently it is not possible to retrieve a pointer to the PCI -host bridge ACPI device backing the host bridge from core PCI code -(which would allow retrieving the domain number in an arch agnostic -way through the ACPI _SEG method), an arch specific ACPI hook has to -be declared and implemented by all arches that rely on -CONFIG_PCI_DOMAINS_GENERIC to retrieve the domain number and set it -up in core PCI code. - -For the aforementioned reasons, introduce acpi_pci_bus_find_domain_nr() -hook to retrieve the domain number on a per-arch basis when the system -boots through ACPI. ARM64 dummy implementation of the same is provided -in first place in preparation for ARM64 ACPI based PCI host controller -driver. - -acpi_pci_bus_find_domain_nr() is called from generic -pci_bus_find_domain_nr() as an ACPI option to DT domain assignment. - -Signed-off-by: Tomasz Nowicki <tn@semihalf.com> -Signed-off-by: Lorenzo Pieralisi <lorenzo.pieralisi@arm.com> ---- - arch/arm64/kernel/pci.c | 7 +++++++ - drivers/pci/pci.c | 4 +++- - include/linux/pci.h | 7 +++++++ - 3 files changed, 17 insertions(+), 1 deletion(-) - -diff --git a/arch/arm64/kernel/pci.c b/arch/arm64/kernel/pci.c -index 3c4e308..d5d3d26 100644 ---- a/arch/arm64/kernel/pci.c -+++ b/arch/arm64/kernel/pci.c -@@ -17,6 +17,7 @@ - #include <linux/mm.h> - #include <linux/of_pci.h> - #include <linux/of_platform.h> -+#include <linux/pci.h> - #include <linux/slab.h> - - /* -@@ -85,6 +86,12 @@ EXPORT_SYMBOL(pcibus_to_node); - #endif - - #ifdef CONFIG_ACPI -+ -+int acpi_pci_bus_find_domain_nr(struct pci_bus *bus) -+{ -+ return 0; -+} -+ - /* Root bridge scanning */ - struct pci_bus *pci_acpi_scan_root(struct acpi_pci_root *root) - { -diff --git a/drivers/pci/pci.c b/drivers/pci/pci.c -index 97f7cd4..4834cee 100644 ---- a/drivers/pci/pci.c -+++ b/drivers/pci/pci.c -@@ -7,6 +7,7 @@ - * Copyright 1997 -- 2000 Martin Mares <mj@ucw.cz> - */ - -+#include <linux/acpi.h> - #include <linux/kernel.h> - #include <linux/delay.h> - #include <linux/init.h> -@@ -4990,7 +4991,8 @@ static int of_pci_bus_find_domain_nr(struct device *parent) - - int pci_bus_find_domain_nr(struct pci_bus *bus, struct device *parent) - { -- return of_pci_bus_find_domain_nr(parent); -+ return acpi_disabled ? of_pci_bus_find_domain_nr(parent) : -+ acpi_pci_bus_find_domain_nr(bus); - } - #endif - #endif -diff --git a/include/linux/pci.h b/include/linux/pci.h -index 48839e8..49ba8af 100644 ---- a/include/linux/pci.h -+++ b/include/linux/pci.h -@@ -1390,6 +1390,13 @@ static inline int pci_domain_nr(struct pci_bus *bus) - { - return bus->domain_nr; - } -+/* Arch specific ACPI hook to set-up domain number */ -+#ifdef CONFIG_ACPI -+int acpi_pci_bus_find_domain_nr(struct pci_bus *bus); -+#else -+static inline int acpi_pci_bus_find_domain_nr(struct pci_bus *bus) -+{ return 0; } -+#endif - int pci_bus_find_domain_nr(struct pci_bus *bus, struct device *parent); - #endif - --- -2.7.4 - -From bb06753d2e163d8100a017f06a6d9dd195d68a76 Mon Sep 17 00:00:00 2001 -From: Tomasz Nowicki <tn@semihalf.com> -Date: Fri, 10 Jun 2016 21:55:17 +0200 -Subject: [PATCH 09/11] ARM64/PCI: ACPI support for legacy IRQs parsing and - consolidation with DT code - -To enable PCI legacy IRQs on platforms booting with ACPI, arch code -should include ACPI specific callbacks that parse and set-up the -device IRQ number, equivalent to the DT boot path. Owing to the current -ACPI core scan handlers implementation, ACPI PCI legacy IRQs bindings -cannot be parsed at device add time, since that would trigger ACPI scan -handlers ordering issues depending on how the ACPI tables are defined. - -To solve this problem and consolidate FW PCI legacy IRQs parsing in -one single pcibios callback (pending final removal), this patch moves -DT PCI IRQ parsing to the pcibios_alloc_irq() callback (called by -PCI core code at device probe time) and adds ACPI PCI legacy IRQs -parsing to the same callback too, so that FW PCI legacy IRQs parsing -is confined in one single arch callback that can be easily removed -when code parsing PCI legacy IRQs is consolidated and moved to core -PCI code. - -Signed-off-by: Tomasz Nowicki <tn@semihalf.com> -Suggested-by: Lorenzo Pieralisi <lorenzo.pieralisi@arm.com> ---- - arch/arm64/kernel/pci.c | 11 ++++++++--- - 1 file changed, 8 insertions(+), 3 deletions(-) - -diff --git a/arch/arm64/kernel/pci.c b/arch/arm64/kernel/pci.c -index d5d3d26..b3b8a2c 100644 ---- a/arch/arm64/kernel/pci.c -+++ b/arch/arm64/kernel/pci.c -@@ -51,11 +51,16 @@ int pcibios_enable_device(struct pci_dev *dev, int mask) - } - - /* -- * Try to assign the IRQ number from DT when adding a new device -+ * Try to assign the IRQ number when probing a new device - */ --int pcibios_add_device(struct pci_dev *dev) -+int pcibios_alloc_irq(struct pci_dev *dev) - { -- dev->irq = of_irq_parse_and_map_pci(dev, 0, 0); -+ if (acpi_disabled) -+ dev->irq = of_irq_parse_and_map_pci(dev, 0, 0); -+#ifdef CONFIG_ACPI -+ else -+ return acpi_pci_irq_enable(dev); -+#endif - - return 0; - } --- -2.7.4 - -From b6e298840f532192a589f8ade128dec3fef3a4c6 Mon Sep 17 00:00:00 2001 -From: Tomasz Nowicki <tn@semihalf.com> -Date: Fri, 10 Jun 2016 21:55:18 +0200 -Subject: [PATCH 10/11] ARM64/PCI: Implement ACPI low-level calls to access - PCI_Config region from AML - -ACPI spec6.1 - chapter: 5.5.2.4 defines OperationRegion (Declare Operation -Region). Following the spec: " [...] An Operation Region is a specific -region of operation within an address space that is declared as a subset -of the entire address space using a starting address (offset) and a length. -Control methods must have exclusive access to any address accessed via -fields declared in Operation Regions. [...]". - -OperationRegion allows to declare various of operation region address space -identifiers including PCI_Config. PCI_Config is meant to access PCI -configuration space from the ASL. So every time ASL opcode operates -on PCI_Config space region, ASL interpreter dispatches accesses to OS -low-level calls - raw_pci_write() and raw_pci_read() for Linux - so-called -ACPI RAW accessors. - -In order to support PCI_Config operation region, implement mentioned -raw_pci_write() and raw_pci_read() calls so they find associated bus -and call read/write ops. - -Waiting for clarification in the ACPI specifications in relation -to PCI_Config space handling before PCI bus enumeration is completed, -current code does not support PCI_Config region accesses before PCI bus -enumeration whilst providing full AML PCI_Config access availability -when the PCI bus enumeration is completed by the kernel so that -RAW accessors can look-up PCI operations through the struct pci_bus -associated with a PCI bus. - -Signed-off-by: Tomasz Nowicki <tn@semihalf.com> -Signed-off-by: Jayachandran C <jchandra@broadcom.com> -Reviewed-by: Lorenzo Pieralisi <lorenzo.pieralisi@arm.com> ---- - arch/arm64/kernel/pci.c | 12 ++++++++++-- - 1 file changed, 10 insertions(+), 2 deletions(-) - -diff --git a/arch/arm64/kernel/pci.c b/arch/arm64/kernel/pci.c -index b3b8a2c..328f857 100644 ---- a/arch/arm64/kernel/pci.c -+++ b/arch/arm64/kernel/pci.c -@@ -71,13 +71,21 @@ int pcibios_alloc_irq(struct pci_dev *dev) - int raw_pci_read(unsigned int domain, unsigned int bus, - unsigned int devfn, int reg, int len, u32 *val) - { -- return -ENXIO; -+ struct pci_bus *b = pci_find_bus(domain, bus); -+ -+ if (!b) -+ return PCIBIOS_DEVICE_NOT_FOUND; -+ return b->ops->read(b, devfn, reg, len, val); - } - - int raw_pci_write(unsigned int domain, unsigned int bus, - unsigned int devfn, int reg, int len, u32 val) - { -- return -ENXIO; -+ struct pci_bus *b = pci_find_bus(domain, bus); -+ -+ if (!b) -+ return PCIBIOS_DEVICE_NOT_FOUND; -+ return b->ops->write(b, devfn, reg, len, val); - } - - #ifdef CONFIG_NUMA --- -2.7.4 - -From 3b8cff3fa89ba3ef6f1cf09a0667aa470b7fad0b Mon Sep 17 00:00:00 2001 -From: Tomasz Nowicki <tn@semihalf.com> -Date: Fri, 10 Jun 2016 21:55:19 +0200 -Subject: [PATCH 11/11] ARM64/PCI: Support for ACPI based PCI host controller - -Implement pci_acpi_scan_root and other arch-specific call so that ARM64 -can start using ACPI to setup and enumerate PCI buses. - -Prior to buses enumeration the pci_acpi_scan_root() implementation looks -for configuration space start address (obtained through ACPI _CBA method or -MCFG interface). If succeed, it uses ECAM library to create new mapping. -Then it attaches generic ECAM ops (pci_generic_ecam_ops) which are used -for accessing configuration space later on. - -On ARM64, we need to use generic domains (CONFIG_PCI_DOMAINS_GENERIC). -In order to achieve that for ACPI case implement -acpi_pci_bus_find_domain_nr() body so that it retrieves pci_config_window -structure from bus sysdata and eventually gets domain number from -acpi_pci_root structure. - -ACPI requires to run acpi_pci_{add|remove}_bus while new PCI bus is created. -This allows to do some ACPI-specific additional configuration, like -PCI hotplug slot enumeration. In order to fulfill these requirements, -we implement arch-specific pcibios_{add|remove}_bus calls -and call acpi_pci_{add|remove}_bus from there. - -Signed-off-by: Tomasz Nowicki <tn@semihalf.com> -Signed-off-by: Jayachandran C <jchandra@broadcom.com> -Reviewed-by: Lorenzo Pieralisi <lorenzo.pieralisi@arm.com> ---- - arch/arm64/Kconfig | 2 + - arch/arm64/kernel/pci.c | 116 ++++++++++++++++++++++++++++++++++++++++++++++-- - 2 files changed, 115 insertions(+), 3 deletions(-) - -diff --git a/arch/arm64/Kconfig b/arch/arm64/Kconfig -index 5a0a691..4806cde 100644 ---- a/arch/arm64/Kconfig -+++ b/arch/arm64/Kconfig -@@ -3,6 +3,7 @@ config ARM64 - select ACPI_CCA_REQUIRED if ACPI - select ACPI_GENERIC_GSI if ACPI - select ACPI_REDUCED_HARDWARE_ONLY if ACPI -+ select ACPI_MCFG if ACPI - select ARCH_HAS_DEVMEM_IS_ALLOWED - select ARCH_HAS_ATOMIC64_DEC_IF_POSITIVE - select ARCH_HAS_ELF_RANDOMIZE -@@ -96,6 +97,7 @@ config ARM64 - select OF_EARLY_FLATTREE - select OF_NUMA if NUMA && OF - select OF_RESERVED_MEM -+ select PCI_ECAM if ACPI - select PERF_USE_VMALLOC - select POWER_RESET - select POWER_SUPPLY -diff --git a/arch/arm64/kernel/pci.c b/arch/arm64/kernel/pci.c -index 328f857..94cd43c 100644 ---- a/arch/arm64/kernel/pci.c -+++ b/arch/arm64/kernel/pci.c -@@ -18,6 +18,8 @@ - #include <linux/of_pci.h> - #include <linux/of_platform.h> - #include <linux/pci.h> -+#include <linux/pci-acpi.h> -+#include <linux/pci-ecam.h> - #include <linux/slab.h> - - /* -@@ -100,15 +102,123 @@ EXPORT_SYMBOL(pcibus_to_node); - - #ifdef CONFIG_ACPI - -+struct acpi_pci_generic_root_info { -+ struct acpi_pci_root_info common; -+ struct pci_config_window *cfg; /* config space mapping */ -+}; -+ - int acpi_pci_bus_find_domain_nr(struct pci_bus *bus) - { -+ struct pci_config_window *cfg = bus->sysdata; -+ struct acpi_device *adev = to_acpi_device(cfg->parent); -+ struct acpi_pci_root *root = acpi_driver_data(adev); -+ -+ return root->segment; -+} -+ -+int pcibios_root_bridge_prepare(struct pci_host_bridge *bridge) -+{ -+ if (!acpi_disabled) { -+ struct pci_config_window *cfg = bridge->bus->sysdata; -+ struct acpi_device *adev = to_acpi_device(cfg->parent); -+ ACPI_COMPANION_SET(&bridge->dev, adev); -+ } -+ - return 0; - } - --/* Root bridge scanning */ -+/* -+ * Lookup the bus range for the domain in MCFG, and set up config space -+ * mapping. -+ */ -+static struct pci_config_window * -+pci_acpi_setup_ecam_mapping(struct acpi_pci_root *root) -+{ -+ struct resource *bus_res = &root->secondary; -+ u16 seg = root->segment; -+ struct pci_config_window *cfg; -+ struct resource cfgres; -+ unsigned int bsz; -+ -+ /* Use address from _CBA if present, otherwise lookup MCFG */ -+ if (!root->mcfg_addr) -+ root->mcfg_addr = pci_mcfg_lookup(seg, bus_res); -+ -+ if (!root->mcfg_addr) { -+ dev_err(&root->device->dev, "%04x:%pR ECAM region not found\n", -+ seg, bus_res); -+ return NULL; -+ } -+ -+ bsz = 1 << pci_generic_ecam_ops.bus_shift; -+ cfgres.start = root->mcfg_addr + bus_res->start * bsz; -+ cfgres.end = cfgres.start + resource_size(bus_res) * bsz - 1; -+ cfgres.flags = IORESOURCE_MEM; -+ cfg = pci_ecam_create(&root->device->dev, &cfgres, bus_res, -+ &pci_generic_ecam_ops); -+ if (IS_ERR(cfg)) { -+ dev_err(&root->device->dev, "%04x:%pR error %ld mapping ECAM\n", -+ seg, bus_res, PTR_ERR(cfg)); -+ return NULL; -+ } -+ -+ return cfg; -+} -+ -+/* release_info: free resources allocated by init_info */ -+static void pci_acpi_generic_release_info(struct acpi_pci_root_info *ci) -+{ -+ struct acpi_pci_generic_root_info *ri; -+ -+ ri = container_of(ci, struct acpi_pci_generic_root_info, common); -+ pci_ecam_free(ri->cfg); -+ kfree(ri); -+} -+ -+static struct acpi_pci_root_ops acpi_pci_root_ops = { -+ .release_info = pci_acpi_generic_release_info, -+}; -+ -+/* Interface called from ACPI code to setup PCI host controller */ - struct pci_bus *pci_acpi_scan_root(struct acpi_pci_root *root) - { -- /* TODO: Should be revisited when implementing PCI on ACPI */ -- return NULL; -+ int node = acpi_get_node(root->device->handle); -+ struct acpi_pci_generic_root_info *ri; -+ struct pci_bus *bus, *child; -+ -+ ri = kzalloc_node(sizeof(*ri), GFP_KERNEL, node); -+ if (!ri) -+ return NULL; -+ -+ ri->cfg = pci_acpi_setup_ecam_mapping(root); -+ if (!ri->cfg) { -+ kfree(ri); -+ return NULL; -+ } -+ -+ acpi_pci_root_ops.pci_ops = &ri->cfg->ops->pci_ops; -+ bus = acpi_pci_root_create(root, &acpi_pci_root_ops, &ri->common, -+ ri->cfg); -+ if (!bus) -+ return NULL; -+ -+ pci_bus_size_bridges(bus); -+ pci_bus_assign_resources(bus); -+ -+ list_for_each_entry(child, &bus->children, node) -+ pcie_bus_configure_settings(child); -+ -+ return bus; -+} -+ -+void pcibios_add_bus(struct pci_bus *bus) -+{ -+ acpi_pci_add_bus(bus); - } -+ -+void pcibios_remove_bus(struct pci_bus *bus) -+{ -+ acpi_pci_remove_bus(bus); -+} -+ - #endif --- -2.7.4 - diff --git a/arm64-pcie-quirks-xgene.patch b/arm64-pcie-quirks-xgene.patch deleted file mode 100644 index 8e6805df6..000000000 --- a/arm64-pcie-quirks-xgene.patch +++ /dev/null @@ -1,508 +0,0 @@ -From 767b70aa55d013f0c7589955f410d488fed5776a Mon Sep 17 00:00:00 2001 -From: Peter Robinson <pbrobinson@gmail.com> -Date: Tue, 5 Jul 2016 23:49:39 +0100 -Subject: [PATCH 1/4] Some platforms may not be fully compliant with generic - set of PCI config accessors. For these cases we implement the way to - overwrite accessors set. Algorithm traverses available quirk list, matches - against <oem_id, oem_table_id, domain, bus number> tuple and returns - corresponding PCI config ops. oem_id and oem_table_id come from MCFG table - standard header. All quirks can be defined using DECLARE_ACPI_MCFG_FIXUP() - macro and kept self contained. Example: - -/* Custom PCI config ops */ -static struct pci_generic_ecam_ops foo_pci_ops = { - .bus_shift = 24, - .pci_ops = { - .map_bus = pci_ecam_map_bus, - .read = foo_ecam_config_read, - .write = foo_ecam_config_write, - } -}; - -DECLARE_ACPI_MCFG_FIXUP(&foo_pci_ops, <oem_id_str>, <oem_table_id>, <domain_nr>, <bus_nr>); - -Signed-off-by: Tomasz Nowicki <tn@semihalf.com> -Signed-off-by: Dongdong Liu <liudongdong3@huawei.com> ---- - drivers/acpi/pci_mcfg.c | 41 ++++++++++++++++++++++++++++++++++++--- - include/asm-generic/vmlinux.lds.h | 7 +++++++ - include/linux/pci-acpi.h | 20 +++++++++++++++++++ - 3 files changed, 65 insertions(+), 3 deletions(-) - -diff --git a/drivers/acpi/pci_mcfg.c b/drivers/acpi/pci_mcfg.c -index d3c3e85..deb0077 100644 ---- a/drivers/acpi/pci_mcfg.c -+++ b/drivers/acpi/pci_mcfg.c -@@ -22,6 +22,10 @@ - #include <linux/kernel.h> - #include <linux/pci.h> - #include <linux/pci-acpi.h> -+#include <linux/pci-ecam.h> -+ -+/* Root pointer to the mapped MCFG table */ -+static struct acpi_table_mcfg *mcfg_table; - - /* Structure to hold entries from the MCFG table */ - struct mcfg_entry { -@@ -35,6 +39,38 @@ struct mcfg_entry { - /* List to save mcfg entries */ - static LIST_HEAD(pci_mcfg_list); - -+extern struct pci_cfg_fixup __start_acpi_mcfg_fixups[]; -+extern struct pci_cfg_fixup __end_acpi_mcfg_fixups[]; -+ -+struct pci_ecam_ops *pci_mcfg_get_ops(struct acpi_pci_root *root) -+{ -+ int bus_num = root->secondary.start; -+ int domain = root->segment; -+ struct pci_cfg_fixup *f; -+ -+ if (!mcfg_table) -+ return &pci_generic_ecam_ops; -+ -+ /* -+ * Match against platform specific quirks and return corresponding -+ * CAM ops. -+ * -+ * First match against PCI topology <domain:bus> then use OEM ID and -+ * OEM revision from MCFG table standard header. -+ */ -+ for (f = __start_acpi_mcfg_fixups; f < __end_acpi_mcfg_fixups; f++) { -+ if ((f->domain == domain || f->domain == PCI_MCFG_DOMAIN_ANY) && -+ (f->bus_num == bus_num || f->bus_num == PCI_MCFG_BUS_ANY) && -+ (!strncmp(f->oem_id, mcfg_table->header.oem_id, -+ ACPI_OEM_ID_SIZE)) && -+ (!strncmp(f->oem_table_id, mcfg_table->header.oem_table_id, -+ ACPI_OEM_TABLE_ID_SIZE))) -+ return f->ops; -+ } -+ /* No quirks, use ECAM */ -+ return &pci_generic_ecam_ops; -+} -+ - phys_addr_t pci_mcfg_lookup(u16 seg, struct resource *bus_res) - { - struct mcfg_entry *e; -@@ -54,7 +90,6 @@ phys_addr_t pci_mcfg_lookup(u16 seg, struct resource *bus_res) - - static __init int pci_mcfg_parse(struct acpi_table_header *header) - { -- struct acpi_table_mcfg *mcfg; - struct acpi_mcfg_allocation *mptr; - struct mcfg_entry *e, *arr; - int i, n; -@@ -64,8 +99,8 @@ static __init int pci_mcfg_parse(struct acpi_table_header *header) - - n = (header->length - sizeof(struct acpi_table_mcfg)) / - sizeof(struct acpi_mcfg_allocation); -- mcfg = (struct acpi_table_mcfg *)header; -- mptr = (struct acpi_mcfg_allocation *) &mcfg[1]; -+ mcfg_table = (struct acpi_table_mcfg *)header; -+ mptr = (struct acpi_mcfg_allocation *) &mcfg_table[1]; - - arr = kcalloc(n, sizeof(*arr), GFP_KERNEL); - if (!arr) -diff --git a/include/asm-generic/vmlinux.lds.h b/include/asm-generic/vmlinux.lds.h -index 6a67ab9..43604fc 100644 ---- a/include/asm-generic/vmlinux.lds.h -+++ b/include/asm-generic/vmlinux.lds.h -@@ -300,6 +300,13 @@ - VMLINUX_SYMBOL(__end_pci_fixups_suspend_late) = .; \ - } \ - \ -+ /* ACPI MCFG quirks */ \ -+ .acpi_fixup : AT(ADDR(.acpi_fixup) - LOAD_OFFSET) { \ -+ VMLINUX_SYMBOL(__start_acpi_mcfg_fixups) = .; \ -+ *(.acpi_fixup_mcfg) \ -+ VMLINUX_SYMBOL(__end_acpi_mcfg_fixups) = .; \ -+ } \ -+ \ - /* Built-in firmware blobs */ \ - .builtin_fw : AT(ADDR(.builtin_fw) - LOAD_OFFSET) { \ - VMLINUX_SYMBOL(__start_builtin_fw) = .; \ -diff --git a/include/linux/pci-acpi.h b/include/linux/pci-acpi.h -index 7d63a66..c8a6559 100644 ---- a/include/linux/pci-acpi.h -+++ b/include/linux/pci-acpi.h -@@ -25,6 +25,7 @@ static inline acpi_status pci_acpi_remove_pm_notifier(struct acpi_device *dev) - extern phys_addr_t acpi_pci_root_get_mcfg_addr(acpi_handle handle); - - extern phys_addr_t pci_mcfg_lookup(u16 domain, struct resource *bus_res); -+extern struct pci_ecam_ops *pci_mcfg_get_ops(struct acpi_pci_root *root); - - static inline acpi_handle acpi_find_root_bridge_handle(struct pci_dev *pdev) - { -@@ -72,6 +73,25 @@ struct acpi_pci_root_ops { - int (*prepare_resources)(struct acpi_pci_root_info *info); - }; - -+struct pci_cfg_fixup { -+ struct pci_ecam_ops *ops; -+ char *oem_id; -+ char *oem_table_id; -+ int domain; -+ int bus_num; -+}; -+ -+#define PCI_MCFG_DOMAIN_ANY -1 -+#define PCI_MCFG_BUS_ANY -1 -+ -+/* Designate a routine to fix up buggy MCFG */ -+#define DECLARE_ACPI_MCFG_FIXUP(ops, oem_id, oem_table_id, dom, bus) \ -+ static const struct pci_cfg_fixup \ -+ __mcfg_fixup_##oem_id##oem_table_id##dom##bus \ -+ __used __attribute__((__section__(".acpi_fixup_mcfg"), \ -+ aligned((sizeof(void *))))) = \ -+ { ops, oem_id, oem_table_id, dom, bus }; -+ - extern int acpi_pci_probe_root_resources(struct acpi_pci_root_info *info); - extern struct pci_bus *acpi_pci_root_create(struct acpi_pci_root *root, - struct acpi_pci_root_ops *ops, --- -2.7.4 - -From 4f86a9b006b25dd7336043dab26058ed6fb2802d Mon Sep 17 00:00:00 2001 -From: Peter Robinson <pbrobinson@gmail.com> -Date: Tue, 5 Jul 2016 23:52:46 +0100 -Subject: [PATCH 2/4] pci_generic_ecam_ops is used by default. Since there are - platforms which have non-compliant ECAM space we need to overwrite these - accessors prior to PCI buses enumeration. In order to do that we call - pci_mcfg_get_ops to retrieve pci_ecam_ops structure so that we can use proper - PCI config space accessors and bus_shift. - -pci_generic_ecam_ops is still used for platforms free from quirks. - -Signed-off-by: Tomasz Nowicki <tn@semihalf.com> ---- - arch/arm64/kernel/pci.c | 7 ++++--- - 1 file changed, 4 insertions(+), 3 deletions(-) - -diff --git a/arch/arm64/kernel/pci.c b/arch/arm64/kernel/pci.c -index 94cd43c..a891bda 100644 ---- a/arch/arm64/kernel/pci.c -+++ b/arch/arm64/kernel/pci.c -@@ -139,6 +139,7 @@ pci_acpi_setup_ecam_mapping(struct acpi_pci_root *root) - struct pci_config_window *cfg; - struct resource cfgres; - unsigned int bsz; -+ struct pci_ecam_ops *ops; - - /* Use address from _CBA if present, otherwise lookup MCFG */ - if (!root->mcfg_addr) -@@ -150,12 +151,12 @@ pci_acpi_setup_ecam_mapping(struct acpi_pci_root *root) - return NULL; - } - -- bsz = 1 << pci_generic_ecam_ops.bus_shift; -+ ops = pci_mcfg_get_ops(root); -+ bsz = 1 << ops->bus_shift; - cfgres.start = root->mcfg_addr + bus_res->start * bsz; - cfgres.end = cfgres.start + resource_size(bus_res) * bsz - 1; - cfgres.flags = IORESOURCE_MEM; -- cfg = pci_ecam_create(&root->device->dev, &cfgres, bus_res, -- &pci_generic_ecam_ops); -+ cfg = pci_ecam_create(&root->device->dev, &cfgres, bus_res, ops); - if (IS_ERR(cfg)) { - dev_err(&root->device->dev, "%04x:%pR error %ld mapping ECAM\n", - seg, bus_res, PTR_ERR(cfg)); --- -2.7.4 - -From cbdbd697bd6d716eb9d1705ee55445432e73eabb Mon Sep 17 00:00:00 2001 -From: Peter Robinson <pbrobinson@gmail.com> -Date: Tue, 5 Jul 2016 23:53:59 +0100 -Subject: [PATCH 3/4] The ECAM quirk matching criteria per the discussion on - https://lkml.org/lkml/2016/6/13/944 includes: OEM ID, OEM Table ID and OEM - Revision. So this patch adds OEM Table ID into the check to match platform - specific ECAM quirks as well. - -This patch also improve strncmp check using strlen and -min_t to ignore the padding spaces in OEM ID and OEM -Table ID. - -Signed-off-by: Duc Dang <dhdang@apm.com> ---- - drivers/acpi/pci_mcfg.c | 7 +++++-- - include/linux/pci-acpi.h | 7 ++++--- - 2 files changed, 9 insertions(+), 5 deletions(-) - -diff --git a/drivers/acpi/pci_mcfg.c b/drivers/acpi/pci_mcfg.c -index deb0077..307ca9a 100644 ---- a/drivers/acpi/pci_mcfg.c -+++ b/drivers/acpi/pci_mcfg.c -@@ -62,9 +62,12 @@ struct pci_ecam_ops *pci_mcfg_get_ops(struct acpi_pci_root *root) - if ((f->domain == domain || f->domain == PCI_MCFG_DOMAIN_ANY) && - (f->bus_num == bus_num || f->bus_num == PCI_MCFG_BUS_ANY) && - (!strncmp(f->oem_id, mcfg_table->header.oem_id, -- ACPI_OEM_ID_SIZE)) && -+ min_t(size_t, strlen(f->oem_id), -+ ACPI_OEM_ID_SIZE))) && - (!strncmp(f->oem_table_id, mcfg_table->header.oem_table_id, -- ACPI_OEM_TABLE_ID_SIZE))) -+ min_t(size_t, strlen(f->oem_table_id), -+ ACPI_OEM_TABLE_ID_SIZE))) && -+ (f->oem_revision == mcfg_table->header.oem_revision)) - return f->ops; - } - /* No quirks, use ECAM */ -diff --git a/include/linux/pci-acpi.h b/include/linux/pci-acpi.h -index c8a6559..5148c8d 100644 ---- a/include/linux/pci-acpi.h -+++ b/include/linux/pci-acpi.h -@@ -77,6 +77,7 @@ struct pci_cfg_fixup { - struct pci_ecam_ops *ops; - char *oem_id; - char *oem_table_id; -+ u32 oem_revision; - int domain; - int bus_num; - }; -@@ -85,12 +86,12 @@ struct pci_cfg_fixup { - #define PCI_MCFG_BUS_ANY -1 - - /* Designate a routine to fix up buggy MCFG */ --#define DECLARE_ACPI_MCFG_FIXUP(ops, oem_id, oem_table_id, dom, bus) \ -+#define DECLARE_ACPI_MCFG_FIXUP(ops, oem_id, oem_table_id, rev, dom, bus) \ - static const struct pci_cfg_fixup \ -- __mcfg_fixup_##oem_id##oem_table_id##dom##bus \ -+ __mcfg_fixup_##oem_id##oem_table_id##rev##dom##bus \ - __used __attribute__((__section__(".acpi_fixup_mcfg"), \ - aligned((sizeof(void *))))) = \ -- { ops, oem_id, oem_table_id, dom, bus }; -+ { ops, oem_id, oem_table_id, rev, dom, bus }; - - extern int acpi_pci_probe_root_resources(struct acpi_pci_root_info *info); - extern struct pci_bus *acpi_pci_root_create(struct acpi_pci_root *root, --- -2.7.4 - -From 78766cf255bc6aafac2f57372a0446f78322da19 Mon Sep 17 00:00:00 2001 -From: Peter Robinson <pbrobinson@gmail.com> -Date: Tue, 5 Jul 2016 23:55:11 +0100 -Subject: [PATCH 4/4] X-Gene PCIe controller does not fully support ECAM. This - patch adds required ECAM fixup to allow X-Gene PCIe controller to be - functional in ACPI boot mode. - -Signed-off-by: Duc Dang <dhdang@apm.com> ---- - drivers/pci/host/Makefile | 2 +- - drivers/pci/host/pci-xgene-ecam.c | 194 ++++++++++++++++++++++++++++++++++++++ - 2 files changed, 195 insertions(+), 1 deletion(-) - create mode 100644 drivers/pci/host/pci-xgene-ecam.c - -diff --git a/drivers/pci/host/Makefile b/drivers/pci/host/Makefile -index 9c8698e..3480696 100644 ---- a/drivers/pci/host/Makefile -+++ b/drivers/pci/host/Makefile -@@ -14,7 +14,7 @@ obj-$(CONFIG_PCIE_SPEAR13XX) += pcie-spear13xx.o - obj-$(CONFIG_PCI_KEYSTONE) += pci-keystone-dw.o pci-keystone.o - obj-$(CONFIG_PCIE_XILINX) += pcie-xilinx.o - obj-$(CONFIG_PCIE_XILINX_NWL) += pcie-xilinx-nwl.o --obj-$(CONFIG_PCI_XGENE) += pci-xgene.o -+obj-$(CONFIG_PCI_XGENE) += pci-xgene.o pci-xgene-ecam.o - obj-$(CONFIG_PCI_XGENE_MSI) += pci-xgene-msi.o - obj-$(CONFIG_PCI_LAYERSCAPE) += pci-layerscape.o - obj-$(CONFIG_PCI_VERSATILE) += pci-versatile.o -diff --git a/drivers/pci/host/pci-xgene-ecam.c b/drivers/pci/host/pci-xgene-ecam.c -new file mode 100644 -index 0000000..1bea63f ---- /dev/null -+++ b/drivers/pci/host/pci-xgene-ecam.c -@@ -0,0 +1,194 @@ -+/* -+ * APM X-Gene PCIe ECAM fixup driver -+ * -+ * Copyright (c) 2016, Applied Micro Circuits Corporation -+ * Author: -+ * Duc Dang <dhdang@apm.com> -+ * -+ * This program is free software; you can redistribute it and/or modify -+ * it under the terms of the GNU General Public License version 2 as -+ * published by the Free Software Foundation. -+ * -+ * This program is distributed in the hope that it will be useful, -+ * but WITHOUT ANY WARRANTY; without even the implied warranty of -+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -+ * GNU General Public License for more details. -+ * -+ * You should have received a copy of the GNU General Public License -+ * along with this program. If not, see <http://www.gnu.org/licenses/>. -+ */ -+ -+#include <linux/kernel.h> -+#include <linux/module.h> -+#include <linux/of_address.h> -+#include <linux/of_pci.h> -+#include <linux/pci-acpi.h> -+#include <linux/platform_device.h> -+#include <linux/pci-ecam.h> -+ -+#ifdef CONFIG_ACPI -+#define RTDID 0x160 -+#define ROOT_CAP_AND_CTRL 0x5C -+ -+/* PCIe IP version */ -+#define XGENE_PCIE_IP_VER_UNKN 0 -+#define XGENE_PCIE_IP_VER_1 1 -+ -+#define APM_OEM_ID "APM" -+#define APM_XGENE_OEM_TABLE_ID "XGENE" -+#define APM_XGENE_OEM_REV 0x00000002 -+ -+struct xgene_pcie_acpi_root { -+ void __iomem *csr_base; -+ u32 version; -+}; -+ -+static acpi_status xgene_pcie_find_csr_base(struct acpi_resource *acpi_res, -+ void *data) -+{ -+ struct xgene_pcie_acpi_root *root = data; -+ struct acpi_resource_fixed_memory32 *fixed32; -+ -+ if (acpi_res->type == ACPI_RESOURCE_TYPE_FIXED_MEMORY32) { -+ fixed32 = &acpi_res->data.fixed_memory32; -+ root->csr_base = ioremap(fixed32->address, -+ fixed32->address_length); -+ return AE_CTRL_TERMINATE; -+ } -+ -+ return AE_OK; -+} -+ -+static int xgene_pcie_ecam_init(struct pci_config_window *cfg) -+{ -+ struct xgene_pcie_acpi_root *xgene_root; -+ struct device *dev = cfg->parent; -+ struct acpi_device *adev = to_acpi_device(dev); -+ acpi_handle handle = acpi_device_handle(adev); -+ -+ xgene_root = devm_kzalloc(dev, sizeof(*xgene_root), GFP_KERNEL); -+ if (!xgene_root) -+ return -ENOMEM; -+ -+ acpi_walk_resources(handle, METHOD_NAME__CRS, -+ xgene_pcie_find_csr_base, xgene_root); -+ -+ if (!xgene_root->csr_base) { -+ kfree(xgene_root); -+ return -ENODEV; -+ } -+ -+ xgene_root->version = XGENE_PCIE_IP_VER_1; -+ -+ cfg->priv = xgene_root; -+ -+ return 0; -+} -+ -+/* -+ * For Configuration request, RTDID register is used as Bus Number, -+ * Device Number and Function number of the header fields. -+ */ -+static void xgene_pcie_set_rtdid_reg(struct pci_bus *bus, uint devfn) -+{ -+ struct pci_config_window *cfg = bus->sysdata; -+ struct xgene_pcie_acpi_root *port = cfg->priv; -+ unsigned int b, d, f; -+ u32 rtdid_val = 0; -+ -+ b = bus->number; -+ d = PCI_SLOT(devfn); -+ f = PCI_FUNC(devfn); -+ -+ if (!pci_is_root_bus(bus)) -+ rtdid_val = (b << 8) | (d << 3) | f; -+ -+ writel(rtdid_val, port->csr_base + RTDID); -+ /* read the register back to ensure flush */ -+ readl(port->csr_base + RTDID); -+} -+ -+/* -+ * X-Gene PCIe port uses BAR0-BAR1 of RC's configuration space as -+ * the translation from PCI bus to native BUS. Entire DDR region -+ * is mapped into PCIe space using these registers, so it can be -+ * reached by DMA from EP devices. The BAR0/1 of bridge should be -+ * hidden during enumeration to avoid the sizing and resource allocation -+ * by PCIe core. -+ */ -+static bool xgene_pcie_hide_rc_bars(struct pci_bus *bus, int offset) -+{ -+ if (pci_is_root_bus(bus) && ((offset == PCI_BASE_ADDRESS_0) || -+ (offset == PCI_BASE_ADDRESS_1))) -+ return true; -+ -+ return false; -+} -+ -+void __iomem *xgene_pcie_ecam_map_bus(struct pci_bus *bus, -+ unsigned int devfn, int where) -+{ -+ struct pci_config_window *cfg = bus->sysdata; -+ unsigned int busn = bus->number; -+ void __iomem *base; -+ -+ if (busn < cfg->busr.start || busn > cfg->busr.end) -+ return NULL; -+ -+ if ((pci_is_root_bus(bus) && devfn != 0) || -+ xgene_pcie_hide_rc_bars(bus, where)) -+ return NULL; -+ -+ xgene_pcie_set_rtdid_reg(bus, devfn); -+ -+ if (busn > cfg->busr.start) -+ base = cfg->win + (1 << cfg->ops->bus_shift); -+ else -+ base = cfg->win; -+ -+ return base + where; -+} -+ -+static int xgene_pcie_config_read32(struct pci_bus *bus, unsigned int devfn, -+ int where, int size, u32 *val) -+{ -+ struct pci_config_window *cfg = bus->sysdata; -+ struct xgene_pcie_acpi_root *port = cfg->priv; -+ -+ if (pci_generic_config_read32(bus, devfn, where & ~0x3, 4, val) != -+ PCIBIOS_SUCCESSFUL) -+ return PCIBIOS_DEVICE_NOT_FOUND; -+ -+ /* -+ * The v1 controller has a bug in its Configuration Request -+ * Retry Status (CRS) logic: when CRS is enabled and we read the -+ * Vendor and Device ID of a non-existent device, the controller -+ * fabricates return data of 0xFFFF0001 ("device exists but is not -+ * ready") instead of 0xFFFFFFFF ("device does not exist"). This -+ * causes the PCI core to retry the read until it times out. -+ * Avoid this by not claiming to support CRS. -+ */ -+ if (pci_is_root_bus(bus) && (port->version == XGENE_PCIE_IP_VER_1) && -+ ((where & ~0x3) == ROOT_CAP_AND_CTRL)) -+ *val &= ~(PCI_EXP_RTCAP_CRSVIS << 16); -+ -+ if (size <= 2) -+ *val = (*val >> (8 * (where & 3))) & ((1 << (size * 8)) - 1); -+ -+ return PCIBIOS_SUCCESSFUL; -+} -+ -+static struct pci_ecam_ops xgene_pcie_ecam_ops = { -+ .bus_shift = 16, -+ .init = xgene_pcie_ecam_init, -+ .pci_ops = { -+ .map_bus = xgene_pcie_ecam_map_bus, -+ .read = xgene_pcie_config_read32, -+ .write = pci_generic_config_write, -+ } -+}; -+ -+DECLARE_ACPI_MCFG_FIXUP(&xgene_pcie_ecam_ops, APM_OEM_ID, -+ APM_XGENE_OEM_TABLE_ID, APM_XGENE_OEM_REV, -+ PCI_MCFG_DOMAIN_ANY, PCI_MCFG_BUS_ANY); -+#endif --- -2.7.4 - diff --git a/baseconfig/CONFIG_ARCH_TEGRA_186_SOC b/baseconfig/CONFIG_ARCH_TEGRA_186_SOC deleted file mode 100644 index 0439db330..000000000 --- a/baseconfig/CONFIG_ARCH_TEGRA_186_SOC +++ /dev/null @@ -1 +0,0 @@ -# CONFIG_ARCH_TEGRA_186_SOC is not set diff --git a/baseconfig/CONFIG_ARM64_PTDUMP b/baseconfig/CONFIG_ARM64_PTDUMP deleted file mode 100644 index 5090299f2..000000000 --- a/baseconfig/CONFIG_ARM64_PTDUMP +++ /dev/null @@ -1 +0,0 @@ -# CONFIG_ARM64_PTDUMP is not set diff --git a/baseconfig/CONFIG_ARM_SCPI_PROTOCOL b/baseconfig/CONFIG_ARM_SCPI_PROTOCOL deleted file mode 100644 index 438b6d561..000000000 --- a/baseconfig/CONFIG_ARM_SCPI_PROTOCOL +++ /dev/null @@ -1 +0,0 @@ -# CONFIG_ARM_SCPI_PROTOCOL is not set diff --git a/baseconfig/CONFIG_BATTERY_GOLDFISH b/baseconfig/CONFIG_BATTERY_GOLDFISH deleted file mode 100644 index 75b9c00e9..000000000 --- a/baseconfig/CONFIG_BATTERY_GOLDFISH +++ /dev/null @@ -1 +0,0 @@ -# CONFIG_BATTERY_GOLDFISH is not set diff --git a/baseconfig/CONFIG_BLK_DEBUG_FS b/baseconfig/CONFIG_BLK_DEBUG_FS new file mode 100644 index 000000000..71cc6e708 --- /dev/null +++ b/baseconfig/CONFIG_BLK_DEBUG_FS @@ -0,0 +1 @@ +CONFIG_BLK_DEBUG_FS=y diff --git a/baseconfig/CONFIG_BLK_SED_OPAL b/baseconfig/CONFIG_BLK_SED_OPAL new file mode 100644 index 000000000..11d139705 --- /dev/null +++ b/baseconfig/CONFIG_BLK_SED_OPAL @@ -0,0 +1 @@ +CONFIG_BLK_SED_OPAL=y diff --git a/baseconfig/CONFIG_BT_HCIUART_NOKIA b/baseconfig/CONFIG_BT_HCIUART_NOKIA new file mode 100644 index 000000000..6f09b31e6 --- /dev/null +++ b/baseconfig/CONFIG_BT_HCIUART_NOKIA @@ -0,0 +1 @@ +CONFIG_BT_HCIUART_NOKIA=m diff --git a/baseconfig/CONFIG_CFG80211_CRDA_SUPPORT b/baseconfig/CONFIG_CFG80211_CRDA_SUPPORT new file mode 100644 index 000000000..51f113cca --- /dev/null +++ b/baseconfig/CONFIG_CFG80211_CRDA_SUPPORT @@ -0,0 +1 @@ +CONFIG_CFG80211_CRDA_SUPPORT=y diff --git a/baseconfig/CONFIG_CGROUP_RDMA b/baseconfig/CONFIG_CGROUP_RDMA new file mode 100644 index 000000000..94ae4f4bc --- /dev/null +++ b/baseconfig/CONFIG_CGROUP_RDMA @@ -0,0 +1 @@ +# CONFIG_CGROUP_RDMA is not set diff --git a/baseconfig/CONFIG_CHARGER_DETECTOR_MAX14656 b/baseconfig/CONFIG_CHARGER_DETECTOR_MAX14656 new file mode 100644 index 000000000..434d9466f --- /dev/null +++ b/baseconfig/CONFIG_CHARGER_DETECTOR_MAX14656 @@ -0,0 +1 @@ +# CONFIG_CHARGER_DETECTOR_MAX14656 is not set diff --git a/baseconfig/CONFIG_CHARGER_SBS b/baseconfig/CONFIG_CHARGER_SBS new file mode 100644 index 000000000..afb3f2f1d --- /dev/null +++ b/baseconfig/CONFIG_CHARGER_SBS @@ -0,0 +1 @@ +# CONFIG_CHARGER_SBS is not set diff --git a/baseconfig/CONFIG_CM3605 b/baseconfig/CONFIG_CM3605 new file mode 100644 index 000000000..138742e11 --- /dev/null +++ b/baseconfig/CONFIG_CM3605 @@ -0,0 +1 @@ +CONFIG_CM3605=m diff --git a/baseconfig/CONFIG_COMMON_CLK_HI3519 b/baseconfig/CONFIG_COMMON_CLK_HI3519 deleted file mode 100644 index 492b656b1..000000000 --- a/baseconfig/CONFIG_COMMON_CLK_HI3519 +++ /dev/null @@ -1 +0,0 @@ -# CONFIG_COMMON_CLK_HI3519 is not set diff --git a/baseconfig/CONFIG_COMMON_CLK_MT2701 b/baseconfig/CONFIG_COMMON_CLK_MT2701 deleted file mode 100644 index 1f4db7eb4..000000000 --- a/baseconfig/CONFIG_COMMON_CLK_MT2701 +++ /dev/null @@ -1 +0,0 @@ -# CONFIG_COMMON_CLK_MT2701 is not set diff --git a/baseconfig/CONFIG_COMMON_CLK_MT2701_BDPSYS b/baseconfig/CONFIG_COMMON_CLK_MT2701_BDPSYS deleted file mode 100644 index 8836cfeb2..000000000 --- a/baseconfig/CONFIG_COMMON_CLK_MT2701_BDPSYS +++ /dev/null @@ -1 +0,0 @@ -# CONFIG_COMMON_CLK_MT2701_BDPSYS is not set diff --git a/baseconfig/CONFIG_COMMON_CLK_MT2701_ETHSYS b/baseconfig/CONFIG_COMMON_CLK_MT2701_ETHSYS deleted file mode 100644 index ce71bcaf3..000000000 --- a/baseconfig/CONFIG_COMMON_CLK_MT2701_ETHSYS +++ /dev/null @@ -1 +0,0 @@ -# CONFIG_COMMON_CLK_MT2701_ETHSYS is not set diff --git a/baseconfig/CONFIG_COMMON_CLK_MT2701_HIFSYS b/baseconfig/CONFIG_COMMON_CLK_MT2701_HIFSYS deleted file mode 100644 index 687287f1a..000000000 --- a/baseconfig/CONFIG_COMMON_CLK_MT2701_HIFSYS +++ /dev/null @@ -1 +0,0 @@ -# CONFIG_COMMON_CLK_MT2701_HIFSYS is not set diff --git a/baseconfig/CONFIG_COMMON_CLK_MT2701_IMGSYS b/baseconfig/CONFIG_COMMON_CLK_MT2701_IMGSYS deleted file mode 100644 index f50109f52..000000000 --- a/baseconfig/CONFIG_COMMON_CLK_MT2701_IMGSYS +++ /dev/null @@ -1 +0,0 @@ -# CONFIG_COMMON_CLK_MT2701_IMGSYS is not set diff --git a/baseconfig/CONFIG_COMMON_CLK_MT2701_MMSYS b/baseconfig/CONFIG_COMMON_CLK_MT2701_MMSYS deleted file mode 100644 index a28dde4dd..000000000 --- a/baseconfig/CONFIG_COMMON_CLK_MT2701_MMSYS +++ /dev/null @@ -1 +0,0 @@ -# CONFIG_COMMON_CLK_MT2701_MMSYS is not set diff --git a/baseconfig/CONFIG_COMMON_CLK_MT2701_VDECSYS b/baseconfig/CONFIG_COMMON_CLK_MT2701_VDECSYS deleted file mode 100644 index 2fffe9756..000000000 --- a/baseconfig/CONFIG_COMMON_CLK_MT2701_VDECSYS +++ /dev/null @@ -1 +0,0 @@ -# CONFIG_COMMON_CLK_MT2701_VDECSYS is not set diff --git a/baseconfig/CONFIG_COMMON_CLK_MT8135 b/baseconfig/CONFIG_COMMON_CLK_MT8135 deleted file mode 100644 index 0e5e55f2d..000000000 --- a/baseconfig/CONFIG_COMMON_CLK_MT8135 +++ /dev/null @@ -1 +0,0 @@ -# CONFIG_COMMON_CLK_MT8135 is not set diff --git a/baseconfig/CONFIG_COMMON_CLK_MT8173 b/baseconfig/CONFIG_COMMON_CLK_MT8173 deleted file mode 100644 index ef1d176f5..000000000 --- a/baseconfig/CONFIG_COMMON_CLK_MT8173 +++ /dev/null @@ -1 +0,0 @@ -# CONFIG_COMMON_CLK_MT8173 is not set diff --git a/baseconfig/CONFIG_COMMON_CLK_OXNAS b/baseconfig/CONFIG_COMMON_CLK_OXNAS deleted file mode 100644 index 123f7bbbf..000000000 --- a/baseconfig/CONFIG_COMMON_CLK_OXNAS +++ /dev/null @@ -1 +0,0 @@ -# CONFIG_COMMON_CLK_OXNAS is not set diff --git a/baseconfig/CONFIG_COMMON_CLK_VC5 b/baseconfig/CONFIG_COMMON_CLK_VC5 new file mode 100644 index 000000000..9aaf6ae19 --- /dev/null +++ b/baseconfig/CONFIG_COMMON_CLK_VC5 @@ -0,0 +1 @@ +# CONFIG_COMMON_CLK_VC5 is not set diff --git a/baseconfig/CONFIG_COMMON_RESET_HI3660 b/baseconfig/CONFIG_COMMON_RESET_HI3660 new file mode 100644 index 000000000..0d13136e0 --- /dev/null +++ b/baseconfig/CONFIG_COMMON_RESET_HI3660 @@ -0,0 +1 @@ +# CONFIG_COMMON_RESET_HI3660 is not set diff --git a/baseconfig/CONFIG_CRYPTO_AES_TI b/baseconfig/CONFIG_CRYPTO_AES_TI new file mode 100644 index 000000000..fa0a3c5e1 --- /dev/null +++ b/baseconfig/CONFIG_CRYPTO_AES_TI @@ -0,0 +1 @@ +CONFIG_CRYPTO_AES_TI=m diff --git a/baseconfig/CONFIG_CRYPTO_CRC32_ARM_CE b/baseconfig/CONFIG_CRYPTO_CRC32_ARM_CE deleted file mode 100644 index 242e37489..000000000 --- a/baseconfig/CONFIG_CRYPTO_CRC32_ARM_CE +++ /dev/null @@ -1 +0,0 @@ -CONFIG_CRYPTO_CRC32_ARM_CE=m diff --git a/baseconfig/CONFIG_CRYPTO_CRCT10DIF_ARM_CE b/baseconfig/CONFIG_CRYPTO_CRCT10DIF_ARM_CE deleted file mode 100644 index 6b13ea30c..000000000 --- a/baseconfig/CONFIG_CRYPTO_CRCT10DIF_ARM_CE +++ /dev/null @@ -1 +0,0 @@ -CONFIG_CRYPTO_CRCT10DIF_ARM_CE=m diff --git a/baseconfig/CONFIG_DEBUG_REFCOUNT b/baseconfig/CONFIG_DEBUG_REFCOUNT new file mode 100644 index 000000000..9d1b9de89 --- /dev/null +++ b/baseconfig/CONFIG_DEBUG_REFCOUNT @@ -0,0 +1 @@ +# CONFIG_DEBUG_REFCOUNT is not set diff --git a/baseconfig/CONFIG_DEBUG_VM_RB revisit this if performance isn't horrible b/baseconfig/CONFIG_DEBUG_VM_RB revisit this if performance isn't horrible new file mode 100644 index 000000000..fbc8aaef8 --- /dev/null +++ b/baseconfig/CONFIG_DEBUG_VM_RB revisit this if performance isn't horrible @@ -0,0 +1 @@ +# CONFIG_DEBUG_VM_RB is not set # revisit this if performance isn't horrible diff --git a/baseconfig/CONFIG_DEVPORT b/baseconfig/CONFIG_DEVPORT new file mode 100644 index 000000000..555cf4be4 --- /dev/null +++ b/baseconfig/CONFIG_DEVPORT @@ -0,0 +1 @@ +# CONFIG_DEVPORT is not set diff --git a/baseconfig/CONFIG_DPM_WATCHDOG b/baseconfig/CONFIG_DPM_WATCHDOG revisit this in debug index c12b35c43..c12b35c43 100644 --- a/baseconfig/CONFIG_DPM_WATCHDOG +++ b/baseconfig/CONFIG_DPM_WATCHDOG revisit this in debug diff --git a/baseconfig/CONFIG_DRM_DEBUG_MM_SELFTEST b/baseconfig/CONFIG_DRM_DEBUG_MM_SELFTEST new file mode 100644 index 000000000..9607ae3de --- /dev/null +++ b/baseconfig/CONFIG_DRM_DEBUG_MM_SELFTEST @@ -0,0 +1 @@ +# CONFIG_DRM_DEBUG_MM_SELFTEST is not set diff --git a/baseconfig/CONFIG_DRM_I2C_ADV7533 b/baseconfig/CONFIG_DRM_I2C_ADV7533 index 1fba3a9be..9f7b3dccf 100644 --- a/baseconfig/CONFIG_DRM_I2C_ADV7533 +++ b/baseconfig/CONFIG_DRM_I2C_ADV7533 @@ -1 +1 @@ -# CONFIG_DRM_I2C_ADV7533 is not set +CONFIG_DRM_I2C_ADV7533=y diff --git a/baseconfig/CONFIG_DRM_MALI_DISPLAY b/baseconfig/CONFIG_DRM_MALI_DISPLAY deleted file mode 100644 index af3d09fbe..000000000 --- a/baseconfig/CONFIG_DRM_MALI_DISPLAY +++ /dev/null @@ -1 +0,0 @@ -# CONFIG_DRM_MALI_DISPLAY is not set diff --git a/baseconfig/CONFIG_DRM_TINYDRM b/baseconfig/CONFIG_DRM_TINYDRM new file mode 100644 index 000000000..be104b06c --- /dev/null +++ b/baseconfig/CONFIG_DRM_TINYDRM @@ -0,0 +1 @@ +# CONFIG_DRM_TINYDRM is not set diff --git a/baseconfig/CONFIG_DVB_USB_ZD1301 b/baseconfig/CONFIG_DVB_USB_ZD1301 new file mode 100644 index 000000000..4e114ce58 --- /dev/null +++ b/baseconfig/CONFIG_DVB_USB_ZD1301 @@ -0,0 +1 @@ +CONFIG_DVB_USB_ZD1301=m diff --git a/baseconfig/CONFIG_EEPROM_IDT_89HPESX b/baseconfig/CONFIG_EEPROM_IDT_89HPESX new file mode 100644 index 000000000..5ea592932 --- /dev/null +++ b/baseconfig/CONFIG_EEPROM_IDT_89HPESX @@ -0,0 +1 @@ +CONFIG_EEPROM_IDT_89HPESX=m diff --git a/baseconfig/CONFIG_EMAC_ROCKCHIP b/baseconfig/CONFIG_EMAC_ROCKCHIP deleted file mode 100644 index 65c1db9f3..000000000 --- a/baseconfig/CONFIG_EMAC_ROCKCHIP +++ /dev/null @@ -1 +0,0 @@ -# CONFIG_EMAC_ROCKCHIP is not set diff --git a/baseconfig/CONFIG_EXTCON_INTEL_INT3496 b/baseconfig/CONFIG_EXTCON_INTEL_INT3496 new file mode 100644 index 000000000..3f6c5d6f5 --- /dev/null +++ b/baseconfig/CONFIG_EXTCON_INTEL_INT3496 @@ -0,0 +1 @@ +CONFIG_EXTCON_INTEL_INT3496=m diff --git a/baseconfig/CONFIG_FB_GOLDFISH b/baseconfig/CONFIG_FB_GOLDFISH deleted file mode 100644 index 522a715d1..000000000 --- a/baseconfig/CONFIG_FB_GOLDFISH +++ /dev/null @@ -1 +0,0 @@ -# CONFIG_FB_GOLDFISH is not set diff --git a/baseconfig/CONFIG_FSI b/baseconfig/CONFIG_FSI new file mode 100644 index 000000000..1f548f4f0 --- /dev/null +++ b/baseconfig/CONFIG_FSI @@ -0,0 +1 @@ +CONFIG_FSI=m diff --git a/baseconfig/CONFIG_GPIO_EXAR b/baseconfig/CONFIG_GPIO_EXAR new file mode 100644 index 000000000..e03739e86 --- /dev/null +++ b/baseconfig/CONFIG_GPIO_EXAR @@ -0,0 +1 @@ +CONFIG_GPIO_EXAR=m diff --git a/baseconfig/CONFIG_GPIO_PCI_IDIO_16 b/baseconfig/CONFIG_GPIO_PCI_IDIO_16 new file mode 100644 index 000000000..e3e6eeab0 --- /dev/null +++ b/baseconfig/CONFIG_GPIO_PCI_IDIO_16 @@ -0,0 +1 @@ +CONFIG_GPIO_PCI_IDIO_16=m diff --git a/baseconfig/CONFIG_GPIO_SYSFS b/baseconfig/CONFIG_GPIO_SYSFS index 52708d181..006904523 100644 --- a/baseconfig/CONFIG_GPIO_SYSFS +++ b/baseconfig/CONFIG_GPIO_SYSFS @@ -1 +1 @@ -CONFIG_GPIO_SYSFS=y +# CONFIG_GPIO_SYSFS is not set diff --git a/baseconfig/CONFIG_GPIO_ZX b/baseconfig/CONFIG_GPIO_ZX deleted file mode 100644 index a6c0a85ac..000000000 --- a/baseconfig/CONFIG_GPIO_ZX +++ /dev/null @@ -1 +0,0 @@ -# CONFIG_GPIO_ZX is not set diff --git a/baseconfig/CONFIG_HX711 b/baseconfig/CONFIG_HX711 new file mode 100644 index 000000000..5378c7339 --- /dev/null +++ b/baseconfig/CONFIG_HX711 @@ -0,0 +1 @@ +# CONFIG_HX711 is not set diff --git a/baseconfig/CONFIG_IIO_ST_LSM6DSX b/baseconfig/CONFIG_IIO_ST_LSM6DSX new file mode 100644 index 000000000..b6ec57836 --- /dev/null +++ b/baseconfig/CONFIG_IIO_ST_LSM6DSX @@ -0,0 +1 @@ +# CONFIG_IIO_ST_LSM6DSX is not set diff --git a/baseconfig/CONFIG_INET6_ESP_OFFLOAD b/baseconfig/CONFIG_INET6_ESP_OFFLOAD new file mode 100644 index 000000000..24c350004 --- /dev/null +++ b/baseconfig/CONFIG_INET6_ESP_OFFLOAD @@ -0,0 +1 @@ +CONFIG_INET6_ESP_OFFLOAD=m diff --git a/baseconfig/CONFIG_INET_ESP_OFFLOAD b/baseconfig/CONFIG_INET_ESP_OFFLOAD new file mode 100644 index 000000000..d5cca6d1d --- /dev/null +++ b/baseconfig/CONFIG_INET_ESP_OFFLOAD @@ -0,0 +1 @@ +CONFIG_INET_ESP_OFFLOAD=m diff --git a/baseconfig/CONFIG_INFINIBAND_BNXT_RE b/baseconfig/CONFIG_INFINIBAND_BNXT_RE new file mode 100644 index 000000000..47533209e --- /dev/null +++ b/baseconfig/CONFIG_INFINIBAND_BNXT_RE @@ -0,0 +1 @@ +# CONFIG_INFINIBAND_BNXT_RE is not set diff --git a/baseconfig/CONFIG_INTEL_RDT_A b/baseconfig/CONFIG_INTEL_RDT_A deleted file mode 100644 index 8c02d1afc..000000000 --- a/baseconfig/CONFIG_INTEL_RDT_A +++ /dev/null @@ -1 +0,0 @@ -CONFIG_INTEL_RDT_A=y diff --git a/baseconfig/CONFIG_IPVTAP b/baseconfig/CONFIG_IPVTAP new file mode 100644 index 000000000..4bb385673 --- /dev/null +++ b/baseconfig/CONFIG_IPVTAP @@ -0,0 +1 @@ +CONFIG_IPVTAP=m diff --git a/baseconfig/CONFIG_IR_SPI b/baseconfig/CONFIG_IR_SPI new file mode 100644 index 000000000..d0e838d38 --- /dev/null +++ b/baseconfig/CONFIG_IR_SPI @@ -0,0 +1 @@ +CONFIG_IR_SPI=m diff --git a/baseconfig/CONFIG_KEYBOARD_TM2_TOUCHKEY b/baseconfig/CONFIG_KEYBOARD_TM2_TOUCHKEY new file mode 100644 index 000000000..e1d0c2b26 --- /dev/null +++ b/baseconfig/CONFIG_KEYBOARD_TM2_TOUCHKEY @@ -0,0 +1 @@ +CONFIG_KEYBOARD_TM2_TOUCHKEY=m diff --git a/baseconfig/CONFIG_KPROBE_EVENT b/baseconfig/CONFIG_KPROBE_EVENT deleted file mode 100644 index 1ba78399b..000000000 --- a/baseconfig/CONFIG_KPROBE_EVENT +++ /dev/null @@ -1 +0,0 @@ -CONFIG_KPROBE_EVENT=y diff --git a/baseconfig/CONFIG_KPROBE_EVENTS b/baseconfig/CONFIG_KPROBE_EVENTS new file mode 100644 index 000000000..2111c5d1a --- /dev/null +++ b/baseconfig/CONFIG_KPROBE_EVENTS @@ -0,0 +1 @@ +CONFIG_KPROBE_EVENTS=y diff --git a/baseconfig/CONFIG_LEDS_BRIGHTNESS_HW_CHANGED b/baseconfig/CONFIG_LEDS_BRIGHTNESS_HW_CHANGED new file mode 100644 index 000000000..4ab759066 --- /dev/null +++ b/baseconfig/CONFIG_LEDS_BRIGHTNESS_HW_CHANGED @@ -0,0 +1 @@ +CONFIG_LEDS_BRIGHTNESS_HW_CHANGED=y diff --git a/baseconfig/CONFIG_LPFC_NVME_INITIATOR b/baseconfig/CONFIG_LPFC_NVME_INITIATOR new file mode 100644 index 000000000..cfa87b693 --- /dev/null +++ b/baseconfig/CONFIG_LPFC_NVME_INITIATOR @@ -0,0 +1 @@ +CONFIG_LPFC_NVME_INITIATOR=y diff --git a/baseconfig/CONFIG_LPFC_NVME_TARGET b/baseconfig/CONFIG_LPFC_NVME_TARGET new file mode 100644 index 000000000..ebf8bd16d --- /dev/null +++ b/baseconfig/CONFIG_LPFC_NVME_TARGET @@ -0,0 +1 @@ +CONFIG_LPFC_NVME_TARGET=y diff --git a/baseconfig/CONFIG_MAGIC_SYSRQ_SERIAL b/baseconfig/CONFIG_MAGIC_SYSRQ_SERIAL new file mode 100644 index 000000000..649399011 --- /dev/null +++ b/baseconfig/CONFIG_MAGIC_SYSRQ_SERIAL @@ -0,0 +1 @@ +CONFIG_MAGIC_SYSRQ_SERIAL=y diff --git a/baseconfig/CONFIG_MAX11100 b/baseconfig/CONFIG_MAX11100 new file mode 100644 index 000000000..90819abc8 --- /dev/null +++ b/baseconfig/CONFIG_MAX11100 @@ -0,0 +1 @@ +# CONFIG_MAX11100 is not set diff --git a/baseconfig/CONFIG_MAX5481 b/baseconfig/CONFIG_MAX5481 new file mode 100644 index 000000000..36b3781d6 --- /dev/null +++ b/baseconfig/CONFIG_MAX5481 @@ -0,0 +1 @@ +# CONFIG_MAX5481 is not set diff --git a/baseconfig/CONFIG_MESON_GXL_PHY b/baseconfig/CONFIG_MESON_GXL_PHY deleted file mode 100644 index cc59580cc..000000000 --- a/baseconfig/CONFIG_MESON_GXL_PHY +++ /dev/null @@ -1 +0,0 @@ -CONFIG_MESON_GXL_PHY=m diff --git a/baseconfig/CONFIG_MFD_CPCAP b/baseconfig/CONFIG_MFD_CPCAP new file mode 100644 index 000000000..acf5bd3fe --- /dev/null +++ b/baseconfig/CONFIG_MFD_CPCAP @@ -0,0 +1 @@ +CONFIG_MFD_CPCAP=m diff --git a/baseconfig/CONFIG_MOUSE_PS2_VMMOUSE b/baseconfig/CONFIG_MOUSE_PS2_VMMOUSE deleted file mode 100644 index 3941478c7..000000000 --- a/baseconfig/CONFIG_MOUSE_PS2_VMMOUSE +++ /dev/null @@ -1 +0,0 @@ -# CONFIG_MOUSE_PS2_VMMOUSE is not set diff --git a/baseconfig/CONFIG_MQ_IOSCHED_DEADLINE b/baseconfig/CONFIG_MQ_IOSCHED_DEADLINE new file mode 100644 index 000000000..ad5c7700b --- /dev/null +++ b/baseconfig/CONFIG_MQ_IOSCHED_DEADLINE @@ -0,0 +1 @@ +CONFIG_MQ_IOSCHED_DEADLINE=y diff --git a/baseconfig/CONFIG_NET_ACT_SAMPLE b/baseconfig/CONFIG_NET_ACT_SAMPLE new file mode 100644 index 000000000..4582be19d --- /dev/null +++ b/baseconfig/CONFIG_NET_ACT_SAMPLE @@ -0,0 +1 @@ +CONFIG_NET_ACT_SAMPLE=m diff --git a/baseconfig/CONFIG_NET_IFE b/baseconfig/CONFIG_NET_IFE new file mode 100644 index 000000000..eea504e0c --- /dev/null +++ b/baseconfig/CONFIG_NET_IFE @@ -0,0 +1 @@ +CONFIG_NET_IFE=m diff --git a/baseconfig/CONFIG_NET_L3_MASTER_DEV b/baseconfig/CONFIG_NET_L3_MASTER_DEV index c5825b130..bdf39009e 100644 --- a/baseconfig/CONFIG_NET_L3_MASTER_DEV +++ b/baseconfig/CONFIG_NET_L3_MASTER_DEV @@ -1 +1 @@ -# CONFIG_NET_L3_MASTER_DEV is not set +CONFIG_NET_L3_MASTER_DEV=y diff --git a/baseconfig/CONFIG_NET_VENDOR_AMAZON b/baseconfig/CONFIG_NET_VENDOR_AMAZON index 707bb5a54..71e03d079 100644 --- a/baseconfig/CONFIG_NET_VENDOR_AMAZON +++ b/baseconfig/CONFIG_NET_VENDOR_AMAZON @@ -1 +1 @@ -# CONFIG_NET_VENDOR_AMAZON is not set +CONFIG_NET_VENDOR_AMAZON=y diff --git a/baseconfig/CONFIG_NET_VENDOR_AQUANTIA b/baseconfig/CONFIG_NET_VENDOR_AQUANTIA new file mode 100644 index 000000000..91af5c7e0 --- /dev/null +++ b/baseconfig/CONFIG_NET_VENDOR_AQUANTIA @@ -0,0 +1 @@ +# CONFIG_NET_VENDOR_AQUANTIA is not set diff --git a/baseconfig/CONFIG_NFP b/baseconfig/CONFIG_NFP new file mode 100644 index 000000000..14f22b12c --- /dev/null +++ b/baseconfig/CONFIG_NFP @@ -0,0 +1 @@ +CONFIG_NFP=m diff --git a/baseconfig/CONFIG_NFP_DEBUG b/baseconfig/CONFIG_NFP_DEBUG new file mode 100644 index 000000000..b7f75b3f3 --- /dev/null +++ b/baseconfig/CONFIG_NFP_DEBUG @@ -0,0 +1 @@ +# CONFIG_NFP_DEBUG is not set diff --git a/baseconfig/CONFIG_NFT_SET_BITMAP b/baseconfig/CONFIG_NFT_SET_BITMAP new file mode 100644 index 000000000..a0a3769ff --- /dev/null +++ b/baseconfig/CONFIG_NFT_SET_BITMAP @@ -0,0 +1 @@ +CONFIG_NFT_SET_BITMAP=m diff --git a/baseconfig/CONFIG_PARMAN b/baseconfig/CONFIG_PARMAN new file mode 100644 index 000000000..1e5d4dd91 --- /dev/null +++ b/baseconfig/CONFIG_PARMAN @@ -0,0 +1 @@ +CONFIG_PARMAN=m diff --git a/baseconfig/CONFIG_PC104 b/baseconfig/CONFIG_PC104 new file mode 100644 index 000000000..0608d3f72 --- /dev/null +++ b/baseconfig/CONFIG_PC104 @@ -0,0 +1 @@ +# CONFIG_PC104 is not set diff --git a/baseconfig/CONFIG_PHY_QCOM_USB_HS b/baseconfig/CONFIG_PHY_QCOM_USB_HS new file mode 100644 index 000000000..ce9808509 --- /dev/null +++ b/baseconfig/CONFIG_PHY_QCOM_USB_HS @@ -0,0 +1 @@ +# CONFIG_PHY_QCOM_USB_HS is not set diff --git a/baseconfig/CONFIG_PHY_QCOM_USB_HSIC b/baseconfig/CONFIG_PHY_QCOM_USB_HSIC new file mode 100644 index 000000000..2a37d673c --- /dev/null +++ b/baseconfig/CONFIG_PHY_QCOM_USB_HSIC @@ -0,0 +1 @@ +# CONFIG_PHY_QCOM_USB_HSIC is not set diff --git a/baseconfig/CONFIG_PINCTRL_TI_IODELAY b/baseconfig/CONFIG_PINCTRL_TI_IODELAY new file mode 100644 index 000000000..cc5eb6a6c --- /dev/null +++ b/baseconfig/CONFIG_PINCTRL_TI_IODELAY @@ -0,0 +1 @@ +# CONFIG_PINCTRL_TI_IODELAY is not set diff --git a/baseconfig/CONFIG_PRINTK_SAFE_LOG_BUF_SHIFT b/baseconfig/CONFIG_PRINTK_SAFE_LOG_BUF_SHIFT new file mode 100644 index 000000000..eb368f2d7 --- /dev/null +++ b/baseconfig/CONFIG_PRINTK_SAFE_LOG_BUF_SHIFT @@ -0,0 +1 @@ +CONFIG_PRINTK_SAFE_LOG_BUF_SHIFT=12 diff --git a/baseconfig/CONFIG_PSAMPLE b/baseconfig/CONFIG_PSAMPLE new file mode 100644 index 000000000..fca0860ea --- /dev/null +++ b/baseconfig/CONFIG_PSAMPLE @@ -0,0 +1 @@ +CONFIG_PSAMPLE=m diff --git a/baseconfig/CONFIG_PWRSEQ_SD8787 b/baseconfig/CONFIG_PWRSEQ_SD8787 new file mode 100644 index 000000000..243dba034 --- /dev/null +++ b/baseconfig/CONFIG_PWRSEQ_SD8787 @@ -0,0 +1 @@ +# CONFIG_PWRSEQ_SD8787 is not set diff --git a/baseconfig/CONFIG_QCOM_EBI2 b/baseconfig/CONFIG_QCOM_EBI2 deleted file mode 100644 index e96b3544e..000000000 --- a/baseconfig/CONFIG_QCOM_EBI2 +++ /dev/null @@ -1 +0,0 @@ -# CONFIG_QCOM_EBI2 is not set diff --git a/baseconfig/CONFIG_QEDF b/baseconfig/CONFIG_QEDF new file mode 100644 index 000000000..33c24865a --- /dev/null +++ b/baseconfig/CONFIG_QEDF @@ -0,0 +1 @@ +CONFIG_QEDF=m diff --git a/baseconfig/CONFIG_RADIO_WL128X b/baseconfig/CONFIG_RADIO_WL128X deleted file mode 100644 index da0cf2eb9..000000000 --- a/baseconfig/CONFIG_RADIO_WL128X +++ /dev/null @@ -1 +0,0 @@ -# CONFIG_RADIO_WL128X is not set # depends on TI_ST which we don't enable diff --git a/baseconfig/CONFIG_REGULATOR_CPCAP b/baseconfig/CONFIG_REGULATOR_CPCAP new file mode 100644 index 000000000..02e701e66 --- /dev/null +++ b/baseconfig/CONFIG_REGULATOR_CPCAP @@ -0,0 +1 @@ +CONFIG_REGULATOR_CPCAP=m diff --git a/baseconfig/CONFIG_SENSORS_STTS751 b/baseconfig/CONFIG_SENSORS_STTS751 new file mode 100644 index 000000000..f2f8006af --- /dev/null +++ b/baseconfig/CONFIG_SENSORS_STTS751 @@ -0,0 +1 @@ +# CONFIG_SENSORS_STTS751 is not set diff --git a/baseconfig/CONFIG_SERIAL_8250_EXAR b/baseconfig/CONFIG_SERIAL_8250_EXAR new file mode 100644 index 000000000..bb519d916 --- /dev/null +++ b/baseconfig/CONFIG_SERIAL_8250_EXAR @@ -0,0 +1 @@ +CONFIG_SERIAL_8250_EXAR=m diff --git a/baseconfig/CONFIG_SERIAL_8250_PCI b/baseconfig/CONFIG_SERIAL_8250_PCI new file mode 100644 index 000000000..d48086e3e --- /dev/null +++ b/baseconfig/CONFIG_SERIAL_8250_PCI @@ -0,0 +1 @@ +CONFIG_SERIAL_8250_PCI=m diff --git a/baseconfig/CONFIG_SERIAL_DEV_BUS b/baseconfig/CONFIG_SERIAL_DEV_BUS new file mode 100644 index 000000000..f73dc688e --- /dev/null +++ b/baseconfig/CONFIG_SERIAL_DEV_BUS @@ -0,0 +1 @@ +CONFIG_SERIAL_DEV_BUS=y diff --git a/baseconfig/CONFIG_SERIAL_DEV_CTRL_TTYPORT b/baseconfig/CONFIG_SERIAL_DEV_CTRL_TTYPORT new file mode 100644 index 000000000..4d61eadb1 --- /dev/null +++ b/baseconfig/CONFIG_SERIAL_DEV_CTRL_TTYPORT @@ -0,0 +1 @@ +CONFIG_SERIAL_DEV_CTRL_TTYPORT=y diff --git a/baseconfig/CONFIG_SMC b/baseconfig/CONFIG_SMC new file mode 100644 index 000000000..88600dc91 --- /dev/null +++ b/baseconfig/CONFIG_SMC @@ -0,0 +1 @@ +# CONFIG_SMC is not set diff --git a/baseconfig/CONFIG_SND_SIMPLE_SCU_CARD b/baseconfig/CONFIG_SND_SIMPLE_SCU_CARD index 38757da9f..e50c18374 100644 --- a/baseconfig/CONFIG_SND_SIMPLE_SCU_CARD +++ b/baseconfig/CONFIG_SND_SIMPLE_SCU_CARD @@ -1 +1 @@ -# CONFIG_SND_SIMPLE_SCU_CARD is not set +CONFIG_SND_SIMPLE_SCU_CARD=m diff --git a/baseconfig/CONFIG_SND_SOC_NAU8540 b/baseconfig/CONFIG_SND_SOC_NAU8540 new file mode 100644 index 000000000..43355fa74 --- /dev/null +++ b/baseconfig/CONFIG_SND_SOC_NAU8540 @@ -0,0 +1 @@ +# CONFIG_SND_SOC_NAU8540 is not set diff --git a/baseconfig/arm/armv7/CONFIG_SND_SOC_TAS571X b/baseconfig/CONFIG_SND_SOC_TAS571X index 5a0960c0f..5a0960c0f 100644 --- a/baseconfig/arm/armv7/CONFIG_SND_SOC_TAS571X +++ b/baseconfig/CONFIG_SND_SOC_TAS571X diff --git a/baseconfig/CONFIG_SOC_ZTE b/baseconfig/CONFIG_SOC_ZTE new file mode 100644 index 000000000..95a233e40 --- /dev/null +++ b/baseconfig/CONFIG_SOC_ZTE @@ -0,0 +1 @@ +# CONFIG_SOC_ZTE is not set diff --git a/baseconfig/CONFIG_SRF08 b/baseconfig/CONFIG_SRF08 new file mode 100644 index 000000000..11f5dbcf5 --- /dev/null +++ b/baseconfig/CONFIG_SRF08 @@ -0,0 +1 @@ +# CONFIG_SRF08 is not set diff --git a/baseconfig/CONFIG_STATIC_USERMODEHELPER b/baseconfig/CONFIG_STATIC_USERMODEHELPER new file mode 100644 index 000000000..9cfc00a5f --- /dev/null +++ b/baseconfig/CONFIG_STATIC_USERMODEHELPER @@ -0,0 +1 @@ +# CONFIG_STATIC_USERMODEHELPER is not set diff --git a/baseconfig/CONFIG_TEGRA_GMI b/baseconfig/CONFIG_TEGRA_GMI deleted file mode 100644 index 5def3e891..000000000 --- a/baseconfig/CONFIG_TEGRA_GMI +++ /dev/null @@ -1 +0,0 @@ -CONFIG_TEGRA_GMI=m diff --git a/baseconfig/CONFIG_TEST_PARMAN b/baseconfig/CONFIG_TEST_PARMAN new file mode 100644 index 000000000..2aade4293 --- /dev/null +++ b/baseconfig/CONFIG_TEST_PARMAN @@ -0,0 +1 @@ +# CONFIG_TEST_PARMAN is not set diff --git a/baseconfig/CONFIG_TEST_SORT b/baseconfig/CONFIG_TEST_SORT new file mode 100644 index 000000000..de9e1bbd6 --- /dev/null +++ b/baseconfig/CONFIG_TEST_SORT @@ -0,0 +1 @@ +# CONFIG_TEST_SORT is not set diff --git a/baseconfig/CONFIG_TI_ADS7950 b/baseconfig/CONFIG_TI_ADS7950 new file mode 100644 index 000000000..f2a68954b --- /dev/null +++ b/baseconfig/CONFIG_TI_ADS7950 @@ -0,0 +1 @@ +# CONFIG_TI_ADS7950 is not set diff --git a/baseconfig/CONFIG_TI_TLC4541 b/baseconfig/CONFIG_TI_TLC4541 new file mode 100644 index 000000000..c8c8183fd --- /dev/null +++ b/baseconfig/CONFIG_TI_TLC4541 @@ -0,0 +1 @@ +# CONFIG_TI_TLC4541 is not set diff --git a/baseconfig/CONFIG_TMP007 b/baseconfig/CONFIG_TMP007 new file mode 100644 index 000000000..a3a96d4a8 --- /dev/null +++ b/baseconfig/CONFIG_TMP007 @@ -0,0 +1 @@ +# CONFIG_TMP007 is not set diff --git a/baseconfig/CONFIG_TOUCHSCREEN_ZET6223 b/baseconfig/CONFIG_TOUCHSCREEN_ZET6223 new file mode 100644 index 000000000..134c0c432 --- /dev/null +++ b/baseconfig/CONFIG_TOUCHSCREEN_ZET6223 @@ -0,0 +1 @@ +CONFIG_TOUCHSCREEN_ZET6223=m diff --git a/baseconfig/CONFIG_UPROBE_EVENT b/baseconfig/CONFIG_UPROBE_EVENT deleted file mode 100644 index aba82daa5..000000000 --- a/baseconfig/CONFIG_UPROBE_EVENT +++ /dev/null @@ -1 +0,0 @@ -CONFIG_UPROBE_EVENT=y diff --git a/baseconfig/CONFIG_UPROBE_EVENTS b/baseconfig/CONFIG_UPROBE_EVENTS new file mode 100644 index 000000000..81f7be965 --- /dev/null +++ b/baseconfig/CONFIG_UPROBE_EVENTS @@ -0,0 +1 @@ +CONFIG_UPROBE_EVENTS=y diff --git a/baseconfig/CONFIG_USB_CHIPIDEA_ULPI b/baseconfig/CONFIG_USB_CHIPIDEA_ULPI new file mode 100644 index 000000000..c97b84c79 --- /dev/null +++ b/baseconfig/CONFIG_USB_CHIPIDEA_ULPI @@ -0,0 +1 @@ +# CONFIG_USB_CHIPIDEA_ULPI is not set diff --git a/baseconfig/CONFIG_USB_HUB_USB251XB b/baseconfig/CONFIG_USB_HUB_USB251XB new file mode 100644 index 000000000..26e0d11ae --- /dev/null +++ b/baseconfig/CONFIG_USB_HUB_USB251XB @@ -0,0 +1 @@ +CONFIG_USB_HUB_USB251XB=m diff --git a/baseconfig/CONFIG_USB_SERIAL_UPD78F0730 b/baseconfig/CONFIG_USB_SERIAL_UPD78F0730 new file mode 100644 index 000000000..8258d573c --- /dev/null +++ b/baseconfig/CONFIG_USB_SERIAL_UPD78F0730 @@ -0,0 +1 @@ +CONFIG_USB_SERIAL_UPD78F0730=m diff --git a/baseconfig/CONFIG_VGACON_SOFT_SCROLLBACK_PERSISTENT_ENABLE_BY_DEFAULT b/baseconfig/CONFIG_VGACON_SOFT_SCROLLBACK_PERSISTENT_ENABLE_BY_DEFAULT new file mode 100644 index 000000000..a0a49c839 --- /dev/null +++ b/baseconfig/CONFIG_VGACON_SOFT_SCROLLBACK_PERSISTENT_ENABLE_BY_DEFAULT @@ -0,0 +1 @@ +# CONFIG_VGACON_SOFT_SCROLLBACK_PERSISTENT_ENABLE_BY_DEFAULT is not set diff --git a/baseconfig/CONFIG_VIDEO_IVTV_DEPRECATED_IOCTLS b/baseconfig/CONFIG_VIDEO_IVTV_DEPRECATED_IOCTLS new file mode 100644 index 000000000..b1ad6abff --- /dev/null +++ b/baseconfig/CONFIG_VIDEO_IVTV_DEPRECATED_IOCTLS @@ -0,0 +1 @@ +# CONFIG_VIDEO_IVTV_DEPRECATED_IOCTLS is not set diff --git a/baseconfig/CONFIG_VIDEO_SAMSUNG_S5P_CEC b/baseconfig/CONFIG_VIDEO_SAMSUNG_S5P_CEC deleted file mode 100644 index 67462a76e..000000000 --- a/baseconfig/CONFIG_VIDEO_SAMSUNG_S5P_CEC +++ /dev/null @@ -1 +0,0 @@ -CONFIG_VIDEO_SAMSUNG_S5P_CEC=m diff --git a/baseconfig/CONFIG_VIRTIO_BLK_SCSI b/baseconfig/CONFIG_VIRTIO_BLK_SCSI new file mode 100644 index 000000000..dcc60f529 --- /dev/null +++ b/baseconfig/CONFIG_VIRTIO_BLK_SCSI @@ -0,0 +1 @@ +CONFIG_VIRTIO_BLK_SCSI=y diff --git a/baseconfig/CONFIG_W1_SLAVE_DS2405 b/baseconfig/CONFIG_W1_SLAVE_DS2405 new file mode 100644 index 000000000..16e7dd759 --- /dev/null +++ b/baseconfig/CONFIG_W1_SLAVE_DS2405 @@ -0,0 +1 @@ +CONFIG_W1_SLAVE_DS2405=m diff --git a/baseconfig/CONFIG_WW_MUTEX_SELFTEST b/baseconfig/CONFIG_WW_MUTEX_SELFTEST new file mode 100644 index 000000000..014b2354c --- /dev/null +++ b/baseconfig/CONFIG_WW_MUTEX_SELFTEST @@ -0,0 +1 @@ +# CONFIG_WW_MUTEX_SELFTEST is not set diff --git a/baseconfig/arm/CONFIG_AGP b/baseconfig/arm/CONFIG_AGP deleted file mode 100644 index f7332ef53..000000000 --- a/baseconfig/arm/CONFIG_AGP +++ /dev/null @@ -1 +0,0 @@ -# CONFIG_AGP is not set diff --git a/baseconfig/arm/arm64/CONFIG_COMMON_CLK_MAX77686 b/baseconfig/arm/CONFIG_COMMON_CLK_MAX77686 index 71ba0b45c..71ba0b45c 100644 --- a/baseconfig/arm/arm64/CONFIG_COMMON_CLK_MAX77686 +++ b/baseconfig/arm/CONFIG_COMMON_CLK_MAX77686 diff --git a/baseconfig/arm/CONFIG_CRYPTO_CHACHA20_NEON b/baseconfig/arm/CONFIG_CRYPTO_CHACHA20_NEON new file mode 100644 index 000000000..c680f1a05 --- /dev/null +++ b/baseconfig/arm/CONFIG_CRYPTO_CHACHA20_NEON @@ -0,0 +1 @@ +CONFIG_CRYPTO_CHACHA20_NEON=m diff --git a/baseconfig/arm/CONFIG_DMA_SUN6I b/baseconfig/arm/CONFIG_DMA_SUN6I new file mode 100644 index 000000000..9c50f4fed --- /dev/null +++ b/baseconfig/arm/CONFIG_DMA_SUN6I @@ -0,0 +1 @@ +# CONFIG_DMA_SUN6I is not set diff --git a/baseconfig/arm/arm64/CONFIG_DRM_MESON b/baseconfig/arm/CONFIG_DRM_MESON index 638714333..638714333 100644 --- a/baseconfig/arm/arm64/CONFIG_DRM_MESON +++ b/baseconfig/arm/CONFIG_DRM_MESON diff --git a/baseconfig/arm/CONFIG_DRM_NXP_PTN3460 b/baseconfig/arm/CONFIG_DRM_NXP_PTN3460 new file mode 100644 index 000000000..e4647af6c --- /dev/null +++ b/baseconfig/arm/CONFIG_DRM_NXP_PTN3460 @@ -0,0 +1 @@ +CONFIG_DRM_NXP_PTN3460=m diff --git a/baseconfig/arm/CONFIG_DRM_PARADE_PS8622 b/baseconfig/arm/CONFIG_DRM_PARADE_PS8622 new file mode 100644 index 000000000..ff6fd7e1b --- /dev/null +++ b/baseconfig/arm/CONFIG_DRM_PARADE_PS8622 @@ -0,0 +1 @@ +CONFIG_DRM_PARADE_PS8622=m diff --git a/baseconfig/arm/CONFIG_DRM_TINYDRM b/baseconfig/arm/CONFIG_DRM_TINYDRM new file mode 100644 index 000000000..4e6e01bfe --- /dev/null +++ b/baseconfig/arm/CONFIG_DRM_TINYDRM @@ -0,0 +1 @@ +CONFIG_DRM_TINYDRM=m diff --git a/baseconfig/arm/CONFIG_DRM_VMWGFX b/baseconfig/arm/CONFIG_DRM_VMWGFX deleted file mode 100644 index 4e22be4d9..000000000 --- a/baseconfig/arm/CONFIG_DRM_VMWGFX +++ /dev/null @@ -1 +0,0 @@ -# CONFIG_DRM_VMWGFX is not set diff --git a/baseconfig/arm/CONFIG_DWMAC_DWC_QOS_ETH b/baseconfig/arm/CONFIG_DWMAC_DWC_QOS_ETH new file mode 100644 index 000000000..6ed7a8e38 --- /dev/null +++ b/baseconfig/arm/CONFIG_DWMAC_DWC_QOS_ETH @@ -0,0 +1 @@ +# CONFIG_DWMAC_DWC_QOS_ETH is not set diff --git a/baseconfig/arm/armv7/CONFIG_DWMAC_GENERIC b/baseconfig/arm/CONFIG_DWMAC_GENERIC index fe2550e2b..fe2550e2b 100644 --- a/baseconfig/arm/armv7/CONFIG_DWMAC_GENERIC +++ b/baseconfig/arm/CONFIG_DWMAC_GENERIC diff --git a/baseconfig/arm/CONFIG_DWMAC_IPQ806X b/baseconfig/arm/CONFIG_DWMAC_IPQ806X deleted file mode 100644 index ce2bf0c43..000000000 --- a/baseconfig/arm/CONFIG_DWMAC_IPQ806X +++ /dev/null @@ -1 +0,0 @@ -# CONFIG_DWMAC_IPQ806X is not set diff --git a/baseconfig/arm/CONFIG_HAMRADIO b/baseconfig/arm/CONFIG_HAMRADIO deleted file mode 100644 index 477ae40db..000000000 --- a/baseconfig/arm/CONFIG_HAMRADIO +++ /dev/null @@ -1 +0,0 @@ -# CONFIG_HAMRADIO is not set diff --git a/baseconfig/arm/CONFIG_I2C_TEGRA_BPMP b/baseconfig/arm/CONFIG_I2C_TEGRA_BPMP new file mode 100644 index 000000000..71099e082 --- /dev/null +++ b/baseconfig/arm/CONFIG_I2C_TEGRA_BPMP @@ -0,0 +1 @@ +CONFIG_I2C_TEGRA_BPMP=m diff --git a/baseconfig/arm/armv7/CONFIG_IOMMU_IO_PGTABLE_LPAE b/baseconfig/arm/CONFIG_IOMMU_IO_PGTABLE_LPAE index 73494e9d2..73494e9d2 100644 --- a/baseconfig/arm/armv7/CONFIG_IOMMU_IO_PGTABLE_LPAE +++ b/baseconfig/arm/CONFIG_IOMMU_IO_PGTABLE_LPAE diff --git a/baseconfig/arm/armv7/CONFIG_LEDS_GPIO b/baseconfig/arm/CONFIG_LEDS_GPIO index 65a807afb..65a807afb 100644 --- a/baseconfig/arm/armv7/CONFIG_LEDS_GPIO +++ b/baseconfig/arm/CONFIG_LEDS_GPIO diff --git a/baseconfig/arm/armv7/CONFIG_LEDS_GPIO_REGISTER b/baseconfig/arm/CONFIG_LEDS_GPIO_REGISTER index 101e4404f..101e4404f 100644 --- a/baseconfig/arm/armv7/CONFIG_LEDS_GPIO_REGISTER +++ b/baseconfig/arm/CONFIG_LEDS_GPIO_REGISTER diff --git a/baseconfig/arm/armv7/CONFIG_LEDS_PWM b/baseconfig/arm/CONFIG_LEDS_PWM index fc4cfe6f7..fc4cfe6f7 100644 --- a/baseconfig/arm/armv7/CONFIG_LEDS_PWM +++ b/baseconfig/arm/CONFIG_LEDS_PWM diff --git a/baseconfig/arm/armv7/CONFIG_LEDS_SYSCON b/baseconfig/arm/CONFIG_LEDS_SYSCON index c458741b6..c458741b6 100644 --- a/baseconfig/arm/armv7/CONFIG_LEDS_SYSCON +++ b/baseconfig/arm/CONFIG_LEDS_SYSCON diff --git a/baseconfig/arm/armv7/CONFIG_LEDS_TRIGGER_CPU b/baseconfig/arm/CONFIG_LEDS_TRIGGER_CPU index b017fb086..b017fb086 100644 --- a/baseconfig/arm/armv7/CONFIG_LEDS_TRIGGER_CPU +++ b/baseconfig/arm/CONFIG_LEDS_TRIGGER_CPU diff --git a/baseconfig/arm/CONFIG_MESON_SARADC b/baseconfig/arm/CONFIG_MESON_SARADC new file mode 100644 index 000000000..cae134290 --- /dev/null +++ b/baseconfig/arm/CONFIG_MESON_SARADC @@ -0,0 +1 @@ +CONFIG_MESON_SARADC=m diff --git a/baseconfig/arm/armv7/CONFIG_MFD_MAX77686 b/baseconfig/arm/CONFIG_MFD_MAX77686 index e6791bf7e..e6791bf7e 100644 --- a/baseconfig/arm/armv7/CONFIG_MFD_MAX77686 +++ b/baseconfig/arm/CONFIG_MFD_MAX77686 diff --git a/baseconfig/arm/CONFIG_MMC_BCM2835 b/baseconfig/arm/CONFIG_MMC_BCM2835 new file mode 100644 index 000000000..b3750c1a7 --- /dev/null +++ b/baseconfig/arm/CONFIG_MMC_BCM2835 @@ -0,0 +1 @@ +CONFIG_MMC_BCM2835=m diff --git a/baseconfig/arm/CONFIG_MTD_PHYSMAP_OF_GEMINI b/baseconfig/arm/CONFIG_MTD_PHYSMAP_OF_GEMINI new file mode 100644 index 000000000..cbc329eea --- /dev/null +++ b/baseconfig/arm/CONFIG_MTD_PHYSMAP_OF_GEMINI @@ -0,0 +1 @@ +# CONFIG_MTD_PHYSMAP_OF_GEMINI is not set diff --git a/baseconfig/arm/armv7/CONFIG_MVPP2 b/baseconfig/arm/CONFIG_MVPP2 index e41ec5ca1..e41ec5ca1 100644 --- a/baseconfig/arm/armv7/CONFIG_MVPP2 +++ b/baseconfig/arm/CONFIG_MVPP2 diff --git a/baseconfig/arm/CONFIG_PHY_QCOM_USB_HS b/baseconfig/arm/CONFIG_PHY_QCOM_USB_HS new file mode 100644 index 000000000..61e98f856 --- /dev/null +++ b/baseconfig/arm/CONFIG_PHY_QCOM_USB_HS @@ -0,0 +1 @@ +CONFIG_PHY_QCOM_USB_HS=m diff --git a/baseconfig/arm/CONFIG_PHY_QCOM_USB_HSIC b/baseconfig/arm/CONFIG_PHY_QCOM_USB_HSIC new file mode 100644 index 000000000..0b25aa233 --- /dev/null +++ b/baseconfig/arm/CONFIG_PHY_QCOM_USB_HSIC @@ -0,0 +1 @@ +CONFIG_PHY_QCOM_USB_HSIC=m diff --git a/baseconfig/arm/CONFIG_PINCTRL_GEMINILAKE b/baseconfig/arm/CONFIG_PINCTRL_GEMINILAKE new file mode 100644 index 000000000..deb3b301d --- /dev/null +++ b/baseconfig/arm/CONFIG_PINCTRL_GEMINILAKE @@ -0,0 +1 @@ +# CONFIG_PINCTRL_GEMINILAKE is not set diff --git a/baseconfig/arm/CONFIG_QCOM_IRQ_COMBINER b/baseconfig/arm/CONFIG_QCOM_IRQ_COMBINER new file mode 100644 index 000000000..6c23d15f7 --- /dev/null +++ b/baseconfig/arm/CONFIG_QCOM_IRQ_COMBINER @@ -0,0 +1 @@ +CONFIG_QCOM_IRQ_COMBINER=y diff --git a/baseconfig/arm/CONFIG_QORIQ_CPUFREQ b/baseconfig/arm/CONFIG_QORIQ_CPUFREQ new file mode 100644 index 000000000..e8e355ba3 --- /dev/null +++ b/baseconfig/arm/CONFIG_QORIQ_CPUFREQ @@ -0,0 +1 @@ +# CONFIG_QORIQ_CPUFREQ is not set diff --git a/baseconfig/arm/armv7/CONFIG_REGULATOR_MAX77686 b/baseconfig/arm/CONFIG_REGULATOR_MAX77686 index 69bd2bdd7..69bd2bdd7 100644 --- a/baseconfig/arm/armv7/CONFIG_REGULATOR_MAX77686 +++ b/baseconfig/arm/CONFIG_REGULATOR_MAX77686 diff --git a/baseconfig/arm/armv7/CONFIG_REGULATOR_MAX77802 b/baseconfig/arm/CONFIG_REGULATOR_MAX77802 index 3f55c214c..3f55c214c 100644 --- a/baseconfig/arm/armv7/CONFIG_REGULATOR_MAX77802 +++ b/baseconfig/arm/CONFIG_REGULATOR_MAX77802 diff --git a/baseconfig/arm/CONFIG_REGULATOR_PWM b/baseconfig/arm/CONFIG_REGULATOR_PWM index 654817956..e41417821 100644 --- a/baseconfig/arm/CONFIG_REGULATOR_PWM +++ b/baseconfig/arm/CONFIG_REGULATOR_PWM @@ -1 +1 @@ -CONFIG_REGULATOR_PWM=m +CONFIG_REGULATOR_PWM=y diff --git a/baseconfig/arm/CONFIG_RFKILL_REGULATOR b/baseconfig/arm/CONFIG_RFKILL_REGULATOR deleted file mode 100644 index 64e4c4774..000000000 --- a/baseconfig/arm/CONFIG_RFKILL_REGULATOR +++ /dev/null @@ -1 +0,0 @@ -CONFIG_RFKILL_REGULATOR=m diff --git a/baseconfig/arm/CONFIG_SERIAL_NONSTANDARD b/baseconfig/arm/CONFIG_SERIAL_NONSTANDARD new file mode 100644 index 000000000..57688cbec --- /dev/null +++ b/baseconfig/arm/CONFIG_SERIAL_NONSTANDARD @@ -0,0 +1 @@ +# CONFIG_SERIAL_NONSTANDARD is not set diff --git a/baseconfig/arm/armv7/CONFIG_SND_SOC_AC97_CODEC b/baseconfig/arm/CONFIG_SND_SOC_AC97_CODEC index f2388a7c0..f2388a7c0 100644 --- a/baseconfig/arm/armv7/CONFIG_SND_SOC_AC97_CODEC +++ b/baseconfig/arm/CONFIG_SND_SOC_AC97_CODEC diff --git a/baseconfig/arm/armv7/armv7/CONFIG_SND_SOC_ES8328 b/baseconfig/arm/CONFIG_SND_SOC_ES8328 index 806f698e1..806f698e1 100644 --- a/baseconfig/arm/armv7/armv7/CONFIG_SND_SOC_ES8328 +++ b/baseconfig/arm/CONFIG_SND_SOC_ES8328 diff --git a/baseconfig/arm/armv7/armv7/CONFIG_SND_SOC_ES8328_I2C b/baseconfig/arm/CONFIG_SND_SOC_ES8328_I2C index 9f90cb7e0..9f90cb7e0 100644 --- a/baseconfig/arm/armv7/armv7/CONFIG_SND_SOC_ES8328_I2C +++ b/baseconfig/arm/CONFIG_SND_SOC_ES8328_I2C diff --git a/baseconfig/arm/armv7/armv7/CONFIG_SND_SOC_ES8328_SPI b/baseconfig/arm/CONFIG_SND_SOC_ES8328_SPI index 0eb8f755c..0eb8f755c 100644 --- a/baseconfig/arm/armv7/armv7/CONFIG_SND_SOC_ES8328_SPI +++ b/baseconfig/arm/CONFIG_SND_SOC_ES8328_SPI diff --git a/baseconfig/arm/CONFIG_SND_SOC_RK3288_HDMI_ANALOG b/baseconfig/arm/CONFIG_SND_SOC_RK3288_HDMI_ANALOG new file mode 100644 index 000000000..8034e86d4 --- /dev/null +++ b/baseconfig/arm/CONFIG_SND_SOC_RK3288_HDMI_ANALOG @@ -0,0 +1 @@ +CONFIG_SND_SOC_RK3288_HDMI_ANALOG=m diff --git a/baseconfig/arm/CONFIG_SND_SOC_RK3399_GRU_SOUND b/baseconfig/arm/CONFIG_SND_SOC_RK3399_GRU_SOUND new file mode 100644 index 000000000..a1f8108ff --- /dev/null +++ b/baseconfig/arm/CONFIG_SND_SOC_RK3399_GRU_SOUND @@ -0,0 +1 @@ +CONFIG_SND_SOC_RK3399_GRU_SOUND=m diff --git a/baseconfig/arm/armv7/lpae/CONFIG_SND_SOC_TEGRA_ALC5632 b/baseconfig/arm/CONFIG_SND_SOC_TEGRA_ALC5632 index 63a5d40d0..63a5d40d0 100644 --- a/baseconfig/arm/armv7/lpae/CONFIG_SND_SOC_TEGRA_ALC5632 +++ b/baseconfig/arm/CONFIG_SND_SOC_TEGRA_ALC5632 diff --git a/baseconfig/arm/armv7/lpae/CONFIG_SND_SOC_TEGRA_TRIMSLICE b/baseconfig/arm/CONFIG_SND_SOC_TEGRA_TRIMSLICE index 23a6b3005..23a6b3005 100644 --- a/baseconfig/arm/armv7/lpae/CONFIG_SND_SOC_TEGRA_TRIMSLICE +++ b/baseconfig/arm/CONFIG_SND_SOC_TEGRA_TRIMSLICE diff --git a/baseconfig/arm/armv7/lpae/CONFIG_SND_SOC_TEGRA_WM8903 b/baseconfig/arm/CONFIG_SND_SOC_TEGRA_WM8903 index ff10de901..ff10de901 100644 --- a/baseconfig/arm/armv7/lpae/CONFIG_SND_SOC_TEGRA_WM8903 +++ b/baseconfig/arm/CONFIG_SND_SOC_TEGRA_WM8903 diff --git a/baseconfig/arm/armv7/lpae/CONFIG_SND_SOC_TEGRA_WM9712 b/baseconfig/arm/CONFIG_SND_SOC_TEGRA_WM9712 index 3ced427a6..3ced427a6 100644 --- a/baseconfig/arm/armv7/lpae/CONFIG_SND_SOC_TEGRA_WM9712 +++ b/baseconfig/arm/CONFIG_SND_SOC_TEGRA_WM9712 diff --git a/baseconfig/arm/armv7/CONFIG_SND_SOC_TS3A227E b/baseconfig/arm/CONFIG_SND_SOC_TS3A227E index 1d3522517..1d3522517 100644 --- a/baseconfig/arm/armv7/CONFIG_SND_SOC_TS3A227E +++ b/baseconfig/arm/CONFIG_SND_SOC_TS3A227E diff --git a/baseconfig/arm/armv7/CONFIG_STMMAC_PLATFORM b/baseconfig/arm/CONFIG_STMMAC_PLATFORM index 2ad238de4..2ad238de4 100644 --- a/baseconfig/arm/armv7/CONFIG_STMMAC_PLATFORM +++ b/baseconfig/arm/CONFIG_STMMAC_PLATFORM diff --git a/baseconfig/CONFIG_SUN50I_A64_CCU b/baseconfig/arm/CONFIG_SUN50I_A64_CCU index 9ce6c792a..9ce6c792a 100644 --- a/baseconfig/CONFIG_SUN50I_A64_CCU +++ b/baseconfig/arm/CONFIG_SUN50I_A64_CCU diff --git a/baseconfig/arm/CONFIG_SUN5I_CCU b/baseconfig/arm/CONFIG_SUN5I_CCU new file mode 100644 index 000000000..26856d6b2 --- /dev/null +++ b/baseconfig/arm/CONFIG_SUN5I_CCU @@ -0,0 +1 @@ +# CONFIG_SUN5I_CCU is not set diff --git a/baseconfig/CONFIG_SUN6I_A31_CCU b/baseconfig/arm/CONFIG_SUN6I_A31_CCU index 5ce1bb3f7..5ce1bb3f7 100644 --- a/baseconfig/CONFIG_SUN6I_A31_CCU +++ b/baseconfig/arm/CONFIG_SUN6I_A31_CCU diff --git a/baseconfig/CONFIG_SUN8I_A23_CCU b/baseconfig/arm/CONFIG_SUN8I_A23_CCU index 26ae1100c..26ae1100c 100644 --- a/baseconfig/CONFIG_SUN8I_A23_CCU +++ b/baseconfig/arm/CONFIG_SUN8I_A23_CCU diff --git a/baseconfig/CONFIG_SUN8I_A33_CCU b/baseconfig/arm/CONFIG_SUN8I_A33_CCU index e1a357ee8..e1a357ee8 100644 --- a/baseconfig/CONFIG_SUN8I_A33_CCU +++ b/baseconfig/arm/CONFIG_SUN8I_A33_CCU diff --git a/baseconfig/arm/CONFIG_SUN8I_H3_CCU b/baseconfig/arm/CONFIG_SUN8I_H3_CCU new file mode 100644 index 000000000..02cfb2c97 --- /dev/null +++ b/baseconfig/arm/CONFIG_SUN8I_H3_CCU @@ -0,0 +1 @@ +# CONFIG_SUN8I_H3_CCU is not set diff --git a/baseconfig/arm/CONFIG_SUN8I_V3S_CCU b/baseconfig/arm/CONFIG_SUN8I_V3S_CCU new file mode 100644 index 000000000..da333f583 --- /dev/null +++ b/baseconfig/arm/CONFIG_SUN8I_V3S_CCU @@ -0,0 +1 @@ +# CONFIG_SUN8I_V3S_CCU is not set diff --git a/baseconfig/arm/CONFIG_SUN9I_A80_CCU b/baseconfig/arm/CONFIG_SUN9I_A80_CCU new file mode 100644 index 000000000..82686b27e --- /dev/null +++ b/baseconfig/arm/CONFIG_SUN9I_A80_CCU @@ -0,0 +1 @@ +# CONFIG_SUN9I_A80_CCU is not set diff --git a/baseconfig/CONFIG_SUNXI_CCU b/baseconfig/arm/CONFIG_SUNXI_CCU index a383113ef..a383113ef 100644 --- a/baseconfig/CONFIG_SUNXI_CCU +++ b/baseconfig/arm/CONFIG_SUNXI_CCU diff --git a/baseconfig/arm/CONFIG_SYSCON_REBOOT_MODE b/baseconfig/arm/CONFIG_SYSCON_REBOOT_MODE new file mode 100644 index 000000000..b391f88cb --- /dev/null +++ b/baseconfig/arm/CONFIG_SYSCON_REBOOT_MODE @@ -0,0 +1 @@ +CONFIG_SYSCON_REBOOT_MODE=y diff --git a/baseconfig/arm/CONFIG_TINYDRM_MI0283QT b/baseconfig/arm/CONFIG_TINYDRM_MI0283QT new file mode 100644 index 000000000..98bb3288d --- /dev/null +++ b/baseconfig/arm/CONFIG_TINYDRM_MI0283QT @@ -0,0 +1 @@ +CONFIG_TINYDRM_MI0283QT=m diff --git a/baseconfig/arm/CONFIG_TINYDRM_MIPI_DBI b/baseconfig/arm/CONFIG_TINYDRM_MIPI_DBI new file mode 100644 index 000000000..bb0235842 --- /dev/null +++ b/baseconfig/arm/CONFIG_TINYDRM_MIPI_DBI @@ -0,0 +1 @@ +CONFIG_TINYDRM_MIPI_DBI=m diff --git a/baseconfig/arm/arm64/CONFIG_ARCH_MESON b/baseconfig/arm/arm64/CONFIG_ARCH_MESON deleted file mode 100644 index 849319f60..000000000 --- a/baseconfig/arm/arm64/CONFIG_ARCH_MESON +++ /dev/null @@ -1 +0,0 @@ -# CONFIG_ARCH_MESON is not set diff --git a/baseconfig/arm/arm64/CONFIG_ARCH_THUNDER2 b/baseconfig/arm/arm64/CONFIG_ARCH_THUNDER2 new file mode 100644 index 000000000..aa0f1f319 --- /dev/null +++ b/baseconfig/arm/arm64/CONFIG_ARCH_THUNDER2 @@ -0,0 +1 @@ +CONFIG_ARCH_THUNDER2=y diff --git a/baseconfig/arm/arm64/CONFIG_ARM64_4K_PAGES b/baseconfig/arm/arm64/CONFIG_ARM64_4K_PAGES new file mode 100644 index 000000000..5df91df1a --- /dev/null +++ b/baseconfig/arm/arm64/CONFIG_ARM64_4K_PAGES @@ -0,0 +1 @@ +CONFIG_ARM64_4K_PAGES=y diff --git a/baseconfig/arm/arm64/CONFIG_ARM64_64K_PAGES b/baseconfig/arm/arm64/CONFIG_ARM64_64K_PAGES deleted file mode 100644 index bda5426de..000000000 --- a/baseconfig/arm/arm64/CONFIG_ARM64_64K_PAGES +++ /dev/null @@ -1 +0,0 @@ -CONFIG_ARM64_64K_PAGES=y diff --git a/baseconfig/arm/arm64/CONFIG_ARMADA_AP806_SYSCON b/baseconfig/arm/arm64/CONFIG_ARMADA_AP806_SYSCON new file mode 100644 index 000000000..c0741cab5 --- /dev/null +++ b/baseconfig/arm/arm64/CONFIG_ARMADA_AP806_SYSCON @@ -0,0 +1 @@ +CONFIG_ARMADA_AP806_SYSCON=y diff --git a/baseconfig/arm/arm64/CONFIG_CAVIUM_CPT b/baseconfig/arm/arm64/CONFIG_CAVIUM_CPT new file mode 100644 index 000000000..183805687 --- /dev/null +++ b/baseconfig/arm/arm64/CONFIG_CAVIUM_CPT @@ -0,0 +1 @@ +CONFIG_CAVIUM_CPT=m diff --git a/baseconfig/arm/arm64/CONFIG_CHARGER_AXP20X b/baseconfig/arm/arm64/CONFIG_CHARGER_AXP20X new file mode 100644 index 000000000..2e64e7733 --- /dev/null +++ b/baseconfig/arm/arm64/CONFIG_CHARGER_AXP20X @@ -0,0 +1 @@ +CONFIG_CHARGER_AXP20X=m diff --git a/baseconfig/CONFIG_COMMON_CLK_HI3516CV300 b/baseconfig/arm/arm64/CONFIG_COMMON_CLK_HI3516CV300 index 2c50858a5..2c50858a5 100644 --- a/baseconfig/CONFIG_COMMON_CLK_HI3516CV300 +++ b/baseconfig/arm/arm64/CONFIG_COMMON_CLK_HI3516CV300 diff --git a/baseconfig/arm/arm64/CONFIG_COMMON_CLK_HI3519 b/baseconfig/arm/arm64/CONFIG_COMMON_CLK_HI3519 new file mode 100644 index 000000000..5484a59ba --- /dev/null +++ b/baseconfig/arm/arm64/CONFIG_COMMON_CLK_HI3519 @@ -0,0 +1 @@ +CONFIG_COMMON_CLK_HI3519=m diff --git a/baseconfig/arm/arm64/CONFIG_COMMON_CLK_HI3660 b/baseconfig/arm/arm64/CONFIG_COMMON_CLK_HI3660 new file mode 100644 index 000000000..44693544d --- /dev/null +++ b/baseconfig/arm/arm64/CONFIG_COMMON_CLK_HI3660 @@ -0,0 +1 @@ +CONFIG_COMMON_CLK_HI3660=y diff --git a/baseconfig/CONFIG_COMMON_CLK_HI3798CV200 b/baseconfig/arm/arm64/CONFIG_COMMON_CLK_HI3798CV200 index 8d91e10e1..8d91e10e1 100644 --- a/baseconfig/CONFIG_COMMON_CLK_HI3798CV200 +++ b/baseconfig/arm/arm64/CONFIG_COMMON_CLK_HI3798CV200 diff --git a/baseconfig/arm/arm64/CONFIG_COMMON_CLK_PWM b/baseconfig/arm/arm64/CONFIG_COMMON_CLK_PWM new file mode 100644 index 000000000..08193dd2c --- /dev/null +++ b/baseconfig/arm/arm64/CONFIG_COMMON_CLK_PWM @@ -0,0 +1 @@ +CONFIG_COMMON_CLK_PWM=m diff --git a/baseconfig/arm/arm64/CONFIG_COMPAT b/baseconfig/arm/arm64/CONFIG_COMPAT new file mode 100644 index 000000000..3e041f1b6 --- /dev/null +++ b/baseconfig/arm/arm64/CONFIG_COMPAT @@ -0,0 +1 @@ +# CONFIG_COMPAT is not set diff --git a/baseconfig/arm/arm64/CONFIG_CRYPTO_AES_ARM64 b/baseconfig/arm/arm64/CONFIG_CRYPTO_AES_ARM64 new file mode 100644 index 000000000..113c72b8c --- /dev/null +++ b/baseconfig/arm/arm64/CONFIG_CRYPTO_AES_ARM64 @@ -0,0 +1 @@ +CONFIG_CRYPTO_AES_ARM64=m diff --git a/baseconfig/arm/arm64/CONFIG_CRYPTO_AES_ARM64_BS b/baseconfig/arm/arm64/CONFIG_CRYPTO_AES_ARM64_BS new file mode 100644 index 000000000..6e0427353 --- /dev/null +++ b/baseconfig/arm/arm64/CONFIG_CRYPTO_AES_ARM64_BS @@ -0,0 +1 @@ +CONFIG_CRYPTO_AES_ARM64_BS=m diff --git a/baseconfig/arm/arm64/CONFIG_DEBUG_EFI b/baseconfig/arm/arm64/CONFIG_DEBUG_EFI new file mode 100644 index 000000000..68b7b8a1e --- /dev/null +++ b/baseconfig/arm/arm64/CONFIG_DEBUG_EFI @@ -0,0 +1 @@ +# CONFIG_DEBUG_EFI is not set diff --git a/baseconfig/arm/arm64/CONFIG_DWMAC_IPQ806X b/baseconfig/arm/arm64/CONFIG_DWMAC_IPQ806X new file mode 100644 index 000000000..49177a6db --- /dev/null +++ b/baseconfig/arm/arm64/CONFIG_DWMAC_IPQ806X @@ -0,0 +1 @@ +CONFIG_DWMAC_IPQ806X=m diff --git a/baseconfig/arm/arm64/CONFIG_DWMAC_SUN8I b/baseconfig/arm/arm64/CONFIG_DWMAC_SUN8I new file mode 100644 index 000000000..ce05f93b3 --- /dev/null +++ b/baseconfig/arm/arm64/CONFIG_DWMAC_SUN8I @@ -0,0 +1 @@ +CONFIG_DWMAC_SUN8I=m diff --git a/baseconfig/arm/arm64/CONFIG_DWMAC_SUNXI b/baseconfig/arm/arm64/CONFIG_DWMAC_SUNXI new file mode 100644 index 000000000..254fc7d8a --- /dev/null +++ b/baseconfig/arm/arm64/CONFIG_DWMAC_SUNXI @@ -0,0 +1 @@ +CONFIG_DWMAC_SUNXI=m diff --git a/baseconfig/arm/arm64/CONFIG_FORCE_MAX_ZONEORDER b/baseconfig/arm/arm64/CONFIG_FORCE_MAX_ZONEORDER new file mode 100644 index 000000000..6d42a47fc --- /dev/null +++ b/baseconfig/arm/arm64/CONFIG_FORCE_MAX_ZONEORDER @@ -0,0 +1 @@ +CONFIG_FORCE_MAX_ZONEORDER=13 diff --git a/baseconfig/arm/arm64/CONFIG_HISILICON_ERRATUM_161010101 b/baseconfig/arm/arm64/CONFIG_HISILICON_ERRATUM_161010101 new file mode 100644 index 000000000..b5914254a --- /dev/null +++ b/baseconfig/arm/arm64/CONFIG_HISILICON_ERRATUM_161010101 @@ -0,0 +1 @@ +CONFIG_HISILICON_ERRATUM_161010101=y diff --git a/baseconfig/CONFIG_MFD_SUN4I_GPADC b/baseconfig/arm/arm64/CONFIG_MFD_SUN4I_GPADC index d156cb188..d156cb188 100644 --- a/baseconfig/CONFIG_MFD_SUN4I_GPADC +++ b/baseconfig/arm/arm64/CONFIG_MFD_SUN4I_GPADC diff --git a/baseconfig/arm/arm64/CONFIG_PHY_SUN4I_USB b/baseconfig/arm/arm64/CONFIG_PHY_SUN4I_USB index a6a26dd17..f619228c3 100644 --- a/baseconfig/arm/arm64/CONFIG_PHY_SUN4I_USB +++ b/baseconfig/arm/arm64/CONFIG_PHY_SUN4I_USB @@ -1 +1 @@ -# CONFIG_PHY_SUN4I_USB is not set +CONFIG_PHY_SUN4I_USB=m diff --git a/baseconfig/arm/arm64/CONFIG_QCOM_FALKOR_ERRATUM_1003 b/baseconfig/arm/arm64/CONFIG_QCOM_FALKOR_ERRATUM_1003 new file mode 100644 index 000000000..94d6b177a --- /dev/null +++ b/baseconfig/arm/arm64/CONFIG_QCOM_FALKOR_ERRATUM_1003 @@ -0,0 +1 @@ +# CONFIG_QCOM_FALKOR_ERRATUM_1003 is not set diff --git a/baseconfig/arm/arm64/CONFIG_QCOM_FALKOR_ERRATUM_1009 b/baseconfig/arm/arm64/CONFIG_QCOM_FALKOR_ERRATUM_1009 new file mode 100644 index 000000000..1449efafb --- /dev/null +++ b/baseconfig/arm/arm64/CONFIG_QCOM_FALKOR_ERRATUM_1009 @@ -0,0 +1 @@ +CONFIG_QCOM_FALKOR_ERRATUM_1009=y diff --git a/baseconfig/arm/arm64/CONFIG_QCOM_L2_PMU b/baseconfig/arm/arm64/CONFIG_QCOM_L2_PMU new file mode 100644 index 000000000..2a553c8b1 --- /dev/null +++ b/baseconfig/arm/arm64/CONFIG_QCOM_L2_PMU @@ -0,0 +1 @@ +CONFIG_QCOM_L2_PMU=y diff --git a/baseconfig/arm/arm64/CONFIG_QCOM_QDF2400_ERRATUM_0065 b/baseconfig/arm/arm64/CONFIG_QCOM_QDF2400_ERRATUM_0065 new file mode 100644 index 000000000..dec9be970 --- /dev/null +++ b/baseconfig/arm/arm64/CONFIG_QCOM_QDF2400_ERRATUM_0065 @@ -0,0 +1 @@ +CONFIG_QCOM_QDF2400_ERRATUM_0065=y diff --git a/baseconfig/arm/arm64/CONFIG_SATA_AHCI_PLATFORM b/baseconfig/arm/arm64/CONFIG_SATA_AHCI_PLATFORM deleted file mode 100644 index f4729baed..000000000 --- a/baseconfig/arm/arm64/CONFIG_SATA_AHCI_PLATFORM +++ /dev/null @@ -1 +0,0 @@ -CONFIG_SATA_AHCI_PLATFORM=y diff --git a/baseconfig/arm/arm64/CONFIG_SND_KIRKWOOD_SOC b/baseconfig/arm/arm64/CONFIG_SND_KIRKWOOD_SOC new file mode 100644 index 000000000..05e82f2e9 --- /dev/null +++ b/baseconfig/arm/arm64/CONFIG_SND_KIRKWOOD_SOC @@ -0,0 +1 @@ +# CONFIG_SND_KIRKWOOD_SOC is not set diff --git a/baseconfig/arm/arm64/CONFIG_SND_SOC b/baseconfig/arm/arm64/CONFIG_SND_SOC deleted file mode 100644 index a161b8e18..000000000 --- a/baseconfig/arm/arm64/CONFIG_SND_SOC +++ /dev/null @@ -1 +0,0 @@ -# CONFIG_SND_SOC is not set diff --git a/baseconfig/arm/arm64/CONFIG_SND_SOC_APQ8016_SBC b/baseconfig/arm/arm64/CONFIG_SND_SOC_APQ8016_SBC new file mode 100644 index 000000000..dfe53b84d --- /dev/null +++ b/baseconfig/arm/arm64/CONFIG_SND_SOC_APQ8016_SBC @@ -0,0 +1 @@ +CONFIG_SND_SOC_APQ8016_SBC=m diff --git a/baseconfig/arm/arm64/CONFIG_SND_SOC_QCOM b/baseconfig/arm/arm64/CONFIG_SND_SOC_QCOM new file mode 100644 index 000000000..719eb4e3d --- /dev/null +++ b/baseconfig/arm/arm64/CONFIG_SND_SOC_QCOM @@ -0,0 +1 @@ +CONFIG_SND_SOC_QCOM=m diff --git a/baseconfig/arm/armv7/armv7/CONFIG_SND_SOC_SGTL5000 b/baseconfig/arm/arm64/CONFIG_SND_SOC_SGTL5000 index ea71dece1..ea71dece1 100644 --- a/baseconfig/arm/armv7/armv7/CONFIG_SND_SOC_SGTL5000 +++ b/baseconfig/arm/arm64/CONFIG_SND_SOC_SGTL5000 diff --git a/baseconfig/arm/arm64/CONFIG_SND_SOC_STORM b/baseconfig/arm/arm64/CONFIG_SND_SOC_STORM new file mode 100644 index 000000000..adab3ae82 --- /dev/null +++ b/baseconfig/arm/arm64/CONFIG_SND_SOC_STORM @@ -0,0 +1 @@ +# CONFIG_SND_SOC_STORM is not set diff --git a/baseconfig/arm/arm64/CONFIG_SND_SOC_TEGRA b/baseconfig/arm/arm64/CONFIG_SND_SOC_TEGRA new file mode 100644 index 000000000..b32a04ff3 --- /dev/null +++ b/baseconfig/arm/arm64/CONFIG_SND_SOC_TEGRA @@ -0,0 +1 @@ +CONFIG_SND_SOC_TEGRA=m diff --git a/baseconfig/arm/arm64/CONFIG_SND_SOC_TEGRA_MAX98090 b/baseconfig/arm/arm64/CONFIG_SND_SOC_TEGRA_MAX98090 new file mode 100644 index 000000000..55f327a38 --- /dev/null +++ b/baseconfig/arm/arm64/CONFIG_SND_SOC_TEGRA_MAX98090 @@ -0,0 +1 @@ +CONFIG_SND_SOC_TEGRA_MAX98090=m diff --git a/baseconfig/arm/arm64/CONFIG_SND_SOC_TEGRA_RT5640 b/baseconfig/arm/arm64/CONFIG_SND_SOC_TEGRA_RT5640 new file mode 100644 index 000000000..3370b8ec2 --- /dev/null +++ b/baseconfig/arm/arm64/CONFIG_SND_SOC_TEGRA_RT5640 @@ -0,0 +1 @@ +CONFIG_SND_SOC_TEGRA_RT5640=m diff --git a/baseconfig/arm/arm64/CONFIG_SND_SOC_TEGRA_RT5677 b/baseconfig/arm/arm64/CONFIG_SND_SOC_TEGRA_RT5677 new file mode 100644 index 000000000..24298d93b --- /dev/null +++ b/baseconfig/arm/arm64/CONFIG_SND_SOC_TEGRA_RT5677 @@ -0,0 +1 @@ +CONFIG_SND_SOC_TEGRA_RT5677=m diff --git a/baseconfig/arm/arm64/CONFIG_SND_SOC_TEGRA_SGTL5000 b/baseconfig/arm/arm64/CONFIG_SND_SOC_TEGRA_SGTL5000 new file mode 100644 index 000000000..4706a31c1 --- /dev/null +++ b/baseconfig/arm/arm64/CONFIG_SND_SOC_TEGRA_SGTL5000 @@ -0,0 +1 @@ +CONFIG_SND_SOC_TEGRA_SGTL5000=m diff --git a/baseconfig/arm/armv7/lpae/CONFIG_SND_SOC_TEGRA_WM8753 b/baseconfig/arm/arm64/CONFIG_SND_SOC_TEGRA_WM8753 index 9039b1695..9039b1695 100644 --- a/baseconfig/arm/armv7/lpae/CONFIG_SND_SOC_TEGRA_WM8753 +++ b/baseconfig/arm/arm64/CONFIG_SND_SOC_TEGRA_WM8753 diff --git a/baseconfig/arm/arm64/CONFIG_SND_SUN4I_I2S b/baseconfig/arm/arm64/CONFIG_SND_SUN4I_I2S new file mode 100644 index 000000000..d9270e25b --- /dev/null +++ b/baseconfig/arm/arm64/CONFIG_SND_SUN4I_I2S @@ -0,0 +1 @@ +CONFIG_SND_SUN4I_I2S=m diff --git a/baseconfig/arm/arm64/CONFIG_SND_SUN4I_SPDIF b/baseconfig/arm/arm64/CONFIG_SND_SUN4I_SPDIF new file mode 100644 index 000000000..c0b108aba --- /dev/null +++ b/baseconfig/arm/arm64/CONFIG_SND_SUN4I_SPDIF @@ -0,0 +1 @@ +CONFIG_SND_SUN4I_SPDIF=m diff --git a/baseconfig/arm/arm64/CONFIG_SND_SUN8I_CODEC b/baseconfig/arm/arm64/CONFIG_SND_SUN8I_CODEC new file mode 100644 index 000000000..c30f94369 --- /dev/null +++ b/baseconfig/arm/arm64/CONFIG_SND_SUN8I_CODEC @@ -0,0 +1 @@ +CONFIG_SND_SUN8I_CODEC=m diff --git a/baseconfig/CONFIG_SND_SUN8I_CODEC_ANALOG b/baseconfig/arm/arm64/CONFIG_SND_SUN8I_CODEC_ANALOG index 28ea30190..28ea30190 100644 --- a/baseconfig/CONFIG_SND_SUN8I_CODEC_ANALOG +++ b/baseconfig/arm/arm64/CONFIG_SND_SUN8I_CODEC_ANALOG diff --git a/baseconfig/arm/arm64/CONFIG_SUN50I_A64_CCU b/baseconfig/arm/arm64/CONFIG_SUN50I_A64_CCU new file mode 100644 index 000000000..7b6c7a687 --- /dev/null +++ b/baseconfig/arm/arm64/CONFIG_SUN50I_A64_CCU @@ -0,0 +1 @@ +CONFIG_SUN50I_A64_CCU=y diff --git a/baseconfig/arm/arm64/CONFIG_SUN8I_EMAC b/baseconfig/arm/arm64/CONFIG_SUN8I_EMAC deleted file mode 100644 index 1b91ca143..000000000 --- a/baseconfig/arm/arm64/CONFIG_SUN8I_EMAC +++ /dev/null @@ -1 +0,0 @@ -CONFIG_SUN8I_EMAC=m diff --git a/baseconfig/CONFIG_TEGRA_IVC b/baseconfig/arm/arm64/CONFIG_TEGRA_IVC index cdcacbec2..cdcacbec2 100644 --- a/baseconfig/CONFIG_TEGRA_IVC +++ b/baseconfig/arm/arm64/CONFIG_TEGRA_IVC diff --git a/baseconfig/arm/arm64/CONFIG_VDSO b/baseconfig/arm/arm64/CONFIG_VDSO new file mode 100644 index 000000000..cab5ebafb --- /dev/null +++ b/baseconfig/arm/arm64/CONFIG_VDSO @@ -0,0 +1 @@ +CONFIG_VDSO=y diff --git a/baseconfig/arm/armv7/CONFIG_ARCH_MESON b/baseconfig/arm/armv7/CONFIG_ARCH_MESON deleted file mode 100644 index 849319f60..000000000 --- a/baseconfig/arm/armv7/CONFIG_ARCH_MESON +++ /dev/null @@ -1 +0,0 @@ -# CONFIG_ARCH_MESON is not set diff --git a/baseconfig/arm/armv7/CONFIG_CHARGER_AXP20X b/baseconfig/arm/armv7/CONFIG_CHARGER_AXP20X new file mode 100644 index 000000000..2e64e7733 --- /dev/null +++ b/baseconfig/arm/armv7/CONFIG_CHARGER_AXP20X @@ -0,0 +1 @@ +CONFIG_CHARGER_AXP20X=m diff --git a/baseconfig/arm/armv7/CONFIG_COMMON_CLK_MAX77686 b/baseconfig/arm/armv7/CONFIG_COMMON_CLK_MAX77686 deleted file mode 100644 index 71ba0b45c..000000000 --- a/baseconfig/arm/armv7/CONFIG_COMMON_CLK_MAX77686 +++ /dev/null @@ -1 +0,0 @@ -CONFIG_COMMON_CLK_MAX77686=m diff --git a/baseconfig/arm/armv7/CONFIG_DEBUG_RODATA b/baseconfig/arm/armv7/CONFIG_DEBUG_RODATA deleted file mode 100644 index 8b3ba9432..000000000 --- a/baseconfig/arm/armv7/CONFIG_DEBUG_RODATA +++ /dev/null @@ -1 +0,0 @@ -# CONFIG_DEBUG_RODATA is not set diff --git a/baseconfig/arm/armv7/CONFIG_DRM_MESON b/baseconfig/arm/armv7/CONFIG_DRM_MESON deleted file mode 100644 index 7a6179102..000000000 --- a/baseconfig/arm/armv7/CONFIG_DRM_MESON +++ /dev/null @@ -1 +0,0 @@ -# CONFIG_DRM_MESON is not set diff --git a/baseconfig/arm/armv7/CONFIG_DRM_STI b/baseconfig/arm/armv7/CONFIG_DRM_STI index 008714f93..d16e09b9b 100644 --- a/baseconfig/arm/armv7/CONFIG_DRM_STI +++ b/baseconfig/arm/armv7/CONFIG_DRM_STI @@ -1 +1 @@ -# CONFIG_DRM_STI is not set +CONFIG_DRM_STI=m diff --git a/baseconfig/arm/armv7/CONFIG_DWMAC_SUN8I b/baseconfig/arm/armv7/CONFIG_DWMAC_SUN8I new file mode 100644 index 000000000..ce05f93b3 --- /dev/null +++ b/baseconfig/arm/armv7/CONFIG_DWMAC_SUN8I @@ -0,0 +1 @@ +CONFIG_DWMAC_SUN8I=m diff --git a/baseconfig/arm/CONFIG_FORCE_MAX_ZONEORDER b/baseconfig/arm/armv7/CONFIG_FORCE_MAX_ZONEORDER index bdbd3377f..bdbd3377f 100644 --- a/baseconfig/arm/CONFIG_FORCE_MAX_ZONEORDER +++ b/baseconfig/arm/armv7/CONFIG_FORCE_MAX_ZONEORDER diff --git a/baseconfig/arm/armv7/CONFIG_GPIO_EM b/baseconfig/arm/armv7/CONFIG_GPIO_EM deleted file mode 100644 index 175c5778a..000000000 --- a/baseconfig/arm/armv7/CONFIG_GPIO_EM +++ /dev/null @@ -1 +0,0 @@ -# CONFIG_GPIO_EM is not set diff --git a/baseconfig/arm/armv7/CONFIG_IIO_CROS_EC_BARO b/baseconfig/arm/armv7/CONFIG_IIO_CROS_EC_BARO new file mode 100644 index 000000000..7b38ce09b --- /dev/null +++ b/baseconfig/arm/armv7/CONFIG_IIO_CROS_EC_BARO @@ -0,0 +1 @@ +# CONFIG_IIO_CROS_EC_BARO is not set diff --git a/baseconfig/arm/armv7/CONFIG_MACH_MESON6 b/baseconfig/arm/armv7/CONFIG_MACH_MESON6 new file mode 100644 index 000000000..aff440cc5 --- /dev/null +++ b/baseconfig/arm/armv7/CONFIG_MACH_MESON6 @@ -0,0 +1 @@ +# CONFIG_MACH_MESON6 is not set diff --git a/baseconfig/arm/armv7/CONFIG_MACH_MESON8 b/baseconfig/arm/armv7/CONFIG_MACH_MESON8 new file mode 100644 index 000000000..e55c72211 --- /dev/null +++ b/baseconfig/arm/armv7/CONFIG_MACH_MESON8 @@ -0,0 +1 @@ +# CONFIG_MACH_MESON8 is not set diff --git a/baseconfig/arm/armv7/CONFIG_MACH_MESON8B b/baseconfig/arm/armv7/CONFIG_MACH_MESON8B new file mode 100644 index 000000000..5212d2aca --- /dev/null +++ b/baseconfig/arm/armv7/CONFIG_MACH_MESON8B @@ -0,0 +1 @@ +CONFIG_MACH_MESON8B=y diff --git a/baseconfig/arm/CONFIG_MFD_SUN4I_GPADC b/baseconfig/arm/armv7/CONFIG_MFD_SUN4I_GPADC index d156cb188..d156cb188 100644 --- a/baseconfig/arm/CONFIG_MFD_SUN4I_GPADC +++ b/baseconfig/arm/armv7/CONFIG_MFD_SUN4I_GPADC diff --git a/baseconfig/arm/armv7/CONFIG_PATA_PLATFORM b/baseconfig/arm/armv7/CONFIG_PATA_PLATFORM deleted file mode 100644 index e385815ec..000000000 --- a/baseconfig/arm/armv7/CONFIG_PATA_PLATFORM +++ /dev/null @@ -1 +0,0 @@ -# CONFIG_PATA_PLATFORM is not set diff --git a/baseconfig/arm/armv7/CONFIG_PHY_EXYNOS_PCIE b/baseconfig/arm/armv7/CONFIG_PHY_EXYNOS_PCIE new file mode 100644 index 000000000..26417e932 --- /dev/null +++ b/baseconfig/arm/armv7/CONFIG_PHY_EXYNOS_PCIE @@ -0,0 +1 @@ +CONFIG_PHY_EXYNOS_PCIE=y diff --git a/baseconfig/arm/armv7/CONFIG_ROCKCHIP_CDN_DP b/baseconfig/arm/armv7/CONFIG_ROCKCHIP_CDN_DP new file mode 100644 index 000000000..98a696d76 --- /dev/null +++ b/baseconfig/arm/armv7/CONFIG_ROCKCHIP_CDN_DP @@ -0,0 +1 @@ +# CONFIG_ROCKCHIP_CDN_DP is not set diff --git a/baseconfig/arm/armv7/CONFIG_RPMSG_CHAR b/baseconfig/arm/armv7/CONFIG_RPMSG_CHAR new file mode 100644 index 000000000..3aa998906 --- /dev/null +++ b/baseconfig/arm/armv7/CONFIG_RPMSG_CHAR @@ -0,0 +1 @@ +# CONFIG_RPMSG_CHAR is not set diff --git a/baseconfig/arm/armv7/CONFIG_SERIAL_ST_ASC b/baseconfig/arm/armv7/CONFIG_SERIAL_ST_ASC new file mode 100644 index 000000000..9ac7f69ac --- /dev/null +++ b/baseconfig/arm/armv7/CONFIG_SERIAL_ST_ASC @@ -0,0 +1 @@ +CONFIG_SERIAL_ST_ASC=y diff --git a/baseconfig/arm/armv7/CONFIG_SERIAL_ST_ASC_CONSOLE b/baseconfig/arm/armv7/CONFIG_SERIAL_ST_ASC_CONSOLE new file mode 100644 index 000000000..4f7f87761 --- /dev/null +++ b/baseconfig/arm/armv7/CONFIG_SERIAL_ST_ASC_CONSOLE @@ -0,0 +1 @@ +CONFIG_SERIAL_ST_ASC_CONSOLE=y diff --git a/baseconfig/arm/armv7/CONFIG_SND_SOC_RK3399_GRU_SOUND b/baseconfig/arm/armv7/CONFIG_SND_SOC_RK3399_GRU_SOUND deleted file mode 100644 index 6897e6b54..000000000 --- a/baseconfig/arm/armv7/CONFIG_SND_SOC_RK3399_GRU_SOUND +++ /dev/null @@ -1 +0,0 @@ -# CONFIG_SND_SOC_RK3399_GRU_SOUND is not set diff --git a/baseconfig/arm/armv7/CONFIG_SND_SOC_SGTL5000 b/baseconfig/arm/armv7/CONFIG_SND_SOC_SGTL5000 new file mode 100644 index 000000000..ea71dece1 --- /dev/null +++ b/baseconfig/arm/armv7/CONFIG_SND_SOC_SGTL5000 @@ -0,0 +1 @@ +CONFIG_SND_SOC_SGTL5000=m diff --git a/baseconfig/arm/armv7/CONFIG_SND_SOC_TEGRA_SGTL5000 b/baseconfig/arm/armv7/CONFIG_SND_SOC_TEGRA_SGTL5000 index b3214101c..4706a31c1 100644 --- a/baseconfig/arm/armv7/CONFIG_SND_SOC_TEGRA_SGTL5000 +++ b/baseconfig/arm/armv7/CONFIG_SND_SOC_TEGRA_SGTL5000 @@ -1 +1 @@ -# CONFIG_SND_SOC_TEGRA_SGTL5000 is not set +CONFIG_SND_SOC_TEGRA_SGTL5000=m diff --git a/baseconfig/arm/armv7/CONFIG_SND_SOC_TEGRA_WM8753 b/baseconfig/arm/armv7/CONFIG_SND_SOC_TEGRA_WM8753 new file mode 100644 index 000000000..9039b1695 --- /dev/null +++ b/baseconfig/arm/armv7/CONFIG_SND_SOC_TEGRA_WM8753 @@ -0,0 +1 @@ +# CONFIG_SND_SOC_TEGRA_WM8753 is not set diff --git a/baseconfig/arm/armv7/CONFIG_SND_SUN8I_CODEC b/baseconfig/arm/armv7/CONFIG_SND_SUN8I_CODEC new file mode 100644 index 000000000..c30f94369 --- /dev/null +++ b/baseconfig/arm/armv7/CONFIG_SND_SUN8I_CODEC @@ -0,0 +1 @@ +CONFIG_SND_SUN8I_CODEC=m diff --git a/baseconfig/arm/CONFIG_SND_SUN8I_CODEC_ANALOG b/baseconfig/arm/armv7/CONFIG_SND_SUN8I_CODEC_ANALOG index 28ea30190..28ea30190 100644 --- a/baseconfig/arm/CONFIG_SND_SUN8I_CODEC_ANALOG +++ b/baseconfig/arm/armv7/CONFIG_SND_SUN8I_CODEC_ANALOG diff --git a/baseconfig/arm/armv7/CONFIG_SPI_PXA2XX b/baseconfig/arm/armv7/CONFIG_SPI_PXA2XX deleted file mode 100644 index 266e686b8..000000000 --- a/baseconfig/arm/armv7/CONFIG_SPI_PXA2XX +++ /dev/null @@ -1 +0,0 @@ -# CONFIG_SPI_PXA2XX is not set diff --git a/baseconfig/arm/armv7/CONFIG_STRICT_KERNEL_RWX b/baseconfig/arm/armv7/CONFIG_STRICT_KERNEL_RWX new file mode 100644 index 000000000..8c57b454a --- /dev/null +++ b/baseconfig/arm/armv7/CONFIG_STRICT_KERNEL_RWX @@ -0,0 +1 @@ +CONFIG_STRICT_KERNEL_RWX=y diff --git a/baseconfig/arm/armv7/CONFIG_STRICT_MODULE_RWX b/baseconfig/arm/armv7/CONFIG_STRICT_MODULE_RWX new file mode 100644 index 000000000..2f1f100d7 --- /dev/null +++ b/baseconfig/arm/armv7/CONFIG_STRICT_MODULE_RWX @@ -0,0 +1 @@ +CONFIG_STRICT_MODULE_RWX=y diff --git a/baseconfig/arm/armv7/CONFIG_SUN5I_CCU b/baseconfig/arm/armv7/CONFIG_SUN5I_CCU new file mode 100644 index 000000000..7001f3dd4 --- /dev/null +++ b/baseconfig/arm/armv7/CONFIG_SUN5I_CCU @@ -0,0 +1 @@ +CONFIG_SUN5I_CCU=y diff --git a/baseconfig/arm/armv7/CONFIG_SUN6I_A31_CCU b/baseconfig/arm/armv7/CONFIG_SUN6I_A31_CCU new file mode 100644 index 000000000..7bf2b1a47 --- /dev/null +++ b/baseconfig/arm/armv7/CONFIG_SUN6I_A31_CCU @@ -0,0 +1 @@ +CONFIG_SUN6I_A31_CCU=y diff --git a/baseconfig/arm/armv7/CONFIG_SUN8I_A23_CCU b/baseconfig/arm/armv7/CONFIG_SUN8I_A23_CCU new file mode 100644 index 000000000..46d0fa87e --- /dev/null +++ b/baseconfig/arm/armv7/CONFIG_SUN8I_A23_CCU @@ -0,0 +1 @@ +CONFIG_SUN8I_A23_CCU=y diff --git a/baseconfig/arm/armv7/CONFIG_SUN8I_A33_CCU b/baseconfig/arm/armv7/CONFIG_SUN8I_A33_CCU new file mode 100644 index 000000000..907c87d04 --- /dev/null +++ b/baseconfig/arm/armv7/CONFIG_SUN8I_A33_CCU @@ -0,0 +1 @@ +CONFIG_SUN8I_A33_CCU=y diff --git a/baseconfig/arm/armv7/CONFIG_SUN8I_EMAC b/baseconfig/arm/armv7/CONFIG_SUN8I_EMAC deleted file mode 100644 index 1b91ca143..000000000 --- a/baseconfig/arm/armv7/CONFIG_SUN8I_EMAC +++ /dev/null @@ -1 +0,0 @@ -CONFIG_SUN8I_EMAC=m diff --git a/baseconfig/arm/armv7/CONFIG_SUN8I_V3S_CCU b/baseconfig/arm/armv7/CONFIG_SUN8I_V3S_CCU new file mode 100644 index 000000000..030c5de49 --- /dev/null +++ b/baseconfig/arm/armv7/CONFIG_SUN8I_V3S_CCU @@ -0,0 +1 @@ +CONFIG_SUN8I_V3S_CCU=y diff --git a/baseconfig/arm/armv7/CONFIG_SUN9I_A80_CCU b/baseconfig/arm/armv7/CONFIG_SUN9I_A80_CCU new file mode 100644 index 000000000..d203816e6 --- /dev/null +++ b/baseconfig/arm/armv7/CONFIG_SUN9I_A80_CCU @@ -0,0 +1 @@ +CONFIG_SUN9I_A80_CCU=y diff --git a/baseconfig/arm/armv7/CONFIG_TEGRA_IVC b/baseconfig/arm/armv7/CONFIG_TEGRA_IVC new file mode 100644 index 000000000..cdcacbec2 --- /dev/null +++ b/baseconfig/arm/armv7/CONFIG_TEGRA_IVC @@ -0,0 +1 @@ +CONFIG_TEGRA_IVC=y diff --git a/baseconfig/arm/armv7/CONFIG_VIDEO_SAMSUNG_EXYNOS4_IS b/baseconfig/arm/armv7/CONFIG_VIDEO_SAMSUNG_EXYNOS4_IS index 2602e3b97..65db40667 100644 --- a/baseconfig/arm/armv7/CONFIG_VIDEO_SAMSUNG_EXYNOS4_IS +++ b/baseconfig/arm/armv7/CONFIG_VIDEO_SAMSUNG_EXYNOS4_IS @@ -1 +1 @@ -CONFIG_VIDEO_SAMSUNG_EXYNOS4_IS=y +CONFIG_VIDEO_SAMSUNG_EXYNOS4_IS=m diff --git a/baseconfig/arm/armv7/armv7/CONFIG_AHCI_ST b/baseconfig/arm/armv7/armv7/CONFIG_AHCI_ST new file mode 100644 index 000000000..975ecd425 --- /dev/null +++ b/baseconfig/arm/armv7/armv7/CONFIG_AHCI_ST @@ -0,0 +1 @@ +CONFIG_AHCI_ST=m diff --git a/baseconfig/arm/armv7/armv7/CONFIG_ARCH_STI b/baseconfig/arm/armv7/armv7/CONFIG_ARCH_STI new file mode 100644 index 000000000..7a253ecf5 --- /dev/null +++ b/baseconfig/arm/armv7/armv7/CONFIG_ARCH_STI @@ -0,0 +1 @@ +CONFIG_ARCH_STI=y diff --git a/baseconfig/arm/armv7/armv7/CONFIG_ARM_STI_CPUFREQ b/baseconfig/arm/armv7/armv7/CONFIG_ARM_STI_CPUFREQ new file mode 100644 index 000000000..0e26a51f0 --- /dev/null +++ b/baseconfig/arm/armv7/armv7/CONFIG_ARM_STI_CPUFREQ @@ -0,0 +1 @@ +CONFIG_ARM_STI_CPUFREQ=m diff --git a/baseconfig/arm/armv7/armv7/CONFIG_ARM_TI_CPUFREQ b/baseconfig/arm/armv7/armv7/CONFIG_ARM_TI_CPUFREQ new file mode 100644 index 000000000..ca125040d --- /dev/null +++ b/baseconfig/arm/armv7/armv7/CONFIG_ARM_TI_CPUFREQ @@ -0,0 +1 @@ +CONFIG_ARM_TI_CPUFREQ=y diff --git a/baseconfig/arm/armv7/armv7/CONFIG_DWMAC_IPQ806X b/baseconfig/arm/armv7/armv7/CONFIG_DWMAC_IPQ806X new file mode 100644 index 000000000..49177a6db --- /dev/null +++ b/baseconfig/arm/armv7/armv7/CONFIG_DWMAC_IPQ806X @@ -0,0 +1 @@ +CONFIG_DWMAC_IPQ806X=m diff --git a/baseconfig/arm/armv7/armv7/CONFIG_DWMAC_STI b/baseconfig/arm/armv7/armv7/CONFIG_DWMAC_STI new file mode 100644 index 000000000..b0da5ddbc --- /dev/null +++ b/baseconfig/arm/armv7/armv7/CONFIG_DWMAC_STI @@ -0,0 +1 @@ +CONFIG_DWMAC_STI=m diff --git a/baseconfig/arm/armv7/armv7/CONFIG_HW_RANDOM_ST b/baseconfig/arm/armv7/armv7/CONFIG_HW_RANDOM_ST new file mode 100644 index 000000000..e908df516 --- /dev/null +++ b/baseconfig/arm/armv7/armv7/CONFIG_HW_RANDOM_ST @@ -0,0 +1 @@ +CONFIG_HW_RANDOM_ST=m diff --git a/baseconfig/CONFIG_I2C_IMX_LPI2C b/baseconfig/arm/armv7/armv7/CONFIG_I2C_IMX_LPI2C index 2d866d55f..2d866d55f 100644 --- a/baseconfig/CONFIG_I2C_IMX_LPI2C +++ b/baseconfig/arm/armv7/armv7/CONFIG_I2C_IMX_LPI2C diff --git a/baseconfig/arm/armv7/armv7/CONFIG_I2C_PXA b/baseconfig/arm/armv7/armv7/CONFIG_I2C_PXA deleted file mode 100644 index 59d18f0cb..000000000 --- a/baseconfig/arm/armv7/armv7/CONFIG_I2C_PXA +++ /dev/null @@ -1 +0,0 @@ -CONFIG_I2C_PXA=m diff --git a/baseconfig/arm/armv7/armv7/CONFIG_I2C_PXA_SLAVE b/baseconfig/arm/armv7/armv7/CONFIG_I2C_PXA_SLAVE deleted file mode 100644 index 7cc440320..000000000 --- a/baseconfig/arm/armv7/armv7/CONFIG_I2C_PXA_SLAVE +++ /dev/null @@ -1 +0,0 @@ -# CONFIG_I2C_PXA_SLAVE is not set diff --git a/baseconfig/arm/armv7/armv7/CONFIG_I2C_ST b/baseconfig/arm/armv7/armv7/CONFIG_I2C_ST new file mode 100644 index 000000000..dac85894e --- /dev/null +++ b/baseconfig/arm/armv7/armv7/CONFIG_I2C_ST @@ -0,0 +1 @@ +CONFIG_I2C_ST=m diff --git a/baseconfig/arm/armv7/armv7/CONFIG_KEYBOARD_ST_KEYSCAN b/baseconfig/arm/armv7/armv7/CONFIG_KEYBOARD_ST_KEYSCAN new file mode 100644 index 000000000..5ad9d0409 --- /dev/null +++ b/baseconfig/arm/armv7/armv7/CONFIG_KEYBOARD_ST_KEYSCAN @@ -0,0 +1 @@ +CONFIG_KEYBOARD_ST_KEYSCAN=m diff --git a/baseconfig/arm/armv7/armv7/CONFIG_MMC_SDHCI_ST b/baseconfig/arm/armv7/armv7/CONFIG_MMC_SDHCI_ST new file mode 100644 index 000000000..4a513a669 --- /dev/null +++ b/baseconfig/arm/armv7/armv7/CONFIG_MMC_SDHCI_ST @@ -0,0 +1 @@ +CONFIG_MMC_SDHCI_ST=m diff --git a/baseconfig/arm/armv7/armv7/CONFIG_OMAP_MUX_DEBUG b/baseconfig/arm/armv7/armv7/CONFIG_OMAP_MUX_DEBUG deleted file mode 100644 index b61e5b603..000000000 --- a/baseconfig/arm/armv7/armv7/CONFIG_OMAP_MUX_DEBUG +++ /dev/null @@ -1 +0,0 @@ -# CONFIG_OMAP_MUX_DEBUG is not set diff --git a/baseconfig/arm/armv7/armv7/CONFIG_PHY_MIPHY28LP b/baseconfig/arm/armv7/armv7/CONFIG_PHY_MIPHY28LP new file mode 100644 index 000000000..c0b002711 --- /dev/null +++ b/baseconfig/arm/armv7/armv7/CONFIG_PHY_MIPHY28LP @@ -0,0 +1 @@ +CONFIG_PHY_MIPHY28LP=m diff --git a/baseconfig/arm/armv7/armv7/CONFIG_PHY_MIPHY365X b/baseconfig/arm/armv7/armv7/CONFIG_PHY_MIPHY365X new file mode 100644 index 000000000..b824f4d74 --- /dev/null +++ b/baseconfig/arm/armv7/armv7/CONFIG_PHY_MIPHY365X @@ -0,0 +1 @@ +# CONFIG_PHY_MIPHY365X is not set diff --git a/baseconfig/arm/armv7/armv7/CONFIG_PHY_STIH407_USB b/baseconfig/arm/armv7/armv7/CONFIG_PHY_STIH407_USB new file mode 100644 index 000000000..62d71519e --- /dev/null +++ b/baseconfig/arm/armv7/armv7/CONFIG_PHY_STIH407_USB @@ -0,0 +1 @@ +CONFIG_PHY_STIH407_USB=m diff --git a/baseconfig/arm/armv7/armv7/CONFIG_PHY_STIH41X_USB b/baseconfig/arm/armv7/armv7/CONFIG_PHY_STIH41X_USB new file mode 100644 index 000000000..65f0bc9b7 --- /dev/null +++ b/baseconfig/arm/armv7/armv7/CONFIG_PHY_STIH41X_USB @@ -0,0 +1 @@ +# CONFIG_PHY_STIH41X_USB is not set diff --git a/baseconfig/arm/armv7/armv7/CONFIG_POWER_RESET_ST b/baseconfig/arm/armv7/armv7/CONFIG_POWER_RESET_ST new file mode 100644 index 000000000..e14ee1ac1 --- /dev/null +++ b/baseconfig/arm/armv7/armv7/CONFIG_POWER_RESET_ST @@ -0,0 +1 @@ +CONFIG_POWER_RESET_ST=y diff --git a/baseconfig/arm/armv7/armv7/CONFIG_PWM_STI b/baseconfig/arm/armv7/armv7/CONFIG_PWM_STI new file mode 100644 index 000000000..8aaff84cb --- /dev/null +++ b/baseconfig/arm/armv7/armv7/CONFIG_PWM_STI @@ -0,0 +1 @@ +CONFIG_PWM_STI=m diff --git a/baseconfig/arm/armv7/armv7/CONFIG_RC_ST b/baseconfig/arm/armv7/armv7/CONFIG_RC_ST new file mode 100644 index 000000000..878dd631d --- /dev/null +++ b/baseconfig/arm/armv7/armv7/CONFIG_RC_ST @@ -0,0 +1 @@ +CONFIG_RC_ST=m diff --git a/baseconfig/arm/armv7/armv7/CONFIG_RTC_DRV_OMAP b/baseconfig/arm/armv7/armv7/CONFIG_RTC_DRV_OMAP index 7679dbb81..479a6f546 100644 --- a/baseconfig/arm/armv7/armv7/CONFIG_RTC_DRV_OMAP +++ b/baseconfig/arm/armv7/armv7/CONFIG_RTC_DRV_OMAP @@ -1 +1 @@ -CONFIG_RTC_DRV_OMAP=y +CONFIG_RTC_DRV_OMAP=m diff --git a/baseconfig/arm/armv7/armv7/CONFIG_RTC_DRV_ST_LPC b/baseconfig/arm/armv7/armv7/CONFIG_RTC_DRV_ST_LPC new file mode 100644 index 000000000..548d6d6c9 --- /dev/null +++ b/baseconfig/arm/armv7/armv7/CONFIG_RTC_DRV_ST_LPC @@ -0,0 +1 @@ +CONFIG_RTC_DRV_ST_LPC=m diff --git a/baseconfig/arm/armv7/armv7/CONFIG_SND_SOC_STI b/baseconfig/arm/armv7/armv7/CONFIG_SND_SOC_STI new file mode 100644 index 000000000..af73428f9 --- /dev/null +++ b/baseconfig/arm/armv7/armv7/CONFIG_SND_SOC_STI @@ -0,0 +1 @@ +CONFIG_SND_SOC_STI=m diff --git a/baseconfig/arm/armv7/armv7/CONFIG_SND_SOC_STI_SAS b/baseconfig/arm/armv7/armv7/CONFIG_SND_SOC_STI_SAS new file mode 100644 index 000000000..99ae102fc --- /dev/null +++ b/baseconfig/arm/armv7/armv7/CONFIG_SND_SOC_STI_SAS @@ -0,0 +1 @@ +CONFIG_SND_SOC_STI_SAS=m diff --git a/baseconfig/arm/armv7/armv7/CONFIG_SND_SOC_TEGRA_WM8753 b/baseconfig/arm/armv7/armv7/CONFIG_SND_SOC_TEGRA_WM8753 deleted file mode 100644 index d8bef6a31..000000000 --- a/baseconfig/arm/armv7/armv7/CONFIG_SND_SOC_TEGRA_WM8753 +++ /dev/null @@ -1 +0,0 @@ -CONFIG_SND_SOC_TEGRA_WM8753=m diff --git a/baseconfig/arm/armv7/armv7/CONFIG_SOC_STIH407 b/baseconfig/arm/armv7/armv7/CONFIG_SOC_STIH407 new file mode 100644 index 000000000..e1a2ca5a6 --- /dev/null +++ b/baseconfig/arm/armv7/armv7/CONFIG_SOC_STIH407 @@ -0,0 +1 @@ +CONFIG_SOC_STIH407=y diff --git a/baseconfig/arm/armv7/armv7/CONFIG_SOC_STIH415 b/baseconfig/arm/armv7/armv7/CONFIG_SOC_STIH415 new file mode 100644 index 000000000..41502f339 --- /dev/null +++ b/baseconfig/arm/armv7/armv7/CONFIG_SOC_STIH415 @@ -0,0 +1 @@ +# CONFIG_SOC_STIH415 is not set diff --git a/baseconfig/arm/armv7/armv7/CONFIG_SOC_STIH416 b/baseconfig/arm/armv7/armv7/CONFIG_SOC_STIH416 new file mode 100644 index 000000000..9835ddfc1 --- /dev/null +++ b/baseconfig/arm/armv7/armv7/CONFIG_SOC_STIH416 @@ -0,0 +1 @@ +# CONFIG_SOC_STIH416 is not set diff --git a/baseconfig/arm/armv7/armv7/CONFIG_SPI_ST_SSC4 b/baseconfig/arm/armv7/armv7/CONFIG_SPI_ST_SSC4 new file mode 100644 index 000000000..87403eb57 --- /dev/null +++ b/baseconfig/arm/armv7/armv7/CONFIG_SPI_ST_SSC4 @@ -0,0 +1 @@ +CONFIG_SPI_ST_SSC4=m diff --git a/baseconfig/arm/armv7/armv7/CONFIG_STI_MBOX b/baseconfig/arm/armv7/armv7/CONFIG_STI_MBOX new file mode 100644 index 000000000..60dd9ded6 --- /dev/null +++ b/baseconfig/arm/armv7/armv7/CONFIG_STI_MBOX @@ -0,0 +1 @@ +CONFIG_STI_MBOX=m diff --git a/baseconfig/arm/armv7/armv7/CONFIG_ST_FDMA b/baseconfig/arm/armv7/armv7/CONFIG_ST_FDMA new file mode 100644 index 000000000..73c09775d --- /dev/null +++ b/baseconfig/arm/armv7/armv7/CONFIG_ST_FDMA @@ -0,0 +1 @@ +CONFIG_ST_FDMA=m diff --git a/baseconfig/arm/armv7/armv7/CONFIG_ST_LPC_WATCHDOG b/baseconfig/arm/armv7/armv7/CONFIG_ST_LPC_WATCHDOG new file mode 100644 index 000000000..5e0a376a8 --- /dev/null +++ b/baseconfig/arm/armv7/armv7/CONFIG_ST_LPC_WATCHDOG @@ -0,0 +1 @@ +CONFIG_ST_LPC_WATCHDOG=m diff --git a/baseconfig/arm/armv7/armv7/CONFIG_ST_REMOTEPROC b/baseconfig/arm/armv7/armv7/CONFIG_ST_REMOTEPROC new file mode 100644 index 000000000..73ad95532 --- /dev/null +++ b/baseconfig/arm/armv7/armv7/CONFIG_ST_REMOTEPROC @@ -0,0 +1 @@ +CONFIG_ST_REMOTEPROC=m diff --git a/baseconfig/arm/armv7/armv7/CONFIG_ST_THERMAL b/baseconfig/arm/armv7/armv7/CONFIG_ST_THERMAL new file mode 100644 index 000000000..62b32ecb6 --- /dev/null +++ b/baseconfig/arm/armv7/armv7/CONFIG_ST_THERMAL @@ -0,0 +1 @@ +CONFIG_ST_THERMAL=m diff --git a/baseconfig/arm/armv7/armv7/CONFIG_ST_THERMAL_MEMMAP b/baseconfig/arm/armv7/armv7/CONFIG_ST_THERMAL_MEMMAP new file mode 100644 index 000000000..22f120d14 --- /dev/null +++ b/baseconfig/arm/armv7/armv7/CONFIG_ST_THERMAL_MEMMAP @@ -0,0 +1 @@ +CONFIG_ST_THERMAL_MEMMAP=m diff --git a/baseconfig/arm/armv7/armv7/CONFIG_ST_THERMAL_SYSCFG b/baseconfig/arm/armv7/armv7/CONFIG_ST_THERMAL_SYSCFG new file mode 100644 index 000000000..865418b83 --- /dev/null +++ b/baseconfig/arm/armv7/armv7/CONFIG_ST_THERMAL_SYSCFG @@ -0,0 +1 @@ +# CONFIG_ST_THERMAL_SYSCFG is not set diff --git a/baseconfig/arm/armv7/armv7/CONFIG_TI_CPTS b/baseconfig/arm/armv7/armv7/CONFIG_TI_CPTS index 163365765..f2dd7ea1f 100644 --- a/baseconfig/arm/armv7/armv7/CONFIG_TI_CPTS +++ b/baseconfig/arm/armv7/armv7/CONFIG_TI_CPTS @@ -1 +1 @@ -CONFIG_TI_CPTS=m +CONFIG_TI_CPTS=y diff --git a/baseconfig/arm/armv7/armv7/CONFIG_TI_CPTS_MOD b/baseconfig/arm/armv7/armv7/CONFIG_TI_CPTS_MOD new file mode 100644 index 000000000..b81356e32 --- /dev/null +++ b/baseconfig/arm/armv7/armv7/CONFIG_TI_CPTS_MOD @@ -0,0 +1 @@ +CONFIG_TI_CPTS_MOD=m diff --git a/baseconfig/arm/armv7/armv7/CONFIG_USB_DWC3_ST b/baseconfig/arm/armv7/armv7/CONFIG_USB_DWC3_ST new file mode 100644 index 000000000..8c2b8b403 --- /dev/null +++ b/baseconfig/arm/armv7/armv7/CONFIG_USB_DWC3_ST @@ -0,0 +1 @@ +CONFIG_USB_DWC3_ST=m diff --git a/baseconfig/arm/armv7/armv7/CONFIG_USB_EHCI_HCD_STI b/baseconfig/arm/armv7/armv7/CONFIG_USB_EHCI_HCD_STI new file mode 100644 index 000000000..7f13c6b05 --- /dev/null +++ b/baseconfig/arm/armv7/armv7/CONFIG_USB_EHCI_HCD_STI @@ -0,0 +1 @@ +CONFIG_USB_EHCI_HCD_STI=m diff --git a/baseconfig/arm/armv7/armv7/CONFIG_USB_OHCI_HCD_STI b/baseconfig/arm/armv7/armv7/CONFIG_USB_OHCI_HCD_STI new file mode 100644 index 000000000..ac20563d8 --- /dev/null +++ b/baseconfig/arm/armv7/armv7/CONFIG_USB_OHCI_HCD_STI @@ -0,0 +1 @@ +CONFIG_USB_OHCI_HCD_STI=m diff --git a/baseconfig/arm/armv7/armv7/CONFIG_VIDEO_IMX_VDOA b/baseconfig/arm/armv7/armv7/CONFIG_VIDEO_IMX_VDOA new file mode 100644 index 000000000..034c99572 --- /dev/null +++ b/baseconfig/arm/armv7/armv7/CONFIG_VIDEO_IMX_VDOA @@ -0,0 +1 @@ +CONFIG_VIDEO_IMX_VDOA=m diff --git a/baseconfig/arm/armv7/armv7/CONFIG_VIDEO_SAMSUNG_EXYNOS4_IS b/baseconfig/arm/armv7/armv7/CONFIG_VIDEO_SAMSUNG_EXYNOS4_IS deleted file mode 100644 index 65db40667..000000000 --- a/baseconfig/arm/armv7/armv7/CONFIG_VIDEO_SAMSUNG_EXYNOS4_IS +++ /dev/null @@ -1 +0,0 @@ -CONFIG_VIDEO_SAMSUNG_EXYNOS4_IS=m diff --git a/baseconfig/arm/armv7/armv7/CONFIG_VIDEO_STI_BDISP b/baseconfig/arm/armv7/armv7/CONFIG_VIDEO_STI_BDISP new file mode 100644 index 000000000..430657aeb --- /dev/null +++ b/baseconfig/arm/armv7/armv7/CONFIG_VIDEO_STI_BDISP @@ -0,0 +1 @@ +CONFIG_VIDEO_STI_BDISP=m diff --git a/baseconfig/arm/armv7/armv7/CONFIG_VIDEO_STI_DELTA b/baseconfig/arm/armv7/armv7/CONFIG_VIDEO_STI_DELTA new file mode 100644 index 000000000..8bb71fa96 --- /dev/null +++ b/baseconfig/arm/armv7/armv7/CONFIG_VIDEO_STI_DELTA @@ -0,0 +1 @@ +CONFIG_VIDEO_STI_DELTA=m diff --git a/baseconfig/arm/armv7/armv7/CONFIG_VIDEO_STI_DELTA_DRIVER b/baseconfig/arm/armv7/armv7/CONFIG_VIDEO_STI_DELTA_DRIVER new file mode 100644 index 000000000..0292f4baa --- /dev/null +++ b/baseconfig/arm/armv7/armv7/CONFIG_VIDEO_STI_DELTA_DRIVER @@ -0,0 +1 @@ +CONFIG_VIDEO_STI_DELTA_DRIVER=m diff --git a/baseconfig/arm/armv7/armv7/CONFIG_VIDEO_STI_DELTA_MJPEG b/baseconfig/arm/armv7/armv7/CONFIG_VIDEO_STI_DELTA_MJPEG new file mode 100644 index 000000000..f847894b9 --- /dev/null +++ b/baseconfig/arm/armv7/armv7/CONFIG_VIDEO_STI_DELTA_MJPEG @@ -0,0 +1 @@ +CONFIG_VIDEO_STI_DELTA_MJPEG=y diff --git a/baseconfig/arm/armv7/armv7/CONFIG_VIDEO_STI_HDMI_CEC b/baseconfig/arm/armv7/armv7/CONFIG_VIDEO_STI_HDMI_CEC new file mode 100644 index 000000000..a1d5539f7 --- /dev/null +++ b/baseconfig/arm/armv7/armv7/CONFIG_VIDEO_STI_HDMI_CEC @@ -0,0 +1 @@ +CONFIG_VIDEO_STI_HDMI_CEC=m diff --git a/baseconfig/arm/armv7/armv7/CONFIG_VIDEO_STI_HVA b/baseconfig/arm/armv7/armv7/CONFIG_VIDEO_STI_HVA new file mode 100644 index 000000000..7058385d2 --- /dev/null +++ b/baseconfig/arm/armv7/armv7/CONFIG_VIDEO_STI_HVA @@ -0,0 +1 @@ +CONFIG_VIDEO_STI_HVA=m diff --git a/baseconfig/arm/armv7/armv7/CONFIG_VIDEO_STI_HVA_DEBUGFS b/baseconfig/arm/armv7/armv7/CONFIG_VIDEO_STI_HVA_DEBUGFS new file mode 100644 index 000000000..637bf6eb4 --- /dev/null +++ b/baseconfig/arm/armv7/armv7/CONFIG_VIDEO_STI_HVA_DEBUGFS @@ -0,0 +1 @@ +# CONFIG_VIDEO_STI_HVA_DEBUGFS is not set diff --git a/baseconfig/arm/armv7/lpae/CONFIG_VDSO b/baseconfig/arm/armv7/lpae/CONFIG_VDSO new file mode 100644 index 000000000..cab5ebafb --- /dev/null +++ b/baseconfig/arm/armv7/lpae/CONFIG_VDSO @@ -0,0 +1 @@ +CONFIG_VDSO=y diff --git a/baseconfig/powerpc/CONFIG_AGP b/baseconfig/powerpc/CONFIG_AGP index ea543fee8..f7332ef53 100644 --- a/baseconfig/powerpc/CONFIG_AGP +++ b/baseconfig/powerpc/CONFIG_AGP @@ -1 +1 @@ -CONFIG_AGP=y +# CONFIG_AGP is not set diff --git a/baseconfig/powerpc/CONFIG_DEV_DAX b/baseconfig/powerpc/CONFIG_DEV_DAX new file mode 100644 index 000000000..77478a213 --- /dev/null +++ b/baseconfig/powerpc/CONFIG_DEV_DAX @@ -0,0 +1 @@ +CONFIG_DEV_DAX=m diff --git a/baseconfig/powerpc/CONFIG_DEV_DAX_PMEM b/baseconfig/powerpc/CONFIG_DEV_DAX_PMEM new file mode 100644 index 000000000..8c7fd6732 --- /dev/null +++ b/baseconfig/powerpc/CONFIG_DEV_DAX_PMEM @@ -0,0 +1 @@ +CONFIG_DEV_DAX_PMEM=m diff --git a/baseconfig/powerpc/CONFIG_GENWQE b/baseconfig/powerpc/CONFIG_GENWQE new file mode 100644 index 000000000..f1f996ac1 --- /dev/null +++ b/baseconfig/powerpc/CONFIG_GENWQE @@ -0,0 +1 @@ +CONFIG_GENWQE=m diff --git a/baseconfig/powerpc/CONFIG_GENWQE_PLATFORM_ERROR_RECOVERY b/baseconfig/powerpc/CONFIG_GENWQE_PLATFORM_ERROR_RECOVERY new file mode 100644 index 000000000..b14ba84fb --- /dev/null +++ b/baseconfig/powerpc/CONFIG_GENWQE_PLATFORM_ERROR_RECOVERY @@ -0,0 +1 @@ +CONFIG_GENWQE_PLATFORM_ERROR_RECOVERY=1 diff --git a/baseconfig/powerpc/CONFIG_GPIO_SCH b/baseconfig/powerpc/CONFIG_GPIO_SCH deleted file mode 100644 index 91a3ab850..000000000 --- a/baseconfig/powerpc/CONFIG_GPIO_SCH +++ /dev/null @@ -1 +0,0 @@ -# CONFIG_GPIO_SCH is not set diff --git a/baseconfig/powerpc/CONFIG_LEDS_TRIGGER_GPIO b/baseconfig/powerpc/CONFIG_LEDS_TRIGGER_GPIO deleted file mode 100644 index c45d222a9..000000000 --- a/baseconfig/powerpc/CONFIG_LEDS_TRIGGER_GPIO +++ /dev/null @@ -1 +0,0 @@ -CONFIG_LEDS_TRIGGER_GPIO=m diff --git a/baseconfig/powerpc/CONFIG_NR_DEV_DAX b/baseconfig/powerpc/CONFIG_NR_DEV_DAX new file mode 100644 index 000000000..3fd0f86b1 --- /dev/null +++ b/baseconfig/powerpc/CONFIG_NR_DEV_DAX @@ -0,0 +1 @@ +CONFIG_NR_DEV_DAX=32768 diff --git a/baseconfig/powerpc/CONFIG_TRANSPARENT_HUGEPAGE b/baseconfig/powerpc/CONFIG_TRANSPARENT_HUGEPAGE index 4874a851b..75d999c66 100644 --- a/baseconfig/powerpc/CONFIG_TRANSPARENT_HUGEPAGE +++ b/baseconfig/powerpc/CONFIG_TRANSPARENT_HUGEPAGE @@ -1 +1 @@ -# CONFIG_TRANSPARENT_HUGEPAGE is not set +CONFIG_TRANSPARENT_HUGEPAGE=y diff --git a/baseconfig/powerpc/CONFIG_TRANSPARENT_HUGEPAGE_MADVISE b/baseconfig/powerpc/CONFIG_TRANSPARENT_HUGEPAGE_MADVISE new file mode 100644 index 000000000..f9a942f2c --- /dev/null +++ b/baseconfig/powerpc/CONFIG_TRANSPARENT_HUGEPAGE_MADVISE @@ -0,0 +1 @@ +CONFIG_TRANSPARENT_HUGEPAGE_MADVISE=y diff --git a/baseconfig/powerpc/powerpc64/CONFIG_AGP b/baseconfig/powerpc/powerpc64/CONFIG_AGP new file mode 100644 index 000000000..ea543fee8 --- /dev/null +++ b/baseconfig/powerpc/powerpc64/CONFIG_AGP @@ -0,0 +1 @@ +CONFIG_AGP=y diff --git a/baseconfig/s390x/CONFIG_ALIM7101_WDT b/baseconfig/s390x/CONFIG_ALIM7101_WDT new file mode 100644 index 000000000..b5ad49883 --- /dev/null +++ b/baseconfig/s390x/CONFIG_ALIM7101_WDT @@ -0,0 +1 @@ +# CONFIG_ALIM7101_WDT is not set diff --git a/baseconfig/s390x/CONFIG_ALTERA_STAPL b/baseconfig/s390x/CONFIG_ALTERA_STAPL new file mode 100644 index 000000000..f454734fa --- /dev/null +++ b/baseconfig/s390x/CONFIG_ALTERA_STAPL @@ -0,0 +1 @@ +# CONFIG_ALTERA_STAPL is not set diff --git a/baseconfig/s390x/CONFIG_ALTERA_TSE b/baseconfig/s390x/CONFIG_ALTERA_TSE new file mode 100644 index 000000000..f803036e8 --- /dev/null +++ b/baseconfig/s390x/CONFIG_ALTERA_TSE @@ -0,0 +1 @@ +# CONFIG_ALTERA_TSE is not set diff --git a/baseconfig/s390x/CONFIG_APDS9802ALS b/baseconfig/s390x/CONFIG_APDS9802ALS new file mode 100644 index 000000000..c40795bfa --- /dev/null +++ b/baseconfig/s390x/CONFIG_APDS9802ALS @@ -0,0 +1 @@ +# CONFIG_APDS9802ALS is not set diff --git a/baseconfig/s390x/CONFIG_BE2ISCSI b/baseconfig/s390x/CONFIG_BE2ISCSI new file mode 100644 index 000000000..49fffd76e --- /dev/null +++ b/baseconfig/s390x/CONFIG_BE2ISCSI @@ -0,0 +1 @@ +# CONFIG_BE2ISCSI is not set diff --git a/baseconfig/s390x/CONFIG_BLK_CPQ_CISS_DA b/baseconfig/s390x/CONFIG_BLK_CPQ_CISS_DA new file mode 100644 index 000000000..2e6c723ac --- /dev/null +++ b/baseconfig/s390x/CONFIG_BLK_CPQ_CISS_DA @@ -0,0 +1 @@ +# CONFIG_BLK_CPQ_CISS_DA is not set diff --git a/baseconfig/s390x/CONFIG_BLK_DEV_3W_XXXX_RAID b/baseconfig/s390x/CONFIG_BLK_DEV_3W_XXXX_RAID new file mode 100644 index 000000000..0fbe95ebc --- /dev/null +++ b/baseconfig/s390x/CONFIG_BLK_DEV_3W_XXXX_RAID @@ -0,0 +1 @@ +# CONFIG_BLK_DEV_3W_XXXX_RAID is not set diff --git a/baseconfig/s390x/CONFIG_BLK_DEV_DAC960 b/baseconfig/s390x/CONFIG_BLK_DEV_DAC960 new file mode 100644 index 000000000..4cc1142cb --- /dev/null +++ b/baseconfig/s390x/CONFIG_BLK_DEV_DAC960 @@ -0,0 +1 @@ +# CONFIG_BLK_DEV_DAC960 is not set diff --git a/baseconfig/s390x/CONFIG_BLK_DEV_SKD b/baseconfig/s390x/CONFIG_BLK_DEV_SKD new file mode 100644 index 000000000..cc05158fb --- /dev/null +++ b/baseconfig/s390x/CONFIG_BLK_DEV_SKD @@ -0,0 +1 @@ +# CONFIG_BLK_DEV_SKD is not set diff --git a/baseconfig/s390x/CONFIG_BLK_DEV_SX8 b/baseconfig/s390x/CONFIG_BLK_DEV_SX8 new file mode 100644 index 000000000..76e0342ed --- /dev/null +++ b/baseconfig/s390x/CONFIG_BLK_DEV_SX8 @@ -0,0 +1 @@ +# CONFIG_BLK_DEV_SX8 is not set diff --git a/baseconfig/s390x/CONFIG_BLK_DEV_UMEM b/baseconfig/s390x/CONFIG_BLK_DEV_UMEM new file mode 100644 index 000000000..6265b8162 --- /dev/null +++ b/baseconfig/s390x/CONFIG_BLK_DEV_UMEM @@ -0,0 +1 @@ +# CONFIG_BLK_DEV_UMEM is not set diff --git a/baseconfig/s390x/CONFIG_CAN b/baseconfig/s390x/CONFIG_CAN new file mode 100644 index 000000000..37ca11c95 --- /dev/null +++ b/baseconfig/s390x/CONFIG_CAN @@ -0,0 +1 @@ +# CONFIG_CAN is not set diff --git a/baseconfig/s390x/CONFIG_CHARGER_SMB347 b/baseconfig/s390x/CONFIG_CHARGER_SMB347 new file mode 100644 index 000000000..d7b8424a8 --- /dev/null +++ b/baseconfig/s390x/CONFIG_CHARGER_SMB347 @@ -0,0 +1 @@ +# CONFIG_CHARGER_SMB347 is not set diff --git a/baseconfig/s390x/CONFIG_DMADEVICES b/baseconfig/s390x/CONFIG_DMADEVICES new file mode 100644 index 000000000..6596e80fc --- /dev/null +++ b/baseconfig/s390x/CONFIG_DMADEVICES @@ -0,0 +1 @@ +# CONFIG_DMADEVICES is not set diff --git a/baseconfig/s390x/CONFIG_DNET b/baseconfig/s390x/CONFIG_DNET new file mode 100644 index 000000000..f8ac68f29 --- /dev/null +++ b/baseconfig/s390x/CONFIG_DNET @@ -0,0 +1 @@ +# CONFIG_DNET is not set diff --git a/baseconfig/s390x/CONFIG_DP83640_PHY b/baseconfig/s390x/CONFIG_DP83640_PHY new file mode 100644 index 000000000..24a3a8f31 --- /dev/null +++ b/baseconfig/s390x/CONFIG_DP83640_PHY @@ -0,0 +1 @@ +# CONFIG_DP83640_PHY is not set diff --git a/baseconfig/s390x/CONFIG_ECHO b/baseconfig/s390x/CONFIG_ECHO new file mode 100644 index 000000000..b84a07b07 --- /dev/null +++ b/baseconfig/s390x/CONFIG_ECHO @@ -0,0 +1 @@ +# CONFIG_ECHO is not set diff --git a/baseconfig/s390x/CONFIG_ENCLOSURE_SERVICES b/baseconfig/s390x/CONFIG_ENCLOSURE_SERVICES new file mode 100644 index 000000000..b463632aa --- /dev/null +++ b/baseconfig/s390x/CONFIG_ENCLOSURE_SERVICES @@ -0,0 +1 @@ +# CONFIG_ENCLOSURE_SERVICES is not set diff --git a/baseconfig/s390x/CONFIG_ETHOC b/baseconfig/s390x/CONFIG_ETHOC new file mode 100644 index 000000000..15370ca02 --- /dev/null +++ b/baseconfig/s390x/CONFIG_ETHOC @@ -0,0 +1 @@ +# CONFIG_ETHOC is not set diff --git a/baseconfig/s390x/CONFIG_FDDI b/baseconfig/s390x/CONFIG_FDDI new file mode 100644 index 000000000..e13f968a5 --- /dev/null +++ b/baseconfig/s390x/CONFIG_FDDI @@ -0,0 +1 @@ +# CONFIG_FDDI is not set diff --git a/baseconfig/s390x/CONFIG_FEALNX b/baseconfig/s390x/CONFIG_FEALNX new file mode 100644 index 000000000..4cca6a26d --- /dev/null +++ b/baseconfig/s390x/CONFIG_FEALNX @@ -0,0 +1 @@ +# CONFIG_FEALNX is not set diff --git a/baseconfig/s390x/CONFIG_GENWQE b/baseconfig/s390x/CONFIG_GENWQE new file mode 100644 index 000000000..f1f996ac1 --- /dev/null +++ b/baseconfig/s390x/CONFIG_GENWQE @@ -0,0 +1 @@ +CONFIG_GENWQE=m diff --git a/baseconfig/s390x/CONFIG_GENWQE_PLATFORM_ERROR_RECOVERY b/baseconfig/s390x/CONFIG_GENWQE_PLATFORM_ERROR_RECOVERY new file mode 100644 index 000000000..b7d077774 --- /dev/null +++ b/baseconfig/s390x/CONFIG_GENWQE_PLATFORM_ERROR_RECOVERY @@ -0,0 +1 @@ +CONFIG_GENWQE_PLATFORM_ERROR_RECOVERY=0 diff --git a/baseconfig/s390x/CONFIG_GPIOLIB b/baseconfig/s390x/CONFIG_GPIOLIB new file mode 100644 index 000000000..6e685b2be --- /dev/null +++ b/baseconfig/s390x/CONFIG_GPIOLIB @@ -0,0 +1 @@ +# CONFIG_GPIOLIB is not set diff --git a/baseconfig/s390x/CONFIG_HID b/baseconfig/s390x/CONFIG_HID index 15d84482e..befe82811 100644 --- a/baseconfig/s390x/CONFIG_HID +++ b/baseconfig/s390x/CONFIG_HID @@ -1 +1 @@ -CONFIG_HID=m +# CONFIG_HID is not set diff --git a/baseconfig/s390x/CONFIG_HIPPI b/baseconfig/s390x/CONFIG_HIPPI new file mode 100644 index 000000000..8f4d0983a --- /dev/null +++ b/baseconfig/s390x/CONFIG_HIPPI @@ -0,0 +1 @@ +# CONFIG_HIPPI is not set diff --git a/baseconfig/s390x/CONFIG_HWMON b/baseconfig/s390x/CONFIG_HWMON index d67f2b72f..65c3ac9f5 100644 --- a/baseconfig/s390x/CONFIG_HWMON +++ b/baseconfig/s390x/CONFIG_HWMON @@ -1 +1 @@ -CONFIG_HWMON=m +# CONFIG_HWMON is not set diff --git a/baseconfig/s390x/CONFIG_I2C_ALGOBIT b/baseconfig/s390x/CONFIG_I2C_ALGOBIT new file mode 100644 index 000000000..e374ebd3c --- /dev/null +++ b/baseconfig/s390x/CONFIG_I2C_ALGOBIT @@ -0,0 +1 @@ +# CONFIG_I2C_ALGOBIT is not set diff --git a/baseconfig/s390x/CONFIG_I2C_ALGOPCA b/baseconfig/s390x/CONFIG_I2C_ALGOPCA new file mode 100644 index 000000000..545b72f08 --- /dev/null +++ b/baseconfig/s390x/CONFIG_I2C_ALGOPCA @@ -0,0 +1 @@ +# CONFIG_I2C_ALGOPCA is not set diff --git a/baseconfig/s390x/CONFIG_I2C_ALGOPCF b/baseconfig/s390x/CONFIG_I2C_ALGOPCF new file mode 100644 index 000000000..cdb960f9c --- /dev/null +++ b/baseconfig/s390x/CONFIG_I2C_ALGOPCF @@ -0,0 +1 @@ +# CONFIG_I2C_ALGOPCF is not set diff --git a/baseconfig/s390x/CONFIG_I2C_CHARDEV b/baseconfig/s390x/CONFIG_I2C_CHARDEV new file mode 100644 index 000000000..78053559f --- /dev/null +++ b/baseconfig/s390x/CONFIG_I2C_CHARDEV @@ -0,0 +1 @@ +# CONFIG_I2C_CHARDEV is not set diff --git a/baseconfig/s390x/CONFIG_I2C_COMPAT b/baseconfig/s390x/CONFIG_I2C_COMPAT new file mode 100644 index 000000000..c82c4eb35 --- /dev/null +++ b/baseconfig/s390x/CONFIG_I2C_COMPAT @@ -0,0 +1 @@ +# CONFIG_I2C_COMPAT is not set diff --git a/baseconfig/s390x/CONFIG_I2C_DESIGNWARE_PCI b/baseconfig/s390x/CONFIG_I2C_DESIGNWARE_PCI new file mode 100644 index 000000000..7f371b4dc --- /dev/null +++ b/baseconfig/s390x/CONFIG_I2C_DESIGNWARE_PCI @@ -0,0 +1 @@ +# CONFIG_I2C_DESIGNWARE_PCI is not set diff --git a/baseconfig/s390x/CONFIG_I2C_HID b/baseconfig/s390x/CONFIG_I2C_HID new file mode 100644 index 000000000..30ca18a84 --- /dev/null +++ b/baseconfig/s390x/CONFIG_I2C_HID @@ -0,0 +1 @@ +# CONFIG_I2C_HID is not set diff --git a/baseconfig/s390x/CONFIG_I2C_PCA_PLATFORM b/baseconfig/s390x/CONFIG_I2C_PCA_PLATFORM new file mode 100644 index 000000000..e371d1a8e --- /dev/null +++ b/baseconfig/s390x/CONFIG_I2C_PCA_PLATFORM @@ -0,0 +1 @@ +# CONFIG_I2C_PCA_PLATFORM is not set diff --git a/baseconfig/s390x/CONFIG_I2C_SIMTEC b/baseconfig/s390x/CONFIG_I2C_SIMTEC new file mode 100644 index 000000000..1fe634955 --- /dev/null +++ b/baseconfig/s390x/CONFIG_I2C_SIMTEC @@ -0,0 +1 @@ +# CONFIG_I2C_SIMTEC is not set diff --git a/baseconfig/s390x/CONFIG_I2C_SLAVE b/baseconfig/s390x/CONFIG_I2C_SLAVE new file mode 100644 index 000000000..364b36792 --- /dev/null +++ b/baseconfig/s390x/CONFIG_I2C_SLAVE @@ -0,0 +1 @@ +# CONFIG_I2C_SLAVE is not set diff --git a/baseconfig/s390x/CONFIG_I6300ESB_WDT b/baseconfig/s390x/CONFIG_I6300ESB_WDT new file mode 100644 index 000000000..8c7bc0f55 --- /dev/null +++ b/baseconfig/s390x/CONFIG_I6300ESB_WDT @@ -0,0 +1 @@ +# CONFIG_I6300ESB_WDT is not set diff --git a/baseconfig/s390x/CONFIG_IIO b/baseconfig/s390x/CONFIG_IIO new file mode 100644 index 000000000..80d289815 --- /dev/null +++ b/baseconfig/s390x/CONFIG_IIO @@ -0,0 +1 @@ +# CONFIG_IIO is not set diff --git a/baseconfig/s390x/CONFIG_INFINIBAND_CXGB3 b/baseconfig/s390x/CONFIG_INFINIBAND_CXGB3 new file mode 100644 index 000000000..f06c87360 --- /dev/null +++ b/baseconfig/s390x/CONFIG_INFINIBAND_CXGB3 @@ -0,0 +1 @@ +# CONFIG_INFINIBAND_CXGB3 is not set diff --git a/baseconfig/s390x/CONFIG_INFINIBAND_CXGB4 b/baseconfig/s390x/CONFIG_INFINIBAND_CXGB4 new file mode 100644 index 000000000..40ff06894 --- /dev/null +++ b/baseconfig/s390x/CONFIG_INFINIBAND_CXGB4 @@ -0,0 +1 @@ +# CONFIG_INFINIBAND_CXGB4 is not set diff --git a/baseconfig/s390x/CONFIG_INFINIBAND_MTHCA b/baseconfig/s390x/CONFIG_INFINIBAND_MTHCA new file mode 100644 index 000000000..a134e36a3 --- /dev/null +++ b/baseconfig/s390x/CONFIG_INFINIBAND_MTHCA @@ -0,0 +1 @@ +# CONFIG_INFINIBAND_MTHCA is not set diff --git a/baseconfig/s390x/CONFIG_INFINIBAND_NES b/baseconfig/s390x/CONFIG_INFINIBAND_NES new file mode 100644 index 000000000..eee505590 --- /dev/null +++ b/baseconfig/s390x/CONFIG_INFINIBAND_NES @@ -0,0 +1 @@ +# CONFIG_INFINIBAND_NES is not set diff --git a/baseconfig/s390x/CONFIG_INFINIBAND_OCRDMA b/baseconfig/s390x/CONFIG_INFINIBAND_OCRDMA new file mode 100644 index 000000000..12ff35161 --- /dev/null +++ b/baseconfig/s390x/CONFIG_INFINIBAND_OCRDMA @@ -0,0 +1 @@ +# CONFIG_INFINIBAND_OCRDMA is not set diff --git a/baseconfig/s390x/CONFIG_INFINIBAND_QIB b/baseconfig/s390x/CONFIG_INFINIBAND_QIB new file mode 100644 index 000000000..591f4e962 --- /dev/null +++ b/baseconfig/s390x/CONFIG_INFINIBAND_QIB @@ -0,0 +1 @@ +# CONFIG_INFINIBAND_QIB is not set diff --git a/baseconfig/s390x/CONFIG_INPUT_FF_MEMLESS b/baseconfig/s390x/CONFIG_INPUT_FF_MEMLESS new file mode 100644 index 000000000..340af6632 --- /dev/null +++ b/baseconfig/s390x/CONFIG_INPUT_FF_MEMLESS @@ -0,0 +1 @@ +# CONFIG_INPUT_FF_MEMLESS is not set diff --git a/baseconfig/s390x/CONFIG_INPUT_MOUSEDEV b/baseconfig/s390x/CONFIG_INPUT_MOUSEDEV new file mode 100644 index 000000000..1afcd1e58 --- /dev/null +++ b/baseconfig/s390x/CONFIG_INPUT_MOUSEDEV @@ -0,0 +1 @@ +# CONFIG_INPUT_MOUSEDEV is not set diff --git a/baseconfig/s390x/CONFIG_INPUT_POLLDEV b/baseconfig/s390x/CONFIG_INPUT_POLLDEV new file mode 100644 index 000000000..3d67d3920 --- /dev/null +++ b/baseconfig/s390x/CONFIG_INPUT_POLLDEV @@ -0,0 +1 @@ +# CONFIG_INPUT_POLLDEV is not set diff --git a/baseconfig/s390x/CONFIG_INPUT_SPARSEKMAP b/baseconfig/s390x/CONFIG_INPUT_SPARSEKMAP new file mode 100644 index 000000000..dce3d03cc --- /dev/null +++ b/baseconfig/s390x/CONFIG_INPUT_SPARSEKMAP @@ -0,0 +1 @@ +# CONFIG_INPUT_SPARSEKMAP is not set diff --git a/baseconfig/s390x/CONFIG_IP1000 b/baseconfig/s390x/CONFIG_IP1000 new file mode 100644 index 000000000..179adb3cc --- /dev/null +++ b/baseconfig/s390x/CONFIG_IP1000 @@ -0,0 +1 @@ +# CONFIG_IP1000 is not set diff --git a/baseconfig/s390x/CONFIG_ISL29003 b/baseconfig/s390x/CONFIG_ISL29003 new file mode 100644 index 000000000..266725319 --- /dev/null +++ b/baseconfig/s390x/CONFIG_ISL29003 @@ -0,0 +1 @@ +# CONFIG_ISL29003 is not set diff --git a/baseconfig/s390x/CONFIG_ISL29020 b/baseconfig/s390x/CONFIG_ISL29020 new file mode 100644 index 000000000..abf4d72ad --- /dev/null +++ b/baseconfig/s390x/CONFIG_ISL29020 @@ -0,0 +1 @@ +# CONFIG_ISL29020 is not set diff --git a/baseconfig/s390x/CONFIG_JME b/baseconfig/s390x/CONFIG_JME new file mode 100644 index 000000000..63c5aeb65 --- /dev/null +++ b/baseconfig/s390x/CONFIG_JME @@ -0,0 +1 @@ +# CONFIG_JME is not set diff --git a/baseconfig/s390x/CONFIG_MEGARAID_LEGACY b/baseconfig/s390x/CONFIG_MEGARAID_LEGACY new file mode 100644 index 000000000..3109de7c1 --- /dev/null +++ b/baseconfig/s390x/CONFIG_MEGARAID_LEGACY @@ -0,0 +1 @@ +# CONFIG_MEGARAID_LEGACY is not set diff --git a/baseconfig/s390x/CONFIG_MEGARAID_NEWGEN b/baseconfig/s390x/CONFIG_MEGARAID_NEWGEN new file mode 100644 index 000000000..a132e5f39 --- /dev/null +++ b/baseconfig/s390x/CONFIG_MEGARAID_NEWGEN @@ -0,0 +1 @@ +# CONFIG_MEGARAID_NEWGEN is not set diff --git a/baseconfig/s390x/CONFIG_MEGARAID_SAS b/baseconfig/s390x/CONFIG_MEGARAID_SAS new file mode 100644 index 000000000..94dae93a5 --- /dev/null +++ b/baseconfig/s390x/CONFIG_MEGARAID_SAS @@ -0,0 +1 @@ +# CONFIG_MEGARAID_SAS is not set diff --git a/baseconfig/s390x/CONFIG_MFD_CORE b/baseconfig/s390x/CONFIG_MFD_CORE index c8855e8a0..61d91aa6e 100644 --- a/baseconfig/s390x/CONFIG_MFD_CORE +++ b/baseconfig/s390x/CONFIG_MFD_CORE @@ -1 +1 @@ -CONFIG_MFD_CORE=m +# CONFIG_MFD_CORE is not set diff --git a/baseconfig/s390x/CONFIG_MLXSW_CORE b/baseconfig/s390x/CONFIG_MLXSW_CORE new file mode 100644 index 000000000..31431cecf --- /dev/null +++ b/baseconfig/s390x/CONFIG_MLXSW_CORE @@ -0,0 +1 @@ +# CONFIG_MLXSW_CORE is not set diff --git a/baseconfig/s390x/CONFIG_NET_CADENCE b/baseconfig/s390x/CONFIG_NET_CADENCE new file mode 100644 index 000000000..8d2c645c2 --- /dev/null +++ b/baseconfig/s390x/CONFIG_NET_CADENCE @@ -0,0 +1 @@ +# CONFIG_NET_CADENCE is not set diff --git a/baseconfig/s390x/CONFIG_NET_PACKET_ENGINE b/baseconfig/s390x/CONFIG_NET_PACKET_ENGINE new file mode 100644 index 000000000..3ed79f437 --- /dev/null +++ b/baseconfig/s390x/CONFIG_NET_PACKET_ENGINE @@ -0,0 +1 @@ +# CONFIG_NET_PACKET_ENGINE is not set diff --git a/baseconfig/s390x/CONFIG_NET_VENDOR_3COM b/baseconfig/s390x/CONFIG_NET_VENDOR_3COM new file mode 100644 index 000000000..ed6108c18 --- /dev/null +++ b/baseconfig/s390x/CONFIG_NET_VENDOR_3COM @@ -0,0 +1 @@ +# CONFIG_NET_VENDOR_3COM is not set diff --git a/baseconfig/s390x/CONFIG_NET_VENDOR_8390 b/baseconfig/s390x/CONFIG_NET_VENDOR_8390 new file mode 100644 index 000000000..d0b9f3592 --- /dev/null +++ b/baseconfig/s390x/CONFIG_NET_VENDOR_8390 @@ -0,0 +1 @@ +# CONFIG_NET_VENDOR_8390 is not set diff --git a/baseconfig/s390x/CONFIG_NET_VENDOR_ADAPTEC b/baseconfig/s390x/CONFIG_NET_VENDOR_ADAPTEC new file mode 100644 index 000000000..c96958732 --- /dev/null +++ b/baseconfig/s390x/CONFIG_NET_VENDOR_ADAPTEC @@ -0,0 +1 @@ +# CONFIG_NET_VENDOR_ADAPTEC is not set diff --git a/baseconfig/s390x/CONFIG_NET_VENDOR_AGERE b/baseconfig/s390x/CONFIG_NET_VENDOR_AGERE new file mode 100644 index 000000000..3647271ce --- /dev/null +++ b/baseconfig/s390x/CONFIG_NET_VENDOR_AGERE @@ -0,0 +1 @@ +# CONFIG_NET_VENDOR_AGERE is not set diff --git a/baseconfig/s390x/CONFIG_NET_VENDOR_ALTEON b/baseconfig/s390x/CONFIG_NET_VENDOR_ALTEON new file mode 100644 index 000000000..88beca48e --- /dev/null +++ b/baseconfig/s390x/CONFIG_NET_VENDOR_ALTEON @@ -0,0 +1 @@ +# CONFIG_NET_VENDOR_ALTEON is not set diff --git a/baseconfig/s390x/CONFIG_NET_VENDOR_AMAZON b/baseconfig/s390x/CONFIG_NET_VENDOR_AMAZON new file mode 100644 index 000000000..707bb5a54 --- /dev/null +++ b/baseconfig/s390x/CONFIG_NET_VENDOR_AMAZON @@ -0,0 +1 @@ +# CONFIG_NET_VENDOR_AMAZON is not set diff --git a/baseconfig/s390x/CONFIG_NET_VENDOR_AMD b/baseconfig/s390x/CONFIG_NET_VENDOR_AMD new file mode 100644 index 000000000..606381824 --- /dev/null +++ b/baseconfig/s390x/CONFIG_NET_VENDOR_AMD @@ -0,0 +1 @@ +# CONFIG_NET_VENDOR_AMD is not set diff --git a/baseconfig/s390x/CONFIG_NET_VENDOR_ATHEROS b/baseconfig/s390x/CONFIG_NET_VENDOR_ATHEROS new file mode 100644 index 000000000..9a99ac7fc --- /dev/null +++ b/baseconfig/s390x/CONFIG_NET_VENDOR_ATHEROS @@ -0,0 +1 @@ +# CONFIG_NET_VENDOR_ATHEROS is not set diff --git a/baseconfig/s390x/CONFIG_NET_VENDOR_BROADCOM b/baseconfig/s390x/CONFIG_NET_VENDOR_BROADCOM new file mode 100644 index 000000000..7cd9cb32f --- /dev/null +++ b/baseconfig/s390x/CONFIG_NET_VENDOR_BROADCOM @@ -0,0 +1 @@ +# CONFIG_NET_VENDOR_BROADCOM is not set diff --git a/baseconfig/s390x/CONFIG_NET_VENDOR_BROCADE b/baseconfig/s390x/CONFIG_NET_VENDOR_BROCADE new file mode 100644 index 000000000..fed5e48a4 --- /dev/null +++ b/baseconfig/s390x/CONFIG_NET_VENDOR_BROCADE @@ -0,0 +1 @@ +# CONFIG_NET_VENDOR_BROCADE is not set diff --git a/baseconfig/s390x/CONFIG_NET_VENDOR_CHELSIO b/baseconfig/s390x/CONFIG_NET_VENDOR_CHELSIO new file mode 100644 index 000000000..71374072a --- /dev/null +++ b/baseconfig/s390x/CONFIG_NET_VENDOR_CHELSIO @@ -0,0 +1 @@ +# CONFIG_NET_VENDOR_CHELSIO is not set diff --git a/baseconfig/s390x/CONFIG_NET_VENDOR_CISCO b/baseconfig/s390x/CONFIG_NET_VENDOR_CISCO new file mode 100644 index 000000000..7b4bdaa25 --- /dev/null +++ b/baseconfig/s390x/CONFIG_NET_VENDOR_CISCO @@ -0,0 +1 @@ +# CONFIG_NET_VENDOR_CISCO is not set diff --git a/baseconfig/s390x/CONFIG_NET_VENDOR_DEC b/baseconfig/s390x/CONFIG_NET_VENDOR_DEC new file mode 100644 index 000000000..7c3a697fb --- /dev/null +++ b/baseconfig/s390x/CONFIG_NET_VENDOR_DEC @@ -0,0 +1 @@ +# CONFIG_NET_VENDOR_DEC is not set diff --git a/baseconfig/s390x/CONFIG_NET_VENDOR_DLINK b/baseconfig/s390x/CONFIG_NET_VENDOR_DLINK new file mode 100644 index 000000000..181e6a008 --- /dev/null +++ b/baseconfig/s390x/CONFIG_NET_VENDOR_DLINK @@ -0,0 +1 @@ +# CONFIG_NET_VENDOR_DLINK is not set diff --git a/baseconfig/s390x/CONFIG_NET_VENDOR_EMULEX b/baseconfig/s390x/CONFIG_NET_VENDOR_EMULEX new file mode 100644 index 000000000..e48620d8d --- /dev/null +++ b/baseconfig/s390x/CONFIG_NET_VENDOR_EMULEX @@ -0,0 +1 @@ +# CONFIG_NET_VENDOR_EMULEX is not set diff --git a/baseconfig/s390x/CONFIG_NET_VENDOR_EXAR b/baseconfig/s390x/CONFIG_NET_VENDOR_EXAR new file mode 100644 index 000000000..90a6a31bb --- /dev/null +++ b/baseconfig/s390x/CONFIG_NET_VENDOR_EXAR @@ -0,0 +1 @@ +# CONFIG_NET_VENDOR_EXAR is not set diff --git a/baseconfig/s390x/CONFIG_NET_VENDOR_HP b/baseconfig/s390x/CONFIG_NET_VENDOR_HP new file mode 100644 index 000000000..30f3b4050 --- /dev/null +++ b/baseconfig/s390x/CONFIG_NET_VENDOR_HP @@ -0,0 +1 @@ +# CONFIG_NET_VENDOR_HP is not set diff --git a/baseconfig/s390x/CONFIG_NET_VENDOR_MICREL b/baseconfig/s390x/CONFIG_NET_VENDOR_MICREL new file mode 100644 index 000000000..d359479e3 --- /dev/null +++ b/baseconfig/s390x/CONFIG_NET_VENDOR_MICREL @@ -0,0 +1 @@ +# CONFIG_NET_VENDOR_MICREL is not set diff --git a/baseconfig/s390x/CONFIG_NET_VENDOR_MYRI b/baseconfig/s390x/CONFIG_NET_VENDOR_MYRI new file mode 100644 index 000000000..03d6c850f --- /dev/null +++ b/baseconfig/s390x/CONFIG_NET_VENDOR_MYRI @@ -0,0 +1 @@ +# CONFIG_NET_VENDOR_MYRI is not set diff --git a/baseconfig/s390x/CONFIG_NET_VENDOR_NETRONOME b/baseconfig/s390x/CONFIG_NET_VENDOR_NETRONOME new file mode 100644 index 000000000..d08e277d0 --- /dev/null +++ b/baseconfig/s390x/CONFIG_NET_VENDOR_NETRONOME @@ -0,0 +1 @@ +# CONFIG_NET_VENDOR_NETRONOME is not set diff --git a/baseconfig/s390x/CONFIG_NET_VENDOR_NVIDIA b/baseconfig/s390x/CONFIG_NET_VENDOR_NVIDIA new file mode 100644 index 000000000..27ee4d58c --- /dev/null +++ b/baseconfig/s390x/CONFIG_NET_VENDOR_NVIDIA @@ -0,0 +1 @@ +# CONFIG_NET_VENDOR_NVIDIA is not set diff --git a/baseconfig/s390x/CONFIG_NET_VENDOR_OKI b/baseconfig/s390x/CONFIG_NET_VENDOR_OKI new file mode 100644 index 000000000..e6b6bc896 --- /dev/null +++ b/baseconfig/s390x/CONFIG_NET_VENDOR_OKI @@ -0,0 +1 @@ +# CONFIG_NET_VENDOR_OKI is not set diff --git a/baseconfig/s390x/CONFIG_NET_VENDOR_QLOGIC b/baseconfig/s390x/CONFIG_NET_VENDOR_QLOGIC new file mode 100644 index 000000000..700f6a5e2 --- /dev/null +++ b/baseconfig/s390x/CONFIG_NET_VENDOR_QLOGIC @@ -0,0 +1 @@ +# CONFIG_NET_VENDOR_QLOGIC is not set diff --git a/baseconfig/s390x/CONFIG_NET_VENDOR_RDC b/baseconfig/s390x/CONFIG_NET_VENDOR_RDC new file mode 100644 index 000000000..4d84f77dc --- /dev/null +++ b/baseconfig/s390x/CONFIG_NET_VENDOR_RDC @@ -0,0 +1 @@ +# CONFIG_NET_VENDOR_RDC is not set diff --git a/baseconfig/s390x/CONFIG_NET_VENDOR_REALTEK b/baseconfig/s390x/CONFIG_NET_VENDOR_REALTEK new file mode 100644 index 000000000..f21c4dcb0 --- /dev/null +++ b/baseconfig/s390x/CONFIG_NET_VENDOR_REALTEK @@ -0,0 +1 @@ +# CONFIG_NET_VENDOR_REALTEK is not set diff --git a/baseconfig/s390x/CONFIG_NET_VENDOR_ROCKER b/baseconfig/s390x/CONFIG_NET_VENDOR_ROCKER new file mode 100644 index 000000000..ab286d286 --- /dev/null +++ b/baseconfig/s390x/CONFIG_NET_VENDOR_ROCKER @@ -0,0 +1 @@ +# CONFIG_NET_VENDOR_ROCKER is not set diff --git a/baseconfig/s390x/CONFIG_NET_VENDOR_SEEQ b/baseconfig/s390x/CONFIG_NET_VENDOR_SEEQ new file mode 100644 index 000000000..6fe8245eb --- /dev/null +++ b/baseconfig/s390x/CONFIG_NET_VENDOR_SEEQ @@ -0,0 +1 @@ +# CONFIG_NET_VENDOR_SEEQ is not set diff --git a/baseconfig/s390x/CONFIG_NET_VENDOR_SILAN b/baseconfig/s390x/CONFIG_NET_VENDOR_SILAN new file mode 100644 index 000000000..07a129493 --- /dev/null +++ b/baseconfig/s390x/CONFIG_NET_VENDOR_SILAN @@ -0,0 +1 @@ +# CONFIG_NET_VENDOR_SILAN is not set diff --git a/baseconfig/s390x/CONFIG_NET_VENDOR_SIS b/baseconfig/s390x/CONFIG_NET_VENDOR_SIS new file mode 100644 index 000000000..5ff2e309b --- /dev/null +++ b/baseconfig/s390x/CONFIG_NET_VENDOR_SIS @@ -0,0 +1 @@ +# CONFIG_NET_VENDOR_SIS is not set diff --git a/baseconfig/s390x/CONFIG_NET_VENDOR_SMSC b/baseconfig/s390x/CONFIG_NET_VENDOR_SMSC new file mode 100644 index 000000000..4e3e7aec8 --- /dev/null +++ b/baseconfig/s390x/CONFIG_NET_VENDOR_SMSC @@ -0,0 +1 @@ +# CONFIG_NET_VENDOR_SMSC is not set diff --git a/baseconfig/s390x/CONFIG_NET_VENDOR_STMICRO b/baseconfig/s390x/CONFIG_NET_VENDOR_STMICRO new file mode 100644 index 000000000..040f835c6 --- /dev/null +++ b/baseconfig/s390x/CONFIG_NET_VENDOR_STMICRO @@ -0,0 +1 @@ +# CONFIG_NET_VENDOR_STMICRO is not set diff --git a/baseconfig/s390x/CONFIG_NET_VENDOR_SUN b/baseconfig/s390x/CONFIG_NET_VENDOR_SUN new file mode 100644 index 000000000..a4ce77875 --- /dev/null +++ b/baseconfig/s390x/CONFIG_NET_VENDOR_SUN @@ -0,0 +1 @@ +# CONFIG_NET_VENDOR_SUN is not set diff --git a/baseconfig/s390x/CONFIG_NET_VENDOR_TEHUTI b/baseconfig/s390x/CONFIG_NET_VENDOR_TEHUTI new file mode 100644 index 000000000..7c0c6ee39 --- /dev/null +++ b/baseconfig/s390x/CONFIG_NET_VENDOR_TEHUTI @@ -0,0 +1 @@ +# CONFIG_NET_VENDOR_TEHUTI is not set diff --git a/baseconfig/s390x/CONFIG_NET_VENDOR_TI b/baseconfig/s390x/CONFIG_NET_VENDOR_TI new file mode 100644 index 000000000..a9395e8cc --- /dev/null +++ b/baseconfig/s390x/CONFIG_NET_VENDOR_TI @@ -0,0 +1 @@ +# CONFIG_NET_VENDOR_TI is not set diff --git a/baseconfig/s390x/CONFIG_NET_VENDOR_WIZNET b/baseconfig/s390x/CONFIG_NET_VENDOR_WIZNET new file mode 100644 index 000000000..08efd75ae --- /dev/null +++ b/baseconfig/s390x/CONFIG_NET_VENDOR_WIZNET @@ -0,0 +1 @@ +# CONFIG_NET_VENDOR_WIZNET is not set diff --git a/baseconfig/s390x/CONFIG_NET_VENDOR_XIRCOM b/baseconfig/s390x/CONFIG_NET_VENDOR_XIRCOM new file mode 100644 index 000000000..4c2e6f9fd --- /dev/null +++ b/baseconfig/s390x/CONFIG_NET_VENDOR_XIRCOM @@ -0,0 +1 @@ +# CONFIG_NET_VENDOR_XIRCOM is not set diff --git a/baseconfig/s390x/CONFIG_NEW_LEDS b/baseconfig/s390x/CONFIG_NEW_LEDS new file mode 100644 index 000000000..3d1c33f73 --- /dev/null +++ b/baseconfig/s390x/CONFIG_NEW_LEDS @@ -0,0 +1 @@ +# CONFIG_NEW_LEDS is not set diff --git a/baseconfig/s390x/CONFIG_NFC b/baseconfig/s390x/CONFIG_NFC new file mode 100644 index 000000000..73cd9395e --- /dev/null +++ b/baseconfig/s390x/CONFIG_NFC @@ -0,0 +1 @@ +# CONFIG_NFC is not set diff --git a/baseconfig/s390x/CONFIG_NOZOMI b/baseconfig/s390x/CONFIG_NOZOMI new file mode 100644 index 000000000..35ef1afd5 --- /dev/null +++ b/baseconfig/s390x/CONFIG_NOZOMI @@ -0,0 +1 @@ +# CONFIG_NOZOMI is not set diff --git a/baseconfig/s390x/CONFIG_N_GSM b/baseconfig/s390x/CONFIG_N_GSM new file mode 100644 index 000000000..e00ec7e28 --- /dev/null +++ b/baseconfig/s390x/CONFIG_N_GSM @@ -0,0 +1 @@ +# CONFIG_N_GSM is not set diff --git a/baseconfig/s390x/CONFIG_PCIPCWATCHDOG b/baseconfig/s390x/CONFIG_PCIPCWATCHDOG new file mode 100644 index 000000000..717da169d --- /dev/null +++ b/baseconfig/s390x/CONFIG_PCIPCWATCHDOG @@ -0,0 +1 @@ +# CONFIG_PCIPCWATCHDOG is not set diff --git a/baseconfig/s390x/CONFIG_PM_DEVFREQ b/baseconfig/s390x/CONFIG_PM_DEVFREQ new file mode 100644 index 000000000..ada3814f1 --- /dev/null +++ b/baseconfig/s390x/CONFIG_PM_DEVFREQ @@ -0,0 +1 @@ +# CONFIG_PM_DEVFREQ is not set diff --git a/baseconfig/s390x/CONFIG_POWER_RESET b/baseconfig/s390x/CONFIG_POWER_RESET new file mode 100644 index 000000000..ecb8fc786 --- /dev/null +++ b/baseconfig/s390x/CONFIG_POWER_RESET @@ -0,0 +1 @@ +# CONFIG_POWER_RESET is not set diff --git a/baseconfig/s390x/CONFIG_PWM b/baseconfig/s390x/CONFIG_PWM new file mode 100644 index 000000000..650ee865d --- /dev/null +++ b/baseconfig/s390x/CONFIG_PWM @@ -0,0 +1 @@ +# CONFIG_PWM is not set diff --git a/baseconfig/s390x/CONFIG_R3964 b/baseconfig/s390x/CONFIG_R3964 new file mode 100644 index 000000000..cca74303c --- /dev/null +++ b/baseconfig/s390x/CONFIG_R3964 @@ -0,0 +1 @@ +# CONFIG_R3964 is not set diff --git a/baseconfig/s390x/CONFIG_RESET_CONTROLLER b/baseconfig/s390x/CONFIG_RESET_CONTROLLER new file mode 100644 index 000000000..0f97f3f23 --- /dev/null +++ b/baseconfig/s390x/CONFIG_RESET_CONTROLLER @@ -0,0 +1 @@ +# CONFIG_RESET_CONTROLLER is not set diff --git a/baseconfig/s390x/CONFIG_RFKILL b/baseconfig/s390x/CONFIG_RFKILL new file mode 100644 index 000000000..f840ecd26 --- /dev/null +++ b/baseconfig/s390x/CONFIG_RFKILL @@ -0,0 +1 @@ +# CONFIG_RFKILL is not set diff --git a/baseconfig/s390x/CONFIG_RMI4_CORE b/baseconfig/s390x/CONFIG_RMI4_CORE new file mode 100644 index 000000000..94b27f88c --- /dev/null +++ b/baseconfig/s390x/CONFIG_RMI4_CORE @@ -0,0 +1 @@ +# CONFIG_RMI4_CORE is not set diff --git a/baseconfig/s390x/CONFIG_RMI4_F03 b/baseconfig/s390x/CONFIG_RMI4_F03 deleted file mode 100644 index effd70c36..000000000 --- a/baseconfig/s390x/CONFIG_RMI4_F03 +++ /dev/null @@ -1 +0,0 @@ -# CONFIG_RMI4_F03 is not set diff --git a/baseconfig/s390x/CONFIG_SCSI_3W_9XXX b/baseconfig/s390x/CONFIG_SCSI_3W_9XXX new file mode 100644 index 000000000..00de6f158 --- /dev/null +++ b/baseconfig/s390x/CONFIG_SCSI_3W_9XXX @@ -0,0 +1 @@ +# CONFIG_SCSI_3W_9XXX is not set diff --git a/baseconfig/s390x/CONFIG_SCSI_3W_SAS b/baseconfig/s390x/CONFIG_SCSI_3W_SAS new file mode 100644 index 000000000..06a89f918 --- /dev/null +++ b/baseconfig/s390x/CONFIG_SCSI_3W_SAS @@ -0,0 +1 @@ +# CONFIG_SCSI_3W_SAS is not set diff --git a/baseconfig/s390x/CONFIG_SCSI_AACRAID b/baseconfig/s390x/CONFIG_SCSI_AACRAID new file mode 100644 index 000000000..5686e689d --- /dev/null +++ b/baseconfig/s390x/CONFIG_SCSI_AACRAID @@ -0,0 +1 @@ +# CONFIG_SCSI_AACRAID is not set diff --git a/baseconfig/s390x/CONFIG_SCSI_ACARD b/baseconfig/s390x/CONFIG_SCSI_ACARD new file mode 100644 index 000000000..d4002ddd0 --- /dev/null +++ b/baseconfig/s390x/CONFIG_SCSI_ACARD @@ -0,0 +1 @@ +# CONFIG_SCSI_ACARD is not set diff --git a/baseconfig/s390x/CONFIG_SCSI_AIC79XX b/baseconfig/s390x/CONFIG_SCSI_AIC79XX new file mode 100644 index 000000000..801fade38 --- /dev/null +++ b/baseconfig/s390x/CONFIG_SCSI_AIC79XX @@ -0,0 +1 @@ +# CONFIG_SCSI_AIC79XX is not set diff --git a/baseconfig/s390x/CONFIG_SCSI_AIC7XXX b/baseconfig/s390x/CONFIG_SCSI_AIC7XXX new file mode 100644 index 000000000..f305031d0 --- /dev/null +++ b/baseconfig/s390x/CONFIG_SCSI_AIC7XXX @@ -0,0 +1 @@ +# CONFIG_SCSI_AIC7XXX is not set diff --git a/baseconfig/s390x/CONFIG_SCSI_AM53C974 b/baseconfig/s390x/CONFIG_SCSI_AM53C974 new file mode 100644 index 000000000..ce64864a7 --- /dev/null +++ b/baseconfig/s390x/CONFIG_SCSI_AM53C974 @@ -0,0 +1 @@ +# CONFIG_SCSI_AM53C974 is not set diff --git a/baseconfig/s390x/CONFIG_SCSI_ARCMSR b/baseconfig/s390x/CONFIG_SCSI_ARCMSR new file mode 100644 index 000000000..425f89f74 --- /dev/null +++ b/baseconfig/s390x/CONFIG_SCSI_ARCMSR @@ -0,0 +1 @@ +# CONFIG_SCSI_ARCMSR is not set diff --git a/baseconfig/s390x/CONFIG_SCSI_BFA_FC b/baseconfig/s390x/CONFIG_SCSI_BFA_FC new file mode 100644 index 000000000..8568e1ec8 --- /dev/null +++ b/baseconfig/s390x/CONFIG_SCSI_BFA_FC @@ -0,0 +1 @@ +# CONFIG_SCSI_BFA_FC is not set diff --git a/baseconfig/s390x/CONFIG_SCSI_BNX2X_FCOE b/baseconfig/s390x/CONFIG_SCSI_BNX2X_FCOE new file mode 100644 index 000000000..5d36d085f --- /dev/null +++ b/baseconfig/s390x/CONFIG_SCSI_BNX2X_FCOE @@ -0,0 +1 @@ +# CONFIG_SCSI_BNX2X_FCOE is not set diff --git a/baseconfig/s390x/CONFIG_SCSI_BNX2_ISCSI b/baseconfig/s390x/CONFIG_SCSI_BNX2_ISCSI new file mode 100644 index 000000000..d400977df --- /dev/null +++ b/baseconfig/s390x/CONFIG_SCSI_BNX2_ISCSI @@ -0,0 +1 @@ +# CONFIG_SCSI_BNX2_ISCSI is not set diff --git a/baseconfig/s390x/CONFIG_SCSI_CHELSIO_FCOE b/baseconfig/s390x/CONFIG_SCSI_CHELSIO_FCOE new file mode 100644 index 000000000..ad8110de9 --- /dev/null +++ b/baseconfig/s390x/CONFIG_SCSI_CHELSIO_FCOE @@ -0,0 +1 @@ +# CONFIG_SCSI_CHELSIO_FCOE is not set diff --git a/baseconfig/s390x/CONFIG_SCSI_CXGB3_ISCSI b/baseconfig/s390x/CONFIG_SCSI_CXGB3_ISCSI new file mode 100644 index 000000000..d1e803258 --- /dev/null +++ b/baseconfig/s390x/CONFIG_SCSI_CXGB3_ISCSI @@ -0,0 +1 @@ +# CONFIG_SCSI_CXGB3_ISCSI is not set diff --git a/baseconfig/s390x/CONFIG_SCSI_CXGB4_ISCSI b/baseconfig/s390x/CONFIG_SCSI_CXGB4_ISCSI new file mode 100644 index 000000000..27a4bb985 --- /dev/null +++ b/baseconfig/s390x/CONFIG_SCSI_CXGB4_ISCSI @@ -0,0 +1 @@ +# CONFIG_SCSI_CXGB4_ISCSI is not set diff --git a/baseconfig/s390x/CONFIG_SCSI_DC395x b/baseconfig/s390x/CONFIG_SCSI_DC395x new file mode 100644 index 000000000..04438189f --- /dev/null +++ b/baseconfig/s390x/CONFIG_SCSI_DC395x @@ -0,0 +1 @@ +# CONFIG_SCSI_DC395x is not set diff --git a/baseconfig/s390x/CONFIG_SCSI_DH b/baseconfig/s390x/CONFIG_SCSI_DH new file mode 100644 index 000000000..e5b8a74ea --- /dev/null +++ b/baseconfig/s390x/CONFIG_SCSI_DH @@ -0,0 +1 @@ +# CONFIG_SCSI_DH is not set diff --git a/baseconfig/s390x/CONFIG_SCSI_DMX3191D b/baseconfig/s390x/CONFIG_SCSI_DMX3191D new file mode 100644 index 000000000..291b9196e --- /dev/null +++ b/baseconfig/s390x/CONFIG_SCSI_DMX3191D @@ -0,0 +1 @@ +# CONFIG_SCSI_DMX3191D is not set diff --git a/baseconfig/s390x/CONFIG_SCSI_ESAS2R b/baseconfig/s390x/CONFIG_SCSI_ESAS2R new file mode 100644 index 000000000..190cb39db --- /dev/null +++ b/baseconfig/s390x/CONFIG_SCSI_ESAS2R @@ -0,0 +1 @@ +# CONFIG_SCSI_ESAS2R is not set diff --git a/baseconfig/s390x/CONFIG_SCSI_HPSA b/baseconfig/s390x/CONFIG_SCSI_HPSA new file mode 100644 index 000000000..e2d1a299c --- /dev/null +++ b/baseconfig/s390x/CONFIG_SCSI_HPSA @@ -0,0 +1 @@ +# CONFIG_SCSI_HPSA is not set diff --git a/baseconfig/s390x/CONFIG_SCSI_HPTIOP b/baseconfig/s390x/CONFIG_SCSI_HPTIOP new file mode 100644 index 000000000..e92d4a91f --- /dev/null +++ b/baseconfig/s390x/CONFIG_SCSI_HPTIOP @@ -0,0 +1 @@ +# CONFIG_SCSI_HPTIOP is not set diff --git a/baseconfig/s390x/CONFIG_SCSI_INIA100 b/baseconfig/s390x/CONFIG_SCSI_INIA100 new file mode 100644 index 000000000..50f5dd42b --- /dev/null +++ b/baseconfig/s390x/CONFIG_SCSI_INIA100 @@ -0,0 +1 @@ +# CONFIG_SCSI_INIA100 is not set diff --git a/baseconfig/s390x/CONFIG_SCSI_INITIO b/baseconfig/s390x/CONFIG_SCSI_INITIO new file mode 100644 index 000000000..7abe6c2d9 --- /dev/null +++ b/baseconfig/s390x/CONFIG_SCSI_INITIO @@ -0,0 +1 @@ +# CONFIG_SCSI_INITIO is not set diff --git a/baseconfig/s390x/CONFIG_SCSI_IPS b/baseconfig/s390x/CONFIG_SCSI_IPS new file mode 100644 index 000000000..32e4abe67 --- /dev/null +++ b/baseconfig/s390x/CONFIG_SCSI_IPS @@ -0,0 +1 @@ +# CONFIG_SCSI_IPS is not set diff --git a/baseconfig/s390x/CONFIG_SCSI_LPFC b/baseconfig/s390x/CONFIG_SCSI_LPFC new file mode 100644 index 000000000..2bbb943d3 --- /dev/null +++ b/baseconfig/s390x/CONFIG_SCSI_LPFC @@ -0,0 +1 @@ +# CONFIG_SCSI_LPFC is not set diff --git a/baseconfig/s390x/CONFIG_SCSI_MPT2SAS b/baseconfig/s390x/CONFIG_SCSI_MPT2SAS new file mode 100644 index 000000000..aca3c70c3 --- /dev/null +++ b/baseconfig/s390x/CONFIG_SCSI_MPT2SAS @@ -0,0 +1 @@ +# CONFIG_SCSI_MPT2SAS is not set diff --git a/baseconfig/s390x/CONFIG_SCSI_MPT3SAS b/baseconfig/s390x/CONFIG_SCSI_MPT3SAS new file mode 100644 index 000000000..887255096 --- /dev/null +++ b/baseconfig/s390x/CONFIG_SCSI_MPT3SAS @@ -0,0 +1 @@ +# CONFIG_SCSI_MPT3SAS is not set diff --git a/baseconfig/s390x/CONFIG_SCSI_MVSAS b/baseconfig/s390x/CONFIG_SCSI_MVSAS new file mode 100644 index 000000000..dd17532f6 --- /dev/null +++ b/baseconfig/s390x/CONFIG_SCSI_MVSAS @@ -0,0 +1 @@ +# CONFIG_SCSI_MVSAS is not set diff --git a/baseconfig/s390x/CONFIG_SCSI_MVUMI b/baseconfig/s390x/CONFIG_SCSI_MVUMI new file mode 100644 index 000000000..a9b158a85 --- /dev/null +++ b/baseconfig/s390x/CONFIG_SCSI_MVUMI @@ -0,0 +1 @@ +# CONFIG_SCSI_MVUMI is not set diff --git a/baseconfig/s390x/CONFIG_SCSI_PM8001 b/baseconfig/s390x/CONFIG_SCSI_PM8001 new file mode 100644 index 000000000..ddafafd46 --- /dev/null +++ b/baseconfig/s390x/CONFIG_SCSI_PM8001 @@ -0,0 +1 @@ +# CONFIG_SCSI_PM8001 is not set diff --git a/baseconfig/s390x/CONFIG_SCSI_PMCRAID b/baseconfig/s390x/CONFIG_SCSI_PMCRAID new file mode 100644 index 000000000..91c798c43 --- /dev/null +++ b/baseconfig/s390x/CONFIG_SCSI_PMCRAID @@ -0,0 +1 @@ +# CONFIG_SCSI_PMCRAID is not set diff --git a/baseconfig/s390x/CONFIG_SCSI_QLA_FC b/baseconfig/s390x/CONFIG_SCSI_QLA_FC new file mode 100644 index 000000000..f8042094e --- /dev/null +++ b/baseconfig/s390x/CONFIG_SCSI_QLA_FC @@ -0,0 +1 @@ +# CONFIG_SCSI_QLA_FC is not set diff --git a/baseconfig/s390x/CONFIG_SCSI_QLA_ISCSI b/baseconfig/s390x/CONFIG_SCSI_QLA_ISCSI new file mode 100644 index 000000000..14ad3035a --- /dev/null +++ b/baseconfig/s390x/CONFIG_SCSI_QLA_ISCSI @@ -0,0 +1 @@ +# CONFIG_SCSI_QLA_ISCSI is not set diff --git a/baseconfig/s390x/CONFIG_SCSI_QLOGIC_1280 b/baseconfig/s390x/CONFIG_SCSI_QLOGIC_1280 new file mode 100644 index 000000000..98bf0179a --- /dev/null +++ b/baseconfig/s390x/CONFIG_SCSI_QLOGIC_1280 @@ -0,0 +1 @@ +# CONFIG_SCSI_QLOGIC_1280 is not set diff --git a/baseconfig/s390x/CONFIG_SCSI_SNIC b/baseconfig/s390x/CONFIG_SCSI_SNIC new file mode 100644 index 000000000..5fa55adc9 --- /dev/null +++ b/baseconfig/s390x/CONFIG_SCSI_SNIC @@ -0,0 +1 @@ +# CONFIG_SCSI_SNIC is not set diff --git a/baseconfig/s390x/CONFIG_SCSI_STEX b/baseconfig/s390x/CONFIG_SCSI_STEX new file mode 100644 index 000000000..51be1d1eb --- /dev/null +++ b/baseconfig/s390x/CONFIG_SCSI_STEX @@ -0,0 +1 @@ +# CONFIG_SCSI_STEX is not set diff --git a/baseconfig/s390x/CONFIG_SCSI_SYM53C8XX_2 b/baseconfig/s390x/CONFIG_SCSI_SYM53C8XX_2 new file mode 100644 index 000000000..1cb592105 --- /dev/null +++ b/baseconfig/s390x/CONFIG_SCSI_SYM53C8XX_2 @@ -0,0 +1 @@ +# CONFIG_SCSI_SYM53C8XX_2 is not set diff --git a/baseconfig/s390x/CONFIG_SCSI_UFSHCD b/baseconfig/s390x/CONFIG_SCSI_UFSHCD new file mode 100644 index 000000000..542c89fc7 --- /dev/null +++ b/baseconfig/s390x/CONFIG_SCSI_UFSHCD @@ -0,0 +1 @@ +# CONFIG_SCSI_UFSHCD is not set diff --git a/baseconfig/s390x/CONFIG_SCSI_WD719X b/baseconfig/s390x/CONFIG_SCSI_WD719X new file mode 100644 index 000000000..96273e303 --- /dev/null +++ b/baseconfig/s390x/CONFIG_SCSI_WD719X @@ -0,0 +1 @@ +# CONFIG_SCSI_WD719X is not set diff --git a/baseconfig/s390x/CONFIG_SENSORS_APDS990X b/baseconfig/s390x/CONFIG_SENSORS_APDS990X new file mode 100644 index 000000000..3aa738be2 --- /dev/null +++ b/baseconfig/s390x/CONFIG_SENSORS_APDS990X @@ -0,0 +1 @@ +# CONFIG_SENSORS_APDS990X is not set diff --git a/baseconfig/s390x/CONFIG_SENSORS_BH1770 b/baseconfig/s390x/CONFIG_SENSORS_BH1770 new file mode 100644 index 000000000..f6d8bfafa --- /dev/null +++ b/baseconfig/s390x/CONFIG_SENSORS_BH1770 @@ -0,0 +1 @@ +# CONFIG_SENSORS_BH1770 is not set diff --git a/baseconfig/s390x/CONFIG_SENSORS_LIS3LV02D b/baseconfig/s390x/CONFIG_SENSORS_LIS3LV02D new file mode 100644 index 000000000..37a6cf6ac --- /dev/null +++ b/baseconfig/s390x/CONFIG_SENSORS_LIS3LV02D @@ -0,0 +1 @@ +# CONFIG_SENSORS_LIS3LV02D is not set diff --git a/baseconfig/s390x/CONFIG_SENSORS_LIS3_I2C b/baseconfig/s390x/CONFIG_SENSORS_LIS3_I2C new file mode 100644 index 000000000..3086c9ed5 --- /dev/null +++ b/baseconfig/s390x/CONFIG_SENSORS_LIS3_I2C @@ -0,0 +1 @@ +# CONFIG_SENSORS_LIS3_I2C is not set diff --git a/baseconfig/s390x/CONFIG_SENSORS_TSL2550 b/baseconfig/s390x/CONFIG_SENSORS_TSL2550 new file mode 100644 index 000000000..c2702cc2c --- /dev/null +++ b/baseconfig/s390x/CONFIG_SENSORS_TSL2550 @@ -0,0 +1 @@ +# CONFIG_SENSORS_TSL2550 is not set diff --git a/baseconfig/s390x/CONFIG_SERIAL_NONSTANDARD b/baseconfig/s390x/CONFIG_SERIAL_NONSTANDARD new file mode 100644 index 000000000..57688cbec --- /dev/null +++ b/baseconfig/s390x/CONFIG_SERIAL_NONSTANDARD @@ -0,0 +1 @@ +# CONFIG_SERIAL_NONSTANDARD is not set diff --git a/baseconfig/s390x/CONFIG_SERIO_LIBPS2 b/baseconfig/s390x/CONFIG_SERIO_LIBPS2 new file mode 100644 index 000000000..b4e848291 --- /dev/null +++ b/baseconfig/s390x/CONFIG_SERIO_LIBPS2 @@ -0,0 +1 @@ +CONFIG_SERIO_LIBPS2=m diff --git a/baseconfig/s390x/CONFIG_SERIO_SERPORT b/baseconfig/s390x/CONFIG_SERIO_SERPORT new file mode 100644 index 000000000..80a07531f --- /dev/null +++ b/baseconfig/s390x/CONFIG_SERIO_SERPORT @@ -0,0 +1 @@ +CONFIG_SERIO_SERPORT=m diff --git a/baseconfig/s390x/CONFIG_SFC b/baseconfig/s390x/CONFIG_SFC new file mode 100644 index 000000000..fdc60b90f --- /dev/null +++ b/baseconfig/s390x/CONFIG_SFC @@ -0,0 +1 @@ +# CONFIG_SFC is not set diff --git a/baseconfig/s390x/CONFIG_UIO b/baseconfig/s390x/CONFIG_UIO new file mode 100644 index 000000000..566183b75 --- /dev/null +++ b/baseconfig/s390x/CONFIG_UIO @@ -0,0 +1 @@ +# CONFIG_UIO is not set diff --git a/baseconfig/s390x/CONFIG_WDTPCI b/baseconfig/s390x/CONFIG_WDTPCI new file mode 100644 index 000000000..ca556694d --- /dev/null +++ b/baseconfig/s390x/CONFIG_WDTPCI @@ -0,0 +1 @@ +# CONFIG_WDTPCI is not set diff --git a/baseconfig/s390x/CONFIG_XILLYBUS b/baseconfig/s390x/CONFIG_XILLYBUS new file mode 100644 index 000000000..ce2448ee6 --- /dev/null +++ b/baseconfig/s390x/CONFIG_XILLYBUS @@ -0,0 +1 @@ +# CONFIG_XILLYBUS is not set diff --git a/baseconfig/CONFIG_CRYPTO_CRC32C_INTEL b/baseconfig/x86/CONFIG_CRYPTO_CRC32C_INTEL index c500b4f55..c500b4f55 100644 --- a/baseconfig/CONFIG_CRYPTO_CRC32C_INTEL +++ b/baseconfig/x86/CONFIG_CRYPTO_CRC32C_INTEL diff --git a/baseconfig/CONFIG_DRM_I810 b/baseconfig/x86/CONFIG_DRM_I810 index 23cc8b602..23cc8b602 100644 --- a/baseconfig/CONFIG_DRM_I810 +++ b/baseconfig/x86/CONFIG_DRM_I810 diff --git a/baseconfig/CONFIG_DRM_I915 b/baseconfig/x86/CONFIG_DRM_I915 index 1034adf42..1034adf42 100644 --- a/baseconfig/CONFIG_DRM_I915 +++ b/baseconfig/x86/CONFIG_DRM_I915 diff --git a/baseconfig/CONFIG_DRM_I915_ALPHA_SUPPORT b/baseconfig/x86/CONFIG_DRM_I915_ALPHA_SUPPORT index 49c76cb99..49c76cb99 100644 --- a/baseconfig/CONFIG_DRM_I915_ALPHA_SUPPORT +++ b/baseconfig/x86/CONFIG_DRM_I915_ALPHA_SUPPORT diff --git a/baseconfig/CONFIG_DRM_I915_CAPTURE_ERROR b/baseconfig/x86/CONFIG_DRM_I915_CAPTURE_ERROR index d85c72035..d85c72035 100644 --- a/baseconfig/CONFIG_DRM_I915_CAPTURE_ERROR +++ b/baseconfig/x86/CONFIG_DRM_I915_CAPTURE_ERROR diff --git a/baseconfig/CONFIG_DRM_I915_COMPRESS_ERROR b/baseconfig/x86/CONFIG_DRM_I915_COMPRESS_ERROR index 6d6c129f5..6d6c129f5 100644 --- a/baseconfig/CONFIG_DRM_I915_COMPRESS_ERROR +++ b/baseconfig/x86/CONFIG_DRM_I915_COMPRESS_ERROR diff --git a/baseconfig/CONFIG_DRM_I915_GVT b/baseconfig/x86/CONFIG_DRM_I915_GVT index c6af3c3cc..c6af3c3cc 100644 --- a/baseconfig/CONFIG_DRM_I915_GVT +++ b/baseconfig/x86/CONFIG_DRM_I915_GVT diff --git a/baseconfig/CONFIG_DRM_I915_GVT_KVMGT b/baseconfig/x86/CONFIG_DRM_I915_GVT_KVMGT index 016a41e8a..016a41e8a 100644 --- a/baseconfig/CONFIG_DRM_I915_GVT_KVMGT +++ b/baseconfig/x86/CONFIG_DRM_I915_GVT_KVMGT diff --git a/baseconfig/CONFIG_DRM_I915_USERPTR b/baseconfig/x86/CONFIG_DRM_I915_USERPTR index 4f253abc1..4f253abc1 100644 --- a/baseconfig/CONFIG_DRM_I915_USERPTR +++ b/baseconfig/x86/CONFIG_DRM_I915_USERPTR diff --git a/baseconfig/CONFIG_DRM_VMWGFX b/baseconfig/x86/CONFIG_DRM_VMWGFX index 12fe6b15f..12fe6b15f 100644 --- a/baseconfig/CONFIG_DRM_VMWGFX +++ b/baseconfig/x86/CONFIG_DRM_VMWGFX diff --git a/baseconfig/CONFIG_DRM_VMWGFX_FBCON b/baseconfig/x86/CONFIG_DRM_VMWGFX_FBCON index cc51e115d..cc51e115d 100644 --- a/baseconfig/CONFIG_DRM_VMWGFX_FBCON +++ b/baseconfig/x86/CONFIG_DRM_VMWGFX_FBCON diff --git a/baseconfig/x86/CONFIG_ENA_ETHERNET b/baseconfig/x86/CONFIG_ENA_ETHERNET new file mode 100644 index 000000000..64c0a73c1 --- /dev/null +++ b/baseconfig/x86/CONFIG_ENA_ETHERNET @@ -0,0 +1 @@ +CONFIG_ENA_ETHERNET=m diff --git a/baseconfig/CONFIG_FB_ARC b/baseconfig/x86/CONFIG_FB_ARC index 1d66b92f4..1d66b92f4 100644 --- a/baseconfig/CONFIG_FB_ARC +++ b/baseconfig/x86/CONFIG_FB_ARC diff --git a/baseconfig/CONFIG_FB_GEODE b/baseconfig/x86/CONFIG_FB_GEODE index 3c78c584d..3c78c584d 100644 --- a/baseconfig/CONFIG_FB_GEODE +++ b/baseconfig/x86/CONFIG_FB_GEODE diff --git a/baseconfig/CONFIG_FB_HGA b/baseconfig/x86/CONFIG_FB_HGA index 3c3142a1e..3c3142a1e 100644 --- a/baseconfig/CONFIG_FB_HGA +++ b/baseconfig/x86/CONFIG_FB_HGA diff --git a/baseconfig/CONFIG_FB_I810 b/baseconfig/x86/CONFIG_FB_I810 index 9ef6eca18..9ef6eca18 100644 --- a/baseconfig/CONFIG_FB_I810 +++ b/baseconfig/x86/CONFIG_FB_I810 diff --git a/baseconfig/CONFIG_FB_I810_GTF b/baseconfig/x86/CONFIG_FB_I810_GTF index 71eee1202..71eee1202 100644 --- a/baseconfig/CONFIG_FB_I810_GTF +++ b/baseconfig/x86/CONFIG_FB_I810_GTF diff --git a/baseconfig/CONFIG_FB_I810_I2C b/baseconfig/x86/CONFIG_FB_I810_I2C index 7cfe05740..7cfe05740 100644 --- a/baseconfig/CONFIG_FB_I810_I2C +++ b/baseconfig/x86/CONFIG_FB_I810_I2C diff --git a/baseconfig/CONFIG_FB_LE80578 b/baseconfig/x86/CONFIG_FB_LE80578 index 327044a84..327044a84 100644 --- a/baseconfig/CONFIG_FB_LE80578 +++ b/baseconfig/x86/CONFIG_FB_LE80578 diff --git a/baseconfig/CONFIG_FB_VGA16 b/baseconfig/x86/CONFIG_FB_VGA16 index 4fa33dfdc..4fa33dfdc 100644 --- a/baseconfig/CONFIG_FB_VGA16 +++ b/baseconfig/x86/CONFIG_FB_VGA16 diff --git a/baseconfig/CONFIG_FB_VIA b/baseconfig/x86/CONFIG_FB_VIA index d34242c33..d34242c33 100644 --- a/baseconfig/CONFIG_FB_VIA +++ b/baseconfig/x86/CONFIG_FB_VIA diff --git a/baseconfig/CONFIG_FB_VIA_DIRECT_PROCFS b/baseconfig/x86/CONFIG_FB_VIA_DIRECT_PROCFS index d2ff4278d..d2ff4278d 100644 --- a/baseconfig/CONFIG_FB_VIA_DIRECT_PROCFS +++ b/baseconfig/x86/CONFIG_FB_VIA_DIRECT_PROCFS diff --git a/baseconfig/CONFIG_GPIO_AMD8111 b/baseconfig/x86/CONFIG_GPIO_AMD8111 index 097d52ce1..097d52ce1 100644 --- a/baseconfig/CONFIG_GPIO_AMD8111 +++ b/baseconfig/x86/CONFIG_GPIO_AMD8111 diff --git a/baseconfig/CONFIG_GPIO_CS5535 b/baseconfig/x86/CONFIG_GPIO_CS5535 index 0566d4f6f..0566d4f6f 100644 --- a/baseconfig/CONFIG_GPIO_CS5535 +++ b/baseconfig/x86/CONFIG_GPIO_CS5535 diff --git a/baseconfig/CONFIG_GPIO_ML_IOH b/baseconfig/x86/CONFIG_GPIO_ML_IOH index 9155cc76a..9155cc76a 100644 --- a/baseconfig/CONFIG_GPIO_ML_IOH +++ b/baseconfig/x86/CONFIG_GPIO_ML_IOH diff --git a/baseconfig/CONFIG_GPIO_SCH b/baseconfig/x86/CONFIG_GPIO_SCH index 91a3ab850..91a3ab850 100644 --- a/baseconfig/CONFIG_GPIO_SCH +++ b/baseconfig/x86/CONFIG_GPIO_SCH diff --git a/baseconfig/CONFIG_GPIO_VX855 b/baseconfig/x86/CONFIG_GPIO_VX855 index 07b0ce3ab..07b0ce3ab 100644 --- a/baseconfig/CONFIG_GPIO_VX855 +++ b/baseconfig/x86/CONFIG_GPIO_VX855 diff --git a/baseconfig/x86/CONFIG_HDMI_LPE_AUDIO b/baseconfig/x86/CONFIG_HDMI_LPE_AUDIO new file mode 100644 index 000000000..a901acc4d --- /dev/null +++ b/baseconfig/x86/CONFIG_HDMI_LPE_AUDIO @@ -0,0 +1 @@ +CONFIG_HDMI_LPE_AUDIO=m diff --git a/baseconfig/CONFIG_I2C_PXA b/baseconfig/x86/CONFIG_I2C_PXA index 59d18f0cb..59d18f0cb 100644 --- a/baseconfig/CONFIG_I2C_PXA +++ b/baseconfig/x86/CONFIG_I2C_PXA diff --git a/baseconfig/CONFIG_I2C_PXA_SLAVE b/baseconfig/x86/CONFIG_I2C_PXA_SLAVE index 7cc440320..7cc440320 100644 --- a/baseconfig/CONFIG_I2C_PXA_SLAVE +++ b/baseconfig/x86/CONFIG_I2C_PXA_SLAVE diff --git a/baseconfig/CONFIG_IB700_WDT b/baseconfig/x86/CONFIG_IB700_WDT index 3cf068abd..3cf068abd 100644 --- a/baseconfig/CONFIG_IB700_WDT +++ b/baseconfig/x86/CONFIG_IB700_WDT diff --git a/baseconfig/CONFIG_IBMASR b/baseconfig/x86/CONFIG_IBMASR index c5d4eb253..c5d4eb253 100644 --- a/baseconfig/CONFIG_IBMASR +++ b/baseconfig/x86/CONFIG_IBMASR diff --git a/baseconfig/CONFIG_INTEL_MENLOW b/baseconfig/x86/CONFIG_INTEL_MENLOW index 342cd294b..342cd294b 100644 --- a/baseconfig/CONFIG_INTEL_MENLOW +++ b/baseconfig/x86/CONFIG_INTEL_MENLOW diff --git a/baseconfig/CONFIG_LEDS_INTEL_SS4200 b/baseconfig/x86/CONFIG_LEDS_INTEL_SS4200 index 9937903af..9937903af 100644 --- a/baseconfig/CONFIG_LEDS_INTEL_SS4200 +++ b/baseconfig/x86/CONFIG_LEDS_INTEL_SS4200 diff --git a/baseconfig/x86/CONFIG_MFD_AXP20X b/baseconfig/x86/CONFIG_MFD_AXP20X deleted file mode 100644 index 1d658245a..000000000 --- a/baseconfig/x86/CONFIG_MFD_AXP20X +++ /dev/null @@ -1 +0,0 @@ -# CONFIG_MFD_AXP20X is not set diff --git a/baseconfig/x86/CONFIG_NIC7018_WDT b/baseconfig/x86/CONFIG_NIC7018_WDT new file mode 100644 index 000000000..9bc7a462a --- /dev/null +++ b/baseconfig/x86/CONFIG_NIC7018_WDT @@ -0,0 +1 @@ +CONFIG_NIC7018_WDT=m diff --git a/baseconfig/x86/CONFIG_PINCTRL_GEMINILAKE b/baseconfig/x86/CONFIG_PINCTRL_GEMINILAKE new file mode 100644 index 000000000..deb3b301d --- /dev/null +++ b/baseconfig/x86/CONFIG_PINCTRL_GEMINILAKE @@ -0,0 +1 @@ +# CONFIG_PINCTRL_GEMINILAKE is not set diff --git a/baseconfig/x86/CONFIG_PTP_1588_CLOCK_KVM b/baseconfig/x86/CONFIG_PTP_1588_CLOCK_KVM new file mode 100644 index 000000000..203f6b757 --- /dev/null +++ b/baseconfig/x86/CONFIG_PTP_1588_CLOCK_KVM @@ -0,0 +1 @@ +CONFIG_PTP_1588_CLOCK_KVM=m diff --git a/baseconfig/x86/CONFIG_SERIAL_8250_LPSS b/baseconfig/x86/CONFIG_SERIAL_8250_LPSS new file mode 100644 index 000000000..9d2401a32 --- /dev/null +++ b/baseconfig/x86/CONFIG_SERIAL_8250_LPSS @@ -0,0 +1 @@ +CONFIG_SERIAL_8250_LPSS=m diff --git a/baseconfig/x86/CONFIG_SILEAD_DMI b/baseconfig/x86/CONFIG_SILEAD_DMI new file mode 100644 index 000000000..3fd766126 --- /dev/null +++ b/baseconfig/x86/CONFIG_SILEAD_DMI @@ -0,0 +1 @@ +# CONFIG_SILEAD_DMI is not set diff --git a/baseconfig/x86/CONFIG_SND_SOC_ES8328 b/baseconfig/x86/CONFIG_SND_SOC_ES8328 new file mode 100644 index 000000000..806f698e1 --- /dev/null +++ b/baseconfig/x86/CONFIG_SND_SOC_ES8328 @@ -0,0 +1 @@ +CONFIG_SND_SOC_ES8328=m diff --git a/baseconfig/x86/CONFIG_SND_SOC_ES8328_I2C b/baseconfig/x86/CONFIG_SND_SOC_ES8328_I2C new file mode 100644 index 000000000..9f90cb7e0 --- /dev/null +++ b/baseconfig/x86/CONFIG_SND_SOC_ES8328_I2C @@ -0,0 +1 @@ +CONFIG_SND_SOC_ES8328_I2C=m diff --git a/baseconfig/x86/CONFIG_SND_SOC_ES8328_SPI b/baseconfig/x86/CONFIG_SND_SOC_ES8328_SPI new file mode 100644 index 000000000..0eb8f755c --- /dev/null +++ b/baseconfig/x86/CONFIG_SND_SOC_ES8328_SPI @@ -0,0 +1 @@ +CONFIG_SND_SOC_ES8328_SPI=m diff --git a/baseconfig/x86/CONFIG_SND_SOC_NAU8540 b/baseconfig/x86/CONFIG_SND_SOC_NAU8540 new file mode 100644 index 000000000..9862521b0 --- /dev/null +++ b/baseconfig/x86/CONFIG_SND_SOC_NAU8540 @@ -0,0 +1 @@ +CONFIG_SND_SOC_NAU8540=m diff --git a/baseconfig/x86/CONFIG_SND_SOC_TAS571X b/baseconfig/x86/CONFIG_SND_SOC_TAS571X deleted file mode 100644 index 5a0960c0f..000000000 --- a/baseconfig/x86/CONFIG_SND_SOC_TAS571X +++ /dev/null @@ -1 +0,0 @@ -# CONFIG_SND_SOC_TAS571X is not set diff --git a/baseconfig/x86/i686/CONFIG_SND_SOC_TS3A227E b/baseconfig/x86/CONFIG_SND_SOC_TS3A227E index 1d3522517..1d3522517 100644 --- a/baseconfig/x86/i686/CONFIG_SND_SOC_TS3A227E +++ b/baseconfig/x86/CONFIG_SND_SOC_TS3A227E diff --git a/baseconfig/x86/CONFIG_SND_X86 b/baseconfig/x86/CONFIG_SND_X86 new file mode 100644 index 000000000..310c61afc --- /dev/null +++ b/baseconfig/x86/CONFIG_SND_X86 @@ -0,0 +1 @@ +CONFIG_SND_X86=y diff --git a/baseconfig/CONFIG_VMWARE_BALLOON b/baseconfig/x86/CONFIG_VMWARE_BALLOON index 324a0cebc..324a0cebc 100644 --- a/baseconfig/CONFIG_VMWARE_BALLOON +++ b/baseconfig/x86/CONFIG_VMWARE_BALLOON diff --git a/baseconfig/CONFIG_VMWARE_PVSCSI b/baseconfig/x86/CONFIG_VMWARE_PVSCSI index 3568e9188..3568e9188 100644 --- a/baseconfig/CONFIG_VMWARE_PVSCSI +++ b/baseconfig/x86/CONFIG_VMWARE_PVSCSI diff --git a/baseconfig/x86/x86_64/CONFIG_XEN_PVH b/baseconfig/x86/CONFIG_XEN_PVH index 5f8642963..5f8642963 100644 --- a/baseconfig/x86/x86_64/CONFIG_XEN_PVH +++ b/baseconfig/x86/CONFIG_XEN_PVH diff --git a/baseconfig/x86/i686/CONFIG_I2C_PXA b/baseconfig/x86/i686/CONFIG_I2C_PXA deleted file mode 100644 index 59d18f0cb..000000000 --- a/baseconfig/x86/i686/CONFIG_I2C_PXA +++ /dev/null @@ -1 +0,0 @@ -CONFIG_I2C_PXA=m diff --git a/baseconfig/x86/i686/CONFIG_LEDS_INTEL_SS4200 b/baseconfig/x86/i686/CONFIG_LEDS_INTEL_SS4200 deleted file mode 100644 index 9937903af..000000000 --- a/baseconfig/x86/i686/CONFIG_LEDS_INTEL_SS4200 +++ /dev/null @@ -1 +0,0 @@ -CONFIG_LEDS_INTEL_SS4200=m diff --git a/baseconfig/x86/i686PAE/CONFIG_I2C_PXA b/baseconfig/x86/i686PAE/CONFIG_I2C_PXA deleted file mode 100644 index 59d18f0cb..000000000 --- a/baseconfig/x86/i686PAE/CONFIG_I2C_PXA +++ /dev/null @@ -1 +0,0 @@ -CONFIG_I2C_PXA=m diff --git a/baseconfig/x86/i686PAE/CONFIG_LEDS_INTEL_SS4200 b/baseconfig/x86/i686PAE/CONFIG_LEDS_INTEL_SS4200 deleted file mode 100644 index 9937903af..000000000 --- a/baseconfig/x86/i686PAE/CONFIG_LEDS_INTEL_SS4200 +++ /dev/null @@ -1 +0,0 @@ -CONFIG_LEDS_INTEL_SS4200=m diff --git a/baseconfig/x86/i686PAE/CONFIG_SND_SOC_TS3A227E b/baseconfig/x86/i686PAE/CONFIG_SND_SOC_TS3A227E deleted file mode 100644 index 1d3522517..000000000 --- a/baseconfig/x86/i686PAE/CONFIG_SND_SOC_TS3A227E +++ /dev/null @@ -1 +0,0 @@ -CONFIG_SND_SOC_TS3A227E=m diff --git a/baseconfig/x86/x86_64/CONFIG_EDAC_PND2 b/baseconfig/x86/x86_64/CONFIG_EDAC_PND2 new file mode 100644 index 000000000..d0b59df60 --- /dev/null +++ b/baseconfig/x86/x86_64/CONFIG_EDAC_PND2 @@ -0,0 +1 @@ +CONFIG_EDAC_PND2=m diff --git a/baseconfig/x86/x86_64/CONFIG_INTEL_TURBO_MAX_3 b/baseconfig/x86/x86_64/CONFIG_INTEL_TURBO_MAX_3 new file mode 100644 index 000000000..9516cd8f6 --- /dev/null +++ b/baseconfig/x86/x86_64/CONFIG_INTEL_TURBO_MAX_3 @@ -0,0 +1 @@ +CONFIG_INTEL_TURBO_MAX_3=y diff --git a/baseconfig/x86/x86_64/CONFIG_SND_SOC_TS3A227E b/baseconfig/x86/x86_64/CONFIG_SND_SOC_TS3A227E deleted file mode 100644 index 1d3522517..000000000 --- a/baseconfig/x86/x86_64/CONFIG_SND_SOC_TS3A227E +++ /dev/null @@ -1 +0,0 @@ -CONFIG_SND_SOC_TS3A227E=m diff --git a/bcm283x-VEC.patch b/bcm283x-VEC.patch deleted file mode 100644 index f48105d8a..000000000 --- a/bcm283x-VEC.patch +++ /dev/null @@ -1,58 +0,0 @@ -From 7713257febc1cdecdc55e1372ecef7263c58c03c Mon Sep 17 00:00:00 2001 -From: Boris Brezillon <boris.brezillon@free-electrons.com> -Date: Fri, 2 Dec 2016 14:48:12 +0100 -Subject: [PATCH] ARM: bcm/dt: Add VEC node in bcm283x.dtsi - -Add the VEC (Video EnCoder) node definition in bcm283x.dtsi. - -Signed-off-by: Boris Brezillon <boris.brezillon@free-electrons.com> -Signed-off-by: Eric Anholt <eric@anholt.net> ---- - arch/arm/boot/dts/bcm283x.dtsi | 8 ++++++++ - 1 file changed, 8 insertions(+) - -diff --git a/arch/arm/boot/dts/bcm283x.dtsi b/arch/arm/boot/dts/bcm283x.dtsi -index 9a44da1..a3106aa 100644 ---- a/arch/arm/boot/dts/bcm283x.dtsi -+++ b/arch/arm/boot/dts/bcm283x.dtsi -@@ -476,6 +476,14 @@ - status = "disabled"; - }; - -+ vec: vec@7e806000 { -+ compatible = "brcm,bcm2835-vec"; -+ reg = <0x7e806000 0x1000>; -+ clocks = <&clocks BCM2835_CLOCK_VEC>; -+ interrupts = <2 27>; -+ status = "disabled"; -+ }; -+ - pixelvalve@7e807000 { - compatible = "brcm,bcm2835-pixelvalve2"; - reg = <0x7e807000 0x100>; -From 38742ca2b8b21bfc2a2cc24278b58485ff781644 Mon Sep 17 00:00:00 2001 -From: Boris Brezillon <boris.brezillon@free-electrons.com> -Date: Fri, 2 Dec 2016 14:48:13 +0100 -Subject: [PATCH] ARM: bcm/dt: Enable the VEC IP on all RaspberryPi boards - -Enable the VEC IP on all RaspberryPi boards. - -Signed-off-by: Boris Brezillon <boris.brezillon@free-electrons.com> -Signed-off-by: Eric Anholt <eric@anholt.net> ---- - arch/arm/boot/dts/bcm2835-rpi.dtsi | 5 +++++ - 1 file changed, 5 insertions(+) - -diff --git a/arch/arm/boot/dts/bcm2835-rpi.dtsi b/arch/arm/boot/dts/bcm2835-rpi.dtsi -index 6ddf7dfe..38e6050 100644 ---- a/arch/arm/boot/dts/bcm2835-rpi.dtsi -+++ b/arch/arm/boot/dts/bcm2835-rpi.dtsi -@@ -87,3 +87,8 @@ - power-domains = <&power RPI_POWER_DOMAIN_HDMI>; - status = "okay"; - }; -+ -+&vec { -+ power-domains = <&power RPI_POWER_DOMAIN_VEC>; -+ status = "okay"; -+}; diff --git a/bcm283x-hdmi-audio.patch b/bcm283x-hdmi-audio.patch new file mode 100644 index 000000000..3ed3d2d34 --- /dev/null +++ b/bcm283x-hdmi-audio.patch @@ -0,0 +1,836 @@ +From bbcb8aacb871edf0360e808180162591b11c6a35 Mon Sep 17 00:00:00 2001 +From: Boris Brezillon <boris.brezillon@free-electrons.com> +Date: Mon, 27 Feb 2017 12:28:01 -0800 +Subject: [PATCH 1/3] dt-bindings: Document the dmas and dma-names properties + for VC4 HDMI + +These are optional, but necessary for HDMI audio support. + +Signed-off-by: Boris Brezillon <boris.brezillon@free-electrons.com> +Signed-off-by: Eric Anholt <eric@anholt.net> +Acked-by: Rob Herring <robh@kernel.org> +Link: http://patchwork.freedesktop.org/patch/msgid/20170227202803.12855-1-eric@anholt.net +--- + Documentation/devicetree/bindings/display/brcm,bcm-vc4.txt | 3 +++ + 1 file changed, 3 insertions(+) + +diff --git a/Documentation/devicetree/bindings/display/brcm,bcm-vc4.txt b/Documentation/devicetree/bindings/display/brcm,bcm-vc4.txt +index 34c7fddcea39..ca02d3e4db91 100644 +--- a/Documentation/devicetree/bindings/display/brcm,bcm-vc4.txt ++++ b/Documentation/devicetree/bindings/display/brcm,bcm-vc4.txt +@@ -34,6 +34,9 @@ Optional properties for HDMI: + - hpd-gpios: The GPIO pin for HDMI hotplug detect (if it doesn't appear + as an interrupt/status bit in the HDMI controller + itself). See bindings/pinctrl/brcm,bcm2835-gpio.txt ++- dmas: Should contain one entry pointing to the DMA channel used to ++ transfer audio data ++- dma-names: Should contain "audio-rx" + + Required properties for DPI: + - compatible: Should be "brcm,bcm2835-dpi" +-- +2.12.0 + +From 8e13e0d8ecf2202c707225a612d10c9534d849f7 Mon Sep 17 00:00:00 2001 +From: Eric Anholt <eric@anholt.net> +Date: Mon, 27 Feb 2017 12:28:02 -0800 +Subject: [PATCH 2/3] drm/vc4: Add HDMI audio support + +The HDMI encoder IP embeds all needed blocks to output audio, with a +custom DAI called MAI moving audio between the two parts of the HDMI +core. This driver now exposes a sound card to let users stream audio +to their display. + +Using the hdmi-codec driver has been considered here, but MAI meant +having to significantly rework hdmi-codec, and it would have left +little shared code with the I2S mode anyway. + +The encoder requires that the audio be SPDIF-formatted frames only, +which alsalib will format-convert for us. + +This patch is the combined work of Eric Anholt (initial register setup +with a separate dmaengine driver and using simple-audio-card) and +Boris Brezillon (moving it all into HDMI, massive debug to get it +actually working), and which Eric has the permission to release. + +v2: Drop "-audio" from sound card name, since that's already implied + (suggestion by Boris) + +Signed-off-by: Eric Anholt <eric@anholt.net> +Acked-by: Boris Brezillon <boris.brezillon@free-electrons.com> +Link: http://patchwork.freedesktop.org/patch/msgid/20170227202803.12855-2-eric@anholt.net +--- + drivers/gpu/drm/vc4/Kconfig | 4 + + drivers/gpu/drm/vc4/vc4_hdmi.c | 494 ++++++++++++++++++++++++++++++++++++++++- + drivers/gpu/drm/vc4/vc4_regs.h | 107 ++++++++- + 3 files changed, 603 insertions(+), 2 deletions(-) + +diff --git a/drivers/gpu/drm/vc4/Kconfig b/drivers/gpu/drm/vc4/Kconfig +index e1517d07cb7d..973b4203c0b2 100644 +--- a/drivers/gpu/drm/vc4/Kconfig ++++ b/drivers/gpu/drm/vc4/Kconfig +@@ -2,11 +2,15 @@ config DRM_VC4 + tristate "Broadcom VC4 Graphics" + depends on ARCH_BCM2835 || COMPILE_TEST + depends on DRM ++ depends on SND && SND_SOC + depends on COMMON_CLK + select DRM_KMS_HELPER + select DRM_KMS_CMA_HELPER + select DRM_GEM_CMA_HELPER + select DRM_PANEL ++ select SND_PCM ++ select SND_PCM_ELD ++ select SND_SOC_GENERIC_DMAENGINE_PCM + select DRM_MIPI_DSI + help + Choose this option if you have a system that has a Broadcom +diff --git a/drivers/gpu/drm/vc4/vc4_hdmi.c b/drivers/gpu/drm/vc4/vc4_hdmi.c +index 93d5994f3a04..e4abf4bfc464 100644 +--- a/drivers/gpu/drm/vc4/vc4_hdmi.c ++++ b/drivers/gpu/drm/vc4/vc4_hdmi.c +@@ -31,11 +31,27 @@ + #include "linux/clk.h" + #include "linux/component.h" + #include "linux/i2c.h" ++#include "linux/of_address.h" + #include "linux/of_gpio.h" + #include "linux/of_platform.h" ++#include "linux/rational.h" ++#include "sound/dmaengine_pcm.h" ++#include "sound/pcm_drm_eld.h" ++#include "sound/pcm_params.h" ++#include "sound/soc.h" + #include "vc4_drv.h" + #include "vc4_regs.h" + ++/* HDMI audio information */ ++struct vc4_hdmi_audio { ++ struct snd_soc_card card; ++ struct snd_soc_dai_link link; ++ int samplerate; ++ int channels; ++ struct snd_dmaengine_dai_dma_data dma_data; ++ struct snd_pcm_substream *substream; ++}; ++ + /* General HDMI hardware state. */ + struct vc4_hdmi { + struct platform_device *pdev; +@@ -43,6 +59,8 @@ struct vc4_hdmi { + struct drm_encoder *encoder; + struct drm_connector *connector; + ++ struct vc4_hdmi_audio audio; ++ + struct i2c_adapter *ddc; + void __iomem *hdmicore_regs; + void __iomem *hd_regs; +@@ -98,6 +116,10 @@ static const struct { + HDMI_REG(VC4_HDMI_SW_RESET_CONTROL), + HDMI_REG(VC4_HDMI_HOTPLUG_INT), + HDMI_REG(VC4_HDMI_HOTPLUG), ++ HDMI_REG(VC4_HDMI_MAI_CHANNEL_MAP), ++ HDMI_REG(VC4_HDMI_MAI_CONFIG), ++ HDMI_REG(VC4_HDMI_MAI_FORMAT), ++ HDMI_REG(VC4_HDMI_AUDIO_PACKET_CONFIG), + HDMI_REG(VC4_HDMI_RAM_PACKET_CONFIG), + HDMI_REG(VC4_HDMI_HORZA), + HDMI_REG(VC4_HDMI_HORZB), +@@ -108,6 +130,7 @@ static const struct { + HDMI_REG(VC4_HDMI_VERTB0), + HDMI_REG(VC4_HDMI_VERTB1), + HDMI_REG(VC4_HDMI_TX_PHY_RESET_CTL), ++ HDMI_REG(VC4_HDMI_TX_PHY_CTL0), + }; + + static const struct { +@@ -116,6 +139,9 @@ static const struct { + } hd_regs[] = { + HDMI_REG(VC4_HD_M_CTL), + HDMI_REG(VC4_HD_MAI_CTL), ++ HDMI_REG(VC4_HD_MAI_THR), ++ HDMI_REG(VC4_HD_MAI_FMT), ++ HDMI_REG(VC4_HD_MAI_SMP), + HDMI_REG(VC4_HD_VID_CTL), + HDMI_REG(VC4_HD_CSC_CTL), + HDMI_REG(VC4_HD_FRAME_COUNT), +@@ -215,6 +241,7 @@ static int vc4_hdmi_connector_get_modes(struct drm_connector *connector) + + drm_mode_connector_update_edid_property(connector, edid); + ret = drm_add_edid_modes(connector, edid); ++ drm_edid_to_eld(connector, edid); + + return ret; + } +@@ -300,7 +327,7 @@ static void vc4_hdmi_write_infoframe(struct drm_encoder *encoder, + struct drm_device *dev = encoder->dev; + struct vc4_dev *vc4 = to_vc4_dev(dev); + u32 packet_id = frame->any.type - 0x80; +- u32 packet_reg = VC4_HDMI_GCP_0 + VC4_HDMI_PACKET_STRIDE * packet_id; ++ u32 packet_reg = VC4_HDMI_RAM_PACKET(packet_id); + uint8_t buffer[VC4_HDMI_PACKET_STRIDE]; + ssize_t len, i; + int ret; +@@ -381,6 +408,24 @@ static void vc4_hdmi_set_spd_infoframe(struct drm_encoder *encoder) + vc4_hdmi_write_infoframe(encoder, &frame); + } + ++static void vc4_hdmi_set_audio_infoframe(struct drm_encoder *encoder) ++{ ++ struct drm_device *drm = encoder->dev; ++ struct vc4_dev *vc4 = drm->dev_private; ++ struct vc4_hdmi *hdmi = vc4->hdmi; ++ union hdmi_infoframe frame; ++ int ret; ++ ++ ret = hdmi_audio_infoframe_init(&frame.audio); ++ ++ frame.audio.coding_type = HDMI_AUDIO_CODING_TYPE_STREAM; ++ frame.audio.sample_frequency = HDMI_AUDIO_SAMPLE_FREQUENCY_STREAM; ++ frame.audio.sample_size = HDMI_AUDIO_SAMPLE_SIZE_STREAM; ++ frame.audio.channels = hdmi->audio.channels; ++ ++ vc4_hdmi_write_infoframe(encoder, &frame); ++} ++ + static void vc4_hdmi_set_infoframes(struct drm_encoder *encoder) + { + vc4_hdmi_set_avi_infoframe(encoder); +@@ -589,6 +634,447 @@ static const struct drm_encoder_helper_funcs vc4_hdmi_encoder_helper_funcs = { + .enable = vc4_hdmi_encoder_enable, + }; + ++/* HDMI audio codec callbacks */ ++static void vc4_hdmi_audio_set_mai_clock(struct vc4_hdmi *hdmi) ++{ ++ struct drm_device *drm = hdmi->encoder->dev; ++ struct vc4_dev *vc4 = to_vc4_dev(drm); ++ u32 hsm_clock = clk_get_rate(hdmi->hsm_clock); ++ unsigned long n, m; ++ ++ rational_best_approximation(hsm_clock, hdmi->audio.samplerate, ++ VC4_HD_MAI_SMP_N_MASK >> ++ VC4_HD_MAI_SMP_N_SHIFT, ++ (VC4_HD_MAI_SMP_M_MASK >> ++ VC4_HD_MAI_SMP_M_SHIFT) + 1, ++ &n, &m); ++ ++ HD_WRITE(VC4_HD_MAI_SMP, ++ VC4_SET_FIELD(n, VC4_HD_MAI_SMP_N) | ++ VC4_SET_FIELD(m - 1, VC4_HD_MAI_SMP_M)); ++} ++ ++static void vc4_hdmi_set_n_cts(struct vc4_hdmi *hdmi) ++{ ++ struct drm_encoder *encoder = hdmi->encoder; ++ struct drm_crtc *crtc = encoder->crtc; ++ struct drm_device *drm = encoder->dev; ++ struct vc4_dev *vc4 = to_vc4_dev(drm); ++ const struct drm_display_mode *mode = &crtc->state->adjusted_mode; ++ u32 samplerate = hdmi->audio.samplerate; ++ u32 n, cts; ++ u64 tmp; ++ ++ n = 128 * samplerate / 1000; ++ tmp = (u64)(mode->clock * 1000) * n; ++ do_div(tmp, 128 * samplerate); ++ cts = tmp; ++ ++ HDMI_WRITE(VC4_HDMI_CRP_CFG, ++ VC4_HDMI_CRP_CFG_EXTERNAL_CTS_EN | ++ VC4_SET_FIELD(n, VC4_HDMI_CRP_CFG_N)); ++ ++ /* ++ * We could get slightly more accurate clocks in some cases by ++ * providing a CTS_1 value. The two CTS values are alternated ++ * between based on the period fields ++ */ ++ HDMI_WRITE(VC4_HDMI_CTS_0, cts); ++ HDMI_WRITE(VC4_HDMI_CTS_1, cts); ++} ++ ++static inline struct vc4_hdmi *dai_to_hdmi(struct snd_soc_dai *dai) ++{ ++ struct snd_soc_card *card = snd_soc_dai_get_drvdata(dai); ++ ++ return snd_soc_card_get_drvdata(card); ++} ++ ++static int vc4_hdmi_audio_startup(struct snd_pcm_substream *substream, ++ struct snd_soc_dai *dai) ++{ ++ struct vc4_hdmi *hdmi = dai_to_hdmi(dai); ++ struct drm_encoder *encoder = hdmi->encoder; ++ struct vc4_dev *vc4 = to_vc4_dev(encoder->dev); ++ int ret; ++ ++ if (hdmi->audio.substream && hdmi->audio.substream != substream) ++ return -EINVAL; ++ ++ hdmi->audio.substream = substream; ++ ++ /* ++ * If the HDMI encoder hasn't probed, or the encoder is ++ * currently in DVI mode, treat the codec dai as missing. ++ */ ++ if (!encoder->crtc || !(HDMI_READ(VC4_HDMI_RAM_PACKET_CONFIG) & ++ VC4_HDMI_RAM_PACKET_ENABLE)) ++ return -ENODEV; ++ ++ ret = snd_pcm_hw_constraint_eld(substream->runtime, ++ hdmi->connector->eld); ++ if (ret) ++ return ret; ++ ++ return 0; ++} ++ ++static int vc4_hdmi_audio_set_fmt(struct snd_soc_dai *dai, unsigned int fmt) ++{ ++ return 0; ++} ++ ++static void vc4_hdmi_audio_reset(struct vc4_hdmi *hdmi) ++{ ++ struct drm_encoder *encoder = hdmi->encoder; ++ struct drm_device *drm = encoder->dev; ++ struct device *dev = &hdmi->pdev->dev; ++ struct vc4_dev *vc4 = to_vc4_dev(drm); ++ int ret; ++ ++ ret = vc4_hdmi_stop_packet(encoder, HDMI_INFOFRAME_TYPE_AUDIO); ++ if (ret) ++ dev_err(dev, "Failed to stop audio infoframe: %d\n", ret); ++ ++ HD_WRITE(VC4_HD_MAI_CTL, VC4_HD_MAI_CTL_RESET); ++ HD_WRITE(VC4_HD_MAI_CTL, VC4_HD_MAI_CTL_ERRORF); ++ HD_WRITE(VC4_HD_MAI_CTL, VC4_HD_MAI_CTL_FLUSH); ++} ++ ++static void vc4_hdmi_audio_shutdown(struct snd_pcm_substream *substream, ++ struct snd_soc_dai *dai) ++{ ++ struct vc4_hdmi *hdmi = dai_to_hdmi(dai); ++ ++ if (substream != hdmi->audio.substream) ++ return; ++ ++ vc4_hdmi_audio_reset(hdmi); ++ ++ hdmi->audio.substream = NULL; ++} ++ ++/* HDMI audio codec callbacks */ ++static int vc4_hdmi_audio_hw_params(struct snd_pcm_substream *substream, ++ struct snd_pcm_hw_params *params, ++ struct snd_soc_dai *dai) ++{ ++ struct vc4_hdmi *hdmi = dai_to_hdmi(dai); ++ struct drm_encoder *encoder = hdmi->encoder; ++ struct drm_device *drm = encoder->dev; ++ struct device *dev = &hdmi->pdev->dev; ++ struct vc4_dev *vc4 = to_vc4_dev(drm); ++ u32 audio_packet_config, channel_mask; ++ u32 channel_map, i; ++ ++ if (substream != hdmi->audio.substream) ++ return -EINVAL; ++ ++ dev_dbg(dev, "%s: %u Hz, %d bit, %d channels\n", __func__, ++ params_rate(params), params_width(params), ++ params_channels(params)); ++ ++ hdmi->audio.channels = params_channels(params); ++ hdmi->audio.samplerate = params_rate(params); ++ ++ HD_WRITE(VC4_HD_MAI_CTL, ++ VC4_HD_MAI_CTL_RESET | ++ VC4_HD_MAI_CTL_FLUSH | ++ VC4_HD_MAI_CTL_DLATE | ++ VC4_HD_MAI_CTL_ERRORE | ++ VC4_HD_MAI_CTL_ERRORF); ++ ++ vc4_hdmi_audio_set_mai_clock(hdmi); ++ ++ audio_packet_config = ++ VC4_HDMI_AUDIO_PACKET_ZERO_DATA_ON_SAMPLE_FLAT | ++ VC4_HDMI_AUDIO_PACKET_ZERO_DATA_ON_INACTIVE_CHANNELS | ++ VC4_SET_FIELD(0xf, VC4_HDMI_AUDIO_PACKET_B_FRAME_IDENTIFIER); ++ ++ channel_mask = GENMASK(hdmi->audio.channels - 1, 0); ++ audio_packet_config |= VC4_SET_FIELD(channel_mask, ++ VC4_HDMI_AUDIO_PACKET_CEA_MASK); ++ ++ /* Set the MAI threshold. This logic mimics the firmware's. */ ++ if (hdmi->audio.samplerate > 96000) { ++ HD_WRITE(VC4_HD_MAI_THR, ++ VC4_SET_FIELD(0x12, VC4_HD_MAI_THR_DREQHIGH) | ++ VC4_SET_FIELD(0x12, VC4_HD_MAI_THR_DREQLOW)); ++ } else if (hdmi->audio.samplerate > 48000) { ++ HD_WRITE(VC4_HD_MAI_THR, ++ VC4_SET_FIELD(0x14, VC4_HD_MAI_THR_DREQHIGH) | ++ VC4_SET_FIELD(0x12, VC4_HD_MAI_THR_DREQLOW)); ++ } else { ++ HD_WRITE(VC4_HD_MAI_THR, ++ VC4_SET_FIELD(0x10, VC4_HD_MAI_THR_PANICHIGH) | ++ VC4_SET_FIELD(0x10, VC4_HD_MAI_THR_PANICLOW) | ++ VC4_SET_FIELD(0x10, VC4_HD_MAI_THR_DREQHIGH) | ++ VC4_SET_FIELD(0x10, VC4_HD_MAI_THR_DREQLOW)); ++ } ++ ++ HDMI_WRITE(VC4_HDMI_MAI_CONFIG, ++ VC4_HDMI_MAI_CONFIG_BIT_REVERSE | ++ VC4_SET_FIELD(channel_mask, VC4_HDMI_MAI_CHANNEL_MASK)); ++ ++ channel_map = 0; ++ for (i = 0; i < 8; i++) { ++ if (channel_mask & BIT(i)) ++ channel_map |= i << (3 * i); ++ } ++ ++ HDMI_WRITE(VC4_HDMI_MAI_CHANNEL_MAP, channel_map); ++ HDMI_WRITE(VC4_HDMI_AUDIO_PACKET_CONFIG, audio_packet_config); ++ vc4_hdmi_set_n_cts(hdmi); ++ ++ return 0; ++} ++ ++static int vc4_hdmi_audio_trigger(struct snd_pcm_substream *substream, int cmd, ++ struct snd_soc_dai *dai) ++{ ++ struct vc4_hdmi *hdmi = dai_to_hdmi(dai); ++ struct drm_encoder *encoder = hdmi->encoder; ++ struct drm_device *drm = encoder->dev; ++ struct vc4_dev *vc4 = to_vc4_dev(drm); ++ ++ switch (cmd) { ++ case SNDRV_PCM_TRIGGER_START: ++ vc4_hdmi_set_audio_infoframe(encoder); ++ HDMI_WRITE(VC4_HDMI_TX_PHY_CTL0, ++ HDMI_READ(VC4_HDMI_TX_PHY_CTL0) & ++ ~VC4_HDMI_TX_PHY_RNG_PWRDN); ++ HD_WRITE(VC4_HD_MAI_CTL, ++ VC4_SET_FIELD(hdmi->audio.channels, ++ VC4_HD_MAI_CTL_CHNUM) | ++ VC4_HD_MAI_CTL_ENABLE); ++ break; ++ case SNDRV_PCM_TRIGGER_STOP: ++ HD_WRITE(VC4_HD_MAI_CTL, ++ VC4_HD_MAI_CTL_DLATE | ++ VC4_HD_MAI_CTL_ERRORE | ++ VC4_HD_MAI_CTL_ERRORF); ++ HDMI_WRITE(VC4_HDMI_TX_PHY_CTL0, ++ HDMI_READ(VC4_HDMI_TX_PHY_CTL0) | ++ VC4_HDMI_TX_PHY_RNG_PWRDN); ++ break; ++ default: ++ break; ++ } ++ ++ return 0; ++} ++ ++static inline struct vc4_hdmi * ++snd_component_to_hdmi(struct snd_soc_component *component) ++{ ++ struct snd_soc_card *card = snd_soc_component_get_drvdata(component); ++ ++ return snd_soc_card_get_drvdata(card); ++} ++ ++static int vc4_hdmi_audio_eld_ctl_info(struct snd_kcontrol *kcontrol, ++ struct snd_ctl_elem_info *uinfo) ++{ ++ struct snd_soc_component *component = snd_kcontrol_chip(kcontrol); ++ struct vc4_hdmi *hdmi = snd_component_to_hdmi(component); ++ ++ uinfo->type = SNDRV_CTL_ELEM_TYPE_BYTES; ++ uinfo->count = sizeof(hdmi->connector->eld); ++ ++ return 0; ++} ++ ++static int vc4_hdmi_audio_eld_ctl_get(struct snd_kcontrol *kcontrol, ++ struct snd_ctl_elem_value *ucontrol) ++{ ++ struct snd_soc_component *component = snd_kcontrol_chip(kcontrol); ++ struct vc4_hdmi *hdmi = snd_component_to_hdmi(component); ++ ++ memcpy(ucontrol->value.bytes.data, hdmi->connector->eld, ++ sizeof(hdmi->connector->eld)); ++ ++ return 0; ++} ++ ++static const struct snd_kcontrol_new vc4_hdmi_audio_controls[] = { ++ { ++ .access = SNDRV_CTL_ELEM_ACCESS_READ | ++ SNDRV_CTL_ELEM_ACCESS_VOLATILE, ++ .iface = SNDRV_CTL_ELEM_IFACE_PCM, ++ .name = "ELD", ++ .info = vc4_hdmi_audio_eld_ctl_info, ++ .get = vc4_hdmi_audio_eld_ctl_get, ++ }, ++}; ++ ++static const struct snd_soc_dapm_widget vc4_hdmi_audio_widgets[] = { ++ SND_SOC_DAPM_OUTPUT("TX"), ++}; ++ ++static const struct snd_soc_dapm_route vc4_hdmi_audio_routes[] = { ++ { "TX", NULL, "Playback" }, ++}; ++ ++static const struct snd_soc_codec_driver vc4_hdmi_audio_codec_drv = { ++ .component_driver = { ++ .controls = vc4_hdmi_audio_controls, ++ .num_controls = ARRAY_SIZE(vc4_hdmi_audio_controls), ++ .dapm_widgets = vc4_hdmi_audio_widgets, ++ .num_dapm_widgets = ARRAY_SIZE(vc4_hdmi_audio_widgets), ++ .dapm_routes = vc4_hdmi_audio_routes, ++ .num_dapm_routes = ARRAY_SIZE(vc4_hdmi_audio_routes), ++ }, ++}; ++ ++static const struct snd_soc_dai_ops vc4_hdmi_audio_dai_ops = { ++ .startup = vc4_hdmi_audio_startup, ++ .shutdown = vc4_hdmi_audio_shutdown, ++ .hw_params = vc4_hdmi_audio_hw_params, ++ .set_fmt = vc4_hdmi_audio_set_fmt, ++ .trigger = vc4_hdmi_audio_trigger, ++}; ++ ++static struct snd_soc_dai_driver vc4_hdmi_audio_codec_dai_drv = { ++ .name = "vc4-hdmi-hifi", ++ .playback = { ++ .stream_name = "Playback", ++ .channels_min = 2, ++ .channels_max = 8, ++ .rates = SNDRV_PCM_RATE_32000 | SNDRV_PCM_RATE_44100 | ++ SNDRV_PCM_RATE_48000 | SNDRV_PCM_RATE_88200 | ++ SNDRV_PCM_RATE_96000 | SNDRV_PCM_RATE_176400 | ++ SNDRV_PCM_RATE_192000, ++ .formats = SNDRV_PCM_FMTBIT_IEC958_SUBFRAME_LE, ++ }, ++}; ++ ++static const struct snd_soc_component_driver vc4_hdmi_audio_cpu_dai_comp = { ++ .name = "vc4-hdmi-cpu-dai-component", ++}; ++ ++static int vc4_hdmi_audio_cpu_dai_probe(struct snd_soc_dai *dai) ++{ ++ struct vc4_hdmi *hdmi = dai_to_hdmi(dai); ++ ++ snd_soc_dai_init_dma_data(dai, &hdmi->audio.dma_data, NULL); ++ ++ return 0; ++} ++ ++static struct snd_soc_dai_driver vc4_hdmi_audio_cpu_dai_drv = { ++ .name = "vc4-hdmi-cpu-dai", ++ .probe = vc4_hdmi_audio_cpu_dai_probe, ++ .playback = { ++ .stream_name = "Playback", ++ .channels_min = 1, ++ .channels_max = 8, ++ .rates = SNDRV_PCM_RATE_32000 | SNDRV_PCM_RATE_44100 | ++ SNDRV_PCM_RATE_48000 | SNDRV_PCM_RATE_88200 | ++ SNDRV_PCM_RATE_96000 | SNDRV_PCM_RATE_176400 | ++ SNDRV_PCM_RATE_192000, ++ .formats = SNDRV_PCM_FMTBIT_IEC958_SUBFRAME_LE, ++ }, ++ .ops = &vc4_hdmi_audio_dai_ops, ++}; ++ ++static const struct snd_dmaengine_pcm_config pcm_conf = { ++ .chan_names[SNDRV_PCM_STREAM_PLAYBACK] = "audio-rx", ++ .prepare_slave_config = snd_dmaengine_pcm_prepare_slave_config, ++}; ++ ++static int vc4_hdmi_audio_init(struct vc4_hdmi *hdmi) ++{ ++ struct snd_soc_dai_link *dai_link = &hdmi->audio.link; ++ struct snd_soc_card *card = &hdmi->audio.card; ++ struct device *dev = &hdmi->pdev->dev; ++ const __be32 *addr; ++ int ret; ++ ++ if (!of_find_property(dev->of_node, "dmas", NULL)) { ++ dev_warn(dev, ++ "'dmas' DT property is missing, no HDMI audio\n"); ++ return 0; ++ } ++ ++ /* ++ * Get the physical address of VC4_HD_MAI_DATA. We need to retrieve ++ * the bus address specified in the DT, because the physical address ++ * (the one returned by platform_get_resource()) is not appropriate ++ * for DMA transfers. ++ * This VC/MMU should probably be exposed to avoid this kind of hacks. ++ */ ++ addr = of_get_address(dev->of_node, 1, NULL, NULL); ++ hdmi->audio.dma_data.addr = be32_to_cpup(addr) + VC4_HD_MAI_DATA; ++ hdmi->audio.dma_data.addr_width = DMA_SLAVE_BUSWIDTH_4_BYTES; ++ hdmi->audio.dma_data.maxburst = 2; ++ ++ ret = devm_snd_dmaengine_pcm_register(dev, &pcm_conf, 0); ++ if (ret) { ++ dev_err(dev, "Could not register PCM component: %d\n", ret); ++ return ret; ++ } ++ ++ ret = devm_snd_soc_register_component(dev, &vc4_hdmi_audio_cpu_dai_comp, ++ &vc4_hdmi_audio_cpu_dai_drv, 1); ++ if (ret) { ++ dev_err(dev, "Could not register CPU DAI: %d\n", ret); ++ return ret; ++ } ++ ++ /* register codec and codec dai */ ++ ret = snd_soc_register_codec(dev, &vc4_hdmi_audio_codec_drv, ++ &vc4_hdmi_audio_codec_dai_drv, 1); ++ if (ret) { ++ dev_err(dev, "Could not register codec: %d\n", ret); ++ return ret; ++ } ++ ++ dai_link->name = "MAI"; ++ dai_link->stream_name = "MAI PCM"; ++ dai_link->codec_dai_name = vc4_hdmi_audio_codec_dai_drv.name; ++ dai_link->cpu_dai_name = dev_name(dev); ++ dai_link->codec_name = dev_name(dev); ++ dai_link->platform_name = dev_name(dev); ++ ++ card->dai_link = dai_link; ++ card->num_links = 1; ++ card->name = "vc4-hdmi"; ++ card->dev = dev; ++ ++ /* ++ * Be careful, snd_soc_register_card() calls dev_set_drvdata() and ++ * stores a pointer to the snd card object in dev->driver_data. This ++ * means we cannot use it for something else. The hdmi back-pointer is ++ * now stored in card->drvdata and should be retrieved with ++ * snd_soc_card_get_drvdata() if needed. ++ */ ++ snd_soc_card_set_drvdata(card, hdmi); ++ ret = devm_snd_soc_register_card(dev, card); ++ if (ret) { ++ dev_err(dev, "Could not register sound card: %d\n", ret); ++ goto unregister_codec; ++ } ++ ++ return 0; ++ ++unregister_codec: ++ snd_soc_unregister_codec(dev); ++ ++ return ret; ++} ++ ++static void vc4_hdmi_audio_cleanup(struct vc4_hdmi *hdmi) ++{ ++ struct device *dev = &hdmi->pdev->dev; ++ ++ /* ++ * If drvdata is not set this means the audio card was not ++ * registered, just skip codec unregistration in this case. ++ */ ++ if (dev_get_drvdata(dev)) ++ snd_soc_unregister_codec(dev); ++} ++ + static int vc4_hdmi_bind(struct device *dev, struct device *master, void *data) + { + struct platform_device *pdev = to_platform_device(dev); +@@ -720,6 +1206,10 @@ static int vc4_hdmi_bind(struct device *dev, struct device *master, void *data) + goto err_destroy_encoder; + } + ++ ret = vc4_hdmi_audio_init(hdmi); ++ if (ret) ++ goto err_destroy_encoder; ++ + return 0; + + err_destroy_encoder: +@@ -741,6 +1231,8 @@ static void vc4_hdmi_unbind(struct device *dev, struct device *master, + struct vc4_dev *vc4 = drm->dev_private; + struct vc4_hdmi *hdmi = vc4->hdmi; + ++ vc4_hdmi_audio_cleanup(hdmi); ++ + vc4_hdmi_connector_destroy(hdmi->connector); + vc4_hdmi_encoder_destroy(hdmi->encoder); + +diff --git a/drivers/gpu/drm/vc4/vc4_regs.h b/drivers/gpu/drm/vc4/vc4_regs.h +index 385405a2df05..932093936178 100644 +--- a/drivers/gpu/drm/vc4/vc4_regs.h ++++ b/drivers/gpu/drm/vc4/vc4_regs.h +@@ -446,11 +446,62 @@ + #define VC4_HDMI_HOTPLUG 0x00c + # define VC4_HDMI_HOTPLUG_CONNECTED BIT(0) + ++/* 3 bits per field, where each field maps from that corresponding MAI ++ * bus channel to the given HDMI channel. ++ */ ++#define VC4_HDMI_MAI_CHANNEL_MAP 0x090 ++ ++#define VC4_HDMI_MAI_CONFIG 0x094 ++# define VC4_HDMI_MAI_CONFIG_FORMAT_REVERSE BIT(27) ++# define VC4_HDMI_MAI_CONFIG_BIT_REVERSE BIT(26) ++# define VC4_HDMI_MAI_CHANNEL_MASK_MASK VC4_MASK(15, 0) ++# define VC4_HDMI_MAI_CHANNEL_MASK_SHIFT 0 ++ ++/* Last received format word on the MAI bus. */ ++#define VC4_HDMI_MAI_FORMAT 0x098 ++ ++#define VC4_HDMI_AUDIO_PACKET_CONFIG 0x09c ++# define VC4_HDMI_AUDIO_PACKET_ZERO_DATA_ON_SAMPLE_FLAT BIT(29) ++# define VC4_HDMI_AUDIO_PACKET_ZERO_DATA_ON_INACTIVE_CHANNELS BIT(24) ++# define VC4_HDMI_AUDIO_PACKET_FORCE_SAMPLE_PRESENT BIT(19) ++# define VC4_HDMI_AUDIO_PACKET_FORCE_B_FRAME BIT(18) ++# define VC4_HDMI_AUDIO_PACKET_B_FRAME_IDENTIFIER_MASK VC4_MASK(13, 10) ++# define VC4_HDMI_AUDIO_PACKET_B_FRAME_IDENTIFIER_SHIFT 10 ++/* If set, then multichannel, otherwise 2 channel. */ ++# define VC4_HDMI_AUDIO_PACKET_AUDIO_LAYOUT BIT(9) ++/* If set, then AUDIO_LAYOUT overrides audio_cea_mask */ ++# define VC4_HDMI_AUDIO_PACKET_FORCE_AUDIO_LAYOUT BIT(8) ++# define VC4_HDMI_AUDIO_PACKET_CEA_MASK_MASK VC4_MASK(7, 0) ++# define VC4_HDMI_AUDIO_PACKET_CEA_MASK_SHIFT 0 ++ + #define VC4_HDMI_RAM_PACKET_CONFIG 0x0a0 + # define VC4_HDMI_RAM_PACKET_ENABLE BIT(16) + + #define VC4_HDMI_RAM_PACKET_STATUS 0x0a4 + ++#define VC4_HDMI_CRP_CFG 0x0a8 ++/* When set, the CTS_PERIOD counts based on MAI bus sync pulse instead ++ * of pixel clock. ++ */ ++# define VC4_HDMI_CRP_USE_MAI_BUS_SYNC_FOR_CTS BIT(26) ++/* When set, no CRP packets will be sent. */ ++# define VC4_HDMI_CRP_CFG_DISABLE BIT(25) ++/* If set, generates CTS values based on N, audio clock, and video ++ * clock. N must be divisible by 128. ++ */ ++# define VC4_HDMI_CRP_CFG_EXTERNAL_CTS_EN BIT(24) ++# define VC4_HDMI_CRP_CFG_N_MASK VC4_MASK(19, 0) ++# define VC4_HDMI_CRP_CFG_N_SHIFT 0 ++ ++/* 20-bit fields containing CTS values to be transmitted if !EXTERNAL_CTS_EN */ ++#define VC4_HDMI_CTS_0 0x0ac ++#define VC4_HDMI_CTS_1 0x0b0 ++/* 20-bit fields containing number of clocks to send CTS0/1 before ++ * switching to the other one. ++ */ ++#define VC4_HDMI_CTS_PERIOD_0 0x0b4 ++#define VC4_HDMI_CTS_PERIOD_1 0x0b8 ++ + #define VC4_HDMI_HORZA 0x0c4 + # define VC4_HDMI_HORZA_VPOS BIT(14) + # define VC4_HDMI_HORZA_HPOS BIT(13) +@@ -512,7 +563,11 @@ + + #define VC4_HDMI_TX_PHY_RESET_CTL 0x2c0 + +-#define VC4_HDMI_GCP_0 0x400 ++#define VC4_HDMI_TX_PHY_CTL0 0x2c4 ++# define VC4_HDMI_TX_PHY_RNG_PWRDN BIT(25) ++ ++#define VC4_HDMI_GCP(x) (0x400 + ((x) * 0x4)) ++#define VC4_HDMI_RAM_PACKET(x) (0x400 + ((x) * 0x24)) + #define VC4_HDMI_PACKET_STRIDE 0x24 + + #define VC4_HD_M_CTL 0x00c +@@ -522,6 +577,56 @@ + # define VC4_HD_M_ENABLE BIT(0) + + #define VC4_HD_MAI_CTL 0x014 ++/* Set when audio stream is received at a slower rate than the ++ * sampling period, so MAI fifo goes empty. Write 1 to clear. ++ */ ++# define VC4_HD_MAI_CTL_DLATE BIT(15) ++# define VC4_HD_MAI_CTL_BUSY BIT(14) ++# define VC4_HD_MAI_CTL_CHALIGN BIT(13) ++# define VC4_HD_MAI_CTL_WHOLSMP BIT(12) ++# define VC4_HD_MAI_CTL_FULL BIT(11) ++# define VC4_HD_MAI_CTL_EMPTY BIT(10) ++# define VC4_HD_MAI_CTL_FLUSH BIT(9) ++/* If set, MAI bus generates SPDIF (bit 31) parity instead of passing ++ * through. ++ */ ++# define VC4_HD_MAI_CTL_PAREN BIT(8) ++# define VC4_HD_MAI_CTL_CHNUM_MASK VC4_MASK(7, 4) ++# define VC4_HD_MAI_CTL_CHNUM_SHIFT 4 ++# define VC4_HD_MAI_CTL_ENABLE BIT(3) ++/* Underflow error status bit, write 1 to clear. */ ++# define VC4_HD_MAI_CTL_ERRORE BIT(2) ++/* Overflow error status bit, write 1 to clear. */ ++# define VC4_HD_MAI_CTL_ERRORF BIT(1) ++/* Single-shot reset bit. Read value is undefined. */ ++# define VC4_HD_MAI_CTL_RESET BIT(0) ++ ++#define VC4_HD_MAI_THR 0x018 ++# define VC4_HD_MAI_THR_PANICHIGH_MASK VC4_MASK(29, 24) ++# define VC4_HD_MAI_THR_PANICHIGH_SHIFT 24 ++# define VC4_HD_MAI_THR_PANICLOW_MASK VC4_MASK(21, 16) ++# define VC4_HD_MAI_THR_PANICLOW_SHIFT 16 ++# define VC4_HD_MAI_THR_DREQHIGH_MASK VC4_MASK(13, 8) ++# define VC4_HD_MAI_THR_DREQHIGH_SHIFT 8 ++# define VC4_HD_MAI_THR_DREQLOW_MASK VC4_MASK(5, 0) ++# define VC4_HD_MAI_THR_DREQLOW_SHIFT 0 ++ ++/* Format header to be placed on the MAI data. Unused. */ ++#define VC4_HD_MAI_FMT 0x01c ++ ++/* Register for DMAing in audio data to be transported over the MAI ++ * bus to the Falcon core. ++ */ ++#define VC4_HD_MAI_DATA 0x020 ++ ++/* Divider from HDMI HSM clock to MAI serial clock. Sampling period ++ * converges to N / (M + 1) cycles. ++ */ ++#define VC4_HD_MAI_SMP 0x02c ++# define VC4_HD_MAI_SMP_N_MASK VC4_MASK(31, 8) ++# define VC4_HD_MAI_SMP_N_SHIFT 8 ++# define VC4_HD_MAI_SMP_M_MASK VC4_MASK(7, 0) ++# define VC4_HD_MAI_SMP_M_SHIFT 0 + + #define VC4_HD_VID_CTL 0x038 + # define VC4_HD_VID_CTL_ENABLE BIT(31) +-- +2.12.0 + +From 25ea82d7f7c869ff81ff8e64d24c5c4a896239fe Mon Sep 17 00:00:00 2001 +From: Boris Brezillon <boris.brezillon@free-electrons.com> +Date: Mon, 27 Feb 2017 12:28:03 -0800 +Subject: [PATCH 3/3] ARM: dts: bcm283x: Add HDMI audio related properties + +Add the dmas and dma-names properties to support HDMI audio. + +Signed-off-by: Boris Brezillon <boris.brezillon@free-electrons.com> +Signed-off-by: Eric Anholt <eric@anholt.net> +--- + arch/arm/boot/dts/bcm283x.dtsi | 2 ++ + 1 file changed, 2 insertions(+) + +diff --git a/arch/arm/boot/dts/bcm283x.dtsi b/arch/arm/boot/dts/bcm283x.dtsi +index a3106aa446c6..a31b0b303ddc 100644 +--- a/arch/arm/boot/dts/bcm283x.dtsi ++++ b/arch/arm/boot/dts/bcm283x.dtsi +@@ -499,6 +499,8 @@ + clocks = <&clocks BCM2835_PLLH_PIX>, + <&clocks BCM2835_CLOCK_HSM>; + clock-names = "pixel", "hdmi"; ++ dmas = <&dma 17>; ++ dma-names = "audio-rx"; + status = "disabled"; + }; + +-- +2.12.0 + diff --git a/bcm283x-mmc-bcm2835.patch b/bcm283x-mmc-bcm2835.patch new file mode 100644 index 000000000..d9591b438 --- /dev/null +++ b/bcm283x-mmc-bcm2835.patch @@ -0,0 +1,1932 @@ +From patchwork Wed Mar 8 09:19:01 2017 +Content-Type: text/plain; charset="utf-8" +MIME-Version: 1.0 +Content-Transfer-Encoding: 7bit +Subject: [v4,1/7] dt-bindings: Add binding for brcm,bcm2835-sdhost. +From: Gerd Hoffmann <kraxel@redhat.com> +X-Patchwork-Id: 9610673 +Message-Id: <1488964751-22763-2-git-send-email-kraxel@redhat.com> +To: linux-rpi-kernel@lists.infradead.org +Cc: mark.rutland@arm.com, stefan.wahren@i2se.com, ulf.hansson@linaro.org, + f.fainelli@gmail.com, sbranden@broadcom.com, devicetree@vger.kernel.org, + rjui@broadcom.com, lee@kernel.org, will.deacon@arm.com, + linux@armlinux.org.uk, + linux-kernel@vger.kernel.org, eric@anholt.net, robh+dt@kernel.org, + bcm-kernel-feedback-list@broadcom.com, Gerd Hoffmann <kraxel@redhat.com>, + catalin.marinas@arm.com, linux-mmc@vger.kernel.org, + linux-arm-kernel@lists.infradead.org +Date: Wed, 8 Mar 2017 10:19:01 +0100 + +From: Eric Anholt <eric@anholt.net> + +This is the other SD controller on the platform, which can be swapped +to the role of SD card host using pin muxing. + +Signed-off-by: Eric Anholt <eric@anholt.net> +Signed-off-by: Gerd Hoffmann <kraxel@redhat.com> +Acked-by: Rob Herring <robh@kernel.org> +--- + .../bindings/mmc/brcm,bcm2835-sdhost.txt | 23 ++++++++++++++++++++++ + 1 file changed, 23 insertions(+) + create mode 100644 Documentation/devicetree/bindings/mmc/brcm,bcm2835-sdhost.txt + +diff --git a/Documentation/devicetree/bindings/mmc/brcm,bcm2835-sdhost.txt b/Documentation/devicetree/bindings/mmc/brcm,bcm2835-sdhost.txt +new file mode 100644 +index 0000000..d876580 +--- /dev/null ++++ b/Documentation/devicetree/bindings/mmc/brcm,bcm2835-sdhost.txt +@@ -0,0 +1,23 @@ ++Broadcom BCM2835 SDHOST controller ++ ++This file documents differences between the core properties described ++by mmc.txt and the properties that represent the BCM2835 controller. ++ ++Required properties: ++- compatible: Should be "brcm,bcm2835-sdhost". ++- clocks: The clock feeding the SDHOST controller. ++ ++Optional properties: ++- dmas: DMA channel for read and write. ++ See Documentation/devicetree/bindings/dma/dma.txt for details ++ ++Example: ++ ++sdhost: mmc@7e202000 { ++ compatible = "brcm,bcm2835-sdhost"; ++ reg = <0x7e202000 0x100>; ++ interrupts = <2 24>; ++ clocks = <&clocks BCM2835_CLOCK_VPU>; ++ dmas = <&dma 13>; ++ dma-names = "rx-tx"; ++}; +From patchwork Wed Mar 8 09:19:03 2017 +Content-Type: text/plain; charset="utf-8" +MIME-Version: 1.0 +Content-Transfer-Encoding: 7bit +Subject: [v4,2/7] mmc: bcm2835: Add new driver for the sdhost controller. +From: Gerd Hoffmann <kraxel@redhat.com> +X-Patchwork-Id: 9610701 +Message-Id: <1488964751-22763-4-git-send-email-kraxel@redhat.com> +To: linux-rpi-kernel@lists.infradead.org +Cc: mark.rutland@arm.com, stefan.wahren@i2se.com, ulf.hansson@linaro.org, + f.fainelli@gmail.com, sbranden@broadcom.com, devicetree@vger.kernel.org, + rjui@broadcom.com, lee@kernel.org, will.deacon@arm.com, + linux@armlinux.org.uk, + linux-kernel@vger.kernel.org, eric@anholt.net, robh+dt@kernel.org, + bcm-kernel-feedback-list@broadcom.com, Gerd Hoffmann <kraxel@redhat.com>, + catalin.marinas@arm.com, linux-mmc@vger.kernel.org, + linux-arm-kernel@lists.infradead.org +Date: Wed, 8 Mar 2017 10:19:03 +0100 + +From: Eric Anholt <eric@anholt.net> + +The 2835 has two SD controllers: The Arasan sdhci controller (supported +by the iproc driver) and a custom sdhost controller. This patch adds a +driver for the latter. + +The sdhci controller supports both sdcard and sdio. The sdhost +controller supports the sdcard only, but has better performance. Also +note that the rpi3 has sdio wifi, so driving the sdcard with the sdhost +controller allows to use the sdhci controller for wifi support. + +The configuration is done by devicetree via pin muxing. Both SD +controller are available on the same pins (2 pin groups = pin 22 to 27 + +pin 48 to 53). So it's possible to use both SD controllers at the same +time with different pin groups. + +The code was originally written by Phil Elwell in the downstream +Rasbperry Pi tree. In preparation for the upstream merge it was +cleaned up and the code base was moderized by Eric Anholt, Stefan +Wahren and Gerd Hoffmann. + +Signed-off-by: Eric Anholt <eric@anholt.net> +Signed-off-by: Stefan Wahren <stefan.wahren@i2se.com> +Signed-off-by: Gerd Hoffmann <kraxel@redhat.com> +--- + drivers/mmc/host/Kconfig | 14 + + drivers/mmc/host/Makefile | 1 + + drivers/mmc/host/bcm2835.c | 1465 ++++++++++++++++++++++++++++++++++++++++++++ + 3 files changed, 1480 insertions(+) + create mode 100644 drivers/mmc/host/bcm2835.c + +diff --git a/drivers/mmc/host/Kconfig b/drivers/mmc/host/Kconfig +index f08691a..a638cd0 100644 +--- a/drivers/mmc/host/Kconfig ++++ b/drivers/mmc/host/Kconfig +@@ -799,6 +799,20 @@ config MMC_TOSHIBA_PCI + depends on PCI + help + ++config MMC_BCM2835 ++ tristate "Broadcom BCM2835 SDHOST MMC Controller support" ++ depends on ARCH_BCM2835 || COMPILE_TEST ++ depends on HAS_DMA ++ help ++ This selects the BCM2835 SDHOST MMC controller. If you have ++ a BCM2835 platform with SD or MMC devices, say Y or M here. ++ ++ Note that the BCM2835 has two SD controllers: The Arasan ++ sdhci controller (supported by MMC_SDHCI_IPROC) and a custom ++ sdhost controller (supported by this driver). ++ ++ If unsure, say N. ++ + config MMC_MTK + tristate "MediaTek SD/MMC Card Interface support" + depends on HAS_DMA +diff --git a/drivers/mmc/host/Makefile b/drivers/mmc/host/Makefile +index 6d548c4..bc2c2e2 100644 +--- a/drivers/mmc/host/Makefile ++++ b/drivers/mmc/host/Makefile +@@ -59,6 +59,7 @@ obj-$(CONFIG_MMC_MOXART) += moxart-mmc.o + obj-$(CONFIG_MMC_SUNXI) += sunxi-mmc.o + obj-$(CONFIG_MMC_USDHI6ROL0) += usdhi6rol0.o + obj-$(CONFIG_MMC_TOSHIBA_PCI) += toshsd.o ++obj-$(CONFIG_MMC_BCM2835) += bcm2835.o + + obj-$(CONFIG_MMC_REALTEK_PCI) += rtsx_pci_sdmmc.o + obj-$(CONFIG_MMC_REALTEK_USB) += rtsx_usb_sdmmc.o +diff --git a/drivers/mmc/host/bcm2835.c b/drivers/mmc/host/bcm2835.c +new file mode 100644 +index 0000000..7d1b0db7 +--- /dev/null ++++ b/drivers/mmc/host/bcm2835.c +@@ -0,0 +1,1465 @@ ++/* ++ * bcm2835 sdhost driver. ++ * ++ * The 2835 has two SD controllers: The Arasan sdhci controller ++ * (supported by the iproc driver) and a custom sdhost controller ++ * (supported by this driver). ++ * ++ * The sdhci controller supports both sdcard and sdio. The sdhost ++ * controller supports the sdcard only, but has better performance. ++ * Also note that the rpi3 has sdio wifi, so driving the sdcard with ++ * the sdhost controller allows to use the sdhci controller for wifi ++ * support. ++ * ++ * The configuration is done by devicetree via pin muxing. Both ++ * SD controller are available on the same pins (2 pin groups = pin 22 ++ * to 27 + pin 48 to 53). So it's possible to use both SD controllers ++ * at the same time with different pin groups. ++ * ++ * Author: Phil Elwell <phil@raspberrypi.org> ++ * Copyright (C) 2015-2016 Raspberry Pi (Trading) Ltd. ++ * ++ * Based on ++ * mmc-bcm2835.c by Gellert Weisz ++ * which is, in turn, based on ++ * sdhci-bcm2708.c by Broadcom ++ * sdhci-bcm2835.c by Stephen Warren and Oleksandr Tymoshenko ++ * sdhci.c and sdhci-pci.c by Pierre Ossman ++ * ++ * This program is free software; you can redistribute it and/or modify it ++ * under the terms and conditions of the GNU General Public License, ++ * version 2, as published by the Free Software Foundation. ++ * ++ * This program is distributed in the hope it will be useful, but WITHOUT ++ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or ++ * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for ++ * more details. ++ * ++ * You should have received a copy of the GNU General Public License ++ * along with this program. If not, see <http://www.gnu.org/licenses/>. ++ */ ++#include <linux/clk.h> ++#include <linux/delay.h> ++#include <linux/device.h> ++#include <linux/dmaengine.h> ++#include <linux/dma-mapping.h> ++#include <linux/err.h> ++#include <linux/highmem.h> ++#include <linux/interrupt.h> ++#include <linux/io.h> ++#include <linux/iopoll.h> ++#include <linux/module.h> ++#include <linux/of_address.h> ++#include <linux/of_irq.h> ++#include <linux/platform_device.h> ++#include <linux/scatterlist.h> ++#include <linux/time.h> ++#include <linux/workqueue.h> ++ ++#include <linux/mmc/host.h> ++#include <linux/mmc/mmc.h> ++#include <linux/mmc/sd.h> ++ ++#define SDCMD 0x00 /* Command to SD card - 16 R/W */ ++#define SDARG 0x04 /* Argument to SD card - 32 R/W */ ++#define SDTOUT 0x08 /* Start value for timeout counter - 32 R/W */ ++#define SDCDIV 0x0c /* Start value for clock divider - 11 R/W */ ++#define SDRSP0 0x10 /* SD card response (31:0) - 32 R */ ++#define SDRSP1 0x14 /* SD card response (63:32) - 32 R */ ++#define SDRSP2 0x18 /* SD card response (95:64) - 32 R */ ++#define SDRSP3 0x1c /* SD card response (127:96) - 32 R */ ++#define SDHSTS 0x20 /* SD host status - 11 R/W */ ++#define SDVDD 0x30 /* SD card power control - 1 R/W */ ++#define SDEDM 0x34 /* Emergency Debug Mode - 13 R/W */ ++#define SDHCFG 0x38 /* Host configuration - 2 R/W */ ++#define SDHBCT 0x3c /* Host byte count (debug) - 32 R/W */ ++#define SDDATA 0x40 /* Data to/from SD card - 32 R/W */ ++#define SDHBLC 0x50 /* Host block count (SDIO/SDHC) - 9 R/W */ ++ ++#define SDCMD_NEW_FLAG 0x8000 ++#define SDCMD_FAIL_FLAG 0x4000 ++#define SDCMD_BUSYWAIT 0x800 ++#define SDCMD_NO_RESPONSE 0x400 ++#define SDCMD_LONG_RESPONSE 0x200 ++#define SDCMD_WRITE_CMD 0x80 ++#define SDCMD_READ_CMD 0x40 ++#define SDCMD_CMD_MASK 0x3f ++ ++#define SDCDIV_MAX_CDIV 0x7ff ++ ++#define SDHSTS_BUSY_IRPT 0x400 ++#define SDHSTS_BLOCK_IRPT 0x200 ++#define SDHSTS_SDIO_IRPT 0x100 ++#define SDHSTS_REW_TIME_OUT 0x80 ++#define SDHSTS_CMD_TIME_OUT 0x40 ++#define SDHSTS_CRC16_ERROR 0x20 ++#define SDHSTS_CRC7_ERROR 0x10 ++#define SDHSTS_FIFO_ERROR 0x08 ++/* Reserved */ ++/* Reserved */ ++#define SDHSTS_DATA_FLAG 0x01 ++ ++#define SDHSTS_TRANSFER_ERROR_MASK (SDHSTS_CRC7_ERROR | \ ++ SDHSTS_CRC16_ERROR | \ ++ SDHSTS_REW_TIME_OUT | \ ++ SDHSTS_FIFO_ERROR) ++ ++#define SDHSTS_ERROR_MASK (SDHSTS_CMD_TIME_OUT | \ ++ SDHSTS_TRANSFER_ERROR_MASK) ++ ++#define SDHCFG_BUSY_IRPT_EN BIT(10) ++#define SDHCFG_BLOCK_IRPT_EN BIT(8) ++#define SDHCFG_SDIO_IRPT_EN BIT(5) ++#define SDHCFG_DATA_IRPT_EN BIT(4) ++#define SDHCFG_SLOW_CARD BIT(3) ++#define SDHCFG_WIDE_EXT_BUS BIT(2) ++#define SDHCFG_WIDE_INT_BUS BIT(1) ++#define SDHCFG_REL_CMD_LINE BIT(0) ++ ++#define SDVDD_POWER_OFF 0 ++#define SDVDD_POWER_ON 1 ++ ++#define SDEDM_FORCE_DATA_MODE BIT(19) ++#define SDEDM_CLOCK_PULSE BIT(20) ++#define SDEDM_BYPASS BIT(21) ++ ++#define SDEDM_WRITE_THRESHOLD_SHIFT 9 ++#define SDEDM_READ_THRESHOLD_SHIFT 14 ++#define SDEDM_THRESHOLD_MASK 0x1f ++ ++#define SDEDM_FSM_MASK 0xf ++#define SDEDM_FSM_IDENTMODE 0x0 ++#define SDEDM_FSM_DATAMODE 0x1 ++#define SDEDM_FSM_READDATA 0x2 ++#define SDEDM_FSM_WRITEDATA 0x3 ++#define SDEDM_FSM_READWAIT 0x4 ++#define SDEDM_FSM_READCRC 0x5 ++#define SDEDM_FSM_WRITECRC 0x6 ++#define SDEDM_FSM_WRITEWAIT1 0x7 ++#define SDEDM_FSM_POWERDOWN 0x8 ++#define SDEDM_FSM_POWERUP 0x9 ++#define SDEDM_FSM_WRITESTART1 0xa ++#define SDEDM_FSM_WRITESTART2 0xb ++#define SDEDM_FSM_GENPULSES 0xc ++#define SDEDM_FSM_WRITEWAIT2 0xd ++#define SDEDM_FSM_STARTPOWDOWN 0xf ++ ++#define SDDATA_FIFO_WORDS 16 ++ ++#define FIFO_READ_THRESHOLD 4 ++#define FIFO_WRITE_THRESHOLD 4 ++#define SDDATA_FIFO_PIO_BURST 8 ++ ++#define PIO_THRESHOLD 1 /* Maximum block count for PIO (0 = always DMA) */ ++ ++struct bcm2835_host { ++ spinlock_t lock; ++ struct mutex mutex; ++ ++ void __iomem *ioaddr; ++ u32 phys_addr; ++ ++ struct mmc_host *mmc; ++ struct platform_device *pdev; ++ ++ int clock; /* Current clock speed */ ++ unsigned int max_clk; /* Max possible freq */ ++ struct work_struct dma_work; ++ struct delayed_work timeout_work; /* Timer for timeouts */ ++ struct sg_mapping_iter sg_miter; /* SG state for PIO */ ++ unsigned int blocks; /* remaining PIO blocks */ ++ int irq; /* Device IRQ */ ++ ++ u32 ns_per_fifo_word; ++ ++ /* cached registers */ ++ u32 hcfg; ++ u32 cdiv; ++ ++ struct mmc_request *mrq; /* Current request */ ++ struct mmc_command *cmd; /* Current command */ ++ struct mmc_data *data; /* Current data request */ ++ bool data_complete:1;/* Data finished before cmd */ ++ bool use_busy:1; /* Wait for busy interrupt */ ++ bool use_sbc:1; /* Send CMD23 */ ++ ++ /* for threaded irq handler */ ++ bool irq_block; ++ bool irq_busy; ++ bool irq_data; ++ ++ /* DMA part */ ++ struct dma_chan *dma_chan_rxtx; ++ struct dma_chan *dma_chan; ++ struct dma_slave_config dma_cfg_rx; ++ struct dma_slave_config dma_cfg_tx; ++ struct dma_async_tx_descriptor *dma_desc; ++ u32 dma_dir; ++ u32 drain_words; ++ struct page *drain_page; ++ u32 drain_offset; ++ bool use_dma; ++}; ++ ++static void bcm2835_dumpcmd(struct bcm2835_host *host, struct mmc_command *cmd, ++ const char *label) ++{ ++ struct device *dev = &host->pdev->dev; ++ ++ if (!cmd) ++ return; ++ ++ dev_dbg(dev, "%c%s op %d arg 0x%x flags 0x%x - resp %08x %08x %08x %08x, err %d\n", ++ (cmd == host->cmd) ? '>' : ' ', ++ label, cmd->opcode, cmd->arg, cmd->flags, ++ cmd->resp[0], cmd->resp[1], cmd->resp[2], cmd->resp[3], ++ cmd->error); ++} ++ ++static void bcm2835_dumpregs(struct bcm2835_host *host) ++{ ++ struct mmc_request *mrq = host->mrq; ++ struct device *dev = &host->pdev->dev; ++ ++ if (mrq) { ++ bcm2835_dumpcmd(host, mrq->sbc, "sbc"); ++ bcm2835_dumpcmd(host, mrq->cmd, "cmd"); ++ if (mrq->data) { ++ dev_dbg(dev, "data blocks %x blksz %x - err %d\n", ++ mrq->data->blocks, ++ mrq->data->blksz, ++ mrq->data->error); ++ } ++ bcm2835_dumpcmd(host, mrq->stop, "stop"); ++ } ++ ++ dev_dbg(dev, "=========== REGISTER DUMP ===========\n"); ++ dev_dbg(dev, "SDCMD 0x%08x\n", readl(host->ioaddr + SDCMD)); ++ dev_dbg(dev, "SDARG 0x%08x\n", readl(host->ioaddr + SDARG)); ++ dev_dbg(dev, "SDTOUT 0x%08x\n", readl(host->ioaddr + SDTOUT)); ++ dev_dbg(dev, "SDCDIV 0x%08x\n", readl(host->ioaddr + SDCDIV)); ++ dev_dbg(dev, "SDRSP0 0x%08x\n", readl(host->ioaddr + SDRSP0)); ++ dev_dbg(dev, "SDRSP1 0x%08x\n", readl(host->ioaddr + SDRSP1)); ++ dev_dbg(dev, "SDRSP2 0x%08x\n", readl(host->ioaddr + SDRSP2)); ++ dev_dbg(dev, "SDRSP3 0x%08x\n", readl(host->ioaddr + SDRSP3)); ++ dev_dbg(dev, "SDHSTS 0x%08x\n", readl(host->ioaddr + SDHSTS)); ++ dev_dbg(dev, "SDVDD 0x%08x\n", readl(host->ioaddr + SDVDD)); ++ dev_dbg(dev, "SDEDM 0x%08x\n", readl(host->ioaddr + SDEDM)); ++ dev_dbg(dev, "SDHCFG 0x%08x\n", readl(host->ioaddr + SDHCFG)); ++ dev_dbg(dev, "SDHBCT 0x%08x\n", readl(host->ioaddr + SDHBCT)); ++ dev_dbg(dev, "SDHBLC 0x%08x\n", readl(host->ioaddr + SDHBLC)); ++ dev_dbg(dev, "===========================================\n"); ++} ++ ++static void bcm2835_reset_internal(struct bcm2835_host *host) ++{ ++ u32 temp; ++ ++ writel(SDVDD_POWER_OFF, host->ioaddr + SDVDD); ++ writel(0, host->ioaddr + SDCMD); ++ writel(0, host->ioaddr + SDARG); ++ writel(0xf00000, host->ioaddr + SDTOUT); ++ writel(0, host->ioaddr + SDCDIV); ++ writel(0x7f8, host->ioaddr + SDHSTS); /* Write 1s to clear */ ++ writel(0, host->ioaddr + SDHCFG); ++ writel(0, host->ioaddr + SDHBCT); ++ writel(0, host->ioaddr + SDHBLC); ++ ++ /* Limit fifo usage due to silicon bug */ ++ temp = readl(host->ioaddr + SDEDM); ++ temp &= ~((SDEDM_THRESHOLD_MASK << SDEDM_READ_THRESHOLD_SHIFT) | ++ (SDEDM_THRESHOLD_MASK << SDEDM_WRITE_THRESHOLD_SHIFT)); ++ temp |= (FIFO_READ_THRESHOLD << SDEDM_READ_THRESHOLD_SHIFT) | ++ (FIFO_WRITE_THRESHOLD << SDEDM_WRITE_THRESHOLD_SHIFT); ++ writel(temp, host->ioaddr + SDEDM); ++ msleep(20); ++ writel(SDVDD_POWER_ON, host->ioaddr + SDVDD); ++ msleep(20); ++ host->clock = 0; ++ writel(host->hcfg, host->ioaddr + SDHCFG); ++ writel(host->cdiv, host->ioaddr + SDCDIV); ++} ++ ++static void bcm2835_reset(struct mmc_host *mmc) ++{ ++ struct bcm2835_host *host = mmc_priv(mmc); ++ ++ if (host->dma_chan) ++ dmaengine_terminate_sync(host->dma_chan); ++ bcm2835_reset_internal(host); ++} ++ ++static void bcm2835_finish_command(struct bcm2835_host *host); ++ ++static void bcm2835_wait_transfer_complete(struct bcm2835_host *host) ++{ ++ int timediff; ++ u32 alternate_idle; ++ ++ alternate_idle = (host->mrq->data->flags & MMC_DATA_READ) ? ++ SDEDM_FSM_READWAIT : SDEDM_FSM_WRITESTART1; ++ ++ timediff = 0; ++ ++ while (1) { ++ u32 edm, fsm; ++ ++ edm = readl(host->ioaddr + SDEDM); ++ fsm = edm & SDEDM_FSM_MASK; ++ ++ if ((fsm == SDEDM_FSM_IDENTMODE) || ++ (fsm == SDEDM_FSM_DATAMODE)) ++ break; ++ if (fsm == alternate_idle) { ++ writel(edm | SDEDM_FORCE_DATA_MODE, ++ host->ioaddr + SDEDM); ++ break; ++ } ++ ++ timediff++; ++ if (timediff == 100000) { ++ dev_err(&host->pdev->dev, ++ "wait_transfer_complete - still waiting after %d retries\n", ++ timediff); ++ bcm2835_dumpregs(host); ++ host->mrq->data->error = -ETIMEDOUT; ++ return; ++ } ++ cpu_relax(); ++ } ++} ++ ++static void bcm2835_dma_complete(void *param) ++{ ++ struct bcm2835_host *host = param; ++ ++ schedule_work(&host->dma_work); ++} ++ ++static void bcm2835_transfer_block_pio(struct bcm2835_host *host, bool is_read) ++{ ++ unsigned long flags; ++ size_t blksize; ++ unsigned long wait_max; ++ ++ blksize = host->data->blksz; ++ ++ wait_max = jiffies + msecs_to_jiffies(500); ++ ++ local_irq_save(flags); ++ ++ while (blksize) { ++ int copy_words; ++ u32 hsts = 0; ++ size_t len; ++ u32 *buf; ++ ++ if (!sg_miter_next(&host->sg_miter)) { ++ host->data->error = -EINVAL; ++ break; ++ } ++ ++ len = min(host->sg_miter.length, blksize); ++ if (len % 4) { ++ host->data->error = -EINVAL; ++ break; ++ } ++ ++ blksize -= len; ++ host->sg_miter.consumed = len; ++ ++ buf = (u32 *)host->sg_miter.addr; ++ ++ copy_words = len / 4; ++ ++ while (copy_words) { ++ int burst_words, words; ++ u32 edm; ++ ++ burst_words = min(SDDATA_FIFO_PIO_BURST, copy_words); ++ edm = readl(host->ioaddr + SDEDM); ++ if (is_read) ++ words = ((edm >> 4) & 0x1f); ++ else ++ words = SDDATA_FIFO_WORDS - ((edm >> 4) & 0x1f); ++ ++ if (words < burst_words) { ++ int fsm_state = (edm & SDEDM_FSM_MASK); ++ struct device *dev = &host->pdev->dev; ++ ++ if ((is_read && ++ (fsm_state != SDEDM_FSM_READDATA && ++ fsm_state != SDEDM_FSM_READWAIT && ++ fsm_state != SDEDM_FSM_READCRC)) || ++ (!is_read && ++ (fsm_state != SDEDM_FSM_WRITEDATA && ++ fsm_state != SDEDM_FSM_WRITESTART1 && ++ fsm_state != SDEDM_FSM_WRITESTART2))) { ++ hsts = readl(host->ioaddr + SDHSTS); ++ dev_err(dev, "fsm %x, hsts %08x\n", ++ fsm_state, hsts); ++ if (hsts & SDHSTS_ERROR_MASK) ++ break; ++ } ++ ++ if (time_after(jiffies, wait_max)) { ++ dev_err(dev, "PIO %s timeout - EDM %08x\n", ++ is_read ? "read" : "write", ++ edm); ++ hsts = SDHSTS_REW_TIME_OUT; ++ break; ++ } ++ ndelay((burst_words - words) * ++ host->ns_per_fifo_word); ++ continue; ++ } else if (words > copy_words) { ++ words = copy_words; ++ } ++ ++ copy_words -= words; ++ ++ while (words) { ++ if (is_read) ++ *(buf++) = readl(host->ioaddr + SDDATA); ++ else ++ writel(*(buf++), host->ioaddr + SDDATA); ++ words--; ++ } ++ } ++ ++ if (hsts & SDHSTS_ERROR_MASK) ++ break; ++ } ++ ++ sg_miter_stop(&host->sg_miter); ++ ++ local_irq_restore(flags); ++} ++ ++static void bcm2835_transfer_pio(struct bcm2835_host *host) ++{ ++ struct device *dev = &host->pdev->dev; ++ u32 sdhsts; ++ bool is_read; ++ ++ is_read = (host->data->flags & MMC_DATA_READ) != 0; ++ bcm2835_transfer_block_pio(host, is_read); ++ ++ sdhsts = readl(host->ioaddr + SDHSTS); ++ if (sdhsts & (SDHSTS_CRC16_ERROR | ++ SDHSTS_CRC7_ERROR | ++ SDHSTS_FIFO_ERROR)) { ++ dev_err(dev, "%s transfer error - HSTS %08x\n", ++ is_read ? "read" : "write", sdhsts); ++ host->data->error = -EILSEQ; ++ } else if ((sdhsts & (SDHSTS_CMD_TIME_OUT | ++ SDHSTS_REW_TIME_OUT))) { ++ dev_err(dev, "%s timeout error - HSTS %08x\n", ++ is_read ? "read" : "write", sdhsts); ++ host->data->error = -ETIMEDOUT; ++ } ++} ++ ++static ++void bcm2835_prepare_dma(struct bcm2835_host *host, struct mmc_data *data) ++{ ++ int len, dir_data, dir_slave; ++ struct dma_async_tx_descriptor *desc = NULL; ++ struct dma_chan *dma_chan; ++ ++ dma_chan = host->dma_chan_rxtx; ++ if (data->flags & MMC_DATA_READ) { ++ dir_data = DMA_FROM_DEVICE; ++ dir_slave = DMA_DEV_TO_MEM; ++ } else { ++ dir_data = DMA_TO_DEVICE; ++ dir_slave = DMA_MEM_TO_DEV; ++ } ++ ++ /* The block doesn't manage the FIFO DREQs properly for ++ * multi-block transfers, so don't attempt to DMA the final ++ * few words. Unfortunately this requires the final sg entry ++ * to be trimmed. N.B. This code demands that the overspill ++ * is contained in a single sg entry. ++ */ ++ ++ host->drain_words = 0; ++ if ((data->blocks > 1) && (dir_data == DMA_FROM_DEVICE)) { ++ struct scatterlist *sg; ++ u32 len; ++ int i; ++ ++ len = min((u32)(FIFO_READ_THRESHOLD - 1) * 4, ++ (u32)data->blocks * data->blksz); ++ ++ for_each_sg(data->sg, sg, data->sg_len, i) { ++ if (sg_is_last(sg)) { ++ WARN_ON(sg->length < len); ++ sg->length -= len; ++ host->drain_page = sg_page(sg); ++ host->drain_offset = sg->offset + sg->length; ++ } ++ } ++ host->drain_words = len / 4; ++ } ++ ++ /* The parameters have already been validated, so this will not fail */ ++ (void)dmaengine_slave_config(dma_chan, ++ (dir_data == DMA_FROM_DEVICE) ? ++ &host->dma_cfg_rx : ++ &host->dma_cfg_tx); ++ ++ len = dma_map_sg(dma_chan->device->dev, data->sg, data->sg_len, ++ dir_data); ++ ++ if (len > 0) { ++ desc = dmaengine_prep_slave_sg(dma_chan, data->sg, ++ len, dir_slave, ++ DMA_PREP_INTERRUPT | ++ DMA_CTRL_ACK); ++ } ++ ++ if (desc) { ++ desc->callback = bcm2835_dma_complete; ++ desc->callback_param = host; ++ host->dma_desc = desc; ++ host->dma_chan = dma_chan; ++ host->dma_dir = dir_data; ++ } ++} ++ ++static void bcm2835_start_dma(struct bcm2835_host *host) ++{ ++ dmaengine_submit(host->dma_desc); ++ dma_async_issue_pending(host->dma_chan); ++} ++ ++static void bcm2835_set_transfer_irqs(struct bcm2835_host *host) ++{ ++ u32 all_irqs = SDHCFG_DATA_IRPT_EN | SDHCFG_BLOCK_IRPT_EN | ++ SDHCFG_BUSY_IRPT_EN; ++ ++ if (host->dma_desc) { ++ host->hcfg = (host->hcfg & ~all_irqs) | ++ SDHCFG_BUSY_IRPT_EN; ++ } else { ++ host->hcfg = (host->hcfg & ~all_irqs) | ++ SDHCFG_DATA_IRPT_EN | ++ SDHCFG_BUSY_IRPT_EN; ++ } ++ ++ writel(host->hcfg, host->ioaddr + SDHCFG); ++} ++ ++static ++void bcm2835_prepare_data(struct bcm2835_host *host, struct mmc_command *cmd) ++{ ++ struct mmc_data *data = cmd->data; ++ ++ WARN_ON(host->data); ++ ++ host->data = data; ++ if (!data) ++ return; ++ ++ host->data_complete = false; ++ host->data->bytes_xfered = 0; ++ ++ if (!host->dma_desc) { ++ /* Use PIO */ ++ int flags = SG_MITER_ATOMIC; ++ ++ if (data->flags & MMC_DATA_READ) ++ flags |= SG_MITER_TO_SG; ++ else ++ flags |= SG_MITER_FROM_SG; ++ sg_miter_start(&host->sg_miter, data->sg, data->sg_len, flags); ++ host->blocks = data->blocks; ++ } ++ ++ bcm2835_set_transfer_irqs(host); ++ ++ writel(data->blksz, host->ioaddr + SDHBCT); ++ writel(data->blocks, host->ioaddr + SDHBLC); ++} ++ ++static u32 bcm2835_read_wait_sdcmd(struct bcm2835_host *host, u32 max_ms) ++{ ++ struct device *dev = &host->pdev->dev; ++ u32 value; ++ int ret; ++ ++ ret = readl_poll_timeout(host->ioaddr + SDCMD, value, ++ !(value & SDCMD_NEW_FLAG), 1, 10); ++ if (ret == -ETIMEDOUT) ++ /* if it takes a while make poll interval bigger */ ++ ret = readl_poll_timeout(host->ioaddr + SDCMD, value, ++ !(value & SDCMD_NEW_FLAG), ++ 10, max_ms * 1000); ++ if (ret == -ETIMEDOUT) ++ dev_err(dev, "%s: timeout (%d ms)\n", __func__, max_ms); ++ ++ return value; ++} ++ ++static void bcm2835_finish_request(struct bcm2835_host *host) ++{ ++ struct dma_chan *terminate_chan = NULL; ++ struct mmc_request *mrq; ++ ++ cancel_delayed_work(&host->timeout_work); ++ ++ mrq = host->mrq; ++ ++ host->mrq = NULL; ++ host->cmd = NULL; ++ host->data = NULL; ++ ++ host->dma_desc = NULL; ++ terminate_chan = host->dma_chan; ++ host->dma_chan = NULL; ++ ++ if (terminate_chan) { ++ int err = dmaengine_terminate_all(terminate_chan); ++ ++ if (err) ++ dev_err(&host->pdev->dev, ++ "failed to terminate DMA (%d)\n", err); ++ } ++ ++ mmc_request_done(host->mmc, mrq); ++} ++ ++static ++bool bcm2835_send_command(struct bcm2835_host *host, struct mmc_command *cmd) ++{ ++ struct device *dev = &host->pdev->dev; ++ u32 sdcmd, sdhsts; ++ unsigned long timeout; ++ ++ WARN_ON(host->cmd); ++ ++ sdcmd = bcm2835_read_wait_sdcmd(host, 100); ++ if (sdcmd & SDCMD_NEW_FLAG) { ++ dev_err(dev, "previous command never completed.\n"); ++ bcm2835_dumpregs(host); ++ cmd->error = -EILSEQ; ++ bcm2835_finish_request(host); ++ return false; ++ } ++ ++ if (!cmd->data && cmd->busy_timeout > 9000) ++ timeout = DIV_ROUND_UP(cmd->busy_timeout, 1000) * HZ + HZ; ++ else ++ timeout = 10 * HZ; ++ schedule_delayed_work(&host->timeout_work, timeout); ++ ++ host->cmd = cmd; ++ ++ /* Clear any error flags */ ++ sdhsts = readl(host->ioaddr + SDHSTS); ++ if (sdhsts & SDHSTS_ERROR_MASK) ++ writel(sdhsts, host->ioaddr + SDHSTS); ++ ++ if ((cmd->flags & MMC_RSP_136) && (cmd->flags & MMC_RSP_BUSY)) { ++ dev_err(dev, "unsupported response type!\n"); ++ cmd->error = -EINVAL; ++ bcm2835_finish_request(host); ++ return false; ++ } ++ ++ bcm2835_prepare_data(host, cmd); ++ ++ writel(cmd->arg, host->ioaddr + SDARG); ++ ++ sdcmd = cmd->opcode & SDCMD_CMD_MASK; ++ ++ host->use_busy = false; ++ if (!(cmd->flags & MMC_RSP_PRESENT)) { ++ sdcmd |= SDCMD_NO_RESPONSE; ++ } else { ++ if (cmd->flags & MMC_RSP_136) ++ sdcmd |= SDCMD_LONG_RESPONSE; ++ if (cmd->flags & MMC_RSP_BUSY) { ++ sdcmd |= SDCMD_BUSYWAIT; ++ host->use_busy = true; ++ } ++ } ++ ++ if (cmd->data) { ++ if (cmd->data->flags & MMC_DATA_WRITE) ++ sdcmd |= SDCMD_WRITE_CMD; ++ if (cmd->data->flags & MMC_DATA_READ) ++ sdcmd |= SDCMD_READ_CMD; ++ } ++ ++ writel(sdcmd | SDCMD_NEW_FLAG, host->ioaddr + SDCMD); ++ ++ return true; ++} ++ ++static void bcm2835_transfer_complete(struct bcm2835_host *host) ++{ ++ struct mmc_data *data; ++ ++ WARN_ON(!host->data_complete); ++ ++ data = host->data; ++ host->data = NULL; ++ ++ /* Need to send CMD12 if - ++ * a) open-ended multiblock transfer (no CMD23) ++ * b) error in multiblock transfer ++ */ ++ if (host->mrq->stop && (data->error || !host->use_sbc)) { ++ if (bcm2835_send_command(host, host->mrq->stop)) { ++ /* No busy, so poll for completion */ ++ if (!host->use_busy) ++ bcm2835_finish_command(host); ++ } ++ } else { ++ bcm2835_wait_transfer_complete(host); ++ bcm2835_finish_request(host); ++ } ++} ++ ++static void bcm2835_finish_data(struct bcm2835_host *host) ++{ ++ struct device *dev = &host->pdev->dev; ++ struct mmc_data *data; ++ ++ data = host->data; ++ ++ host->hcfg &= ~(SDHCFG_DATA_IRPT_EN | SDHCFG_BLOCK_IRPT_EN); ++ writel(host->hcfg, host->ioaddr + SDHCFG); ++ ++ data->bytes_xfered = data->error ? 0 : (data->blksz * data->blocks); ++ ++ host->data_complete = true; ++ ++ if (host->cmd) { ++ /* Data managed to finish before the ++ * command completed. Make sure we do ++ * things in the proper order. ++ */ ++ dev_dbg(dev, "Finished early - HSTS %08x\n", ++ readl(host->ioaddr + SDHSTS)); ++ } else { ++ bcm2835_transfer_complete(host); ++ } ++} ++ ++static void bcm2835_finish_command(struct bcm2835_host *host) ++{ ++ struct device *dev = &host->pdev->dev; ++ struct mmc_command *cmd = host->cmd; ++ u32 sdcmd; ++ ++ sdcmd = bcm2835_read_wait_sdcmd(host, 100); ++ ++ /* Check for errors */ ++ if (sdcmd & SDCMD_NEW_FLAG) { ++ dev_err(dev, "command never completed.\n"); ++ bcm2835_dumpregs(host); ++ host->cmd->error = -EIO; ++ bcm2835_finish_request(host); ++ return; ++ } else if (sdcmd & SDCMD_FAIL_FLAG) { ++ u32 sdhsts = readl(host->ioaddr + SDHSTS); ++ ++ /* Clear the errors */ ++ writel(SDHSTS_ERROR_MASK, host->ioaddr + SDHSTS); ++ ++ if (!(sdhsts & SDHSTS_CRC7_ERROR) || ++ (host->cmd->opcode != MMC_SEND_OP_COND)) { ++ if (sdhsts & SDHSTS_CMD_TIME_OUT) { ++ host->cmd->error = -ETIMEDOUT; ++ } else { ++ dev_err(dev, "unexpected command %d error\n", ++ host->cmd->opcode); ++ bcm2835_dumpregs(host); ++ host->cmd->error = -EILSEQ; ++ } ++ bcm2835_finish_request(host); ++ return; ++ } ++ } ++ ++ if (cmd->flags & MMC_RSP_PRESENT) { ++ if (cmd->flags & MMC_RSP_136) { ++ int i; ++ ++ for (i = 0; i < 4; i++) { ++ cmd->resp[3 - i] = ++ readl(host->ioaddr + SDRSP0 + i * 4); ++ } ++ } else { ++ cmd->resp[0] = readl(host->ioaddr + SDRSP0); ++ } ++ } ++ ++ if (cmd == host->mrq->sbc) { ++ /* Finished CMD23, now send actual command. */ ++ host->cmd = NULL; ++ if (bcm2835_send_command(host, host->mrq->cmd)) { ++ if (host->data && host->dma_desc) ++ /* DMA transfer starts now, PIO starts ++ * after irq ++ */ ++ bcm2835_start_dma(host); ++ ++ if (!host->use_busy) ++ bcm2835_finish_command(host); ++ } ++ } else if (cmd == host->mrq->stop) { ++ /* Finished CMD12 */ ++ bcm2835_finish_request(host); ++ } else { ++ /* Processed actual command. */ ++ host->cmd = NULL; ++ if (!host->data) ++ bcm2835_finish_request(host); ++ else if (host->data_complete) ++ bcm2835_transfer_complete(host); ++ } ++} ++ ++static void bcm2835_timeout(struct work_struct *work) ++{ ++ struct delayed_work *d = to_delayed_work(work); ++ struct bcm2835_host *host = ++ container_of(d, struct bcm2835_host, timeout_work); ++ struct device *dev = &host->pdev->dev; ++ ++ mutex_lock(&host->mutex); ++ ++ if (host->mrq) { ++ dev_err(dev, "timeout waiting for hardware interrupt.\n"); ++ bcm2835_dumpregs(host); ++ ++ if (host->data) { ++ host->data->error = -ETIMEDOUT; ++ bcm2835_finish_data(host); ++ } else { ++ if (host->cmd) ++ host->cmd->error = -ETIMEDOUT; ++ else ++ host->mrq->cmd->error = -ETIMEDOUT; ++ ++ bcm2835_finish_request(host); ++ } ++ } ++ ++ mutex_unlock(&host->mutex); ++} ++ ++static bool bcm2835_check_cmd_error(struct bcm2835_host *host, u32 intmask) ++{ ++ struct device *dev = &host->pdev->dev; ++ ++ if (!(intmask & SDHSTS_ERROR_MASK)) ++ return false; ++ ++ if (!host->cmd) ++ return true; ++ ++ dev_err(dev, "sdhost_busy_irq: intmask %08x\n", intmask); ++ if (intmask & SDHSTS_CRC7_ERROR) { ++ host->cmd->error = -EILSEQ; ++ } else if (intmask & (SDHSTS_CRC16_ERROR | ++ SDHSTS_FIFO_ERROR)) { ++ if (host->mrq->data) ++ host->mrq->data->error = -EILSEQ; ++ else ++ host->cmd->error = -EILSEQ; ++ } else if (intmask & SDHSTS_REW_TIME_OUT) { ++ if (host->mrq->data) ++ host->mrq->data->error = -ETIMEDOUT; ++ else ++ host->cmd->error = -ETIMEDOUT; ++ } else if (intmask & SDHSTS_CMD_TIME_OUT) { ++ host->cmd->error = -ETIMEDOUT; ++ } ++ bcm2835_dumpregs(host); ++ return true; ++} ++ ++static void bcm2835_check_data_error(struct bcm2835_host *host, u32 intmask) ++{ ++ if (!host->data) ++ return; ++ if (intmask & (SDHSTS_CRC16_ERROR | SDHSTS_FIFO_ERROR)) ++ host->data->error = -EILSEQ; ++ if (intmask & SDHSTS_REW_TIME_OUT) ++ host->data->error = -ETIMEDOUT; ++} ++ ++static void bcm2835_busy_irq(struct bcm2835_host *host) ++{ ++ if (WARN_ON(!host->cmd)) { ++ bcm2835_dumpregs(host); ++ return; ++ } ++ ++ if (WARN_ON(!host->use_busy)) { ++ bcm2835_dumpregs(host); ++ return; ++ } ++ host->use_busy = false; ++ ++ bcm2835_finish_command(host); ++} ++ ++static void bcm2835_data_irq(struct bcm2835_host *host, u32 intmask) ++{ ++ /* There are no dedicated data/space available interrupt ++ * status bits, so it is necessary to use the single shared ++ * data/space available FIFO status bits. It is therefore not ++ * an error to get here when there is no data transfer in ++ * progress. ++ */ ++ if (!host->data) ++ return; ++ ++ bcm2835_check_data_error(host, intmask); ++ if (host->data->error) ++ goto finished; ++ ++ if (host->data->flags & MMC_DATA_WRITE) { ++ /* Use the block interrupt for writes after the first block */ ++ host->hcfg &= ~(SDHCFG_DATA_IRPT_EN); ++ host->hcfg |= SDHCFG_BLOCK_IRPT_EN; ++ writel(host->hcfg, host->ioaddr + SDHCFG); ++ bcm2835_transfer_pio(host); ++ } else { ++ bcm2835_transfer_pio(host); ++ host->blocks--; ++ if ((host->blocks == 0) || host->data->error) ++ goto finished; ++ } ++ return; ++ ++finished: ++ host->hcfg &= ~(SDHCFG_DATA_IRPT_EN | SDHCFG_BLOCK_IRPT_EN); ++ writel(host->hcfg, host->ioaddr + SDHCFG); ++} ++ ++static void bcm2835_data_threaded_irq(struct bcm2835_host *host) ++{ ++ if (!host->data) ++ return; ++ if ((host->blocks == 0) || host->data->error) ++ bcm2835_finish_data(host); ++} ++ ++static void bcm2835_block_irq(struct bcm2835_host *host) ++{ ++ if (WARN_ON(!host->data)) { ++ bcm2835_dumpregs(host); ++ return; ++ } ++ ++ if (!host->dma_desc) { ++ WARN_ON(!host->blocks); ++ if (host->data->error || (--host->blocks == 0)) ++ bcm2835_finish_data(host); ++ else ++ bcm2835_transfer_pio(host); ++ } else if (host->data->flags & MMC_DATA_WRITE) { ++ bcm2835_finish_data(host); ++ } ++} ++ ++static irqreturn_t bcm2835_irq(int irq, void *dev_id) ++{ ++ irqreturn_t result = IRQ_NONE; ++ struct bcm2835_host *host = dev_id; ++ u32 intmask; ++ ++ spin_lock(&host->lock); ++ ++ intmask = readl(host->ioaddr + SDHSTS); ++ ++ writel(SDHSTS_BUSY_IRPT | ++ SDHSTS_BLOCK_IRPT | ++ SDHSTS_SDIO_IRPT | ++ SDHSTS_DATA_FLAG, ++ host->ioaddr + SDHSTS); ++ ++ if (intmask & SDHSTS_BLOCK_IRPT) { ++ bcm2835_check_data_error(host, intmask); ++ host->irq_block = true; ++ result = IRQ_WAKE_THREAD; ++ } ++ ++ if (intmask & SDHSTS_BUSY_IRPT) { ++ if (!bcm2835_check_cmd_error(host, intmask)) { ++ host->irq_busy = true; ++ result = IRQ_WAKE_THREAD; ++ } else { ++ result = IRQ_HANDLED; ++ } ++ } ++ ++ /* There is no true data interrupt status bit, so it is ++ * necessary to qualify the data flag with the interrupt ++ * enable bit. ++ */ ++ if ((intmask & SDHSTS_DATA_FLAG) && ++ (host->hcfg & SDHCFG_DATA_IRPT_EN)) { ++ bcm2835_data_irq(host, intmask); ++ host->irq_data = true; ++ result = IRQ_WAKE_THREAD; ++ } ++ ++ spin_unlock(&host->lock); ++ ++ return result; ++} ++ ++static irqreturn_t bcm2835_threaded_irq(int irq, void *dev_id) ++{ ++ struct bcm2835_host *host = dev_id; ++ unsigned long flags; ++ bool block, busy, data; ++ ++ spin_lock_irqsave(&host->lock, flags); ++ ++ block = host->irq_block; ++ busy = host->irq_busy; ++ data = host->irq_data; ++ host->irq_block = false; ++ host->irq_busy = false; ++ host->irq_data = false; ++ ++ spin_unlock_irqrestore(&host->lock, flags); ++ ++ mutex_lock(&host->mutex); ++ ++ if (block) ++ bcm2835_block_irq(host); ++ if (busy) ++ bcm2835_busy_irq(host); ++ if (data) ++ bcm2835_data_threaded_irq(host); ++ ++ mutex_unlock(&host->mutex); ++ ++ return IRQ_HANDLED; ++} ++ ++static void bcm2835_dma_complete_work(struct work_struct *work) ++{ ++ struct bcm2835_host *host = ++ container_of(work, struct bcm2835_host, dma_work); ++ struct mmc_data *data = host->data; ++ ++ mutex_lock(&host->mutex); ++ ++ if (host->dma_chan) { ++ dma_unmap_sg(host->dma_chan->device->dev, ++ data->sg, data->sg_len, ++ host->dma_dir); ++ ++ host->dma_chan = NULL; ++ } ++ ++ if (host->drain_words) { ++ unsigned long flags; ++ void *page; ++ u32 *buf; ++ ++ if (host->drain_offset & PAGE_MASK) { ++ host->drain_page += host->drain_offset >> PAGE_SHIFT; ++ host->drain_offset &= ~PAGE_MASK; ++ } ++ local_irq_save(flags); ++ page = kmap_atomic(host->drain_page); ++ buf = page + host->drain_offset; ++ ++ while (host->drain_words) { ++ u32 edm = readl(host->ioaddr + SDEDM); ++ ++ if ((edm >> 4) & 0x1f) ++ *(buf++) = readl(host->ioaddr + SDDATA); ++ host->drain_words--; ++ } ++ ++ kunmap_atomic(page); ++ local_irq_restore(flags); ++ } ++ ++ bcm2835_finish_data(host); ++ ++ mutex_unlock(&host->mutex); ++} ++ ++static void bcm2835_set_clock(struct bcm2835_host *host, unsigned int clock) ++{ ++ int div; ++ ++ /* The SDCDIV register has 11 bits, and holds (div - 2). But ++ * in data mode the max is 50MHz wihout a minimum, and only ++ * the bottom 3 bits are used. Since the switch over is ++ * automatic (unless we have marked the card as slow...), ++ * chosen values have to make sense in both modes. Ident mode ++ * must be 100-400KHz, so can range check the requested ++ * clock. CMD15 must be used to return to data mode, so this ++ * can be monitored. ++ * ++ * clock 250MHz -> 0->125MHz, 1->83.3MHz, 2->62.5MHz, 3->50.0MHz ++ * 4->41.7MHz, 5->35.7MHz, 6->31.3MHz, 7->27.8MHz ++ * ++ * 623->400KHz/27.8MHz ++ * reset value (507)->491159/50MHz ++ * ++ * BUT, the 3-bit clock divisor in data mode is too small if ++ * the core clock is higher than 250MHz, so instead use the ++ * SLOW_CARD configuration bit to force the use of the ident ++ * clock divisor at all times. ++ */ ++ ++ if (clock < 100000) { ++ /* Can't stop the clock, but make it as slow as possible ++ * to show willing ++ */ ++ host->cdiv = SDCDIV_MAX_CDIV; ++ writel(host->cdiv, host->ioaddr + SDCDIV); ++ return; ++ } ++ ++ div = host->max_clk / clock; ++ if (div < 2) ++ div = 2; ++ if ((host->max_clk / div) > clock) ++ div++; ++ div -= 2; ++ ++ if (div > SDCDIV_MAX_CDIV) ++ div = SDCDIV_MAX_CDIV; ++ ++ clock = host->max_clk / (div + 2); ++ host->mmc->actual_clock = clock; ++ ++ /* Calibrate some delays */ ++ ++ host->ns_per_fifo_word = (1000000000 / clock) * ++ ((host->mmc->caps & MMC_CAP_4_BIT_DATA) ? 8 : 32); ++ ++ host->cdiv = div; ++ writel(host->cdiv, host->ioaddr + SDCDIV); ++ ++ /* Set the timeout to 500ms */ ++ writel(host->mmc->actual_clock / 2, host->ioaddr + SDTOUT); ++} ++ ++static void bcm2835_request(struct mmc_host *mmc, struct mmc_request *mrq) ++{ ++ struct bcm2835_host *host = mmc_priv(mmc); ++ struct device *dev = &host->pdev->dev; ++ u32 edm, fsm; ++ ++ /* Reset the error statuses in case this is a retry */ ++ if (mrq->sbc) ++ mrq->sbc->error = 0; ++ if (mrq->cmd) ++ mrq->cmd->error = 0; ++ if (mrq->data) ++ mrq->data->error = 0; ++ if (mrq->stop) ++ mrq->stop->error = 0; ++ ++ if (mrq->data && !is_power_of_2(mrq->data->blksz)) { ++ dev_err(dev, "unsupported block size (%d bytes)\n", ++ mrq->data->blksz); ++ mrq->cmd->error = -EINVAL; ++ mmc_request_done(mmc, mrq); ++ return; ++ } ++ ++ if (host->use_dma && mrq->data && (mrq->data->blocks > PIO_THRESHOLD)) ++ bcm2835_prepare_dma(host, mrq->data); ++ ++ mutex_lock(&host->mutex); ++ ++ WARN_ON(host->mrq); ++ host->mrq = mrq; ++ ++ edm = readl(host->ioaddr + SDEDM); ++ fsm = edm & SDEDM_FSM_MASK; ++ ++ if ((fsm != SDEDM_FSM_IDENTMODE) && ++ (fsm != SDEDM_FSM_DATAMODE)) { ++ dev_err(dev, "previous command (%d) not complete (EDM %08x)\n", ++ readl(host->ioaddr + SDCMD) & SDCMD_CMD_MASK, ++ edm); ++ bcm2835_dumpregs(host); ++ mrq->cmd->error = -EILSEQ; ++ bcm2835_finish_request(host); ++ mutex_unlock(&host->mutex); ++ return; ++ } ++ ++ host->use_sbc = !!mrq->sbc && (host->mrq->data->flags & MMC_DATA_READ); ++ if (host->use_sbc) { ++ if (bcm2835_send_command(host, mrq->sbc)) { ++ if (!host->use_busy) ++ bcm2835_finish_command(host); ++ } ++ } else if (bcm2835_send_command(host, mrq->cmd)) { ++ if (host->data && host->dma_desc) { ++ /* DMA transfer starts now, PIO starts after irq */ ++ bcm2835_start_dma(host); ++ } ++ ++ if (!host->use_busy) ++ bcm2835_finish_command(host); ++ } ++ ++ mutex_unlock(&host->mutex); ++} ++ ++static void bcm2835_set_ios(struct mmc_host *mmc, struct mmc_ios *ios) ++{ ++ struct bcm2835_host *host = mmc_priv(mmc); ++ ++ mutex_lock(&host->mutex); ++ ++ if (!ios->clock || ios->clock != host->clock) { ++ bcm2835_set_clock(host, ios->clock); ++ host->clock = ios->clock; ++ } ++ ++ /* set bus width */ ++ host->hcfg &= ~SDHCFG_WIDE_EXT_BUS; ++ if (ios->bus_width == MMC_BUS_WIDTH_4) ++ host->hcfg |= SDHCFG_WIDE_EXT_BUS; ++ ++ host->hcfg |= SDHCFG_WIDE_INT_BUS; ++ ++ /* Disable clever clock switching, to cope with fast core clocks */ ++ host->hcfg |= SDHCFG_SLOW_CARD; ++ ++ writel(host->hcfg, host->ioaddr + SDHCFG); ++ ++ mutex_unlock(&host->mutex); ++} ++ ++static struct mmc_host_ops bcm2835_ops = { ++ .request = bcm2835_request, ++ .set_ios = bcm2835_set_ios, ++ .hw_reset = bcm2835_reset, ++}; ++ ++static int bcm2835_add_host(struct bcm2835_host *host) ++{ ++ struct mmc_host *mmc = host->mmc; ++ struct device *dev = &host->pdev->dev; ++ char pio_limit_string[20]; ++ int ret; ++ ++ mmc->f_max = host->max_clk; ++ mmc->f_min = host->max_clk / SDCDIV_MAX_CDIV; ++ ++ mmc->max_busy_timeout = ~0 / (mmc->f_max / 1000); ++ ++ dev_dbg(dev, "f_max %d, f_min %d, max_busy_timeout %d\n", ++ mmc->f_max, mmc->f_min, mmc->max_busy_timeout); ++ ++ /* host controller capabilities */ ++ mmc->caps |= MMC_CAP_SD_HIGHSPEED | MMC_CAP_MMC_HIGHSPEED | ++ MMC_CAP_NEEDS_POLL | MMC_CAP_HW_RESET | MMC_CAP_ERASE | ++ MMC_CAP_CMD23; ++ ++ spin_lock_init(&host->lock); ++ mutex_init(&host->mutex); ++ ++ if (IS_ERR_OR_NULL(host->dma_chan_rxtx)) { ++ dev_warn(dev, "unable to initialise DMA channel. Falling back to PIO\n"); ++ host->use_dma = false; ++ } else { ++ host->use_dma = true; ++ ++ host->dma_cfg_tx.src_addr_width = DMA_SLAVE_BUSWIDTH_4_BYTES; ++ host->dma_cfg_tx.dst_addr_width = DMA_SLAVE_BUSWIDTH_4_BYTES; ++ host->dma_cfg_tx.slave_id = 13; /* DREQ channel */ ++ host->dma_cfg_tx.direction = DMA_MEM_TO_DEV; ++ host->dma_cfg_tx.src_addr = 0; ++ host->dma_cfg_tx.dst_addr = host->phys_addr + SDDATA; ++ ++ host->dma_cfg_rx.src_addr_width = DMA_SLAVE_BUSWIDTH_4_BYTES; ++ host->dma_cfg_rx.dst_addr_width = DMA_SLAVE_BUSWIDTH_4_BYTES; ++ host->dma_cfg_rx.slave_id = 13; /* DREQ channel */ ++ host->dma_cfg_rx.direction = DMA_DEV_TO_MEM; ++ host->dma_cfg_rx.src_addr = host->phys_addr + SDDATA; ++ host->dma_cfg_rx.dst_addr = 0; ++ ++ if (dmaengine_slave_config(host->dma_chan_rxtx, ++ &host->dma_cfg_tx) != 0 || ++ dmaengine_slave_config(host->dma_chan_rxtx, ++ &host->dma_cfg_rx) != 0) ++ host->use_dma = false; ++ } ++ ++ mmc->max_segs = 128; ++ mmc->max_req_size = 524288; ++ mmc->max_seg_size = mmc->max_req_size; ++ mmc->max_blk_size = 1024; ++ mmc->max_blk_count = 65535; ++ ++ /* report supported voltage ranges */ ++ mmc->ocr_avail = MMC_VDD_32_33 | MMC_VDD_33_34; ++ ++ INIT_WORK(&host->dma_work, bcm2835_dma_complete_work); ++ INIT_DELAYED_WORK(&host->timeout_work, bcm2835_timeout); ++ ++ /* Set interrupt enables */ ++ host->hcfg = SDHCFG_BUSY_IRPT_EN; ++ ++ bcm2835_reset_internal(host); ++ ++ ret = request_threaded_irq(host->irq, bcm2835_irq, ++ bcm2835_threaded_irq, ++ 0, mmc_hostname(mmc), host); ++ if (ret) { ++ dev_err(dev, "failed to request IRQ %d: %d\n", host->irq, ret); ++ return ret; ++ } ++ ++ ret = mmc_add_host(mmc); ++ if (ret) { ++ free_irq(host->irq, host); ++ return ret; ++ } ++ ++ pio_limit_string[0] = '\0'; ++ if (host->use_dma && (PIO_THRESHOLD > 0)) ++ sprintf(pio_limit_string, " (>%d)", PIO_THRESHOLD); ++ dev_info(dev, "loaded - DMA %s%s\n", ++ host->use_dma ? "enabled" : "disabled", pio_limit_string); ++ ++ return 0; ++} ++ ++static int bcm2835_probe(struct platform_device *pdev) ++{ ++ struct device *dev = &pdev->dev; ++ struct clk *clk; ++ struct resource *iomem; ++ struct bcm2835_host *host; ++ struct mmc_host *mmc; ++ const __be32 *regaddr_p; ++ int ret; ++ ++ dev_dbg(dev, "%s\n", __func__); ++ mmc = mmc_alloc_host(sizeof(*host), dev); ++ if (!mmc) ++ return -ENOMEM; ++ ++ mmc->ops = &bcm2835_ops; ++ host = mmc_priv(mmc); ++ host->mmc = mmc; ++ host->pdev = pdev; ++ spin_lock_init(&host->lock); ++ ++ iomem = platform_get_resource(pdev, IORESOURCE_MEM, 0); ++ host->ioaddr = devm_ioremap_resource(dev, iomem); ++ if (IS_ERR(host->ioaddr)) { ++ ret = PTR_ERR(host->ioaddr); ++ goto err; ++ } ++ ++ /* Parse OF address directly to get the physical address for ++ * DMA to our registers. ++ */ ++ regaddr_p = of_get_address(pdev->dev.of_node, 0, NULL, NULL); ++ if (!regaddr_p) { ++ dev_err(dev, "Can't get phys address\n"); ++ ret = -EINVAL; ++ goto err; ++ } ++ ++ host->phys_addr = be32_to_cpup(regaddr_p); ++ ++ host->dma_chan = NULL; ++ host->dma_desc = NULL; ++ ++ host->dma_chan_rxtx = dma_request_slave_channel(dev, "rx-tx"); ++ ++ clk = devm_clk_get(dev, NULL); ++ if (IS_ERR(clk)) { ++ ret = PTR_ERR(clk); ++ if (ret != -EPROBE_DEFER) ++ dev_err(dev, "could not get clk: %d\n", ret); ++ goto err; ++ } ++ ++ host->max_clk = clk_get_rate(clk); ++ ++ host->irq = platform_get_irq(pdev, 0); ++ if (host->irq <= 0) { ++ dev_err(dev, "get IRQ failed\n"); ++ ret = -EINVAL; ++ goto err; ++ } ++ ++ ret = mmc_of_parse(mmc); ++ if (ret) ++ goto err; ++ ++ ret = bcm2835_add_host(host); ++ if (ret) ++ goto err; ++ ++ platform_set_drvdata(pdev, host); ++ ++ dev_dbg(dev, "%s -> OK\n", __func__); ++ ++ return 0; ++ ++err: ++ dev_dbg(dev, "%s -> err %d\n", __func__, ret); ++ mmc_free_host(mmc); ++ ++ return ret; ++} ++ ++static int bcm2835_remove(struct platform_device *pdev) ++{ ++ struct bcm2835_host *host = platform_get_drvdata(pdev); ++ ++ mmc_remove_host(host->mmc); ++ ++ writel(SDVDD_POWER_OFF, host->ioaddr + SDVDD); ++ ++ free_irq(host->irq, host); ++ ++ cancel_work_sync(&host->dma_work); ++ cancel_delayed_work_sync(&host->timeout_work); ++ ++ mmc_free_host(host->mmc); ++ platform_set_drvdata(pdev, NULL); ++ ++ return 0; ++} ++ ++static const struct of_device_id bcm2835_match[] = { ++ { .compatible = "brcm,bcm2835-sdhost" }, ++ { } ++}; ++MODULE_DEVICE_TABLE(of, bcm2835_match); ++ ++static struct platform_driver bcm2835_driver = { ++ .probe = bcm2835_probe, ++ .remove = bcm2835_remove, ++ .driver = { ++ .name = "sdhost-bcm2835", ++ .of_match_table = bcm2835_match, ++ }, ++}; ++module_platform_driver(bcm2835_driver); ++ ++MODULE_ALIAS("platform:sdhost-bcm2835"); ++MODULE_DESCRIPTION("BCM2835 SDHost driver"); ++MODULE_LICENSE("GPL v2"); ++MODULE_AUTHOR("Phil Elwell"); +From patchwork Wed Mar 8 09:19:05 2017 +Content-Type: text/plain; charset="utf-8" +MIME-Version: 1.0 +Content-Transfer-Encoding: 7bit +Subject: [v4,3/7] mmc: bcm2835: add sdhost controller to devicetree +From: Gerd Hoffmann <kraxel@redhat.com> +X-Patchwork-Id: 9610693 +Message-Id: <1488964751-22763-6-git-send-email-kraxel@redhat.com> +To: linux-rpi-kernel@lists.infradead.org +Cc: mark.rutland@arm.com, stefan.wahren@i2se.com, ulf.hansson@linaro.org, + f.fainelli@gmail.com, sbranden@broadcom.com, devicetree@vger.kernel.org, + rjui@broadcom.com, lee@kernel.org, will.deacon@arm.com, + linux@armlinux.org.uk, + linux-kernel@vger.kernel.org, eric@anholt.net, robh+dt@kernel.org, + bcm-kernel-feedback-list@broadcom.com, Gerd Hoffmann <kraxel@redhat.com>, + catalin.marinas@arm.com, linux-mmc@vger.kernel.org, + linux-arm-kernel@lists.infradead.org +Date: Wed, 8 Mar 2017 10:19:05 +0100 + +Signed-off-by: Gerd Hoffmann <kraxel@redhat.com> +Acked-by: Eric Anholt <eric@anholt.net> +Acked-by: Stefan Wahren <stefan.wahren@i2se.com> +--- + arch/arm/boot/dts/bcm2835-rpi.dtsi | 6 ++++++ + arch/arm/boot/dts/bcm283x.dtsi | 10 ++++++++++ + 2 files changed, 16 insertions(+) + +diff --git a/arch/arm/boot/dts/bcm2835-rpi.dtsi b/arch/arm/boot/dts/bcm2835-rpi.dtsi +index 1e00a28..8b95832 100644 +--- a/arch/arm/boot/dts/bcm2835-rpi.dtsi ++++ b/arch/arm/boot/dts/bcm2835-rpi.dtsi +@@ -69,6 +69,12 @@ + bus-width = <4>; + }; + ++&sdhost { ++ pinctrl-names = "default"; ++ pinctrl-0 = <&sdhost_gpio48>; ++ bus-width = <4>; ++}; ++ + &pwm { + pinctrl-names = "default"; + pinctrl-0 = <&pwm0_gpio40 &pwm1_gpio45>; +diff --git a/arch/arm/boot/dts/bcm283x.dtsi b/arch/arm/boot/dts/bcm283x.dtsi +index 9798bc9..19099a5 100644 +--- a/arch/arm/boot/dts/bcm283x.dtsi ++++ b/arch/arm/boot/dts/bcm283x.dtsi +@@ -350,6 +350,16 @@ + arm,primecell-periphid = <0x00241011>; + }; + ++ sdhost: mmc@7e202000 { ++ compatible = "brcm,bcm2835-sdhost"; ++ reg = <0x7e202000 0x100>; ++ interrupts = <2 24>; ++ clocks = <&clocks BCM2835_CLOCK_VPU>; ++ dmas = <&dma 13>; ++ dma-names = "rx-tx"; ++ status = "disabled"; ++ }; ++ + i2s: i2s@7e203000 { + compatible = "brcm,bcm2835-i2s"; + reg = <0x7e203000 0x20>, +From patchwork Wed Mar 8 09:19:07 2017 +Content-Type: text/plain; charset="utf-8" +MIME-Version: 1.0 +Content-Transfer-Encoding: 7bit +Subject: [v4, 4/7] arm: set CONFIG_MMC_BCM2835=y in bcm2835_defconfig and + multi_v7_defconfig +From: Gerd Hoffmann <kraxel@redhat.com> +X-Patchwork-Id: 9610689 +Message-Id: <1488964751-22763-8-git-send-email-kraxel@redhat.com> +To: linux-rpi-kernel@lists.infradead.org +Cc: mark.rutland@arm.com, stefan.wahren@i2se.com, ulf.hansson@linaro.org, + f.fainelli@gmail.com, sbranden@broadcom.com, devicetree@vger.kernel.org, + rjui@broadcom.com, lee@kernel.org, will.deacon@arm.com, + linux@armlinux.org.uk, + linux-kernel@vger.kernel.org, eric@anholt.net, robh+dt@kernel.org, + bcm-kernel-feedback-list@broadcom.com, Gerd Hoffmann <kraxel@redhat.com>, + catalin.marinas@arm.com, linux-mmc@vger.kernel.org, + linux-arm-kernel@lists.infradead.org +Date: Wed, 8 Mar 2017 10:19:07 +0100 + +We need to enable this controller so that we can switch the SD card's +pinmux over to it by default, which will improve storage performance. + +Read access (dd with 64k blocks on rpi2): + CONFIG_MMC_SDHCI_IPROC: 11-12 MB/s + CONFIG_MMC_BCM2835: 19-20 MB/s + +Differences on write access are pretty much in the noise. + +Signed-off-by: Gerd Hoffmann <kraxel@redhat.com> +--- + arch/arm/configs/bcm2835_defconfig | 1 + + arch/arm/configs/multi_v7_defconfig | 1 + + 2 files changed, 2 insertions(+) + +diff --git a/arch/arm/configs/bcm2835_defconfig b/arch/arm/configs/bcm2835_defconfig +index 4b89f4e..3767c24 100644 +--- a/arch/arm/configs/bcm2835_defconfig ++++ b/arch/arm/configs/bcm2835_defconfig +@@ -92,6 +92,7 @@ CONFIG_MMC=y + CONFIG_MMC_SDHCI=y + CONFIG_MMC_SDHCI_PLTFM=y + CONFIG_MMC_SDHCI_IPROC=y ++CONFIG_MMC_BCM2835=y + CONFIG_NEW_LEDS=y + CONFIG_LEDS_CLASS=y + CONFIG_LEDS_GPIO=y +diff --git a/arch/arm/configs/multi_v7_defconfig b/arch/arm/configs/multi_v7_defconfig +index a94126f..63b94d0 100644 +--- a/arch/arm/configs/multi_v7_defconfig ++++ b/arch/arm/configs/multi_v7_defconfig +@@ -730,6 +730,7 @@ CONFIG_MMC_DW_EXYNOS=y + CONFIG_MMC_DW_ROCKCHIP=y + CONFIG_MMC_SH_MMCIF=y + CONFIG_MMC_SUNXI=y ++CONFIG_MMC_BCM2835=y + CONFIG_NEW_LEDS=y + CONFIG_LEDS_CLASS=y + CONFIG_LEDS_CLASS_FLASH=m +From patchwork Wed Mar 8 09:19:09 2017 +Content-Type: text/plain; charset="utf-8" +MIME-Version: 1.0 +Content-Transfer-Encoding: 7bit +Subject: [v4,5/7] arm64: set CONFIG_MMC_BCM2835=y in defconfig +From: Gerd Hoffmann <kraxel@redhat.com> +X-Patchwork-Id: 9610647 +Message-Id: <1488964751-22763-10-git-send-email-kraxel@redhat.com> +To: linux-rpi-kernel@lists.infradead.org +Cc: mark.rutland@arm.com, stefan.wahren@i2se.com, ulf.hansson@linaro.org, + f.fainelli@gmail.com, sbranden@broadcom.com, devicetree@vger.kernel.org, + rjui@broadcom.com, lee@kernel.org, will.deacon@arm.com, + linux@armlinux.org.uk, + linux-kernel@vger.kernel.org, eric@anholt.net, robh+dt@kernel.org, + bcm-kernel-feedback-list@broadcom.com, Gerd Hoffmann <kraxel@redhat.com>, + catalin.marinas@arm.com, linux-mmc@vger.kernel.org, + linux-arm-kernel@lists.infradead.org +Date: Wed, 8 Mar 2017 10:19:09 +0100 + +We need to enable this controller so that we can switch the SD card's +pinmux over to it by default, which will improve storage performance. + +Read access (dd with 64k blocks on rpi2): + CONFIG_MMC_SDHCI_IPROC: 11-12 MB/s + CONFIG_MMC_BCM2835: 19-20 MB/s + +Differences on write access are pretty much in the noise. + +Signed-off-by: Gerd Hoffmann <kraxel@redhat.com> +--- + arch/arm64/configs/defconfig | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/arch/arm64/configs/defconfig b/arch/arm64/configs/defconfig +index 7c48028..519a55c 100644 +--- a/arch/arm64/configs/defconfig ++++ b/arch/arm64/configs/defconfig +@@ -398,6 +398,7 @@ CONFIG_MMC_DW_EXYNOS=y + CONFIG_MMC_DW_K3=y + CONFIG_MMC_DW_ROCKCHIP=y + CONFIG_MMC_SUNXI=y ++CONFIG_MMC_BCM2835=y + CONFIG_NEW_LEDS=y + CONFIG_LEDS_CLASS=y + CONFIG_LEDS_GPIO=y +From patchwork Wed Mar 8 09:19:10 2017 +Content-Type: text/plain; charset="utf-8" +MIME-Version: 1.0 +Content-Transfer-Encoding: 7bit +Subject: [v4,6/7] arm: dts: bcm283x: switch from &sdhci to &sdhost +From: Gerd Hoffmann <kraxel@redhat.com> +X-Patchwork-Id: 9610687 +Message-Id: <1488964751-22763-11-git-send-email-kraxel@redhat.com> +To: linux-rpi-kernel@lists.infradead.org +Cc: mark.rutland@arm.com, stefan.wahren@i2se.com, ulf.hansson@linaro.org, + f.fainelli@gmail.com, sbranden@broadcom.com, devicetree@vger.kernel.org, + rjui@broadcom.com, lee@kernel.org, will.deacon@arm.com, + linux@armlinux.org.uk, + linux-kernel@vger.kernel.org, eric@anholt.net, robh+dt@kernel.org, + bcm-kernel-feedback-list@broadcom.com, Gerd Hoffmann <kraxel@redhat.com>, + catalin.marinas@arm.com, linux-mmc@vger.kernel.org, + linux-arm-kernel@lists.infradead.org +Date: Wed, 8 Mar 2017 10:19:10 +0100 + +sdcard access with the sdhost controller is faster. + +Read access (dd with 64k blocks on rpi2): + CONFIG_MMC_SDHCI_IPROC: 11-12 MB/s + CONFIG_MMC_BCM2835: 19-20 MB/s + +Differences on write access are pretty much in the noise. + +Signed-off-by: Gerd Hoffmann <kraxel@redhat.com> +Acked-by: Eric Anholt <eric@anholt.net> +--- + arch/arm/boot/dts/bcm2835-rpi.dtsi | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/arch/arm/boot/dts/bcm2835-rpi.dtsi b/arch/arm/boot/dts/bcm2835-rpi.dtsi +index 8b95832..e36c392 100644 +--- a/arch/arm/boot/dts/bcm2835-rpi.dtsi ++++ b/arch/arm/boot/dts/bcm2835-rpi.dtsi +@@ -65,13 +65,13 @@ + &sdhci { + pinctrl-names = "default"; + pinctrl-0 = <&emmc_gpio48>; +- status = "okay"; + bus-width = <4>; + }; + + &sdhost { + pinctrl-names = "default"; + pinctrl-0 = <&sdhost_gpio48>; ++ status = "okay"; + bus-width = <4>; + }; + +From patchwork Wed Mar 8 09:19:11 2017 +Content-Type: text/plain; charset="utf-8" +MIME-Version: 1.0 +Content-Transfer-Encoding: 7bit +Subject: [v4,7/7] arm64: dts: bcm2837: add &sdhci and &sdhost +From: Gerd Hoffmann <kraxel@redhat.com> +X-Patchwork-Id: 9610637 +Message-Id: <1488964751-22763-12-git-send-email-kraxel@redhat.com> +To: linux-rpi-kernel@lists.infradead.org +Cc: mark.rutland@arm.com, stefan.wahren@i2se.com, ulf.hansson@linaro.org, + f.fainelli@gmail.com, sbranden@broadcom.com, devicetree@vger.kernel.org, + rjui@broadcom.com, lee@kernel.org, will.deacon@arm.com, + linux@armlinux.org.uk, + linux-kernel@vger.kernel.org, eric@anholt.net, robh+dt@kernel.org, + bcm-kernel-feedback-list@broadcom.com, Gerd Hoffmann <kraxel@redhat.com>, + catalin.marinas@arm.com, linux-mmc@vger.kernel.org, + linux-arm-kernel@lists.infradead.org +Date: Wed, 8 Mar 2017 10:19:11 +0100 + +For the raspberry pi 3 we'll need both sdhci (handles sdio wifi) and +sdhost (handles sdcard). + +Signed-off-by: Gerd Hoffmann <kraxel@redhat.com> +Acked-by: Eric Anholt <eric@anholt.net> +--- + arch/arm64/boot/dts/broadcom/bcm2837-rpi-3-b.dts | 17 +++++++++++++++++ + 1 file changed, 17 insertions(+) + +diff --git a/arch/arm64/boot/dts/broadcom/bcm2837-rpi-3-b.dts b/arch/arm64/boot/dts/broadcom/bcm2837-rpi-3-b.dts +index c309633..972f14d 100644 +--- a/arch/arm64/boot/dts/broadcom/bcm2837-rpi-3-b.dts ++++ b/arch/arm64/boot/dts/broadcom/bcm2837-rpi-3-b.dts +@@ -22,3 +22,20 @@ + &uart1 { + status = "okay"; + }; ++ ++/* SDHCI is used to control the SDIO for wireless */ ++&sdhci { ++ pinctrl-names = "default"; ++ pinctrl-0 = <&emmc_gpio34>; ++ status = "okay"; ++ bus-width = <4>; ++ non-removable; ++}; ++ ++/* SDHOST is used to drive the SD card */ ++&sdhost { ++ pinctrl-names = "default"; ++ pinctrl-0 = <&sdhost_gpio48>; ++ status = "okay"; ++ bus-width = <4>; ++}; +From patchwork Sat Mar 25 13:17:00 2017 +Content-Type: text/plain; charset="utf-8" +MIME-Version: 1.0 +Content-Transfer-Encoding: 7bit +Subject: mmc: bcm2835: Fix possible NULL ptr dereference in bcm2835_request +From: Stefan Wahren <stefan.wahren@i2se.com> +X-Patchwork-Id: 9644591 +Message-Id: <1490447820-751-1-git-send-email-stefan.wahren@i2se.com> +To: Ulf Hansson <ulf.hansson@linaro.org>, Eric Anholt <eric@anholt.net>, + Gerd Hoffmann <kraxel@redhat.com> +Cc: Jaehoon Chung <jh80.chung@samsung.com>, + Dan Carpenter <dan.carpenter@oracle.com>, + linux-rpi-kernel@lists.infradead.org, linux-mmc@vger.kernel.org, + Stefan Wahren <stefan.wahren@i2se.com> +Date: Sat, 25 Mar 2017 13:17:00 +0000 + +This fixes a NULL pointer dereference in case of a MMC request with a +set block count command and no data. + +Reported-by: Dan Carpenter <dan.carpenter@oracle.com> +Signed-off-by: Stefan Wahren <stefan.wahren@i2se.com> +--- + drivers/mmc/host/bcm2835.c | 3 ++- + 1 file changed, 2 insertions(+), 1 deletion(-) + +diff --git a/drivers/mmc/host/bcm2835.c b/drivers/mmc/host/bcm2835.c +index 7d1b0db..1f343a4 100644 +--- a/drivers/mmc/host/bcm2835.c ++++ b/drivers/mmc/host/bcm2835.c +@@ -1200,7 +1200,8 @@ static void bcm2835_request(struct mmc_host *mmc, struct mmc_request *mrq) + return; + } + +- host->use_sbc = !!mrq->sbc && (host->mrq->data->flags & MMC_DATA_READ); ++ host->use_sbc = !!mrq->sbc && host->mrq->data && ++ (host->mrq->data->flags & MMC_DATA_READ); + if (host->use_sbc) { + if (bcm2835_send_command(host, mrq->sbc)) { + if (!host->use_busy) diff --git a/bcm283x-mmc-imp-speed.patch b/bcm283x-mmc-imp-speed.patch deleted file mode 100644 index bad003a3c..000000000 --- a/bcm283x-mmc-imp-speed.patch +++ /dev/null @@ -1,107 +0,0 @@ -From patchwork Fri Dec 30 15:24:32 2016 -Content-Type: text/plain; charset="utf-8" -MIME-Version: 1.0 -Content-Transfer-Encoding: 7bit -Subject: [1/2] mmc: sdhci-iproc: Apply caps from bcm2835-mmc driver -From: Stefan Wahren <stefan.wahren@i2se.com> -X-Patchwork-Id: 9492281 -Message-Id: <1483111474-29907-2-git-send-email-stefan.wahren@i2se.com> -To: Eric Anholt <eric@anholt.net>, Gerd Hoffmann <kraxel@redhat.com>, - Adrian Hunter <adrian.hunter@intel.com>, - Ulf Hansson <ulf.hansson@linaro.org> -Cc: Stefan Wahren <stefan.wahren@i2se.com>, - Scott Branden <sbranden@broadcom.com>, Jon Mason <jonmason@broadcom.com>, - Ray Jui <rjui@broadcom.com>, linux-mmc@vger.kernel.org, - bcm-kernel-feedback-list@broadcom.com, - linux-rpi-kernel@lists.infradead.org, linux-arm-kernel@lists.infradead.org -Date: Fri, 30 Dec 2016 15:24:32 +0000 - -Since the mmc module on bcm2835 neither provide a capabilities register nor -free documentation we must rely on the downstream implementation [1]. - -So enable the following capabilities for bcm2835: - -MMC_CAP_MMC_HIGHSPEED -MMC_CAP_SD_HIGHSPEED -MMC_CAP_DRIVER_TYPE_A -MMC_CAP_DRIVER_TYPE_C - -[1] - https://github.com/raspberrypi/linux/blob/rpi-4.4.y/drivers/mmc/host/bcm2835-mmc.c - -Signed-off-by: Stefan Wahren <stefan.wahren@i2se.com> -Reviewed-by: Eric Anholt <eric@anholt.net> -Acked-by: Adrian Hunter <adrian.hunter@intel.com> ---- - drivers/mmc/host/sdhci-iproc.c | 9 ++++++--- - 1 file changed, 6 insertions(+), 3 deletions(-) - -diff --git a/drivers/mmc/host/sdhci-iproc.c b/drivers/mmc/host/sdhci-iproc.c -index d7046d6..30b3fdf 100644 ---- a/drivers/mmc/host/sdhci-iproc.c -+++ b/drivers/mmc/host/sdhci-iproc.c -@@ -211,14 +211,17 @@ static void sdhci_iproc_writeb(struct sdhci_host *host, u8 val, int reg) - static const struct sdhci_pltfm_data sdhci_bcm2835_pltfm_data = { - .quirks = SDHCI_QUIRK_BROKEN_CARD_DETECTION | - SDHCI_QUIRK_DATA_TIMEOUT_USES_SDCLK | -- SDHCI_QUIRK_MISSING_CAPS, -+ SDHCI_QUIRK_MISSING_CAPS | -+ SDHCI_QUIRK_NO_HISPD_BIT, - .ops = &sdhci_iproc_32only_ops, - }; - - static const struct sdhci_iproc_data bcm2835_data = { - .pdata = &sdhci_bcm2835_pltfm_data, -- .caps = SDHCI_CAN_VDD_330, -- .caps1 = 0x00000000, -+ .caps = SDHCI_CAN_VDD_330 | -+ SDHCI_CAN_DO_HISPD, -+ .caps1 = SDHCI_DRIVER_TYPE_A | -+ SDHCI_DRIVER_TYPE_C, - .mmc_caps = 0x00000000, - }; - -From patchwork Fri Dec 30 15:24:33 2016 -Content-Type: text/plain; charset="utf-8" -MIME-Version: 1.0 -Content-Transfer-Encoding: 7bit -Subject: [2/2] mmc: sdhci-iproc: Increase max_blk_size for bcm2835 -From: Stefan Wahren <stefan.wahren@i2se.com> -X-Patchwork-Id: 9492273 -Message-Id: <1483111474-29907-3-git-send-email-stefan.wahren@i2se.com> -To: Eric Anholt <eric@anholt.net>, Gerd Hoffmann <kraxel@redhat.com>, - Adrian Hunter <adrian.hunter@intel.com>, - Ulf Hansson <ulf.hansson@linaro.org> -Cc: Stefan Wahren <stefan.wahren@i2se.com>, - Scott Branden <sbranden@broadcom.com>, Jon Mason <jonmason@broadcom.com>, - Ray Jui <rjui@broadcom.com>, linux-mmc@vger.kernel.org, - bcm-kernel-feedback-list@broadcom.com, - linux-rpi-kernel@lists.infradead.org, linux-arm-kernel@lists.infradead.org -Date: Fri, 30 Dec 2016 15:24:33 +0000 - -According to the BCM2835 datasheet the maximum block size for the -eMMC module is restricted to the internal data FIFO which is 1024 byte. -But this is still an improvement to the default of 512 byte. - -Signed-off-by: Stefan Wahren <stefan.wahren@i2se.com> -Reviewed-by: Eric Anholt <eric@anholt.net> -Acked-by: Scott Branden <scott.branden@broadcom.com> -Acked-by: Adrian Hunter <adrian.hunter@intel.com> ---- - drivers/mmc/host/sdhci-iproc.c | 4 +++- - 1 file changed, 3 insertions(+), 1 deletion(-) - -diff --git a/drivers/mmc/host/sdhci-iproc.c b/drivers/mmc/host/sdhci-iproc.c -index 30b3fdf..3275d49 100644 ---- a/drivers/mmc/host/sdhci-iproc.c -+++ b/drivers/mmc/host/sdhci-iproc.c -@@ -218,7 +218,9 @@ static void sdhci_iproc_writeb(struct sdhci_host *host, u8 val, int reg) - - static const struct sdhci_iproc_data bcm2835_data = { - .pdata = &sdhci_bcm2835_pltfm_data, -- .caps = SDHCI_CAN_VDD_330 | -+ .caps = ((0x1 << SDHCI_MAX_BLOCK_SHIFT) -+ & SDHCI_MAX_BLOCK_MASK) | -+ SDHCI_CAN_VDD_330 | - SDHCI_CAN_DO_HISPD, - .caps1 = SDHCI_DRIVER_TYPE_A | - SDHCI_DRIVER_TYPE_C, diff --git a/debugconfig/CONFIG_DEBUG_REFCOUNT b/debugconfig/CONFIG_DEBUG_REFCOUNT new file mode 100644 index 000000000..cf296c8de --- /dev/null +++ b/debugconfig/CONFIG_DEBUG_REFCOUNT @@ -0,0 +1 @@ +CONFIG_DEBUG_REFCOUNT=y diff --git a/efi-Add-EFI_SECURE_BOOT-bit.patch b/efi-Add-EFI_SECURE_BOOT-bit.patch deleted file mode 100644 index c44010322..000000000 --- a/efi-Add-EFI_SECURE_BOOT-bit.patch +++ /dev/null @@ -1,43 +0,0 @@ -From a8883aff32f1e15b65e210462804aa2a9ab9a0b6 Mon Sep 17 00:00:00 2001 -From: Josh Boyer <jwboyer@fedoraproject.org> -Date: Tue, 27 Aug 2013 13:33:03 -0400 -Subject: [PATCH 13/20] efi: Add EFI_SECURE_BOOT bit - -UEFI machines can be booted in Secure Boot mode. Add a EFI_SECURE_BOOT bit -for use with efi_enabled. - -Signed-off-by: Josh Boyer <jwboyer@fedoraproject.org> ---- - arch/x86/kernel/setup.c | 2 ++ - include/linux/efi.h | 1 + - 2 files changed, 3 insertions(+) - -diff --git a/arch/x86/kernel/setup.c b/arch/x86/kernel/setup.c -index d40e961753c9..b93183336674 100644 ---- a/arch/x86/kernel/setup.c -+++ b/arch/x86/kernel/setup.c -@@ -1162,7 +1162,9 @@ void __init setup_arch(char **cmdline_p) - - #ifdef CONFIG_EFI_SECURE_BOOT_SIG_ENFORCE - if (boot_params.secure_boot) { -+ set_bit(EFI_SECURE_BOOT, &efi.flags); - enforce_signed_modules(); -+ pr_info("Secure boot enabled\n"); - } - #endif - -diff --git a/include/linux/efi.h b/include/linux/efi.h -index ce943d5accfd..5af91b58afae 100644 ---- a/include/linux/efi.h -+++ b/include/linux/efi.h -@@ -1046,6 +1046,7 @@ extern int __init efi_setup_pcdp_console(char *); - #define EFI_ARCH_1 7 /* First arch-specific bit */ - #define EFI_DBG 8 /* Print additional debug info at runtime */ - #define EFI_NX_PE_DATA 9 /* Can runtime data regions be mapped non-executable? */ -+#define EFI_SECURE_BOOT 10 /* Are we in Secure Boot mode? */ - - #ifdef CONFIG_EFI - /* --- -2.9.3 - diff --git a/efi-Add-SHIM-and-image-security-database-GUID-defini.patch b/efi-Add-SHIM-and-image-security-database-GUID-defini.patch deleted file mode 100644 index 4d380ea76..000000000 --- a/efi-Add-SHIM-and-image-security-database-GUID-defini.patch +++ /dev/null @@ -1,31 +0,0 @@ -From 3a9fe1504e08824d894bb3a804c6a313f5d1be8a Mon Sep 17 00:00:00 2001 -From: Josh Boyer <jwboyer@fedoraproject.org> -Date: Tue, 25 Oct 2016 12:54:11 -0400 -Subject: [PATCH 11/20] efi: Add SHIM and image security database GUID - definitions - -Add the definitions for shim and image security database, both of which -are used widely in various Linux distros. - -Signed-off-by: Josh Boyer <jwboyer@fedoraproject.org> ---- - include/linux/efi.h | 3 +++ - 1 file changed, 3 insertions(+) - -diff --git a/include/linux/efi.h b/include/linux/efi.h -index 2d089487d2da..ce943d5accfd 100644 ---- a/include/linux/efi.h -+++ b/include/linux/efi.h -@@ -592,6 +592,9 @@ void efi_native_runtime_setup(void); - #define EFI_MEMORY_ATTRIBUTES_TABLE_GUID EFI_GUID(0xdcfa911d, 0x26eb, 0x469f, 0xa2, 0x20, 0x38, 0xb7, 0xdc, 0x46, 0x12, 0x20) - #define EFI_CONSOLE_OUT_DEVICE_GUID EFI_GUID(0xd3b36f2c, 0xd551, 0x11d4, 0x9a, 0x46, 0x00, 0x90, 0x27, 0x3f, 0xc1, 0x4d) - -+#define EFI_IMAGE_SECURITY_DATABASE_GUID EFI_GUID(0xd719b2cb, 0x3d3a, 0x4596, 0xa3, 0xbc, 0xda, 0xd0, 0x0e, 0x67, 0x65, 0x6f) -+#define EFI_SHIM_LOCK_GUID EFI_GUID(0x605dab50, 0xe046, 0x4300, 0xab, 0xb6, 0x3d, 0xd8, 0x10, 0xdd, 0x8b, 0x23) -+ - /* - * This GUID is used to pass to the kernel proper the struct screen_info - * structure that was populated by the stub based on the GOP protocol instance --- -2.9.3 - diff --git a/efi-Disable-secure-boot-if-shim-is-in-insecure-mode.patch b/efi-Disable-secure-boot-if-shim-is-in-insecure-mode.patch deleted file mode 100644 index 761a66ff7..000000000 --- a/efi-Disable-secure-boot-if-shim-is-in-insecure-mode.patch +++ /dev/null @@ -1,58 +0,0 @@ -From d687d79620ea20511b2dbf77e74fdcf4d94981f9 Mon Sep 17 00:00:00 2001 -From: Josh Boyer <jwboyer@fedoraproject.org> -Date: Tue, 5 Feb 2013 19:25:05 -0500 -Subject: [PATCH 12/20] efi: Disable secure boot if shim is in insecure mode - -A user can manually tell the shim boot loader to disable validation of -images it loads. When a user does this, it creates a UEFI variable called -MokSBState that does not have the runtime attribute set. Given that the -user explicitly disabled validation, we can honor that and not enable -secure boot mode if that variable is set. - -Signed-off-by: Josh Boyer <jwboyer@fedoraproject.org> ---- - arch/x86/boot/compressed/eboot.c | 20 +++++++++++++++++++- - 1 file changed, 19 insertions(+), 1 deletion(-) - -diff --git a/arch/x86/boot/compressed/eboot.c b/arch/x86/boot/compressed/eboot.c -index ebc85c1eefd6..50e027f388d8 100644 ---- a/arch/x86/boot/compressed/eboot.c -+++ b/arch/x86/boot/compressed/eboot.c -@@ -540,8 +540,9 @@ static void setup_efi_pci(struct boot_params *params) - - static int get_secure_boot(void) - { -- u8 sb, setup; -+ u8 sb, setup, moksbstate; - unsigned long datasize = sizeof(sb); -+ u32 attr; - efi_guid_t var_guid = EFI_GLOBAL_VARIABLE_GUID; - efi_status_t status; - -@@ -565,6 +566,23 @@ static int get_secure_boot(void) - if (setup == 1) - return 0; - -+ /* See if a user has put shim into insecure_mode. If so, and the variable -+ * doesn't have the runtime attribute set, we might as well honor that. -+ */ -+ var_guid = EFI_SHIM_LOCK_GUID; -+ status = efi_early->call((unsigned long)sys_table->runtime->get_variable, -+ L"MokSBState", &var_guid, &attr, &datasize, -+ &moksbstate); -+ -+ /* If it fails, we don't care why. Default to secure */ -+ if (status != EFI_SUCCESS) -+ return 1; -+ -+ if (!(attr & EFI_VARIABLE_RUNTIME_ACCESS)) { -+ if (moksbstate == 1) -+ return 0; -+ } -+ - return 1; - } - --- -2.9.3 - diff --git a/efi-Make-EFI_SECURE_BOOT_SIG_ENFORCE-depend-on-EFI.patch b/efi-Make-EFI_SECURE_BOOT_SIG_ENFORCE-depend-on-EFI.patch deleted file mode 100644 index 095bea782..000000000 --- a/efi-Make-EFI_SECURE_BOOT_SIG_ENFORCE-depend-on-EFI.patch +++ /dev/null @@ -1,30 +0,0 @@ -From 0081083434db41c15b72eced975da0bd9b80566b Mon Sep 17 00:00:00 2001 -From: Josh Boyer <jwboyer@fedoraproject.org> -Date: Tue, 27 Aug 2013 13:28:43 -0400 -Subject: [PATCH 12/20] efi: Make EFI_SECURE_BOOT_SIG_ENFORCE depend on EFI - -The functionality of the config option is dependent upon the platform being -UEFI based. Reflect this in the config deps. - -Signed-off-by: Josh Boyer <jwboyer@fedoraproject.org> ---- - arch/x86/Kconfig | 3 ++- - 1 file changed, 2 insertions(+), 1 deletion(-) - -diff --git a/arch/x86/Kconfig b/arch/x86/Kconfig -index 14db458f4774..f6ff0a86d841 100644 ---- a/arch/x86/Kconfig -+++ b/arch/x86/Kconfig -@@ -1735,7 +1735,8 @@ config EFI_MIXED - If unsure, say N. - - config EFI_SECURE_BOOT_SIG_ENFORCE -- def_bool n -+ def_bool n -+ depends on EFI - prompt "Force module signing when UEFI Secure Boot is enabled" - ---help--- - UEFI Secure Boot provides a mechanism for ensuring that the --- -2.4.3 - diff --git a/efi-lockdown.patch b/efi-lockdown.patch index 6bbc24fa1..54a7caa24 100644 --- a/efi-lockdown.patch +++ b/efi-lockdown.patch @@ -1,667 +1,4 @@ -From d1d5053106cd1f8b2ae52fb6ffb2962f76053bf0 Mon Sep 17 00:00:00 2001 -From: Ard Biesheuvel <ard.biesheuvel@linaro.org> -Date: Wed, 23 Nov 2016 10:42:44 +0000 -Subject: [PATCH 01/32] efi: use typed function pointers for runtime services - table - -Instead of using void pointers, and casting them to correctly typed -function pointers upon use, declare the runtime services pointers -as function pointers using their respective prototypes, for which -typedefs are already available. - -Signed-off-by: Ard Biesheuvel <ard.biesheuvel@linaro.org> -Signed-off-by: David Howells <dhowells@redhat.com> ---- - include/linux/efi.h | 36 ++++++++++++++++++------------------ - 1 file changed, 18 insertions(+), 18 deletions(-) - -diff --git a/include/linux/efi.h b/include/linux/efi.h -index a07a476..93a82de 100644 ---- a/include/linux/efi.h -+++ b/include/linux/efi.h -@@ -508,24 +508,6 @@ typedef struct { - u64 query_variable_info; - } efi_runtime_services_64_t; - --typedef struct { -- efi_table_hdr_t hdr; -- void *get_time; -- void *set_time; -- void *get_wakeup_time; -- void *set_wakeup_time; -- void *set_virtual_address_map; -- void *convert_pointer; -- void *get_variable; -- void *get_next_variable; -- void *set_variable; -- void *get_next_high_mono_count; -- void *reset_system; -- void *update_capsule; -- void *query_capsule_caps; -- void *query_variable_info; --} efi_runtime_services_t; -- - typedef efi_status_t efi_get_time_t (efi_time_t *tm, efi_time_cap_t *tc); - typedef efi_status_t efi_set_time_t (efi_time_t *tm); - typedef efi_status_t efi_get_wakeup_time_t (efi_bool_t *enabled, efi_bool_t *pending, -@@ -560,6 +542,24 @@ typedef efi_status_t efi_query_variable_store_t(u32 attributes, - unsigned long size, - bool nonblocking); - -+typedef struct { -+ efi_table_hdr_t hdr; -+ efi_get_time_t *get_time; -+ efi_set_time_t *set_time; -+ efi_get_wakeup_time_t *get_wakeup_time; -+ efi_set_wakeup_time_t *set_wakeup_time; -+ efi_set_virtual_address_map_t *set_virtual_address_map; -+ void *convert_pointer; -+ efi_get_variable_t *get_variable; -+ efi_get_next_variable_t *get_next_variable; -+ efi_set_variable_t *set_variable; -+ efi_get_next_high_mono_count_t *get_next_high_mono_count; -+ efi_reset_system_t *reset_system; -+ efi_update_capsule_t *update_capsule; -+ efi_query_capsule_caps_t *query_capsule_caps; -+ efi_query_variable_info_t *query_variable_info; -+} efi_runtime_services_t; -+ - void efi_native_runtime_setup(void); - - /* --- -2.9.3 - -From 150ebd38630a3ac558b8ab839a7c7e5fd41cc5a8 Mon Sep 17 00:00:00 2001 -From: David Howells <dhowells@redhat.com> -Date: Mon, 21 Nov 2016 23:36:31 +0000 -Subject: [PATCH 02/32] x86/efi: Allow invocation of arbitrary runtime services - -Provide the ability to perform mixed-mode runtime service calls for x86 in -the same way that commit 0a637ee61247bd4bed9b2a07568ef7a1cfc76187 -("x86/efi: Allow invocation of arbitrary boot services") provides the -ability to invoke arbitrary boot services. - -Suggested-by: Lukas Wunner <lukas@wunner.de> -Signed-off-by: David Howells <dhowells@redhat.com> ---- - arch/x86/boot/compressed/eboot.c | 1 + - arch/x86/boot/compressed/head_32.S | 6 +++--- - arch/x86/boot/compressed/head_64.S | 8 ++++---- - arch/x86/include/asm/efi.h | 5 +++++ - 4 files changed, 13 insertions(+), 7 deletions(-) - -diff --git a/arch/x86/boot/compressed/eboot.c b/arch/x86/boot/compressed/eboot.c -index ff01c8f..c8c32eb 100644 ---- a/arch/x86/boot/compressed/eboot.c -+++ b/arch/x86/boot/compressed/eboot.c -@@ -32,6 +32,7 @@ static void setup_boot_services##bits(struct efi_config *c) \ - \ - table = (typeof(table))sys_table; \ - \ -+ c->runtime_services = table->runtime; \ - c->boot_services = table->boottime; \ - c->text_output = table->con_out; \ - } -diff --git a/arch/x86/boot/compressed/head_32.S b/arch/x86/boot/compressed/head_32.S -index fd0b6a2..d85b962 100644 ---- a/arch/x86/boot/compressed/head_32.S -+++ b/arch/x86/boot/compressed/head_32.S -@@ -82,7 +82,7 @@ ENTRY(efi_pe_entry) - - /* Relocate efi_config->call() */ - leal efi32_config(%esi), %eax -- add %esi, 32(%eax) -+ add %esi, 40(%eax) - pushl %eax - - call make_boot_params -@@ -108,7 +108,7 @@ ENTRY(efi32_stub_entry) - - /* Relocate efi_config->call() */ - leal efi32_config(%esi), %eax -- add %esi, 32(%eax) -+ add %esi, 40(%eax) - pushl %eax - 2: - call efi_main -@@ -264,7 +264,7 @@ relocated: - #ifdef CONFIG_EFI_STUB - .data - efi32_config: -- .fill 4,8,0 -+ .fill 5,8,0 - .long efi_call_phys - .long 0 - .byte 0 -diff --git a/arch/x86/boot/compressed/head_64.S b/arch/x86/boot/compressed/head_64.S -index efdfba2..beab832 100644 ---- a/arch/x86/boot/compressed/head_64.S -+++ b/arch/x86/boot/compressed/head_64.S -@@ -265,7 +265,7 @@ ENTRY(efi_pe_entry) - /* - * Relocate efi_config->call(). - */ -- addq %rbp, efi64_config+32(%rip) -+ addq %rbp, efi64_config+40(%rip) - - movq %rax, %rdi - call make_boot_params -@@ -285,7 +285,7 @@ handover_entry: - * Relocate efi_config->call(). - */ - movq efi_config(%rip), %rax -- addq %rbp, 32(%rax) -+ addq %rbp, 40(%rax) - 2: - movq efi_config(%rip), %rdi - call efi_main -@@ -457,14 +457,14 @@ efi_config: - #ifdef CONFIG_EFI_MIXED - .global efi32_config - efi32_config: -- .fill 4,8,0 -+ .fill 5,8,0 - .quad efi64_thunk - .byte 0 - #endif - - .global efi64_config - efi64_config: -- .fill 4,8,0 -+ .fill 5,8,0 - .quad efi_call - .byte 1 - #endif /* CONFIG_EFI_STUB */ -diff --git a/arch/x86/include/asm/efi.h b/arch/x86/include/asm/efi.h -index e99675b..2f77bce 100644 ---- a/arch/x86/include/asm/efi.h -+++ b/arch/x86/include/asm/efi.h -@@ -191,6 +191,7 @@ static inline efi_status_t efi_thunk_set_virtual_address_map( - struct efi_config { - u64 image_handle; - u64 table; -+ u64 runtime_services; - u64 boot_services; - u64 text_output; - efi_status_t (*call)(unsigned long, ...); -@@ -226,6 +227,10 @@ static inline bool efi_is_64bit(void) - #define __efi_call_early(f, ...) \ - __efi_early()->call((unsigned long)f, __VA_ARGS__); - -+#define efi_call_runtime(f, ...) \ -+ __efi_early()->call(efi_table_attr(efi_runtime_services, f, \ -+ __efi_early()->runtime_services), __VA_ARGS__) -+ - extern bool efi_reboot_required(void); - - #else --- -2.9.3 - -From 1342301133b5619b79f3288acf7e39450f8ba34f Mon Sep 17 00:00:00 2001 -From: David Howells <dhowells@redhat.com> -Date: Tue, 22 Nov 2016 00:20:00 +0000 -Subject: [PATCH 03/32] arm/efi: Allow invocation of arbitrary runtime services - -efi_call_runtime() is provided for x86 to be able abstract mixed mode -support. Provide this for ARM also so that common code work in mixed mode -also. - -Suggested-by: Lukas Wunner <lukas@wunner.de> -Signed-off-by: David Howells <dhowells@redhat.com> ---- - arch/arm/include/asm/efi.h | 1 + - arch/arm64/include/asm/efi.h | 1 + - 2 files changed, 2 insertions(+) - -diff --git a/arch/arm/include/asm/efi.h b/arch/arm/include/asm/efi.h -index 0b06f53..e4e6a9d6 100644 ---- a/arch/arm/include/asm/efi.h -+++ b/arch/arm/include/asm/efi.h -@@ -55,6 +55,7 @@ void efi_virtmap_unload(void); - - #define efi_call_early(f, ...) sys_table_arg->boottime->f(__VA_ARGS__) - #define __efi_call_early(f, ...) f(__VA_ARGS__) -+#define efi_call_runtime(f, ...) sys_table_arg->runtime->f(__VA_ARGS__) - #define efi_is_64bit() (false) - - #define efi_call_proto(protocol, f, instance, ...) \ -diff --git a/arch/arm64/include/asm/efi.h b/arch/arm64/include/asm/efi.h -index 771b3f0..d74ae22 100644 ---- a/arch/arm64/include/asm/efi.h -+++ b/arch/arm64/include/asm/efi.h -@@ -49,6 +49,7 @@ int efi_set_mapping_permissions(struct mm_struct *mm, efi_memory_desc_t *md); - - #define efi_call_early(f, ...) sys_table_arg->boottime->f(__VA_ARGS__) - #define __efi_call_early(f, ...) f(__VA_ARGS__) -+#define efi_call_runtime(f, ...) sys_table_arg->runtime->f(__VA_ARGS__) - #define efi_is_64bit() (true) - - #define efi_call_proto(protocol, f, instance, ...) \ --- -2.9.3 - -From 2e25c5beef2a97abbb660e707bced77c0eb0ace9 Mon Sep 17 00:00:00 2001 -From: David Howells <dhowells@redhat.com> -Date: Tue, 22 Nov 2016 00:10:55 +0000 -Subject: [PATCH 04/32] efi: Add SHIM and image security database GUID - definitions - -Add the definitions for shim and image security database, both of which -are used widely in various Linux distros. - -Signed-off-by: Josh Boyer <jwboyer@fedoraproject.org> -Signed-off-by: David Howells <dhowells@redhat.com> -Reviewed-by: Ard Biesheuvel <ard.biesheuvel@linaro.org> ---- - include/linux/efi.h | 3 +++ - 1 file changed, 3 insertions(+) - -diff --git a/include/linux/efi.h b/include/linux/efi.h -index 93a82de..c790455 100644 ---- a/include/linux/efi.h -+++ b/include/linux/efi.h -@@ -610,6 +610,9 @@ void efi_native_runtime_setup(void); - #define EFI_CONSOLE_OUT_DEVICE_GUID EFI_GUID(0xd3b36f2c, 0xd551, 0x11d4, 0x9a, 0x46, 0x00, 0x90, 0x27, 0x3f, 0xc1, 0x4d) - #define APPLE_PROPERTIES_PROTOCOL_GUID EFI_GUID(0x91bd12fe, 0xf6c3, 0x44fb, 0xa5, 0xb7, 0x51, 0x22, 0xab, 0x30, 0x3a, 0xe0) - -+#define EFI_IMAGE_SECURITY_DATABASE_GUID EFI_GUID(0xd719b2cb, 0x3d3a, 0x4596, 0xa3, 0xbc, 0xda, 0xd0, 0x0e, 0x67, 0x65, 0x6f) -+#define EFI_SHIM_LOCK_GUID EFI_GUID(0x605dab50, 0xe046, 0x4300, 0xab, 0xb6, 0x3d, 0xd8, 0x10, 0xdd, 0x8b, 0x23) -+ - /* - * This GUID is used to pass to the kernel proper the struct screen_info - * structure that was populated by the stub based on the GOP protocol instance --- -2.9.3 - -From 820d2f84670080c406bad4c8469e80e1e5f8a191 Mon Sep 17 00:00:00 2001 -From: David Howells <dhowells@redhat.com> -Date: Mon, 21 Nov 2016 23:55:55 +0000 -Subject: [PATCH 05/32] efi: Get the secure boot status - -Get the firmware's secure-boot status in the kernel boot wrapper and stash -it somewhere that the main kernel image can find. - -The efi_get_secureboot() function is extracted from the arm stub and (a) -generalised so that it can be called from x86 and (b) made to use -efi_call_runtime() so that it can be run in mixed-mode. - -Suggested-by: Lukas Wunner <lukas@wunner.de> -Signed-off-by: David Howells <dhowells@redhat.com> ---- - Documentation/x86/zero-page.txt | 2 + - arch/x86/boot/compressed/eboot.c | 2 + - arch/x86/boot/compressed/head_32.S | 1 + - arch/x86/boot/compressed/head_64.S | 1 + - arch/x86/include/asm/bootparam_utils.h | 5 ++- - arch/x86/include/uapi/asm/bootparam.h | 3 +- - arch/x86/kernel/asm-offsets.c | 1 + - drivers/firmware/efi/libstub/Makefile | 2 +- - drivers/firmware/efi/libstub/arm-stub.c | 58 ++------------------------- - drivers/firmware/efi/libstub/secureboot.c | 66 +++++++++++++++++++++++++++++++ - include/linux/efi.h | 8 ++++ - 11 files changed, 90 insertions(+), 59 deletions(-) - create mode 100644 drivers/firmware/efi/libstub/secureboot.c - -diff --git a/Documentation/x86/zero-page.txt b/Documentation/x86/zero-page.txt -index 95a4d34..b8527c6 100644 ---- a/Documentation/x86/zero-page.txt -+++ b/Documentation/x86/zero-page.txt -@@ -31,6 +31,8 @@ Offset Proto Name Meaning - 1E9/001 ALL eddbuf_entries Number of entries in eddbuf (below) - 1EA/001 ALL edd_mbr_sig_buf_entries Number of entries in edd_mbr_sig_buffer - (below) -+1EB/001 ALL kbd_status Numlock is enabled -+1EC/001 ALL secure_boot Secure boot is enabled in the firmware - 1EF/001 ALL sentinel Used to detect broken bootloaders - 290/040 ALL edd_mbr_sig_buffer EDD MBR signatures - 2D0/A00 ALL e820_map E820 memory map table -diff --git a/arch/x86/boot/compressed/eboot.c b/arch/x86/boot/compressed/eboot.c -index c8c32eb..5b151c2 100644 ---- a/arch/x86/boot/compressed/eboot.c -+++ b/arch/x86/boot/compressed/eboot.c -@@ -1158,6 +1158,8 @@ struct boot_params *efi_main(struct efi_config *c, - else - setup_boot_services32(efi_early); - -+ boot_params->secure_boot = efi_get_secureboot(sys_table); -+ - setup_graphics(boot_params); - - setup_efi_pci(boot_params); -diff --git a/arch/x86/boot/compressed/head_32.S b/arch/x86/boot/compressed/head_32.S -index d85b962..c635f7e 100644 ---- a/arch/x86/boot/compressed/head_32.S -+++ b/arch/x86/boot/compressed/head_32.S -@@ -61,6 +61,7 @@ - - __HEAD - ENTRY(startup_32) -+ movb $0, BP_secure_boot(%esi) - #ifdef CONFIG_EFI_STUB - jmp preferred_addr - -diff --git a/arch/x86/boot/compressed/head_64.S b/arch/x86/boot/compressed/head_64.S -index beab832..ccd2c74 100644 ---- a/arch/x86/boot/compressed/head_64.S -+++ b/arch/x86/boot/compressed/head_64.S -@@ -244,6 +244,7 @@ ENTRY(startup_64) - * that maps our entire kernel(text+data+bss+brk), zero page - * and command line. - */ -+ movb $0, BP_secure_boot(%rsi) - #ifdef CONFIG_EFI_STUB - /* - * The entry point for the PE/COFF executable is efi_pe_entry, so -diff --git a/arch/x86/include/asm/bootparam_utils.h b/arch/x86/include/asm/bootparam_utils.h -index 4a8cb8d..7e16d53 100644 ---- a/arch/x86/include/asm/bootparam_utils.h -+++ b/arch/x86/include/asm/bootparam_utils.h -@@ -38,9 +38,10 @@ static void sanitize_boot_params(struct boot_params *boot_params) - memset(&boot_params->ext_ramdisk_image, 0, - (char *)&boot_params->efi_info - - (char *)&boot_params->ext_ramdisk_image); -- memset(&boot_params->kbd_status, 0, -+ boot_params->kbd_status = 0; -+ memset(&boot_params->_pad5, 0, - (char *)&boot_params->hdr - -- (char *)&boot_params->kbd_status); -+ (char *)&boot_params->_pad5); - memset(&boot_params->_pad7[0], 0, - (char *)&boot_params->edd_mbr_sig_buffer[0] - - (char *)&boot_params->_pad7[0]); -diff --git a/arch/x86/include/uapi/asm/bootparam.h b/arch/x86/include/uapi/asm/bootparam.h -index b10bf31..5138dac 100644 ---- a/arch/x86/include/uapi/asm/bootparam.h -+++ b/arch/x86/include/uapi/asm/bootparam.h -@@ -135,7 +135,8 @@ struct boot_params { - __u8 eddbuf_entries; /* 0x1e9 */ - __u8 edd_mbr_sig_buf_entries; /* 0x1ea */ - __u8 kbd_status; /* 0x1eb */ -- __u8 _pad5[3]; /* 0x1ec */ -+ __u8 secure_boot; /* 0x1ec */ -+ __u8 _pad5[2]; /* 0x1ed */ - /* - * The sentinel is set to a nonzero value (0xff) in header.S. - * -diff --git a/arch/x86/kernel/asm-offsets.c b/arch/x86/kernel/asm-offsets.c -index c62e015..de827d6 100644 ---- a/arch/x86/kernel/asm-offsets.c -+++ b/arch/x86/kernel/asm-offsets.c -@@ -81,6 +81,7 @@ void common(void) { - - BLANK(); - OFFSET(BP_scratch, boot_params, scratch); -+ OFFSET(BP_secure_boot, boot_params, secure_boot); - OFFSET(BP_loadflags, boot_params, hdr.loadflags); - OFFSET(BP_hardware_subarch, boot_params, hdr.hardware_subarch); - OFFSET(BP_version, boot_params, hdr.version); -diff --git a/drivers/firmware/efi/libstub/Makefile b/drivers/firmware/efi/libstub/Makefile -index 6621b13..9af9668 100644 ---- a/drivers/firmware/efi/libstub/Makefile -+++ b/drivers/firmware/efi/libstub/Makefile -@@ -28,7 +28,7 @@ OBJECT_FILES_NON_STANDARD := y - # Prevents link failures: __sanitizer_cov_trace_pc() is not linked in. - KCOV_INSTRUMENT := n - --lib-y := efi-stub-helper.o gop.o -+lib-y := efi-stub-helper.o gop.o secureboot.o - - # include the stub's generic dependencies from lib/ when building for ARM/arm64 - arm-deps := fdt_rw.c fdt_ro.c fdt_wip.c fdt.c fdt_empty_tree.c fdt_sw.c sort.c -diff --git a/drivers/firmware/efi/libstub/arm-stub.c b/drivers/firmware/efi/libstub/arm-stub.c -index b4f7d78..06d5034 100644 ---- a/drivers/firmware/efi/libstub/arm-stub.c -+++ b/drivers/firmware/efi/libstub/arm-stub.c -@@ -20,52 +20,6 @@ - - bool __nokaslr; - --static int efi_get_secureboot(efi_system_table_t *sys_table_arg) --{ -- static efi_char16_t const sb_var_name[] = { -- 'S', 'e', 'c', 'u', 'r', 'e', 'B', 'o', 'o', 't', 0 }; -- static efi_char16_t const sm_var_name[] = { -- 'S', 'e', 't', 'u', 'p', 'M', 'o', 'd', 'e', 0 }; -- -- efi_guid_t var_guid = EFI_GLOBAL_VARIABLE_GUID; -- efi_get_variable_t *f_getvar = sys_table_arg->runtime->get_variable; -- u8 val; -- unsigned long size = sizeof(val); -- efi_status_t status; -- -- status = f_getvar((efi_char16_t *)sb_var_name, (efi_guid_t *)&var_guid, -- NULL, &size, &val); -- -- if (status != EFI_SUCCESS) -- goto out_efi_err; -- -- if (val == 0) -- return 0; -- -- status = f_getvar((efi_char16_t *)sm_var_name, (efi_guid_t *)&var_guid, -- NULL, &size, &val); -- -- if (status != EFI_SUCCESS) -- goto out_efi_err; -- -- if (val == 1) -- return 0; -- -- return 1; -- --out_efi_err: -- switch (status) { -- case EFI_NOT_FOUND: -- return 0; -- case EFI_DEVICE_ERROR: -- return -EIO; -- case EFI_SECURITY_VIOLATION: -- return -EACCES; -- default: -- return -EINVAL; -- } --} -- - efi_status_t efi_open_volume(efi_system_table_t *sys_table_arg, - void *__image, void **__fh) - { -@@ -226,7 +180,7 @@ unsigned long efi_entry(void *handle, efi_system_table_t *sys_table, - efi_guid_t loaded_image_proto = LOADED_IMAGE_PROTOCOL_GUID; - unsigned long reserve_addr = 0; - unsigned long reserve_size = 0; -- int secure_boot = 0; -+ enum efi_secureboot_mode secure_boot = efi_secureboot_mode_unknown; - struct screen_info *si; - - /* Check if we were booted by the EFI firmware */ -@@ -296,19 +250,13 @@ unsigned long efi_entry(void *handle, efi_system_table_t *sys_table, - pr_efi_err(sys_table, "Failed to parse EFI cmdline options\n"); - - secure_boot = efi_get_secureboot(sys_table); -- if (secure_boot > 0) -- pr_efi(sys_table, "UEFI Secure Boot is enabled.\n"); -- -- if (secure_boot < 0) { -- pr_efi_err(sys_table, -- "could not determine UEFI Secure Boot status.\n"); -- } - - /* - * Unauthenticated device tree data is a security hazard, so - * ignore 'dtb=' unless UEFI Secure Boot is disabled. - */ -- if (secure_boot != 0 && strstr(cmdline_ptr, "dtb=")) { -+ if (secure_boot != efi_secureboot_mode_disabled && -+ strstr(cmdline_ptr, "dtb=")) { - pr_efi(sys_table, "Ignoring DTB from command line.\n"); - } else { - status = handle_cmdline_files(sys_table, image, cmdline_ptr, -diff --git a/drivers/firmware/efi/libstub/secureboot.c b/drivers/firmware/efi/libstub/secureboot.c -new file mode 100644 -index 0000000..70e2a36 ---- /dev/null -+++ b/drivers/firmware/efi/libstub/secureboot.c -@@ -0,0 +1,66 @@ -+/* -+ * Secure boot handling. -+ * -+ * Copyright (C) 2013,2014 Linaro Limited -+ * Roy Franz <roy.franz@linaro.org -+ * Copyright (C) 2013 Red Hat, Inc. -+ * Mark Salter <msalter@redhat.com> -+ * -+ * This file is part of the Linux kernel, and is made available under the -+ * terms of the GNU General Public License version 2. -+ * -+ */ -+ -+#include <linux/efi.h> -+#include <asm/efi.h> -+ -+/* BIOS variables */ -+static const efi_guid_t efi_variable_guid = EFI_GLOBAL_VARIABLE_GUID; -+static const efi_char16_t const efi_SecureBoot_name[] = { -+ 'S', 'e', 'c', 'u', 'r', 'e', 'B', 'o', 'o', 't', 0 -+}; -+static const efi_char16_t const efi_SetupMode_name[] = { -+ 'S', 'e', 't', 'u', 'p', 'M', 'o', 'd', 'e', 0 -+}; -+ -+#define get_efi_var(name, vendor, ...) \ -+ efi_call_runtime(get_variable, \ -+ (efi_char16_t *)(name), (efi_guid_t *)(vendor), \ -+ __VA_ARGS__); -+ -+/* -+ * Determine whether we're in secure boot mode. We return: -+ */ -+enum efi_secureboot_mode efi_get_secureboot(efi_system_table_t *sys_table_arg) -+{ -+ u8 secboot, setupmode; -+ unsigned long size; -+ efi_status_t status; -+ -+ size = sizeof(secboot); -+ status = get_efi_var(efi_SecureBoot_name, &efi_variable_guid, -+ NULL, &size, &secboot); -+ if (status != EFI_SUCCESS) -+ goto out_efi_err; -+ -+ size = sizeof(setupmode); -+ status = get_efi_var(efi_SetupMode_name, &efi_variable_guid, -+ NULL, &size, &setupmode); -+ if (status != EFI_SUCCESS) -+ goto out_efi_err; -+ -+ if (secboot == 0 || setupmode == 1) -+ goto secure_boot_disabled; -+ -+ pr_efi(sys_table_arg, "UEFI Secure Boot is enabled.\n"); -+ return efi_secureboot_mode_enabled; -+ -+secure_boot_disabled: -+ return efi_secureboot_mode_disabled; -+ -+out_efi_err: -+ pr_efi_err(sys_table_arg, "Could not determine UEFI Secure Boot status.\n"); -+ if (status == EFI_NOT_FOUND) -+ goto secure_boot_disabled; -+ return efi_secureboot_mode_unknown; -+} -diff --git a/include/linux/efi.h b/include/linux/efi.h -index c790455..92e23f0 100644 ---- a/include/linux/efi.h -+++ b/include/linux/efi.h -@@ -1477,6 +1477,14 @@ efi_status_t efi_setup_gop(efi_system_table_t *sys_table_arg, - bool efi_runtime_disabled(void); - extern void efi_call_virt_check_flags(unsigned long flags, const char *call); - -+enum efi_secureboot_mode { -+ efi_secureboot_mode_unset, -+ efi_secureboot_mode_unknown, -+ efi_secureboot_mode_disabled, -+ efi_secureboot_mode_enabled, -+}; -+enum efi_secureboot_mode efi_get_secureboot(efi_system_table_t *sys_table); -+ - /* - * Arch code can implement the following three template macros, avoiding - * reptition for the void/non-void return cases of {__,}efi_call_virt(): --- -2.9.3 - -From baa6cdc01e6017c6bd798b1af89458359e13155e Mon Sep 17 00:00:00 2001 -From: Josh Boyer <jwboyer@fedoraproject.org> -Date: Mon, 21 Nov 2016 23:55:55 +0000 -Subject: [PATCH 06/32] efi: Disable secure boot if shim is in insecure mode - -A user can manually tell the shim boot loader to disable validation of -images it loads. When a user does this, it creates a UEFI variable called -MokSBState that does not have the runtime attribute set. Given that the -user explicitly disabled validation, we can honor that and not enable -secure boot mode if that variable is set. - -Signed-off-by: Josh Boyer <jwboyer@fedoraproject.org> -Signed-off-by: David Howells <dhowells@redhat.com> ---- - drivers/firmware/efi/libstub/secureboot.c | 24 +++++++++++++++++++++++- - 1 file changed, 23 insertions(+), 1 deletion(-) - -diff --git a/drivers/firmware/efi/libstub/secureboot.c b/drivers/firmware/efi/libstub/secureboot.c -index 70e2a36..ba6ef71 100644 ---- a/drivers/firmware/efi/libstub/secureboot.c -+++ b/drivers/firmware/efi/libstub/secureboot.c -@@ -23,6 +23,12 @@ static const efi_char16_t const efi_SetupMode_name[] = { - 'S', 'e', 't', 'u', 'p', 'M', 'o', 'd', 'e', 0 - }; - -+/* SHIM variables */ -+static const efi_guid_t shim_guid = EFI_SHIM_LOCK_GUID; -+static efi_char16_t const shim_MokSBState_name[] = { -+ 'M', 'o', 'k', 'S', 'B', 'S', 't', 'a', 't', 'e', 0 -+}; -+ - #define get_efi_var(name, vendor, ...) \ - efi_call_runtime(get_variable, \ - (efi_char16_t *)(name), (efi_guid_t *)(vendor), \ -@@ -33,7 +39,8 @@ static const efi_char16_t const efi_SetupMode_name[] = { - */ - enum efi_secureboot_mode efi_get_secureboot(efi_system_table_t *sys_table_arg) - { -- u8 secboot, setupmode; -+ u32 attr; -+ u8 secboot, setupmode, moksbstate; - unsigned long size; - efi_status_t status; - -@@ -52,6 +59,21 @@ enum efi_secureboot_mode efi_get_secureboot(efi_system_table_t *sys_table_arg) - if (secboot == 0 || setupmode == 1) - goto secure_boot_disabled; - -+ /* See if a user has put shim into insecure mode. If so, and if the -+ * variable doesn't have the runtime attribute set, we might as well -+ * honor that. -+ */ -+ size = sizeof(moksbstate); -+ status = get_efi_var(shim_MokSBState_name, &shim_guid, -+ &attr, &size, &moksbstate); -+ -+ /* If it fails, we don't care why. Default to secure */ -+ if (status != EFI_SUCCESS) -+ goto secure_boot_enabled; -+ if (!(attr & EFI_VARIABLE_RUNTIME_ACCESS) && moksbstate == 1) -+ goto secure_boot_disabled; -+ -+secure_boot_enabled: - pr_efi(sys_table_arg, "UEFI Secure Boot is enabled.\n"); - return efi_secureboot_mode_enabled; - --- -2.9.3 - -From 9079547f4808ea5c8cd844bf40d3895994bd175e Mon Sep 17 00:00:00 2001 +From df7d76ae50f18d4465e59fdf7f19d3df44906cb5 Mon Sep 17 00:00:00 2001 From: Josh Boyer <jwboyer@fedoraproject.org> Date: Mon, 21 Nov 2016 23:55:55 +0000 Subject: [PATCH 07/32] efi: Add EFI_SECURE_BOOT bit @@ -676,126 +13,38 @@ out whether secure boot mode is enabled so that it can be disabled. Signed-off-by: Josh Boyer <jwboyer@fedoraproject.org> Signed-off-by: David Howells <dhowells@redhat.com> --- - arch/x86/kernel/setup.c | 15 +++++++++++++++ - include/linux/efi.h | 1 + - 2 files changed, 16 insertions(+) + arch/x86/kernel/setup.c | 1 + + include/linux/efi.h | 1 + + 2 files changed, 2 insertions(+) diff --git a/arch/x86/kernel/setup.c b/arch/x86/kernel/setup.c -index 9c337b0..d8972ec 100644 +index 69780ed..447905e 100644 --- a/arch/x86/kernel/setup.c +++ b/arch/x86/kernel/setup.c -@@ -1152,6 +1152,21 @@ void __init setup_arch(char **cmdline_p) - /* Allocate bigger log buffer */ - setup_log_buf(1); - -+ if (IS_ENABLED(CONFIG_EFI)) { -+ switch (boot_params.secure_boot) { -+ case efi_secureboot_mode_disabled: -+ pr_info("Secure boot disabled\n"); -+ break; -+ case efi_secureboot_mode_enabled: +@@ -1182,6 +1182,7 @@ void __init setup_arch(char **cmdline_p) + pr_info("Secure boot disabled\n"); + break; + case efi_secureboot_mode_enabled: + set_bit(EFI_SECURE_BOOT, &efi.flags); -+ pr_info("Secure boot enabled\n"); -+ break; -+ default: -+ pr_info("Secure boot could not be determined\n"); -+ break; -+ } -+ } -+ - reserve_initrd(); - - acpi_table_upgrade(); + pr_info("Secure boot enabled\n"); + break; + default: diff --git a/include/linux/efi.h b/include/linux/efi.h -index 92e23f0..135ca9c 100644 +index 94d34e0..6049600 100644 --- a/include/linux/efi.h +++ b/include/linux/efi.h -@@ -1066,6 +1066,7 @@ extern int __init efi_setup_pcdp_console(char *); - #define EFI_ARCH_1 7 /* First arch-specific bit */ +@@ -1069,6 +1069,7 @@ extern int __init efi_setup_pcdp_console(char *); #define EFI_DBG 8 /* Print additional debug info at runtime */ #define EFI_NX_PE_DATA 9 /* Can runtime data regions be mapped non-executable? */ -+#define EFI_SECURE_BOOT 10 /* Are we in Secure Boot mode? */ - + #define EFI_MEM_ATTR 10 /* Did firmware publish an EFI_MEMORY_ATTRIBUTES table? */ ++#define EFI_SECURE_BOOT 11 /* Are we in Secure Boot mode? */ + #ifdef CONFIG_EFI /* -- -2.9.3 - -From eada0243f0b8fc21588a21c564187219dee03e3c Mon Sep 17 00:00:00 2001 -From: David Howells <dhowells@redhat.com> -Date: Fri, 25 Nov 2016 11:52:05 +0000 -Subject: [PATCH 08/32] efi: Handle secure boot from UEFI-2.6 - -UEFI-2.6 adds a new variable, DeployedMode. If it exists, this must be 1 -if we're to engage lockdown mode. - -Reported-by: James Bottomley <James.Bottomley@HansenPartnership.com> -Signed-off-by: David Howells <dhowells@redhat.com> ---- - drivers/firmware/efi/libstub/secureboot.c | 16 +++++++++++++++- - include/linux/efi.h | 4 ++++ - 2 files changed, 19 insertions(+), 1 deletion(-) - -diff --git a/drivers/firmware/efi/libstub/secureboot.c b/drivers/firmware/efi/libstub/secureboot.c -index ba6ef71..333b159 100644 ---- a/drivers/firmware/efi/libstub/secureboot.c -+++ b/drivers/firmware/efi/libstub/secureboot.c -@@ -22,6 +22,9 @@ static const efi_char16_t const efi_SecureBoot_name[] = { - static const efi_char16_t const efi_SetupMode_name[] = { - 'S', 'e', 't', 'u', 'p', 'M', 'o', 'd', 'e', 0 - }; -+static const efi_char16_t const efi_DeployedMode_name[] = { -+ 'D', 'e', 'p', 'l', 'o', 'y', 'e', 'd', 'M', 'o', 'd', 'e', 0 -+}; - - /* SHIM variables */ - static const efi_guid_t shim_guid = EFI_SHIM_LOCK_GUID; -@@ -40,7 +43,7 @@ static efi_char16_t const shim_MokSBState_name[] = { - enum efi_secureboot_mode efi_get_secureboot(efi_system_table_t *sys_table_arg) - { - u32 attr; -- u8 secboot, setupmode, moksbstate; -+ u8 secboot, setupmode, deployedmode, moksbstate; - unsigned long size; - efi_status_t status; - -@@ -59,6 +62,17 @@ enum efi_secureboot_mode efi_get_secureboot(efi_system_table_t *sys_table_arg) - if (secboot == 0 || setupmode == 1) - goto secure_boot_disabled; - -+ /* UEFI-2.6 requires DeployedMode to be 1. */ -+ if (sys_table_arg->hdr.revision >= EFI_2_60_SYSTEM_TABLE_REVISION) { -+ size = sizeof(deployedmode); -+ status = get_efi_var(efi_DeployedMode_name, &efi_variable_guid, -+ NULL, &size, &deployedmode); -+ if (status != EFI_SUCCESS) -+ goto out_efi_err; -+ if (deployedmode == 0) -+ goto secure_boot_disabled; -+ } -+ - /* See if a user has put shim into insecure mode. If so, and if the - * variable doesn't have the runtime attribute set, we might as well - * honor that. -diff --git a/include/linux/efi.h b/include/linux/efi.h -index 135ca9c..e1893f5 100644 ---- a/include/linux/efi.h -+++ b/include/linux/efi.h -@@ -645,6 +645,10 @@ typedef struct { - - #define EFI_SYSTEM_TABLE_SIGNATURE ((u64)0x5453595320494249ULL) - -+#define EFI_2_60_SYSTEM_TABLE_REVISION ((2 << 16) | (60)) -+#define EFI_2_50_SYSTEM_TABLE_REVISION ((2 << 16) | (50)) -+#define EFI_2_40_SYSTEM_TABLE_REVISION ((2 << 16) | (40)) -+#define EFI_2_31_SYSTEM_TABLE_REVISION ((2 << 16) | (31)) - #define EFI_2_30_SYSTEM_TABLE_REVISION ((2 << 16) | (30)) - #define EFI_2_20_SYSTEM_TABLE_REVISION ((2 << 16) | (20)) - #define EFI_2_10_SYSTEM_TABLE_REVISION ((2 << 16) | (10)) --- -2.9.3 +2.7.4 -From 3b0695eda22ad712a2b9be9bb70979d875a37816 Mon Sep 17 00:00:00 2001 +From f05a90c19a9613d8d50597319ed91f691e25b689 Mon Sep 17 00:00:00 2001 From: David Howells <dhowells@redhat.com> Date: Mon, 21 Nov 2016 23:36:17 +0000 Subject: [PATCH 09/32] Add the ability to lock down access to the running @@ -818,13 +67,13 @@ Signed-off-by: David Howells <dhowells@redhat.com> create mode 100644 security/lock_down.c diff --git a/include/linux/kernel.h b/include/linux/kernel.h -index bc6ed52..8ab309d 100644 +index cb09238..3cd3be9 100644 --- a/include/linux/kernel.h +++ b/include/linux/kernel.h -@@ -268,6 +268,15 @@ extern int oops_may_print(void); +@@ -273,6 +273,15 @@ extern int oops_may_print(void); void do_exit(long error_code) __noreturn; void complete_and_exit(struct completion *, long) __noreturn; - + +#ifdef CONFIG_LOCK_DOWN_KERNEL +extern bool kernel_is_locked_down(void); +#else @@ -838,13 +87,13 @@ index bc6ed52..8ab309d 100644 int __must_check _kstrtoul(const char *s, unsigned int base, unsigned long *res); int __must_check _kstrtol(const char *s, unsigned int base, long *res); diff --git a/include/linux/security.h b/include/linux/security.h -index c2125e9..41a7325 100644 +index d3868f2..187b74b 100644 --- a/include/linux/security.h +++ b/include/linux/security.h -@@ -1685,5 +1685,16 @@ static inline void free_secdata(void *secdata) +@@ -1679,5 +1679,16 @@ static inline void free_secdata(void *secdata) { } #endif /* CONFIG_SECURITY */ - + +#ifdef CONFIG_LOCK_DOWN_KERNEL +extern void lock_kernel_down(void); +#ifdef CONFIG_ALLOW_LOCKDOWN_LIFT @@ -857,15 +106,15 @@ index c2125e9..41a7325 100644 +#endif + #endif /* ! __LINUX_SECURITY_H */ - + diff --git a/security/Kconfig b/security/Kconfig -index 118f454..fa1a678 100644 +index d900f47..d9b391d 100644 --- a/security/Kconfig +++ b/security/Kconfig -@@ -158,6 +158,21 @@ config HARDENED_USERCOPY_PAGESPAN - been removed. This config is intended to be used only while - trying to find such users. - +@@ -193,6 +193,21 @@ config STATIC_USERMODEHELPER_PATH + If you wish for all usermode helper programs to be disabled, + specify an empty string here (i.e. ""). + +config LOCK_DOWN_KERNEL + bool "Allow the kernel to be 'locked down'" + help @@ -942,9 +191,9 @@ index 0000000..5788c60 +} +EXPORT_SYMBOL(kernel_is_locked_down); -- -2.9.3 +2.7.4 -From c1cc643f82e1c9efee123eb81befb58e41b87310 Mon Sep 17 00:00:00 2001 +From fb6feb38e297260d050fc477c72683ac51d07ae3 Mon Sep 17 00:00:00 2001 From: David Howells <dhowells@redhat.com> Date: Mon, 21 Nov 2016 23:55:55 +0000 Subject: [PATCH 10/32] efi: Lock down the kernel if booted in secure boot mode @@ -962,13 +211,13 @@ Signed-off-by: David Howells <dhowells@redhat.com> 2 files changed, 19 insertions(+), 1 deletion(-) diff --git a/arch/x86/Kconfig b/arch/x86/Kconfig -index bada636..5b19997 100644 +index 874c123..a315974 100644 --- a/arch/x86/Kconfig +++ b/arch/x86/Kconfig -@@ -1786,6 +1786,18 @@ config EFI_MIXED - +@@ -1816,6 +1816,18 @@ config EFI_MIXED + If unsure, say N. - + +config EFI_SECURE_BOOT_LOCK_DOWN + def_bool n + depends on EFI @@ -985,7 +234,7 @@ index bada636..5b19997 100644 def_bool y prompt "Enable seccomp to safely compute untrusted bytecode" diff --git a/arch/x86/kernel/setup.c b/arch/x86/kernel/setup.c -index d8972ec..facaeb9 100644 +index 447905e..d44e60e 100644 --- a/arch/x86/kernel/setup.c +++ b/arch/x86/kernel/setup.c @@ -69,6 +69,7 @@ @@ -993,10 +242,10 @@ index d8972ec..facaeb9 100644 #include <linux/tboot.h> #include <linux/jiffies.h> +#include <linux/security.h> - + #include <video/edid.h> - -@@ -1159,7 +1160,12 @@ void __init setup_arch(char **cmdline_p) + +@@ -1183,7 +1184,12 @@ void __init setup_arch(char **cmdline_p) break; case efi_secureboot_mode_enabled: set_bit(EFI_SECURE_BOOT, &efi.flags); @@ -1011,9 +260,9 @@ index d8972ec..facaeb9 100644 default: pr_info("Secure boot could not be determined\n"); -- -2.9.3 +2.7.4 -From 03ff1bcf82c3acc3df8e8fd1badbbc9f6a27a2e6 Mon Sep 17 00:00:00 2001 +From 7182f2f5b254d6dc6d3105d2f99219a76adf9de0 Mon Sep 17 00:00:00 2001 From: David Howells <dhowells@redhat.com> Date: Wed, 23 Nov 2016 13:22:22 +0000 Subject: [PATCH 11/32] Enforce module signatures if the kernel is locked down @@ -1027,22 +276,22 @@ Signed-off-by: David Howells <dhowells@redhat.com> 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/kernel/module.c b/kernel/module.c -index f57dd63..2a021c3 100644 +index 7eba6de..3331f2e 100644 --- a/kernel/module.c +++ b/kernel/module.c -@@ -2744,7 +2744,7 @@ static int module_sig_check(struct load_info *info, int flags) +@@ -2756,7 +2756,7 @@ static int module_sig_check(struct load_info *info, int flags) } - + /* Not having a signature is only an error if we're strict. */ - if (err == -ENOKEY && !sig_enforce) + if (err == -ENOKEY && !sig_enforce && !kernel_is_locked_down()) err = 0; - + return err; -- -2.9.3 +2.7.4 -From 328104a3a9859084a25240ea031572e0d20ceaf4 Mon Sep 17 00:00:00 2001 +From 7e97c58bcd0b4c082b889fb093a2779147532b9f Mon Sep 17 00:00:00 2001 From: Matthew Garrett <matthew.garrett@nebula.com> Date: Tue, 22 Nov 2016 08:46:16 +0000 Subject: [PATCH 12/32] Restrict /dev/mem and /dev/kmem when the kernel is @@ -1059,23 +308,23 @@ Signed-off-by: David Howells <dhowells@redhat.com> 1 file changed, 6 insertions(+) diff --git a/drivers/char/mem.c b/drivers/char/mem.c -index 5bb1985..6441d21 100644 +index 6d9cc2d..f814404 100644 --- a/drivers/char/mem.c +++ b/drivers/char/mem.c @@ -163,6 +163,9 @@ static ssize_t write_mem(struct file *file, const char __user *buf, if (p != *ppos) return -EFBIG; - + + if (kernel_is_locked_down()) + return -EPERM; + if (!valid_phys_addr_range(p, count)) return -EFAULT; - -@@ -515,6 +518,9 @@ static ssize_t write_kmem(struct file *file, const char __user *buf, + +@@ -513,6 +516,9 @@ static ssize_t write_kmem(struct file *file, const char __user *buf, char *kbuf; /* k-addr because vwrite() takes vmlist_lock rwlock */ int err = 0; - + + if (kernel_is_locked_down()) + return -EPERM; + @@ -1083,9 +332,9 @@ index 5bb1985..6441d21 100644 unsigned long to_write = min_t(unsigned long, count, (unsigned long)high_memory - p); -- -2.9.3 +2.7.4 -From 2cfe484bdc7e42b42be4887f2b4d23ac9de79593 Mon Sep 17 00:00:00 2001 +From b83b68a9a13120664eaabf21a7b3ff0b065bd5b2 Mon Sep 17 00:00:00 2001 From: Kyle McMartin <kyle@redhat.com> Date: Mon, 21 Nov 2016 23:55:56 +0000 Subject: [PATCH 13/32] Add a sysrq option to exit secure boot mode @@ -1105,13 +354,13 @@ Signed-off-by: David Howells <dhowells@redhat.com> 7 files changed, 68 insertions(+), 8 deletions(-) diff --git a/arch/x86/Kconfig b/arch/x86/Kconfig -index 5b19997..c2b481b 100644 +index a315974..6931e68 100644 --- a/arch/x86/Kconfig +++ b/arch/x86/Kconfig -@@ -1798,6 +1798,16 @@ config EFI_SECURE_BOOT_LOCK_DOWN +@@ -1828,6 +1828,16 @@ config EFI_SECURE_BOOT_LOCK_DOWN image. Say Y here to automatically lock down the kernel when a system boots with UEFI Secure Boot enabled. - + +config EFI_ALLOW_SECURE_BOOT_EXIT + def_bool n + depends on EFI_SECURE_BOOT_LOCK_DOWN && MAGIC_SYSRQ @@ -1126,25 +375,25 @@ index 5b19997..c2b481b 100644 def_bool y prompt "Enable seccomp to safely compute untrusted bytecode" diff --git a/arch/x86/kernel/setup.c b/arch/x86/kernel/setup.c -index facaeb9..de24041 100644 +index d44e60e..f7635d0 100644 --- a/arch/x86/kernel/setup.c +++ b/arch/x86/kernel/setup.c @@ -71,6 +71,11 @@ #include <linux/jiffies.h> #include <linux/security.h> - + +#include <linux/fips.h> +#include <linux/cred.h> +#include <linux/sysrq.h> +#include <linux/init_task.h> + #include <video/edid.h> - + #include <asm/mtrr.h> -@@ -1304,6 +1309,32 @@ void __init i386_reserve_resources(void) - +@@ -1328,6 +1333,32 @@ void __init i386_reserve_resources(void) + #endif /* CONFIG_X86_32 */ - + +#ifdef CONFIG_EFI_ALLOW_SECURE_BOOT_EXIT + +static void sysrq_handle_secure_boot(int key) @@ -1175,19 +424,19 @@ index facaeb9..de24041 100644 .notifier_call = dump_kernel_offset }; diff --git a/drivers/input/misc/uinput.c b/drivers/input/misc/uinput.c -index 92595b9..894ed3f 100644 +index 022be0e..4a054a5 100644 --- a/drivers/input/misc/uinput.c +++ b/drivers/input/misc/uinput.c -@@ -379,6 +379,7 @@ static int uinput_allocate_device(struct uinput_device *udev) +@@ -387,6 +387,7 @@ static int uinput_allocate_device(struct uinput_device *udev) if (!udev->dev) return -ENOMEM; - + + udev->dev->flags |= INPUTDEV_FLAGS_SYNTHETIC; udev->dev->event = uinput_dev_event; input_set_drvdata(udev->dev, udev); - + diff --git a/drivers/tty/sysrq.c b/drivers/tty/sysrq.c -index 52bbd27..72f46a1 100644 +index 7113674..e1addc3 100644 --- a/drivers/tty/sysrq.c +++ b/drivers/tty/sysrq.c @@ -479,6 +479,7 @@ static struct sysrq_key_op *sysrq_key_table[36] = { @@ -1201,14 +450,14 @@ index 52bbd27..72f46a1 100644 @@ -522,7 +523,7 @@ static void __sysrq_put_key_op(int key, struct sysrq_key_op *op_p) sysrq_key_table[i] = op_p; } - + -void __handle_sysrq(int key, bool check_mask) +void __handle_sysrq(int key, unsigned int from) { struct sysrq_key_op *op_p; int orig_log_level; @@ -542,11 +543,15 @@ void __handle_sysrq(int key, bool check_mask) - + op_p = __sysrq_get_key_op(key); if (op_p) { + /* Ban synthetic events from some sysrq functionality */ @@ -1232,18 +481,18 @@ index 52bbd27..72f46a1 100644 + __handle_sysrq(key, SYSRQ_FROM_KERNEL); } EXPORT_SYMBOL(handle_sysrq); - + @@ -659,7 +664,7 @@ static void sysrq_do_reset(unsigned long _state) static void sysrq_handle_reset_request(struct sysrq_state *state) { if (state->reset_requested) - __handle_sysrq(sysrq_xlate[KEY_B], false); + __handle_sysrq(sysrq_xlate[KEY_B], SYSRQ_FROM_KERNEL); - + if (sysrq_reset_downtime_ms) mod_timer(&state->keyreset_timer, @@ -810,8 +815,10 @@ static bool sysrq_handle_keypress(struct sysrq_state *sysrq, - + default: if (sysrq->active && value && value != 2) { + int from = sysrq->handle.dev->flags & INPUTDEV_FLAGS_SYNTHETIC ? @@ -1255,13 +504,13 @@ index 52bbd27..72f46a1 100644 break; } @@ -1095,7 +1102,7 @@ static ssize_t write_sysrq_trigger(struct file *file, const char __user *buf, - + if (get_user(c, buf)) return -EFAULT; - __handle_sysrq(c, false); + __handle_sysrq(c, SYSRQ_FROM_PROC); } - + return count; diff --git a/include/linux/input.h b/include/linux/input.h index a65e3b2..8b03571 100644 @@ -1278,16 +527,16 @@ index a65e3b2..8b03571 100644 @@ -124,6 +125,8 @@ struct input_dev { const char *uniq; struct input_id id; - + + unsigned int flags; + unsigned long propbit[BITS_TO_LONGS(INPUT_PROP_CNT)]; - + unsigned long evbit[BITS_TO_LONGS(EV_CNT)]; @@ -190,6 +193,8 @@ struct input_dev { }; #define to_input_dev(d) container_of(d, struct input_dev, dev) - + +#define INPUTDEV_FLAGS_SYNTHETIC 0x000000001 + /* @@ -1300,7 +549,7 @@ index 387fa7d..f7c52a9 100644 @@ -28,6 +28,8 @@ #define SYSRQ_ENABLE_BOOT 0x0080 #define SYSRQ_ENABLE_RTNICE 0x0100 - + +#define SYSRQ_DISABLE_USERSPACE 0x00010000 + struct sysrq_key_op { @@ -1309,7 +558,7 @@ index 387fa7d..f7c52a9 100644 @@ -42,8 +44,12 @@ struct sysrq_key_op { * are available -- else NULL's). */ - + +#define SYSRQ_FROM_KERNEL 0x0001 +#define SYSRQ_FROM_PROC 0x0002 +#define SYSRQ_FROM_SYNTHETIC 0x0004 @@ -1321,22 +570,22 @@ index 387fa7d..f7c52a9 100644 int unregister_sysrq_key(int key, struct sysrq_key_op *op); struct sysrq_key_op *__sysrq_get_key_op(int key); diff --git a/kernel/debug/kdb/kdb_main.c b/kernel/debug/kdb/kdb_main.c -index 2a20c0d..d46d2e1 100644 +index ca18391..c4524b8 100644 --- a/kernel/debug/kdb/kdb_main.c +++ b/kernel/debug/kdb/kdb_main.c -@@ -1968,7 +1968,7 @@ static int kdb_sr(int argc, const char **argv) +@@ -1967,7 +1967,7 @@ static int kdb_sr(int argc, const char **argv) return KDB_ARGCOUNT; - + kdb_trap_printk++; - __handle_sysrq(*argv[1], check_mask); + __handle_sysrq(*argv[1], check_mask ? SYSRQ_FROM_KERNEL : 0); kdb_trap_printk--; - + return 0; -- -2.9.3 +2.7.4 -From a82fdfceffac8e9cdc0287d874a8ba1b9d875e70 Mon Sep 17 00:00:00 2001 +From 8884bd44932e595323fcddfb09c2a2a586134cdf Mon Sep 17 00:00:00 2001 From: Matthew Garrett <matthew.garrett@nebula.com> Date: Tue, 22 Nov 2016 08:46:15 +0000 Subject: [PATCH 14/32] kexec: Disable at runtime if the kernel is locked down @@ -1360,7 +609,7 @@ index 980936a..46de8e6 100644 +++ b/kernel/kexec.c @@ -194,6 +194,13 @@ SYSCALL_DEFINE4(kexec_load, unsigned long, entry, unsigned long, nr_segments, return -EPERM; - + /* + * kexec can be used to circumvent module loading restrictions, so + * prevent loading in that case @@ -1373,9 +622,9 @@ index 980936a..46de8e6 100644 * This leaves us room for future extensions. */ -- -2.9.3 +2.7.4 -From 43d4cec4b9acbe2954afb355cc32dbd456ca77bd Mon Sep 17 00:00:00 2001 +From cace563d1743c3d2faf1e46bd4df8e63e2310207 Mon Sep 17 00:00:00 2001 From: Dave Young <dyoung@redhat.com> Date: Tue, 22 Nov 2016 08:46:15 +0000 Subject: [PATCH 15/32] Copy secure_boot flag in boot params across kexec @@ -1399,21 +648,21 @@ Signed-off-by: David Howells <dhowells@redhat.com> 1 file changed, 1 insertion(+) diff --git a/arch/x86/kernel/kexec-bzimage64.c b/arch/x86/kernel/kexec-bzimage64.c -index 3407b14..b843a4e 100644 +index d0a814a..3551bca 100644 --- a/arch/x86/kernel/kexec-bzimage64.c +++ b/arch/x86/kernel/kexec-bzimage64.c @@ -179,6 +179,7 @@ setup_efi_state(struct boot_params *params, unsigned long params_load_addr, if (efi_enabled(EFI_OLD_MEMMAP)) return 0; - + + params->secure_boot = boot_params.secure_boot; ei->efi_loader_signature = current_ei->efi_loader_signature; ei->efi_systab = current_ei->efi_systab; ei->efi_systab_hi = current_ei->efi_systab_hi; -- -2.9.3 +2.7.4 -From 7f303a867209a3641d3da378d914967314b60254 Mon Sep 17 00:00:00 2001 +From 08a3467acbc28bb469d1eebd0f5fd40b944d984a Mon Sep 17 00:00:00 2001 From: "Lee, Chun-Yi" <joeyli.kernel@gmail.com> Date: Wed, 23 Nov 2016 13:49:19 +0000 Subject: [PATCH 16/32] kexec_file: Disable at runtime if securelevel has been @@ -1433,13 +682,13 @@ Signed-off-by: David Howells <dhowells@redhat.com> 1 file changed, 6 insertions(+) diff --git a/kernel/kexec_file.c b/kernel/kexec_file.c -index 037c321..04f48f2 100644 +index b56a558..003cade 100644 --- a/kernel/kexec_file.c +++ b/kernel/kexec_file.c -@@ -264,6 +264,12 @@ SYSCALL_DEFINE5(kexec_file_load, int, kernel_fd, int, initrd_fd, +@@ -268,6 +268,12 @@ SYSCALL_DEFINE5(kexec_file_load, int, kernel_fd, int, initrd_fd, if (!capable(CAP_SYS_BOOT) || kexec_load_disabled) return -EPERM; - + + /* Don't permit images to be loaded into trusted kernels if we're not + * going to verify the signature on them + */ @@ -1450,9 +699,9 @@ index 037c321..04f48f2 100644 if (flags != (flags & KEXEC_FILE_FLAGS)) return -EINVAL; -- -2.9.3 +2.7.4 -From 7b42e60e328109fc2a04434c3cfedeb53eae6426 Mon Sep 17 00:00:00 2001 +From 925fd10d7a99a6f999dde76daf2b1ef1238b251a Mon Sep 17 00:00:00 2001 From: Josh Boyer <jwboyer@fedoraproject.org> Date: Tue, 22 Nov 2016 08:46:15 +0000 Subject: [PATCH 17/32] hibernate: Disable when the kernel is locked down @@ -1469,22 +718,22 @@ Signed-off-by: David Howells <dhowells@redhat.com> 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/kernel/power/hibernate.c b/kernel/power/hibernate.c -index b26dbc4..3732187 100644 +index 86385af..1629798 100644 --- a/kernel/power/hibernate.c +++ b/kernel/power/hibernate.c @@ -67,7 +67,7 @@ static const struct platform_hibernation_ops *hibernation_ops; - + bool hibernation_available(void) { - return (nohibernate == 0); + return nohibernate == 0 && !kernel_is_locked_down(); } - + /** -- -2.9.3 +2.7.4 -From a2a550718c501375c22f5afdead9d25225abdcd3 Mon Sep 17 00:00:00 2001 +From b14fb5fcd60c84a09a15bd7ec974b6fbce68335c Mon Sep 17 00:00:00 2001 From: Matthew Garrett <mjg59@srcf.ucam.org> Date: Wed, 23 Nov 2016 13:28:17 +0000 Subject: [PATCH 18/32] uswsusp: Disable when the kernel is locked down @@ -1500,23 +749,23 @@ Signed-off-by: David Howells <dhowells@redhat.com> 1 file changed, 3 insertions(+) diff --git a/kernel/power/user.c b/kernel/power/user.c -index 35310b6..c9ef5e1 100644 +index 22df9f7..e4b926d 100644 --- a/kernel/power/user.c +++ b/kernel/power/user.c @@ -52,6 +52,9 @@ static int snapshot_open(struct inode *inode, struct file *filp) if (!hibernation_available()) return -EPERM; - + + if (kernel_is_locked_down()) + return -EPERM; + lock_system_sleep(); - + if (!atomic_add_unless(&snapshot_device_available, -1, 0)) { -- -2.9.3 +2.7.4 -From 81204660ab5d1914cb59fb246f103288ecf9a177 Mon Sep 17 00:00:00 2001 +From d8167273e7562e5aa866d2b65e25bb1962de972c Mon Sep 17 00:00:00 2001 From: Matthew Garrett <matthew.garrett@nebula.com> Date: Tue, 22 Nov 2016 08:46:15 +0000 Subject: [PATCH 19/32] PCI: Lock down BAR access when the kernel is locked @@ -1537,30 +786,30 @@ Signed-off-by: David Howells <dhowells@redhat.com> 3 files changed, 17 insertions(+), 2 deletions(-) diff --git a/drivers/pci/pci-sysfs.c b/drivers/pci/pci-sysfs.c -index bcd10c7..02b9c9e 100644 +index 0666287..b10992c 100644 --- a/drivers/pci/pci-sysfs.c +++ b/drivers/pci/pci-sysfs.c -@@ -716,6 +716,9 @@ static ssize_t pci_write_config(struct file *filp, struct kobject *kobj, +@@ -718,6 +718,9 @@ static ssize_t pci_write_config(struct file *filp, struct kobject *kobj, loff_t init_off = off; u8 *data = (u8 *) buf; - + + if (kernel_is_locked_down()) + return -EPERM; + if (off > dev->cfg_size) return 0; if (off + count > dev->cfg_size) { -@@ -1007,6 +1010,9 @@ static int pci_mmap_resource(struct kobject *kobj, struct bin_attribute *attr, +@@ -1009,6 +1012,9 @@ static int pci_mmap_resource(struct kobject *kobj, struct bin_attribute *attr, resource_size_t start, end; int i; - + + if (kernel_is_locked_down()) + return -EPERM; + for (i = 0; i < PCI_ROM_RESOURCE; i++) if (res == &pdev->resource[i]) break; -@@ -1106,6 +1112,9 @@ static ssize_t pci_write_resource_io(struct file *filp, struct kobject *kobj, +@@ -1108,6 +1114,9 @@ static ssize_t pci_write_resource_io(struct file *filp, struct kobject *kobj, struct bin_attribute *attr, char *buf, loff_t off, size_t count) { @@ -1569,15 +818,15 @@ index bcd10c7..02b9c9e 100644 + return pci_resource_io(filp, kobj, attr, buf, off, count, true); } - + diff --git a/drivers/pci/proc.c b/drivers/pci/proc.c -index 2408abe..eaccf9b 100644 +index f82710a..139d6f0 100644 --- a/drivers/pci/proc.c +++ b/drivers/pci/proc.c @@ -116,6 +116,9 @@ static ssize_t proc_bus_pci_write(struct file *file, const char __user *buf, int size = dev->cfg_size; int cnt; - + + if (kernel_is_locked_down()) + return -EPERM; + @@ -1587,7 +836,7 @@ index 2408abe..eaccf9b 100644 @@ -195,6 +198,9 @@ static long proc_bus_pci_ioctl(struct file *file, unsigned int cmd, #endif /* HAVE_PCI_MMAP */ int ret = 0; - + + if (kernel_is_locked_down()) + return -EPERM; + @@ -1597,29 +846,29 @@ index 2408abe..eaccf9b 100644 @@ -233,7 +239,7 @@ static int proc_bus_pci_mmap(struct file *file, struct vm_area_struct *vma) struct pci_filp_private *fpriv = file->private_data; int i, ret, write_combine; - + - if (!capable(CAP_SYS_RAWIO)) + if (!capable(CAP_SYS_RAWIO) || kernel_is_locked_down()) return -EPERM; - + /* Make sure the caller is mapping a real resource for this device */ diff --git a/drivers/pci/syscall.c b/drivers/pci/syscall.c -index b91c4da..81544dc 100644 +index 9bf993e..c095247 100644 --- a/drivers/pci/syscall.c +++ b/drivers/pci/syscall.c @@ -92,7 +92,7 @@ SYSCALL_DEFINE5(pciconfig_write, unsigned long, bus, unsigned long, dfn, u32 dword; int err = 0; - + - if (!capable(CAP_SYS_ADMIN)) + if (!capable(CAP_SYS_ADMIN) || kernel_is_locked_down()) return -EPERM; - + dev = pci_get_bus_and_slot(bus, dfn); -- -2.9.3 +2.7.4 -From 18f4177e0a147adccbbacb1fa95e340352228db3 Mon Sep 17 00:00:00 2001 +From 169d13e0c5240ac6aad13aace5ecbdb3de2cfada Mon Sep 17 00:00:00 2001 From: Matthew Garrett <matthew.garrett@nebula.com> Date: Tue, 22 Nov 2016 08:46:16 +0000 Subject: [PATCH 20/32] x86: Lock down IO port access when the kernel is locked @@ -1641,19 +890,19 @@ Signed-off-by: David Howells <dhowells@redhat.com> 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/arch/x86/kernel/ioport.c b/arch/x86/kernel/ioport.c -index 589b319..f0789ab 100644 +index b01bc8517..4ccaace 100644 --- a/arch/x86/kernel/ioport.c +++ b/arch/x86/kernel/ioport.c -@@ -28,7 +28,7 @@ asmlinkage long sys_ioperm(unsigned long from, unsigned long num, int turn_on) - +@@ -29,7 +29,7 @@ asmlinkage long sys_ioperm(unsigned long from, unsigned long num, int turn_on) + if ((from + num <= from) || (from + num > IO_BITMAP_BITS)) return -EINVAL; - if (turn_on && !capable(CAP_SYS_RAWIO)) + if (turn_on && (!capable(CAP_SYS_RAWIO) || kernel_is_locked_down())) return -EPERM; - + /* -@@ -108,7 +108,7 @@ SYSCALL_DEFINE1(iopl, unsigned int, level) +@@ -113,7 +113,7 @@ SYSCALL_DEFINE1(iopl, unsigned int, level) return -EINVAL; /* Trying to gain more privileges? */ if (level > old) { @@ -1663,22 +912,22 @@ index 589b319..f0789ab 100644 } regs->flags = (regs->flags & ~X86_EFLAGS_IOPL) | diff --git a/drivers/char/mem.c b/drivers/char/mem.c -index 6441d21..f653c36 100644 +index f814404..9afebb6 100644 --- a/drivers/char/mem.c +++ b/drivers/char/mem.c -@@ -743,6 +743,8 @@ static loff_t memory_lseek(struct file *file, loff_t offset, int orig) - +@@ -741,6 +741,8 @@ static loff_t memory_lseek(struct file *file, loff_t offset, int orig) + static int open_port(struct inode *inode, struct file *filp) { + if (kernel_is_locked_down()) + return -EPERM; return capable(CAP_SYS_RAWIO) ? 0 : -EPERM; } - + -- -2.9.3 +2.7.4 -From bdd2ae6c0c8ce5a4dadaa41019a6e065e9aa9128 Mon Sep 17 00:00:00 2001 +From efd24f7e9af624b62f39efce4f60b31f0ca643d8 Mon Sep 17 00:00:00 2001 From: Matthew Garrett <matthew.garrett@nebula.com> Date: Tue, 22 Nov 2016 08:46:17 +0000 Subject: [PATCH 21/32] x86: Restrict MSR access when the kernel is locked down @@ -1695,20 +944,20 @@ Signed-off-by: David Howells <dhowells@redhat.com> 1 file changed, 7 insertions(+) diff --git a/arch/x86/kernel/msr.c b/arch/x86/kernel/msr.c -index 7f3550a..90cddc1 100644 +index ef68880..fbcce02 100644 --- a/arch/x86/kernel/msr.c +++ b/arch/x86/kernel/msr.c -@@ -83,6 +83,9 @@ static ssize_t msr_write(struct file *file, const char __user *buf, +@@ -84,6 +84,9 @@ static ssize_t msr_write(struct file *file, const char __user *buf, int err = 0; ssize_t bytes = 0; - + + if (kernel_is_locked_down()) + return -EPERM; + if (count % 8) return -EINVAL; /* Invalid chunk size */ - -@@ -130,6 +133,10 @@ static long msr_ioctl(struct file *file, unsigned int ioc, unsigned long arg) + +@@ -131,6 +134,10 @@ static long msr_ioctl(struct file *file, unsigned int ioc, unsigned long arg) err = -EBADF; break; } @@ -1720,9 +969,9 @@ index 7f3550a..90cddc1 100644 err = -EFAULT; break; -- -2.9.3 +2.7.4 -From 50d0b2fd4e13f1da62d7bfabe7559cdaaceee06b Mon Sep 17 00:00:00 2001 +From 62ebdffbcb0726b98562e9f1173a6d5967755764 Mon Sep 17 00:00:00 2001 From: Matthew Garrett <matthew.garrett@nebula.com> Date: Tue, 22 Nov 2016 08:46:16 +0000 Subject: [PATCH 22/32] asus-wmi: Restrict debugfs interface when the kernel is @@ -1741,33 +990,33 @@ Signed-off-by: David Howells <dhowells@redhat.com> 1 file changed, 9 insertions(+) diff --git a/drivers/platform/x86/asus-wmi.c b/drivers/platform/x86/asus-wmi.c -index ce6ca31..d860017 100644 +index 43cb680..9be3e08 100644 --- a/drivers/platform/x86/asus-wmi.c +++ b/drivers/platform/x86/asus-wmi.c -@@ -1872,6 +1872,9 @@ static int show_dsts(struct seq_file *m, void *data) +@@ -1898,6 +1898,9 @@ static int show_dsts(struct seq_file *m, void *data) int err; u32 retval = -1; - + + if (kernel_is_locked_down()) + return -EPERM; + err = asus_wmi_get_devstate(asus, asus->debug.dev_id, &retval); - + if (err < 0) -@@ -1888,6 +1891,9 @@ static int show_devs(struct seq_file *m, void *data) +@@ -1914,6 +1917,9 @@ static int show_devs(struct seq_file *m, void *data) int err; u32 retval = -1; - + + if (kernel_is_locked_down()) + return -EPERM; + err = asus_wmi_set_devstate(asus->debug.dev_id, asus->debug.ctrl_param, &retval); - -@@ -1912,6 +1918,9 @@ static int show_call(struct seq_file *m, void *data) + +@@ -1938,6 +1944,9 @@ static int show_call(struct seq_file *m, void *data) union acpi_object *obj; acpi_status status; - + + if (kernel_is_locked_down()) + return -EPERM; + @@ -1775,9 +1024,9 @@ index ce6ca31..d860017 100644 1, asus->debug.method_id, &input, &output); -- -2.9.3 +2.7.4 -From 88156357adede0ba4060adb0934d08e75afb6e9d Mon Sep 17 00:00:00 2001 +From 31f493d03dde1854fa9e540f87a751fbeeb41cb9 Mon Sep 17 00:00:00 2001 From: Matthew Garrett <matthew.garrett@nebula.com> Date: Tue, 22 Nov 2016 08:46:16 +0000 Subject: [PATCH 23/32] ACPI: Limit access to custom_method when the kernel is @@ -1800,7 +1049,7 @@ index c68e724..e4d721c 100644 @@ -29,6 +29,9 @@ static ssize_t cm_write(struct file *file, const char __user * user_buf, struct acpi_table_header table; acpi_status status; - + + if (kernel_is_locked_down()) + return -EPERM; + @@ -1808,9 +1057,9 @@ index c68e724..e4d721c 100644 /* parse the table header to get the table length */ if (count <= sizeof(struct acpi_table_header)) -- -2.9.3 +2.7.4 -From 960205f64271826552eec6d7ba34144b1615c376 Mon Sep 17 00:00:00 2001 +From 1dec5dc62c78f78b9efe44aac3d6119d97b67017 Mon Sep 17 00:00:00 2001 From: Josh Boyer <jwboyer@redhat.com> Date: Tue, 22 Nov 2016 08:46:16 +0000 Subject: [PATCH 24/32] acpi: Ignore acpi_rsdp kernel param when the kernel has @@ -1827,10 +1076,10 @@ Signed-off-by: David Howells <dhowells@redhat.com> 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/acpi/osl.c b/drivers/acpi/osl.c -index 416953a..79f3d03 100644 +index db78d35..d4d4ba3 100644 --- a/drivers/acpi/osl.c +++ b/drivers/acpi/osl.c -@@ -191,7 +191,7 @@ early_param("acpi_rsdp", setup_acpi_rsdp); +@@ -192,7 +192,7 @@ acpi_physical_address __init acpi_os_get_root_pointer(void) acpi_physical_address pa = 0; #ifdef CONFIG_KEXEC @@ -1838,11 +1087,11 @@ index 416953a..79f3d03 100644 + if (acpi_rsdp && !kernel_is_locked_down()) return acpi_rsdp; #endif - + -- -2.9.3 +2.7.4 -From 2f200d295a041b154f3938940c2d8aa1742f1379 Mon Sep 17 00:00:00 2001 +From 96eaf04100d7365d93f898013175351c7d2702a6 Mon Sep 17 00:00:00 2001 From: Linn Crosetto <linn@hpe.com> Date: Wed, 23 Nov 2016 13:32:27 +0000 Subject: [PATCH 25/32] acpi: Disable ACPI table override if the kernel is @@ -1865,13 +1114,13 @@ Signed-off-by: David Howells <dhowells@redhat.com> 1 file changed, 5 insertions(+) diff --git a/drivers/acpi/tables.c b/drivers/acpi/tables.c -index cdd56c4..c657c08 100644 +index 2604189..601096d 100644 --- a/drivers/acpi/tables.c +++ b/drivers/acpi/tables.c -@@ -545,6 +545,11 @@ void __init acpi_table_upgrade(void) +@@ -542,6 +542,11 @@ void __init acpi_table_upgrade(void) if (table_nr == 0) return; - + + if (kernel_is_locked_down()) { + pr_notice("kernel is locked down, ignoring table override\n"); + return; @@ -1881,9 +1130,9 @@ index cdd56c4..c657c08 100644 memblock_find_in_range(0, ACPI_TABLE_UPGRADE_MAX_PHYS, all_tables_size, PAGE_SIZE); -- -2.9.3 +2.7.4 -From 6244dff831988f59797add76cee80c73961d5ac5 Mon Sep 17 00:00:00 2001 +From 521979b819b853f7578ba8edef8b33bc2077026d Mon Sep 17 00:00:00 2001 From: Linn Crosetto <linn@hpe.com> Date: Wed, 23 Nov 2016 13:39:41 +0000 Subject: [PATCH 26/32] acpi: Disable APEI error injection if the kernel is @@ -1911,13 +1160,13 @@ Signed-off-by: David Howells <dhowells@redhat.com> 1 file changed, 3 insertions(+) diff --git a/drivers/acpi/apei/einj.c b/drivers/acpi/apei/einj.c -index eebb7e3..e4f126a 100644 +index ec50c32..e082718 100644 --- a/drivers/acpi/apei/einj.c +++ b/drivers/acpi/apei/einj.c @@ -518,6 +518,9 @@ static int einj_error_inject(u32 type, u32 flags, u64 param1, u64 param2, int rc; u64 base_addr, size; - + + if (kernel_is_locked_down()) + return -EPERM; + @@ -1925,9 +1174,9 @@ index eebb7e3..e4f126a 100644 if (flags && (flags & ~(SETWA_FLAGS_APICID|SETWA_FLAGS_MEM|SETWA_FLAGS_PCIE_SBDF))) -- -2.9.3 +2.7.4 -From a17a541d1af379c3d6ff21924c212f9e2e38c1c8 Mon Sep 17 00:00:00 2001 +From fe597dad1cba83345d62c4079c0d8861c426698c Mon Sep 17 00:00:00 2001 From: Matthew Garrett <mjg59@coreos.com> Date: Wed, 23 Nov 2016 13:41:23 +0000 Subject: [PATCH 27/32] Enable cold boot attack mitigation @@ -1937,13 +1186,13 @@ Subject: [PATCH 27/32] Enable cold boot attack mitigation 1 file changed, 28 insertions(+) diff --git a/arch/x86/boot/compressed/eboot.c b/arch/x86/boot/compressed/eboot.c -index 5b151c2..5093a76 100644 +index 801c7a1..ef9409b 100644 --- a/arch/x86/boot/compressed/eboot.c +++ b/arch/x86/boot/compressed/eboot.c -@@ -774,6 +774,31 @@ void setup_graphics(struct boot_params *boot_params) +@@ -604,6 +604,31 @@ void setup_graphics(struct boot_params *boot_params) } } - + +#define MEMORY_ONLY_RESET_CONTROL_GUID \ + EFI_GUID (0xe20939be, 0x32d4, 0x41be, 0xa1, 0x50, 0x89, 0x7f, 0x85, 0xd4, 0x98, 0x29) + @@ -1972,20 +1221,20 @@ index 5b151c2..5093a76 100644 /* * Because the x86 boot code expects to be passed a boot_params we * need to create one ourselves (usually the bootloader would create -@@ -1158,6 +1183,9 @@ struct boot_params *efi_main(struct efi_config *c, +@@ -988,6 +1013,9 @@ struct boot_params *efi_main(struct efi_config *c, else setup_boot_services32(efi_early); - + + /* Ask the firmware to clear memory if we don't have a clean shutdown */ + enable_reset_attack_mitigation(); + - boot_params->secure_boot = efi_get_secureboot(sys_table); - - setup_graphics(boot_params); + /* + * If the boot loader gave us a value for secure_boot then we use that, + * otherwise we ask the BIOS. -- -2.9.3 +2.7.4 -From c9c34942d873f7a09b9c7211bda3063354ff5706 Mon Sep 17 00:00:00 2001 +From 04fac895731801bc6cb26a6061f1c353c80a866c Mon Sep 17 00:00:00 2001 From: "Lee, Chun-Yi" <jlee@suse.com> Date: Wed, 23 Nov 2016 13:52:16 +0000 Subject: [PATCH 28/32] bpf: Restrict kernel image access functions when the @@ -2004,13 +1253,13 @@ Signed-off-by: David Howells <dhowells@redhat.com> 1 file changed, 11 insertions(+) diff --git a/kernel/trace/bpf_trace.c b/kernel/trace/bpf_trace.c -index 5dcb992..474e001 100644 +index cee9802..7fde851 100644 --- a/kernel/trace/bpf_trace.c +++ b/kernel/trace/bpf_trace.c @@ -65,6 +65,11 @@ BPF_CALL_3(bpf_probe_read, void *, dst, u32, size, const void *, unsafe_ptr) { int ret; - + + if (kernel_is_locked_down()) { + memset(dst, 0, size); + return -EPERM; @@ -2032,7 +1281,7 @@ index 5dcb992..474e001 100644 @@ -143,6 +151,9 @@ BPF_CALL_5(bpf_trace_printk, char *, fmt, u32, fmt_size, u64, arg1, if (fmt[--fmt_size] != 0) return -EINVAL; - + + if (kernel_is_locked_down()) + return __trace_printk(1, fmt, 0, 0, 0); + @@ -2040,9 +1289,9 @@ index 5dcb992..474e001 100644 for (i = 0; i < fmt_size; i++) { if ((!isprint(fmt[i]) && !isspace(fmt[i])) || !isascii(fmt[i])) -- -2.9.3 +2.7.4 -From 04485aa7865dc340f38e32ad29793c625167acf3 Mon Sep 17 00:00:00 2001 +From 707d0e14c2c0d6c3139ff4bcb16ee22c462b4304 Mon Sep 17 00:00:00 2001 From: David Howells <dhowells@redhat.com> Date: Tue, 22 Nov 2016 10:10:34 +0000 Subject: [PATCH 29/32] scsi: Lock down the eata driver @@ -2068,13 +1317,13 @@ cc: linux-scsi@vger.kernel.org 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/drivers/scsi/eata.c b/drivers/scsi/eata.c -index 227dd2c..5c036d1 100644 +index 227dd2c..5c036d10 100644 --- a/drivers/scsi/eata.c +++ b/drivers/scsi/eata.c @@ -1552,8 +1552,13 @@ static int eata2x_detect(struct scsi_host_template *tpnt) - + tpnt->proc_name = "eata2x"; - + - if (strlen(boot_options)) + if (strlen(boot_options)) { + if (kernel_is_locked_down()) { @@ -2083,13 +1332,13 @@ index 227dd2c..5c036d1 100644 + } option_setup(boot_options); + } - + #if defined(MODULE) /* io_port could have been modified when loading as a module */ -- -2.9.3 +2.7.4 -From b1e8f012b7b17e0146f8e63de51f6f45819c859e Mon Sep 17 00:00:00 2001 +From 07e05e0b7d806a05eba55092630bb75a92311344 Mon Sep 17 00:00:00 2001 From: David Howells <dhowells@redhat.com> Date: Fri, 25 Nov 2016 14:37:45 +0000 Subject: [PATCH 30/32] Prohibit PCMCIA CIS storage when the kernel is locked @@ -2110,19 +1359,19 @@ index 55ef7d1..193e4f7 100644 @@ -1578,6 +1578,11 @@ static ssize_t pccard_store_cis(struct file *filp, struct kobject *kobj, struct pcmcia_socket *s; int error; - + + if (kernel_is_locked_down()) { + pr_err("Direct CIS storage isn't permitted when the kernel is locked down\n"); + return -EPERM; + } + s = to_socket(container_of(kobj, struct device, kobj)); - + if (off) -- -2.9.3 +2.7.4 -From 66d9c09b9427719e3c6a34132e9ca0724cb1e3a8 Mon Sep 17 00:00:00 2001 +From cf1e877adbe35c5f72a9d85570b494aa3f35be6a Mon Sep 17 00:00:00 2001 From: David Howells <dhowells@redhat.com> Date: Wed, 7 Dec 2016 10:28:39 +0000 Subject: [PATCH 31/32] Lock down TIOCSSERIAL @@ -2139,13 +1388,13 @@ Signed-off-by: David Howells <dhowells@redhat.com> 1 file changed, 6 insertions(+) diff --git a/drivers/tty/serial/serial_core.c b/drivers/tty/serial/serial_core.c -index f2303f3..f2c07fa 100644 +index 9939c3d..7c040e2 100644 --- a/drivers/tty/serial/serial_core.c +++ b/drivers/tty/serial/serial_core.c -@@ -819,6 +819,12 @@ static int uart_set_info(struct tty_struct *tty, struct tty_port *port, +@@ -820,6 +820,12 @@ static int uart_set_info(struct tty_struct *tty, struct tty_port *port, new_flags = new_info->flags; old_custom_divisor = uport->custom_divisor; - + + if ((change_port || change_irq) && kernel_is_locked_down()) { + pr_err("Using TIOCSSERIAL to change device addresses, irqs and dma channels is not permitted when the kernel is locked down\n"); + retval = -EPERM; @@ -2156,4 +1405,5 @@ index f2303f3..f2c07fa 100644 retval = -EPERM; if (change_irq || change_port || -- -2.9.3 +2.7.4 + diff --git a/ideapad-laptop-Add-Lenovo-ideapad-Y700-17ISK-to-no_h.patch b/ideapad-laptop-Add-Lenovo-ideapad-Y700-17ISK-to-no_h.patch deleted file mode 100644 index 16788f756..000000000 --- a/ideapad-laptop-Add-Lenovo-ideapad-Y700-17ISK-to-no_h.patch +++ /dev/null @@ -1,40 +0,0 @@ -From 14b627c610f93c2700f9a3825ac10c35d51acfe4 Mon Sep 17 00:00:00 2001 -From: Josh Boyer <jwboyer@fedoraproject.org> -Date: Mon, 7 Dec 2015 13:50:38 -0500 -Subject: [PATCH] ideapad-laptop: Add Lenovo ideapad Y700-17ISK to no_hw_rfkill - dmi list - -One of the newest ideapad models also lacks a physical hw rfkill switch, -and trying to read the hw rfkill switch through the ideapad module -causes it to always reported blocking breaking wifi. - -Fix it by adding this model to the DMI list. - -BugLink: https://bugzilla.redhat.com/show_bug.cgi?id=1286293 -Cc: stable@vger.kernel.org -Signed-off-by: Josh Boyer <jwboyer@fedoraproject.org> ---- - drivers/platform/x86/ideapad-laptop.c | 7 +++++++ - 1 file changed, 7 insertions(+) - -diff --git a/drivers/platform/x86/ideapad-laptop.c b/drivers/platform/x86/ideapad-laptop.c -index a313dfc0245f..d28db0e793df 100644 ---- a/drivers/platform/x86/ideapad-laptop.c -+++ b/drivers/platform/x86/ideapad-laptop.c -@@ -865,6 +865,13 @@ static const struct dmi_system_id no_hw_rfkill_list[] = { - }, - }, - { -+ .ident = "Lenovo ideapad Y700-17ISK", -+ .matches = { -+ DMI_MATCH(DMI_SYS_VENDOR, "LENOVO"), -+ DMI_MATCH(DMI_PRODUCT_VERSION, "Lenovo ideapad Y700-17ISK"), -+ }, -+ }, -+ { - .ident = "Lenovo Yoga 2 11 / 13 / Pro", - .matches = { - DMI_MATCH(DMI_SYS_VENDOR, "LENOVO"), --- -2.5.0 - diff --git a/ipv4-fib-don-t-warn-when-primary-address-is-missing-.patch b/ipv4-fib-don-t-warn-when-primary-address-is-missing-.patch deleted file mode 100644 index 9e4cf4e0e..000000000 --- a/ipv4-fib-don-t-warn-when-primary-address-is-missing-.patch +++ /dev/null @@ -1,40 +0,0 @@ -From 9f79323a0aebccb9915ab8f4b7dcf531578b9cf9 Mon Sep 17 00:00:00 2001 -From: Paolo Abeni <pabeni@redhat.com> -Date: Thu, 21 Apr 2016 20:23:31 -0400 -Subject: [PATCH] ipv4/fib: don't warn when primary address is missing if - in_dev is dead - -After commit fbd40ea0180a ("ipv4: Don't do expensive useless work -during inetdev destroy.") when deleting an interface, -fib_del_ifaddr() can be executed without any primary address -present on the dead interface. - -The above is safe, but triggers some "bug: prim == NULL" warnings. - -This commit avoids warning if the in_dev is dead - -Signed-off-by: Paolo Abeni <pabeni@redhat.com> ---- - net/ipv4/fib_frontend.c | 6 +++++- - 1 file changed, 5 insertions(+), 1 deletion(-) - -diff --git a/net/ipv4/fib_frontend.c b/net/ipv4/fib_frontend.c -index 8a9246deccfe..63566ec54794 100644 ---- a/net/ipv4/fib_frontend.c -+++ b/net/ipv4/fib_frontend.c -@@ -904,7 +904,11 @@ void fib_del_ifaddr(struct in_ifaddr *ifa, struct in_ifaddr *iprim) - if (ifa->ifa_flags & IFA_F_SECONDARY) { - prim = inet_ifa_byprefix(in_dev, any, ifa->ifa_mask); - if (!prim) { -- pr_warn("%s: bug: prim == NULL\n", __func__); -+ /* if the device has been deleted, we don't perform -+ * address promotion -+ */ -+ if (!in_dev->dead) -+ pr_warn("%s: bug: prim == NULL\n", __func__); - return; - } - if (iprim && iprim != prim) { --- -2.5.5 - diff --git a/kernel-aarch64-debug.config b/kernel-aarch64-debug.config index d2c5ccd8e..b0c8f40a6 100644 --- a/kernel-aarch64-debug.config +++ b/kernel-aarch64-debug.config @@ -145,7 +145,6 @@ CONFIG_ADAPTEC_STARFIRE=m # CONFIG_AF_KCM is not set # CONFIG_AF_RXRPC is not set # CONFIG_AFS_FS is not set -# CONFIG_AGP is not set # CONFIG_AHCI_CEVA is not set CONFIG_AHCI_MVEBU=m # CONFIG_AHCI_QORIQ is not set @@ -216,7 +215,7 @@ CONFIG_ARCH_HISI=y # CONFIG_ARCH_LAYERSCAPE is not set # CONFIG_ARCH_LG1K is not set # CONFIG_ARCH_MEDIATEK is not set -# CONFIG_ARCH_MESON is not set +CONFIG_ARCH_MESON=y CONFIG_ARCH_MVEBU=y CONFIG_ARCH_QCOM=y # CONFIG_ARCH_RENESAS is not set @@ -229,6 +228,7 @@ CONFIG_ARCH_TEGRA_132_SOC=y # CONFIG_ARCH_TEGRA_186_SOC is not set CONFIG_ARCH_TEGRA_210_SOC=y CONFIG_ARCH_TEGRA=y +CONFIG_ARCH_THUNDER2=y CONFIG_ARCH_THUNDER=y # CONFIG_ARCH_UNIPHIER is not set CONFIG_ARCH_VEXPRESS=y @@ -237,7 +237,7 @@ CONFIG_ARCH_XGENE=y # CONFIG_ARCH_ZX is not set # CONFIG_ARCH_ZYNQMP is not set # CONFIG_ARCNET is not set -CONFIG_ARM64_64K_PAGES=y +CONFIG_ARM64_4K_PAGES=y CONFIG_ARM64_ACPI_PARKING_PROTOCOL=y CONFIG_ARM64_CRYPTO=y CONFIG_ARM64_ERRATUM_819472=y @@ -259,6 +259,7 @@ CONFIG_ARM64_VA_BITS=48 CONFIG_ARM64_VA_BITS_48=y CONFIG_ARM64_VHE=y CONFIG_ARM64=y +CONFIG_ARMADA_AP806_SYSCON=y CONFIG_ARMADA_THERMAL=m CONFIG_ARM_AMBA=y CONFIG_ARM_ARCH_TIMER_EVTSTREAM=y @@ -453,7 +454,6 @@ CONFIG_BATMAN_ADV_NC=y # CONFIG_BATTERY_DS2781 is not set # CONFIG_BATTERY_DS2782 is not set # CONFIG_BATTERY_GAUGE_LTC2941 is not set -# CONFIG_BATTERY_GOLDFISH is not set # CONFIG_BATTERY_MAX17040 is not set # CONFIG_BATTERY_MAX17042 is not set # CONFIG_BATTERY_SBS is not set @@ -501,6 +501,7 @@ CONFIG_BINFMT_SCRIPT=y CONFIG_BLK_CGROUP=y # CONFIG_BLK_CMDLINE_PARSER is not set CONFIG_BLK_CPQ_CISS_DA=m +CONFIG_BLK_DEBUG_FS=y # CONFIG_BLK_DEV_3W_XXXX_RAID is not set CONFIG_BLK_DEV_BSGLIB=y CONFIG_BLK_DEV_BSG=y @@ -539,6 +540,7 @@ CONFIG_BLK_DEV_THROTTLING=y CONFIG_BLK_DEV_UMEM=m CONFIG_BLK_DEV=y CONFIG_BLK_DEV_ZONED=y +CONFIG_BLK_SED_OPAL=y CONFIG_BLK_WBT_MQ=y # CONFIG_BLK_WBT_SQ is not set CONFIG_BLK_WBT=y @@ -636,6 +638,7 @@ CONFIG_BT_HCIUART_INTEL=y CONFIG_BT_HCIUART_LL=y CONFIG_BT_HCIUART=m CONFIG_BT_HCIUART_MRVL=y +CONFIG_BT_HCIUART_NOKIA=m CONFIG_BT_HCIUART_QCA=y CONFIG_BT_HCIVHCI=m CONFIG_BT_HIDP=m @@ -722,6 +725,7 @@ CONFIG_CARL9170_DEBUGFS=y CONFIG_CARL9170_LEDS=y CONFIG_CARL9170=m CONFIG_CASSINI=m +CONFIG_CAVIUM_CPT=m CONFIG_CAVIUM_ERRATUM_22375=y CONFIG_CAVIUM_ERRATUM_23144=y CONFIG_CAVIUM_ERRATUM_23154=y @@ -743,6 +747,7 @@ CONFIG_CEPH_LIB_PRETTYDEBUG=y # CONFIG_CEPH_LIB_USE_DNS_RESOLVER is not set CONFIG_CFAG12864B=m CONFIG_CFAG12864B_RATE=20 +CONFIG_CFG80211_CRDA_SUPPORT=y CONFIG_CFG80211_DEBUGFS=y CONFIG_CFG80211_DEFAULT_PS=y # CONFIG_CFG80211_DEVELOPER_WARNINGS is not set @@ -760,13 +765,16 @@ CONFIG_CGROUP_NET_CLASSID=y CONFIG_CGROUP_NET_PRIO=y CONFIG_CGROUP_PERF=y CONFIG_CGROUP_PIDS=y +# CONFIG_CGROUP_RDMA is not set CONFIG_CGROUP_SCHED=y CONFIG_CGROUPS=y +CONFIG_CHARGER_AXP20X=m # CONFIG_CHARGER_BQ2415X is not set # CONFIG_CHARGER_BQ24190 is not set # CONFIG_CHARGER_BQ24257 is not set # CONFIG_CHARGER_BQ24735 is not set # CONFIG_CHARGER_BQ25890 is not set +# CONFIG_CHARGER_DETECTOR_MAX14656 is not set # CONFIG_CHARGER_GPIO is not set # CONFIG_CHARGER_ISP1704 is not set # CONFIG_CHARGER_LP8727 is not set @@ -775,6 +783,7 @@ CONFIG_CGROUPS=y # CONFIG_CHARGER_PCF50633 is not set # CONFIG_CHARGER_QCOM_SMBB is not set # CONFIG_CHARGER_RT9455 is not set +# CONFIG_CHARGER_SBS is not set CONFIG_CHARGER_SMB347=m CONFIG_CHECKPOINT_RESTORE=y CONFIG_CHELSIO_T1_1G=y @@ -818,6 +827,7 @@ CONFIG_CLS_U32_PERF=y CONFIG_CM32181=m # CONFIG_CM3232 is not set # CONFIG_CM3323 is not set +CONFIG_CM3605=m # CONFIG_CM36651 is not set CONFIG_CMA_ALIGNMENT=8 CONFIG_CMA_AREAS=7 @@ -839,20 +849,11 @@ CONFIG_CNIC=m # CONFIG_COMMON_CLK_CDCE925 is not set # CONFIG_COMMON_CLK_CS2000_CP is not set # CONFIG_COMMON_CLK_HI3516CV300 is not set -# CONFIG_COMMON_CLK_HI3519 is not set +CONFIG_COMMON_CLK_HI3519=m +CONFIG_COMMON_CLK_HI3660=y # CONFIG_COMMON_CLK_HI3798CV200 is not set CONFIG_COMMON_CLK_HI6220=y CONFIG_COMMON_CLK_MAX77686=m -# CONFIG_COMMON_CLK_MT2701_BDPSYS is not set -# CONFIG_COMMON_CLK_MT2701_ETHSYS is not set -# CONFIG_COMMON_CLK_MT2701_HIFSYS is not set -# CONFIG_COMMON_CLK_MT2701_IMGSYS is not set -# CONFIG_COMMON_CLK_MT2701 is not set -# CONFIG_COMMON_CLK_MT2701_MMSYS is not set -# CONFIG_COMMON_CLK_MT2701_VDECSYS is not set -# CONFIG_COMMON_CLK_MT8135 is not set -# CONFIG_COMMON_CLK_MT8173 is not set -# CONFIG_COMMON_CLK_OXNAS is not set CONFIG_COMMON_CLK_PWM=m CONFIG_COMMON_CLK_QCOM=m CONFIG_COMMON_CLK_RK808=m @@ -860,13 +861,16 @@ CONFIG_COMMON_CLK_SCPI=m # CONFIG_COMMON_CLK_SI514 is not set # CONFIG_COMMON_CLK_SI5351 is not set # CONFIG_COMMON_CLK_SI570 is not set +# CONFIG_COMMON_CLK_VC5 is not set CONFIG_COMMON_CLK_VERSATILE=y CONFIG_COMMON_CLK_XGENE=y # CONFIG_COMMON_CLK_XLNX_CLKWZRD is not set CONFIG_COMMON_CLK=y +# CONFIG_COMMON_RESET_HI3660 is not set CONFIG_COMMON_RESET_HI6220=m CONFIG_COMPACTION=y # CONFIG_COMPAT_BRK is not set +# CONFIG_COMPAT is not set # CONFIG_COMPILE_TEST is not set CONFIG_CONFIGFS_FS=y CONFIG_CONNECTOR=y @@ -912,12 +916,15 @@ CONFIG_CRC_T10DIF=y CONFIG_CROSS_COMPILE="" CONFIG_CROSS_MEMORY_ATTACH=y CONFIG_CRYPTO_842=m +CONFIG_CRYPTO_AES_ARM64_BS=m CONFIG_CRYPTO_AES_ARM64_CE_BLK=y CONFIG_CRYPTO_AES_ARM64_CE_CCM=y CONFIG_CRYPTO_AES_ARM64_CE=y +CONFIG_CRYPTO_AES_ARM64=m CONFIG_CRYPTO_AES_ARM64_NEON_BLK=y CONFIG_CRYPTO_AES_ARM_BS=y CONFIG_CRYPTO_AES_ARM=y +CONFIG_CRYPTO_AES_TI=m CONFIG_CRYPTO_AES=y CONFIG_CRYPTO_ANSI_CPRNG=m CONFIG_CRYPTO_ANUBIS=m @@ -931,12 +938,12 @@ CONFIG_CRYPTO_CAST6=m CONFIG_CRYPTO_CBC=y CONFIG_CRYPTO_CCM=m CONFIG_CRYPTO_CHACHA20=m +CONFIG_CRYPTO_CHACHA20_NEON=m CONFIG_CRYPTO_CHACHA20POLY1305=m CONFIG_CRYPTO_CMAC=m CONFIG_CRYPTO_CRC32_ARM64_CE=m CONFIG_CRYPTO_CRC32_ARM64=m CONFIG_CRYPTO_CRC32_ARM_CE=m -CONFIG_CRYPTO_CRC32C_INTEL=m CONFIG_CRYPTO_CRC32C_VPMSUM=m CONFIG_CRYPTO_CRC32C=y CONFIG_CRYPTO_CRC32=m @@ -1050,6 +1057,7 @@ CONFIG_DEBUG_BOOT_PARAMS=y CONFIG_DEBUG_CREDENTIALS=y CONFIG_DEBUG_DEVRES=y # CONFIG_DEBUG_DRIVER is not set +# CONFIG_DEBUG_EFI is not set CONFIG_DEBUG_FORCE_WEAK_PER_CPU=y CONFIG_DEBUG_FS=y # CONFIG_DEBUG_GPIO is not set @@ -1088,6 +1096,7 @@ CONFIG_DEBUG_PER_CPU_MAPS=y CONFIG_DEBUG_PERF_USE_VMALLOC=y CONFIG_DEBUG_PI_LIST=y # CONFIG_DEBUG_PINCTRL is not set +CONFIG_DEBUG_REFCOUNT=y CONFIG_DEBUG_RODATA_TEST=y CONFIG_DEBUG_RT_MUTEXES=y CONFIG_DEBUG_SECTION_MISMATCH=y @@ -1125,6 +1134,7 @@ CONFIG_DEVFREQ_GOV_SIMPLE_ONDEMAND=m CONFIG_DEVFREQ_THERMAL=y # CONFIG_DEVKMEM is not set CONFIG_DEVMEM=y +# CONFIG_DEVPORT is not set CONFIG_DEVTMPFS_MOUNT=y CONFIG_DEVTMPFS=y # CONFIG_DGAP is not set @@ -1146,6 +1156,7 @@ CONFIG_DMA_OF=y # CONFIG_DMARD06 is not set # CONFIG_DMARD09 is not set CONFIG_DMARD10=m +# CONFIG_DMA_SUN6I is not set # CONFIG_DMATEST is not set CONFIG_DMA_VIRTUAL_CHANNELS=y CONFIG_DM_CACHE_CLEANER=m @@ -1201,6 +1212,7 @@ CONFIG_DRM_ANALOGIX_DP=m CONFIG_DRM_AST=m CONFIG_DRM_BOCHS=m CONFIG_DRM_CIRRUS_QEMU=m +# CONFIG_DRM_DEBUG_MM_SELFTEST is not set CONFIG_DRM_DP_AUX_CHARDEV=y CONFIG_DRM_DUMB_VGA_DAC=m CONFIG_DRM_DW_HDMI_I2S_AUDIO=m @@ -1211,18 +1223,10 @@ CONFIG_DRM_HISI_HIBMC=m CONFIG_DRM_HISI_KIRIN=m CONFIG_DRM_I2C_ADV7511_AUDIO=y CONFIG_DRM_I2C_ADV7511=m -# CONFIG_DRM_I2C_ADV7533 is not set +CONFIG_DRM_I2C_ADV7533=y CONFIG_DRM_I2C_CH7006=m CONFIG_DRM_I2C_NXP_TDA998X=m CONFIG_DRM_I2C_SIL164=m -# CONFIG_DRM_I810 is not set -# CONFIG_DRM_I915_ALPHA_SUPPORT is not set -CONFIG_DRM_I915_CAPTURE_ERROR=y -CONFIG_DRM_I915_COMPRESS_ERROR=y -CONFIG_DRM_I915_GVT_KVMGT=m -CONFIG_DRM_I915_GVT=y -CONFIG_DRM_I915=m -CONFIG_DRM_I915_USERPTR=y # CONFIG_DRM_LEGACY is not set CONFIG_DRM_LOAD_EDID_FIRMWARE=y CONFIG_DRM=m @@ -1237,7 +1241,7 @@ CONFIG_DRM_MSM=m CONFIG_DRM_MXSFB=m CONFIG_DRM_NOUVEAU_BACKLIGHT=y CONFIG_DRM_NOUVEAU=m -# CONFIG_DRM_NXP_PTN3460 is not set +CONFIG_DRM_NXP_PTN3460=m # CONFIG_DRM_PANEL_JDI_LT070ME05000 is not set CONFIG_DRM_PANEL_LG_LG4573=m CONFIG_DRM_PANEL_PANASONIC_VVX10F034N00=m @@ -1247,7 +1251,7 @@ CONFIG_DRM_PANEL_SHARP_LQ101R1SX01=m CONFIG_DRM_PANEL_SHARP_LS043T1LE01=m CONFIG_DRM_PANEL_SIMPLE=m CONFIG_DRM_PANEL=y -# CONFIG_DRM_PARADE_PS8622 is not set +CONFIG_DRM_PARADE_PS8622=m CONFIG_DRM_QXL=m # CONFIG_DRM_R128 is not set CONFIG_DRM_RADEON=m @@ -1261,6 +1265,7 @@ CONFIG_DRM_SIL_SII8620=m # CONFIG_DRM_TEGRA_DEBUG is not set CONFIG_DRM_TEGRA=m CONFIG_DRM_TEGRA_STAGING=y +CONFIG_DRM_TINYDRM=m CONFIG_DRM_TI_TFP410=m # CONFIG_DRM_TOSHIBA_TC358767 is not set CONFIG_DRM_UDL=m @@ -1268,8 +1273,6 @@ CONFIG_DRM_VC4=m CONFIG_DRM_VGEM=m CONFIG_DRM_VIA=m CONFIG_DRM_VIRTIO_GPU=m -CONFIG_DRM_VMWGFX_FBCON=y -# CONFIG_DRM_VMWGFX is not set # CONFIG_DS1682 is not set # CONFIG_DS1803 is not set # CONFIG_DT3155 is not set @@ -1357,13 +1360,18 @@ CONFIG_DVB_USB_UMT_010=m CONFIG_DVB_USB_V2=m CONFIG_DVB_USB_VP702X=m CONFIG_DVB_USB_VP7045=m +CONFIG_DVB_USB_ZD1301=m # CONFIG_DW_DMAC_BIG_ENDIAN_IO is not set CONFIG_DW_DMAC_CORE=m CONFIG_DW_DMAC=m CONFIG_DW_DMAC_PCI=m -# CONFIG_DWMAC_IPQ806X is not set +# CONFIG_DWMAC_DWC_QOS_ETH is not set +CONFIG_DWMAC_GENERIC=m +CONFIG_DWMAC_IPQ806X=m CONFIG_DWMAC_MESON=m CONFIG_DWMAC_ROCKCHIP=m +CONFIG_DWMAC_SUN8I=m +CONFIG_DWMAC_SUNXI=m CONFIG_DW_WATCHDOG=m CONFIG_DYNAMIC_DEBUG=y CONFIG_DYNAMIC_FTRACE=y @@ -1386,6 +1394,7 @@ CONFIG_EEPROM_93CX6=m # CONFIG_EEPROM_93XX46 is not set CONFIG_EEPROM_AT24=m CONFIG_EEPROM_AT25=m +CONFIG_EEPROM_IDT_89HPESX=m CONFIG_EEPROM_LEGACY=m CONFIG_EEPROM_MAX6875=m # CONFIG_EFI_ALLOW_SECURE_BOOT_EXIT is not set @@ -1436,6 +1445,7 @@ CONFIG_EXT4_USE_FOR_EXT2=y CONFIG_EXTCON_ADC_JACK=m CONFIG_EXTCON_AXP288=m CONFIG_EXTCON_GPIO=m +CONFIG_EXTCON_INTEL_INT3496=m CONFIG_EXTCON=m # CONFIG_EXTCON_MAX3355 is not set # CONFIG_EXTCON_QCOM_SPMI_MISC is not set @@ -1471,7 +1481,6 @@ CONFIG_FAULT_INJECTION_DEBUG_FS=y CONFIG_FAULT_INJECTION_STACKTRACE_FILTER=y CONFIG_FAULT_INJECTION=y # CONFIG_FB_3DFX is not set -# CONFIG_FB_ARC is not set # CONFIG_FB_ARK is not set CONFIG_FB_ARMCLCD=y # CONFIG_FB_ASILIANT is not set @@ -1489,18 +1498,11 @@ CONFIG_FB_ATY_BACKLIGHT=y # CONFIG_FB_DA8XX is not set CONFIG_FB_EFI=y # CONFIG_FB_FOREIGN_ENDIAN is not set -# CONFIG_FB_GEODE is not set -# CONFIG_FB_GOLDFISH is not set # CONFIG_FB_HECUBA is not set -# CONFIG_FB_HGA is not set # CONFIG_FB_I740 is not set -CONFIG_FB_I810_GTF=y -CONFIG_FB_I810_I2C=y -CONFIG_FB_I810=m # CONFIG_FB_IBM_GXT4500 is not set # CONFIG_FB_IMSTT is not set # CONFIG_FB_KYRO is not set -# CONFIG_FB_LE80578 is not set # CONFIG_FB_MATROX_G is not set # CONFIG_FB_MATROX_I2C is not set # CONFIG_FB_MATROX is not set @@ -1544,9 +1546,6 @@ CONFIG_FB_TILEBLITTING=y # CONFIG_FB_UDL is not set # CONFIG_FB_UVESA is not set CONFIG_FB_VESA=y -CONFIG_FB_VGA16=m -# CONFIG_FB_VIA_DIRECT_PROCFS is not set -# CONFIG_FB_VIA is not set CONFIG_FB_VIRTUAL=m # CONFIG_FB_VOODOO1 is not set # CONFIG_FB_VT8623 is not set @@ -1574,7 +1573,7 @@ CONFIG_FMC_TRIVIAL=m CONFIG_FMC_WRITE_EEPROM=m # CONFIG_FONTS is not set CONFIG_FORCEDETH=m -CONFIG_FORCE_MAX_ZONEORDER=11 +CONFIG_FORCE_MAX_ZONEORDER=13 # CONFIG_FPGA is not set CONFIG_FRAMEBUFFER_CONSOLE_DETECT_PRIMARY=y CONFIG_FRAMEBUFFER_CONSOLE_ROTATION=y @@ -1589,6 +1588,7 @@ CONFIG_FSCACHE_OBJECT_LIST=y CONFIG_FSCACHE_STATS=y CONFIG_FS_DAX=y CONFIG_FS_ENCRYPTION=y +CONFIG_FSI=m # CONFIG_FSL_EDMA is not set CONFIG_FSL_ERRATUM_A008585=y # CONFIG_FSL_MC_BUS is not set @@ -1655,13 +1655,12 @@ CONFIG_GIRBIL_DONGLE=m # CONFIG_GPIO_ADNP is not set # CONFIG_GPIO_ADP5588 is not set # CONFIG_GPIO_ALTERA is not set -# CONFIG_GPIO_AMD8111 is not set # CONFIG_GPIO_AMDPT is not set CONFIG_GPIO_AXP209=m # CONFIG_GPIO_BT8XX is not set -# CONFIG_GPIO_CS5535 is not set CONFIG_GPIO_DEVRES=y CONFIG_GPIO_DWAPB=m +CONFIG_GPIO_EXAR=m CONFIG_GPIO_GENERIC_PLATFORM=y CONFIG_GPIO_GENERIC=y # CONFIG_GPIO_GRGPIO is not set @@ -1673,7 +1672,6 @@ CONFIG_GPIOLIB=y CONFIG_GPIO_MAX77620=m # CONFIG_GPIO_MC33880 is not set # CONFIG_GPIO_MCP23S08 is not set -# CONFIG_GPIO_ML_IOH is not set # CONFIG_GPIO_MOCKUP is not set # CONFIG_GPIO_MPC8XXX is not set CONFIG_GPIO_MVEBU=y @@ -1681,32 +1679,30 @@ CONFIG_GPIO_PCA953X_IRQ=y CONFIG_GPIO_PCA953X=m # CONFIG_GPIO_PCF857X is not set # CONFIG_GPIO_PCH is not set +CONFIG_GPIO_PCI_IDIO_16=m # CONFIG_GPIO_PISOSR is not set CONFIG_GPIO_PL061=y # CONFIG_GPIO_RDC321X is not set # CONFIG_GPIO_SCH311X is not set -# CONFIG_GPIO_SCH is not set # CONFIG_GPIO_SX150X is not set # CONFIG_GPIO_SYSCON is not set -CONFIG_GPIO_SYSFS=y +# CONFIG_GPIO_SYSFS is not set CONFIG_GPIO_TEGRA=y # CONFIG_GPIO_TPIC2810 is not set # CONFIG_GPIO_TS4900 is not set # CONFIG_GPIO_TS5500 is not set CONFIG_GPIO_VIPERBOARD=m -# CONFIG_GPIO_VX855 is not set CONFIG_GPIO_WATCHDOG=m # CONFIG_GPIO_WS16C48 is not set CONFIG_GPIO_XGENE_SB=m CONFIG_GPIO_XGENE=y # CONFIG_GPIO_XILINX is not set -# CONFIG_GPIO_ZX is not set CONFIG_GREENASIA_FF=y # CONFIG_GREYBUS is not set # CONFIG_GS_FPGABOOT is not set CONFIG_GTP=m CONFIG_HAMACHI=m -# CONFIG_HAMRADIO is not set +CONFIG_HAMRADIO=y CONFIG_HANGCHECK_TIMER=m CONFIG_HAPPYMEAL=m CONFIG_HARDENED_USERCOPY=y @@ -1850,6 +1846,7 @@ CONFIG_HISAX_TELES_CS=m CONFIG_HISAX_TELESPCI=y CONFIG_HISAX_W6692=y CONFIG_HISI_KIRIN_DW_DSI=m +CONFIG_HISILICON_ERRATUM_161010101=y CONFIG_HISILICON_IRQ_MBIGEN=y CONFIG_HISI_THERMAL=m CONFIG_HIST_TRIGGERS=y @@ -1903,6 +1900,7 @@ CONFIG_HW_RANDOM_XGENE=m CONFIG_HW_RANDOM=y CONFIG_HWSPINLOCK=m CONFIG_HWSPINLOCK_QCOM=m +# CONFIG_HX711 is not set CONFIG_HYSDN_CAPI=y CONFIG_HYSDN=m CONFIG_HZ=100 @@ -1941,7 +1939,6 @@ CONFIG_I2C_HELPER_AUTO=y CONFIG_I2C_HID=m # CONFIG_I2C_HIX5HD2 is not set # CONFIG_I2C_I801 is not set -CONFIG_I2C_IMX_LPI2C=m # CONFIG_I2C_ISCH is not set CONFIG_I2C_MESON=m CONFIG_I2C_MLXCPLD=m @@ -1977,6 +1974,7 @@ CONFIG_I2C_SLAVE_EEPROM=m CONFIG_I2C_SLAVE=y CONFIG_I2C_STUB=m # CONFIG_I2C_TAOS_EVM is not set +CONFIG_I2C_TEGRA_BPMP=m CONFIG_I2C_TEGRA=m CONFIG_I2C_THUNDERX=m CONFIG_I2C_TINY_USB=m @@ -1995,8 +1993,6 @@ CONFIG_I40EVF=m CONFIG_I6300ESB_WDT=m CONFIG_I82092=m # CONFIG_IAQCORE is not set -CONFIG_IB700_WDT=m -CONFIG_IBMASR=m CONFIG_ICPLUS_PHY=m # CONFIG_ICS932S401 is not set # CONFIG_IDE is not set @@ -2038,6 +2034,7 @@ CONFIG_IIO_ST_ACCEL_SPI_3AXIS=m CONFIG_IIO_ST_GYRO_3AXIS=m CONFIG_IIO_ST_GYRO_I2C_3AXIS=m CONFIG_IIO_ST_GYRO_SPI_3AXIS=m +# CONFIG_IIO_ST_LSM6DSX is not set CONFIG_IIO_ST_MAGN_3AXIS=m CONFIG_IIO_ST_PRESS_I2C=m CONFIG_IIO_ST_PRESS=m @@ -2057,6 +2054,7 @@ CONFIG_IMA_MEASURE_PCR_IDX=10 # CONFIG_INA2XX_ADC is not set CONFIG_INET6_AH=m CONFIG_INET6_ESP=m +CONFIG_INET6_ESP_OFFLOAD=m CONFIG_INET6_IPCOMP=m CONFIG_INET6_XFRM_MODE_BEET=m CONFIG_INET6_XFRM_MODE_ROUTEOPTIMIZATION=m @@ -2066,6 +2064,7 @@ CONFIG_INET_AH=m CONFIG_INET_DIAG_DESTROY=y CONFIG_INET_DIAG=m CONFIG_INET_ESP=m +CONFIG_INET_ESP_OFFLOAD=m CONFIG_INET_IPCOMP=m CONFIG_INET_RAW_DIAG=m CONFIG_INET_TUNNEL=m @@ -2074,6 +2073,7 @@ CONFIG_INET_XFRM_MODE_BEET=m CONFIG_INET_XFRM_MODE_TRANSPORT=m CONFIG_INET_XFRM_MODE_TUNNEL=m CONFIG_INET=y +# CONFIG_INFINIBAND_BNXT_RE is not set # CONFIG_INFINIBAND_CXGB3_DEBUG is not set CONFIG_INFINIBAND_CXGB3=m CONFIG_INFINIBAND_CXGB4=m @@ -2169,8 +2169,6 @@ CONFIG_INPUT=y CONFIG_INPUT_YEALINK=m # CONFIG_INTEGRITY is not set # CONFIG_INTEL_IDMA64 is not set -# CONFIG_INTEL_MENLOW is not set -CONFIG_INTEL_RDT_A=y # CONFIG_INTEL_SOC_PMIC is not set # CONFIG_INTEL_TH is not set CONFIG_INTEL_XWAY_PHY=m @@ -2180,6 +2178,7 @@ CONFIG_INTEL_XWAY_PHY=m # CONFIG_INV_MPU6050_SPI is not set # CONFIG_IOMMU_IO_PGTABLE_ARMV7S is not set # CONFIG_IOMMU_IO_PGTABLE_LPAE_SELFTEST is not set +CONFIG_IOMMU_IO_PGTABLE_LPAE=y CONFIG_IOMMU_SUPPORT=y CONFIG_IOSCHED_CFQ=y CONFIG_IOSCHED_DEADLINE=y @@ -2321,6 +2320,7 @@ CONFIG_IP_VS_SH_TAB_BITS=8 CONFIG_IP_VS_TAB_BITS=12 CONFIG_IP_VS_WLC=m CONFIG_IP_VS_WRR=m +CONFIG_IPVTAP=m # CONFIG_IPW2100_DEBUG is not set # CONFIG_IPW2100 is not set # CONFIG_IPW2200_DEBUG is not set @@ -2363,6 +2363,7 @@ CONFIG_IR_SERIAL=m CONFIG_IR_SERIAL_TRANSMITTER=y CONFIG_IR_SHARP_DECODER=m CONFIG_IR_SONY_DECODER=m +CONFIG_IR_SPI=m CONFIG_IR_STREAMZAP=m CONFIG_IR_SUNXI=m CONFIG_IR_TTUSBIR=m @@ -2521,6 +2522,7 @@ CONFIG_KEYBOARD_PMIC8XXX=m # CONFIG_KEYBOARD_TCA6416 is not set # CONFIG_KEYBOARD_TCA8418 is not set CONFIG_KEYBOARD_TEGRA=m +CONFIG_KEYBOARD_TM2_TOUCHKEY=m # CONFIG_KEYBOARD_XTKBD is not set CONFIG_KEY_DH_OPERATIONS=y CONFIG_KEYS=y @@ -2532,7 +2534,7 @@ CONFIG_KGDB_TESTS=y CONFIG_KGDB=y CONFIG_KINGSUN_DONGLE=m # CONFIG_KMX61 is not set -CONFIG_KPROBE_EVENT=y +CONFIG_KPROBE_EVENTS=y # CONFIG_KPROBES_SANITY_TEST is not set CONFIG_KPROBES=y CONFIG_KS0108_DELAY=2 @@ -2579,13 +2581,14 @@ CONFIG_LDM_PARTITION=y # CONFIG_LEDS_BCM6358 is not set # CONFIG_LEDS_BD2802 is not set CONFIG_LEDS_BLINKM=m +CONFIG_LEDS_BRIGHTNESS_HW_CHANGED=y CONFIG_LEDS_CLASS_FLASH=m CONFIG_LEDS_CLASS=y CONFIG_LEDS_CLEVO_MAIL=m # CONFIG_LEDS_DAC124S085 is not set CONFIG_LEDS_DELL_NETBOOKS=m -# CONFIG_LEDS_GPIO is not set -CONFIG_LEDS_INTEL_SS4200=m +CONFIG_LEDS_GPIO=m +CONFIG_LEDS_GPIO_REGISTER=y # CONFIG_LEDS_IS31FL319X is not set # CONFIG_LEDS_IS31FL32XX is not set # CONFIG_LEDS_KTD2692 is not set @@ -2609,15 +2612,15 @@ CONFIG_LEDS_NIC78BX=m # CONFIG_LEDS_PCA9532 is not set # CONFIG_LEDS_PCA955X is not set # CONFIG_LEDS_PCA963X is not set -# CONFIG_LEDS_PWM is not set +CONFIG_LEDS_PWM=m CONFIG_LEDS_REGULATOR=m # CONFIG_LEDS_S3C24XX is not set -# CONFIG_LEDS_SYSCON is not set +CONFIG_LEDS_SYSCON=y # CONFIG_LEDS_TCA6507 is not set # CONFIG_LEDS_TLC591XX is not set CONFIG_LEDS_TRIGGER_BACKLIGHT=m CONFIG_LEDS_TRIGGER_CAMERA=m -# CONFIG_LEDS_TRIGGER_CPU is not set +CONFIG_LEDS_TRIGGER_CPU=y CONFIG_LEDS_TRIGGER_DEFAULT_ON=m CONFIG_LEDS_TRIGGER_DISK=y CONFIG_LEDS_TRIGGER_GPIO=m @@ -2694,6 +2697,8 @@ CONFIG_LOOPBACK_TARGET=m # CONFIG_LPC_ICH is not set CONFIG_LP_CONSOLE=y # CONFIG_LPC_SCH is not set +CONFIG_LPFC_NVME_INITIATOR=y +CONFIG_LPFC_NVME_TARGET=y CONFIG_LSI_ET1011C_PHY=m CONFIG_LSM_MMAP_MIN_ADDR=65536 # CONFIG_LTC2485 is not set @@ -2726,6 +2731,7 @@ CONFIG_MACVLAN=m CONFIG_MACVTAP=m # CONFIG_MAG3110 is not set CONFIG_MAGIC_SYSRQ_DEFAULT_ENABLE=0x0 +CONFIG_MAGIC_SYSRQ_SERIAL=y CONFIG_MAGIC_SYSRQ=y # CONFIG_MAILBOX_TEST is not set CONFIG_MAILBOX=y @@ -2733,10 +2739,12 @@ CONFIG_MAILBOX=y CONFIG_MANTIS_CORE=m CONFIG_MARVELL_PHY=m # CONFIG_MAX1027 is not set +# CONFIG_MAX11100 is not set # CONFIG_MAX1363 is not set CONFIG_MAX30100=m # CONFIG_MAX44000 is not set # CONFIG_MAX517 is not set +# CONFIG_MAX5481 is not set # CONFIG_MAX5487 is not set # CONFIG_MAX5821 is not set # CONFIG_MAX63XX_WATCHDOG is not set @@ -2819,6 +2827,7 @@ CONFIG_MEMSTICK_TIFM_MS=m CONFIG_MESON_EFUSE=m CONFIG_MESON_GXBB_WATCHDOG=m CONFIG_MESON_GXL_PHY=m +CONFIG_MESON_SARADC=m CONFIG_MESON_SM=y # CONFIG_MESON_WATCHDOG is not set CONFIG_MESSAGE_LOGLEVEL_DEFAULT=4 @@ -2841,6 +2850,7 @@ CONFIG_MFD_AXP20X_RSB=m CONFIG_MFD_AXP20X=y # CONFIG_MFD_BCM590XX is not set CONFIG_MFD_CORE=y +CONFIG_MFD_CPCAP=m # CONFIG_MFD_CROS_EC is not set # CONFIG_MFD_CS5535 is not set # CONFIG_MFD_DA9052_I2C is not set @@ -2860,7 +2870,7 @@ CONFIG_MFD_HI655X_PMIC=m # CONFIG_MFD_LP8788 is not set # CONFIG_MFD_MAX14577 is not set CONFIG_MFD_MAX77620=y -# CONFIG_MFD_MAX77686 is not set +CONFIG_MFD_MAX77686=y # CONFIG_MFD_MAX77693 is not set # CONFIG_MFD_MAX77843 is not set # CONFIG_MFD_MAX8907 is not set @@ -2970,6 +2980,7 @@ CONFIG_MMA7660=m # CONFIG_MMA9553 is not set # CONFIG_MMC35240 is not set CONFIG_MMC_ARMMMCI=m +CONFIG_MMC_BCM2835=m CONFIG_MMC_BLOCK_BOUNCE=y CONFIG_MMC_BLOCK=m CONFIG_MMC_BLOCK_MINORS=8 @@ -3042,7 +3053,6 @@ CONFIG_MOUSE_ELAN_I2C_SMBUS=y CONFIG_MOUSE_PS2_ELANTECH=y CONFIG_MOUSE_PS2_SENTELIC=y # CONFIG_MOUSE_PS2_TOUCHKIT is not set -# CONFIG_MOUSE_PS2_VMMOUSE is not set CONFIG_MOUSE_PS2=y CONFIG_MOUSE_SERIAL=m CONFIG_MOUSE_SYNAPTICS_I2C=m @@ -3058,6 +3068,7 @@ CONFIG_MOVABLE_NODE=y CONFIG_MPLS_IPTUNNEL=m CONFIG_MPLS_ROUTING=m # CONFIG_MPU3050_I2C is not set +CONFIG_MQ_IOSCHED_DEADLINE=y # CONFIG_MS5611 is not set # CONFIG_MS5637 is not set # CONFIG_MS_BLOCK is not set @@ -3122,6 +3133,7 @@ CONFIG_MTD_OF_PARTS=m # CONFIG_MTD_PHRAM is not set # CONFIG_MTD_PHYSMAP_COMPAT is not set CONFIG_MTD_PHYSMAP=m +# CONFIG_MTD_PHYSMAP_OF_GEMINI is not set CONFIG_MTD_PHYSMAP_OF=m CONFIG_MTD_PHYSMAP_OF_VERSATILE=y # CONFIG_MTD_PLATRAM is not set @@ -3150,6 +3162,7 @@ CONFIG_MVEBU_MBUS=y CONFIG_MVMDIO=m CONFIG_MVNETA_BM_ENABLE=m CONFIG_MVNETA=m +CONFIG_MVPP2=m # CONFIG_MV_XOR_V2 is not set CONFIG_MV_XOR=y CONFIG_MWAVE=m @@ -3193,6 +3206,7 @@ CONFIG_NET_ACT_MIRRED=m CONFIG_NET_ACT_NAT=m CONFIG_NET_ACT_PEDIT=m CONFIG_NET_ACT_POLICE=m +CONFIG_NET_ACT_SAMPLE=m CONFIG_NET_ACT_SIMP=m CONFIG_NET_ACT_SKBEDIT=m CONFIG_NET_ACT_SKBMOD=m @@ -3326,6 +3340,7 @@ CONFIG_NETFILTER_XT_TARGET_TRACE=m CONFIG_NETFILTER=y CONFIG_NET_FOU_IP_TUNNELS=y CONFIG_NET_FOU=m +CONFIG_NET_IFE=m CONFIG_NET_IFE_SKBMARK=m CONFIG_NET_IFE_SKBPRIO=m CONFIG_NET_IFE_SKBTCINDEX=m @@ -3336,7 +3351,7 @@ CONFIG_NET_IPIP=m CONFIG_NET_IPVTI=m CONFIG_NET_KEY=m CONFIG_NET_KEY_MIGRATE=y -# CONFIG_NET_L3_MASTER_DEV is not set +CONFIG_NET_L3_MASTER_DEV=y CONFIG_NETLABEL=y CONFIG_NETLINK_DIAG=m CONFIG_NET_MPLS_GSO=m @@ -3390,8 +3405,9 @@ CONFIG_NET_VENDOR_AGERE=y # CONFIG_NET_VENDOR_ALACRITECH is not set CONFIG_NET_VENDOR_ALLWINNER=y CONFIG_NET_VENDOR_ALTEON=y -# CONFIG_NET_VENDOR_AMAZON is not set +CONFIG_NET_VENDOR_AMAZON=y CONFIG_NET_VENDOR_AMD=y +# CONFIG_NET_VENDOR_AQUANTIA is not set CONFIG_NET_VENDOR_ARC=y CONFIG_NET_VENDOR_ATHEROS=y # CONFIG_NET_VENDOR_AURORA is not set @@ -3515,6 +3531,8 @@ CONFIG_NF_LOG_IPV6=m CONFIG_NF_LOG_NETDEV=m CONFIG_NF_NAT=m CONFIG_NF_NAT_SNMP_BASIC=m +# CONFIG_NFP_DEBUG is not set +CONFIG_NFP=m # CONFIG_NFP_NET_DEBUG is not set CONFIG_NFP_NETVF=m CONFIG_NF_REJECT_IPV6=m @@ -3586,6 +3604,7 @@ CONFIG_NFT_REDIR=m CONFIG_NFT_REJECT_IPV4=m CONFIG_NFT_REJECT=m CONFIG_NFT_RT=m +CONFIG_NFT_SET_BITMAP=m CONFIG_NFT_SET_HASH=m CONFIG_NFT_SET_RBTREE=m CONFIG_N_GSM=m @@ -3732,6 +3751,7 @@ CONFIG_PANTHERLORD_FF=y CONFIG_PARAVIRT_TIME_ACCOUNTING=y CONFIG_PARAVIRT=y # CONFIG_PARIDE is not set +CONFIG_PARMAN=m CONFIG_PARPORT_1284=y # CONFIG_PARPORT_AX88796 is not set # CONFIG_PARPORT is not set @@ -3791,6 +3811,7 @@ CONFIG_PATA_TOSHIBA=m CONFIG_PATA_TRIFLEX=m CONFIG_PATA_VIA=m CONFIG_PATA_WINBOND=m +# CONFIG_PC104 is not set # CONFIG_PC87413_WDT is not set CONFIG_PCCARD=y CONFIG_PCC=y @@ -3865,6 +3886,8 @@ CONFIG_PHY_MVEBU_SATA=y # CONFIG_PHY_QCOM_APQ8064_SATA is not set # CONFIG_PHY_QCOM_IPQ806X_SATA is not set # CONFIG_PHY_QCOM_UFS is not set +CONFIG_PHY_QCOM_USB_HSIC=m +CONFIG_PHY_QCOM_USB_HS=m CONFIG_PHY_ROCKCHIP_DP=m CONFIG_PHY_ROCKCHIP_EMMC=m CONFIG_PHY_ROCKCHIP_INNO_USB2=m @@ -3874,7 +3897,7 @@ CONFIG_PHY_ROCKCHIP_USB=m # CONFIG_PHY_SAMSUNG_USB2 is not set # CONFIG_PHY_ST_SPEAR1310_MIPHY is not set # CONFIG_PHY_ST_SPEAR1340_MIPHY is not set -# CONFIG_PHY_SUN4I_USB is not set +CONFIG_PHY_SUN4I_USB=m # CONFIG_PHY_SUN9I_USB is not set CONFIG_PHY_TEGRA_XUSB=m # CONFIG_PHY_TUSB1210 is not set @@ -3888,6 +3911,7 @@ CONFIG_PINCTRL_AMD=y # CONFIG_PINCTRL_BAYTRAIL is not set # CONFIG_PINCTRL_BROXTON is not set # CONFIG_PINCTRL_CHERRYVIEW is not set +# CONFIG_PINCTRL_GEMINILAKE is not set # CONFIG_PINCTRL_IPQ4019 is not set # CONFIG_PINCTRL_IPQ8064 is not set CONFIG_PINCTRL_MAX77620=m @@ -3906,6 +3930,7 @@ CONFIG_PINCTRL_QDF2XXX=y CONFIG_PINCTRL_SINGLE=y # CONFIG_PINCTRL_SUNRISEPOINT is not set # CONFIG_PINCTRL_SX150X is not set +# CONFIG_PINCTRL_TI_IODELAY is not set CONFIG_PINCTRL=y CONFIG_PINMUX=y CONFIG_PKCS7_MESSAGE_PARSER=y @@ -3980,6 +4005,7 @@ CONFIG_PPTP=m CONFIG_PREEMPT_VOLUNTARY=y CONFIG_PREVENT_FIRMWARE_BUILD=y CONFIG_PRINTER=m +CONFIG_PRINTK_SAFE_LOG_BUF_SHIFT=12 CONFIG_PRINTK_TIME=y # CONFIG_PRINT_QUOTA_WARNING is not set # CONFIG_PRISM2_USB is not set @@ -3994,6 +4020,7 @@ CONFIG_PROFILING=y CONFIG_PROVE_LOCKING=y # CONFIG_PROVE_RCU_REPEATEDLY is not set CONFIG_PROVE_RCU=y +CONFIG_PSAMPLE=m # CONFIG_PSTORE_CONSOLE is not set # CONFIG_PSTORE_FTRACE is not set # CONFIG_PSTORE_PMSG is not set @@ -4012,6 +4039,7 @@ CONFIG_PWM_SYSFS=y CONFIG_PWM_TEGRA=m CONFIG_PWM=y CONFIG_PWRSEQ_EMMC=m +# CONFIG_PWRSEQ_SD8787 is not set CONFIG_PWRSEQ_SIMPLE=m # CONFIG_QCA7000 is not set CONFIG_QCOM_ADSP_PIL=m @@ -4021,10 +4049,15 @@ CONFIG_QCOM_CLK_SMD_RPM=m CONFIG_QCOM_COINCELL=m # CONFIG_QCOM_EBI2 is not set CONFIG_QCOM_EMAC=m +# CONFIG_QCOM_FALKOR_ERRATUM_1003 is not set +CONFIG_QCOM_FALKOR_ERRATUM_1009=y CONFIG_QCOM_GSBI=y CONFIG_QCOM_HIDMA=m CONFIG_QCOM_HIDMA_MGMT=m +CONFIG_QCOM_IRQ_COMBINER=y +CONFIG_QCOM_L2_PMU=y # CONFIG_QCOM_Q6V5_PIL is not set +CONFIG_QCOM_QDF2400_ERRATUM_0065=y CONFIG_QCOM_QFPROM=m CONFIG_QCOM_SMD=m CONFIG_QCOM_SMD_RPM=m @@ -4039,6 +4072,7 @@ CONFIG_QCOM_WCNSS_CTRL=m # CONFIG_QCOM_WCNSS_PIL is not set CONFIG_QCOM_WDT=m CONFIG_QEDE=m +CONFIG_QEDF=m CONFIG_QEDI=m CONFIG_QED=m CONFIG_QED_SRIOV=y @@ -4052,6 +4086,7 @@ CONFIG_QLCNIC_SRIOV=y CONFIG_QLGE=m # CONFIG_QNX4FS_FS is not set # CONFIG_QNX6FS_FS is not set +# CONFIG_QORIQ_CPUFREQ is not set # CONFIG_QORIQ_THERMAL is not set # CONFIG_QRTR is not set CONFIG_QSEMI_PHY=m @@ -4086,7 +4121,6 @@ CONFIG_RADIO_TERRATEC=m CONFIG_RADIO_TRUST=m CONFIG_RADIO_TYPHOON=m CONFIG_RADIO_WL1273=m -# CONFIG_RADIO_WL128X is not set # depends on TI_ST which we don't enable CONFIG_RADIO_ZOLTRIX=m CONFIG_RAID_ATTRS=m # CONFIG_RANDOM32_SELFTEST is not set @@ -4138,6 +4172,7 @@ CONFIG_REGULATOR_ACT8865=m # CONFIG_REGULATOR_AD5398 is not set # CONFIG_REGULATOR_ANATOP is not set CONFIG_REGULATOR_AXP20X=m +CONFIG_REGULATOR_CPCAP=m # CONFIG_REGULATOR_DA9210 is not set # CONFIG_REGULATOR_DA9211 is not set # CONFIG_REGULATOR_DEBUG is not set @@ -4155,6 +4190,8 @@ CONFIG_REGULATOR_HI655X=m # CONFIG_REGULATOR_LTC3676 is not set # CONFIG_REGULATOR_MAX1586 is not set CONFIG_REGULATOR_MAX77620=m +CONFIG_REGULATOR_MAX77686=m +CONFIG_REGULATOR_MAX77802=m # CONFIG_REGULATOR_MAX8649 is not set # CONFIG_REGULATOR_MAX8660 is not set # CONFIG_REGULATOR_MAX8952 is not set @@ -4164,7 +4201,7 @@ CONFIG_REGULATOR_MAX77620=m # CONFIG_REGULATOR_PV88060 is not set # CONFIG_REGULATOR_PV88080 is not set # CONFIG_REGULATOR_PV88090 is not set -CONFIG_REGULATOR_PWM=m +CONFIG_REGULATOR_PWM=y CONFIG_REGULATOR_QCOM_RPM=m CONFIG_REGULATOR_QCOM_SMD_RPM=m CONFIG_REGULATOR_QCOM_SPMI=m @@ -4195,7 +4232,6 @@ CONFIG_RESET_HISI=y CONFIG_RFKILL_GPIO=m CONFIG_RFKILL_INPUT=y CONFIG_RFKILL=m -CONFIG_RFKILL_REGULATOR=m CONFIG_RING_BUFFER_BENCHMARK=m # CONFIG_RING_BUFFER_STARTUP_TEST is not set # CONFIG_RIO is not set @@ -4379,7 +4415,7 @@ CONFIG_S2IO=m # CONFIG_SAMPLES is not set # CONFIG_SAMSUNG_USBPHY is not set CONFIG_SATA_ACARD_AHCI=m -CONFIG_SATA_AHCI_PLATFORM=y +CONFIG_SATA_AHCI_PLATFORM=m CONFIG_SATA_AHCI_SEATTLE=m CONFIG_SATA_AHCI=y # CONFIG_SATA_DWC is not set @@ -4674,6 +4710,7 @@ CONFIG_SENSORS_SIS5595=m CONFIG_SENSORS_SMSC47B397=m CONFIG_SENSORS_SMSC47M192=m CONFIG_SENSORS_SMSC47M1=m +# CONFIG_SENSORS_STTS751 is not set CONFIG_SENSORS_TC654=m CONFIG_SENSORS_TC74=m CONFIG_SENSORS_THMC50=m @@ -4711,6 +4748,7 @@ CONFIG_SERIAL_8250_CS=m # CONFIG_SERIAL_8250_DEPRECATED_OPTIONS is not set # CONFIG_SERIAL_8250_DETECT_IRQ is not set CONFIG_SERIAL_8250_DW=y +CONFIG_SERIAL_8250_EXAR=m CONFIG_SERIAL_8250_EXTENDED=y # CONFIG_SERIAL_8250_FINTEK is not set # CONFIG_SERIAL_8250_INGENIC is not set @@ -4718,6 +4756,7 @@ CONFIG_SERIAL_8250_MANY_PORTS=y # CONFIG_SERIAL_8250_MID is not set CONFIG_SERIAL_8250_MOXA=m CONFIG_SERIAL_8250_NR_UARTS=32 +CONFIG_SERIAL_8250_PCI=m CONFIG_SERIAL_8250_RSA=y CONFIG_SERIAL_8250_RT288X=y CONFIG_SERIAL_8250_RUNTIME_UARTS=32 @@ -4733,6 +4772,8 @@ CONFIG_SERIAL_ARC_NR_PORTS=1 # CONFIG_SERIAL_CONEXANT_DIGICOLOR is not set CONFIG_SERIAL_CORE_CONSOLE=y CONFIG_SERIAL_CORE=y +CONFIG_SERIAL_DEV_BUS=y +CONFIG_SERIAL_DEV_CTRL_TTYPORT=y CONFIG_SERIAL_EARLYCON_ARM_SEMIHOST=y # CONFIG_SERIAL_FSL_LPUART is not set # CONFIG_SERIAL_IFX6X60 is not set @@ -4746,7 +4787,7 @@ CONFIG_SERIAL_MSM_CONSOLE=y CONFIG_SERIAL_MSM=y CONFIG_SERIAL_MVEBU_CONSOLE=y CONFIG_SERIAL_MVEBU_UART=y -CONFIG_SERIAL_NONSTANDARD=y +# CONFIG_SERIAL_NONSTANDARD is not set CONFIG_SERIAL_OF_PLATFORM=y # CONFIG_SERIAL_PCH_UART is not set # CONFIG_SERIAL_RP2 is not set @@ -4806,6 +4847,7 @@ CONFIG_SMARTJOYPLUS_FF=y CONFIG_SMC911X=m CONFIG_SMC91X=m CONFIG_SMC_IRCC_FIR=m +# CONFIG_SMC is not set # CONFIG_SM_FTL is not set CONFIG_SMP=y CONFIG_SMSC911X=m @@ -4914,6 +4956,7 @@ CONFIG_SND_INTEL8X0=m CONFIG_SND_INTEL8X0M=m CONFIG_SND_ISIGHT=m CONFIG_SND_JACK=y +# CONFIG_SND_KIRKWOOD_SOC is not set CONFIG_SND_KORG1212=m CONFIG_SND_LAYLA20=m CONFIG_SND_LAYLA24=m @@ -4952,8 +4995,9 @@ CONFIG_SND_SEQUENCER=m CONFIG_SND_SEQUENCER_OSS=y CONFIG_SND_SERIAL_U16550=m CONFIG_SND_SIMPLE_CARD=m -# CONFIG_SND_SIMPLE_SCU_CARD is not set +CONFIG_SND_SIMPLE_SCU_CARD=m CONFIG_SND_SIS7019=m +CONFIG_SND_SOC_AC97_CODEC=m # CONFIG_SND_SOC_ADAU1701 is not set # CONFIG_SND_SOC_ADAU7002 is not set # CONFIG_SND_SOC_AK4104 is not set @@ -4964,6 +5008,7 @@ CONFIG_SND_SIS7019=m # CONFIG_SND_SOC_ALC5623 is not set CONFIG_SND_SOC_ALL_CODECS=m CONFIG_SND_SOC_AMD_ACP=m +CONFIG_SND_SOC_APQ8016_SBC=m # CONFIG_SND_SOC_ARNDALE_RT5631_ALC5631 is not set # CONFIG_SND_SOC_BT_SCO is not set # CONFIG_SND_SOC_CS35L32 is not set @@ -4983,7 +5028,9 @@ CONFIG_SND_SOC_CS42L42=m # CONFIG_SND_SOC_CS4349 is not set # CONFIG_SND_SOC_CS53L30 is not set CONFIG_SND_SOC_DMIC=m -# CONFIG_SND_SOC_ES8328 is not set +CONFIG_SND_SOC_ES8328_I2C=m +CONFIG_SND_SOC_ES8328=m +CONFIG_SND_SOC_ES8328_SPI=m # CONFIG_SND_SOC_FSL_ASOC_CARD is not set # CONFIG_SND_SOC_FSL_ASRC is not set # CONFIG_SND_SOC_FSL_ESAI is not set @@ -4998,11 +5045,12 @@ CONFIG_SND_SOC_HDMI_CODEC=m # CONFIG_SND_SOC_IMX_AUDMUX is not set # CONFIG_SND_SOC_IMX_ES8328 is not set # CONFIG_SND_SOC_INNO_RK3036 is not set -# CONFIG_SND_SOC is not set +CONFIG_SND_SOC=m # CONFIG_SND_SOC_MAX98504 is not set # CONFIG_SND_SOC_MAX9860 is not set # CONFIG_SND_SOC_MSM8916_WCD_ANALOG is not set # CONFIG_SND_SOC_MSM8916_WCD_DIGITAL is not set +# CONFIG_SND_SOC_NAU8540 is not set # CONFIG_SND_SOC_NAU8810 is not set # CONFIG_SND_SOC_PCM1681 is not set # CONFIG_SND_SOC_PCM179X_I2C is not set @@ -5013,6 +5061,9 @@ CONFIG_SND_SOC_HDMI_CODEC=m CONFIG_SND_SOC_PCM512x_I2C=m CONFIG_SND_SOC_PCM512x=m CONFIG_SND_SOC_PCM512x_SPI=m +CONFIG_SND_SOC_QCOM=m +CONFIG_SND_SOC_RK3288_HDMI_ANALOG=m +CONFIG_SND_SOC_RK3399_GRU_SOUND=m CONFIG_SND_SOC_ROCKCHIP_I2S=m CONFIG_SND_SOC_ROCKCHIP=m CONFIG_SND_SOC_ROCKCHIP_MAX98090=m @@ -5020,7 +5071,7 @@ CONFIG_SND_SOC_ROCKCHIP_RT5645=m CONFIG_SND_SOC_ROCKCHIP_SPDIF=m # CONFIG_SND_SOC_RT5616 is not set # CONFIG_SND_SOC_RT5631 is not set -# CONFIG_SND_SOC_SGTL5000 is not set +CONFIG_SND_SOC_SGTL5000=m # CONFIG_SND_SOC_SIRF_AUDIO_CODEC is not set CONFIG_SND_SOC_SPDIF=m # CONFIG_SND_SOC_SSM2602_I2C is not set @@ -5029,16 +5080,28 @@ CONFIG_SND_SOC_SPDIF=m # CONFIG_SND_SOC_STA32X is not set # CONFIG_SND_SOC_STA350 is not set # CONFIG_SND_SOC_STI_SAS is not set +# CONFIG_SND_SOC_STORM is not set # CONFIG_SND_SOC_TAS2552 is not set # CONFIG_SND_SOC_TAS5086 is not set +# CONFIG_SND_SOC_TAS571X is not set # CONFIG_SND_SOC_TAS5720 is not set +# CONFIG_SND_SOC_TEGRA_ALC5632 is not set +CONFIG_SND_SOC_TEGRA=m +CONFIG_SND_SOC_TEGRA_MAX98090=m +CONFIG_SND_SOC_TEGRA_RT5640=m +CONFIG_SND_SOC_TEGRA_RT5677=m +CONFIG_SND_SOC_TEGRA_SGTL5000=m +# CONFIG_SND_SOC_TEGRA_TRIMSLICE is not set +# CONFIG_SND_SOC_TEGRA_WM8753 is not set +# CONFIG_SND_SOC_TEGRA_WM8903 is not set +# CONFIG_SND_SOC_TEGRA_WM9712 is not set # CONFIG_SND_SOC_TFA9879 is not set # CONFIG_SND_SOC_TLV320AIC23_I2C is not set # CONFIG_SND_SOC_TLV320AIC23_SPI is not set # CONFIG_SND_SOC_TLV320AIC31XX is not set # CONFIG_SND_SOC_TLV320AIC3X is not set CONFIG_SND_SOC_TPA6130A2=m -# CONFIG_SND_SOC_TS3A227E is not set +CONFIG_SND_SOC_TS3A227E=m # CONFIG_SND_SOC_WM8510 is not set # CONFIG_SND_SOC_WM8523 is not set # CONFIG_SND_SOC_WM8580 is not set @@ -5064,7 +5127,10 @@ CONFIG_SND_SOC_WM8804_SPI=m CONFIG_SND_SONICVIBES=m # CONFIG_SND_SPI is not set CONFIG_SND_SUN4I_CODEC=m +CONFIG_SND_SUN4I_I2S=m +CONFIG_SND_SUN4I_SPDIF=m CONFIG_SND_SUN8I_CODEC_ANALOG=m +CONFIG_SND_SUN8I_CODEC=m # CONFIG_SND_SUPPORT_OLD_API is not set CONFIG_SND_TRIDENT=m CONFIG_SND_USB_6FIRE=m @@ -5090,6 +5156,7 @@ CONFIG_SND_VX222=m CONFIG_SND_YMFPCI=m # CONFIG_SOC_CAMERA is not set # CONFIG_SOC_TI is not set +# CONFIG_SOC_ZTE is not set CONFIG_SOFT_WATCHDOG=m CONFIG_SOLARIS_X86_PARTITION=y # CONFIG_SOLO6X10 is not set @@ -5154,6 +5221,7 @@ CONFIG_SQUASHFS_XATTR=y CONFIG_SQUASHFS_XZ=y CONFIG_SQUASHFS_ZLIB=y CONFIG_SRAM=y +# CONFIG_SRF08 is not set # CONFIG_SSB_DEBUG is not set CONFIG_SSB_DRIVER_GPIO=y CONFIG_SSB_DRIVER_PCICORE=y @@ -5171,6 +5239,7 @@ CONFIG_STAGING_MEDIA=y CONFIG_STAGING=y CONFIG_STANDALONE=y # CONFIG_STATIC_KEYS_SELFTEST is not set +# CONFIG_STATIC_USERMODEHELPER is not set CONFIG_STE10XP=m # CONFIG_STE_MODEM_RPROC is not set CONFIG_STK3310=m @@ -5180,19 +5249,21 @@ CONFIG_STK3310=m # CONFIG_STM is not set CONFIG_STMMAC_ETH=m # CONFIG_STMMAC_PCI is not set -# CONFIG_STMMAC_PLATFORM is not set +CONFIG_STMMAC_PLATFORM=m # CONFIG_STM_SOURCE_CONSOLE is not set CONFIG_STRICT_DEVMEM=y CONFIG_STRIP_ASM_SYMS=y # CONFIG_STRIP is not set CONFIG_STUB_CLK_HI6220=y # CONFIG_SUN4I_EMAC is not set -# CONFIG_SUN50I_A64_CCU is not set +CONFIG_SUN50I_A64_CCU=y +# CONFIG_SUN5I_CCU is not set # CONFIG_SUN6I_A31_CCU is not set # CONFIG_SUN8I_A23_CCU is not set # CONFIG_SUN8I_A33_CCU is not set -CONFIG_SUN8I_EMAC=m # CONFIG_SUN8I_H3_CCU is not set +# CONFIG_SUN8I_V3S_CCU is not set +# CONFIG_SUN9I_A80_CCU is not set CONFIG_SUNDANCE=m # CONFIG_SUNDANCE_MMIO is not set CONFIG_SUNGEM=m @@ -5218,7 +5289,7 @@ CONFIG_SYNCLINK=m CONFIG_SYNCLINKMP=m CONFIG_SYN_COOKIES=y # CONFIG_SYNOPSYS_DWC_ETH_QOS is not set -# CONFIG_SYSCON_REBOOT_MODE is not set +CONFIG_SYSCON_REBOOT_MODE=y CONFIG_SYSCTL=y # CONFIG_SYSFS_DEPRECATED is not set # CONFIG_SYSFS_DEPRECATED_V2 is not set @@ -5314,9 +5385,11 @@ CONFIG_TEST_ASYNC_DRIVER_PROBE=m CONFIG_TEST_KSTRTOX=y CONFIG_TEST_LIST_SORT=y # CONFIG_TEST_LKM is not set +# CONFIG_TEST_PARMAN is not set # CONFIG_TEST_POWER is not set # CONFIG_TEST_PRINTF is not set # CONFIG_TEST_RHASHTABLE is not set +# CONFIG_TEST_SORT is not set # CONFIG_TEST_STATIC_KEYS is not set # CONFIG_TEST_STRING_HELPERS is not set # CONFIG_TEST_UDELAY is not set @@ -5346,6 +5419,7 @@ CONFIG_THUNDER_NIC_VF=m # CONFIG_TI_ADC128S052 is not set # CONFIG_TI_ADC161S626 is not set # CONFIG_TI_ADS1015 is not set +# CONFIG_TI_ADS7950 is not set # CONFIG_TI_ADS8688 is not set # CONFIG_TI_CPSW_ALE is not set # CONFIG_TI_DAC7512 is not set @@ -5354,15 +5428,19 @@ CONFIG_TIFM_CORE=m CONFIG_TIGON3=m # CONFIG_TIMB_DMA is not set # CONFIG_TIMER_STATS is not set +CONFIG_TINYDRM_MI0283QT=m +CONFIG_TINYDRM_MIPI_DBI=m CONFIG_TIPC=m # CONFIG_TIPC_MEDIA_IB is not set CONFIG_TIPC_MEDIA_UDP=y CONFIG_TI_SCI_PROTOCOL=m # CONFIG_TI_ST is not set # CONFIG_TI_SYSCON_RESET is not set +# CONFIG_TI_TLC4541 is not set # CONFIG_TLAN is not set # CONFIG_TMD_HERMES is not set CONFIG_TMP006=m +# CONFIG_TMP007 is not set CONFIG_TMPFS_POSIX_ACL=y CONFIG_TMPFS_XATTR=y CONFIG_TMPFS=y @@ -5432,6 +5510,7 @@ CONFIG_TOUCHSCREEN_WACOM_I2C=m CONFIG_TOUCHSCREEN_WACOM_W8001=m # CONFIG_TOUCHSCREEN_WDT87XX_I2C is not set # CONFIG_TOUCHSCREEN_WM97XX is not set +CONFIG_TOUCHSCREEN_ZET6223=m CONFIG_TOUCHSCREEN_ZFORCE=m # CONFIG_TPL0102 is not set # CONFIG_TPS6105X is not set @@ -5499,7 +5578,7 @@ CONFIG_UNIX_DIAG=m CONFIG_UNIXWARE_DISKLABEL=y CONFIG_UNIX=y CONFIG_UNUSED_SYMBOLS=y -CONFIG_UPROBE_EVENT=y +CONFIG_UPROBE_EVENTS=y # CONFIG_US5182D is not set CONFIG_USB_ACM=m CONFIG_USB_ADUTUX=m @@ -5520,6 +5599,7 @@ CONFIG_USB_CHAOSKEY=m CONFIG_USB_CHIPIDEA_HOST=y CONFIG_USB_CHIPIDEA=m CONFIG_USB_CHIPIDEA_UDC=y +# CONFIG_USB_CHIPIDEA_ULPI is not set CONFIG_USB_CONFIGFS_ACM=y CONFIG_USB_CONFIGFS_ECM_SUBSET=y CONFIG_USB_CONFIGFS_ECM=y @@ -5643,6 +5723,7 @@ CONFIG_USB_HID=y CONFIG_USB_HSIC_USB3503=m CONFIG_USB_HSIC_USB4604=m CONFIG_USB_HSO=m +CONFIG_USB_HUB_USB251XB=m CONFIG_USB_HWA_HCD=m CONFIG_USB_IDMOUSE=m CONFIG_USB_IOWARRIOR=m @@ -5801,6 +5882,7 @@ CONFIG_USB_SERIAL_SPCP8X5=m CONFIG_USB_SERIAL_SSU100=m CONFIG_USB_SERIAL_SYMBOL=m CONFIG_USB_SERIAL_TI=m +CONFIG_USB_SERIAL_UPD78F0730=m CONFIG_USB_SERIAL_VISOR=m CONFIG_USB_SERIAL_WHITEHEAT=m # CONFIG_USB_SERIAL_WISHBONE is not set @@ -5881,7 +5963,7 @@ CONFIG_V4L_MEM2MEM_DRIVERS=y # CONFIG_V4L_PLATFORM_DRIVERS is not set # CONFIG_V4L_TEST_DRIVERS is not set # CONFIG_VCNL4000 is not set -# CONFIG_VDSO is not set +CONFIG_VDSO=y # CONFIG_VEML6070 is not set CONFIG_VETH=m CONFIG_VEXPRESS_SYSCFG=y @@ -5900,6 +5982,7 @@ CONFIG_VFIO_PLATFORM_AMDXGBE_RESET=m CONFIG_VFIO_PLATFORM=m CONFIG_VGA_ARB_MAX_GPUS=16 CONFIG_VGA_ARB=y +# CONFIG_VGACON_SOFT_SCROLLBACK_PERSISTENT_ENABLE_BY_DEFAULT is not set CONFIG_VGACON_SOFT_SCROLLBACK_SIZE=64 CONFIG_VGACON_SOFT_SCROLLBACK=y # CONFIG_VGA_CONSOLE is not set @@ -5950,6 +6033,7 @@ CONFIG_VIDEO_HDPVR=m CONFIG_VIDEO_HEXIUM_GEMINI=m CONFIG_VIDEO_HEXIUM_ORION=m # CONFIG_VIDEO_IVTV_ALSA is not set +# CONFIG_VIDEO_IVTV_DEPRECATED_IOCTLS is not set CONFIG_VIDEO_IVTV=m # CONFIG_VIDEO_M5MOLS is not set # CONFIG_VIDEO_MEM2MEM_DEINTERLACE is not set @@ -5971,7 +6055,6 @@ CONFIG_VIDEO_SAA7134_RC=y CONFIG_VIDEO_SAA7146=m CONFIG_VIDEO_SAA7146_VV=m CONFIG_VIDEO_SAA7164=m -CONFIG_VIDEO_SAMSUNG_S5P_CEC=m # CONFIG_VIDEO_SH_MOBILE_CEU is not set # CONFIG_VIDEO_SH_MOBILE_CSI2 is not set # CONFIG_VIDEO_SH_VEU is not set @@ -6007,6 +6090,7 @@ CONFIG_VIDEO_ZORAN_ZR36060=m # CONFIG_VIRT_DRIVERS is not set CONFIG_VIRTIO_BALLOON=m CONFIG_VIRTIO_BLK=m +CONFIG_VIRTIO_BLK_SCSI=y CONFIG_VIRTIO_CONSOLE=m CONFIG_VIRTIO_INPUT=m # CONFIG_VIRTIO_MMIO_CMDLINE_DEVICES is not set @@ -6022,8 +6106,6 @@ CONFIG_VLAN_8021Q=m CONFIG_VLAN_8021Q_MVRP=y CONFIG_VLSI_FIR=m # CONFIG_VME_BUS is not set -CONFIG_VMWARE_BALLOON=m -CONFIG_VMWARE_PVSCSI=m # CONFIG_VMXNET3 is not set CONFIG_VORTEX=m CONFIG_VSOCKETS=m @@ -6045,6 +6127,7 @@ CONFIG_W1_MASTER_DS2490=m # CONFIG_W1_MASTER_GPIO is not set # CONFIG_W1_MASTER_MATROX is not set CONFIG_W1_SLAVE_BQ27000=m +CONFIG_W1_SLAVE_DS2405=m CONFIG_W1_SLAVE_DS2406=m CONFIG_W1_SLAVE_DS2408=m # CONFIG_W1_SLAVE_DS2408_READBACK is not set @@ -6117,6 +6200,7 @@ CONFIG_WM8350_POWER=m CONFIG_WM8350_WATCHDOG=m # CONFIG_WQ_POWER_EFFICIENT_DEFAULT is not set CONFIG_WQ_WATCHDOG=y +# CONFIG_WW_MUTEX_SELFTEST is not set # CONFIG_X25 is not set CONFIG_X86_BOOTPARAM_MEMORY_CORRUPTION_CHECK=y CONFIG_X86_PTDUMP=y diff --git a/kernel-aarch64.config b/kernel-aarch64.config index 45505fb61..37bd5d69c 100644 --- a/kernel-aarch64.config +++ b/kernel-aarch64.config @@ -145,7 +145,6 @@ CONFIG_ADAPTEC_STARFIRE=m # CONFIG_AF_KCM is not set # CONFIG_AF_RXRPC is not set # CONFIG_AFS_FS is not set -# CONFIG_AGP is not set # CONFIG_AHCI_CEVA is not set CONFIG_AHCI_MVEBU=m # CONFIG_AHCI_QORIQ is not set @@ -216,7 +215,7 @@ CONFIG_ARCH_HISI=y # CONFIG_ARCH_LAYERSCAPE is not set # CONFIG_ARCH_LG1K is not set # CONFIG_ARCH_MEDIATEK is not set -# CONFIG_ARCH_MESON is not set +CONFIG_ARCH_MESON=y CONFIG_ARCH_MVEBU=y CONFIG_ARCH_QCOM=y # CONFIG_ARCH_RENESAS is not set @@ -229,6 +228,7 @@ CONFIG_ARCH_TEGRA_132_SOC=y # CONFIG_ARCH_TEGRA_186_SOC is not set CONFIG_ARCH_TEGRA_210_SOC=y CONFIG_ARCH_TEGRA=y +CONFIG_ARCH_THUNDER2=y CONFIG_ARCH_THUNDER=y # CONFIG_ARCH_UNIPHIER is not set CONFIG_ARCH_VEXPRESS=y @@ -237,7 +237,7 @@ CONFIG_ARCH_XGENE=y # CONFIG_ARCH_ZX is not set # CONFIG_ARCH_ZYNQMP is not set # CONFIG_ARCNET is not set -CONFIG_ARM64_64K_PAGES=y +CONFIG_ARM64_4K_PAGES=y CONFIG_ARM64_ACPI_PARKING_PROTOCOL=y CONFIG_ARM64_CRYPTO=y CONFIG_ARM64_ERRATUM_819472=y @@ -259,6 +259,7 @@ CONFIG_ARM64_VA_BITS=48 CONFIG_ARM64_VA_BITS_48=y CONFIG_ARM64_VHE=y CONFIG_ARM64=y +CONFIG_ARMADA_AP806_SYSCON=y CONFIG_ARMADA_THERMAL=m CONFIG_ARM_AMBA=y CONFIG_ARM_ARCH_TIMER_EVTSTREAM=y @@ -453,7 +454,6 @@ CONFIG_BATMAN_ADV_NC=y # CONFIG_BATTERY_DS2781 is not set # CONFIG_BATTERY_DS2782 is not set # CONFIG_BATTERY_GAUGE_LTC2941 is not set -# CONFIG_BATTERY_GOLDFISH is not set # CONFIG_BATTERY_MAX17040 is not set # CONFIG_BATTERY_MAX17042 is not set # CONFIG_BATTERY_SBS is not set @@ -501,6 +501,7 @@ CONFIG_BINFMT_SCRIPT=y CONFIG_BLK_CGROUP=y # CONFIG_BLK_CMDLINE_PARSER is not set CONFIG_BLK_CPQ_CISS_DA=m +CONFIG_BLK_DEBUG_FS=y # CONFIG_BLK_DEV_3W_XXXX_RAID is not set CONFIG_BLK_DEV_BSGLIB=y CONFIG_BLK_DEV_BSG=y @@ -539,6 +540,7 @@ CONFIG_BLK_DEV_THROTTLING=y CONFIG_BLK_DEV_UMEM=m CONFIG_BLK_DEV=y CONFIG_BLK_DEV_ZONED=y +CONFIG_BLK_SED_OPAL=y CONFIG_BLK_WBT_MQ=y # CONFIG_BLK_WBT_SQ is not set CONFIG_BLK_WBT=y @@ -636,6 +638,7 @@ CONFIG_BT_HCIUART_INTEL=y CONFIG_BT_HCIUART_LL=y CONFIG_BT_HCIUART=m CONFIG_BT_HCIUART_MRVL=y +CONFIG_BT_HCIUART_NOKIA=m CONFIG_BT_HCIUART_QCA=y CONFIG_BT_HCIVHCI=m CONFIG_BT_HIDP=m @@ -722,6 +725,7 @@ CONFIG_CARDMAN_4040=m CONFIG_CARL9170_LEDS=y CONFIG_CARL9170=m CONFIG_CASSINI=m +CONFIG_CAVIUM_CPT=m CONFIG_CAVIUM_ERRATUM_22375=y CONFIG_CAVIUM_ERRATUM_23144=y CONFIG_CAVIUM_ERRATUM_23154=y @@ -743,6 +747,7 @@ CONFIG_CEPH_LIB=m # CONFIG_CEPH_LIB_USE_DNS_RESOLVER is not set CONFIG_CFAG12864B=m CONFIG_CFAG12864B_RATE=20 +CONFIG_CFG80211_CRDA_SUPPORT=y CONFIG_CFG80211_DEBUGFS=y CONFIG_CFG80211_DEFAULT_PS=y # CONFIG_CFG80211_DEVELOPER_WARNINGS is not set @@ -760,13 +765,16 @@ CONFIG_CGROUP_NET_CLASSID=y CONFIG_CGROUP_NET_PRIO=y CONFIG_CGROUP_PERF=y CONFIG_CGROUP_PIDS=y +# CONFIG_CGROUP_RDMA is not set CONFIG_CGROUP_SCHED=y CONFIG_CGROUPS=y +CONFIG_CHARGER_AXP20X=m # CONFIG_CHARGER_BQ2415X is not set # CONFIG_CHARGER_BQ24190 is not set # CONFIG_CHARGER_BQ24257 is not set # CONFIG_CHARGER_BQ24735 is not set # CONFIG_CHARGER_BQ25890 is not set +# CONFIG_CHARGER_DETECTOR_MAX14656 is not set # CONFIG_CHARGER_GPIO is not set # CONFIG_CHARGER_ISP1704 is not set # CONFIG_CHARGER_LP8727 is not set @@ -775,6 +783,7 @@ CONFIG_CGROUPS=y # CONFIG_CHARGER_PCF50633 is not set # CONFIG_CHARGER_QCOM_SMBB is not set # CONFIG_CHARGER_RT9455 is not set +# CONFIG_CHARGER_SBS is not set CONFIG_CHARGER_SMB347=m CONFIG_CHECKPOINT_RESTORE=y CONFIG_CHELSIO_T1_1G=y @@ -818,6 +827,7 @@ CONFIG_CLS_U32_PERF=y CONFIG_CM32181=m # CONFIG_CM3232 is not set # CONFIG_CM3323 is not set +CONFIG_CM3605=m # CONFIG_CM36651 is not set CONFIG_CMA_ALIGNMENT=8 CONFIG_CMA_AREAS=7 @@ -839,20 +849,11 @@ CONFIG_CNIC=m # CONFIG_COMMON_CLK_CDCE925 is not set # CONFIG_COMMON_CLK_CS2000_CP is not set # CONFIG_COMMON_CLK_HI3516CV300 is not set -# CONFIG_COMMON_CLK_HI3519 is not set +CONFIG_COMMON_CLK_HI3519=m +CONFIG_COMMON_CLK_HI3660=y # CONFIG_COMMON_CLK_HI3798CV200 is not set CONFIG_COMMON_CLK_HI6220=y CONFIG_COMMON_CLK_MAX77686=m -# CONFIG_COMMON_CLK_MT2701_BDPSYS is not set -# CONFIG_COMMON_CLK_MT2701_ETHSYS is not set -# CONFIG_COMMON_CLK_MT2701_HIFSYS is not set -# CONFIG_COMMON_CLK_MT2701_IMGSYS is not set -# CONFIG_COMMON_CLK_MT2701 is not set -# CONFIG_COMMON_CLK_MT2701_MMSYS is not set -# CONFIG_COMMON_CLK_MT2701_VDECSYS is not set -# CONFIG_COMMON_CLK_MT8135 is not set -# CONFIG_COMMON_CLK_MT8173 is not set -# CONFIG_COMMON_CLK_OXNAS is not set CONFIG_COMMON_CLK_PWM=m CONFIG_COMMON_CLK_QCOM=m CONFIG_COMMON_CLK_RK808=m @@ -860,13 +861,16 @@ CONFIG_COMMON_CLK_SCPI=m # CONFIG_COMMON_CLK_SI514 is not set # CONFIG_COMMON_CLK_SI5351 is not set # CONFIG_COMMON_CLK_SI570 is not set +# CONFIG_COMMON_CLK_VC5 is not set CONFIG_COMMON_CLK_VERSATILE=y CONFIG_COMMON_CLK_XGENE=y # CONFIG_COMMON_CLK_XLNX_CLKWZRD is not set CONFIG_COMMON_CLK=y +# CONFIG_COMMON_RESET_HI3660 is not set CONFIG_COMMON_RESET_HI6220=m CONFIG_COMPACTION=y # CONFIG_COMPAT_BRK is not set +# CONFIG_COMPAT is not set # CONFIG_COMPILE_TEST is not set CONFIG_CONFIGFS_FS=y CONFIG_CONNECTOR=y @@ -911,12 +915,15 @@ CONFIG_CRC_T10DIF=y CONFIG_CROSS_COMPILE="" CONFIG_CROSS_MEMORY_ATTACH=y CONFIG_CRYPTO_842=m +CONFIG_CRYPTO_AES_ARM64_BS=m CONFIG_CRYPTO_AES_ARM64_CE_BLK=y CONFIG_CRYPTO_AES_ARM64_CE_CCM=y CONFIG_CRYPTO_AES_ARM64_CE=y +CONFIG_CRYPTO_AES_ARM64=m CONFIG_CRYPTO_AES_ARM64_NEON_BLK=y CONFIG_CRYPTO_AES_ARM_BS=y CONFIG_CRYPTO_AES_ARM=y +CONFIG_CRYPTO_AES_TI=m CONFIG_CRYPTO_AES=y CONFIG_CRYPTO_ANSI_CPRNG=m CONFIG_CRYPTO_ANUBIS=m @@ -930,12 +937,12 @@ CONFIG_CRYPTO_CAST6=m CONFIG_CRYPTO_CBC=y CONFIG_CRYPTO_CCM=m CONFIG_CRYPTO_CHACHA20=m +CONFIG_CRYPTO_CHACHA20_NEON=m CONFIG_CRYPTO_CHACHA20POLY1305=m CONFIG_CRYPTO_CMAC=m CONFIG_CRYPTO_CRC32_ARM64_CE=m CONFIG_CRYPTO_CRC32_ARM64=m CONFIG_CRYPTO_CRC32_ARM_CE=m -CONFIG_CRYPTO_CRC32C_INTEL=m CONFIG_CRYPTO_CRC32C_VPMSUM=m CONFIG_CRYPTO_CRC32C=y CONFIG_CRYPTO_CRC32=m @@ -1049,6 +1056,7 @@ CONFIG_DEBUG_BOOT_PARAMS=y # CONFIG_DEBUG_CREDENTIALS is not set CONFIG_DEBUG_DEVRES=y # CONFIG_DEBUG_DRIVER is not set +# CONFIG_DEBUG_EFI is not set # CONFIG_DEBUG_FORCE_WEAK_PER_CPU is not set CONFIG_DEBUG_FS=y # CONFIG_DEBUG_GPIO is not set @@ -1080,6 +1088,7 @@ CONFIG_DEBUG_OBJECTS_ENABLE_DEFAULT=1 # CONFIG_DEBUG_PERF_USE_VMALLOC is not set # CONFIG_DEBUG_PI_LIST is not set # CONFIG_DEBUG_PINCTRL is not set +# CONFIG_DEBUG_REFCOUNT is not set CONFIG_DEBUG_RODATA_TEST=y # CONFIG_DEBUG_RT_MUTEXES is not set CONFIG_DEBUG_SECTION_MISMATCH=y @@ -1116,6 +1125,7 @@ CONFIG_DEVFREQ_GOV_SIMPLE_ONDEMAND=m CONFIG_DEVFREQ_THERMAL=y # CONFIG_DEVKMEM is not set CONFIG_DEVMEM=y +# CONFIG_DEVPORT is not set CONFIG_DEVTMPFS_MOUNT=y CONFIG_DEVTMPFS=y # CONFIG_DGAP is not set @@ -1136,6 +1146,7 @@ CONFIG_DMA_OF=y # CONFIG_DMARD06 is not set # CONFIG_DMARD09 is not set CONFIG_DMARD10=m +# CONFIG_DMA_SUN6I is not set # CONFIG_DMATEST is not set CONFIG_DMA_VIRTUAL_CHANNELS=y CONFIG_DM_CACHE_CLEANER=m @@ -1191,6 +1202,7 @@ CONFIG_DRM_ANALOGIX_DP=m CONFIG_DRM_AST=m CONFIG_DRM_BOCHS=m CONFIG_DRM_CIRRUS_QEMU=m +# CONFIG_DRM_DEBUG_MM_SELFTEST is not set CONFIG_DRM_DP_AUX_CHARDEV=y CONFIG_DRM_DUMB_VGA_DAC=m CONFIG_DRM_DW_HDMI_I2S_AUDIO=m @@ -1201,18 +1213,10 @@ CONFIG_DRM_HISI_HIBMC=m CONFIG_DRM_HISI_KIRIN=m CONFIG_DRM_I2C_ADV7511_AUDIO=y CONFIG_DRM_I2C_ADV7511=m -# CONFIG_DRM_I2C_ADV7533 is not set +CONFIG_DRM_I2C_ADV7533=y CONFIG_DRM_I2C_CH7006=m CONFIG_DRM_I2C_NXP_TDA998X=m CONFIG_DRM_I2C_SIL164=m -# CONFIG_DRM_I810 is not set -# CONFIG_DRM_I915_ALPHA_SUPPORT is not set -CONFIG_DRM_I915_CAPTURE_ERROR=y -CONFIG_DRM_I915_COMPRESS_ERROR=y -CONFIG_DRM_I915_GVT_KVMGT=m -CONFIG_DRM_I915_GVT=y -CONFIG_DRM_I915=m -CONFIG_DRM_I915_USERPTR=y # CONFIG_DRM_LEGACY is not set CONFIG_DRM_LOAD_EDID_FIRMWARE=y CONFIG_DRM=m @@ -1227,7 +1231,7 @@ CONFIG_DRM_MSM=m CONFIG_DRM_MXSFB=m CONFIG_DRM_NOUVEAU_BACKLIGHT=y CONFIG_DRM_NOUVEAU=m -# CONFIG_DRM_NXP_PTN3460 is not set +CONFIG_DRM_NXP_PTN3460=m # CONFIG_DRM_PANEL_JDI_LT070ME05000 is not set CONFIG_DRM_PANEL_LG_LG4573=m CONFIG_DRM_PANEL_PANASONIC_VVX10F034N00=m @@ -1237,7 +1241,7 @@ CONFIG_DRM_PANEL_SHARP_LQ101R1SX01=m CONFIG_DRM_PANEL_SHARP_LS043T1LE01=m CONFIG_DRM_PANEL_SIMPLE=m CONFIG_DRM_PANEL=y -# CONFIG_DRM_PARADE_PS8622 is not set +CONFIG_DRM_PARADE_PS8622=m CONFIG_DRM_QXL=m # CONFIG_DRM_R128 is not set CONFIG_DRM_RADEON=m @@ -1251,6 +1255,7 @@ CONFIG_DRM_SIL_SII8620=m # CONFIG_DRM_TEGRA_DEBUG is not set CONFIG_DRM_TEGRA=m CONFIG_DRM_TEGRA_STAGING=y +CONFIG_DRM_TINYDRM=m CONFIG_DRM_TI_TFP410=m # CONFIG_DRM_TOSHIBA_TC358767 is not set CONFIG_DRM_UDL=m @@ -1258,8 +1263,6 @@ CONFIG_DRM_VC4=m CONFIG_DRM_VGEM=m CONFIG_DRM_VIA=m CONFIG_DRM_VIRTIO_GPU=m -CONFIG_DRM_VMWGFX_FBCON=y -# CONFIG_DRM_VMWGFX is not set # CONFIG_DS1682 is not set # CONFIG_DS1803 is not set # CONFIG_DT3155 is not set @@ -1347,13 +1350,18 @@ CONFIG_DVB_USB_UMT_010=m CONFIG_DVB_USB_V2=m CONFIG_DVB_USB_VP702X=m CONFIG_DVB_USB_VP7045=m +CONFIG_DVB_USB_ZD1301=m # CONFIG_DW_DMAC_BIG_ENDIAN_IO is not set CONFIG_DW_DMAC_CORE=m CONFIG_DW_DMAC=m CONFIG_DW_DMAC_PCI=m -# CONFIG_DWMAC_IPQ806X is not set +# CONFIG_DWMAC_DWC_QOS_ETH is not set +CONFIG_DWMAC_GENERIC=m +CONFIG_DWMAC_IPQ806X=m CONFIG_DWMAC_MESON=m CONFIG_DWMAC_ROCKCHIP=m +CONFIG_DWMAC_SUN8I=m +CONFIG_DWMAC_SUNXI=m CONFIG_DW_WATCHDOG=m CONFIG_DYNAMIC_DEBUG=y CONFIG_DYNAMIC_FTRACE=y @@ -1376,6 +1384,7 @@ CONFIG_EEPROM_93CX6=m # CONFIG_EEPROM_93XX46 is not set CONFIG_EEPROM_AT24=m CONFIG_EEPROM_AT25=m +CONFIG_EEPROM_IDT_89HPESX=m CONFIG_EEPROM_LEGACY=m CONFIG_EEPROM_MAX6875=m # CONFIG_EFI_ALLOW_SECURE_BOOT_EXIT is not set @@ -1426,6 +1435,7 @@ CONFIG_EXT4_USE_FOR_EXT2=y CONFIG_EXTCON_ADC_JACK=m CONFIG_EXTCON_AXP288=m CONFIG_EXTCON_GPIO=m +CONFIG_EXTCON_INTEL_INT3496=m CONFIG_EXTCON=m # CONFIG_EXTCON_MAX3355 is not set # CONFIG_EXTCON_QCOM_SPMI_MISC is not set @@ -1454,7 +1464,6 @@ CONFIG_FAT_DEFAULT_IOCHARSET="ascii" CONFIG_FAT_FS=m # CONFIG_FAULT_INJECTION is not set # CONFIG_FB_3DFX is not set -# CONFIG_FB_ARC is not set # CONFIG_FB_ARK is not set CONFIG_FB_ARMCLCD=y # CONFIG_FB_ASILIANT is not set @@ -1472,18 +1481,11 @@ CONFIG_FB_ATY_BACKLIGHT=y # CONFIG_FB_DA8XX is not set CONFIG_FB_EFI=y # CONFIG_FB_FOREIGN_ENDIAN is not set -# CONFIG_FB_GEODE is not set -# CONFIG_FB_GOLDFISH is not set # CONFIG_FB_HECUBA is not set -# CONFIG_FB_HGA is not set # CONFIG_FB_I740 is not set -CONFIG_FB_I810_GTF=y -CONFIG_FB_I810_I2C=y -CONFIG_FB_I810=m # CONFIG_FB_IBM_GXT4500 is not set # CONFIG_FB_IMSTT is not set # CONFIG_FB_KYRO is not set -# CONFIG_FB_LE80578 is not set # CONFIG_FB_MATROX_G is not set # CONFIG_FB_MATROX_I2C is not set # CONFIG_FB_MATROX is not set @@ -1527,9 +1529,6 @@ CONFIG_FB_TILEBLITTING=y # CONFIG_FB_UDL is not set # CONFIG_FB_UVESA is not set CONFIG_FB_VESA=y -CONFIG_FB_VGA16=m -# CONFIG_FB_VIA_DIRECT_PROCFS is not set -# CONFIG_FB_VIA is not set CONFIG_FB_VIRTUAL=m # CONFIG_FB_VOODOO1 is not set # CONFIG_FB_VT8623 is not set @@ -1557,7 +1556,7 @@ CONFIG_FMC_TRIVIAL=m CONFIG_FMC_WRITE_EEPROM=m # CONFIG_FONTS is not set CONFIG_FORCEDETH=m -CONFIG_FORCE_MAX_ZONEORDER=11 +CONFIG_FORCE_MAX_ZONEORDER=13 # CONFIG_FPGA is not set CONFIG_FRAMEBUFFER_CONSOLE_DETECT_PRIMARY=y CONFIG_FRAMEBUFFER_CONSOLE_ROTATION=y @@ -1572,6 +1571,7 @@ CONFIG_FSCACHE_OBJECT_LIST=y CONFIG_FSCACHE_STATS=y CONFIG_FS_DAX=y CONFIG_FS_ENCRYPTION=y +CONFIG_FSI=m # CONFIG_FSL_EDMA is not set CONFIG_FSL_ERRATUM_A008585=y # CONFIG_FSL_MC_BUS is not set @@ -1638,13 +1638,12 @@ CONFIG_GIRBIL_DONGLE=m # CONFIG_GPIO_ADNP is not set # CONFIG_GPIO_ADP5588 is not set # CONFIG_GPIO_ALTERA is not set -# CONFIG_GPIO_AMD8111 is not set # CONFIG_GPIO_AMDPT is not set CONFIG_GPIO_AXP209=m # CONFIG_GPIO_BT8XX is not set -# CONFIG_GPIO_CS5535 is not set CONFIG_GPIO_DEVRES=y CONFIG_GPIO_DWAPB=m +CONFIG_GPIO_EXAR=m CONFIG_GPIO_GENERIC_PLATFORM=y CONFIG_GPIO_GENERIC=y # CONFIG_GPIO_GRGPIO is not set @@ -1656,7 +1655,6 @@ CONFIG_GPIOLIB=y CONFIG_GPIO_MAX77620=m # CONFIG_GPIO_MC33880 is not set # CONFIG_GPIO_MCP23S08 is not set -# CONFIG_GPIO_ML_IOH is not set # CONFIG_GPIO_MOCKUP is not set # CONFIG_GPIO_MPC8XXX is not set CONFIG_GPIO_MVEBU=y @@ -1664,32 +1662,30 @@ CONFIG_GPIO_PCA953X_IRQ=y CONFIG_GPIO_PCA953X=m # CONFIG_GPIO_PCF857X is not set # CONFIG_GPIO_PCH is not set +CONFIG_GPIO_PCI_IDIO_16=m # CONFIG_GPIO_PISOSR is not set CONFIG_GPIO_PL061=y # CONFIG_GPIO_RDC321X is not set # CONFIG_GPIO_SCH311X is not set -# CONFIG_GPIO_SCH is not set # CONFIG_GPIO_SX150X is not set # CONFIG_GPIO_SYSCON is not set -CONFIG_GPIO_SYSFS=y +# CONFIG_GPIO_SYSFS is not set CONFIG_GPIO_TEGRA=y # CONFIG_GPIO_TPIC2810 is not set # CONFIG_GPIO_TS4900 is not set # CONFIG_GPIO_TS5500 is not set CONFIG_GPIO_VIPERBOARD=m -# CONFIG_GPIO_VX855 is not set CONFIG_GPIO_WATCHDOG=m # CONFIG_GPIO_WS16C48 is not set CONFIG_GPIO_XGENE_SB=m CONFIG_GPIO_XGENE=y # CONFIG_GPIO_XILINX is not set -# CONFIG_GPIO_ZX is not set CONFIG_GREENASIA_FF=y # CONFIG_GREYBUS is not set # CONFIG_GS_FPGABOOT is not set CONFIG_GTP=m CONFIG_HAMACHI=m -# CONFIG_HAMRADIO is not set +CONFIG_HAMRADIO=y CONFIG_HANGCHECK_TIMER=m CONFIG_HAPPYMEAL=m CONFIG_HARDENED_USERCOPY=y @@ -1833,6 +1829,7 @@ CONFIG_HISAX_TELES_CS=m CONFIG_HISAX_TELESPCI=y CONFIG_HISAX_W6692=y CONFIG_HISI_KIRIN_DW_DSI=m +CONFIG_HISILICON_ERRATUM_161010101=y CONFIG_HISILICON_IRQ_MBIGEN=y CONFIG_HISI_THERMAL=m CONFIG_HIST_TRIGGERS=y @@ -1886,6 +1883,7 @@ CONFIG_HW_RANDOM_XGENE=m CONFIG_HW_RANDOM=y CONFIG_HWSPINLOCK=m CONFIG_HWSPINLOCK_QCOM=m +# CONFIG_HX711 is not set CONFIG_HYSDN_CAPI=y CONFIG_HYSDN=m CONFIG_HZ=100 @@ -1924,7 +1922,6 @@ CONFIG_I2C_HELPER_AUTO=y CONFIG_I2C_HID=m # CONFIG_I2C_HIX5HD2 is not set # CONFIG_I2C_I801 is not set -CONFIG_I2C_IMX_LPI2C=m # CONFIG_I2C_ISCH is not set CONFIG_I2C_MESON=m CONFIG_I2C_MLXCPLD=m @@ -1960,6 +1957,7 @@ CONFIG_I2C_SLAVE_EEPROM=m CONFIG_I2C_SLAVE=y CONFIG_I2C_STUB=m # CONFIG_I2C_TAOS_EVM is not set +CONFIG_I2C_TEGRA_BPMP=m CONFIG_I2C_TEGRA=m CONFIG_I2C_THUNDERX=m CONFIG_I2C_TINY_USB=m @@ -1978,8 +1976,6 @@ CONFIG_I40EVF=m CONFIG_I6300ESB_WDT=m CONFIG_I82092=m # CONFIG_IAQCORE is not set -CONFIG_IB700_WDT=m -CONFIG_IBMASR=m CONFIG_ICPLUS_PHY=m # CONFIG_ICS932S401 is not set # CONFIG_IDE is not set @@ -2021,6 +2017,7 @@ CONFIG_IIO_ST_ACCEL_SPI_3AXIS=m CONFIG_IIO_ST_GYRO_3AXIS=m CONFIG_IIO_ST_GYRO_I2C_3AXIS=m CONFIG_IIO_ST_GYRO_SPI_3AXIS=m +# CONFIG_IIO_ST_LSM6DSX is not set CONFIG_IIO_ST_MAGN_3AXIS=m CONFIG_IIO_ST_PRESS_I2C=m CONFIG_IIO_ST_PRESS=m @@ -2040,6 +2037,7 @@ CONFIG_IMA_MEASURE_PCR_IDX=10 # CONFIG_INA2XX_ADC is not set CONFIG_INET6_AH=m CONFIG_INET6_ESP=m +CONFIG_INET6_ESP_OFFLOAD=m CONFIG_INET6_IPCOMP=m CONFIG_INET6_XFRM_MODE_BEET=m CONFIG_INET6_XFRM_MODE_ROUTEOPTIMIZATION=m @@ -2049,6 +2047,7 @@ CONFIG_INET_AH=m CONFIG_INET_DIAG_DESTROY=y CONFIG_INET_DIAG=m CONFIG_INET_ESP=m +CONFIG_INET_ESP_OFFLOAD=m CONFIG_INET_IPCOMP=m CONFIG_INET_RAW_DIAG=m CONFIG_INET_TUNNEL=m @@ -2057,6 +2056,7 @@ CONFIG_INET_XFRM_MODE_BEET=m CONFIG_INET_XFRM_MODE_TRANSPORT=m CONFIG_INET_XFRM_MODE_TUNNEL=m CONFIG_INET=y +# CONFIG_INFINIBAND_BNXT_RE is not set # CONFIG_INFINIBAND_CXGB3_DEBUG is not set CONFIG_INFINIBAND_CXGB3=m CONFIG_INFINIBAND_CXGB4=m @@ -2152,8 +2152,6 @@ CONFIG_INPUT=y CONFIG_INPUT_YEALINK=m # CONFIG_INTEGRITY is not set # CONFIG_INTEL_IDMA64 is not set -# CONFIG_INTEL_MENLOW is not set -CONFIG_INTEL_RDT_A=y # CONFIG_INTEL_SOC_PMIC is not set # CONFIG_INTEL_TH is not set CONFIG_INTEL_XWAY_PHY=m @@ -2163,6 +2161,7 @@ CONFIG_INTEL_XWAY_PHY=m # CONFIG_INV_MPU6050_SPI is not set # CONFIG_IOMMU_IO_PGTABLE_ARMV7S is not set # CONFIG_IOMMU_IO_PGTABLE_LPAE_SELFTEST is not set +CONFIG_IOMMU_IO_PGTABLE_LPAE=y CONFIG_IOMMU_SUPPORT=y CONFIG_IOSCHED_CFQ=y CONFIG_IOSCHED_DEADLINE=y @@ -2304,6 +2303,7 @@ CONFIG_IP_VS_SH_TAB_BITS=8 CONFIG_IP_VS_TAB_BITS=12 CONFIG_IP_VS_WLC=m CONFIG_IP_VS_WRR=m +CONFIG_IPVTAP=m # CONFIG_IPW2100_DEBUG is not set # CONFIG_IPW2100 is not set # CONFIG_IPW2200_DEBUG is not set @@ -2346,6 +2346,7 @@ CONFIG_IR_SERIAL=m CONFIG_IR_SERIAL_TRANSMITTER=y CONFIG_IR_SHARP_DECODER=m CONFIG_IR_SONY_DECODER=m +CONFIG_IR_SPI=m CONFIG_IR_STREAMZAP=m CONFIG_IR_SUNXI=m CONFIG_IR_TTUSBIR=m @@ -2502,6 +2503,7 @@ CONFIG_KEYBOARD_PMIC8XXX=m # CONFIG_KEYBOARD_TCA6416 is not set # CONFIG_KEYBOARD_TCA8418 is not set CONFIG_KEYBOARD_TEGRA=m +CONFIG_KEYBOARD_TM2_TOUCHKEY=m # CONFIG_KEYBOARD_XTKBD is not set CONFIG_KEY_DH_OPERATIONS=y CONFIG_KEYS=y @@ -2513,7 +2515,7 @@ CONFIG_KGDB_TESTS=y CONFIG_KGDB=y CONFIG_KINGSUN_DONGLE=m # CONFIG_KMX61 is not set -CONFIG_KPROBE_EVENT=y +CONFIG_KPROBE_EVENTS=y # CONFIG_KPROBES_SANITY_TEST is not set CONFIG_KPROBES=y CONFIG_KS0108_DELAY=2 @@ -2560,13 +2562,14 @@ CONFIG_LDM_PARTITION=y # CONFIG_LEDS_BCM6358 is not set # CONFIG_LEDS_BD2802 is not set CONFIG_LEDS_BLINKM=m +CONFIG_LEDS_BRIGHTNESS_HW_CHANGED=y CONFIG_LEDS_CLASS_FLASH=m CONFIG_LEDS_CLASS=y CONFIG_LEDS_CLEVO_MAIL=m # CONFIG_LEDS_DAC124S085 is not set CONFIG_LEDS_DELL_NETBOOKS=m -# CONFIG_LEDS_GPIO is not set -CONFIG_LEDS_INTEL_SS4200=m +CONFIG_LEDS_GPIO=m +CONFIG_LEDS_GPIO_REGISTER=y # CONFIG_LEDS_IS31FL319X is not set # CONFIG_LEDS_IS31FL32XX is not set # CONFIG_LEDS_KTD2692 is not set @@ -2590,15 +2593,15 @@ CONFIG_LEDS_NIC78BX=m # CONFIG_LEDS_PCA9532 is not set # CONFIG_LEDS_PCA955X is not set # CONFIG_LEDS_PCA963X is not set -# CONFIG_LEDS_PWM is not set +CONFIG_LEDS_PWM=m CONFIG_LEDS_REGULATOR=m # CONFIG_LEDS_S3C24XX is not set -# CONFIG_LEDS_SYSCON is not set +CONFIG_LEDS_SYSCON=y # CONFIG_LEDS_TCA6507 is not set # CONFIG_LEDS_TLC591XX is not set CONFIG_LEDS_TRIGGER_BACKLIGHT=m CONFIG_LEDS_TRIGGER_CAMERA=m -# CONFIG_LEDS_TRIGGER_CPU is not set +CONFIG_LEDS_TRIGGER_CPU=y CONFIG_LEDS_TRIGGER_DEFAULT_ON=m CONFIG_LEDS_TRIGGER_DISK=y CONFIG_LEDS_TRIGGER_GPIO=m @@ -2675,6 +2678,8 @@ CONFIG_LOOPBACK_TARGET=m # CONFIG_LPC_ICH is not set CONFIG_LP_CONSOLE=y # CONFIG_LPC_SCH is not set +CONFIG_LPFC_NVME_INITIATOR=y +CONFIG_LPFC_NVME_TARGET=y CONFIG_LSI_ET1011C_PHY=m CONFIG_LSM_MMAP_MIN_ADDR=65536 # CONFIG_LTC2485 is not set @@ -2707,6 +2712,7 @@ CONFIG_MACVLAN=m CONFIG_MACVTAP=m # CONFIG_MAG3110 is not set CONFIG_MAGIC_SYSRQ_DEFAULT_ENABLE=0x0 +CONFIG_MAGIC_SYSRQ_SERIAL=y CONFIG_MAGIC_SYSRQ=y # CONFIG_MAILBOX_TEST is not set CONFIG_MAILBOX=y @@ -2714,10 +2720,12 @@ CONFIG_MAILBOX=y CONFIG_MANTIS_CORE=m CONFIG_MARVELL_PHY=m # CONFIG_MAX1027 is not set +# CONFIG_MAX11100 is not set # CONFIG_MAX1363 is not set CONFIG_MAX30100=m # CONFIG_MAX44000 is not set # CONFIG_MAX517 is not set +# CONFIG_MAX5481 is not set # CONFIG_MAX5487 is not set # CONFIG_MAX5821 is not set # CONFIG_MAX63XX_WATCHDOG is not set @@ -2799,6 +2807,7 @@ CONFIG_MEMSTICK_TIFM_MS=m CONFIG_MESON_EFUSE=m CONFIG_MESON_GXBB_WATCHDOG=m CONFIG_MESON_GXL_PHY=m +CONFIG_MESON_SARADC=m CONFIG_MESON_SM=y # CONFIG_MESON_WATCHDOG is not set CONFIG_MESSAGE_LOGLEVEL_DEFAULT=4 @@ -2821,6 +2830,7 @@ CONFIG_MFD_AXP20X_RSB=m CONFIG_MFD_AXP20X=y # CONFIG_MFD_BCM590XX is not set CONFIG_MFD_CORE=y +CONFIG_MFD_CPCAP=m # CONFIG_MFD_CROS_EC is not set # CONFIG_MFD_CS5535 is not set # CONFIG_MFD_DA9052_I2C is not set @@ -2840,7 +2850,7 @@ CONFIG_MFD_HI655X_PMIC=m # CONFIG_MFD_LP8788 is not set # CONFIG_MFD_MAX14577 is not set CONFIG_MFD_MAX77620=y -# CONFIG_MFD_MAX77686 is not set +CONFIG_MFD_MAX77686=y # CONFIG_MFD_MAX77693 is not set # CONFIG_MFD_MAX77843 is not set # CONFIG_MFD_MAX8907 is not set @@ -2950,6 +2960,7 @@ CONFIG_MMA7660=m # CONFIG_MMA9553 is not set # CONFIG_MMC35240 is not set CONFIG_MMC_ARMMMCI=m +CONFIG_MMC_BCM2835=m CONFIG_MMC_BLOCK_BOUNCE=y CONFIG_MMC_BLOCK=m CONFIG_MMC_BLOCK_MINORS=8 @@ -3021,7 +3032,6 @@ CONFIG_MOUSE_ELAN_I2C_SMBUS=y CONFIG_MOUSE_PS2_ELANTECH=y CONFIG_MOUSE_PS2_SENTELIC=y # CONFIG_MOUSE_PS2_TOUCHKIT is not set -# CONFIG_MOUSE_PS2_VMMOUSE is not set CONFIG_MOUSE_PS2=y CONFIG_MOUSE_SERIAL=m CONFIG_MOUSE_SYNAPTICS_I2C=m @@ -3037,6 +3047,7 @@ CONFIG_MOVABLE_NODE=y CONFIG_MPLS_IPTUNNEL=m CONFIG_MPLS_ROUTING=m # CONFIG_MPU3050_I2C is not set +CONFIG_MQ_IOSCHED_DEADLINE=y # CONFIG_MS5611 is not set # CONFIG_MS5637 is not set # CONFIG_MS_BLOCK is not set @@ -3101,6 +3112,7 @@ CONFIG_MTD_OF_PARTS=m # CONFIG_MTD_PHRAM is not set # CONFIG_MTD_PHYSMAP_COMPAT is not set CONFIG_MTD_PHYSMAP=m +# CONFIG_MTD_PHYSMAP_OF_GEMINI is not set CONFIG_MTD_PHYSMAP_OF=m CONFIG_MTD_PHYSMAP_OF_VERSATILE=y # CONFIG_MTD_PLATRAM is not set @@ -3129,6 +3141,7 @@ CONFIG_MVEBU_MBUS=y CONFIG_MVMDIO=m CONFIG_MVNETA_BM_ENABLE=m CONFIG_MVNETA=m +CONFIG_MVPP2=m # CONFIG_MV_XOR_V2 is not set CONFIG_MV_XOR=y CONFIG_MWAVE=m @@ -3172,6 +3185,7 @@ CONFIG_NET_ACT_MIRRED=m CONFIG_NET_ACT_NAT=m CONFIG_NET_ACT_PEDIT=m CONFIG_NET_ACT_POLICE=m +CONFIG_NET_ACT_SAMPLE=m CONFIG_NET_ACT_SIMP=m CONFIG_NET_ACT_SKBEDIT=m CONFIG_NET_ACT_SKBMOD=m @@ -3305,6 +3319,7 @@ CONFIG_NETFILTER_XT_TARGET_TRACE=m CONFIG_NETFILTER=y CONFIG_NET_FOU_IP_TUNNELS=y CONFIG_NET_FOU=m +CONFIG_NET_IFE=m CONFIG_NET_IFE_SKBMARK=m CONFIG_NET_IFE_SKBPRIO=m CONFIG_NET_IFE_SKBTCINDEX=m @@ -3315,7 +3330,7 @@ CONFIG_NET_IPIP=m CONFIG_NET_IPVTI=m CONFIG_NET_KEY=m CONFIG_NET_KEY_MIGRATE=y -# CONFIG_NET_L3_MASTER_DEV is not set +CONFIG_NET_L3_MASTER_DEV=y CONFIG_NETLABEL=y CONFIG_NETLINK_DIAG=m CONFIG_NET_MPLS_GSO=m @@ -3369,8 +3384,9 @@ CONFIG_NET_VENDOR_AGERE=y # CONFIG_NET_VENDOR_ALACRITECH is not set CONFIG_NET_VENDOR_ALLWINNER=y CONFIG_NET_VENDOR_ALTEON=y -# CONFIG_NET_VENDOR_AMAZON is not set +CONFIG_NET_VENDOR_AMAZON=y CONFIG_NET_VENDOR_AMD=y +# CONFIG_NET_VENDOR_AQUANTIA is not set CONFIG_NET_VENDOR_ARC=y CONFIG_NET_VENDOR_ATHEROS=y # CONFIG_NET_VENDOR_AURORA is not set @@ -3494,6 +3510,8 @@ CONFIG_NF_LOG_IPV6=m CONFIG_NF_LOG_NETDEV=m CONFIG_NF_NAT=m CONFIG_NF_NAT_SNMP_BASIC=m +# CONFIG_NFP_DEBUG is not set +CONFIG_NFP=m # CONFIG_NFP_NET_DEBUG is not set CONFIG_NFP_NETVF=m CONFIG_NF_REJECT_IPV6=m @@ -3565,6 +3583,7 @@ CONFIG_NFT_REDIR=m CONFIG_NFT_REJECT_IPV4=m CONFIG_NFT_REJECT=m CONFIG_NFT_RT=m +CONFIG_NFT_SET_BITMAP=m CONFIG_NFT_SET_HASH=m CONFIG_NFT_SET_RBTREE=m CONFIG_N_GSM=m @@ -3711,6 +3730,7 @@ CONFIG_PANTHERLORD_FF=y CONFIG_PARAVIRT_TIME_ACCOUNTING=y CONFIG_PARAVIRT=y # CONFIG_PARIDE is not set +CONFIG_PARMAN=m CONFIG_PARPORT_1284=y # CONFIG_PARPORT_AX88796 is not set # CONFIG_PARPORT is not set @@ -3770,6 +3790,7 @@ CONFIG_PATA_TOSHIBA=m CONFIG_PATA_TRIFLEX=m CONFIG_PATA_VIA=m CONFIG_PATA_WINBOND=m +# CONFIG_PC104 is not set # CONFIG_PC87413_WDT is not set CONFIG_PCCARD=y CONFIG_PCC=y @@ -3844,6 +3865,8 @@ CONFIG_PHY_MVEBU_SATA=y # CONFIG_PHY_QCOM_APQ8064_SATA is not set # CONFIG_PHY_QCOM_IPQ806X_SATA is not set # CONFIG_PHY_QCOM_UFS is not set +CONFIG_PHY_QCOM_USB_HSIC=m +CONFIG_PHY_QCOM_USB_HS=m CONFIG_PHY_ROCKCHIP_DP=m CONFIG_PHY_ROCKCHIP_EMMC=m CONFIG_PHY_ROCKCHIP_INNO_USB2=m @@ -3853,7 +3876,7 @@ CONFIG_PHY_ROCKCHIP_USB=m # CONFIG_PHY_SAMSUNG_USB2 is not set # CONFIG_PHY_ST_SPEAR1310_MIPHY is not set # CONFIG_PHY_ST_SPEAR1340_MIPHY is not set -# CONFIG_PHY_SUN4I_USB is not set +CONFIG_PHY_SUN4I_USB=m # CONFIG_PHY_SUN9I_USB is not set CONFIG_PHY_TEGRA_XUSB=m # CONFIG_PHY_TUSB1210 is not set @@ -3867,6 +3890,7 @@ CONFIG_PINCTRL_AMD=y # CONFIG_PINCTRL_BAYTRAIL is not set # CONFIG_PINCTRL_BROXTON is not set # CONFIG_PINCTRL_CHERRYVIEW is not set +# CONFIG_PINCTRL_GEMINILAKE is not set # CONFIG_PINCTRL_IPQ4019 is not set # CONFIG_PINCTRL_IPQ8064 is not set CONFIG_PINCTRL_MAX77620=m @@ -3885,6 +3909,7 @@ CONFIG_PINCTRL_QDF2XXX=y CONFIG_PINCTRL_SINGLE=y # CONFIG_PINCTRL_SUNRISEPOINT is not set # CONFIG_PINCTRL_SX150X is not set +# CONFIG_PINCTRL_TI_IODELAY is not set CONFIG_PINCTRL=y CONFIG_PINMUX=y CONFIG_PKCS7_MESSAGE_PARSER=y @@ -3959,6 +3984,7 @@ CONFIG_PPTP=m CONFIG_PREEMPT_VOLUNTARY=y CONFIG_PREVENT_FIRMWARE_BUILD=y CONFIG_PRINTER=m +CONFIG_PRINTK_SAFE_LOG_BUF_SHIFT=12 CONFIG_PRINTK_TIME=y # CONFIG_PRINT_QUOTA_WARNING is not set # CONFIG_PRISM2_USB is not set @@ -3972,6 +3998,7 @@ CONFIG_PROC_VMCORE=y CONFIG_PROFILING=y # CONFIG_PROVE_LOCKING is not set # CONFIG_PROVE_RCU_REPEATEDLY is not set +CONFIG_PSAMPLE=m # CONFIG_PSTORE_CONSOLE is not set # CONFIG_PSTORE_FTRACE is not set # CONFIG_PSTORE_PMSG is not set @@ -3990,6 +4017,7 @@ CONFIG_PWM_SYSFS=y CONFIG_PWM_TEGRA=m CONFIG_PWM=y CONFIG_PWRSEQ_EMMC=m +# CONFIG_PWRSEQ_SD8787 is not set CONFIG_PWRSEQ_SIMPLE=m # CONFIG_QCA7000 is not set CONFIG_QCOM_ADSP_PIL=m @@ -3999,10 +4027,15 @@ CONFIG_QCOM_CLK_SMD_RPM=m CONFIG_QCOM_COINCELL=m # CONFIG_QCOM_EBI2 is not set CONFIG_QCOM_EMAC=m +# CONFIG_QCOM_FALKOR_ERRATUM_1003 is not set +CONFIG_QCOM_FALKOR_ERRATUM_1009=y CONFIG_QCOM_GSBI=y CONFIG_QCOM_HIDMA=m CONFIG_QCOM_HIDMA_MGMT=m +CONFIG_QCOM_IRQ_COMBINER=y +CONFIG_QCOM_L2_PMU=y # CONFIG_QCOM_Q6V5_PIL is not set +CONFIG_QCOM_QDF2400_ERRATUM_0065=y CONFIG_QCOM_QFPROM=m CONFIG_QCOM_SMD=m CONFIG_QCOM_SMD_RPM=m @@ -4017,6 +4050,7 @@ CONFIG_QCOM_WCNSS_CTRL=m # CONFIG_QCOM_WCNSS_PIL is not set CONFIG_QCOM_WDT=m CONFIG_QEDE=m +CONFIG_QEDF=m CONFIG_QEDI=m CONFIG_QED=m CONFIG_QED_SRIOV=y @@ -4030,6 +4064,7 @@ CONFIG_QLCNIC_SRIOV=y CONFIG_QLGE=m # CONFIG_QNX4FS_FS is not set # CONFIG_QNX6FS_FS is not set +# CONFIG_QORIQ_CPUFREQ is not set # CONFIG_QORIQ_THERMAL is not set # CONFIG_QRTR is not set CONFIG_QSEMI_PHY=m @@ -4064,7 +4099,6 @@ CONFIG_RADIO_TERRATEC=m CONFIG_RADIO_TRUST=m CONFIG_RADIO_TYPHOON=m CONFIG_RADIO_WL1273=m -# CONFIG_RADIO_WL128X is not set # depends on TI_ST which we don't enable CONFIG_RADIO_ZOLTRIX=m CONFIG_RAID_ATTRS=m # CONFIG_RANDOM32_SELFTEST is not set @@ -4116,6 +4150,7 @@ CONFIG_REGULATOR_ACT8865=m # CONFIG_REGULATOR_AD5398 is not set # CONFIG_REGULATOR_ANATOP is not set CONFIG_REGULATOR_AXP20X=m +CONFIG_REGULATOR_CPCAP=m # CONFIG_REGULATOR_DA9210 is not set # CONFIG_REGULATOR_DA9211 is not set # CONFIG_REGULATOR_DEBUG is not set @@ -4133,6 +4168,8 @@ CONFIG_REGULATOR_HI655X=m # CONFIG_REGULATOR_LTC3676 is not set # CONFIG_REGULATOR_MAX1586 is not set CONFIG_REGULATOR_MAX77620=m +CONFIG_REGULATOR_MAX77686=m +CONFIG_REGULATOR_MAX77802=m # CONFIG_REGULATOR_MAX8649 is not set # CONFIG_REGULATOR_MAX8660 is not set # CONFIG_REGULATOR_MAX8952 is not set @@ -4142,7 +4179,7 @@ CONFIG_REGULATOR_MAX77620=m # CONFIG_REGULATOR_PV88060 is not set # CONFIG_REGULATOR_PV88080 is not set # CONFIG_REGULATOR_PV88090 is not set -CONFIG_REGULATOR_PWM=m +CONFIG_REGULATOR_PWM=y CONFIG_REGULATOR_QCOM_RPM=m CONFIG_REGULATOR_QCOM_SMD_RPM=m CONFIG_REGULATOR_QCOM_SPMI=m @@ -4173,7 +4210,6 @@ CONFIG_RESET_HISI=y CONFIG_RFKILL_GPIO=m CONFIG_RFKILL_INPUT=y CONFIG_RFKILL=m -CONFIG_RFKILL_REGULATOR=m CONFIG_RING_BUFFER_BENCHMARK=m # CONFIG_RING_BUFFER_STARTUP_TEST is not set # CONFIG_RIO is not set @@ -4357,7 +4393,7 @@ CONFIG_S2IO=m # CONFIG_SAMPLES is not set # CONFIG_SAMSUNG_USBPHY is not set CONFIG_SATA_ACARD_AHCI=m -CONFIG_SATA_AHCI_PLATFORM=y +CONFIG_SATA_AHCI_PLATFORM=m CONFIG_SATA_AHCI_SEATTLE=m CONFIG_SATA_AHCI=y # CONFIG_SATA_DWC is not set @@ -4652,6 +4688,7 @@ CONFIG_SENSORS_SIS5595=m CONFIG_SENSORS_SMSC47B397=m CONFIG_SENSORS_SMSC47M192=m CONFIG_SENSORS_SMSC47M1=m +# CONFIG_SENSORS_STTS751 is not set CONFIG_SENSORS_TC654=m CONFIG_SENSORS_TC74=m CONFIG_SENSORS_THMC50=m @@ -4689,6 +4726,7 @@ CONFIG_SERIAL_8250_CS=m # CONFIG_SERIAL_8250_DEPRECATED_OPTIONS is not set # CONFIG_SERIAL_8250_DETECT_IRQ is not set CONFIG_SERIAL_8250_DW=y +CONFIG_SERIAL_8250_EXAR=m CONFIG_SERIAL_8250_EXTENDED=y # CONFIG_SERIAL_8250_FINTEK is not set # CONFIG_SERIAL_8250_INGENIC is not set @@ -4696,6 +4734,7 @@ CONFIG_SERIAL_8250_MANY_PORTS=y # CONFIG_SERIAL_8250_MID is not set CONFIG_SERIAL_8250_MOXA=m CONFIG_SERIAL_8250_NR_UARTS=32 +CONFIG_SERIAL_8250_PCI=m CONFIG_SERIAL_8250_RSA=y CONFIG_SERIAL_8250_RT288X=y CONFIG_SERIAL_8250_RUNTIME_UARTS=32 @@ -4711,6 +4750,8 @@ CONFIG_SERIAL_ARC_NR_PORTS=1 # CONFIG_SERIAL_CONEXANT_DIGICOLOR is not set CONFIG_SERIAL_CORE_CONSOLE=y CONFIG_SERIAL_CORE=y +CONFIG_SERIAL_DEV_BUS=y +CONFIG_SERIAL_DEV_CTRL_TTYPORT=y CONFIG_SERIAL_EARLYCON_ARM_SEMIHOST=y # CONFIG_SERIAL_FSL_LPUART is not set # CONFIG_SERIAL_IFX6X60 is not set @@ -4724,7 +4765,7 @@ CONFIG_SERIAL_MSM_CONSOLE=y CONFIG_SERIAL_MSM=y CONFIG_SERIAL_MVEBU_CONSOLE=y CONFIG_SERIAL_MVEBU_UART=y -CONFIG_SERIAL_NONSTANDARD=y +# CONFIG_SERIAL_NONSTANDARD is not set CONFIG_SERIAL_OF_PLATFORM=y # CONFIG_SERIAL_PCH_UART is not set # CONFIG_SERIAL_RP2 is not set @@ -4784,6 +4825,7 @@ CONFIG_SMARTJOYPLUS_FF=y CONFIG_SMC911X=m CONFIG_SMC91X=m CONFIG_SMC_IRCC_FIR=m +# CONFIG_SMC is not set # CONFIG_SM_FTL is not set CONFIG_SMP=y CONFIG_SMSC911X=m @@ -4892,6 +4934,7 @@ CONFIG_SND_INTEL8X0=m CONFIG_SND_INTEL8X0M=m CONFIG_SND_ISIGHT=m CONFIG_SND_JACK=y +# CONFIG_SND_KIRKWOOD_SOC is not set CONFIG_SND_KORG1212=m CONFIG_SND_LAYLA20=m CONFIG_SND_LAYLA24=m @@ -4929,8 +4972,9 @@ CONFIG_SND_SEQUENCER=m CONFIG_SND_SEQUENCER_OSS=y CONFIG_SND_SERIAL_U16550=m CONFIG_SND_SIMPLE_CARD=m -# CONFIG_SND_SIMPLE_SCU_CARD is not set +CONFIG_SND_SIMPLE_SCU_CARD=m CONFIG_SND_SIS7019=m +CONFIG_SND_SOC_AC97_CODEC=m # CONFIG_SND_SOC_ADAU1701 is not set # CONFIG_SND_SOC_ADAU7002 is not set # CONFIG_SND_SOC_AK4104 is not set @@ -4941,6 +4985,7 @@ CONFIG_SND_SIS7019=m # CONFIG_SND_SOC_ALC5623 is not set CONFIG_SND_SOC_ALL_CODECS=m CONFIG_SND_SOC_AMD_ACP=m +CONFIG_SND_SOC_APQ8016_SBC=m # CONFIG_SND_SOC_ARNDALE_RT5631_ALC5631 is not set # CONFIG_SND_SOC_BT_SCO is not set # CONFIG_SND_SOC_CS35L32 is not set @@ -4960,7 +5005,9 @@ CONFIG_SND_SOC_CS42L42=m # CONFIG_SND_SOC_CS4349 is not set # CONFIG_SND_SOC_CS53L30 is not set CONFIG_SND_SOC_DMIC=m -# CONFIG_SND_SOC_ES8328 is not set +CONFIG_SND_SOC_ES8328_I2C=m +CONFIG_SND_SOC_ES8328=m +CONFIG_SND_SOC_ES8328_SPI=m # CONFIG_SND_SOC_FSL_ASOC_CARD is not set # CONFIG_SND_SOC_FSL_ASRC is not set # CONFIG_SND_SOC_FSL_ESAI is not set @@ -4975,11 +5022,12 @@ CONFIG_SND_SOC_HDMI_CODEC=m # CONFIG_SND_SOC_IMX_AUDMUX is not set # CONFIG_SND_SOC_IMX_ES8328 is not set # CONFIG_SND_SOC_INNO_RK3036 is not set -# CONFIG_SND_SOC is not set +CONFIG_SND_SOC=m # CONFIG_SND_SOC_MAX98504 is not set # CONFIG_SND_SOC_MAX9860 is not set # CONFIG_SND_SOC_MSM8916_WCD_ANALOG is not set # CONFIG_SND_SOC_MSM8916_WCD_DIGITAL is not set +# CONFIG_SND_SOC_NAU8540 is not set # CONFIG_SND_SOC_NAU8810 is not set # CONFIG_SND_SOC_PCM1681 is not set # CONFIG_SND_SOC_PCM179X_I2C is not set @@ -4990,6 +5038,9 @@ CONFIG_SND_SOC_HDMI_CODEC=m CONFIG_SND_SOC_PCM512x_I2C=m CONFIG_SND_SOC_PCM512x=m CONFIG_SND_SOC_PCM512x_SPI=m +CONFIG_SND_SOC_QCOM=m +CONFIG_SND_SOC_RK3288_HDMI_ANALOG=m +CONFIG_SND_SOC_RK3399_GRU_SOUND=m CONFIG_SND_SOC_ROCKCHIP_I2S=m CONFIG_SND_SOC_ROCKCHIP=m CONFIG_SND_SOC_ROCKCHIP_MAX98090=m @@ -4997,7 +5048,7 @@ CONFIG_SND_SOC_ROCKCHIP_RT5645=m CONFIG_SND_SOC_ROCKCHIP_SPDIF=m # CONFIG_SND_SOC_RT5616 is not set # CONFIG_SND_SOC_RT5631 is not set -# CONFIG_SND_SOC_SGTL5000 is not set +CONFIG_SND_SOC_SGTL5000=m # CONFIG_SND_SOC_SIRF_AUDIO_CODEC is not set CONFIG_SND_SOC_SPDIF=m # CONFIG_SND_SOC_SSM2602_I2C is not set @@ -5006,16 +5057,28 @@ CONFIG_SND_SOC_SPDIF=m # CONFIG_SND_SOC_STA32X is not set # CONFIG_SND_SOC_STA350 is not set # CONFIG_SND_SOC_STI_SAS is not set +# CONFIG_SND_SOC_STORM is not set # CONFIG_SND_SOC_TAS2552 is not set # CONFIG_SND_SOC_TAS5086 is not set +# CONFIG_SND_SOC_TAS571X is not set # CONFIG_SND_SOC_TAS5720 is not set +# CONFIG_SND_SOC_TEGRA_ALC5632 is not set +CONFIG_SND_SOC_TEGRA=m +CONFIG_SND_SOC_TEGRA_MAX98090=m +CONFIG_SND_SOC_TEGRA_RT5640=m +CONFIG_SND_SOC_TEGRA_RT5677=m +CONFIG_SND_SOC_TEGRA_SGTL5000=m +# CONFIG_SND_SOC_TEGRA_TRIMSLICE is not set +# CONFIG_SND_SOC_TEGRA_WM8753 is not set +# CONFIG_SND_SOC_TEGRA_WM8903 is not set +# CONFIG_SND_SOC_TEGRA_WM9712 is not set # CONFIG_SND_SOC_TFA9879 is not set # CONFIG_SND_SOC_TLV320AIC23_I2C is not set # CONFIG_SND_SOC_TLV320AIC23_SPI is not set # CONFIG_SND_SOC_TLV320AIC31XX is not set # CONFIG_SND_SOC_TLV320AIC3X is not set CONFIG_SND_SOC_TPA6130A2=m -# CONFIG_SND_SOC_TS3A227E is not set +CONFIG_SND_SOC_TS3A227E=m # CONFIG_SND_SOC_WM8510 is not set # CONFIG_SND_SOC_WM8523 is not set # CONFIG_SND_SOC_WM8580 is not set @@ -5041,7 +5104,10 @@ CONFIG_SND_SOC_WM8804_SPI=m CONFIG_SND_SONICVIBES=m # CONFIG_SND_SPI is not set CONFIG_SND_SUN4I_CODEC=m +CONFIG_SND_SUN4I_I2S=m +CONFIG_SND_SUN4I_SPDIF=m CONFIG_SND_SUN8I_CODEC_ANALOG=m +CONFIG_SND_SUN8I_CODEC=m # CONFIG_SND_SUPPORT_OLD_API is not set CONFIG_SND_TRIDENT=m CONFIG_SND_USB_6FIRE=m @@ -5067,6 +5133,7 @@ CONFIG_SND_VX222=m CONFIG_SND_YMFPCI=m # CONFIG_SOC_CAMERA is not set # CONFIG_SOC_TI is not set +# CONFIG_SOC_ZTE is not set CONFIG_SOFT_WATCHDOG=m CONFIG_SOLARIS_X86_PARTITION=y # CONFIG_SOLO6X10 is not set @@ -5131,6 +5198,7 @@ CONFIG_SQUASHFS_XATTR=y CONFIG_SQUASHFS_XZ=y CONFIG_SQUASHFS_ZLIB=y CONFIG_SRAM=y +# CONFIG_SRF08 is not set # CONFIG_SSB_DEBUG is not set CONFIG_SSB_DRIVER_GPIO=y CONFIG_SSB_DRIVER_PCICORE=y @@ -5148,6 +5216,7 @@ CONFIG_STAGING_MEDIA=y CONFIG_STAGING=y CONFIG_STANDALONE=y # CONFIG_STATIC_KEYS_SELFTEST is not set +# CONFIG_STATIC_USERMODEHELPER is not set CONFIG_STE10XP=m # CONFIG_STE_MODEM_RPROC is not set CONFIG_STK3310=m @@ -5157,19 +5226,21 @@ CONFIG_STK3310=m # CONFIG_STM is not set CONFIG_STMMAC_ETH=m # CONFIG_STMMAC_PCI is not set -# CONFIG_STMMAC_PLATFORM is not set +CONFIG_STMMAC_PLATFORM=m # CONFIG_STM_SOURCE_CONSOLE is not set CONFIG_STRICT_DEVMEM=y CONFIG_STRIP_ASM_SYMS=y # CONFIG_STRIP is not set CONFIG_STUB_CLK_HI6220=y # CONFIG_SUN4I_EMAC is not set -# CONFIG_SUN50I_A64_CCU is not set +CONFIG_SUN50I_A64_CCU=y +# CONFIG_SUN5I_CCU is not set # CONFIG_SUN6I_A31_CCU is not set # CONFIG_SUN8I_A23_CCU is not set # CONFIG_SUN8I_A33_CCU is not set -CONFIG_SUN8I_EMAC=m # CONFIG_SUN8I_H3_CCU is not set +# CONFIG_SUN8I_V3S_CCU is not set +# CONFIG_SUN9I_A80_CCU is not set CONFIG_SUNDANCE=m # CONFIG_SUNDANCE_MMIO is not set CONFIG_SUNGEM=m @@ -5195,7 +5266,7 @@ CONFIG_SYNCLINK=m CONFIG_SYNCLINKMP=m CONFIG_SYN_COOKIES=y # CONFIG_SYNOPSYS_DWC_ETH_QOS is not set -# CONFIG_SYSCON_REBOOT_MODE is not set +CONFIG_SYSCON_REBOOT_MODE=y CONFIG_SYSCTL=y # CONFIG_SYSFS_DEPRECATED is not set # CONFIG_SYSFS_DEPRECATED_V2 is not set @@ -5291,9 +5362,11 @@ CONFIG_TEST_ASYNC_DRIVER_PROBE=m CONFIG_TEST_KSTRTOX=y # CONFIG_TEST_LIST_SORT is not set # CONFIG_TEST_LKM is not set +# CONFIG_TEST_PARMAN is not set # CONFIG_TEST_POWER is not set # CONFIG_TEST_PRINTF is not set # CONFIG_TEST_RHASHTABLE is not set +# CONFIG_TEST_SORT is not set # CONFIG_TEST_STATIC_KEYS is not set # CONFIG_TEST_STRING_HELPERS is not set # CONFIG_TEST_UDELAY is not set @@ -5323,6 +5396,7 @@ CONFIG_THUNDER_NIC_VF=m # CONFIG_TI_ADC128S052 is not set # CONFIG_TI_ADC161S626 is not set # CONFIG_TI_ADS1015 is not set +# CONFIG_TI_ADS7950 is not set # CONFIG_TI_ADS8688 is not set # CONFIG_TI_CPSW_ALE is not set # CONFIG_TI_DAC7512 is not set @@ -5331,15 +5405,19 @@ CONFIG_TIFM_CORE=m CONFIG_TIGON3=m # CONFIG_TIMB_DMA is not set # CONFIG_TIMER_STATS is not set +CONFIG_TINYDRM_MI0283QT=m +CONFIG_TINYDRM_MIPI_DBI=m CONFIG_TIPC=m # CONFIG_TIPC_MEDIA_IB is not set CONFIG_TIPC_MEDIA_UDP=y CONFIG_TI_SCI_PROTOCOL=m # CONFIG_TI_ST is not set # CONFIG_TI_SYSCON_RESET is not set +# CONFIG_TI_TLC4541 is not set # CONFIG_TLAN is not set # CONFIG_TMD_HERMES is not set CONFIG_TMP006=m +# CONFIG_TMP007 is not set CONFIG_TMPFS_POSIX_ACL=y CONFIG_TMPFS_XATTR=y CONFIG_TMPFS=y @@ -5409,6 +5487,7 @@ CONFIG_TOUCHSCREEN_WACOM_I2C=m CONFIG_TOUCHSCREEN_WACOM_W8001=m # CONFIG_TOUCHSCREEN_WDT87XX_I2C is not set # CONFIG_TOUCHSCREEN_WM97XX is not set +CONFIG_TOUCHSCREEN_ZET6223=m CONFIG_TOUCHSCREEN_ZFORCE=m # CONFIG_TPL0102 is not set # CONFIG_TPS6105X is not set @@ -5476,7 +5555,7 @@ CONFIG_UNIX_DIAG=m CONFIG_UNIXWARE_DISKLABEL=y CONFIG_UNIX=y CONFIG_UNUSED_SYMBOLS=y -CONFIG_UPROBE_EVENT=y +CONFIG_UPROBE_EVENTS=y # CONFIG_US5182D is not set CONFIG_USB_ACM=m CONFIG_USB_ADUTUX=m @@ -5497,6 +5576,7 @@ CONFIG_USB_CHAOSKEY=m CONFIG_USB_CHIPIDEA_HOST=y CONFIG_USB_CHIPIDEA=m CONFIG_USB_CHIPIDEA_UDC=y +# CONFIG_USB_CHIPIDEA_ULPI is not set CONFIG_USB_CONFIGFS_ACM=y CONFIG_USB_CONFIGFS_ECM_SUBSET=y CONFIG_USB_CONFIGFS_ECM=y @@ -5620,6 +5700,7 @@ CONFIG_USB_HID=y CONFIG_USB_HSIC_USB3503=m CONFIG_USB_HSIC_USB4604=m CONFIG_USB_HSO=m +CONFIG_USB_HUB_USB251XB=m CONFIG_USB_HWA_HCD=m CONFIG_USB_IDMOUSE=m CONFIG_USB_IOWARRIOR=m @@ -5778,6 +5859,7 @@ CONFIG_USB_SERIAL_SPCP8X5=m CONFIG_USB_SERIAL_SSU100=m CONFIG_USB_SERIAL_SYMBOL=m CONFIG_USB_SERIAL_TI=m +CONFIG_USB_SERIAL_UPD78F0730=m CONFIG_USB_SERIAL_VISOR=m CONFIG_USB_SERIAL_WHITEHEAT=m # CONFIG_USB_SERIAL_WISHBONE is not set @@ -5858,7 +5940,7 @@ CONFIG_V4L_MEM2MEM_DRIVERS=y # CONFIG_V4L_PLATFORM_DRIVERS is not set # CONFIG_V4L_TEST_DRIVERS is not set # CONFIG_VCNL4000 is not set -# CONFIG_VDSO is not set +CONFIG_VDSO=y # CONFIG_VEML6070 is not set CONFIG_VETH=m CONFIG_VEXPRESS_SYSCFG=y @@ -5877,6 +5959,7 @@ CONFIG_VFIO_PLATFORM_AMDXGBE_RESET=m CONFIG_VFIO_PLATFORM=m CONFIG_VGA_ARB_MAX_GPUS=16 CONFIG_VGA_ARB=y +# CONFIG_VGACON_SOFT_SCROLLBACK_PERSISTENT_ENABLE_BY_DEFAULT is not set CONFIG_VGACON_SOFT_SCROLLBACK_SIZE=64 CONFIG_VGACON_SOFT_SCROLLBACK=y # CONFIG_VGA_CONSOLE is not set @@ -5927,6 +6010,7 @@ CONFIG_VIDEO_HDPVR=m CONFIG_VIDEO_HEXIUM_GEMINI=m CONFIG_VIDEO_HEXIUM_ORION=m # CONFIG_VIDEO_IVTV_ALSA is not set +# CONFIG_VIDEO_IVTV_DEPRECATED_IOCTLS is not set CONFIG_VIDEO_IVTV=m # CONFIG_VIDEO_M5MOLS is not set # CONFIG_VIDEO_MEM2MEM_DEINTERLACE is not set @@ -5948,7 +6032,6 @@ CONFIG_VIDEO_SAA7134_RC=y CONFIG_VIDEO_SAA7146=m CONFIG_VIDEO_SAA7146_VV=m CONFIG_VIDEO_SAA7164=m -CONFIG_VIDEO_SAMSUNG_S5P_CEC=m # CONFIG_VIDEO_SH_MOBILE_CEU is not set # CONFIG_VIDEO_SH_MOBILE_CSI2 is not set # CONFIG_VIDEO_SH_VEU is not set @@ -5984,6 +6067,7 @@ CONFIG_VIDEO_ZORAN_ZR36060=m # CONFIG_VIRT_DRIVERS is not set CONFIG_VIRTIO_BALLOON=m CONFIG_VIRTIO_BLK=m +CONFIG_VIRTIO_BLK_SCSI=y CONFIG_VIRTIO_CONSOLE=m CONFIG_VIRTIO_INPUT=m # CONFIG_VIRTIO_MMIO_CMDLINE_DEVICES is not set @@ -5999,8 +6083,6 @@ CONFIG_VLAN_8021Q=m CONFIG_VLAN_8021Q_MVRP=y CONFIG_VLSI_FIR=m # CONFIG_VME_BUS is not set -CONFIG_VMWARE_BALLOON=m -CONFIG_VMWARE_PVSCSI=m # CONFIG_VMXNET3 is not set CONFIG_VORTEX=m CONFIG_VSOCKETS=m @@ -6022,6 +6104,7 @@ CONFIG_W1_MASTER_DS2490=m # CONFIG_W1_MASTER_GPIO is not set # CONFIG_W1_MASTER_MATROX is not set CONFIG_W1_SLAVE_BQ27000=m +CONFIG_W1_SLAVE_DS2405=m CONFIG_W1_SLAVE_DS2406=m CONFIG_W1_SLAVE_DS2408=m # CONFIG_W1_SLAVE_DS2408_READBACK is not set @@ -6094,6 +6177,7 @@ CONFIG_WM8350_POWER=m CONFIG_WM8350_WATCHDOG=m # CONFIG_WQ_POWER_EFFICIENT_DEFAULT is not set # CONFIG_WQ_WATCHDOG is not set +# CONFIG_WW_MUTEX_SELFTEST is not set # CONFIG_X25 is not set # CONFIG_X86_BOOTPARAM_MEMORY_CORRUPTION_CHECK is not set # CONFIG_X86_PTDUMP is not set diff --git a/kernel-armv7hl-debug.config b/kernel-armv7hl-debug.config index 6e442d9c0..0b75171a7 100644 --- a/kernel-armv7hl-debug.config +++ b/kernel-armv7hl-debug.config @@ -124,11 +124,11 @@ CONFIG_AEABI=y # CONFIG_AF_KCM is not set # CONFIG_AF_RXRPC is not set # CONFIG_AFS_FS is not set -# CONFIG_AGP is not set # CONFIG_AHCI_CEVA is not set CONFIG_AHCI_IMX=m CONFIG_AHCI_MVEBU=m # CONFIG_AHCI_QORIQ is not set +CONFIG_AHCI_ST=m CONFIG_AHCI_SUNXI=m CONFIG_AHCI_TEGRA=m # CONFIG_AIC79XX_BUILD_FIRMWARE is not set @@ -205,7 +205,7 @@ CONFIG_ARCH_HIGHBANK=y # CONFIG_ARCH_KEYSTONE is not set # CONFIG_ARCH_MDM9615 is not set # CONFIG_ARCH_MEDIATEK is not set -# CONFIG_ARCH_MESON is not set +CONFIG_ARCH_MESON=y CONFIG_ARCH_MMP=y CONFIG_ARCH_MSM8960=y CONFIG_ARCH_MSM8974=y @@ -225,12 +225,11 @@ CONFIG_ARCH_ROCKCHIP=y # CONFIG_ARCH_SHMOBILE_MULTI is not set # CONFIG_ARCH_SIRF is not set # CONFIG_ARCH_SOCFPGA is not set -# CONFIG_ARCH_STI is not set +CONFIG_ARCH_STI=y CONFIG_ARCH_SUNXI=y # CONFIG_ARCH_TANGO is not set CONFIG_ARCH_TEGRA_114_SOC=y CONFIG_ARCH_TEGRA_124_SOC=y -# CONFIG_ARCH_TEGRA_186_SOC is not set CONFIG_ARCH_TEGRA_2x_SOC=y CONFIG_ARCH_TEGRA_3x_SOC=y CONFIG_ARCH_TEGRA=y @@ -319,11 +318,13 @@ CONFIG_ARM_SCPI_POWER_DOMAIN=m CONFIG_ARM_SCPI_PROTOCOL=m CONFIG_ARM_SMMU=y CONFIG_ARM_SP805_WATCHDOG=m +CONFIG_ARM_STI_CPUFREQ=m CONFIG_ARM_TEGRA124_CPUFREQ=m # CONFIG_ARM_TEGRA20_CPUFREQ is not set CONFIG_ARM_TEGRA_DEVFREQ=m CONFIG_ARM_THUMBEE=y CONFIG_ARM_THUMB=y +CONFIG_ARM_TI_CPUFREQ=y CONFIG_ARM_TIMER_SP804=y CONFIG_ARM_UNWIND=y CONFIG_ARM_VEXPRESS_SPC_CPUFREQ=m @@ -497,7 +498,6 @@ CONFIG_BATTERY_DA9052=m # CONFIG_BATTERY_DS2781 is not set # CONFIG_BATTERY_DS2782 is not set # CONFIG_BATTERY_GAUGE_LTC2941 is not set -# CONFIG_BATTERY_GOLDFISH is not set # CONFIG_BATTERY_MAX17040 is not set # CONFIG_BATTERY_MAX17042 is not set CONFIG_BATTERY_RX51=m @@ -545,6 +545,7 @@ CONFIG_BINFMT_SCRIPT=y CONFIG_BLK_CGROUP=y # CONFIG_BLK_CMDLINE_PARSER is not set CONFIG_BLK_CPQ_CISS_DA=m +CONFIG_BLK_DEBUG_FS=y # CONFIG_BLK_DEV_3W_XXXX_RAID is not set CONFIG_BLK_DEV_BSGLIB=y CONFIG_BLK_DEV_BSG=y @@ -583,6 +584,7 @@ CONFIG_BLK_DEV_THROTTLING=y CONFIG_BLK_DEV_UMEM=m CONFIG_BLK_DEV=y CONFIG_BLK_DEV_ZONED=y +CONFIG_BLK_SED_OPAL=y CONFIG_BLK_WBT_MQ=y # CONFIG_BLK_WBT_SQ is not set CONFIG_BLK_WBT=y @@ -681,6 +683,7 @@ CONFIG_BT_HCIUART_INTEL=y CONFIG_BT_HCIUART_LL=y CONFIG_BT_HCIUART=m CONFIG_BT_HCIUART_MRVL=y +CONFIG_BT_HCIUART_NOKIA=m CONFIG_BT_HCIUART_QCA=y CONFIG_BT_HCIVHCI=m CONFIG_BT_HIDP=m @@ -790,6 +793,7 @@ CONFIG_CEPH_LIB_PRETTYDEBUG=y # CONFIG_CEPH_LIB_USE_DNS_RESOLVER is not set CONFIG_CFAG12864B=m CONFIG_CFAG12864B_RATE=20 +CONFIG_CFG80211_CRDA_SUPPORT=y CONFIG_CFG80211_DEBUGFS=y CONFIG_CFG80211_DEFAULT_PS=y # CONFIG_CFG80211_DEVELOPER_WARNINGS is not set @@ -807,13 +811,16 @@ CONFIG_CGROUP_NET_CLASSID=y CONFIG_CGROUP_NET_PRIO=y CONFIG_CGROUP_PERF=y CONFIG_CGROUP_PIDS=y +# CONFIG_CGROUP_RDMA is not set CONFIG_CGROUP_SCHED=y CONFIG_CGROUPS=y +CONFIG_CHARGER_AXP20X=m CONFIG_CHARGER_BQ2415X=m CONFIG_CHARGER_BQ24190=m # CONFIG_CHARGER_BQ24257 is not set CONFIG_CHARGER_BQ24735=m # CONFIG_CHARGER_BQ25890 is not set +# CONFIG_CHARGER_DETECTOR_MAX14656 is not set CONFIG_CHARGER_GPIO=m CONFIG_CHARGER_ISP1704=m # CONFIG_CHARGER_LP8727 is not set @@ -823,6 +830,7 @@ CONFIG_CHARGER_MAX8997=m # CONFIG_CHARGER_PCF50633 is not set # CONFIG_CHARGER_QCOM_SMBB is not set # CONFIG_CHARGER_RT9455 is not set +# CONFIG_CHARGER_SBS is not set CONFIG_CHARGER_SMB347=m CONFIG_CHARGER_TPS65090=m CONFIG_CHARGER_TPS65217=m @@ -869,6 +877,7 @@ CONFIG_CLS_U32_PERF=y CONFIG_CM32181=m # CONFIG_CM3232 is not set # CONFIG_CM3323 is not set +CONFIG_CM3605=m CONFIG_CM36651=m CONFIG_CMA_ALIGNMENT=8 CONFIG_CMA_AREAS=7 @@ -890,21 +899,8 @@ CONFIG_COMMON_CLK_AXI_CLKGEN=m # CONFIG_COMMON_CLK_CDCE706 is not set # CONFIG_COMMON_CLK_CDCE925 is not set # CONFIG_COMMON_CLK_CS2000_CP is not set -# CONFIG_COMMON_CLK_HI3516CV300 is not set -# CONFIG_COMMON_CLK_HI3519 is not set -# CONFIG_COMMON_CLK_HI3798CV200 is not set CONFIG_COMMON_CLK_MAX77686=m CONFIG_COMMON_CLK_MAX77802=m -# CONFIG_COMMON_CLK_MT2701_BDPSYS is not set -# CONFIG_COMMON_CLK_MT2701_ETHSYS is not set -# CONFIG_COMMON_CLK_MT2701_HIFSYS is not set -# CONFIG_COMMON_CLK_MT2701_IMGSYS is not set -# CONFIG_COMMON_CLK_MT2701 is not set -# CONFIG_COMMON_CLK_MT2701_MMSYS is not set -# CONFIG_COMMON_CLK_MT2701_VDECSYS is not set -# CONFIG_COMMON_CLK_MT8135 is not set -# CONFIG_COMMON_CLK_MT8173 is not set -# CONFIG_COMMON_CLK_OXNAS is not set CONFIG_COMMON_CLK_PALMAS=m CONFIG_COMMON_CLK_PWM=m CONFIG_COMMON_CLK_QCOM=m @@ -915,9 +911,11 @@ CONFIG_COMMON_CLK_SCPI=m CONFIG_COMMON_CLK_SI5351=m CONFIG_COMMON_CLK_SI570=m CONFIG_COMMON_CLK_TI_ADPLL=m +# CONFIG_COMMON_CLK_VC5 is not set CONFIG_COMMON_CLK_VERSATILE=y CONFIG_COMMON_CLK_XLNX_CLKWZRD=m CONFIG_COMMON_CLK=y +# CONFIG_COMMON_RESET_HI3660 is not set CONFIG_COMPACTION=y # CONFIG_COMPAT_BRK is not set # CONFIG_COMPILE_TEST is not set @@ -973,6 +971,7 @@ CONFIG_CRYPTO_842=m CONFIG_CRYPTO_AES_ARM_BS=y # CONFIG_CRYPTO_AES_ARM_CE is not set CONFIG_CRYPTO_AES_ARM=y +CONFIG_CRYPTO_AES_TI=m CONFIG_CRYPTO_AES=y CONFIG_CRYPTO_ANSI_CPRNG=m CONFIG_CRYPTO_ANUBIS=m @@ -986,11 +985,11 @@ CONFIG_CRYPTO_CAST6=m CONFIG_CRYPTO_CBC=y CONFIG_CRYPTO_CCM=m CONFIG_CRYPTO_CHACHA20=m +CONFIG_CRYPTO_CHACHA20_NEON=m CONFIG_CRYPTO_CHACHA20POLY1305=m CONFIG_CRYPTO_CMAC=m CONFIG_CRYPTO_CRC32_ARM64_CE=m CONFIG_CRYPTO_CRC32_ARM_CE=m -CONFIG_CRYPTO_CRC32C_INTEL=m CONFIG_CRYPTO_CRC32C_VPMSUM=m CONFIG_CRYPTO_CRC32C=y CONFIG_CRYPTO_CRC32=m @@ -1163,7 +1162,7 @@ CONFIG_DEBUG_PER_CPU_MAPS=y CONFIG_DEBUG_PERF_USE_VMALLOC=y CONFIG_DEBUG_PI_LIST=y # CONFIG_DEBUG_PINCTRL is not set -# CONFIG_DEBUG_RODATA is not set +CONFIG_DEBUG_REFCOUNT=y CONFIG_DEBUG_RODATA_TEST=y CONFIG_DEBUG_RT_MUTEXES=y # CONFIG_DEBUG_SECTION_MISMATCH is not set @@ -1204,6 +1203,7 @@ CONFIG_DEVFREQ_GOV_SIMPLE_ONDEMAND=m CONFIG_DEVFREQ_THERMAL=y # CONFIG_DEVKMEM is not set CONFIG_DEVMEM=y +# CONFIG_DEVPORT is not set CONFIG_DEVTMPFS_MOUNT=y CONFIG_DEVTMPFS=y # CONFIG_DGAP is not set @@ -1283,6 +1283,7 @@ CONFIG_DRM_ARMADA=m CONFIG_DRM_AST=m CONFIG_DRM_BOCHS=m CONFIG_DRM_CIRRUS_QEMU=m +# CONFIG_DRM_DEBUG_MM_SELFTEST is not set CONFIG_DRM_DP_AUX_CHARDEV=y CONFIG_DRM_DUMB_VGA_DAC=m CONFIG_DRM_DW_HDMI_AHB_AUDIO=m @@ -1314,18 +1315,10 @@ CONFIG_DRM_HDLCD=m CONFIG_DRM_HISI_HIBMC=m CONFIG_DRM_I2C_ADV7511_AUDIO=y CONFIG_DRM_I2C_ADV7511=m -# CONFIG_DRM_I2C_ADV7533 is not set +CONFIG_DRM_I2C_ADV7533=y CONFIG_DRM_I2C_CH7006=m CONFIG_DRM_I2C_NXP_TDA998X=m CONFIG_DRM_I2C_SIL164=m -# CONFIG_DRM_I810 is not set -# CONFIG_DRM_I915_ALPHA_SUPPORT is not set -CONFIG_DRM_I915_CAPTURE_ERROR=y -CONFIG_DRM_I915_COMPRESS_ERROR=y -CONFIG_DRM_I915_GVT_KVMGT=m -CONFIG_DRM_I915_GVT=y -CONFIG_DRM_I915=m -CONFIG_DRM_I915_USERPTR=y CONFIG_DRM_IMX_HDMI=m CONFIG_DRM_IMX_IPUV3=m CONFIG_DRM_IMX_LDB=m @@ -1336,7 +1329,7 @@ CONFIG_DRM_IMX_TVE=m CONFIG_DRM_LOAD_EDID_FIRMWARE=y CONFIG_DRM=m CONFIG_DRM_MALI_DISPLAY=m -# CONFIG_DRM_MESON is not set +CONFIG_DRM_MESON=m CONFIG_DRM_MGAG200=m # CONFIG_DRM_MGA is not set # CONFIG_DRM_MSM_DSI is not set @@ -1346,7 +1339,7 @@ CONFIG_DRM_MSM=m CONFIG_DRM_MXSFB=m CONFIG_DRM_NOUVEAU_BACKLIGHT=y CONFIG_DRM_NOUVEAU=m -# CONFIG_DRM_NXP_PTN3460 is not set +CONFIG_DRM_NXP_PTN3460=m CONFIG_DRM_OMAP_CONNECTOR_ANALOG_TV=m CONFIG_DRM_OMAP_CONNECTOR_DVI=m CONFIG_DRM_OMAP_CONNECTOR_HDMI=m @@ -1372,7 +1365,7 @@ CONFIG_DRM_PANEL_SHARP_LQ101R1SX01=m CONFIG_DRM_PANEL_SHARP_LS043T1LE01=m CONFIG_DRM_PANEL_SIMPLE=m CONFIG_DRM_PANEL=y -# CONFIG_DRM_PARADE_PS8622 is not set +CONFIG_DRM_PARADE_PS8622=m CONFIG_DRM_QXL=m # CONFIG_DRM_R128 is not set CONFIG_DRM_RADEON=m @@ -1382,7 +1375,7 @@ CONFIG_DRM_ROCKCHIP=m # CONFIG_DRM_SII902X is not set CONFIG_DRM_SIL_SII8620=m # CONFIG_DRM_SIS is not set -# CONFIG_DRM_STI is not set +CONFIG_DRM_STI=m CONFIG_DRM_SUN4I=m # CONFIG_DRM_TDFX is not set # CONFIG_DRM_TEGRA_DEBUG is not set @@ -1390,6 +1383,7 @@ CONFIG_DRM_TEGRA=m CONFIG_DRM_TEGRA_STAGING=y CONFIG_DRM_TILCDC=m CONFIG_DRM_TILCDC_SLAVE_COMPAT=y +CONFIG_DRM_TINYDRM=m CONFIG_DRM_TI_TFP410=m # CONFIG_DRM_TOSHIBA_TC358767 is not set CONFIG_DRM_UDL=m @@ -1397,8 +1391,6 @@ CONFIG_DRM_VC4=m CONFIG_DRM_VGEM=m CONFIG_DRM_VIA=m CONFIG_DRM_VIRTIO_GPU=m -CONFIG_DRM_VMWGFX_FBCON=y -# CONFIG_DRM_VMWGFX is not set # CONFIG_DS1682 is not set # CONFIG_DS1803 is not set # CONFIG_DT3155 is not set @@ -1486,14 +1478,18 @@ CONFIG_DVB_USB_UMT_010=m CONFIG_DVB_USB_V2=m CONFIG_DVB_USB_VP702X=m CONFIG_DVB_USB_VP7045=m +CONFIG_DVB_USB_ZD1301=m # CONFIG_DW_DMAC_BIG_ENDIAN_IO is not set CONFIG_DW_DMAC_CORE=m CONFIG_DW_DMAC=m CONFIG_DW_DMAC_PCI=m +# CONFIG_DWMAC_DWC_QOS_ETH is not set CONFIG_DWMAC_GENERIC=m -# CONFIG_DWMAC_IPQ806X is not set +CONFIG_DWMAC_IPQ806X=m CONFIG_DWMAC_MESON=m CONFIG_DWMAC_ROCKCHIP=m +CONFIG_DWMAC_STI=m +CONFIG_DWMAC_SUN8I=m CONFIG_DWMAC_SUNXI=m CONFIG_DW_WATCHDOG=m CONFIG_DYNAMIC_DEBUG=y @@ -1519,6 +1515,7 @@ CONFIG_EEPROM_93CX6=m CONFIG_EEPROM_93XX46=m CONFIG_EEPROM_AT24=m CONFIG_EEPROM_AT25=m +CONFIG_EEPROM_IDT_89HPESX=m CONFIG_EEPROM_LEGACY=m CONFIG_EEPROM_MAX6875=m # CONFIG_EFI_ALLOW_SECURE_BOOT_EXIT is not set @@ -1569,6 +1566,7 @@ CONFIG_EXT4_USE_FOR_EXT2=y CONFIG_EXTCON_ADC_JACK=m CONFIG_EXTCON_AXP288=m CONFIG_EXTCON_GPIO=m +CONFIG_EXTCON_INTEL_INT3496=m # CONFIG_EXTCON_MAX3355 is not set CONFIG_EXTCON_MAX8997=m CONFIG_EXTCON_PALMAS=m @@ -1612,7 +1610,6 @@ CONFIG_FAULT_INJECTION_DEBUG_FS=y CONFIG_FAULT_INJECTION_STACKTRACE_FILTER=y CONFIG_FAULT_INJECTION=y # CONFIG_FB_3DFX is not set -# CONFIG_FB_ARC is not set # CONFIG_FB_ARK is not set CONFIG_FB_ARMCLCD=y # CONFIG_FB_ASILIANT is not set @@ -1630,19 +1627,12 @@ CONFIG_FB_ATY_BACKLIGHT=y # CONFIG_FB_DA8XX is not set CONFIG_FB_EFI=y # CONFIG_FB_FOREIGN_ENDIAN is not set -# CONFIG_FB_GEODE is not set -# CONFIG_FB_GOLDFISH is not set # CONFIG_FB_HECUBA is not set -# CONFIG_FB_HGA is not set # CONFIG_FB_I740 is not set -CONFIG_FB_I810_GTF=y -CONFIG_FB_I810_I2C=y -CONFIG_FB_I810=m # CONFIG_FB_IBM_GXT4500 is not set # CONFIG_FB_IMSTT is not set # CONFIG_FB_IMX is not set # CONFIG_FB_KYRO is not set -# CONFIG_FB_LE80578 is not set # CONFIG_FB_MATROX_G is not set # CONFIG_FB_MATROX_I2C is not set # CONFIG_FB_MATROX is not set @@ -1689,9 +1679,6 @@ CONFIG_FB_TILEBLITTING=y # CONFIG_FB_UDL is not set # CONFIG_FB_UVESA is not set CONFIG_FB_VESA=y -CONFIG_FB_VGA16=m -# CONFIG_FB_VIA_DIRECT_PROCFS is not set -# CONFIG_FB_VIA is not set CONFIG_FB_VIRTUAL=m # CONFIG_FB_VOODOO1 is not set # CONFIG_FB_VT8623 is not set @@ -1736,6 +1723,7 @@ CONFIG_FSCACHE_OBJECT_LIST=y CONFIG_FSCACHE_STATS=y CONFIG_FS_DAX=y CONFIG_FS_ENCRYPTION=y +CONFIG_FSI=m # CONFIG_FSL_EDMA is not set # CONFIG_FSL_PQ_MDIO is not set # CONFIG_FSL_XGMAC_MDIO is not set @@ -1800,16 +1788,14 @@ CONFIG_GPIO_74X164=m # CONFIG_GPIO_ADNP is not set # CONFIG_GPIO_ADP5588 is not set # CONFIG_GPIO_ALTERA is not set -# CONFIG_GPIO_AMD8111 is not set # CONFIG_GPIO_AMDPT is not set CONFIG_GPIO_AXP209=m # CONFIG_GPIO_BT8XX is not set -# CONFIG_GPIO_CS5535 is not set CONFIG_GPIO_DA9052=m CONFIG_GPIO_DA9055=m CONFIG_GPIO_DEVRES=y CONFIG_GPIO_DWAPB=m -# CONFIG_GPIO_EM is not set +CONFIG_GPIO_EXAR=m CONFIG_GPIO_GENERIC_PLATFORM=y CONFIG_GPIO_GENERIC=y # CONFIG_GPIO_GRGPIO is not set @@ -1820,7 +1806,6 @@ CONFIG_GPIO_MAX7301=m # CONFIG_GPIO_MAX732X is not set CONFIG_GPIO_MC33880=m # CONFIG_GPIO_MCP23S08 is not set -# CONFIG_GPIO_ML_IOH is not set # CONFIG_GPIO_MOCKUP is not set # CONFIG_GPIO_MPC8XXX is not set CONFIG_GPIO_MVEBU=y @@ -1830,15 +1815,15 @@ CONFIG_GPIO_PCA953X_IRQ=y CONFIG_GPIO_PCA953X=y CONFIG_GPIO_PCF857X=m # CONFIG_GPIO_PCH is not set +CONFIG_GPIO_PCI_IDIO_16=m # CONFIG_GPIO_PISOSR is not set CONFIG_GPIO_PL061=y # CONFIG_GPIO_RDC321X is not set # CONFIG_GPIO_SCH311X is not set -# CONFIG_GPIO_SCH is not set CONFIG_GPIO_STMPE=y # CONFIG_GPIO_SX150X is not set CONFIG_GPIO_SYSCON=m -CONFIG_GPIO_SYSFS=y +# CONFIG_GPIO_SYSFS is not set CONFIG_GPIO_TEGRA=y # CONFIG_GPIO_TPIC2810 is not set CONFIG_GPIO_TPS65218=m @@ -1851,20 +1836,18 @@ CONFIG_GPIO_TS4800=m CONFIG_GPIO_TWL4030=m CONFIG_GPIO_TWL6040=m CONFIG_GPIO_VIPERBOARD=m -# CONFIG_GPIO_VX855 is not set CONFIG_GPIO_WATCHDOG=m CONFIG_GPIO_WM8994=m # CONFIG_GPIO_WS16C48 is not set CONFIG_GPIO_XILINX=y # CONFIG_GPIO_ZEVIO is not set -# CONFIG_GPIO_ZX is not set CONFIG_GPIO_ZYNQ=m CONFIG_GREENASIA_FF=y # CONFIG_GREYBUS is not set CONFIG_GS_FPGABOOT=m CONFIG_GTP=m CONFIG_HAMACHI=m -# CONFIG_HAMRADIO is not set +CONFIG_HAMRADIO=y CONFIG_HANGCHECK_TIMER=m CONFIG_HAPPYMEAL=m CONFIG_HARDENED_USERCOPY=y @@ -2056,6 +2039,7 @@ CONFIG_HW_RANDOM_MSM=m CONFIG_HW_RANDOM_MXC_RNGA=m CONFIG_HW_RANDOM_OMAP3_ROM=m CONFIG_HW_RANDOM_OMAP=m +CONFIG_HW_RANDOM_ST=m CONFIG_HW_RANDOM_TIMERIOMEM=m CONFIG_HW_RANDOM_TPM=m CONFIG_HW_RANDOM_VIRTIO=m @@ -2063,6 +2047,7 @@ CONFIG_HW_RANDOM=y CONFIG_HWSPINLOCK=m CONFIG_HWSPINLOCK_OMAP=m CONFIG_HWSPINLOCK_QCOM=m +# CONFIG_HX711 is not set CONFIG_HYSDN_CAPI=y CONFIG_HYSDN=m CONFIG_HZ_1000=y @@ -2136,9 +2121,11 @@ CONFIG_I2C_SIMTEC=m # CONFIG_I2C_SIS96X is not set CONFIG_I2C_SLAVE_EEPROM=m CONFIG_I2C_SLAVE=y +CONFIG_I2C_ST=m CONFIG_I2C_STUB=m CONFIG_I2C_SUN6I_P2WI=m # CONFIG_I2C_TAOS_EVM is not set +CONFIG_I2C_TEGRA_BPMP=m CONFIG_I2C_TEGRA=m CONFIG_I2C_TINY_USB=m CONFIG_I2C_VERSATILE=m @@ -2155,8 +2142,6 @@ CONFIG_I40EVF=m CONFIG_I6300ESB_WDT=m CONFIG_I82092=m # CONFIG_IAQCORE is not set -CONFIG_IB700_WDT=m -CONFIG_IBMASR=m CONFIG_ICPLUS_PHY=m # CONFIG_ICS932S401 is not set # CONFIG_IDE is not set @@ -2183,6 +2168,7 @@ CONFIG_IIO_BUFFER_CB=m CONFIG_IIO_BUFFER=y CONFIG_IIO_CONFIGFS=m CONFIG_IIO_CONSUMERS_PER_TRIGGER=2 +# CONFIG_IIO_CROS_EC_BARO is not set CONFIG_IIO_CROS_EC_SENSORS_CORE=m CONFIG_IIO_CROS_EC_SENSORS_COR=m CONFIG_IIO_CROS_EC_SENSORS=m @@ -2198,6 +2184,7 @@ CONFIG_IIO_ST_ACCEL_SPI_3AXIS=m CONFIG_IIO_ST_GYRO_3AXIS=m CONFIG_IIO_ST_GYRO_I2C_3AXIS=m CONFIG_IIO_ST_GYRO_SPI_3AXIS=m +# CONFIG_IIO_ST_LSM6DSX is not set CONFIG_IIO_ST_MAGN_3AXIS=m CONFIG_IIO_ST_PRESS_I2C=m CONFIG_IIO_ST_PRESS=m @@ -2224,6 +2211,7 @@ CONFIG_IMX_WEIM=y # CONFIG_INA2XX_ADC is not set CONFIG_INET6_AH=m CONFIG_INET6_ESP=m +CONFIG_INET6_ESP_OFFLOAD=m CONFIG_INET6_IPCOMP=m CONFIG_INET6_XFRM_MODE_BEET=m CONFIG_INET6_XFRM_MODE_ROUTEOPTIMIZATION=m @@ -2233,6 +2221,7 @@ CONFIG_INET_AH=m CONFIG_INET_DIAG_DESTROY=y CONFIG_INET_DIAG=m CONFIG_INET_ESP=m +CONFIG_INET_ESP_OFFLOAD=m CONFIG_INET_IPCOMP=m CONFIG_INET_RAW_DIAG=m CONFIG_INET_TUNNEL=m @@ -2241,6 +2230,7 @@ CONFIG_INET_XFRM_MODE_BEET=m CONFIG_INET_XFRM_MODE_TRANSPORT=m CONFIG_INET_XFRM_MODE_TUNNEL=m CONFIG_INET=y +# CONFIG_INFINIBAND_BNXT_RE is not set # CONFIG_INFINIBAND_CXGB3_DEBUG is not set CONFIG_INFINIBAND_CXGB3=m CONFIG_INFINIBAND_CXGB4=m @@ -2346,8 +2336,6 @@ CONFIG_INPUT=y CONFIG_INPUT_YEALINK=m # CONFIG_INTEGRITY is not set # CONFIG_INTEL_IDMA64 is not set -# CONFIG_INTEL_MENLOW is not set -CONFIG_INTEL_RDT_A=y # CONFIG_INTEL_SOC_PMIC is not set # CONFIG_INTEL_TH is not set CONFIG_INTEL_XWAY_PHY=m @@ -2499,6 +2487,7 @@ CONFIG_IP_VS_SH_TAB_BITS=8 CONFIG_IP_VS_TAB_BITS=12 CONFIG_IP_VS_WLC=m CONFIG_IP_VS_WRR=m +CONFIG_IPVTAP=m # CONFIG_IPW2100_DEBUG is not set # CONFIG_IPW2100 is not set # CONFIG_IPW2200_DEBUG is not set @@ -2543,6 +2532,7 @@ CONFIG_IR_SERIAL=m CONFIG_IR_SERIAL_TRANSMITTER=y CONFIG_IR_SHARP_DECODER=m CONFIG_IR_SONY_DECODER=m +CONFIG_IR_SPI=m CONFIG_IR_STREAMZAP=m CONFIG_IR_SUNXI=m CONFIG_IR_TTUSBIR=m @@ -2711,6 +2701,7 @@ CONFIG_KEYBOARD_PXA27x=y CONFIG_KEYBOARD_SAMSUNG=m # CONFIG_KEYBOARD_SH_KEYSC is not set CONFIG_KEYBOARD_SNVS_PWRKEY=m +CONFIG_KEYBOARD_ST_KEYSCAN=m CONFIG_KEYBOARD_STMPE=m # CONFIG_KEYBOARD_STOWAWAY is not set CONFIG_KEYBOARD_SUN4I_LRADC=m @@ -2718,6 +2709,7 @@ CONFIG_KEYBOARD_SUN4I_LRADC=m # CONFIG_KEYBOARD_TCA6416 is not set # CONFIG_KEYBOARD_TCA8418 is not set CONFIG_KEYBOARD_TEGRA=m +CONFIG_KEYBOARD_TM2_TOUCHKEY=m CONFIG_KEYBOARD_TWL4030=m # CONFIG_KEYBOARD_XTKBD is not set CONFIG_KEY_DH_OPERATIONS=y @@ -2730,7 +2722,7 @@ CONFIG_KGDB_TESTS=y CONFIG_KGDB=y CONFIG_KINGSUN_DONGLE=m # CONFIG_KMX61 is not set -CONFIG_KPROBE_EVENT=y +CONFIG_KPROBE_EVENTS=y # CONFIG_KPROBES_SANITY_TEST is not set CONFIG_KPROBES=y CONFIG_KS0108_DELAY=2 @@ -2777,6 +2769,7 @@ CONFIG_LDM_PARTITION=y # CONFIG_LEDS_BCM6358 is not set # CONFIG_LEDS_BD2802 is not set CONFIG_LEDS_BLINKM=m +CONFIG_LEDS_BRIGHTNESS_HW_CHANGED=y CONFIG_LEDS_CLASS_FLASH=m CONFIG_LEDS_CLASS=y CONFIG_LEDS_CLEVO_MAIL=m @@ -2785,7 +2778,6 @@ CONFIG_LEDS_DAC124S085=m CONFIG_LEDS_DELL_NETBOOKS=m CONFIG_LEDS_GPIO=m CONFIG_LEDS_GPIO_REGISTER=y -CONFIG_LEDS_INTEL_SS4200=m # CONFIG_LEDS_IS31FL319X is not set # CONFIG_LEDS_IS31FL32XX is not set # CONFIG_LEDS_KTD2692 is not set @@ -2897,6 +2889,8 @@ CONFIG_LOOPBACK_TARGET=m # CONFIG_LPC_ICH is not set CONFIG_LP_CONSOLE=y # CONFIG_LPC_SCH is not set +CONFIG_LPFC_NVME_INITIATOR=y +CONFIG_LPFC_NVME_TARGET=y CONFIG_LSI_ET1011C_PHY=m CONFIG_LSM_MMAP_MIN_ADDR=32768 # CONFIG_LTC2485 is not set @@ -2931,6 +2925,9 @@ CONFIG_MACH_ARMADA_XP=y CONFIG_MACH_DOVE=y # CONFIG_MACH_FLINT is not set # CONFIG_MACH_MARVELL_JASPER is not set +# CONFIG_MACH_MESON6 is not set +CONFIG_MACH_MESON8B=y +# CONFIG_MACH_MESON8 is not set CONFIG_MACH_MMP2_DT=y # CONFIG_MACH_OMAP3517EVM is not set # CONFIG_MACH_OMAP3_PANDORA is not set @@ -2948,6 +2945,7 @@ CONFIG_MACVLAN=m CONFIG_MACVTAP=m # CONFIG_MAG3110 is not set CONFIG_MAGIC_SYSRQ_DEFAULT_ENABLE=0x0 +CONFIG_MAGIC_SYSRQ_SERIAL=y CONFIG_MAGIC_SYSRQ=y # CONFIG_MAILBOX_TEST is not set CONFIG_MAILBOX=y @@ -2955,10 +2953,12 @@ CONFIG_MAILBOX=y CONFIG_MANTIS_CORE=m CONFIG_MARVELL_PHY=m # CONFIG_MAX1027 is not set +# CONFIG_MAX11100 is not set # CONFIG_MAX1363 is not set CONFIG_MAX30100=m # CONFIG_MAX44000 is not set # CONFIG_MAX517 is not set +# CONFIG_MAX5481 is not set # CONFIG_MAX5487 is not set # CONFIG_MAX5821 is not set # CONFIG_MAX63XX_WATCHDOG is not set @@ -3039,6 +3039,7 @@ CONFIG_MEMSTICK_TIFM_MS=m CONFIG_MESON_EFUSE=m # CONFIG_MESON_GXBB_WATCHDOG is not set # CONFIG_MESON_GXL_PHY is not set +CONFIG_MESON_SARADC=m CONFIG_MESON_SM=y CONFIG_MESON_WATCHDOG=m CONFIG_MESSAGE_LOGLEVEL_DEFAULT=4 @@ -3061,6 +3062,7 @@ CONFIG_MFD_AXP20X_RSB=m CONFIG_MFD_AXP20X=y # CONFIG_MFD_BCM590XX is not set CONFIG_MFD_CORE=y +CONFIG_MFD_CPCAP=m CONFIG_MFD_CROS_EC_I2C=m CONFIG_MFD_CROS_EC=m CONFIG_MFD_CROS_EC_SPI=m @@ -3195,6 +3197,7 @@ CONFIG_MMA7660=m # CONFIG_MMA9553 is not set # CONFIG_MMC35240 is not set CONFIG_MMC_ARMMMCI=m +CONFIG_MMC_BCM2835=m CONFIG_MMC_BLOCK_BOUNCE=y CONFIG_MMC_BLOCK=m CONFIG_MMC_BLOCK_MINORS=8 @@ -3235,6 +3238,7 @@ CONFIG_MMC_SDHCI_PXAV2=m CONFIG_MMC_SDHCI_PXAV3=m CONFIG_MMC_SDHCI_S3C_DMA=y CONFIG_MMC_SDHCI_S3C=m +CONFIG_MMC_SDHCI_ST=m CONFIG_MMC_SDHCI_TEGRA=m CONFIG_MMC_SDRICOH_CS=m CONFIG_MMC_SPI=m @@ -3278,7 +3282,6 @@ CONFIG_MOUSE_ELAN_I2C_SMBUS=y CONFIG_MOUSE_PS2_ELANTECH=y CONFIG_MOUSE_PS2_SENTELIC=y # CONFIG_MOUSE_PS2_TOUCHKIT is not set -# CONFIG_MOUSE_PS2_VMMOUSE is not set CONFIG_MOUSE_PS2=y CONFIG_MOUSE_SERIAL=m CONFIG_MOUSE_SYNAPTICS_I2C=m @@ -3294,6 +3297,7 @@ CONFIG_MPL3115=m CONFIG_MPLS_IPTUNNEL=m CONFIG_MPLS_ROUTING=m # CONFIG_MPU3050_I2C is not set +CONFIG_MQ_IOSCHED_DEADLINE=y # CONFIG_MS5611 is not set # CONFIG_MS5637 is not set # CONFIG_MS_BLOCK is not set @@ -3383,6 +3387,7 @@ CONFIG_MTD_ONENAND_OMAP2=m # CONFIG_MTD_PHRAM is not set # CONFIG_MTD_PHYSMAP_COMPAT is not set CONFIG_MTD_PHYSMAP=m +# CONFIG_MTD_PHYSMAP_OF_GEMINI is not set CONFIG_MTD_PHYSMAP_OF=m CONFIG_MTD_PHYSMAP_OF_VERSATILE=y # CONFIG_MTD_PLATRAM is not set @@ -3462,6 +3467,7 @@ CONFIG_NET_ACT_MIRRED=m CONFIG_NET_ACT_NAT=m CONFIG_NET_ACT_PEDIT=m CONFIG_NET_ACT_POLICE=m +CONFIG_NET_ACT_SAMPLE=m CONFIG_NET_ACT_SIMP=m CONFIG_NET_ACT_SKBEDIT=m CONFIG_NET_ACT_SKBMOD=m @@ -3595,6 +3601,7 @@ CONFIG_NETFILTER_XT_TARGET_TRACE=m CONFIG_NETFILTER=y CONFIG_NET_FOU_IP_TUNNELS=y CONFIG_NET_FOU=m +CONFIG_NET_IFE=m CONFIG_NET_IFE_SKBMARK=m CONFIG_NET_IFE_SKBPRIO=m CONFIG_NET_IFE_SKBTCINDEX=m @@ -3605,7 +3612,7 @@ CONFIG_NET_IPIP=m CONFIG_NET_IPVTI=m CONFIG_NET_KEY=m CONFIG_NET_KEY_MIGRATE=y -# CONFIG_NET_L3_MASTER_DEV is not set +CONFIG_NET_L3_MASTER_DEV=y CONFIG_NETLABEL=y CONFIG_NETLINK_DIAG=m CONFIG_NET_MPLS_GSO=m @@ -3658,8 +3665,9 @@ CONFIG_NET_VENDOR_AGERE=y # CONFIG_NET_VENDOR_ALACRITECH is not set CONFIG_NET_VENDOR_ALLWINNER=y CONFIG_NET_VENDOR_ALTEON=y -# CONFIG_NET_VENDOR_AMAZON is not set +CONFIG_NET_VENDOR_AMAZON=y CONFIG_NET_VENDOR_AMD=y +# CONFIG_NET_VENDOR_AQUANTIA is not set CONFIG_NET_VENDOR_ARC=y CONFIG_NET_VENDOR_ATHEROS=y # CONFIG_NET_VENDOR_AURORA is not set @@ -3786,6 +3794,8 @@ CONFIG_NF_LOG_IPV6=m CONFIG_NF_LOG_NETDEV=m CONFIG_NF_NAT=m CONFIG_NF_NAT_SNMP_BASIC=m +# CONFIG_NFP_DEBUG is not set +CONFIG_NFP=m # CONFIG_NFP_NET_DEBUG is not set CONFIG_NFP_NETVF=m CONFIG_NF_REJECT_IPV6=m @@ -3857,6 +3867,7 @@ CONFIG_NFT_REDIR=m CONFIG_NFT_REJECT_IPV4=m CONFIG_NFT_REJECT=m CONFIG_NFT_RT=m +CONFIG_NFT_SET_BITMAP=m CONFIG_NFT_SET_HASH=m CONFIG_NFT_SET_RBTREE=m CONFIG_N_GSM=m @@ -3999,7 +4010,6 @@ CONFIG_OMAP_INTERCONNECT=y # CONFIG_OMAP_IOMMU_DEBUG is not set CONFIG_OMAP_IOMMU=y CONFIG_OMAP_MBOX_KFIFO_SIZE=256 -# CONFIG_OMAP_MUX_DEBUG is not set CONFIG_OMAP_MUX_WARNINGS=y CONFIG_OMAP_MUX=y CONFIG_OMAP_OCP2SCP=m @@ -4043,6 +4053,7 @@ CONFIG_PANTHERLORD_FF=y CONFIG_PARAVIRT_TIME_ACCOUNTING=y CONFIG_PARAVIRT=y # CONFIG_PARIDE is not set +CONFIG_PARMAN=m CONFIG_PARPORT_1284=y # CONFIG_PARPORT_AX88796 is not set # CONFIG_PARPORT is not set @@ -4103,6 +4114,7 @@ CONFIG_PATA_TOSHIBA=m CONFIG_PATA_TRIFLEX=m CONFIG_PATA_VIA=m CONFIG_PATA_WINBOND=m +# CONFIG_PC104 is not set # CONFIG_PC87413_WDT is not set CONFIG_PCCARD=y CONFIG_PCF50633_ADC=m @@ -4173,14 +4185,19 @@ CONFIG_PHY_EXYNOS5250_SATA=m CONFIG_PHY_EXYNOS5_USBDRD=m CONFIG_PHY_EXYNOS_DP_VIDEO=m CONFIG_PHY_EXYNOS_MIPI_VIDEO=m +CONFIG_PHY_EXYNOS_PCIE=y CONFIG_PHYLIB=y CONFIG_PHY_MESON8B_USB2=m +CONFIG_PHY_MIPHY28LP=m +# CONFIG_PHY_MIPHY365X is not set CONFIG_PHY_MVEBU_SATA=y # CONFIG_PHY_PXA_28NM_HSIC is not set # CONFIG_PHY_PXA_28NM_USB2 is not set CONFIG_PHY_QCOM_APQ8064_SATA=m # CONFIG_PHY_QCOM_IPQ806X_SATA is not set CONFIG_PHY_QCOM_UFS=m +CONFIG_PHY_QCOM_USB_HSIC=m +CONFIG_PHY_QCOM_USB_HS=m CONFIG_PHY_ROCKCHIP_DP=m CONFIG_PHY_ROCKCHIP_EMMC=m CONFIG_PHY_ROCKCHIP_INNO_USB2=m @@ -4188,6 +4205,8 @@ CONFIG_PHY_ROCKCHIP_PCIE=m CONFIG_PHY_ROCKCHIP_TYPEC=m CONFIG_PHY_ROCKCHIP_USB=m CONFIG_PHY_SAMSUNG_USB2=m +CONFIG_PHY_STIH407_USB=m +# CONFIG_PHY_STIH41X_USB is not set # CONFIG_PHY_ST_SPEAR1310_MIPHY is not set # CONFIG_PHY_ST_SPEAR1340_MIPHY is not set CONFIG_PHY_SUN4I_USB=m @@ -4208,6 +4227,7 @@ CONFIG_PINCTRL_AS3722=y # CONFIG_PINCTRL_BROXTON is not set # CONFIG_PINCTRL_CHERRYVIEW is not set CONFIG_PINCTRL_DOVE=y +# CONFIG_PINCTRL_GEMINILAKE is not set # CONFIG_PINCTRL_IMX35 is not set CONFIG_PINCTRL_IMX6SL=y # CONFIG_PINCTRL_IPQ4019 is not set @@ -4227,6 +4247,7 @@ CONFIG_PINCTRL_SAMSUNG=y CONFIG_PINCTRL_SINGLE=y # CONFIG_PINCTRL_SUNRISEPOINT is not set # CONFIG_PINCTRL_SX150X is not set +# CONFIG_PINCTRL_TI_IODELAY is not set CONFIG_PINCTRL=y CONFIG_PINCTRL_ZYNQ=y CONFIG_PINMUX=y @@ -4277,6 +4298,7 @@ CONFIG_POWER_RESET_IMX=y CONFIG_POWER_RESET_MSM=y # CONFIG_POWER_RESET_QNAP is not set CONFIG_POWER_RESET_RESTART=y +CONFIG_POWER_RESET_ST=y CONFIG_POWER_RESET_SYSCON_POWEROFF=y CONFIG_POWER_RESET_SYSCON=y CONFIG_POWER_RESET_VERSATILE=y @@ -4310,6 +4332,7 @@ CONFIG_PPTP=m CONFIG_PREEMPT_VOLUNTARY=y CONFIG_PREVENT_FIRMWARE_BUILD=y CONFIG_PRINTER=m +CONFIG_PRINTK_SAFE_LOG_BUF_SHIFT=12 CONFIG_PRINTK_TIME=y # CONFIG_PRINT_QUOTA_WARNING is not set # CONFIG_PRISM2_USB is not set @@ -4324,6 +4347,7 @@ CONFIG_PROFILING=y CONFIG_PROVE_LOCKING=y # CONFIG_PROVE_RCU_REPEATEDLY is not set CONFIG_PROVE_RCU=y +CONFIG_PSAMPLE=m # CONFIG_PSTORE_CONSOLE is not set # CONFIG_PSTORE_FTRACE is not set # CONFIG_PSTORE_PMSG is not set @@ -4341,6 +4365,7 @@ CONFIG_PWM_OMAP_DMTIMER=m # CONFIG_PWM_PCA9685 is not set CONFIG_PWM_ROCKCHIP=m CONFIG_PWM_SAMSUNG=m +CONFIG_PWM_STI=m # CONFIG_PWM_STMPE is not set CONFIG_PWM_SUN4I=m CONFIG_PWM_SYSFS=y @@ -4352,6 +4377,7 @@ CONFIG_PWM_TWL_LED=m CONFIG_PWM_TWL=m CONFIG_PWM=y CONFIG_PWRSEQ_EMMC=m +# CONFIG_PWRSEQ_SD8787 is not set CONFIG_PWRSEQ_SIMPLE=m CONFIG_PXA_DMA=y # CONFIG_QCA7000 is not set @@ -4365,6 +4391,7 @@ CONFIG_QCOM_COINCELL=m CONFIG_QCOM_GSBI=m # CONFIG_QCOM_HIDMA is not set # CONFIG_QCOM_HIDMA_MGMT is not set +CONFIG_QCOM_IRQ_COMBINER=y CONFIG_QCOM_PM=y # CONFIG_QCOM_Q6V5_PIL is not set CONFIG_QCOM_QFPROM=m @@ -4381,6 +4408,7 @@ CONFIG_QCOM_WCNSS_CTRL=m # CONFIG_QCOM_WCNSS_PIL is not set CONFIG_QCOM_WDT=m CONFIG_QEDE=m +CONFIG_QEDF=m CONFIG_QEDI=m CONFIG_QED=m CONFIG_QED_SRIOV=y @@ -4443,6 +4471,7 @@ CONFIG_RC_DECODERS=y CONFIG_RC_DEVICES=y CONFIG_RC_LOOPBACK=m CONFIG_RC_MAP=m +CONFIG_RC_ST=m CONFIG_RCU_CPU_STALL_TIMEOUT=60 # CONFIG_RCU_EQS_DEBUG is not set # CONFIG_RCU_EXPERT is not set @@ -4485,6 +4514,7 @@ CONFIG_REGULATOR_AD5398=m CONFIG_REGULATOR_ANATOP=m CONFIG_REGULATOR_AS3722=m CONFIG_REGULATOR_AXP20X=m +CONFIG_REGULATOR_CPCAP=m CONFIG_REGULATOR_DA9052=m CONFIG_REGULATOR_DA9055=m CONFIG_REGULATOR_DA9210=m @@ -4519,7 +4549,7 @@ CONFIG_REGULATOR_PFUZE100=m CONFIG_REGULATOR_PV88060=m # CONFIG_REGULATOR_PV88080 is not set CONFIG_REGULATOR_PV88090=m -CONFIG_REGULATOR_PWM=m +CONFIG_REGULATOR_PWM=y CONFIG_REGULATOR_QCOM_RPM=m CONFIG_REGULATOR_QCOM_SMD_RPM=m CONFIG_REGULATOR_QCOM_SPMI=m @@ -4561,7 +4591,6 @@ CONFIG_RESET_GPIO=y CONFIG_RFKILL_GPIO=m CONFIG_RFKILL_INPUT=y CONFIG_RFKILL=m -CONFIG_RFKILL_REGULATOR=m CONFIG_RING_BUFFER_BENCHMARK=m # CONFIG_RING_BUFFER_STARTUP_TEST is not set # CONFIG_RIO is not set @@ -4577,6 +4606,7 @@ CONFIG_RMI4_I2C=m CONFIG_RMI4_SMB=m CONFIG_RMI4_SPI=m CONFIG_ROCKCHIP_ANALOGIX_DP=m +# CONFIG_ROCKCHIP_CDN_DP is not set CONFIG_ROCKCHIP_DW_HDMI=m CONFIG_ROCKCHIP_DW_MIPI_DSI=m CONFIG_ROCKCHIP_EFUSE=m @@ -4592,6 +4622,7 @@ CONFIG_ROCKETPORT=m CONFIG_ROMFS_FS=m CONFIG_ROSE=m CONFIG_RPCSEC_GSS_KRB5=m +# CONFIG_RPMSG_CHAR is not set CONFIG_RPR0521=m CONFIG_RSI_91X=m CONFIG_RSI_DEBUGFS=y @@ -4678,7 +4709,7 @@ CONFIG_RTC_DRV_MC13XXX=m CONFIG_RTC_DRV_MSM6242=m CONFIG_RTC_DRV_MV=m CONFIG_RTC_DRV_MXC=m -CONFIG_RTC_DRV_OMAP=y +CONFIG_RTC_DRV_OMAP=m CONFIG_RTC_DRV_PALMAS=m CONFIG_RTC_DRV_PCF2123=m CONFIG_RTC_DRV_PCF2127=m @@ -4710,6 +4741,7 @@ CONFIG_RTC_DRV_S5M=m # CONFIG_RTC_DRV_SA1100 is not set CONFIG_RTC_DRV_SNVS=m CONFIG_RTC_DRV_STK17TA8=m +CONFIG_RTC_DRV_ST_LPC=m CONFIG_RTC_DRV_SUN6I=y CONFIG_RTC_DRV_SUNXI=m CONFIG_RTC_DRV_TEGRA=m @@ -5061,6 +5093,7 @@ CONFIG_SENSORS_SIS5595=m CONFIG_SENSORS_SMSC47B397=m CONFIG_SENSORS_SMSC47M192=m CONFIG_SENSORS_SMSC47M1=m +# CONFIG_SENSORS_STTS751 is not set CONFIG_SENSORS_TC654=m CONFIG_SENSORS_TC74=m CONFIG_SENSORS_THMC50=m @@ -5100,6 +5133,7 @@ CONFIG_SERIAL_8250_CS=m # CONFIG_SERIAL_8250_DETECT_IRQ is not set CONFIG_SERIAL_8250_DW=y # CONFIG_SERIAL_8250_EM is not set +CONFIG_SERIAL_8250_EXAR=m CONFIG_SERIAL_8250_EXTENDED=y # CONFIG_SERIAL_8250_FINTEK is not set # CONFIG_SERIAL_8250_INGENIC is not set @@ -5108,6 +5142,7 @@ CONFIG_SERIAL_8250_MANY_PORTS=y CONFIG_SERIAL_8250_MOXA=m CONFIG_SERIAL_8250_NR_UARTS=32 CONFIG_SERIAL_8250_OMAP=m +CONFIG_SERIAL_8250_PCI=m CONFIG_SERIAL_8250_RSA=y CONFIG_SERIAL_8250_RT288X=y CONFIG_SERIAL_8250_RUNTIME_UARTS=32 @@ -5125,6 +5160,8 @@ CONFIG_SERIAL_ARC_NR_PORTS=1 # CONFIG_SERIAL_CONEXANT_DIGICOLOR is not set CONFIG_SERIAL_CORE_CONSOLE=y CONFIG_SERIAL_CORE=y +CONFIG_SERIAL_DEV_BUS=y +CONFIG_SERIAL_DEV_CTRL_TTYPORT=y CONFIG_SERIAL_EARLYCON_ARM_SEMIHOST=y # CONFIG_SERIAL_FSL_LPUART is not set # CONFIG_SERIAL_IFX6X60 is not set @@ -5141,7 +5178,7 @@ CONFIG_SERIAL_MSM_CONSOLE=y CONFIG_SERIAL_MSM=y CONFIG_SERIAL_MVEBU_CONSOLE=y CONFIG_SERIAL_MVEBU_UART=y -CONFIG_SERIAL_NONSTANDARD=y +# CONFIG_SERIAL_NONSTANDARD is not set CONFIG_SERIAL_OF_PLATFORM=y CONFIG_SERIAL_OMAP_CONSOLE=y CONFIG_SERIAL_OMAP=y @@ -5154,7 +5191,8 @@ CONFIG_SERIAL_SAMSUNG_CONSOLE=y CONFIG_SERIAL_SAMSUNG=y # CONFIG_SERIAL_SC16IS7XX is not set # CONFIG_SERIAL_SCCNXP is not set -# CONFIG_SERIAL_ST_ASC is not set +CONFIG_SERIAL_ST_ASC_CONSOLE=y +CONFIG_SERIAL_ST_ASC=y CONFIG_SERIAL_TEGRA=y # CONFIG_SERIAL_TIMBERDALE is not set CONFIG_SERIAL_UARTLITE_CONSOLE=y @@ -5211,6 +5249,7 @@ CONFIG_SMARTJOYPLUS_FF=y CONFIG_SMC911X=m CONFIG_SMC91X=m CONFIG_SMC_IRCC_FIR=m +# CONFIG_SMC is not set # CONFIG_SM_FTL is not set CONFIG_SMP_ON_UP=y CONFIG_SMP=y @@ -5383,7 +5422,7 @@ CONFIG_SND_SEQUENCER=m CONFIG_SND_SEQUENCER_OSS=y CONFIG_SND_SERIAL_U16550=m CONFIG_SND_SIMPLE_CARD=m -# CONFIG_SND_SIMPLE_SCU_CARD is not set +CONFIG_SND_SIMPLE_SCU_CARD=m CONFIG_SND_SIS7019=m CONFIG_SND_SOC_AC97_BUS=y CONFIG_SND_SOC_AC97_CODEC=m @@ -5454,6 +5493,7 @@ CONFIG_SND_SOC=m # CONFIG_SND_SOC_MAX9860 is not set # CONFIG_SND_SOC_MSM8916_WCD_ANALOG is not set # CONFIG_SND_SOC_MSM8916_WCD_DIGITAL is not set +# CONFIG_SND_SOC_NAU8540 is not set # CONFIG_SND_SOC_NAU8810 is not set # CONFIG_SND_SOC_PCM1681 is not set # CONFIG_SND_SOC_PCM179X_I2C is not set @@ -5465,7 +5505,8 @@ CONFIG_SND_SOC_PCM512x_I2C=m CONFIG_SND_SOC_PCM512x=m CONFIG_SND_SOC_PCM512x_SPI=m CONFIG_SND_SOC_QCOM=m -# CONFIG_SND_SOC_RK3399_GRU_SOUND is not set +CONFIG_SND_SOC_RK3288_HDMI_ANALOG=m +CONFIG_SND_SOC_RK3399_GRU_SOUND=m CONFIG_SND_SOC_ROCKCHIP_I2S=m CONFIG_SND_SOC_ROCKCHIP=m CONFIG_SND_SOC_ROCKCHIP_MAX98090=m @@ -5486,7 +5527,8 @@ CONFIG_SND_SOC_SPDIF=m # CONFIG_SND_SOC_SSM4567 is not set # CONFIG_SND_SOC_STA32X is not set # CONFIG_SND_SOC_STA350 is not set -# CONFIG_SND_SOC_STI_SAS is not set +CONFIG_SND_SOC_STI=m +CONFIG_SND_SOC_STI_SAS=m CONFIG_SND_SOC_STORM=m # CONFIG_SND_SOC_TAS2552 is not set # CONFIG_SND_SOC_TAS5086 is not set @@ -5502,9 +5544,9 @@ CONFIG_SND_SOC_TEGRA=m CONFIG_SND_SOC_TEGRA_MAX98090=m CONFIG_SND_SOC_TEGRA_RT5640=m CONFIG_SND_SOC_TEGRA_RT5677=m -# CONFIG_SND_SOC_TEGRA_SGTL5000 is not set +CONFIG_SND_SOC_TEGRA_SGTL5000=m CONFIG_SND_SOC_TEGRA_TRIMSLICE=m -CONFIG_SND_SOC_TEGRA_WM8753=m +# CONFIG_SND_SOC_TEGRA_WM8753 is not set CONFIG_SND_SOC_TEGRA_WM8903=m CONFIG_SND_SOC_TEGRA_WM9712=m # CONFIG_SND_SOC_TFA9879 is not set @@ -5545,6 +5587,7 @@ CONFIG_SND_SUN4I_CODEC=m CONFIG_SND_SUN4I_I2S=m CONFIG_SND_SUN4I_SPDIF=m CONFIG_SND_SUN8I_CODEC_ANALOG=m +CONFIG_SND_SUN8I_CODEC=m # CONFIG_SND_SUPPORT_OLD_API is not set CONFIG_SND_TRIDENT=m CONFIG_SND_USB_6FIRE=m @@ -5596,9 +5639,13 @@ CONFIG_SOC_IMX7D=y # CONFIG_SOC_LS1021A is not set CONFIG_SOC_OMAP3430=y CONFIG_SOC_OMAP5=y +CONFIG_SOC_STIH407=y +# CONFIG_SOC_STIH415 is not set +# CONFIG_SOC_STIH416 is not set CONFIG_SOC_TI81XX=y # CONFIG_SOC_TI is not set # CONFIG_SOC_VF610 is not set +# CONFIG_SOC_ZTE is not set CONFIG_SOFT_WATCHDOG=m CONFIG_SOLARIS_X86_PARTITION=y # CONFIG_SOLO6X10 is not set @@ -5645,6 +5692,7 @@ CONFIG_SPI_ROCKCHIP=m CONFIG_SPI_S3C64XX=m # CONFIG_SPI_SC18IS602 is not set CONFIG_SPI_SPIDEV=m +CONFIG_SPI_ST_SSC4=m CONFIG_SPI_SUN4I=m CONFIG_SPI_SUN6I=m CONFIG_SPI_TEGRA114=m @@ -5668,6 +5716,7 @@ CONFIG_SQUASHFS_XATTR=y CONFIG_SQUASHFS_XZ=y CONFIG_SQUASHFS_ZLIB=y CONFIG_SRAM=y +# CONFIG_SRF08 is not set # CONFIG_SSB_DEBUG is not set CONFIG_SSB_DRIVER_GPIO=y CONFIG_SSB_DRIVER_PCICORE=y @@ -5685,11 +5734,15 @@ CONFIG_STAGING_MEDIA=y CONFIG_STAGING=y CONFIG_STANDALONE=y # CONFIG_STATIC_KEYS_SELFTEST is not set +# CONFIG_STATIC_USERMODEHELPER is not set CONFIG_STE10XP=m # CONFIG_STE_MODEM_RPROC is not set +CONFIG_ST_FDMA=m +CONFIG_STI_MBOX=m CONFIG_STK3310=m # CONFIG_STK8312 is not set # CONFIG_STK8BA50 is not set +CONFIG_ST_LPC_WATCHDOG=m # CONFIG_STM_DUMMY is not set # CONFIG_STM is not set CONFIG_STMMAC_ETH=m @@ -5698,16 +5751,24 @@ CONFIG_STMMAC_PLATFORM=m CONFIG_STMPE_I2C=y CONFIG_STMPE_SPI=y # CONFIG_STM_SOURCE_CONSOLE is not set +CONFIG_ST_REMOTEPROC=m CONFIG_STRICT_DEVMEM=y +CONFIG_STRICT_KERNEL_RWX=y +CONFIG_STRICT_MODULE_RWX=y CONFIG_STRIP_ASM_SYMS=y # CONFIG_STRIP is not set +CONFIG_ST_THERMAL=m +CONFIG_ST_THERMAL_MEMMAP=m +# CONFIG_ST_THERMAL_SYSCFG is not set CONFIG_SUN4I_EMAC=m # CONFIG_SUN50I_A64_CCU is not set -# CONFIG_SUN6I_A31_CCU is not set -# CONFIG_SUN8I_A23_CCU is not set -# CONFIG_SUN8I_A33_CCU is not set -CONFIG_SUN8I_EMAC=m +CONFIG_SUN5I_CCU=y +CONFIG_SUN6I_A31_CCU=y +CONFIG_SUN8I_A23_CCU=y +CONFIG_SUN8I_A33_CCU=y CONFIG_SUN8I_H3_CCU=y +CONFIG_SUN8I_V3S_CCU=y +CONFIG_SUN9I_A80_CCU=y CONFIG_SUNDANCE=m # CONFIG_SUNDANCE_MMIO is not set # CONFIG_SUNGEM is not set @@ -5735,7 +5796,7 @@ CONFIG_SYNCLINK=m CONFIG_SYNCLINKMP=m CONFIG_SYN_COOKIES=y # CONFIG_SYNOPSYS_DWC_ETH_QOS is not set -# CONFIG_SYSCON_REBOOT_MODE is not set +CONFIG_SYSCON_REBOOT_MODE=y CONFIG_SYSCTL=y # CONFIG_SYSFS_DEPRECATED is not set # CONFIG_SYSFS_DEPRECATED_V2 is not set @@ -5830,9 +5891,11 @@ CONFIG_TEST_ASYNC_DRIVER_PROBE=m CONFIG_TEST_KSTRTOX=y CONFIG_TEST_LIST_SORT=y # CONFIG_TEST_LKM is not set +# CONFIG_TEST_PARMAN is not set # CONFIG_TEST_POWER is not set # CONFIG_TEST_PRINTF is not set # CONFIG_TEST_RHASHTABLE is not set +# CONFIG_TEST_SORT is not set # CONFIG_TEST_STATIC_KEYS is not set # CONFIG_TEST_STRING_HELPERS is not set # CONFIG_TEST_UDELAY is not set @@ -5859,13 +5922,15 @@ CONFIG_TI_ADC081C=m # CONFIG_TI_ADC128S052 is not set # CONFIG_TI_ADC161S626 is not set # CONFIG_TI_ADS1015 is not set +# CONFIG_TI_ADS7950 is not set # CONFIG_TI_ADS8688 is not set CONFIG_TI_AM335X_ADC=m CONFIG_TI_CPPI41=m CONFIG_TI_CPSW_ALE=m CONFIG_TI_CPSW=m CONFIG_TI_CPSW_PHY_SEL=y -CONFIG_TI_CPTS=m +CONFIG_TI_CPTS_MOD=m +CONFIG_TI_CPTS=y CONFIG_TI_DAC7512=m CONFIG_TI_DAVINCI_CPDMA=m CONFIG_TI_DAVINCI_EMAC=m @@ -5877,6 +5942,8 @@ CONFIG_TIFM_CORE=m CONFIG_TIGON3=m # CONFIG_TIMB_DMA is not set # CONFIG_TIMER_STATS is not set +CONFIG_TINYDRM_MI0283QT=m +CONFIG_TINYDRM_MIPI_DBI=m CONFIG_TIPC=m # CONFIG_TIPC_MEDIA_IB is not set CONFIG_TIPC_MEDIA_UDP=y @@ -5886,9 +5953,11 @@ CONFIG_TI_SOC_THERMAL=m CONFIG_TI_ST=m CONFIG_TI_SYSCON_RESET=m CONFIG_TI_THERMAL=y +# CONFIG_TI_TLC4541 is not set # CONFIG_TLAN is not set # CONFIG_TMD_HERMES is not set CONFIG_TMP006=m +# CONFIG_TMP007 is not set CONFIG_TMPFS_POSIX_ACL=y CONFIG_TMPFS_XATTR=y CONFIG_TMPFS=y @@ -5961,6 +6030,7 @@ CONFIG_TOUCHSCREEN_WACOM_I2C=m CONFIG_TOUCHSCREEN_WACOM_W8001=m # CONFIG_TOUCHSCREEN_WDT87XX_I2C is not set # CONFIG_TOUCHSCREEN_WM97XX is not set +CONFIG_TOUCHSCREEN_ZET6223=m CONFIG_TOUCHSCREEN_ZFORCE=m # CONFIG_TPL0102 is not set # CONFIG_TPS6105X is not set @@ -6037,7 +6107,7 @@ CONFIG_UNIX_DIAG=m CONFIG_UNIXWARE_DISKLABEL=y CONFIG_UNIX=y CONFIG_UNUSED_SYMBOLS=y -CONFIG_UPROBE_EVENT=y +CONFIG_UPROBE_EVENTS=y # CONFIG_US5182D is not set CONFIG_USB_ACM=m CONFIG_USB_ADUTUX=m @@ -6058,6 +6128,7 @@ CONFIG_USB_CHAOSKEY=m CONFIG_USB_CHIPIDEA_HOST=y CONFIG_USB_CHIPIDEA=m CONFIG_USB_CHIPIDEA_UDC=y +# CONFIG_USB_CHIPIDEA_ULPI is not set CONFIG_USB_CONFIGFS_ACM=y CONFIG_USB_CONFIGFS_ECM_SUBSET=y CONFIG_USB_CONFIGFS_ECM=y @@ -6095,6 +6166,7 @@ CONFIG_USB_DWC3=m CONFIG_USB_DWC3_OF_SIMPLE=m CONFIG_USB_DWC3_OMAP=m CONFIG_USB_DWC3_PCI=m +CONFIG_USB_DWC3_ST=m CONFIG_USB_DWC3_ULPI=y # CONFIG_USB_DYNAMIC_MINORS is not set # CONFIG_USB_EG20T is not set @@ -6102,6 +6174,7 @@ CONFIG_USB_EHCI_EXYNOS=m CONFIG_USB_EHCI_HCD_OMAP=m CONFIG_USB_EHCI_HCD_ORION=m CONFIG_USB_EHCI_HCD_PLATFORM=m +CONFIG_USB_EHCI_HCD_STI=m CONFIG_USB_EHCI_HCD=y CONFIG_USB_EHCI_MSM=m # CONFIG_USB_EHCI_MV is not set @@ -6188,6 +6261,7 @@ CONFIG_USB_HID=y CONFIG_USB_HSIC_USB3503=m CONFIG_USB_HSIC_USB4604=m CONFIG_USB_HSO=m +CONFIG_USB_HUB_USB251XB=m CONFIG_USB_HWA_HCD=m CONFIG_USB_IDMOUSE=m CONFIG_USB_IMX21_HCD=m @@ -6270,6 +6344,7 @@ CONFIG_USB_OHCI_HCD_OMAP3=m CONFIG_USB_OHCI_HCD_PCI=y CONFIG_USB_OHCI_HCD_PLATFORM=m # CONFIG_USB_OHCI_HCD_SSB is not set +CONFIG_USB_OHCI_HCD_STI=m CONFIG_USB_OHCI_HCD=y # CONFIG_USB_OTG_BLACKLIST_HUB is not set # CONFIG_USB_OTG_FSM is not set @@ -6354,6 +6429,7 @@ CONFIG_USB_SERIAL_SPCP8X5=m CONFIG_USB_SERIAL_SSU100=m CONFIG_USB_SERIAL_SYMBOL=m CONFIG_USB_SERIAL_TI=m +CONFIG_USB_SERIAL_UPD78F0730=m CONFIG_USB_SERIAL_VISOR=m CONFIG_USB_SERIAL_WHITEHEAT=m # CONFIG_USB_SERIAL_WISHBONE is not set @@ -6457,6 +6533,7 @@ CONFIG_VFPv3=y CONFIG_VFP=y CONFIG_VGA_ARB_MAX_GPUS=16 CONFIG_VGA_ARB=y +# CONFIG_VGACON_SOFT_SCROLLBACK_PERSISTENT_ENABLE_BY_DEFAULT is not set CONFIG_VGACON_SOFT_SCROLLBACK_SIZE=64 CONFIG_VGACON_SOFT_SCROLLBACK=y CONFIG_VGA_CONSOLE=y @@ -6514,7 +6591,9 @@ CONFIG_VIDEO_GO7007_USB_S2250_BOARD=m CONFIG_VIDEO_HDPVR=m CONFIG_VIDEO_HEXIUM_GEMINI=m CONFIG_VIDEO_HEXIUM_ORION=m +CONFIG_VIDEO_IMX_VDOA=m # CONFIG_VIDEO_IVTV_ALSA is not set +# CONFIG_VIDEO_IVTV_DEPRECATED_IOCTLS is not set CONFIG_VIDEO_IVTV=m # CONFIG_VIDEO_M5MOLS is not set # CONFIG_VIDEO_MEM2MEM_DEINTERLACE is not set @@ -6554,6 +6633,13 @@ CONFIG_VIDEO_SAMSUNG_S5P_MFC=m # CONFIG_VIDEO_SH_VEU is not set CONFIG_VIDEO_SOLO6X10=m CONFIG_VIDEO_SR030PC30=m +CONFIG_VIDEO_STI_BDISP=m +CONFIG_VIDEO_STI_DELTA_DRIVER=m +CONFIG_VIDEO_STI_DELTA=m +CONFIG_VIDEO_STI_DELTA_MJPEG=y +CONFIG_VIDEO_STI_HDMI_CEC=m +# CONFIG_VIDEO_STI_HVA_DEBUGFS is not set +CONFIG_VIDEO_STI_HVA=m CONFIG_VIDEO_STK1160_AC97=y CONFIG_VIDEO_STK1160_COMMON=m CONFIG_VIDEO_STK1160=m @@ -6584,6 +6670,7 @@ CONFIG_VIDEO_ZORAN_ZR36060=m # CONFIG_VIRT_DRIVERS is not set CONFIG_VIRTIO_BALLOON=m CONFIG_VIRTIO_BLK=m +CONFIG_VIRTIO_BLK_SCSI=y CONFIG_VIRTIO_CONSOLE=m CONFIG_VIRTIO_INPUT=m # CONFIG_VIRTIO_MMIO_CMDLINE_DEVICES is not set @@ -6599,8 +6686,6 @@ CONFIG_VLAN_8021Q=m CONFIG_VLAN_8021Q_MVRP=y CONFIG_VLSI_FIR=m # CONFIG_VME_BUS is not set -CONFIG_VMWARE_BALLOON=m -CONFIG_VMWARE_PVSCSI=m # CONFIG_VMXNET3 is not set CONFIG_VORTEX=m CONFIG_VSOCKETS=m @@ -6623,6 +6708,7 @@ CONFIG_W1_MASTER_GPIO=m # CONFIG_W1_MASTER_MATROX is not set CONFIG_W1_MASTER_MXC=m CONFIG_W1_SLAVE_BQ27000=m +CONFIG_W1_SLAVE_DS2405=m CONFIG_W1_SLAVE_DS2406=m CONFIG_W1_SLAVE_DS2408=m # CONFIG_W1_SLAVE_DS2408_READBACK is not set @@ -6697,6 +6783,7 @@ CONFIG_WM8350_POWER=m CONFIG_WM8350_WATCHDOG=m # CONFIG_WQ_POWER_EFFICIENT_DEFAULT is not set CONFIG_WQ_WATCHDOG=y +# CONFIG_WW_MUTEX_SELFTEST is not set # CONFIG_X25 is not set CONFIG_X86_BOOTPARAM_MEMORY_CORRUPTION_CHECK=y CONFIG_X86_PTDUMP=y diff --git a/kernel-armv7hl-lpae-debug.config b/kernel-armv7hl-lpae-debug.config index 2bfab2fc3..7bc14358d 100644 --- a/kernel-armv7hl-lpae-debug.config +++ b/kernel-armv7hl-lpae-debug.config @@ -124,7 +124,6 @@ CONFIG_AEABI=y # CONFIG_AF_KCM is not set # CONFIG_AF_RXRPC is not set # CONFIG_AFS_FS is not set -# CONFIG_AGP is not set # CONFIG_AHCI_CEVA is not set CONFIG_AHCI_MVEBU=m # CONFIG_AHCI_QORIQ is not set @@ -201,7 +200,7 @@ CONFIG_ARCH_HIGHBANK=y # CONFIG_ARCH_HISI is not set CONFIG_ARCH_KEYSTONE=y # CONFIG_ARCH_MEDIATEK is not set -# CONFIG_ARCH_MESON is not set +CONFIG_ARCH_MESON=y # CONFIG_ARCH_MMP is not set # CONFIG_ARCH_MULTI_V6 is not set CONFIG_ARCH_MULTI_V7=y @@ -222,7 +221,6 @@ CONFIG_ARCH_SUNXI=y # CONFIG_ARCH_TANGO is not set CONFIG_ARCH_TEGRA_114_SOC=y CONFIG_ARCH_TEGRA_124_SOC=y -# CONFIG_ARCH_TEGRA_186_SOC is not set # CONFIG_ARCH_TEGRA_2x_SOC is not set # CONFIG_ARCH_TEGRA_3x_SOC is not set CONFIG_ARCH_TEGRA=y @@ -480,7 +478,6 @@ CONFIG_BATMAN_ADV_NC=y # CONFIG_BATTERY_DS2781 is not set # CONFIG_BATTERY_DS2782 is not set # CONFIG_BATTERY_GAUGE_LTC2941 is not set -# CONFIG_BATTERY_GOLDFISH is not set # CONFIG_BATTERY_MAX17040 is not set # CONFIG_BATTERY_MAX17042 is not set CONFIG_BATTERY_SBS=m @@ -526,6 +523,7 @@ CONFIG_BINFMT_SCRIPT=y CONFIG_BLK_CGROUP=y # CONFIG_BLK_CMDLINE_PARSER is not set CONFIG_BLK_CPQ_CISS_DA=m +CONFIG_BLK_DEBUG_FS=y # CONFIG_BLK_DEV_3W_XXXX_RAID is not set CONFIG_BLK_DEV_BSGLIB=y CONFIG_BLK_DEV_BSG=y @@ -564,6 +562,7 @@ CONFIG_BLK_DEV_THROTTLING=y CONFIG_BLK_DEV_UMEM=m CONFIG_BLK_DEV=y CONFIG_BLK_DEV_ZONED=y +CONFIG_BLK_SED_OPAL=y CONFIG_BLK_WBT_MQ=y # CONFIG_BLK_WBT_SQ is not set CONFIG_BLK_WBT=y @@ -662,6 +661,7 @@ CONFIG_BT_HCIUART_INTEL=y CONFIG_BT_HCIUART_LL=y CONFIG_BT_HCIUART=m CONFIG_BT_HCIUART_MRVL=y +CONFIG_BT_HCIUART_NOKIA=m CONFIG_BT_HCIUART_QCA=y CONFIG_BT_HCIVHCI=m CONFIG_BT_HIDP=m @@ -771,6 +771,7 @@ CONFIG_CEPH_LIB_PRETTYDEBUG=y # CONFIG_CEPH_LIB_USE_DNS_RESOLVER is not set CONFIG_CFAG12864B=m CONFIG_CFAG12864B_RATE=20 +CONFIG_CFG80211_CRDA_SUPPORT=y CONFIG_CFG80211_DEBUGFS=y CONFIG_CFG80211_DEFAULT_PS=y # CONFIG_CFG80211_DEVELOPER_WARNINGS is not set @@ -788,13 +789,16 @@ CONFIG_CGROUP_NET_CLASSID=y CONFIG_CGROUP_NET_PRIO=y CONFIG_CGROUP_PERF=y CONFIG_CGROUP_PIDS=y +# CONFIG_CGROUP_RDMA is not set CONFIG_CGROUP_SCHED=y CONFIG_CGROUPS=y +CONFIG_CHARGER_AXP20X=m CONFIG_CHARGER_BQ2415X=m CONFIG_CHARGER_BQ24190=m # CONFIG_CHARGER_BQ24257 is not set CONFIG_CHARGER_BQ24735=m # CONFIG_CHARGER_BQ25890 is not set +# CONFIG_CHARGER_DETECTOR_MAX14656 is not set CONFIG_CHARGER_GPIO=m # CONFIG_CHARGER_ISP1704 is not set # CONFIG_CHARGER_LP8727 is not set @@ -804,6 +808,7 @@ CONFIG_CHARGER_MAX8997=m # CONFIG_CHARGER_PCF50633 is not set # CONFIG_CHARGER_QCOM_SMBB is not set # CONFIG_CHARGER_RT9455 is not set +# CONFIG_CHARGER_SBS is not set CONFIG_CHARGER_SMB347=m CONFIG_CHARGER_TPS65090=m CONFIG_CHECKPOINT_RESTORE=y @@ -847,6 +852,7 @@ CONFIG_CLS_U32_PERF=y CONFIG_CM32181=m # CONFIG_CM3232 is not set # CONFIG_CM3323 is not set +CONFIG_CM3605=m # CONFIG_CM36651 is not set CONFIG_CMA_ALIGNMENT=8 CONFIG_CMA_AREAS=7 @@ -867,21 +873,8 @@ CONFIG_CNIC=m # CONFIG_COMMON_CLK_CDCE706 is not set # CONFIG_COMMON_CLK_CDCE925 is not set # CONFIG_COMMON_CLK_CS2000_CP is not set -# CONFIG_COMMON_CLK_HI3516CV300 is not set -# CONFIG_COMMON_CLK_HI3519 is not set -# CONFIG_COMMON_CLK_HI3798CV200 is not set CONFIG_COMMON_CLK_MAX77686=m CONFIG_COMMON_CLK_MAX77802=m -# CONFIG_COMMON_CLK_MT2701_BDPSYS is not set -# CONFIG_COMMON_CLK_MT2701_ETHSYS is not set -# CONFIG_COMMON_CLK_MT2701_HIFSYS is not set -# CONFIG_COMMON_CLK_MT2701_IMGSYS is not set -# CONFIG_COMMON_CLK_MT2701 is not set -# CONFIG_COMMON_CLK_MT2701_MMSYS is not set -# CONFIG_COMMON_CLK_MT2701_VDECSYS is not set -# CONFIG_COMMON_CLK_MT8135 is not set -# CONFIG_COMMON_CLK_MT8173 is not set -# CONFIG_COMMON_CLK_OXNAS is not set CONFIG_COMMON_CLK_PWM=m CONFIG_COMMON_CLK_RK808=m CONFIG_COMMON_CLK_S2MPS11=m @@ -889,9 +882,11 @@ CONFIG_COMMON_CLK_SCPI=m # CONFIG_COMMON_CLK_SI514 is not set CONFIG_COMMON_CLK_SI5351=m # CONFIG_COMMON_CLK_SI570 is not set +# CONFIG_COMMON_CLK_VC5 is not set CONFIG_COMMON_CLK_VERSATILE=y # CONFIG_COMMON_CLK_XLNX_CLKWZRD is not set CONFIG_COMMON_CLK=y +# CONFIG_COMMON_RESET_HI3660 is not set CONFIG_COMPACTION=y # CONFIG_COMPAT_BRK is not set # CONFIG_COMPILE_TEST is not set @@ -947,6 +942,7 @@ CONFIG_CRYPTO_842=m CONFIG_CRYPTO_AES_ARM_BS=y # CONFIG_CRYPTO_AES_ARM_CE is not set CONFIG_CRYPTO_AES_ARM=y +CONFIG_CRYPTO_AES_TI=m CONFIG_CRYPTO_AES=y CONFIG_CRYPTO_ANSI_CPRNG=m CONFIG_CRYPTO_ANUBIS=m @@ -960,11 +956,11 @@ CONFIG_CRYPTO_CAST6=m CONFIG_CRYPTO_CBC=y CONFIG_CRYPTO_CCM=m CONFIG_CRYPTO_CHACHA20=m +CONFIG_CRYPTO_CHACHA20_NEON=m CONFIG_CRYPTO_CHACHA20POLY1305=m CONFIG_CRYPTO_CMAC=m CONFIG_CRYPTO_CRC32_ARM64_CE=m CONFIG_CRYPTO_CRC32_ARM_CE=m -CONFIG_CRYPTO_CRC32C_INTEL=m CONFIG_CRYPTO_CRC32C_VPMSUM=m CONFIG_CRYPTO_CRC32C=y CONFIG_CRYPTO_CRC32=m @@ -1117,7 +1113,7 @@ CONFIG_DEBUG_PER_CPU_MAPS=y CONFIG_DEBUG_PERF_USE_VMALLOC=y CONFIG_DEBUG_PI_LIST=y # CONFIG_DEBUG_PINCTRL is not set -# CONFIG_DEBUG_RODATA is not set +CONFIG_DEBUG_REFCOUNT=y CONFIG_DEBUG_RODATA_TEST=y CONFIG_DEBUG_RT_MUTEXES=y # CONFIG_DEBUG_SECTION_MISMATCH is not set @@ -1158,6 +1154,7 @@ CONFIG_DEVFREQ_GOV_SIMPLE_ONDEMAND=m CONFIG_DEVFREQ_THERMAL=y # CONFIG_DEVKMEM is not set CONFIG_DEVMEM=y +# CONFIG_DEVPORT is not set CONFIG_DEVTMPFS_MOUNT=y CONFIG_DEVTMPFS=y # CONFIG_DGAP is not set @@ -1236,6 +1233,7 @@ CONFIG_DRM_ARMADA=m CONFIG_DRM_AST=m CONFIG_DRM_BOCHS=m CONFIG_DRM_CIRRUS_QEMU=m +# CONFIG_DRM_DEBUG_MM_SELFTEST is not set CONFIG_DRM_DP_AUX_CHARDEV=y CONFIG_DRM_DUMB_VGA_DAC=m CONFIG_DRM_DW_HDMI_AHB_AUDIO=m @@ -1265,30 +1263,22 @@ CONFIG_DRM_HDLCD=m CONFIG_DRM_HISI_HIBMC=m CONFIG_DRM_I2C_ADV7511_AUDIO=y CONFIG_DRM_I2C_ADV7511=m -# CONFIG_DRM_I2C_ADV7533 is not set +CONFIG_DRM_I2C_ADV7533=y CONFIG_DRM_I2C_CH7006=m CONFIG_DRM_I2C_NXP_TDA998X=m CONFIG_DRM_I2C_SIL164=m -# CONFIG_DRM_I810 is not set -# CONFIG_DRM_I915_ALPHA_SUPPORT is not set -CONFIG_DRM_I915_CAPTURE_ERROR=y -CONFIG_DRM_I915_COMPRESS_ERROR=y -CONFIG_DRM_I915_GVT_KVMGT=m -CONFIG_DRM_I915_GVT=y -CONFIG_DRM_I915=m -CONFIG_DRM_I915_USERPTR=y # CONFIG_DRM_IMX is not set # CONFIG_DRM_LEGACY is not set CONFIG_DRM_LOAD_EDID_FIRMWARE=y CONFIG_DRM=m CONFIG_DRM_MALI_DISPLAY=m -# CONFIG_DRM_MESON is not set +CONFIG_DRM_MESON=m CONFIG_DRM_MGAG200=m # CONFIG_DRM_MGA is not set CONFIG_DRM_MXSFB=m CONFIG_DRM_NOUVEAU_BACKLIGHT=y CONFIG_DRM_NOUVEAU=m -# CONFIG_DRM_NXP_PTN3460 is not set +CONFIG_DRM_NXP_PTN3460=m # CONFIG_DRM_OMAP is not set # CONFIG_DRM_PANEL_JDI_LT070ME05000 is not set CONFIG_DRM_PANEL_LG_LG4573=m @@ -1299,7 +1289,7 @@ CONFIG_DRM_PANEL_SHARP_LQ101R1SX01=m CONFIG_DRM_PANEL_SHARP_LS043T1LE01=m CONFIG_DRM_PANEL_SIMPLE=m CONFIG_DRM_PANEL=y -# CONFIG_DRM_PARADE_PS8622 is not set +CONFIG_DRM_PARADE_PS8622=m CONFIG_DRM_QXL=m # CONFIG_DRM_R128 is not set CONFIG_DRM_RADEON=m @@ -1309,13 +1299,14 @@ CONFIG_DRM_ROCKCHIP=m # CONFIG_DRM_SII902X is not set CONFIG_DRM_SIL_SII8620=m # CONFIG_DRM_SIS is not set -# CONFIG_DRM_STI is not set +CONFIG_DRM_STI=m CONFIG_DRM_SUN4I=m # CONFIG_DRM_TDFX is not set # CONFIG_DRM_TEGRA_DEBUG is not set CONFIG_DRM_TEGRA=m CONFIG_DRM_TEGRA_STAGING=y # CONFIG_DRM_TILCDC is not set +CONFIG_DRM_TINYDRM=m CONFIG_DRM_TI_TFP410=m # CONFIG_DRM_TOSHIBA_TC358767 is not set CONFIG_DRM_UDL=m @@ -1323,8 +1314,6 @@ CONFIG_DRM_VC4=m CONFIG_DRM_VGEM=m CONFIG_DRM_VIA=m CONFIG_DRM_VIRTIO_GPU=m -CONFIG_DRM_VMWGFX_FBCON=y -# CONFIG_DRM_VMWGFX is not set # CONFIG_DS1682 is not set # CONFIG_DS1803 is not set # CONFIG_DT3155 is not set @@ -1412,14 +1401,16 @@ CONFIG_DVB_USB_UMT_010=m CONFIG_DVB_USB_V2=m CONFIG_DVB_USB_VP702X=m CONFIG_DVB_USB_VP7045=m +CONFIG_DVB_USB_ZD1301=m # CONFIG_DW_DMAC_BIG_ENDIAN_IO is not set CONFIG_DW_DMAC_CORE=m CONFIG_DW_DMAC=m CONFIG_DW_DMAC_PCI=m +# CONFIG_DWMAC_DWC_QOS_ETH is not set CONFIG_DWMAC_GENERIC=m -# CONFIG_DWMAC_IPQ806X is not set CONFIG_DWMAC_MESON=m CONFIG_DWMAC_ROCKCHIP=m +CONFIG_DWMAC_SUN8I=m CONFIG_DWMAC_SUNXI=m CONFIG_DW_WATCHDOG=m CONFIG_DYNAMIC_DEBUG=y @@ -1444,6 +1435,7 @@ CONFIG_EEPROM_93CX6=m CONFIG_EEPROM_93XX46=m CONFIG_EEPROM_AT24=m CONFIG_EEPROM_AT25=m +CONFIG_EEPROM_IDT_89HPESX=m CONFIG_EEPROM_LEGACY=m CONFIG_EEPROM_MAX6875=m # CONFIG_EFI_ALLOW_SECURE_BOOT_EXIT is not set @@ -1494,6 +1486,7 @@ CONFIG_EXT4_USE_FOR_EXT2=y CONFIG_EXTCON_ADC_JACK=m CONFIG_EXTCON_AXP288=m CONFIG_EXTCON_GPIO=m +CONFIG_EXTCON_INTEL_INT3496=m # CONFIG_EXTCON_MAX3355 is not set CONFIG_EXTCON_MAX8997=m # CONFIG_EXTCON_QCOM_SPMI_MISC is not set @@ -1536,7 +1529,6 @@ CONFIG_FAULT_INJECTION_DEBUG_FS=y CONFIG_FAULT_INJECTION_STACKTRACE_FILTER=y CONFIG_FAULT_INJECTION=y # CONFIG_FB_3DFX is not set -# CONFIG_FB_ARC is not set # CONFIG_FB_ARK is not set CONFIG_FB_ARMCLCD=y # CONFIG_FB_ASILIANT is not set @@ -1554,18 +1546,11 @@ CONFIG_FB_ATY_BACKLIGHT=y # CONFIG_FB_DA8XX is not set CONFIG_FB_EFI=y # CONFIG_FB_FOREIGN_ENDIAN is not set -# CONFIG_FB_GEODE is not set -# CONFIG_FB_GOLDFISH is not set # CONFIG_FB_HECUBA is not set -# CONFIG_FB_HGA is not set # CONFIG_FB_I740 is not set -CONFIG_FB_I810_GTF=y -CONFIG_FB_I810_I2C=y -CONFIG_FB_I810=m # CONFIG_FB_IBM_GXT4500 is not set # CONFIG_FB_IMSTT is not set # CONFIG_FB_KYRO is not set -# CONFIG_FB_LE80578 is not set # CONFIG_FB_MATROX_G is not set # CONFIG_FB_MATROX_I2C is not set # CONFIG_FB_MATROX is not set @@ -1610,9 +1595,6 @@ CONFIG_FB_TILEBLITTING=y # CONFIG_FB_UDL is not set # CONFIG_FB_UVESA is not set CONFIG_FB_VESA=y -CONFIG_FB_VGA16=m -# CONFIG_FB_VIA_DIRECT_PROCFS is not set -# CONFIG_FB_VIA is not set CONFIG_FB_VIRTUAL=m # CONFIG_FB_VOODOO1 is not set # CONFIG_FB_VT8623 is not set @@ -1656,6 +1638,7 @@ CONFIG_FSCACHE_OBJECT_LIST=y CONFIG_FSCACHE_STATS=y CONFIG_FS_DAX=y CONFIG_FS_ENCRYPTION=y +CONFIG_FSI=m # CONFIG_FSL_EDMA is not set # CONFIG_FSL_PQ_MDIO is not set # CONFIG_FSL_XGMAC_MDIO is not set @@ -1719,15 +1702,13 @@ CONFIG_GPIO_74X164=m # CONFIG_GPIO_ADNP is not set # CONFIG_GPIO_ADP5588 is not set # CONFIG_GPIO_ALTERA is not set -# CONFIG_GPIO_AMD8111 is not set # CONFIG_GPIO_AMDPT is not set CONFIG_GPIO_AXP209=m # CONFIG_GPIO_BT8XX is not set -# CONFIG_GPIO_CS5535 is not set CONFIG_GPIO_DAVINCI=y CONFIG_GPIO_DEVRES=y CONFIG_GPIO_DWAPB=m -# CONFIG_GPIO_EM is not set +CONFIG_GPIO_EXAR=m CONFIG_GPIO_GENERIC_PLATFORM=y CONFIG_GPIO_GENERIC=y # CONFIG_GPIO_GRGPIO is not set @@ -1738,7 +1719,6 @@ CONFIG_GPIO_MAX7301=m # CONFIG_GPIO_MAX732X is not set CONFIG_GPIO_MC33880=m # CONFIG_GPIO_MCP23S08 is not set -# CONFIG_GPIO_ML_IOH is not set # CONFIG_GPIO_MOCKUP is not set # CONFIG_GPIO_MPC8XXX is not set CONFIG_GPIO_MVEBU=y @@ -1746,14 +1726,14 @@ CONFIG_GPIO_PCA953X_IRQ=y CONFIG_GPIO_PCA953X=y CONFIG_GPIO_PCF857X=m # CONFIG_GPIO_PCH is not set +CONFIG_GPIO_PCI_IDIO_16=m # CONFIG_GPIO_PISOSR is not set CONFIG_GPIO_PL061=y # CONFIG_GPIO_RDC321X is not set # CONFIG_GPIO_SCH311X is not set -# CONFIG_GPIO_SCH is not set # CONFIG_GPIO_SX150X is not set CONFIG_GPIO_SYSCON=m -CONFIG_GPIO_SYSFS=y +# CONFIG_GPIO_SYSFS is not set CONFIG_GPIO_TEGRA=y # CONFIG_GPIO_TPIC2810 is not set CONFIG_GPIO_TPS65910=y @@ -1761,19 +1741,17 @@ CONFIG_GPIO_TPS65912=m # CONFIG_GPIO_TS4900 is not set # CONFIG_GPIO_TS5500 is not set CONFIG_GPIO_VIPERBOARD=m -# CONFIG_GPIO_VX855 is not set CONFIG_GPIO_WATCHDOG=m CONFIG_GPIO_WM8994=m # CONFIG_GPIO_WS16C48 is not set # CONFIG_GPIO_XILINX is not set # CONFIG_GPIO_ZEVIO is not set -# CONFIG_GPIO_ZX is not set CONFIG_GREENASIA_FF=y # CONFIG_GREYBUS is not set # CONFIG_GS_FPGABOOT is not set CONFIG_GTP=m CONFIG_HAMACHI=m -# CONFIG_HAMRADIO is not set +CONFIG_HAMRADIO=y CONFIG_HANGCHECK_TIMER=m CONFIG_HAPPYMEAL=m CONFIG_HARDENED_USERCOPY=y @@ -1969,6 +1947,7 @@ CONFIG_HW_RANDOM_TPM=m CONFIG_HW_RANDOM_VIRTIO=m CONFIG_HW_RANDOM=y CONFIG_HWSPINLOCK=m +# CONFIG_HX711 is not set CONFIG_HYSDN_CAPI=y CONFIG_HYSDN=m CONFIG_HZ_1000=y @@ -2007,7 +1986,6 @@ CONFIG_I2C_GPIO=m CONFIG_I2C_HELPER_AUTO=y CONFIG_I2C_HID=m # CONFIG_I2C_I801 is not set -CONFIG_I2C_IMX_LPI2C=m # CONFIG_I2C_ISCH is not set CONFIG_I2C_MESON=m CONFIG_I2C_MLXCPLD=m @@ -2043,6 +2021,7 @@ CONFIG_I2C_SLAVE=y CONFIG_I2C_STUB=m CONFIG_I2C_SUN6I_P2WI=m # CONFIG_I2C_TAOS_EVM is not set +CONFIG_I2C_TEGRA_BPMP=m CONFIG_I2C_TEGRA=m CONFIG_I2C_TINY_USB=m CONFIG_I2C_VERSATILE=m @@ -2059,8 +2038,6 @@ CONFIG_I40EVF=m CONFIG_I6300ESB_WDT=m CONFIG_I82092=m # CONFIG_IAQCORE is not set -CONFIG_IB700_WDT=m -CONFIG_IBMASR=m CONFIG_ICPLUS_PHY=m # CONFIG_ICS932S401 is not set # CONFIG_IDE is not set @@ -2087,6 +2064,7 @@ CONFIG_IIO_BUFFER_CB=m CONFIG_IIO_BUFFER=y CONFIG_IIO_CONFIGFS=m CONFIG_IIO_CONSUMERS_PER_TRIGGER=2 +# CONFIG_IIO_CROS_EC_BARO is not set CONFIG_IIO_CROS_EC_SENSORS_CORE=m CONFIG_IIO_CROS_EC_SENSORS_COR=m CONFIG_IIO_CROS_EC_SENSORS=m @@ -2102,6 +2080,7 @@ CONFIG_IIO_ST_ACCEL_SPI_3AXIS=m CONFIG_IIO_ST_GYRO_3AXIS=m CONFIG_IIO_ST_GYRO_I2C_3AXIS=m CONFIG_IIO_ST_GYRO_SPI_3AXIS=m +# CONFIG_IIO_ST_LSM6DSX is not set CONFIG_IIO_ST_MAGN_3AXIS=m CONFIG_IIO_ST_PRESS_I2C=m CONFIG_IIO_ST_PRESS=m @@ -2121,6 +2100,7 @@ CONFIG_IMA_MEASURE_PCR_IDX=10 # CONFIG_INA2XX_ADC is not set CONFIG_INET6_AH=m CONFIG_INET6_ESP=m +CONFIG_INET6_ESP_OFFLOAD=m CONFIG_INET6_IPCOMP=m CONFIG_INET6_XFRM_MODE_BEET=m CONFIG_INET6_XFRM_MODE_ROUTEOPTIMIZATION=m @@ -2130,6 +2110,7 @@ CONFIG_INET_AH=m CONFIG_INET_DIAG_DESTROY=y CONFIG_INET_DIAG=m CONFIG_INET_ESP=m +CONFIG_INET_ESP_OFFLOAD=m CONFIG_INET_IPCOMP=m CONFIG_INET_RAW_DIAG=m CONFIG_INET_TUNNEL=m @@ -2138,6 +2119,7 @@ CONFIG_INET_XFRM_MODE_BEET=m CONFIG_INET_XFRM_MODE_TRANSPORT=m CONFIG_INET_XFRM_MODE_TUNNEL=m CONFIG_INET=y +# CONFIG_INFINIBAND_BNXT_RE is not set # CONFIG_INFINIBAND_CXGB3_DEBUG is not set CONFIG_INFINIBAND_CXGB3=m CONFIG_INFINIBAND_CXGB4=m @@ -2235,8 +2217,6 @@ CONFIG_INPUT=y CONFIG_INPUT_YEALINK=m # CONFIG_INTEGRITY is not set # CONFIG_INTEL_IDMA64 is not set -# CONFIG_INTEL_MENLOW is not set -CONFIG_INTEL_RDT_A=y # CONFIG_INTEL_SOC_PMIC is not set # CONFIG_INTEL_TH is not set CONFIG_INTEL_XWAY_PHY=m @@ -2388,6 +2368,7 @@ CONFIG_IP_VS_SH_TAB_BITS=8 CONFIG_IP_VS_TAB_BITS=12 CONFIG_IP_VS_WLC=m CONFIG_IP_VS_WRR=m +CONFIG_IPVTAP=m # CONFIG_IPW2100_DEBUG is not set # CONFIG_IPW2100 is not set # CONFIG_IPW2200_DEBUG is not set @@ -2431,6 +2412,7 @@ CONFIG_IR_SERIAL=m CONFIG_IR_SERIAL_TRANSMITTER=y CONFIG_IR_SHARP_DECODER=m CONFIG_IR_SONY_DECODER=m +CONFIG_IR_SPI=m CONFIG_IR_STREAMZAP=m CONFIG_IR_SUNXI=m CONFIG_IR_TTUSBIR=m @@ -2601,6 +2583,7 @@ CONFIG_KEYBOARD_SUN4I_LRADC=m # CONFIG_KEYBOARD_TCA6416 is not set # CONFIG_KEYBOARD_TCA8418 is not set CONFIG_KEYBOARD_TEGRA=m +CONFIG_KEYBOARD_TM2_TOUCHKEY=m # CONFIG_KEYBOARD_XTKBD is not set CONFIG_KEY_DH_OPERATIONS=y CONFIG_KEYSTONE_IRQ=m @@ -2614,7 +2597,7 @@ CONFIG_KGDB_TESTS=y CONFIG_KGDB=y CONFIG_KINGSUN_DONGLE=m # CONFIG_KMX61 is not set -CONFIG_KPROBE_EVENT=y +CONFIG_KPROBE_EVENTS=y # CONFIG_KPROBES_SANITY_TEST is not set CONFIG_KPROBES=y CONFIG_KS0108_DELAY=2 @@ -2663,6 +2646,7 @@ CONFIG_LDM_PARTITION=y # CONFIG_LEDS_BCM6358 is not set # CONFIG_LEDS_BD2802 is not set CONFIG_LEDS_BLINKM=m +CONFIG_LEDS_BRIGHTNESS_HW_CHANGED=y CONFIG_LEDS_CLASS_FLASH=m CONFIG_LEDS_CLASS=y CONFIG_LEDS_CLEVO_MAIL=m @@ -2670,7 +2654,6 @@ CONFIG_LEDS_DAC124S085=m CONFIG_LEDS_DELL_NETBOOKS=m CONFIG_LEDS_GPIO=m CONFIG_LEDS_GPIO_REGISTER=y -CONFIG_LEDS_INTEL_SS4200=m # CONFIG_LEDS_IS31FL319X is not set # CONFIG_LEDS_IS31FL32XX is not set # CONFIG_LEDS_KTD2692 is not set @@ -2780,6 +2763,8 @@ CONFIG_LOOPBACK_TARGET=m # CONFIG_LPC_ICH is not set CONFIG_LP_CONSOLE=y # CONFIG_LPC_SCH is not set +CONFIG_LPFC_NVME_INITIATOR=y +CONFIG_LPFC_NVME_TARGET=y CONFIG_LSI_ET1011C_PHY=m CONFIG_LSM_MMAP_MIN_ADDR=32768 # CONFIG_LTC2485 is not set @@ -2811,6 +2796,9 @@ CONFIG_MACH_ARMADA_38X=y CONFIG_MACH_ARMADA_39X=y CONFIG_MACH_ARMADA_XP=y CONFIG_MACH_DOVE=y +# CONFIG_MACH_MESON6 is not set +CONFIG_MACH_MESON8B=y +# CONFIG_MACH_MESON8 is not set # CONFIG_MACH_SUN4I is not set # CONFIG_MACH_SUN5I is not set CONFIG_MACH_SUN6I=y @@ -2824,6 +2812,7 @@ CONFIG_MACVLAN=m CONFIG_MACVTAP=m # CONFIG_MAG3110 is not set CONFIG_MAGIC_SYSRQ_DEFAULT_ENABLE=0x0 +CONFIG_MAGIC_SYSRQ_SERIAL=y CONFIG_MAGIC_SYSRQ=y # CONFIG_MAILBOX_TEST is not set CONFIG_MAILBOX=y @@ -2831,10 +2820,12 @@ CONFIG_MAILBOX=y CONFIG_MANTIS_CORE=m CONFIG_MARVELL_PHY=m # CONFIG_MAX1027 is not set +# CONFIG_MAX11100 is not set # CONFIG_MAX1363 is not set CONFIG_MAX30100=m # CONFIG_MAX44000 is not set # CONFIG_MAX517 is not set +# CONFIG_MAX5481 is not set # CONFIG_MAX5487 is not set # CONFIG_MAX5821 is not set # CONFIG_MAX63XX_WATCHDOG is not set @@ -2913,6 +2904,7 @@ CONFIG_MEMSTICK_TIFM_MS=m CONFIG_MESON_EFUSE=m # CONFIG_MESON_GXBB_WATCHDOG is not set # CONFIG_MESON_GXL_PHY is not set +CONFIG_MESON_SARADC=m CONFIG_MESON_SM=y CONFIG_MESON_WATCHDOG=m CONFIG_MESSAGE_LOGLEVEL_DEFAULT=4 @@ -2935,6 +2927,7 @@ CONFIG_MFD_AXP20X_RSB=m CONFIG_MFD_AXP20X=y # CONFIG_MFD_BCM590XX is not set CONFIG_MFD_CORE=y +CONFIG_MFD_CPCAP=m CONFIG_MFD_CROS_EC_I2C=m CONFIG_MFD_CROS_EC=m CONFIG_MFD_CROS_EC_SPI=m @@ -3067,6 +3060,7 @@ CONFIG_MMA7660=m # CONFIG_MMA9553 is not set # CONFIG_MMC35240 is not set CONFIG_MMC_ARMMMCI=m +CONFIG_MMC_BCM2835=m CONFIG_MMC_BLOCK_BOUNCE=y CONFIG_MMC_BLOCK=m CONFIG_MMC_BLOCK_MINORS=8 @@ -3143,7 +3137,6 @@ CONFIG_MOUSE_ELAN_I2C_SMBUS=y CONFIG_MOUSE_PS2_ELANTECH=y CONFIG_MOUSE_PS2_SENTELIC=y # CONFIG_MOUSE_PS2_TOUCHKIT is not set -# CONFIG_MOUSE_PS2_VMMOUSE is not set CONFIG_MOUSE_PS2=y CONFIG_MOUSE_SERIAL=m CONFIG_MOUSE_SYNAPTICS_I2C=m @@ -3159,6 +3152,7 @@ CONFIG_MPL3115=m CONFIG_MPLS_IPTUNNEL=m CONFIG_MPLS_ROUTING=m # CONFIG_MPU3050_I2C is not set +CONFIG_MQ_IOSCHED_DEADLINE=y # CONFIG_MS5611 is not set # CONFIG_MS5637 is not set # CONFIG_MS_BLOCK is not set @@ -3235,6 +3229,7 @@ CONFIG_MTD_OF_PARTS=m # CONFIG_MTD_PHRAM is not set # CONFIG_MTD_PHYSMAP_COMPAT is not set CONFIG_MTD_PHYSMAP=m +# CONFIG_MTD_PHYSMAP_OF_GEMINI is not set CONFIG_MTD_PHYSMAP_OF=m CONFIG_MTD_PHYSMAP_OF_VERSATILE=y # CONFIG_MTD_PLATRAM is not set @@ -3310,6 +3305,7 @@ CONFIG_NET_ACT_MIRRED=m CONFIG_NET_ACT_NAT=m CONFIG_NET_ACT_PEDIT=m CONFIG_NET_ACT_POLICE=m +CONFIG_NET_ACT_SAMPLE=m CONFIG_NET_ACT_SIMP=m CONFIG_NET_ACT_SKBEDIT=m CONFIG_NET_ACT_SKBMOD=m @@ -3443,6 +3439,7 @@ CONFIG_NETFILTER_XT_TARGET_TRACE=m CONFIG_NETFILTER=y CONFIG_NET_FOU_IP_TUNNELS=y CONFIG_NET_FOU=m +CONFIG_NET_IFE=m CONFIG_NET_IFE_SKBMARK=m CONFIG_NET_IFE_SKBPRIO=m CONFIG_NET_IFE_SKBTCINDEX=m @@ -3453,7 +3450,7 @@ CONFIG_NET_IPIP=m CONFIG_NET_IPVTI=m CONFIG_NET_KEY=m CONFIG_NET_KEY_MIGRATE=y -# CONFIG_NET_L3_MASTER_DEV is not set +CONFIG_NET_L3_MASTER_DEV=y CONFIG_NETLABEL=y CONFIG_NETLINK_DIAG=m CONFIG_NET_MPLS_GSO=m @@ -3506,8 +3503,9 @@ CONFIG_NET_VENDOR_AGERE=y # CONFIG_NET_VENDOR_ALACRITECH is not set CONFIG_NET_VENDOR_ALLWINNER=y CONFIG_NET_VENDOR_ALTEON=y -# CONFIG_NET_VENDOR_AMAZON is not set +CONFIG_NET_VENDOR_AMAZON=y CONFIG_NET_VENDOR_AMD=y +# CONFIG_NET_VENDOR_AQUANTIA is not set CONFIG_NET_VENDOR_ARC=y CONFIG_NET_VENDOR_ATHEROS=y # CONFIG_NET_VENDOR_AURORA is not set @@ -3631,6 +3629,8 @@ CONFIG_NF_LOG_IPV6=m CONFIG_NF_LOG_NETDEV=m CONFIG_NF_NAT=m CONFIG_NF_NAT_SNMP_BASIC=m +# CONFIG_NFP_DEBUG is not set +CONFIG_NFP=m # CONFIG_NFP_NET_DEBUG is not set CONFIG_NFP_NETVF=m CONFIG_NF_REJECT_IPV6=m @@ -3702,6 +3702,7 @@ CONFIG_NFT_REDIR=m CONFIG_NFT_REJECT_IPV4=m CONFIG_NFT_REJECT=m CONFIG_NFT_RT=m +CONFIG_NFT_SET_BITMAP=m CONFIG_NFT_SET_HASH=m CONFIG_NFT_SET_RBTREE=m CONFIG_N_GSM=m @@ -3849,6 +3850,7 @@ CONFIG_PANTHERLORD_FF=y CONFIG_PARAVIRT_TIME_ACCOUNTING=y CONFIG_PARAVIRT=y # CONFIG_PARIDE is not set +CONFIG_PARMAN=m CONFIG_PARPORT_1284=y # CONFIG_PARPORT_AX88796 is not set # CONFIG_PARPORT is not set @@ -3908,6 +3910,7 @@ CONFIG_PATA_TOSHIBA=m CONFIG_PATA_TRIFLEX=m CONFIG_PATA_VIA=m CONFIG_PATA_WINBOND=m +# CONFIG_PC104 is not set # CONFIG_PC87413_WDT is not set CONFIG_PCCARD=y CONFIG_PCF50633_ADC=m @@ -3974,12 +3977,15 @@ CONFIG_PHY_EXYNOS5250_SATA=m CONFIG_PHY_EXYNOS5_USBDRD=m CONFIG_PHY_EXYNOS_DP_VIDEO=m CONFIG_PHY_EXYNOS_MIPI_VIDEO=m +CONFIG_PHY_EXYNOS_PCIE=y CONFIG_PHYLIB=y CONFIG_PHY_MESON8B_USB2=m CONFIG_PHY_MVEBU_SATA=y # CONFIG_PHY_PXA_28NM_HSIC is not set # CONFIG_PHY_PXA_28NM_USB2 is not set # CONFIG_PHY_QCOM_IPQ806X_SATA is not set +CONFIG_PHY_QCOM_USB_HSIC=m +CONFIG_PHY_QCOM_USB_HS=m CONFIG_PHY_ROCKCHIP_DP=m CONFIG_PHY_ROCKCHIP_EMMC=m CONFIG_PHY_ROCKCHIP_INNO_USB2=m @@ -4005,6 +4011,7 @@ CONFIG_PINCTRL_AS3722=y # CONFIG_PINCTRL_BROXTON is not set # CONFIG_PINCTRL_CHERRYVIEW is not set CONFIG_PINCTRL_DOVE=y +# CONFIG_PINCTRL_GEMINILAKE is not set # CONFIG_PINCTRL_IMX35 is not set # CONFIG_PINCTRL_IPQ4019 is not set # CONFIG_PINCTRL_IPQ8064 is not set @@ -4016,6 +4023,7 @@ CONFIG_PINCTRL_SAMSUNG=y CONFIG_PINCTRL_SINGLE=y # CONFIG_PINCTRL_SUNRISEPOINT is not set # CONFIG_PINCTRL_SX150X is not set +# CONFIG_PINCTRL_TI_IODELAY is not set CONFIG_PINCTRL=y CONFIG_PINMUX=y CONFIG_PJ4B_ERRATA_4742=y @@ -4095,6 +4103,7 @@ CONFIG_PPTP=m CONFIG_PREEMPT_VOLUNTARY=y CONFIG_PREVENT_FIRMWARE_BUILD=y CONFIG_PRINTER=m +CONFIG_PRINTK_SAFE_LOG_BUF_SHIFT=12 CONFIG_PRINTK_TIME=y # CONFIG_PRINT_QUOTA_WARNING is not set # CONFIG_PRISM2_USB is not set @@ -4109,6 +4118,7 @@ CONFIG_PROFILING=y CONFIG_PROVE_LOCKING=y # CONFIG_PROVE_RCU_REPEATEDLY is not set CONFIG_PROVE_RCU=y +CONFIG_PSAMPLE=m # CONFIG_PSTORE_CONSOLE is not set # CONFIG_PSTORE_FTRACE is not set # CONFIG_PSTORE_PMSG is not set @@ -4129,6 +4139,7 @@ CONFIG_PWM_SYSFS=y CONFIG_PWM_TEGRA=m CONFIG_PWM=y CONFIG_PWRSEQ_EMMC=m +# CONFIG_PWRSEQ_SD8787 is not set CONFIG_PWRSEQ_SIMPLE=m # CONFIG_QCA7000 is not set CONFIG_QCOM_ADSP_PIL=m @@ -4136,10 +4147,12 @@ CONFIG_QCOM_ADSP_PIL=m # CONFIG_QCOM_EMAC is not set # CONFIG_QCOM_HIDMA is not set # CONFIG_QCOM_HIDMA_MGMT is not set +CONFIG_QCOM_IRQ_COMBINER=y # CONFIG_QCOM_SPMI_IADC is not set # CONFIG_QCOM_SPMI_TEMP_ALARM is not set # CONFIG_QCOM_SPMI_VADC is not set CONFIG_QEDE=m +CONFIG_QEDF=m CONFIG_QEDI=m CONFIG_QED=m CONFIG_QED_SRIOV=y @@ -4188,7 +4201,6 @@ CONFIG_RADIO_TERRATEC=m CONFIG_RADIO_TRUST=m CONFIG_RADIO_TYPHOON=m CONFIG_RADIO_WL1273=m -# CONFIG_RADIO_WL128X is not set # depends on TI_ST which we don't enable CONFIG_RADIO_ZOLTRIX=m CONFIG_RAID_ATTRS=m # CONFIG_RANDOM32_SELFTEST is not set @@ -4243,6 +4255,7 @@ CONFIG_REGULATOR_AD5398=m # CONFIG_REGULATOR_ANATOP is not set CONFIG_REGULATOR_AS3722=m CONFIG_REGULATOR_AXP20X=m +CONFIG_REGULATOR_CPCAP=m CONFIG_REGULATOR_DA9210=m CONFIG_REGULATOR_DA9211=m # CONFIG_REGULATOR_DEBUG is not set @@ -4270,7 +4283,7 @@ CONFIG_REGULATOR_PFUZE100=m CONFIG_REGULATOR_PV88060=m # CONFIG_REGULATOR_PV88080 is not set CONFIG_REGULATOR_PV88090=m -CONFIG_REGULATOR_PWM=m +CONFIG_REGULATOR_PWM=y # CONFIG_REGULATOR_QCOM_SPMI is not set CONFIG_REGULATOR_RK808=m CONFIG_REGULATOR_S2MPA01=m @@ -4307,7 +4320,6 @@ CONFIG_RESET_GPIO=y CONFIG_RFKILL_GPIO=m CONFIG_RFKILL_INPUT=y CONFIG_RFKILL=m -CONFIG_RFKILL_REGULATOR=m CONFIG_RING_BUFFER_BENCHMARK=m # CONFIG_RING_BUFFER_STARTUP_TEST is not set # CONFIG_RIO is not set @@ -4323,6 +4335,7 @@ CONFIG_RMI4_I2C=m CONFIG_RMI4_SMB=m CONFIG_RMI4_SPI=m CONFIG_ROCKCHIP_ANALOGIX_DP=m +# CONFIG_ROCKCHIP_CDN_DP is not set CONFIG_ROCKCHIP_DW_HDMI=m CONFIG_ROCKCHIP_DW_MIPI_DSI=m CONFIG_ROCKCHIP_EFUSE=m @@ -4338,6 +4351,7 @@ CONFIG_ROCKETPORT=m CONFIG_ROMFS_FS=m CONFIG_ROSE=m CONFIG_RPCSEC_GSS_KRB5=m +# CONFIG_RPMSG_CHAR is not set CONFIG_RPR0521=m CONFIG_RSI_91X=m CONFIG_RSI_DEBUGFS=y @@ -4793,6 +4807,7 @@ CONFIG_SENSORS_SIS5595=m CONFIG_SENSORS_SMSC47B397=m CONFIG_SENSORS_SMSC47M192=m CONFIG_SENSORS_SMSC47M1=m +# CONFIG_SENSORS_STTS751 is not set CONFIG_SENSORS_TC654=m CONFIG_SENSORS_TC74=m CONFIG_SENSORS_THMC50=m @@ -4831,6 +4846,7 @@ CONFIG_SERIAL_8250_CS=m # CONFIG_SERIAL_8250_DETECT_IRQ is not set CONFIG_SERIAL_8250_DW=y # CONFIG_SERIAL_8250_EM is not set +CONFIG_SERIAL_8250_EXAR=m CONFIG_SERIAL_8250_EXTENDED=y # CONFIG_SERIAL_8250_FINTEK is not set # CONFIG_SERIAL_8250_INGENIC is not set @@ -4838,6 +4854,7 @@ CONFIG_SERIAL_8250_MANY_PORTS=y # CONFIG_SERIAL_8250_MID is not set CONFIG_SERIAL_8250_MOXA=m CONFIG_SERIAL_8250_NR_UARTS=32 +CONFIG_SERIAL_8250_PCI=m CONFIG_SERIAL_8250_RSA=y CONFIG_SERIAL_8250_RT288X=y CONFIG_SERIAL_8250_RUNTIME_UARTS=32 @@ -4855,6 +4872,8 @@ CONFIG_SERIAL_ARC_NR_PORTS=1 # CONFIG_SERIAL_CONEXANT_DIGICOLOR is not set CONFIG_SERIAL_CORE_CONSOLE=y CONFIG_SERIAL_CORE=y +CONFIG_SERIAL_DEV_BUS=y +CONFIG_SERIAL_DEV_CTRL_TTYPORT=y CONFIG_SERIAL_EARLYCON_ARM_SEMIHOST=y # CONFIG_SERIAL_FSL_LPUART is not set # CONFIG_SERIAL_IFX6X60 is not set @@ -4867,7 +4886,7 @@ CONFIG_SERIAL_MESON=y # CONFIG_SERIAL_MPS2_UART is not set CONFIG_SERIAL_MVEBU_CONSOLE=y CONFIG_SERIAL_MVEBU_UART=y -CONFIG_SERIAL_NONSTANDARD=y +# CONFIG_SERIAL_NONSTANDARD is not set CONFIG_SERIAL_OF_PLATFORM=y # CONFIG_SERIAL_PCH_UART is not set # CONFIG_SERIAL_RP2 is not set @@ -4876,7 +4895,8 @@ CONFIG_SERIAL_SAMSUNG_CONSOLE=y CONFIG_SERIAL_SAMSUNG=y # CONFIG_SERIAL_SC16IS7XX is not set # CONFIG_SERIAL_SCCNXP is not set -# CONFIG_SERIAL_ST_ASC is not set +CONFIG_SERIAL_ST_ASC_CONSOLE=y +CONFIG_SERIAL_ST_ASC=y CONFIG_SERIAL_TEGRA=y # CONFIG_SERIAL_TIMBERDALE is not set # CONFIG_SERIAL_UARTLITE is not set @@ -4930,6 +4950,7 @@ CONFIG_SMARTJOYPLUS_FF=y CONFIG_SMC911X=m CONFIG_SMC91X=m CONFIG_SMC_IRCC_FIR=m +# CONFIG_SMC is not set # CONFIG_SM_FTL is not set CONFIG_SMP_ON_UP=y CONFIG_SMP=y @@ -5083,7 +5104,7 @@ CONFIG_SND_SEQUENCER=m CONFIG_SND_SEQUENCER_OSS=y CONFIG_SND_SERIAL_U16550=m CONFIG_SND_SIMPLE_CARD=m -# CONFIG_SND_SIMPLE_SCU_CARD is not set +CONFIG_SND_SIMPLE_SCU_CARD=m CONFIG_SND_SIS7019=m CONFIG_SND_SOC_AC97_BUS=y CONFIG_SND_SOC_AC97_CODEC=m @@ -5117,7 +5138,9 @@ CONFIG_SND_SOC_CS42L42=m # CONFIG_SND_SOC_CS4349 is not set # CONFIG_SND_SOC_CS53L30 is not set CONFIG_SND_SOC_DMIC=m -# CONFIG_SND_SOC_ES8328 is not set +CONFIG_SND_SOC_ES8328_I2C=m +CONFIG_SND_SOC_ES8328=m +CONFIG_SND_SOC_ES8328_SPI=m # CONFIG_SND_SOC_FSL_ASOC_CARD is not set # CONFIG_SND_SOC_FSL_ASRC is not set # CONFIG_SND_SOC_FSL_ESAI is not set @@ -5137,6 +5160,7 @@ CONFIG_SND_SOC=m # CONFIG_SND_SOC_MAX9860 is not set # CONFIG_SND_SOC_MSM8916_WCD_ANALOG is not set # CONFIG_SND_SOC_MSM8916_WCD_DIGITAL is not set +# CONFIG_SND_SOC_NAU8540 is not set # CONFIG_SND_SOC_NAU8810 is not set # CONFIG_SND_SOC_PCM1681 is not set # CONFIG_SND_SOC_PCM179X_I2C is not set @@ -5147,7 +5171,8 @@ CONFIG_SND_SOC=m CONFIG_SND_SOC_PCM512x_I2C=m CONFIG_SND_SOC_PCM512x=m CONFIG_SND_SOC_PCM512x_SPI=m -# CONFIG_SND_SOC_RK3399_GRU_SOUND is not set +CONFIG_SND_SOC_RK3288_HDMI_ANALOG=m +CONFIG_SND_SOC_RK3399_GRU_SOUND=m CONFIG_SND_SOC_ROCKCHIP_I2S=m CONFIG_SND_SOC_ROCKCHIP=m CONFIG_SND_SOC_ROCKCHIP_MAX98090=m @@ -5158,7 +5183,7 @@ CONFIG_SND_SOC_RT5631=m CONFIG_SND_SOC_SAMSUNG=m CONFIG_SND_SOC_SAMSUNG_SMDK_SPDIF=m CONFIG_SND_SOC_SAMSUNG_SMDK_WM8994=m -# CONFIG_SND_SOC_SGTL5000 is not set +CONFIG_SND_SOC_SGTL5000=m # CONFIG_SND_SOC_SIRF_AUDIO_CODEC is not set CONFIG_SND_SOC_SMDK_WM8994_PCM=m CONFIG_SND_SOC_SNOW=m @@ -5183,7 +5208,7 @@ CONFIG_SND_SOC_TEGRA=m CONFIG_SND_SOC_TEGRA_MAX98090=m CONFIG_SND_SOC_TEGRA_RT5640=m CONFIG_SND_SOC_TEGRA_RT5677=m -# CONFIG_SND_SOC_TEGRA_SGTL5000 is not set +CONFIG_SND_SOC_TEGRA_SGTL5000=m # CONFIG_SND_SOC_TEGRA_TRIMSLICE is not set # CONFIG_SND_SOC_TEGRA_WM8753 is not set # CONFIG_SND_SOC_TEGRA_WM8903 is not set @@ -5223,6 +5248,7 @@ CONFIG_SND_SUN4I_CODEC=m CONFIG_SND_SUN4I_I2S=m CONFIG_SND_SUN4I_SPDIF=m CONFIG_SND_SUN8I_CODEC_ANALOG=m +CONFIG_SND_SUN8I_CODEC=m # CONFIG_SND_SUPPORT_OLD_API is not set CONFIG_SND_TRIDENT=m CONFIG_SND_USB_6FIRE=m @@ -5260,6 +5286,7 @@ CONFIG_SOC_EXYNOS5440=y CONFIG_SOC_EXYNOS5800=y # CONFIG_SOC_OMAP5 is not set # CONFIG_SOC_TI is not set +# CONFIG_SOC_ZTE is not set CONFIG_SOFT_WATCHDOG=m CONFIG_SOLARIS_X86_PARTITION=y # CONFIG_SOLO6X10 is not set @@ -5322,6 +5349,7 @@ CONFIG_SQUASHFS_XATTR=y CONFIG_SQUASHFS_XZ=y CONFIG_SQUASHFS_ZLIB=y CONFIG_SRAM=y +# CONFIG_SRF08 is not set # CONFIG_SSB_DEBUG is not set CONFIG_SSB_DRIVER_GPIO=y CONFIG_SSB_DRIVER_PCICORE=y @@ -5339,6 +5367,7 @@ CONFIG_STAGING_MEDIA=y CONFIG_STAGING=y CONFIG_STANDALONE=y # CONFIG_STATIC_KEYS_SELFTEST is not set +# CONFIG_STATIC_USERMODEHELPER is not set CONFIG_STE10XP=m # CONFIG_STE_MODEM_RPROC is not set CONFIG_STK3310=m @@ -5351,15 +5380,19 @@ CONFIG_STMMAC_ETH=m CONFIG_STMMAC_PLATFORM=m # CONFIG_STM_SOURCE_CONSOLE is not set CONFIG_STRICT_DEVMEM=y +CONFIG_STRICT_KERNEL_RWX=y +CONFIG_STRICT_MODULE_RWX=y CONFIG_STRIP_ASM_SYMS=y # CONFIG_STRIP is not set CONFIG_SUN4I_EMAC=m # CONFIG_SUN50I_A64_CCU is not set -# CONFIG_SUN6I_A31_CCU is not set -# CONFIG_SUN8I_A23_CCU is not set -# CONFIG_SUN8I_A33_CCU is not set -CONFIG_SUN8I_EMAC=m +CONFIG_SUN5I_CCU=y +CONFIG_SUN6I_A31_CCU=y +CONFIG_SUN8I_A23_CCU=y +CONFIG_SUN8I_A33_CCU=y CONFIG_SUN8I_H3_CCU=y +CONFIG_SUN8I_V3S_CCU=y +CONFIG_SUN9I_A80_CCU=y CONFIG_SUNDANCE=m # CONFIG_SUNDANCE_MMIO is not set # CONFIG_SUNGEM is not set @@ -5387,7 +5420,7 @@ CONFIG_SYNCLINK=m CONFIG_SYNCLINKMP=m CONFIG_SYN_COOKIES=y # CONFIG_SYNOPSYS_DWC_ETH_QOS is not set -# CONFIG_SYSCON_REBOOT_MODE is not set +CONFIG_SYSCON_REBOOT_MODE=y CONFIG_SYSCTL=y # CONFIG_SYSFS_DEPRECATED is not set # CONFIG_SYSFS_DEPRECATED_V2 is not set @@ -5483,9 +5516,11 @@ CONFIG_TEST_ASYNC_DRIVER_PROBE=m CONFIG_TEST_KSTRTOX=y CONFIG_TEST_LIST_SORT=y # CONFIG_TEST_LKM is not set +# CONFIG_TEST_PARMAN is not set # CONFIG_TEST_POWER is not set # CONFIG_TEST_PRINTF is not set # CONFIG_TEST_RHASHTABLE is not set +# CONFIG_TEST_SORT is not set # CONFIG_TEST_STATIC_KEYS is not set # CONFIG_TEST_STRING_HELPERS is not set # CONFIG_TEST_UDELAY is not set @@ -5512,6 +5547,7 @@ CONFIG_THRUSTMASTER_FF=y # CONFIG_TI_ADC128S052 is not set # CONFIG_TI_ADC161S626 is not set # CONFIG_TI_ADS1015 is not set +# CONFIG_TI_ADS7950 is not set # CONFIG_TI_ADS8688 is not set CONFIG_TI_AEMIF=m # CONFIG_TI_CPSW_ALE is not set @@ -5524,6 +5560,8 @@ CONFIG_TIGON3=m # CONFIG_TIMB_DMA is not set # CONFIG_TIMER_STATS is not set CONFIG_TI_MESSAGE_MANAGER=m +CONFIG_TINYDRM_MI0283QT=m +CONFIG_TINYDRM_MIPI_DBI=m CONFIG_TIPC=m # CONFIG_TIPC_MEDIA_IB is not set CONFIG_TIPC_MEDIA_UDP=y @@ -5532,9 +5570,11 @@ CONFIG_TI_SOC_THERMAL=m # CONFIG_TI_ST is not set CONFIG_TI_SYSCON_RESET=m CONFIG_TI_THERMAL=y +# CONFIG_TI_TLC4541 is not set # CONFIG_TLAN is not set # CONFIG_TMD_HERMES is not set CONFIG_TMP006=m +# CONFIG_TMP007 is not set CONFIG_TMPFS_POSIX_ACL=y CONFIG_TMPFS_XATTR=y CONFIG_TMPFS=y @@ -5605,6 +5645,7 @@ CONFIG_TOUCHSCREEN_WACOM_I2C=m CONFIG_TOUCHSCREEN_WACOM_W8001=m # CONFIG_TOUCHSCREEN_WDT87XX_I2C is not set # CONFIG_TOUCHSCREEN_WM97XX is not set +CONFIG_TOUCHSCREEN_ZET6223=m CONFIG_TOUCHSCREEN_ZFORCE=m # CONFIG_TPL0102 is not set # CONFIG_TPS6105X is not set @@ -5675,7 +5716,7 @@ CONFIG_UNIX_DIAG=m CONFIG_UNIXWARE_DISKLABEL=y CONFIG_UNIX=y CONFIG_UNUSED_SYMBOLS=y -CONFIG_UPROBE_EVENT=y +CONFIG_UPROBE_EVENTS=y # CONFIG_US5182D is not set CONFIG_USB_ACM=m CONFIG_USB_ADUTUX=m @@ -5694,6 +5735,7 @@ CONFIG_USB_CATC=m CONFIG_USB_CDC_PHONET=m CONFIG_USB_CHAOSKEY=m # CONFIG_USB_CHIPIDEA is not set +# CONFIG_USB_CHIPIDEA_ULPI is not set CONFIG_USB_CONFIGFS_ACM=y CONFIG_USB_CONFIGFS_ECM_SUBSET=y CONFIG_USB_CONFIGFS_ECM=y @@ -5820,6 +5862,7 @@ CONFIG_USB_HID=y CONFIG_USB_HSIC_USB3503=m CONFIG_USB_HSIC_USB4604=m CONFIG_USB_HSO=m +CONFIG_USB_HUB_USB251XB=m CONFIG_USB_HWA_HCD=m CONFIG_USB_IDMOUSE=m CONFIG_USB_IOWARRIOR=m @@ -5977,6 +6020,7 @@ CONFIG_USB_SERIAL_SPCP8X5=m CONFIG_USB_SERIAL_SSU100=m CONFIG_USB_SERIAL_SYMBOL=m CONFIG_USB_SERIAL_TI=m +CONFIG_USB_SERIAL_UPD78F0730=m CONFIG_USB_SERIAL_VISOR=m CONFIG_USB_SERIAL_WHITEHEAT=m # CONFIG_USB_SERIAL_WISHBONE is not set @@ -6058,7 +6102,7 @@ CONFIG_V4L_MEM2MEM_DRIVERS=y # CONFIG_V4L_PLATFORM_DRIVERS is not set # CONFIG_V4L_TEST_DRIVERS is not set # CONFIG_VCNL4000 is not set -# CONFIG_VDSO is not set +CONFIG_VDSO=y # CONFIG_VEML6070 is not set CONFIG_VETH=m CONFIG_VEXPRESS_SYSCFG=y @@ -6079,6 +6123,7 @@ CONFIG_VFPv3=y CONFIG_VFP=y CONFIG_VGA_ARB_MAX_GPUS=16 CONFIG_VGA_ARB=y +# CONFIG_VGACON_SOFT_SCROLLBACK_PERSISTENT_ENABLE_BY_DEFAULT is not set CONFIG_VGACON_SOFT_SCROLLBACK_SIZE=64 CONFIG_VGACON_SOFT_SCROLLBACK=y CONFIG_VGA_CONSOLE=y @@ -6132,6 +6177,7 @@ CONFIG_VIDEO_HDPVR=m CONFIG_VIDEO_HEXIUM_GEMINI=m CONFIG_VIDEO_HEXIUM_ORION=m # CONFIG_VIDEO_IVTV_ALSA is not set +# CONFIG_VIDEO_IVTV_DEPRECATED_IOCTLS is not set CONFIG_VIDEO_IVTV=m # CONFIG_VIDEO_M5MOLS is not set # CONFIG_VIDEO_MEM2MEM_DEINTERLACE is not set @@ -6155,7 +6201,7 @@ CONFIG_VIDEO_SAA7134_RC=y CONFIG_VIDEO_SAA7146=m CONFIG_VIDEO_SAA7146_VV=m CONFIG_VIDEO_SAA7164=m -CONFIG_VIDEO_SAMSUNG_EXYNOS4_IS=y +CONFIG_VIDEO_SAMSUNG_EXYNOS4_IS=m # CONFIG_VIDEO_SAMSUNG_EXYNOS_GSC is not set CONFIG_VIDEO_SAMSUNG_S5P_CEC=m CONFIG_VIDEO_SAMSUNG_S5P_G2D=m @@ -6197,6 +6243,7 @@ CONFIG_VIDEO_ZORAN_ZR36060=m # CONFIG_VIRT_DRIVERS is not set CONFIG_VIRTIO_BALLOON=m CONFIG_VIRTIO_BLK=m +CONFIG_VIRTIO_BLK_SCSI=y CONFIG_VIRTIO_CONSOLE=m CONFIG_VIRTIO_INPUT=m # CONFIG_VIRTIO_MMIO_CMDLINE_DEVICES is not set @@ -6212,8 +6259,6 @@ CONFIG_VLAN_8021Q=m CONFIG_VLAN_8021Q_MVRP=y CONFIG_VLSI_FIR=m # CONFIG_VME_BUS is not set -CONFIG_VMWARE_BALLOON=m -CONFIG_VMWARE_PVSCSI=m # CONFIG_VMXNET3 is not set CONFIG_VORTEX=m CONFIG_VSOCKETS=m @@ -6235,6 +6280,7 @@ CONFIG_W1_MASTER_DS2490=m CONFIG_W1_MASTER_GPIO=m # CONFIG_W1_MASTER_MATROX is not set CONFIG_W1_SLAVE_BQ27000=m +CONFIG_W1_SLAVE_DS2405=m CONFIG_W1_SLAVE_DS2406=m CONFIG_W1_SLAVE_DS2408=m # CONFIG_W1_SLAVE_DS2408_READBACK is not set @@ -6307,6 +6353,7 @@ CONFIG_WM8350_POWER=m CONFIG_WM8350_WATCHDOG=m # CONFIG_WQ_POWER_EFFICIENT_DEFAULT is not set CONFIG_WQ_WATCHDOG=y +# CONFIG_WW_MUTEX_SELFTEST is not set # CONFIG_X25 is not set CONFIG_X86_BOOTPARAM_MEMORY_CORRUPTION_CHECK=y CONFIG_X86_PTDUMP=y diff --git a/kernel-armv7hl-lpae.config b/kernel-armv7hl-lpae.config index 1f9d41517..e5d1605ba 100644 --- a/kernel-armv7hl-lpae.config +++ b/kernel-armv7hl-lpae.config @@ -124,7 +124,6 @@ CONFIG_AEABI=y # CONFIG_AF_KCM is not set # CONFIG_AF_RXRPC is not set # CONFIG_AFS_FS is not set -# CONFIG_AGP is not set # CONFIG_AHCI_CEVA is not set CONFIG_AHCI_MVEBU=m # CONFIG_AHCI_QORIQ is not set @@ -201,7 +200,7 @@ CONFIG_ARCH_HIGHBANK=y # CONFIG_ARCH_HISI is not set CONFIG_ARCH_KEYSTONE=y # CONFIG_ARCH_MEDIATEK is not set -# CONFIG_ARCH_MESON is not set +CONFIG_ARCH_MESON=y # CONFIG_ARCH_MMP is not set # CONFIG_ARCH_MULTI_V6 is not set CONFIG_ARCH_MULTI_V7=y @@ -222,7 +221,6 @@ CONFIG_ARCH_SUNXI=y # CONFIG_ARCH_TANGO is not set CONFIG_ARCH_TEGRA_114_SOC=y CONFIG_ARCH_TEGRA_124_SOC=y -# CONFIG_ARCH_TEGRA_186_SOC is not set # CONFIG_ARCH_TEGRA_2x_SOC is not set # CONFIG_ARCH_TEGRA_3x_SOC is not set CONFIG_ARCH_TEGRA=y @@ -238,7 +236,6 @@ CONFIG_ARCH_VIRT=y # CONFIG_ARCH_ZX is not set # CONFIG_ARCH_ZYNQ is not set # CONFIG_ARCNET is not set -# CONFIG_ARM64_PTDUMP is not set CONFIG_ARMADA_THERMAL=m CONFIG_ARM_AMBA=y CONFIG_ARM_APPENDED_DTB=y @@ -480,7 +477,6 @@ CONFIG_BATMAN_ADV_NC=y # CONFIG_BATTERY_DS2781 is not set # CONFIG_BATTERY_DS2782 is not set # CONFIG_BATTERY_GAUGE_LTC2941 is not set -# CONFIG_BATTERY_GOLDFISH is not set # CONFIG_BATTERY_MAX17040 is not set # CONFIG_BATTERY_MAX17042 is not set CONFIG_BATTERY_SBS=m @@ -526,6 +522,7 @@ CONFIG_BINFMT_SCRIPT=y CONFIG_BLK_CGROUP=y # CONFIG_BLK_CMDLINE_PARSER is not set CONFIG_BLK_CPQ_CISS_DA=m +CONFIG_BLK_DEBUG_FS=y # CONFIG_BLK_DEV_3W_XXXX_RAID is not set CONFIG_BLK_DEV_BSGLIB=y CONFIG_BLK_DEV_BSG=y @@ -564,6 +561,7 @@ CONFIG_BLK_DEV_THROTTLING=y CONFIG_BLK_DEV_UMEM=m CONFIG_BLK_DEV=y CONFIG_BLK_DEV_ZONED=y +CONFIG_BLK_SED_OPAL=y CONFIG_BLK_WBT_MQ=y # CONFIG_BLK_WBT_SQ is not set CONFIG_BLK_WBT=y @@ -662,6 +660,7 @@ CONFIG_BT_HCIUART_INTEL=y CONFIG_BT_HCIUART_LL=y CONFIG_BT_HCIUART=m CONFIG_BT_HCIUART_MRVL=y +CONFIG_BT_HCIUART_NOKIA=m CONFIG_BT_HCIUART_QCA=y CONFIG_BT_HCIVHCI=m CONFIG_BT_HIDP=m @@ -771,6 +770,7 @@ CONFIG_CEPH_LIB=m # CONFIG_CEPH_LIB_USE_DNS_RESOLVER is not set CONFIG_CFAG12864B=m CONFIG_CFAG12864B_RATE=20 +CONFIG_CFG80211_CRDA_SUPPORT=y CONFIG_CFG80211_DEBUGFS=y CONFIG_CFG80211_DEFAULT_PS=y # CONFIG_CFG80211_DEVELOPER_WARNINGS is not set @@ -788,13 +788,16 @@ CONFIG_CGROUP_NET_CLASSID=y CONFIG_CGROUP_NET_PRIO=y CONFIG_CGROUP_PERF=y CONFIG_CGROUP_PIDS=y +# CONFIG_CGROUP_RDMA is not set CONFIG_CGROUP_SCHED=y CONFIG_CGROUPS=y +CONFIG_CHARGER_AXP20X=m CONFIG_CHARGER_BQ2415X=m CONFIG_CHARGER_BQ24190=m # CONFIG_CHARGER_BQ24257 is not set CONFIG_CHARGER_BQ24735=m # CONFIG_CHARGER_BQ25890 is not set +# CONFIG_CHARGER_DETECTOR_MAX14656 is not set CONFIG_CHARGER_GPIO=m # CONFIG_CHARGER_ISP1704 is not set # CONFIG_CHARGER_LP8727 is not set @@ -804,6 +807,7 @@ CONFIG_CHARGER_MAX8997=m # CONFIG_CHARGER_PCF50633 is not set # CONFIG_CHARGER_QCOM_SMBB is not set # CONFIG_CHARGER_RT9455 is not set +# CONFIG_CHARGER_SBS is not set CONFIG_CHARGER_SMB347=m CONFIG_CHARGER_TPS65090=m CONFIG_CHECKPOINT_RESTORE=y @@ -847,6 +851,7 @@ CONFIG_CLS_U32_PERF=y CONFIG_CM32181=m # CONFIG_CM3232 is not set # CONFIG_CM3323 is not set +CONFIG_CM3605=m # CONFIG_CM36651 is not set CONFIG_CMA_ALIGNMENT=8 CONFIG_CMA_AREAS=7 @@ -867,21 +872,8 @@ CONFIG_CNIC=m # CONFIG_COMMON_CLK_CDCE706 is not set # CONFIG_COMMON_CLK_CDCE925 is not set # CONFIG_COMMON_CLK_CS2000_CP is not set -# CONFIG_COMMON_CLK_HI3516CV300 is not set -# CONFIG_COMMON_CLK_HI3519 is not set -# CONFIG_COMMON_CLK_HI3798CV200 is not set CONFIG_COMMON_CLK_MAX77686=m CONFIG_COMMON_CLK_MAX77802=m -# CONFIG_COMMON_CLK_MT2701_BDPSYS is not set -# CONFIG_COMMON_CLK_MT2701_ETHSYS is not set -# CONFIG_COMMON_CLK_MT2701_HIFSYS is not set -# CONFIG_COMMON_CLK_MT2701_IMGSYS is not set -# CONFIG_COMMON_CLK_MT2701 is not set -# CONFIG_COMMON_CLK_MT2701_MMSYS is not set -# CONFIG_COMMON_CLK_MT2701_VDECSYS is not set -# CONFIG_COMMON_CLK_MT8135 is not set -# CONFIG_COMMON_CLK_MT8173 is not set -# CONFIG_COMMON_CLK_OXNAS is not set CONFIG_COMMON_CLK_PWM=m CONFIG_COMMON_CLK_RK808=m CONFIG_COMMON_CLK_S2MPS11=m @@ -889,9 +881,11 @@ CONFIG_COMMON_CLK_SCPI=m # CONFIG_COMMON_CLK_SI514 is not set CONFIG_COMMON_CLK_SI5351=m # CONFIG_COMMON_CLK_SI570 is not set +# CONFIG_COMMON_CLK_VC5 is not set CONFIG_COMMON_CLK_VERSATILE=y # CONFIG_COMMON_CLK_XLNX_CLKWZRD is not set CONFIG_COMMON_CLK=y +# CONFIG_COMMON_RESET_HI3660 is not set CONFIG_COMPACTION=y # CONFIG_COMPAT_BRK is not set # CONFIG_COMPILE_TEST is not set @@ -946,6 +940,7 @@ CONFIG_CRYPTO_842=m CONFIG_CRYPTO_AES_ARM_BS=y # CONFIG_CRYPTO_AES_ARM_CE is not set CONFIG_CRYPTO_AES_ARM=y +CONFIG_CRYPTO_AES_TI=m CONFIG_CRYPTO_AES=y CONFIG_CRYPTO_ANSI_CPRNG=m CONFIG_CRYPTO_ANUBIS=m @@ -959,11 +954,11 @@ CONFIG_CRYPTO_CAST6=m CONFIG_CRYPTO_CBC=y CONFIG_CRYPTO_CCM=m CONFIG_CRYPTO_CHACHA20=m +CONFIG_CRYPTO_CHACHA20_NEON=m CONFIG_CRYPTO_CHACHA20POLY1305=m CONFIG_CRYPTO_CMAC=m CONFIG_CRYPTO_CRC32_ARM64_CE=m CONFIG_CRYPTO_CRC32_ARM_CE=m -CONFIG_CRYPTO_CRC32C_INTEL=m CONFIG_CRYPTO_CRC32C_VPMSUM=m CONFIG_CRYPTO_CRC32C=y CONFIG_CRYPTO_CRC32=m @@ -1109,7 +1104,7 @@ CONFIG_DEBUG_OBJECTS_ENABLE_DEFAULT=1 # CONFIG_DEBUG_PERF_USE_VMALLOC is not set # CONFIG_DEBUG_PI_LIST is not set # CONFIG_DEBUG_PINCTRL is not set -# CONFIG_DEBUG_RODATA is not set +# CONFIG_DEBUG_REFCOUNT is not set CONFIG_DEBUG_RODATA_TEST=y # CONFIG_DEBUG_RT_MUTEXES is not set # CONFIG_DEBUG_SECTION_MISMATCH is not set @@ -1149,6 +1144,7 @@ CONFIG_DEVFREQ_GOV_SIMPLE_ONDEMAND=m CONFIG_DEVFREQ_THERMAL=y # CONFIG_DEVKMEM is not set CONFIG_DEVMEM=y +# CONFIG_DEVPORT is not set CONFIG_DEVTMPFS_MOUNT=y CONFIG_DEVTMPFS=y # CONFIG_DGAP is not set @@ -1227,6 +1223,7 @@ CONFIG_DRM_ARMADA=m CONFIG_DRM_AST=m CONFIG_DRM_BOCHS=m CONFIG_DRM_CIRRUS_QEMU=m +# CONFIG_DRM_DEBUG_MM_SELFTEST is not set CONFIG_DRM_DP_AUX_CHARDEV=y CONFIG_DRM_DUMB_VGA_DAC=m CONFIG_DRM_DW_HDMI_AHB_AUDIO=m @@ -1256,30 +1253,22 @@ CONFIG_DRM_HDLCD=m CONFIG_DRM_HISI_HIBMC=m CONFIG_DRM_I2C_ADV7511_AUDIO=y CONFIG_DRM_I2C_ADV7511=m -# CONFIG_DRM_I2C_ADV7533 is not set +CONFIG_DRM_I2C_ADV7533=y CONFIG_DRM_I2C_CH7006=m CONFIG_DRM_I2C_NXP_TDA998X=m CONFIG_DRM_I2C_SIL164=m -# CONFIG_DRM_I810 is not set -# CONFIG_DRM_I915_ALPHA_SUPPORT is not set -CONFIG_DRM_I915_CAPTURE_ERROR=y -CONFIG_DRM_I915_COMPRESS_ERROR=y -CONFIG_DRM_I915_GVT_KVMGT=m -CONFIG_DRM_I915_GVT=y -CONFIG_DRM_I915=m -CONFIG_DRM_I915_USERPTR=y # CONFIG_DRM_IMX is not set # CONFIG_DRM_LEGACY is not set CONFIG_DRM_LOAD_EDID_FIRMWARE=y CONFIG_DRM=m CONFIG_DRM_MALI_DISPLAY=m -# CONFIG_DRM_MESON is not set +CONFIG_DRM_MESON=m CONFIG_DRM_MGAG200=m # CONFIG_DRM_MGA is not set CONFIG_DRM_MXSFB=m CONFIG_DRM_NOUVEAU_BACKLIGHT=y CONFIG_DRM_NOUVEAU=m -# CONFIG_DRM_NXP_PTN3460 is not set +CONFIG_DRM_NXP_PTN3460=m # CONFIG_DRM_OMAP is not set # CONFIG_DRM_PANEL_JDI_LT070ME05000 is not set CONFIG_DRM_PANEL_LG_LG4573=m @@ -1290,7 +1279,7 @@ CONFIG_DRM_PANEL_SHARP_LQ101R1SX01=m CONFIG_DRM_PANEL_SHARP_LS043T1LE01=m CONFIG_DRM_PANEL_SIMPLE=m CONFIG_DRM_PANEL=y -# CONFIG_DRM_PARADE_PS8622 is not set +CONFIG_DRM_PARADE_PS8622=m CONFIG_DRM_QXL=m # CONFIG_DRM_R128 is not set CONFIG_DRM_RADEON=m @@ -1300,13 +1289,14 @@ CONFIG_DRM_ROCKCHIP=m # CONFIG_DRM_SII902X is not set CONFIG_DRM_SIL_SII8620=m # CONFIG_DRM_SIS is not set -# CONFIG_DRM_STI is not set +CONFIG_DRM_STI=m CONFIG_DRM_SUN4I=m # CONFIG_DRM_TDFX is not set # CONFIG_DRM_TEGRA_DEBUG is not set CONFIG_DRM_TEGRA=m CONFIG_DRM_TEGRA_STAGING=y # CONFIG_DRM_TILCDC is not set +CONFIG_DRM_TINYDRM=m CONFIG_DRM_TI_TFP410=m # CONFIG_DRM_TOSHIBA_TC358767 is not set CONFIG_DRM_UDL=m @@ -1314,8 +1304,6 @@ CONFIG_DRM_VC4=m CONFIG_DRM_VGEM=m CONFIG_DRM_VIA=m CONFIG_DRM_VIRTIO_GPU=m -CONFIG_DRM_VMWGFX_FBCON=y -# CONFIG_DRM_VMWGFX is not set # CONFIG_DS1682 is not set # CONFIG_DS1803 is not set # CONFIG_DT3155 is not set @@ -1403,14 +1391,16 @@ CONFIG_DVB_USB_UMT_010=m CONFIG_DVB_USB_V2=m CONFIG_DVB_USB_VP702X=m CONFIG_DVB_USB_VP7045=m +CONFIG_DVB_USB_ZD1301=m # CONFIG_DW_DMAC_BIG_ENDIAN_IO is not set CONFIG_DW_DMAC_CORE=m CONFIG_DW_DMAC=m CONFIG_DW_DMAC_PCI=m +# CONFIG_DWMAC_DWC_QOS_ETH is not set CONFIG_DWMAC_GENERIC=m -# CONFIG_DWMAC_IPQ806X is not set CONFIG_DWMAC_MESON=m CONFIG_DWMAC_ROCKCHIP=m +CONFIG_DWMAC_SUN8I=m CONFIG_DWMAC_SUNXI=m CONFIG_DW_WATCHDOG=m CONFIG_DYNAMIC_DEBUG=y @@ -1435,6 +1425,7 @@ CONFIG_EEPROM_93CX6=m CONFIG_EEPROM_93XX46=m CONFIG_EEPROM_AT24=m CONFIG_EEPROM_AT25=m +CONFIG_EEPROM_IDT_89HPESX=m CONFIG_EEPROM_LEGACY=m CONFIG_EEPROM_MAX6875=m # CONFIG_EFI_ALLOW_SECURE_BOOT_EXIT is not set @@ -1485,6 +1476,7 @@ CONFIG_EXT4_USE_FOR_EXT2=y CONFIG_EXTCON_ADC_JACK=m CONFIG_EXTCON_AXP288=m CONFIG_EXTCON_GPIO=m +CONFIG_EXTCON_INTEL_INT3496=m # CONFIG_EXTCON_MAX3355 is not set CONFIG_EXTCON_MAX8997=m # CONFIG_EXTCON_QCOM_SPMI_MISC is not set @@ -1520,7 +1512,6 @@ CONFIG_FAT_DEFAULT_IOCHARSET="ascii" CONFIG_FAT_FS=m # CONFIG_FAULT_INJECTION is not set # CONFIG_FB_3DFX is not set -# CONFIG_FB_ARC is not set # CONFIG_FB_ARK is not set CONFIG_FB_ARMCLCD=y # CONFIG_FB_ASILIANT is not set @@ -1538,18 +1529,11 @@ CONFIG_FB_ATY_BACKLIGHT=y # CONFIG_FB_DA8XX is not set CONFIG_FB_EFI=y # CONFIG_FB_FOREIGN_ENDIAN is not set -# CONFIG_FB_GEODE is not set -# CONFIG_FB_GOLDFISH is not set # CONFIG_FB_HECUBA is not set -# CONFIG_FB_HGA is not set # CONFIG_FB_I740 is not set -CONFIG_FB_I810_GTF=y -CONFIG_FB_I810_I2C=y -CONFIG_FB_I810=m # CONFIG_FB_IBM_GXT4500 is not set # CONFIG_FB_IMSTT is not set # CONFIG_FB_KYRO is not set -# CONFIG_FB_LE80578 is not set # CONFIG_FB_MATROX_G is not set # CONFIG_FB_MATROX_I2C is not set # CONFIG_FB_MATROX is not set @@ -1594,9 +1578,6 @@ CONFIG_FB_TILEBLITTING=y # CONFIG_FB_UDL is not set # CONFIG_FB_UVESA is not set CONFIG_FB_VESA=y -CONFIG_FB_VGA16=m -# CONFIG_FB_VIA_DIRECT_PROCFS is not set -# CONFIG_FB_VIA is not set CONFIG_FB_VIRTUAL=m # CONFIG_FB_VOODOO1 is not set # CONFIG_FB_VT8623 is not set @@ -1640,6 +1621,7 @@ CONFIG_FSCACHE_OBJECT_LIST=y CONFIG_FSCACHE_STATS=y CONFIG_FS_DAX=y CONFIG_FS_ENCRYPTION=y +CONFIG_FSI=m # CONFIG_FSL_EDMA is not set # CONFIG_FSL_PQ_MDIO is not set # CONFIG_FSL_XGMAC_MDIO is not set @@ -1703,15 +1685,13 @@ CONFIG_GPIO_74X164=m # CONFIG_GPIO_ADNP is not set # CONFIG_GPIO_ADP5588 is not set # CONFIG_GPIO_ALTERA is not set -# CONFIG_GPIO_AMD8111 is not set # CONFIG_GPIO_AMDPT is not set CONFIG_GPIO_AXP209=m # CONFIG_GPIO_BT8XX is not set -# CONFIG_GPIO_CS5535 is not set CONFIG_GPIO_DAVINCI=y CONFIG_GPIO_DEVRES=y CONFIG_GPIO_DWAPB=m -# CONFIG_GPIO_EM is not set +CONFIG_GPIO_EXAR=m CONFIG_GPIO_GENERIC_PLATFORM=y CONFIG_GPIO_GENERIC=y # CONFIG_GPIO_GRGPIO is not set @@ -1722,7 +1702,6 @@ CONFIG_GPIO_MAX7301=m # CONFIG_GPIO_MAX732X is not set CONFIG_GPIO_MC33880=m # CONFIG_GPIO_MCP23S08 is not set -# CONFIG_GPIO_ML_IOH is not set # CONFIG_GPIO_MOCKUP is not set # CONFIG_GPIO_MPC8XXX is not set CONFIG_GPIO_MVEBU=y @@ -1730,14 +1709,14 @@ CONFIG_GPIO_PCA953X_IRQ=y CONFIG_GPIO_PCA953X=y CONFIG_GPIO_PCF857X=m # CONFIG_GPIO_PCH is not set +CONFIG_GPIO_PCI_IDIO_16=m # CONFIG_GPIO_PISOSR is not set CONFIG_GPIO_PL061=y # CONFIG_GPIO_RDC321X is not set # CONFIG_GPIO_SCH311X is not set -# CONFIG_GPIO_SCH is not set # CONFIG_GPIO_SX150X is not set CONFIG_GPIO_SYSCON=m -CONFIG_GPIO_SYSFS=y +# CONFIG_GPIO_SYSFS is not set CONFIG_GPIO_TEGRA=y # CONFIG_GPIO_TPIC2810 is not set CONFIG_GPIO_TPS65910=y @@ -1745,19 +1724,17 @@ CONFIG_GPIO_TPS65912=m # CONFIG_GPIO_TS4900 is not set # CONFIG_GPIO_TS5500 is not set CONFIG_GPIO_VIPERBOARD=m -# CONFIG_GPIO_VX855 is not set CONFIG_GPIO_WATCHDOG=m CONFIG_GPIO_WM8994=m # CONFIG_GPIO_WS16C48 is not set # CONFIG_GPIO_XILINX is not set # CONFIG_GPIO_ZEVIO is not set -# CONFIG_GPIO_ZX is not set CONFIG_GREENASIA_FF=y # CONFIG_GREYBUS is not set # CONFIG_GS_FPGABOOT is not set CONFIG_GTP=m CONFIG_HAMACHI=m -# CONFIG_HAMRADIO is not set +CONFIG_HAMRADIO=y CONFIG_HANGCHECK_TIMER=m CONFIG_HAPPYMEAL=m CONFIG_HARDENED_USERCOPY=y @@ -1953,6 +1930,7 @@ CONFIG_HW_RANDOM_TPM=m CONFIG_HW_RANDOM_VIRTIO=m CONFIG_HW_RANDOM=y CONFIG_HWSPINLOCK=m +# CONFIG_HX711 is not set CONFIG_HYSDN_CAPI=y CONFIG_HYSDN=m CONFIG_HZ_1000=y @@ -1991,7 +1969,6 @@ CONFIG_I2C_GPIO=m CONFIG_I2C_HELPER_AUTO=y CONFIG_I2C_HID=m # CONFIG_I2C_I801 is not set -CONFIG_I2C_IMX_LPI2C=m # CONFIG_I2C_ISCH is not set CONFIG_I2C_MESON=m CONFIG_I2C_MLXCPLD=m @@ -2027,6 +2004,7 @@ CONFIG_I2C_SLAVE=y CONFIG_I2C_STUB=m CONFIG_I2C_SUN6I_P2WI=m # CONFIG_I2C_TAOS_EVM is not set +CONFIG_I2C_TEGRA_BPMP=m CONFIG_I2C_TEGRA=m CONFIG_I2C_TINY_USB=m CONFIG_I2C_VERSATILE=m @@ -2043,8 +2021,6 @@ CONFIG_I40EVF=m CONFIG_I6300ESB_WDT=m CONFIG_I82092=m # CONFIG_IAQCORE is not set -CONFIG_IB700_WDT=m -CONFIG_IBMASR=m CONFIG_ICPLUS_PHY=m # CONFIG_ICS932S401 is not set # CONFIG_IDE is not set @@ -2071,6 +2047,7 @@ CONFIG_IIO_BUFFER_CB=m CONFIG_IIO_BUFFER=y CONFIG_IIO_CONFIGFS=m CONFIG_IIO_CONSUMERS_PER_TRIGGER=2 +# CONFIG_IIO_CROS_EC_BARO is not set CONFIG_IIO_CROS_EC_SENSORS_CORE=m CONFIG_IIO_CROS_EC_SENSORS_COR=m CONFIG_IIO_CROS_EC_SENSORS=m @@ -2086,6 +2063,7 @@ CONFIG_IIO_ST_ACCEL_SPI_3AXIS=m CONFIG_IIO_ST_GYRO_3AXIS=m CONFIG_IIO_ST_GYRO_I2C_3AXIS=m CONFIG_IIO_ST_GYRO_SPI_3AXIS=m +# CONFIG_IIO_ST_LSM6DSX is not set CONFIG_IIO_ST_MAGN_3AXIS=m CONFIG_IIO_ST_PRESS_I2C=m CONFIG_IIO_ST_PRESS=m @@ -2105,6 +2083,7 @@ CONFIG_IMA_MEASURE_PCR_IDX=10 # CONFIG_INA2XX_ADC is not set CONFIG_INET6_AH=m CONFIG_INET6_ESP=m +CONFIG_INET6_ESP_OFFLOAD=m CONFIG_INET6_IPCOMP=m CONFIG_INET6_XFRM_MODE_BEET=m CONFIG_INET6_XFRM_MODE_ROUTEOPTIMIZATION=m @@ -2114,6 +2093,7 @@ CONFIG_INET_AH=m CONFIG_INET_DIAG_DESTROY=y CONFIG_INET_DIAG=m CONFIG_INET_ESP=m +CONFIG_INET_ESP_OFFLOAD=m CONFIG_INET_IPCOMP=m CONFIG_INET_RAW_DIAG=m CONFIG_INET_TUNNEL=m @@ -2122,6 +2102,7 @@ CONFIG_INET_XFRM_MODE_BEET=m CONFIG_INET_XFRM_MODE_TRANSPORT=m CONFIG_INET_XFRM_MODE_TUNNEL=m CONFIG_INET=y +# CONFIG_INFINIBAND_BNXT_RE is not set # CONFIG_INFINIBAND_CXGB3_DEBUG is not set CONFIG_INFINIBAND_CXGB3=m CONFIG_INFINIBAND_CXGB4=m @@ -2219,8 +2200,6 @@ CONFIG_INPUT=y CONFIG_INPUT_YEALINK=m # CONFIG_INTEGRITY is not set # CONFIG_INTEL_IDMA64 is not set -# CONFIG_INTEL_MENLOW is not set -CONFIG_INTEL_RDT_A=y # CONFIG_INTEL_SOC_PMIC is not set # CONFIG_INTEL_TH is not set CONFIG_INTEL_XWAY_PHY=m @@ -2372,6 +2351,7 @@ CONFIG_IP_VS_SH_TAB_BITS=8 CONFIG_IP_VS_TAB_BITS=12 CONFIG_IP_VS_WLC=m CONFIG_IP_VS_WRR=m +CONFIG_IPVTAP=m # CONFIG_IPW2100_DEBUG is not set # CONFIG_IPW2100 is not set # CONFIG_IPW2200_DEBUG is not set @@ -2415,6 +2395,7 @@ CONFIG_IR_SERIAL=m CONFIG_IR_SERIAL_TRANSMITTER=y CONFIG_IR_SHARP_DECODER=m CONFIG_IR_SONY_DECODER=m +CONFIG_IR_SPI=m CONFIG_IR_STREAMZAP=m CONFIG_IR_SUNXI=m CONFIG_IR_TTUSBIR=m @@ -2583,6 +2564,7 @@ CONFIG_KEYBOARD_SUN4I_LRADC=m # CONFIG_KEYBOARD_TCA6416 is not set # CONFIG_KEYBOARD_TCA8418 is not set CONFIG_KEYBOARD_TEGRA=m +CONFIG_KEYBOARD_TM2_TOUCHKEY=m # CONFIG_KEYBOARD_XTKBD is not set CONFIG_KEY_DH_OPERATIONS=y CONFIG_KEYSTONE_IRQ=m @@ -2596,7 +2578,7 @@ CONFIG_KGDB_TESTS=y CONFIG_KGDB=y CONFIG_KINGSUN_DONGLE=m # CONFIG_KMX61 is not set -CONFIG_KPROBE_EVENT=y +CONFIG_KPROBE_EVENTS=y # CONFIG_KPROBES_SANITY_TEST is not set CONFIG_KPROBES=y CONFIG_KS0108_DELAY=2 @@ -2645,6 +2627,7 @@ CONFIG_LDM_PARTITION=y # CONFIG_LEDS_BCM6358 is not set # CONFIG_LEDS_BD2802 is not set CONFIG_LEDS_BLINKM=m +CONFIG_LEDS_BRIGHTNESS_HW_CHANGED=y CONFIG_LEDS_CLASS_FLASH=m CONFIG_LEDS_CLASS=y CONFIG_LEDS_CLEVO_MAIL=m @@ -2652,7 +2635,6 @@ CONFIG_LEDS_DAC124S085=m CONFIG_LEDS_DELL_NETBOOKS=m CONFIG_LEDS_GPIO=m CONFIG_LEDS_GPIO_REGISTER=y -CONFIG_LEDS_INTEL_SS4200=m # CONFIG_LEDS_IS31FL319X is not set # CONFIG_LEDS_IS31FL32XX is not set # CONFIG_LEDS_KTD2692 is not set @@ -2762,6 +2744,8 @@ CONFIG_LOOPBACK_TARGET=m # CONFIG_LPC_ICH is not set CONFIG_LP_CONSOLE=y # CONFIG_LPC_SCH is not set +CONFIG_LPFC_NVME_INITIATOR=y +CONFIG_LPFC_NVME_TARGET=y CONFIG_LSI_ET1011C_PHY=m CONFIG_LSM_MMAP_MIN_ADDR=32768 # CONFIG_LTC2485 is not set @@ -2793,6 +2777,9 @@ CONFIG_MACH_ARMADA_38X=y CONFIG_MACH_ARMADA_39X=y CONFIG_MACH_ARMADA_XP=y CONFIG_MACH_DOVE=y +# CONFIG_MACH_MESON6 is not set +CONFIG_MACH_MESON8B=y +# CONFIG_MACH_MESON8 is not set # CONFIG_MACH_SUN4I is not set # CONFIG_MACH_SUN5I is not set CONFIG_MACH_SUN6I=y @@ -2806,6 +2793,7 @@ CONFIG_MACVLAN=m CONFIG_MACVTAP=m # CONFIG_MAG3110 is not set CONFIG_MAGIC_SYSRQ_DEFAULT_ENABLE=0x0 +CONFIG_MAGIC_SYSRQ_SERIAL=y CONFIG_MAGIC_SYSRQ=y # CONFIG_MAILBOX_TEST is not set CONFIG_MAILBOX=y @@ -2813,10 +2801,12 @@ CONFIG_MAILBOX=y CONFIG_MANTIS_CORE=m CONFIG_MARVELL_PHY=m # CONFIG_MAX1027 is not set +# CONFIG_MAX11100 is not set # CONFIG_MAX1363 is not set CONFIG_MAX30100=m # CONFIG_MAX44000 is not set # CONFIG_MAX517 is not set +# CONFIG_MAX5481 is not set # CONFIG_MAX5487 is not set # CONFIG_MAX5821 is not set # CONFIG_MAX63XX_WATCHDOG is not set @@ -2894,6 +2884,7 @@ CONFIG_MEMSTICK_TIFM_MS=m CONFIG_MESON_EFUSE=m # CONFIG_MESON_GXBB_WATCHDOG is not set # CONFIG_MESON_GXL_PHY is not set +CONFIG_MESON_SARADC=m CONFIG_MESON_SM=y CONFIG_MESON_WATCHDOG=m CONFIG_MESSAGE_LOGLEVEL_DEFAULT=4 @@ -2916,6 +2907,7 @@ CONFIG_MFD_AXP20X_RSB=m CONFIG_MFD_AXP20X=y # CONFIG_MFD_BCM590XX is not set CONFIG_MFD_CORE=y +CONFIG_MFD_CPCAP=m CONFIG_MFD_CROS_EC_I2C=m CONFIG_MFD_CROS_EC=m CONFIG_MFD_CROS_EC_SPI=m @@ -3048,6 +3040,7 @@ CONFIG_MMA7660=m # CONFIG_MMA9553 is not set # CONFIG_MMC35240 is not set CONFIG_MMC_ARMMMCI=m +CONFIG_MMC_BCM2835=m CONFIG_MMC_BLOCK_BOUNCE=y CONFIG_MMC_BLOCK=m CONFIG_MMC_BLOCK_MINORS=8 @@ -3123,7 +3116,6 @@ CONFIG_MOUSE_ELAN_I2C_SMBUS=y CONFIG_MOUSE_PS2_ELANTECH=y CONFIG_MOUSE_PS2_SENTELIC=y # CONFIG_MOUSE_PS2_TOUCHKIT is not set -# CONFIG_MOUSE_PS2_VMMOUSE is not set CONFIG_MOUSE_PS2=y CONFIG_MOUSE_SERIAL=m CONFIG_MOUSE_SYNAPTICS_I2C=m @@ -3139,6 +3131,7 @@ CONFIG_MPL3115=m CONFIG_MPLS_IPTUNNEL=m CONFIG_MPLS_ROUTING=m # CONFIG_MPU3050_I2C is not set +CONFIG_MQ_IOSCHED_DEADLINE=y # CONFIG_MS5611 is not set # CONFIG_MS5637 is not set # CONFIG_MS_BLOCK is not set @@ -3215,6 +3208,7 @@ CONFIG_MTD_OF_PARTS=m # CONFIG_MTD_PHRAM is not set # CONFIG_MTD_PHYSMAP_COMPAT is not set CONFIG_MTD_PHYSMAP=m +# CONFIG_MTD_PHYSMAP_OF_GEMINI is not set CONFIG_MTD_PHYSMAP_OF=m CONFIG_MTD_PHYSMAP_OF_VERSATILE=y # CONFIG_MTD_PLATRAM is not set @@ -3290,6 +3284,7 @@ CONFIG_NET_ACT_MIRRED=m CONFIG_NET_ACT_NAT=m CONFIG_NET_ACT_PEDIT=m CONFIG_NET_ACT_POLICE=m +CONFIG_NET_ACT_SAMPLE=m CONFIG_NET_ACT_SIMP=m CONFIG_NET_ACT_SKBEDIT=m CONFIG_NET_ACT_SKBMOD=m @@ -3423,6 +3418,7 @@ CONFIG_NETFILTER_XT_TARGET_TRACE=m CONFIG_NETFILTER=y CONFIG_NET_FOU_IP_TUNNELS=y CONFIG_NET_FOU=m +CONFIG_NET_IFE=m CONFIG_NET_IFE_SKBMARK=m CONFIG_NET_IFE_SKBPRIO=m CONFIG_NET_IFE_SKBTCINDEX=m @@ -3433,7 +3429,7 @@ CONFIG_NET_IPIP=m CONFIG_NET_IPVTI=m CONFIG_NET_KEY=m CONFIG_NET_KEY_MIGRATE=y -# CONFIG_NET_L3_MASTER_DEV is not set +CONFIG_NET_L3_MASTER_DEV=y CONFIG_NETLABEL=y CONFIG_NETLINK_DIAG=m CONFIG_NET_MPLS_GSO=m @@ -3486,8 +3482,9 @@ CONFIG_NET_VENDOR_AGERE=y # CONFIG_NET_VENDOR_ALACRITECH is not set CONFIG_NET_VENDOR_ALLWINNER=y CONFIG_NET_VENDOR_ALTEON=y -# CONFIG_NET_VENDOR_AMAZON is not set +CONFIG_NET_VENDOR_AMAZON=y CONFIG_NET_VENDOR_AMD=y +# CONFIG_NET_VENDOR_AQUANTIA is not set CONFIG_NET_VENDOR_ARC=y CONFIG_NET_VENDOR_ATHEROS=y # CONFIG_NET_VENDOR_AURORA is not set @@ -3611,6 +3608,8 @@ CONFIG_NF_LOG_IPV6=m CONFIG_NF_LOG_NETDEV=m CONFIG_NF_NAT=m CONFIG_NF_NAT_SNMP_BASIC=m +# CONFIG_NFP_DEBUG is not set +CONFIG_NFP=m # CONFIG_NFP_NET_DEBUG is not set CONFIG_NFP_NETVF=m CONFIG_NF_REJECT_IPV6=m @@ -3682,6 +3681,7 @@ CONFIG_NFT_REDIR=m CONFIG_NFT_REJECT_IPV4=m CONFIG_NFT_REJECT=m CONFIG_NFT_RT=m +CONFIG_NFT_SET_BITMAP=m CONFIG_NFT_SET_HASH=m CONFIG_NFT_SET_RBTREE=m CONFIG_N_GSM=m @@ -3829,6 +3829,7 @@ CONFIG_PANTHERLORD_FF=y CONFIG_PARAVIRT_TIME_ACCOUNTING=y CONFIG_PARAVIRT=y # CONFIG_PARIDE is not set +CONFIG_PARMAN=m CONFIG_PARPORT_1284=y # CONFIG_PARPORT_AX88796 is not set # CONFIG_PARPORT is not set @@ -3888,6 +3889,7 @@ CONFIG_PATA_TOSHIBA=m CONFIG_PATA_TRIFLEX=m CONFIG_PATA_VIA=m CONFIG_PATA_WINBOND=m +# CONFIG_PC104 is not set # CONFIG_PC87413_WDT is not set CONFIG_PCCARD=y CONFIG_PCF50633_ADC=m @@ -3954,12 +3956,15 @@ CONFIG_PHY_EXYNOS5250_SATA=m CONFIG_PHY_EXYNOS5_USBDRD=m CONFIG_PHY_EXYNOS_DP_VIDEO=m CONFIG_PHY_EXYNOS_MIPI_VIDEO=m +CONFIG_PHY_EXYNOS_PCIE=y CONFIG_PHYLIB=y CONFIG_PHY_MESON8B_USB2=m CONFIG_PHY_MVEBU_SATA=y # CONFIG_PHY_PXA_28NM_HSIC is not set # CONFIG_PHY_PXA_28NM_USB2 is not set # CONFIG_PHY_QCOM_IPQ806X_SATA is not set +CONFIG_PHY_QCOM_USB_HSIC=m +CONFIG_PHY_QCOM_USB_HS=m CONFIG_PHY_ROCKCHIP_DP=m CONFIG_PHY_ROCKCHIP_EMMC=m CONFIG_PHY_ROCKCHIP_INNO_USB2=m @@ -3985,6 +3990,7 @@ CONFIG_PINCTRL_AS3722=y # CONFIG_PINCTRL_BROXTON is not set # CONFIG_PINCTRL_CHERRYVIEW is not set CONFIG_PINCTRL_DOVE=y +# CONFIG_PINCTRL_GEMINILAKE is not set # CONFIG_PINCTRL_IMX35 is not set # CONFIG_PINCTRL_IPQ4019 is not set # CONFIG_PINCTRL_IPQ8064 is not set @@ -3996,6 +4002,7 @@ CONFIG_PINCTRL_SAMSUNG=y CONFIG_PINCTRL_SINGLE=y # CONFIG_PINCTRL_SUNRISEPOINT is not set # CONFIG_PINCTRL_SX150X is not set +# CONFIG_PINCTRL_TI_IODELAY is not set CONFIG_PINCTRL=y CONFIG_PINMUX=y CONFIG_PJ4B_ERRATA_4742=y @@ -4075,6 +4082,7 @@ CONFIG_PPTP=m CONFIG_PREEMPT_VOLUNTARY=y CONFIG_PREVENT_FIRMWARE_BUILD=y CONFIG_PRINTER=m +CONFIG_PRINTK_SAFE_LOG_BUF_SHIFT=12 CONFIG_PRINTK_TIME=y # CONFIG_PRINT_QUOTA_WARNING is not set # CONFIG_PRISM2_USB is not set @@ -4088,6 +4096,7 @@ CONFIG_PROC_VMCORE=y CONFIG_PROFILING=y # CONFIG_PROVE_LOCKING is not set # CONFIG_PROVE_RCU_REPEATEDLY is not set +CONFIG_PSAMPLE=m # CONFIG_PSTORE_CONSOLE is not set # CONFIG_PSTORE_FTRACE is not set # CONFIG_PSTORE_PMSG is not set @@ -4108,6 +4117,7 @@ CONFIG_PWM_SYSFS=y CONFIG_PWM_TEGRA=m CONFIG_PWM=y CONFIG_PWRSEQ_EMMC=m +# CONFIG_PWRSEQ_SD8787 is not set CONFIG_PWRSEQ_SIMPLE=m # CONFIG_QCA7000 is not set CONFIG_QCOM_ADSP_PIL=m @@ -4115,10 +4125,12 @@ CONFIG_QCOM_ADSP_PIL=m # CONFIG_QCOM_EMAC is not set # CONFIG_QCOM_HIDMA is not set # CONFIG_QCOM_HIDMA_MGMT is not set +CONFIG_QCOM_IRQ_COMBINER=y # CONFIG_QCOM_SPMI_IADC is not set # CONFIG_QCOM_SPMI_TEMP_ALARM is not set # CONFIG_QCOM_SPMI_VADC is not set CONFIG_QEDE=m +CONFIG_QEDF=m CONFIG_QEDI=m CONFIG_QED=m CONFIG_QED_SRIOV=y @@ -4167,7 +4179,6 @@ CONFIG_RADIO_TERRATEC=m CONFIG_RADIO_TRUST=m CONFIG_RADIO_TYPHOON=m CONFIG_RADIO_WL1273=m -# CONFIG_RADIO_WL128X is not set # depends on TI_ST which we don't enable CONFIG_RADIO_ZOLTRIX=m CONFIG_RAID_ATTRS=m # CONFIG_RANDOM32_SELFTEST is not set @@ -4222,6 +4233,7 @@ CONFIG_REGULATOR_AD5398=m # CONFIG_REGULATOR_ANATOP is not set CONFIG_REGULATOR_AS3722=m CONFIG_REGULATOR_AXP20X=m +CONFIG_REGULATOR_CPCAP=m CONFIG_REGULATOR_DA9210=m CONFIG_REGULATOR_DA9211=m # CONFIG_REGULATOR_DEBUG is not set @@ -4249,7 +4261,7 @@ CONFIG_REGULATOR_PFUZE100=m CONFIG_REGULATOR_PV88060=m # CONFIG_REGULATOR_PV88080 is not set CONFIG_REGULATOR_PV88090=m -CONFIG_REGULATOR_PWM=m +CONFIG_REGULATOR_PWM=y # CONFIG_REGULATOR_QCOM_SPMI is not set CONFIG_REGULATOR_RK808=m CONFIG_REGULATOR_S2MPA01=m @@ -4286,7 +4298,6 @@ CONFIG_RESET_GPIO=y CONFIG_RFKILL_GPIO=m CONFIG_RFKILL_INPUT=y CONFIG_RFKILL=m -CONFIG_RFKILL_REGULATOR=m CONFIG_RING_BUFFER_BENCHMARK=m # CONFIG_RING_BUFFER_STARTUP_TEST is not set # CONFIG_RIO is not set @@ -4302,6 +4313,7 @@ CONFIG_RMI4_I2C=m CONFIG_RMI4_SMB=m CONFIG_RMI4_SPI=m CONFIG_ROCKCHIP_ANALOGIX_DP=m +# CONFIG_ROCKCHIP_CDN_DP is not set CONFIG_ROCKCHIP_DW_HDMI=m CONFIG_ROCKCHIP_DW_MIPI_DSI=m CONFIG_ROCKCHIP_EFUSE=m @@ -4317,6 +4329,7 @@ CONFIG_ROCKETPORT=m CONFIG_ROMFS_FS=m CONFIG_ROSE=m CONFIG_RPCSEC_GSS_KRB5=m +# CONFIG_RPMSG_CHAR is not set CONFIG_RPR0521=m CONFIG_RSI_91X=m CONFIG_RSI_DEBUGFS=y @@ -4772,6 +4785,7 @@ CONFIG_SENSORS_SIS5595=m CONFIG_SENSORS_SMSC47B397=m CONFIG_SENSORS_SMSC47M192=m CONFIG_SENSORS_SMSC47M1=m +# CONFIG_SENSORS_STTS751 is not set CONFIG_SENSORS_TC654=m CONFIG_SENSORS_TC74=m CONFIG_SENSORS_THMC50=m @@ -4810,6 +4824,7 @@ CONFIG_SERIAL_8250_CS=m # CONFIG_SERIAL_8250_DETECT_IRQ is not set CONFIG_SERIAL_8250_DW=y # CONFIG_SERIAL_8250_EM is not set +CONFIG_SERIAL_8250_EXAR=m CONFIG_SERIAL_8250_EXTENDED=y # CONFIG_SERIAL_8250_FINTEK is not set # CONFIG_SERIAL_8250_INGENIC is not set @@ -4817,6 +4832,7 @@ CONFIG_SERIAL_8250_MANY_PORTS=y # CONFIG_SERIAL_8250_MID is not set CONFIG_SERIAL_8250_MOXA=m CONFIG_SERIAL_8250_NR_UARTS=32 +CONFIG_SERIAL_8250_PCI=m CONFIG_SERIAL_8250_RSA=y CONFIG_SERIAL_8250_RT288X=y CONFIG_SERIAL_8250_RUNTIME_UARTS=32 @@ -4834,6 +4850,8 @@ CONFIG_SERIAL_ARC_NR_PORTS=1 # CONFIG_SERIAL_CONEXANT_DIGICOLOR is not set CONFIG_SERIAL_CORE_CONSOLE=y CONFIG_SERIAL_CORE=y +CONFIG_SERIAL_DEV_BUS=y +CONFIG_SERIAL_DEV_CTRL_TTYPORT=y CONFIG_SERIAL_EARLYCON_ARM_SEMIHOST=y # CONFIG_SERIAL_FSL_LPUART is not set # CONFIG_SERIAL_IFX6X60 is not set @@ -4846,7 +4864,7 @@ CONFIG_SERIAL_MESON=y # CONFIG_SERIAL_MPS2_UART is not set CONFIG_SERIAL_MVEBU_CONSOLE=y CONFIG_SERIAL_MVEBU_UART=y -CONFIG_SERIAL_NONSTANDARD=y +# CONFIG_SERIAL_NONSTANDARD is not set CONFIG_SERIAL_OF_PLATFORM=y # CONFIG_SERIAL_PCH_UART is not set # CONFIG_SERIAL_RP2 is not set @@ -4855,7 +4873,8 @@ CONFIG_SERIAL_SAMSUNG_CONSOLE=y CONFIG_SERIAL_SAMSUNG=y # CONFIG_SERIAL_SC16IS7XX is not set # CONFIG_SERIAL_SCCNXP is not set -# CONFIG_SERIAL_ST_ASC is not set +CONFIG_SERIAL_ST_ASC_CONSOLE=y +CONFIG_SERIAL_ST_ASC=y CONFIG_SERIAL_TEGRA=y # CONFIG_SERIAL_TIMBERDALE is not set # CONFIG_SERIAL_UARTLITE is not set @@ -4909,6 +4928,7 @@ CONFIG_SMARTJOYPLUS_FF=y CONFIG_SMC911X=m CONFIG_SMC91X=m CONFIG_SMC_IRCC_FIR=m +# CONFIG_SMC is not set # CONFIG_SM_FTL is not set CONFIG_SMP_ON_UP=y CONFIG_SMP=y @@ -5061,7 +5081,7 @@ CONFIG_SND_SEQUENCER=m CONFIG_SND_SEQUENCER_OSS=y CONFIG_SND_SERIAL_U16550=m CONFIG_SND_SIMPLE_CARD=m -# CONFIG_SND_SIMPLE_SCU_CARD is not set +CONFIG_SND_SIMPLE_SCU_CARD=m CONFIG_SND_SIS7019=m CONFIG_SND_SOC_AC97_BUS=y CONFIG_SND_SOC_AC97_CODEC=m @@ -5095,7 +5115,9 @@ CONFIG_SND_SOC_CS42L42=m # CONFIG_SND_SOC_CS4349 is not set # CONFIG_SND_SOC_CS53L30 is not set CONFIG_SND_SOC_DMIC=m -# CONFIG_SND_SOC_ES8328 is not set +CONFIG_SND_SOC_ES8328_I2C=m +CONFIG_SND_SOC_ES8328=m +CONFIG_SND_SOC_ES8328_SPI=m # CONFIG_SND_SOC_FSL_ASOC_CARD is not set # CONFIG_SND_SOC_FSL_ASRC is not set # CONFIG_SND_SOC_FSL_ESAI is not set @@ -5115,6 +5137,7 @@ CONFIG_SND_SOC=m # CONFIG_SND_SOC_MAX9860 is not set # CONFIG_SND_SOC_MSM8916_WCD_ANALOG is not set # CONFIG_SND_SOC_MSM8916_WCD_DIGITAL is not set +# CONFIG_SND_SOC_NAU8540 is not set # CONFIG_SND_SOC_NAU8810 is not set # CONFIG_SND_SOC_PCM1681 is not set # CONFIG_SND_SOC_PCM179X_I2C is not set @@ -5125,7 +5148,8 @@ CONFIG_SND_SOC=m CONFIG_SND_SOC_PCM512x_I2C=m CONFIG_SND_SOC_PCM512x=m CONFIG_SND_SOC_PCM512x_SPI=m -# CONFIG_SND_SOC_RK3399_GRU_SOUND is not set +CONFIG_SND_SOC_RK3288_HDMI_ANALOG=m +CONFIG_SND_SOC_RK3399_GRU_SOUND=m CONFIG_SND_SOC_ROCKCHIP_I2S=m CONFIG_SND_SOC_ROCKCHIP=m CONFIG_SND_SOC_ROCKCHIP_MAX98090=m @@ -5136,7 +5160,7 @@ CONFIG_SND_SOC_RT5631=m CONFIG_SND_SOC_SAMSUNG=m CONFIG_SND_SOC_SAMSUNG_SMDK_SPDIF=m CONFIG_SND_SOC_SAMSUNG_SMDK_WM8994=m -# CONFIG_SND_SOC_SGTL5000 is not set +CONFIG_SND_SOC_SGTL5000=m # CONFIG_SND_SOC_SIRF_AUDIO_CODEC is not set CONFIG_SND_SOC_SMDK_WM8994_PCM=m CONFIG_SND_SOC_SNOW=m @@ -5161,7 +5185,7 @@ CONFIG_SND_SOC_TEGRA=m CONFIG_SND_SOC_TEGRA_MAX98090=m CONFIG_SND_SOC_TEGRA_RT5640=m CONFIG_SND_SOC_TEGRA_RT5677=m -# CONFIG_SND_SOC_TEGRA_SGTL5000 is not set +CONFIG_SND_SOC_TEGRA_SGTL5000=m # CONFIG_SND_SOC_TEGRA_TRIMSLICE is not set # CONFIG_SND_SOC_TEGRA_WM8753 is not set # CONFIG_SND_SOC_TEGRA_WM8903 is not set @@ -5201,6 +5225,7 @@ CONFIG_SND_SUN4I_CODEC=m CONFIG_SND_SUN4I_I2S=m CONFIG_SND_SUN4I_SPDIF=m CONFIG_SND_SUN8I_CODEC_ANALOG=m +CONFIG_SND_SUN8I_CODEC=m # CONFIG_SND_SUPPORT_OLD_API is not set CONFIG_SND_TRIDENT=m CONFIG_SND_USB_6FIRE=m @@ -5238,6 +5263,7 @@ CONFIG_SOC_EXYNOS5440=y CONFIG_SOC_EXYNOS5800=y # CONFIG_SOC_OMAP5 is not set # CONFIG_SOC_TI is not set +# CONFIG_SOC_ZTE is not set CONFIG_SOFT_WATCHDOG=m CONFIG_SOLARIS_X86_PARTITION=y # CONFIG_SOLO6X10 is not set @@ -5300,6 +5326,7 @@ CONFIG_SQUASHFS_XATTR=y CONFIG_SQUASHFS_XZ=y CONFIG_SQUASHFS_ZLIB=y CONFIG_SRAM=y +# CONFIG_SRF08 is not set # CONFIG_SSB_DEBUG is not set CONFIG_SSB_DRIVER_GPIO=y CONFIG_SSB_DRIVER_PCICORE=y @@ -5317,6 +5344,7 @@ CONFIG_STAGING_MEDIA=y CONFIG_STAGING=y CONFIG_STANDALONE=y # CONFIG_STATIC_KEYS_SELFTEST is not set +# CONFIG_STATIC_USERMODEHELPER is not set CONFIG_STE10XP=m # CONFIG_STE_MODEM_RPROC is not set CONFIG_STK3310=m @@ -5329,15 +5357,19 @@ CONFIG_STMMAC_ETH=m CONFIG_STMMAC_PLATFORM=m # CONFIG_STM_SOURCE_CONSOLE is not set CONFIG_STRICT_DEVMEM=y +CONFIG_STRICT_KERNEL_RWX=y +CONFIG_STRICT_MODULE_RWX=y CONFIG_STRIP_ASM_SYMS=y # CONFIG_STRIP is not set CONFIG_SUN4I_EMAC=m # CONFIG_SUN50I_A64_CCU is not set -# CONFIG_SUN6I_A31_CCU is not set -# CONFIG_SUN8I_A23_CCU is not set -# CONFIG_SUN8I_A33_CCU is not set -CONFIG_SUN8I_EMAC=m +CONFIG_SUN5I_CCU=y +CONFIG_SUN6I_A31_CCU=y +CONFIG_SUN8I_A23_CCU=y +CONFIG_SUN8I_A33_CCU=y CONFIG_SUN8I_H3_CCU=y +CONFIG_SUN8I_V3S_CCU=y +CONFIG_SUN9I_A80_CCU=y CONFIG_SUNDANCE=m # CONFIG_SUNDANCE_MMIO is not set # CONFIG_SUNGEM is not set @@ -5365,7 +5397,7 @@ CONFIG_SYNCLINK=m CONFIG_SYNCLINKMP=m CONFIG_SYN_COOKIES=y # CONFIG_SYNOPSYS_DWC_ETH_QOS is not set -# CONFIG_SYSCON_REBOOT_MODE is not set +CONFIG_SYSCON_REBOOT_MODE=y CONFIG_SYSCTL=y # CONFIG_SYSFS_DEPRECATED is not set # CONFIG_SYSFS_DEPRECATED_V2 is not set @@ -5461,9 +5493,11 @@ CONFIG_TEST_ASYNC_DRIVER_PROBE=m CONFIG_TEST_KSTRTOX=y # CONFIG_TEST_LIST_SORT is not set # CONFIG_TEST_LKM is not set +# CONFIG_TEST_PARMAN is not set # CONFIG_TEST_POWER is not set # CONFIG_TEST_PRINTF is not set # CONFIG_TEST_RHASHTABLE is not set +# CONFIG_TEST_SORT is not set # CONFIG_TEST_STATIC_KEYS is not set # CONFIG_TEST_STRING_HELPERS is not set # CONFIG_TEST_UDELAY is not set @@ -5490,6 +5524,7 @@ CONFIG_THRUSTMASTER_FF=y # CONFIG_TI_ADC128S052 is not set # CONFIG_TI_ADC161S626 is not set # CONFIG_TI_ADS1015 is not set +# CONFIG_TI_ADS7950 is not set # CONFIG_TI_ADS8688 is not set CONFIG_TI_AEMIF=m # CONFIG_TI_CPSW_ALE is not set @@ -5502,6 +5537,8 @@ CONFIG_TIGON3=m # CONFIG_TIMB_DMA is not set # CONFIG_TIMER_STATS is not set CONFIG_TI_MESSAGE_MANAGER=m +CONFIG_TINYDRM_MI0283QT=m +CONFIG_TINYDRM_MIPI_DBI=m CONFIG_TIPC=m # CONFIG_TIPC_MEDIA_IB is not set CONFIG_TIPC_MEDIA_UDP=y @@ -5510,9 +5547,11 @@ CONFIG_TI_SOC_THERMAL=m # CONFIG_TI_ST is not set CONFIG_TI_SYSCON_RESET=m CONFIG_TI_THERMAL=y +# CONFIG_TI_TLC4541 is not set # CONFIG_TLAN is not set # CONFIG_TMD_HERMES is not set CONFIG_TMP006=m +# CONFIG_TMP007 is not set CONFIG_TMPFS_POSIX_ACL=y CONFIG_TMPFS_XATTR=y CONFIG_TMPFS=y @@ -5583,6 +5622,7 @@ CONFIG_TOUCHSCREEN_WACOM_I2C=m CONFIG_TOUCHSCREEN_WACOM_W8001=m # CONFIG_TOUCHSCREEN_WDT87XX_I2C is not set # CONFIG_TOUCHSCREEN_WM97XX is not set +CONFIG_TOUCHSCREEN_ZET6223=m CONFIG_TOUCHSCREEN_ZFORCE=m # CONFIG_TPL0102 is not set # CONFIG_TPS6105X is not set @@ -5653,7 +5693,7 @@ CONFIG_UNIX_DIAG=m CONFIG_UNIXWARE_DISKLABEL=y CONFIG_UNIX=y CONFIG_UNUSED_SYMBOLS=y -CONFIG_UPROBE_EVENT=y +CONFIG_UPROBE_EVENTS=y # CONFIG_US5182D is not set CONFIG_USB_ACM=m CONFIG_USB_ADUTUX=m @@ -5672,6 +5712,7 @@ CONFIG_USB_CATC=m CONFIG_USB_CDC_PHONET=m CONFIG_USB_CHAOSKEY=m # CONFIG_USB_CHIPIDEA is not set +# CONFIG_USB_CHIPIDEA_ULPI is not set CONFIG_USB_CONFIGFS_ACM=y CONFIG_USB_CONFIGFS_ECM_SUBSET=y CONFIG_USB_CONFIGFS_ECM=y @@ -5798,6 +5839,7 @@ CONFIG_USB_HID=y CONFIG_USB_HSIC_USB3503=m CONFIG_USB_HSIC_USB4604=m CONFIG_USB_HSO=m +CONFIG_USB_HUB_USB251XB=m CONFIG_USB_HWA_HCD=m CONFIG_USB_IDMOUSE=m CONFIG_USB_IOWARRIOR=m @@ -5955,6 +5997,7 @@ CONFIG_USB_SERIAL_SPCP8X5=m CONFIG_USB_SERIAL_SSU100=m CONFIG_USB_SERIAL_SYMBOL=m CONFIG_USB_SERIAL_TI=m +CONFIG_USB_SERIAL_UPD78F0730=m CONFIG_USB_SERIAL_VISOR=m CONFIG_USB_SERIAL_WHITEHEAT=m # CONFIG_USB_SERIAL_WISHBONE is not set @@ -6036,7 +6079,7 @@ CONFIG_V4L_MEM2MEM_DRIVERS=y # CONFIG_V4L_PLATFORM_DRIVERS is not set # CONFIG_V4L_TEST_DRIVERS is not set # CONFIG_VCNL4000 is not set -# CONFIG_VDSO is not set +CONFIG_VDSO=y # CONFIG_VEML6070 is not set CONFIG_VETH=m CONFIG_VEXPRESS_SYSCFG=y @@ -6057,6 +6100,7 @@ CONFIG_VFPv3=y CONFIG_VFP=y CONFIG_VGA_ARB_MAX_GPUS=16 CONFIG_VGA_ARB=y +# CONFIG_VGACON_SOFT_SCROLLBACK_PERSISTENT_ENABLE_BY_DEFAULT is not set CONFIG_VGACON_SOFT_SCROLLBACK_SIZE=64 CONFIG_VGACON_SOFT_SCROLLBACK=y CONFIG_VGA_CONSOLE=y @@ -6110,6 +6154,7 @@ CONFIG_VIDEO_HDPVR=m CONFIG_VIDEO_HEXIUM_GEMINI=m CONFIG_VIDEO_HEXIUM_ORION=m # CONFIG_VIDEO_IVTV_ALSA is not set +# CONFIG_VIDEO_IVTV_DEPRECATED_IOCTLS is not set CONFIG_VIDEO_IVTV=m # CONFIG_VIDEO_M5MOLS is not set # CONFIG_VIDEO_MEM2MEM_DEINTERLACE is not set @@ -6133,7 +6178,7 @@ CONFIG_VIDEO_SAA7134_RC=y CONFIG_VIDEO_SAA7146=m CONFIG_VIDEO_SAA7146_VV=m CONFIG_VIDEO_SAA7164=m -CONFIG_VIDEO_SAMSUNG_EXYNOS4_IS=y +CONFIG_VIDEO_SAMSUNG_EXYNOS4_IS=m # CONFIG_VIDEO_SAMSUNG_EXYNOS_GSC is not set CONFIG_VIDEO_SAMSUNG_S5P_CEC=m CONFIG_VIDEO_SAMSUNG_S5P_G2D=m @@ -6175,6 +6220,7 @@ CONFIG_VIDEO_ZORAN_ZR36060=m # CONFIG_VIRT_DRIVERS is not set CONFIG_VIRTIO_BALLOON=m CONFIG_VIRTIO_BLK=m +CONFIG_VIRTIO_BLK_SCSI=y CONFIG_VIRTIO_CONSOLE=m CONFIG_VIRTIO_INPUT=m # CONFIG_VIRTIO_MMIO_CMDLINE_DEVICES is not set @@ -6190,8 +6236,6 @@ CONFIG_VLAN_8021Q=m CONFIG_VLAN_8021Q_MVRP=y CONFIG_VLSI_FIR=m # CONFIG_VME_BUS is not set -CONFIG_VMWARE_BALLOON=m -CONFIG_VMWARE_PVSCSI=m # CONFIG_VMXNET3 is not set CONFIG_VORTEX=m CONFIG_VSOCKETS=m @@ -6213,6 +6257,7 @@ CONFIG_W1_MASTER_DS2490=m CONFIG_W1_MASTER_GPIO=m # CONFIG_W1_MASTER_MATROX is not set CONFIG_W1_SLAVE_BQ27000=m +CONFIG_W1_SLAVE_DS2405=m CONFIG_W1_SLAVE_DS2406=m CONFIG_W1_SLAVE_DS2408=m # CONFIG_W1_SLAVE_DS2408_READBACK is not set @@ -6285,6 +6330,7 @@ CONFIG_WM8350_POWER=m CONFIG_WM8350_WATCHDOG=m # CONFIG_WQ_POWER_EFFICIENT_DEFAULT is not set # CONFIG_WQ_WATCHDOG is not set +# CONFIG_WW_MUTEX_SELFTEST is not set # CONFIG_X25 is not set # CONFIG_X86_BOOTPARAM_MEMORY_CORRUPTION_CHECK is not set # CONFIG_X86_PTDUMP is not set diff --git a/kernel-armv7hl.config b/kernel-armv7hl.config index 126f30ccd..66bd982ac 100644 --- a/kernel-armv7hl.config +++ b/kernel-armv7hl.config @@ -124,11 +124,11 @@ CONFIG_AEABI=y # CONFIG_AF_KCM is not set # CONFIG_AF_RXRPC is not set # CONFIG_AFS_FS is not set -# CONFIG_AGP is not set # CONFIG_AHCI_CEVA is not set CONFIG_AHCI_IMX=m CONFIG_AHCI_MVEBU=m # CONFIG_AHCI_QORIQ is not set +CONFIG_AHCI_ST=m CONFIG_AHCI_SUNXI=m CONFIG_AHCI_TEGRA=m # CONFIG_AIC79XX_BUILD_FIRMWARE is not set @@ -205,7 +205,7 @@ CONFIG_ARCH_HIGHBANK=y # CONFIG_ARCH_KEYSTONE is not set # CONFIG_ARCH_MDM9615 is not set # CONFIG_ARCH_MEDIATEK is not set -# CONFIG_ARCH_MESON is not set +CONFIG_ARCH_MESON=y CONFIG_ARCH_MMP=y CONFIG_ARCH_MSM8960=y CONFIG_ARCH_MSM8974=y @@ -225,12 +225,11 @@ CONFIG_ARCH_ROCKCHIP=y # CONFIG_ARCH_SHMOBILE_MULTI is not set # CONFIG_ARCH_SIRF is not set # CONFIG_ARCH_SOCFPGA is not set -# CONFIG_ARCH_STI is not set +CONFIG_ARCH_STI=y CONFIG_ARCH_SUNXI=y # CONFIG_ARCH_TANGO is not set CONFIG_ARCH_TEGRA_114_SOC=y CONFIG_ARCH_TEGRA_124_SOC=y -# CONFIG_ARCH_TEGRA_186_SOC is not set CONFIG_ARCH_TEGRA_2x_SOC=y CONFIG_ARCH_TEGRA_3x_SOC=y CONFIG_ARCH_TEGRA=y @@ -246,7 +245,6 @@ CONFIG_ARCH_VIRT=y # CONFIG_ARCH_ZX is not set CONFIG_ARCH_ZYNQ=y # CONFIG_ARCNET is not set -# CONFIG_ARM64_PTDUMP is not set CONFIG_ARMADA_THERMAL=m CONFIG_ARM_AMBA=y CONFIG_ARM_APPENDED_DTB=y @@ -319,11 +317,13 @@ CONFIG_ARM_SCPI_POWER_DOMAIN=m CONFIG_ARM_SCPI_PROTOCOL=m CONFIG_ARM_SMMU=y CONFIG_ARM_SP805_WATCHDOG=m +CONFIG_ARM_STI_CPUFREQ=m CONFIG_ARM_TEGRA124_CPUFREQ=m # CONFIG_ARM_TEGRA20_CPUFREQ is not set CONFIG_ARM_TEGRA_DEVFREQ=m CONFIG_ARM_THUMBEE=y CONFIG_ARM_THUMB=y +CONFIG_ARM_TI_CPUFREQ=y CONFIG_ARM_TIMER_SP804=y CONFIG_ARM_UNWIND=y CONFIG_ARM_VEXPRESS_SPC_CPUFREQ=m @@ -497,7 +497,6 @@ CONFIG_BATTERY_DA9052=m # CONFIG_BATTERY_DS2781 is not set # CONFIG_BATTERY_DS2782 is not set # CONFIG_BATTERY_GAUGE_LTC2941 is not set -# CONFIG_BATTERY_GOLDFISH is not set # CONFIG_BATTERY_MAX17040 is not set # CONFIG_BATTERY_MAX17042 is not set CONFIG_BATTERY_RX51=m @@ -545,6 +544,7 @@ CONFIG_BINFMT_SCRIPT=y CONFIG_BLK_CGROUP=y # CONFIG_BLK_CMDLINE_PARSER is not set CONFIG_BLK_CPQ_CISS_DA=m +CONFIG_BLK_DEBUG_FS=y # CONFIG_BLK_DEV_3W_XXXX_RAID is not set CONFIG_BLK_DEV_BSGLIB=y CONFIG_BLK_DEV_BSG=y @@ -583,6 +583,7 @@ CONFIG_BLK_DEV_THROTTLING=y CONFIG_BLK_DEV_UMEM=m CONFIG_BLK_DEV=y CONFIG_BLK_DEV_ZONED=y +CONFIG_BLK_SED_OPAL=y CONFIG_BLK_WBT_MQ=y # CONFIG_BLK_WBT_SQ is not set CONFIG_BLK_WBT=y @@ -681,6 +682,7 @@ CONFIG_BT_HCIUART_INTEL=y CONFIG_BT_HCIUART_LL=y CONFIG_BT_HCIUART=m CONFIG_BT_HCIUART_MRVL=y +CONFIG_BT_HCIUART_NOKIA=m CONFIG_BT_HCIUART_QCA=y CONFIG_BT_HCIVHCI=m CONFIG_BT_HIDP=m @@ -790,6 +792,7 @@ CONFIG_CEPH_LIB=m # CONFIG_CEPH_LIB_USE_DNS_RESOLVER is not set CONFIG_CFAG12864B=m CONFIG_CFAG12864B_RATE=20 +CONFIG_CFG80211_CRDA_SUPPORT=y CONFIG_CFG80211_DEBUGFS=y CONFIG_CFG80211_DEFAULT_PS=y # CONFIG_CFG80211_DEVELOPER_WARNINGS is not set @@ -807,13 +810,16 @@ CONFIG_CGROUP_NET_CLASSID=y CONFIG_CGROUP_NET_PRIO=y CONFIG_CGROUP_PERF=y CONFIG_CGROUP_PIDS=y +# CONFIG_CGROUP_RDMA is not set CONFIG_CGROUP_SCHED=y CONFIG_CGROUPS=y +CONFIG_CHARGER_AXP20X=m CONFIG_CHARGER_BQ2415X=m CONFIG_CHARGER_BQ24190=m # CONFIG_CHARGER_BQ24257 is not set CONFIG_CHARGER_BQ24735=m # CONFIG_CHARGER_BQ25890 is not set +# CONFIG_CHARGER_DETECTOR_MAX14656 is not set CONFIG_CHARGER_GPIO=m CONFIG_CHARGER_ISP1704=m # CONFIG_CHARGER_LP8727 is not set @@ -823,6 +829,7 @@ CONFIG_CHARGER_MAX8997=m # CONFIG_CHARGER_PCF50633 is not set # CONFIG_CHARGER_QCOM_SMBB is not set # CONFIG_CHARGER_RT9455 is not set +# CONFIG_CHARGER_SBS is not set CONFIG_CHARGER_SMB347=m CONFIG_CHARGER_TPS65090=m CONFIG_CHARGER_TPS65217=m @@ -869,6 +876,7 @@ CONFIG_CLS_U32_PERF=y CONFIG_CM32181=m # CONFIG_CM3232 is not set # CONFIG_CM3323 is not set +CONFIG_CM3605=m CONFIG_CM36651=m CONFIG_CMA_ALIGNMENT=8 CONFIG_CMA_AREAS=7 @@ -890,21 +898,8 @@ CONFIG_COMMON_CLK_AXI_CLKGEN=m # CONFIG_COMMON_CLK_CDCE706 is not set # CONFIG_COMMON_CLK_CDCE925 is not set # CONFIG_COMMON_CLK_CS2000_CP is not set -# CONFIG_COMMON_CLK_HI3516CV300 is not set -# CONFIG_COMMON_CLK_HI3519 is not set -# CONFIG_COMMON_CLK_HI3798CV200 is not set CONFIG_COMMON_CLK_MAX77686=m CONFIG_COMMON_CLK_MAX77802=m -# CONFIG_COMMON_CLK_MT2701_BDPSYS is not set -# CONFIG_COMMON_CLK_MT2701_ETHSYS is not set -# CONFIG_COMMON_CLK_MT2701_HIFSYS is not set -# CONFIG_COMMON_CLK_MT2701_IMGSYS is not set -# CONFIG_COMMON_CLK_MT2701 is not set -# CONFIG_COMMON_CLK_MT2701_MMSYS is not set -# CONFIG_COMMON_CLK_MT2701_VDECSYS is not set -# CONFIG_COMMON_CLK_MT8135 is not set -# CONFIG_COMMON_CLK_MT8173 is not set -# CONFIG_COMMON_CLK_OXNAS is not set CONFIG_COMMON_CLK_PALMAS=m CONFIG_COMMON_CLK_PWM=m CONFIG_COMMON_CLK_QCOM=m @@ -915,9 +910,11 @@ CONFIG_COMMON_CLK_SCPI=m CONFIG_COMMON_CLK_SI5351=m CONFIG_COMMON_CLK_SI570=m CONFIG_COMMON_CLK_TI_ADPLL=m +# CONFIG_COMMON_CLK_VC5 is not set CONFIG_COMMON_CLK_VERSATILE=y CONFIG_COMMON_CLK_XLNX_CLKWZRD=m CONFIG_COMMON_CLK=y +# CONFIG_COMMON_RESET_HI3660 is not set CONFIG_COMPACTION=y # CONFIG_COMPAT_BRK is not set # CONFIG_COMPILE_TEST is not set @@ -972,6 +969,7 @@ CONFIG_CRYPTO_842=m CONFIG_CRYPTO_AES_ARM_BS=y # CONFIG_CRYPTO_AES_ARM_CE is not set CONFIG_CRYPTO_AES_ARM=y +CONFIG_CRYPTO_AES_TI=m CONFIG_CRYPTO_AES=y CONFIG_CRYPTO_ANSI_CPRNG=m CONFIG_CRYPTO_ANUBIS=m @@ -985,11 +983,11 @@ CONFIG_CRYPTO_CAST6=m CONFIG_CRYPTO_CBC=y CONFIG_CRYPTO_CCM=m CONFIG_CRYPTO_CHACHA20=m +CONFIG_CRYPTO_CHACHA20_NEON=m CONFIG_CRYPTO_CHACHA20POLY1305=m CONFIG_CRYPTO_CMAC=m CONFIG_CRYPTO_CRC32_ARM64_CE=m CONFIG_CRYPTO_CRC32_ARM_CE=m -CONFIG_CRYPTO_CRC32C_INTEL=m CONFIG_CRYPTO_CRC32C_VPMSUM=m CONFIG_CRYPTO_CRC32C=y CONFIG_CRYPTO_CRC32=m @@ -1155,7 +1153,7 @@ CONFIG_DEBUG_OBJECTS_ENABLE_DEFAULT=1 # CONFIG_DEBUG_PERF_USE_VMALLOC is not set # CONFIG_DEBUG_PI_LIST is not set # CONFIG_DEBUG_PINCTRL is not set -# CONFIG_DEBUG_RODATA is not set +# CONFIG_DEBUG_REFCOUNT is not set CONFIG_DEBUG_RODATA_TEST=y # CONFIG_DEBUG_RT_MUTEXES is not set # CONFIG_DEBUG_SECTION_MISMATCH is not set @@ -1195,6 +1193,7 @@ CONFIG_DEVFREQ_GOV_SIMPLE_ONDEMAND=m CONFIG_DEVFREQ_THERMAL=y # CONFIG_DEVKMEM is not set CONFIG_DEVMEM=y +# CONFIG_DEVPORT is not set CONFIG_DEVTMPFS_MOUNT=y CONFIG_DEVTMPFS=y # CONFIG_DGAP is not set @@ -1274,6 +1273,7 @@ CONFIG_DRM_ARMADA=m CONFIG_DRM_AST=m CONFIG_DRM_BOCHS=m CONFIG_DRM_CIRRUS_QEMU=m +# CONFIG_DRM_DEBUG_MM_SELFTEST is not set CONFIG_DRM_DP_AUX_CHARDEV=y CONFIG_DRM_DUMB_VGA_DAC=m CONFIG_DRM_DW_HDMI_AHB_AUDIO=m @@ -1305,18 +1305,10 @@ CONFIG_DRM_HDLCD=m CONFIG_DRM_HISI_HIBMC=m CONFIG_DRM_I2C_ADV7511_AUDIO=y CONFIG_DRM_I2C_ADV7511=m -# CONFIG_DRM_I2C_ADV7533 is not set +CONFIG_DRM_I2C_ADV7533=y CONFIG_DRM_I2C_CH7006=m CONFIG_DRM_I2C_NXP_TDA998X=m CONFIG_DRM_I2C_SIL164=m -# CONFIG_DRM_I810 is not set -# CONFIG_DRM_I915_ALPHA_SUPPORT is not set -CONFIG_DRM_I915_CAPTURE_ERROR=y -CONFIG_DRM_I915_COMPRESS_ERROR=y -CONFIG_DRM_I915_GVT_KVMGT=m -CONFIG_DRM_I915_GVT=y -CONFIG_DRM_I915=m -CONFIG_DRM_I915_USERPTR=y CONFIG_DRM_IMX_HDMI=m CONFIG_DRM_IMX_IPUV3=m CONFIG_DRM_IMX_LDB=m @@ -1327,7 +1319,7 @@ CONFIG_DRM_IMX_TVE=m CONFIG_DRM_LOAD_EDID_FIRMWARE=y CONFIG_DRM=m CONFIG_DRM_MALI_DISPLAY=m -# CONFIG_DRM_MESON is not set +CONFIG_DRM_MESON=m CONFIG_DRM_MGAG200=m # CONFIG_DRM_MGA is not set # CONFIG_DRM_MSM_DSI is not set @@ -1337,7 +1329,7 @@ CONFIG_DRM_MSM=m CONFIG_DRM_MXSFB=m CONFIG_DRM_NOUVEAU_BACKLIGHT=y CONFIG_DRM_NOUVEAU=m -# CONFIG_DRM_NXP_PTN3460 is not set +CONFIG_DRM_NXP_PTN3460=m CONFIG_DRM_OMAP_CONNECTOR_ANALOG_TV=m CONFIG_DRM_OMAP_CONNECTOR_DVI=m CONFIG_DRM_OMAP_CONNECTOR_HDMI=m @@ -1363,7 +1355,7 @@ CONFIG_DRM_PANEL_SHARP_LQ101R1SX01=m CONFIG_DRM_PANEL_SHARP_LS043T1LE01=m CONFIG_DRM_PANEL_SIMPLE=m CONFIG_DRM_PANEL=y -# CONFIG_DRM_PARADE_PS8622 is not set +CONFIG_DRM_PARADE_PS8622=m CONFIG_DRM_QXL=m # CONFIG_DRM_R128 is not set CONFIG_DRM_RADEON=m @@ -1373,7 +1365,7 @@ CONFIG_DRM_ROCKCHIP=m # CONFIG_DRM_SII902X is not set CONFIG_DRM_SIL_SII8620=m # CONFIG_DRM_SIS is not set -# CONFIG_DRM_STI is not set +CONFIG_DRM_STI=m CONFIG_DRM_SUN4I=m # CONFIG_DRM_TDFX is not set # CONFIG_DRM_TEGRA_DEBUG is not set @@ -1381,6 +1373,7 @@ CONFIG_DRM_TEGRA=m CONFIG_DRM_TEGRA_STAGING=y CONFIG_DRM_TILCDC=m CONFIG_DRM_TILCDC_SLAVE_COMPAT=y +CONFIG_DRM_TINYDRM=m CONFIG_DRM_TI_TFP410=m # CONFIG_DRM_TOSHIBA_TC358767 is not set CONFIG_DRM_UDL=m @@ -1388,8 +1381,6 @@ CONFIG_DRM_VC4=m CONFIG_DRM_VGEM=m CONFIG_DRM_VIA=m CONFIG_DRM_VIRTIO_GPU=m -CONFIG_DRM_VMWGFX_FBCON=y -# CONFIG_DRM_VMWGFX is not set # CONFIG_DS1682 is not set # CONFIG_DS1803 is not set # CONFIG_DT3155 is not set @@ -1477,14 +1468,18 @@ CONFIG_DVB_USB_UMT_010=m CONFIG_DVB_USB_V2=m CONFIG_DVB_USB_VP702X=m CONFIG_DVB_USB_VP7045=m +CONFIG_DVB_USB_ZD1301=m # CONFIG_DW_DMAC_BIG_ENDIAN_IO is not set CONFIG_DW_DMAC_CORE=m CONFIG_DW_DMAC=m CONFIG_DW_DMAC_PCI=m +# CONFIG_DWMAC_DWC_QOS_ETH is not set CONFIG_DWMAC_GENERIC=m -# CONFIG_DWMAC_IPQ806X is not set +CONFIG_DWMAC_IPQ806X=m CONFIG_DWMAC_MESON=m CONFIG_DWMAC_ROCKCHIP=m +CONFIG_DWMAC_STI=m +CONFIG_DWMAC_SUN8I=m CONFIG_DWMAC_SUNXI=m CONFIG_DW_WATCHDOG=m CONFIG_DYNAMIC_DEBUG=y @@ -1510,6 +1505,7 @@ CONFIG_EEPROM_93CX6=m CONFIG_EEPROM_93XX46=m CONFIG_EEPROM_AT24=m CONFIG_EEPROM_AT25=m +CONFIG_EEPROM_IDT_89HPESX=m CONFIG_EEPROM_LEGACY=m CONFIG_EEPROM_MAX6875=m # CONFIG_EFI_ALLOW_SECURE_BOOT_EXIT is not set @@ -1560,6 +1556,7 @@ CONFIG_EXT4_USE_FOR_EXT2=y CONFIG_EXTCON_ADC_JACK=m CONFIG_EXTCON_AXP288=m CONFIG_EXTCON_GPIO=m +CONFIG_EXTCON_INTEL_INT3496=m # CONFIG_EXTCON_MAX3355 is not set CONFIG_EXTCON_MAX8997=m CONFIG_EXTCON_PALMAS=m @@ -1596,7 +1593,6 @@ CONFIG_FAT_DEFAULT_IOCHARSET="ascii" CONFIG_FAT_FS=m # CONFIG_FAULT_INJECTION is not set # CONFIG_FB_3DFX is not set -# CONFIG_FB_ARC is not set # CONFIG_FB_ARK is not set CONFIG_FB_ARMCLCD=y # CONFIG_FB_ASILIANT is not set @@ -1614,19 +1610,12 @@ CONFIG_FB_ATY_BACKLIGHT=y # CONFIG_FB_DA8XX is not set CONFIG_FB_EFI=y # CONFIG_FB_FOREIGN_ENDIAN is not set -# CONFIG_FB_GEODE is not set -# CONFIG_FB_GOLDFISH is not set # CONFIG_FB_HECUBA is not set -# CONFIG_FB_HGA is not set # CONFIG_FB_I740 is not set -CONFIG_FB_I810_GTF=y -CONFIG_FB_I810_I2C=y -CONFIG_FB_I810=m # CONFIG_FB_IBM_GXT4500 is not set # CONFIG_FB_IMSTT is not set # CONFIG_FB_IMX is not set # CONFIG_FB_KYRO is not set -# CONFIG_FB_LE80578 is not set # CONFIG_FB_MATROX_G is not set # CONFIG_FB_MATROX_I2C is not set # CONFIG_FB_MATROX is not set @@ -1673,9 +1662,6 @@ CONFIG_FB_TILEBLITTING=y # CONFIG_FB_UDL is not set # CONFIG_FB_UVESA is not set CONFIG_FB_VESA=y -CONFIG_FB_VGA16=m -# CONFIG_FB_VIA_DIRECT_PROCFS is not set -# CONFIG_FB_VIA is not set CONFIG_FB_VIRTUAL=m # CONFIG_FB_VOODOO1 is not set # CONFIG_FB_VT8623 is not set @@ -1720,6 +1706,7 @@ CONFIG_FSCACHE_OBJECT_LIST=y CONFIG_FSCACHE_STATS=y CONFIG_FS_DAX=y CONFIG_FS_ENCRYPTION=y +CONFIG_FSI=m # CONFIG_FSL_EDMA is not set # CONFIG_FSL_PQ_MDIO is not set # CONFIG_FSL_XGMAC_MDIO is not set @@ -1784,16 +1771,14 @@ CONFIG_GPIO_74X164=m # CONFIG_GPIO_ADNP is not set # CONFIG_GPIO_ADP5588 is not set # CONFIG_GPIO_ALTERA is not set -# CONFIG_GPIO_AMD8111 is not set # CONFIG_GPIO_AMDPT is not set CONFIG_GPIO_AXP209=m # CONFIG_GPIO_BT8XX is not set -# CONFIG_GPIO_CS5535 is not set CONFIG_GPIO_DA9052=m CONFIG_GPIO_DA9055=m CONFIG_GPIO_DEVRES=y CONFIG_GPIO_DWAPB=m -# CONFIG_GPIO_EM is not set +CONFIG_GPIO_EXAR=m CONFIG_GPIO_GENERIC_PLATFORM=y CONFIG_GPIO_GENERIC=y # CONFIG_GPIO_GRGPIO is not set @@ -1804,7 +1789,6 @@ CONFIG_GPIO_MAX7301=m # CONFIG_GPIO_MAX732X is not set CONFIG_GPIO_MC33880=m # CONFIG_GPIO_MCP23S08 is not set -# CONFIG_GPIO_ML_IOH is not set # CONFIG_GPIO_MOCKUP is not set # CONFIG_GPIO_MPC8XXX is not set CONFIG_GPIO_MVEBU=y @@ -1814,15 +1798,15 @@ CONFIG_GPIO_PCA953X_IRQ=y CONFIG_GPIO_PCA953X=y CONFIG_GPIO_PCF857X=m # CONFIG_GPIO_PCH is not set +CONFIG_GPIO_PCI_IDIO_16=m # CONFIG_GPIO_PISOSR is not set CONFIG_GPIO_PL061=y # CONFIG_GPIO_RDC321X is not set # CONFIG_GPIO_SCH311X is not set -# CONFIG_GPIO_SCH is not set CONFIG_GPIO_STMPE=y # CONFIG_GPIO_SX150X is not set CONFIG_GPIO_SYSCON=m -CONFIG_GPIO_SYSFS=y +# CONFIG_GPIO_SYSFS is not set CONFIG_GPIO_TEGRA=y # CONFIG_GPIO_TPIC2810 is not set CONFIG_GPIO_TPS65218=m @@ -1835,20 +1819,18 @@ CONFIG_GPIO_TS4800=m CONFIG_GPIO_TWL4030=m CONFIG_GPIO_TWL6040=m CONFIG_GPIO_VIPERBOARD=m -# CONFIG_GPIO_VX855 is not set CONFIG_GPIO_WATCHDOG=m CONFIG_GPIO_WM8994=m # CONFIG_GPIO_WS16C48 is not set CONFIG_GPIO_XILINX=y # CONFIG_GPIO_ZEVIO is not set -# CONFIG_GPIO_ZX is not set CONFIG_GPIO_ZYNQ=m CONFIG_GREENASIA_FF=y # CONFIG_GREYBUS is not set CONFIG_GS_FPGABOOT=m CONFIG_GTP=m CONFIG_HAMACHI=m -# CONFIG_HAMRADIO is not set +CONFIG_HAMRADIO=y CONFIG_HANGCHECK_TIMER=m CONFIG_HAPPYMEAL=m CONFIG_HARDENED_USERCOPY=y @@ -2040,6 +2022,7 @@ CONFIG_HW_RANDOM_MSM=m CONFIG_HW_RANDOM_MXC_RNGA=m CONFIG_HW_RANDOM_OMAP3_ROM=m CONFIG_HW_RANDOM_OMAP=m +CONFIG_HW_RANDOM_ST=m CONFIG_HW_RANDOM_TIMERIOMEM=m CONFIG_HW_RANDOM_TPM=m CONFIG_HW_RANDOM_VIRTIO=m @@ -2047,6 +2030,7 @@ CONFIG_HW_RANDOM=y CONFIG_HWSPINLOCK=m CONFIG_HWSPINLOCK_OMAP=m CONFIG_HWSPINLOCK_QCOM=m +# CONFIG_HX711 is not set CONFIG_HYSDN_CAPI=y CONFIG_HYSDN=m CONFIG_HZ_1000=y @@ -2120,9 +2104,11 @@ CONFIG_I2C_SIMTEC=m # CONFIG_I2C_SIS96X is not set CONFIG_I2C_SLAVE_EEPROM=m CONFIG_I2C_SLAVE=y +CONFIG_I2C_ST=m CONFIG_I2C_STUB=m CONFIG_I2C_SUN6I_P2WI=m # CONFIG_I2C_TAOS_EVM is not set +CONFIG_I2C_TEGRA_BPMP=m CONFIG_I2C_TEGRA=m CONFIG_I2C_TINY_USB=m CONFIG_I2C_VERSATILE=m @@ -2139,8 +2125,6 @@ CONFIG_I40EVF=m CONFIG_I6300ESB_WDT=m CONFIG_I82092=m # CONFIG_IAQCORE is not set -CONFIG_IB700_WDT=m -CONFIG_IBMASR=m CONFIG_ICPLUS_PHY=m # CONFIG_ICS932S401 is not set # CONFIG_IDE is not set @@ -2167,6 +2151,7 @@ CONFIG_IIO_BUFFER_CB=m CONFIG_IIO_BUFFER=y CONFIG_IIO_CONFIGFS=m CONFIG_IIO_CONSUMERS_PER_TRIGGER=2 +# CONFIG_IIO_CROS_EC_BARO is not set CONFIG_IIO_CROS_EC_SENSORS_CORE=m CONFIG_IIO_CROS_EC_SENSORS_COR=m CONFIG_IIO_CROS_EC_SENSORS=m @@ -2182,6 +2167,7 @@ CONFIG_IIO_ST_ACCEL_SPI_3AXIS=m CONFIG_IIO_ST_GYRO_3AXIS=m CONFIG_IIO_ST_GYRO_I2C_3AXIS=m CONFIG_IIO_ST_GYRO_SPI_3AXIS=m +# CONFIG_IIO_ST_LSM6DSX is not set CONFIG_IIO_ST_MAGN_3AXIS=m CONFIG_IIO_ST_PRESS_I2C=m CONFIG_IIO_ST_PRESS=m @@ -2208,6 +2194,7 @@ CONFIG_IMX_WEIM=y # CONFIG_INA2XX_ADC is not set CONFIG_INET6_AH=m CONFIG_INET6_ESP=m +CONFIG_INET6_ESP_OFFLOAD=m CONFIG_INET6_IPCOMP=m CONFIG_INET6_XFRM_MODE_BEET=m CONFIG_INET6_XFRM_MODE_ROUTEOPTIMIZATION=m @@ -2217,6 +2204,7 @@ CONFIG_INET_AH=m CONFIG_INET_DIAG_DESTROY=y CONFIG_INET_DIAG=m CONFIG_INET_ESP=m +CONFIG_INET_ESP_OFFLOAD=m CONFIG_INET_IPCOMP=m CONFIG_INET_RAW_DIAG=m CONFIG_INET_TUNNEL=m @@ -2225,6 +2213,7 @@ CONFIG_INET_XFRM_MODE_BEET=m CONFIG_INET_XFRM_MODE_TRANSPORT=m CONFIG_INET_XFRM_MODE_TUNNEL=m CONFIG_INET=y +# CONFIG_INFINIBAND_BNXT_RE is not set # CONFIG_INFINIBAND_CXGB3_DEBUG is not set CONFIG_INFINIBAND_CXGB3=m CONFIG_INFINIBAND_CXGB4=m @@ -2330,8 +2319,6 @@ CONFIG_INPUT=y CONFIG_INPUT_YEALINK=m # CONFIG_INTEGRITY is not set # CONFIG_INTEL_IDMA64 is not set -# CONFIG_INTEL_MENLOW is not set -CONFIG_INTEL_RDT_A=y # CONFIG_INTEL_SOC_PMIC is not set # CONFIG_INTEL_TH is not set CONFIG_INTEL_XWAY_PHY=m @@ -2483,6 +2470,7 @@ CONFIG_IP_VS_SH_TAB_BITS=8 CONFIG_IP_VS_TAB_BITS=12 CONFIG_IP_VS_WLC=m CONFIG_IP_VS_WRR=m +CONFIG_IPVTAP=m # CONFIG_IPW2100_DEBUG is not set # CONFIG_IPW2100 is not set # CONFIG_IPW2200_DEBUG is not set @@ -2527,6 +2515,7 @@ CONFIG_IR_SERIAL=m CONFIG_IR_SERIAL_TRANSMITTER=y CONFIG_IR_SHARP_DECODER=m CONFIG_IR_SONY_DECODER=m +CONFIG_IR_SPI=m CONFIG_IR_STREAMZAP=m CONFIG_IR_SUNXI=m CONFIG_IR_TTUSBIR=m @@ -2693,6 +2682,7 @@ CONFIG_KEYBOARD_PXA27x=y CONFIG_KEYBOARD_SAMSUNG=m # CONFIG_KEYBOARD_SH_KEYSC is not set CONFIG_KEYBOARD_SNVS_PWRKEY=m +CONFIG_KEYBOARD_ST_KEYSCAN=m CONFIG_KEYBOARD_STMPE=m # CONFIG_KEYBOARD_STOWAWAY is not set CONFIG_KEYBOARD_SUN4I_LRADC=m @@ -2700,6 +2690,7 @@ CONFIG_KEYBOARD_SUN4I_LRADC=m # CONFIG_KEYBOARD_TCA6416 is not set # CONFIG_KEYBOARD_TCA8418 is not set CONFIG_KEYBOARD_TEGRA=m +CONFIG_KEYBOARD_TM2_TOUCHKEY=m CONFIG_KEYBOARD_TWL4030=m # CONFIG_KEYBOARD_XTKBD is not set CONFIG_KEY_DH_OPERATIONS=y @@ -2712,7 +2703,7 @@ CONFIG_KGDB_TESTS=y CONFIG_KGDB=y CONFIG_KINGSUN_DONGLE=m # CONFIG_KMX61 is not set -CONFIG_KPROBE_EVENT=y +CONFIG_KPROBE_EVENTS=y # CONFIG_KPROBES_SANITY_TEST is not set CONFIG_KPROBES=y CONFIG_KS0108_DELAY=2 @@ -2759,6 +2750,7 @@ CONFIG_LDM_PARTITION=y # CONFIG_LEDS_BCM6358 is not set # CONFIG_LEDS_BD2802 is not set CONFIG_LEDS_BLINKM=m +CONFIG_LEDS_BRIGHTNESS_HW_CHANGED=y CONFIG_LEDS_CLASS_FLASH=m CONFIG_LEDS_CLASS=y CONFIG_LEDS_CLEVO_MAIL=m @@ -2767,7 +2759,6 @@ CONFIG_LEDS_DAC124S085=m CONFIG_LEDS_DELL_NETBOOKS=m CONFIG_LEDS_GPIO=m CONFIG_LEDS_GPIO_REGISTER=y -CONFIG_LEDS_INTEL_SS4200=m # CONFIG_LEDS_IS31FL319X is not set # CONFIG_LEDS_IS31FL32XX is not set # CONFIG_LEDS_KTD2692 is not set @@ -2879,6 +2870,8 @@ CONFIG_LOOPBACK_TARGET=m # CONFIG_LPC_ICH is not set CONFIG_LP_CONSOLE=y # CONFIG_LPC_SCH is not set +CONFIG_LPFC_NVME_INITIATOR=y +CONFIG_LPFC_NVME_TARGET=y CONFIG_LSI_ET1011C_PHY=m CONFIG_LSM_MMAP_MIN_ADDR=32768 # CONFIG_LTC2485 is not set @@ -2913,6 +2906,9 @@ CONFIG_MACH_ARMADA_XP=y CONFIG_MACH_DOVE=y # CONFIG_MACH_FLINT is not set # CONFIG_MACH_MARVELL_JASPER is not set +# CONFIG_MACH_MESON6 is not set +CONFIG_MACH_MESON8B=y +# CONFIG_MACH_MESON8 is not set CONFIG_MACH_MMP2_DT=y # CONFIG_MACH_OMAP3517EVM is not set # CONFIG_MACH_OMAP3_PANDORA is not set @@ -2930,6 +2926,7 @@ CONFIG_MACVLAN=m CONFIG_MACVTAP=m # CONFIG_MAG3110 is not set CONFIG_MAGIC_SYSRQ_DEFAULT_ENABLE=0x0 +CONFIG_MAGIC_SYSRQ_SERIAL=y CONFIG_MAGIC_SYSRQ=y # CONFIG_MAILBOX_TEST is not set CONFIG_MAILBOX=y @@ -2937,10 +2934,12 @@ CONFIG_MAILBOX=y CONFIG_MANTIS_CORE=m CONFIG_MARVELL_PHY=m # CONFIG_MAX1027 is not set +# CONFIG_MAX11100 is not set # CONFIG_MAX1363 is not set CONFIG_MAX30100=m # CONFIG_MAX44000 is not set # CONFIG_MAX517 is not set +# CONFIG_MAX5481 is not set # CONFIG_MAX5487 is not set # CONFIG_MAX5821 is not set # CONFIG_MAX63XX_WATCHDOG is not set @@ -3020,6 +3019,7 @@ CONFIG_MEMSTICK_TIFM_MS=m CONFIG_MESON_EFUSE=m # CONFIG_MESON_GXBB_WATCHDOG is not set # CONFIG_MESON_GXL_PHY is not set +CONFIG_MESON_SARADC=m CONFIG_MESON_SM=y CONFIG_MESON_WATCHDOG=m CONFIG_MESSAGE_LOGLEVEL_DEFAULT=4 @@ -3042,6 +3042,7 @@ CONFIG_MFD_AXP20X_RSB=m CONFIG_MFD_AXP20X=y # CONFIG_MFD_BCM590XX is not set CONFIG_MFD_CORE=y +CONFIG_MFD_CPCAP=m CONFIG_MFD_CROS_EC_I2C=m CONFIG_MFD_CROS_EC=m CONFIG_MFD_CROS_EC_SPI=m @@ -3176,6 +3177,7 @@ CONFIG_MMA7660=m # CONFIG_MMA9553 is not set # CONFIG_MMC35240 is not set CONFIG_MMC_ARMMMCI=m +CONFIG_MMC_BCM2835=m CONFIG_MMC_BLOCK_BOUNCE=y CONFIG_MMC_BLOCK=m CONFIG_MMC_BLOCK_MINORS=8 @@ -3216,6 +3218,7 @@ CONFIG_MMC_SDHCI_PXAV2=m CONFIG_MMC_SDHCI_PXAV3=m CONFIG_MMC_SDHCI_S3C_DMA=y CONFIG_MMC_SDHCI_S3C=m +CONFIG_MMC_SDHCI_ST=m CONFIG_MMC_SDHCI_TEGRA=m CONFIG_MMC_SDRICOH_CS=m CONFIG_MMC_SPI=m @@ -3258,7 +3261,6 @@ CONFIG_MOUSE_ELAN_I2C_SMBUS=y CONFIG_MOUSE_PS2_ELANTECH=y CONFIG_MOUSE_PS2_SENTELIC=y # CONFIG_MOUSE_PS2_TOUCHKIT is not set -# CONFIG_MOUSE_PS2_VMMOUSE is not set CONFIG_MOUSE_PS2=y CONFIG_MOUSE_SERIAL=m CONFIG_MOUSE_SYNAPTICS_I2C=m @@ -3274,6 +3276,7 @@ CONFIG_MPL3115=m CONFIG_MPLS_IPTUNNEL=m CONFIG_MPLS_ROUTING=m # CONFIG_MPU3050_I2C is not set +CONFIG_MQ_IOSCHED_DEADLINE=y # CONFIG_MS5611 is not set # CONFIG_MS5637 is not set # CONFIG_MS_BLOCK is not set @@ -3363,6 +3366,7 @@ CONFIG_MTD_ONENAND_OMAP2=m # CONFIG_MTD_PHRAM is not set # CONFIG_MTD_PHYSMAP_COMPAT is not set CONFIG_MTD_PHYSMAP=m +# CONFIG_MTD_PHYSMAP_OF_GEMINI is not set CONFIG_MTD_PHYSMAP_OF=m CONFIG_MTD_PHYSMAP_OF_VERSATILE=y # CONFIG_MTD_PLATRAM is not set @@ -3442,6 +3446,7 @@ CONFIG_NET_ACT_MIRRED=m CONFIG_NET_ACT_NAT=m CONFIG_NET_ACT_PEDIT=m CONFIG_NET_ACT_POLICE=m +CONFIG_NET_ACT_SAMPLE=m CONFIG_NET_ACT_SIMP=m CONFIG_NET_ACT_SKBEDIT=m CONFIG_NET_ACT_SKBMOD=m @@ -3575,6 +3580,7 @@ CONFIG_NETFILTER_XT_TARGET_TRACE=m CONFIG_NETFILTER=y CONFIG_NET_FOU_IP_TUNNELS=y CONFIG_NET_FOU=m +CONFIG_NET_IFE=m CONFIG_NET_IFE_SKBMARK=m CONFIG_NET_IFE_SKBPRIO=m CONFIG_NET_IFE_SKBTCINDEX=m @@ -3585,7 +3591,7 @@ CONFIG_NET_IPIP=m CONFIG_NET_IPVTI=m CONFIG_NET_KEY=m CONFIG_NET_KEY_MIGRATE=y -# CONFIG_NET_L3_MASTER_DEV is not set +CONFIG_NET_L3_MASTER_DEV=y CONFIG_NETLABEL=y CONFIG_NETLINK_DIAG=m CONFIG_NET_MPLS_GSO=m @@ -3638,8 +3644,9 @@ CONFIG_NET_VENDOR_AGERE=y # CONFIG_NET_VENDOR_ALACRITECH is not set CONFIG_NET_VENDOR_ALLWINNER=y CONFIG_NET_VENDOR_ALTEON=y -# CONFIG_NET_VENDOR_AMAZON is not set +CONFIG_NET_VENDOR_AMAZON=y CONFIG_NET_VENDOR_AMD=y +# CONFIG_NET_VENDOR_AQUANTIA is not set CONFIG_NET_VENDOR_ARC=y CONFIG_NET_VENDOR_ATHEROS=y # CONFIG_NET_VENDOR_AURORA is not set @@ -3766,6 +3773,8 @@ CONFIG_NF_LOG_IPV6=m CONFIG_NF_LOG_NETDEV=m CONFIG_NF_NAT=m CONFIG_NF_NAT_SNMP_BASIC=m +# CONFIG_NFP_DEBUG is not set +CONFIG_NFP=m # CONFIG_NFP_NET_DEBUG is not set CONFIG_NFP_NETVF=m CONFIG_NF_REJECT_IPV6=m @@ -3837,6 +3846,7 @@ CONFIG_NFT_REDIR=m CONFIG_NFT_REJECT_IPV4=m CONFIG_NFT_REJECT=m CONFIG_NFT_RT=m +CONFIG_NFT_SET_BITMAP=m CONFIG_NFT_SET_HASH=m CONFIG_NFT_SET_RBTREE=m CONFIG_N_GSM=m @@ -3979,7 +3989,6 @@ CONFIG_OMAP_INTERCONNECT=y # CONFIG_OMAP_IOMMU_DEBUG is not set CONFIG_OMAP_IOMMU=y CONFIG_OMAP_MBOX_KFIFO_SIZE=256 -# CONFIG_OMAP_MUX_DEBUG is not set CONFIG_OMAP_MUX_WARNINGS=y CONFIG_OMAP_MUX=y CONFIG_OMAP_OCP2SCP=m @@ -4023,6 +4032,7 @@ CONFIG_PANTHERLORD_FF=y CONFIG_PARAVIRT_TIME_ACCOUNTING=y CONFIG_PARAVIRT=y # CONFIG_PARIDE is not set +CONFIG_PARMAN=m CONFIG_PARPORT_1284=y # CONFIG_PARPORT_AX88796 is not set # CONFIG_PARPORT is not set @@ -4083,6 +4093,7 @@ CONFIG_PATA_TOSHIBA=m CONFIG_PATA_TRIFLEX=m CONFIG_PATA_VIA=m CONFIG_PATA_WINBOND=m +# CONFIG_PC104 is not set # CONFIG_PC87413_WDT is not set CONFIG_PCCARD=y CONFIG_PCF50633_ADC=m @@ -4153,14 +4164,19 @@ CONFIG_PHY_EXYNOS5250_SATA=m CONFIG_PHY_EXYNOS5_USBDRD=m CONFIG_PHY_EXYNOS_DP_VIDEO=m CONFIG_PHY_EXYNOS_MIPI_VIDEO=m +CONFIG_PHY_EXYNOS_PCIE=y CONFIG_PHYLIB=y CONFIG_PHY_MESON8B_USB2=m +CONFIG_PHY_MIPHY28LP=m +# CONFIG_PHY_MIPHY365X is not set CONFIG_PHY_MVEBU_SATA=y # CONFIG_PHY_PXA_28NM_HSIC is not set # CONFIG_PHY_PXA_28NM_USB2 is not set CONFIG_PHY_QCOM_APQ8064_SATA=m # CONFIG_PHY_QCOM_IPQ806X_SATA is not set CONFIG_PHY_QCOM_UFS=m +CONFIG_PHY_QCOM_USB_HSIC=m +CONFIG_PHY_QCOM_USB_HS=m CONFIG_PHY_ROCKCHIP_DP=m CONFIG_PHY_ROCKCHIP_EMMC=m CONFIG_PHY_ROCKCHIP_INNO_USB2=m @@ -4168,6 +4184,8 @@ CONFIG_PHY_ROCKCHIP_PCIE=m CONFIG_PHY_ROCKCHIP_TYPEC=m CONFIG_PHY_ROCKCHIP_USB=m CONFIG_PHY_SAMSUNG_USB2=m +CONFIG_PHY_STIH407_USB=m +# CONFIG_PHY_STIH41X_USB is not set # CONFIG_PHY_ST_SPEAR1310_MIPHY is not set # CONFIG_PHY_ST_SPEAR1340_MIPHY is not set CONFIG_PHY_SUN4I_USB=m @@ -4188,6 +4206,7 @@ CONFIG_PINCTRL_AS3722=y # CONFIG_PINCTRL_BROXTON is not set # CONFIG_PINCTRL_CHERRYVIEW is not set CONFIG_PINCTRL_DOVE=y +# CONFIG_PINCTRL_GEMINILAKE is not set # CONFIG_PINCTRL_IMX35 is not set CONFIG_PINCTRL_IMX6SL=y # CONFIG_PINCTRL_IPQ4019 is not set @@ -4207,6 +4226,7 @@ CONFIG_PINCTRL_SAMSUNG=y CONFIG_PINCTRL_SINGLE=y # CONFIG_PINCTRL_SUNRISEPOINT is not set # CONFIG_PINCTRL_SX150X is not set +# CONFIG_PINCTRL_TI_IODELAY is not set CONFIG_PINCTRL=y CONFIG_PINCTRL_ZYNQ=y CONFIG_PINMUX=y @@ -4257,6 +4277,7 @@ CONFIG_POWER_RESET_IMX=y CONFIG_POWER_RESET_MSM=y # CONFIG_POWER_RESET_QNAP is not set CONFIG_POWER_RESET_RESTART=y +CONFIG_POWER_RESET_ST=y CONFIG_POWER_RESET_SYSCON_POWEROFF=y CONFIG_POWER_RESET_SYSCON=y CONFIG_POWER_RESET_VERSATILE=y @@ -4290,6 +4311,7 @@ CONFIG_PPTP=m CONFIG_PREEMPT_VOLUNTARY=y CONFIG_PREVENT_FIRMWARE_BUILD=y CONFIG_PRINTER=m +CONFIG_PRINTK_SAFE_LOG_BUF_SHIFT=12 CONFIG_PRINTK_TIME=y # CONFIG_PRINT_QUOTA_WARNING is not set # CONFIG_PRISM2_USB is not set @@ -4303,6 +4325,7 @@ CONFIG_PROC_VMCORE=y CONFIG_PROFILING=y # CONFIG_PROVE_LOCKING is not set # CONFIG_PROVE_RCU_REPEATEDLY is not set +CONFIG_PSAMPLE=m # CONFIG_PSTORE_CONSOLE is not set # CONFIG_PSTORE_FTRACE is not set # CONFIG_PSTORE_PMSG is not set @@ -4320,6 +4343,7 @@ CONFIG_PWM_OMAP_DMTIMER=m # CONFIG_PWM_PCA9685 is not set CONFIG_PWM_ROCKCHIP=m CONFIG_PWM_SAMSUNG=m +CONFIG_PWM_STI=m # CONFIG_PWM_STMPE is not set CONFIG_PWM_SUN4I=m CONFIG_PWM_SYSFS=y @@ -4331,6 +4355,7 @@ CONFIG_PWM_TWL_LED=m CONFIG_PWM_TWL=m CONFIG_PWM=y CONFIG_PWRSEQ_EMMC=m +# CONFIG_PWRSEQ_SD8787 is not set CONFIG_PWRSEQ_SIMPLE=m CONFIG_PXA_DMA=y # CONFIG_QCA7000 is not set @@ -4344,6 +4369,7 @@ CONFIG_QCOM_COINCELL=m CONFIG_QCOM_GSBI=m # CONFIG_QCOM_HIDMA is not set # CONFIG_QCOM_HIDMA_MGMT is not set +CONFIG_QCOM_IRQ_COMBINER=y CONFIG_QCOM_PM=y # CONFIG_QCOM_Q6V5_PIL is not set CONFIG_QCOM_QFPROM=m @@ -4360,6 +4386,7 @@ CONFIG_QCOM_WCNSS_CTRL=m # CONFIG_QCOM_WCNSS_PIL is not set CONFIG_QCOM_WDT=m CONFIG_QEDE=m +CONFIG_QEDF=m CONFIG_QEDI=m CONFIG_QED=m CONFIG_QED_SRIOV=y @@ -4422,6 +4449,7 @@ CONFIG_RC_DECODERS=y CONFIG_RC_DEVICES=y CONFIG_RC_LOOPBACK=m CONFIG_RC_MAP=m +CONFIG_RC_ST=m CONFIG_RCU_CPU_STALL_TIMEOUT=60 # CONFIG_RCU_EQS_DEBUG is not set # CONFIG_RCU_EXPERT is not set @@ -4464,6 +4492,7 @@ CONFIG_REGULATOR_AD5398=m CONFIG_REGULATOR_ANATOP=m CONFIG_REGULATOR_AS3722=m CONFIG_REGULATOR_AXP20X=m +CONFIG_REGULATOR_CPCAP=m CONFIG_REGULATOR_DA9052=m CONFIG_REGULATOR_DA9055=m CONFIG_REGULATOR_DA9210=m @@ -4498,7 +4527,7 @@ CONFIG_REGULATOR_PFUZE100=m CONFIG_REGULATOR_PV88060=m # CONFIG_REGULATOR_PV88080 is not set CONFIG_REGULATOR_PV88090=m -CONFIG_REGULATOR_PWM=m +CONFIG_REGULATOR_PWM=y CONFIG_REGULATOR_QCOM_RPM=m CONFIG_REGULATOR_QCOM_SMD_RPM=m CONFIG_REGULATOR_QCOM_SPMI=m @@ -4540,7 +4569,6 @@ CONFIG_RESET_GPIO=y CONFIG_RFKILL_GPIO=m CONFIG_RFKILL_INPUT=y CONFIG_RFKILL=m -CONFIG_RFKILL_REGULATOR=m CONFIG_RING_BUFFER_BENCHMARK=m # CONFIG_RING_BUFFER_STARTUP_TEST is not set # CONFIG_RIO is not set @@ -4556,6 +4584,7 @@ CONFIG_RMI4_I2C=m CONFIG_RMI4_SMB=m CONFIG_RMI4_SPI=m CONFIG_ROCKCHIP_ANALOGIX_DP=m +# CONFIG_ROCKCHIP_CDN_DP is not set CONFIG_ROCKCHIP_DW_HDMI=m CONFIG_ROCKCHIP_DW_MIPI_DSI=m CONFIG_ROCKCHIP_EFUSE=m @@ -4571,6 +4600,7 @@ CONFIG_ROCKETPORT=m CONFIG_ROMFS_FS=m CONFIG_ROSE=m CONFIG_RPCSEC_GSS_KRB5=m +# CONFIG_RPMSG_CHAR is not set CONFIG_RPR0521=m CONFIG_RSI_91X=m CONFIG_RSI_DEBUGFS=y @@ -4657,7 +4687,7 @@ CONFIG_RTC_DRV_MC13XXX=m CONFIG_RTC_DRV_MSM6242=m CONFIG_RTC_DRV_MV=m CONFIG_RTC_DRV_MXC=m -CONFIG_RTC_DRV_OMAP=y +CONFIG_RTC_DRV_OMAP=m CONFIG_RTC_DRV_PALMAS=m CONFIG_RTC_DRV_PCF2123=m CONFIG_RTC_DRV_PCF2127=m @@ -4689,6 +4719,7 @@ CONFIG_RTC_DRV_S5M=m # CONFIG_RTC_DRV_SA1100 is not set CONFIG_RTC_DRV_SNVS=m CONFIG_RTC_DRV_STK17TA8=m +CONFIG_RTC_DRV_ST_LPC=m CONFIG_RTC_DRV_SUN6I=y CONFIG_RTC_DRV_SUNXI=m CONFIG_RTC_DRV_TEGRA=m @@ -5040,6 +5071,7 @@ CONFIG_SENSORS_SIS5595=m CONFIG_SENSORS_SMSC47B397=m CONFIG_SENSORS_SMSC47M192=m CONFIG_SENSORS_SMSC47M1=m +# CONFIG_SENSORS_STTS751 is not set CONFIG_SENSORS_TC654=m CONFIG_SENSORS_TC74=m CONFIG_SENSORS_THMC50=m @@ -5079,6 +5111,7 @@ CONFIG_SERIAL_8250_CS=m # CONFIG_SERIAL_8250_DETECT_IRQ is not set CONFIG_SERIAL_8250_DW=y # CONFIG_SERIAL_8250_EM is not set +CONFIG_SERIAL_8250_EXAR=m CONFIG_SERIAL_8250_EXTENDED=y # CONFIG_SERIAL_8250_FINTEK is not set # CONFIG_SERIAL_8250_INGENIC is not set @@ -5087,6 +5120,7 @@ CONFIG_SERIAL_8250_MANY_PORTS=y CONFIG_SERIAL_8250_MOXA=m CONFIG_SERIAL_8250_NR_UARTS=32 CONFIG_SERIAL_8250_OMAP=m +CONFIG_SERIAL_8250_PCI=m CONFIG_SERIAL_8250_RSA=y CONFIG_SERIAL_8250_RT288X=y CONFIG_SERIAL_8250_RUNTIME_UARTS=32 @@ -5104,6 +5138,8 @@ CONFIG_SERIAL_ARC_NR_PORTS=1 # CONFIG_SERIAL_CONEXANT_DIGICOLOR is not set CONFIG_SERIAL_CORE_CONSOLE=y CONFIG_SERIAL_CORE=y +CONFIG_SERIAL_DEV_BUS=y +CONFIG_SERIAL_DEV_CTRL_TTYPORT=y CONFIG_SERIAL_EARLYCON_ARM_SEMIHOST=y # CONFIG_SERIAL_FSL_LPUART is not set # CONFIG_SERIAL_IFX6X60 is not set @@ -5120,7 +5156,7 @@ CONFIG_SERIAL_MSM_CONSOLE=y CONFIG_SERIAL_MSM=y CONFIG_SERIAL_MVEBU_CONSOLE=y CONFIG_SERIAL_MVEBU_UART=y -CONFIG_SERIAL_NONSTANDARD=y +# CONFIG_SERIAL_NONSTANDARD is not set CONFIG_SERIAL_OF_PLATFORM=y CONFIG_SERIAL_OMAP_CONSOLE=y CONFIG_SERIAL_OMAP=y @@ -5133,7 +5169,8 @@ CONFIG_SERIAL_SAMSUNG_CONSOLE=y CONFIG_SERIAL_SAMSUNG=y # CONFIG_SERIAL_SC16IS7XX is not set # CONFIG_SERIAL_SCCNXP is not set -# CONFIG_SERIAL_ST_ASC is not set +CONFIG_SERIAL_ST_ASC_CONSOLE=y +CONFIG_SERIAL_ST_ASC=y CONFIG_SERIAL_TEGRA=y # CONFIG_SERIAL_TIMBERDALE is not set CONFIG_SERIAL_UARTLITE_CONSOLE=y @@ -5190,6 +5227,7 @@ CONFIG_SMARTJOYPLUS_FF=y CONFIG_SMC911X=m CONFIG_SMC91X=m CONFIG_SMC_IRCC_FIR=m +# CONFIG_SMC is not set # CONFIG_SM_FTL is not set CONFIG_SMP_ON_UP=y CONFIG_SMP=y @@ -5361,7 +5399,7 @@ CONFIG_SND_SEQUENCER=m CONFIG_SND_SEQUENCER_OSS=y CONFIG_SND_SERIAL_U16550=m CONFIG_SND_SIMPLE_CARD=m -# CONFIG_SND_SIMPLE_SCU_CARD is not set +CONFIG_SND_SIMPLE_SCU_CARD=m CONFIG_SND_SIS7019=m CONFIG_SND_SOC_AC97_BUS=y CONFIG_SND_SOC_AC97_CODEC=m @@ -5432,6 +5470,7 @@ CONFIG_SND_SOC=m # CONFIG_SND_SOC_MAX9860 is not set # CONFIG_SND_SOC_MSM8916_WCD_ANALOG is not set # CONFIG_SND_SOC_MSM8916_WCD_DIGITAL is not set +# CONFIG_SND_SOC_NAU8540 is not set # CONFIG_SND_SOC_NAU8810 is not set # CONFIG_SND_SOC_PCM1681 is not set # CONFIG_SND_SOC_PCM179X_I2C is not set @@ -5443,7 +5482,8 @@ CONFIG_SND_SOC_PCM512x_I2C=m CONFIG_SND_SOC_PCM512x=m CONFIG_SND_SOC_PCM512x_SPI=m CONFIG_SND_SOC_QCOM=m -# CONFIG_SND_SOC_RK3399_GRU_SOUND is not set +CONFIG_SND_SOC_RK3288_HDMI_ANALOG=m +CONFIG_SND_SOC_RK3399_GRU_SOUND=m CONFIG_SND_SOC_ROCKCHIP_I2S=m CONFIG_SND_SOC_ROCKCHIP=m CONFIG_SND_SOC_ROCKCHIP_MAX98090=m @@ -5464,7 +5504,8 @@ CONFIG_SND_SOC_SPDIF=m # CONFIG_SND_SOC_SSM4567 is not set # CONFIG_SND_SOC_STA32X is not set # CONFIG_SND_SOC_STA350 is not set -# CONFIG_SND_SOC_STI_SAS is not set +CONFIG_SND_SOC_STI=m +CONFIG_SND_SOC_STI_SAS=m CONFIG_SND_SOC_STORM=m # CONFIG_SND_SOC_TAS2552 is not set # CONFIG_SND_SOC_TAS5086 is not set @@ -5480,9 +5521,9 @@ CONFIG_SND_SOC_TEGRA=m CONFIG_SND_SOC_TEGRA_MAX98090=m CONFIG_SND_SOC_TEGRA_RT5640=m CONFIG_SND_SOC_TEGRA_RT5677=m -# CONFIG_SND_SOC_TEGRA_SGTL5000 is not set +CONFIG_SND_SOC_TEGRA_SGTL5000=m CONFIG_SND_SOC_TEGRA_TRIMSLICE=m -CONFIG_SND_SOC_TEGRA_WM8753=m +# CONFIG_SND_SOC_TEGRA_WM8753 is not set CONFIG_SND_SOC_TEGRA_WM8903=m CONFIG_SND_SOC_TEGRA_WM9712=m # CONFIG_SND_SOC_TFA9879 is not set @@ -5523,6 +5564,7 @@ CONFIG_SND_SUN4I_CODEC=m CONFIG_SND_SUN4I_I2S=m CONFIG_SND_SUN4I_SPDIF=m CONFIG_SND_SUN8I_CODEC_ANALOG=m +CONFIG_SND_SUN8I_CODEC=m # CONFIG_SND_SUPPORT_OLD_API is not set CONFIG_SND_TRIDENT=m CONFIG_SND_USB_6FIRE=m @@ -5574,9 +5616,13 @@ CONFIG_SOC_IMX7D=y # CONFIG_SOC_LS1021A is not set CONFIG_SOC_OMAP3430=y CONFIG_SOC_OMAP5=y +CONFIG_SOC_STIH407=y +# CONFIG_SOC_STIH415 is not set +# CONFIG_SOC_STIH416 is not set CONFIG_SOC_TI81XX=y # CONFIG_SOC_TI is not set # CONFIG_SOC_VF610 is not set +# CONFIG_SOC_ZTE is not set CONFIG_SOFT_WATCHDOG=m CONFIG_SOLARIS_X86_PARTITION=y # CONFIG_SOLO6X10 is not set @@ -5623,6 +5669,7 @@ CONFIG_SPI_ROCKCHIP=m CONFIG_SPI_S3C64XX=m # CONFIG_SPI_SC18IS602 is not set CONFIG_SPI_SPIDEV=m +CONFIG_SPI_ST_SSC4=m CONFIG_SPI_SUN4I=m CONFIG_SPI_SUN6I=m CONFIG_SPI_TEGRA114=m @@ -5646,6 +5693,7 @@ CONFIG_SQUASHFS_XATTR=y CONFIG_SQUASHFS_XZ=y CONFIG_SQUASHFS_ZLIB=y CONFIG_SRAM=y +# CONFIG_SRF08 is not set # CONFIG_SSB_DEBUG is not set CONFIG_SSB_DRIVER_GPIO=y CONFIG_SSB_DRIVER_PCICORE=y @@ -5663,11 +5711,15 @@ CONFIG_STAGING_MEDIA=y CONFIG_STAGING=y CONFIG_STANDALONE=y # CONFIG_STATIC_KEYS_SELFTEST is not set +# CONFIG_STATIC_USERMODEHELPER is not set CONFIG_STE10XP=m # CONFIG_STE_MODEM_RPROC is not set +CONFIG_ST_FDMA=m +CONFIG_STI_MBOX=m CONFIG_STK3310=m # CONFIG_STK8312 is not set # CONFIG_STK8BA50 is not set +CONFIG_ST_LPC_WATCHDOG=m # CONFIG_STM_DUMMY is not set # CONFIG_STM is not set CONFIG_STMMAC_ETH=m @@ -5676,16 +5728,24 @@ CONFIG_STMMAC_PLATFORM=m CONFIG_STMPE_I2C=y CONFIG_STMPE_SPI=y # CONFIG_STM_SOURCE_CONSOLE is not set +CONFIG_ST_REMOTEPROC=m CONFIG_STRICT_DEVMEM=y +CONFIG_STRICT_KERNEL_RWX=y +CONFIG_STRICT_MODULE_RWX=y CONFIG_STRIP_ASM_SYMS=y # CONFIG_STRIP is not set +CONFIG_ST_THERMAL=m +CONFIG_ST_THERMAL_MEMMAP=m +# CONFIG_ST_THERMAL_SYSCFG is not set CONFIG_SUN4I_EMAC=m # CONFIG_SUN50I_A64_CCU is not set -# CONFIG_SUN6I_A31_CCU is not set -# CONFIG_SUN8I_A23_CCU is not set -# CONFIG_SUN8I_A33_CCU is not set -CONFIG_SUN8I_EMAC=m +CONFIG_SUN5I_CCU=y +CONFIG_SUN6I_A31_CCU=y +CONFIG_SUN8I_A23_CCU=y +CONFIG_SUN8I_A33_CCU=y CONFIG_SUN8I_H3_CCU=y +CONFIG_SUN8I_V3S_CCU=y +CONFIG_SUN9I_A80_CCU=y CONFIG_SUNDANCE=m # CONFIG_SUNDANCE_MMIO is not set # CONFIG_SUNGEM is not set @@ -5713,7 +5773,7 @@ CONFIG_SYNCLINK=m CONFIG_SYNCLINKMP=m CONFIG_SYN_COOKIES=y # CONFIG_SYNOPSYS_DWC_ETH_QOS is not set -# CONFIG_SYSCON_REBOOT_MODE is not set +CONFIG_SYSCON_REBOOT_MODE=y CONFIG_SYSCTL=y # CONFIG_SYSFS_DEPRECATED is not set # CONFIG_SYSFS_DEPRECATED_V2 is not set @@ -5808,9 +5868,11 @@ CONFIG_TEST_ASYNC_DRIVER_PROBE=m CONFIG_TEST_KSTRTOX=y # CONFIG_TEST_LIST_SORT is not set # CONFIG_TEST_LKM is not set +# CONFIG_TEST_PARMAN is not set # CONFIG_TEST_POWER is not set # CONFIG_TEST_PRINTF is not set # CONFIG_TEST_RHASHTABLE is not set +# CONFIG_TEST_SORT is not set # CONFIG_TEST_STATIC_KEYS is not set # CONFIG_TEST_STRING_HELPERS is not set # CONFIG_TEST_UDELAY is not set @@ -5837,13 +5899,15 @@ CONFIG_TI_ADC081C=m # CONFIG_TI_ADC128S052 is not set # CONFIG_TI_ADC161S626 is not set # CONFIG_TI_ADS1015 is not set +# CONFIG_TI_ADS7950 is not set # CONFIG_TI_ADS8688 is not set CONFIG_TI_AM335X_ADC=m CONFIG_TI_CPPI41=m CONFIG_TI_CPSW_ALE=m CONFIG_TI_CPSW=m CONFIG_TI_CPSW_PHY_SEL=y -CONFIG_TI_CPTS=m +CONFIG_TI_CPTS_MOD=m +CONFIG_TI_CPTS=y CONFIG_TI_DAC7512=m CONFIG_TI_DAVINCI_CPDMA=m CONFIG_TI_DAVINCI_EMAC=m @@ -5855,6 +5919,8 @@ CONFIG_TIFM_CORE=m CONFIG_TIGON3=m # CONFIG_TIMB_DMA is not set # CONFIG_TIMER_STATS is not set +CONFIG_TINYDRM_MI0283QT=m +CONFIG_TINYDRM_MIPI_DBI=m CONFIG_TIPC=m # CONFIG_TIPC_MEDIA_IB is not set CONFIG_TIPC_MEDIA_UDP=y @@ -5864,9 +5930,11 @@ CONFIG_TI_SOC_THERMAL=m CONFIG_TI_ST=m CONFIG_TI_SYSCON_RESET=m CONFIG_TI_THERMAL=y +# CONFIG_TI_TLC4541 is not set # CONFIG_TLAN is not set # CONFIG_TMD_HERMES is not set CONFIG_TMP006=m +# CONFIG_TMP007 is not set CONFIG_TMPFS_POSIX_ACL=y CONFIG_TMPFS_XATTR=y CONFIG_TMPFS=y @@ -5939,6 +6007,7 @@ CONFIG_TOUCHSCREEN_WACOM_I2C=m CONFIG_TOUCHSCREEN_WACOM_W8001=m # CONFIG_TOUCHSCREEN_WDT87XX_I2C is not set # CONFIG_TOUCHSCREEN_WM97XX is not set +CONFIG_TOUCHSCREEN_ZET6223=m CONFIG_TOUCHSCREEN_ZFORCE=m # CONFIG_TPL0102 is not set # CONFIG_TPS6105X is not set @@ -6015,7 +6084,7 @@ CONFIG_UNIX_DIAG=m CONFIG_UNIXWARE_DISKLABEL=y CONFIG_UNIX=y CONFIG_UNUSED_SYMBOLS=y -CONFIG_UPROBE_EVENT=y +CONFIG_UPROBE_EVENTS=y # CONFIG_US5182D is not set CONFIG_USB_ACM=m CONFIG_USB_ADUTUX=m @@ -6036,6 +6105,7 @@ CONFIG_USB_CHAOSKEY=m CONFIG_USB_CHIPIDEA_HOST=y CONFIG_USB_CHIPIDEA=m CONFIG_USB_CHIPIDEA_UDC=y +# CONFIG_USB_CHIPIDEA_ULPI is not set CONFIG_USB_CONFIGFS_ACM=y CONFIG_USB_CONFIGFS_ECM_SUBSET=y CONFIG_USB_CONFIGFS_ECM=y @@ -6073,6 +6143,7 @@ CONFIG_USB_DWC3=m CONFIG_USB_DWC3_OF_SIMPLE=m CONFIG_USB_DWC3_OMAP=m CONFIG_USB_DWC3_PCI=m +CONFIG_USB_DWC3_ST=m CONFIG_USB_DWC3_ULPI=y # CONFIG_USB_DYNAMIC_MINORS is not set # CONFIG_USB_EG20T is not set @@ -6080,6 +6151,7 @@ CONFIG_USB_EHCI_EXYNOS=m CONFIG_USB_EHCI_HCD_OMAP=m CONFIG_USB_EHCI_HCD_ORION=m CONFIG_USB_EHCI_HCD_PLATFORM=m +CONFIG_USB_EHCI_HCD_STI=m CONFIG_USB_EHCI_HCD=y CONFIG_USB_EHCI_MSM=m # CONFIG_USB_EHCI_MV is not set @@ -6166,6 +6238,7 @@ CONFIG_USB_HID=y CONFIG_USB_HSIC_USB3503=m CONFIG_USB_HSIC_USB4604=m CONFIG_USB_HSO=m +CONFIG_USB_HUB_USB251XB=m CONFIG_USB_HWA_HCD=m CONFIG_USB_IDMOUSE=m CONFIG_USB_IMX21_HCD=m @@ -6248,6 +6321,7 @@ CONFIG_USB_OHCI_HCD_OMAP3=m CONFIG_USB_OHCI_HCD_PCI=y CONFIG_USB_OHCI_HCD_PLATFORM=m # CONFIG_USB_OHCI_HCD_SSB is not set +CONFIG_USB_OHCI_HCD_STI=m CONFIG_USB_OHCI_HCD=y # CONFIG_USB_OTG_BLACKLIST_HUB is not set # CONFIG_USB_OTG_FSM is not set @@ -6332,6 +6406,7 @@ CONFIG_USB_SERIAL_SPCP8X5=m CONFIG_USB_SERIAL_SSU100=m CONFIG_USB_SERIAL_SYMBOL=m CONFIG_USB_SERIAL_TI=m +CONFIG_USB_SERIAL_UPD78F0730=m CONFIG_USB_SERIAL_VISOR=m CONFIG_USB_SERIAL_WHITEHEAT=m # CONFIG_USB_SERIAL_WISHBONE is not set @@ -6435,6 +6510,7 @@ CONFIG_VFPv3=y CONFIG_VFP=y CONFIG_VGA_ARB_MAX_GPUS=16 CONFIG_VGA_ARB=y +# CONFIG_VGACON_SOFT_SCROLLBACK_PERSISTENT_ENABLE_BY_DEFAULT is not set CONFIG_VGACON_SOFT_SCROLLBACK_SIZE=64 CONFIG_VGACON_SOFT_SCROLLBACK=y CONFIG_VGA_CONSOLE=y @@ -6492,7 +6568,9 @@ CONFIG_VIDEO_GO7007_USB_S2250_BOARD=m CONFIG_VIDEO_HDPVR=m CONFIG_VIDEO_HEXIUM_GEMINI=m CONFIG_VIDEO_HEXIUM_ORION=m +CONFIG_VIDEO_IMX_VDOA=m # CONFIG_VIDEO_IVTV_ALSA is not set +# CONFIG_VIDEO_IVTV_DEPRECATED_IOCTLS is not set CONFIG_VIDEO_IVTV=m # CONFIG_VIDEO_M5MOLS is not set # CONFIG_VIDEO_MEM2MEM_DEINTERLACE is not set @@ -6532,6 +6610,13 @@ CONFIG_VIDEO_SAMSUNG_S5P_MFC=m # CONFIG_VIDEO_SH_VEU is not set CONFIG_VIDEO_SOLO6X10=m CONFIG_VIDEO_SR030PC30=m +CONFIG_VIDEO_STI_BDISP=m +CONFIG_VIDEO_STI_DELTA_DRIVER=m +CONFIG_VIDEO_STI_DELTA=m +CONFIG_VIDEO_STI_DELTA_MJPEG=y +CONFIG_VIDEO_STI_HDMI_CEC=m +# CONFIG_VIDEO_STI_HVA_DEBUGFS is not set +CONFIG_VIDEO_STI_HVA=m CONFIG_VIDEO_STK1160_AC97=y CONFIG_VIDEO_STK1160_COMMON=m CONFIG_VIDEO_STK1160=m @@ -6562,6 +6647,7 @@ CONFIG_VIDEO_ZORAN_ZR36060=m # CONFIG_VIRT_DRIVERS is not set CONFIG_VIRTIO_BALLOON=m CONFIG_VIRTIO_BLK=m +CONFIG_VIRTIO_BLK_SCSI=y CONFIG_VIRTIO_CONSOLE=m CONFIG_VIRTIO_INPUT=m # CONFIG_VIRTIO_MMIO_CMDLINE_DEVICES is not set @@ -6577,8 +6663,6 @@ CONFIG_VLAN_8021Q=m CONFIG_VLAN_8021Q_MVRP=y CONFIG_VLSI_FIR=m # CONFIG_VME_BUS is not set -CONFIG_VMWARE_BALLOON=m -CONFIG_VMWARE_PVSCSI=m # CONFIG_VMXNET3 is not set CONFIG_VORTEX=m CONFIG_VSOCKETS=m @@ -6601,6 +6685,7 @@ CONFIG_W1_MASTER_GPIO=m # CONFIG_W1_MASTER_MATROX is not set CONFIG_W1_MASTER_MXC=m CONFIG_W1_SLAVE_BQ27000=m +CONFIG_W1_SLAVE_DS2405=m CONFIG_W1_SLAVE_DS2406=m CONFIG_W1_SLAVE_DS2408=m # CONFIG_W1_SLAVE_DS2408_READBACK is not set @@ -6675,6 +6760,7 @@ CONFIG_WM8350_POWER=m CONFIG_WM8350_WATCHDOG=m # CONFIG_WQ_POWER_EFFICIENT_DEFAULT is not set # CONFIG_WQ_WATCHDOG is not set +# CONFIG_WW_MUTEX_SELFTEST is not set # CONFIG_X25 is not set # CONFIG_X86_BOOTPARAM_MEMORY_CORRUPTION_CHECK is not set # CONFIG_X86_PTDUMP is not set diff --git a/kernel-i686-PAE.config b/kernel-i686-PAE.config index 477ebedc7..4a24bc6a4 100644 --- a/kernel-i686-PAE.config +++ b/kernel-i686-PAE.config @@ -222,10 +222,7 @@ CONFIG_APPLE_PROPERTIES=y # CONFIG_APPLICOM is not set CONFIG_AQUANTIA_PHY=m CONFIG_AR5523=m -# CONFIG_ARCH_TEGRA_186_SOC is not set # CONFIG_ARCNET is not set -# CONFIG_ARM64_PTDUMP is not set -# CONFIG_ARM_SCPI_PROTOCOL is not set # CONFIG_AS3935 is not set CONFIG_ASUS_LAPTOP=m CONFIG_ASUS_NB_WMI=m @@ -383,7 +380,6 @@ CONFIG_BATMAN_ADV_NC=y # CONFIG_BATTERY_DS2781 is not set # CONFIG_BATTERY_DS2782 is not set # CONFIG_BATTERY_GAUGE_LTC2941 is not set -# CONFIG_BATTERY_GOLDFISH is not set # CONFIG_BATTERY_MAX17040 is not set # CONFIG_BATTERY_MAX17042 is not set CONFIG_BATTERY_OLPC=y @@ -427,6 +423,7 @@ CONFIG_BINFMT_SCRIPT=y CONFIG_BLK_CGROUP=y # CONFIG_BLK_CMDLINE_PARSER is not set CONFIG_BLK_CPQ_CISS_DA=m +CONFIG_BLK_DEBUG_FS=y CONFIG_BLK_DEV_3W_XXXX_RAID=m CONFIG_BLK_DEV_AMD74XX=y CONFIG_BLK_DEV_BSGLIB=y @@ -466,6 +463,7 @@ CONFIG_BLK_DEV_THROTTLING=y CONFIG_BLK_DEV_UMEM=m CONFIG_BLK_DEV=y CONFIG_BLK_DEV_ZONED=y +CONFIG_BLK_SED_OPAL=y CONFIG_BLK_WBT_MQ=y # CONFIG_BLK_WBT_SQ is not set CONFIG_BLK_WBT=y @@ -561,6 +559,7 @@ CONFIG_BT_HCIUART_INTEL=y CONFIG_BT_HCIUART_LL=y CONFIG_BT_HCIUART=m CONFIG_BT_HCIUART_MRVL=y +CONFIG_BT_HCIUART_NOKIA=m CONFIG_BT_HCIUART_QCA=y CONFIG_BT_HCIVHCI=m CONFIG_BT_HIDP=m @@ -661,6 +660,7 @@ CONFIG_CEPH_LIB=m # CONFIG_CEPH_LIB_USE_DNS_RESOLVER is not set CONFIG_CFAG12864B=m CONFIG_CFAG12864B_RATE=20 +CONFIG_CFG80211_CRDA_SUPPORT=y CONFIG_CFG80211_DEBUGFS=y CONFIG_CFG80211_DEFAULT_PS=y # CONFIG_CFG80211_DEVELOPER_WARNINGS is not set @@ -678,6 +678,7 @@ CONFIG_CGROUP_NET_CLASSID=y CONFIG_CGROUP_NET_PRIO=y CONFIG_CGROUP_PERF=y CONFIG_CGROUP_PIDS=y +# CONFIG_CGROUP_RDMA is not set CONFIG_CGROUP_SCHED=y CONFIG_CGROUPS=y # CONFIG_CHARGER_BQ2415X is not set @@ -685,6 +686,7 @@ CONFIG_CGROUPS=y # CONFIG_CHARGER_BQ24257 is not set # CONFIG_CHARGER_BQ24735 is not set # CONFIG_CHARGER_BQ25890 is not set +# CONFIG_CHARGER_DETECTOR_MAX14656 is not set # CONFIG_CHARGER_GPIO is not set # CONFIG_CHARGER_ISP1704 is not set # CONFIG_CHARGER_LP8727 is not set @@ -692,6 +694,7 @@ CONFIG_CGROUPS=y # CONFIG_CHARGER_PCF50633 is not set # CONFIG_CHARGER_QCOM_SMBB is not set # CONFIG_CHARGER_RT9455 is not set +# CONFIG_CHARGER_SBS is not set CONFIG_CHARGER_SMB347=m # CONFIG_CHECKPOINT_RESTORE is not set CONFIG_CHELSIO_T1_1G=y @@ -732,6 +735,7 @@ CONFIG_CLS_U32_PERF=y CONFIG_CM32181=m # CONFIG_CM3232 is not set # CONFIG_CM3323 is not set +CONFIG_CM3605=m # CONFIG_CM36651 is not set # CONFIG_CMA is not set # CONFIG_CMDLINE_BOOL is not set @@ -742,24 +746,13 @@ CONFIG_CODA_FS=m # CONFIG_COMMON_CLK_CDCE706 is not set # CONFIG_COMMON_CLK_CDCE925 is not set # CONFIG_COMMON_CLK_CS2000_CP is not set -# CONFIG_COMMON_CLK_HI3516CV300 is not set -# CONFIG_COMMON_CLK_HI3519 is not set -# CONFIG_COMMON_CLK_HI3798CV200 is not set -# CONFIG_COMMON_CLK_MT2701_BDPSYS is not set -# CONFIG_COMMON_CLK_MT2701_ETHSYS is not set -# CONFIG_COMMON_CLK_MT2701_HIFSYS is not set -# CONFIG_COMMON_CLK_MT2701_IMGSYS is not set -# CONFIG_COMMON_CLK_MT2701 is not set -# CONFIG_COMMON_CLK_MT2701_MMSYS is not set -# CONFIG_COMMON_CLK_MT2701_VDECSYS is not set -# CONFIG_COMMON_CLK_MT8135 is not set -# CONFIG_COMMON_CLK_MT8173 is not set -# CONFIG_COMMON_CLK_OXNAS is not set # CONFIG_COMMON_CLK_PWM is not set # CONFIG_COMMON_CLK_SI514 is not set # CONFIG_COMMON_CLK_SI5351 is not set # CONFIG_COMMON_CLK_SI570 is not set +# CONFIG_COMMON_CLK_VC5 is not set # CONFIG_COMMON_CLK_XLNX_CLKWZRD is not set +# CONFIG_COMMON_RESET_HI3660 is not set CONFIG_COMPACTION=y CONFIG_COMPAL_LAPTOP=m # CONFIG_COMPAT_BRK is not set @@ -808,6 +801,7 @@ CONFIG_CROSS_MEMORY_ATTACH=y CONFIG_CRYPTO_842=m CONFIG_CRYPTO_AES_586=y CONFIG_CRYPTO_AES_NI_INTEL=y +CONFIG_CRYPTO_AES_TI=m CONFIG_CRYPTO_AES=y CONFIG_CRYPTO_ANSI_CPRNG=m CONFIG_CRYPTO_ANUBIS=m @@ -823,13 +817,11 @@ CONFIG_CRYPTO_CCM=m CONFIG_CRYPTO_CHACHA20=m CONFIG_CRYPTO_CHACHA20POLY1305=m CONFIG_CRYPTO_CMAC=m -CONFIG_CRYPTO_CRC32_ARM_CE=m CONFIG_CRYPTO_CRC32C_INTEL=m CONFIG_CRYPTO_CRC32C_VPMSUM=m CONFIG_CRYPTO_CRC32C=y CONFIG_CRYPTO_CRC32=m CONFIG_CRYPTO_CRC32_PCLMUL=m -CONFIG_CRYPTO_CRCT10DIF_ARM_CE=m CONFIG_CRYPTO_CRYPTD=y CONFIG_CRYPTO_CTR=y CONFIG_CRYPTO_CTS=y @@ -972,6 +964,7 @@ CONFIG_DEBUG_OBJECTS_ENABLE_DEFAULT=1 # CONFIG_DEBUG_PERF_USE_VMALLOC is not set # CONFIG_DEBUG_PI_LIST is not set # CONFIG_DEBUG_PINCTRL is not set +# CONFIG_DEBUG_REFCOUNT is not set CONFIG_DEBUG_RODATA_TEST=y # CONFIG_DEBUG_RT_MUTEXES is not set # CONFIG_DEBUG_SECTION_MISMATCH is not set @@ -1015,6 +1008,7 @@ CONFIG_DEVFREQ_GOV_SIMPLE_ONDEMAND=m # CONFIG_DEVFREQ_GOV_USERSPACE is not set # CONFIG_DEVKMEM is not set CONFIG_DEVMEM=y +# CONFIG_DEVPORT is not set CONFIG_DEVTMPFS_MOUNT=y CONFIG_DEVTMPFS=y # CONFIG_DGAP is not set @@ -1085,6 +1079,7 @@ CONFIG_DRM_ANALOGIX_ANX78XX=m CONFIG_DRM_AST=m CONFIG_DRM_BOCHS=m CONFIG_DRM_CIRRUS_QEMU=m +# CONFIG_DRM_DEBUG_MM_SELFTEST is not set CONFIG_DRM_DP_AUX_CHARDEV=y # CONFIG_DRM_DUMB_VGA_DAC is not set CONFIG_DRM_DW_HDMI_I2S_AUDIO=m @@ -1095,7 +1090,7 @@ CONFIG_DRM_GMA500=m CONFIG_DRM_HISI_HIBMC=m CONFIG_DRM_I2C_ADV7511_AUDIO=y CONFIG_DRM_I2C_ADV7511=m -# CONFIG_DRM_I2C_ADV7533 is not set +CONFIG_DRM_I2C_ADV7533=y CONFIG_DRM_I2C_CH7006=m CONFIG_DRM_I2C_NXP_TDA998X=m CONFIG_DRM_I2C_SIL164=m @@ -1110,7 +1105,6 @@ CONFIG_DRM_I915_USERPTR=y # CONFIG_DRM_LEGACY is not set CONFIG_DRM_LOAD_EDID_FIRMWARE=y CONFIG_DRM=m -# CONFIG_DRM_MALI_DISPLAY is not set CONFIG_DRM_MGAG200=m # CONFIG_DRM_MGA is not set CONFIG_DRM_MXSFB=m @@ -1136,6 +1130,7 @@ CONFIG_DRM_RADEON_USERPTR=y CONFIG_DRM_SIL_SII8620=m # CONFIG_DRM_SIS is not set # CONFIG_DRM_TDFX is not set +# CONFIG_DRM_TINYDRM is not set CONFIG_DRM_TI_TFP410=m # CONFIG_DRM_TOSHIBA_TC358767 is not set CONFIG_DRM_UDL=m @@ -1230,6 +1225,7 @@ CONFIG_DVB_USB_UMT_010=m CONFIG_DVB_USB_V2=m CONFIG_DVB_USB_VP702X=m CONFIG_DVB_USB_VP7045=m +CONFIG_DVB_USB_ZD1301=m # CONFIG_DW_DMAC_BIG_ENDIAN_IO is not set CONFIG_DW_DMAC_CORE=y CONFIG_DW_DMAC=m @@ -1280,6 +1276,7 @@ CONFIG_EEPROM_93CX6=m # CONFIG_EEPROM_93XX46 is not set CONFIG_EEPROM_AT24=m # CONFIG_EEPROM_AT25 is not set +CONFIG_EEPROM_IDT_89HPESX=m CONFIG_EEPROM_LEGACY=m CONFIG_EEPROM_MAX6875=m CONFIG_EFI_ALLOW_SECURE_BOOT_EXIT=y @@ -1301,10 +1298,10 @@ CONFIG_EFIVAR_FS=y # CONFIG_EFI_VARS_PSTORE is not set CONFIG_EFI=y # CONFIG_EFS_FS is not set -# CONFIG_EMAC_ROCKCHIP is not set # CONFIG_EMBEDDED is not set CONFIG_ENABLE_MUST_CHECK=y # CONFIG_ENABLE_WARN_DEPRECATED is not set +CONFIG_ENA_ETHERNET=m # CONFIG_ENC28J60 is not set CONFIG_ENCLOSURE_SERVICES=m CONFIG_ENCRYPTED_KEYS=y @@ -1333,6 +1330,7 @@ CONFIG_EXT4_FS_SECURITY=y CONFIG_EXT4_FS=y CONFIG_EXT4_USE_FOR_EXT2=y # CONFIG_EXTCON_ADC_JACK is not set +CONFIG_EXTCON_INTEL_INT3496=m # CONFIG_EXTCON is not set # CONFIG_EXTCON_QCOM_SPMI_MISC is not set CONFIG_EXTRA_FIRMWARE="" @@ -1378,7 +1376,6 @@ CONFIG_FB_EFI=y CONFIG_FB_GEODE_GX=y CONFIG_FB_GEODE_LX=y CONFIG_FB_GEODE=y -# CONFIG_FB_GOLDFISH is not set # CONFIG_FB_HECUBA is not set # CONFIG_FB_HGA is not set CONFIG_FB_HYPERV=m @@ -1479,6 +1476,7 @@ CONFIG_FSCACHE_OBJECT_LIST=y CONFIG_FSCACHE_STATS=y CONFIG_FS_DAX=y CONFIG_FS_ENCRYPTION=y +CONFIG_FSI=m # CONFIG_FSL_EDMA is not set # CONFIG_FSL_PQ_MDIO is not set CONFIG_FS_MBCACHE=y @@ -1554,6 +1552,7 @@ CONFIG_GIRBIL_DONGLE=m CONFIG_GPIO_CRYSTAL_COVE=y # CONFIG_GPIO_CS5535 is not set # CONFIG_GPIO_DWAPB is not set +CONFIG_GPIO_EXAR=m # CONFIG_GPIO_F7188X is not set # CONFIG_GPIO_GENERIC_PLATFORM is not set # CONFIG_GPIO_GRGPIO is not set @@ -1573,6 +1572,7 @@ CONFIG_GPIOLIB=y # CONFIG_GPIO_PCA953X is not set # CONFIG_GPIO_PCF857X is not set # CONFIG_GPIO_PCH is not set +CONFIG_GPIO_PCI_IDIO_16=m # CONFIG_GPIO_PISOSR is not set # CONFIG_GPIO_RDC321X is not set # CONFIG_GPIO_SCH311X is not set @@ -1580,7 +1580,7 @@ CONFIG_GPIO_SCH=m # CONFIG_GPIO_SODAVILLE is not set # CONFIG_GPIO_SX150X is not set # CONFIG_GPIO_SYSCON is not set -CONFIG_GPIO_SYSFS=y +# CONFIG_GPIO_SYSFS is not set # CONFIG_GPIO_TPIC2810 is not set # CONFIG_GPIO_TS4900 is not set # CONFIG_GPIO_TS5500 is not set @@ -1590,7 +1590,6 @@ CONFIG_GPIO_VIPERBOARD=m CONFIG_GPIO_WHISKEY_COVE=y # CONFIG_GPIO_WS16C48 is not set # CONFIG_GPIO_XILINX is not set -# CONFIG_GPIO_ZX is not set CONFIG_GREENASIA_FF=y # CONFIG_GREYBUS is not set # CONFIG_GS_FPGABOOT is not set @@ -1601,6 +1600,7 @@ CONFIG_HANGCHECK_TIMER=m CONFIG_HAPPYMEAL=m CONFIG_HARDENED_USERCOPY=y # CONFIG_HDC100X is not set +CONFIG_HDMI_LPE_AUDIO=m CONFIG_HEADERS_CHECK=y CONFIG_HERMES_CACHE_FW_ON_INIT=y CONFIG_HERMES=m @@ -1799,6 +1799,7 @@ CONFIG_HW_RANDOM_VIA=m CONFIG_HW_RANDOM_VIRTIO=m CONFIG_HW_RANDOM=y CONFIG_HWSPINLOCK=m +# CONFIG_HX711 is not set CONFIG_HYPERV_BALLOON=m CONFIG_HYPERVISOR_GUEST=y CONFIG_HYPERV_KEYBOARD=m @@ -1840,7 +1841,6 @@ CONFIG_I2C_DIOLAN_U2C=m CONFIG_I2C_HELPER_AUTO=y CONFIG_I2C_HID=m CONFIG_I2C_I801=m -CONFIG_I2C_IMX_LPI2C=m CONFIG_I2C_ISCH=m CONFIG_I2C_ISMT=m CONFIG_I2C_MLXCPLD=m @@ -1935,6 +1935,7 @@ CONFIG_IIO_ST_ACCEL_SPI_3AXIS=m CONFIG_IIO_ST_GYRO_3AXIS=m CONFIG_IIO_ST_GYRO_I2C_3AXIS=m CONFIG_IIO_ST_GYRO_SPI_3AXIS=m +# CONFIG_IIO_ST_LSM6DSX is not set CONFIG_IIO_ST_MAGN_3AXIS=m # CONFIG_IIO_ST_PRESS is not set CONFIG_IIO_SW_DEVICE=m @@ -1951,6 +1952,7 @@ CONFIG_IMA_MEASURE_PCR_IDX=10 # CONFIG_INA2XX_ADC is not set CONFIG_INET6_AH=m CONFIG_INET6_ESP=m +CONFIG_INET6_ESP_OFFLOAD=m CONFIG_INET6_IPCOMP=m CONFIG_INET6_XFRM_MODE_BEET=m CONFIG_INET6_XFRM_MODE_ROUTEOPTIMIZATION=m @@ -1960,6 +1962,7 @@ CONFIG_INET_AH=m CONFIG_INET_DIAG_DESTROY=y CONFIG_INET_DIAG=m CONFIG_INET_ESP=m +CONFIG_INET_ESP_OFFLOAD=m CONFIG_INET_IPCOMP=m CONFIG_INET_RAW_DIAG=m CONFIG_INET_TUNNEL=m @@ -1968,6 +1971,7 @@ CONFIG_INET_XFRM_MODE_BEET=m CONFIG_INET_XFRM_MODE_TRANSPORT=m CONFIG_INET_XFRM_MODE_TUNNEL=m CONFIG_INET=y +# CONFIG_INFINIBAND_BNXT_RE is not set # CONFIG_INFINIBAND_CXGB3_DEBUG is not set CONFIG_INFINIBAND_CXGB3=m CONFIG_INFINIBAND_CXGB4=m @@ -2238,6 +2242,7 @@ CONFIG_IP_VS_SH_TAB_BITS=8 CONFIG_IP_VS_TAB_BITS=12 CONFIG_IP_VS_WLC=m CONFIG_IP_VS_WRR=m +CONFIG_IPVTAP=m # CONFIG_IPW2100_DEBUG is not set CONFIG_IPW2100=m CONFIG_IPW2100_MONITOR=y @@ -2284,6 +2289,7 @@ CONFIG_IR_SERIAL=m CONFIG_IR_SERIAL_TRANSMITTER=y CONFIG_IR_SHARP_DECODER=m CONFIG_IR_SONY_DECODER=m +CONFIG_IR_SPI=m CONFIG_IR_STREAMZAP=m CONFIG_IR_TTUSBIR=m CONFIG_IRTTY_SIR=m @@ -2438,6 +2444,7 @@ CONFIG_KEYBOARD_PMIC8XXX=m # CONFIG_KEYBOARD_SUNKBD is not set # CONFIG_KEYBOARD_TCA6416 is not set # CONFIG_KEYBOARD_TCA8418 is not set +CONFIG_KEYBOARD_TM2_TOUCHKEY=m # CONFIG_KEYBOARD_XTKBD is not set CONFIG_KEY_DH_OPERATIONS=y CONFIG_KEYS=y @@ -2449,7 +2456,7 @@ CONFIG_KGDB_TESTS=y CONFIG_KGDB=y CONFIG_KINGSUN_DONGLE=m # CONFIG_KMX61 is not set -CONFIG_KPROBE_EVENT=y +CONFIG_KPROBE_EVENTS=y # CONFIG_KPROBES_SANITY_TEST is not set CONFIG_KPROBES=y CONFIG_KS0108_DELAY=2 @@ -2502,6 +2509,7 @@ CONFIG_LDM_PARTITION=y # CONFIG_LEDS_BCM6358 is not set # CONFIG_LEDS_BD2802 is not set CONFIG_LEDS_BLINKM=m +CONFIG_LEDS_BRIGHTNESS_HW_CHANGED=y CONFIG_LEDS_CLASS_FLASH=m CONFIG_LEDS_CLASS=y CONFIG_LEDS_CLEVO_MAIL=m @@ -2618,6 +2626,8 @@ CONFIG_LOOPBACK_TARGET=m CONFIG_LPC_ICH=m CONFIG_LP_CONSOLE=y CONFIG_LPC_SCH=m +CONFIG_LPFC_NVME_INITIATOR=y +CONFIG_LPFC_NVME_TARGET=y CONFIG_LSI_ET1011C_PHY=m CONFIG_LSM_MMAP_MIN_ADDR=65536 # CONFIG_LTC2485 is not set @@ -2656,6 +2666,7 @@ CONFIG_MACVLAN=m CONFIG_MACVTAP=m # CONFIG_MAG3110 is not set CONFIG_MAGIC_SYSRQ_DEFAULT_ENABLE=0x0 +CONFIG_MAGIC_SYSRQ_SERIAL=y CONFIG_MAGIC_SYSRQ=y # CONFIG_MAILBOX is not set # CONFIG_MAILBOX_TEST is not set @@ -2664,10 +2675,12 @@ CONFIG_MANTIS_CORE=m CONFIG_MARVELL_PHY=m # CONFIG_MATH_EMULATION is not set # CONFIG_MAX1027 is not set +# CONFIG_MAX11100 is not set # CONFIG_MAX1363 is not set CONFIG_MAX30100=m # CONFIG_MAX44000 is not set # CONFIG_MAX517 is not set +# CONFIG_MAX5481 is not set # CONFIG_MAX5487 is not set # CONFIG_MAX5821 is not set # CONFIG_MAX63XX_WATCHDOG is not set @@ -2743,7 +2756,6 @@ CONFIG_MEMSTICK_TIFM_MS=m # CONFIG_MEMSTICK_UNSAFE_RESUME is not set # CONFIG_MEMTEST is not set # CONFIG_MEN_A21_WDT is not set -CONFIG_MESON_GXL_PHY=m CONFIG_MESSAGE_LOGLEVEL_DEFAULT=4 # CONFIG_MFD_88PM800 is not set # CONFIG_MFD_88PM805 is not set @@ -2762,6 +2774,7 @@ CONFIG_MESSAGE_LOGLEVEL_DEFAULT=4 # CONFIG_MFD_AXP20X is not set # CONFIG_MFD_BCM590XX is not set CONFIG_MFD_CORE=y +CONFIG_MFD_CPCAP=m # CONFIG_MFD_CROS_EC is not set CONFIG_MFD_CS5535=m # CONFIG_MFD_DA9052_I2C is not set @@ -2811,7 +2824,6 @@ CONFIG_MFD_SM501_GPIO=y CONFIG_MFD_SM501=m # CONFIG_MFD_SMSC is not set # CONFIG_MFD_STMPE is not set -CONFIG_MFD_SUN4I_GPADC=m # CONFIG_MFD_SYSCON is not set # CONFIG_MFD_TC3589X is not set # CONFIG_MFD_TC6393XB is not set @@ -2973,6 +2985,7 @@ CONFIG_MPILIB=y CONFIG_MPLS_IPTUNNEL=m CONFIG_MPLS_ROUTING=m # CONFIG_MPU3050_I2C is not set +CONFIG_MQ_IOSCHED_DEADLINE=y # CONFIG_MS5611 is not set # CONFIG_MS5637 is not set # CONFIG_MS_BLOCK is not set @@ -3092,6 +3105,7 @@ CONFIG_NET_ACT_MIRRED=m CONFIG_NET_ACT_NAT=m CONFIG_NET_ACT_PEDIT=m CONFIG_NET_ACT_POLICE=m +CONFIG_NET_ACT_SAMPLE=m CONFIG_NET_ACT_SIMP=m CONFIG_NET_ACT_SKBEDIT=m CONFIG_NET_ACT_SKBMOD=m @@ -3225,6 +3239,7 @@ CONFIG_NETFILTER_XT_TARGET_TRACE=m CONFIG_NETFILTER=y CONFIG_NET_FOU_IP_TUNNELS=y CONFIG_NET_FOU=m +CONFIG_NET_IFE=m CONFIG_NET_IFE_SKBMARK=m CONFIG_NET_IFE_SKBPRIO=m CONFIG_NET_IFE_SKBTCINDEX=m @@ -3235,7 +3250,7 @@ CONFIG_NET_IPIP=m CONFIG_NET_IPVTI=m CONFIG_NET_KEY=m CONFIG_NET_KEY_MIGRATE=y -# CONFIG_NET_L3_MASTER_DEV is not set +CONFIG_NET_L3_MASTER_DEV=y CONFIG_NETLABEL=y CONFIG_NETLINK_DIAG=m CONFIG_NET_MPLS_GSO=m @@ -3288,8 +3303,9 @@ CONFIG_NET_VENDOR_ADAPTEC=y CONFIG_NET_VENDOR_AGERE=y # CONFIG_NET_VENDOR_ALACRITECH is not set CONFIG_NET_VENDOR_ALTEON=y -# CONFIG_NET_VENDOR_AMAZON is not set +CONFIG_NET_VENDOR_AMAZON=y CONFIG_NET_VENDOR_AMD=y +# CONFIG_NET_VENDOR_AQUANTIA is not set CONFIG_NET_VENDOR_ARC=y CONFIG_NET_VENDOR_ATHEROS=y # CONFIG_NET_VENDOR_AURORA is not set @@ -3414,6 +3430,8 @@ CONFIG_NF_LOG_IPV6=m CONFIG_NF_LOG_NETDEV=m CONFIG_NF_NAT=m CONFIG_NF_NAT_SNMP_BASIC=m +# CONFIG_NFP_DEBUG is not set +CONFIG_NFP=m # CONFIG_NFP_NET_DEBUG is not set CONFIG_NFP_NETVF=m CONFIG_NF_REJECT_IPV6=m @@ -3485,11 +3503,13 @@ CONFIG_NFT_REDIR=m CONFIG_NFT_REJECT_IPV4=m CONFIG_NFT_REJECT=m CONFIG_NFT_RT=m +CONFIG_NFT_SET_BITMAP=m CONFIG_NFT_SET_HASH=m CONFIG_NFT_SET_RBTREE=m CONFIG_N_GSM=m CONFIG_N_HDLC=m # CONFIG_NI903X_WDT is not set +CONFIG_NIC7018_WDT=m CONFIG_NILFS2_FS=m CONFIG_NIU=m # CONFIG_NL80211_TESTMODE is not set @@ -3625,6 +3645,7 @@ CONFIG_PANTHERLORD_FF=y CONFIG_PARAVIRT_TIME_ACCOUNTING=y CONFIG_PARAVIRT=y # CONFIG_PARIDE is not set +CONFIG_PARMAN=m CONFIG_PARPORT_1284=y # CONFIG_PARPORT_AX88796 is not set CONFIG_PARPORT=m @@ -3682,6 +3703,7 @@ CONFIG_PATA_TOSHIBA=m CONFIG_PATA_TRIFLEX=m CONFIG_PATA_VIA=m CONFIG_PATA_WINBOND=m +# CONFIG_PC104 is not set CONFIG_PC8736x_GPIO=m # CONFIG_PC87413_WDT is not set CONFIG_PCCARD=y @@ -3753,6 +3775,8 @@ CONFIG_PERSISTENT_KEYRINGS=y CONFIG_PHYLIB=y # CONFIG_PHY_PXA_28NM_HSIC is not set # CONFIG_PHY_PXA_28NM_USB2 is not set +# CONFIG_PHY_QCOM_USB_HSIC is not set +# CONFIG_PHY_QCOM_USB_HS is not set CONFIG_PHYSICAL_ALIGN=0x400000 CONFIG_PHYSICAL_START=0x400000 # CONFIG_PHY_ST_SPEAR1310_MIPHY is not set @@ -3765,10 +3789,12 @@ CONFIG_PINCTRL_BAYTRAIL=y # CONFIG_PINCTRL_BCM281XX is not set CONFIG_PINCTRL_BROXTON=m CONFIG_PINCTRL_CHERRYVIEW=y +# CONFIG_PINCTRL_GEMINILAKE is not set CONFIG_PINCTRL_MSM8994=m # CONFIG_PINCTRL_SINGLE is not set CONFIG_PINCTRL_SUNRISEPOINT=m # CONFIG_PINCTRL_SX150X is not set +# CONFIG_PINCTRL_TI_IODELAY is not set CONFIG_PINCTRL=y CONFIG_PINMUX=y CONFIG_PKCS7_MESSAGE_PARSER=y @@ -3836,6 +3862,7 @@ CONFIG_PPTP=m CONFIG_PREEMPT_VOLUNTARY=y CONFIG_PREVENT_FIRMWARE_BUILD=y CONFIG_PRINTER=m +CONFIG_PRINTK_SAFE_LOG_BUF_SHIFT=12 CONFIG_PRINTK_TIME=y # CONFIG_PRINT_QUOTA_WARNING is not set # CONFIG_PRISM2_USB is not set @@ -3850,11 +3877,13 @@ CONFIG_PROFILING=y # CONFIG_PROVE_LOCKING is not set # CONFIG_PROVE_RCU_REPEATEDLY is not set # CONFIG_PROVIDE_OHCI1394_DMA_INIT is not set +CONFIG_PSAMPLE=m # CONFIG_PSTORE_CONSOLE is not set # CONFIG_PSTORE_FTRACE is not set # CONFIG_PSTORE_PMSG is not set CONFIG_PSTORE_RAM=m CONFIG_PSTORE=y +CONFIG_PTP_1588_CLOCK_KVM=m CONFIG_PTP_1588_CLOCK=m CONFIG_PTP_1588_CLOCK_PCH=m # CONFIG_PUNIT_ATOM_DEBUG is not set @@ -3868,14 +3897,15 @@ CONFIG_PWM_LPSS_PLATFORM=m # CONFIG_PWM_PCA9685 is not set CONFIG_PWM=y CONFIG_PWRSEQ_EMMC=m +# CONFIG_PWRSEQ_SD8787 is not set CONFIG_PWRSEQ_SIMPLE=m # CONFIG_QCA7000 is not set CONFIG_QCOM_ADSP_PIL=m -# CONFIG_QCOM_EBI2 is not set # CONFIG_QCOM_EMAC is not set # CONFIG_QCOM_HIDMA is not set # CONFIG_QCOM_HIDMA_MGMT is not set CONFIG_QEDE=m +CONFIG_QEDF=m CONFIG_QEDI=m CONFIG_QED=m CONFIG_QED_SRIOV=y @@ -3921,7 +3951,6 @@ CONFIG_RADIO_TERRATEC=m CONFIG_RADIO_TRUST=m CONFIG_RADIO_TYPHOON=m CONFIG_RADIO_WL1273=m -# CONFIG_RADIO_WL128X is not set # depends on TI_ST which we don't enable CONFIG_RADIO_ZOLTRIX=m CONFIG_RAID_ATTRS=m # CONFIG_RANDOM32_SELFTEST is not set @@ -3967,6 +3996,7 @@ CONFIG_REALTEK_AUTOPM=y CONFIG_REALTEK_PHY=m CONFIG_REGMAP_I2C=y CONFIG_REGMAP=y +CONFIG_REGULATOR_CPCAP=m # CONFIG_REGULATOR_DEBUG is not set # CONFIG_REGULATOR is not set # CONFIG_REISERFS_CHECK is not set @@ -4453,6 +4483,7 @@ CONFIG_SENSORS_SIS5595=m CONFIG_SENSORS_SMSC47B397=m CONFIG_SENSORS_SMSC47M192=m CONFIG_SENSORS_SMSC47M1=m +# CONFIG_SENSORS_STTS751 is not set CONFIG_SENSORS_TC654=m CONFIG_SENSORS_TC74=m CONFIG_SENSORS_THMC50=m @@ -4489,13 +4520,16 @@ CONFIG_SERIAL_8250_CS=m # CONFIG_SERIAL_8250_DEPRECATED_OPTIONS is not set # CONFIG_SERIAL_8250_DETECT_IRQ is not set CONFIG_SERIAL_8250_DW=y +CONFIG_SERIAL_8250_EXAR=m CONFIG_SERIAL_8250_EXTENDED=y # CONFIG_SERIAL_8250_FINTEK is not set # CONFIG_SERIAL_8250_INGENIC is not set +CONFIG_SERIAL_8250_LPSS=m CONFIG_SERIAL_8250_MANY_PORTS=y CONFIG_SERIAL_8250_MID=y CONFIG_SERIAL_8250_MOXA=m CONFIG_SERIAL_8250_NR_UARTS=32 +CONFIG_SERIAL_8250_PCI=m CONFIG_SERIAL_8250_RSA=y CONFIG_SERIAL_8250_RT288X=y CONFIG_SERIAL_8250_RUNTIME_UARTS=32 @@ -4508,6 +4542,8 @@ CONFIG_SERIAL_ARC_NR_PORTS=1 # CONFIG_SERIAL_CONEXANT_DIGICOLOR is not set CONFIG_SERIAL_CORE_CONSOLE=y CONFIG_SERIAL_CORE=y +CONFIG_SERIAL_DEV_BUS=y +CONFIG_SERIAL_DEV_CTRL_TTYPORT=y # CONFIG_SERIAL_FSL_LPUART is not set CONFIG_SERIAL_GRLIB_GAISLER_APBUART=m # CONFIG_SERIAL_IFX6X60 is not set @@ -4551,6 +4587,7 @@ CONFIG_SH_ETH=m # CONFIG_SIGMA is not set CONFIG_SIGMATEL_FIR=m CONFIG_SIGNED_PE_FILE_VERIFICATION=y +# CONFIG_SILEAD_DMI is not set CONFIG_SIS190=m CONFIG_SIS900=m # CONFIG_SKFP is not set @@ -4571,6 +4608,7 @@ CONFIG_SLUB_CPU_PARTIAL=y CONFIG_SLUB=y CONFIG_SMARTJOYPLUS_FF=y CONFIG_SMC_IRCC_FIR=m +# CONFIG_SMC is not set # CONFIG_SM_FTL is not set CONFIG_SMP=y # CONFIG_SMSC37B787_WDT is not set @@ -4715,7 +4753,7 @@ CONFIG_SND_SEQUENCER=m CONFIG_SND_SEQUENCER_OSS=y CONFIG_SND_SERIAL_U16550=m CONFIG_SND_SIMPLE_CARD=m -# CONFIG_SND_SIMPLE_SCU_CARD is not set +CONFIG_SND_SIMPLE_SCU_CARD=m CONFIG_SND_SIS7019=m CONFIG_SND_SOC_AC97_CODEC=m # CONFIG_SND_SOC_ADAU1701 is not set @@ -4747,7 +4785,9 @@ CONFIG_SND_SOC_CS42L42=m # CONFIG_SND_SOC_CS4349 is not set # CONFIG_SND_SOC_CS53L30 is not set CONFIG_SND_SOC_DMIC=m -# CONFIG_SND_SOC_ES8328 is not set +CONFIG_SND_SOC_ES8328_I2C=m +CONFIG_SND_SOC_ES8328=m +CONFIG_SND_SOC_ES8328_SPI=m # CONFIG_SND_SOC_FSL_ASOC_CARD is not set # CONFIG_SND_SOC_FSL_ASRC is not set # CONFIG_SND_SOC_FSL_ESAI is not set @@ -4785,6 +4825,7 @@ CONFIG_SND_SOC=m # CONFIG_SND_SOC_MAX9860 is not set # CONFIG_SND_SOC_MSM8916_WCD_ANALOG is not set # CONFIG_SND_SOC_MSM8916_WCD_DIGITAL is not set +CONFIG_SND_SOC_NAU8540=m # CONFIG_SND_SOC_NAU8810 is not set # CONFIG_SND_SOC_PCM1681 is not set # CONFIG_SND_SOC_PCM179X_I2C is not set @@ -4840,7 +4881,6 @@ CONFIG_SND_SOC_TS3A227E=m # CONFIG_SND_SOC_XTFPGA_I2S is not set CONFIG_SND_SONICVIBES=m # CONFIG_SND_SPI is not set -CONFIG_SND_SUN8I_CODEC_ANALOG=m # CONFIG_SND_SUPPORT_OLD_API is not set CONFIG_SND_TRIDENT=m CONFIG_SND_USB_6FIRE=m @@ -4863,9 +4903,11 @@ CONFIG_SND_VIA82XX_MODEM=m CONFIG_SND_VIRMIDI=m CONFIG_SND_VIRTUOSO=m CONFIG_SND_VX222=m +CONFIG_SND_X86=y CONFIG_SND_YMFPCI=m # CONFIG_SOC_CAMERA is not set # CONFIG_SOC_TI is not set +# CONFIG_SOC_ZTE is not set CONFIG_SOFT_WATCHDOG=m CONFIG_SOLARIS_X86_PARTITION=y # CONFIG_SOLO6X10 is not set @@ -4914,6 +4956,7 @@ CONFIG_SQUASHFS_XATTR=y CONFIG_SQUASHFS_XZ=y CONFIG_SQUASHFS_ZLIB=y # CONFIG_SRAM is not set +# CONFIG_SRF08 is not set # CONFIG_SSB_DEBUG is not set CONFIG_SSB_DRIVER_GPIO=y CONFIG_SSB_DRIVER_PCICORE=y @@ -4932,6 +4975,7 @@ CONFIG_STAGING_MEDIA=y CONFIG_STAGING=y CONFIG_STANDALONE=y # CONFIG_STATIC_KEYS_SELFTEST is not set +# CONFIG_STATIC_USERMODEHELPER is not set CONFIG_STE10XP=m # CONFIG_STE_MODEM_RPROC is not set CONFIG_STK3310=m @@ -4946,10 +4990,6 @@ CONFIG_STMMAC_ETH=m CONFIG_STRICT_DEVMEM=y CONFIG_STRIP_ASM_SYMS=y # CONFIG_STRIP is not set -# CONFIG_SUN50I_A64_CCU is not set -# CONFIG_SUN6I_A31_CCU is not set -# CONFIG_SUN8I_A23_CCU is not set -# CONFIG_SUN8I_A33_CCU is not set CONFIG_SUNDANCE=m # CONFIG_SUNDANCE_MMIO is not set CONFIG_SUNGEM=m @@ -4958,7 +4998,6 @@ CONFIG_SUNRPC_DEBUG=y CONFIG_SUNRPC_GSS=m CONFIG_SUNRPC=m CONFIG_SUNRPC_XPRT_RDMA=m -# CONFIG_SUNXI_CCU is not set CONFIG_SURFACE_3_BUTTON=m CONFIG_SURFACE3_WMI=m CONFIG_SURFACE_PRO3_BUTTON=m @@ -5042,8 +5081,6 @@ CONFIG_TCP_CONG_YEAH=m CONFIG_TCP_MD5SIG=y # CONFIG_TCS3414 is not set # CONFIG_TCS3472 is not set -CONFIG_TEGRA_GMI=m -CONFIG_TEGRA_IVC=y CONFIG_TEHUTI=m CONFIG_TEKRAM_DONGLE=m CONFIG_TELCLOCK=m @@ -5057,9 +5094,11 @@ CONFIG_TEST_ASYNC_DRIVER_PROBE=m CONFIG_TEST_KSTRTOX=y # CONFIG_TEST_LIST_SORT is not set # CONFIG_TEST_LKM is not set +# CONFIG_TEST_PARMAN is not set # CONFIG_TEST_POWER is not set # CONFIG_TEST_PRINTF is not set # CONFIG_TEST_RHASHTABLE is not set +# CONFIG_TEST_SORT is not set # CONFIG_TEST_STATIC_KEYS is not set # CONFIG_TEST_STRING_HELPERS is not set # CONFIG_TEST_UDELAY is not set @@ -5091,6 +5130,7 @@ CONFIG_THRUSTMASTER_FF=y # CONFIG_TI_ADC128S052 is not set # CONFIG_TI_ADC161S626 is not set # CONFIG_TI_ADS1015 is not set +# CONFIG_TI_ADS7950 is not set # CONFIG_TI_ADS8688 is not set # CONFIG_TI_CPSW_ALE is not set # CONFIG_TI_DAC7512 is not set @@ -5105,9 +5145,11 @@ CONFIG_TIPC_MEDIA_UDP=y CONFIG_TI_SCI_PROTOCOL=m # CONFIG_TI_ST is not set # CONFIG_TI_SYSCON_RESET is not set +# CONFIG_TI_TLC4541 is not set CONFIG_TLAN=m # CONFIG_TMD_HERMES is not set # CONFIG_TMP006 is not set +# CONFIG_TMP007 is not set CONFIG_TMPFS_POSIX_ACL=y CONFIG_TMPFS_XATTR=y CONFIG_TMPFS=y @@ -5182,6 +5224,7 @@ CONFIG_TOUCHSCREEN_WACOM_I2C=m CONFIG_TOUCHSCREEN_WACOM_W8001=m # CONFIG_TOUCHSCREEN_WDT87XX_I2C is not set # CONFIG_TOUCHSCREEN_WM97XX is not set +CONFIG_TOUCHSCREEN_ZET6223=m CONFIG_TOUCHSCREEN_ZFORCE=m # CONFIG_TPL0102 is not set # CONFIG_TPS6105X is not set @@ -5249,7 +5292,7 @@ CONFIG_UNIX_DIAG=m CONFIG_UNIXWARE_DISKLABEL=y CONFIG_UNIX=y CONFIG_UNUSED_SYMBOLS=y -CONFIG_UPROBE_EVENT=y +CONFIG_UPROBE_EVENTS=y # CONFIG_US5182D is not set CONFIG_USB_ACM=m CONFIG_USB_ADUTUX=m @@ -5266,6 +5309,7 @@ CONFIG_USB_CATC=m CONFIG_USB_CDC_PHONET=m CONFIG_USB_CHAOSKEY=m # CONFIG_USB_CHIPIDEA is not set +# CONFIG_USB_CHIPIDEA_ULPI is not set CONFIG_USB_CXACRU=m # CONFIG_USB_CYPRESS_CY7C63 is not set # CONFIG_USB_CYTHERM is not set @@ -5350,6 +5394,7 @@ CONFIG_USB_HID=y CONFIG_USB_HSIC_USB3503=m CONFIG_USB_HSIC_USB4604=m CONFIG_USB_HSO=m +CONFIG_USB_HUB_USB251XB=m CONFIG_USB_HWA_HCD=m CONFIG_USB_IDMOUSE=m CONFIG_USB_IOWARRIOR=m @@ -5494,6 +5539,7 @@ CONFIG_USB_SERIAL_SPCP8X5=m CONFIG_USB_SERIAL_SSU100=m CONFIG_USB_SERIAL_SYMBOL=m CONFIG_USB_SERIAL_TI=m +CONFIG_USB_SERIAL_UPD78F0730=m CONFIG_USB_SERIAL_VISOR=m CONFIG_USB_SERIAL_WHITEHEAT=m # CONFIG_USB_SERIAL_WISHBONE is not set @@ -5583,6 +5629,7 @@ CONFIG_VFIO_PCI=m CONFIG_VFIO_PCI_VGA=y CONFIG_VGA_ARB_MAX_GPUS=16 CONFIG_VGA_ARB=y +# CONFIG_VGACON_SOFT_SCROLLBACK_PERSISTENT_ENABLE_BY_DEFAULT is not set CONFIG_VGACON_SOFT_SCROLLBACK_SIZE=64 CONFIG_VGACON_SOFT_SCROLLBACK=y CONFIG_VGA_CONSOLE=y @@ -5635,6 +5682,7 @@ CONFIG_VIDEO_HDPVR=m CONFIG_VIDEO_HEXIUM_GEMINI=m CONFIG_VIDEO_HEXIUM_ORION=m # CONFIG_VIDEO_IVTV_ALSA is not set +# CONFIG_VIDEO_IVTV_DEPRECATED_IOCTLS is not set CONFIG_VIDEO_IVTV=m # CONFIG_VIDEO_M5MOLS is not set # CONFIG_VIDEO_MEM2MEM_DEINTERLACE is not set @@ -5656,7 +5704,6 @@ CONFIG_VIDEO_SAA7134_RC=y CONFIG_VIDEO_SAA7146=m CONFIG_VIDEO_SAA7146_VV=m CONFIG_VIDEO_SAA7164=m -CONFIG_VIDEO_SAMSUNG_S5P_CEC=m # CONFIG_VIDEO_SH_MOBILE_CEU is not set # CONFIG_VIDEO_SH_MOBILE_CSI2 is not set # CONFIG_VIDEO_SH_VEU is not set @@ -5693,6 +5740,7 @@ CONFIG_VIDEO_ZORAN_ZR36060=m # CONFIG_VIRT_DRIVERS is not set CONFIG_VIRTIO_BALLOON=m CONFIG_VIRTIO_BLK=m +CONFIG_VIRTIO_BLK_SCSI=y CONFIG_VIRTIO_CONSOLE=m CONFIG_VIRTIO_INPUT=m # CONFIG_VIRTIO_MMIO_CMDLINE_DEVICES is not set @@ -5734,6 +5782,7 @@ CONFIG_W1_MASTER_DS2490=m # CONFIG_W1_MASTER_GPIO is not set # CONFIG_W1_MASTER_MATROX is not set CONFIG_W1_SLAVE_BQ27000=m +CONFIG_W1_SLAVE_DS2405=m CONFIG_W1_SLAVE_DS2406=m CONFIG_W1_SLAVE_DS2408=m # CONFIG_W1_SLAVE_DS2408_READBACK is not set @@ -5806,6 +5855,7 @@ CONFIG_WM8350_POWER=m CONFIG_WM8350_WATCHDOG=m # CONFIG_WQ_POWER_EFFICIENT_DEFAULT is not set # CONFIG_WQ_WATCHDOG is not set +# CONFIG_WW_MUTEX_SELFTEST is not set # CONFIG_X25 is not set CONFIG_X86_32_IRIS=m # CONFIG_X86_32_NON_STANDARD is not set @@ -5880,6 +5930,7 @@ CONFIG_XEN_NETDEV_BACKEND=m CONFIG_XEN_NETDEV_FRONTEND=m CONFIG_XEN_PCIDEV_BACKEND=m CONFIG_XEN_PCIDEV_FRONTEND=m +CONFIG_XEN_PVH=y CONFIG_XEN_SAVE_RESTORE=y CONFIG_XEN_SCRUB_PAGES=y CONFIG_XEN_SCSI_BACKEND=m diff --git a/kernel-i686-PAEdebug.config b/kernel-i686-PAEdebug.config index 9b316ee62..03e610d3f 100644 --- a/kernel-i686-PAEdebug.config +++ b/kernel-i686-PAEdebug.config @@ -222,10 +222,8 @@ CONFIG_APPLE_PROPERTIES=y # CONFIG_APPLICOM is not set CONFIG_AQUANTIA_PHY=m CONFIG_AR5523=m -# CONFIG_ARCH_TEGRA_186_SOC is not set # CONFIG_ARCNET is not set CONFIG_ARM64_PTDUMP=y -# CONFIG_ARM_SCPI_PROTOCOL is not set # CONFIG_AS3935 is not set CONFIG_ASUS_LAPTOP=m CONFIG_ASUS_NB_WMI=m @@ -383,7 +381,6 @@ CONFIG_BATMAN_ADV_NC=y # CONFIG_BATTERY_DS2781 is not set # CONFIG_BATTERY_DS2782 is not set # CONFIG_BATTERY_GAUGE_LTC2941 is not set -# CONFIG_BATTERY_GOLDFISH is not set # CONFIG_BATTERY_MAX17040 is not set # CONFIG_BATTERY_MAX17042 is not set CONFIG_BATTERY_OLPC=y @@ -427,6 +424,7 @@ CONFIG_BINFMT_SCRIPT=y CONFIG_BLK_CGROUP=y # CONFIG_BLK_CMDLINE_PARSER is not set CONFIG_BLK_CPQ_CISS_DA=m +CONFIG_BLK_DEBUG_FS=y CONFIG_BLK_DEV_3W_XXXX_RAID=m CONFIG_BLK_DEV_AMD74XX=y CONFIG_BLK_DEV_BSGLIB=y @@ -466,6 +464,7 @@ CONFIG_BLK_DEV_THROTTLING=y CONFIG_BLK_DEV_UMEM=m CONFIG_BLK_DEV=y CONFIG_BLK_DEV_ZONED=y +CONFIG_BLK_SED_OPAL=y CONFIG_BLK_WBT_MQ=y # CONFIG_BLK_WBT_SQ is not set CONFIG_BLK_WBT=y @@ -561,6 +560,7 @@ CONFIG_BT_HCIUART_INTEL=y CONFIG_BT_HCIUART_LL=y CONFIG_BT_HCIUART=m CONFIG_BT_HCIUART_MRVL=y +CONFIG_BT_HCIUART_NOKIA=m CONFIG_BT_HCIUART_QCA=y CONFIG_BT_HCIVHCI=m CONFIG_BT_HIDP=m @@ -661,6 +661,7 @@ CONFIG_CEPH_LIB_PRETTYDEBUG=y # CONFIG_CEPH_LIB_USE_DNS_RESOLVER is not set CONFIG_CFAG12864B=m CONFIG_CFAG12864B_RATE=20 +CONFIG_CFG80211_CRDA_SUPPORT=y CONFIG_CFG80211_DEBUGFS=y CONFIG_CFG80211_DEFAULT_PS=y # CONFIG_CFG80211_DEVELOPER_WARNINGS is not set @@ -678,6 +679,7 @@ CONFIG_CGROUP_NET_CLASSID=y CONFIG_CGROUP_NET_PRIO=y CONFIG_CGROUP_PERF=y CONFIG_CGROUP_PIDS=y +# CONFIG_CGROUP_RDMA is not set CONFIG_CGROUP_SCHED=y CONFIG_CGROUPS=y # CONFIG_CHARGER_BQ2415X is not set @@ -685,6 +687,7 @@ CONFIG_CGROUPS=y # CONFIG_CHARGER_BQ24257 is not set # CONFIG_CHARGER_BQ24735 is not set # CONFIG_CHARGER_BQ25890 is not set +# CONFIG_CHARGER_DETECTOR_MAX14656 is not set # CONFIG_CHARGER_GPIO is not set # CONFIG_CHARGER_ISP1704 is not set # CONFIG_CHARGER_LP8727 is not set @@ -692,6 +695,7 @@ CONFIG_CGROUPS=y # CONFIG_CHARGER_PCF50633 is not set # CONFIG_CHARGER_QCOM_SMBB is not set # CONFIG_CHARGER_RT9455 is not set +# CONFIG_CHARGER_SBS is not set CONFIG_CHARGER_SMB347=m # CONFIG_CHECKPOINT_RESTORE is not set CONFIG_CHELSIO_T1_1G=y @@ -732,6 +736,7 @@ CONFIG_CLS_U32_PERF=y CONFIG_CM32181=m # CONFIG_CM3232 is not set # CONFIG_CM3323 is not set +CONFIG_CM3605=m # CONFIG_CM36651 is not set # CONFIG_CMA is not set # CONFIG_CMDLINE_BOOL is not set @@ -742,24 +747,13 @@ CONFIG_CODA_FS=m # CONFIG_COMMON_CLK_CDCE706 is not set # CONFIG_COMMON_CLK_CDCE925 is not set # CONFIG_COMMON_CLK_CS2000_CP is not set -# CONFIG_COMMON_CLK_HI3516CV300 is not set -# CONFIG_COMMON_CLK_HI3519 is not set -# CONFIG_COMMON_CLK_HI3798CV200 is not set -# CONFIG_COMMON_CLK_MT2701_BDPSYS is not set -# CONFIG_COMMON_CLK_MT2701_ETHSYS is not set -# CONFIG_COMMON_CLK_MT2701_HIFSYS is not set -# CONFIG_COMMON_CLK_MT2701_IMGSYS is not set -# CONFIG_COMMON_CLK_MT2701 is not set -# CONFIG_COMMON_CLK_MT2701_MMSYS is not set -# CONFIG_COMMON_CLK_MT2701_VDECSYS is not set -# CONFIG_COMMON_CLK_MT8135 is not set -# CONFIG_COMMON_CLK_MT8173 is not set -# CONFIG_COMMON_CLK_OXNAS is not set # CONFIG_COMMON_CLK_PWM is not set # CONFIG_COMMON_CLK_SI514 is not set # CONFIG_COMMON_CLK_SI5351 is not set # CONFIG_COMMON_CLK_SI570 is not set +# CONFIG_COMMON_CLK_VC5 is not set # CONFIG_COMMON_CLK_XLNX_CLKWZRD is not set +# CONFIG_COMMON_RESET_HI3660 is not set CONFIG_COMPACTION=y CONFIG_COMPAL_LAPTOP=m # CONFIG_COMPAT_BRK is not set @@ -809,6 +803,7 @@ CONFIG_CROSS_MEMORY_ATTACH=y CONFIG_CRYPTO_842=m CONFIG_CRYPTO_AES_586=y CONFIG_CRYPTO_AES_NI_INTEL=y +CONFIG_CRYPTO_AES_TI=m CONFIG_CRYPTO_AES=y CONFIG_CRYPTO_ANSI_CPRNG=m CONFIG_CRYPTO_ANUBIS=m @@ -824,13 +819,11 @@ CONFIG_CRYPTO_CCM=m CONFIG_CRYPTO_CHACHA20=m CONFIG_CRYPTO_CHACHA20POLY1305=m CONFIG_CRYPTO_CMAC=m -CONFIG_CRYPTO_CRC32_ARM_CE=m CONFIG_CRYPTO_CRC32C_INTEL=m CONFIG_CRYPTO_CRC32C_VPMSUM=m CONFIG_CRYPTO_CRC32C=y CONFIG_CRYPTO_CRC32=m CONFIG_CRYPTO_CRC32_PCLMUL=m -CONFIG_CRYPTO_CRCT10DIF_ARM_CE=m CONFIG_CRYPTO_CRYPTD=y CONFIG_CRYPTO_CTR=y CONFIG_CRYPTO_CTS=y @@ -980,6 +973,7 @@ CONFIG_DEBUG_OBJECTS=y CONFIG_DEBUG_PERF_USE_VMALLOC=y CONFIG_DEBUG_PI_LIST=y # CONFIG_DEBUG_PINCTRL is not set +CONFIG_DEBUG_REFCOUNT=y CONFIG_DEBUG_RODATA_TEST=y CONFIG_DEBUG_RT_MUTEXES=y # CONFIG_DEBUG_SECTION_MISMATCH is not set @@ -1024,6 +1018,7 @@ CONFIG_DEVFREQ_GOV_SIMPLE_ONDEMAND=m # CONFIG_DEVFREQ_GOV_USERSPACE is not set # CONFIG_DEVKMEM is not set CONFIG_DEVMEM=y +# CONFIG_DEVPORT is not set CONFIG_DEVTMPFS_MOUNT=y CONFIG_DEVTMPFS=y # CONFIG_DGAP is not set @@ -1095,6 +1090,7 @@ CONFIG_DRM_ANALOGIX_ANX78XX=m CONFIG_DRM_AST=m CONFIG_DRM_BOCHS=m CONFIG_DRM_CIRRUS_QEMU=m +# CONFIG_DRM_DEBUG_MM_SELFTEST is not set CONFIG_DRM_DP_AUX_CHARDEV=y # CONFIG_DRM_DUMB_VGA_DAC is not set CONFIG_DRM_DW_HDMI_I2S_AUDIO=m @@ -1105,7 +1101,7 @@ CONFIG_DRM_GMA500=m CONFIG_DRM_HISI_HIBMC=m CONFIG_DRM_I2C_ADV7511_AUDIO=y CONFIG_DRM_I2C_ADV7511=m -# CONFIG_DRM_I2C_ADV7533 is not set +CONFIG_DRM_I2C_ADV7533=y CONFIG_DRM_I2C_CH7006=m CONFIG_DRM_I2C_NXP_TDA998X=m CONFIG_DRM_I2C_SIL164=m @@ -1120,7 +1116,6 @@ CONFIG_DRM_I915_USERPTR=y # CONFIG_DRM_LEGACY is not set CONFIG_DRM_LOAD_EDID_FIRMWARE=y CONFIG_DRM=m -# CONFIG_DRM_MALI_DISPLAY is not set CONFIG_DRM_MGAG200=m # CONFIG_DRM_MGA is not set CONFIG_DRM_MXSFB=m @@ -1146,6 +1141,7 @@ CONFIG_DRM_RADEON_USERPTR=y CONFIG_DRM_SIL_SII8620=m # CONFIG_DRM_SIS is not set # CONFIG_DRM_TDFX is not set +# CONFIG_DRM_TINYDRM is not set CONFIG_DRM_TI_TFP410=m # CONFIG_DRM_TOSHIBA_TC358767 is not set CONFIG_DRM_UDL=m @@ -1240,6 +1236,7 @@ CONFIG_DVB_USB_UMT_010=m CONFIG_DVB_USB_V2=m CONFIG_DVB_USB_VP702X=m CONFIG_DVB_USB_VP7045=m +CONFIG_DVB_USB_ZD1301=m # CONFIG_DW_DMAC_BIG_ENDIAN_IO is not set CONFIG_DW_DMAC_CORE=y CONFIG_DW_DMAC=m @@ -1290,6 +1287,7 @@ CONFIG_EEPROM_93CX6=m # CONFIG_EEPROM_93XX46 is not set CONFIG_EEPROM_AT24=m # CONFIG_EEPROM_AT25 is not set +CONFIG_EEPROM_IDT_89HPESX=m CONFIG_EEPROM_LEGACY=m CONFIG_EEPROM_MAX6875=m CONFIG_EFI_ALLOW_SECURE_BOOT_EXIT=y @@ -1311,10 +1309,10 @@ CONFIG_EFIVAR_FS=y # CONFIG_EFI_VARS_PSTORE is not set CONFIG_EFI=y # CONFIG_EFS_FS is not set -# CONFIG_EMAC_ROCKCHIP is not set # CONFIG_EMBEDDED is not set CONFIG_ENABLE_MUST_CHECK=y # CONFIG_ENABLE_WARN_DEPRECATED is not set +CONFIG_ENA_ETHERNET=m # CONFIG_ENC28J60 is not set CONFIG_ENCLOSURE_SERVICES=m CONFIG_ENCRYPTED_KEYS=y @@ -1343,6 +1341,7 @@ CONFIG_EXT4_FS_SECURITY=y CONFIG_EXT4_FS=y CONFIG_EXT4_USE_FOR_EXT2=y # CONFIG_EXTCON_ADC_JACK is not set +CONFIG_EXTCON_INTEL_INT3496=m # CONFIG_EXTCON is not set # CONFIG_EXTCON_QCOM_SPMI_MISC is not set CONFIG_EXTRA_FIRMWARE="" @@ -1395,7 +1394,6 @@ CONFIG_FB_EFI=y CONFIG_FB_GEODE_GX=y CONFIG_FB_GEODE_LX=y CONFIG_FB_GEODE=y -# CONFIG_FB_GOLDFISH is not set # CONFIG_FB_HECUBA is not set # CONFIG_FB_HGA is not set CONFIG_FB_HYPERV=m @@ -1496,6 +1494,7 @@ CONFIG_FSCACHE_OBJECT_LIST=y CONFIG_FSCACHE_STATS=y CONFIG_FS_DAX=y CONFIG_FS_ENCRYPTION=y +CONFIG_FSI=m # CONFIG_FSL_EDMA is not set # CONFIG_FSL_PQ_MDIO is not set CONFIG_FS_MBCACHE=y @@ -1571,6 +1570,7 @@ CONFIG_GIRBIL_DONGLE=m CONFIG_GPIO_CRYSTAL_COVE=y # CONFIG_GPIO_CS5535 is not set # CONFIG_GPIO_DWAPB is not set +CONFIG_GPIO_EXAR=m # CONFIG_GPIO_F7188X is not set # CONFIG_GPIO_GENERIC_PLATFORM is not set # CONFIG_GPIO_GRGPIO is not set @@ -1590,6 +1590,7 @@ CONFIG_GPIOLIB=y # CONFIG_GPIO_PCA953X is not set # CONFIG_GPIO_PCF857X is not set # CONFIG_GPIO_PCH is not set +CONFIG_GPIO_PCI_IDIO_16=m # CONFIG_GPIO_PISOSR is not set # CONFIG_GPIO_RDC321X is not set # CONFIG_GPIO_SCH311X is not set @@ -1597,7 +1598,7 @@ CONFIG_GPIO_SCH=m # CONFIG_GPIO_SODAVILLE is not set # CONFIG_GPIO_SX150X is not set # CONFIG_GPIO_SYSCON is not set -CONFIG_GPIO_SYSFS=y +# CONFIG_GPIO_SYSFS is not set # CONFIG_GPIO_TPIC2810 is not set # CONFIG_GPIO_TS4900 is not set # CONFIG_GPIO_TS5500 is not set @@ -1607,7 +1608,6 @@ CONFIG_GPIO_VIPERBOARD=m CONFIG_GPIO_WHISKEY_COVE=y # CONFIG_GPIO_WS16C48 is not set # CONFIG_GPIO_XILINX is not set -# CONFIG_GPIO_ZX is not set CONFIG_GREENASIA_FF=y # CONFIG_GREYBUS is not set # CONFIG_GS_FPGABOOT is not set @@ -1618,6 +1618,7 @@ CONFIG_HANGCHECK_TIMER=m CONFIG_HAPPYMEAL=m CONFIG_HARDENED_USERCOPY=y # CONFIG_HDC100X is not set +CONFIG_HDMI_LPE_AUDIO=m CONFIG_HEADERS_CHECK=y CONFIG_HERMES_CACHE_FW_ON_INIT=y CONFIG_HERMES=m @@ -1816,6 +1817,7 @@ CONFIG_HW_RANDOM_VIA=m CONFIG_HW_RANDOM_VIRTIO=m CONFIG_HW_RANDOM=y CONFIG_HWSPINLOCK=m +# CONFIG_HX711 is not set CONFIG_HYPERV_BALLOON=m CONFIG_HYPERVISOR_GUEST=y CONFIG_HYPERV_KEYBOARD=m @@ -1857,7 +1859,6 @@ CONFIG_I2C_DIOLAN_U2C=m CONFIG_I2C_HELPER_AUTO=y CONFIG_I2C_HID=m CONFIG_I2C_I801=m -CONFIG_I2C_IMX_LPI2C=m CONFIG_I2C_ISCH=m CONFIG_I2C_ISMT=m CONFIG_I2C_MLXCPLD=m @@ -1952,6 +1953,7 @@ CONFIG_IIO_ST_ACCEL_SPI_3AXIS=m CONFIG_IIO_ST_GYRO_3AXIS=m CONFIG_IIO_ST_GYRO_I2C_3AXIS=m CONFIG_IIO_ST_GYRO_SPI_3AXIS=m +# CONFIG_IIO_ST_LSM6DSX is not set CONFIG_IIO_ST_MAGN_3AXIS=m # CONFIG_IIO_ST_PRESS is not set CONFIG_IIO_SW_DEVICE=m @@ -1968,6 +1970,7 @@ CONFIG_IMA_MEASURE_PCR_IDX=10 # CONFIG_INA2XX_ADC is not set CONFIG_INET6_AH=m CONFIG_INET6_ESP=m +CONFIG_INET6_ESP_OFFLOAD=m CONFIG_INET6_IPCOMP=m CONFIG_INET6_XFRM_MODE_BEET=m CONFIG_INET6_XFRM_MODE_ROUTEOPTIMIZATION=m @@ -1977,6 +1980,7 @@ CONFIG_INET_AH=m CONFIG_INET_DIAG_DESTROY=y CONFIG_INET_DIAG=m CONFIG_INET_ESP=m +CONFIG_INET_ESP_OFFLOAD=m CONFIG_INET_IPCOMP=m CONFIG_INET_RAW_DIAG=m CONFIG_INET_TUNNEL=m @@ -1985,6 +1989,7 @@ CONFIG_INET_XFRM_MODE_BEET=m CONFIG_INET_XFRM_MODE_TRANSPORT=m CONFIG_INET_XFRM_MODE_TUNNEL=m CONFIG_INET=y +# CONFIG_INFINIBAND_BNXT_RE is not set # CONFIG_INFINIBAND_CXGB3_DEBUG is not set CONFIG_INFINIBAND_CXGB3=m CONFIG_INFINIBAND_CXGB4=m @@ -2255,6 +2260,7 @@ CONFIG_IP_VS_SH_TAB_BITS=8 CONFIG_IP_VS_TAB_BITS=12 CONFIG_IP_VS_WLC=m CONFIG_IP_VS_WRR=m +CONFIG_IPVTAP=m # CONFIG_IPW2100_DEBUG is not set CONFIG_IPW2100=m CONFIG_IPW2100_MONITOR=y @@ -2301,6 +2307,7 @@ CONFIG_IR_SERIAL=m CONFIG_IR_SERIAL_TRANSMITTER=y CONFIG_IR_SHARP_DECODER=m CONFIG_IR_SONY_DECODER=m +CONFIG_IR_SPI=m CONFIG_IR_STREAMZAP=m CONFIG_IR_TTUSBIR=m CONFIG_IRTTY_SIR=m @@ -2457,6 +2464,7 @@ CONFIG_KEYBOARD_PMIC8XXX=m # CONFIG_KEYBOARD_SUNKBD is not set # CONFIG_KEYBOARD_TCA6416 is not set # CONFIG_KEYBOARD_TCA8418 is not set +CONFIG_KEYBOARD_TM2_TOUCHKEY=m # CONFIG_KEYBOARD_XTKBD is not set CONFIG_KEY_DH_OPERATIONS=y CONFIG_KEYS=y @@ -2468,7 +2476,7 @@ CONFIG_KGDB_TESTS=y CONFIG_KGDB=y CONFIG_KINGSUN_DONGLE=m # CONFIG_KMX61 is not set -CONFIG_KPROBE_EVENT=y +CONFIG_KPROBE_EVENTS=y # CONFIG_KPROBES_SANITY_TEST is not set CONFIG_KPROBES=y CONFIG_KS0108_DELAY=2 @@ -2521,6 +2529,7 @@ CONFIG_LDM_PARTITION=y # CONFIG_LEDS_BCM6358 is not set # CONFIG_LEDS_BD2802 is not set CONFIG_LEDS_BLINKM=m +CONFIG_LEDS_BRIGHTNESS_HW_CHANGED=y CONFIG_LEDS_CLASS_FLASH=m CONFIG_LEDS_CLASS=y CONFIG_LEDS_CLEVO_MAIL=m @@ -2637,6 +2646,8 @@ CONFIG_LOOPBACK_TARGET=m CONFIG_LPC_ICH=m CONFIG_LP_CONSOLE=y CONFIG_LPC_SCH=m +CONFIG_LPFC_NVME_INITIATOR=y +CONFIG_LPFC_NVME_TARGET=y CONFIG_LSI_ET1011C_PHY=m CONFIG_LSM_MMAP_MIN_ADDR=65536 # CONFIG_LTC2485 is not set @@ -2675,6 +2686,7 @@ CONFIG_MACVLAN=m CONFIG_MACVTAP=m # CONFIG_MAG3110 is not set CONFIG_MAGIC_SYSRQ_DEFAULT_ENABLE=0x0 +CONFIG_MAGIC_SYSRQ_SERIAL=y CONFIG_MAGIC_SYSRQ=y # CONFIG_MAILBOX is not set # CONFIG_MAILBOX_TEST is not set @@ -2683,10 +2695,12 @@ CONFIG_MANTIS_CORE=m CONFIG_MARVELL_PHY=m # CONFIG_MATH_EMULATION is not set # CONFIG_MAX1027 is not set +# CONFIG_MAX11100 is not set # CONFIG_MAX1363 is not set CONFIG_MAX30100=m # CONFIG_MAX44000 is not set # CONFIG_MAX517 is not set +# CONFIG_MAX5481 is not set # CONFIG_MAX5487 is not set # CONFIG_MAX5821 is not set # CONFIG_MAX63XX_WATCHDOG is not set @@ -2762,7 +2776,6 @@ CONFIG_MEMSTICK_TIFM_MS=m # CONFIG_MEMSTICK_UNSAFE_RESUME is not set # CONFIG_MEMTEST is not set # CONFIG_MEN_A21_WDT is not set -CONFIG_MESON_GXL_PHY=m CONFIG_MESSAGE_LOGLEVEL_DEFAULT=4 # CONFIG_MFD_88PM800 is not set # CONFIG_MFD_88PM805 is not set @@ -2781,6 +2794,7 @@ CONFIG_MESSAGE_LOGLEVEL_DEFAULT=4 # CONFIG_MFD_AXP20X is not set # CONFIG_MFD_BCM590XX is not set CONFIG_MFD_CORE=y +CONFIG_MFD_CPCAP=m # CONFIG_MFD_CROS_EC is not set CONFIG_MFD_CS5535=m # CONFIG_MFD_DA9052_I2C is not set @@ -2830,7 +2844,6 @@ CONFIG_MFD_SM501_GPIO=y CONFIG_MFD_SM501=m # CONFIG_MFD_SMSC is not set # CONFIG_MFD_STMPE is not set -CONFIG_MFD_SUN4I_GPADC=m # CONFIG_MFD_SYSCON is not set # CONFIG_MFD_TC3589X is not set # CONFIG_MFD_TC6393XB is not set @@ -2992,6 +3005,7 @@ CONFIG_MPILIB=y CONFIG_MPLS_IPTUNNEL=m CONFIG_MPLS_ROUTING=m # CONFIG_MPU3050_I2C is not set +CONFIG_MQ_IOSCHED_DEADLINE=y # CONFIG_MS5611 is not set # CONFIG_MS5637 is not set # CONFIG_MS_BLOCK is not set @@ -3111,6 +3125,7 @@ CONFIG_NET_ACT_MIRRED=m CONFIG_NET_ACT_NAT=m CONFIG_NET_ACT_PEDIT=m CONFIG_NET_ACT_POLICE=m +CONFIG_NET_ACT_SAMPLE=m CONFIG_NET_ACT_SIMP=m CONFIG_NET_ACT_SKBEDIT=m CONFIG_NET_ACT_SKBMOD=m @@ -3244,6 +3259,7 @@ CONFIG_NETFILTER_XT_TARGET_TRACE=m CONFIG_NETFILTER=y CONFIG_NET_FOU_IP_TUNNELS=y CONFIG_NET_FOU=m +CONFIG_NET_IFE=m CONFIG_NET_IFE_SKBMARK=m CONFIG_NET_IFE_SKBPRIO=m CONFIG_NET_IFE_SKBTCINDEX=m @@ -3254,7 +3270,7 @@ CONFIG_NET_IPIP=m CONFIG_NET_IPVTI=m CONFIG_NET_KEY=m CONFIG_NET_KEY_MIGRATE=y -# CONFIG_NET_L3_MASTER_DEV is not set +CONFIG_NET_L3_MASTER_DEV=y CONFIG_NETLABEL=y CONFIG_NETLINK_DIAG=m CONFIG_NET_MPLS_GSO=m @@ -3307,8 +3323,9 @@ CONFIG_NET_VENDOR_ADAPTEC=y CONFIG_NET_VENDOR_AGERE=y # CONFIG_NET_VENDOR_ALACRITECH is not set CONFIG_NET_VENDOR_ALTEON=y -# CONFIG_NET_VENDOR_AMAZON is not set +CONFIG_NET_VENDOR_AMAZON=y CONFIG_NET_VENDOR_AMD=y +# CONFIG_NET_VENDOR_AQUANTIA is not set CONFIG_NET_VENDOR_ARC=y CONFIG_NET_VENDOR_ATHEROS=y # CONFIG_NET_VENDOR_AURORA is not set @@ -3433,6 +3450,8 @@ CONFIG_NF_LOG_IPV6=m CONFIG_NF_LOG_NETDEV=m CONFIG_NF_NAT=m CONFIG_NF_NAT_SNMP_BASIC=m +# CONFIG_NFP_DEBUG is not set +CONFIG_NFP=m # CONFIG_NFP_NET_DEBUG is not set CONFIG_NFP_NETVF=m CONFIG_NF_REJECT_IPV6=m @@ -3504,11 +3523,13 @@ CONFIG_NFT_REDIR=m CONFIG_NFT_REJECT_IPV4=m CONFIG_NFT_REJECT=m CONFIG_NFT_RT=m +CONFIG_NFT_SET_BITMAP=m CONFIG_NFT_SET_HASH=m CONFIG_NFT_SET_RBTREE=m CONFIG_N_GSM=m CONFIG_N_HDLC=m # CONFIG_NI903X_WDT is not set +CONFIG_NIC7018_WDT=m CONFIG_NILFS2_FS=m CONFIG_NIU=m # CONFIG_NL80211_TESTMODE is not set @@ -3644,6 +3665,7 @@ CONFIG_PANTHERLORD_FF=y CONFIG_PARAVIRT_TIME_ACCOUNTING=y CONFIG_PARAVIRT=y # CONFIG_PARIDE is not set +CONFIG_PARMAN=m CONFIG_PARPORT_1284=y # CONFIG_PARPORT_AX88796 is not set CONFIG_PARPORT=m @@ -3701,6 +3723,7 @@ CONFIG_PATA_TOSHIBA=m CONFIG_PATA_TRIFLEX=m CONFIG_PATA_VIA=m CONFIG_PATA_WINBOND=m +# CONFIG_PC104 is not set CONFIG_PC8736x_GPIO=m # CONFIG_PC87413_WDT is not set CONFIG_PCCARD=y @@ -3772,6 +3795,8 @@ CONFIG_PERSISTENT_KEYRINGS=y CONFIG_PHYLIB=y # CONFIG_PHY_PXA_28NM_HSIC is not set # CONFIG_PHY_PXA_28NM_USB2 is not set +# CONFIG_PHY_QCOM_USB_HSIC is not set +# CONFIG_PHY_QCOM_USB_HS is not set CONFIG_PHYSICAL_ALIGN=0x400000 CONFIG_PHYSICAL_START=0x400000 # CONFIG_PHY_ST_SPEAR1310_MIPHY is not set @@ -3784,10 +3809,12 @@ CONFIG_PINCTRL_BAYTRAIL=y # CONFIG_PINCTRL_BCM281XX is not set CONFIG_PINCTRL_BROXTON=m CONFIG_PINCTRL_CHERRYVIEW=y +# CONFIG_PINCTRL_GEMINILAKE is not set CONFIG_PINCTRL_MSM8994=m # CONFIG_PINCTRL_SINGLE is not set CONFIG_PINCTRL_SUNRISEPOINT=m # CONFIG_PINCTRL_SX150X is not set +# CONFIG_PINCTRL_TI_IODELAY is not set CONFIG_PINCTRL=y CONFIG_PINMUX=y CONFIG_PKCS7_MESSAGE_PARSER=y @@ -3855,6 +3882,7 @@ CONFIG_PPTP=m CONFIG_PREEMPT_VOLUNTARY=y CONFIG_PREVENT_FIRMWARE_BUILD=y CONFIG_PRINTER=m +CONFIG_PRINTK_SAFE_LOG_BUF_SHIFT=12 CONFIG_PRINTK_TIME=y # CONFIG_PRINT_QUOTA_WARNING is not set # CONFIG_PRISM2_USB is not set @@ -3870,11 +3898,13 @@ CONFIG_PROVE_LOCKING=y # CONFIG_PROVE_RCU_REPEATEDLY is not set CONFIG_PROVE_RCU=y # CONFIG_PROVIDE_OHCI1394_DMA_INIT is not set +CONFIG_PSAMPLE=m # CONFIG_PSTORE_CONSOLE is not set # CONFIG_PSTORE_FTRACE is not set # CONFIG_PSTORE_PMSG is not set CONFIG_PSTORE_RAM=m CONFIG_PSTORE=y +CONFIG_PTP_1588_CLOCK_KVM=m CONFIG_PTP_1588_CLOCK=m CONFIG_PTP_1588_CLOCK_PCH=m # CONFIG_PUNIT_ATOM_DEBUG is not set @@ -3888,14 +3918,15 @@ CONFIG_PWM_LPSS_PLATFORM=m # CONFIG_PWM_PCA9685 is not set CONFIG_PWM=y CONFIG_PWRSEQ_EMMC=m +# CONFIG_PWRSEQ_SD8787 is not set CONFIG_PWRSEQ_SIMPLE=m # CONFIG_QCA7000 is not set CONFIG_QCOM_ADSP_PIL=m -# CONFIG_QCOM_EBI2 is not set # CONFIG_QCOM_EMAC is not set # CONFIG_QCOM_HIDMA is not set # CONFIG_QCOM_HIDMA_MGMT is not set CONFIG_QEDE=m +CONFIG_QEDF=m CONFIG_QEDI=m CONFIG_QED=m CONFIG_QED_SRIOV=y @@ -3941,7 +3972,6 @@ CONFIG_RADIO_TERRATEC=m CONFIG_RADIO_TRUST=m CONFIG_RADIO_TYPHOON=m CONFIG_RADIO_WL1273=m -# CONFIG_RADIO_WL128X is not set # depends on TI_ST which we don't enable CONFIG_RADIO_ZOLTRIX=m CONFIG_RAID_ATTRS=m # CONFIG_RANDOM32_SELFTEST is not set @@ -3987,6 +4017,7 @@ CONFIG_REALTEK_AUTOPM=y CONFIG_REALTEK_PHY=m CONFIG_REGMAP_I2C=y CONFIG_REGMAP=y +CONFIG_REGULATOR_CPCAP=m # CONFIG_REGULATOR_DEBUG is not set # CONFIG_REGULATOR is not set # CONFIG_REISERFS_CHECK is not set @@ -4473,6 +4504,7 @@ CONFIG_SENSORS_SIS5595=m CONFIG_SENSORS_SMSC47B397=m CONFIG_SENSORS_SMSC47M192=m CONFIG_SENSORS_SMSC47M1=m +# CONFIG_SENSORS_STTS751 is not set CONFIG_SENSORS_TC654=m CONFIG_SENSORS_TC74=m CONFIG_SENSORS_THMC50=m @@ -4509,13 +4541,16 @@ CONFIG_SERIAL_8250_CS=m # CONFIG_SERIAL_8250_DEPRECATED_OPTIONS is not set # CONFIG_SERIAL_8250_DETECT_IRQ is not set CONFIG_SERIAL_8250_DW=y +CONFIG_SERIAL_8250_EXAR=m CONFIG_SERIAL_8250_EXTENDED=y # CONFIG_SERIAL_8250_FINTEK is not set # CONFIG_SERIAL_8250_INGENIC is not set +CONFIG_SERIAL_8250_LPSS=m CONFIG_SERIAL_8250_MANY_PORTS=y CONFIG_SERIAL_8250_MID=y CONFIG_SERIAL_8250_MOXA=m CONFIG_SERIAL_8250_NR_UARTS=32 +CONFIG_SERIAL_8250_PCI=m CONFIG_SERIAL_8250_RSA=y CONFIG_SERIAL_8250_RT288X=y CONFIG_SERIAL_8250_RUNTIME_UARTS=32 @@ -4528,6 +4563,8 @@ CONFIG_SERIAL_ARC_NR_PORTS=1 # CONFIG_SERIAL_CONEXANT_DIGICOLOR is not set CONFIG_SERIAL_CORE_CONSOLE=y CONFIG_SERIAL_CORE=y +CONFIG_SERIAL_DEV_BUS=y +CONFIG_SERIAL_DEV_CTRL_TTYPORT=y # CONFIG_SERIAL_FSL_LPUART is not set CONFIG_SERIAL_GRLIB_GAISLER_APBUART=m # CONFIG_SERIAL_IFX6X60 is not set @@ -4571,6 +4608,7 @@ CONFIG_SH_ETH=m # CONFIG_SIGMA is not set CONFIG_SIGMATEL_FIR=m CONFIG_SIGNED_PE_FILE_VERIFICATION=y +# CONFIG_SILEAD_DMI is not set CONFIG_SIS190=m CONFIG_SIS900=m # CONFIG_SKFP is not set @@ -4591,6 +4629,7 @@ CONFIG_SLUB_CPU_PARTIAL=y CONFIG_SLUB=y CONFIG_SMARTJOYPLUS_FF=y CONFIG_SMC_IRCC_FIR=m +# CONFIG_SMC is not set # CONFIG_SM_FTL is not set CONFIG_SMP=y # CONFIG_SMSC37B787_WDT is not set @@ -4736,7 +4775,7 @@ CONFIG_SND_SEQUENCER=m CONFIG_SND_SEQUENCER_OSS=y CONFIG_SND_SERIAL_U16550=m CONFIG_SND_SIMPLE_CARD=m -# CONFIG_SND_SIMPLE_SCU_CARD is not set +CONFIG_SND_SIMPLE_SCU_CARD=m CONFIG_SND_SIS7019=m CONFIG_SND_SOC_AC97_CODEC=m # CONFIG_SND_SOC_ADAU1701 is not set @@ -4768,7 +4807,9 @@ CONFIG_SND_SOC_CS42L42=m # CONFIG_SND_SOC_CS4349 is not set # CONFIG_SND_SOC_CS53L30 is not set CONFIG_SND_SOC_DMIC=m -# CONFIG_SND_SOC_ES8328 is not set +CONFIG_SND_SOC_ES8328_I2C=m +CONFIG_SND_SOC_ES8328=m +CONFIG_SND_SOC_ES8328_SPI=m # CONFIG_SND_SOC_FSL_ASOC_CARD is not set # CONFIG_SND_SOC_FSL_ASRC is not set # CONFIG_SND_SOC_FSL_ESAI is not set @@ -4806,6 +4847,7 @@ CONFIG_SND_SOC=m # CONFIG_SND_SOC_MAX9860 is not set # CONFIG_SND_SOC_MSM8916_WCD_ANALOG is not set # CONFIG_SND_SOC_MSM8916_WCD_DIGITAL is not set +CONFIG_SND_SOC_NAU8540=m # CONFIG_SND_SOC_NAU8810 is not set # CONFIG_SND_SOC_PCM1681 is not set # CONFIG_SND_SOC_PCM179X_I2C is not set @@ -4861,7 +4903,6 @@ CONFIG_SND_SOC_TS3A227E=m # CONFIG_SND_SOC_XTFPGA_I2S is not set CONFIG_SND_SONICVIBES=m # CONFIG_SND_SPI is not set -CONFIG_SND_SUN8I_CODEC_ANALOG=m # CONFIG_SND_SUPPORT_OLD_API is not set CONFIG_SND_TRIDENT=m CONFIG_SND_USB_6FIRE=m @@ -4884,9 +4925,11 @@ CONFIG_SND_VIA82XX_MODEM=m CONFIG_SND_VIRMIDI=m CONFIG_SND_VIRTUOSO=m CONFIG_SND_VX222=m +CONFIG_SND_X86=y CONFIG_SND_YMFPCI=m # CONFIG_SOC_CAMERA is not set # CONFIG_SOC_TI is not set +# CONFIG_SOC_ZTE is not set CONFIG_SOFT_WATCHDOG=m CONFIG_SOLARIS_X86_PARTITION=y # CONFIG_SOLO6X10 is not set @@ -4935,6 +4978,7 @@ CONFIG_SQUASHFS_XATTR=y CONFIG_SQUASHFS_XZ=y CONFIG_SQUASHFS_ZLIB=y # CONFIG_SRAM is not set +# CONFIG_SRF08 is not set # CONFIG_SSB_DEBUG is not set CONFIG_SSB_DRIVER_GPIO=y CONFIG_SSB_DRIVER_PCICORE=y @@ -4953,6 +4997,7 @@ CONFIG_STAGING_MEDIA=y CONFIG_STAGING=y CONFIG_STANDALONE=y # CONFIG_STATIC_KEYS_SELFTEST is not set +# CONFIG_STATIC_USERMODEHELPER is not set CONFIG_STE10XP=m # CONFIG_STE_MODEM_RPROC is not set CONFIG_STK3310=m @@ -4967,10 +5012,6 @@ CONFIG_STMMAC_ETH=m CONFIG_STRICT_DEVMEM=y CONFIG_STRIP_ASM_SYMS=y # CONFIG_STRIP is not set -# CONFIG_SUN50I_A64_CCU is not set -# CONFIG_SUN6I_A31_CCU is not set -# CONFIG_SUN8I_A23_CCU is not set -# CONFIG_SUN8I_A33_CCU is not set CONFIG_SUNDANCE=m # CONFIG_SUNDANCE_MMIO is not set CONFIG_SUNGEM=m @@ -4979,7 +5020,6 @@ CONFIG_SUNRPC_DEBUG=y CONFIG_SUNRPC_GSS=m CONFIG_SUNRPC=m CONFIG_SUNRPC_XPRT_RDMA=m -# CONFIG_SUNXI_CCU is not set CONFIG_SURFACE_3_BUTTON=m CONFIG_SURFACE3_WMI=m CONFIG_SURFACE_PRO3_BUTTON=m @@ -5063,8 +5103,6 @@ CONFIG_TCP_CONG_YEAH=m CONFIG_TCP_MD5SIG=y # CONFIG_TCS3414 is not set # CONFIG_TCS3472 is not set -CONFIG_TEGRA_GMI=m -CONFIG_TEGRA_IVC=y CONFIG_TEHUTI=m CONFIG_TEKRAM_DONGLE=m CONFIG_TELCLOCK=m @@ -5078,9 +5116,11 @@ CONFIG_TEST_ASYNC_DRIVER_PROBE=m CONFIG_TEST_KSTRTOX=y CONFIG_TEST_LIST_SORT=y # CONFIG_TEST_LKM is not set +# CONFIG_TEST_PARMAN is not set # CONFIG_TEST_POWER is not set # CONFIG_TEST_PRINTF is not set # CONFIG_TEST_RHASHTABLE is not set +# CONFIG_TEST_SORT is not set # CONFIG_TEST_STATIC_KEYS is not set # CONFIG_TEST_STRING_HELPERS is not set # CONFIG_TEST_UDELAY is not set @@ -5112,6 +5152,7 @@ CONFIG_THRUSTMASTER_FF=y # CONFIG_TI_ADC128S052 is not set # CONFIG_TI_ADC161S626 is not set # CONFIG_TI_ADS1015 is not set +# CONFIG_TI_ADS7950 is not set # CONFIG_TI_ADS8688 is not set # CONFIG_TI_CPSW_ALE is not set # CONFIG_TI_DAC7512 is not set @@ -5126,9 +5167,11 @@ CONFIG_TIPC_MEDIA_UDP=y CONFIG_TI_SCI_PROTOCOL=m # CONFIG_TI_ST is not set # CONFIG_TI_SYSCON_RESET is not set +# CONFIG_TI_TLC4541 is not set CONFIG_TLAN=m # CONFIG_TMD_HERMES is not set # CONFIG_TMP006 is not set +# CONFIG_TMP007 is not set CONFIG_TMPFS_POSIX_ACL=y CONFIG_TMPFS_XATTR=y CONFIG_TMPFS=y @@ -5203,6 +5246,7 @@ CONFIG_TOUCHSCREEN_WACOM_I2C=m CONFIG_TOUCHSCREEN_WACOM_W8001=m # CONFIG_TOUCHSCREEN_WDT87XX_I2C is not set # CONFIG_TOUCHSCREEN_WM97XX is not set +CONFIG_TOUCHSCREEN_ZET6223=m CONFIG_TOUCHSCREEN_ZFORCE=m # CONFIG_TPL0102 is not set # CONFIG_TPS6105X is not set @@ -5270,7 +5314,7 @@ CONFIG_UNIX_DIAG=m CONFIG_UNIXWARE_DISKLABEL=y CONFIG_UNIX=y CONFIG_UNUSED_SYMBOLS=y -CONFIG_UPROBE_EVENT=y +CONFIG_UPROBE_EVENTS=y # CONFIG_US5182D is not set CONFIG_USB_ACM=m CONFIG_USB_ADUTUX=m @@ -5287,6 +5331,7 @@ CONFIG_USB_CATC=m CONFIG_USB_CDC_PHONET=m CONFIG_USB_CHAOSKEY=m # CONFIG_USB_CHIPIDEA is not set +# CONFIG_USB_CHIPIDEA_ULPI is not set CONFIG_USB_CXACRU=m # CONFIG_USB_CYPRESS_CY7C63 is not set # CONFIG_USB_CYTHERM is not set @@ -5371,6 +5416,7 @@ CONFIG_USB_HID=y CONFIG_USB_HSIC_USB3503=m CONFIG_USB_HSIC_USB4604=m CONFIG_USB_HSO=m +CONFIG_USB_HUB_USB251XB=m CONFIG_USB_HWA_HCD=m CONFIG_USB_IDMOUSE=m CONFIG_USB_IOWARRIOR=m @@ -5515,6 +5561,7 @@ CONFIG_USB_SERIAL_SPCP8X5=m CONFIG_USB_SERIAL_SSU100=m CONFIG_USB_SERIAL_SYMBOL=m CONFIG_USB_SERIAL_TI=m +CONFIG_USB_SERIAL_UPD78F0730=m CONFIG_USB_SERIAL_VISOR=m CONFIG_USB_SERIAL_WHITEHEAT=m # CONFIG_USB_SERIAL_WISHBONE is not set @@ -5604,6 +5651,7 @@ CONFIG_VFIO_PCI=m CONFIG_VFIO_PCI_VGA=y CONFIG_VGA_ARB_MAX_GPUS=16 CONFIG_VGA_ARB=y +# CONFIG_VGACON_SOFT_SCROLLBACK_PERSISTENT_ENABLE_BY_DEFAULT is not set CONFIG_VGACON_SOFT_SCROLLBACK_SIZE=64 CONFIG_VGACON_SOFT_SCROLLBACK=y CONFIG_VGA_CONSOLE=y @@ -5656,6 +5704,7 @@ CONFIG_VIDEO_HDPVR=m CONFIG_VIDEO_HEXIUM_GEMINI=m CONFIG_VIDEO_HEXIUM_ORION=m # CONFIG_VIDEO_IVTV_ALSA is not set +# CONFIG_VIDEO_IVTV_DEPRECATED_IOCTLS is not set CONFIG_VIDEO_IVTV=m # CONFIG_VIDEO_M5MOLS is not set # CONFIG_VIDEO_MEM2MEM_DEINTERLACE is not set @@ -5677,7 +5726,6 @@ CONFIG_VIDEO_SAA7134_RC=y CONFIG_VIDEO_SAA7146=m CONFIG_VIDEO_SAA7146_VV=m CONFIG_VIDEO_SAA7164=m -CONFIG_VIDEO_SAMSUNG_S5P_CEC=m # CONFIG_VIDEO_SH_MOBILE_CEU is not set # CONFIG_VIDEO_SH_MOBILE_CSI2 is not set # CONFIG_VIDEO_SH_VEU is not set @@ -5714,6 +5762,7 @@ CONFIG_VIDEO_ZORAN_ZR36060=m # CONFIG_VIRT_DRIVERS is not set CONFIG_VIRTIO_BALLOON=m CONFIG_VIRTIO_BLK=m +CONFIG_VIRTIO_BLK_SCSI=y CONFIG_VIRTIO_CONSOLE=m CONFIG_VIRTIO_INPUT=m # CONFIG_VIRTIO_MMIO_CMDLINE_DEVICES is not set @@ -5755,6 +5804,7 @@ CONFIG_W1_MASTER_DS2490=m # CONFIG_W1_MASTER_GPIO is not set # CONFIG_W1_MASTER_MATROX is not set CONFIG_W1_SLAVE_BQ27000=m +CONFIG_W1_SLAVE_DS2405=m CONFIG_W1_SLAVE_DS2406=m CONFIG_W1_SLAVE_DS2408=m # CONFIG_W1_SLAVE_DS2408_READBACK is not set @@ -5827,6 +5877,7 @@ CONFIG_WM8350_POWER=m CONFIG_WM8350_WATCHDOG=m # CONFIG_WQ_POWER_EFFICIENT_DEFAULT is not set CONFIG_WQ_WATCHDOG=y +# CONFIG_WW_MUTEX_SELFTEST is not set # CONFIG_X25 is not set CONFIG_X86_32_IRIS=m # CONFIG_X86_32_NON_STANDARD is not set @@ -5901,6 +5952,7 @@ CONFIG_XEN_NETDEV_BACKEND=m CONFIG_XEN_NETDEV_FRONTEND=m CONFIG_XEN_PCIDEV_BACKEND=m CONFIG_XEN_PCIDEV_FRONTEND=m +CONFIG_XEN_PVH=y CONFIG_XEN_SAVE_RESTORE=y CONFIG_XEN_SCRUB_PAGES=y CONFIG_XEN_SCSI_BACKEND=m diff --git a/kernel-i686-debug.config b/kernel-i686-debug.config index ca49b6d5d..2d2ddcf4d 100644 --- a/kernel-i686-debug.config +++ b/kernel-i686-debug.config @@ -222,10 +222,8 @@ CONFIG_APPLE_PROPERTIES=y # CONFIG_APPLICOM is not set CONFIG_AQUANTIA_PHY=m CONFIG_AR5523=m -# CONFIG_ARCH_TEGRA_186_SOC is not set # CONFIG_ARCNET is not set CONFIG_ARM64_PTDUMP=y -# CONFIG_ARM_SCPI_PROTOCOL is not set # CONFIG_AS3935 is not set CONFIG_ASUS_LAPTOP=m CONFIG_ASUS_NB_WMI=m @@ -383,7 +381,6 @@ CONFIG_BATMAN_ADV_NC=y # CONFIG_BATTERY_DS2781 is not set # CONFIG_BATTERY_DS2782 is not set # CONFIG_BATTERY_GAUGE_LTC2941 is not set -# CONFIG_BATTERY_GOLDFISH is not set # CONFIG_BATTERY_MAX17040 is not set # CONFIG_BATTERY_MAX17042 is not set CONFIG_BATTERY_OLPC=y @@ -427,6 +424,7 @@ CONFIG_BINFMT_SCRIPT=y CONFIG_BLK_CGROUP=y # CONFIG_BLK_CMDLINE_PARSER is not set CONFIG_BLK_CPQ_CISS_DA=m +CONFIG_BLK_DEBUG_FS=y CONFIG_BLK_DEV_3W_XXXX_RAID=m CONFIG_BLK_DEV_AMD74XX=y CONFIG_BLK_DEV_BSGLIB=y @@ -466,6 +464,7 @@ CONFIG_BLK_DEV_THROTTLING=y CONFIG_BLK_DEV_UMEM=m CONFIG_BLK_DEV=y CONFIG_BLK_DEV_ZONED=y +CONFIG_BLK_SED_OPAL=y CONFIG_BLK_WBT_MQ=y # CONFIG_BLK_WBT_SQ is not set CONFIG_BLK_WBT=y @@ -561,6 +560,7 @@ CONFIG_BT_HCIUART_INTEL=y CONFIG_BT_HCIUART_LL=y CONFIG_BT_HCIUART=m CONFIG_BT_HCIUART_MRVL=y +CONFIG_BT_HCIUART_NOKIA=m CONFIG_BT_HCIUART_QCA=y CONFIG_BT_HCIVHCI=m CONFIG_BT_HIDP=m @@ -661,6 +661,7 @@ CONFIG_CEPH_LIB_PRETTYDEBUG=y # CONFIG_CEPH_LIB_USE_DNS_RESOLVER is not set CONFIG_CFAG12864B=m CONFIG_CFAG12864B_RATE=20 +CONFIG_CFG80211_CRDA_SUPPORT=y CONFIG_CFG80211_DEBUGFS=y CONFIG_CFG80211_DEFAULT_PS=y # CONFIG_CFG80211_DEVELOPER_WARNINGS is not set @@ -678,6 +679,7 @@ CONFIG_CGROUP_NET_CLASSID=y CONFIG_CGROUP_NET_PRIO=y CONFIG_CGROUP_PERF=y CONFIG_CGROUP_PIDS=y +# CONFIG_CGROUP_RDMA is not set CONFIG_CGROUP_SCHED=y CONFIG_CGROUPS=y # CONFIG_CHARGER_BQ2415X is not set @@ -685,6 +687,7 @@ CONFIG_CGROUPS=y # CONFIG_CHARGER_BQ24257 is not set # CONFIG_CHARGER_BQ24735 is not set # CONFIG_CHARGER_BQ25890 is not set +# CONFIG_CHARGER_DETECTOR_MAX14656 is not set # CONFIG_CHARGER_GPIO is not set # CONFIG_CHARGER_ISP1704 is not set # CONFIG_CHARGER_LP8727 is not set @@ -692,6 +695,7 @@ CONFIG_CGROUPS=y # CONFIG_CHARGER_PCF50633 is not set # CONFIG_CHARGER_QCOM_SMBB is not set # CONFIG_CHARGER_RT9455 is not set +# CONFIG_CHARGER_SBS is not set CONFIG_CHARGER_SMB347=m # CONFIG_CHECKPOINT_RESTORE is not set CONFIG_CHELSIO_T1_1G=y @@ -732,6 +736,7 @@ CONFIG_CLS_U32_PERF=y CONFIG_CM32181=m # CONFIG_CM3232 is not set # CONFIG_CM3323 is not set +CONFIG_CM3605=m # CONFIG_CM36651 is not set # CONFIG_CMA is not set # CONFIG_CMDLINE_BOOL is not set @@ -742,24 +747,13 @@ CONFIG_CODA_FS=m # CONFIG_COMMON_CLK_CDCE706 is not set # CONFIG_COMMON_CLK_CDCE925 is not set # CONFIG_COMMON_CLK_CS2000_CP is not set -# CONFIG_COMMON_CLK_HI3516CV300 is not set -# CONFIG_COMMON_CLK_HI3519 is not set -# CONFIG_COMMON_CLK_HI3798CV200 is not set -# CONFIG_COMMON_CLK_MT2701_BDPSYS is not set -# CONFIG_COMMON_CLK_MT2701_ETHSYS is not set -# CONFIG_COMMON_CLK_MT2701_HIFSYS is not set -# CONFIG_COMMON_CLK_MT2701_IMGSYS is not set -# CONFIG_COMMON_CLK_MT2701 is not set -# CONFIG_COMMON_CLK_MT2701_MMSYS is not set -# CONFIG_COMMON_CLK_MT2701_VDECSYS is not set -# CONFIG_COMMON_CLK_MT8135 is not set -# CONFIG_COMMON_CLK_MT8173 is not set -# CONFIG_COMMON_CLK_OXNAS is not set # CONFIG_COMMON_CLK_PWM is not set # CONFIG_COMMON_CLK_SI514 is not set # CONFIG_COMMON_CLK_SI5351 is not set # CONFIG_COMMON_CLK_SI570 is not set +# CONFIG_COMMON_CLK_VC5 is not set # CONFIG_COMMON_CLK_XLNX_CLKWZRD is not set +# CONFIG_COMMON_RESET_HI3660 is not set CONFIG_COMPACTION=y CONFIG_COMPAL_LAPTOP=m # CONFIG_COMPAT_BRK is not set @@ -809,6 +803,7 @@ CONFIG_CROSS_MEMORY_ATTACH=y CONFIG_CRYPTO_842=m CONFIG_CRYPTO_AES_586=y CONFIG_CRYPTO_AES_NI_INTEL=y +CONFIG_CRYPTO_AES_TI=m CONFIG_CRYPTO_AES=y CONFIG_CRYPTO_ANSI_CPRNG=m CONFIG_CRYPTO_ANUBIS=m @@ -824,13 +819,11 @@ CONFIG_CRYPTO_CCM=m CONFIG_CRYPTO_CHACHA20=m CONFIG_CRYPTO_CHACHA20POLY1305=m CONFIG_CRYPTO_CMAC=m -CONFIG_CRYPTO_CRC32_ARM_CE=m CONFIG_CRYPTO_CRC32C_INTEL=m CONFIG_CRYPTO_CRC32C_VPMSUM=m CONFIG_CRYPTO_CRC32C=y CONFIG_CRYPTO_CRC32=m CONFIG_CRYPTO_CRC32_PCLMUL=m -CONFIG_CRYPTO_CRCT10DIF_ARM_CE=m CONFIG_CRYPTO_CRYPTD=y CONFIG_CRYPTO_CTR=y CONFIG_CRYPTO_CTS=y @@ -980,6 +973,7 @@ CONFIG_DEBUG_OBJECTS=y CONFIG_DEBUG_PERF_USE_VMALLOC=y CONFIG_DEBUG_PI_LIST=y # CONFIG_DEBUG_PINCTRL is not set +CONFIG_DEBUG_REFCOUNT=y CONFIG_DEBUG_RODATA_TEST=y CONFIG_DEBUG_RT_MUTEXES=y # CONFIG_DEBUG_SECTION_MISMATCH is not set @@ -1024,6 +1018,7 @@ CONFIG_DEVFREQ_GOV_SIMPLE_ONDEMAND=m # CONFIG_DEVFREQ_GOV_USERSPACE is not set # CONFIG_DEVKMEM is not set CONFIG_DEVMEM=y +# CONFIG_DEVPORT is not set CONFIG_DEVTMPFS_MOUNT=y CONFIG_DEVTMPFS=y # CONFIG_DGAP is not set @@ -1095,6 +1090,7 @@ CONFIG_DRM_ANALOGIX_ANX78XX=m CONFIG_DRM_AST=m CONFIG_DRM_BOCHS=m CONFIG_DRM_CIRRUS_QEMU=m +# CONFIG_DRM_DEBUG_MM_SELFTEST is not set CONFIG_DRM_DP_AUX_CHARDEV=y # CONFIG_DRM_DUMB_VGA_DAC is not set CONFIG_DRM_DW_HDMI_I2S_AUDIO=m @@ -1105,7 +1101,7 @@ CONFIG_DRM_GMA500=m CONFIG_DRM_HISI_HIBMC=m CONFIG_DRM_I2C_ADV7511_AUDIO=y CONFIG_DRM_I2C_ADV7511=m -# CONFIG_DRM_I2C_ADV7533 is not set +CONFIG_DRM_I2C_ADV7533=y CONFIG_DRM_I2C_CH7006=m CONFIG_DRM_I2C_NXP_TDA998X=m CONFIG_DRM_I2C_SIL164=m @@ -1120,7 +1116,6 @@ CONFIG_DRM_I915_USERPTR=y # CONFIG_DRM_LEGACY is not set CONFIG_DRM_LOAD_EDID_FIRMWARE=y CONFIG_DRM=m -# CONFIG_DRM_MALI_DISPLAY is not set CONFIG_DRM_MGAG200=m # CONFIG_DRM_MGA is not set CONFIG_DRM_MXSFB=m @@ -1146,6 +1141,7 @@ CONFIG_DRM_RADEON_USERPTR=y CONFIG_DRM_SIL_SII8620=m # CONFIG_DRM_SIS is not set # CONFIG_DRM_TDFX is not set +# CONFIG_DRM_TINYDRM is not set CONFIG_DRM_TI_TFP410=m # CONFIG_DRM_TOSHIBA_TC358767 is not set CONFIG_DRM_UDL=m @@ -1240,6 +1236,7 @@ CONFIG_DVB_USB_UMT_010=m CONFIG_DVB_USB_V2=m CONFIG_DVB_USB_VP702X=m CONFIG_DVB_USB_VP7045=m +CONFIG_DVB_USB_ZD1301=m # CONFIG_DW_DMAC_BIG_ENDIAN_IO is not set CONFIG_DW_DMAC_CORE=y CONFIG_DW_DMAC=m @@ -1290,6 +1287,7 @@ CONFIG_EEPROM_93CX6=m # CONFIG_EEPROM_93XX46 is not set CONFIG_EEPROM_AT24=m # CONFIG_EEPROM_AT25 is not set +CONFIG_EEPROM_IDT_89HPESX=m CONFIG_EEPROM_LEGACY=m CONFIG_EEPROM_MAX6875=m CONFIG_EFI_ALLOW_SECURE_BOOT_EXIT=y @@ -1311,10 +1309,10 @@ CONFIG_EFIVAR_FS=y # CONFIG_EFI_VARS_PSTORE is not set CONFIG_EFI=y # CONFIG_EFS_FS is not set -# CONFIG_EMAC_ROCKCHIP is not set # CONFIG_EMBEDDED is not set CONFIG_ENABLE_MUST_CHECK=y # CONFIG_ENABLE_WARN_DEPRECATED is not set +CONFIG_ENA_ETHERNET=m # CONFIG_ENC28J60 is not set CONFIG_ENCLOSURE_SERVICES=m CONFIG_ENCRYPTED_KEYS=y @@ -1343,6 +1341,7 @@ CONFIG_EXT4_FS_SECURITY=y CONFIG_EXT4_FS=y CONFIG_EXT4_USE_FOR_EXT2=y # CONFIG_EXTCON_ADC_JACK is not set +CONFIG_EXTCON_INTEL_INT3496=m # CONFIG_EXTCON is not set # CONFIG_EXTCON_QCOM_SPMI_MISC is not set CONFIG_EXTRA_FIRMWARE="" @@ -1395,7 +1394,6 @@ CONFIG_FB_EFI=y CONFIG_FB_GEODE_GX=y CONFIG_FB_GEODE_LX=y CONFIG_FB_GEODE=y -# CONFIG_FB_GOLDFISH is not set # CONFIG_FB_HECUBA is not set # CONFIG_FB_HGA is not set CONFIG_FB_HYPERV=m @@ -1496,6 +1494,7 @@ CONFIG_FSCACHE_OBJECT_LIST=y CONFIG_FSCACHE_STATS=y CONFIG_FS_DAX=y CONFIG_FS_ENCRYPTION=y +CONFIG_FSI=m # CONFIG_FSL_EDMA is not set # CONFIG_FSL_PQ_MDIO is not set CONFIG_FS_MBCACHE=y @@ -1571,6 +1570,7 @@ CONFIG_GIRBIL_DONGLE=m CONFIG_GPIO_CRYSTAL_COVE=y CONFIG_GPIO_CS5535=y # CONFIG_GPIO_DWAPB is not set +CONFIG_GPIO_EXAR=m # CONFIG_GPIO_F7188X is not set # CONFIG_GPIO_GENERIC_PLATFORM is not set # CONFIG_GPIO_GRGPIO is not set @@ -1590,6 +1590,7 @@ CONFIG_GPIOLIB=y # CONFIG_GPIO_PCA953X is not set # CONFIG_GPIO_PCF857X is not set # CONFIG_GPIO_PCH is not set +CONFIG_GPIO_PCI_IDIO_16=m # CONFIG_GPIO_PISOSR is not set # CONFIG_GPIO_RDC321X is not set # CONFIG_GPIO_SCH311X is not set @@ -1597,7 +1598,7 @@ CONFIG_GPIO_SCH=m # CONFIG_GPIO_SODAVILLE is not set # CONFIG_GPIO_SX150X is not set # CONFIG_GPIO_SYSCON is not set -CONFIG_GPIO_SYSFS=y +# CONFIG_GPIO_SYSFS is not set # CONFIG_GPIO_TPIC2810 is not set # CONFIG_GPIO_TS4900 is not set # CONFIG_GPIO_TS5500 is not set @@ -1607,7 +1608,6 @@ CONFIG_GPIO_VIPERBOARD=m CONFIG_GPIO_WHISKEY_COVE=y # CONFIG_GPIO_WS16C48 is not set # CONFIG_GPIO_XILINX is not set -# CONFIG_GPIO_ZX is not set CONFIG_GREENASIA_FF=y # CONFIG_GREYBUS is not set # CONFIG_GS_FPGABOOT is not set @@ -1618,6 +1618,7 @@ CONFIG_HANGCHECK_TIMER=m CONFIG_HAPPYMEAL=m CONFIG_HARDENED_USERCOPY=y # CONFIG_HDC100X is not set +CONFIG_HDMI_LPE_AUDIO=m CONFIG_HEADERS_CHECK=y CONFIG_HERMES_CACHE_FW_ON_INIT=y CONFIG_HERMES=m @@ -1816,6 +1817,7 @@ CONFIG_HW_RANDOM_VIA=m CONFIG_HW_RANDOM_VIRTIO=m CONFIG_HW_RANDOM=y CONFIG_HWSPINLOCK=m +# CONFIG_HX711 is not set CONFIG_HYPERV_BALLOON=m CONFIG_HYPERVISOR_GUEST=y CONFIG_HYPERV_KEYBOARD=m @@ -1857,7 +1859,6 @@ CONFIG_I2C_DIOLAN_U2C=m CONFIG_I2C_HELPER_AUTO=y CONFIG_I2C_HID=m CONFIG_I2C_I801=m -CONFIG_I2C_IMX_LPI2C=m CONFIG_I2C_ISCH=m CONFIG_I2C_ISMT=m CONFIG_I2C_MLXCPLD=m @@ -1952,6 +1953,7 @@ CONFIG_IIO_ST_ACCEL_SPI_3AXIS=m CONFIG_IIO_ST_GYRO_3AXIS=m CONFIG_IIO_ST_GYRO_I2C_3AXIS=m CONFIG_IIO_ST_GYRO_SPI_3AXIS=m +# CONFIG_IIO_ST_LSM6DSX is not set CONFIG_IIO_ST_MAGN_3AXIS=m # CONFIG_IIO_ST_PRESS is not set CONFIG_IIO_SW_DEVICE=m @@ -1968,6 +1970,7 @@ CONFIG_IMA_MEASURE_PCR_IDX=10 # CONFIG_INA2XX_ADC is not set CONFIG_INET6_AH=m CONFIG_INET6_ESP=m +CONFIG_INET6_ESP_OFFLOAD=m CONFIG_INET6_IPCOMP=m CONFIG_INET6_XFRM_MODE_BEET=m CONFIG_INET6_XFRM_MODE_ROUTEOPTIMIZATION=m @@ -1977,6 +1980,7 @@ CONFIG_INET_AH=m CONFIG_INET_DIAG_DESTROY=y CONFIG_INET_DIAG=m CONFIG_INET_ESP=m +CONFIG_INET_ESP_OFFLOAD=m CONFIG_INET_IPCOMP=m CONFIG_INET_RAW_DIAG=m CONFIG_INET_TUNNEL=m @@ -1985,6 +1989,7 @@ CONFIG_INET_XFRM_MODE_BEET=m CONFIG_INET_XFRM_MODE_TRANSPORT=m CONFIG_INET_XFRM_MODE_TUNNEL=m CONFIG_INET=y +# CONFIG_INFINIBAND_BNXT_RE is not set # CONFIG_INFINIBAND_CXGB3_DEBUG is not set CONFIG_INFINIBAND_CXGB3=m CONFIG_INFINIBAND_CXGB4=m @@ -2255,6 +2260,7 @@ CONFIG_IP_VS_SH_TAB_BITS=8 CONFIG_IP_VS_TAB_BITS=12 CONFIG_IP_VS_WLC=m CONFIG_IP_VS_WRR=m +CONFIG_IPVTAP=m # CONFIG_IPW2100_DEBUG is not set CONFIG_IPW2100=m CONFIG_IPW2100_MONITOR=y @@ -2301,6 +2307,7 @@ CONFIG_IR_SERIAL=m CONFIG_IR_SERIAL_TRANSMITTER=y CONFIG_IR_SHARP_DECODER=m CONFIG_IR_SONY_DECODER=m +CONFIG_IR_SPI=m CONFIG_IR_STREAMZAP=m CONFIG_IR_TTUSBIR=m CONFIG_IRTTY_SIR=m @@ -2457,6 +2464,7 @@ CONFIG_KEYBOARD_PMIC8XXX=m # CONFIG_KEYBOARD_SUNKBD is not set # CONFIG_KEYBOARD_TCA6416 is not set # CONFIG_KEYBOARD_TCA8418 is not set +CONFIG_KEYBOARD_TM2_TOUCHKEY=m # CONFIG_KEYBOARD_XTKBD is not set CONFIG_KEY_DH_OPERATIONS=y CONFIG_KEYS=y @@ -2468,7 +2476,7 @@ CONFIG_KGDB_TESTS=y CONFIG_KGDB=y CONFIG_KINGSUN_DONGLE=m # CONFIG_KMX61 is not set -CONFIG_KPROBE_EVENT=y +CONFIG_KPROBE_EVENTS=y # CONFIG_KPROBES_SANITY_TEST is not set CONFIG_KPROBES=y CONFIG_KS0108_DELAY=2 @@ -2521,6 +2529,7 @@ CONFIG_LDM_PARTITION=y # CONFIG_LEDS_BCM6358 is not set # CONFIG_LEDS_BD2802 is not set CONFIG_LEDS_BLINKM=m +CONFIG_LEDS_BRIGHTNESS_HW_CHANGED=y CONFIG_LEDS_CLASS_FLASH=m CONFIG_LEDS_CLASS=y CONFIG_LEDS_CLEVO_MAIL=m @@ -2637,6 +2646,8 @@ CONFIG_LOOPBACK_TARGET=m CONFIG_LPC_ICH=m CONFIG_LP_CONSOLE=y CONFIG_LPC_SCH=m +CONFIG_LPFC_NVME_INITIATOR=y +CONFIG_LPFC_NVME_TARGET=y CONFIG_LSI_ET1011C_PHY=m CONFIG_LSM_MMAP_MIN_ADDR=65536 # CONFIG_LTC2485 is not set @@ -2675,6 +2686,7 @@ CONFIG_MACVLAN=m CONFIG_MACVTAP=m # CONFIG_MAG3110 is not set CONFIG_MAGIC_SYSRQ_DEFAULT_ENABLE=0x0 +CONFIG_MAGIC_SYSRQ_SERIAL=y CONFIG_MAGIC_SYSRQ=y # CONFIG_MAILBOX is not set # CONFIG_MAILBOX_TEST is not set @@ -2683,10 +2695,12 @@ CONFIG_MANTIS_CORE=m CONFIG_MARVELL_PHY=m # CONFIG_MATH_EMULATION is not set # CONFIG_MAX1027 is not set +# CONFIG_MAX11100 is not set # CONFIG_MAX1363 is not set CONFIG_MAX30100=m # CONFIG_MAX44000 is not set # CONFIG_MAX517 is not set +# CONFIG_MAX5481 is not set # CONFIG_MAX5487 is not set # CONFIG_MAX5821 is not set # CONFIG_MAX63XX_WATCHDOG is not set @@ -2762,7 +2776,6 @@ CONFIG_MEMSTICK_TIFM_MS=m # CONFIG_MEMSTICK_UNSAFE_RESUME is not set # CONFIG_MEMTEST is not set # CONFIG_MEN_A21_WDT is not set -CONFIG_MESON_GXL_PHY=m CONFIG_MESSAGE_LOGLEVEL_DEFAULT=4 # CONFIG_MFD_88PM800 is not set # CONFIG_MFD_88PM805 is not set @@ -2781,6 +2794,7 @@ CONFIG_MESSAGE_LOGLEVEL_DEFAULT=4 # CONFIG_MFD_AXP20X is not set # CONFIG_MFD_BCM590XX is not set CONFIG_MFD_CORE=y +CONFIG_MFD_CPCAP=m # CONFIG_MFD_CROS_EC is not set CONFIG_MFD_CS5535=m # CONFIG_MFD_DA9052_I2C is not set @@ -2830,7 +2844,6 @@ CONFIG_MFD_SM501_GPIO=y CONFIG_MFD_SM501=m # CONFIG_MFD_SMSC is not set # CONFIG_MFD_STMPE is not set -CONFIG_MFD_SUN4I_GPADC=m # CONFIG_MFD_SYSCON is not set # CONFIG_MFD_TC3589X is not set # CONFIG_MFD_TC6393XB is not set @@ -2992,6 +3005,7 @@ CONFIG_MPILIB=y CONFIG_MPLS_IPTUNNEL=m CONFIG_MPLS_ROUTING=m # CONFIG_MPU3050_I2C is not set +CONFIG_MQ_IOSCHED_DEADLINE=y # CONFIG_MS5611 is not set # CONFIG_MS5637 is not set # CONFIG_MS_BLOCK is not set @@ -3111,6 +3125,7 @@ CONFIG_NET_ACT_MIRRED=m CONFIG_NET_ACT_NAT=m CONFIG_NET_ACT_PEDIT=m CONFIG_NET_ACT_POLICE=m +CONFIG_NET_ACT_SAMPLE=m CONFIG_NET_ACT_SIMP=m CONFIG_NET_ACT_SKBEDIT=m CONFIG_NET_ACT_SKBMOD=m @@ -3244,6 +3259,7 @@ CONFIG_NETFILTER_XT_TARGET_TRACE=m CONFIG_NETFILTER=y CONFIG_NET_FOU_IP_TUNNELS=y CONFIG_NET_FOU=m +CONFIG_NET_IFE=m CONFIG_NET_IFE_SKBMARK=m CONFIG_NET_IFE_SKBPRIO=m CONFIG_NET_IFE_SKBTCINDEX=m @@ -3254,7 +3270,7 @@ CONFIG_NET_IPIP=m CONFIG_NET_IPVTI=m CONFIG_NET_KEY=m CONFIG_NET_KEY_MIGRATE=y -# CONFIG_NET_L3_MASTER_DEV is not set +CONFIG_NET_L3_MASTER_DEV=y CONFIG_NETLABEL=y CONFIG_NETLINK_DIAG=m CONFIG_NET_MPLS_GSO=m @@ -3307,8 +3323,9 @@ CONFIG_NET_VENDOR_ADAPTEC=y CONFIG_NET_VENDOR_AGERE=y # CONFIG_NET_VENDOR_ALACRITECH is not set CONFIG_NET_VENDOR_ALTEON=y -# CONFIG_NET_VENDOR_AMAZON is not set +CONFIG_NET_VENDOR_AMAZON=y CONFIG_NET_VENDOR_AMD=y +# CONFIG_NET_VENDOR_AQUANTIA is not set CONFIG_NET_VENDOR_ARC=y CONFIG_NET_VENDOR_ATHEROS=y # CONFIG_NET_VENDOR_AURORA is not set @@ -3433,6 +3450,8 @@ CONFIG_NF_LOG_IPV6=m CONFIG_NF_LOG_NETDEV=m CONFIG_NF_NAT=m CONFIG_NF_NAT_SNMP_BASIC=m +# CONFIG_NFP_DEBUG is not set +CONFIG_NFP=m # CONFIG_NFP_NET_DEBUG is not set CONFIG_NFP_NETVF=m CONFIG_NF_REJECT_IPV6=m @@ -3504,11 +3523,13 @@ CONFIG_NFT_REDIR=m CONFIG_NFT_REJECT_IPV4=m CONFIG_NFT_REJECT=m CONFIG_NFT_RT=m +CONFIG_NFT_SET_BITMAP=m CONFIG_NFT_SET_HASH=m CONFIG_NFT_SET_RBTREE=m CONFIG_N_GSM=m CONFIG_N_HDLC=m # CONFIG_NI903X_WDT is not set +CONFIG_NIC7018_WDT=m CONFIG_NILFS2_FS=m CONFIG_NIU=m # CONFIG_NL80211_TESTMODE is not set @@ -3644,6 +3665,7 @@ CONFIG_PANTHERLORD_FF=y CONFIG_PARAVIRT_TIME_ACCOUNTING=y CONFIG_PARAVIRT=y # CONFIG_PARIDE is not set +CONFIG_PARMAN=m CONFIG_PARPORT_1284=y # CONFIG_PARPORT_AX88796 is not set CONFIG_PARPORT=m @@ -3701,6 +3723,7 @@ CONFIG_PATA_TOSHIBA=m CONFIG_PATA_TRIFLEX=m CONFIG_PATA_VIA=m CONFIG_PATA_WINBOND=m +# CONFIG_PC104 is not set CONFIG_PC8736x_GPIO=m # CONFIG_PC87413_WDT is not set CONFIG_PCCARD=y @@ -3772,6 +3795,8 @@ CONFIG_PERSISTENT_KEYRINGS=y CONFIG_PHYLIB=y # CONFIG_PHY_PXA_28NM_HSIC is not set # CONFIG_PHY_PXA_28NM_USB2 is not set +# CONFIG_PHY_QCOM_USB_HSIC is not set +# CONFIG_PHY_QCOM_USB_HS is not set CONFIG_PHYSICAL_ALIGN=0x400000 CONFIG_PHYSICAL_START=0x400000 # CONFIG_PHY_ST_SPEAR1310_MIPHY is not set @@ -3784,10 +3809,12 @@ CONFIG_PINCTRL_BAYTRAIL=y # CONFIG_PINCTRL_BCM281XX is not set CONFIG_PINCTRL_BROXTON=m CONFIG_PINCTRL_CHERRYVIEW=y +# CONFIG_PINCTRL_GEMINILAKE is not set CONFIG_PINCTRL_MSM8994=m # CONFIG_PINCTRL_SINGLE is not set CONFIG_PINCTRL_SUNRISEPOINT=m # CONFIG_PINCTRL_SX150X is not set +# CONFIG_PINCTRL_TI_IODELAY is not set CONFIG_PINCTRL=y CONFIG_PINMUX=y CONFIG_PKCS7_MESSAGE_PARSER=y @@ -3855,6 +3882,7 @@ CONFIG_PPTP=m CONFIG_PREEMPT_VOLUNTARY=y CONFIG_PREVENT_FIRMWARE_BUILD=y CONFIG_PRINTER=m +CONFIG_PRINTK_SAFE_LOG_BUF_SHIFT=12 CONFIG_PRINTK_TIME=y # CONFIG_PRINT_QUOTA_WARNING is not set # CONFIG_PRISM2_USB is not set @@ -3870,11 +3898,13 @@ CONFIG_PROVE_LOCKING=y # CONFIG_PROVE_RCU_REPEATEDLY is not set CONFIG_PROVE_RCU=y # CONFIG_PROVIDE_OHCI1394_DMA_INIT is not set +CONFIG_PSAMPLE=m # CONFIG_PSTORE_CONSOLE is not set # CONFIG_PSTORE_FTRACE is not set # CONFIG_PSTORE_PMSG is not set CONFIG_PSTORE_RAM=m CONFIG_PSTORE=y +CONFIG_PTP_1588_CLOCK_KVM=m CONFIG_PTP_1588_CLOCK=m CONFIG_PTP_1588_CLOCK_PCH=m # CONFIG_PUNIT_ATOM_DEBUG is not set @@ -3888,14 +3918,15 @@ CONFIG_PWM_LPSS_PLATFORM=m # CONFIG_PWM_PCA9685 is not set CONFIG_PWM=y CONFIG_PWRSEQ_EMMC=m +# CONFIG_PWRSEQ_SD8787 is not set CONFIG_PWRSEQ_SIMPLE=m # CONFIG_QCA7000 is not set CONFIG_QCOM_ADSP_PIL=m -# CONFIG_QCOM_EBI2 is not set # CONFIG_QCOM_EMAC is not set # CONFIG_QCOM_HIDMA is not set # CONFIG_QCOM_HIDMA_MGMT is not set CONFIG_QEDE=m +CONFIG_QEDF=m CONFIG_QEDI=m CONFIG_QED=m CONFIG_QED_SRIOV=y @@ -3941,7 +3972,6 @@ CONFIG_RADIO_TERRATEC=m CONFIG_RADIO_TRUST=m CONFIG_RADIO_TYPHOON=m CONFIG_RADIO_WL1273=m -# CONFIG_RADIO_WL128X is not set # depends on TI_ST which we don't enable CONFIG_RADIO_ZOLTRIX=m CONFIG_RAID_ATTRS=m # CONFIG_RANDOM32_SELFTEST is not set @@ -3987,6 +4017,7 @@ CONFIG_REALTEK_AUTOPM=y CONFIG_REALTEK_PHY=m CONFIG_REGMAP_I2C=y CONFIG_REGMAP=y +CONFIG_REGULATOR_CPCAP=m # CONFIG_REGULATOR_DEBUG is not set # CONFIG_REGULATOR is not set # CONFIG_REISERFS_CHECK is not set @@ -4473,6 +4504,7 @@ CONFIG_SENSORS_SIS5595=m CONFIG_SENSORS_SMSC47B397=m CONFIG_SENSORS_SMSC47M192=m CONFIG_SENSORS_SMSC47M1=m +# CONFIG_SENSORS_STTS751 is not set CONFIG_SENSORS_TC654=m CONFIG_SENSORS_TC74=m CONFIG_SENSORS_THMC50=m @@ -4509,13 +4541,16 @@ CONFIG_SERIAL_8250_CS=m # CONFIG_SERIAL_8250_DEPRECATED_OPTIONS is not set # CONFIG_SERIAL_8250_DETECT_IRQ is not set CONFIG_SERIAL_8250_DW=y +CONFIG_SERIAL_8250_EXAR=m CONFIG_SERIAL_8250_EXTENDED=y # CONFIG_SERIAL_8250_FINTEK is not set # CONFIG_SERIAL_8250_INGENIC is not set +CONFIG_SERIAL_8250_LPSS=m CONFIG_SERIAL_8250_MANY_PORTS=y CONFIG_SERIAL_8250_MID=y CONFIG_SERIAL_8250_MOXA=m CONFIG_SERIAL_8250_NR_UARTS=32 +CONFIG_SERIAL_8250_PCI=m CONFIG_SERIAL_8250_RSA=y CONFIG_SERIAL_8250_RT288X=y CONFIG_SERIAL_8250_RUNTIME_UARTS=32 @@ -4528,6 +4563,8 @@ CONFIG_SERIAL_ARC_NR_PORTS=1 # CONFIG_SERIAL_CONEXANT_DIGICOLOR is not set CONFIG_SERIAL_CORE_CONSOLE=y CONFIG_SERIAL_CORE=y +CONFIG_SERIAL_DEV_BUS=y +CONFIG_SERIAL_DEV_CTRL_TTYPORT=y # CONFIG_SERIAL_FSL_LPUART is not set CONFIG_SERIAL_GRLIB_GAISLER_APBUART=m # CONFIG_SERIAL_IFX6X60 is not set @@ -4571,6 +4608,7 @@ CONFIG_SH_ETH=m # CONFIG_SIGMA is not set CONFIG_SIGMATEL_FIR=m CONFIG_SIGNED_PE_FILE_VERIFICATION=y +# CONFIG_SILEAD_DMI is not set CONFIG_SIS190=m CONFIG_SIS900=m # CONFIG_SKFP is not set @@ -4591,6 +4629,7 @@ CONFIG_SLUB_CPU_PARTIAL=y CONFIG_SLUB=y CONFIG_SMARTJOYPLUS_FF=y CONFIG_SMC_IRCC_FIR=m +# CONFIG_SMC is not set # CONFIG_SM_FTL is not set CONFIG_SMP=y # CONFIG_SMSC37B787_WDT is not set @@ -4736,7 +4775,7 @@ CONFIG_SND_SEQUENCER=m CONFIG_SND_SEQUENCER_OSS=y CONFIG_SND_SERIAL_U16550=m CONFIG_SND_SIMPLE_CARD=m -# CONFIG_SND_SIMPLE_SCU_CARD is not set +CONFIG_SND_SIMPLE_SCU_CARD=m CONFIG_SND_SIS7019=m CONFIG_SND_SOC_AC97_CODEC=m # CONFIG_SND_SOC_ADAU1701 is not set @@ -4768,7 +4807,9 @@ CONFIG_SND_SOC_CS42L42=m # CONFIG_SND_SOC_CS4349 is not set # CONFIG_SND_SOC_CS53L30 is not set CONFIG_SND_SOC_DMIC=m -# CONFIG_SND_SOC_ES8328 is not set +CONFIG_SND_SOC_ES8328_I2C=m +CONFIG_SND_SOC_ES8328=m +CONFIG_SND_SOC_ES8328_SPI=m # CONFIG_SND_SOC_FSL_ASOC_CARD is not set # CONFIG_SND_SOC_FSL_ASRC is not set # CONFIG_SND_SOC_FSL_ESAI is not set @@ -4806,6 +4847,7 @@ CONFIG_SND_SOC=m # CONFIG_SND_SOC_MAX9860 is not set # CONFIG_SND_SOC_MSM8916_WCD_ANALOG is not set # CONFIG_SND_SOC_MSM8916_WCD_DIGITAL is not set +CONFIG_SND_SOC_NAU8540=m # CONFIG_SND_SOC_NAU8810 is not set # CONFIG_SND_SOC_PCM1681 is not set # CONFIG_SND_SOC_PCM179X_I2C is not set @@ -4861,7 +4903,6 @@ CONFIG_SND_SOC_TS3A227E=m # CONFIG_SND_SOC_XTFPGA_I2S is not set CONFIG_SND_SONICVIBES=m # CONFIG_SND_SPI is not set -CONFIG_SND_SUN8I_CODEC_ANALOG=m # CONFIG_SND_SUPPORT_OLD_API is not set CONFIG_SND_TRIDENT=m CONFIG_SND_USB_6FIRE=m @@ -4884,9 +4925,11 @@ CONFIG_SND_VIA82XX_MODEM=m CONFIG_SND_VIRMIDI=m CONFIG_SND_VIRTUOSO=m CONFIG_SND_VX222=m +CONFIG_SND_X86=y CONFIG_SND_YMFPCI=m # CONFIG_SOC_CAMERA is not set # CONFIG_SOC_TI is not set +# CONFIG_SOC_ZTE is not set CONFIG_SOFT_WATCHDOG=m CONFIG_SOLARIS_X86_PARTITION=y # CONFIG_SOLO6X10 is not set @@ -4935,6 +4978,7 @@ CONFIG_SQUASHFS_XATTR=y CONFIG_SQUASHFS_XZ=y CONFIG_SQUASHFS_ZLIB=y # CONFIG_SRAM is not set +# CONFIG_SRF08 is not set # CONFIG_SSB_DEBUG is not set CONFIG_SSB_DRIVER_GPIO=y CONFIG_SSB_DRIVER_PCICORE=y @@ -4953,6 +4997,7 @@ CONFIG_STAGING_MEDIA=y CONFIG_STAGING=y CONFIG_STANDALONE=y # CONFIG_STATIC_KEYS_SELFTEST is not set +# CONFIG_STATIC_USERMODEHELPER is not set CONFIG_STE10XP=m # CONFIG_STE_MODEM_RPROC is not set CONFIG_STK3310=m @@ -4967,10 +5012,6 @@ CONFIG_STMMAC_ETH=m CONFIG_STRICT_DEVMEM=y CONFIG_STRIP_ASM_SYMS=y # CONFIG_STRIP is not set -# CONFIG_SUN50I_A64_CCU is not set -# CONFIG_SUN6I_A31_CCU is not set -# CONFIG_SUN8I_A23_CCU is not set -# CONFIG_SUN8I_A33_CCU is not set CONFIG_SUNDANCE=m # CONFIG_SUNDANCE_MMIO is not set CONFIG_SUNGEM=m @@ -4979,7 +5020,6 @@ CONFIG_SUNRPC_DEBUG=y CONFIG_SUNRPC_GSS=m CONFIG_SUNRPC=m CONFIG_SUNRPC_XPRT_RDMA=m -# CONFIG_SUNXI_CCU is not set CONFIG_SURFACE_3_BUTTON=m CONFIG_SURFACE3_WMI=m CONFIG_SURFACE_PRO3_BUTTON=m @@ -5063,8 +5103,6 @@ CONFIG_TCP_CONG_YEAH=m CONFIG_TCP_MD5SIG=y # CONFIG_TCS3414 is not set # CONFIG_TCS3472 is not set -CONFIG_TEGRA_GMI=m -CONFIG_TEGRA_IVC=y CONFIG_TEHUTI=m CONFIG_TEKRAM_DONGLE=m CONFIG_TELCLOCK=m @@ -5078,9 +5116,11 @@ CONFIG_TEST_ASYNC_DRIVER_PROBE=m CONFIG_TEST_KSTRTOX=y CONFIG_TEST_LIST_SORT=y # CONFIG_TEST_LKM is not set +# CONFIG_TEST_PARMAN is not set # CONFIG_TEST_POWER is not set # CONFIG_TEST_PRINTF is not set # CONFIG_TEST_RHASHTABLE is not set +# CONFIG_TEST_SORT is not set # CONFIG_TEST_STATIC_KEYS is not set # CONFIG_TEST_STRING_HELPERS is not set # CONFIG_TEST_UDELAY is not set @@ -5112,6 +5152,7 @@ CONFIG_THRUSTMASTER_FF=y # CONFIG_TI_ADC128S052 is not set # CONFIG_TI_ADC161S626 is not set # CONFIG_TI_ADS1015 is not set +# CONFIG_TI_ADS7950 is not set # CONFIG_TI_ADS8688 is not set # CONFIG_TI_CPSW_ALE is not set # CONFIG_TI_DAC7512 is not set @@ -5126,9 +5167,11 @@ CONFIG_TIPC_MEDIA_UDP=y CONFIG_TI_SCI_PROTOCOL=m # CONFIG_TI_ST is not set # CONFIG_TI_SYSCON_RESET is not set +# CONFIG_TI_TLC4541 is not set CONFIG_TLAN=m # CONFIG_TMD_HERMES is not set # CONFIG_TMP006 is not set +# CONFIG_TMP007 is not set CONFIG_TMPFS_POSIX_ACL=y CONFIG_TMPFS_XATTR=y CONFIG_TMPFS=y @@ -5203,6 +5246,7 @@ CONFIG_TOUCHSCREEN_WACOM_I2C=m CONFIG_TOUCHSCREEN_WACOM_W8001=m # CONFIG_TOUCHSCREEN_WDT87XX_I2C is not set # CONFIG_TOUCHSCREEN_WM97XX is not set +CONFIG_TOUCHSCREEN_ZET6223=m CONFIG_TOUCHSCREEN_ZFORCE=m # CONFIG_TPL0102 is not set # CONFIG_TPS6105X is not set @@ -5270,7 +5314,7 @@ CONFIG_UNIX_DIAG=m CONFIG_UNIXWARE_DISKLABEL=y CONFIG_UNIX=y CONFIG_UNUSED_SYMBOLS=y -CONFIG_UPROBE_EVENT=y +CONFIG_UPROBE_EVENTS=y # CONFIG_US5182D is not set CONFIG_USB_ACM=m CONFIG_USB_ADUTUX=m @@ -5287,6 +5331,7 @@ CONFIG_USB_CATC=m CONFIG_USB_CDC_PHONET=m CONFIG_USB_CHAOSKEY=m # CONFIG_USB_CHIPIDEA is not set +# CONFIG_USB_CHIPIDEA_ULPI is not set CONFIG_USB_CXACRU=m # CONFIG_USB_CYPRESS_CY7C63 is not set # CONFIG_USB_CYTHERM is not set @@ -5371,6 +5416,7 @@ CONFIG_USB_HID=y CONFIG_USB_HSIC_USB3503=m CONFIG_USB_HSIC_USB4604=m CONFIG_USB_HSO=m +CONFIG_USB_HUB_USB251XB=m CONFIG_USB_HWA_HCD=m CONFIG_USB_IDMOUSE=m CONFIG_USB_IOWARRIOR=m @@ -5515,6 +5561,7 @@ CONFIG_USB_SERIAL_SPCP8X5=m CONFIG_USB_SERIAL_SSU100=m CONFIG_USB_SERIAL_SYMBOL=m CONFIG_USB_SERIAL_TI=m +CONFIG_USB_SERIAL_UPD78F0730=m CONFIG_USB_SERIAL_VISOR=m CONFIG_USB_SERIAL_WHITEHEAT=m # CONFIG_USB_SERIAL_WISHBONE is not set @@ -5604,6 +5651,7 @@ CONFIG_VFIO_PCI=m CONFIG_VFIO_PCI_VGA=y CONFIG_VGA_ARB_MAX_GPUS=16 CONFIG_VGA_ARB=y +# CONFIG_VGACON_SOFT_SCROLLBACK_PERSISTENT_ENABLE_BY_DEFAULT is not set CONFIG_VGACON_SOFT_SCROLLBACK_SIZE=64 CONFIG_VGACON_SOFT_SCROLLBACK=y CONFIG_VGA_CONSOLE=y @@ -5656,6 +5704,7 @@ CONFIG_VIDEO_HDPVR=m CONFIG_VIDEO_HEXIUM_GEMINI=m CONFIG_VIDEO_HEXIUM_ORION=m # CONFIG_VIDEO_IVTV_ALSA is not set +# CONFIG_VIDEO_IVTV_DEPRECATED_IOCTLS is not set CONFIG_VIDEO_IVTV=m # CONFIG_VIDEO_M5MOLS is not set # CONFIG_VIDEO_MEM2MEM_DEINTERLACE is not set @@ -5677,7 +5726,6 @@ CONFIG_VIDEO_SAA7134_RC=y CONFIG_VIDEO_SAA7146=m CONFIG_VIDEO_SAA7146_VV=m CONFIG_VIDEO_SAA7164=m -CONFIG_VIDEO_SAMSUNG_S5P_CEC=m # CONFIG_VIDEO_SH_MOBILE_CEU is not set # CONFIG_VIDEO_SH_MOBILE_CSI2 is not set # CONFIG_VIDEO_SH_VEU is not set @@ -5714,6 +5762,7 @@ CONFIG_VIDEO_ZORAN_ZR36060=m # CONFIG_VIRT_DRIVERS is not set CONFIG_VIRTIO_BALLOON=m CONFIG_VIRTIO_BLK=m +CONFIG_VIRTIO_BLK_SCSI=y CONFIG_VIRTIO_CONSOLE=m CONFIG_VIRTIO_INPUT=m # CONFIG_VIRTIO_MMIO_CMDLINE_DEVICES is not set @@ -5755,6 +5804,7 @@ CONFIG_W1_MASTER_DS2490=m # CONFIG_W1_MASTER_GPIO is not set # CONFIG_W1_MASTER_MATROX is not set CONFIG_W1_SLAVE_BQ27000=m +CONFIG_W1_SLAVE_DS2405=m CONFIG_W1_SLAVE_DS2406=m CONFIG_W1_SLAVE_DS2408=m # CONFIG_W1_SLAVE_DS2408_READBACK is not set @@ -5827,6 +5877,7 @@ CONFIG_WM8350_POWER=m CONFIG_WM8350_WATCHDOG=m # CONFIG_WQ_POWER_EFFICIENT_DEFAULT is not set CONFIG_WQ_WATCHDOG=y +# CONFIG_WW_MUTEX_SELFTEST is not set # CONFIG_X25 is not set CONFIG_X86_32_IRIS=m # CONFIG_X86_32_NON_STANDARD is not set @@ -5900,6 +5951,7 @@ CONFIG_XEN_NETDEV_BACKEND=m CONFIG_XEN_NETDEV_FRONTEND=m CONFIG_XEN_PCIDEV_BACKEND=m CONFIG_XEN_PCIDEV_FRONTEND=m +CONFIG_XEN_PVH=y CONFIG_XEN_SAVE_RESTORE=y CONFIG_XEN_SCRUB_PAGES=y CONFIG_XEN_SCSI_BACKEND=m diff --git a/kernel-i686.config b/kernel-i686.config index c9ffb0272..2b640d3e3 100644 --- a/kernel-i686.config +++ b/kernel-i686.config @@ -222,10 +222,7 @@ CONFIG_APPLE_PROPERTIES=y # CONFIG_APPLICOM is not set CONFIG_AQUANTIA_PHY=m CONFIG_AR5523=m -# CONFIG_ARCH_TEGRA_186_SOC is not set # CONFIG_ARCNET is not set -# CONFIG_ARM64_PTDUMP is not set -# CONFIG_ARM_SCPI_PROTOCOL is not set # CONFIG_AS3935 is not set CONFIG_ASUS_LAPTOP=m CONFIG_ASUS_NB_WMI=m @@ -383,7 +380,6 @@ CONFIG_BATMAN_ADV_NC=y # CONFIG_BATTERY_DS2781 is not set # CONFIG_BATTERY_DS2782 is not set # CONFIG_BATTERY_GAUGE_LTC2941 is not set -# CONFIG_BATTERY_GOLDFISH is not set # CONFIG_BATTERY_MAX17040 is not set # CONFIG_BATTERY_MAX17042 is not set CONFIG_BATTERY_OLPC=y @@ -427,6 +423,7 @@ CONFIG_BINFMT_SCRIPT=y CONFIG_BLK_CGROUP=y # CONFIG_BLK_CMDLINE_PARSER is not set CONFIG_BLK_CPQ_CISS_DA=m +CONFIG_BLK_DEBUG_FS=y CONFIG_BLK_DEV_3W_XXXX_RAID=m CONFIG_BLK_DEV_AMD74XX=y CONFIG_BLK_DEV_BSGLIB=y @@ -466,6 +463,7 @@ CONFIG_BLK_DEV_THROTTLING=y CONFIG_BLK_DEV_UMEM=m CONFIG_BLK_DEV=y CONFIG_BLK_DEV_ZONED=y +CONFIG_BLK_SED_OPAL=y CONFIG_BLK_WBT_MQ=y # CONFIG_BLK_WBT_SQ is not set CONFIG_BLK_WBT=y @@ -561,6 +559,7 @@ CONFIG_BT_HCIUART_INTEL=y CONFIG_BT_HCIUART_LL=y CONFIG_BT_HCIUART=m CONFIG_BT_HCIUART_MRVL=y +CONFIG_BT_HCIUART_NOKIA=m CONFIG_BT_HCIUART_QCA=y CONFIG_BT_HCIVHCI=m CONFIG_BT_HIDP=m @@ -661,6 +660,7 @@ CONFIG_CEPH_LIB=m # CONFIG_CEPH_LIB_USE_DNS_RESOLVER is not set CONFIG_CFAG12864B=m CONFIG_CFAG12864B_RATE=20 +CONFIG_CFG80211_CRDA_SUPPORT=y CONFIG_CFG80211_DEBUGFS=y CONFIG_CFG80211_DEFAULT_PS=y # CONFIG_CFG80211_DEVELOPER_WARNINGS is not set @@ -678,6 +678,7 @@ CONFIG_CGROUP_NET_CLASSID=y CONFIG_CGROUP_NET_PRIO=y CONFIG_CGROUP_PERF=y CONFIG_CGROUP_PIDS=y +# CONFIG_CGROUP_RDMA is not set CONFIG_CGROUP_SCHED=y CONFIG_CGROUPS=y # CONFIG_CHARGER_BQ2415X is not set @@ -685,6 +686,7 @@ CONFIG_CGROUPS=y # CONFIG_CHARGER_BQ24257 is not set # CONFIG_CHARGER_BQ24735 is not set # CONFIG_CHARGER_BQ25890 is not set +# CONFIG_CHARGER_DETECTOR_MAX14656 is not set # CONFIG_CHARGER_GPIO is not set # CONFIG_CHARGER_ISP1704 is not set # CONFIG_CHARGER_LP8727 is not set @@ -692,6 +694,7 @@ CONFIG_CGROUPS=y # CONFIG_CHARGER_PCF50633 is not set # CONFIG_CHARGER_QCOM_SMBB is not set # CONFIG_CHARGER_RT9455 is not set +# CONFIG_CHARGER_SBS is not set CONFIG_CHARGER_SMB347=m # CONFIG_CHECKPOINT_RESTORE is not set CONFIG_CHELSIO_T1_1G=y @@ -732,6 +735,7 @@ CONFIG_CLS_U32_PERF=y CONFIG_CM32181=m # CONFIG_CM3232 is not set # CONFIG_CM3323 is not set +CONFIG_CM3605=m # CONFIG_CM36651 is not set # CONFIG_CMA is not set # CONFIG_CMDLINE_BOOL is not set @@ -742,24 +746,13 @@ CONFIG_CODA_FS=m # CONFIG_COMMON_CLK_CDCE706 is not set # CONFIG_COMMON_CLK_CDCE925 is not set # CONFIG_COMMON_CLK_CS2000_CP is not set -# CONFIG_COMMON_CLK_HI3516CV300 is not set -# CONFIG_COMMON_CLK_HI3519 is not set -# CONFIG_COMMON_CLK_HI3798CV200 is not set -# CONFIG_COMMON_CLK_MT2701_BDPSYS is not set -# CONFIG_COMMON_CLK_MT2701_ETHSYS is not set -# CONFIG_COMMON_CLK_MT2701_HIFSYS is not set -# CONFIG_COMMON_CLK_MT2701_IMGSYS is not set -# CONFIG_COMMON_CLK_MT2701 is not set -# CONFIG_COMMON_CLK_MT2701_MMSYS is not set -# CONFIG_COMMON_CLK_MT2701_VDECSYS is not set -# CONFIG_COMMON_CLK_MT8135 is not set -# CONFIG_COMMON_CLK_MT8173 is not set -# CONFIG_COMMON_CLK_OXNAS is not set # CONFIG_COMMON_CLK_PWM is not set # CONFIG_COMMON_CLK_SI514 is not set # CONFIG_COMMON_CLK_SI5351 is not set # CONFIG_COMMON_CLK_SI570 is not set +# CONFIG_COMMON_CLK_VC5 is not set # CONFIG_COMMON_CLK_XLNX_CLKWZRD is not set +# CONFIG_COMMON_RESET_HI3660 is not set CONFIG_COMPACTION=y CONFIG_COMPAL_LAPTOP=m # CONFIG_COMPAT_BRK is not set @@ -808,6 +801,7 @@ CONFIG_CROSS_MEMORY_ATTACH=y CONFIG_CRYPTO_842=m CONFIG_CRYPTO_AES_586=y CONFIG_CRYPTO_AES_NI_INTEL=y +CONFIG_CRYPTO_AES_TI=m CONFIG_CRYPTO_AES=y CONFIG_CRYPTO_ANSI_CPRNG=m CONFIG_CRYPTO_ANUBIS=m @@ -823,13 +817,11 @@ CONFIG_CRYPTO_CCM=m CONFIG_CRYPTO_CHACHA20=m CONFIG_CRYPTO_CHACHA20POLY1305=m CONFIG_CRYPTO_CMAC=m -CONFIG_CRYPTO_CRC32_ARM_CE=m CONFIG_CRYPTO_CRC32C_INTEL=m CONFIG_CRYPTO_CRC32C_VPMSUM=m CONFIG_CRYPTO_CRC32C=y CONFIG_CRYPTO_CRC32=m CONFIG_CRYPTO_CRC32_PCLMUL=m -CONFIG_CRYPTO_CRCT10DIF_ARM_CE=m CONFIG_CRYPTO_CRYPTD=y CONFIG_CRYPTO_CTR=y CONFIG_CRYPTO_CTS=y @@ -972,6 +964,7 @@ CONFIG_DEBUG_OBJECTS_ENABLE_DEFAULT=1 # CONFIG_DEBUG_PERF_USE_VMALLOC is not set # CONFIG_DEBUG_PI_LIST is not set # CONFIG_DEBUG_PINCTRL is not set +# CONFIG_DEBUG_REFCOUNT is not set CONFIG_DEBUG_RODATA_TEST=y # CONFIG_DEBUG_RT_MUTEXES is not set # CONFIG_DEBUG_SECTION_MISMATCH is not set @@ -1015,6 +1008,7 @@ CONFIG_DEVFREQ_GOV_SIMPLE_ONDEMAND=m # CONFIG_DEVFREQ_GOV_USERSPACE is not set # CONFIG_DEVKMEM is not set CONFIG_DEVMEM=y +# CONFIG_DEVPORT is not set CONFIG_DEVTMPFS_MOUNT=y CONFIG_DEVTMPFS=y # CONFIG_DGAP is not set @@ -1085,6 +1079,7 @@ CONFIG_DRM_ANALOGIX_ANX78XX=m CONFIG_DRM_AST=m CONFIG_DRM_BOCHS=m CONFIG_DRM_CIRRUS_QEMU=m +# CONFIG_DRM_DEBUG_MM_SELFTEST is not set CONFIG_DRM_DP_AUX_CHARDEV=y # CONFIG_DRM_DUMB_VGA_DAC is not set CONFIG_DRM_DW_HDMI_I2S_AUDIO=m @@ -1095,7 +1090,7 @@ CONFIG_DRM_GMA500=m CONFIG_DRM_HISI_HIBMC=m CONFIG_DRM_I2C_ADV7511_AUDIO=y CONFIG_DRM_I2C_ADV7511=m -# CONFIG_DRM_I2C_ADV7533 is not set +CONFIG_DRM_I2C_ADV7533=y CONFIG_DRM_I2C_CH7006=m CONFIG_DRM_I2C_NXP_TDA998X=m CONFIG_DRM_I2C_SIL164=m @@ -1110,7 +1105,6 @@ CONFIG_DRM_I915_USERPTR=y # CONFIG_DRM_LEGACY is not set CONFIG_DRM_LOAD_EDID_FIRMWARE=y CONFIG_DRM=m -# CONFIG_DRM_MALI_DISPLAY is not set CONFIG_DRM_MGAG200=m # CONFIG_DRM_MGA is not set CONFIG_DRM_MXSFB=m @@ -1136,6 +1130,7 @@ CONFIG_DRM_RADEON_USERPTR=y CONFIG_DRM_SIL_SII8620=m # CONFIG_DRM_SIS is not set # CONFIG_DRM_TDFX is not set +# CONFIG_DRM_TINYDRM is not set CONFIG_DRM_TI_TFP410=m # CONFIG_DRM_TOSHIBA_TC358767 is not set CONFIG_DRM_UDL=m @@ -1230,6 +1225,7 @@ CONFIG_DVB_USB_UMT_010=m CONFIG_DVB_USB_V2=m CONFIG_DVB_USB_VP702X=m CONFIG_DVB_USB_VP7045=m +CONFIG_DVB_USB_ZD1301=m # CONFIG_DW_DMAC_BIG_ENDIAN_IO is not set CONFIG_DW_DMAC_CORE=y CONFIG_DW_DMAC=m @@ -1280,6 +1276,7 @@ CONFIG_EEPROM_93CX6=m # CONFIG_EEPROM_93XX46 is not set CONFIG_EEPROM_AT24=m # CONFIG_EEPROM_AT25 is not set +CONFIG_EEPROM_IDT_89HPESX=m CONFIG_EEPROM_LEGACY=m CONFIG_EEPROM_MAX6875=m CONFIG_EFI_ALLOW_SECURE_BOOT_EXIT=y @@ -1301,10 +1298,10 @@ CONFIG_EFIVAR_FS=y # CONFIG_EFI_VARS_PSTORE is not set CONFIG_EFI=y # CONFIG_EFS_FS is not set -# CONFIG_EMAC_ROCKCHIP is not set # CONFIG_EMBEDDED is not set CONFIG_ENABLE_MUST_CHECK=y # CONFIG_ENABLE_WARN_DEPRECATED is not set +CONFIG_ENA_ETHERNET=m # CONFIG_ENC28J60 is not set CONFIG_ENCLOSURE_SERVICES=m CONFIG_ENCRYPTED_KEYS=y @@ -1333,6 +1330,7 @@ CONFIG_EXT4_FS_SECURITY=y CONFIG_EXT4_FS=y CONFIG_EXT4_USE_FOR_EXT2=y # CONFIG_EXTCON_ADC_JACK is not set +CONFIG_EXTCON_INTEL_INT3496=m # CONFIG_EXTCON is not set # CONFIG_EXTCON_QCOM_SPMI_MISC is not set CONFIG_EXTRA_FIRMWARE="" @@ -1378,7 +1376,6 @@ CONFIG_FB_EFI=y CONFIG_FB_GEODE_GX=y CONFIG_FB_GEODE_LX=y CONFIG_FB_GEODE=y -# CONFIG_FB_GOLDFISH is not set # CONFIG_FB_HECUBA is not set # CONFIG_FB_HGA is not set CONFIG_FB_HYPERV=m @@ -1479,6 +1476,7 @@ CONFIG_FSCACHE_OBJECT_LIST=y CONFIG_FSCACHE_STATS=y CONFIG_FS_DAX=y CONFIG_FS_ENCRYPTION=y +CONFIG_FSI=m # CONFIG_FSL_EDMA is not set # CONFIG_FSL_PQ_MDIO is not set CONFIG_FS_MBCACHE=y @@ -1554,6 +1552,7 @@ CONFIG_GIRBIL_DONGLE=m CONFIG_GPIO_CRYSTAL_COVE=y CONFIG_GPIO_CS5535=y # CONFIG_GPIO_DWAPB is not set +CONFIG_GPIO_EXAR=m # CONFIG_GPIO_F7188X is not set # CONFIG_GPIO_GENERIC_PLATFORM is not set # CONFIG_GPIO_GRGPIO is not set @@ -1573,6 +1572,7 @@ CONFIG_GPIOLIB=y # CONFIG_GPIO_PCA953X is not set # CONFIG_GPIO_PCF857X is not set # CONFIG_GPIO_PCH is not set +CONFIG_GPIO_PCI_IDIO_16=m # CONFIG_GPIO_PISOSR is not set # CONFIG_GPIO_RDC321X is not set # CONFIG_GPIO_SCH311X is not set @@ -1580,7 +1580,7 @@ CONFIG_GPIO_SCH=m # CONFIG_GPIO_SODAVILLE is not set # CONFIG_GPIO_SX150X is not set # CONFIG_GPIO_SYSCON is not set -CONFIG_GPIO_SYSFS=y +# CONFIG_GPIO_SYSFS is not set # CONFIG_GPIO_TPIC2810 is not set # CONFIG_GPIO_TS4900 is not set # CONFIG_GPIO_TS5500 is not set @@ -1590,7 +1590,6 @@ CONFIG_GPIO_VIPERBOARD=m CONFIG_GPIO_WHISKEY_COVE=y # CONFIG_GPIO_WS16C48 is not set # CONFIG_GPIO_XILINX is not set -# CONFIG_GPIO_ZX is not set CONFIG_GREENASIA_FF=y # CONFIG_GREYBUS is not set # CONFIG_GS_FPGABOOT is not set @@ -1601,6 +1600,7 @@ CONFIG_HANGCHECK_TIMER=m CONFIG_HAPPYMEAL=m CONFIG_HARDENED_USERCOPY=y # CONFIG_HDC100X is not set +CONFIG_HDMI_LPE_AUDIO=m CONFIG_HEADERS_CHECK=y CONFIG_HERMES_CACHE_FW_ON_INIT=y CONFIG_HERMES=m @@ -1799,6 +1799,7 @@ CONFIG_HW_RANDOM_VIA=m CONFIG_HW_RANDOM_VIRTIO=m CONFIG_HW_RANDOM=y CONFIG_HWSPINLOCK=m +# CONFIG_HX711 is not set CONFIG_HYPERV_BALLOON=m CONFIG_HYPERVISOR_GUEST=y CONFIG_HYPERV_KEYBOARD=m @@ -1840,7 +1841,6 @@ CONFIG_I2C_DIOLAN_U2C=m CONFIG_I2C_HELPER_AUTO=y CONFIG_I2C_HID=m CONFIG_I2C_I801=m -CONFIG_I2C_IMX_LPI2C=m CONFIG_I2C_ISCH=m CONFIG_I2C_ISMT=m CONFIG_I2C_MLXCPLD=m @@ -1935,6 +1935,7 @@ CONFIG_IIO_ST_ACCEL_SPI_3AXIS=m CONFIG_IIO_ST_GYRO_3AXIS=m CONFIG_IIO_ST_GYRO_I2C_3AXIS=m CONFIG_IIO_ST_GYRO_SPI_3AXIS=m +# CONFIG_IIO_ST_LSM6DSX is not set CONFIG_IIO_ST_MAGN_3AXIS=m # CONFIG_IIO_ST_PRESS is not set CONFIG_IIO_SW_DEVICE=m @@ -1951,6 +1952,7 @@ CONFIG_IMA_MEASURE_PCR_IDX=10 # CONFIG_INA2XX_ADC is not set CONFIG_INET6_AH=m CONFIG_INET6_ESP=m +CONFIG_INET6_ESP_OFFLOAD=m CONFIG_INET6_IPCOMP=m CONFIG_INET6_XFRM_MODE_BEET=m CONFIG_INET6_XFRM_MODE_ROUTEOPTIMIZATION=m @@ -1960,6 +1962,7 @@ CONFIG_INET_AH=m CONFIG_INET_DIAG_DESTROY=y CONFIG_INET_DIAG=m CONFIG_INET_ESP=m +CONFIG_INET_ESP_OFFLOAD=m CONFIG_INET_IPCOMP=m CONFIG_INET_RAW_DIAG=m CONFIG_INET_TUNNEL=m @@ -1968,6 +1971,7 @@ CONFIG_INET_XFRM_MODE_BEET=m CONFIG_INET_XFRM_MODE_TRANSPORT=m CONFIG_INET_XFRM_MODE_TUNNEL=m CONFIG_INET=y +# CONFIG_INFINIBAND_BNXT_RE is not set # CONFIG_INFINIBAND_CXGB3_DEBUG is not set CONFIG_INFINIBAND_CXGB3=m CONFIG_INFINIBAND_CXGB4=m @@ -2238,6 +2242,7 @@ CONFIG_IP_VS_SH_TAB_BITS=8 CONFIG_IP_VS_TAB_BITS=12 CONFIG_IP_VS_WLC=m CONFIG_IP_VS_WRR=m +CONFIG_IPVTAP=m # CONFIG_IPW2100_DEBUG is not set CONFIG_IPW2100=m CONFIG_IPW2100_MONITOR=y @@ -2284,6 +2289,7 @@ CONFIG_IR_SERIAL=m CONFIG_IR_SERIAL_TRANSMITTER=y CONFIG_IR_SHARP_DECODER=m CONFIG_IR_SONY_DECODER=m +CONFIG_IR_SPI=m CONFIG_IR_STREAMZAP=m CONFIG_IR_TTUSBIR=m CONFIG_IRTTY_SIR=m @@ -2438,6 +2444,7 @@ CONFIG_KEYBOARD_PMIC8XXX=m # CONFIG_KEYBOARD_SUNKBD is not set # CONFIG_KEYBOARD_TCA6416 is not set # CONFIG_KEYBOARD_TCA8418 is not set +CONFIG_KEYBOARD_TM2_TOUCHKEY=m # CONFIG_KEYBOARD_XTKBD is not set CONFIG_KEY_DH_OPERATIONS=y CONFIG_KEYS=y @@ -2449,7 +2456,7 @@ CONFIG_KGDB_TESTS=y CONFIG_KGDB=y CONFIG_KINGSUN_DONGLE=m # CONFIG_KMX61 is not set -CONFIG_KPROBE_EVENT=y +CONFIG_KPROBE_EVENTS=y # CONFIG_KPROBES_SANITY_TEST is not set CONFIG_KPROBES=y CONFIG_KS0108_DELAY=2 @@ -2502,6 +2509,7 @@ CONFIG_LDM_PARTITION=y # CONFIG_LEDS_BCM6358 is not set # CONFIG_LEDS_BD2802 is not set CONFIG_LEDS_BLINKM=m +CONFIG_LEDS_BRIGHTNESS_HW_CHANGED=y CONFIG_LEDS_CLASS_FLASH=m CONFIG_LEDS_CLASS=y CONFIG_LEDS_CLEVO_MAIL=m @@ -2618,6 +2626,8 @@ CONFIG_LOOPBACK_TARGET=m CONFIG_LPC_ICH=m CONFIG_LP_CONSOLE=y CONFIG_LPC_SCH=m +CONFIG_LPFC_NVME_INITIATOR=y +CONFIG_LPFC_NVME_TARGET=y CONFIG_LSI_ET1011C_PHY=m CONFIG_LSM_MMAP_MIN_ADDR=65536 # CONFIG_LTC2485 is not set @@ -2656,6 +2666,7 @@ CONFIG_MACVLAN=m CONFIG_MACVTAP=m # CONFIG_MAG3110 is not set CONFIG_MAGIC_SYSRQ_DEFAULT_ENABLE=0x0 +CONFIG_MAGIC_SYSRQ_SERIAL=y CONFIG_MAGIC_SYSRQ=y # CONFIG_MAILBOX is not set # CONFIG_MAILBOX_TEST is not set @@ -2664,10 +2675,12 @@ CONFIG_MANTIS_CORE=m CONFIG_MARVELL_PHY=m # CONFIG_MATH_EMULATION is not set # CONFIG_MAX1027 is not set +# CONFIG_MAX11100 is not set # CONFIG_MAX1363 is not set CONFIG_MAX30100=m # CONFIG_MAX44000 is not set # CONFIG_MAX517 is not set +# CONFIG_MAX5481 is not set # CONFIG_MAX5487 is not set # CONFIG_MAX5821 is not set # CONFIG_MAX63XX_WATCHDOG is not set @@ -2743,7 +2756,6 @@ CONFIG_MEMSTICK_TIFM_MS=m # CONFIG_MEMSTICK_UNSAFE_RESUME is not set # CONFIG_MEMTEST is not set # CONFIG_MEN_A21_WDT is not set -CONFIG_MESON_GXL_PHY=m CONFIG_MESSAGE_LOGLEVEL_DEFAULT=4 # CONFIG_MFD_88PM800 is not set # CONFIG_MFD_88PM805 is not set @@ -2762,6 +2774,7 @@ CONFIG_MESSAGE_LOGLEVEL_DEFAULT=4 # CONFIG_MFD_AXP20X is not set # CONFIG_MFD_BCM590XX is not set CONFIG_MFD_CORE=y +CONFIG_MFD_CPCAP=m # CONFIG_MFD_CROS_EC is not set CONFIG_MFD_CS5535=m # CONFIG_MFD_DA9052_I2C is not set @@ -2811,7 +2824,6 @@ CONFIG_MFD_SM501_GPIO=y CONFIG_MFD_SM501=m # CONFIG_MFD_SMSC is not set # CONFIG_MFD_STMPE is not set -CONFIG_MFD_SUN4I_GPADC=m # CONFIG_MFD_SYSCON is not set # CONFIG_MFD_TC3589X is not set # CONFIG_MFD_TC6393XB is not set @@ -2973,6 +2985,7 @@ CONFIG_MPILIB=y CONFIG_MPLS_IPTUNNEL=m CONFIG_MPLS_ROUTING=m # CONFIG_MPU3050_I2C is not set +CONFIG_MQ_IOSCHED_DEADLINE=y # CONFIG_MS5611 is not set # CONFIG_MS5637 is not set # CONFIG_MS_BLOCK is not set @@ -3092,6 +3105,7 @@ CONFIG_NET_ACT_MIRRED=m CONFIG_NET_ACT_NAT=m CONFIG_NET_ACT_PEDIT=m CONFIG_NET_ACT_POLICE=m +CONFIG_NET_ACT_SAMPLE=m CONFIG_NET_ACT_SIMP=m CONFIG_NET_ACT_SKBEDIT=m CONFIG_NET_ACT_SKBMOD=m @@ -3225,6 +3239,7 @@ CONFIG_NETFILTER_XT_TARGET_TRACE=m CONFIG_NETFILTER=y CONFIG_NET_FOU_IP_TUNNELS=y CONFIG_NET_FOU=m +CONFIG_NET_IFE=m CONFIG_NET_IFE_SKBMARK=m CONFIG_NET_IFE_SKBPRIO=m CONFIG_NET_IFE_SKBTCINDEX=m @@ -3235,7 +3250,7 @@ CONFIG_NET_IPIP=m CONFIG_NET_IPVTI=m CONFIG_NET_KEY=m CONFIG_NET_KEY_MIGRATE=y -# CONFIG_NET_L3_MASTER_DEV is not set +CONFIG_NET_L3_MASTER_DEV=y CONFIG_NETLABEL=y CONFIG_NETLINK_DIAG=m CONFIG_NET_MPLS_GSO=m @@ -3288,8 +3303,9 @@ CONFIG_NET_VENDOR_ADAPTEC=y CONFIG_NET_VENDOR_AGERE=y # CONFIG_NET_VENDOR_ALACRITECH is not set CONFIG_NET_VENDOR_ALTEON=y -# CONFIG_NET_VENDOR_AMAZON is not set +CONFIG_NET_VENDOR_AMAZON=y CONFIG_NET_VENDOR_AMD=y +# CONFIG_NET_VENDOR_AQUANTIA is not set CONFIG_NET_VENDOR_ARC=y CONFIG_NET_VENDOR_ATHEROS=y # CONFIG_NET_VENDOR_AURORA is not set @@ -3414,6 +3430,8 @@ CONFIG_NF_LOG_IPV6=m CONFIG_NF_LOG_NETDEV=m CONFIG_NF_NAT=m CONFIG_NF_NAT_SNMP_BASIC=m +# CONFIG_NFP_DEBUG is not set +CONFIG_NFP=m # CONFIG_NFP_NET_DEBUG is not set CONFIG_NFP_NETVF=m CONFIG_NF_REJECT_IPV6=m @@ -3485,11 +3503,13 @@ CONFIG_NFT_REDIR=m CONFIG_NFT_REJECT_IPV4=m CONFIG_NFT_REJECT=m CONFIG_NFT_RT=m +CONFIG_NFT_SET_BITMAP=m CONFIG_NFT_SET_HASH=m CONFIG_NFT_SET_RBTREE=m CONFIG_N_GSM=m CONFIG_N_HDLC=m # CONFIG_NI903X_WDT is not set +CONFIG_NIC7018_WDT=m CONFIG_NILFS2_FS=m CONFIG_NIU=m # CONFIG_NL80211_TESTMODE is not set @@ -3625,6 +3645,7 @@ CONFIG_PANTHERLORD_FF=y CONFIG_PARAVIRT_TIME_ACCOUNTING=y CONFIG_PARAVIRT=y # CONFIG_PARIDE is not set +CONFIG_PARMAN=m CONFIG_PARPORT_1284=y # CONFIG_PARPORT_AX88796 is not set CONFIG_PARPORT=m @@ -3682,6 +3703,7 @@ CONFIG_PATA_TOSHIBA=m CONFIG_PATA_TRIFLEX=m CONFIG_PATA_VIA=m CONFIG_PATA_WINBOND=m +# CONFIG_PC104 is not set CONFIG_PC8736x_GPIO=m # CONFIG_PC87413_WDT is not set CONFIG_PCCARD=y @@ -3753,6 +3775,8 @@ CONFIG_PERSISTENT_KEYRINGS=y CONFIG_PHYLIB=y # CONFIG_PHY_PXA_28NM_HSIC is not set # CONFIG_PHY_PXA_28NM_USB2 is not set +# CONFIG_PHY_QCOM_USB_HSIC is not set +# CONFIG_PHY_QCOM_USB_HS is not set CONFIG_PHYSICAL_ALIGN=0x400000 CONFIG_PHYSICAL_START=0x400000 # CONFIG_PHY_ST_SPEAR1310_MIPHY is not set @@ -3765,10 +3789,12 @@ CONFIG_PINCTRL_BAYTRAIL=y # CONFIG_PINCTRL_BCM281XX is not set CONFIG_PINCTRL_BROXTON=m CONFIG_PINCTRL_CHERRYVIEW=y +# CONFIG_PINCTRL_GEMINILAKE is not set CONFIG_PINCTRL_MSM8994=m # CONFIG_PINCTRL_SINGLE is not set CONFIG_PINCTRL_SUNRISEPOINT=m # CONFIG_PINCTRL_SX150X is not set +# CONFIG_PINCTRL_TI_IODELAY is not set CONFIG_PINCTRL=y CONFIG_PINMUX=y CONFIG_PKCS7_MESSAGE_PARSER=y @@ -3836,6 +3862,7 @@ CONFIG_PPTP=m CONFIG_PREEMPT_VOLUNTARY=y CONFIG_PREVENT_FIRMWARE_BUILD=y CONFIG_PRINTER=m +CONFIG_PRINTK_SAFE_LOG_BUF_SHIFT=12 CONFIG_PRINTK_TIME=y # CONFIG_PRINT_QUOTA_WARNING is not set # CONFIG_PRISM2_USB is not set @@ -3850,11 +3877,13 @@ CONFIG_PROFILING=y # CONFIG_PROVE_LOCKING is not set # CONFIG_PROVE_RCU_REPEATEDLY is not set # CONFIG_PROVIDE_OHCI1394_DMA_INIT is not set +CONFIG_PSAMPLE=m # CONFIG_PSTORE_CONSOLE is not set # CONFIG_PSTORE_FTRACE is not set # CONFIG_PSTORE_PMSG is not set CONFIG_PSTORE_RAM=m CONFIG_PSTORE=y +CONFIG_PTP_1588_CLOCK_KVM=m CONFIG_PTP_1588_CLOCK=m CONFIG_PTP_1588_CLOCK_PCH=m # CONFIG_PUNIT_ATOM_DEBUG is not set @@ -3868,14 +3897,15 @@ CONFIG_PWM_LPSS_PLATFORM=m # CONFIG_PWM_PCA9685 is not set CONFIG_PWM=y CONFIG_PWRSEQ_EMMC=m +# CONFIG_PWRSEQ_SD8787 is not set CONFIG_PWRSEQ_SIMPLE=m # CONFIG_QCA7000 is not set CONFIG_QCOM_ADSP_PIL=m -# CONFIG_QCOM_EBI2 is not set # CONFIG_QCOM_EMAC is not set # CONFIG_QCOM_HIDMA is not set # CONFIG_QCOM_HIDMA_MGMT is not set CONFIG_QEDE=m +CONFIG_QEDF=m CONFIG_QEDI=m CONFIG_QED=m CONFIG_QED_SRIOV=y @@ -3921,7 +3951,6 @@ CONFIG_RADIO_TERRATEC=m CONFIG_RADIO_TRUST=m CONFIG_RADIO_TYPHOON=m CONFIG_RADIO_WL1273=m -# CONFIG_RADIO_WL128X is not set # depends on TI_ST which we don't enable CONFIG_RADIO_ZOLTRIX=m CONFIG_RAID_ATTRS=m # CONFIG_RANDOM32_SELFTEST is not set @@ -3967,6 +3996,7 @@ CONFIG_REALTEK_AUTOPM=y CONFIG_REALTEK_PHY=m CONFIG_REGMAP_I2C=y CONFIG_REGMAP=y +CONFIG_REGULATOR_CPCAP=m # CONFIG_REGULATOR_DEBUG is not set # CONFIG_REGULATOR is not set # CONFIG_REISERFS_CHECK is not set @@ -4453,6 +4483,7 @@ CONFIG_SENSORS_SIS5595=m CONFIG_SENSORS_SMSC47B397=m CONFIG_SENSORS_SMSC47M192=m CONFIG_SENSORS_SMSC47M1=m +# CONFIG_SENSORS_STTS751 is not set CONFIG_SENSORS_TC654=m CONFIG_SENSORS_TC74=m CONFIG_SENSORS_THMC50=m @@ -4489,13 +4520,16 @@ CONFIG_SERIAL_8250_CS=m # CONFIG_SERIAL_8250_DEPRECATED_OPTIONS is not set # CONFIG_SERIAL_8250_DETECT_IRQ is not set CONFIG_SERIAL_8250_DW=y +CONFIG_SERIAL_8250_EXAR=m CONFIG_SERIAL_8250_EXTENDED=y # CONFIG_SERIAL_8250_FINTEK is not set # CONFIG_SERIAL_8250_INGENIC is not set +CONFIG_SERIAL_8250_LPSS=m CONFIG_SERIAL_8250_MANY_PORTS=y CONFIG_SERIAL_8250_MID=y CONFIG_SERIAL_8250_MOXA=m CONFIG_SERIAL_8250_NR_UARTS=32 +CONFIG_SERIAL_8250_PCI=m CONFIG_SERIAL_8250_RSA=y CONFIG_SERIAL_8250_RT288X=y CONFIG_SERIAL_8250_RUNTIME_UARTS=32 @@ -4508,6 +4542,8 @@ CONFIG_SERIAL_ARC_NR_PORTS=1 # CONFIG_SERIAL_CONEXANT_DIGICOLOR is not set CONFIG_SERIAL_CORE_CONSOLE=y CONFIG_SERIAL_CORE=y +CONFIG_SERIAL_DEV_BUS=y +CONFIG_SERIAL_DEV_CTRL_TTYPORT=y # CONFIG_SERIAL_FSL_LPUART is not set CONFIG_SERIAL_GRLIB_GAISLER_APBUART=m # CONFIG_SERIAL_IFX6X60 is not set @@ -4551,6 +4587,7 @@ CONFIG_SH_ETH=m # CONFIG_SIGMA is not set CONFIG_SIGMATEL_FIR=m CONFIG_SIGNED_PE_FILE_VERIFICATION=y +# CONFIG_SILEAD_DMI is not set CONFIG_SIS190=m CONFIG_SIS900=m # CONFIG_SKFP is not set @@ -4571,6 +4608,7 @@ CONFIG_SLUB_CPU_PARTIAL=y CONFIG_SLUB=y CONFIG_SMARTJOYPLUS_FF=y CONFIG_SMC_IRCC_FIR=m +# CONFIG_SMC is not set # CONFIG_SM_FTL is not set CONFIG_SMP=y # CONFIG_SMSC37B787_WDT is not set @@ -4715,7 +4753,7 @@ CONFIG_SND_SEQUENCER=m CONFIG_SND_SEQUENCER_OSS=y CONFIG_SND_SERIAL_U16550=m CONFIG_SND_SIMPLE_CARD=m -# CONFIG_SND_SIMPLE_SCU_CARD is not set +CONFIG_SND_SIMPLE_SCU_CARD=m CONFIG_SND_SIS7019=m CONFIG_SND_SOC_AC97_CODEC=m # CONFIG_SND_SOC_ADAU1701 is not set @@ -4747,7 +4785,9 @@ CONFIG_SND_SOC_CS42L42=m # CONFIG_SND_SOC_CS4349 is not set # CONFIG_SND_SOC_CS53L30 is not set CONFIG_SND_SOC_DMIC=m -# CONFIG_SND_SOC_ES8328 is not set +CONFIG_SND_SOC_ES8328_I2C=m +CONFIG_SND_SOC_ES8328=m +CONFIG_SND_SOC_ES8328_SPI=m # CONFIG_SND_SOC_FSL_ASOC_CARD is not set # CONFIG_SND_SOC_FSL_ASRC is not set # CONFIG_SND_SOC_FSL_ESAI is not set @@ -4785,6 +4825,7 @@ CONFIG_SND_SOC=m # CONFIG_SND_SOC_MAX9860 is not set # CONFIG_SND_SOC_MSM8916_WCD_ANALOG is not set # CONFIG_SND_SOC_MSM8916_WCD_DIGITAL is not set +CONFIG_SND_SOC_NAU8540=m # CONFIG_SND_SOC_NAU8810 is not set # CONFIG_SND_SOC_PCM1681 is not set # CONFIG_SND_SOC_PCM179X_I2C is not set @@ -4840,7 +4881,6 @@ CONFIG_SND_SOC_TS3A227E=m # CONFIG_SND_SOC_XTFPGA_I2S is not set CONFIG_SND_SONICVIBES=m # CONFIG_SND_SPI is not set -CONFIG_SND_SUN8I_CODEC_ANALOG=m # CONFIG_SND_SUPPORT_OLD_API is not set CONFIG_SND_TRIDENT=m CONFIG_SND_USB_6FIRE=m @@ -4863,9 +4903,11 @@ CONFIG_SND_VIA82XX_MODEM=m CONFIG_SND_VIRMIDI=m CONFIG_SND_VIRTUOSO=m CONFIG_SND_VX222=m +CONFIG_SND_X86=y CONFIG_SND_YMFPCI=m # CONFIG_SOC_CAMERA is not set # CONFIG_SOC_TI is not set +# CONFIG_SOC_ZTE is not set CONFIG_SOFT_WATCHDOG=m CONFIG_SOLARIS_X86_PARTITION=y # CONFIG_SOLO6X10 is not set @@ -4914,6 +4956,7 @@ CONFIG_SQUASHFS_XATTR=y CONFIG_SQUASHFS_XZ=y CONFIG_SQUASHFS_ZLIB=y # CONFIG_SRAM is not set +# CONFIG_SRF08 is not set # CONFIG_SSB_DEBUG is not set CONFIG_SSB_DRIVER_GPIO=y CONFIG_SSB_DRIVER_PCICORE=y @@ -4932,6 +4975,7 @@ CONFIG_STAGING_MEDIA=y CONFIG_STAGING=y CONFIG_STANDALONE=y # CONFIG_STATIC_KEYS_SELFTEST is not set +# CONFIG_STATIC_USERMODEHELPER is not set CONFIG_STE10XP=m # CONFIG_STE_MODEM_RPROC is not set CONFIG_STK3310=m @@ -4946,10 +4990,6 @@ CONFIG_STMMAC_ETH=m CONFIG_STRICT_DEVMEM=y CONFIG_STRIP_ASM_SYMS=y # CONFIG_STRIP is not set -# CONFIG_SUN50I_A64_CCU is not set -# CONFIG_SUN6I_A31_CCU is not set -# CONFIG_SUN8I_A23_CCU is not set -# CONFIG_SUN8I_A33_CCU is not set CONFIG_SUNDANCE=m # CONFIG_SUNDANCE_MMIO is not set CONFIG_SUNGEM=m @@ -4958,7 +4998,6 @@ CONFIG_SUNRPC_DEBUG=y CONFIG_SUNRPC_GSS=m CONFIG_SUNRPC=m CONFIG_SUNRPC_XPRT_RDMA=m -# CONFIG_SUNXI_CCU is not set CONFIG_SURFACE_3_BUTTON=m CONFIG_SURFACE3_WMI=m CONFIG_SURFACE_PRO3_BUTTON=m @@ -5042,8 +5081,6 @@ CONFIG_TCP_CONG_YEAH=m CONFIG_TCP_MD5SIG=y # CONFIG_TCS3414 is not set # CONFIG_TCS3472 is not set -CONFIG_TEGRA_GMI=m -CONFIG_TEGRA_IVC=y CONFIG_TEHUTI=m CONFIG_TEKRAM_DONGLE=m CONFIG_TELCLOCK=m @@ -5057,9 +5094,11 @@ CONFIG_TEST_ASYNC_DRIVER_PROBE=m CONFIG_TEST_KSTRTOX=y # CONFIG_TEST_LIST_SORT is not set # CONFIG_TEST_LKM is not set +# CONFIG_TEST_PARMAN is not set # CONFIG_TEST_POWER is not set # CONFIG_TEST_PRINTF is not set # CONFIG_TEST_RHASHTABLE is not set +# CONFIG_TEST_SORT is not set # CONFIG_TEST_STATIC_KEYS is not set # CONFIG_TEST_STRING_HELPERS is not set # CONFIG_TEST_UDELAY is not set @@ -5091,6 +5130,7 @@ CONFIG_THRUSTMASTER_FF=y # CONFIG_TI_ADC128S052 is not set # CONFIG_TI_ADC161S626 is not set # CONFIG_TI_ADS1015 is not set +# CONFIG_TI_ADS7950 is not set # CONFIG_TI_ADS8688 is not set # CONFIG_TI_CPSW_ALE is not set # CONFIG_TI_DAC7512 is not set @@ -5105,9 +5145,11 @@ CONFIG_TIPC_MEDIA_UDP=y CONFIG_TI_SCI_PROTOCOL=m # CONFIG_TI_ST is not set # CONFIG_TI_SYSCON_RESET is not set +# CONFIG_TI_TLC4541 is not set CONFIG_TLAN=m # CONFIG_TMD_HERMES is not set # CONFIG_TMP006 is not set +# CONFIG_TMP007 is not set CONFIG_TMPFS_POSIX_ACL=y CONFIG_TMPFS_XATTR=y CONFIG_TMPFS=y @@ -5182,6 +5224,7 @@ CONFIG_TOUCHSCREEN_WACOM_I2C=m CONFIG_TOUCHSCREEN_WACOM_W8001=m # CONFIG_TOUCHSCREEN_WDT87XX_I2C is not set # CONFIG_TOUCHSCREEN_WM97XX is not set +CONFIG_TOUCHSCREEN_ZET6223=m CONFIG_TOUCHSCREEN_ZFORCE=m # CONFIG_TPL0102 is not set # CONFIG_TPS6105X is not set @@ -5249,7 +5292,7 @@ CONFIG_UNIX_DIAG=m CONFIG_UNIXWARE_DISKLABEL=y CONFIG_UNIX=y CONFIG_UNUSED_SYMBOLS=y -CONFIG_UPROBE_EVENT=y +CONFIG_UPROBE_EVENTS=y # CONFIG_US5182D is not set CONFIG_USB_ACM=m CONFIG_USB_ADUTUX=m @@ -5266,6 +5309,7 @@ CONFIG_USB_CATC=m CONFIG_USB_CDC_PHONET=m CONFIG_USB_CHAOSKEY=m # CONFIG_USB_CHIPIDEA is not set +# CONFIG_USB_CHIPIDEA_ULPI is not set CONFIG_USB_CXACRU=m # CONFIG_USB_CYPRESS_CY7C63 is not set # CONFIG_USB_CYTHERM is not set @@ -5350,6 +5394,7 @@ CONFIG_USB_HID=y CONFIG_USB_HSIC_USB3503=m CONFIG_USB_HSIC_USB4604=m CONFIG_USB_HSO=m +CONFIG_USB_HUB_USB251XB=m CONFIG_USB_HWA_HCD=m CONFIG_USB_IDMOUSE=m CONFIG_USB_IOWARRIOR=m @@ -5494,6 +5539,7 @@ CONFIG_USB_SERIAL_SPCP8X5=m CONFIG_USB_SERIAL_SSU100=m CONFIG_USB_SERIAL_SYMBOL=m CONFIG_USB_SERIAL_TI=m +CONFIG_USB_SERIAL_UPD78F0730=m CONFIG_USB_SERIAL_VISOR=m CONFIG_USB_SERIAL_WHITEHEAT=m # CONFIG_USB_SERIAL_WISHBONE is not set @@ -5583,6 +5629,7 @@ CONFIG_VFIO_PCI=m CONFIG_VFIO_PCI_VGA=y CONFIG_VGA_ARB_MAX_GPUS=16 CONFIG_VGA_ARB=y +# CONFIG_VGACON_SOFT_SCROLLBACK_PERSISTENT_ENABLE_BY_DEFAULT is not set CONFIG_VGACON_SOFT_SCROLLBACK_SIZE=64 CONFIG_VGACON_SOFT_SCROLLBACK=y CONFIG_VGA_CONSOLE=y @@ -5635,6 +5682,7 @@ CONFIG_VIDEO_HDPVR=m CONFIG_VIDEO_HEXIUM_GEMINI=m CONFIG_VIDEO_HEXIUM_ORION=m # CONFIG_VIDEO_IVTV_ALSA is not set +# CONFIG_VIDEO_IVTV_DEPRECATED_IOCTLS is not set CONFIG_VIDEO_IVTV=m # CONFIG_VIDEO_M5MOLS is not set # CONFIG_VIDEO_MEM2MEM_DEINTERLACE is not set @@ -5656,7 +5704,6 @@ CONFIG_VIDEO_SAA7134_RC=y CONFIG_VIDEO_SAA7146=m CONFIG_VIDEO_SAA7146_VV=m CONFIG_VIDEO_SAA7164=m -CONFIG_VIDEO_SAMSUNG_S5P_CEC=m # CONFIG_VIDEO_SH_MOBILE_CEU is not set # CONFIG_VIDEO_SH_MOBILE_CSI2 is not set # CONFIG_VIDEO_SH_VEU is not set @@ -5693,6 +5740,7 @@ CONFIG_VIDEO_ZORAN_ZR36060=m # CONFIG_VIRT_DRIVERS is not set CONFIG_VIRTIO_BALLOON=m CONFIG_VIRTIO_BLK=m +CONFIG_VIRTIO_BLK_SCSI=y CONFIG_VIRTIO_CONSOLE=m CONFIG_VIRTIO_INPUT=m # CONFIG_VIRTIO_MMIO_CMDLINE_DEVICES is not set @@ -5734,6 +5782,7 @@ CONFIG_W1_MASTER_DS2490=m # CONFIG_W1_MASTER_GPIO is not set # CONFIG_W1_MASTER_MATROX is not set CONFIG_W1_SLAVE_BQ27000=m +CONFIG_W1_SLAVE_DS2405=m CONFIG_W1_SLAVE_DS2406=m CONFIG_W1_SLAVE_DS2408=m # CONFIG_W1_SLAVE_DS2408_READBACK is not set @@ -5806,6 +5855,7 @@ CONFIG_WM8350_POWER=m CONFIG_WM8350_WATCHDOG=m # CONFIG_WQ_POWER_EFFICIENT_DEFAULT is not set # CONFIG_WQ_WATCHDOG is not set +# CONFIG_WW_MUTEX_SELFTEST is not set # CONFIG_X25 is not set CONFIG_X86_32_IRIS=m # CONFIG_X86_32_NON_STANDARD is not set @@ -5879,6 +5929,7 @@ CONFIG_XEN_NETDEV_BACKEND=m CONFIG_XEN_NETDEV_FRONTEND=m CONFIG_XEN_PCIDEV_BACKEND=m CONFIG_XEN_PCIDEV_FRONTEND=m +CONFIG_XEN_PVH=y CONFIG_XEN_SAVE_RESTORE=y CONFIG_XEN_SCRUB_PAGES=y CONFIG_XEN_SCSI_BACKEND=m diff --git a/kernel-ppc64-debug.config b/kernel-ppc64-debug.config index 026ffc2bd..c59901132 100644 --- a/kernel-ppc64-debug.config +++ b/kernel-ppc64-debug.config @@ -174,10 +174,8 @@ CONFIG_APPLE_AIRPORT=m # CONFIG_APPLICOM is not set CONFIG_AQUANTIA_PHY=m CONFIG_AR5523=m -# CONFIG_ARCH_TEGRA_186_SOC is not set # CONFIG_ARCNET is not set CONFIG_ARM64_PTDUMP=y -# CONFIG_ARM_SCPI_PROTOCOL is not set # CONFIG_AS3935 is not set CONFIG_ASYMMETRIC_KEY_TYPE=y CONFIG_ASYNC_RAID6_TEST=m @@ -331,7 +329,6 @@ CONFIG_BATMAN_ADV_NC=y # CONFIG_BATTERY_DS2781 is not set # CONFIG_BATTERY_DS2782 is not set # CONFIG_BATTERY_GAUGE_LTC2941 is not set -# CONFIG_BATTERY_GOLDFISH is not set # CONFIG_BATTERY_MAX17040 is not set # CONFIG_BATTERY_MAX17042 is not set # CONFIG_BATTERY_SBS is not set @@ -374,6 +371,7 @@ CONFIG_BINFMT_SCRIPT=y CONFIG_BLK_CGROUP=y # CONFIG_BLK_CMDLINE_PARSER is not set CONFIG_BLK_CPQ_CISS_DA=m +CONFIG_BLK_DEBUG_FS=y CONFIG_BLK_DEV_3W_XXXX_RAID=m # CONFIG_BLK_DEV_AEC62XX is not set # CONFIG_BLK_DEV_ALI15X3 is not set @@ -451,6 +449,7 @@ CONFIG_BLK_DEV_UMEM=m # CONFIG_BLK_DEV_VIA82CXXX is not set CONFIG_BLK_DEV=y CONFIG_BLK_DEV_ZONED=y +CONFIG_BLK_SED_OPAL=y CONFIG_BLK_WBT_MQ=y # CONFIG_BLK_WBT_SQ is not set CONFIG_BLK_WBT=y @@ -547,6 +546,7 @@ CONFIG_BT_HCIUART_INTEL=y CONFIG_BT_HCIUART_LL=y CONFIG_BT_HCIUART=m CONFIG_BT_HCIUART_MRVL=y +CONFIG_BT_HCIUART_NOKIA=m CONFIG_BT_HCIUART_QCA=y CONFIG_BT_HCIVHCI=m CONFIG_BT_HIDP=m @@ -647,6 +647,7 @@ CONFIG_CEPH_LIB_PRETTYDEBUG=y # CONFIG_CEPH_LIB_USE_DNS_RESOLVER is not set CONFIG_CFAG12864B=m CONFIG_CFAG12864B_RATE=20 +CONFIG_CFG80211_CRDA_SUPPORT=y CONFIG_CFG80211_DEBUGFS=y CONFIG_CFG80211_DEFAULT_PS=y # CONFIG_CFG80211_DEVELOPER_WARNINGS is not set @@ -664,6 +665,7 @@ CONFIG_CGROUP_NET_CLASSID=y CONFIG_CGROUP_NET_PRIO=y CONFIG_CGROUP_PERF=y CONFIG_CGROUP_PIDS=y +# CONFIG_CGROUP_RDMA is not set CONFIG_CGROUP_SCHED=y CONFIG_CGROUPS=y # CONFIG_CHARGER_BQ2415X is not set @@ -671,6 +673,7 @@ CONFIG_CGROUPS=y # CONFIG_CHARGER_BQ24257 is not set # CONFIG_CHARGER_BQ24735 is not set # CONFIG_CHARGER_BQ25890 is not set +# CONFIG_CHARGER_DETECTOR_MAX14656 is not set # CONFIG_CHARGER_GPIO is not set # CONFIG_CHARGER_ISP1704 is not set # CONFIG_CHARGER_LP8727 is not set @@ -678,6 +681,7 @@ CONFIG_CGROUPS=y # CONFIG_CHARGER_PCF50633 is not set # CONFIG_CHARGER_QCOM_SMBB is not set # CONFIG_CHARGER_RT9455 is not set +# CONFIG_CHARGER_SBS is not set CONFIG_CHARGER_SMB347=m # CONFIG_CHECKPOINT_RESTORE is not set CONFIG_CHELSIO_T1_1G=y @@ -716,6 +720,7 @@ CONFIG_CLS_U32_PERF=y CONFIG_CM32181=m # CONFIG_CM3232 is not set # CONFIG_CM3323 is not set +CONFIG_CM3605=m # CONFIG_CM36651 is not set CONFIG_CMA_AREAS=7 # CONFIG_CMA_DEBUGFS is not set @@ -731,23 +736,12 @@ CONFIG_CODA_FS=m # CONFIG_COMMON_CLK_CDCE706 is not set # CONFIG_COMMON_CLK_CDCE925 is not set # CONFIG_COMMON_CLK_CS2000_CP is not set -# CONFIG_COMMON_CLK_HI3516CV300 is not set -# CONFIG_COMMON_CLK_HI3519 is not set -# CONFIG_COMMON_CLK_HI3798CV200 is not set -# CONFIG_COMMON_CLK_MT2701_BDPSYS is not set -# CONFIG_COMMON_CLK_MT2701_ETHSYS is not set -# CONFIG_COMMON_CLK_MT2701_HIFSYS is not set -# CONFIG_COMMON_CLK_MT2701_IMGSYS is not set -# CONFIG_COMMON_CLK_MT2701 is not set -# CONFIG_COMMON_CLK_MT2701_MMSYS is not set -# CONFIG_COMMON_CLK_MT2701_VDECSYS is not set -# CONFIG_COMMON_CLK_MT8135 is not set -# CONFIG_COMMON_CLK_MT8173 is not set -# CONFIG_COMMON_CLK_OXNAS is not set # CONFIG_COMMON_CLK_PWM is not set # CONFIG_COMMON_CLK_SI514 is not set # CONFIG_COMMON_CLK_SI5351 is not set +# CONFIG_COMMON_CLK_VC5 is not set # CONFIG_COMMON_CLK_XLNX_CLKWZRD is not set +# CONFIG_COMMON_RESET_HI3660 is not set CONFIG_COMPACTION=y # CONFIG_COMPAT_BRK is not set # CONFIG_COMPILE_TEST is not set @@ -795,6 +789,7 @@ CONFIG_CRC_T10DIF=y CONFIG_CROSS_COMPILE="" CONFIG_CROSS_MEMORY_ATTACH=y CONFIG_CRYPTO_842=m +CONFIG_CRYPTO_AES_TI=m CONFIG_CRYPTO_AES=y CONFIG_CRYPTO_ANSI_CPRNG=m CONFIG_CRYPTO_ANUBIS=m @@ -810,12 +805,9 @@ CONFIG_CRYPTO_CCM=m CONFIG_CRYPTO_CHACHA20=m CONFIG_CRYPTO_CHACHA20POLY1305=m CONFIG_CRYPTO_CMAC=m -CONFIG_CRYPTO_CRC32_ARM_CE=m -CONFIG_CRYPTO_CRC32C_INTEL=m CONFIG_CRYPTO_CRC32C_VPMSUM=m CONFIG_CRYPTO_CRC32C=y CONFIG_CRYPTO_CRC32=m -CONFIG_CRYPTO_CRCT10DIF_ARM_CE=m # CONFIG_CRYPTO_CRYPTD is not set CONFIG_CRYPTO_CTR=y CONFIG_CRYPTO_CTS=y @@ -958,6 +950,7 @@ CONFIG_DEBUG_PER_CPU_MAPS=y CONFIG_DEBUG_PERF_USE_VMALLOC=y CONFIG_DEBUG_PI_LIST=y # CONFIG_DEBUG_PINCTRL is not set +CONFIG_DEBUG_REFCOUNT=y CONFIG_DEBUG_RODATA_TEST=y CONFIG_DEBUG_RT_MUTEXES=y # CONFIG_DEBUG_SECTION_MISMATCH is not set @@ -986,6 +979,8 @@ CONFIG_DEFAULT_MMAP_MIN_ADDR=4096 # CONFIG_DEFXX is not set CONFIG_DETECT_HUNG_TASK=y CONFIG_DEV_APPLETALK=m +CONFIG_DEV_DAX=m +CONFIG_DEV_DAX_PMEM=m # CONFIG_DEVFREQ_GOV_PASSIVE is not set # CONFIG_DEVFREQ_GOV_PERFORMANCE is not set # CONFIG_DEVFREQ_GOV_POWERSAVE is not set @@ -993,6 +988,7 @@ CONFIG_DEVFREQ_GOV_SIMPLE_ONDEMAND=m # CONFIG_DEVFREQ_GOV_USERSPACE is not set # CONFIG_DEVKMEM is not set CONFIG_DEVMEM=y +# CONFIG_DEVPORT is not set CONFIG_DEVTMPFS_MOUNT=y CONFIG_DEVTMPFS=y # CONFIG_DGAP is not set @@ -1061,6 +1057,7 @@ CONFIG_DRM_ANALOGIX_ANX78XX=m CONFIG_DRM_AST=m CONFIG_DRM_BOCHS=m CONFIG_DRM_CIRRUS_QEMU=m +# CONFIG_DRM_DEBUG_MM_SELFTEST is not set CONFIG_DRM_DP_AUX_CHARDEV=y # CONFIG_DRM_DUMB_VGA_DAC is not set CONFIG_DRM_DW_HDMI_I2S_AUDIO=m @@ -1068,22 +1065,13 @@ CONFIG_DRM_FBDEV_EMULATION=y CONFIG_DRM_HISI_HIBMC=m CONFIG_DRM_I2C_ADV7511_AUDIO=y CONFIG_DRM_I2C_ADV7511=m -# CONFIG_DRM_I2C_ADV7533 is not set +CONFIG_DRM_I2C_ADV7533=y CONFIG_DRM_I2C_CH7006=m CONFIG_DRM_I2C_NXP_TDA998X=m CONFIG_DRM_I2C_SIL164=m -# CONFIG_DRM_I810 is not set -# CONFIG_DRM_I915_ALPHA_SUPPORT is not set -CONFIG_DRM_I915_CAPTURE_ERROR=y -CONFIG_DRM_I915_COMPRESS_ERROR=y -CONFIG_DRM_I915_GVT_KVMGT=m -CONFIG_DRM_I915_GVT=y -CONFIG_DRM_I915=m -CONFIG_DRM_I915_USERPTR=y # CONFIG_DRM_LEGACY is not set CONFIG_DRM_LOAD_EDID_FIRMWARE=y CONFIG_DRM=m -# CONFIG_DRM_MALI_DISPLAY is not set CONFIG_DRM_MGAG200=m # CONFIG_DRM_MGA is not set CONFIG_DRM_MXSFB=m @@ -1104,14 +1092,13 @@ CONFIG_DRM_RADEON_USERPTR=y CONFIG_DRM_SIL_SII8620=m # CONFIG_DRM_SIS is not set # CONFIG_DRM_TDFX is not set +# CONFIG_DRM_TINYDRM is not set CONFIG_DRM_TI_TFP410=m # CONFIG_DRM_TOSHIBA_TC358767 is not set CONFIG_DRM_UDL=m CONFIG_DRM_VGEM=m CONFIG_DRM_VIA=m CONFIG_DRM_VIRTIO_GPU=m -CONFIG_DRM_VMWGFX_FBCON=y -CONFIG_DRM_VMWGFX=m # CONFIG_DS1682 is not set # CONFIG_DS1803 is not set # CONFIG_DT3155 is not set @@ -1199,6 +1186,7 @@ CONFIG_DVB_USB_UMT_010=m CONFIG_DVB_USB_V2=m CONFIG_DVB_USB_VP702X=m CONFIG_DVB_USB_VP7045=m +CONFIG_DVB_USB_ZD1301=m # CONFIG_DW_DMAC_BIG_ENDIAN_IO is not set CONFIG_DW_DMAC_CORE=m CONFIG_DW_DMAC=m @@ -1226,6 +1214,7 @@ CONFIG_EEPROM_93CX6=m # CONFIG_EEPROM_93XX46 is not set CONFIG_EEPROM_AT24=m # CONFIG_EEPROM_AT25 is not set +CONFIG_EEPROM_IDT_89HPESX=m CONFIG_EEPROM_LEGACY=m CONFIG_EEPROM_MAX6875=m # CONFIG_EFI_ALLOW_SECURE_BOOT_EXIT is not set @@ -1236,7 +1225,6 @@ CONFIG_EFI_PGT_DUMP=y # CONFIG_EFI_TEST is not set # CONFIG_EFS_FS is not set CONFIG_EHEA=m -# CONFIG_EMAC_ROCKCHIP is not set # CONFIG_EMBEDDED is not set CONFIG_ENABLE_MUST_CHECK=y # CONFIG_ENABLE_WARN_DEPRECATED is not set @@ -1268,6 +1256,7 @@ CONFIG_EXT4_FS_SECURITY=y CONFIG_EXT4_FS=y CONFIG_EXT4_USE_FOR_EXT2=y # CONFIG_EXTCON_ADC_JACK is not set +CONFIG_EXTCON_INTEL_INT3496=m # CONFIG_EXTCON is not set # CONFIG_EXTCON_QCOM_SPMI_MISC is not set CONFIG_EXTRA_FIRMWARE="" @@ -1302,7 +1291,6 @@ CONFIG_FAULT_INJECTION_DEBUG_FS=y CONFIG_FAULT_INJECTION_STACKTRACE_FILTER=y CONFIG_FAULT_INJECTION=y # CONFIG_FB_3DFX is not set -# CONFIG_FB_ARC is not set # CONFIG_FB_ARK is not set # CONFIG_FB_ASILIANT is not set CONFIG_FB_ATY128_BACKLIGHT=y @@ -1320,18 +1308,11 @@ CONFIG_FB_ATY_BACKLIGHT=y # CONFIG_FB_CYBER2000 is not set CONFIG_FB_EFI=y # CONFIG_FB_FOREIGN_ENDIAN is not set -# CONFIG_FB_GEODE is not set -# CONFIG_FB_GOLDFISH is not set # CONFIG_FB_HECUBA is not set -# CONFIG_FB_HGA is not set # CONFIG_FB_I740 is not set -CONFIG_FB_I810_GTF=y -CONFIG_FB_I810_I2C=y -CONFIG_FB_I810=m CONFIG_FB_IBM_GXT4500=y # CONFIG_FB_IMSTT is not set # CONFIG_FB_KYRO is not set -# CONFIG_FB_LE80578 is not set CONFIG_FB_MATROX_G=y # CONFIG_FB_MATROX_I2C is not set # CONFIG_FB_MATROX_MILLENIUM is not set @@ -1382,8 +1363,6 @@ CONFIG_FB_TILEBLITTING=y # CONFIG_FB_VALKYRIE is not set CONFIG_FB_VESA=y # CONFIG_FB_VGA16 is not set -# CONFIG_FB_VIA_DIRECT_PROCFS is not set -# CONFIG_FB_VIA is not set CONFIG_FB_VIRTUAL=m # CONFIG_FB_VOODOO1 is not set # CONFIG_FB_VT8623 is not set @@ -1428,6 +1407,7 @@ CONFIG_FSCACHE_STATS=y CONFIG_FS_DAX=y CONFIG_FS_ENCRYPTION=y # CONFIG_FS_ENET is not set +CONFIG_FSI=m # CONFIG_FSL_DMA is not set # CONFIG_FSL_EDMA is not set # CONFIG_FSL_LBC is not set @@ -1475,7 +1455,8 @@ CONFIG_GAMEPORT_NS558=m CONFIG_GENERIC_PHY=y CONFIG_GENEVE=m # CONFIG_GEN_RTC is not set -# CONFIG_GENWQE is not set +CONFIG_GENWQE=m +CONFIG_GENWQE_PLATFORM_ERROR_RECOVERY=1 CONFIG_GFS2_FS_LOCKING_DLM=y CONFIG_GFS2_FS=m CONFIG_GIGASET_BASE=m @@ -1495,11 +1476,10 @@ CONFIG_GIRBIL_DONGLE=m # CONFIG_GPIO_ADNP is not set # CONFIG_GPIO_ADP5588 is not set # CONFIG_GPIO_ALTERA is not set -# CONFIG_GPIO_AMD8111 is not set # CONFIG_GPIO_AMDPT is not set # CONFIG_GPIO_BT8XX is not set -# CONFIG_GPIO_CS5535 is not set # CONFIG_GPIO_DWAPB is not set +CONFIG_GPIO_EXAR=m # CONFIG_GPIO_GENERIC_PLATFORM is not set # CONFIG_GPIO_GRGPIO is not set # CONFIG_GPIO_IT87 is not set @@ -1509,30 +1489,27 @@ CONFIG_GPIOLIB=y # CONFIG_GPIO_MAX732X is not set # CONFIG_GPIO_MC33880 is not set # CONFIG_GPIO_MCP23S08 is not set -# CONFIG_GPIO_ML_IOH is not set # CONFIG_GPIO_MOCKUP is not set # CONFIG_GPIO_MPC8XXX is not set CONFIG_GPIO_PCA953X=m CONFIG_GPIO_PCF857X=m # CONFIG_GPIO_PCH is not set +CONFIG_GPIO_PCI_IDIO_16=m # CONFIG_GPIO_PISOSR is not set # CONFIG_GPIO_RDC321X is not set # CONFIG_GPIO_SCH311X is not set -# CONFIG_GPIO_SCH is not set # CONFIG_GPIO_SX150X is not set # CONFIG_GPIO_SYSCON is not set -CONFIG_GPIO_SYSFS=y +# CONFIG_GPIO_SYSFS is not set # CONFIG_GPIO_TPIC2810 is not set # CONFIG_GPIO_TS4900 is not set # CONFIG_GPIO_TS5500 is not set # CONFIG_GPIO_UCB1400 is not set CONFIG_GPIO_VIPERBOARD=m -# CONFIG_GPIO_VX855 is not set # CONFIG_GPIO_WATCHDOG is not set CONFIG_GPIO_WM831X=m # CONFIG_GPIO_WS16C48 is not set # CONFIG_GPIO_XILINX is not set -# CONFIG_GPIO_ZX is not set CONFIG_GREENASIA_FF=y # CONFIG_GREYBUS is not set # CONFIG_GS_FPGABOOT is not set @@ -1734,6 +1711,7 @@ CONFIG_HW_RANDOM_TPM=m CONFIG_HW_RANDOM_VIRTIO=m CONFIG_HW_RANDOM=y CONFIG_HWSPINLOCK=m +# CONFIG_HX711 is not set CONFIG_HYSDN_CAPI=y CONFIG_HYSDN=m CONFIG_HZ=100 @@ -1769,7 +1747,6 @@ CONFIG_I2C_DIOLAN_U2C=m CONFIG_I2C_HELPER_AUTO=y CONFIG_I2C_HID=m # CONFIG_I2C_I801 is not set -CONFIG_I2C_IMX_LPI2C=m # CONFIG_I2C_ISCH is not set CONFIG_I2C=m CONFIG_I2C_MLXCPLD=m @@ -1790,8 +1767,6 @@ CONFIG_I2C_PARPORT=m CONFIG_I2C_PCA_PLATFORM=m # CONFIG_I2C_PIIX4 is not set CONFIG_I2C_POWERMAC=m -CONFIG_I2C_PXA=m -# CONFIG_I2C_PXA_SLAVE is not set # CONFIG_I2C_RK3X is not set # CONFIG_I2C_ROBOTFUZZ_OSIF is not set CONFIG_I2C_SI470X=m @@ -1817,8 +1792,6 @@ CONFIG_I40EVF=m CONFIG_I6300ESB_WDT=m CONFIG_I82092=m # CONFIG_IAQCORE is not set -CONFIG_IB700_WDT=m -CONFIG_IBMASR=m CONFIG_IBM_BSR=m CONFIG_IBMEBUS=y # CONFIG_IBM_EMAC is not set @@ -1872,6 +1845,7 @@ CONFIG_IIO_ST_ACCEL_SPI_3AXIS=m CONFIG_IIO_ST_GYRO_3AXIS=m CONFIG_IIO_ST_GYRO_I2C_3AXIS=m CONFIG_IIO_ST_GYRO_SPI_3AXIS=m +# CONFIG_IIO_ST_LSM6DSX is not set CONFIG_IIO_ST_MAGN_3AXIS=m # CONFIG_IIO_ST_PRESS is not set CONFIG_IIO_SW_DEVICE=m @@ -1888,6 +1862,7 @@ CONFIG_IMA_MEASURE_PCR_IDX=10 # CONFIG_INA2XX_ADC is not set CONFIG_INET6_AH=m CONFIG_INET6_ESP=m +CONFIG_INET6_ESP_OFFLOAD=m CONFIG_INET6_IPCOMP=m CONFIG_INET6_XFRM_MODE_BEET=m CONFIG_INET6_XFRM_MODE_ROUTEOPTIMIZATION=m @@ -1897,6 +1872,7 @@ CONFIG_INET_AH=m CONFIG_INET_DIAG_DESTROY=y CONFIG_INET_DIAG=m CONFIG_INET_ESP=m +CONFIG_INET_ESP_OFFLOAD=m CONFIG_INET_IPCOMP=m CONFIG_INET_RAW_DIAG=m CONFIG_INET_TUNNEL=m @@ -1905,6 +1881,7 @@ CONFIG_INET_XFRM_MODE_BEET=m CONFIG_INET_XFRM_MODE_TRANSPORT=m CONFIG_INET_XFRM_MODE_TUNNEL=m CONFIG_INET=y +# CONFIG_INFINIBAND_BNXT_RE is not set # CONFIG_INFINIBAND_CXGB3_DEBUG is not set CONFIG_INFINIBAND_CXGB3=m CONFIG_INFINIBAND_CXGB4=m @@ -1995,8 +1972,6 @@ CONFIG_INPUT=y CONFIG_INPUT_YEALINK=m # CONFIG_INTEGRITY is not set # CONFIG_INTEL_IDMA64 is not set -# CONFIG_INTEL_MENLOW is not set -CONFIG_INTEL_RDT_A=y # CONFIG_INTEL_SOC_PMIC is not set # CONFIG_INTEL_TH is not set CONFIG_INTEL_XWAY_PHY=m @@ -2144,6 +2119,7 @@ CONFIG_IP_VS_SH_TAB_BITS=8 CONFIG_IP_VS_TAB_BITS=12 CONFIG_IP_VS_WLC=m CONFIG_IP_VS_WRR=m +CONFIG_IPVTAP=m # CONFIG_IPW2100_DEBUG is not set # CONFIG_IPW2100 is not set # CONFIG_IPW2200_DEBUG is not set @@ -2187,6 +2163,7 @@ CONFIG_IR_SERIAL=m CONFIG_IR_SERIAL_TRANSMITTER=y CONFIG_IR_SHARP_DECODER=m CONFIG_IR_SONY_DECODER=m +CONFIG_IR_SPI=m CONFIG_IR_STREAMZAP=m CONFIG_IR_TTUSBIR=m CONFIG_IRTTY_SIR=m @@ -2340,6 +2317,7 @@ CONFIG_KEYBOARD_PMIC8XXX=m # CONFIG_KEYBOARD_SUNKBD is not set # CONFIG_KEYBOARD_TCA6416 is not set # CONFIG_KEYBOARD_TCA8418 is not set +CONFIG_KEYBOARD_TM2_TOUCHKEY=m # CONFIG_KEYBOARD_XTKBD is not set CONFIG_KEY_DH_OPERATIONS=y CONFIG_KEYS=y @@ -2351,7 +2329,7 @@ CONFIG_KGDB_TESTS=y CONFIG_KGDB=y CONFIG_KINGSUN_DONGLE=m # CONFIG_KMX61 is not set -CONFIG_KPROBE_EVENT=y +CONFIG_KPROBE_EVENTS=y # CONFIG_KPROBES_SANITY_TEST is not set CONFIG_KPROBES=y CONFIG_KS0108_DELAY=2 @@ -2404,13 +2382,13 @@ CONFIG_LDM_PARTITION=y # CONFIG_LEDS_BCM6358 is not set # CONFIG_LEDS_BD2802 is not set CONFIG_LEDS_BLINKM=m +CONFIG_LEDS_BRIGHTNESS_HW_CHANGED=y CONFIG_LEDS_CLASS_FLASH=m CONFIG_LEDS_CLASS=y CONFIG_LEDS_CLEVO_MAIL=m # CONFIG_LEDS_DAC124S085 is not set CONFIG_LEDS_DELL_NETBOOKS=m # CONFIG_LEDS_GPIO is not set -CONFIG_LEDS_INTEL_SS4200=m # CONFIG_LEDS_IS31FL319X is not set # CONFIG_LEDS_IS31FL32XX is not set # CONFIG_LEDS_KTD2692 is not set @@ -2520,6 +2498,8 @@ CONFIG_LPARCFG=y # CONFIG_LPC_ICH is not set CONFIG_LP_CONSOLE=y # CONFIG_LPC_SCH is not set +CONFIG_LPFC_NVME_INITIATOR=y +CONFIG_LPFC_NVME_TARGET=y CONFIG_LSI_ET1011C_PHY=m CONFIG_LSM_MMAP_MIN_ADDR=65536 # CONFIG_LTC2485 is not set @@ -2553,6 +2533,7 @@ CONFIG_MACVLAN=m CONFIG_MACVTAP=m # CONFIG_MAG3110 is not set CONFIG_MAGIC_SYSRQ_DEFAULT_ENABLE=0x0 +CONFIG_MAGIC_SYSRQ_SERIAL=y CONFIG_MAGIC_SYSRQ=y # CONFIG_MAILBOX is not set # CONFIG_MAILBOX_TEST is not set @@ -2561,10 +2542,12 @@ CONFIG_MANTIS_CORE=m CONFIG_MARVELL_PHY=m # CONFIG_MATH_EMULATION is not set # CONFIG_MAX1027 is not set +# CONFIG_MAX11100 is not set # CONFIG_MAX1363 is not set CONFIG_MAX30100=m # CONFIG_MAX44000 is not set # CONFIG_MAX517 is not set +# CONFIG_MAX5481 is not set # CONFIG_MAX5487 is not set # CONFIG_MAX5821 is not set # CONFIG_MAX63XX_WATCHDOG is not set @@ -2643,7 +2626,6 @@ CONFIG_MEMSTICK_TIFM_MS=m # CONFIG_MEMSTICK_UNSAFE_RESUME is not set # CONFIG_MEMTEST is not set # CONFIG_MEN_A21_WDT is not set -CONFIG_MESON_GXL_PHY=m CONFIG_MESSAGE_LOGLEVEL_DEFAULT=4 # CONFIG_MFD_88PM800 is not set # CONFIG_MFD_88PM805 is not set @@ -2662,6 +2644,7 @@ CONFIG_MESSAGE_LOGLEVEL_DEFAULT=4 # CONFIG_MFD_AXP20X is not set # CONFIG_MFD_BCM590XX is not set CONFIG_MFD_CORE=m +CONFIG_MFD_CPCAP=m # CONFIG_MFD_CROS_EC is not set # CONFIG_MFD_CS5535 is not set # CONFIG_MFD_DA9052_I2C is not set @@ -2708,7 +2691,6 @@ CONFIG_MFD_SM501_GPIO=y CONFIG_MFD_SM501=m # CONFIG_MFD_SMSC is not set # CONFIG_MFD_STMPE is not set -CONFIG_MFD_SUN4I_GPADC=m # CONFIG_MFD_SYSCON is not set # CONFIG_MFD_TC3589X is not set # CONFIG_MFD_TC6393XB is not set @@ -2844,7 +2826,6 @@ CONFIG_MOUSE_ELAN_I2C_SMBUS=y CONFIG_MOUSE_PS2_ELANTECH=y CONFIG_MOUSE_PS2_SENTELIC=y # CONFIG_MOUSE_PS2_TOUCHKIT is not set -# CONFIG_MOUSE_PS2_VMMOUSE is not set CONFIG_MOUSE_PS2=y CONFIG_MOUSE_SERIAL=m CONFIG_MOUSE_SYNAPTICS_I2C=m @@ -2862,6 +2843,7 @@ CONFIG_MOVABLE_NODE=y CONFIG_MPLS_IPTUNNEL=m CONFIG_MPLS_ROUTING=m # CONFIG_MPU3050_I2C is not set +CONFIG_MQ_IOSCHED_DEADLINE=y # CONFIG_MS5611 is not set # CONFIG_MS5637 is not set # CONFIG_MS_BLOCK is not set @@ -2970,6 +2952,7 @@ CONFIG_NET_ACT_MIRRED=m CONFIG_NET_ACT_NAT=m CONFIG_NET_ACT_PEDIT=m CONFIG_NET_ACT_POLICE=m +CONFIG_NET_ACT_SAMPLE=m CONFIG_NET_ACT_SIMP=m CONFIG_NET_ACT_SKBEDIT=m CONFIG_NET_ACT_SKBMOD=m @@ -3103,6 +3086,7 @@ CONFIG_NETFILTER_XT_TARGET_TRACE=m CONFIG_NETFILTER=y CONFIG_NET_FOU_IP_TUNNELS=y CONFIG_NET_FOU=m +CONFIG_NET_IFE=m CONFIG_NET_IFE_SKBMARK=m CONFIG_NET_IFE_SKBPRIO=m CONFIG_NET_IFE_SKBTCINDEX=m @@ -3113,7 +3097,7 @@ CONFIG_NET_IPIP=m CONFIG_NET_IPVTI=m CONFIG_NET_KEY=m CONFIG_NET_KEY_MIGRATE=y -# CONFIG_NET_L3_MASTER_DEV is not set +CONFIG_NET_L3_MASTER_DEV=y CONFIG_NETLABEL=y CONFIG_NETLINK_DIAG=m CONFIG_NET_MPLS_GSO=m @@ -3165,8 +3149,9 @@ CONFIG_NET_VENDOR_ADAPTEC=y CONFIG_NET_VENDOR_AGERE=y # CONFIG_NET_VENDOR_ALACRITECH is not set CONFIG_NET_VENDOR_ALTEON=y -# CONFIG_NET_VENDOR_AMAZON is not set +CONFIG_NET_VENDOR_AMAZON=y CONFIG_NET_VENDOR_AMD=y +# CONFIG_NET_VENDOR_AQUANTIA is not set CONFIG_NET_VENDOR_ARC=y CONFIG_NET_VENDOR_ATHEROS=y # CONFIG_NET_VENDOR_AURORA is not set @@ -3292,6 +3277,8 @@ CONFIG_NF_LOG_IPV6=m CONFIG_NF_LOG_NETDEV=m CONFIG_NF_NAT=m CONFIG_NF_NAT_SNMP_BASIC=m +# CONFIG_NFP_DEBUG is not set +CONFIG_NFP=m # CONFIG_NFP_NET_DEBUG is not set CONFIG_NFP_NETVF=m CONFIG_NF_REJECT_IPV6=m @@ -3363,6 +3350,7 @@ CONFIG_NFT_REDIR=m CONFIG_NFT_REJECT_IPV4=m CONFIG_NFT_REJECT=m CONFIG_NFT_RT=m +CONFIG_NFT_SET_BITMAP=m CONFIG_NFT_SET_HASH=m CONFIG_NFT_SET_RBTREE=m CONFIG_N_GSM=m @@ -3434,6 +3422,7 @@ CONFIG_NOUVEAU_DEBUG=5 CONFIG_NOUVEAU_DEBUG_DEFAULT=3 CONFIG_NOZOMI=m CONFIG_NR_CPUS=1024 +CONFIG_NR_DEV_DAX=32768 CONFIG_NR_IRQS=512 CONFIG_NS83820=m CONFIG_NSC_FIR=m @@ -3492,6 +3481,7 @@ CONFIG_PACKET=y CONFIG_PANIC_TIMEOUT=0 CONFIG_PANTHERLORD_FF=y # CONFIG_PARIDE is not set +CONFIG_PARMAN=m CONFIG_PARPORT_1284=y # CONFIG_PARPORT_AX88796 is not set CONFIG_PARPORT=m @@ -3552,6 +3542,7 @@ CONFIG_PATA_TOSHIBA=m CONFIG_PATA_TRIFLEX=m CONFIG_PATA_VIA=m CONFIG_PATA_WINBOND=m +# CONFIG_PC104 is not set # CONFIG_PC87413_WDT is not set CONFIG_PCCARD=y CONFIG_PCF50633_ADC=m @@ -3606,6 +3597,8 @@ CONFIG_PERSISTENT_KEYRINGS=y CONFIG_PHYLIB=y # CONFIG_PHY_PXA_28NM_HSIC is not set # CONFIG_PHY_PXA_28NM_USB2 is not set +# CONFIG_PHY_QCOM_USB_HSIC is not set +# CONFIG_PHY_QCOM_USB_HS is not set # CONFIG_PHY_ST_SPEAR1310_MIPHY is not set # CONFIG_PHY_ST_SPEAR1340_MIPHY is not set # CONFIG_PHY_TUSB1210 is not set @@ -3614,6 +3607,7 @@ CONFIG_PID_NS=y # CONFIG_PINCTRL is not set CONFIG_PINCTRL_MSM8994=m # CONFIG_PINCTRL_SX150X is not set +# CONFIG_PINCTRL_TI_IODELAY is not set # CONFIG_PINMUX is not set CONFIG_PKCS7_MESSAGE_PARSER=y # CONFIG_PKCS7_TEST_KEY is not set @@ -3714,6 +3708,7 @@ CONFIG_PPTP=m CONFIG_PREEMPT_VOLUNTARY=y CONFIG_PREVENT_FIRMWARE_BUILD=y CONFIG_PRINTER=m +CONFIG_PRINTK_SAFE_LOG_BUF_SHIFT=12 CONFIG_PRINTK_TIME=y # CONFIG_PRINT_QUOTA_WARNING is not set CONFIG_PRINT_STACK_DEPTH=64 @@ -3730,6 +3725,7 @@ CONFIG_PROVE_LOCKING=y # CONFIG_PROVE_RCU_REPEATEDLY is not set CONFIG_PROVE_RCU=y # CONFIG_PS3_VRAM is not set +CONFIG_PSAMPLE=m CONFIG_PSERIES_CPUIDLE=y CONFIG_PSERIES_ENERGY=m # CONFIG_PSTORE_CONSOLE is not set @@ -3744,14 +3740,15 @@ CONFIG_PWM_HIBVT=m # CONFIG_PWM_PCA9685 is not set CONFIG_PWM=y CONFIG_PWRSEQ_EMMC=m +# CONFIG_PWRSEQ_SD8787 is not set CONFIG_PWRSEQ_SIMPLE=m # CONFIG_QCA7000 is not set CONFIG_QCOM_ADSP_PIL=m -# CONFIG_QCOM_EBI2 is not set # CONFIG_QCOM_EMAC is not set # CONFIG_QCOM_HIDMA is not set # CONFIG_QCOM_HIDMA_MGMT is not set CONFIG_QEDE=m +CONFIG_QEDF=m CONFIG_QEDI=m CONFIG_QED=m CONFIG_QED_SRIOV=y @@ -3797,7 +3794,6 @@ CONFIG_RADIO_TERRATEC=m CONFIG_RADIO_TRUST=m CONFIG_RADIO_TYPHOON=m CONFIG_RADIO_WL1273=m -# CONFIG_RADIO_WL128X is not set # depends on TI_ST which we don't enable CONFIG_RADIO_ZOLTRIX=m CONFIG_RAID_ATTRS=m # CONFIG_RANDOM32_SELFTEST is not set @@ -3842,6 +3838,7 @@ CONFIG_REALTEK_AUTOPM=y CONFIG_REALTEK_PHY=m CONFIG_REGMAP_I2C=m CONFIG_REGMAP=y +CONFIG_REGULATOR_CPCAP=m # CONFIG_REGULATOR_DEBUG is not set # CONFIG_REGULATOR is not set # CONFIG_REISERFS_CHECK is not set @@ -4322,6 +4319,7 @@ CONFIG_SENSORS_SIS5595=m CONFIG_SENSORS_SMSC47B397=m CONFIG_SENSORS_SMSC47M192=m CONFIG_SENSORS_SMSC47M1=m +# CONFIG_SENSORS_STTS751 is not set CONFIG_SENSORS_TC654=m CONFIG_SENSORS_TC74=m CONFIG_SENSORS_THMC50=m @@ -4357,6 +4355,7 @@ CONFIG_SERIAL_8250_CS=m # CONFIG_SERIAL_8250_DEPRECATED_OPTIONS is not set # CONFIG_SERIAL_8250_DETECT_IRQ is not set CONFIG_SERIAL_8250_DW=y +CONFIG_SERIAL_8250_EXAR=m CONFIG_SERIAL_8250_EXTENDED=y # CONFIG_SERIAL_8250_FINTEK is not set # CONFIG_SERIAL_8250_INGENIC is not set @@ -4365,6 +4364,7 @@ CONFIG_SERIAL_8250_MANY_PORTS=y # CONFIG_SERIAL_8250_MID is not set CONFIG_SERIAL_8250_MOXA=m CONFIG_SERIAL_8250_NR_UARTS=32 +CONFIG_SERIAL_8250_PCI=m CONFIG_SERIAL_8250_RSA=y CONFIG_SERIAL_8250_RT288X=y CONFIG_SERIAL_8250_RUNTIME_UARTS=32 @@ -4377,6 +4377,8 @@ CONFIG_SERIAL_ARC_NR_PORTS=1 CONFIG_SERIAL_CORE_CONSOLE=y CONFIG_SERIAL_CORE=m # CONFIG_SERIAL_CPM is not set +CONFIG_SERIAL_DEV_BUS=y +CONFIG_SERIAL_DEV_CTRL_TTYPORT=y # CONFIG_SERIAL_FSL_LPUART is not set CONFIG_SERIAL_ICOM=m # CONFIG_SERIAL_IFX6X60 is not set @@ -4444,6 +4446,7 @@ CONFIG_SLUB_CPU_PARTIAL=y CONFIG_SLUB=y CONFIG_SMARTJOYPLUS_FF=y CONFIG_SMC_IRCC_FIR=m +# CONFIG_SMC is not set # CONFIG_SM_FTL is not set CONFIG_SMP=y CONFIG_SMSC911X=m @@ -4598,7 +4601,7 @@ CONFIG_SND_SEQUENCER=m CONFIG_SND_SEQUENCER_OSS=y CONFIG_SND_SERIAL_U16550=m CONFIG_SND_SIMPLE_CARD=m -# CONFIG_SND_SIMPLE_SCU_CARD is not set +CONFIG_SND_SIMPLE_SCU_CARD=m CONFIG_SND_SIS7019=m # CONFIG_SND_SOC_ADAU1701 is not set # CONFIG_SND_SOC_ADAU7002 is not set @@ -4649,6 +4652,7 @@ CONFIG_SND_SOC_HDMI_CODEC=m # CONFIG_SND_SOC_MAX9860 is not set # CONFIG_SND_SOC_MSM8916_WCD_ANALOG is not set # CONFIG_SND_SOC_MSM8916_WCD_DIGITAL is not set +# CONFIG_SND_SOC_NAU8540 is not set # CONFIG_SND_SOC_NAU8810 is not set # CONFIG_SND_SOC_PCM1681 is not set # CONFIG_SND_SOC_PCM179X_I2C is not set @@ -4671,6 +4675,7 @@ CONFIG_SND_SOC_SPDIF=m # CONFIG_SND_SOC_STI_SAS is not set # CONFIG_SND_SOC_TAS2552 is not set # CONFIG_SND_SOC_TAS5086 is not set +# CONFIG_SND_SOC_TAS571X is not set # CONFIG_SND_SOC_TAS5720 is not set # CONFIG_SND_SOC_TFA9879 is not set # CONFIG_SND_SOC_TLV320AIC23_I2C is not set @@ -4703,7 +4708,6 @@ CONFIG_SND_SOC_SPDIF=m # CONFIG_SND_SOC_XTFPGA_I2S is not set CONFIG_SND_SONICVIBES=m # CONFIG_SND_SPI is not set -CONFIG_SND_SUN8I_CODEC_ANALOG=m # CONFIG_SND_SUPPORT_OLD_API is not set CONFIG_SND_TRIDENT=m CONFIG_SND_USB_6FIRE=m @@ -4729,6 +4733,7 @@ CONFIG_SND_VX222=m CONFIG_SND_YMFPCI=m # CONFIG_SOC_CAMERA is not set # CONFIG_SOC_TI is not set +# CONFIG_SOC_ZTE is not set CONFIG_SOFT_WATCHDOG=m CONFIG_SOLARIS_X86_PARTITION=y # CONFIG_SOLO6X10 is not set @@ -4772,6 +4777,7 @@ CONFIG_SQUASHFS_XATTR=y CONFIG_SQUASHFS_XZ=y CONFIG_SQUASHFS_ZLIB=y # CONFIG_SRAM is not set +# CONFIG_SRF08 is not set # CONFIG_SSB_DEBUG is not set CONFIG_SSB_DRIVER_GPIO=y CONFIG_SSB_DRIVER_PCICORE=y @@ -4789,6 +4795,7 @@ CONFIG_STAGING_MEDIA=y CONFIG_STAGING=y CONFIG_STANDALONE=y # CONFIG_STATIC_KEYS_SELFTEST is not set +# CONFIG_STATIC_USERMODEHELPER is not set CONFIG_STE10XP=m # CONFIG_STE_MODEM_RPROC is not set CONFIG_STK3310=m @@ -4803,10 +4810,6 @@ CONFIG_STMMAC_ETH=m CONFIG_STRICT_DEVMEM=y CONFIG_STRIP_ASM_SYMS=y # CONFIG_STRIP is not set -# CONFIG_SUN50I_A64_CCU is not set -# CONFIG_SUN6I_A31_CCU is not set -# CONFIG_SUN8I_A23_CCU is not set -# CONFIG_SUN8I_A33_CCU is not set CONFIG_SUNDANCE=m # CONFIG_SUNDANCE_MMIO is not set CONFIG_SUNGEM=m @@ -4815,7 +4818,6 @@ CONFIG_SUNRPC_DEBUG=y CONFIG_SUNRPC_GSS=m CONFIG_SUNRPC=m CONFIG_SUNRPC_XPRT_RDMA=m -# CONFIG_SUNXI_CCU is not set CONFIG_SURFACE_3_BUTTON=m CONFIG_SURFACE3_WMI=m CONFIG_SUSPEND_FREEZER=y @@ -4898,8 +4900,6 @@ CONFIG_TCP_CONG_YEAH=m CONFIG_TCP_MD5SIG=y # CONFIG_TCS3414 is not set # CONFIG_TCS3472 is not set -CONFIG_TEGRA_GMI=m -CONFIG_TEGRA_IVC=y CONFIG_TEHUTI=m CONFIG_TEKRAM_DONGLE=m CONFIG_TELCLOCK=m @@ -4913,9 +4913,11 @@ CONFIG_TEST_ASYNC_DRIVER_PROBE=m CONFIG_TEST_KSTRTOX=y CONFIG_TEST_LIST_SORT=y # CONFIG_TEST_LKM is not set +# CONFIG_TEST_PARMAN is not set # CONFIG_TEST_POWER is not set # CONFIG_TEST_PRINTF is not set # CONFIG_TEST_RHASHTABLE is not set +# CONFIG_TEST_SORT is not set # CONFIG_TEST_STATIC_KEYS is not set # CONFIG_TEST_STRING_HELPERS is not set # CONFIG_TEST_UDELAY is not set @@ -4941,6 +4943,7 @@ CONFIG_THRUSTMASTER_FF=y # CONFIG_TI_ADC128S052 is not set # CONFIG_TI_ADC161S626 is not set # CONFIG_TI_ADS1015 is not set +# CONFIG_TI_ADS7950 is not set # CONFIG_TI_ADS8688 is not set # CONFIG_TI_CPSW_ALE is not set # CONFIG_TI_DAC7512 is not set @@ -4955,9 +4958,11 @@ CONFIG_TIPC_MEDIA_UDP=y CONFIG_TI_SCI_PROTOCOL=m # CONFIG_TI_ST is not set # CONFIG_TI_SYSCON_RESET is not set +# CONFIG_TI_TLC4541 is not set CONFIG_TLAN=m # CONFIG_TMD_HERMES is not set # CONFIG_TMP006 is not set +# CONFIG_TMP007 is not set CONFIG_TMPFS_POSIX_ACL=y CONFIG_TMPFS_XATTR=y CONFIG_TMPFS=y @@ -5026,6 +5031,7 @@ CONFIG_TOUCHSCREEN_WACOM_I2C=m CONFIG_TOUCHSCREEN_WACOM_W8001=m # CONFIG_TOUCHSCREEN_WDT87XX_I2C is not set # CONFIG_TOUCHSCREEN_WM97XX is not set +CONFIG_TOUCHSCREEN_ZET6223=m CONFIG_TOUCHSCREEN_ZFORCE=m # CONFIG_TPL0102 is not set # CONFIG_TPS6105X is not set @@ -5038,7 +5044,8 @@ CONFIG_TOUCHSCREEN_ZFORCE=m CONFIG_TRACER_SNAPSHOT=y # CONFIG_TRACE_SINK is not set # CONFIG_TRACING_EVENTS_GPIO is not set -# CONFIG_TRANSPARENT_HUGEPAGE is not set +CONFIG_TRANSPARENT_HUGEPAGE_MADVISE=y +CONFIG_TRANSPARENT_HUGEPAGE=y # CONFIG_TR is not set CONFIG_TRUSTED_KEYS=m # CONFIG_TS4800_IRQ is not set @@ -5094,7 +5101,7 @@ CONFIG_UNIX_DIAG=m CONFIG_UNIXWARE_DISKLABEL=y CONFIG_UNIX=y CONFIG_UNUSED_SYMBOLS=y -CONFIG_UPROBE_EVENT=y +CONFIG_UPROBE_EVENTS=y # CONFIG_US5182D is not set CONFIG_USB_ACM=m CONFIG_USB_ADUTUX=m @@ -5111,6 +5118,7 @@ CONFIG_USB_CATC=m CONFIG_USB_CDC_PHONET=m CONFIG_USB_CHAOSKEY=m # CONFIG_USB_CHIPIDEA is not set +# CONFIG_USB_CHIPIDEA_ULPI is not set CONFIG_USB_CXACRU=m # CONFIG_USB_CYPRESS_CY7C63 is not set # CONFIG_USB_CYTHERM is not set @@ -5197,6 +5205,7 @@ CONFIG_USB_HID=y CONFIG_USB_HSIC_USB3503=m CONFIG_USB_HSIC_USB4604=m CONFIG_USB_HSO=m +CONFIG_USB_HUB_USB251XB=m CONFIG_USB_HWA_HCD=m CONFIG_USB_IDMOUSE=m CONFIG_USB_IOWARRIOR=m @@ -5344,6 +5353,7 @@ CONFIG_USB_SERIAL_SPCP8X5=m CONFIG_USB_SERIAL_SSU100=m CONFIG_USB_SERIAL_SYMBOL=m CONFIG_USB_SERIAL_TI=m +CONFIG_USB_SERIAL_UPD78F0730=m CONFIG_USB_SERIAL_VISOR=m CONFIG_USB_SERIAL_WHITEHEAT=m # CONFIG_USB_SERIAL_WISHBONE is not set @@ -5432,6 +5442,7 @@ CONFIG_VFIO_MDEV=m CONFIG_VFIO_PCI=m CONFIG_VGA_ARB_MAX_GPUS=16 CONFIG_VGA_ARB=y +# CONFIG_VGACON_SOFT_SCROLLBACK_PERSISTENT_ENABLE_BY_DEFAULT is not set CONFIG_VGACON_SOFT_SCROLLBACK_SIZE=64 CONFIG_VGACON_SOFT_SCROLLBACK=y CONFIG_VGA_CONSOLE=y @@ -5482,6 +5493,7 @@ CONFIG_VIDEO_HDPVR=m CONFIG_VIDEO_HEXIUM_GEMINI=m CONFIG_VIDEO_HEXIUM_ORION=m # CONFIG_VIDEO_IVTV_ALSA is not set +# CONFIG_VIDEO_IVTV_DEPRECATED_IOCTLS is not set CONFIG_VIDEO_IVTV=m # CONFIG_VIDEO_M5MOLS is not set # CONFIG_VIDEO_MEM2MEM_DEINTERLACE is not set @@ -5503,7 +5515,6 @@ CONFIG_VIDEO_SAA7134_RC=y CONFIG_VIDEO_SAA7146=m CONFIG_VIDEO_SAA7146_VV=m CONFIG_VIDEO_SAA7164=m -CONFIG_VIDEO_SAMSUNG_S5P_CEC=m # CONFIG_VIDEO_SH_MOBILE_CEU is not set # CONFIG_VIDEO_SH_MOBILE_CSI2 is not set # CONFIG_VIDEO_SH_VEU is not set @@ -5539,6 +5550,7 @@ CONFIG_VIDEO_ZORAN_ZR36060=m # CONFIG_VIRT_DRIVERS is not set CONFIG_VIRTIO_BALLOON=m CONFIG_VIRTIO_BLK=m +CONFIG_VIRTIO_BLK_SCSI=y CONFIG_VIRTIO_CONSOLE=m CONFIG_VIRTIO_INPUT=m # CONFIG_VIRTIO_MMIO_CMDLINE_DEVICES is not set @@ -5554,8 +5566,6 @@ CONFIG_VLAN_8021Q=m CONFIG_VLAN_8021Q_MVRP=y CONFIG_VLSI_FIR=m # CONFIG_VME_BUS is not set -CONFIG_VMWARE_BALLOON=m -CONFIG_VMWARE_PVSCSI=m # CONFIG_VMXNET3 is not set CONFIG_VORTEX=m CONFIG_VSOCKETS=m @@ -5578,6 +5588,7 @@ CONFIG_W1_MASTER_DS2490=m # CONFIG_W1_MASTER_GPIO is not set # CONFIG_W1_MASTER_MATROX is not set CONFIG_W1_SLAVE_BQ27000=m +CONFIG_W1_SLAVE_DS2405=m CONFIG_W1_SLAVE_DS2406=m CONFIG_W1_SLAVE_DS2408=m # CONFIG_W1_SLAVE_DS2408_READBACK is not set @@ -5658,6 +5669,7 @@ CONFIG_WM8350_POWER=m CONFIG_WM8350_WATCHDOG=m # CONFIG_WQ_POWER_EFFICIENT_DEFAULT is not set CONFIG_WQ_WATCHDOG=y +# CONFIG_WW_MUTEX_SELFTEST is not set # CONFIG_X25 is not set CONFIG_X86_BOOTPARAM_MEMORY_CORRUPTION_CHECK=y CONFIG_X86_PTDUMP=y diff --git a/kernel-ppc64.config b/kernel-ppc64.config index 69c5f3d8c..af2f8af93 100644 --- a/kernel-ppc64.config +++ b/kernel-ppc64.config @@ -174,10 +174,7 @@ CONFIG_APPLE_AIRPORT=m # CONFIG_APPLICOM is not set CONFIG_AQUANTIA_PHY=m CONFIG_AR5523=m -# CONFIG_ARCH_TEGRA_186_SOC is not set # CONFIG_ARCNET is not set -# CONFIG_ARM64_PTDUMP is not set -# CONFIG_ARM_SCPI_PROTOCOL is not set # CONFIG_AS3935 is not set CONFIG_ASYMMETRIC_KEY_TYPE=y CONFIG_ASYNC_RAID6_TEST=m @@ -331,7 +328,6 @@ CONFIG_BATMAN_ADV_NC=y # CONFIG_BATTERY_DS2781 is not set # CONFIG_BATTERY_DS2782 is not set # CONFIG_BATTERY_GAUGE_LTC2941 is not set -# CONFIG_BATTERY_GOLDFISH is not set # CONFIG_BATTERY_MAX17040 is not set # CONFIG_BATTERY_MAX17042 is not set # CONFIG_BATTERY_SBS is not set @@ -374,6 +370,7 @@ CONFIG_BINFMT_SCRIPT=y CONFIG_BLK_CGROUP=y # CONFIG_BLK_CMDLINE_PARSER is not set CONFIG_BLK_CPQ_CISS_DA=m +CONFIG_BLK_DEBUG_FS=y CONFIG_BLK_DEV_3W_XXXX_RAID=m # CONFIG_BLK_DEV_AEC62XX is not set # CONFIG_BLK_DEV_ALI15X3 is not set @@ -451,6 +448,7 @@ CONFIG_BLK_DEV_UMEM=m # CONFIG_BLK_DEV_VIA82CXXX is not set CONFIG_BLK_DEV=y CONFIG_BLK_DEV_ZONED=y +CONFIG_BLK_SED_OPAL=y CONFIG_BLK_WBT_MQ=y # CONFIG_BLK_WBT_SQ is not set CONFIG_BLK_WBT=y @@ -547,6 +545,7 @@ CONFIG_BT_HCIUART_INTEL=y CONFIG_BT_HCIUART_LL=y CONFIG_BT_HCIUART=m CONFIG_BT_HCIUART_MRVL=y +CONFIG_BT_HCIUART_NOKIA=m CONFIG_BT_HCIUART_QCA=y CONFIG_BT_HCIVHCI=m CONFIG_BT_HIDP=m @@ -647,6 +646,7 @@ CONFIG_CEPH_LIB=m # CONFIG_CEPH_LIB_USE_DNS_RESOLVER is not set CONFIG_CFAG12864B=m CONFIG_CFAG12864B_RATE=20 +CONFIG_CFG80211_CRDA_SUPPORT=y CONFIG_CFG80211_DEBUGFS=y CONFIG_CFG80211_DEFAULT_PS=y # CONFIG_CFG80211_DEVELOPER_WARNINGS is not set @@ -664,6 +664,7 @@ CONFIG_CGROUP_NET_CLASSID=y CONFIG_CGROUP_NET_PRIO=y CONFIG_CGROUP_PERF=y CONFIG_CGROUP_PIDS=y +# CONFIG_CGROUP_RDMA is not set CONFIG_CGROUP_SCHED=y CONFIG_CGROUPS=y # CONFIG_CHARGER_BQ2415X is not set @@ -671,6 +672,7 @@ CONFIG_CGROUPS=y # CONFIG_CHARGER_BQ24257 is not set # CONFIG_CHARGER_BQ24735 is not set # CONFIG_CHARGER_BQ25890 is not set +# CONFIG_CHARGER_DETECTOR_MAX14656 is not set # CONFIG_CHARGER_GPIO is not set # CONFIG_CHARGER_ISP1704 is not set # CONFIG_CHARGER_LP8727 is not set @@ -678,6 +680,7 @@ CONFIG_CGROUPS=y # CONFIG_CHARGER_PCF50633 is not set # CONFIG_CHARGER_QCOM_SMBB is not set # CONFIG_CHARGER_RT9455 is not set +# CONFIG_CHARGER_SBS is not set CONFIG_CHARGER_SMB347=m # CONFIG_CHECKPOINT_RESTORE is not set CONFIG_CHELSIO_T1_1G=y @@ -716,6 +719,7 @@ CONFIG_CLS_U32_PERF=y CONFIG_CM32181=m # CONFIG_CM3232 is not set # CONFIG_CM3323 is not set +CONFIG_CM3605=m # CONFIG_CM36651 is not set CONFIG_CMA_AREAS=7 # CONFIG_CMA_DEBUGFS is not set @@ -731,23 +735,12 @@ CONFIG_CODA_FS=m # CONFIG_COMMON_CLK_CDCE706 is not set # CONFIG_COMMON_CLK_CDCE925 is not set # CONFIG_COMMON_CLK_CS2000_CP is not set -# CONFIG_COMMON_CLK_HI3516CV300 is not set -# CONFIG_COMMON_CLK_HI3519 is not set -# CONFIG_COMMON_CLK_HI3798CV200 is not set -# CONFIG_COMMON_CLK_MT2701_BDPSYS is not set -# CONFIG_COMMON_CLK_MT2701_ETHSYS is not set -# CONFIG_COMMON_CLK_MT2701_HIFSYS is not set -# CONFIG_COMMON_CLK_MT2701_IMGSYS is not set -# CONFIG_COMMON_CLK_MT2701 is not set -# CONFIG_COMMON_CLK_MT2701_MMSYS is not set -# CONFIG_COMMON_CLK_MT2701_VDECSYS is not set -# CONFIG_COMMON_CLK_MT8135 is not set -# CONFIG_COMMON_CLK_MT8173 is not set -# CONFIG_COMMON_CLK_OXNAS is not set # CONFIG_COMMON_CLK_PWM is not set # CONFIG_COMMON_CLK_SI514 is not set # CONFIG_COMMON_CLK_SI5351 is not set +# CONFIG_COMMON_CLK_VC5 is not set # CONFIG_COMMON_CLK_XLNX_CLKWZRD is not set +# CONFIG_COMMON_RESET_HI3660 is not set CONFIG_COMPACTION=y # CONFIG_COMPAT_BRK is not set # CONFIG_COMPILE_TEST is not set @@ -794,6 +787,7 @@ CONFIG_CRC_T10DIF=y CONFIG_CROSS_COMPILE="" CONFIG_CROSS_MEMORY_ATTACH=y CONFIG_CRYPTO_842=m +CONFIG_CRYPTO_AES_TI=m CONFIG_CRYPTO_AES=y CONFIG_CRYPTO_ANSI_CPRNG=m CONFIG_CRYPTO_ANUBIS=m @@ -809,12 +803,9 @@ CONFIG_CRYPTO_CCM=m CONFIG_CRYPTO_CHACHA20=m CONFIG_CRYPTO_CHACHA20POLY1305=m CONFIG_CRYPTO_CMAC=m -CONFIG_CRYPTO_CRC32_ARM_CE=m -CONFIG_CRYPTO_CRC32C_INTEL=m CONFIG_CRYPTO_CRC32C_VPMSUM=m CONFIG_CRYPTO_CRC32C=y CONFIG_CRYPTO_CRC32=m -CONFIG_CRYPTO_CRCT10DIF_ARM_CE=m # CONFIG_CRYPTO_CRYPTD is not set CONFIG_CRYPTO_CTR=y CONFIG_CRYPTO_CTS=y @@ -950,6 +941,7 @@ CONFIG_DEBUG_OBJECTS_ENABLE_DEFAULT=1 # CONFIG_DEBUG_PERF_USE_VMALLOC is not set # CONFIG_DEBUG_PI_LIST is not set # CONFIG_DEBUG_PINCTRL is not set +# CONFIG_DEBUG_REFCOUNT is not set CONFIG_DEBUG_RODATA_TEST=y # CONFIG_DEBUG_RT_MUTEXES is not set # CONFIG_DEBUG_SECTION_MISMATCH is not set @@ -977,6 +969,8 @@ CONFIG_DEFAULT_MMAP_MIN_ADDR=4096 # CONFIG_DEFXX is not set # CONFIG_DETECT_HUNG_TASK is not set CONFIG_DEV_APPLETALK=m +CONFIG_DEV_DAX=m +CONFIG_DEV_DAX_PMEM=m # CONFIG_DEVFREQ_GOV_PASSIVE is not set # CONFIG_DEVFREQ_GOV_PERFORMANCE is not set # CONFIG_DEVFREQ_GOV_POWERSAVE is not set @@ -984,6 +978,7 @@ CONFIG_DEVFREQ_GOV_SIMPLE_ONDEMAND=m # CONFIG_DEVFREQ_GOV_USERSPACE is not set # CONFIG_DEVKMEM is not set CONFIG_DEVMEM=y +# CONFIG_DEVPORT is not set CONFIG_DEVTMPFS_MOUNT=y CONFIG_DEVTMPFS=y # CONFIG_DGAP is not set @@ -1051,6 +1046,7 @@ CONFIG_DRM_ANALOGIX_ANX78XX=m CONFIG_DRM_AST=m CONFIG_DRM_BOCHS=m CONFIG_DRM_CIRRUS_QEMU=m +# CONFIG_DRM_DEBUG_MM_SELFTEST is not set CONFIG_DRM_DP_AUX_CHARDEV=y # CONFIG_DRM_DUMB_VGA_DAC is not set CONFIG_DRM_DW_HDMI_I2S_AUDIO=m @@ -1058,22 +1054,13 @@ CONFIG_DRM_FBDEV_EMULATION=y CONFIG_DRM_HISI_HIBMC=m CONFIG_DRM_I2C_ADV7511_AUDIO=y CONFIG_DRM_I2C_ADV7511=m -# CONFIG_DRM_I2C_ADV7533 is not set +CONFIG_DRM_I2C_ADV7533=y CONFIG_DRM_I2C_CH7006=m CONFIG_DRM_I2C_NXP_TDA998X=m CONFIG_DRM_I2C_SIL164=m -# CONFIG_DRM_I810 is not set -# CONFIG_DRM_I915_ALPHA_SUPPORT is not set -CONFIG_DRM_I915_CAPTURE_ERROR=y -CONFIG_DRM_I915_COMPRESS_ERROR=y -CONFIG_DRM_I915_GVT_KVMGT=m -CONFIG_DRM_I915_GVT=y -CONFIG_DRM_I915=m -CONFIG_DRM_I915_USERPTR=y # CONFIG_DRM_LEGACY is not set CONFIG_DRM_LOAD_EDID_FIRMWARE=y CONFIG_DRM=m -# CONFIG_DRM_MALI_DISPLAY is not set CONFIG_DRM_MGAG200=m # CONFIG_DRM_MGA is not set CONFIG_DRM_MXSFB=m @@ -1094,14 +1081,13 @@ CONFIG_DRM_RADEON_USERPTR=y CONFIG_DRM_SIL_SII8620=m # CONFIG_DRM_SIS is not set # CONFIG_DRM_TDFX is not set +# CONFIG_DRM_TINYDRM is not set CONFIG_DRM_TI_TFP410=m # CONFIG_DRM_TOSHIBA_TC358767 is not set CONFIG_DRM_UDL=m CONFIG_DRM_VGEM=m CONFIG_DRM_VIA=m CONFIG_DRM_VIRTIO_GPU=m -CONFIG_DRM_VMWGFX_FBCON=y -CONFIG_DRM_VMWGFX=m # CONFIG_DS1682 is not set # CONFIG_DS1803 is not set # CONFIG_DT3155 is not set @@ -1189,6 +1175,7 @@ CONFIG_DVB_USB_UMT_010=m CONFIG_DVB_USB_V2=m CONFIG_DVB_USB_VP702X=m CONFIG_DVB_USB_VP7045=m +CONFIG_DVB_USB_ZD1301=m # CONFIG_DW_DMAC_BIG_ENDIAN_IO is not set CONFIG_DW_DMAC_CORE=m CONFIG_DW_DMAC=m @@ -1216,6 +1203,7 @@ CONFIG_EEPROM_93CX6=m # CONFIG_EEPROM_93XX46 is not set CONFIG_EEPROM_AT24=m # CONFIG_EEPROM_AT25 is not set +CONFIG_EEPROM_IDT_89HPESX=m CONFIG_EEPROM_LEGACY=m CONFIG_EEPROM_MAX6875=m # CONFIG_EFI_ALLOW_SECURE_BOOT_EXIT is not set @@ -1226,7 +1214,6 @@ CONFIG_EFI_PARTITION=y # CONFIG_EFI_TEST is not set # CONFIG_EFS_FS is not set CONFIG_EHEA=m -# CONFIG_EMAC_ROCKCHIP is not set # CONFIG_EMBEDDED is not set CONFIG_ENABLE_MUST_CHECK=y # CONFIG_ENABLE_WARN_DEPRECATED is not set @@ -1258,6 +1245,7 @@ CONFIG_EXT4_FS_SECURITY=y CONFIG_EXT4_FS=y CONFIG_EXT4_USE_FOR_EXT2=y # CONFIG_EXTCON_ADC_JACK is not set +CONFIG_EXTCON_INTEL_INT3496=m # CONFIG_EXTCON is not set # CONFIG_EXTCON_QCOM_SPMI_MISC is not set CONFIG_EXTRA_FIRMWARE="" @@ -1285,7 +1273,6 @@ CONFIG_FAT_DEFAULT_IOCHARSET="ascii" CONFIG_FAT_FS=m # CONFIG_FAULT_INJECTION is not set # CONFIG_FB_3DFX is not set -# CONFIG_FB_ARC is not set # CONFIG_FB_ARK is not set # CONFIG_FB_ASILIANT is not set CONFIG_FB_ATY128_BACKLIGHT=y @@ -1303,18 +1290,11 @@ CONFIG_FB_ATY_BACKLIGHT=y # CONFIG_FB_CYBER2000 is not set CONFIG_FB_EFI=y # CONFIG_FB_FOREIGN_ENDIAN is not set -# CONFIG_FB_GEODE is not set -# CONFIG_FB_GOLDFISH is not set # CONFIG_FB_HECUBA is not set -# CONFIG_FB_HGA is not set # CONFIG_FB_I740 is not set -CONFIG_FB_I810_GTF=y -CONFIG_FB_I810_I2C=y -CONFIG_FB_I810=m CONFIG_FB_IBM_GXT4500=y # CONFIG_FB_IMSTT is not set # CONFIG_FB_KYRO is not set -# CONFIG_FB_LE80578 is not set CONFIG_FB_MATROX_G=y # CONFIG_FB_MATROX_I2C is not set # CONFIG_FB_MATROX_MILLENIUM is not set @@ -1365,8 +1345,6 @@ CONFIG_FB_TILEBLITTING=y # CONFIG_FB_VALKYRIE is not set CONFIG_FB_VESA=y # CONFIG_FB_VGA16 is not set -# CONFIG_FB_VIA_DIRECT_PROCFS is not set -# CONFIG_FB_VIA is not set CONFIG_FB_VIRTUAL=m # CONFIG_FB_VOODOO1 is not set # CONFIG_FB_VT8623 is not set @@ -1411,6 +1389,7 @@ CONFIG_FSCACHE_STATS=y CONFIG_FS_DAX=y CONFIG_FS_ENCRYPTION=y # CONFIG_FS_ENET is not set +CONFIG_FSI=m # CONFIG_FSL_DMA is not set # CONFIG_FSL_EDMA is not set # CONFIG_FSL_LBC is not set @@ -1458,7 +1437,8 @@ CONFIG_GAMEPORT_NS558=m CONFIG_GENERIC_PHY=y CONFIG_GENEVE=m # CONFIG_GEN_RTC is not set -# CONFIG_GENWQE is not set +CONFIG_GENWQE=m +CONFIG_GENWQE_PLATFORM_ERROR_RECOVERY=1 CONFIG_GFS2_FS_LOCKING_DLM=y CONFIG_GFS2_FS=m CONFIG_GIGASET_BASE=m @@ -1478,11 +1458,10 @@ CONFIG_GIRBIL_DONGLE=m # CONFIG_GPIO_ADNP is not set # CONFIG_GPIO_ADP5588 is not set # CONFIG_GPIO_ALTERA is not set -# CONFIG_GPIO_AMD8111 is not set # CONFIG_GPIO_AMDPT is not set # CONFIG_GPIO_BT8XX is not set -# CONFIG_GPIO_CS5535 is not set # CONFIG_GPIO_DWAPB is not set +CONFIG_GPIO_EXAR=m # CONFIG_GPIO_GENERIC_PLATFORM is not set # CONFIG_GPIO_GRGPIO is not set # CONFIG_GPIO_IT87 is not set @@ -1492,30 +1471,27 @@ CONFIG_GPIOLIB=y # CONFIG_GPIO_MAX732X is not set # CONFIG_GPIO_MC33880 is not set # CONFIG_GPIO_MCP23S08 is not set -# CONFIG_GPIO_ML_IOH is not set # CONFIG_GPIO_MOCKUP is not set # CONFIG_GPIO_MPC8XXX is not set CONFIG_GPIO_PCA953X=m CONFIG_GPIO_PCF857X=m # CONFIG_GPIO_PCH is not set +CONFIG_GPIO_PCI_IDIO_16=m # CONFIG_GPIO_PISOSR is not set # CONFIG_GPIO_RDC321X is not set # CONFIG_GPIO_SCH311X is not set -# CONFIG_GPIO_SCH is not set # CONFIG_GPIO_SX150X is not set # CONFIG_GPIO_SYSCON is not set -CONFIG_GPIO_SYSFS=y +# CONFIG_GPIO_SYSFS is not set # CONFIG_GPIO_TPIC2810 is not set # CONFIG_GPIO_TS4900 is not set # CONFIG_GPIO_TS5500 is not set # CONFIG_GPIO_UCB1400 is not set CONFIG_GPIO_VIPERBOARD=m -# CONFIG_GPIO_VX855 is not set # CONFIG_GPIO_WATCHDOG is not set CONFIG_GPIO_WM831X=m # CONFIG_GPIO_WS16C48 is not set # CONFIG_GPIO_XILINX is not set -# CONFIG_GPIO_ZX is not set CONFIG_GREENASIA_FF=y # CONFIG_GREYBUS is not set # CONFIG_GS_FPGABOOT is not set @@ -1717,6 +1693,7 @@ CONFIG_HW_RANDOM_TPM=m CONFIG_HW_RANDOM_VIRTIO=m CONFIG_HW_RANDOM=y CONFIG_HWSPINLOCK=m +# CONFIG_HX711 is not set CONFIG_HYSDN_CAPI=y CONFIG_HYSDN=m CONFIG_HZ=100 @@ -1752,7 +1729,6 @@ CONFIG_I2C_DIOLAN_U2C=m CONFIG_I2C_HELPER_AUTO=y CONFIG_I2C_HID=m # CONFIG_I2C_I801 is not set -CONFIG_I2C_IMX_LPI2C=m # CONFIG_I2C_ISCH is not set CONFIG_I2C=m CONFIG_I2C_MLXCPLD=m @@ -1773,8 +1749,6 @@ CONFIG_I2C_PARPORT=m CONFIG_I2C_PCA_PLATFORM=m # CONFIG_I2C_PIIX4 is not set CONFIG_I2C_POWERMAC=m -CONFIG_I2C_PXA=m -# CONFIG_I2C_PXA_SLAVE is not set # CONFIG_I2C_RK3X is not set # CONFIG_I2C_ROBOTFUZZ_OSIF is not set CONFIG_I2C_SI470X=m @@ -1800,8 +1774,6 @@ CONFIG_I40EVF=m CONFIG_I6300ESB_WDT=m CONFIG_I82092=m # CONFIG_IAQCORE is not set -CONFIG_IB700_WDT=m -CONFIG_IBMASR=m CONFIG_IBM_BSR=m CONFIG_IBMEBUS=y # CONFIG_IBM_EMAC is not set @@ -1855,6 +1827,7 @@ CONFIG_IIO_ST_ACCEL_SPI_3AXIS=m CONFIG_IIO_ST_GYRO_3AXIS=m CONFIG_IIO_ST_GYRO_I2C_3AXIS=m CONFIG_IIO_ST_GYRO_SPI_3AXIS=m +# CONFIG_IIO_ST_LSM6DSX is not set CONFIG_IIO_ST_MAGN_3AXIS=m # CONFIG_IIO_ST_PRESS is not set CONFIG_IIO_SW_DEVICE=m @@ -1871,6 +1844,7 @@ CONFIG_IMA_MEASURE_PCR_IDX=10 # CONFIG_INA2XX_ADC is not set CONFIG_INET6_AH=m CONFIG_INET6_ESP=m +CONFIG_INET6_ESP_OFFLOAD=m CONFIG_INET6_IPCOMP=m CONFIG_INET6_XFRM_MODE_BEET=m CONFIG_INET6_XFRM_MODE_ROUTEOPTIMIZATION=m @@ -1880,6 +1854,7 @@ CONFIG_INET_AH=m CONFIG_INET_DIAG_DESTROY=y CONFIG_INET_DIAG=m CONFIG_INET_ESP=m +CONFIG_INET_ESP_OFFLOAD=m CONFIG_INET_IPCOMP=m CONFIG_INET_RAW_DIAG=m CONFIG_INET_TUNNEL=m @@ -1888,6 +1863,7 @@ CONFIG_INET_XFRM_MODE_BEET=m CONFIG_INET_XFRM_MODE_TRANSPORT=m CONFIG_INET_XFRM_MODE_TUNNEL=m CONFIG_INET=y +# CONFIG_INFINIBAND_BNXT_RE is not set # CONFIG_INFINIBAND_CXGB3_DEBUG is not set CONFIG_INFINIBAND_CXGB3=m CONFIG_INFINIBAND_CXGB4=m @@ -1978,8 +1954,6 @@ CONFIG_INPUT=y CONFIG_INPUT_YEALINK=m # CONFIG_INTEGRITY is not set # CONFIG_INTEL_IDMA64 is not set -# CONFIG_INTEL_MENLOW is not set -CONFIG_INTEL_RDT_A=y # CONFIG_INTEL_SOC_PMIC is not set # CONFIG_INTEL_TH is not set CONFIG_INTEL_XWAY_PHY=m @@ -2127,6 +2101,7 @@ CONFIG_IP_VS_SH_TAB_BITS=8 CONFIG_IP_VS_TAB_BITS=12 CONFIG_IP_VS_WLC=m CONFIG_IP_VS_WRR=m +CONFIG_IPVTAP=m # CONFIG_IPW2100_DEBUG is not set # CONFIG_IPW2100 is not set # CONFIG_IPW2200_DEBUG is not set @@ -2170,6 +2145,7 @@ CONFIG_IR_SERIAL=m CONFIG_IR_SERIAL_TRANSMITTER=y CONFIG_IR_SHARP_DECODER=m CONFIG_IR_SONY_DECODER=m +CONFIG_IR_SPI=m CONFIG_IR_STREAMZAP=m CONFIG_IR_TTUSBIR=m CONFIG_IRTTY_SIR=m @@ -2321,6 +2297,7 @@ CONFIG_KEYBOARD_PMIC8XXX=m # CONFIG_KEYBOARD_SUNKBD is not set # CONFIG_KEYBOARD_TCA6416 is not set # CONFIG_KEYBOARD_TCA8418 is not set +CONFIG_KEYBOARD_TM2_TOUCHKEY=m # CONFIG_KEYBOARD_XTKBD is not set CONFIG_KEY_DH_OPERATIONS=y CONFIG_KEYS=y @@ -2332,7 +2309,7 @@ CONFIG_KGDB_TESTS=y CONFIG_KGDB=y CONFIG_KINGSUN_DONGLE=m # CONFIG_KMX61 is not set -CONFIG_KPROBE_EVENT=y +CONFIG_KPROBE_EVENTS=y # CONFIG_KPROBES_SANITY_TEST is not set CONFIG_KPROBES=y CONFIG_KS0108_DELAY=2 @@ -2385,13 +2362,13 @@ CONFIG_LDM_PARTITION=y # CONFIG_LEDS_BCM6358 is not set # CONFIG_LEDS_BD2802 is not set CONFIG_LEDS_BLINKM=m +CONFIG_LEDS_BRIGHTNESS_HW_CHANGED=y CONFIG_LEDS_CLASS_FLASH=m CONFIG_LEDS_CLASS=y CONFIG_LEDS_CLEVO_MAIL=m # CONFIG_LEDS_DAC124S085 is not set CONFIG_LEDS_DELL_NETBOOKS=m # CONFIG_LEDS_GPIO is not set -CONFIG_LEDS_INTEL_SS4200=m # CONFIG_LEDS_IS31FL319X is not set # CONFIG_LEDS_IS31FL32XX is not set # CONFIG_LEDS_KTD2692 is not set @@ -2501,6 +2478,8 @@ CONFIG_LPARCFG=y # CONFIG_LPC_ICH is not set CONFIG_LP_CONSOLE=y # CONFIG_LPC_SCH is not set +CONFIG_LPFC_NVME_INITIATOR=y +CONFIG_LPFC_NVME_TARGET=y CONFIG_LSI_ET1011C_PHY=m CONFIG_LSM_MMAP_MIN_ADDR=65536 # CONFIG_LTC2485 is not set @@ -2534,6 +2513,7 @@ CONFIG_MACVLAN=m CONFIG_MACVTAP=m # CONFIG_MAG3110 is not set CONFIG_MAGIC_SYSRQ_DEFAULT_ENABLE=0x0 +CONFIG_MAGIC_SYSRQ_SERIAL=y CONFIG_MAGIC_SYSRQ=y # CONFIG_MAILBOX is not set # CONFIG_MAILBOX_TEST is not set @@ -2542,10 +2522,12 @@ CONFIG_MANTIS_CORE=m CONFIG_MARVELL_PHY=m # CONFIG_MATH_EMULATION is not set # CONFIG_MAX1027 is not set +# CONFIG_MAX11100 is not set # CONFIG_MAX1363 is not set CONFIG_MAX30100=m # CONFIG_MAX44000 is not set # CONFIG_MAX517 is not set +# CONFIG_MAX5481 is not set # CONFIG_MAX5487 is not set # CONFIG_MAX5821 is not set # CONFIG_MAX63XX_WATCHDOG is not set @@ -2623,7 +2605,6 @@ CONFIG_MEMSTICK_TIFM_MS=m # CONFIG_MEMSTICK_UNSAFE_RESUME is not set # CONFIG_MEMTEST is not set # CONFIG_MEN_A21_WDT is not set -CONFIG_MESON_GXL_PHY=m CONFIG_MESSAGE_LOGLEVEL_DEFAULT=4 # CONFIG_MFD_88PM800 is not set # CONFIG_MFD_88PM805 is not set @@ -2642,6 +2623,7 @@ CONFIG_MESSAGE_LOGLEVEL_DEFAULT=4 # CONFIG_MFD_AXP20X is not set # CONFIG_MFD_BCM590XX is not set CONFIG_MFD_CORE=m +CONFIG_MFD_CPCAP=m # CONFIG_MFD_CROS_EC is not set # CONFIG_MFD_CS5535 is not set # CONFIG_MFD_DA9052_I2C is not set @@ -2688,7 +2670,6 @@ CONFIG_MFD_SM501_GPIO=y CONFIG_MFD_SM501=m # CONFIG_MFD_SMSC is not set # CONFIG_MFD_STMPE is not set -CONFIG_MFD_SUN4I_GPADC=m # CONFIG_MFD_SYSCON is not set # CONFIG_MFD_TC3589X is not set # CONFIG_MFD_TC6393XB is not set @@ -2823,7 +2804,6 @@ CONFIG_MOUSE_ELAN_I2C_SMBUS=y CONFIG_MOUSE_PS2_ELANTECH=y CONFIG_MOUSE_PS2_SENTELIC=y # CONFIG_MOUSE_PS2_TOUCHKIT is not set -# CONFIG_MOUSE_PS2_VMMOUSE is not set CONFIG_MOUSE_PS2=y CONFIG_MOUSE_SERIAL=m CONFIG_MOUSE_SYNAPTICS_I2C=m @@ -2841,6 +2821,7 @@ CONFIG_MOVABLE_NODE=y CONFIG_MPLS_IPTUNNEL=m CONFIG_MPLS_ROUTING=m # CONFIG_MPU3050_I2C is not set +CONFIG_MQ_IOSCHED_DEADLINE=y # CONFIG_MS5611 is not set # CONFIG_MS5637 is not set # CONFIG_MS_BLOCK is not set @@ -2949,6 +2930,7 @@ CONFIG_NET_ACT_MIRRED=m CONFIG_NET_ACT_NAT=m CONFIG_NET_ACT_PEDIT=m CONFIG_NET_ACT_POLICE=m +CONFIG_NET_ACT_SAMPLE=m CONFIG_NET_ACT_SIMP=m CONFIG_NET_ACT_SKBEDIT=m CONFIG_NET_ACT_SKBMOD=m @@ -3082,6 +3064,7 @@ CONFIG_NETFILTER_XT_TARGET_TRACE=m CONFIG_NETFILTER=y CONFIG_NET_FOU_IP_TUNNELS=y CONFIG_NET_FOU=m +CONFIG_NET_IFE=m CONFIG_NET_IFE_SKBMARK=m CONFIG_NET_IFE_SKBPRIO=m CONFIG_NET_IFE_SKBTCINDEX=m @@ -3092,7 +3075,7 @@ CONFIG_NET_IPIP=m CONFIG_NET_IPVTI=m CONFIG_NET_KEY=m CONFIG_NET_KEY_MIGRATE=y -# CONFIG_NET_L3_MASTER_DEV is not set +CONFIG_NET_L3_MASTER_DEV=y CONFIG_NETLABEL=y CONFIG_NETLINK_DIAG=m CONFIG_NET_MPLS_GSO=m @@ -3144,8 +3127,9 @@ CONFIG_NET_VENDOR_ADAPTEC=y CONFIG_NET_VENDOR_AGERE=y # CONFIG_NET_VENDOR_ALACRITECH is not set CONFIG_NET_VENDOR_ALTEON=y -# CONFIG_NET_VENDOR_AMAZON is not set +CONFIG_NET_VENDOR_AMAZON=y CONFIG_NET_VENDOR_AMD=y +# CONFIG_NET_VENDOR_AQUANTIA is not set CONFIG_NET_VENDOR_ARC=y CONFIG_NET_VENDOR_ATHEROS=y # CONFIG_NET_VENDOR_AURORA is not set @@ -3271,6 +3255,8 @@ CONFIG_NF_LOG_IPV6=m CONFIG_NF_LOG_NETDEV=m CONFIG_NF_NAT=m CONFIG_NF_NAT_SNMP_BASIC=m +# CONFIG_NFP_DEBUG is not set +CONFIG_NFP=m # CONFIG_NFP_NET_DEBUG is not set CONFIG_NFP_NETVF=m CONFIG_NF_REJECT_IPV6=m @@ -3342,6 +3328,7 @@ CONFIG_NFT_REDIR=m CONFIG_NFT_REJECT_IPV4=m CONFIG_NFT_REJECT=m CONFIG_NFT_RT=m +CONFIG_NFT_SET_BITMAP=m CONFIG_NFT_SET_HASH=m CONFIG_NFT_SET_RBTREE=m CONFIG_N_GSM=m @@ -3413,6 +3400,7 @@ CONFIG_NOUVEAU_DEBUG=5 CONFIG_NOUVEAU_DEBUG_DEFAULT=3 CONFIG_NOZOMI=m CONFIG_NR_CPUS=1024 +CONFIG_NR_DEV_DAX=32768 CONFIG_NR_IRQS=512 CONFIG_NS83820=m CONFIG_NSC_FIR=m @@ -3471,6 +3459,7 @@ CONFIG_PACKET=y CONFIG_PANIC_TIMEOUT=0 CONFIG_PANTHERLORD_FF=y # CONFIG_PARIDE is not set +CONFIG_PARMAN=m CONFIG_PARPORT_1284=y # CONFIG_PARPORT_AX88796 is not set CONFIG_PARPORT=m @@ -3531,6 +3520,7 @@ CONFIG_PATA_TOSHIBA=m CONFIG_PATA_TRIFLEX=m CONFIG_PATA_VIA=m CONFIG_PATA_WINBOND=m +# CONFIG_PC104 is not set # CONFIG_PC87413_WDT is not set CONFIG_PCCARD=y CONFIG_PCF50633_ADC=m @@ -3585,6 +3575,8 @@ CONFIG_PERSISTENT_KEYRINGS=y CONFIG_PHYLIB=y # CONFIG_PHY_PXA_28NM_HSIC is not set # CONFIG_PHY_PXA_28NM_USB2 is not set +# CONFIG_PHY_QCOM_USB_HSIC is not set +# CONFIG_PHY_QCOM_USB_HS is not set # CONFIG_PHY_ST_SPEAR1310_MIPHY is not set # CONFIG_PHY_ST_SPEAR1340_MIPHY is not set # CONFIG_PHY_TUSB1210 is not set @@ -3593,6 +3585,7 @@ CONFIG_PID_NS=y # CONFIG_PINCTRL is not set CONFIG_PINCTRL_MSM8994=m # CONFIG_PINCTRL_SX150X is not set +# CONFIG_PINCTRL_TI_IODELAY is not set # CONFIG_PINMUX is not set CONFIG_PKCS7_MESSAGE_PARSER=y # CONFIG_PKCS7_TEST_KEY is not set @@ -3693,6 +3686,7 @@ CONFIG_PPTP=m CONFIG_PREEMPT_VOLUNTARY=y CONFIG_PREVENT_FIRMWARE_BUILD=y CONFIG_PRINTER=m +CONFIG_PRINTK_SAFE_LOG_BUF_SHIFT=12 CONFIG_PRINTK_TIME=y # CONFIG_PRINT_QUOTA_WARNING is not set CONFIG_PRINT_STACK_DEPTH=64 @@ -3708,6 +3702,7 @@ CONFIG_PROFILING=y # CONFIG_PROVE_LOCKING is not set # CONFIG_PROVE_RCU_REPEATEDLY is not set # CONFIG_PS3_VRAM is not set +CONFIG_PSAMPLE=m CONFIG_PSERIES_CPUIDLE=y CONFIG_PSERIES_ENERGY=m # CONFIG_PSTORE_CONSOLE is not set @@ -3722,14 +3717,15 @@ CONFIG_PWM_HIBVT=m # CONFIG_PWM_PCA9685 is not set CONFIG_PWM=y CONFIG_PWRSEQ_EMMC=m +# CONFIG_PWRSEQ_SD8787 is not set CONFIG_PWRSEQ_SIMPLE=m # CONFIG_QCA7000 is not set CONFIG_QCOM_ADSP_PIL=m -# CONFIG_QCOM_EBI2 is not set # CONFIG_QCOM_EMAC is not set # CONFIG_QCOM_HIDMA is not set # CONFIG_QCOM_HIDMA_MGMT is not set CONFIG_QEDE=m +CONFIG_QEDF=m CONFIG_QEDI=m CONFIG_QED=m CONFIG_QED_SRIOV=y @@ -3775,7 +3771,6 @@ CONFIG_RADIO_TERRATEC=m CONFIG_RADIO_TRUST=m CONFIG_RADIO_TYPHOON=m CONFIG_RADIO_WL1273=m -# CONFIG_RADIO_WL128X is not set # depends on TI_ST which we don't enable CONFIG_RADIO_ZOLTRIX=m CONFIG_RAID_ATTRS=m # CONFIG_RANDOM32_SELFTEST is not set @@ -3820,6 +3815,7 @@ CONFIG_REALTEK_AUTOPM=y CONFIG_REALTEK_PHY=m CONFIG_REGMAP_I2C=m CONFIG_REGMAP=y +CONFIG_REGULATOR_CPCAP=m # CONFIG_REGULATOR_DEBUG is not set # CONFIG_REGULATOR is not set # CONFIG_REISERFS_CHECK is not set @@ -4300,6 +4296,7 @@ CONFIG_SENSORS_SIS5595=m CONFIG_SENSORS_SMSC47B397=m CONFIG_SENSORS_SMSC47M192=m CONFIG_SENSORS_SMSC47M1=m +# CONFIG_SENSORS_STTS751 is not set CONFIG_SENSORS_TC654=m CONFIG_SENSORS_TC74=m CONFIG_SENSORS_THMC50=m @@ -4335,6 +4332,7 @@ CONFIG_SERIAL_8250_CS=m # CONFIG_SERIAL_8250_DEPRECATED_OPTIONS is not set # CONFIG_SERIAL_8250_DETECT_IRQ is not set CONFIG_SERIAL_8250_DW=y +CONFIG_SERIAL_8250_EXAR=m CONFIG_SERIAL_8250_EXTENDED=y # CONFIG_SERIAL_8250_FINTEK is not set # CONFIG_SERIAL_8250_INGENIC is not set @@ -4343,6 +4341,7 @@ CONFIG_SERIAL_8250_MANY_PORTS=y # CONFIG_SERIAL_8250_MID is not set CONFIG_SERIAL_8250_MOXA=m CONFIG_SERIAL_8250_NR_UARTS=32 +CONFIG_SERIAL_8250_PCI=m CONFIG_SERIAL_8250_RSA=y CONFIG_SERIAL_8250_RT288X=y CONFIG_SERIAL_8250_RUNTIME_UARTS=32 @@ -4355,6 +4354,8 @@ CONFIG_SERIAL_ARC_NR_PORTS=1 CONFIG_SERIAL_CORE_CONSOLE=y CONFIG_SERIAL_CORE=m # CONFIG_SERIAL_CPM is not set +CONFIG_SERIAL_DEV_BUS=y +CONFIG_SERIAL_DEV_CTRL_TTYPORT=y # CONFIG_SERIAL_FSL_LPUART is not set CONFIG_SERIAL_ICOM=m # CONFIG_SERIAL_IFX6X60 is not set @@ -4422,6 +4423,7 @@ CONFIG_SLUB_CPU_PARTIAL=y CONFIG_SLUB=y CONFIG_SMARTJOYPLUS_FF=y CONFIG_SMC_IRCC_FIR=m +# CONFIG_SMC is not set # CONFIG_SM_FTL is not set CONFIG_SMP=y CONFIG_SMSC911X=m @@ -4575,7 +4577,7 @@ CONFIG_SND_SEQUENCER=m CONFIG_SND_SEQUENCER_OSS=y CONFIG_SND_SERIAL_U16550=m CONFIG_SND_SIMPLE_CARD=m -# CONFIG_SND_SIMPLE_SCU_CARD is not set +CONFIG_SND_SIMPLE_SCU_CARD=m CONFIG_SND_SIS7019=m # CONFIG_SND_SOC_ADAU1701 is not set # CONFIG_SND_SOC_ADAU7002 is not set @@ -4626,6 +4628,7 @@ CONFIG_SND_SOC_HDMI_CODEC=m # CONFIG_SND_SOC_MAX9860 is not set # CONFIG_SND_SOC_MSM8916_WCD_ANALOG is not set # CONFIG_SND_SOC_MSM8916_WCD_DIGITAL is not set +# CONFIG_SND_SOC_NAU8540 is not set # CONFIG_SND_SOC_NAU8810 is not set # CONFIG_SND_SOC_PCM1681 is not set # CONFIG_SND_SOC_PCM179X_I2C is not set @@ -4648,6 +4651,7 @@ CONFIG_SND_SOC_SPDIF=m # CONFIG_SND_SOC_STI_SAS is not set # CONFIG_SND_SOC_TAS2552 is not set # CONFIG_SND_SOC_TAS5086 is not set +# CONFIG_SND_SOC_TAS571X is not set # CONFIG_SND_SOC_TAS5720 is not set # CONFIG_SND_SOC_TFA9879 is not set # CONFIG_SND_SOC_TLV320AIC23_I2C is not set @@ -4680,7 +4684,6 @@ CONFIG_SND_SOC_SPDIF=m # CONFIG_SND_SOC_XTFPGA_I2S is not set CONFIG_SND_SONICVIBES=m # CONFIG_SND_SPI is not set -CONFIG_SND_SUN8I_CODEC_ANALOG=m # CONFIG_SND_SUPPORT_OLD_API is not set CONFIG_SND_TRIDENT=m CONFIG_SND_USB_6FIRE=m @@ -4706,6 +4709,7 @@ CONFIG_SND_VX222=m CONFIG_SND_YMFPCI=m # CONFIG_SOC_CAMERA is not set # CONFIG_SOC_TI is not set +# CONFIG_SOC_ZTE is not set CONFIG_SOFT_WATCHDOG=m CONFIG_SOLARIS_X86_PARTITION=y # CONFIG_SOLO6X10 is not set @@ -4749,6 +4753,7 @@ CONFIG_SQUASHFS_XATTR=y CONFIG_SQUASHFS_XZ=y CONFIG_SQUASHFS_ZLIB=y # CONFIG_SRAM is not set +# CONFIG_SRF08 is not set # CONFIG_SSB_DEBUG is not set CONFIG_SSB_DRIVER_GPIO=y CONFIG_SSB_DRIVER_PCICORE=y @@ -4766,6 +4771,7 @@ CONFIG_STAGING_MEDIA=y CONFIG_STAGING=y CONFIG_STANDALONE=y # CONFIG_STATIC_KEYS_SELFTEST is not set +# CONFIG_STATIC_USERMODEHELPER is not set CONFIG_STE10XP=m # CONFIG_STE_MODEM_RPROC is not set CONFIG_STK3310=m @@ -4780,10 +4786,6 @@ CONFIG_STMMAC_ETH=m CONFIG_STRICT_DEVMEM=y CONFIG_STRIP_ASM_SYMS=y # CONFIG_STRIP is not set -# CONFIG_SUN50I_A64_CCU is not set -# CONFIG_SUN6I_A31_CCU is not set -# CONFIG_SUN8I_A23_CCU is not set -# CONFIG_SUN8I_A33_CCU is not set CONFIG_SUNDANCE=m # CONFIG_SUNDANCE_MMIO is not set CONFIG_SUNGEM=m @@ -4792,7 +4794,6 @@ CONFIG_SUNRPC_DEBUG=y CONFIG_SUNRPC_GSS=m CONFIG_SUNRPC=m CONFIG_SUNRPC_XPRT_RDMA=m -# CONFIG_SUNXI_CCU is not set CONFIG_SURFACE_3_BUTTON=m CONFIG_SURFACE3_WMI=m CONFIG_SUSPEND_FREEZER=y @@ -4875,8 +4876,6 @@ CONFIG_TCP_CONG_YEAH=m CONFIG_TCP_MD5SIG=y # CONFIG_TCS3414 is not set # CONFIG_TCS3472 is not set -CONFIG_TEGRA_GMI=m -CONFIG_TEGRA_IVC=y CONFIG_TEHUTI=m CONFIG_TEKRAM_DONGLE=m CONFIG_TELCLOCK=m @@ -4890,9 +4889,11 @@ CONFIG_TEST_ASYNC_DRIVER_PROBE=m CONFIG_TEST_KSTRTOX=y # CONFIG_TEST_LIST_SORT is not set # CONFIG_TEST_LKM is not set +# CONFIG_TEST_PARMAN is not set # CONFIG_TEST_POWER is not set # CONFIG_TEST_PRINTF is not set # CONFIG_TEST_RHASHTABLE is not set +# CONFIG_TEST_SORT is not set # CONFIG_TEST_STATIC_KEYS is not set # CONFIG_TEST_STRING_HELPERS is not set # CONFIG_TEST_UDELAY is not set @@ -4918,6 +4919,7 @@ CONFIG_THRUSTMASTER_FF=y # CONFIG_TI_ADC128S052 is not set # CONFIG_TI_ADC161S626 is not set # CONFIG_TI_ADS1015 is not set +# CONFIG_TI_ADS7950 is not set # CONFIG_TI_ADS8688 is not set # CONFIG_TI_CPSW_ALE is not set # CONFIG_TI_DAC7512 is not set @@ -4932,9 +4934,11 @@ CONFIG_TIPC_MEDIA_UDP=y CONFIG_TI_SCI_PROTOCOL=m # CONFIG_TI_ST is not set # CONFIG_TI_SYSCON_RESET is not set +# CONFIG_TI_TLC4541 is not set CONFIG_TLAN=m # CONFIG_TMD_HERMES is not set # CONFIG_TMP006 is not set +# CONFIG_TMP007 is not set CONFIG_TMPFS_POSIX_ACL=y CONFIG_TMPFS_XATTR=y CONFIG_TMPFS=y @@ -5003,6 +5007,7 @@ CONFIG_TOUCHSCREEN_WACOM_I2C=m CONFIG_TOUCHSCREEN_WACOM_W8001=m # CONFIG_TOUCHSCREEN_WDT87XX_I2C is not set # CONFIG_TOUCHSCREEN_WM97XX is not set +CONFIG_TOUCHSCREEN_ZET6223=m CONFIG_TOUCHSCREEN_ZFORCE=m # CONFIG_TPL0102 is not set # CONFIG_TPS6105X is not set @@ -5015,7 +5020,8 @@ CONFIG_TOUCHSCREEN_ZFORCE=m CONFIG_TRACER_SNAPSHOT=y # CONFIG_TRACE_SINK is not set # CONFIG_TRACING_EVENTS_GPIO is not set -# CONFIG_TRANSPARENT_HUGEPAGE is not set +CONFIG_TRANSPARENT_HUGEPAGE_MADVISE=y +CONFIG_TRANSPARENT_HUGEPAGE=y # CONFIG_TR is not set CONFIG_TRUSTED_KEYS=m # CONFIG_TS4800_IRQ is not set @@ -5071,7 +5077,7 @@ CONFIG_UNIX_DIAG=m CONFIG_UNIXWARE_DISKLABEL=y CONFIG_UNIX=y CONFIG_UNUSED_SYMBOLS=y -CONFIG_UPROBE_EVENT=y +CONFIG_UPROBE_EVENTS=y # CONFIG_US5182D is not set CONFIG_USB_ACM=m CONFIG_USB_ADUTUX=m @@ -5088,6 +5094,7 @@ CONFIG_USB_CATC=m CONFIG_USB_CDC_PHONET=m CONFIG_USB_CHAOSKEY=m # CONFIG_USB_CHIPIDEA is not set +# CONFIG_USB_CHIPIDEA_ULPI is not set CONFIG_USB_CXACRU=m # CONFIG_USB_CYPRESS_CY7C63 is not set # CONFIG_USB_CYTHERM is not set @@ -5174,6 +5181,7 @@ CONFIG_USB_HID=y CONFIG_USB_HSIC_USB3503=m CONFIG_USB_HSIC_USB4604=m CONFIG_USB_HSO=m +CONFIG_USB_HUB_USB251XB=m CONFIG_USB_HWA_HCD=m CONFIG_USB_IDMOUSE=m CONFIG_USB_IOWARRIOR=m @@ -5321,6 +5329,7 @@ CONFIG_USB_SERIAL_SPCP8X5=m CONFIG_USB_SERIAL_SSU100=m CONFIG_USB_SERIAL_SYMBOL=m CONFIG_USB_SERIAL_TI=m +CONFIG_USB_SERIAL_UPD78F0730=m CONFIG_USB_SERIAL_VISOR=m CONFIG_USB_SERIAL_WHITEHEAT=m # CONFIG_USB_SERIAL_WISHBONE is not set @@ -5409,6 +5418,7 @@ CONFIG_VFIO_MDEV=m CONFIG_VFIO_PCI=m CONFIG_VGA_ARB_MAX_GPUS=16 CONFIG_VGA_ARB=y +# CONFIG_VGACON_SOFT_SCROLLBACK_PERSISTENT_ENABLE_BY_DEFAULT is not set CONFIG_VGACON_SOFT_SCROLLBACK_SIZE=64 CONFIG_VGACON_SOFT_SCROLLBACK=y CONFIG_VGA_CONSOLE=y @@ -5459,6 +5469,7 @@ CONFIG_VIDEO_HDPVR=m CONFIG_VIDEO_HEXIUM_GEMINI=m CONFIG_VIDEO_HEXIUM_ORION=m # CONFIG_VIDEO_IVTV_ALSA is not set +# CONFIG_VIDEO_IVTV_DEPRECATED_IOCTLS is not set CONFIG_VIDEO_IVTV=m # CONFIG_VIDEO_M5MOLS is not set # CONFIG_VIDEO_MEM2MEM_DEINTERLACE is not set @@ -5480,7 +5491,6 @@ CONFIG_VIDEO_SAA7134_RC=y CONFIG_VIDEO_SAA7146=m CONFIG_VIDEO_SAA7146_VV=m CONFIG_VIDEO_SAA7164=m -CONFIG_VIDEO_SAMSUNG_S5P_CEC=m # CONFIG_VIDEO_SH_MOBILE_CEU is not set # CONFIG_VIDEO_SH_MOBILE_CSI2 is not set # CONFIG_VIDEO_SH_VEU is not set @@ -5516,6 +5526,7 @@ CONFIG_VIDEO_ZORAN_ZR36060=m # CONFIG_VIRT_DRIVERS is not set CONFIG_VIRTIO_BALLOON=m CONFIG_VIRTIO_BLK=m +CONFIG_VIRTIO_BLK_SCSI=y CONFIG_VIRTIO_CONSOLE=m CONFIG_VIRTIO_INPUT=m # CONFIG_VIRTIO_MMIO_CMDLINE_DEVICES is not set @@ -5531,8 +5542,6 @@ CONFIG_VLAN_8021Q=m CONFIG_VLAN_8021Q_MVRP=y CONFIG_VLSI_FIR=m # CONFIG_VME_BUS is not set -CONFIG_VMWARE_BALLOON=m -CONFIG_VMWARE_PVSCSI=m # CONFIG_VMXNET3 is not set CONFIG_VORTEX=m CONFIG_VSOCKETS=m @@ -5555,6 +5564,7 @@ CONFIG_W1_MASTER_DS2490=m # CONFIG_W1_MASTER_GPIO is not set # CONFIG_W1_MASTER_MATROX is not set CONFIG_W1_SLAVE_BQ27000=m +CONFIG_W1_SLAVE_DS2405=m CONFIG_W1_SLAVE_DS2406=m CONFIG_W1_SLAVE_DS2408=m # CONFIG_W1_SLAVE_DS2408_READBACK is not set @@ -5635,6 +5645,7 @@ CONFIG_WM8350_POWER=m CONFIG_WM8350_WATCHDOG=m # CONFIG_WQ_POWER_EFFICIENT_DEFAULT is not set # CONFIG_WQ_WATCHDOG is not set +# CONFIG_WW_MUTEX_SELFTEST is not set # CONFIG_X25 is not set # CONFIG_X86_BOOTPARAM_MEMORY_CORRUPTION_CHECK is not set # CONFIG_X86_PTDUMP is not set diff --git a/kernel-ppc64le-debug.config b/kernel-ppc64le-debug.config index 59393dcba..47fadbda3 100644 --- a/kernel-ppc64le-debug.config +++ b/kernel-ppc64le-debug.config @@ -122,7 +122,7 @@ CONFIG_AFFS_FS=m # CONFIG_AF_KCM is not set # CONFIG_AF_RXRPC is not set # CONFIG_AFS_FS is not set -CONFIG_AGP=y +# CONFIG_AGP is not set # CONFIG_AHCI_CEVA is not set # CONFIG_AHCI_QORIQ is not set # CONFIG_AIC79XX_BUILD_FIRMWARE is not set @@ -168,10 +168,8 @@ CONFIG_APM_POWER=m # CONFIG_APPLICOM is not set CONFIG_AQUANTIA_PHY=m CONFIG_AR5523=m -# CONFIG_ARCH_TEGRA_186_SOC is not set # CONFIG_ARCNET is not set CONFIG_ARM64_PTDUMP=y -# CONFIG_ARM_SCPI_PROTOCOL is not set # CONFIG_AS3935 is not set CONFIG_ASYMMETRIC_KEY_TYPE=y CONFIG_ASYNC_RAID6_TEST=m @@ -325,7 +323,6 @@ CONFIG_BATMAN_ADV_NC=y # CONFIG_BATTERY_DS2781 is not set # CONFIG_BATTERY_DS2782 is not set # CONFIG_BATTERY_GAUGE_LTC2941 is not set -# CONFIG_BATTERY_GOLDFISH is not set # CONFIG_BATTERY_MAX17040 is not set # CONFIG_BATTERY_MAX17042 is not set # CONFIG_BATTERY_SBS is not set @@ -368,6 +365,7 @@ CONFIG_BINFMT_SCRIPT=y CONFIG_BLK_CGROUP=y # CONFIG_BLK_CMDLINE_PARSER is not set CONFIG_BLK_CPQ_CISS_DA=m +CONFIG_BLK_DEBUG_FS=y CONFIG_BLK_DEV_3W_XXXX_RAID=m CONFIG_BLK_DEV_BSGLIB=y CONFIG_BLK_DEV_BSG=y @@ -408,6 +406,7 @@ CONFIG_BLK_DEV_THROTTLING=y CONFIG_BLK_DEV_UMEM=m CONFIG_BLK_DEV=y CONFIG_BLK_DEV_ZONED=y +CONFIG_BLK_SED_OPAL=y CONFIG_BLK_WBT_MQ=y # CONFIG_BLK_WBT_SQ is not set CONFIG_BLK_WBT=y @@ -504,6 +503,7 @@ CONFIG_BT_HCIUART_INTEL=y CONFIG_BT_HCIUART_LL=y CONFIG_BT_HCIUART=m CONFIG_BT_HCIUART_MRVL=y +CONFIG_BT_HCIUART_NOKIA=m CONFIG_BT_HCIUART_QCA=y CONFIG_BT_HCIVHCI=m CONFIG_BT_HIDP=m @@ -604,6 +604,7 @@ CONFIG_CEPH_LIB_PRETTYDEBUG=y # CONFIG_CEPH_LIB_USE_DNS_RESOLVER is not set CONFIG_CFAG12864B=m CONFIG_CFAG12864B_RATE=20 +CONFIG_CFG80211_CRDA_SUPPORT=y CONFIG_CFG80211_DEBUGFS=y CONFIG_CFG80211_DEFAULT_PS=y # CONFIG_CFG80211_DEVELOPER_WARNINGS is not set @@ -621,6 +622,7 @@ CONFIG_CGROUP_NET_CLASSID=y CONFIG_CGROUP_NET_PRIO=y CONFIG_CGROUP_PERF=y CONFIG_CGROUP_PIDS=y +# CONFIG_CGROUP_RDMA is not set CONFIG_CGROUP_SCHED=y CONFIG_CGROUPS=y # CONFIG_CHARGER_BQ2415X is not set @@ -628,6 +630,7 @@ CONFIG_CGROUPS=y # CONFIG_CHARGER_BQ24257 is not set # CONFIG_CHARGER_BQ24735 is not set # CONFIG_CHARGER_BQ25890 is not set +# CONFIG_CHARGER_DETECTOR_MAX14656 is not set # CONFIG_CHARGER_GPIO is not set # CONFIG_CHARGER_ISP1704 is not set # CONFIG_CHARGER_LP8727 is not set @@ -635,6 +638,7 @@ CONFIG_CGROUPS=y # CONFIG_CHARGER_PCF50633 is not set # CONFIG_CHARGER_QCOM_SMBB is not set # CONFIG_CHARGER_RT9455 is not set +# CONFIG_CHARGER_SBS is not set CONFIG_CHARGER_SMB347=m CONFIG_CHECKPOINT_RESTORE=y CONFIG_CHELSIO_T1_1G=y @@ -673,6 +677,7 @@ CONFIG_CLS_U32_PERF=y CONFIG_CM32181=m # CONFIG_CM3232 is not set # CONFIG_CM3323 is not set +CONFIG_CM3605=m # CONFIG_CM36651 is not set CONFIG_CMA_AREAS=7 # CONFIG_CMA_DEBUGFS is not set @@ -688,23 +693,12 @@ CONFIG_CODA_FS=m # CONFIG_COMMON_CLK_CDCE706 is not set # CONFIG_COMMON_CLK_CDCE925 is not set # CONFIG_COMMON_CLK_CS2000_CP is not set -# CONFIG_COMMON_CLK_HI3516CV300 is not set -# CONFIG_COMMON_CLK_HI3519 is not set -# CONFIG_COMMON_CLK_HI3798CV200 is not set -# CONFIG_COMMON_CLK_MT2701_BDPSYS is not set -# CONFIG_COMMON_CLK_MT2701_ETHSYS is not set -# CONFIG_COMMON_CLK_MT2701_HIFSYS is not set -# CONFIG_COMMON_CLK_MT2701_IMGSYS is not set -# CONFIG_COMMON_CLK_MT2701 is not set -# CONFIG_COMMON_CLK_MT2701_MMSYS is not set -# CONFIG_COMMON_CLK_MT2701_VDECSYS is not set -# CONFIG_COMMON_CLK_MT8135 is not set -# CONFIG_COMMON_CLK_MT8173 is not set -# CONFIG_COMMON_CLK_OXNAS is not set # CONFIG_COMMON_CLK_PWM is not set # CONFIG_COMMON_CLK_SI514 is not set # CONFIG_COMMON_CLK_SI5351 is not set +# CONFIG_COMMON_CLK_VC5 is not set # CONFIG_COMMON_CLK_XLNX_CLKWZRD is not set +# CONFIG_COMMON_RESET_HI3660 is not set CONFIG_COMPACTION=y # CONFIG_COMPAT_BRK is not set # CONFIG_COMPILE_TEST is not set @@ -750,6 +744,7 @@ CONFIG_CRC_T10DIF=y CONFIG_CROSS_COMPILE="" CONFIG_CROSS_MEMORY_ATTACH=y CONFIG_CRYPTO_842=m +CONFIG_CRYPTO_AES_TI=m CONFIG_CRYPTO_AES=y CONFIG_CRYPTO_ANSI_CPRNG=m CONFIG_CRYPTO_ANUBIS=m @@ -765,12 +760,9 @@ CONFIG_CRYPTO_CCM=m CONFIG_CRYPTO_CHACHA20=m CONFIG_CRYPTO_CHACHA20POLY1305=m CONFIG_CRYPTO_CMAC=m -CONFIG_CRYPTO_CRC32_ARM_CE=m -CONFIG_CRYPTO_CRC32C_INTEL=m CONFIG_CRYPTO_CRC32C_VPMSUM=m CONFIG_CRYPTO_CRC32C=y CONFIG_CRYPTO_CRC32=m -CONFIG_CRYPTO_CRCT10DIF_ARM_CE=m # CONFIG_CRYPTO_CRYPTD is not set CONFIG_CRYPTO_CTR=y CONFIG_CRYPTO_CTS=y @@ -913,6 +905,7 @@ CONFIG_DEBUG_PER_CPU_MAPS=y CONFIG_DEBUG_PERF_USE_VMALLOC=y CONFIG_DEBUG_PI_LIST=y # CONFIG_DEBUG_PINCTRL is not set +CONFIG_DEBUG_REFCOUNT=y CONFIG_DEBUG_RODATA_TEST=y CONFIG_DEBUG_RT_MUTEXES=y # CONFIG_DEBUG_SECTION_MISMATCH is not set @@ -941,6 +934,8 @@ CONFIG_DEFAULT_MMAP_MIN_ADDR=4096 # CONFIG_DEFXX is not set CONFIG_DETECT_HUNG_TASK=y CONFIG_DEV_APPLETALK=m +CONFIG_DEV_DAX=m +CONFIG_DEV_DAX_PMEM=m # CONFIG_DEVFREQ_GOV_PASSIVE is not set # CONFIG_DEVFREQ_GOV_PERFORMANCE is not set # CONFIG_DEVFREQ_GOV_POWERSAVE is not set @@ -948,6 +943,7 @@ CONFIG_DEVFREQ_GOV_SIMPLE_ONDEMAND=m # CONFIG_DEVFREQ_GOV_USERSPACE is not set # CONFIG_DEVKMEM is not set CONFIG_DEVMEM=y +# CONFIG_DEVPORT is not set CONFIG_DEVTMPFS_MOUNT=y CONFIG_DEVTMPFS=y # CONFIG_DGAP is not set @@ -1017,6 +1013,7 @@ CONFIG_DRM_ANALOGIX_ANX78XX=m CONFIG_DRM_AST=m CONFIG_DRM_BOCHS=m CONFIG_DRM_CIRRUS_QEMU=m +# CONFIG_DRM_DEBUG_MM_SELFTEST is not set CONFIG_DRM_DP_AUX_CHARDEV=y # CONFIG_DRM_DUMB_VGA_DAC is not set CONFIG_DRM_DW_HDMI_I2S_AUDIO=m @@ -1024,22 +1021,13 @@ CONFIG_DRM_FBDEV_EMULATION=y CONFIG_DRM_HISI_HIBMC=m CONFIG_DRM_I2C_ADV7511_AUDIO=y CONFIG_DRM_I2C_ADV7511=m -# CONFIG_DRM_I2C_ADV7533 is not set +CONFIG_DRM_I2C_ADV7533=y CONFIG_DRM_I2C_CH7006=m CONFIG_DRM_I2C_NXP_TDA998X=m CONFIG_DRM_I2C_SIL164=m -# CONFIG_DRM_I810 is not set -# CONFIG_DRM_I915_ALPHA_SUPPORT is not set -CONFIG_DRM_I915_CAPTURE_ERROR=y -CONFIG_DRM_I915_COMPRESS_ERROR=y -CONFIG_DRM_I915_GVT_KVMGT=m -CONFIG_DRM_I915_GVT=y -CONFIG_DRM_I915=m -CONFIG_DRM_I915_USERPTR=y # CONFIG_DRM_LEGACY is not set CONFIG_DRM_LOAD_EDID_FIRMWARE=y CONFIG_DRM=m -# CONFIG_DRM_MALI_DISPLAY is not set CONFIG_DRM_MGAG200=m # CONFIG_DRM_MGA is not set CONFIG_DRM_MXSFB=m @@ -1060,14 +1048,13 @@ CONFIG_DRM_RADEON_USERPTR=y CONFIG_DRM_SIL_SII8620=m # CONFIG_DRM_SIS is not set # CONFIG_DRM_TDFX is not set +# CONFIG_DRM_TINYDRM is not set CONFIG_DRM_TI_TFP410=m # CONFIG_DRM_TOSHIBA_TC358767 is not set CONFIG_DRM_UDL=m CONFIG_DRM_VGEM=m CONFIG_DRM_VIA=m CONFIG_DRM_VIRTIO_GPU=m -CONFIG_DRM_VMWGFX_FBCON=y -CONFIG_DRM_VMWGFX=m # CONFIG_DS1682 is not set # CONFIG_DS1803 is not set # CONFIG_DT3155 is not set @@ -1155,6 +1142,7 @@ CONFIG_DVB_USB_UMT_010=m CONFIG_DVB_USB_V2=m CONFIG_DVB_USB_VP702X=m CONFIG_DVB_USB_VP7045=m +CONFIG_DVB_USB_ZD1301=m # CONFIG_DW_DMAC_BIG_ENDIAN_IO is not set CONFIG_DW_DMAC_CORE=m CONFIG_DW_DMAC=m @@ -1180,6 +1168,7 @@ CONFIG_EEPROM_93CX6=m # CONFIG_EEPROM_93XX46 is not set CONFIG_EEPROM_AT24=m # CONFIG_EEPROM_AT25 is not set +CONFIG_EEPROM_IDT_89HPESX=m CONFIG_EEPROM_LEGACY=m CONFIG_EEPROM_MAX6875=m # CONFIG_EFI_ALLOW_SECURE_BOOT_EXIT is not set @@ -1190,7 +1179,6 @@ CONFIG_EFI_PGT_DUMP=y # CONFIG_EFI_TEST is not set # CONFIG_EFS_FS is not set CONFIG_EHEA=m -# CONFIG_EMAC_ROCKCHIP is not set # CONFIG_EMBEDDED is not set CONFIG_ENABLE_MUST_CHECK=y # CONFIG_ENABLE_WARN_DEPRECATED is not set @@ -1222,6 +1210,7 @@ CONFIG_EXT4_FS_SECURITY=y CONFIG_EXT4_FS=y CONFIG_EXT4_USE_FOR_EXT2=y # CONFIG_EXTCON_ADC_JACK is not set +CONFIG_EXTCON_INTEL_INT3496=m # CONFIG_EXTCON is not set # CONFIG_EXTCON_QCOM_SPMI_MISC is not set CONFIG_EXTRA_FIRMWARE="" @@ -1256,7 +1245,6 @@ CONFIG_FAULT_INJECTION_DEBUG_FS=y CONFIG_FAULT_INJECTION_STACKTRACE_FILTER=y CONFIG_FAULT_INJECTION=y # CONFIG_FB_3DFX is not set -# CONFIG_FB_ARC is not set # CONFIG_FB_ARK is not set # CONFIG_FB_ASILIANT is not set CONFIG_FB_ATY128_BACKLIGHT=y @@ -1274,18 +1262,11 @@ CONFIG_FB_ATY_BACKLIGHT=y # CONFIG_FB_CYBER2000 is not set CONFIG_FB_EFI=y # CONFIG_FB_FOREIGN_ENDIAN is not set -# CONFIG_FB_GEODE is not set -# CONFIG_FB_GOLDFISH is not set # CONFIG_FB_HECUBA is not set -# CONFIG_FB_HGA is not set # CONFIG_FB_I740 is not set -CONFIG_FB_I810_GTF=y -CONFIG_FB_I810_I2C=y -CONFIG_FB_I810=m CONFIG_FB_IBM_GXT4500=y # CONFIG_FB_IMSTT is not set # CONFIG_FB_KYRO is not set -# CONFIG_FB_LE80578 is not set CONFIG_FB_MATROX_G=y # CONFIG_FB_MATROX_I2C is not set # CONFIG_FB_MATROX_MILLENIUM is not set @@ -1336,8 +1317,6 @@ CONFIG_FB_TILEBLITTING=y # CONFIG_FB_VALKYRIE is not set CONFIG_FB_VESA=y # CONFIG_FB_VGA16 is not set -# CONFIG_FB_VIA_DIRECT_PROCFS is not set -# CONFIG_FB_VIA is not set CONFIG_FB_VIRTUAL=m # CONFIG_FB_VOODOO1 is not set # CONFIG_FB_VT8623 is not set @@ -1382,6 +1361,7 @@ CONFIG_FSCACHE_STATS=y CONFIG_FS_DAX=y CONFIG_FS_ENCRYPTION=y # CONFIG_FS_ENET is not set +CONFIG_FSI=m # CONFIG_FSL_DMA is not set # CONFIG_FSL_EDMA is not set # CONFIG_FSL_LBC is not set @@ -1429,7 +1409,8 @@ CONFIG_GAMEPORT_NS558=m CONFIG_GENERIC_PHY=y CONFIG_GENEVE=m # CONFIG_GEN_RTC is not set -# CONFIG_GENWQE is not set +CONFIG_GENWQE=m +CONFIG_GENWQE_PLATFORM_ERROR_RECOVERY=1 CONFIG_GFS2_FS_LOCKING_DLM=y CONFIG_GFS2_FS=m CONFIG_GIGASET_BASE=m @@ -1449,11 +1430,10 @@ CONFIG_GIRBIL_DONGLE=m # CONFIG_GPIO_ADNP is not set # CONFIG_GPIO_ADP5588 is not set # CONFIG_GPIO_ALTERA is not set -# CONFIG_GPIO_AMD8111 is not set # CONFIG_GPIO_AMDPT is not set # CONFIG_GPIO_BT8XX is not set -# CONFIG_GPIO_CS5535 is not set # CONFIG_GPIO_DWAPB is not set +CONFIG_GPIO_EXAR=m # CONFIG_GPIO_GENERIC_PLATFORM is not set # CONFIG_GPIO_GRGPIO is not set # CONFIG_GPIO_IT87 is not set @@ -1463,30 +1443,27 @@ CONFIG_GPIOLIB=y # CONFIG_GPIO_MAX732X is not set # CONFIG_GPIO_MC33880 is not set # CONFIG_GPIO_MCP23S08 is not set -# CONFIG_GPIO_ML_IOH is not set # CONFIG_GPIO_MOCKUP is not set # CONFIG_GPIO_MPC8XXX is not set CONFIG_GPIO_PCA953X=m CONFIG_GPIO_PCF857X=m # CONFIG_GPIO_PCH is not set +CONFIG_GPIO_PCI_IDIO_16=m # CONFIG_GPIO_PISOSR is not set # CONFIG_GPIO_RDC321X is not set # CONFIG_GPIO_SCH311X is not set -# CONFIG_GPIO_SCH is not set # CONFIG_GPIO_SX150X is not set # CONFIG_GPIO_SYSCON is not set -CONFIG_GPIO_SYSFS=y +# CONFIG_GPIO_SYSFS is not set # CONFIG_GPIO_TPIC2810 is not set # CONFIG_GPIO_TS4900 is not set # CONFIG_GPIO_TS5500 is not set # CONFIG_GPIO_UCB1400 is not set CONFIG_GPIO_VIPERBOARD=m -# CONFIG_GPIO_VX855 is not set # CONFIG_GPIO_WATCHDOG is not set CONFIG_GPIO_WM831X=m # CONFIG_GPIO_WS16C48 is not set # CONFIG_GPIO_XILINX is not set -# CONFIG_GPIO_ZX is not set CONFIG_GREENASIA_FF=y # CONFIG_GREYBUS is not set # CONFIG_GS_FPGABOOT is not set @@ -1687,6 +1664,7 @@ CONFIG_HW_RANDOM_TPM=m CONFIG_HW_RANDOM_VIRTIO=m CONFIG_HW_RANDOM=y CONFIG_HWSPINLOCK=m +# CONFIG_HX711 is not set CONFIG_HYSDN_CAPI=y CONFIG_HYSDN=m CONFIG_HZ=100 @@ -1722,7 +1700,6 @@ CONFIG_I2C_DIOLAN_U2C=m CONFIG_I2C_HELPER_AUTO=y CONFIG_I2C_HID=m # CONFIG_I2C_I801 is not set -CONFIG_I2C_IMX_LPI2C=m # CONFIG_I2C_ISCH is not set CONFIG_I2C=m CONFIG_I2C_MLXCPLD=m @@ -1742,8 +1719,6 @@ CONFIG_I2C_PARPORT_LIGHT=m CONFIG_I2C_PARPORT=m CONFIG_I2C_PCA_PLATFORM=m # CONFIG_I2C_PIIX4 is not set -CONFIG_I2C_PXA=m -# CONFIG_I2C_PXA_SLAVE is not set # CONFIG_I2C_RK3X is not set # CONFIG_I2C_ROBOTFUZZ_OSIF is not set CONFIG_I2C_SI470X=m @@ -1769,8 +1744,6 @@ CONFIG_I40EVF=m CONFIG_I6300ESB_WDT=m CONFIG_I82092=m # CONFIG_IAQCORE is not set -CONFIG_IB700_WDT=m -CONFIG_IBMASR=m CONFIG_IBM_BSR=m CONFIG_IBMEBUS=y # CONFIG_IBM_EMAC is not set @@ -1818,6 +1791,7 @@ CONFIG_IIO_ST_ACCEL_SPI_3AXIS=m CONFIG_IIO_ST_GYRO_3AXIS=m CONFIG_IIO_ST_GYRO_I2C_3AXIS=m CONFIG_IIO_ST_GYRO_SPI_3AXIS=m +# CONFIG_IIO_ST_LSM6DSX is not set CONFIG_IIO_ST_MAGN_3AXIS=m # CONFIG_IIO_ST_PRESS is not set CONFIG_IIO_SW_DEVICE=m @@ -1834,6 +1808,7 @@ CONFIG_IMA_MEASURE_PCR_IDX=10 # CONFIG_INA2XX_ADC is not set CONFIG_INET6_AH=m CONFIG_INET6_ESP=m +CONFIG_INET6_ESP_OFFLOAD=m CONFIG_INET6_IPCOMP=m CONFIG_INET6_XFRM_MODE_BEET=m CONFIG_INET6_XFRM_MODE_ROUTEOPTIMIZATION=m @@ -1843,6 +1818,7 @@ CONFIG_INET_AH=m CONFIG_INET_DIAG_DESTROY=y CONFIG_INET_DIAG=m CONFIG_INET_ESP=m +CONFIG_INET_ESP_OFFLOAD=m CONFIG_INET_IPCOMP=m CONFIG_INET_RAW_DIAG=m CONFIG_INET_TUNNEL=m @@ -1851,6 +1827,7 @@ CONFIG_INET_XFRM_MODE_BEET=m CONFIG_INET_XFRM_MODE_TRANSPORT=m CONFIG_INET_XFRM_MODE_TUNNEL=m CONFIG_INET=y +# CONFIG_INFINIBAND_BNXT_RE is not set # CONFIG_INFINIBAND_CXGB3_DEBUG is not set CONFIG_INFINIBAND_CXGB3=m CONFIG_INFINIBAND_CXGB4=m @@ -1941,8 +1918,6 @@ CONFIG_INPUT=y CONFIG_INPUT_YEALINK=m # CONFIG_INTEGRITY is not set # CONFIG_INTEL_IDMA64 is not set -# CONFIG_INTEL_MENLOW is not set -CONFIG_INTEL_RDT_A=y # CONFIG_INTEL_SOC_PMIC is not set # CONFIG_INTEL_TH is not set CONFIG_INTEL_XWAY_PHY=m @@ -2090,6 +2065,7 @@ CONFIG_IP_VS_SH_TAB_BITS=8 CONFIG_IP_VS_TAB_BITS=12 CONFIG_IP_VS_WLC=m CONFIG_IP_VS_WRR=m +CONFIG_IPVTAP=m # CONFIG_IPW2100_DEBUG is not set # CONFIG_IPW2100 is not set # CONFIG_IPW2200_DEBUG is not set @@ -2133,6 +2109,7 @@ CONFIG_IR_SERIAL=m CONFIG_IR_SERIAL_TRANSMITTER=y CONFIG_IR_SHARP_DECODER=m CONFIG_IR_SONY_DECODER=m +CONFIG_IR_SPI=m CONFIG_IR_STREAMZAP=m CONFIG_IR_TTUSBIR=m CONFIG_IRTTY_SIR=m @@ -2286,6 +2263,7 @@ CONFIG_KEYBOARD_PMIC8XXX=m # CONFIG_KEYBOARD_SUNKBD is not set # CONFIG_KEYBOARD_TCA6416 is not set # CONFIG_KEYBOARD_TCA8418 is not set +CONFIG_KEYBOARD_TM2_TOUCHKEY=m # CONFIG_KEYBOARD_XTKBD is not set CONFIG_KEY_DH_OPERATIONS=y CONFIG_KEYS=y @@ -2297,7 +2275,7 @@ CONFIG_KGDB_TESTS=y CONFIG_KGDB=y CONFIG_KINGSUN_DONGLE=m # CONFIG_KMX61 is not set -CONFIG_KPROBE_EVENT=y +CONFIG_KPROBE_EVENTS=y # CONFIG_KPROBES_SANITY_TEST is not set CONFIG_KPROBES=y CONFIG_KS0108_DELAY=2 @@ -2350,13 +2328,13 @@ CONFIG_LDM_PARTITION=y # CONFIG_LEDS_BCM6358 is not set # CONFIG_LEDS_BD2802 is not set CONFIG_LEDS_BLINKM=m +CONFIG_LEDS_BRIGHTNESS_HW_CHANGED=y CONFIG_LEDS_CLASS_FLASH=m CONFIG_LEDS_CLASS=y CONFIG_LEDS_CLEVO_MAIL=m # CONFIG_LEDS_DAC124S085 is not set CONFIG_LEDS_DELL_NETBOOKS=m # CONFIG_LEDS_GPIO is not set -CONFIG_LEDS_INTEL_SS4200=m # CONFIG_LEDS_IS31FL319X is not set # CONFIG_LEDS_IS31FL32XX is not set # CONFIG_LEDS_KTD2692 is not set @@ -2466,6 +2444,8 @@ CONFIG_LPARCFG=y # CONFIG_LPC_ICH is not set CONFIG_LP_CONSOLE=y # CONFIG_LPC_SCH is not set +CONFIG_LPFC_NVME_INITIATOR=y +CONFIG_LPFC_NVME_TARGET=y CONFIG_LSI_ET1011C_PHY=m CONFIG_LSM_MMAP_MIN_ADDR=65536 # CONFIG_LTC2485 is not set @@ -2499,6 +2479,7 @@ CONFIG_MACVLAN=m CONFIG_MACVTAP=m # CONFIG_MAG3110 is not set CONFIG_MAGIC_SYSRQ_DEFAULT_ENABLE=0x0 +CONFIG_MAGIC_SYSRQ_SERIAL=y CONFIG_MAGIC_SYSRQ=y # CONFIG_MAILBOX is not set # CONFIG_MAILBOX_TEST is not set @@ -2507,10 +2488,12 @@ CONFIG_MANTIS_CORE=m CONFIG_MARVELL_PHY=m # CONFIG_MATH_EMULATION is not set # CONFIG_MAX1027 is not set +# CONFIG_MAX11100 is not set # CONFIG_MAX1363 is not set CONFIG_MAX30100=m # CONFIG_MAX44000 is not set # CONFIG_MAX517 is not set +# CONFIG_MAX5481 is not set # CONFIG_MAX5487 is not set # CONFIG_MAX5821 is not set # CONFIG_MAX63XX_WATCHDOG is not set @@ -2589,7 +2572,6 @@ CONFIG_MEMSTICK_TIFM_MS=m # CONFIG_MEMSTICK_UNSAFE_RESUME is not set # CONFIG_MEMTEST is not set # CONFIG_MEN_A21_WDT is not set -CONFIG_MESON_GXL_PHY=m CONFIG_MESSAGE_LOGLEVEL_DEFAULT=4 # CONFIG_MFD_88PM800 is not set # CONFIG_MFD_88PM805 is not set @@ -2608,6 +2590,7 @@ CONFIG_MESSAGE_LOGLEVEL_DEFAULT=4 # CONFIG_MFD_AXP20X is not set # CONFIG_MFD_BCM590XX is not set CONFIG_MFD_CORE=m +CONFIG_MFD_CPCAP=m # CONFIG_MFD_CROS_EC is not set # CONFIG_MFD_CS5535 is not set # CONFIG_MFD_DA9052_I2C is not set @@ -2654,7 +2637,6 @@ CONFIG_MFD_SM501_GPIO=y CONFIG_MFD_SM501=m # CONFIG_MFD_SMSC is not set # CONFIG_MFD_STMPE is not set -CONFIG_MFD_SUN4I_GPADC=m # CONFIG_MFD_SYSCON is not set # CONFIG_MFD_TC3589X is not set # CONFIG_MFD_TC6393XB is not set @@ -2789,7 +2771,6 @@ CONFIG_MOUSE_ELAN_I2C_SMBUS=y CONFIG_MOUSE_PS2_ELANTECH=y CONFIG_MOUSE_PS2_SENTELIC=y # CONFIG_MOUSE_PS2_TOUCHKIT is not set -# CONFIG_MOUSE_PS2_VMMOUSE is not set CONFIG_MOUSE_PS2=y CONFIG_MOUSE_SERIAL=m CONFIG_MOUSE_SYNAPTICS_I2C=m @@ -2807,6 +2788,7 @@ CONFIG_MOVABLE_NODE=y CONFIG_MPLS_IPTUNNEL=m CONFIG_MPLS_ROUTING=m # CONFIG_MPU3050_I2C is not set +CONFIG_MQ_IOSCHED_DEADLINE=y # CONFIG_MS5611 is not set # CONFIG_MS5637 is not set # CONFIG_MS_BLOCK is not set @@ -2915,6 +2897,7 @@ CONFIG_NET_ACT_MIRRED=m CONFIG_NET_ACT_NAT=m CONFIG_NET_ACT_PEDIT=m CONFIG_NET_ACT_POLICE=m +CONFIG_NET_ACT_SAMPLE=m CONFIG_NET_ACT_SIMP=m CONFIG_NET_ACT_SKBEDIT=m CONFIG_NET_ACT_SKBMOD=m @@ -3048,6 +3031,7 @@ CONFIG_NETFILTER_XT_TARGET_TRACE=m CONFIG_NETFILTER=y CONFIG_NET_FOU_IP_TUNNELS=y CONFIG_NET_FOU=m +CONFIG_NET_IFE=m CONFIG_NET_IFE_SKBMARK=m CONFIG_NET_IFE_SKBPRIO=m CONFIG_NET_IFE_SKBTCINDEX=m @@ -3058,7 +3042,7 @@ CONFIG_NET_IPIP=m CONFIG_NET_IPVTI=m CONFIG_NET_KEY=m CONFIG_NET_KEY_MIGRATE=y -# CONFIG_NET_L3_MASTER_DEV is not set +CONFIG_NET_L3_MASTER_DEV=y CONFIG_NETLABEL=y CONFIG_NETLINK_DIAG=m CONFIG_NET_MPLS_GSO=m @@ -3110,8 +3094,9 @@ CONFIG_NET_VENDOR_ADAPTEC=y CONFIG_NET_VENDOR_AGERE=y # CONFIG_NET_VENDOR_ALACRITECH is not set CONFIG_NET_VENDOR_ALTEON=y -# CONFIG_NET_VENDOR_AMAZON is not set +CONFIG_NET_VENDOR_AMAZON=y CONFIG_NET_VENDOR_AMD=y +# CONFIG_NET_VENDOR_AQUANTIA is not set CONFIG_NET_VENDOR_ARC=y CONFIG_NET_VENDOR_ATHEROS=y # CONFIG_NET_VENDOR_AURORA is not set @@ -3237,6 +3222,8 @@ CONFIG_NF_LOG_IPV6=m CONFIG_NF_LOG_NETDEV=m CONFIG_NF_NAT=m CONFIG_NF_NAT_SNMP_BASIC=m +# CONFIG_NFP_DEBUG is not set +CONFIG_NFP=m # CONFIG_NFP_NET_DEBUG is not set CONFIG_NFP_NETVF=m CONFIG_NF_REJECT_IPV6=m @@ -3308,6 +3295,7 @@ CONFIG_NFT_REDIR=m CONFIG_NFT_REJECT_IPV4=m CONFIG_NFT_REJECT=m CONFIG_NFT_RT=m +CONFIG_NFT_SET_BITMAP=m CONFIG_NFT_SET_HASH=m CONFIG_NFT_SET_RBTREE=m CONFIG_N_GSM=m @@ -3379,6 +3367,7 @@ CONFIG_NOUVEAU_DEBUG=5 CONFIG_NOUVEAU_DEBUG_DEFAULT=3 CONFIG_NOZOMI=m CONFIG_NR_CPUS=1024 +CONFIG_NR_DEV_DAX=32768 CONFIG_NR_IRQS=512 CONFIG_NS83820=m CONFIG_NSC_FIR=m @@ -3437,6 +3426,7 @@ CONFIG_PACKET=y CONFIG_PANIC_TIMEOUT=0 CONFIG_PANTHERLORD_FF=y # CONFIG_PARIDE is not set +CONFIG_PARMAN=m CONFIG_PARPORT_1284=y # CONFIG_PARPORT_AX88796 is not set CONFIG_PARPORT=m @@ -3495,6 +3485,7 @@ CONFIG_PATA_TOSHIBA=m CONFIG_PATA_TRIFLEX=m CONFIG_PATA_VIA=m CONFIG_PATA_WINBOND=m +# CONFIG_PC104 is not set # CONFIG_PC87413_WDT is not set CONFIG_PCCARD=y CONFIG_PCF50633_ADC=m @@ -3549,6 +3540,8 @@ CONFIG_PERSISTENT_KEYRINGS=y CONFIG_PHYLIB=y # CONFIG_PHY_PXA_28NM_HSIC is not set # CONFIG_PHY_PXA_28NM_USB2 is not set +# CONFIG_PHY_QCOM_USB_HSIC is not set +# CONFIG_PHY_QCOM_USB_HS is not set # CONFIG_PHY_ST_SPEAR1310_MIPHY is not set # CONFIG_PHY_ST_SPEAR1340_MIPHY is not set # CONFIG_PHY_TUSB1210 is not set @@ -3557,6 +3550,7 @@ CONFIG_PID_NS=y # CONFIG_PINCTRL is not set CONFIG_PINCTRL_MSM8994=m # CONFIG_PINCTRL_SX150X is not set +# CONFIG_PINCTRL_TI_IODELAY is not set # CONFIG_PINMUX is not set CONFIG_PKCS7_MESSAGE_PARSER=y # CONFIG_PKCS7_TEST_KEY is not set @@ -3654,6 +3648,7 @@ CONFIG_PPTP=m CONFIG_PREEMPT_VOLUNTARY=y CONFIG_PREVENT_FIRMWARE_BUILD=y CONFIG_PRINTER=m +CONFIG_PRINTK_SAFE_LOG_BUF_SHIFT=12 CONFIG_PRINTK_TIME=y # CONFIG_PRINT_QUOTA_WARNING is not set CONFIG_PRINT_STACK_DEPTH=64 @@ -3670,6 +3665,7 @@ CONFIG_PROVE_LOCKING=y # CONFIG_PROVE_RCU_REPEATEDLY is not set CONFIG_PROVE_RCU=y # CONFIG_PS3_VRAM is not set +CONFIG_PSAMPLE=m CONFIG_PSERIES_CPUIDLE=y CONFIG_PSERIES_ENERGY=m # CONFIG_PSTORE_CONSOLE is not set @@ -3684,14 +3680,15 @@ CONFIG_PWM_HIBVT=m # CONFIG_PWM_PCA9685 is not set CONFIG_PWM=y CONFIG_PWRSEQ_EMMC=m +# CONFIG_PWRSEQ_SD8787 is not set CONFIG_PWRSEQ_SIMPLE=m # CONFIG_QCA7000 is not set CONFIG_QCOM_ADSP_PIL=m -# CONFIG_QCOM_EBI2 is not set # CONFIG_QCOM_EMAC is not set # CONFIG_QCOM_HIDMA is not set # CONFIG_QCOM_HIDMA_MGMT is not set CONFIG_QEDE=m +CONFIG_QEDF=m CONFIG_QEDI=m CONFIG_QED=m CONFIG_QED_SRIOV=y @@ -3737,7 +3734,6 @@ CONFIG_RADIO_TERRATEC=m CONFIG_RADIO_TRUST=m CONFIG_RADIO_TYPHOON=m CONFIG_RADIO_WL1273=m -# CONFIG_RADIO_WL128X is not set # depends on TI_ST which we don't enable CONFIG_RADIO_ZOLTRIX=m CONFIG_RAID_ATTRS=m # CONFIG_RANDOM32_SELFTEST is not set @@ -3782,6 +3778,7 @@ CONFIG_REALTEK_AUTOPM=y CONFIG_REALTEK_PHY=m CONFIG_REGMAP_I2C=m CONFIG_REGMAP=y +CONFIG_REGULATOR_CPCAP=m # CONFIG_REGULATOR_DEBUG is not set # CONFIG_REGULATOR is not set # CONFIG_REISERFS_CHECK is not set @@ -4262,6 +4259,7 @@ CONFIG_SENSORS_SIS5595=m CONFIG_SENSORS_SMSC47B397=m CONFIG_SENSORS_SMSC47M192=m CONFIG_SENSORS_SMSC47M1=m +# CONFIG_SENSORS_STTS751 is not set CONFIG_SENSORS_TC654=m CONFIG_SENSORS_TC74=m CONFIG_SENSORS_THMC50=m @@ -4297,6 +4295,7 @@ CONFIG_SERIAL_8250_CS=m # CONFIG_SERIAL_8250_DEPRECATED_OPTIONS is not set # CONFIG_SERIAL_8250_DETECT_IRQ is not set CONFIG_SERIAL_8250_DW=y +CONFIG_SERIAL_8250_EXAR=m CONFIG_SERIAL_8250_EXTENDED=y # CONFIG_SERIAL_8250_FINTEK is not set # CONFIG_SERIAL_8250_INGENIC is not set @@ -4305,6 +4304,7 @@ CONFIG_SERIAL_8250_MANY_PORTS=y # CONFIG_SERIAL_8250_MID is not set CONFIG_SERIAL_8250_MOXA=m CONFIG_SERIAL_8250_NR_UARTS=32 +CONFIG_SERIAL_8250_PCI=m CONFIG_SERIAL_8250_RSA=y CONFIG_SERIAL_8250_RT288X=y CONFIG_SERIAL_8250_RUNTIME_UARTS=32 @@ -4317,6 +4317,8 @@ CONFIG_SERIAL_ARC_NR_PORTS=1 CONFIG_SERIAL_CORE_CONSOLE=y CONFIG_SERIAL_CORE=m # CONFIG_SERIAL_CPM is not set +CONFIG_SERIAL_DEV_BUS=y +CONFIG_SERIAL_DEV_CTRL_TTYPORT=y # CONFIG_SERIAL_FSL_LPUART is not set CONFIG_SERIAL_ICOM=m # CONFIG_SERIAL_IFX6X60 is not set @@ -4382,6 +4384,7 @@ CONFIG_SLUB_CPU_PARTIAL=y CONFIG_SLUB=y CONFIG_SMARTJOYPLUS_FF=y CONFIG_SMC_IRCC_FIR=m +# CONFIG_SMC is not set # CONFIG_SM_FTL is not set CONFIG_SMP=y CONFIG_SMSC911X=m @@ -4527,7 +4530,7 @@ CONFIG_SND_SEQUENCER=m CONFIG_SND_SEQUENCER_OSS=y CONFIG_SND_SERIAL_U16550=m CONFIG_SND_SIMPLE_CARD=m -# CONFIG_SND_SIMPLE_SCU_CARD is not set +CONFIG_SND_SIMPLE_SCU_CARD=m CONFIG_SND_SIS7019=m # CONFIG_SND_SOC_ADAU1701 is not set # CONFIG_SND_SOC_ADAU7002 is not set @@ -4578,6 +4581,7 @@ CONFIG_SND_SOC_HDMI_CODEC=m # CONFIG_SND_SOC_MAX9860 is not set # CONFIG_SND_SOC_MSM8916_WCD_ANALOG is not set # CONFIG_SND_SOC_MSM8916_WCD_DIGITAL is not set +# CONFIG_SND_SOC_NAU8540 is not set # CONFIG_SND_SOC_NAU8810 is not set # CONFIG_SND_SOC_PCM1681 is not set # CONFIG_SND_SOC_PCM179X_I2C is not set @@ -4600,6 +4604,7 @@ CONFIG_SND_SOC_SPDIF=m # CONFIG_SND_SOC_STI_SAS is not set # CONFIG_SND_SOC_TAS2552 is not set # CONFIG_SND_SOC_TAS5086 is not set +# CONFIG_SND_SOC_TAS571X is not set # CONFIG_SND_SOC_TAS5720 is not set # CONFIG_SND_SOC_TFA9879 is not set # CONFIG_SND_SOC_TLV320AIC23_I2C is not set @@ -4632,7 +4637,6 @@ CONFIG_SND_SOC_SPDIF=m # CONFIG_SND_SOC_XTFPGA_I2S is not set CONFIG_SND_SONICVIBES=m # CONFIG_SND_SPI is not set -CONFIG_SND_SUN8I_CODEC_ANALOG=m # CONFIG_SND_SUPPORT_OLD_API is not set CONFIG_SND_TRIDENT=m CONFIG_SND_USB_6FIRE=m @@ -4658,6 +4662,7 @@ CONFIG_SND_VX222=m CONFIG_SND_YMFPCI=m # CONFIG_SOC_CAMERA is not set # CONFIG_SOC_TI is not set +# CONFIG_SOC_ZTE is not set CONFIG_SOFT_WATCHDOG=m CONFIG_SOLARIS_X86_PARTITION=y # CONFIG_SOLO6X10 is not set @@ -4701,6 +4706,7 @@ CONFIG_SQUASHFS_XATTR=y CONFIG_SQUASHFS_XZ=y CONFIG_SQUASHFS_ZLIB=y # CONFIG_SRAM is not set +# CONFIG_SRF08 is not set # CONFIG_SSB_DEBUG is not set CONFIG_SSB_DRIVER_GPIO=y CONFIG_SSB_DRIVER_PCICORE=y @@ -4718,6 +4724,7 @@ CONFIG_STAGING_MEDIA=y CONFIG_STAGING=y CONFIG_STANDALONE=y # CONFIG_STATIC_KEYS_SELFTEST is not set +# CONFIG_STATIC_USERMODEHELPER is not set CONFIG_STE10XP=m # CONFIG_STE_MODEM_RPROC is not set CONFIG_STK3310=m @@ -4732,10 +4739,6 @@ CONFIG_STMMAC_ETH=m CONFIG_STRICT_DEVMEM=y CONFIG_STRIP_ASM_SYMS=y # CONFIG_STRIP is not set -# CONFIG_SUN50I_A64_CCU is not set -# CONFIG_SUN6I_A31_CCU is not set -# CONFIG_SUN8I_A23_CCU is not set -# CONFIG_SUN8I_A33_CCU is not set CONFIG_SUNDANCE=m # CONFIG_SUNDANCE_MMIO is not set CONFIG_SUNGEM=m @@ -4744,7 +4747,6 @@ CONFIG_SUNRPC_DEBUG=y CONFIG_SUNRPC_GSS=m CONFIG_SUNRPC=m CONFIG_SUNRPC_XPRT_RDMA=m -# CONFIG_SUNXI_CCU is not set CONFIG_SURFACE_3_BUTTON=m CONFIG_SURFACE3_WMI=m CONFIG_SUSPEND_FREEZER=y @@ -4827,8 +4829,6 @@ CONFIG_TCP_CONG_YEAH=m CONFIG_TCP_MD5SIG=y # CONFIG_TCS3414 is not set # CONFIG_TCS3472 is not set -CONFIG_TEGRA_GMI=m -CONFIG_TEGRA_IVC=y CONFIG_TEHUTI=m CONFIG_TEKRAM_DONGLE=m CONFIG_TELCLOCK=m @@ -4842,9 +4842,11 @@ CONFIG_TEST_ASYNC_DRIVER_PROBE=m CONFIG_TEST_KSTRTOX=y CONFIG_TEST_LIST_SORT=y # CONFIG_TEST_LKM is not set +# CONFIG_TEST_PARMAN is not set # CONFIG_TEST_POWER is not set # CONFIG_TEST_PRINTF is not set # CONFIG_TEST_RHASHTABLE is not set +# CONFIG_TEST_SORT is not set # CONFIG_TEST_STATIC_KEYS is not set # CONFIG_TEST_STRING_HELPERS is not set # CONFIG_TEST_UDELAY is not set @@ -4870,6 +4872,7 @@ CONFIG_THRUSTMASTER_FF=y # CONFIG_TI_ADC128S052 is not set # CONFIG_TI_ADC161S626 is not set # CONFIG_TI_ADS1015 is not set +# CONFIG_TI_ADS7950 is not set # CONFIG_TI_ADS8688 is not set # CONFIG_TI_CPSW_ALE is not set # CONFIG_TI_DAC7512 is not set @@ -4884,9 +4887,11 @@ CONFIG_TIPC_MEDIA_UDP=y CONFIG_TI_SCI_PROTOCOL=m # CONFIG_TI_ST is not set # CONFIG_TI_SYSCON_RESET is not set +# CONFIG_TI_TLC4541 is not set CONFIG_TLAN=m # CONFIG_TMD_HERMES is not set # CONFIG_TMP006 is not set +# CONFIG_TMP007 is not set CONFIG_TMPFS_POSIX_ACL=y CONFIG_TMPFS_XATTR=y CONFIG_TMPFS=y @@ -4955,6 +4960,7 @@ CONFIG_TOUCHSCREEN_WACOM_I2C=m CONFIG_TOUCHSCREEN_WACOM_W8001=m # CONFIG_TOUCHSCREEN_WDT87XX_I2C is not set # CONFIG_TOUCHSCREEN_WM97XX is not set +CONFIG_TOUCHSCREEN_ZET6223=m CONFIG_TOUCHSCREEN_ZFORCE=m # CONFIG_TPL0102 is not set # CONFIG_TPS6105X is not set @@ -4967,7 +4973,8 @@ CONFIG_TOUCHSCREEN_ZFORCE=m CONFIG_TRACER_SNAPSHOT=y # CONFIG_TRACE_SINK is not set # CONFIG_TRACING_EVENTS_GPIO is not set -# CONFIG_TRANSPARENT_HUGEPAGE is not set +CONFIG_TRANSPARENT_HUGEPAGE_MADVISE=y +CONFIG_TRANSPARENT_HUGEPAGE=y # CONFIG_TR is not set CONFIG_TRUSTED_KEYS=m # CONFIG_TS4800_IRQ is not set @@ -5023,7 +5030,7 @@ CONFIG_UNIX_DIAG=m CONFIG_UNIXWARE_DISKLABEL=y CONFIG_UNIX=y CONFIG_UNUSED_SYMBOLS=y -CONFIG_UPROBE_EVENT=y +CONFIG_UPROBE_EVENTS=y # CONFIG_US5182D is not set CONFIG_USB_ACM=m CONFIG_USB_ADUTUX=m @@ -5040,6 +5047,7 @@ CONFIG_USB_CATC=m CONFIG_USB_CDC_PHONET=m CONFIG_USB_CHAOSKEY=m # CONFIG_USB_CHIPIDEA is not set +# CONFIG_USB_CHIPIDEA_ULPI is not set CONFIG_USB_CXACRU=m # CONFIG_USB_CYPRESS_CY7C63 is not set # CONFIG_USB_CYTHERM is not set @@ -5126,6 +5134,7 @@ CONFIG_USB_HID=y CONFIG_USB_HSIC_USB3503=m CONFIG_USB_HSIC_USB4604=m CONFIG_USB_HSO=m +CONFIG_USB_HUB_USB251XB=m CONFIG_USB_HWA_HCD=m CONFIG_USB_IDMOUSE=m CONFIG_USB_IOWARRIOR=m @@ -5273,6 +5282,7 @@ CONFIG_USB_SERIAL_SPCP8X5=m CONFIG_USB_SERIAL_SSU100=m CONFIG_USB_SERIAL_SYMBOL=m CONFIG_USB_SERIAL_TI=m +CONFIG_USB_SERIAL_UPD78F0730=m CONFIG_USB_SERIAL_VISOR=m CONFIG_USB_SERIAL_WHITEHEAT=m # CONFIG_USB_SERIAL_WISHBONE is not set @@ -5361,6 +5371,7 @@ CONFIG_VFIO_MDEV=m CONFIG_VFIO_PCI=m CONFIG_VGA_ARB_MAX_GPUS=16 CONFIG_VGA_ARB=y +# CONFIG_VGACON_SOFT_SCROLLBACK_PERSISTENT_ENABLE_BY_DEFAULT is not set CONFIG_VGACON_SOFT_SCROLLBACK_SIZE=64 CONFIG_VGACON_SOFT_SCROLLBACK=y CONFIG_VGA_CONSOLE=y @@ -5411,6 +5422,7 @@ CONFIG_VIDEO_HDPVR=m CONFIG_VIDEO_HEXIUM_GEMINI=m CONFIG_VIDEO_HEXIUM_ORION=m # CONFIG_VIDEO_IVTV_ALSA is not set +# CONFIG_VIDEO_IVTV_DEPRECATED_IOCTLS is not set CONFIG_VIDEO_IVTV=m # CONFIG_VIDEO_M5MOLS is not set # CONFIG_VIDEO_MEM2MEM_DEINTERLACE is not set @@ -5432,7 +5444,6 @@ CONFIG_VIDEO_SAA7134_RC=y CONFIG_VIDEO_SAA7146=m CONFIG_VIDEO_SAA7146_VV=m CONFIG_VIDEO_SAA7164=m -CONFIG_VIDEO_SAMSUNG_S5P_CEC=m # CONFIG_VIDEO_SH_MOBILE_CEU is not set # CONFIG_VIDEO_SH_MOBILE_CSI2 is not set # CONFIG_VIDEO_SH_VEU is not set @@ -5468,6 +5479,7 @@ CONFIG_VIDEO_ZORAN_ZR36060=m # CONFIG_VIRT_DRIVERS is not set CONFIG_VIRTIO_BALLOON=m CONFIG_VIRTIO_BLK=m +CONFIG_VIRTIO_BLK_SCSI=y CONFIG_VIRTIO_CONSOLE=m CONFIG_VIRTIO_INPUT=m # CONFIG_VIRTIO_MMIO_CMDLINE_DEVICES is not set @@ -5483,8 +5495,6 @@ CONFIG_VLAN_8021Q=m CONFIG_VLAN_8021Q_MVRP=y CONFIG_VLSI_FIR=m # CONFIG_VME_BUS is not set -CONFIG_VMWARE_BALLOON=m -CONFIG_VMWARE_PVSCSI=m # CONFIG_VMXNET3 is not set CONFIG_VORTEX=m CONFIG_VSOCKETS=m @@ -5507,6 +5517,7 @@ CONFIG_W1_MASTER_DS2490=m # CONFIG_W1_MASTER_GPIO is not set # CONFIG_W1_MASTER_MATROX is not set CONFIG_W1_SLAVE_BQ27000=m +CONFIG_W1_SLAVE_DS2405=m CONFIG_W1_SLAVE_DS2406=m CONFIG_W1_SLAVE_DS2408=m # CONFIG_W1_SLAVE_DS2408_READBACK is not set @@ -5581,6 +5592,7 @@ CONFIG_WM8350_POWER=m CONFIG_WM8350_WATCHDOG=m # CONFIG_WQ_POWER_EFFICIENT_DEFAULT is not set CONFIG_WQ_WATCHDOG=y +# CONFIG_WW_MUTEX_SELFTEST is not set # CONFIG_X25 is not set CONFIG_X86_BOOTPARAM_MEMORY_CORRUPTION_CHECK=y CONFIG_X86_PTDUMP=y diff --git a/kernel-ppc64le.config b/kernel-ppc64le.config index 793914ca6..ebfead87c 100644 --- a/kernel-ppc64le.config +++ b/kernel-ppc64le.config @@ -122,7 +122,7 @@ CONFIG_AFFS_FS=m # CONFIG_AF_KCM is not set # CONFIG_AF_RXRPC is not set # CONFIG_AFS_FS is not set -CONFIG_AGP=y +# CONFIG_AGP is not set # CONFIG_AHCI_CEVA is not set # CONFIG_AHCI_QORIQ is not set # CONFIG_AIC79XX_BUILD_FIRMWARE is not set @@ -168,10 +168,7 @@ CONFIG_APM_POWER=m # CONFIG_APPLICOM is not set CONFIG_AQUANTIA_PHY=m CONFIG_AR5523=m -# CONFIG_ARCH_TEGRA_186_SOC is not set # CONFIG_ARCNET is not set -# CONFIG_ARM64_PTDUMP is not set -# CONFIG_ARM_SCPI_PROTOCOL is not set # CONFIG_AS3935 is not set CONFIG_ASYMMETRIC_KEY_TYPE=y CONFIG_ASYNC_RAID6_TEST=m @@ -325,7 +322,6 @@ CONFIG_BATMAN_ADV_NC=y # CONFIG_BATTERY_DS2781 is not set # CONFIG_BATTERY_DS2782 is not set # CONFIG_BATTERY_GAUGE_LTC2941 is not set -# CONFIG_BATTERY_GOLDFISH is not set # CONFIG_BATTERY_MAX17040 is not set # CONFIG_BATTERY_MAX17042 is not set # CONFIG_BATTERY_SBS is not set @@ -368,6 +364,7 @@ CONFIG_BINFMT_SCRIPT=y CONFIG_BLK_CGROUP=y # CONFIG_BLK_CMDLINE_PARSER is not set CONFIG_BLK_CPQ_CISS_DA=m +CONFIG_BLK_DEBUG_FS=y CONFIG_BLK_DEV_3W_XXXX_RAID=m CONFIG_BLK_DEV_BSGLIB=y CONFIG_BLK_DEV_BSG=y @@ -408,6 +405,7 @@ CONFIG_BLK_DEV_THROTTLING=y CONFIG_BLK_DEV_UMEM=m CONFIG_BLK_DEV=y CONFIG_BLK_DEV_ZONED=y +CONFIG_BLK_SED_OPAL=y CONFIG_BLK_WBT_MQ=y # CONFIG_BLK_WBT_SQ is not set CONFIG_BLK_WBT=y @@ -504,6 +502,7 @@ CONFIG_BT_HCIUART_INTEL=y CONFIG_BT_HCIUART_LL=y CONFIG_BT_HCIUART=m CONFIG_BT_HCIUART_MRVL=y +CONFIG_BT_HCIUART_NOKIA=m CONFIG_BT_HCIUART_QCA=y CONFIG_BT_HCIVHCI=m CONFIG_BT_HIDP=m @@ -604,6 +603,7 @@ CONFIG_CEPH_LIB=m # CONFIG_CEPH_LIB_USE_DNS_RESOLVER is not set CONFIG_CFAG12864B=m CONFIG_CFAG12864B_RATE=20 +CONFIG_CFG80211_CRDA_SUPPORT=y CONFIG_CFG80211_DEBUGFS=y CONFIG_CFG80211_DEFAULT_PS=y # CONFIG_CFG80211_DEVELOPER_WARNINGS is not set @@ -621,6 +621,7 @@ CONFIG_CGROUP_NET_CLASSID=y CONFIG_CGROUP_NET_PRIO=y CONFIG_CGROUP_PERF=y CONFIG_CGROUP_PIDS=y +# CONFIG_CGROUP_RDMA is not set CONFIG_CGROUP_SCHED=y CONFIG_CGROUPS=y # CONFIG_CHARGER_BQ2415X is not set @@ -628,6 +629,7 @@ CONFIG_CGROUPS=y # CONFIG_CHARGER_BQ24257 is not set # CONFIG_CHARGER_BQ24735 is not set # CONFIG_CHARGER_BQ25890 is not set +# CONFIG_CHARGER_DETECTOR_MAX14656 is not set # CONFIG_CHARGER_GPIO is not set # CONFIG_CHARGER_ISP1704 is not set # CONFIG_CHARGER_LP8727 is not set @@ -635,6 +637,7 @@ CONFIG_CGROUPS=y # CONFIG_CHARGER_PCF50633 is not set # CONFIG_CHARGER_QCOM_SMBB is not set # CONFIG_CHARGER_RT9455 is not set +# CONFIG_CHARGER_SBS is not set CONFIG_CHARGER_SMB347=m CONFIG_CHECKPOINT_RESTORE=y CONFIG_CHELSIO_T1_1G=y @@ -673,6 +676,7 @@ CONFIG_CLS_U32_PERF=y CONFIG_CM32181=m # CONFIG_CM3232 is not set # CONFIG_CM3323 is not set +CONFIG_CM3605=m # CONFIG_CM36651 is not set CONFIG_CMA_AREAS=7 # CONFIG_CMA_DEBUGFS is not set @@ -688,23 +692,12 @@ CONFIG_CODA_FS=m # CONFIG_COMMON_CLK_CDCE706 is not set # CONFIG_COMMON_CLK_CDCE925 is not set # CONFIG_COMMON_CLK_CS2000_CP is not set -# CONFIG_COMMON_CLK_HI3516CV300 is not set -# CONFIG_COMMON_CLK_HI3519 is not set -# CONFIG_COMMON_CLK_HI3798CV200 is not set -# CONFIG_COMMON_CLK_MT2701_BDPSYS is not set -# CONFIG_COMMON_CLK_MT2701_ETHSYS is not set -# CONFIG_COMMON_CLK_MT2701_HIFSYS is not set -# CONFIG_COMMON_CLK_MT2701_IMGSYS is not set -# CONFIG_COMMON_CLK_MT2701 is not set -# CONFIG_COMMON_CLK_MT2701_MMSYS is not set -# CONFIG_COMMON_CLK_MT2701_VDECSYS is not set -# CONFIG_COMMON_CLK_MT8135 is not set -# CONFIG_COMMON_CLK_MT8173 is not set -# CONFIG_COMMON_CLK_OXNAS is not set # CONFIG_COMMON_CLK_PWM is not set # CONFIG_COMMON_CLK_SI514 is not set # CONFIG_COMMON_CLK_SI5351 is not set +# CONFIG_COMMON_CLK_VC5 is not set # CONFIG_COMMON_CLK_XLNX_CLKWZRD is not set +# CONFIG_COMMON_RESET_HI3660 is not set CONFIG_COMPACTION=y # CONFIG_COMPAT_BRK is not set # CONFIG_COMPILE_TEST is not set @@ -749,6 +742,7 @@ CONFIG_CRC_T10DIF=y CONFIG_CROSS_COMPILE="" CONFIG_CROSS_MEMORY_ATTACH=y CONFIG_CRYPTO_842=m +CONFIG_CRYPTO_AES_TI=m CONFIG_CRYPTO_AES=y CONFIG_CRYPTO_ANSI_CPRNG=m CONFIG_CRYPTO_ANUBIS=m @@ -764,12 +758,9 @@ CONFIG_CRYPTO_CCM=m CONFIG_CRYPTO_CHACHA20=m CONFIG_CRYPTO_CHACHA20POLY1305=m CONFIG_CRYPTO_CMAC=m -CONFIG_CRYPTO_CRC32_ARM_CE=m -CONFIG_CRYPTO_CRC32C_INTEL=m CONFIG_CRYPTO_CRC32C_VPMSUM=m CONFIG_CRYPTO_CRC32C=y CONFIG_CRYPTO_CRC32=m -CONFIG_CRYPTO_CRCT10DIF_ARM_CE=m # CONFIG_CRYPTO_CRYPTD is not set CONFIG_CRYPTO_CTR=y CONFIG_CRYPTO_CTS=y @@ -905,6 +896,7 @@ CONFIG_DEBUG_OBJECTS_ENABLE_DEFAULT=1 # CONFIG_DEBUG_PERF_USE_VMALLOC is not set # CONFIG_DEBUG_PI_LIST is not set # CONFIG_DEBUG_PINCTRL is not set +# CONFIG_DEBUG_REFCOUNT is not set CONFIG_DEBUG_RODATA_TEST=y # CONFIG_DEBUG_RT_MUTEXES is not set # CONFIG_DEBUG_SECTION_MISMATCH is not set @@ -932,6 +924,8 @@ CONFIG_DEFAULT_MMAP_MIN_ADDR=4096 # CONFIG_DEFXX is not set # CONFIG_DETECT_HUNG_TASK is not set CONFIG_DEV_APPLETALK=m +CONFIG_DEV_DAX=m +CONFIG_DEV_DAX_PMEM=m # CONFIG_DEVFREQ_GOV_PASSIVE is not set # CONFIG_DEVFREQ_GOV_PERFORMANCE is not set # CONFIG_DEVFREQ_GOV_POWERSAVE is not set @@ -939,6 +933,7 @@ CONFIG_DEVFREQ_GOV_SIMPLE_ONDEMAND=m # CONFIG_DEVFREQ_GOV_USERSPACE is not set # CONFIG_DEVKMEM is not set CONFIG_DEVMEM=y +# CONFIG_DEVPORT is not set CONFIG_DEVTMPFS_MOUNT=y CONFIG_DEVTMPFS=y # CONFIG_DGAP is not set @@ -1007,6 +1002,7 @@ CONFIG_DRM_ANALOGIX_ANX78XX=m CONFIG_DRM_AST=m CONFIG_DRM_BOCHS=m CONFIG_DRM_CIRRUS_QEMU=m +# CONFIG_DRM_DEBUG_MM_SELFTEST is not set CONFIG_DRM_DP_AUX_CHARDEV=y # CONFIG_DRM_DUMB_VGA_DAC is not set CONFIG_DRM_DW_HDMI_I2S_AUDIO=m @@ -1014,22 +1010,13 @@ CONFIG_DRM_FBDEV_EMULATION=y CONFIG_DRM_HISI_HIBMC=m CONFIG_DRM_I2C_ADV7511_AUDIO=y CONFIG_DRM_I2C_ADV7511=m -# CONFIG_DRM_I2C_ADV7533 is not set +CONFIG_DRM_I2C_ADV7533=y CONFIG_DRM_I2C_CH7006=m CONFIG_DRM_I2C_NXP_TDA998X=m CONFIG_DRM_I2C_SIL164=m -# CONFIG_DRM_I810 is not set -# CONFIG_DRM_I915_ALPHA_SUPPORT is not set -CONFIG_DRM_I915_CAPTURE_ERROR=y -CONFIG_DRM_I915_COMPRESS_ERROR=y -CONFIG_DRM_I915_GVT_KVMGT=m -CONFIG_DRM_I915_GVT=y -CONFIG_DRM_I915=m -CONFIG_DRM_I915_USERPTR=y # CONFIG_DRM_LEGACY is not set CONFIG_DRM_LOAD_EDID_FIRMWARE=y CONFIG_DRM=m -# CONFIG_DRM_MALI_DISPLAY is not set CONFIG_DRM_MGAG200=m # CONFIG_DRM_MGA is not set CONFIG_DRM_MXSFB=m @@ -1050,14 +1037,13 @@ CONFIG_DRM_RADEON_USERPTR=y CONFIG_DRM_SIL_SII8620=m # CONFIG_DRM_SIS is not set # CONFIG_DRM_TDFX is not set +# CONFIG_DRM_TINYDRM is not set CONFIG_DRM_TI_TFP410=m # CONFIG_DRM_TOSHIBA_TC358767 is not set CONFIG_DRM_UDL=m CONFIG_DRM_VGEM=m CONFIG_DRM_VIA=m CONFIG_DRM_VIRTIO_GPU=m -CONFIG_DRM_VMWGFX_FBCON=y -CONFIG_DRM_VMWGFX=m # CONFIG_DS1682 is not set # CONFIG_DS1803 is not set # CONFIG_DT3155 is not set @@ -1145,6 +1131,7 @@ CONFIG_DVB_USB_UMT_010=m CONFIG_DVB_USB_V2=m CONFIG_DVB_USB_VP702X=m CONFIG_DVB_USB_VP7045=m +CONFIG_DVB_USB_ZD1301=m # CONFIG_DW_DMAC_BIG_ENDIAN_IO is not set CONFIG_DW_DMAC_CORE=m CONFIG_DW_DMAC=m @@ -1170,6 +1157,7 @@ CONFIG_EEPROM_93CX6=m # CONFIG_EEPROM_93XX46 is not set CONFIG_EEPROM_AT24=m # CONFIG_EEPROM_AT25 is not set +CONFIG_EEPROM_IDT_89HPESX=m CONFIG_EEPROM_LEGACY=m CONFIG_EEPROM_MAX6875=m # CONFIG_EFI_ALLOW_SECURE_BOOT_EXIT is not set @@ -1180,7 +1168,6 @@ CONFIG_EFI_PARTITION=y # CONFIG_EFI_TEST is not set # CONFIG_EFS_FS is not set CONFIG_EHEA=m -# CONFIG_EMAC_ROCKCHIP is not set # CONFIG_EMBEDDED is not set CONFIG_ENABLE_MUST_CHECK=y # CONFIG_ENABLE_WARN_DEPRECATED is not set @@ -1212,6 +1199,7 @@ CONFIG_EXT4_FS_SECURITY=y CONFIG_EXT4_FS=y CONFIG_EXT4_USE_FOR_EXT2=y # CONFIG_EXTCON_ADC_JACK is not set +CONFIG_EXTCON_INTEL_INT3496=m # CONFIG_EXTCON is not set # CONFIG_EXTCON_QCOM_SPMI_MISC is not set CONFIG_EXTRA_FIRMWARE="" @@ -1239,7 +1227,6 @@ CONFIG_FAT_DEFAULT_IOCHARSET="ascii" CONFIG_FAT_FS=m # CONFIG_FAULT_INJECTION is not set # CONFIG_FB_3DFX is not set -# CONFIG_FB_ARC is not set # CONFIG_FB_ARK is not set # CONFIG_FB_ASILIANT is not set CONFIG_FB_ATY128_BACKLIGHT=y @@ -1257,18 +1244,11 @@ CONFIG_FB_ATY_BACKLIGHT=y # CONFIG_FB_CYBER2000 is not set CONFIG_FB_EFI=y # CONFIG_FB_FOREIGN_ENDIAN is not set -# CONFIG_FB_GEODE is not set -# CONFIG_FB_GOLDFISH is not set # CONFIG_FB_HECUBA is not set -# CONFIG_FB_HGA is not set # CONFIG_FB_I740 is not set -CONFIG_FB_I810_GTF=y -CONFIG_FB_I810_I2C=y -CONFIG_FB_I810=m CONFIG_FB_IBM_GXT4500=y # CONFIG_FB_IMSTT is not set # CONFIG_FB_KYRO is not set -# CONFIG_FB_LE80578 is not set CONFIG_FB_MATROX_G=y # CONFIG_FB_MATROX_I2C is not set # CONFIG_FB_MATROX_MILLENIUM is not set @@ -1319,8 +1299,6 @@ CONFIG_FB_TILEBLITTING=y # CONFIG_FB_VALKYRIE is not set CONFIG_FB_VESA=y # CONFIG_FB_VGA16 is not set -# CONFIG_FB_VIA_DIRECT_PROCFS is not set -# CONFIG_FB_VIA is not set CONFIG_FB_VIRTUAL=m # CONFIG_FB_VOODOO1 is not set # CONFIG_FB_VT8623 is not set @@ -1365,6 +1343,7 @@ CONFIG_FSCACHE_STATS=y CONFIG_FS_DAX=y CONFIG_FS_ENCRYPTION=y # CONFIG_FS_ENET is not set +CONFIG_FSI=m # CONFIG_FSL_DMA is not set # CONFIG_FSL_EDMA is not set # CONFIG_FSL_LBC is not set @@ -1412,7 +1391,8 @@ CONFIG_GAMEPORT_NS558=m CONFIG_GENERIC_PHY=y CONFIG_GENEVE=m # CONFIG_GEN_RTC is not set -# CONFIG_GENWQE is not set +CONFIG_GENWQE=m +CONFIG_GENWQE_PLATFORM_ERROR_RECOVERY=1 CONFIG_GFS2_FS_LOCKING_DLM=y CONFIG_GFS2_FS=m CONFIG_GIGASET_BASE=m @@ -1432,11 +1412,10 @@ CONFIG_GIRBIL_DONGLE=m # CONFIG_GPIO_ADNP is not set # CONFIG_GPIO_ADP5588 is not set # CONFIG_GPIO_ALTERA is not set -# CONFIG_GPIO_AMD8111 is not set # CONFIG_GPIO_AMDPT is not set # CONFIG_GPIO_BT8XX is not set -# CONFIG_GPIO_CS5535 is not set # CONFIG_GPIO_DWAPB is not set +CONFIG_GPIO_EXAR=m # CONFIG_GPIO_GENERIC_PLATFORM is not set # CONFIG_GPIO_GRGPIO is not set # CONFIG_GPIO_IT87 is not set @@ -1446,30 +1425,27 @@ CONFIG_GPIOLIB=y # CONFIG_GPIO_MAX732X is not set # CONFIG_GPIO_MC33880 is not set # CONFIG_GPIO_MCP23S08 is not set -# CONFIG_GPIO_ML_IOH is not set # CONFIG_GPIO_MOCKUP is not set # CONFIG_GPIO_MPC8XXX is not set CONFIG_GPIO_PCA953X=m CONFIG_GPIO_PCF857X=m # CONFIG_GPIO_PCH is not set +CONFIG_GPIO_PCI_IDIO_16=m # CONFIG_GPIO_PISOSR is not set # CONFIG_GPIO_RDC321X is not set # CONFIG_GPIO_SCH311X is not set -# CONFIG_GPIO_SCH is not set # CONFIG_GPIO_SX150X is not set # CONFIG_GPIO_SYSCON is not set -CONFIG_GPIO_SYSFS=y +# CONFIG_GPIO_SYSFS is not set # CONFIG_GPIO_TPIC2810 is not set # CONFIG_GPIO_TS4900 is not set # CONFIG_GPIO_TS5500 is not set # CONFIG_GPIO_UCB1400 is not set CONFIG_GPIO_VIPERBOARD=m -# CONFIG_GPIO_VX855 is not set # CONFIG_GPIO_WATCHDOG is not set CONFIG_GPIO_WM831X=m # CONFIG_GPIO_WS16C48 is not set # CONFIG_GPIO_XILINX is not set -# CONFIG_GPIO_ZX is not set CONFIG_GREENASIA_FF=y # CONFIG_GREYBUS is not set # CONFIG_GS_FPGABOOT is not set @@ -1670,6 +1646,7 @@ CONFIG_HW_RANDOM_TPM=m CONFIG_HW_RANDOM_VIRTIO=m CONFIG_HW_RANDOM=y CONFIG_HWSPINLOCK=m +# CONFIG_HX711 is not set CONFIG_HYSDN_CAPI=y CONFIG_HYSDN=m CONFIG_HZ=100 @@ -1705,7 +1682,6 @@ CONFIG_I2C_DIOLAN_U2C=m CONFIG_I2C_HELPER_AUTO=y CONFIG_I2C_HID=m # CONFIG_I2C_I801 is not set -CONFIG_I2C_IMX_LPI2C=m # CONFIG_I2C_ISCH is not set CONFIG_I2C=m CONFIG_I2C_MLXCPLD=m @@ -1725,8 +1701,6 @@ CONFIG_I2C_PARPORT_LIGHT=m CONFIG_I2C_PARPORT=m CONFIG_I2C_PCA_PLATFORM=m # CONFIG_I2C_PIIX4 is not set -CONFIG_I2C_PXA=m -# CONFIG_I2C_PXA_SLAVE is not set # CONFIG_I2C_RK3X is not set # CONFIG_I2C_ROBOTFUZZ_OSIF is not set CONFIG_I2C_SI470X=m @@ -1752,8 +1726,6 @@ CONFIG_I40EVF=m CONFIG_I6300ESB_WDT=m CONFIG_I82092=m # CONFIG_IAQCORE is not set -CONFIG_IB700_WDT=m -CONFIG_IBMASR=m CONFIG_IBM_BSR=m CONFIG_IBMEBUS=y # CONFIG_IBM_EMAC is not set @@ -1801,6 +1773,7 @@ CONFIG_IIO_ST_ACCEL_SPI_3AXIS=m CONFIG_IIO_ST_GYRO_3AXIS=m CONFIG_IIO_ST_GYRO_I2C_3AXIS=m CONFIG_IIO_ST_GYRO_SPI_3AXIS=m +# CONFIG_IIO_ST_LSM6DSX is not set CONFIG_IIO_ST_MAGN_3AXIS=m # CONFIG_IIO_ST_PRESS is not set CONFIG_IIO_SW_DEVICE=m @@ -1817,6 +1790,7 @@ CONFIG_IMA_MEASURE_PCR_IDX=10 # CONFIG_INA2XX_ADC is not set CONFIG_INET6_AH=m CONFIG_INET6_ESP=m +CONFIG_INET6_ESP_OFFLOAD=m CONFIG_INET6_IPCOMP=m CONFIG_INET6_XFRM_MODE_BEET=m CONFIG_INET6_XFRM_MODE_ROUTEOPTIMIZATION=m @@ -1826,6 +1800,7 @@ CONFIG_INET_AH=m CONFIG_INET_DIAG_DESTROY=y CONFIG_INET_DIAG=m CONFIG_INET_ESP=m +CONFIG_INET_ESP_OFFLOAD=m CONFIG_INET_IPCOMP=m CONFIG_INET_RAW_DIAG=m CONFIG_INET_TUNNEL=m @@ -1834,6 +1809,7 @@ CONFIG_INET_XFRM_MODE_BEET=m CONFIG_INET_XFRM_MODE_TRANSPORT=m CONFIG_INET_XFRM_MODE_TUNNEL=m CONFIG_INET=y +# CONFIG_INFINIBAND_BNXT_RE is not set # CONFIG_INFINIBAND_CXGB3_DEBUG is not set CONFIG_INFINIBAND_CXGB3=m CONFIG_INFINIBAND_CXGB4=m @@ -1924,8 +1900,6 @@ CONFIG_INPUT=y CONFIG_INPUT_YEALINK=m # CONFIG_INTEGRITY is not set # CONFIG_INTEL_IDMA64 is not set -# CONFIG_INTEL_MENLOW is not set -CONFIG_INTEL_RDT_A=y # CONFIG_INTEL_SOC_PMIC is not set # CONFIG_INTEL_TH is not set CONFIG_INTEL_XWAY_PHY=m @@ -2073,6 +2047,7 @@ CONFIG_IP_VS_SH_TAB_BITS=8 CONFIG_IP_VS_TAB_BITS=12 CONFIG_IP_VS_WLC=m CONFIG_IP_VS_WRR=m +CONFIG_IPVTAP=m # CONFIG_IPW2100_DEBUG is not set # CONFIG_IPW2100 is not set # CONFIG_IPW2200_DEBUG is not set @@ -2116,6 +2091,7 @@ CONFIG_IR_SERIAL=m CONFIG_IR_SERIAL_TRANSMITTER=y CONFIG_IR_SHARP_DECODER=m CONFIG_IR_SONY_DECODER=m +CONFIG_IR_SPI=m CONFIG_IR_STREAMZAP=m CONFIG_IR_TTUSBIR=m CONFIG_IRTTY_SIR=m @@ -2267,6 +2243,7 @@ CONFIG_KEYBOARD_PMIC8XXX=m # CONFIG_KEYBOARD_SUNKBD is not set # CONFIG_KEYBOARD_TCA6416 is not set # CONFIG_KEYBOARD_TCA8418 is not set +CONFIG_KEYBOARD_TM2_TOUCHKEY=m # CONFIG_KEYBOARD_XTKBD is not set CONFIG_KEY_DH_OPERATIONS=y CONFIG_KEYS=y @@ -2278,7 +2255,7 @@ CONFIG_KGDB_TESTS=y CONFIG_KGDB=y CONFIG_KINGSUN_DONGLE=m # CONFIG_KMX61 is not set -CONFIG_KPROBE_EVENT=y +CONFIG_KPROBE_EVENTS=y # CONFIG_KPROBES_SANITY_TEST is not set CONFIG_KPROBES=y CONFIG_KS0108_DELAY=2 @@ -2331,13 +2308,13 @@ CONFIG_LDM_PARTITION=y # CONFIG_LEDS_BCM6358 is not set # CONFIG_LEDS_BD2802 is not set CONFIG_LEDS_BLINKM=m +CONFIG_LEDS_BRIGHTNESS_HW_CHANGED=y CONFIG_LEDS_CLASS_FLASH=m CONFIG_LEDS_CLASS=y CONFIG_LEDS_CLEVO_MAIL=m # CONFIG_LEDS_DAC124S085 is not set CONFIG_LEDS_DELL_NETBOOKS=m # CONFIG_LEDS_GPIO is not set -CONFIG_LEDS_INTEL_SS4200=m # CONFIG_LEDS_IS31FL319X is not set # CONFIG_LEDS_IS31FL32XX is not set # CONFIG_LEDS_KTD2692 is not set @@ -2447,6 +2424,8 @@ CONFIG_LPARCFG=y # CONFIG_LPC_ICH is not set CONFIG_LP_CONSOLE=y # CONFIG_LPC_SCH is not set +CONFIG_LPFC_NVME_INITIATOR=y +CONFIG_LPFC_NVME_TARGET=y CONFIG_LSI_ET1011C_PHY=m CONFIG_LSM_MMAP_MIN_ADDR=65536 # CONFIG_LTC2485 is not set @@ -2480,6 +2459,7 @@ CONFIG_MACVLAN=m CONFIG_MACVTAP=m # CONFIG_MAG3110 is not set CONFIG_MAGIC_SYSRQ_DEFAULT_ENABLE=0x0 +CONFIG_MAGIC_SYSRQ_SERIAL=y CONFIG_MAGIC_SYSRQ=y # CONFIG_MAILBOX is not set # CONFIG_MAILBOX_TEST is not set @@ -2488,10 +2468,12 @@ CONFIG_MANTIS_CORE=m CONFIG_MARVELL_PHY=m # CONFIG_MATH_EMULATION is not set # CONFIG_MAX1027 is not set +# CONFIG_MAX11100 is not set # CONFIG_MAX1363 is not set CONFIG_MAX30100=m # CONFIG_MAX44000 is not set # CONFIG_MAX517 is not set +# CONFIG_MAX5481 is not set # CONFIG_MAX5487 is not set # CONFIG_MAX5821 is not set # CONFIG_MAX63XX_WATCHDOG is not set @@ -2569,7 +2551,6 @@ CONFIG_MEMSTICK_TIFM_MS=m # CONFIG_MEMSTICK_UNSAFE_RESUME is not set # CONFIG_MEMTEST is not set # CONFIG_MEN_A21_WDT is not set -CONFIG_MESON_GXL_PHY=m CONFIG_MESSAGE_LOGLEVEL_DEFAULT=4 # CONFIG_MFD_88PM800 is not set # CONFIG_MFD_88PM805 is not set @@ -2588,6 +2569,7 @@ CONFIG_MESSAGE_LOGLEVEL_DEFAULT=4 # CONFIG_MFD_AXP20X is not set # CONFIG_MFD_BCM590XX is not set CONFIG_MFD_CORE=m +CONFIG_MFD_CPCAP=m # CONFIG_MFD_CROS_EC is not set # CONFIG_MFD_CS5535 is not set # CONFIG_MFD_DA9052_I2C is not set @@ -2634,7 +2616,6 @@ CONFIG_MFD_SM501_GPIO=y CONFIG_MFD_SM501=m # CONFIG_MFD_SMSC is not set # CONFIG_MFD_STMPE is not set -CONFIG_MFD_SUN4I_GPADC=m # CONFIG_MFD_SYSCON is not set # CONFIG_MFD_TC3589X is not set # CONFIG_MFD_TC6393XB is not set @@ -2768,7 +2749,6 @@ CONFIG_MOUSE_ELAN_I2C_SMBUS=y CONFIG_MOUSE_PS2_ELANTECH=y CONFIG_MOUSE_PS2_SENTELIC=y # CONFIG_MOUSE_PS2_TOUCHKIT is not set -# CONFIG_MOUSE_PS2_VMMOUSE is not set CONFIG_MOUSE_PS2=y CONFIG_MOUSE_SERIAL=m CONFIG_MOUSE_SYNAPTICS_I2C=m @@ -2786,6 +2766,7 @@ CONFIG_MOVABLE_NODE=y CONFIG_MPLS_IPTUNNEL=m CONFIG_MPLS_ROUTING=m # CONFIG_MPU3050_I2C is not set +CONFIG_MQ_IOSCHED_DEADLINE=y # CONFIG_MS5611 is not set # CONFIG_MS5637 is not set # CONFIG_MS_BLOCK is not set @@ -2894,6 +2875,7 @@ CONFIG_NET_ACT_MIRRED=m CONFIG_NET_ACT_NAT=m CONFIG_NET_ACT_PEDIT=m CONFIG_NET_ACT_POLICE=m +CONFIG_NET_ACT_SAMPLE=m CONFIG_NET_ACT_SIMP=m CONFIG_NET_ACT_SKBEDIT=m CONFIG_NET_ACT_SKBMOD=m @@ -3027,6 +3009,7 @@ CONFIG_NETFILTER_XT_TARGET_TRACE=m CONFIG_NETFILTER=y CONFIG_NET_FOU_IP_TUNNELS=y CONFIG_NET_FOU=m +CONFIG_NET_IFE=m CONFIG_NET_IFE_SKBMARK=m CONFIG_NET_IFE_SKBPRIO=m CONFIG_NET_IFE_SKBTCINDEX=m @@ -3037,7 +3020,7 @@ CONFIG_NET_IPIP=m CONFIG_NET_IPVTI=m CONFIG_NET_KEY=m CONFIG_NET_KEY_MIGRATE=y -# CONFIG_NET_L3_MASTER_DEV is not set +CONFIG_NET_L3_MASTER_DEV=y CONFIG_NETLABEL=y CONFIG_NETLINK_DIAG=m CONFIG_NET_MPLS_GSO=m @@ -3089,8 +3072,9 @@ CONFIG_NET_VENDOR_ADAPTEC=y CONFIG_NET_VENDOR_AGERE=y # CONFIG_NET_VENDOR_ALACRITECH is not set CONFIG_NET_VENDOR_ALTEON=y -# CONFIG_NET_VENDOR_AMAZON is not set +CONFIG_NET_VENDOR_AMAZON=y CONFIG_NET_VENDOR_AMD=y +# CONFIG_NET_VENDOR_AQUANTIA is not set CONFIG_NET_VENDOR_ARC=y CONFIG_NET_VENDOR_ATHEROS=y # CONFIG_NET_VENDOR_AURORA is not set @@ -3216,6 +3200,8 @@ CONFIG_NF_LOG_IPV6=m CONFIG_NF_LOG_NETDEV=m CONFIG_NF_NAT=m CONFIG_NF_NAT_SNMP_BASIC=m +# CONFIG_NFP_DEBUG is not set +CONFIG_NFP=m # CONFIG_NFP_NET_DEBUG is not set CONFIG_NFP_NETVF=m CONFIG_NF_REJECT_IPV6=m @@ -3287,6 +3273,7 @@ CONFIG_NFT_REDIR=m CONFIG_NFT_REJECT_IPV4=m CONFIG_NFT_REJECT=m CONFIG_NFT_RT=m +CONFIG_NFT_SET_BITMAP=m CONFIG_NFT_SET_HASH=m CONFIG_NFT_SET_RBTREE=m CONFIG_N_GSM=m @@ -3358,6 +3345,7 @@ CONFIG_NOUVEAU_DEBUG=5 CONFIG_NOUVEAU_DEBUG_DEFAULT=3 CONFIG_NOZOMI=m CONFIG_NR_CPUS=1024 +CONFIG_NR_DEV_DAX=32768 CONFIG_NR_IRQS=512 CONFIG_NS83820=m CONFIG_NSC_FIR=m @@ -3416,6 +3404,7 @@ CONFIG_PACKET=y CONFIG_PANIC_TIMEOUT=0 CONFIG_PANTHERLORD_FF=y # CONFIG_PARIDE is not set +CONFIG_PARMAN=m CONFIG_PARPORT_1284=y # CONFIG_PARPORT_AX88796 is not set CONFIG_PARPORT=m @@ -3474,6 +3463,7 @@ CONFIG_PATA_TOSHIBA=m CONFIG_PATA_TRIFLEX=m CONFIG_PATA_VIA=m CONFIG_PATA_WINBOND=m +# CONFIG_PC104 is not set # CONFIG_PC87413_WDT is not set CONFIG_PCCARD=y CONFIG_PCF50633_ADC=m @@ -3528,6 +3518,8 @@ CONFIG_PERSISTENT_KEYRINGS=y CONFIG_PHYLIB=y # CONFIG_PHY_PXA_28NM_HSIC is not set # CONFIG_PHY_PXA_28NM_USB2 is not set +# CONFIG_PHY_QCOM_USB_HSIC is not set +# CONFIG_PHY_QCOM_USB_HS is not set # CONFIG_PHY_ST_SPEAR1310_MIPHY is not set # CONFIG_PHY_ST_SPEAR1340_MIPHY is not set # CONFIG_PHY_TUSB1210 is not set @@ -3536,6 +3528,7 @@ CONFIG_PID_NS=y # CONFIG_PINCTRL is not set CONFIG_PINCTRL_MSM8994=m # CONFIG_PINCTRL_SX150X is not set +# CONFIG_PINCTRL_TI_IODELAY is not set # CONFIG_PINMUX is not set CONFIG_PKCS7_MESSAGE_PARSER=y # CONFIG_PKCS7_TEST_KEY is not set @@ -3633,6 +3626,7 @@ CONFIG_PPTP=m CONFIG_PREEMPT_VOLUNTARY=y CONFIG_PREVENT_FIRMWARE_BUILD=y CONFIG_PRINTER=m +CONFIG_PRINTK_SAFE_LOG_BUF_SHIFT=12 CONFIG_PRINTK_TIME=y # CONFIG_PRINT_QUOTA_WARNING is not set CONFIG_PRINT_STACK_DEPTH=64 @@ -3648,6 +3642,7 @@ CONFIG_PROFILING=y # CONFIG_PROVE_LOCKING is not set # CONFIG_PROVE_RCU_REPEATEDLY is not set # CONFIG_PS3_VRAM is not set +CONFIG_PSAMPLE=m CONFIG_PSERIES_CPUIDLE=y CONFIG_PSERIES_ENERGY=m # CONFIG_PSTORE_CONSOLE is not set @@ -3662,14 +3657,15 @@ CONFIG_PWM_HIBVT=m # CONFIG_PWM_PCA9685 is not set CONFIG_PWM=y CONFIG_PWRSEQ_EMMC=m +# CONFIG_PWRSEQ_SD8787 is not set CONFIG_PWRSEQ_SIMPLE=m # CONFIG_QCA7000 is not set CONFIG_QCOM_ADSP_PIL=m -# CONFIG_QCOM_EBI2 is not set # CONFIG_QCOM_EMAC is not set # CONFIG_QCOM_HIDMA is not set # CONFIG_QCOM_HIDMA_MGMT is not set CONFIG_QEDE=m +CONFIG_QEDF=m CONFIG_QEDI=m CONFIG_QED=m CONFIG_QED_SRIOV=y @@ -3715,7 +3711,6 @@ CONFIG_RADIO_TERRATEC=m CONFIG_RADIO_TRUST=m CONFIG_RADIO_TYPHOON=m CONFIG_RADIO_WL1273=m -# CONFIG_RADIO_WL128X is not set # depends on TI_ST which we don't enable CONFIG_RADIO_ZOLTRIX=m CONFIG_RAID_ATTRS=m # CONFIG_RANDOM32_SELFTEST is not set @@ -3760,6 +3755,7 @@ CONFIG_REALTEK_AUTOPM=y CONFIG_REALTEK_PHY=m CONFIG_REGMAP_I2C=m CONFIG_REGMAP=y +CONFIG_REGULATOR_CPCAP=m # CONFIG_REGULATOR_DEBUG is not set # CONFIG_REGULATOR is not set # CONFIG_REISERFS_CHECK is not set @@ -4240,6 +4236,7 @@ CONFIG_SENSORS_SIS5595=m CONFIG_SENSORS_SMSC47B397=m CONFIG_SENSORS_SMSC47M192=m CONFIG_SENSORS_SMSC47M1=m +# CONFIG_SENSORS_STTS751 is not set CONFIG_SENSORS_TC654=m CONFIG_SENSORS_TC74=m CONFIG_SENSORS_THMC50=m @@ -4275,6 +4272,7 @@ CONFIG_SERIAL_8250_CS=m # CONFIG_SERIAL_8250_DEPRECATED_OPTIONS is not set # CONFIG_SERIAL_8250_DETECT_IRQ is not set CONFIG_SERIAL_8250_DW=y +CONFIG_SERIAL_8250_EXAR=m CONFIG_SERIAL_8250_EXTENDED=y # CONFIG_SERIAL_8250_FINTEK is not set # CONFIG_SERIAL_8250_INGENIC is not set @@ -4283,6 +4281,7 @@ CONFIG_SERIAL_8250_MANY_PORTS=y # CONFIG_SERIAL_8250_MID is not set CONFIG_SERIAL_8250_MOXA=m CONFIG_SERIAL_8250_NR_UARTS=32 +CONFIG_SERIAL_8250_PCI=m CONFIG_SERIAL_8250_RSA=y CONFIG_SERIAL_8250_RT288X=y CONFIG_SERIAL_8250_RUNTIME_UARTS=32 @@ -4295,6 +4294,8 @@ CONFIG_SERIAL_ARC_NR_PORTS=1 CONFIG_SERIAL_CORE_CONSOLE=y CONFIG_SERIAL_CORE=m # CONFIG_SERIAL_CPM is not set +CONFIG_SERIAL_DEV_BUS=y +CONFIG_SERIAL_DEV_CTRL_TTYPORT=y # CONFIG_SERIAL_FSL_LPUART is not set CONFIG_SERIAL_ICOM=m # CONFIG_SERIAL_IFX6X60 is not set @@ -4360,6 +4361,7 @@ CONFIG_SLUB_CPU_PARTIAL=y CONFIG_SLUB=y CONFIG_SMARTJOYPLUS_FF=y CONFIG_SMC_IRCC_FIR=m +# CONFIG_SMC is not set # CONFIG_SM_FTL is not set CONFIG_SMP=y CONFIG_SMSC911X=m @@ -4504,7 +4506,7 @@ CONFIG_SND_SEQUENCER=m CONFIG_SND_SEQUENCER_OSS=y CONFIG_SND_SERIAL_U16550=m CONFIG_SND_SIMPLE_CARD=m -# CONFIG_SND_SIMPLE_SCU_CARD is not set +CONFIG_SND_SIMPLE_SCU_CARD=m CONFIG_SND_SIS7019=m # CONFIG_SND_SOC_ADAU1701 is not set # CONFIG_SND_SOC_ADAU7002 is not set @@ -4555,6 +4557,7 @@ CONFIG_SND_SOC_HDMI_CODEC=m # CONFIG_SND_SOC_MAX9860 is not set # CONFIG_SND_SOC_MSM8916_WCD_ANALOG is not set # CONFIG_SND_SOC_MSM8916_WCD_DIGITAL is not set +# CONFIG_SND_SOC_NAU8540 is not set # CONFIG_SND_SOC_NAU8810 is not set # CONFIG_SND_SOC_PCM1681 is not set # CONFIG_SND_SOC_PCM179X_I2C is not set @@ -4577,6 +4580,7 @@ CONFIG_SND_SOC_SPDIF=m # CONFIG_SND_SOC_STI_SAS is not set # CONFIG_SND_SOC_TAS2552 is not set # CONFIG_SND_SOC_TAS5086 is not set +# CONFIG_SND_SOC_TAS571X is not set # CONFIG_SND_SOC_TAS5720 is not set # CONFIG_SND_SOC_TFA9879 is not set # CONFIG_SND_SOC_TLV320AIC23_I2C is not set @@ -4609,7 +4613,6 @@ CONFIG_SND_SOC_SPDIF=m # CONFIG_SND_SOC_XTFPGA_I2S is not set CONFIG_SND_SONICVIBES=m # CONFIG_SND_SPI is not set -CONFIG_SND_SUN8I_CODEC_ANALOG=m # CONFIG_SND_SUPPORT_OLD_API is not set CONFIG_SND_TRIDENT=m CONFIG_SND_USB_6FIRE=m @@ -4635,6 +4638,7 @@ CONFIG_SND_VX222=m CONFIG_SND_YMFPCI=m # CONFIG_SOC_CAMERA is not set # CONFIG_SOC_TI is not set +# CONFIG_SOC_ZTE is not set CONFIG_SOFT_WATCHDOG=m CONFIG_SOLARIS_X86_PARTITION=y # CONFIG_SOLO6X10 is not set @@ -4678,6 +4682,7 @@ CONFIG_SQUASHFS_XATTR=y CONFIG_SQUASHFS_XZ=y CONFIG_SQUASHFS_ZLIB=y # CONFIG_SRAM is not set +# CONFIG_SRF08 is not set # CONFIG_SSB_DEBUG is not set CONFIG_SSB_DRIVER_GPIO=y CONFIG_SSB_DRIVER_PCICORE=y @@ -4695,6 +4700,7 @@ CONFIG_STAGING_MEDIA=y CONFIG_STAGING=y CONFIG_STANDALONE=y # CONFIG_STATIC_KEYS_SELFTEST is not set +# CONFIG_STATIC_USERMODEHELPER is not set CONFIG_STE10XP=m # CONFIG_STE_MODEM_RPROC is not set CONFIG_STK3310=m @@ -4709,10 +4715,6 @@ CONFIG_STMMAC_ETH=m CONFIG_STRICT_DEVMEM=y CONFIG_STRIP_ASM_SYMS=y # CONFIG_STRIP is not set -# CONFIG_SUN50I_A64_CCU is not set -# CONFIG_SUN6I_A31_CCU is not set -# CONFIG_SUN8I_A23_CCU is not set -# CONFIG_SUN8I_A33_CCU is not set CONFIG_SUNDANCE=m # CONFIG_SUNDANCE_MMIO is not set CONFIG_SUNGEM=m @@ -4721,7 +4723,6 @@ CONFIG_SUNRPC_DEBUG=y CONFIG_SUNRPC_GSS=m CONFIG_SUNRPC=m CONFIG_SUNRPC_XPRT_RDMA=m -# CONFIG_SUNXI_CCU is not set CONFIG_SURFACE_3_BUTTON=m CONFIG_SURFACE3_WMI=m CONFIG_SUSPEND_FREEZER=y @@ -4804,8 +4805,6 @@ CONFIG_TCP_CONG_YEAH=m CONFIG_TCP_MD5SIG=y # CONFIG_TCS3414 is not set # CONFIG_TCS3472 is not set -CONFIG_TEGRA_GMI=m -CONFIG_TEGRA_IVC=y CONFIG_TEHUTI=m CONFIG_TEKRAM_DONGLE=m CONFIG_TELCLOCK=m @@ -4819,9 +4818,11 @@ CONFIG_TEST_ASYNC_DRIVER_PROBE=m CONFIG_TEST_KSTRTOX=y # CONFIG_TEST_LIST_SORT is not set # CONFIG_TEST_LKM is not set +# CONFIG_TEST_PARMAN is not set # CONFIG_TEST_POWER is not set # CONFIG_TEST_PRINTF is not set # CONFIG_TEST_RHASHTABLE is not set +# CONFIG_TEST_SORT is not set # CONFIG_TEST_STATIC_KEYS is not set # CONFIG_TEST_STRING_HELPERS is not set # CONFIG_TEST_UDELAY is not set @@ -4847,6 +4848,7 @@ CONFIG_THRUSTMASTER_FF=y # CONFIG_TI_ADC128S052 is not set # CONFIG_TI_ADC161S626 is not set # CONFIG_TI_ADS1015 is not set +# CONFIG_TI_ADS7950 is not set # CONFIG_TI_ADS8688 is not set # CONFIG_TI_CPSW_ALE is not set # CONFIG_TI_DAC7512 is not set @@ -4861,9 +4863,11 @@ CONFIG_TIPC_MEDIA_UDP=y CONFIG_TI_SCI_PROTOCOL=m # CONFIG_TI_ST is not set # CONFIG_TI_SYSCON_RESET is not set +# CONFIG_TI_TLC4541 is not set CONFIG_TLAN=m # CONFIG_TMD_HERMES is not set # CONFIG_TMP006 is not set +# CONFIG_TMP007 is not set CONFIG_TMPFS_POSIX_ACL=y CONFIG_TMPFS_XATTR=y CONFIG_TMPFS=y @@ -4932,6 +4936,7 @@ CONFIG_TOUCHSCREEN_WACOM_I2C=m CONFIG_TOUCHSCREEN_WACOM_W8001=m # CONFIG_TOUCHSCREEN_WDT87XX_I2C is not set # CONFIG_TOUCHSCREEN_WM97XX is not set +CONFIG_TOUCHSCREEN_ZET6223=m CONFIG_TOUCHSCREEN_ZFORCE=m # CONFIG_TPL0102 is not set # CONFIG_TPS6105X is not set @@ -4944,7 +4949,8 @@ CONFIG_TOUCHSCREEN_ZFORCE=m CONFIG_TRACER_SNAPSHOT=y # CONFIG_TRACE_SINK is not set # CONFIG_TRACING_EVENTS_GPIO is not set -# CONFIG_TRANSPARENT_HUGEPAGE is not set +CONFIG_TRANSPARENT_HUGEPAGE_MADVISE=y +CONFIG_TRANSPARENT_HUGEPAGE=y # CONFIG_TR is not set CONFIG_TRUSTED_KEYS=m # CONFIG_TS4800_IRQ is not set @@ -5000,7 +5006,7 @@ CONFIG_UNIX_DIAG=m CONFIG_UNIXWARE_DISKLABEL=y CONFIG_UNIX=y CONFIG_UNUSED_SYMBOLS=y -CONFIG_UPROBE_EVENT=y +CONFIG_UPROBE_EVENTS=y # CONFIG_US5182D is not set CONFIG_USB_ACM=m CONFIG_USB_ADUTUX=m @@ -5017,6 +5023,7 @@ CONFIG_USB_CATC=m CONFIG_USB_CDC_PHONET=m CONFIG_USB_CHAOSKEY=m # CONFIG_USB_CHIPIDEA is not set +# CONFIG_USB_CHIPIDEA_ULPI is not set CONFIG_USB_CXACRU=m # CONFIG_USB_CYPRESS_CY7C63 is not set # CONFIG_USB_CYTHERM is not set @@ -5103,6 +5110,7 @@ CONFIG_USB_HID=y CONFIG_USB_HSIC_USB3503=m CONFIG_USB_HSIC_USB4604=m CONFIG_USB_HSO=m +CONFIG_USB_HUB_USB251XB=m CONFIG_USB_HWA_HCD=m CONFIG_USB_IDMOUSE=m CONFIG_USB_IOWARRIOR=m @@ -5250,6 +5258,7 @@ CONFIG_USB_SERIAL_SPCP8X5=m CONFIG_USB_SERIAL_SSU100=m CONFIG_USB_SERIAL_SYMBOL=m CONFIG_USB_SERIAL_TI=m +CONFIG_USB_SERIAL_UPD78F0730=m CONFIG_USB_SERIAL_VISOR=m CONFIG_USB_SERIAL_WHITEHEAT=m # CONFIG_USB_SERIAL_WISHBONE is not set @@ -5338,6 +5347,7 @@ CONFIG_VFIO_MDEV=m CONFIG_VFIO_PCI=m CONFIG_VGA_ARB_MAX_GPUS=16 CONFIG_VGA_ARB=y +# CONFIG_VGACON_SOFT_SCROLLBACK_PERSISTENT_ENABLE_BY_DEFAULT is not set CONFIG_VGACON_SOFT_SCROLLBACK_SIZE=64 CONFIG_VGACON_SOFT_SCROLLBACK=y CONFIG_VGA_CONSOLE=y @@ -5388,6 +5398,7 @@ CONFIG_VIDEO_HDPVR=m CONFIG_VIDEO_HEXIUM_GEMINI=m CONFIG_VIDEO_HEXIUM_ORION=m # CONFIG_VIDEO_IVTV_ALSA is not set +# CONFIG_VIDEO_IVTV_DEPRECATED_IOCTLS is not set CONFIG_VIDEO_IVTV=m # CONFIG_VIDEO_M5MOLS is not set # CONFIG_VIDEO_MEM2MEM_DEINTERLACE is not set @@ -5409,7 +5420,6 @@ CONFIG_VIDEO_SAA7134_RC=y CONFIG_VIDEO_SAA7146=m CONFIG_VIDEO_SAA7146_VV=m CONFIG_VIDEO_SAA7164=m -CONFIG_VIDEO_SAMSUNG_S5P_CEC=m # CONFIG_VIDEO_SH_MOBILE_CEU is not set # CONFIG_VIDEO_SH_MOBILE_CSI2 is not set # CONFIG_VIDEO_SH_VEU is not set @@ -5445,6 +5455,7 @@ CONFIG_VIDEO_ZORAN_ZR36060=m # CONFIG_VIRT_DRIVERS is not set CONFIG_VIRTIO_BALLOON=m CONFIG_VIRTIO_BLK=m +CONFIG_VIRTIO_BLK_SCSI=y CONFIG_VIRTIO_CONSOLE=m CONFIG_VIRTIO_INPUT=m # CONFIG_VIRTIO_MMIO_CMDLINE_DEVICES is not set @@ -5460,8 +5471,6 @@ CONFIG_VLAN_8021Q=m CONFIG_VLAN_8021Q_MVRP=y CONFIG_VLSI_FIR=m # CONFIG_VME_BUS is not set -CONFIG_VMWARE_BALLOON=m -CONFIG_VMWARE_PVSCSI=m # CONFIG_VMXNET3 is not set CONFIG_VORTEX=m CONFIG_VSOCKETS=m @@ -5484,6 +5493,7 @@ CONFIG_W1_MASTER_DS2490=m # CONFIG_W1_MASTER_GPIO is not set # CONFIG_W1_MASTER_MATROX is not set CONFIG_W1_SLAVE_BQ27000=m +CONFIG_W1_SLAVE_DS2405=m CONFIG_W1_SLAVE_DS2406=m CONFIG_W1_SLAVE_DS2408=m # CONFIG_W1_SLAVE_DS2408_READBACK is not set @@ -5558,6 +5568,7 @@ CONFIG_WM8350_POWER=m CONFIG_WM8350_WATCHDOG=m # CONFIG_WQ_POWER_EFFICIENT_DEFAULT is not set # CONFIG_WQ_WATCHDOG is not set +# CONFIG_WW_MUTEX_SELFTEST is not set # CONFIG_X25 is not set # CONFIG_X86_BOOTPARAM_MEMORY_CORRUPTION_CHECK is not set # CONFIG_X86_PTDUMP is not set diff --git a/kernel-ppc64p7-debug.config b/kernel-ppc64p7-debug.config index 66f831cb8..896b8132b 100644 --- a/kernel-ppc64p7-debug.config +++ b/kernel-ppc64p7-debug.config @@ -122,7 +122,7 @@ CONFIG_AFFS_FS=m # CONFIG_AF_KCM is not set # CONFIG_AF_RXRPC is not set # CONFIG_AFS_FS is not set -CONFIG_AGP=y +# CONFIG_AGP is not set # CONFIG_AHCI_CEVA is not set # CONFIG_AHCI_QORIQ is not set # CONFIG_AIC79XX_BUILD_FIRMWARE is not set @@ -168,10 +168,8 @@ CONFIG_APM_POWER=m # CONFIG_APPLICOM is not set CONFIG_AQUANTIA_PHY=m CONFIG_AR5523=m -# CONFIG_ARCH_TEGRA_186_SOC is not set # CONFIG_ARCNET is not set CONFIG_ARM64_PTDUMP=y -# CONFIG_ARM_SCPI_PROTOCOL is not set # CONFIG_AS3935 is not set CONFIG_ASYMMETRIC_KEY_TYPE=y CONFIG_ASYNC_RAID6_TEST=m @@ -325,7 +323,6 @@ CONFIG_BATMAN_ADV_NC=y # CONFIG_BATTERY_DS2781 is not set # CONFIG_BATTERY_DS2782 is not set # CONFIG_BATTERY_GAUGE_LTC2941 is not set -# CONFIG_BATTERY_GOLDFISH is not set # CONFIG_BATTERY_MAX17040 is not set # CONFIG_BATTERY_MAX17042 is not set # CONFIG_BATTERY_SBS is not set @@ -368,6 +365,7 @@ CONFIG_BINFMT_SCRIPT=y CONFIG_BLK_CGROUP=y # CONFIG_BLK_CMDLINE_PARSER is not set CONFIG_BLK_CPQ_CISS_DA=m +CONFIG_BLK_DEBUG_FS=y CONFIG_BLK_DEV_3W_XXXX_RAID=m CONFIG_BLK_DEV_BSGLIB=y CONFIG_BLK_DEV_BSG=y @@ -408,6 +406,7 @@ CONFIG_BLK_DEV_THROTTLING=y CONFIG_BLK_DEV_UMEM=m CONFIG_BLK_DEV=y CONFIG_BLK_DEV_ZONED=y +CONFIG_BLK_SED_OPAL=y CONFIG_BLK_WBT_MQ=y # CONFIG_BLK_WBT_SQ is not set CONFIG_BLK_WBT=y @@ -504,6 +503,7 @@ CONFIG_BT_HCIUART_INTEL=y CONFIG_BT_HCIUART_LL=y CONFIG_BT_HCIUART=m CONFIG_BT_HCIUART_MRVL=y +CONFIG_BT_HCIUART_NOKIA=m CONFIG_BT_HCIUART_QCA=y CONFIG_BT_HCIVHCI=m CONFIG_BT_HIDP=m @@ -604,6 +604,7 @@ CONFIG_CEPH_LIB_PRETTYDEBUG=y # CONFIG_CEPH_LIB_USE_DNS_RESOLVER is not set CONFIG_CFAG12864B=m CONFIG_CFAG12864B_RATE=20 +CONFIG_CFG80211_CRDA_SUPPORT=y CONFIG_CFG80211_DEBUGFS=y CONFIG_CFG80211_DEFAULT_PS=y # CONFIG_CFG80211_DEVELOPER_WARNINGS is not set @@ -621,6 +622,7 @@ CONFIG_CGROUP_NET_CLASSID=y CONFIG_CGROUP_NET_PRIO=y CONFIG_CGROUP_PERF=y CONFIG_CGROUP_PIDS=y +# CONFIG_CGROUP_RDMA is not set CONFIG_CGROUP_SCHED=y CONFIG_CGROUPS=y # CONFIG_CHARGER_BQ2415X is not set @@ -628,6 +630,7 @@ CONFIG_CGROUPS=y # CONFIG_CHARGER_BQ24257 is not set # CONFIG_CHARGER_BQ24735 is not set # CONFIG_CHARGER_BQ25890 is not set +# CONFIG_CHARGER_DETECTOR_MAX14656 is not set # CONFIG_CHARGER_GPIO is not set # CONFIG_CHARGER_ISP1704 is not set # CONFIG_CHARGER_LP8727 is not set @@ -635,6 +638,7 @@ CONFIG_CGROUPS=y # CONFIG_CHARGER_PCF50633 is not set # CONFIG_CHARGER_QCOM_SMBB is not set # CONFIG_CHARGER_RT9455 is not set +# CONFIG_CHARGER_SBS is not set CONFIG_CHARGER_SMB347=m # CONFIG_CHECKPOINT_RESTORE is not set CONFIG_CHELSIO_T1_1G=y @@ -673,6 +677,7 @@ CONFIG_CLS_U32_PERF=y CONFIG_CM32181=m # CONFIG_CM3232 is not set # CONFIG_CM3323 is not set +CONFIG_CM3605=m # CONFIG_CM36651 is not set CONFIG_CMA_AREAS=7 # CONFIG_CMA_DEBUGFS is not set @@ -688,23 +693,12 @@ CONFIG_CODA_FS=m # CONFIG_COMMON_CLK_CDCE706 is not set # CONFIG_COMMON_CLK_CDCE925 is not set # CONFIG_COMMON_CLK_CS2000_CP is not set -# CONFIG_COMMON_CLK_HI3516CV300 is not set -# CONFIG_COMMON_CLK_HI3519 is not set -# CONFIG_COMMON_CLK_HI3798CV200 is not set -# CONFIG_COMMON_CLK_MT2701_BDPSYS is not set -# CONFIG_COMMON_CLK_MT2701_ETHSYS is not set -# CONFIG_COMMON_CLK_MT2701_HIFSYS is not set -# CONFIG_COMMON_CLK_MT2701_IMGSYS is not set -# CONFIG_COMMON_CLK_MT2701 is not set -# CONFIG_COMMON_CLK_MT2701_MMSYS is not set -# CONFIG_COMMON_CLK_MT2701_VDECSYS is not set -# CONFIG_COMMON_CLK_MT8135 is not set -# CONFIG_COMMON_CLK_MT8173 is not set -# CONFIG_COMMON_CLK_OXNAS is not set # CONFIG_COMMON_CLK_PWM is not set # CONFIG_COMMON_CLK_SI514 is not set # CONFIG_COMMON_CLK_SI5351 is not set +# CONFIG_COMMON_CLK_VC5 is not set # CONFIG_COMMON_CLK_XLNX_CLKWZRD is not set +# CONFIG_COMMON_RESET_HI3660 is not set CONFIG_COMPACTION=y # CONFIG_COMPAT_BRK is not set # CONFIG_COMPILE_TEST is not set @@ -750,6 +744,7 @@ CONFIG_CRC_T10DIF=y CONFIG_CROSS_COMPILE="" CONFIG_CROSS_MEMORY_ATTACH=y CONFIG_CRYPTO_842=m +CONFIG_CRYPTO_AES_TI=m CONFIG_CRYPTO_AES=y CONFIG_CRYPTO_ANSI_CPRNG=m CONFIG_CRYPTO_ANUBIS=m @@ -765,12 +760,9 @@ CONFIG_CRYPTO_CCM=m CONFIG_CRYPTO_CHACHA20=m CONFIG_CRYPTO_CHACHA20POLY1305=m CONFIG_CRYPTO_CMAC=m -CONFIG_CRYPTO_CRC32_ARM_CE=m -CONFIG_CRYPTO_CRC32C_INTEL=m CONFIG_CRYPTO_CRC32C_VPMSUM=m CONFIG_CRYPTO_CRC32C=y CONFIG_CRYPTO_CRC32=m -CONFIG_CRYPTO_CRCT10DIF_ARM_CE=m # CONFIG_CRYPTO_CRYPTD is not set CONFIG_CRYPTO_CTR=y CONFIG_CRYPTO_CTS=y @@ -913,6 +905,7 @@ CONFIG_DEBUG_PER_CPU_MAPS=y CONFIG_DEBUG_PERF_USE_VMALLOC=y CONFIG_DEBUG_PI_LIST=y # CONFIG_DEBUG_PINCTRL is not set +CONFIG_DEBUG_REFCOUNT=y CONFIG_DEBUG_RODATA_TEST=y CONFIG_DEBUG_RT_MUTEXES=y # CONFIG_DEBUG_SECTION_MISMATCH is not set @@ -941,6 +934,8 @@ CONFIG_DEFAULT_MMAP_MIN_ADDR=4096 # CONFIG_DEFXX is not set CONFIG_DETECT_HUNG_TASK=y CONFIG_DEV_APPLETALK=m +CONFIG_DEV_DAX=m +CONFIG_DEV_DAX_PMEM=m # CONFIG_DEVFREQ_GOV_PASSIVE is not set # CONFIG_DEVFREQ_GOV_PERFORMANCE is not set # CONFIG_DEVFREQ_GOV_POWERSAVE is not set @@ -948,6 +943,7 @@ CONFIG_DEVFREQ_GOV_SIMPLE_ONDEMAND=m # CONFIG_DEVFREQ_GOV_USERSPACE is not set # CONFIG_DEVKMEM is not set CONFIG_DEVMEM=y +# CONFIG_DEVPORT is not set CONFIG_DEVTMPFS_MOUNT=y CONFIG_DEVTMPFS=y # CONFIG_DGAP is not set @@ -1016,6 +1012,7 @@ CONFIG_DRM_ANALOGIX_ANX78XX=m CONFIG_DRM_AST=m CONFIG_DRM_BOCHS=m CONFIG_DRM_CIRRUS_QEMU=m +# CONFIG_DRM_DEBUG_MM_SELFTEST is not set CONFIG_DRM_DP_AUX_CHARDEV=y # CONFIG_DRM_DUMB_VGA_DAC is not set CONFIG_DRM_DW_HDMI_I2S_AUDIO=m @@ -1023,22 +1020,13 @@ CONFIG_DRM_FBDEV_EMULATION=y CONFIG_DRM_HISI_HIBMC=m CONFIG_DRM_I2C_ADV7511_AUDIO=y CONFIG_DRM_I2C_ADV7511=m -# CONFIG_DRM_I2C_ADV7533 is not set +CONFIG_DRM_I2C_ADV7533=y CONFIG_DRM_I2C_CH7006=m CONFIG_DRM_I2C_NXP_TDA998X=m CONFIG_DRM_I2C_SIL164=m -# CONFIG_DRM_I810 is not set -# CONFIG_DRM_I915_ALPHA_SUPPORT is not set -CONFIG_DRM_I915_CAPTURE_ERROR=y -CONFIG_DRM_I915_COMPRESS_ERROR=y -CONFIG_DRM_I915_GVT_KVMGT=m -CONFIG_DRM_I915_GVT=y -CONFIG_DRM_I915=m -CONFIG_DRM_I915_USERPTR=y # CONFIG_DRM_LEGACY is not set CONFIG_DRM_LOAD_EDID_FIRMWARE=y CONFIG_DRM=m -# CONFIG_DRM_MALI_DISPLAY is not set CONFIG_DRM_MGAG200=m # CONFIG_DRM_MGA is not set CONFIG_DRM_MXSFB=m @@ -1059,14 +1047,13 @@ CONFIG_DRM_RADEON_USERPTR=y CONFIG_DRM_SIL_SII8620=m # CONFIG_DRM_SIS is not set # CONFIG_DRM_TDFX is not set +# CONFIG_DRM_TINYDRM is not set CONFIG_DRM_TI_TFP410=m # CONFIG_DRM_TOSHIBA_TC358767 is not set CONFIG_DRM_UDL=m CONFIG_DRM_VGEM=m CONFIG_DRM_VIA=m CONFIG_DRM_VIRTIO_GPU=m -CONFIG_DRM_VMWGFX_FBCON=y -CONFIG_DRM_VMWGFX=m # CONFIG_DS1682 is not set # CONFIG_DS1803 is not set # CONFIG_DT3155 is not set @@ -1154,6 +1141,7 @@ CONFIG_DVB_USB_UMT_010=m CONFIG_DVB_USB_V2=m CONFIG_DVB_USB_VP702X=m CONFIG_DVB_USB_VP7045=m +CONFIG_DVB_USB_ZD1301=m # CONFIG_DW_DMAC_BIG_ENDIAN_IO is not set CONFIG_DW_DMAC_CORE=m CONFIG_DW_DMAC=m @@ -1179,6 +1167,7 @@ CONFIG_EEPROM_93CX6=m # CONFIG_EEPROM_93XX46 is not set CONFIG_EEPROM_AT24=m # CONFIG_EEPROM_AT25 is not set +CONFIG_EEPROM_IDT_89HPESX=m CONFIG_EEPROM_LEGACY=m CONFIG_EEPROM_MAX6875=m # CONFIG_EFI_ALLOW_SECURE_BOOT_EXIT is not set @@ -1189,7 +1178,6 @@ CONFIG_EFI_PGT_DUMP=y # CONFIG_EFI_TEST is not set # CONFIG_EFS_FS is not set CONFIG_EHEA=m -# CONFIG_EMAC_ROCKCHIP is not set # CONFIG_EMBEDDED is not set CONFIG_ENABLE_MUST_CHECK=y # CONFIG_ENABLE_WARN_DEPRECATED is not set @@ -1221,6 +1209,7 @@ CONFIG_EXT4_FS_SECURITY=y CONFIG_EXT4_FS=y CONFIG_EXT4_USE_FOR_EXT2=y # CONFIG_EXTCON_ADC_JACK is not set +CONFIG_EXTCON_INTEL_INT3496=m # CONFIG_EXTCON is not set # CONFIG_EXTCON_QCOM_SPMI_MISC is not set CONFIG_EXTRA_FIRMWARE="" @@ -1255,7 +1244,6 @@ CONFIG_FAULT_INJECTION_DEBUG_FS=y CONFIG_FAULT_INJECTION_STACKTRACE_FILTER=y CONFIG_FAULT_INJECTION=y # CONFIG_FB_3DFX is not set -# CONFIG_FB_ARC is not set # CONFIG_FB_ARK is not set # CONFIG_FB_ASILIANT is not set CONFIG_FB_ATY128_BACKLIGHT=y @@ -1273,18 +1261,11 @@ CONFIG_FB_ATY_BACKLIGHT=y # CONFIG_FB_CYBER2000 is not set CONFIG_FB_EFI=y # CONFIG_FB_FOREIGN_ENDIAN is not set -# CONFIG_FB_GEODE is not set -# CONFIG_FB_GOLDFISH is not set # CONFIG_FB_HECUBA is not set -# CONFIG_FB_HGA is not set # CONFIG_FB_I740 is not set -CONFIG_FB_I810_GTF=y -CONFIG_FB_I810_I2C=y -CONFIG_FB_I810=m CONFIG_FB_IBM_GXT4500=y # CONFIG_FB_IMSTT is not set # CONFIG_FB_KYRO is not set -# CONFIG_FB_LE80578 is not set CONFIG_FB_MATROX_G=y # CONFIG_FB_MATROX_I2C is not set # CONFIG_FB_MATROX_MILLENIUM is not set @@ -1335,8 +1316,6 @@ CONFIG_FB_TILEBLITTING=y # CONFIG_FB_VALKYRIE is not set CONFIG_FB_VESA=y # CONFIG_FB_VGA16 is not set -# CONFIG_FB_VIA_DIRECT_PROCFS is not set -# CONFIG_FB_VIA is not set CONFIG_FB_VIRTUAL=m # CONFIG_FB_VOODOO1 is not set # CONFIG_FB_VT8623 is not set @@ -1381,6 +1360,7 @@ CONFIG_FSCACHE_STATS=y CONFIG_FS_DAX=y CONFIG_FS_ENCRYPTION=y # CONFIG_FS_ENET is not set +CONFIG_FSI=m # CONFIG_FSL_DMA is not set # CONFIG_FSL_EDMA is not set # CONFIG_FSL_LBC is not set @@ -1428,7 +1408,8 @@ CONFIG_GAMEPORT_NS558=m CONFIG_GENERIC_PHY=y CONFIG_GENEVE=m # CONFIG_GEN_RTC is not set -# CONFIG_GENWQE is not set +CONFIG_GENWQE=m +CONFIG_GENWQE_PLATFORM_ERROR_RECOVERY=1 CONFIG_GFS2_FS_LOCKING_DLM=y CONFIG_GFS2_FS=m CONFIG_GIGASET_BASE=m @@ -1448,11 +1429,10 @@ CONFIG_GIRBIL_DONGLE=m # CONFIG_GPIO_ADNP is not set # CONFIG_GPIO_ADP5588 is not set # CONFIG_GPIO_ALTERA is not set -# CONFIG_GPIO_AMD8111 is not set # CONFIG_GPIO_AMDPT is not set # CONFIG_GPIO_BT8XX is not set -# CONFIG_GPIO_CS5535 is not set # CONFIG_GPIO_DWAPB is not set +CONFIG_GPIO_EXAR=m # CONFIG_GPIO_GENERIC_PLATFORM is not set # CONFIG_GPIO_GRGPIO is not set # CONFIG_GPIO_IT87 is not set @@ -1462,30 +1442,27 @@ CONFIG_GPIOLIB=y # CONFIG_GPIO_MAX732X is not set # CONFIG_GPIO_MC33880 is not set # CONFIG_GPIO_MCP23S08 is not set -# CONFIG_GPIO_ML_IOH is not set # CONFIG_GPIO_MOCKUP is not set # CONFIG_GPIO_MPC8XXX is not set CONFIG_GPIO_PCA953X=m CONFIG_GPIO_PCF857X=m # CONFIG_GPIO_PCH is not set +CONFIG_GPIO_PCI_IDIO_16=m # CONFIG_GPIO_PISOSR is not set # CONFIG_GPIO_RDC321X is not set # CONFIG_GPIO_SCH311X is not set -# CONFIG_GPIO_SCH is not set # CONFIG_GPIO_SX150X is not set # CONFIG_GPIO_SYSCON is not set -CONFIG_GPIO_SYSFS=y +# CONFIG_GPIO_SYSFS is not set # CONFIG_GPIO_TPIC2810 is not set # CONFIG_GPIO_TS4900 is not set # CONFIG_GPIO_TS5500 is not set # CONFIG_GPIO_UCB1400 is not set CONFIG_GPIO_VIPERBOARD=m -# CONFIG_GPIO_VX855 is not set # CONFIG_GPIO_WATCHDOG is not set CONFIG_GPIO_WM831X=m # CONFIG_GPIO_WS16C48 is not set # CONFIG_GPIO_XILINX is not set -# CONFIG_GPIO_ZX is not set CONFIG_GREENASIA_FF=y # CONFIG_GREYBUS is not set # CONFIG_GS_FPGABOOT is not set @@ -1686,6 +1663,7 @@ CONFIG_HW_RANDOM_TPM=m CONFIG_HW_RANDOM_VIRTIO=m CONFIG_HW_RANDOM=y CONFIG_HWSPINLOCK=m +# CONFIG_HX711 is not set CONFIG_HYSDN_CAPI=y CONFIG_HYSDN=m CONFIG_HZ=100 @@ -1721,7 +1699,6 @@ CONFIG_I2C_DIOLAN_U2C=m CONFIG_I2C_HELPER_AUTO=y CONFIG_I2C_HID=m # CONFIG_I2C_I801 is not set -CONFIG_I2C_IMX_LPI2C=m # CONFIG_I2C_ISCH is not set CONFIG_I2C=m CONFIG_I2C_MLXCPLD=m @@ -1741,8 +1718,6 @@ CONFIG_I2C_PARPORT_LIGHT=m CONFIG_I2C_PARPORT=m CONFIG_I2C_PCA_PLATFORM=m # CONFIG_I2C_PIIX4 is not set -CONFIG_I2C_PXA=m -# CONFIG_I2C_PXA_SLAVE is not set # CONFIG_I2C_RK3X is not set # CONFIG_I2C_ROBOTFUZZ_OSIF is not set CONFIG_I2C_SI470X=m @@ -1768,8 +1743,6 @@ CONFIG_I40EVF=m CONFIG_I6300ESB_WDT=m CONFIG_I82092=m # CONFIG_IAQCORE is not set -CONFIG_IB700_WDT=m -CONFIG_IBMASR=m CONFIG_IBM_BSR=m CONFIG_IBMEBUS=y # CONFIG_IBM_EMAC is not set @@ -1817,6 +1790,7 @@ CONFIG_IIO_ST_ACCEL_SPI_3AXIS=m CONFIG_IIO_ST_GYRO_3AXIS=m CONFIG_IIO_ST_GYRO_I2C_3AXIS=m CONFIG_IIO_ST_GYRO_SPI_3AXIS=m +# CONFIG_IIO_ST_LSM6DSX is not set CONFIG_IIO_ST_MAGN_3AXIS=m # CONFIG_IIO_ST_PRESS is not set CONFIG_IIO_SW_DEVICE=m @@ -1833,6 +1807,7 @@ CONFIG_IMA_MEASURE_PCR_IDX=10 # CONFIG_INA2XX_ADC is not set CONFIG_INET6_AH=m CONFIG_INET6_ESP=m +CONFIG_INET6_ESP_OFFLOAD=m CONFIG_INET6_IPCOMP=m CONFIG_INET6_XFRM_MODE_BEET=m CONFIG_INET6_XFRM_MODE_ROUTEOPTIMIZATION=m @@ -1842,6 +1817,7 @@ CONFIG_INET_AH=m CONFIG_INET_DIAG_DESTROY=y CONFIG_INET_DIAG=m CONFIG_INET_ESP=m +CONFIG_INET_ESP_OFFLOAD=m CONFIG_INET_IPCOMP=m CONFIG_INET_RAW_DIAG=m CONFIG_INET_TUNNEL=m @@ -1850,6 +1826,7 @@ CONFIG_INET_XFRM_MODE_BEET=m CONFIG_INET_XFRM_MODE_TRANSPORT=m CONFIG_INET_XFRM_MODE_TUNNEL=m CONFIG_INET=y +# CONFIG_INFINIBAND_BNXT_RE is not set # CONFIG_INFINIBAND_CXGB3_DEBUG is not set CONFIG_INFINIBAND_CXGB3=m CONFIG_INFINIBAND_CXGB4=m @@ -1940,8 +1917,6 @@ CONFIG_INPUT=y CONFIG_INPUT_YEALINK=m # CONFIG_INTEGRITY is not set # CONFIG_INTEL_IDMA64 is not set -# CONFIG_INTEL_MENLOW is not set -CONFIG_INTEL_RDT_A=y # CONFIG_INTEL_SOC_PMIC is not set # CONFIG_INTEL_TH is not set CONFIG_INTEL_XWAY_PHY=m @@ -2089,6 +2064,7 @@ CONFIG_IP_VS_SH_TAB_BITS=8 CONFIG_IP_VS_TAB_BITS=12 CONFIG_IP_VS_WLC=m CONFIG_IP_VS_WRR=m +CONFIG_IPVTAP=m # CONFIG_IPW2100_DEBUG is not set # CONFIG_IPW2100 is not set # CONFIG_IPW2200_DEBUG is not set @@ -2132,6 +2108,7 @@ CONFIG_IR_SERIAL=m CONFIG_IR_SERIAL_TRANSMITTER=y CONFIG_IR_SHARP_DECODER=m CONFIG_IR_SONY_DECODER=m +CONFIG_IR_SPI=m CONFIG_IR_STREAMZAP=m CONFIG_IR_TTUSBIR=m CONFIG_IRTTY_SIR=m @@ -2285,6 +2262,7 @@ CONFIG_KEYBOARD_PMIC8XXX=m # CONFIG_KEYBOARD_SUNKBD is not set # CONFIG_KEYBOARD_TCA6416 is not set # CONFIG_KEYBOARD_TCA8418 is not set +CONFIG_KEYBOARD_TM2_TOUCHKEY=m # CONFIG_KEYBOARD_XTKBD is not set CONFIG_KEY_DH_OPERATIONS=y CONFIG_KEYS=y @@ -2296,7 +2274,7 @@ CONFIG_KGDB_TESTS=y CONFIG_KGDB=y CONFIG_KINGSUN_DONGLE=m # CONFIG_KMX61 is not set -CONFIG_KPROBE_EVENT=y +CONFIG_KPROBE_EVENTS=y # CONFIG_KPROBES_SANITY_TEST is not set CONFIG_KPROBES=y CONFIG_KS0108_DELAY=2 @@ -2349,13 +2327,13 @@ CONFIG_LDM_PARTITION=y # CONFIG_LEDS_BCM6358 is not set # CONFIG_LEDS_BD2802 is not set CONFIG_LEDS_BLINKM=m +CONFIG_LEDS_BRIGHTNESS_HW_CHANGED=y CONFIG_LEDS_CLASS_FLASH=m CONFIG_LEDS_CLASS=y CONFIG_LEDS_CLEVO_MAIL=m # CONFIG_LEDS_DAC124S085 is not set CONFIG_LEDS_DELL_NETBOOKS=m # CONFIG_LEDS_GPIO is not set -CONFIG_LEDS_INTEL_SS4200=m # CONFIG_LEDS_IS31FL319X is not set # CONFIG_LEDS_IS31FL32XX is not set # CONFIG_LEDS_KTD2692 is not set @@ -2465,6 +2443,8 @@ CONFIG_LPARCFG=y # CONFIG_LPC_ICH is not set CONFIG_LP_CONSOLE=y # CONFIG_LPC_SCH is not set +CONFIG_LPFC_NVME_INITIATOR=y +CONFIG_LPFC_NVME_TARGET=y CONFIG_LSI_ET1011C_PHY=m CONFIG_LSM_MMAP_MIN_ADDR=65536 # CONFIG_LTC2485 is not set @@ -2498,6 +2478,7 @@ CONFIG_MACVLAN=m CONFIG_MACVTAP=m # CONFIG_MAG3110 is not set CONFIG_MAGIC_SYSRQ_DEFAULT_ENABLE=0x0 +CONFIG_MAGIC_SYSRQ_SERIAL=y CONFIG_MAGIC_SYSRQ=y # CONFIG_MAILBOX is not set # CONFIG_MAILBOX_TEST is not set @@ -2506,10 +2487,12 @@ CONFIG_MANTIS_CORE=m CONFIG_MARVELL_PHY=m # CONFIG_MATH_EMULATION is not set # CONFIG_MAX1027 is not set +# CONFIG_MAX11100 is not set # CONFIG_MAX1363 is not set CONFIG_MAX30100=m # CONFIG_MAX44000 is not set # CONFIG_MAX517 is not set +# CONFIG_MAX5481 is not set # CONFIG_MAX5487 is not set # CONFIG_MAX5821 is not set # CONFIG_MAX63XX_WATCHDOG is not set @@ -2588,7 +2571,6 @@ CONFIG_MEMSTICK_TIFM_MS=m # CONFIG_MEMSTICK_UNSAFE_RESUME is not set # CONFIG_MEMTEST is not set # CONFIG_MEN_A21_WDT is not set -CONFIG_MESON_GXL_PHY=m CONFIG_MESSAGE_LOGLEVEL_DEFAULT=4 # CONFIG_MFD_88PM800 is not set # CONFIG_MFD_88PM805 is not set @@ -2607,6 +2589,7 @@ CONFIG_MESSAGE_LOGLEVEL_DEFAULT=4 # CONFIG_MFD_AXP20X is not set # CONFIG_MFD_BCM590XX is not set CONFIG_MFD_CORE=m +CONFIG_MFD_CPCAP=m # CONFIG_MFD_CROS_EC is not set # CONFIG_MFD_CS5535 is not set # CONFIG_MFD_DA9052_I2C is not set @@ -2653,7 +2636,6 @@ CONFIG_MFD_SM501_GPIO=y CONFIG_MFD_SM501=m # CONFIG_MFD_SMSC is not set # CONFIG_MFD_STMPE is not set -CONFIG_MFD_SUN4I_GPADC=m # CONFIG_MFD_SYSCON is not set # CONFIG_MFD_TC3589X is not set # CONFIG_MFD_TC6393XB is not set @@ -2788,7 +2770,6 @@ CONFIG_MOUSE_ELAN_I2C_SMBUS=y CONFIG_MOUSE_PS2_ELANTECH=y CONFIG_MOUSE_PS2_SENTELIC=y # CONFIG_MOUSE_PS2_TOUCHKIT is not set -# CONFIG_MOUSE_PS2_VMMOUSE is not set CONFIG_MOUSE_PS2=y CONFIG_MOUSE_SERIAL=m CONFIG_MOUSE_SYNAPTICS_I2C=m @@ -2806,6 +2787,7 @@ CONFIG_MOVABLE_NODE=y CONFIG_MPLS_IPTUNNEL=m CONFIG_MPLS_ROUTING=m # CONFIG_MPU3050_I2C is not set +CONFIG_MQ_IOSCHED_DEADLINE=y # CONFIG_MS5611 is not set # CONFIG_MS5637 is not set # CONFIG_MS_BLOCK is not set @@ -2914,6 +2896,7 @@ CONFIG_NET_ACT_MIRRED=m CONFIG_NET_ACT_NAT=m CONFIG_NET_ACT_PEDIT=m CONFIG_NET_ACT_POLICE=m +CONFIG_NET_ACT_SAMPLE=m CONFIG_NET_ACT_SIMP=m CONFIG_NET_ACT_SKBEDIT=m CONFIG_NET_ACT_SKBMOD=m @@ -3047,6 +3030,7 @@ CONFIG_NETFILTER_XT_TARGET_TRACE=m CONFIG_NETFILTER=y CONFIG_NET_FOU_IP_TUNNELS=y CONFIG_NET_FOU=m +CONFIG_NET_IFE=m CONFIG_NET_IFE_SKBMARK=m CONFIG_NET_IFE_SKBPRIO=m CONFIG_NET_IFE_SKBTCINDEX=m @@ -3057,7 +3041,7 @@ CONFIG_NET_IPIP=m CONFIG_NET_IPVTI=m CONFIG_NET_KEY=m CONFIG_NET_KEY_MIGRATE=y -# CONFIG_NET_L3_MASTER_DEV is not set +CONFIG_NET_L3_MASTER_DEV=y CONFIG_NETLABEL=y CONFIG_NETLINK_DIAG=m CONFIG_NET_MPLS_GSO=m @@ -3109,8 +3093,9 @@ CONFIG_NET_VENDOR_ADAPTEC=y CONFIG_NET_VENDOR_AGERE=y # CONFIG_NET_VENDOR_ALACRITECH is not set CONFIG_NET_VENDOR_ALTEON=y -# CONFIG_NET_VENDOR_AMAZON is not set +CONFIG_NET_VENDOR_AMAZON=y CONFIG_NET_VENDOR_AMD=y +# CONFIG_NET_VENDOR_AQUANTIA is not set CONFIG_NET_VENDOR_ARC=y CONFIG_NET_VENDOR_ATHEROS=y # CONFIG_NET_VENDOR_AURORA is not set @@ -3236,6 +3221,8 @@ CONFIG_NF_LOG_IPV6=m CONFIG_NF_LOG_NETDEV=m CONFIG_NF_NAT=m CONFIG_NF_NAT_SNMP_BASIC=m +# CONFIG_NFP_DEBUG is not set +CONFIG_NFP=m # CONFIG_NFP_NET_DEBUG is not set CONFIG_NFP_NETVF=m CONFIG_NF_REJECT_IPV6=m @@ -3307,6 +3294,7 @@ CONFIG_NFT_REDIR=m CONFIG_NFT_REJECT_IPV4=m CONFIG_NFT_REJECT=m CONFIG_NFT_RT=m +CONFIG_NFT_SET_BITMAP=m CONFIG_NFT_SET_HASH=m CONFIG_NFT_SET_RBTREE=m CONFIG_N_GSM=m @@ -3378,6 +3366,7 @@ CONFIG_NOUVEAU_DEBUG=5 CONFIG_NOUVEAU_DEBUG_DEFAULT=3 CONFIG_NOZOMI=m CONFIG_NR_CPUS=1024 +CONFIG_NR_DEV_DAX=32768 CONFIG_NR_IRQS=512 CONFIG_NS83820=m CONFIG_NSC_FIR=m @@ -3436,6 +3425,7 @@ CONFIG_PACKET=y CONFIG_PANIC_TIMEOUT=0 CONFIG_PANTHERLORD_FF=y # CONFIG_PARIDE is not set +CONFIG_PARMAN=m CONFIG_PARPORT_1284=y # CONFIG_PARPORT_AX88796 is not set CONFIG_PARPORT=m @@ -3494,6 +3484,7 @@ CONFIG_PATA_TOSHIBA=m CONFIG_PATA_TRIFLEX=m CONFIG_PATA_VIA=m CONFIG_PATA_WINBOND=m +# CONFIG_PC104 is not set # CONFIG_PC87413_WDT is not set CONFIG_PCCARD=y CONFIG_PCF50633_ADC=m @@ -3548,6 +3539,8 @@ CONFIG_PERSISTENT_KEYRINGS=y CONFIG_PHYLIB=y # CONFIG_PHY_PXA_28NM_HSIC is not set # CONFIG_PHY_PXA_28NM_USB2 is not set +# CONFIG_PHY_QCOM_USB_HSIC is not set +# CONFIG_PHY_QCOM_USB_HS is not set # CONFIG_PHY_ST_SPEAR1310_MIPHY is not set # CONFIG_PHY_ST_SPEAR1340_MIPHY is not set # CONFIG_PHY_TUSB1210 is not set @@ -3556,6 +3549,7 @@ CONFIG_PID_NS=y # CONFIG_PINCTRL is not set CONFIG_PINCTRL_MSM8994=m # CONFIG_PINCTRL_SX150X is not set +# CONFIG_PINCTRL_TI_IODELAY is not set # CONFIG_PINMUX is not set CONFIG_PKCS7_MESSAGE_PARSER=y # CONFIG_PKCS7_TEST_KEY is not set @@ -3653,6 +3647,7 @@ CONFIG_PPTP=m CONFIG_PREEMPT_VOLUNTARY=y CONFIG_PREVENT_FIRMWARE_BUILD=y CONFIG_PRINTER=m +CONFIG_PRINTK_SAFE_LOG_BUF_SHIFT=12 CONFIG_PRINTK_TIME=y # CONFIG_PRINT_QUOTA_WARNING is not set CONFIG_PRINT_STACK_DEPTH=64 @@ -3669,6 +3664,7 @@ CONFIG_PROVE_LOCKING=y # CONFIG_PROVE_RCU_REPEATEDLY is not set CONFIG_PROVE_RCU=y # CONFIG_PS3_VRAM is not set +CONFIG_PSAMPLE=m CONFIG_PSERIES_CPUIDLE=y CONFIG_PSERIES_ENERGY=m # CONFIG_PSTORE_CONSOLE is not set @@ -3683,14 +3679,15 @@ CONFIG_PWM_HIBVT=m # CONFIG_PWM_PCA9685 is not set CONFIG_PWM=y CONFIG_PWRSEQ_EMMC=m +# CONFIG_PWRSEQ_SD8787 is not set CONFIG_PWRSEQ_SIMPLE=m # CONFIG_QCA7000 is not set CONFIG_QCOM_ADSP_PIL=m -# CONFIG_QCOM_EBI2 is not set # CONFIG_QCOM_EMAC is not set # CONFIG_QCOM_HIDMA is not set # CONFIG_QCOM_HIDMA_MGMT is not set CONFIG_QEDE=m +CONFIG_QEDF=m CONFIG_QEDI=m CONFIG_QED=m CONFIG_QED_SRIOV=y @@ -3736,7 +3733,6 @@ CONFIG_RADIO_TERRATEC=m CONFIG_RADIO_TRUST=m CONFIG_RADIO_TYPHOON=m CONFIG_RADIO_WL1273=m -# CONFIG_RADIO_WL128X is not set # depends on TI_ST which we don't enable CONFIG_RADIO_ZOLTRIX=m CONFIG_RAID_ATTRS=m # CONFIG_RANDOM32_SELFTEST is not set @@ -3781,6 +3777,7 @@ CONFIG_REALTEK_AUTOPM=y CONFIG_REALTEK_PHY=m CONFIG_REGMAP_I2C=m CONFIG_REGMAP=y +CONFIG_REGULATOR_CPCAP=m # CONFIG_REGULATOR_DEBUG is not set # CONFIG_REGULATOR is not set # CONFIG_REISERFS_CHECK is not set @@ -4261,6 +4258,7 @@ CONFIG_SENSORS_SIS5595=m CONFIG_SENSORS_SMSC47B397=m CONFIG_SENSORS_SMSC47M192=m CONFIG_SENSORS_SMSC47M1=m +# CONFIG_SENSORS_STTS751 is not set CONFIG_SENSORS_TC654=m CONFIG_SENSORS_TC74=m CONFIG_SENSORS_THMC50=m @@ -4296,6 +4294,7 @@ CONFIG_SERIAL_8250_CS=m # CONFIG_SERIAL_8250_DEPRECATED_OPTIONS is not set # CONFIG_SERIAL_8250_DETECT_IRQ is not set CONFIG_SERIAL_8250_DW=y +CONFIG_SERIAL_8250_EXAR=m CONFIG_SERIAL_8250_EXTENDED=y # CONFIG_SERIAL_8250_FINTEK is not set # CONFIG_SERIAL_8250_INGENIC is not set @@ -4304,6 +4303,7 @@ CONFIG_SERIAL_8250_MANY_PORTS=y # CONFIG_SERIAL_8250_MID is not set CONFIG_SERIAL_8250_MOXA=m CONFIG_SERIAL_8250_NR_UARTS=32 +CONFIG_SERIAL_8250_PCI=m CONFIG_SERIAL_8250_RSA=y CONFIG_SERIAL_8250_RT288X=y CONFIG_SERIAL_8250_RUNTIME_UARTS=32 @@ -4316,6 +4316,8 @@ CONFIG_SERIAL_ARC_NR_PORTS=1 CONFIG_SERIAL_CORE_CONSOLE=y CONFIG_SERIAL_CORE=m # CONFIG_SERIAL_CPM is not set +CONFIG_SERIAL_DEV_BUS=y +CONFIG_SERIAL_DEV_CTRL_TTYPORT=y # CONFIG_SERIAL_FSL_LPUART is not set CONFIG_SERIAL_ICOM=m # CONFIG_SERIAL_IFX6X60 is not set @@ -4381,6 +4383,7 @@ CONFIG_SLUB_CPU_PARTIAL=y CONFIG_SLUB=y CONFIG_SMARTJOYPLUS_FF=y CONFIG_SMC_IRCC_FIR=m +# CONFIG_SMC is not set # CONFIG_SM_FTL is not set CONFIG_SMP=y CONFIG_SMSC911X=m @@ -4526,7 +4529,7 @@ CONFIG_SND_SEQUENCER=m CONFIG_SND_SEQUENCER_OSS=y CONFIG_SND_SERIAL_U16550=m CONFIG_SND_SIMPLE_CARD=m -# CONFIG_SND_SIMPLE_SCU_CARD is not set +CONFIG_SND_SIMPLE_SCU_CARD=m CONFIG_SND_SIS7019=m # CONFIG_SND_SOC_ADAU1701 is not set # CONFIG_SND_SOC_ADAU7002 is not set @@ -4577,6 +4580,7 @@ CONFIG_SND_SOC_HDMI_CODEC=m # CONFIG_SND_SOC_MAX9860 is not set # CONFIG_SND_SOC_MSM8916_WCD_ANALOG is not set # CONFIG_SND_SOC_MSM8916_WCD_DIGITAL is not set +# CONFIG_SND_SOC_NAU8540 is not set # CONFIG_SND_SOC_NAU8810 is not set # CONFIG_SND_SOC_PCM1681 is not set # CONFIG_SND_SOC_PCM179X_I2C is not set @@ -4599,6 +4603,7 @@ CONFIG_SND_SOC_SPDIF=m # CONFIG_SND_SOC_STI_SAS is not set # CONFIG_SND_SOC_TAS2552 is not set # CONFIG_SND_SOC_TAS5086 is not set +# CONFIG_SND_SOC_TAS571X is not set # CONFIG_SND_SOC_TAS5720 is not set # CONFIG_SND_SOC_TFA9879 is not set # CONFIG_SND_SOC_TLV320AIC23_I2C is not set @@ -4631,7 +4636,6 @@ CONFIG_SND_SOC_SPDIF=m # CONFIG_SND_SOC_XTFPGA_I2S is not set CONFIG_SND_SONICVIBES=m # CONFIG_SND_SPI is not set -CONFIG_SND_SUN8I_CODEC_ANALOG=m # CONFIG_SND_SUPPORT_OLD_API is not set CONFIG_SND_TRIDENT=m CONFIG_SND_USB_6FIRE=m @@ -4657,6 +4661,7 @@ CONFIG_SND_VX222=m CONFIG_SND_YMFPCI=m # CONFIG_SOC_CAMERA is not set # CONFIG_SOC_TI is not set +# CONFIG_SOC_ZTE is not set CONFIG_SOFT_WATCHDOG=m CONFIG_SOLARIS_X86_PARTITION=y # CONFIG_SOLO6X10 is not set @@ -4700,6 +4705,7 @@ CONFIG_SQUASHFS_XATTR=y CONFIG_SQUASHFS_XZ=y CONFIG_SQUASHFS_ZLIB=y # CONFIG_SRAM is not set +# CONFIG_SRF08 is not set # CONFIG_SSB_DEBUG is not set CONFIG_SSB_DRIVER_GPIO=y CONFIG_SSB_DRIVER_PCICORE=y @@ -4717,6 +4723,7 @@ CONFIG_STAGING_MEDIA=y CONFIG_STAGING=y CONFIG_STANDALONE=y # CONFIG_STATIC_KEYS_SELFTEST is not set +# CONFIG_STATIC_USERMODEHELPER is not set CONFIG_STE10XP=m # CONFIG_STE_MODEM_RPROC is not set CONFIG_STK3310=m @@ -4731,10 +4738,6 @@ CONFIG_STMMAC_ETH=m CONFIG_STRICT_DEVMEM=y CONFIG_STRIP_ASM_SYMS=y # CONFIG_STRIP is not set -# CONFIG_SUN50I_A64_CCU is not set -# CONFIG_SUN6I_A31_CCU is not set -# CONFIG_SUN8I_A23_CCU is not set -# CONFIG_SUN8I_A33_CCU is not set CONFIG_SUNDANCE=m # CONFIG_SUNDANCE_MMIO is not set CONFIG_SUNGEM=m @@ -4743,7 +4746,6 @@ CONFIG_SUNRPC_DEBUG=y CONFIG_SUNRPC_GSS=m CONFIG_SUNRPC=m CONFIG_SUNRPC_XPRT_RDMA=m -# CONFIG_SUNXI_CCU is not set CONFIG_SURFACE_3_BUTTON=m CONFIG_SURFACE3_WMI=m CONFIG_SUSPEND_FREEZER=y @@ -4826,8 +4828,6 @@ CONFIG_TCP_CONG_YEAH=m CONFIG_TCP_MD5SIG=y # CONFIG_TCS3414 is not set # CONFIG_TCS3472 is not set -CONFIG_TEGRA_GMI=m -CONFIG_TEGRA_IVC=y CONFIG_TEHUTI=m CONFIG_TEKRAM_DONGLE=m CONFIG_TELCLOCK=m @@ -4841,9 +4841,11 @@ CONFIG_TEST_ASYNC_DRIVER_PROBE=m CONFIG_TEST_KSTRTOX=y CONFIG_TEST_LIST_SORT=y # CONFIG_TEST_LKM is not set +# CONFIG_TEST_PARMAN is not set # CONFIG_TEST_POWER is not set # CONFIG_TEST_PRINTF is not set # CONFIG_TEST_RHASHTABLE is not set +# CONFIG_TEST_SORT is not set # CONFIG_TEST_STATIC_KEYS is not set # CONFIG_TEST_STRING_HELPERS is not set # CONFIG_TEST_UDELAY is not set @@ -4869,6 +4871,7 @@ CONFIG_THRUSTMASTER_FF=y # CONFIG_TI_ADC128S052 is not set # CONFIG_TI_ADC161S626 is not set # CONFIG_TI_ADS1015 is not set +# CONFIG_TI_ADS7950 is not set # CONFIG_TI_ADS8688 is not set # CONFIG_TI_CPSW_ALE is not set # CONFIG_TI_DAC7512 is not set @@ -4883,9 +4886,11 @@ CONFIG_TIPC_MEDIA_UDP=y CONFIG_TI_SCI_PROTOCOL=m # CONFIG_TI_ST is not set # CONFIG_TI_SYSCON_RESET is not set +# CONFIG_TI_TLC4541 is not set CONFIG_TLAN=m # CONFIG_TMD_HERMES is not set # CONFIG_TMP006 is not set +# CONFIG_TMP007 is not set CONFIG_TMPFS_POSIX_ACL=y CONFIG_TMPFS_XATTR=y CONFIG_TMPFS=y @@ -4954,6 +4959,7 @@ CONFIG_TOUCHSCREEN_WACOM_I2C=m CONFIG_TOUCHSCREEN_WACOM_W8001=m # CONFIG_TOUCHSCREEN_WDT87XX_I2C is not set # CONFIG_TOUCHSCREEN_WM97XX is not set +CONFIG_TOUCHSCREEN_ZET6223=m CONFIG_TOUCHSCREEN_ZFORCE=m # CONFIG_TPL0102 is not set # CONFIG_TPS6105X is not set @@ -4966,7 +4972,8 @@ CONFIG_TOUCHSCREEN_ZFORCE=m CONFIG_TRACER_SNAPSHOT=y # CONFIG_TRACE_SINK is not set # CONFIG_TRACING_EVENTS_GPIO is not set -# CONFIG_TRANSPARENT_HUGEPAGE is not set +CONFIG_TRANSPARENT_HUGEPAGE_MADVISE=y +CONFIG_TRANSPARENT_HUGEPAGE=y # CONFIG_TR is not set CONFIG_TRUSTED_KEYS=m # CONFIG_TS4800_IRQ is not set @@ -5022,7 +5029,7 @@ CONFIG_UNIX_DIAG=m CONFIG_UNIXWARE_DISKLABEL=y CONFIG_UNIX=y CONFIG_UNUSED_SYMBOLS=y -CONFIG_UPROBE_EVENT=y +CONFIG_UPROBE_EVENTS=y # CONFIG_US5182D is not set CONFIG_USB_ACM=m CONFIG_USB_ADUTUX=m @@ -5039,6 +5046,7 @@ CONFIG_USB_CATC=m CONFIG_USB_CDC_PHONET=m CONFIG_USB_CHAOSKEY=m # CONFIG_USB_CHIPIDEA is not set +# CONFIG_USB_CHIPIDEA_ULPI is not set CONFIG_USB_CXACRU=m # CONFIG_USB_CYPRESS_CY7C63 is not set # CONFIG_USB_CYTHERM is not set @@ -5125,6 +5133,7 @@ CONFIG_USB_HID=y CONFIG_USB_HSIC_USB3503=m CONFIG_USB_HSIC_USB4604=m CONFIG_USB_HSO=m +CONFIG_USB_HUB_USB251XB=m CONFIG_USB_HWA_HCD=m CONFIG_USB_IDMOUSE=m CONFIG_USB_IOWARRIOR=m @@ -5272,6 +5281,7 @@ CONFIG_USB_SERIAL_SPCP8X5=m CONFIG_USB_SERIAL_SSU100=m CONFIG_USB_SERIAL_SYMBOL=m CONFIG_USB_SERIAL_TI=m +CONFIG_USB_SERIAL_UPD78F0730=m CONFIG_USB_SERIAL_VISOR=m CONFIG_USB_SERIAL_WHITEHEAT=m # CONFIG_USB_SERIAL_WISHBONE is not set @@ -5360,6 +5370,7 @@ CONFIG_VFIO_MDEV=m CONFIG_VFIO_PCI=m CONFIG_VGA_ARB_MAX_GPUS=16 CONFIG_VGA_ARB=y +# CONFIG_VGACON_SOFT_SCROLLBACK_PERSISTENT_ENABLE_BY_DEFAULT is not set CONFIG_VGACON_SOFT_SCROLLBACK_SIZE=64 CONFIG_VGACON_SOFT_SCROLLBACK=y CONFIG_VGA_CONSOLE=y @@ -5410,6 +5421,7 @@ CONFIG_VIDEO_HDPVR=m CONFIG_VIDEO_HEXIUM_GEMINI=m CONFIG_VIDEO_HEXIUM_ORION=m # CONFIG_VIDEO_IVTV_ALSA is not set +# CONFIG_VIDEO_IVTV_DEPRECATED_IOCTLS is not set CONFIG_VIDEO_IVTV=m # CONFIG_VIDEO_M5MOLS is not set # CONFIG_VIDEO_MEM2MEM_DEINTERLACE is not set @@ -5431,7 +5443,6 @@ CONFIG_VIDEO_SAA7134_RC=y CONFIG_VIDEO_SAA7146=m CONFIG_VIDEO_SAA7146_VV=m CONFIG_VIDEO_SAA7164=m -CONFIG_VIDEO_SAMSUNG_S5P_CEC=m # CONFIG_VIDEO_SH_MOBILE_CEU is not set # CONFIG_VIDEO_SH_MOBILE_CSI2 is not set # CONFIG_VIDEO_SH_VEU is not set @@ -5467,6 +5478,7 @@ CONFIG_VIDEO_ZORAN_ZR36060=m # CONFIG_VIRT_DRIVERS is not set CONFIG_VIRTIO_BALLOON=m CONFIG_VIRTIO_BLK=m +CONFIG_VIRTIO_BLK_SCSI=y CONFIG_VIRTIO_CONSOLE=m CONFIG_VIRTIO_INPUT=m # CONFIG_VIRTIO_MMIO_CMDLINE_DEVICES is not set @@ -5482,8 +5494,6 @@ CONFIG_VLAN_8021Q=m CONFIG_VLAN_8021Q_MVRP=y CONFIG_VLSI_FIR=m # CONFIG_VME_BUS is not set -CONFIG_VMWARE_BALLOON=m -CONFIG_VMWARE_PVSCSI=m # CONFIG_VMXNET3 is not set CONFIG_VORTEX=m CONFIG_VSOCKETS=m @@ -5506,6 +5516,7 @@ CONFIG_W1_MASTER_DS2490=m # CONFIG_W1_MASTER_GPIO is not set # CONFIG_W1_MASTER_MATROX is not set CONFIG_W1_SLAVE_BQ27000=m +CONFIG_W1_SLAVE_DS2405=m CONFIG_W1_SLAVE_DS2406=m CONFIG_W1_SLAVE_DS2408=m # CONFIG_W1_SLAVE_DS2408_READBACK is not set @@ -5580,6 +5591,7 @@ CONFIG_WM8350_POWER=m CONFIG_WM8350_WATCHDOG=m # CONFIG_WQ_POWER_EFFICIENT_DEFAULT is not set CONFIG_WQ_WATCHDOG=y +# CONFIG_WW_MUTEX_SELFTEST is not set # CONFIG_X25 is not set CONFIG_X86_BOOTPARAM_MEMORY_CORRUPTION_CHECK=y CONFIG_X86_PTDUMP=y diff --git a/kernel-ppc64p7.config b/kernel-ppc64p7.config index c5ed24d48..a3cb93cdc 100644 --- a/kernel-ppc64p7.config +++ b/kernel-ppc64p7.config @@ -122,7 +122,7 @@ CONFIG_AFFS_FS=m # CONFIG_AF_KCM is not set # CONFIG_AF_RXRPC is not set # CONFIG_AFS_FS is not set -CONFIG_AGP=y +# CONFIG_AGP is not set # CONFIG_AHCI_CEVA is not set # CONFIG_AHCI_QORIQ is not set # CONFIG_AIC79XX_BUILD_FIRMWARE is not set @@ -168,10 +168,7 @@ CONFIG_APM_POWER=m # CONFIG_APPLICOM is not set CONFIG_AQUANTIA_PHY=m CONFIG_AR5523=m -# CONFIG_ARCH_TEGRA_186_SOC is not set # CONFIG_ARCNET is not set -# CONFIG_ARM64_PTDUMP is not set -# CONFIG_ARM_SCPI_PROTOCOL is not set # CONFIG_AS3935 is not set CONFIG_ASYMMETRIC_KEY_TYPE=y CONFIG_ASYNC_RAID6_TEST=m @@ -325,7 +322,6 @@ CONFIG_BATMAN_ADV_NC=y # CONFIG_BATTERY_DS2781 is not set # CONFIG_BATTERY_DS2782 is not set # CONFIG_BATTERY_GAUGE_LTC2941 is not set -# CONFIG_BATTERY_GOLDFISH is not set # CONFIG_BATTERY_MAX17040 is not set # CONFIG_BATTERY_MAX17042 is not set # CONFIG_BATTERY_SBS is not set @@ -368,6 +364,7 @@ CONFIG_BINFMT_SCRIPT=y CONFIG_BLK_CGROUP=y # CONFIG_BLK_CMDLINE_PARSER is not set CONFIG_BLK_CPQ_CISS_DA=m +CONFIG_BLK_DEBUG_FS=y CONFIG_BLK_DEV_3W_XXXX_RAID=m CONFIG_BLK_DEV_BSGLIB=y CONFIG_BLK_DEV_BSG=y @@ -408,6 +405,7 @@ CONFIG_BLK_DEV_THROTTLING=y CONFIG_BLK_DEV_UMEM=m CONFIG_BLK_DEV=y CONFIG_BLK_DEV_ZONED=y +CONFIG_BLK_SED_OPAL=y CONFIG_BLK_WBT_MQ=y # CONFIG_BLK_WBT_SQ is not set CONFIG_BLK_WBT=y @@ -504,6 +502,7 @@ CONFIG_BT_HCIUART_INTEL=y CONFIG_BT_HCIUART_LL=y CONFIG_BT_HCIUART=m CONFIG_BT_HCIUART_MRVL=y +CONFIG_BT_HCIUART_NOKIA=m CONFIG_BT_HCIUART_QCA=y CONFIG_BT_HCIVHCI=m CONFIG_BT_HIDP=m @@ -604,6 +603,7 @@ CONFIG_CEPH_LIB=m # CONFIG_CEPH_LIB_USE_DNS_RESOLVER is not set CONFIG_CFAG12864B=m CONFIG_CFAG12864B_RATE=20 +CONFIG_CFG80211_CRDA_SUPPORT=y CONFIG_CFG80211_DEBUGFS=y CONFIG_CFG80211_DEFAULT_PS=y # CONFIG_CFG80211_DEVELOPER_WARNINGS is not set @@ -621,6 +621,7 @@ CONFIG_CGROUP_NET_CLASSID=y CONFIG_CGROUP_NET_PRIO=y CONFIG_CGROUP_PERF=y CONFIG_CGROUP_PIDS=y +# CONFIG_CGROUP_RDMA is not set CONFIG_CGROUP_SCHED=y CONFIG_CGROUPS=y # CONFIG_CHARGER_BQ2415X is not set @@ -628,6 +629,7 @@ CONFIG_CGROUPS=y # CONFIG_CHARGER_BQ24257 is not set # CONFIG_CHARGER_BQ24735 is not set # CONFIG_CHARGER_BQ25890 is not set +# CONFIG_CHARGER_DETECTOR_MAX14656 is not set # CONFIG_CHARGER_GPIO is not set # CONFIG_CHARGER_ISP1704 is not set # CONFIG_CHARGER_LP8727 is not set @@ -635,6 +637,7 @@ CONFIG_CGROUPS=y # CONFIG_CHARGER_PCF50633 is not set # CONFIG_CHARGER_QCOM_SMBB is not set # CONFIG_CHARGER_RT9455 is not set +# CONFIG_CHARGER_SBS is not set CONFIG_CHARGER_SMB347=m # CONFIG_CHECKPOINT_RESTORE is not set CONFIG_CHELSIO_T1_1G=y @@ -673,6 +676,7 @@ CONFIG_CLS_U32_PERF=y CONFIG_CM32181=m # CONFIG_CM3232 is not set # CONFIG_CM3323 is not set +CONFIG_CM3605=m # CONFIG_CM36651 is not set CONFIG_CMA_AREAS=7 # CONFIG_CMA_DEBUGFS is not set @@ -688,23 +692,12 @@ CONFIG_CODA_FS=m # CONFIG_COMMON_CLK_CDCE706 is not set # CONFIG_COMMON_CLK_CDCE925 is not set # CONFIG_COMMON_CLK_CS2000_CP is not set -# CONFIG_COMMON_CLK_HI3516CV300 is not set -# CONFIG_COMMON_CLK_HI3519 is not set -# CONFIG_COMMON_CLK_HI3798CV200 is not set -# CONFIG_COMMON_CLK_MT2701_BDPSYS is not set -# CONFIG_COMMON_CLK_MT2701_ETHSYS is not set -# CONFIG_COMMON_CLK_MT2701_HIFSYS is not set -# CONFIG_COMMON_CLK_MT2701_IMGSYS is not set -# CONFIG_COMMON_CLK_MT2701 is not set -# CONFIG_COMMON_CLK_MT2701_MMSYS is not set -# CONFIG_COMMON_CLK_MT2701_VDECSYS is not set -# CONFIG_COMMON_CLK_MT8135 is not set -# CONFIG_COMMON_CLK_MT8173 is not set -# CONFIG_COMMON_CLK_OXNAS is not set # CONFIG_COMMON_CLK_PWM is not set # CONFIG_COMMON_CLK_SI514 is not set # CONFIG_COMMON_CLK_SI5351 is not set +# CONFIG_COMMON_CLK_VC5 is not set # CONFIG_COMMON_CLK_XLNX_CLKWZRD is not set +# CONFIG_COMMON_RESET_HI3660 is not set CONFIG_COMPACTION=y # CONFIG_COMPAT_BRK is not set # CONFIG_COMPILE_TEST is not set @@ -749,6 +742,7 @@ CONFIG_CRC_T10DIF=y CONFIG_CROSS_COMPILE="" CONFIG_CROSS_MEMORY_ATTACH=y CONFIG_CRYPTO_842=m +CONFIG_CRYPTO_AES_TI=m CONFIG_CRYPTO_AES=y CONFIG_CRYPTO_ANSI_CPRNG=m CONFIG_CRYPTO_ANUBIS=m @@ -764,12 +758,9 @@ CONFIG_CRYPTO_CCM=m CONFIG_CRYPTO_CHACHA20=m CONFIG_CRYPTO_CHACHA20POLY1305=m CONFIG_CRYPTO_CMAC=m -CONFIG_CRYPTO_CRC32_ARM_CE=m -CONFIG_CRYPTO_CRC32C_INTEL=m CONFIG_CRYPTO_CRC32C_VPMSUM=m CONFIG_CRYPTO_CRC32C=y CONFIG_CRYPTO_CRC32=m -CONFIG_CRYPTO_CRCT10DIF_ARM_CE=m # CONFIG_CRYPTO_CRYPTD is not set CONFIG_CRYPTO_CTR=y CONFIG_CRYPTO_CTS=y @@ -905,6 +896,7 @@ CONFIG_DEBUG_OBJECTS_ENABLE_DEFAULT=1 # CONFIG_DEBUG_PERF_USE_VMALLOC is not set # CONFIG_DEBUG_PI_LIST is not set # CONFIG_DEBUG_PINCTRL is not set +# CONFIG_DEBUG_REFCOUNT is not set CONFIG_DEBUG_RODATA_TEST=y # CONFIG_DEBUG_RT_MUTEXES is not set # CONFIG_DEBUG_SECTION_MISMATCH is not set @@ -932,6 +924,8 @@ CONFIG_DEFAULT_MMAP_MIN_ADDR=4096 # CONFIG_DEFXX is not set # CONFIG_DETECT_HUNG_TASK is not set CONFIG_DEV_APPLETALK=m +CONFIG_DEV_DAX=m +CONFIG_DEV_DAX_PMEM=m # CONFIG_DEVFREQ_GOV_PASSIVE is not set # CONFIG_DEVFREQ_GOV_PERFORMANCE is not set # CONFIG_DEVFREQ_GOV_POWERSAVE is not set @@ -939,6 +933,7 @@ CONFIG_DEVFREQ_GOV_SIMPLE_ONDEMAND=m # CONFIG_DEVFREQ_GOV_USERSPACE is not set # CONFIG_DEVKMEM is not set CONFIG_DEVMEM=y +# CONFIG_DEVPORT is not set CONFIG_DEVTMPFS_MOUNT=y CONFIG_DEVTMPFS=y # CONFIG_DGAP is not set @@ -1006,6 +1001,7 @@ CONFIG_DRM_ANALOGIX_ANX78XX=m CONFIG_DRM_AST=m CONFIG_DRM_BOCHS=m CONFIG_DRM_CIRRUS_QEMU=m +# CONFIG_DRM_DEBUG_MM_SELFTEST is not set CONFIG_DRM_DP_AUX_CHARDEV=y # CONFIG_DRM_DUMB_VGA_DAC is not set CONFIG_DRM_DW_HDMI_I2S_AUDIO=m @@ -1013,22 +1009,13 @@ CONFIG_DRM_FBDEV_EMULATION=y CONFIG_DRM_HISI_HIBMC=m CONFIG_DRM_I2C_ADV7511_AUDIO=y CONFIG_DRM_I2C_ADV7511=m -# CONFIG_DRM_I2C_ADV7533 is not set +CONFIG_DRM_I2C_ADV7533=y CONFIG_DRM_I2C_CH7006=m CONFIG_DRM_I2C_NXP_TDA998X=m CONFIG_DRM_I2C_SIL164=m -# CONFIG_DRM_I810 is not set -# CONFIG_DRM_I915_ALPHA_SUPPORT is not set -CONFIG_DRM_I915_CAPTURE_ERROR=y -CONFIG_DRM_I915_COMPRESS_ERROR=y -CONFIG_DRM_I915_GVT_KVMGT=m -CONFIG_DRM_I915_GVT=y -CONFIG_DRM_I915=m -CONFIG_DRM_I915_USERPTR=y # CONFIG_DRM_LEGACY is not set CONFIG_DRM_LOAD_EDID_FIRMWARE=y CONFIG_DRM=m -# CONFIG_DRM_MALI_DISPLAY is not set CONFIG_DRM_MGAG200=m # CONFIG_DRM_MGA is not set CONFIG_DRM_MXSFB=m @@ -1049,14 +1036,13 @@ CONFIG_DRM_RADEON_USERPTR=y CONFIG_DRM_SIL_SII8620=m # CONFIG_DRM_SIS is not set # CONFIG_DRM_TDFX is not set +# CONFIG_DRM_TINYDRM is not set CONFIG_DRM_TI_TFP410=m # CONFIG_DRM_TOSHIBA_TC358767 is not set CONFIG_DRM_UDL=m CONFIG_DRM_VGEM=m CONFIG_DRM_VIA=m CONFIG_DRM_VIRTIO_GPU=m -CONFIG_DRM_VMWGFX_FBCON=y -CONFIG_DRM_VMWGFX=m # CONFIG_DS1682 is not set # CONFIG_DS1803 is not set # CONFIG_DT3155 is not set @@ -1144,6 +1130,7 @@ CONFIG_DVB_USB_UMT_010=m CONFIG_DVB_USB_V2=m CONFIG_DVB_USB_VP702X=m CONFIG_DVB_USB_VP7045=m +CONFIG_DVB_USB_ZD1301=m # CONFIG_DW_DMAC_BIG_ENDIAN_IO is not set CONFIG_DW_DMAC_CORE=m CONFIG_DW_DMAC=m @@ -1169,6 +1156,7 @@ CONFIG_EEPROM_93CX6=m # CONFIG_EEPROM_93XX46 is not set CONFIG_EEPROM_AT24=m # CONFIG_EEPROM_AT25 is not set +CONFIG_EEPROM_IDT_89HPESX=m CONFIG_EEPROM_LEGACY=m CONFIG_EEPROM_MAX6875=m # CONFIG_EFI_ALLOW_SECURE_BOOT_EXIT is not set @@ -1179,7 +1167,6 @@ CONFIG_EFI_PARTITION=y # CONFIG_EFI_TEST is not set # CONFIG_EFS_FS is not set CONFIG_EHEA=m -# CONFIG_EMAC_ROCKCHIP is not set # CONFIG_EMBEDDED is not set CONFIG_ENABLE_MUST_CHECK=y # CONFIG_ENABLE_WARN_DEPRECATED is not set @@ -1211,6 +1198,7 @@ CONFIG_EXT4_FS_SECURITY=y CONFIG_EXT4_FS=y CONFIG_EXT4_USE_FOR_EXT2=y # CONFIG_EXTCON_ADC_JACK is not set +CONFIG_EXTCON_INTEL_INT3496=m # CONFIG_EXTCON is not set # CONFIG_EXTCON_QCOM_SPMI_MISC is not set CONFIG_EXTRA_FIRMWARE="" @@ -1238,7 +1226,6 @@ CONFIG_FAT_DEFAULT_IOCHARSET="ascii" CONFIG_FAT_FS=m # CONFIG_FAULT_INJECTION is not set # CONFIG_FB_3DFX is not set -# CONFIG_FB_ARC is not set # CONFIG_FB_ARK is not set # CONFIG_FB_ASILIANT is not set CONFIG_FB_ATY128_BACKLIGHT=y @@ -1256,18 +1243,11 @@ CONFIG_FB_ATY_BACKLIGHT=y # CONFIG_FB_CYBER2000 is not set CONFIG_FB_EFI=y # CONFIG_FB_FOREIGN_ENDIAN is not set -# CONFIG_FB_GEODE is not set -# CONFIG_FB_GOLDFISH is not set # CONFIG_FB_HECUBA is not set -# CONFIG_FB_HGA is not set # CONFIG_FB_I740 is not set -CONFIG_FB_I810_GTF=y -CONFIG_FB_I810_I2C=y -CONFIG_FB_I810=m CONFIG_FB_IBM_GXT4500=y # CONFIG_FB_IMSTT is not set # CONFIG_FB_KYRO is not set -# CONFIG_FB_LE80578 is not set CONFIG_FB_MATROX_G=y # CONFIG_FB_MATROX_I2C is not set # CONFIG_FB_MATROX_MILLENIUM is not set @@ -1318,8 +1298,6 @@ CONFIG_FB_TILEBLITTING=y # CONFIG_FB_VALKYRIE is not set CONFIG_FB_VESA=y # CONFIG_FB_VGA16 is not set -# CONFIG_FB_VIA_DIRECT_PROCFS is not set -# CONFIG_FB_VIA is not set CONFIG_FB_VIRTUAL=m # CONFIG_FB_VOODOO1 is not set # CONFIG_FB_VT8623 is not set @@ -1364,6 +1342,7 @@ CONFIG_FSCACHE_STATS=y CONFIG_FS_DAX=y CONFIG_FS_ENCRYPTION=y # CONFIG_FS_ENET is not set +CONFIG_FSI=m # CONFIG_FSL_DMA is not set # CONFIG_FSL_EDMA is not set # CONFIG_FSL_LBC is not set @@ -1411,7 +1390,8 @@ CONFIG_GAMEPORT_NS558=m CONFIG_GENERIC_PHY=y CONFIG_GENEVE=m # CONFIG_GEN_RTC is not set -# CONFIG_GENWQE is not set +CONFIG_GENWQE=m +CONFIG_GENWQE_PLATFORM_ERROR_RECOVERY=1 CONFIG_GFS2_FS_LOCKING_DLM=y CONFIG_GFS2_FS=m CONFIG_GIGASET_BASE=m @@ -1431,11 +1411,10 @@ CONFIG_GIRBIL_DONGLE=m # CONFIG_GPIO_ADNP is not set # CONFIG_GPIO_ADP5588 is not set # CONFIG_GPIO_ALTERA is not set -# CONFIG_GPIO_AMD8111 is not set # CONFIG_GPIO_AMDPT is not set # CONFIG_GPIO_BT8XX is not set -# CONFIG_GPIO_CS5535 is not set # CONFIG_GPIO_DWAPB is not set +CONFIG_GPIO_EXAR=m # CONFIG_GPIO_GENERIC_PLATFORM is not set # CONFIG_GPIO_GRGPIO is not set # CONFIG_GPIO_IT87 is not set @@ -1445,30 +1424,27 @@ CONFIG_GPIOLIB=y # CONFIG_GPIO_MAX732X is not set # CONFIG_GPIO_MC33880 is not set # CONFIG_GPIO_MCP23S08 is not set -# CONFIG_GPIO_ML_IOH is not set # CONFIG_GPIO_MOCKUP is not set # CONFIG_GPIO_MPC8XXX is not set CONFIG_GPIO_PCA953X=m CONFIG_GPIO_PCF857X=m # CONFIG_GPIO_PCH is not set +CONFIG_GPIO_PCI_IDIO_16=m # CONFIG_GPIO_PISOSR is not set # CONFIG_GPIO_RDC321X is not set # CONFIG_GPIO_SCH311X is not set -# CONFIG_GPIO_SCH is not set # CONFIG_GPIO_SX150X is not set # CONFIG_GPIO_SYSCON is not set -CONFIG_GPIO_SYSFS=y +# CONFIG_GPIO_SYSFS is not set # CONFIG_GPIO_TPIC2810 is not set # CONFIG_GPIO_TS4900 is not set # CONFIG_GPIO_TS5500 is not set # CONFIG_GPIO_UCB1400 is not set CONFIG_GPIO_VIPERBOARD=m -# CONFIG_GPIO_VX855 is not set # CONFIG_GPIO_WATCHDOG is not set CONFIG_GPIO_WM831X=m # CONFIG_GPIO_WS16C48 is not set # CONFIG_GPIO_XILINX is not set -# CONFIG_GPIO_ZX is not set CONFIG_GREENASIA_FF=y # CONFIG_GREYBUS is not set # CONFIG_GS_FPGABOOT is not set @@ -1669,6 +1645,7 @@ CONFIG_HW_RANDOM_TPM=m CONFIG_HW_RANDOM_VIRTIO=m CONFIG_HW_RANDOM=y CONFIG_HWSPINLOCK=m +# CONFIG_HX711 is not set CONFIG_HYSDN_CAPI=y CONFIG_HYSDN=m CONFIG_HZ=100 @@ -1704,7 +1681,6 @@ CONFIG_I2C_DIOLAN_U2C=m CONFIG_I2C_HELPER_AUTO=y CONFIG_I2C_HID=m # CONFIG_I2C_I801 is not set -CONFIG_I2C_IMX_LPI2C=m # CONFIG_I2C_ISCH is not set CONFIG_I2C=m CONFIG_I2C_MLXCPLD=m @@ -1724,8 +1700,6 @@ CONFIG_I2C_PARPORT_LIGHT=m CONFIG_I2C_PARPORT=m CONFIG_I2C_PCA_PLATFORM=m # CONFIG_I2C_PIIX4 is not set -CONFIG_I2C_PXA=m -# CONFIG_I2C_PXA_SLAVE is not set # CONFIG_I2C_RK3X is not set # CONFIG_I2C_ROBOTFUZZ_OSIF is not set CONFIG_I2C_SI470X=m @@ -1751,8 +1725,6 @@ CONFIG_I40EVF=m CONFIG_I6300ESB_WDT=m CONFIG_I82092=m # CONFIG_IAQCORE is not set -CONFIG_IB700_WDT=m -CONFIG_IBMASR=m CONFIG_IBM_BSR=m CONFIG_IBMEBUS=y # CONFIG_IBM_EMAC is not set @@ -1800,6 +1772,7 @@ CONFIG_IIO_ST_ACCEL_SPI_3AXIS=m CONFIG_IIO_ST_GYRO_3AXIS=m CONFIG_IIO_ST_GYRO_I2C_3AXIS=m CONFIG_IIO_ST_GYRO_SPI_3AXIS=m +# CONFIG_IIO_ST_LSM6DSX is not set CONFIG_IIO_ST_MAGN_3AXIS=m # CONFIG_IIO_ST_PRESS is not set CONFIG_IIO_SW_DEVICE=m @@ -1816,6 +1789,7 @@ CONFIG_IMA_MEASURE_PCR_IDX=10 # CONFIG_INA2XX_ADC is not set CONFIG_INET6_AH=m CONFIG_INET6_ESP=m +CONFIG_INET6_ESP_OFFLOAD=m CONFIG_INET6_IPCOMP=m CONFIG_INET6_XFRM_MODE_BEET=m CONFIG_INET6_XFRM_MODE_ROUTEOPTIMIZATION=m @@ -1825,6 +1799,7 @@ CONFIG_INET_AH=m CONFIG_INET_DIAG_DESTROY=y CONFIG_INET_DIAG=m CONFIG_INET_ESP=m +CONFIG_INET_ESP_OFFLOAD=m CONFIG_INET_IPCOMP=m CONFIG_INET_RAW_DIAG=m CONFIG_INET_TUNNEL=m @@ -1833,6 +1808,7 @@ CONFIG_INET_XFRM_MODE_BEET=m CONFIG_INET_XFRM_MODE_TRANSPORT=m CONFIG_INET_XFRM_MODE_TUNNEL=m CONFIG_INET=y +# CONFIG_INFINIBAND_BNXT_RE is not set # CONFIG_INFINIBAND_CXGB3_DEBUG is not set CONFIG_INFINIBAND_CXGB3=m CONFIG_INFINIBAND_CXGB4=m @@ -1923,8 +1899,6 @@ CONFIG_INPUT=y CONFIG_INPUT_YEALINK=m # CONFIG_INTEGRITY is not set # CONFIG_INTEL_IDMA64 is not set -# CONFIG_INTEL_MENLOW is not set -CONFIG_INTEL_RDT_A=y # CONFIG_INTEL_SOC_PMIC is not set # CONFIG_INTEL_TH is not set CONFIG_INTEL_XWAY_PHY=m @@ -2072,6 +2046,7 @@ CONFIG_IP_VS_SH_TAB_BITS=8 CONFIG_IP_VS_TAB_BITS=12 CONFIG_IP_VS_WLC=m CONFIG_IP_VS_WRR=m +CONFIG_IPVTAP=m # CONFIG_IPW2100_DEBUG is not set # CONFIG_IPW2100 is not set # CONFIG_IPW2200_DEBUG is not set @@ -2115,6 +2090,7 @@ CONFIG_IR_SERIAL=m CONFIG_IR_SERIAL_TRANSMITTER=y CONFIG_IR_SHARP_DECODER=m CONFIG_IR_SONY_DECODER=m +CONFIG_IR_SPI=m CONFIG_IR_STREAMZAP=m CONFIG_IR_TTUSBIR=m CONFIG_IRTTY_SIR=m @@ -2266,6 +2242,7 @@ CONFIG_KEYBOARD_PMIC8XXX=m # CONFIG_KEYBOARD_SUNKBD is not set # CONFIG_KEYBOARD_TCA6416 is not set # CONFIG_KEYBOARD_TCA8418 is not set +CONFIG_KEYBOARD_TM2_TOUCHKEY=m # CONFIG_KEYBOARD_XTKBD is not set CONFIG_KEY_DH_OPERATIONS=y CONFIG_KEYS=y @@ -2277,7 +2254,7 @@ CONFIG_KGDB_TESTS=y CONFIG_KGDB=y CONFIG_KINGSUN_DONGLE=m # CONFIG_KMX61 is not set -CONFIG_KPROBE_EVENT=y +CONFIG_KPROBE_EVENTS=y # CONFIG_KPROBES_SANITY_TEST is not set CONFIG_KPROBES=y CONFIG_KS0108_DELAY=2 @@ -2330,13 +2307,13 @@ CONFIG_LDM_PARTITION=y # CONFIG_LEDS_BCM6358 is not set # CONFIG_LEDS_BD2802 is not set CONFIG_LEDS_BLINKM=m +CONFIG_LEDS_BRIGHTNESS_HW_CHANGED=y CONFIG_LEDS_CLASS_FLASH=m CONFIG_LEDS_CLASS=y CONFIG_LEDS_CLEVO_MAIL=m # CONFIG_LEDS_DAC124S085 is not set CONFIG_LEDS_DELL_NETBOOKS=m # CONFIG_LEDS_GPIO is not set -CONFIG_LEDS_INTEL_SS4200=m # CONFIG_LEDS_IS31FL319X is not set # CONFIG_LEDS_IS31FL32XX is not set # CONFIG_LEDS_KTD2692 is not set @@ -2446,6 +2423,8 @@ CONFIG_LPARCFG=y # CONFIG_LPC_ICH is not set CONFIG_LP_CONSOLE=y # CONFIG_LPC_SCH is not set +CONFIG_LPFC_NVME_INITIATOR=y +CONFIG_LPFC_NVME_TARGET=y CONFIG_LSI_ET1011C_PHY=m CONFIG_LSM_MMAP_MIN_ADDR=65536 # CONFIG_LTC2485 is not set @@ -2479,6 +2458,7 @@ CONFIG_MACVLAN=m CONFIG_MACVTAP=m # CONFIG_MAG3110 is not set CONFIG_MAGIC_SYSRQ_DEFAULT_ENABLE=0x0 +CONFIG_MAGIC_SYSRQ_SERIAL=y CONFIG_MAGIC_SYSRQ=y # CONFIG_MAILBOX is not set # CONFIG_MAILBOX_TEST is not set @@ -2487,10 +2467,12 @@ CONFIG_MANTIS_CORE=m CONFIG_MARVELL_PHY=m # CONFIG_MATH_EMULATION is not set # CONFIG_MAX1027 is not set +# CONFIG_MAX11100 is not set # CONFIG_MAX1363 is not set CONFIG_MAX30100=m # CONFIG_MAX44000 is not set # CONFIG_MAX517 is not set +# CONFIG_MAX5481 is not set # CONFIG_MAX5487 is not set # CONFIG_MAX5821 is not set # CONFIG_MAX63XX_WATCHDOG is not set @@ -2568,7 +2550,6 @@ CONFIG_MEMSTICK_TIFM_MS=m # CONFIG_MEMSTICK_UNSAFE_RESUME is not set # CONFIG_MEMTEST is not set # CONFIG_MEN_A21_WDT is not set -CONFIG_MESON_GXL_PHY=m CONFIG_MESSAGE_LOGLEVEL_DEFAULT=4 # CONFIG_MFD_88PM800 is not set # CONFIG_MFD_88PM805 is not set @@ -2587,6 +2568,7 @@ CONFIG_MESSAGE_LOGLEVEL_DEFAULT=4 # CONFIG_MFD_AXP20X is not set # CONFIG_MFD_BCM590XX is not set CONFIG_MFD_CORE=m +CONFIG_MFD_CPCAP=m # CONFIG_MFD_CROS_EC is not set # CONFIG_MFD_CS5535 is not set # CONFIG_MFD_DA9052_I2C is not set @@ -2633,7 +2615,6 @@ CONFIG_MFD_SM501_GPIO=y CONFIG_MFD_SM501=m # CONFIG_MFD_SMSC is not set # CONFIG_MFD_STMPE is not set -CONFIG_MFD_SUN4I_GPADC=m # CONFIG_MFD_SYSCON is not set # CONFIG_MFD_TC3589X is not set # CONFIG_MFD_TC6393XB is not set @@ -2767,7 +2748,6 @@ CONFIG_MOUSE_ELAN_I2C_SMBUS=y CONFIG_MOUSE_PS2_ELANTECH=y CONFIG_MOUSE_PS2_SENTELIC=y # CONFIG_MOUSE_PS2_TOUCHKIT is not set -# CONFIG_MOUSE_PS2_VMMOUSE is not set CONFIG_MOUSE_PS2=y CONFIG_MOUSE_SERIAL=m CONFIG_MOUSE_SYNAPTICS_I2C=m @@ -2785,6 +2765,7 @@ CONFIG_MOVABLE_NODE=y CONFIG_MPLS_IPTUNNEL=m CONFIG_MPLS_ROUTING=m # CONFIG_MPU3050_I2C is not set +CONFIG_MQ_IOSCHED_DEADLINE=y # CONFIG_MS5611 is not set # CONFIG_MS5637 is not set # CONFIG_MS_BLOCK is not set @@ -2893,6 +2874,7 @@ CONFIG_NET_ACT_MIRRED=m CONFIG_NET_ACT_NAT=m CONFIG_NET_ACT_PEDIT=m CONFIG_NET_ACT_POLICE=m +CONFIG_NET_ACT_SAMPLE=m CONFIG_NET_ACT_SIMP=m CONFIG_NET_ACT_SKBEDIT=m CONFIG_NET_ACT_SKBMOD=m @@ -3026,6 +3008,7 @@ CONFIG_NETFILTER_XT_TARGET_TRACE=m CONFIG_NETFILTER=y CONFIG_NET_FOU_IP_TUNNELS=y CONFIG_NET_FOU=m +CONFIG_NET_IFE=m CONFIG_NET_IFE_SKBMARK=m CONFIG_NET_IFE_SKBPRIO=m CONFIG_NET_IFE_SKBTCINDEX=m @@ -3036,7 +3019,7 @@ CONFIG_NET_IPIP=m CONFIG_NET_IPVTI=m CONFIG_NET_KEY=m CONFIG_NET_KEY_MIGRATE=y -# CONFIG_NET_L3_MASTER_DEV is not set +CONFIG_NET_L3_MASTER_DEV=y CONFIG_NETLABEL=y CONFIG_NETLINK_DIAG=m CONFIG_NET_MPLS_GSO=m @@ -3088,8 +3071,9 @@ CONFIG_NET_VENDOR_ADAPTEC=y CONFIG_NET_VENDOR_AGERE=y # CONFIG_NET_VENDOR_ALACRITECH is not set CONFIG_NET_VENDOR_ALTEON=y -# CONFIG_NET_VENDOR_AMAZON is not set +CONFIG_NET_VENDOR_AMAZON=y CONFIG_NET_VENDOR_AMD=y +# CONFIG_NET_VENDOR_AQUANTIA is not set CONFIG_NET_VENDOR_ARC=y CONFIG_NET_VENDOR_ATHEROS=y # CONFIG_NET_VENDOR_AURORA is not set @@ -3215,6 +3199,8 @@ CONFIG_NF_LOG_IPV6=m CONFIG_NF_LOG_NETDEV=m CONFIG_NF_NAT=m CONFIG_NF_NAT_SNMP_BASIC=m +# CONFIG_NFP_DEBUG is not set +CONFIG_NFP=m # CONFIG_NFP_NET_DEBUG is not set CONFIG_NFP_NETVF=m CONFIG_NF_REJECT_IPV6=m @@ -3286,6 +3272,7 @@ CONFIG_NFT_REDIR=m CONFIG_NFT_REJECT_IPV4=m CONFIG_NFT_REJECT=m CONFIG_NFT_RT=m +CONFIG_NFT_SET_BITMAP=m CONFIG_NFT_SET_HASH=m CONFIG_NFT_SET_RBTREE=m CONFIG_N_GSM=m @@ -3357,6 +3344,7 @@ CONFIG_NOUVEAU_DEBUG=5 CONFIG_NOUVEAU_DEBUG_DEFAULT=3 CONFIG_NOZOMI=m CONFIG_NR_CPUS=1024 +CONFIG_NR_DEV_DAX=32768 CONFIG_NR_IRQS=512 CONFIG_NS83820=m CONFIG_NSC_FIR=m @@ -3415,6 +3403,7 @@ CONFIG_PACKET=y CONFIG_PANIC_TIMEOUT=0 CONFIG_PANTHERLORD_FF=y # CONFIG_PARIDE is not set +CONFIG_PARMAN=m CONFIG_PARPORT_1284=y # CONFIG_PARPORT_AX88796 is not set CONFIG_PARPORT=m @@ -3473,6 +3462,7 @@ CONFIG_PATA_TOSHIBA=m CONFIG_PATA_TRIFLEX=m CONFIG_PATA_VIA=m CONFIG_PATA_WINBOND=m +# CONFIG_PC104 is not set # CONFIG_PC87413_WDT is not set CONFIG_PCCARD=y CONFIG_PCF50633_ADC=m @@ -3527,6 +3517,8 @@ CONFIG_PERSISTENT_KEYRINGS=y CONFIG_PHYLIB=y # CONFIG_PHY_PXA_28NM_HSIC is not set # CONFIG_PHY_PXA_28NM_USB2 is not set +# CONFIG_PHY_QCOM_USB_HSIC is not set +# CONFIG_PHY_QCOM_USB_HS is not set # CONFIG_PHY_ST_SPEAR1310_MIPHY is not set # CONFIG_PHY_ST_SPEAR1340_MIPHY is not set # CONFIG_PHY_TUSB1210 is not set @@ -3535,6 +3527,7 @@ CONFIG_PID_NS=y # CONFIG_PINCTRL is not set CONFIG_PINCTRL_MSM8994=m # CONFIG_PINCTRL_SX150X is not set +# CONFIG_PINCTRL_TI_IODELAY is not set # CONFIG_PINMUX is not set CONFIG_PKCS7_MESSAGE_PARSER=y # CONFIG_PKCS7_TEST_KEY is not set @@ -3632,6 +3625,7 @@ CONFIG_PPTP=m CONFIG_PREEMPT_VOLUNTARY=y CONFIG_PREVENT_FIRMWARE_BUILD=y CONFIG_PRINTER=m +CONFIG_PRINTK_SAFE_LOG_BUF_SHIFT=12 CONFIG_PRINTK_TIME=y # CONFIG_PRINT_QUOTA_WARNING is not set CONFIG_PRINT_STACK_DEPTH=64 @@ -3647,6 +3641,7 @@ CONFIG_PROFILING=y # CONFIG_PROVE_LOCKING is not set # CONFIG_PROVE_RCU_REPEATEDLY is not set # CONFIG_PS3_VRAM is not set +CONFIG_PSAMPLE=m CONFIG_PSERIES_CPUIDLE=y CONFIG_PSERIES_ENERGY=m # CONFIG_PSTORE_CONSOLE is not set @@ -3661,14 +3656,15 @@ CONFIG_PWM_HIBVT=m # CONFIG_PWM_PCA9685 is not set CONFIG_PWM=y CONFIG_PWRSEQ_EMMC=m +# CONFIG_PWRSEQ_SD8787 is not set CONFIG_PWRSEQ_SIMPLE=m # CONFIG_QCA7000 is not set CONFIG_QCOM_ADSP_PIL=m -# CONFIG_QCOM_EBI2 is not set # CONFIG_QCOM_EMAC is not set # CONFIG_QCOM_HIDMA is not set # CONFIG_QCOM_HIDMA_MGMT is not set CONFIG_QEDE=m +CONFIG_QEDF=m CONFIG_QEDI=m CONFIG_QED=m CONFIG_QED_SRIOV=y @@ -3714,7 +3710,6 @@ CONFIG_RADIO_TERRATEC=m CONFIG_RADIO_TRUST=m CONFIG_RADIO_TYPHOON=m CONFIG_RADIO_WL1273=m -# CONFIG_RADIO_WL128X is not set # depends on TI_ST which we don't enable CONFIG_RADIO_ZOLTRIX=m CONFIG_RAID_ATTRS=m # CONFIG_RANDOM32_SELFTEST is not set @@ -3759,6 +3754,7 @@ CONFIG_REALTEK_AUTOPM=y CONFIG_REALTEK_PHY=m CONFIG_REGMAP_I2C=m CONFIG_REGMAP=y +CONFIG_REGULATOR_CPCAP=m # CONFIG_REGULATOR_DEBUG is not set # CONFIG_REGULATOR is not set # CONFIG_REISERFS_CHECK is not set @@ -4239,6 +4235,7 @@ CONFIG_SENSORS_SIS5595=m CONFIG_SENSORS_SMSC47B397=m CONFIG_SENSORS_SMSC47M192=m CONFIG_SENSORS_SMSC47M1=m +# CONFIG_SENSORS_STTS751 is not set CONFIG_SENSORS_TC654=m CONFIG_SENSORS_TC74=m CONFIG_SENSORS_THMC50=m @@ -4274,6 +4271,7 @@ CONFIG_SERIAL_8250_CS=m # CONFIG_SERIAL_8250_DEPRECATED_OPTIONS is not set # CONFIG_SERIAL_8250_DETECT_IRQ is not set CONFIG_SERIAL_8250_DW=y +CONFIG_SERIAL_8250_EXAR=m CONFIG_SERIAL_8250_EXTENDED=y # CONFIG_SERIAL_8250_FINTEK is not set # CONFIG_SERIAL_8250_INGENIC is not set @@ -4282,6 +4280,7 @@ CONFIG_SERIAL_8250_MANY_PORTS=y # CONFIG_SERIAL_8250_MID is not set CONFIG_SERIAL_8250_MOXA=m CONFIG_SERIAL_8250_NR_UARTS=32 +CONFIG_SERIAL_8250_PCI=m CONFIG_SERIAL_8250_RSA=y CONFIG_SERIAL_8250_RT288X=y CONFIG_SERIAL_8250_RUNTIME_UARTS=32 @@ -4294,6 +4293,8 @@ CONFIG_SERIAL_ARC_NR_PORTS=1 CONFIG_SERIAL_CORE_CONSOLE=y CONFIG_SERIAL_CORE=m # CONFIG_SERIAL_CPM is not set +CONFIG_SERIAL_DEV_BUS=y +CONFIG_SERIAL_DEV_CTRL_TTYPORT=y # CONFIG_SERIAL_FSL_LPUART is not set CONFIG_SERIAL_ICOM=m # CONFIG_SERIAL_IFX6X60 is not set @@ -4359,6 +4360,7 @@ CONFIG_SLUB_CPU_PARTIAL=y CONFIG_SLUB=y CONFIG_SMARTJOYPLUS_FF=y CONFIG_SMC_IRCC_FIR=m +# CONFIG_SMC is not set # CONFIG_SM_FTL is not set CONFIG_SMP=y CONFIG_SMSC911X=m @@ -4503,7 +4505,7 @@ CONFIG_SND_SEQUENCER=m CONFIG_SND_SEQUENCER_OSS=y CONFIG_SND_SERIAL_U16550=m CONFIG_SND_SIMPLE_CARD=m -# CONFIG_SND_SIMPLE_SCU_CARD is not set +CONFIG_SND_SIMPLE_SCU_CARD=m CONFIG_SND_SIS7019=m # CONFIG_SND_SOC_ADAU1701 is not set # CONFIG_SND_SOC_ADAU7002 is not set @@ -4554,6 +4556,7 @@ CONFIG_SND_SOC_HDMI_CODEC=m # CONFIG_SND_SOC_MAX9860 is not set # CONFIG_SND_SOC_MSM8916_WCD_ANALOG is not set # CONFIG_SND_SOC_MSM8916_WCD_DIGITAL is not set +# CONFIG_SND_SOC_NAU8540 is not set # CONFIG_SND_SOC_NAU8810 is not set # CONFIG_SND_SOC_PCM1681 is not set # CONFIG_SND_SOC_PCM179X_I2C is not set @@ -4576,6 +4579,7 @@ CONFIG_SND_SOC_SPDIF=m # CONFIG_SND_SOC_STI_SAS is not set # CONFIG_SND_SOC_TAS2552 is not set # CONFIG_SND_SOC_TAS5086 is not set +# CONFIG_SND_SOC_TAS571X is not set # CONFIG_SND_SOC_TAS5720 is not set # CONFIG_SND_SOC_TFA9879 is not set # CONFIG_SND_SOC_TLV320AIC23_I2C is not set @@ -4608,7 +4612,6 @@ CONFIG_SND_SOC_SPDIF=m # CONFIG_SND_SOC_XTFPGA_I2S is not set CONFIG_SND_SONICVIBES=m # CONFIG_SND_SPI is not set -CONFIG_SND_SUN8I_CODEC_ANALOG=m # CONFIG_SND_SUPPORT_OLD_API is not set CONFIG_SND_TRIDENT=m CONFIG_SND_USB_6FIRE=m @@ -4634,6 +4637,7 @@ CONFIG_SND_VX222=m CONFIG_SND_YMFPCI=m # CONFIG_SOC_CAMERA is not set # CONFIG_SOC_TI is not set +# CONFIG_SOC_ZTE is not set CONFIG_SOFT_WATCHDOG=m CONFIG_SOLARIS_X86_PARTITION=y # CONFIG_SOLO6X10 is not set @@ -4677,6 +4681,7 @@ CONFIG_SQUASHFS_XATTR=y CONFIG_SQUASHFS_XZ=y CONFIG_SQUASHFS_ZLIB=y # CONFIG_SRAM is not set +# CONFIG_SRF08 is not set # CONFIG_SSB_DEBUG is not set CONFIG_SSB_DRIVER_GPIO=y CONFIG_SSB_DRIVER_PCICORE=y @@ -4694,6 +4699,7 @@ CONFIG_STAGING_MEDIA=y CONFIG_STAGING=y CONFIG_STANDALONE=y # CONFIG_STATIC_KEYS_SELFTEST is not set +# CONFIG_STATIC_USERMODEHELPER is not set CONFIG_STE10XP=m # CONFIG_STE_MODEM_RPROC is not set CONFIG_STK3310=m @@ -4708,10 +4714,6 @@ CONFIG_STMMAC_ETH=m CONFIG_STRICT_DEVMEM=y CONFIG_STRIP_ASM_SYMS=y # CONFIG_STRIP is not set -# CONFIG_SUN50I_A64_CCU is not set -# CONFIG_SUN6I_A31_CCU is not set -# CONFIG_SUN8I_A23_CCU is not set -# CONFIG_SUN8I_A33_CCU is not set CONFIG_SUNDANCE=m # CONFIG_SUNDANCE_MMIO is not set CONFIG_SUNGEM=m @@ -4720,7 +4722,6 @@ CONFIG_SUNRPC_DEBUG=y CONFIG_SUNRPC_GSS=m CONFIG_SUNRPC=m CONFIG_SUNRPC_XPRT_RDMA=m -# CONFIG_SUNXI_CCU is not set CONFIG_SURFACE_3_BUTTON=m CONFIG_SURFACE3_WMI=m CONFIG_SUSPEND_FREEZER=y @@ -4803,8 +4804,6 @@ CONFIG_TCP_CONG_YEAH=m CONFIG_TCP_MD5SIG=y # CONFIG_TCS3414 is not set # CONFIG_TCS3472 is not set -CONFIG_TEGRA_GMI=m -CONFIG_TEGRA_IVC=y CONFIG_TEHUTI=m CONFIG_TEKRAM_DONGLE=m CONFIG_TELCLOCK=m @@ -4818,9 +4817,11 @@ CONFIG_TEST_ASYNC_DRIVER_PROBE=m CONFIG_TEST_KSTRTOX=y # CONFIG_TEST_LIST_SORT is not set # CONFIG_TEST_LKM is not set +# CONFIG_TEST_PARMAN is not set # CONFIG_TEST_POWER is not set # CONFIG_TEST_PRINTF is not set # CONFIG_TEST_RHASHTABLE is not set +# CONFIG_TEST_SORT is not set # CONFIG_TEST_STATIC_KEYS is not set # CONFIG_TEST_STRING_HELPERS is not set # CONFIG_TEST_UDELAY is not set @@ -4846,6 +4847,7 @@ CONFIG_THRUSTMASTER_FF=y # CONFIG_TI_ADC128S052 is not set # CONFIG_TI_ADC161S626 is not set # CONFIG_TI_ADS1015 is not set +# CONFIG_TI_ADS7950 is not set # CONFIG_TI_ADS8688 is not set # CONFIG_TI_CPSW_ALE is not set # CONFIG_TI_DAC7512 is not set @@ -4860,9 +4862,11 @@ CONFIG_TIPC_MEDIA_UDP=y CONFIG_TI_SCI_PROTOCOL=m # CONFIG_TI_ST is not set # CONFIG_TI_SYSCON_RESET is not set +# CONFIG_TI_TLC4541 is not set CONFIG_TLAN=m # CONFIG_TMD_HERMES is not set # CONFIG_TMP006 is not set +# CONFIG_TMP007 is not set CONFIG_TMPFS_POSIX_ACL=y CONFIG_TMPFS_XATTR=y CONFIG_TMPFS=y @@ -4931,6 +4935,7 @@ CONFIG_TOUCHSCREEN_WACOM_I2C=m CONFIG_TOUCHSCREEN_WACOM_W8001=m # CONFIG_TOUCHSCREEN_WDT87XX_I2C is not set # CONFIG_TOUCHSCREEN_WM97XX is not set +CONFIG_TOUCHSCREEN_ZET6223=m CONFIG_TOUCHSCREEN_ZFORCE=m # CONFIG_TPL0102 is not set # CONFIG_TPS6105X is not set @@ -4943,7 +4948,8 @@ CONFIG_TOUCHSCREEN_ZFORCE=m CONFIG_TRACER_SNAPSHOT=y # CONFIG_TRACE_SINK is not set # CONFIG_TRACING_EVENTS_GPIO is not set -# CONFIG_TRANSPARENT_HUGEPAGE is not set +CONFIG_TRANSPARENT_HUGEPAGE_MADVISE=y +CONFIG_TRANSPARENT_HUGEPAGE=y # CONFIG_TR is not set CONFIG_TRUSTED_KEYS=m # CONFIG_TS4800_IRQ is not set @@ -4999,7 +5005,7 @@ CONFIG_UNIX_DIAG=m CONFIG_UNIXWARE_DISKLABEL=y CONFIG_UNIX=y CONFIG_UNUSED_SYMBOLS=y -CONFIG_UPROBE_EVENT=y +CONFIG_UPROBE_EVENTS=y # CONFIG_US5182D is not set CONFIG_USB_ACM=m CONFIG_USB_ADUTUX=m @@ -5016,6 +5022,7 @@ CONFIG_USB_CATC=m CONFIG_USB_CDC_PHONET=m CONFIG_USB_CHAOSKEY=m # CONFIG_USB_CHIPIDEA is not set +# CONFIG_USB_CHIPIDEA_ULPI is not set CONFIG_USB_CXACRU=m # CONFIG_USB_CYPRESS_CY7C63 is not set # CONFIG_USB_CYTHERM is not set @@ -5102,6 +5109,7 @@ CONFIG_USB_HID=y CONFIG_USB_HSIC_USB3503=m CONFIG_USB_HSIC_USB4604=m CONFIG_USB_HSO=m +CONFIG_USB_HUB_USB251XB=m CONFIG_USB_HWA_HCD=m CONFIG_USB_IDMOUSE=m CONFIG_USB_IOWARRIOR=m @@ -5249,6 +5257,7 @@ CONFIG_USB_SERIAL_SPCP8X5=m CONFIG_USB_SERIAL_SSU100=m CONFIG_USB_SERIAL_SYMBOL=m CONFIG_USB_SERIAL_TI=m +CONFIG_USB_SERIAL_UPD78F0730=m CONFIG_USB_SERIAL_VISOR=m CONFIG_USB_SERIAL_WHITEHEAT=m # CONFIG_USB_SERIAL_WISHBONE is not set @@ -5337,6 +5346,7 @@ CONFIG_VFIO_MDEV=m CONFIG_VFIO_PCI=m CONFIG_VGA_ARB_MAX_GPUS=16 CONFIG_VGA_ARB=y +# CONFIG_VGACON_SOFT_SCROLLBACK_PERSISTENT_ENABLE_BY_DEFAULT is not set CONFIG_VGACON_SOFT_SCROLLBACK_SIZE=64 CONFIG_VGACON_SOFT_SCROLLBACK=y CONFIG_VGA_CONSOLE=y @@ -5387,6 +5397,7 @@ CONFIG_VIDEO_HDPVR=m CONFIG_VIDEO_HEXIUM_GEMINI=m CONFIG_VIDEO_HEXIUM_ORION=m # CONFIG_VIDEO_IVTV_ALSA is not set +# CONFIG_VIDEO_IVTV_DEPRECATED_IOCTLS is not set CONFIG_VIDEO_IVTV=m # CONFIG_VIDEO_M5MOLS is not set # CONFIG_VIDEO_MEM2MEM_DEINTERLACE is not set @@ -5408,7 +5419,6 @@ CONFIG_VIDEO_SAA7134_RC=y CONFIG_VIDEO_SAA7146=m CONFIG_VIDEO_SAA7146_VV=m CONFIG_VIDEO_SAA7164=m -CONFIG_VIDEO_SAMSUNG_S5P_CEC=m # CONFIG_VIDEO_SH_MOBILE_CEU is not set # CONFIG_VIDEO_SH_MOBILE_CSI2 is not set # CONFIG_VIDEO_SH_VEU is not set @@ -5444,6 +5454,7 @@ CONFIG_VIDEO_ZORAN_ZR36060=m # CONFIG_VIRT_DRIVERS is not set CONFIG_VIRTIO_BALLOON=m CONFIG_VIRTIO_BLK=m +CONFIG_VIRTIO_BLK_SCSI=y CONFIG_VIRTIO_CONSOLE=m CONFIG_VIRTIO_INPUT=m # CONFIG_VIRTIO_MMIO_CMDLINE_DEVICES is not set @@ -5459,8 +5470,6 @@ CONFIG_VLAN_8021Q=m CONFIG_VLAN_8021Q_MVRP=y CONFIG_VLSI_FIR=m # CONFIG_VME_BUS is not set -CONFIG_VMWARE_BALLOON=m -CONFIG_VMWARE_PVSCSI=m # CONFIG_VMXNET3 is not set CONFIG_VORTEX=m CONFIG_VSOCKETS=m @@ -5483,6 +5492,7 @@ CONFIG_W1_MASTER_DS2490=m # CONFIG_W1_MASTER_GPIO is not set # CONFIG_W1_MASTER_MATROX is not set CONFIG_W1_SLAVE_BQ27000=m +CONFIG_W1_SLAVE_DS2405=m CONFIG_W1_SLAVE_DS2406=m CONFIG_W1_SLAVE_DS2408=m # CONFIG_W1_SLAVE_DS2408_READBACK is not set @@ -5557,6 +5567,7 @@ CONFIG_WM8350_POWER=m CONFIG_WM8350_WATCHDOG=m # CONFIG_WQ_POWER_EFFICIENT_DEFAULT is not set # CONFIG_WQ_WATCHDOG is not set +# CONFIG_WW_MUTEX_SELFTEST is not set # CONFIG_X25 is not set # CONFIG_X86_BOOTPARAM_MEMORY_CORRUPTION_CHECK is not set # CONFIG_X86_PTDUMP is not set diff --git a/kernel-s390x-debug.config b/kernel-s390x-debug.config index 773f0b4ef..49c17079c 100644 --- a/kernel-s390x-debug.config +++ b/kernel-s390x-debug.config @@ -145,10 +145,10 @@ CONFIG_AIX_PARTITION=y # CONFIG_AL3320A is not set CONFIG_ALI_FIR=m CONFIG_ALIM1535_WDT=m -CONFIG_ALIM7101_WDT=m +# CONFIG_ALIM7101_WDT is not set # CONFIG_ALTERA_MBOX is not set -CONFIG_ALTERA_STAPL=m -CONFIG_ALTERA_TSE=m +# CONFIG_ALTERA_STAPL is not set +# CONFIG_ALTERA_TSE is not set CONFIG_ALX=m # CONFIG_AM2315 is not set CONFIG_AMD8111_ETH=m @@ -158,7 +158,7 @@ CONFIG_AMD_PHY=m CONFIG_AMIGA_PARTITION=y # CONFIG_ANDROID is not set # CONFIG_APDS9300 is not set -CONFIG_APDS9802ALS=m +# CONFIG_APDS9802ALS is not set # CONFIG_APDS9960 is not set CONFIG_APM_POWER=m CONFIG_APPLDATA_BASE=y @@ -169,10 +169,8 @@ CONFIG_APPLDATA_OS=m # CONFIG_APPLICOM is not set CONFIG_AQUANTIA_PHY=m CONFIG_AR5523=m -# CONFIG_ARCH_TEGRA_186_SOC is not set # CONFIG_ARCNET is not set CONFIG_ARM64_PTDUMP=y -# CONFIG_ARM_SCPI_PROTOCOL is not set # CONFIG_AS3935 is not set CONFIG_ASYMMETRIC_KEY_TYPE=y CONFIG_ASYNC_RAID6_TEST=m @@ -325,7 +323,6 @@ CONFIG_BATMAN_ADV_NC=y # CONFIG_BATTERY_DS2781 is not set # CONFIG_BATTERY_DS2782 is not set # CONFIG_BATTERY_GAUGE_LTC2941 is not set -# CONFIG_BATTERY_GOLDFISH is not set # CONFIG_BATTERY_MAX17040 is not set # CONFIG_BATTERY_MAX17042 is not set # CONFIG_BATTERY_SBS is not set @@ -351,7 +348,7 @@ CONFIG_BCMA_HOST_PCI=y # CONFIG_BCMA is not set CONFIG_BCMGENET=m # CONFIG_BCM_KONA_USB2_PHY is not set -CONFIG_BE2ISCSI=m +# CONFIG_BE2ISCSI is not set # CONFIG_BE2NET_HWMON is not set CONFIG_BE2NET=m # CONFIG_BEFS_DEBUG is not set @@ -367,12 +364,13 @@ CONFIG_BINFMT_MISC=m CONFIG_BINFMT_SCRIPT=y CONFIG_BLK_CGROUP=y # CONFIG_BLK_CMDLINE_PARSER is not set -CONFIG_BLK_CPQ_CISS_DA=m -CONFIG_BLK_DEV_3W_XXXX_RAID=m +# CONFIG_BLK_CPQ_CISS_DA is not set +CONFIG_BLK_DEBUG_FS=y +# CONFIG_BLK_DEV_3W_XXXX_RAID is not set CONFIG_BLK_DEV_BSGLIB=y CONFIG_BLK_DEV_BSG=y # CONFIG_BLK_DEV_CRYPTOLOOP is not set -CONFIG_BLK_DEV_DAC960=m +# CONFIG_BLK_DEV_DAC960 is not set CONFIG_BLK_DEV_DM=y CONFIG_BLK_DEV_DRBD=m CONFIG_BLK_DEV_FD=m @@ -397,16 +395,17 @@ CONFIG_BLK_DEV_RAM_SIZE=16384 CONFIG_BLK_DEV_RBD=m # CONFIG_BLK_DEV_RSXX is not set CONFIG_BLK_DEV_SD=y -CONFIG_BLK_DEV_SKD=m +# CONFIG_BLK_DEV_SKD is not set CONFIG_BLK_DEV_SR_VENDOR=y CONFIG_BLK_DEV_SR=y -CONFIG_BLK_DEV_SX8=m +# CONFIG_BLK_DEV_SX8 is not set CONFIG_BLK_DEV_THROTTLING=y # CONFIG_BLK_DEV_UB is not set -CONFIG_BLK_DEV_UMEM=m +# CONFIG_BLK_DEV_UMEM is not set CONFIG_BLK_DEV_XPRAM=m CONFIG_BLK_DEV=y CONFIG_BLK_DEV_ZONED=y +CONFIG_BLK_SED_OPAL=y CONFIG_BLK_WBT_MQ=y # CONFIG_BLK_WBT_SQ is not set CONFIG_BLK_WBT=y @@ -502,6 +501,7 @@ CONFIG_BT_HCIUART_INTEL=y CONFIG_BT_HCIUART_LL=y CONFIG_BT_HCIUART=m CONFIG_BT_HCIUART_MRVL=y +CONFIG_BT_HCIUART_NOKIA=m CONFIG_BT_HCIUART_QCA=y CONFIG_BT_HCIVHCI=m CONFIG_BT_HIDP=m @@ -552,10 +552,10 @@ CONFIG_CAN_ESD_USB2=m CONFIG_CAN_GS_USB=m CONFIG_CAN_GW=m CONFIG_CAN_IFI_CANFD=m +# CONFIG_CAN is not set CONFIG_CAN_KVASER_PCI=m CONFIG_CAN_KVASER_USB=m CONFIG_CAN_LEDS=y -CONFIG_CAN=m CONFIG_CAN_M_CAN=m # CONFIG_CAN_MCP251X is not set CONFIG_CAN_PEAK_PCIEC=y @@ -602,6 +602,7 @@ CONFIG_CEPH_LIB_PRETTYDEBUG=y # CONFIG_CEPH_LIB_USE_DNS_RESOLVER is not set CONFIG_CFAG12864B=m CONFIG_CFAG12864B_RATE=20 +CONFIG_CFG80211_CRDA_SUPPORT=y CONFIG_CFG80211_DEBUGFS=y CONFIG_CFG80211_DEFAULT_PS=y # CONFIG_CFG80211_DEVELOPER_WARNINGS is not set @@ -619,6 +620,7 @@ CONFIG_CGROUP_NET_CLASSID=y CONFIG_CGROUP_NET_PRIO=y CONFIG_CGROUP_PERF=y CONFIG_CGROUP_PIDS=y +# CONFIG_CGROUP_RDMA is not set CONFIG_CGROUP_SCHED=y CONFIG_CGROUPS=y # CONFIG_CHARGER_BQ2415X is not set @@ -626,6 +628,7 @@ CONFIG_CGROUPS=y # CONFIG_CHARGER_BQ24257 is not set # CONFIG_CHARGER_BQ24735 is not set # CONFIG_CHARGER_BQ25890 is not set +# CONFIG_CHARGER_DETECTOR_MAX14656 is not set # CONFIG_CHARGER_GPIO is not set # CONFIG_CHARGER_ISP1704 is not set # CONFIG_CHARGER_LP8727 is not set @@ -633,7 +636,8 @@ CONFIG_CGROUPS=y # CONFIG_CHARGER_PCF50633 is not set # CONFIG_CHARGER_QCOM_SMBB is not set # CONFIG_CHARGER_RT9455 is not set -CONFIG_CHARGER_SMB347=m +# CONFIG_CHARGER_SBS is not set +# CONFIG_CHARGER_SMB347 is not set # CONFIG_CHECKPOINT_RESTORE is not set CONFIG_CHECK_STACK=y CONFIG_CHELSIO_T1_1G=y @@ -673,6 +677,7 @@ CONFIG_CLS_U32_PERF=y CONFIG_CM32181=m # CONFIG_CM3232 is not set # CONFIG_CM3323 is not set +CONFIG_CM3605=m # CONFIG_CM36651 is not set # CONFIG_CMA is not set # CONFIG_CMDLINE_PARTITION is not set @@ -684,23 +689,12 @@ CONFIG_CODA_FS=m # CONFIG_COMMON_CLK_CDCE706 is not set # CONFIG_COMMON_CLK_CDCE925 is not set # CONFIG_COMMON_CLK_CS2000_CP is not set -# CONFIG_COMMON_CLK_HI3516CV300 is not set -# CONFIG_COMMON_CLK_HI3519 is not set -# CONFIG_COMMON_CLK_HI3798CV200 is not set -# CONFIG_COMMON_CLK_MT2701_BDPSYS is not set -# CONFIG_COMMON_CLK_MT2701_ETHSYS is not set -# CONFIG_COMMON_CLK_MT2701_HIFSYS is not set -# CONFIG_COMMON_CLK_MT2701_IMGSYS is not set -# CONFIG_COMMON_CLK_MT2701 is not set -# CONFIG_COMMON_CLK_MT2701_MMSYS is not set -# CONFIG_COMMON_CLK_MT2701_VDECSYS is not set -# CONFIG_COMMON_CLK_MT8135 is not set -# CONFIG_COMMON_CLK_MT8173 is not set -# CONFIG_COMMON_CLK_OXNAS is not set # CONFIG_COMMON_CLK_PWM is not set # CONFIG_COMMON_CLK_SI514 is not set # CONFIG_COMMON_CLK_SI5351 is not set +# CONFIG_COMMON_CLK_VC5 is not set # CONFIG_COMMON_CLK_XLNX_CLKWZRD is not set +# CONFIG_COMMON_RESET_HI3660 is not set CONFIG_COMPACTION=y # CONFIG_COMPAT_BRK is not set CONFIG_COMPAT=y @@ -746,6 +740,7 @@ CONFIG_CROSS_COMPILE="" CONFIG_CROSS_MEMORY_ATTACH=y CONFIG_CRYPTO_842=m CONFIG_CRYPTO_AES_S390=m +CONFIG_CRYPTO_AES_TI=m CONFIG_CRYPTO_AES=y CONFIG_CRYPTO_ANSI_CPRNG=m CONFIG_CRYPTO_ANUBIS=m @@ -761,13 +756,10 @@ CONFIG_CRYPTO_CCM=m CONFIG_CRYPTO_CHACHA20=m CONFIG_CRYPTO_CHACHA20POLY1305=m CONFIG_CRYPTO_CMAC=m -CONFIG_CRYPTO_CRC32_ARM_CE=m -CONFIG_CRYPTO_CRC32C_INTEL=m CONFIG_CRYPTO_CRC32C_VPMSUM=m CONFIG_CRYPTO_CRC32C=y CONFIG_CRYPTO_CRC32=m CONFIG_CRYPTO_CRC32_S390=m -CONFIG_CRYPTO_CRCT10DIF_ARM_CE=m # CONFIG_CRYPTO_CRYPTD is not set CONFIG_CRYPTO_CTR=y CONFIG_CRYPTO_CTS=y @@ -911,6 +903,7 @@ CONFIG_DEBUG_PER_CPU_MAPS=y CONFIG_DEBUG_PERF_USE_VMALLOC=y CONFIG_DEBUG_PI_LIST=y # CONFIG_DEBUG_PINCTRL is not set +CONFIG_DEBUG_REFCOUNT=y CONFIG_DEBUG_RODATA_TEST=y CONFIG_DEBUG_RT_MUTEXES=y # CONFIG_DEBUG_SECTION_MISMATCH is not set @@ -945,6 +938,7 @@ CONFIG_DEVFREQ_GOV_SIMPLE_ONDEMAND=m # CONFIG_DEVFREQ_GOV_USERSPACE is not set # CONFIG_DEVKMEM is not set CONFIG_DEVMEM=y +# CONFIG_DEVPORT is not set CONFIG_DEVTMPFS_MOUNT=y CONFIG_DEVTMPFS=y # CONFIG_DGAP is not set @@ -958,8 +952,8 @@ CONFIG_DM9102=m CONFIG_DMA_API_DEBUG=y # CONFIG_DMA_CMA is not set CONFIG_DMADEVICES_DEBUG=y +# CONFIG_DMADEVICES is not set # CONFIG_DMADEVICES_VDEBUG is not set -CONFIG_DMADEVICES=y CONFIG_DMA_ENGINE=y # CONFIG_DMA_FENCE_TRACE is not set # CONFIG_DMARD06 is not set @@ -991,11 +985,11 @@ CONFIG_DM_UEVENT=y CONFIG_DM_VERITY_FEC=y CONFIG_DM_VERITY=m CONFIG_DM_ZERO=y -CONFIG_DNET=m +# CONFIG_DNET is not set CONFIG_DNOTIFY=y CONFIG_DNS_RESOLVER=m CONFIG_DONGLE=y -CONFIG_DP83640_PHY=m +# CONFIG_DP83640_PHY is not set CONFIG_DP83848_PHY=m CONFIG_DP83867_PHY=m # CONFIG_DPM_WATCHDOG is not set # revisit this in debug @@ -1014,6 +1008,7 @@ CONFIG_DRM_ANALOGIX_ANX78XX=m CONFIG_DRM_AST=m CONFIG_DRM_BOCHS=m CONFIG_DRM_CIRRUS_QEMU=m +# CONFIG_DRM_DEBUG_MM_SELFTEST is not set CONFIG_DRM_DP_AUX_CHARDEV=y # CONFIG_DRM_DUMB_VGA_DAC is not set CONFIG_DRM_DW_HDMI_I2S_AUDIO=m @@ -1021,22 +1016,13 @@ CONFIG_DRM_FBDEV_EMULATION=y CONFIG_DRM_HISI_HIBMC=m CONFIG_DRM_I2C_ADV7511_AUDIO=y CONFIG_DRM_I2C_ADV7511=m -# CONFIG_DRM_I2C_ADV7533 is not set +CONFIG_DRM_I2C_ADV7533=y CONFIG_DRM_I2C_CH7006=m CONFIG_DRM_I2C_NXP_TDA998X=m CONFIG_DRM_I2C_SIL164=m -# CONFIG_DRM_I810 is not set -# CONFIG_DRM_I915_ALPHA_SUPPORT is not set -CONFIG_DRM_I915_CAPTURE_ERROR=y -CONFIG_DRM_I915_COMPRESS_ERROR=y -CONFIG_DRM_I915_GVT_KVMGT=m -CONFIG_DRM_I915_GVT=y -CONFIG_DRM_I915=m -CONFIG_DRM_I915_USERPTR=y # CONFIG_DRM is not set # CONFIG_DRM_LEGACY is not set CONFIG_DRM_LOAD_EDID_FIRMWARE=y -# CONFIG_DRM_MALI_DISPLAY is not set CONFIG_DRM_MGAG200=m # CONFIG_DRM_MGA is not set CONFIG_DRM_MXSFB=m @@ -1057,14 +1043,13 @@ CONFIG_DRM_RADEON_USERPTR=y CONFIG_DRM_SIL_SII8620=m # CONFIG_DRM_SIS is not set # CONFIG_DRM_TDFX is not set +# CONFIG_DRM_TINYDRM is not set CONFIG_DRM_TI_TFP410=m # CONFIG_DRM_TOSHIBA_TC358767 is not set CONFIG_DRM_UDL=m CONFIG_DRM_VGEM=m CONFIG_DRM_VIA=m CONFIG_DRM_VIRTIO_GPU=m -CONFIG_DRM_VMWGFX_FBCON=y -CONFIG_DRM_VMWGFX=m # CONFIG_DS1682 is not set # CONFIG_DS1803 is not set # CONFIG_DT3155 is not set @@ -1151,6 +1136,7 @@ CONFIG_DVB_USB_UMT_010=m CONFIG_DVB_USB_V2=m CONFIG_DVB_USB_VP702X=m CONFIG_DVB_USB_VP7045=m +CONFIG_DVB_USB_ZD1301=m # CONFIG_DW_DMAC_BIG_ENDIAN_IO is not set CONFIG_DW_DMAC_CORE=m # CONFIG_DW_DMAC is not set @@ -1164,7 +1150,7 @@ CONFIG_E100=m CONFIG_EADM_SCH=m CONFIG_EARLY_PRINTK_DBGP=y # CONFIG_EBC_C384_WDT is not set -CONFIG_ECHO=m +# CONFIG_ECHO is not set CONFIG_ECRYPT_FS=m # CONFIG_ECRYPT_FS_MESSAGING is not set # CONFIG_EDAC_DEBUG is not set @@ -1175,6 +1161,7 @@ CONFIG_EEPROM_93CX6=m # CONFIG_EEPROM_93XX46 is not set CONFIG_EEPROM_AT24=m # CONFIG_EEPROM_AT25 is not set +CONFIG_EEPROM_IDT_89HPESX=m CONFIG_EEPROM_LEGACY=m CONFIG_EEPROM_MAX6875=m # CONFIG_EFI_ALLOW_SECURE_BOOT_EXIT is not set @@ -1184,13 +1171,12 @@ CONFIG_EFI_PGT_DUMP=y # CONFIG_EFI_SIGNATURE_LIST_PARSER is not set # CONFIG_EFI_TEST is not set # CONFIG_EFS_FS is not set -# CONFIG_EMAC_ROCKCHIP is not set # CONFIG_EMBEDDED is not set CONFIG_EMU_SIZE=0x10000000 CONFIG_ENABLE_MUST_CHECK=y # CONFIG_ENABLE_WARN_DEPRECATED is not set # CONFIG_ENC28J60 is not set -CONFIG_ENCLOSURE_SERVICES=m +# CONFIG_ENCLOSURE_SERVICES is not set CONFIG_ENCRYPTED_KEYS=y CONFIG_ENIC=m CONFIG_ENVELOPE_DETECTOR=m @@ -1200,7 +1186,7 @@ CONFIG_EQUALIZER=m CONFIG_ESI_DONGLE=m CONFIG_ET131X=m CONFIG_ETHERNET=y -CONFIG_ETHOC=m +# CONFIG_ETHOC is not set # CONFIG_EUROTECH_WDT is not set # CONFIG_EVM is not set # CONFIG_EXOFS_DEBUG is not set @@ -1217,6 +1203,7 @@ CONFIG_EXT4_FS_SECURITY=y CONFIG_EXT4_FS=y CONFIG_EXT4_USE_FOR_EXT2=y # CONFIG_EXTCON_ADC_JACK is not set +CONFIG_EXTCON_INTEL_INT3496=m # CONFIG_EXTCON is not set # CONFIG_EXTCON_QCOM_SPMI_MISC is not set CONFIG_EXTRA_FIRMWARE="" @@ -1248,7 +1235,6 @@ CONFIG_FAULT_INJECTION_DEBUG_FS=y CONFIG_FAULT_INJECTION_STACKTRACE_FILTER=y CONFIG_FAULT_INJECTION=y # CONFIG_FB_3DFX is not set -# CONFIG_FB_ARC is not set # CONFIG_FB_ARK is not set # CONFIG_FB_ASILIANT is not set CONFIG_FB_ATY128_BACKLIGHT=y @@ -1264,19 +1250,12 @@ CONFIG_FB_ATY_BACKLIGHT=y # CONFIG_FB_CYBER2000 is not set CONFIG_FB_EFI=y # CONFIG_FB_FOREIGN_ENDIAN is not set -# CONFIG_FB_GEODE is not set -# CONFIG_FB_GOLDFISH is not set # CONFIG_FB_HECUBA is not set -# CONFIG_FB_HGA is not set # CONFIG_FB_I740 is not set -CONFIG_FB_I810_GTF=y -CONFIG_FB_I810_I2C=y -CONFIG_FB_I810=m # CONFIG_FB_IBM_GXT4500 is not set # CONFIG_FB_IMSTT is not set # CONFIG_FB is not set # CONFIG_FB_KYRO is not set -# CONFIG_FB_LE80578 is not set # CONFIG_FB_MATROX_G is not set # CONFIG_FB_MATROX_I2C is not set # CONFIG_FB_MATROX is not set @@ -1319,9 +1298,6 @@ CONFIG_FB_TILEBLITTING=y # CONFIG_FB_UDL is not set # CONFIG_FB_UVESA is not set CONFIG_FB_VESA=y -CONFIG_FB_VGA16=m -# CONFIG_FB_VIA_DIRECT_PROCFS is not set -# CONFIG_FB_VIA is not set CONFIG_FB_VIRTUAL=m # CONFIG_FB_VOODOO1 is not set # CONFIG_FB_VT8623 is not set @@ -1329,7 +1305,7 @@ CONFIG_FB_VIRTUAL=m CONFIG_FCOE_FNIC=m # CONFIG_FCOE is not set # CONFIG_FDDI is not set -CONFIG_FEALNX=m +# CONFIG_FEALNX is not set CONFIG_FHANDLE=y # CONFIG_FIREWIRE is not set CONFIG_FIREWIRE_NET=m @@ -1362,6 +1338,7 @@ CONFIG_FSCACHE_OBJECT_LIST=y CONFIG_FSCACHE_STATS=y CONFIG_FS_DAX=y CONFIG_FS_ENCRYPTION=y +CONFIG_FSI=m # CONFIG_FSL_EDMA is not set # CONFIG_FSL_PQ_MDIO is not set CONFIG_FS_MBCACHE=y @@ -1403,7 +1380,8 @@ CONFIG_GAMEPORT_NS558=m # CONFIG_GENERIC_PHY is not set CONFIG_GENEVE=m # CONFIG_GEN_RTC is not set -# CONFIG_GENWQE is not set +CONFIG_GENWQE=m +CONFIG_GENWQE_PLATFORM_ERROR_RECOVERY=0 CONFIG_GFS2_FS_LOCKING_DLM=y CONFIG_GFS2_FS=m CONFIG_GIGASET_BASE=m @@ -1422,42 +1400,38 @@ CONFIG_GIRBIL_DONGLE=m # CONFIG_GPIO_ADNP is not set # CONFIG_GPIO_ADP5588 is not set # CONFIG_GPIO_ALTERA is not set -# CONFIG_GPIO_AMD8111 is not set # CONFIG_GPIO_AMDPT is not set # CONFIG_GPIO_BT8XX is not set -# CONFIG_GPIO_CS5535 is not set # CONFIG_GPIO_DWAPB is not set +CONFIG_GPIO_EXAR=m # CONFIG_GPIO_GENERIC_PLATFORM is not set # CONFIG_GPIO_GRGPIO is not set # CONFIG_GPIO_IT87 is not set -CONFIG_GPIOLIB=y +# CONFIG_GPIOLIB is not set # CONFIG_GPIO_MAX7300 is not set # CONFIG_GPIO_MAX7301 is not set # CONFIG_GPIO_MAX732X is not set # CONFIG_GPIO_MC33880 is not set # CONFIG_GPIO_MCP23S08 is not set -# CONFIG_GPIO_ML_IOH is not set # CONFIG_GPIO_MOCKUP is not set # CONFIG_GPIO_MPC8XXX is not set # CONFIG_GPIO_PCA953X is not set # CONFIG_GPIO_PCF857X is not set # CONFIG_GPIO_PCH is not set +CONFIG_GPIO_PCI_IDIO_16=m # CONFIG_GPIO_PISOSR is not set # CONFIG_GPIO_RDC321X is not set # CONFIG_GPIO_SCH311X is not set -# CONFIG_GPIO_SCH is not set # CONFIG_GPIO_SX150X is not set # CONFIG_GPIO_SYSCON is not set -CONFIG_GPIO_SYSFS=y +# CONFIG_GPIO_SYSFS is not set # CONFIG_GPIO_TPIC2810 is not set # CONFIG_GPIO_TS4900 is not set # CONFIG_GPIO_TS5500 is not set CONFIG_GPIO_VIPERBOARD=m -# CONFIG_GPIO_VX855 is not set # CONFIG_GPIO_WATCHDOG is not set # CONFIG_GPIO_WS16C48 is not set # CONFIG_GPIO_XILINX is not set -# CONFIG_GPIO_ZX is not set CONFIG_GREENASIA_FF=y # CONFIG_GREYBUS is not set # CONFIG_GS_FPGABOOT is not set @@ -1507,6 +1481,7 @@ CONFIG_HID_GT683R=m CONFIG_HID_GYRATION=m CONFIG_HID_HOLTEK=m CONFIG_HID_ICADE=m +# CONFIG_HID is not set CONFIG_HID_KENSINGTON=m CONFIG_HID_KEYTOUCH=m CONFIG_HID_KYE=m @@ -1516,7 +1491,6 @@ CONFIG_HID_LENOVO=m CONFIG_HID_LOGITECH_DJ=m CONFIG_HID_LOGITECH_HIDPP=m CONFIG_HID_LOGITECH=m -CONFIG_HID=m CONFIG_HID_MAGICMOUSE=m CONFIG_HID_MAYFLASH=m CONFIG_HID_MICROSOFT=m @@ -1638,7 +1612,7 @@ CONFIG_HVC_IUCV=y CONFIG_HW_CONSOLE=y CONFIG_HWLAT_TRACER=y # CONFIG_HWMON_DEBUG_CHIP is not set -CONFIG_HWMON=m +# CONFIG_HWMON is not set CONFIG_HWPOISON_INJECT=m CONFIG_HW_RANDOM_OMAP=m CONFIG_HW_RANDOM_TIMERIOMEM=m @@ -1646,13 +1620,14 @@ CONFIG_HW_RANDOM_TPM=m CONFIG_HW_RANDOM_VIRTIO=m CONFIG_HW_RANDOM=y CONFIG_HWSPINLOCK=m +# CONFIG_HX711 is not set CONFIG_HYSDN_CAPI=y CONFIG_HYSDN=m # CONFIG_HZ_1000 is not set CONFIG_HZ_100=y -CONFIG_I2C_ALGOBIT=m -CONFIG_I2C_ALGOPCA=m -CONFIG_I2C_ALGOPCF=m +# CONFIG_I2C_ALGOBIT is not set +# CONFIG_I2C_ALGOPCA is not set +# CONFIG_I2C_ALGOPCF is not set # CONFIG_I2C_ALI1535 is not set # CONFIG_I2C_ALI1563 is not set # CONFIG_I2C_ALI15X3 is not set @@ -1663,23 +1638,22 @@ CONFIG_I2C_ALGOPCF=m # CONFIG_I2C_BCM2048 is not set # CONFIG_I2C_CADENCE is not set # CONFIG_I2C_CBUS_GPIO is not set -CONFIG_I2C_CHARDEV=m -CONFIG_I2C_COMPAT=y +# CONFIG_I2C_CHARDEV is not set +# CONFIG_I2C_COMPAT is not set # CONFIG_I2C_DEBUG_ALGO is not set # CONFIG_I2C_DEBUG_BUS is not set # CONFIG_I2C_DEBUG_CORE is not set # CONFIG_I2C_DEMUX_PINCTRL is not set # CONFIG_I2C_DESIGNWARE is not set -CONFIG_I2C_DESIGNWARE_PCI=m +# CONFIG_I2C_DESIGNWARE_PCI is not set # CONFIG_I2C_DESIGNWARE_PLATFORM is not set CONFIG_I2C_DIOLAN_U2C=m # CONFIG_I2C_EG20T is not set # CONFIG_I2C_EMEV2 is not set # CONFIG_I2C_GPIO is not set # CONFIG_I2C_HELPER_AUTO is not set -CONFIG_I2C_HID=m +# CONFIG_I2C_HID is not set # CONFIG_I2C_I801 is not set -CONFIG_I2C_IMX_LPI2C=m # CONFIG_I2C_ISCH is not set CONFIG_I2C=m CONFIG_I2C_MLXCPLD=m @@ -1695,20 +1669,18 @@ CONFIG_I2C_MUX_MLXCPLD=m # CONFIG_I2C_OCORES is not set # CONFIG_I2C_PARPORT is not set # CONFIG_I2C_PARPORT_LIGHT is not set -CONFIG_I2C_PCA_PLATFORM=m +# CONFIG_I2C_PCA_PLATFORM is not set # CONFIG_I2C_PIIX4 is not set -CONFIG_I2C_PXA=m -# CONFIG_I2C_PXA_SLAVE is not set # CONFIG_I2C_RK3X is not set # CONFIG_I2C_ROBOTFUZZ_OSIF is not set CONFIG_I2C_SI470X=m # CONFIG_I2C_SI4713 is not set -CONFIG_I2C_SIMTEC=m +# CONFIG_I2C_SIMTEC is not set # CONFIG_I2C_SIS5595 is not set # CONFIG_I2C_SIS630 is not set # CONFIG_I2C_SIS96X is not set CONFIG_I2C_SLAVE_EEPROM=m -CONFIG_I2C_SLAVE=y +# CONFIG_I2C_SLAVE is not set # CONFIG_I2C_SMBUS is not set # CONFIG_I2C_STUB is not set # CONFIG_I2C_TAOS_EVM is not set @@ -1722,11 +1694,9 @@ CONFIG_I2C_VIPERBOARD=m # CONFIG_I40E_FCOE is not set CONFIG_I40E=m CONFIG_I40EVF=m -CONFIG_I6300ESB_WDT=m +# CONFIG_I6300ESB_WDT is not set CONFIG_I82092=m # CONFIG_IAQCORE is not set -CONFIG_IB700_WDT=m -CONFIG_IBMASR=m CONFIG_IBM_PARTITION=y CONFIG_ICPLUS_PHY=m # CONFIG_ICS932S401 is not set @@ -1759,8 +1729,8 @@ CONFIG_IIO_CROS_EC_SENSORS_COR=m CONFIG_IIO_CROS_EC_SENSORS=m # CONFIG_IIO_HRTIMER_TRIGGER is not set CONFIG_IIO_INTERRUPT_TRIGGER=m +# CONFIG_IIO is not set CONFIG_IIO_KFIFO_BUF=m -CONFIG_IIO=m # CONFIG_IIO_SIMPLE_DUMMY is not set # CONFIG_IIO_SSP_SENSORHUB is not set CONFIG_IIO_ST_ACCEL_3AXIS=m @@ -1769,6 +1739,7 @@ CONFIG_IIO_ST_ACCEL_SPI_3AXIS=m CONFIG_IIO_ST_GYRO_3AXIS=m CONFIG_IIO_ST_GYRO_I2C_3AXIS=m CONFIG_IIO_ST_GYRO_SPI_3AXIS=m +# CONFIG_IIO_ST_LSM6DSX is not set CONFIG_IIO_ST_MAGN_3AXIS=m # CONFIG_IIO_ST_PRESS is not set CONFIG_IIO_SW_DEVICE=m @@ -1785,6 +1756,7 @@ CONFIG_IMA_MEASURE_PCR_IDX=10 # CONFIG_INA2XX_ADC is not set CONFIG_INET6_AH=m CONFIG_INET6_ESP=m +CONFIG_INET6_ESP_OFFLOAD=m CONFIG_INET6_IPCOMP=m CONFIG_INET6_XFRM_MODE_BEET=m CONFIG_INET6_XFRM_MODE_ROUTEOPTIMIZATION=m @@ -1794,6 +1766,7 @@ CONFIG_INET_AH=m CONFIG_INET_DIAG_DESTROY=y CONFIG_INET_DIAG=m CONFIG_INET_ESP=m +CONFIG_INET_ESP_OFFLOAD=m CONFIG_INET_IPCOMP=m CONFIG_INET_RAW_DIAG=m CONFIG_INET_TUNNEL=m @@ -1802,9 +1775,10 @@ CONFIG_INET_XFRM_MODE_BEET=m CONFIG_INET_XFRM_MODE_TRANSPORT=m CONFIG_INET_XFRM_MODE_TUNNEL=m CONFIG_INET=y +# CONFIG_INFINIBAND_BNXT_RE is not set # CONFIG_INFINIBAND_CXGB3_DEBUG is not set -CONFIG_INFINIBAND_CXGB3=m -CONFIG_INFINIBAND_CXGB4=m +# CONFIG_INFINIBAND_CXGB3 is not set +# CONFIG_INFINIBAND_CXGB4 is not set CONFIG_INFINIBAND_I40IW=m CONFIG_INFINIBAND_IPOIB_CM=y CONFIG_INFINIBAND_IPOIB_DEBUG_DATA=y @@ -1813,14 +1787,14 @@ CONFIG_INFINIBAND_IPOIB=m CONFIG_INFINIBAND_ISER=m CONFIG_INFINIBAND_ISERT=m CONFIG_INFINIBAND=m -CONFIG_INFINIBAND_MTHCA=m +# CONFIG_INFINIBAND_MTHCA is not set # CONFIG_INFINIBAND_NES_DEBUG is not set -CONFIG_INFINIBAND_NES=m -CONFIG_INFINIBAND_OCRDMA=m +# CONFIG_INFINIBAND_NES is not set +# CONFIG_INFINIBAND_OCRDMA is not set CONFIG_INFINIBAND_ON_DEMAND_PAGING=y # CONFIG_INFINIBAND_QEDR is not set CONFIG_INFINIBAND_QIB_DCA=y -CONFIG_INFINIBAND_QIB=m +# CONFIG_INFINIBAND_QIB is not set CONFIG_INFINIBAND_RDMAVT=m CONFIG_INFINIBAND_SRP=m CONFIG_INFINIBAND_SRPT=m @@ -1848,7 +1822,7 @@ CONFIG_INPUT_CMA3000=m CONFIG_INPUT_E3X0_BUTTON=m # CONFIG_INPUT_EVBUG is not set CONFIG_INPUT_EVDEV=y -CONFIG_INPUT_FF_MEMLESS=m +# CONFIG_INPUT_FF_MEMLESS is not set CONFIG_INPUT_GP2A=m # CONFIG_INPUT_GPIO_BEEPER is not set # CONFIG_INPUT_GPIO_DECODER is not set @@ -1867,10 +1841,10 @@ CONFIG_INPUT_LEDS=y # CONFIG_INPUT_MATRIXKMAP is not set # CONFIG_INPUT_MISC is not set CONFIG_INPUT_MMA8450=m +# CONFIG_INPUT_MOUSEDEV is not set # CONFIG_INPUT_MOUSEDEV_PSAUX is not set CONFIG_INPUT_MOUSEDEV_SCREEN_X=1024 CONFIG_INPUT_MOUSEDEV_SCREEN_Y=768 -CONFIG_INPUT_MOUSEDEV=y # CONFIG_INPUT_MOUSE is not set CONFIG_INPUT_MPU3050=m CONFIG_INPUT_PCF50633_PMU=m @@ -1878,11 +1852,11 @@ CONFIG_INPUT_PCF50633_PMU=m CONFIG_INPUT_PCSPKR=m CONFIG_INPUT_PM8XXX_VIBRATOR=m CONFIG_INPUT_PMIC8XXX_PWRKEY=m -CONFIG_INPUT_POLLDEV=m +# CONFIG_INPUT_POLLDEV is not set CONFIG_INPUT_POWERMATE=m # CONFIG_INPUT_PWM_BEEPER is not set CONFIG_INPUT_RETU_PWRBUTTON=m -CONFIG_INPUT_SPARSEKMAP=m +# CONFIG_INPUT_SPARSEKMAP is not set # CONFIG_INPUT_TABLET is not set # CONFIG_INPUT_TOUCHSCREEN is not set CONFIG_INPUT_UINPUT=m @@ -1892,8 +1866,6 @@ CONFIG_INPUT=y CONFIG_INPUT_YEALINK=m # CONFIG_INTEGRITY is not set # CONFIG_INTEL_IDMA64 is not set -# CONFIG_INTEL_MENLOW is not set -CONFIG_INTEL_RDT_A=y # CONFIG_INTEL_SOC_PMIC is not set # CONFIG_INTEL_TH is not set CONFIG_INTEL_XWAY_PHY=m @@ -1906,6 +1878,7 @@ CONFIG_IOSCHED_CFQ=y CONFIG_IOSCHED_DEADLINE=y CONFIG_IOSCHED_NOOP=y CONFIG_IO_STRICT_DEVMEM=y +# CONFIG_IP1000 is not set CONFIG_IP6_NF_FILTER=m CONFIG_IP6_NF_IPTABLES=m CONFIG_IP6_NF_MANGLE=m @@ -2040,6 +2013,7 @@ CONFIG_IP_VS_SH_TAB_BITS=8 CONFIG_IP_VS_TAB_BITS=12 CONFIG_IP_VS_WLC=m CONFIG_IP_VS_WRR=m +CONFIG_IPVTAP=m # CONFIG_IPW2100_DEBUG is not set # CONFIG_IPW2100 is not set # CONFIG_IPW2200_DEBUG is not set @@ -2081,6 +2055,7 @@ CONFIG_IR_SERIAL=m CONFIG_IR_SERIAL_TRANSMITTER=y CONFIG_IR_SHARP_DECODER=m CONFIG_IR_SONY_DECODER=m +CONFIG_IR_SPI=m CONFIG_IR_STREAMZAP=m CONFIG_IR_TTUSBIR=m CONFIG_IRTTY_SIR=m @@ -2121,8 +2096,8 @@ CONFIG_ISDN_PPP=y CONFIG_ISDN_TTY_FAX=y CONFIG_ISDN=y # CONFIG_ISI is not set -CONFIG_ISL29003=m -CONFIG_ISL29020=m +# CONFIG_ISL29003 is not set +# CONFIG_ISL29020 is not set # CONFIG_ISL29125 is not set CONFIG_ISO9660_FS=m CONFIG_IT8712F_WDT=m @@ -2159,7 +2134,7 @@ CONFIG_JFS_FS=m CONFIG_JFS_POSIX_ACL=y CONFIG_JFS_SECURITY=y # CONFIG_JFS_STATISTICS is not set -CONFIG_JME=m +# CONFIG_JME is not set CONFIG_JOLIET=y CONFIG_JOYSTICK_A3D=m CONFIG_JOYSTICK_ADI=m @@ -2233,6 +2208,7 @@ CONFIG_KEYBOARD_PMIC8XXX=m # CONFIG_KEYBOARD_SUNKBD is not set # CONFIG_KEYBOARD_TCA6416 is not set # CONFIG_KEYBOARD_TCA8418 is not set +CONFIG_KEYBOARD_TM2_TOUCHKEY=m # CONFIG_KEYBOARD_XTKBD is not set CONFIG_KEY_DH_OPERATIONS=y CONFIG_KEYS=y @@ -2244,7 +2220,7 @@ CONFIG_KGDB_TESTS=y CONFIG_KGDB=y CONFIG_KINGSUN_DONGLE=m # CONFIG_KMX61 is not set -CONFIG_KPROBE_EVENT=y +CONFIG_KPROBE_EVENTS=y # CONFIG_KPROBES_SANITY_TEST is not set CONFIG_KPROBES=y CONFIG_KS0108_DELAY=2 @@ -2292,13 +2268,13 @@ CONFIG_LDM_PARTITION=y # CONFIG_LEDS_BCM6358 is not set # CONFIG_LEDS_BD2802 is not set CONFIG_LEDS_BLINKM=m +CONFIG_LEDS_BRIGHTNESS_HW_CHANGED=y CONFIG_LEDS_CLASS_FLASH=m CONFIG_LEDS_CLASS=y CONFIG_LEDS_CLEVO_MAIL=m # CONFIG_LEDS_DAC124S085 is not set CONFIG_LEDS_DELL_NETBOOKS=m # CONFIG_LEDS_GPIO is not set -CONFIG_LEDS_INTEL_SS4200=m # CONFIG_LEDS_IS31FL319X is not set # CONFIG_LEDS_IS31FL32XX is not set # CONFIG_LEDS_KTD2692 is not set @@ -2406,6 +2382,8 @@ CONFIG_LOOPBACK_TARGET=m # CONFIG_LPC_ICH is not set CONFIG_LP_CONSOLE=y # CONFIG_LPC_SCH is not set +CONFIG_LPFC_NVME_INITIATOR=y +CONFIG_LPFC_NVME_TARGET=y CONFIG_LSI_ET1011C_PHY=m CONFIG_LSM_MMAP_MIN_ADDR=65536 # CONFIG_LTC2485 is not set @@ -2438,6 +2416,7 @@ CONFIG_MACVLAN=m CONFIG_MACVTAP=m # CONFIG_MAG3110 is not set CONFIG_MAGIC_SYSRQ_DEFAULT_ENABLE=0x0 +CONFIG_MAGIC_SYSRQ_SERIAL=y CONFIG_MAGIC_SYSRQ=y # CONFIG_MAILBOX is not set # CONFIG_MAILBOX_TEST is not set @@ -2446,10 +2425,12 @@ CONFIG_MANTIS_CORE=m CONFIG_MARCH_ZEC12=y CONFIG_MARVELL_PHY=m # CONFIG_MAX1027 is not set +# CONFIG_MAX11100 is not set # CONFIG_MAX1363 is not set CONFIG_MAX30100=m # CONFIG_MAX44000 is not set # CONFIG_MAX517 is not set +# CONFIG_MAX5481 is not set # CONFIG_MAX5487 is not set # CONFIG_MAX5821 is not set # CONFIG_MAX63XX_WATCHDOG is not set @@ -2503,11 +2484,11 @@ CONFIG_MEDIA_SUBDRV_AUTOSELECT=y # CONFIG_MEDIA_SUPPORT is not set # CONFIG_MEDIA_TUNER_MSI001 is not set CONFIG_MEDIA_USB_SUPPORT=y -CONFIG_MEGARAID_LEGACY=m +# CONFIG_MEGARAID_LEGACY is not set CONFIG_MEGARAID_MAILBOX=m CONFIG_MEGARAID_MM=m -CONFIG_MEGARAID_NEWGEN=y -CONFIG_MEGARAID_SAS=m +# CONFIG_MEGARAID_NEWGEN is not set +# CONFIG_MEGARAID_SAS is not set CONFIG_MEMCG_SWAP_ENABLED=y CONFIG_MEMCG_SWAP=y CONFIG_MEMCG=y @@ -2526,7 +2507,6 @@ CONFIG_MEMSTICK_TIFM_MS=m # CONFIG_MEMSTICK_UNSAFE_RESUME is not set # CONFIG_MEMTEST is not set # CONFIG_MEN_A21_WDT is not set -CONFIG_MESON_GXL_PHY=m CONFIG_MESSAGE_LOGLEVEL_DEFAULT=4 # CONFIG_MFD_88PM800 is not set # CONFIG_MFD_88PM805 is not set @@ -2544,7 +2524,8 @@ CONFIG_MESSAGE_LOGLEVEL_DEFAULT=4 # CONFIG_MFD_AXP20X_I2C is not set # CONFIG_MFD_AXP20X is not set # CONFIG_MFD_BCM590XX is not set -CONFIG_MFD_CORE=m +# CONFIG_MFD_CORE is not set +CONFIG_MFD_CPCAP=m # CONFIG_MFD_CROS_EC is not set # CONFIG_MFD_CS5535 is not set # CONFIG_MFD_DA9052_I2C is not set @@ -2591,7 +2572,6 @@ CONFIG_MFD_SM501_GPIO=y # CONFIG_MFD_SM501 is not set # CONFIG_MFD_SMSC is not set # CONFIG_MFD_STMPE is not set -CONFIG_MFD_SUN4I_GPADC=m # CONFIG_MFD_SYSCON is not set # CONFIG_MFD_TC3589X is not set # CONFIG_MFD_TC6393XB is not set @@ -2650,7 +2630,7 @@ CONFIG_MLX5_INFINIBAND=m # CONFIG_MLX90614 is not set CONFIG_MLX_CPLD_PLATFORM=m CONFIG_MLXSW_CORE_HWMON=y -CONFIG_MLXSW_CORE=m +# CONFIG_MLXSW_CORE is not set CONFIG_MLXSW_CORE_THERMAL=y CONFIG_MLXSW_I2C=m CONFIG_MLXSW_MINIMAL=m @@ -2726,7 +2706,6 @@ CONFIG_MOUSE_ELAN_I2C_SMBUS=y CONFIG_MOUSE_PS2_ELANTECH=y CONFIG_MOUSE_PS2_SENTELIC=y # CONFIG_MOUSE_PS2_TOUCHKIT is not set -# CONFIG_MOUSE_PS2_VMMOUSE is not set CONFIG_MOUSE_PS2=y CONFIG_MOUSE_SERIAL=m CONFIG_MOUSE_SYNAPTICS_I2C=m @@ -2742,6 +2721,7 @@ CONFIG_MOVABLE_NODE=y CONFIG_MPLS_IPTUNNEL=m CONFIG_MPLS_ROUTING=m # CONFIG_MPU3050_I2C is not set +CONFIG_MQ_IOSCHED_DEADLINE=y # CONFIG_MS5611 is not set # CONFIG_MS5637 is not set # CONFIG_MS_BLOCK is not set @@ -2846,12 +2826,13 @@ CONFIG_NET_ACT_MIRRED=m CONFIG_NET_ACT_NAT=m CONFIG_NET_ACT_PEDIT=m CONFIG_NET_ACT_POLICE=m +CONFIG_NET_ACT_SAMPLE=m CONFIG_NET_ACT_SIMP=m CONFIG_NET_ACT_SKBEDIT=m CONFIG_NET_ACT_SKBMOD=m CONFIG_NET_ACT_TUNNEL_KEY=m CONFIG_NET_ACT_VLAN=m -CONFIG_NET_CADENCE=y +# CONFIG_NET_CADENCE is not set CONFIG_NET_CALXEDA_XGMAC=m CONFIG_NET_CLS_ACT=y CONFIG_NET_CLS_BASIC=m @@ -2979,6 +2960,7 @@ CONFIG_NETFILTER_XT_TARGET_TRACE=m CONFIG_NETFILTER=y CONFIG_NET_FOU_IP_TUNNELS=y CONFIG_NET_FOU=m +CONFIG_NET_IFE=m CONFIG_NET_IFE_SKBMARK=m CONFIG_NET_IFE_SKBPRIO=m CONFIG_NET_IFE_SKBTCINDEX=m @@ -2990,13 +2972,13 @@ CONFIG_NET_IPVTI=m # CONFIG_NETIUCV is not set CONFIG_NET_KEY=m CONFIG_NET_KEY_MIGRATE=y -# CONFIG_NET_L3_MASTER_DEV is not set +CONFIG_NET_L3_MASTER_DEV=y CONFIG_NETLABEL=y CONFIG_NETLINK_DIAG=m CONFIG_NET_MPLS_GSO=m CONFIG_NET_NCSI=y CONFIG_NET_NS=y -CONFIG_NET_PACKET_ENGINE=y +# CONFIG_NET_PACKET_ENGINE is not set CONFIG_NET_PKTGEN=m CONFIG_NET_POLL_CONTROLLER=y CONFIG_NETROM=m @@ -3036,26 +3018,27 @@ CONFIG_NET_TEAM_MODE_LOADBALANCE=m CONFIG_NET_TEAM_MODE_RANDOM=m CONFIG_NET_TEAM_MODE_ROUNDROBIN=m CONFIG_NET_TULIP=y -CONFIG_NET_VENDOR_3COM=y -CONFIG_NET_VENDOR_8390=y -CONFIG_NET_VENDOR_ADAPTEC=y -CONFIG_NET_VENDOR_AGERE=y +# CONFIG_NET_VENDOR_3COM is not set +# CONFIG_NET_VENDOR_8390 is not set +# CONFIG_NET_VENDOR_ADAPTEC is not set +# CONFIG_NET_VENDOR_AGERE is not set # CONFIG_NET_VENDOR_ALACRITECH is not set -CONFIG_NET_VENDOR_ALTEON=y +# CONFIG_NET_VENDOR_ALTEON is not set # CONFIG_NET_VENDOR_AMAZON is not set -CONFIG_NET_VENDOR_AMD=y +# CONFIG_NET_VENDOR_AMD is not set +# CONFIG_NET_VENDOR_AQUANTIA is not set # CONFIG_NET_VENDOR_ARC is not set -CONFIG_NET_VENDOR_ATHEROS=y +# CONFIG_NET_VENDOR_ATHEROS is not set # CONFIG_NET_VENDOR_AURORA is not set -CONFIG_NET_VENDOR_BROADCOM=y -CONFIG_NET_VENDOR_BROCADE=y +# CONFIG_NET_VENDOR_BROADCOM is not set +# CONFIG_NET_VENDOR_BROCADE is not set # CONFIG_NET_VENDOR_CAVIUM is not set -CONFIG_NET_VENDOR_CHELSIO=y -CONFIG_NET_VENDOR_CISCO=y -CONFIG_NET_VENDOR_DEC=y -CONFIG_NET_VENDOR_DLINK=y -CONFIG_NET_VENDOR_EMULEX=y -CONFIG_NET_VENDOR_EXAR=y +# CONFIG_NET_VENDOR_CHELSIO is not set +# CONFIG_NET_VENDOR_CISCO is not set +# CONFIG_NET_VENDOR_DEC is not set +# CONFIG_NET_VENDOR_DLINK is not set +# CONFIG_NET_VENDOR_EMULEX is not set +# CONFIG_NET_VENDOR_EXAR is not set # CONFIG_NET_VENDOR_EZCHIP is not set # CONFIG_NET_VENDOR_FARADAY is not set # CONFIG_NET_VENDOR_FUJITSU is not set @@ -3064,43 +3047,43 @@ CONFIG_NET_VENDOR_EXAR=y # CONFIG_NET_VENDOR_I825XX is not set # CONFIG_NET_VENDOR_INTEL is not set # CONFIG_NET_VENDOR_MARVELL is not set -CONFIG_NET_VENDOR_MICREL=y +# CONFIG_NET_VENDOR_MICREL is not set # CONFIG_NET_VENDOR_MICROCHIP is not set -CONFIG_NET_VENDOR_MYRI=y +# CONFIG_NET_VENDOR_MYRI is not set # CONFIG_NET_VENDOR_NATSEMI is not set -CONFIG_NET_VENDOR_NETRONOME=y -CONFIG_NET_VENDOR_NVIDIA=y -CONFIG_NET_VENDOR_OKI=y -CONFIG_NET_VENDOR_QLOGIC=y +# CONFIG_NET_VENDOR_NETRONOME is not set +# CONFIG_NET_VENDOR_NVIDIA is not set +# CONFIG_NET_VENDOR_OKI is not set +# CONFIG_NET_VENDOR_QLOGIC is not set # CONFIG_NET_VENDOR_QUALCOMM is not set -CONFIG_NET_VENDOR_RDC=y -CONFIG_NET_VENDOR_REALTEK=y +# CONFIG_NET_VENDOR_RDC is not set +# CONFIG_NET_VENDOR_REALTEK is not set # CONFIG_NET_VENDOR_RENESAS is not set -CONFIG_NET_VENDOR_ROCKER=y +# CONFIG_NET_VENDOR_ROCKER is not set # CONFIG_NET_VENDOR_SAMSUNG is not set # CONFIG_NET_VENDOR_SEEQ is not set -CONFIG_NET_VENDOR_SILAN=y -CONFIG_NET_VENDOR_SIS=y -CONFIG_NET_VENDOR_SMSC=y +# CONFIG_NET_VENDOR_SILAN is not set +# CONFIG_NET_VENDOR_SIS is not set +# CONFIG_NET_VENDOR_SMSC is not set # CONFIG_NET_VENDOR_SOLARFLARE is not set -CONFIG_NET_VENDOR_STMICRO=y -CONFIG_NET_VENDOR_SUN=y +# CONFIG_NET_VENDOR_STMICRO is not set +# CONFIG_NET_VENDOR_SUN is not set # CONFIG_NET_VENDOR_SYNOPSYS is not set -CONFIG_NET_VENDOR_TEHUTI=y -CONFIG_NET_VENDOR_TI=y +# CONFIG_NET_VENDOR_TEHUTI is not set +# CONFIG_NET_VENDOR_TI is not set # CONFIG_NET_VENDOR_VIA is not set -CONFIG_NET_VENDOR_WIZNET=y -CONFIG_NET_VENDOR_XIRCOM=y +# CONFIG_NET_VENDOR_WIZNET is not set +# CONFIG_NET_VENDOR_XIRCOM is not set CONFIG_NET_VRF=m CONFIG_NETWORK_FILESYSTEMS=y CONFIG_NETWORK_PHY_TIMESTAMPING=y CONFIG_NETXEN_NIC=m CONFIG_NET=y -CONFIG_NEW_LEDS=y +# CONFIG_NEW_LEDS is not set CONFIG_NFC_DIGITAL=m # CONFIG_NFC_FDP is not set CONFIG_NFC_HCI=m -CONFIG_NFC=m +# CONFIG_NFC is not set CONFIG_NFC_MICROREAD_I2C=m CONFIG_NFC_MICROREAD=m # CONFIG_NFC_MRVL_I2C is not set @@ -3165,6 +3148,8 @@ CONFIG_NF_LOG_IPV6=m CONFIG_NF_LOG_NETDEV=m CONFIG_NF_NAT=m CONFIG_NF_NAT_SNMP_BASIC=m +# CONFIG_NFP_DEBUG is not set +CONFIG_NFP=m # CONFIG_NFP_NET_DEBUG is not set CONFIG_NFP_NETVF=m CONFIG_NF_REJECT_IPV6=m @@ -3236,9 +3221,10 @@ CONFIG_NFT_REDIR=m CONFIG_NFT_REJECT_IPV4=m CONFIG_NFT_REJECT=m CONFIG_NFT_RT=m +CONFIG_NFT_SET_BITMAP=m CONFIG_NFT_SET_HASH=m CONFIG_NFT_SET_RBTREE=m -CONFIG_N_GSM=m +# CONFIG_N_GSM is not set CONFIG_N_HDLC=m # CONFIG_NI903X_WDT is not set CONFIG_NILFS2_FS=m @@ -3305,7 +3291,7 @@ CONFIG_NORTEL_HERMES=m # CONFIG_NOTIFIER_ERROR_INJECTION is not set CONFIG_NOUVEAU_DEBUG=5 CONFIG_NOUVEAU_DEBUG_DEFAULT=3 -CONFIG_NOZOMI=m +# CONFIG_NOZOMI is not set CONFIG_NR_CPUS=64 CONFIG_NS83820=m CONFIG_NSC_FIR=m @@ -3364,6 +3350,7 @@ CONFIG_PACK_STACK=y CONFIG_PANIC_TIMEOUT=0 CONFIG_PANTHERLORD_FF=y # CONFIG_PARIDE is not set +CONFIG_PARMAN=m CONFIG_PARPORT_1284=y # CONFIG_PARPORT_AX88796 is not set # CONFIG_PARPORT is not set @@ -3421,6 +3408,7 @@ CONFIG_PATA_TOSHIBA=m CONFIG_PATA_TRIFLEX=m CONFIG_PATA_VIA=m CONFIG_PATA_WINBOND=m +# CONFIG_PC104 is not set # CONFIG_PC87413_WDT is not set CONFIG_PCCARD=y CONFIG_PCF50633_ADC=m @@ -3441,7 +3429,7 @@ CONFIG_PCI_IOV=y CONFIG_PCI_MSI=y CONFIG_PCI_NR_FUNCTIONS=64 CONFIG_PCI_PASID=y -CONFIG_PCIPCWATCHDOG=m +# CONFIG_PCIPCWATCHDOG is not set CONFIG_PCI_PRI=y # CONFIG_PCI_REALLOC_ENABLE_AUTO is not set CONFIG_PCI_STUB=y @@ -3477,6 +3465,8 @@ CONFIG_PFAULT=y CONFIG_PHYLIB=m # CONFIG_PHY_PXA_28NM_HSIC is not set # CONFIG_PHY_PXA_28NM_USB2 is not set +# CONFIG_PHY_QCOM_USB_HSIC is not set +# CONFIG_PHY_QCOM_USB_HS is not set # CONFIG_PHY_ST_SPEAR1310_MIPHY is not set # CONFIG_PHY_ST_SPEAR1340_MIPHY is not set # CONFIG_PHY_TUSB1210 is not set @@ -3485,6 +3475,7 @@ CONFIG_PID_NS=y # CONFIG_PINCTRL is not set CONFIG_PINCTRL_MSM8994=m # CONFIG_PINCTRL_SX150X is not set +# CONFIG_PINCTRL_TI_IODELAY is not set # CONFIG_PINMUX is not set CONFIG_PKCS7_MESSAGE_PARSER=y # CONFIG_PKCS7_TEST_KEY is not set @@ -3496,7 +3487,7 @@ CONFIG_PM_ADVANCED_DEBUG=y CONFIG_PMBUS=m CONFIG_PM_DEBUG=y # CONFIG_PM_DEVFREQ_EVENT is not set -CONFIG_PM_DEVFREQ=y +# CONFIG_PM_DEVFREQ is not set # CONFIG_PMIC_ADP5520 is not set # CONFIG_PMIC_DA903X is not set # CONFIG_PM_OPP is not set @@ -3512,11 +3503,11 @@ CONFIG_POSIX_MQUEUE=y # CONFIG_POWER_AVS is not set CONFIG_POWERCAP=y # CONFIG_POWER_RESET_BRCMKONA is not set +# CONFIG_POWER_RESET is not set # CONFIG_POWER_RESET_LTC2952 is not set # CONFIG_POWER_RESET_RESTART is not set # CONFIG_POWER_RESET_SYSCON is not set # CONFIG_POWER_RESET_SYSCON_POWEROFF is not set -CONFIG_POWER_RESET=y # CONFIG_POWER_SUPPLY_DEBUG is not set CONFIG_POWER_SUPPLY=y # CONFIG_PPC_PTDUMP is not set @@ -3546,6 +3537,7 @@ CONFIG_PPTP=m CONFIG_PREEMPT_VOLUNTARY=y CONFIG_PREVENT_FIRMWARE_BUILD=y CONFIG_PRINTER=m +CONFIG_PRINTK_SAFE_LOG_BUF_SHIFT=12 CONFIG_PRINTK_TIME=y # CONFIG_PRINT_QUOTA_WARNING is not set # CONFIG_PRISM2_USB is not set @@ -3560,6 +3552,7 @@ CONFIG_PROFILING=y CONFIG_PROVE_LOCKING=y # CONFIG_PROVE_RCU_REPEATEDLY is not set CONFIG_PROVE_RCU=y +CONFIG_PSAMPLE=m # CONFIG_PSTORE_CONSOLE is not set # CONFIG_PSTORE_FTRACE is not set # CONFIG_PSTORE_PMSG is not set @@ -3569,18 +3562,19 @@ CONFIG_PTP_1588_CLOCK=m CONFIG_PTP_1588_CLOCK_PCH=m # CONFIG_PWM_FSL_FTM is not set CONFIG_PWM_HIBVT=m +# CONFIG_PWM is not set # CONFIG_PWM_PCA9685 is not set -CONFIG_PWM=y CONFIG_PWRSEQ_EMMC=m +# CONFIG_PWRSEQ_SD8787 is not set CONFIG_PWRSEQ_SIMPLE=m # CONFIG_QCA7000 is not set CONFIG_QCOM_ADSP_PIL=m -# CONFIG_QCOM_EBI2 is not set # CONFIG_QCOM_EMAC is not set # CONFIG_QCOM_HIDMA is not set # CONFIG_QCOM_HIDMA_MGMT is not set CONFIG_QDIO=m CONFIG_QEDE=m +CONFIG_QEDF=m CONFIG_QEDI=m CONFIG_QED=m CONFIG_QED_SRIOV=y @@ -3603,7 +3597,7 @@ CONFIG_QUOTACTL=y CONFIG_QUOTA_DEBUG=y CONFIG_QUOTA_NETLINK_INTERFACE=y CONFIG_QUOTA=y -CONFIG_R3964=m +# CONFIG_R3964 is not set CONFIG_R6040=m CONFIG_R8169=m # CONFIG_R8188EU is not set @@ -3630,7 +3624,6 @@ CONFIG_RADIO_TERRATEC=m CONFIG_RADIO_TRUST=m CONFIG_RADIO_TYPHOON=m CONFIG_RADIO_WL1273=m -# CONFIG_RADIO_WL128X is not set # depends on TI_ST which we don't enable CONFIG_RADIO_ZOLTRIX=m CONFIG_RAID_ATTRS=m # CONFIG_RANDOM32_SELFTEST is not set @@ -3674,6 +3667,7 @@ CONFIG_REALTEK_AUTOPM=y CONFIG_REALTEK_PHY=m CONFIG_REGMAP_I2C=m CONFIG_REGMAP=y +CONFIG_REGULATOR_CPCAP=m # CONFIG_REGULATOR_DEBUG is not set # CONFIG_REGULATOR is not set # CONFIG_REISERFS_CHECK is not set @@ -3685,15 +3679,16 @@ CONFIG_REISERFS_PROC_INFO=y CONFIG_RELAY=y # CONFIG_RELOCATABLE_TEST is not set CONFIG_REMOTEPROC=m +# CONFIG_RESET_CONTROLLER is not set # CONFIG_RFD_FTL is not set CONFIG_RFKILL_GPIO=m CONFIG_RFKILL_INPUT=y -CONFIG_RFKILL=m +# CONFIG_RFKILL is not set CONFIG_RING_BUFFER_BENCHMARK=m # CONFIG_RING_BUFFER_STARTUP_TEST is not set # CONFIG_RIO is not set -CONFIG_RMI4_CORE=m -# CONFIG_RMI4_F03 is not set +# CONFIG_RMI4_CORE is not set +CONFIG_RMI4_F03=y CONFIG_RMI4_F11=y CONFIG_RMI4_F12=y CONFIG_RMI4_F30=y @@ -3907,51 +3902,51 @@ CONFIG_SCM_BLOCK_CLUSTER_WRITE=y CONFIG_SCM_BLOCK=m CONFIG_SCM_BUS=y # CONFIG_SCR24X is not set -CONFIG_SCSI_3W_9XXX=m -CONFIG_SCSI_3W_SAS=m -CONFIG_SCSI_AACRAID=m -CONFIG_SCSI_ACARD=m +# CONFIG_SCSI_3W_9XXX is not set +# CONFIG_SCSI_3W_SAS is not set +# CONFIG_SCSI_AACRAID is not set +# CONFIG_SCSI_ACARD is not set # CONFIG_SCSI_ADVANSYS is not set -CONFIG_SCSI_AIC79XX=m -CONFIG_SCSI_AIC7XXX=m +# CONFIG_SCSI_AIC79XX is not set +# CONFIG_SCSI_AIC7XXX is not set # CONFIG_SCSI_AIC94XX is not set -CONFIG_SCSI_AM53C974=m -CONFIG_SCSI_ARCMSR=m -CONFIG_SCSI_BFA_FC=m -CONFIG_SCSI_BNX2_ISCSI=m -CONFIG_SCSI_BNX2X_FCOE=m +# CONFIG_SCSI_AM53C974 is not set +# CONFIG_SCSI_ARCMSR is not set +# CONFIG_SCSI_BFA_FC is not set +# CONFIG_SCSI_BNX2_ISCSI is not set +# CONFIG_SCSI_BNX2X_FCOE is not set CONFIG_SCSI_BUSLOGIC=m -CONFIG_SCSI_CHELSIO_FCOE=m +# CONFIG_SCSI_CHELSIO_FCOE is not set CONFIG_SCSI_CONSTANTS=y -CONFIG_SCSI_CXGB3_ISCSI=m -CONFIG_SCSI_CXGB4_ISCSI=m -CONFIG_SCSI_DC395x=m +# CONFIG_SCSI_CXGB3_ISCSI is not set +# CONFIG_SCSI_CXGB4_ISCSI is not set +# CONFIG_SCSI_DC395x is not set CONFIG_SCSI_DEBUG=m CONFIG_SCSI_DH_ALUA=m CONFIG_SCSI_DH_EMC=m CONFIG_SCSI_DH_HP_SW=m +# CONFIG_SCSI_DH is not set CONFIG_SCSI_DH_RDAC=m -CONFIG_SCSI_DH=y -CONFIG_SCSI_DMX3191D=m +# CONFIG_SCSI_DMX3191D is not set # CONFIG_SCSI_DPT_I2O is not set # CONFIG_SCSI_EATA is not set # CONFIG_SCSI_EATA_PIO is not set CONFIG_SCSI_ENCLOSURE=m -CONFIG_SCSI_ESAS2R=m +# CONFIG_SCSI_ESAS2R is not set CONFIG_SCSI_FC_ATTRS=m CONFIG_SCSI_FLASHPOINT=y # CONFIG_SCSI_FUTURE_DOMAIN is not set CONFIG_SCSI_GDTH=m # CONFIG_SCSI_HISI_SAS is not set -CONFIG_SCSI_HPSA=m -CONFIG_SCSI_HPTIOP=m +# CONFIG_SCSI_HPSA is not set +# CONFIG_SCSI_HPTIOP is not set # CONFIG_SCSI_IMM is not set -CONFIG_SCSI_INIA100=m -CONFIG_SCSI_INITIO=m +# CONFIG_SCSI_INIA100 is not set +# CONFIG_SCSI_INITIO is not set CONFIG_SCSI_IPR_DUMP=y CONFIG_SCSI_IPR=m CONFIG_SCSI_IPR_TRACE=y -CONFIG_SCSI_IPS=m +# CONFIG_SCSI_IPS is not set CONFIG_SCSI_ISCI=m CONFIG_SCSI_ISCSI_ATTRS=m # CONFIG_SCSI_IZIP_EPP16 is not set @@ -3960,28 +3955,28 @@ CONFIG_SCSI_LOGGING=y # CONFIG_SCSI_LOWLEVEL_PCMCIA is not set CONFIG_SCSI_LOWLEVEL=y # CONFIG_SCSI_LPFC_DEBUG_FS is not set -CONFIG_SCSI_LPFC=m -CONFIG_SCSI_MPT2SAS=m +# CONFIG_SCSI_LPFC is not set +# CONFIG_SCSI_MPT2SAS is not set CONFIG_SCSI_MPT2SAS_MAX_SGE=128 -CONFIG_SCSI_MPT3SAS=m +# CONFIG_SCSI_MPT3SAS is not set CONFIG_SCSI_MPT3SAS_MAX_SGE=128 # CONFIG_SCSI_MQ_DEFAULT is not set # CONFIG_SCSI_MVSAS_DEBUG is not set -CONFIG_SCSI_MVSAS=m +# CONFIG_SCSI_MVSAS is not set CONFIG_SCSI_MVSAS_TASKLET=y -CONFIG_SCSI_MVUMI=m +# CONFIG_SCSI_MVUMI is not set # CONFIG_SCSI_NSP32 is not set # CONFIG_SCSI_OSD_DEBUG is not set CONFIG_SCSI_OSD_DPRINT_SENSE=1 CONFIG_SCSI_OSD_INITIATOR=m CONFIG_SCSI_OSD_ULD=m -CONFIG_SCSI_PM8001=m -CONFIG_SCSI_PMCRAID=m +# CONFIG_SCSI_PM8001 is not set +# CONFIG_SCSI_PMCRAID is not set # CONFIG_SCSI_PPA is not set CONFIG_SCSI_PROC_FS=y -CONFIG_SCSI_QLA_FC=m -CONFIG_SCSI_QLA_ISCSI=m -CONFIG_SCSI_QLOGIC_1280=m +# CONFIG_SCSI_QLA_FC is not set +# CONFIG_SCSI_QLA_ISCSI is not set +# CONFIG_SCSI_QLOGIC_1280 is not set CONFIG_SCSI_SAS_ATA=y CONFIG_SCSI_SAS_ATTRS=m CONFIG_SCSI_SAS_HOST_SMP=y @@ -3989,22 +3984,22 @@ CONFIG_SCSI_SAS_LIBSAS=m CONFIG_SCSI_SCAN_ASYNC=y CONFIG_SCSI_SMARTPQI=m # CONFIG_SCSI_SNIC_DEBUG_FS is not set -CONFIG_SCSI_SNIC=m +# CONFIG_SCSI_SNIC is not set CONFIG_SCSI_SPI_ATTRS=m CONFIG_SCSI_SRP_ATTRS=m CONFIG_SCSI_SRP=m -CONFIG_SCSI_STEX=m -CONFIG_SCSI_SYM53C8XX_2=m +# CONFIG_SCSI_STEX is not set +# CONFIG_SCSI_SYM53C8XX_2 is not set CONFIG_SCSI_SYM53C8XX_DEFAULT_TAGS=16 CONFIG_SCSI_SYM53C8XX_DMA_ADDRESSING_MODE=1 CONFIG_SCSI_SYM53C8XX_MAX_TAGS=64 CONFIG_SCSI_SYM53C8XX_MMIO=y # CONFIG_SCSI_UFS_DWC_TC_PCI is not set -CONFIG_SCSI_UFSHCD=m +# CONFIG_SCSI_UFSHCD is not set CONFIG_SCSI_UFSHCD_PCI=m # CONFIG_SCSI_UFSHCD_PLATFORM is not set CONFIG_SCSI_VIRTIO=m -CONFIG_SCSI_WD719X=m +# CONFIG_SCSI_WD719X is not set CONFIG_SCSI=y CONFIG_SCTP_COOKIE_HMAC_MD5=y CONFIG_SCTP_COOKIE_HMAC_SHA1=y @@ -4057,10 +4052,10 @@ CONFIG_SENSORS_ADT7462=m CONFIG_SENSORS_ADT7470=m CONFIG_SENSORS_ADT7475=m CONFIG_SENSORS_AMC6821=m -CONFIG_SENSORS_APDS990X=m +# CONFIG_SENSORS_APDS990X is not set CONFIG_SENSORS_ASC7621=m CONFIG_SENSORS_ATXP1=m -CONFIG_SENSORS_BH1770=m +# CONFIG_SENSORS_BH1770 is not set CONFIG_SENSORS_DME1737=m CONFIG_SENSORS_DS1621=m CONFIG_SENSORS_DS620=m @@ -4093,8 +4088,8 @@ CONFIG_SENSORS_INA3221=m CONFIG_SENSORS_IT87=m CONFIG_SENSORS_JC42=m CONFIG_SENSORS_LINEAGE=m -CONFIG_SENSORS_LIS3_I2C=m -CONFIG_SENSORS_LIS3LV02D=m +# CONFIG_SENSORS_LIS3_I2C is not set +# CONFIG_SENSORS_LIS3LV02D is not set # CONFIG_SENSORS_LIS3_SPI is not set CONFIG_SENSORS_LM25066=m CONFIG_SENSORS_LM63=m @@ -4161,6 +4156,7 @@ CONFIG_SENSORS_SIS5595=m CONFIG_SENSORS_SMSC47B397=m CONFIG_SENSORS_SMSC47M192=m CONFIG_SENSORS_SMSC47M1=m +# CONFIG_SENSORS_STTS751 is not set CONFIG_SENSORS_TC654=m CONFIG_SENSORS_TC74=m CONFIG_SENSORS_THMC50=m @@ -4170,7 +4166,7 @@ CONFIG_SENSORS_TMP108=m CONFIG_SENSORS_TMP401=m CONFIG_SENSORS_TMP421=m CONFIG_SENSORS_TPS40422=m -CONFIG_SENSORS_TSL2550=m +# CONFIG_SENSORS_TSL2550 is not set # CONFIG_SENSORS_TSL2563 is not set CONFIG_SENSORS_UCD9000=m CONFIG_SENSORS_UCD9200=m @@ -4196,6 +4192,7 @@ CONFIG_SERIAL_8250_CS=m # CONFIG_SERIAL_8250_DEPRECATED_OPTIONS is not set # CONFIG_SERIAL_8250_DETECT_IRQ is not set CONFIG_SERIAL_8250_DW=y +CONFIG_SERIAL_8250_EXAR=m CONFIG_SERIAL_8250_EXTENDED=y # CONFIG_SERIAL_8250_FINTEK is not set # CONFIG_SERIAL_8250_INGENIC is not set @@ -4204,6 +4201,7 @@ CONFIG_SERIAL_8250_MANY_PORTS=y # CONFIG_SERIAL_8250_MID is not set CONFIG_SERIAL_8250_MOXA=m CONFIG_SERIAL_8250_NR_UARTS=32 +CONFIG_SERIAL_8250_PCI=m CONFIG_SERIAL_8250_RSA=y CONFIG_SERIAL_8250_RT288X=y CONFIG_SERIAL_8250_RUNTIME_UARTS=32 @@ -4215,13 +4213,15 @@ CONFIG_SERIAL_ARC_NR_PORTS=1 # CONFIG_SERIAL_CONEXANT_DIGICOLOR is not set CONFIG_SERIAL_CORE_CONSOLE=y CONFIG_SERIAL_CORE=m +CONFIG_SERIAL_DEV_BUS=y +CONFIG_SERIAL_DEV_CTRL_TTYPORT=y # CONFIG_SERIAL_FSL_LPUART is not set # CONFIG_SERIAL_IFX6X60 is not set CONFIG_SERIAL_JSM=m # CONFIG_SERIAL_KGDB_NMI is not set # CONFIG_SERIAL_MAX3100 is not set # CONFIG_SERIAL_MAX310X is not set -CONFIG_SERIAL_NONSTANDARD=y +# CONFIG_SERIAL_NONSTANDARD is not set # CONFIG_SERIAL_PCH_UART is not set # CONFIG_SERIAL_RP2 is not set # CONFIG_SERIAL_SC16IS7XX is not set @@ -4236,13 +4236,13 @@ CONFIG_SERIO_ARC_PS2=m # CONFIG_SERIO_CT82C710 is not set CONFIG_SERIO_I8042=y # CONFIG_SERIO is not set -CONFIG_SERIO_LIBPS2=y +CONFIG_SERIO_LIBPS2=m # CONFIG_SERIO_OLPC_APSP is not set # CONFIG_SERIO_PARKBD is not set # CONFIG_SERIO_PCIPS2 is not set # CONFIG_SERIO_PS2MULT is not set CONFIG_SERIO_RAW=m -CONFIG_SERIO_SERPORT=y +CONFIG_SERIO_SERPORT=m CONFIG_SFC_FALCON=m CONFIG_SFC_FALCON_MTD=y # CONFIG_SFC is not set @@ -4276,6 +4276,7 @@ CONFIG_SLUB_CPU_PARTIAL=y CONFIG_SLUB=y CONFIG_SMARTJOYPLUS_FF=y CONFIG_SMC_IRCC_FIR=m +# CONFIG_SMC is not set # CONFIG_SM_FTL is not set CONFIG_SMP=y CONFIG_SMSC911X=m @@ -4422,7 +4423,7 @@ CONFIG_SND_SEQUENCER=m CONFIG_SND_SEQUENCER_OSS=y CONFIG_SND_SERIAL_U16550=m CONFIG_SND_SIMPLE_CARD=m -# CONFIG_SND_SIMPLE_SCU_CARD is not set +CONFIG_SND_SIMPLE_SCU_CARD=m CONFIG_SND_SIS7019=m # CONFIG_SND_SOC_ADAU1701 is not set # CONFIG_SND_SOC_ADAU7002 is not set @@ -4473,6 +4474,7 @@ CONFIG_SND_SOC=m # CONFIG_SND_SOC_MAX9860 is not set # CONFIG_SND_SOC_MSM8916_WCD_ANALOG is not set # CONFIG_SND_SOC_MSM8916_WCD_DIGITAL is not set +# CONFIG_SND_SOC_NAU8540 is not set # CONFIG_SND_SOC_NAU8810 is not set # CONFIG_SND_SOC_PCM1681 is not set # CONFIG_SND_SOC_PCM179X_I2C is not set @@ -4495,6 +4497,7 @@ CONFIG_SND_SOC_SPDIF=m # CONFIG_SND_SOC_STI_SAS is not set # CONFIG_SND_SOC_TAS2552 is not set # CONFIG_SND_SOC_TAS5086 is not set +# CONFIG_SND_SOC_TAS571X is not set # CONFIG_SND_SOC_TAS5720 is not set # CONFIG_SND_SOC_TFA9879 is not set # CONFIG_SND_SOC_TLV320AIC23_I2C is not set @@ -4527,7 +4530,6 @@ CONFIG_SND_SOC_SPDIF=m # CONFIG_SND_SOC_XTFPGA_I2S is not set CONFIG_SND_SONICVIBES=m # CONFIG_SND_SPI is not set -CONFIG_SND_SUN8I_CODEC_ANALOG=m # CONFIG_SND_SUPPORT_OLD_API is not set CONFIG_SND_TRIDENT=m CONFIG_SND_USB_6FIRE=m @@ -4553,6 +4555,7 @@ CONFIG_SND_VX222=m CONFIG_SND_YMFPCI=m # CONFIG_SOC_CAMERA is not set # CONFIG_SOC_TI is not set +# CONFIG_SOC_ZTE is not set CONFIG_SOFT_WATCHDOG=m CONFIG_SOLARIS_X86_PARTITION=y # CONFIG_SOLO6X10 is not set @@ -4593,6 +4596,7 @@ CONFIG_SQUASHFS_XATTR=y CONFIG_SQUASHFS_XZ=y CONFIG_SQUASHFS_ZLIB=y # CONFIG_SRAM is not set +# CONFIG_SRF08 is not set # CONFIG_SSB_DEBUG is not set CONFIG_SSB_DRIVER_GPIO=y CONFIG_SSB_DRIVER_PCICORE=y @@ -4611,6 +4615,7 @@ CONFIG_STACK_VALIDATION=y CONFIG_STAGING_MEDIA=y CONFIG_STANDALONE=y # CONFIG_STATIC_KEYS_SELFTEST is not set +# CONFIG_STATIC_USERMODEHELPER is not set CONFIG_STE10XP=m # CONFIG_STE_MODEM_RPROC is not set CONFIG_STK3310=m @@ -4625,10 +4630,6 @@ CONFIG_STMMAC_ETH=m CONFIG_STRICT_DEVMEM=y CONFIG_STRIP_ASM_SYMS=y # CONFIG_STRIP is not set -# CONFIG_SUN50I_A64_CCU is not set -# CONFIG_SUN6I_A31_CCU is not set -# CONFIG_SUN8I_A23_CCU is not set -# CONFIG_SUN8I_A33_CCU is not set CONFIG_SUNDANCE=m # CONFIG_SUNDANCE_MMIO is not set CONFIG_SUNGEM=m @@ -4637,7 +4638,6 @@ CONFIG_SUNRPC_DEBUG=y CONFIG_SUNRPC_GSS=m CONFIG_SUNRPC=m CONFIG_SUNRPC_XPRT_RDMA=m -# CONFIG_SUNXI_CCU is not set CONFIG_SURFACE_3_BUTTON=m CONFIG_SURFACE3_WMI=m # CONFIG_SUSPEND is not set @@ -4718,8 +4718,6 @@ CONFIG_TCP_CONG_YEAH=m CONFIG_TCP_MD5SIG=y # CONFIG_TCS3414 is not set # CONFIG_TCS3472 is not set -CONFIG_TEGRA_GMI=m -CONFIG_TEGRA_IVC=y CONFIG_TEHUTI=m CONFIG_TEKRAM_DONGLE=m CONFIG_TELCLOCK=m @@ -4733,9 +4731,11 @@ CONFIG_TEST_ASYNC_DRIVER_PROBE=m CONFIG_TEST_KSTRTOX=y CONFIG_TEST_LIST_SORT=y # CONFIG_TEST_LKM is not set +# CONFIG_TEST_PARMAN is not set # CONFIG_TEST_POWER is not set # CONFIG_TEST_PRINTF is not set # CONFIG_TEST_RHASHTABLE is not set +# CONFIG_TEST_SORT is not set # CONFIG_TEST_STATIC_KEYS is not set # CONFIG_TEST_STRING_HELPERS is not set # CONFIG_TEST_UDELAY is not set @@ -4761,6 +4761,7 @@ CONFIG_THRUSTMASTER_FF=y # CONFIG_TI_ADC128S052 is not set # CONFIG_TI_ADC161S626 is not set # CONFIG_TI_ADS1015 is not set +# CONFIG_TI_ADS7950 is not set # CONFIG_TI_ADS8688 is not set # CONFIG_TI_CPSW_ALE is not set # CONFIG_TI_DAC7512 is not set @@ -4775,9 +4776,11 @@ CONFIG_TIPC_MEDIA_UDP=y CONFIG_TI_SCI_PROTOCOL=m # CONFIG_TI_ST is not set # CONFIG_TI_SYSCON_RESET is not set +# CONFIG_TI_TLC4541 is not set CONFIG_TLAN=m # CONFIG_TMD_HERMES is not set # CONFIG_TMP006 is not set +# CONFIG_TMP007 is not set CONFIG_TMPFS_POSIX_ACL=y CONFIG_TMPFS_XATTR=y CONFIG_TMPFS=y @@ -4852,6 +4855,7 @@ CONFIG_TOUCHSCREEN_WACOM_I2C=m CONFIG_TOUCHSCREEN_WACOM_W8001=m # CONFIG_TOUCHSCREEN_WDT87XX_I2C is not set # CONFIG_TOUCHSCREEN_WM97XX is not set +CONFIG_TOUCHSCREEN_ZET6223=m CONFIG_TOUCHSCREEN_ZFORCE=m # CONFIG_TPL0102 is not set # CONFIG_TPS6105X is not set @@ -4902,7 +4906,7 @@ CONFIG_UIO_AEC=m CONFIG_UIO_CIF=m # CONFIG_UIO_DMEM_GENIRQ is not set CONFIG_UIO_HV_GENERIC=m -CONFIG_UIO=m +# CONFIG_UIO is not set # CONFIG_UIO_MF624 is not set # CONFIG_UIO_NETX is not set CONFIG_UIO_PCI_GENERIC=m @@ -4918,7 +4922,7 @@ CONFIG_UNIX_DIAG=m CONFIG_UNIXWARE_DISKLABEL=y CONFIG_UNIX=y CONFIG_UNUSED_SYMBOLS=y -CONFIG_UPROBE_EVENT=y +CONFIG_UPROBE_EVENTS=y # CONFIG_US5182D is not set CONFIG_USB_ACM=m CONFIG_USB_ADUTUX=m @@ -4935,6 +4939,7 @@ CONFIG_USB_CATC=m CONFIG_USB_CDC_PHONET=m CONFIG_USB_CHAOSKEY=m # CONFIG_USB_CHIPIDEA is not set +# CONFIG_USB_CHIPIDEA_ULPI is not set CONFIG_USB_CXACRU=m # CONFIG_USB_CYPRESS_CY7C63 is not set # CONFIG_USB_CYTHERM is not set @@ -5019,6 +5024,7 @@ CONFIG_USB_HID=y CONFIG_USB_HSIC_USB3503=m CONFIG_USB_HSIC_USB4604=m CONFIG_USB_HSO=m +CONFIG_USB_HUB_USB251XB=m CONFIG_USB_HWA_HCD=m CONFIG_USB_IDMOUSE=m CONFIG_USB_IOWARRIOR=m @@ -5163,6 +5169,7 @@ CONFIG_USB_SERIAL_SPCP8X5=m CONFIG_USB_SERIAL_SSU100=m CONFIG_USB_SERIAL_SYMBOL=m CONFIG_USB_SERIAL_TI=m +CONFIG_USB_SERIAL_UPD78F0730=m CONFIG_USB_SERIAL_VISOR=m CONFIG_USB_SERIAL_WHITEHEAT=m # CONFIG_USB_SERIAL_WISHBONE is not set @@ -5251,6 +5258,7 @@ CONFIG_VFIO_MDEV=m CONFIG_VFIO_PCI=m CONFIG_VGA_ARB_MAX_GPUS=16 CONFIG_VGA_ARB=y +# CONFIG_VGACON_SOFT_SCROLLBACK_PERSISTENT_ENABLE_BY_DEFAULT is not set CONFIG_VGACON_SOFT_SCROLLBACK_SIZE=64 CONFIG_VGACON_SOFT_SCROLLBACK=y CONFIG_VGA_CONSOLE=y @@ -5301,6 +5309,7 @@ CONFIG_VIDEO_HDPVR=m CONFIG_VIDEO_HEXIUM_GEMINI=m CONFIG_VIDEO_HEXIUM_ORION=m # CONFIG_VIDEO_IVTV_ALSA is not set +# CONFIG_VIDEO_IVTV_DEPRECATED_IOCTLS is not set CONFIG_VIDEO_IVTV=m # CONFIG_VIDEO_M5MOLS is not set # CONFIG_VIDEO_MEM2MEM_DEINTERLACE is not set @@ -5322,7 +5331,6 @@ CONFIG_VIDEO_SAA7134_RC=y CONFIG_VIDEO_SAA7146=m CONFIG_VIDEO_SAA7146_VV=m CONFIG_VIDEO_SAA7164=m -CONFIG_VIDEO_SAMSUNG_S5P_CEC=m # CONFIG_VIDEO_SH_MOBILE_CEU is not set # CONFIG_VIDEO_SH_MOBILE_CSI2 is not set # CONFIG_VIDEO_SH_VEU is not set @@ -5358,6 +5366,7 @@ CONFIG_VIDEO_ZORAN_ZR36060=m # CONFIG_VIRT_DRIVERS is not set CONFIG_VIRTIO_BALLOON=m CONFIG_VIRTIO_BLK=m +CONFIG_VIRTIO_BLK_SCSI=y CONFIG_VIRTIO_CONSOLE=y CONFIG_VIRTIO_INPUT=m # CONFIG_VIRTIO_MMIO_CMDLINE_DEVICES is not set @@ -5375,8 +5384,6 @@ CONFIG_VLSI_FIR=m CONFIG_VMCP=y # CONFIG_VME_BUS is not set CONFIG_VMLOGRDR=m -CONFIG_VMWARE_BALLOON=m -CONFIG_VMWARE_PVSCSI=m # CONFIG_VMXNET3 is not set CONFIG_VORTEX=m CONFIG_VSOCKETS=m @@ -5398,6 +5405,7 @@ CONFIG_W1_MASTER_DS2490=m # CONFIG_W1_MASTER_GPIO is not set # CONFIG_W1_MASTER_MATROX is not set CONFIG_W1_SLAVE_BQ27000=m +CONFIG_W1_SLAVE_DS2405=m CONFIG_W1_SLAVE_DS2406=m CONFIG_W1_SLAVE_DS2408=m # CONFIG_W1_SLAVE_DS2408_READBACK is not set @@ -5426,7 +5434,7 @@ CONFIG_WATCHDOG=y # CONFIG_WCN36XX_DEBUGFS is not set CONFIG_WCN36XX=m CONFIG_WDAT_WDT=m -CONFIG_WDTPCI=m +# CONFIG_WDTPCI is not set CONFIG_WIL6210_ISR_COR=y CONFIG_WIL6210=m # CONFIG_WIL6210_TRACING is not set @@ -5471,6 +5479,7 @@ CONFIG_WM8350_POWER=m CONFIG_WM8350_WATCHDOG=m # CONFIG_WQ_POWER_EFFICIENT_DEFAULT is not set CONFIG_WQ_WATCHDOG=y +# CONFIG_WW_MUTEX_SELFTEST is not set # CONFIG_X25 is not set CONFIG_X86_BOOTPARAM_MEMORY_CORRUPTION_CHECK=y CONFIG_X86_PTDUMP=y @@ -5488,7 +5497,7 @@ CONFIG_XFS_QUOTA=y # CONFIG_XILINX_DMA is not set CONFIG_XILINX_GMII2RGMII=m # CONFIG_XILINX_WATCHDOG is not set -CONFIG_XILLYBUS=m +# CONFIG_XILLYBUS is not set # CONFIG_XILLYBUS_OF is not set CONFIG_XILLYBUS_PCIE=m CONFIG_XZ_DEC_IA64=y diff --git a/kernel-s390x.config b/kernel-s390x.config index a46da965f..afaecb425 100644 --- a/kernel-s390x.config +++ b/kernel-s390x.config @@ -145,10 +145,10 @@ CONFIG_AIX_PARTITION=y # CONFIG_AL3320A is not set CONFIG_ALI_FIR=m CONFIG_ALIM1535_WDT=m -CONFIG_ALIM7101_WDT=m +# CONFIG_ALIM7101_WDT is not set # CONFIG_ALTERA_MBOX is not set -CONFIG_ALTERA_STAPL=m -CONFIG_ALTERA_TSE=m +# CONFIG_ALTERA_STAPL is not set +# CONFIG_ALTERA_TSE is not set CONFIG_ALX=m # CONFIG_AM2315 is not set CONFIG_AMD8111_ETH=m @@ -158,7 +158,7 @@ CONFIG_AMD_PHY=m CONFIG_AMIGA_PARTITION=y # CONFIG_ANDROID is not set # CONFIG_APDS9300 is not set -CONFIG_APDS9802ALS=m +# CONFIG_APDS9802ALS is not set # CONFIG_APDS9960 is not set CONFIG_APM_POWER=m CONFIG_APPLDATA_BASE=y @@ -169,10 +169,7 @@ CONFIG_APPLDATA_OS=m # CONFIG_APPLICOM is not set CONFIG_AQUANTIA_PHY=m CONFIG_AR5523=m -# CONFIG_ARCH_TEGRA_186_SOC is not set # CONFIG_ARCNET is not set -# CONFIG_ARM64_PTDUMP is not set -# CONFIG_ARM_SCPI_PROTOCOL is not set # CONFIG_AS3935 is not set CONFIG_ASYMMETRIC_KEY_TYPE=y CONFIG_ASYNC_RAID6_TEST=m @@ -325,7 +322,6 @@ CONFIG_BATMAN_ADV_NC=y # CONFIG_BATTERY_DS2781 is not set # CONFIG_BATTERY_DS2782 is not set # CONFIG_BATTERY_GAUGE_LTC2941 is not set -# CONFIG_BATTERY_GOLDFISH is not set # CONFIG_BATTERY_MAX17040 is not set # CONFIG_BATTERY_MAX17042 is not set # CONFIG_BATTERY_SBS is not set @@ -351,7 +347,7 @@ CONFIG_BCMA_HOST_PCI=y # CONFIG_BCMA is not set CONFIG_BCMGENET=m # CONFIG_BCM_KONA_USB2_PHY is not set -CONFIG_BE2ISCSI=m +# CONFIG_BE2ISCSI is not set # CONFIG_BE2NET_HWMON is not set CONFIG_BE2NET=m # CONFIG_BEFS_DEBUG is not set @@ -367,12 +363,13 @@ CONFIG_BINFMT_MISC=m CONFIG_BINFMT_SCRIPT=y CONFIG_BLK_CGROUP=y # CONFIG_BLK_CMDLINE_PARSER is not set -CONFIG_BLK_CPQ_CISS_DA=m -CONFIG_BLK_DEV_3W_XXXX_RAID=m +# CONFIG_BLK_CPQ_CISS_DA is not set +CONFIG_BLK_DEBUG_FS=y +# CONFIG_BLK_DEV_3W_XXXX_RAID is not set CONFIG_BLK_DEV_BSGLIB=y CONFIG_BLK_DEV_BSG=y # CONFIG_BLK_DEV_CRYPTOLOOP is not set -CONFIG_BLK_DEV_DAC960=m +# CONFIG_BLK_DEV_DAC960 is not set CONFIG_BLK_DEV_DM=y CONFIG_BLK_DEV_DRBD=m CONFIG_BLK_DEV_FD=m @@ -397,16 +394,17 @@ CONFIG_BLK_DEV_RAM_SIZE=16384 CONFIG_BLK_DEV_RBD=m # CONFIG_BLK_DEV_RSXX is not set CONFIG_BLK_DEV_SD=y -CONFIG_BLK_DEV_SKD=m +# CONFIG_BLK_DEV_SKD is not set CONFIG_BLK_DEV_SR_VENDOR=y CONFIG_BLK_DEV_SR=y -CONFIG_BLK_DEV_SX8=m +# CONFIG_BLK_DEV_SX8 is not set CONFIG_BLK_DEV_THROTTLING=y # CONFIG_BLK_DEV_UB is not set -CONFIG_BLK_DEV_UMEM=m +# CONFIG_BLK_DEV_UMEM is not set CONFIG_BLK_DEV_XPRAM=m CONFIG_BLK_DEV=y CONFIG_BLK_DEV_ZONED=y +CONFIG_BLK_SED_OPAL=y CONFIG_BLK_WBT_MQ=y # CONFIG_BLK_WBT_SQ is not set CONFIG_BLK_WBT=y @@ -502,6 +500,7 @@ CONFIG_BT_HCIUART_INTEL=y CONFIG_BT_HCIUART_LL=y CONFIG_BT_HCIUART=m CONFIG_BT_HCIUART_MRVL=y +CONFIG_BT_HCIUART_NOKIA=m CONFIG_BT_HCIUART_QCA=y CONFIG_BT_HCIVHCI=m CONFIG_BT_HIDP=m @@ -552,10 +551,10 @@ CONFIG_CAN_ESD_USB2=m CONFIG_CAN_GS_USB=m CONFIG_CAN_GW=m CONFIG_CAN_IFI_CANFD=m +# CONFIG_CAN is not set CONFIG_CAN_KVASER_PCI=m CONFIG_CAN_KVASER_USB=m CONFIG_CAN_LEDS=y -CONFIG_CAN=m CONFIG_CAN_M_CAN=m # CONFIG_CAN_MCP251X is not set CONFIG_CAN_PEAK_PCIEC=y @@ -602,6 +601,7 @@ CONFIG_CEPH_LIB=m # CONFIG_CEPH_LIB_USE_DNS_RESOLVER is not set CONFIG_CFAG12864B=m CONFIG_CFAG12864B_RATE=20 +CONFIG_CFG80211_CRDA_SUPPORT=y CONFIG_CFG80211_DEBUGFS=y CONFIG_CFG80211_DEFAULT_PS=y # CONFIG_CFG80211_DEVELOPER_WARNINGS is not set @@ -619,6 +619,7 @@ CONFIG_CGROUP_NET_CLASSID=y CONFIG_CGROUP_NET_PRIO=y CONFIG_CGROUP_PERF=y CONFIG_CGROUP_PIDS=y +# CONFIG_CGROUP_RDMA is not set CONFIG_CGROUP_SCHED=y CONFIG_CGROUPS=y # CONFIG_CHARGER_BQ2415X is not set @@ -626,6 +627,7 @@ CONFIG_CGROUPS=y # CONFIG_CHARGER_BQ24257 is not set # CONFIG_CHARGER_BQ24735 is not set # CONFIG_CHARGER_BQ25890 is not set +# CONFIG_CHARGER_DETECTOR_MAX14656 is not set # CONFIG_CHARGER_GPIO is not set # CONFIG_CHARGER_ISP1704 is not set # CONFIG_CHARGER_LP8727 is not set @@ -633,7 +635,8 @@ CONFIG_CGROUPS=y # CONFIG_CHARGER_PCF50633 is not set # CONFIG_CHARGER_QCOM_SMBB is not set # CONFIG_CHARGER_RT9455 is not set -CONFIG_CHARGER_SMB347=m +# CONFIG_CHARGER_SBS is not set +# CONFIG_CHARGER_SMB347 is not set # CONFIG_CHECKPOINT_RESTORE is not set CONFIG_CHECK_STACK=y CONFIG_CHELSIO_T1_1G=y @@ -673,6 +676,7 @@ CONFIG_CLS_U32_PERF=y CONFIG_CM32181=m # CONFIG_CM3232 is not set # CONFIG_CM3323 is not set +CONFIG_CM3605=m # CONFIG_CM36651 is not set # CONFIG_CMA is not set # CONFIG_CMDLINE_PARTITION is not set @@ -684,23 +688,12 @@ CONFIG_CODA_FS=m # CONFIG_COMMON_CLK_CDCE706 is not set # CONFIG_COMMON_CLK_CDCE925 is not set # CONFIG_COMMON_CLK_CS2000_CP is not set -# CONFIG_COMMON_CLK_HI3516CV300 is not set -# CONFIG_COMMON_CLK_HI3519 is not set -# CONFIG_COMMON_CLK_HI3798CV200 is not set -# CONFIG_COMMON_CLK_MT2701_BDPSYS is not set -# CONFIG_COMMON_CLK_MT2701_ETHSYS is not set -# CONFIG_COMMON_CLK_MT2701_HIFSYS is not set -# CONFIG_COMMON_CLK_MT2701_IMGSYS is not set -# CONFIG_COMMON_CLK_MT2701 is not set -# CONFIG_COMMON_CLK_MT2701_MMSYS is not set -# CONFIG_COMMON_CLK_MT2701_VDECSYS is not set -# CONFIG_COMMON_CLK_MT8135 is not set -# CONFIG_COMMON_CLK_MT8173 is not set -# CONFIG_COMMON_CLK_OXNAS is not set # CONFIG_COMMON_CLK_PWM is not set # CONFIG_COMMON_CLK_SI514 is not set # CONFIG_COMMON_CLK_SI5351 is not set +# CONFIG_COMMON_CLK_VC5 is not set # CONFIG_COMMON_CLK_XLNX_CLKWZRD is not set +# CONFIG_COMMON_RESET_HI3660 is not set CONFIG_COMPACTION=y # CONFIG_COMPAT_BRK is not set CONFIG_COMPAT=y @@ -745,6 +738,7 @@ CONFIG_CROSS_COMPILE="" CONFIG_CROSS_MEMORY_ATTACH=y CONFIG_CRYPTO_842=m CONFIG_CRYPTO_AES_S390=m +CONFIG_CRYPTO_AES_TI=m CONFIG_CRYPTO_AES=y CONFIG_CRYPTO_ANSI_CPRNG=m CONFIG_CRYPTO_ANUBIS=m @@ -760,13 +754,10 @@ CONFIG_CRYPTO_CCM=m CONFIG_CRYPTO_CHACHA20=m CONFIG_CRYPTO_CHACHA20POLY1305=m CONFIG_CRYPTO_CMAC=m -CONFIG_CRYPTO_CRC32_ARM_CE=m -CONFIG_CRYPTO_CRC32C_INTEL=m CONFIG_CRYPTO_CRC32C_VPMSUM=m CONFIG_CRYPTO_CRC32C=y CONFIG_CRYPTO_CRC32=m CONFIG_CRYPTO_CRC32_S390=m -CONFIG_CRYPTO_CRCT10DIF_ARM_CE=m # CONFIG_CRYPTO_CRYPTD is not set CONFIG_CRYPTO_CTR=y CONFIG_CRYPTO_CTS=y @@ -903,6 +894,7 @@ CONFIG_DEBUG_OBJECTS_ENABLE_DEFAULT=1 # CONFIG_DEBUG_PERF_USE_VMALLOC is not set # CONFIG_DEBUG_PI_LIST is not set # CONFIG_DEBUG_PINCTRL is not set +# CONFIG_DEBUG_REFCOUNT is not set CONFIG_DEBUG_RODATA_TEST=y # CONFIG_DEBUG_RT_MUTEXES is not set # CONFIG_DEBUG_SECTION_MISMATCH is not set @@ -936,6 +928,7 @@ CONFIG_DEVFREQ_GOV_SIMPLE_ONDEMAND=m # CONFIG_DEVFREQ_GOV_USERSPACE is not set # CONFIG_DEVKMEM is not set CONFIG_DEVMEM=y +# CONFIG_DEVPORT is not set CONFIG_DEVTMPFS_MOUNT=y CONFIG_DEVTMPFS=y # CONFIG_DGAP is not set @@ -949,7 +942,7 @@ CONFIG_DM9102=m # CONFIG_DMA_API_DEBUG is not set # CONFIG_DMA_CMA is not set # CONFIG_DMADEVICES_DEBUG is not set -CONFIG_DMADEVICES=y +# CONFIG_DMADEVICES is not set CONFIG_DMA_ENGINE=y # CONFIG_DMA_FENCE_TRACE is not set # CONFIG_DMARD06 is not set @@ -981,11 +974,11 @@ CONFIG_DM_UEVENT=y CONFIG_DM_VERITY_FEC=y CONFIG_DM_VERITY=m CONFIG_DM_ZERO=y -CONFIG_DNET=m +# CONFIG_DNET is not set CONFIG_DNOTIFY=y CONFIG_DNS_RESOLVER=m CONFIG_DONGLE=y -CONFIG_DP83640_PHY=m +# CONFIG_DP83640_PHY is not set CONFIG_DP83848_PHY=m CONFIG_DP83867_PHY=m # CONFIG_DPM_WATCHDOG is not set # revisit this in debug @@ -1004,6 +997,7 @@ CONFIG_DRM_ANALOGIX_ANX78XX=m CONFIG_DRM_AST=m CONFIG_DRM_BOCHS=m CONFIG_DRM_CIRRUS_QEMU=m +# CONFIG_DRM_DEBUG_MM_SELFTEST is not set CONFIG_DRM_DP_AUX_CHARDEV=y # CONFIG_DRM_DUMB_VGA_DAC is not set CONFIG_DRM_DW_HDMI_I2S_AUDIO=m @@ -1011,22 +1005,13 @@ CONFIG_DRM_FBDEV_EMULATION=y CONFIG_DRM_HISI_HIBMC=m CONFIG_DRM_I2C_ADV7511_AUDIO=y CONFIG_DRM_I2C_ADV7511=m -# CONFIG_DRM_I2C_ADV7533 is not set +CONFIG_DRM_I2C_ADV7533=y CONFIG_DRM_I2C_CH7006=m CONFIG_DRM_I2C_NXP_TDA998X=m CONFIG_DRM_I2C_SIL164=m -# CONFIG_DRM_I810 is not set -# CONFIG_DRM_I915_ALPHA_SUPPORT is not set -CONFIG_DRM_I915_CAPTURE_ERROR=y -CONFIG_DRM_I915_COMPRESS_ERROR=y -CONFIG_DRM_I915_GVT_KVMGT=m -CONFIG_DRM_I915_GVT=y -CONFIG_DRM_I915=m -CONFIG_DRM_I915_USERPTR=y # CONFIG_DRM is not set # CONFIG_DRM_LEGACY is not set CONFIG_DRM_LOAD_EDID_FIRMWARE=y -# CONFIG_DRM_MALI_DISPLAY is not set CONFIG_DRM_MGAG200=m # CONFIG_DRM_MGA is not set CONFIG_DRM_MXSFB=m @@ -1047,14 +1032,13 @@ CONFIG_DRM_RADEON_USERPTR=y CONFIG_DRM_SIL_SII8620=m # CONFIG_DRM_SIS is not set # CONFIG_DRM_TDFX is not set +# CONFIG_DRM_TINYDRM is not set CONFIG_DRM_TI_TFP410=m # CONFIG_DRM_TOSHIBA_TC358767 is not set CONFIG_DRM_UDL=m CONFIG_DRM_VGEM=m CONFIG_DRM_VIA=m CONFIG_DRM_VIRTIO_GPU=m -CONFIG_DRM_VMWGFX_FBCON=y -CONFIG_DRM_VMWGFX=m # CONFIG_DS1682 is not set # CONFIG_DS1803 is not set # CONFIG_DT3155 is not set @@ -1141,6 +1125,7 @@ CONFIG_DVB_USB_UMT_010=m CONFIG_DVB_USB_V2=m CONFIG_DVB_USB_VP702X=m CONFIG_DVB_USB_VP7045=m +CONFIG_DVB_USB_ZD1301=m # CONFIG_DW_DMAC_BIG_ENDIAN_IO is not set CONFIG_DW_DMAC_CORE=m # CONFIG_DW_DMAC is not set @@ -1154,7 +1139,7 @@ CONFIG_E100=m CONFIG_EADM_SCH=m CONFIG_EARLY_PRINTK_DBGP=y # CONFIG_EBC_C384_WDT is not set -CONFIG_ECHO=m +# CONFIG_ECHO is not set CONFIG_ECRYPT_FS=m # CONFIG_ECRYPT_FS_MESSAGING is not set # CONFIG_EDAC_DEBUG is not set @@ -1165,6 +1150,7 @@ CONFIG_EEPROM_93CX6=m # CONFIG_EEPROM_93XX46 is not set CONFIG_EEPROM_AT24=m # CONFIG_EEPROM_AT25 is not set +CONFIG_EEPROM_IDT_89HPESX=m CONFIG_EEPROM_LEGACY=m CONFIG_EEPROM_MAX6875=m # CONFIG_EFI_ALLOW_SECURE_BOOT_EXIT is not set @@ -1174,13 +1160,12 @@ CONFIG_EFI_PARTITION=y # CONFIG_EFI_SIGNATURE_LIST_PARSER is not set # CONFIG_EFI_TEST is not set # CONFIG_EFS_FS is not set -# CONFIG_EMAC_ROCKCHIP is not set # CONFIG_EMBEDDED is not set CONFIG_EMU_SIZE=0x10000000 CONFIG_ENABLE_MUST_CHECK=y # CONFIG_ENABLE_WARN_DEPRECATED is not set # CONFIG_ENC28J60 is not set -CONFIG_ENCLOSURE_SERVICES=m +# CONFIG_ENCLOSURE_SERVICES is not set CONFIG_ENCRYPTED_KEYS=y CONFIG_ENIC=m CONFIG_ENVELOPE_DETECTOR=m @@ -1190,7 +1175,7 @@ CONFIG_EQUALIZER=m CONFIG_ESI_DONGLE=m CONFIG_ET131X=m CONFIG_ETHERNET=y -CONFIG_ETHOC=m +# CONFIG_ETHOC is not set # CONFIG_EUROTECH_WDT is not set # CONFIG_EVM is not set # CONFIG_EXOFS_DEBUG is not set @@ -1207,6 +1192,7 @@ CONFIG_EXT4_FS_SECURITY=y CONFIG_EXT4_FS=y CONFIG_EXT4_USE_FOR_EXT2=y # CONFIG_EXTCON_ADC_JACK is not set +CONFIG_EXTCON_INTEL_INT3496=m # CONFIG_EXTCON is not set # CONFIG_EXTCON_QCOM_SPMI_MISC is not set CONFIG_EXTRA_FIRMWARE="" @@ -1231,7 +1217,6 @@ CONFIG_FAT_DEFAULT_IOCHARSET="ascii" CONFIG_FAT_FS=m # CONFIG_FAULT_INJECTION is not set # CONFIG_FB_3DFX is not set -# CONFIG_FB_ARC is not set # CONFIG_FB_ARK is not set # CONFIG_FB_ASILIANT is not set CONFIG_FB_ATY128_BACKLIGHT=y @@ -1247,19 +1232,12 @@ CONFIG_FB_ATY_BACKLIGHT=y # CONFIG_FB_CYBER2000 is not set CONFIG_FB_EFI=y # CONFIG_FB_FOREIGN_ENDIAN is not set -# CONFIG_FB_GEODE is not set -# CONFIG_FB_GOLDFISH is not set # CONFIG_FB_HECUBA is not set -# CONFIG_FB_HGA is not set # CONFIG_FB_I740 is not set -CONFIG_FB_I810_GTF=y -CONFIG_FB_I810_I2C=y -CONFIG_FB_I810=m # CONFIG_FB_IBM_GXT4500 is not set # CONFIG_FB_IMSTT is not set # CONFIG_FB is not set # CONFIG_FB_KYRO is not set -# CONFIG_FB_LE80578 is not set # CONFIG_FB_MATROX_G is not set # CONFIG_FB_MATROX_I2C is not set # CONFIG_FB_MATROX is not set @@ -1302,9 +1280,6 @@ CONFIG_FB_TILEBLITTING=y # CONFIG_FB_UDL is not set # CONFIG_FB_UVESA is not set CONFIG_FB_VESA=y -CONFIG_FB_VGA16=m -# CONFIG_FB_VIA_DIRECT_PROCFS is not set -# CONFIG_FB_VIA is not set CONFIG_FB_VIRTUAL=m # CONFIG_FB_VOODOO1 is not set # CONFIG_FB_VT8623 is not set @@ -1312,7 +1287,7 @@ CONFIG_FB_VIRTUAL=m CONFIG_FCOE_FNIC=m # CONFIG_FCOE is not set # CONFIG_FDDI is not set -CONFIG_FEALNX=m +# CONFIG_FEALNX is not set CONFIG_FHANDLE=y # CONFIG_FIREWIRE is not set CONFIG_FIREWIRE_NET=m @@ -1345,6 +1320,7 @@ CONFIG_FSCACHE_OBJECT_LIST=y CONFIG_FSCACHE_STATS=y CONFIG_FS_DAX=y CONFIG_FS_ENCRYPTION=y +CONFIG_FSI=m # CONFIG_FSL_EDMA is not set # CONFIG_FSL_PQ_MDIO is not set CONFIG_FS_MBCACHE=y @@ -1386,7 +1362,8 @@ CONFIG_GAMEPORT_NS558=m # CONFIG_GENERIC_PHY is not set CONFIG_GENEVE=m # CONFIG_GEN_RTC is not set -# CONFIG_GENWQE is not set +CONFIG_GENWQE=m +CONFIG_GENWQE_PLATFORM_ERROR_RECOVERY=0 CONFIG_GFS2_FS_LOCKING_DLM=y CONFIG_GFS2_FS=m CONFIG_GIGASET_BASE=m @@ -1405,42 +1382,38 @@ CONFIG_GIRBIL_DONGLE=m # CONFIG_GPIO_ADNP is not set # CONFIG_GPIO_ADP5588 is not set # CONFIG_GPIO_ALTERA is not set -# CONFIG_GPIO_AMD8111 is not set # CONFIG_GPIO_AMDPT is not set # CONFIG_GPIO_BT8XX is not set -# CONFIG_GPIO_CS5535 is not set # CONFIG_GPIO_DWAPB is not set +CONFIG_GPIO_EXAR=m # CONFIG_GPIO_GENERIC_PLATFORM is not set # CONFIG_GPIO_GRGPIO is not set # CONFIG_GPIO_IT87 is not set -CONFIG_GPIOLIB=y +# CONFIG_GPIOLIB is not set # CONFIG_GPIO_MAX7300 is not set # CONFIG_GPIO_MAX7301 is not set # CONFIG_GPIO_MAX732X is not set # CONFIG_GPIO_MC33880 is not set # CONFIG_GPIO_MCP23S08 is not set -# CONFIG_GPIO_ML_IOH is not set # CONFIG_GPIO_MOCKUP is not set # CONFIG_GPIO_MPC8XXX is not set # CONFIG_GPIO_PCA953X is not set # CONFIG_GPIO_PCF857X is not set # CONFIG_GPIO_PCH is not set +CONFIG_GPIO_PCI_IDIO_16=m # CONFIG_GPIO_PISOSR is not set # CONFIG_GPIO_RDC321X is not set # CONFIG_GPIO_SCH311X is not set -# CONFIG_GPIO_SCH is not set # CONFIG_GPIO_SX150X is not set # CONFIG_GPIO_SYSCON is not set -CONFIG_GPIO_SYSFS=y +# CONFIG_GPIO_SYSFS is not set # CONFIG_GPIO_TPIC2810 is not set # CONFIG_GPIO_TS4900 is not set # CONFIG_GPIO_TS5500 is not set CONFIG_GPIO_VIPERBOARD=m -# CONFIG_GPIO_VX855 is not set # CONFIG_GPIO_WATCHDOG is not set # CONFIG_GPIO_WS16C48 is not set # CONFIG_GPIO_XILINX is not set -# CONFIG_GPIO_ZX is not set CONFIG_GREENASIA_FF=y # CONFIG_GREYBUS is not set # CONFIG_GS_FPGABOOT is not set @@ -1490,6 +1463,7 @@ CONFIG_HID_GT683R=m CONFIG_HID_GYRATION=m CONFIG_HID_HOLTEK=m CONFIG_HID_ICADE=m +# CONFIG_HID is not set CONFIG_HID_KENSINGTON=m CONFIG_HID_KEYTOUCH=m CONFIG_HID_KYE=m @@ -1499,7 +1473,6 @@ CONFIG_HID_LENOVO=m CONFIG_HID_LOGITECH_DJ=m CONFIG_HID_LOGITECH_HIDPP=m CONFIG_HID_LOGITECH=m -CONFIG_HID=m CONFIG_HID_MAGICMOUSE=m CONFIG_HID_MAYFLASH=m CONFIG_HID_MICROSOFT=m @@ -1621,7 +1594,7 @@ CONFIG_HVC_IUCV=y CONFIG_HW_CONSOLE=y CONFIG_HWLAT_TRACER=y # CONFIG_HWMON_DEBUG_CHIP is not set -CONFIG_HWMON=m +# CONFIG_HWMON is not set CONFIG_HWPOISON_INJECT=m CONFIG_HW_RANDOM_OMAP=m CONFIG_HW_RANDOM_TIMERIOMEM=m @@ -1629,13 +1602,14 @@ CONFIG_HW_RANDOM_TPM=m CONFIG_HW_RANDOM_VIRTIO=m CONFIG_HW_RANDOM=y CONFIG_HWSPINLOCK=m +# CONFIG_HX711 is not set CONFIG_HYSDN_CAPI=y CONFIG_HYSDN=m # CONFIG_HZ_1000 is not set CONFIG_HZ_100=y -CONFIG_I2C_ALGOBIT=m -CONFIG_I2C_ALGOPCA=m -CONFIG_I2C_ALGOPCF=m +# CONFIG_I2C_ALGOBIT is not set +# CONFIG_I2C_ALGOPCA is not set +# CONFIG_I2C_ALGOPCF is not set # CONFIG_I2C_ALI1535 is not set # CONFIG_I2C_ALI1563 is not set # CONFIG_I2C_ALI15X3 is not set @@ -1646,23 +1620,22 @@ CONFIG_I2C_ALGOPCF=m # CONFIG_I2C_BCM2048 is not set # CONFIG_I2C_CADENCE is not set # CONFIG_I2C_CBUS_GPIO is not set -CONFIG_I2C_CHARDEV=m -CONFIG_I2C_COMPAT=y +# CONFIG_I2C_CHARDEV is not set +# CONFIG_I2C_COMPAT is not set # CONFIG_I2C_DEBUG_ALGO is not set # CONFIG_I2C_DEBUG_BUS is not set # CONFIG_I2C_DEBUG_CORE is not set # CONFIG_I2C_DEMUX_PINCTRL is not set # CONFIG_I2C_DESIGNWARE is not set -CONFIG_I2C_DESIGNWARE_PCI=m +# CONFIG_I2C_DESIGNWARE_PCI is not set # CONFIG_I2C_DESIGNWARE_PLATFORM is not set CONFIG_I2C_DIOLAN_U2C=m # CONFIG_I2C_EG20T is not set # CONFIG_I2C_EMEV2 is not set # CONFIG_I2C_GPIO is not set # CONFIG_I2C_HELPER_AUTO is not set -CONFIG_I2C_HID=m +# CONFIG_I2C_HID is not set # CONFIG_I2C_I801 is not set -CONFIG_I2C_IMX_LPI2C=m # CONFIG_I2C_ISCH is not set CONFIG_I2C=m CONFIG_I2C_MLXCPLD=m @@ -1678,20 +1651,18 @@ CONFIG_I2C_MUX_MLXCPLD=m # CONFIG_I2C_OCORES is not set # CONFIG_I2C_PARPORT is not set # CONFIG_I2C_PARPORT_LIGHT is not set -CONFIG_I2C_PCA_PLATFORM=m +# CONFIG_I2C_PCA_PLATFORM is not set # CONFIG_I2C_PIIX4 is not set -CONFIG_I2C_PXA=m -# CONFIG_I2C_PXA_SLAVE is not set # CONFIG_I2C_RK3X is not set # CONFIG_I2C_ROBOTFUZZ_OSIF is not set CONFIG_I2C_SI470X=m # CONFIG_I2C_SI4713 is not set -CONFIG_I2C_SIMTEC=m +# CONFIG_I2C_SIMTEC is not set # CONFIG_I2C_SIS5595 is not set # CONFIG_I2C_SIS630 is not set # CONFIG_I2C_SIS96X is not set CONFIG_I2C_SLAVE_EEPROM=m -CONFIG_I2C_SLAVE=y +# CONFIG_I2C_SLAVE is not set # CONFIG_I2C_SMBUS is not set # CONFIG_I2C_STUB is not set # CONFIG_I2C_TAOS_EVM is not set @@ -1705,11 +1676,9 @@ CONFIG_I2C_VIPERBOARD=m # CONFIG_I40E_FCOE is not set CONFIG_I40E=m CONFIG_I40EVF=m -CONFIG_I6300ESB_WDT=m +# CONFIG_I6300ESB_WDT is not set CONFIG_I82092=m # CONFIG_IAQCORE is not set -CONFIG_IB700_WDT=m -CONFIG_IBMASR=m CONFIG_IBM_PARTITION=y CONFIG_ICPLUS_PHY=m # CONFIG_ICS932S401 is not set @@ -1742,8 +1711,8 @@ CONFIG_IIO_CROS_EC_SENSORS_COR=m CONFIG_IIO_CROS_EC_SENSORS=m # CONFIG_IIO_HRTIMER_TRIGGER is not set CONFIG_IIO_INTERRUPT_TRIGGER=m +# CONFIG_IIO is not set CONFIG_IIO_KFIFO_BUF=m -CONFIG_IIO=m # CONFIG_IIO_SIMPLE_DUMMY is not set # CONFIG_IIO_SSP_SENSORHUB is not set CONFIG_IIO_ST_ACCEL_3AXIS=m @@ -1752,6 +1721,7 @@ CONFIG_IIO_ST_ACCEL_SPI_3AXIS=m CONFIG_IIO_ST_GYRO_3AXIS=m CONFIG_IIO_ST_GYRO_I2C_3AXIS=m CONFIG_IIO_ST_GYRO_SPI_3AXIS=m +# CONFIG_IIO_ST_LSM6DSX is not set CONFIG_IIO_ST_MAGN_3AXIS=m # CONFIG_IIO_ST_PRESS is not set CONFIG_IIO_SW_DEVICE=m @@ -1768,6 +1738,7 @@ CONFIG_IMA_MEASURE_PCR_IDX=10 # CONFIG_INA2XX_ADC is not set CONFIG_INET6_AH=m CONFIG_INET6_ESP=m +CONFIG_INET6_ESP_OFFLOAD=m CONFIG_INET6_IPCOMP=m CONFIG_INET6_XFRM_MODE_BEET=m CONFIG_INET6_XFRM_MODE_ROUTEOPTIMIZATION=m @@ -1777,6 +1748,7 @@ CONFIG_INET_AH=m CONFIG_INET_DIAG_DESTROY=y CONFIG_INET_DIAG=m CONFIG_INET_ESP=m +CONFIG_INET_ESP_OFFLOAD=m CONFIG_INET_IPCOMP=m CONFIG_INET_RAW_DIAG=m CONFIG_INET_TUNNEL=m @@ -1785,9 +1757,10 @@ CONFIG_INET_XFRM_MODE_BEET=m CONFIG_INET_XFRM_MODE_TRANSPORT=m CONFIG_INET_XFRM_MODE_TUNNEL=m CONFIG_INET=y +# CONFIG_INFINIBAND_BNXT_RE is not set # CONFIG_INFINIBAND_CXGB3_DEBUG is not set -CONFIG_INFINIBAND_CXGB3=m -CONFIG_INFINIBAND_CXGB4=m +# CONFIG_INFINIBAND_CXGB3 is not set +# CONFIG_INFINIBAND_CXGB4 is not set CONFIG_INFINIBAND_I40IW=m CONFIG_INFINIBAND_IPOIB_CM=y CONFIG_INFINIBAND_IPOIB_DEBUG_DATA=y @@ -1796,14 +1769,14 @@ CONFIG_INFINIBAND_IPOIB=m CONFIG_INFINIBAND_ISER=m CONFIG_INFINIBAND_ISERT=m CONFIG_INFINIBAND=m -CONFIG_INFINIBAND_MTHCA=m +# CONFIG_INFINIBAND_MTHCA is not set # CONFIG_INFINIBAND_NES_DEBUG is not set -CONFIG_INFINIBAND_NES=m -CONFIG_INFINIBAND_OCRDMA=m +# CONFIG_INFINIBAND_NES is not set +# CONFIG_INFINIBAND_OCRDMA is not set CONFIG_INFINIBAND_ON_DEMAND_PAGING=y # CONFIG_INFINIBAND_QEDR is not set CONFIG_INFINIBAND_QIB_DCA=y -CONFIG_INFINIBAND_QIB=m +# CONFIG_INFINIBAND_QIB is not set CONFIG_INFINIBAND_RDMAVT=m CONFIG_INFINIBAND_SRP=m CONFIG_INFINIBAND_SRPT=m @@ -1831,7 +1804,7 @@ CONFIG_INPUT_CMA3000=m CONFIG_INPUT_E3X0_BUTTON=m # CONFIG_INPUT_EVBUG is not set CONFIG_INPUT_EVDEV=y -CONFIG_INPUT_FF_MEMLESS=m +# CONFIG_INPUT_FF_MEMLESS is not set CONFIG_INPUT_GP2A=m # CONFIG_INPUT_GPIO_BEEPER is not set # CONFIG_INPUT_GPIO_DECODER is not set @@ -1850,10 +1823,10 @@ CONFIG_INPUT_LEDS=y # CONFIG_INPUT_MATRIXKMAP is not set # CONFIG_INPUT_MISC is not set CONFIG_INPUT_MMA8450=m +# CONFIG_INPUT_MOUSEDEV is not set # CONFIG_INPUT_MOUSEDEV_PSAUX is not set CONFIG_INPUT_MOUSEDEV_SCREEN_X=1024 CONFIG_INPUT_MOUSEDEV_SCREEN_Y=768 -CONFIG_INPUT_MOUSEDEV=y # CONFIG_INPUT_MOUSE is not set CONFIG_INPUT_MPU3050=m CONFIG_INPUT_PCF50633_PMU=m @@ -1861,11 +1834,11 @@ CONFIG_INPUT_PCF50633_PMU=m CONFIG_INPUT_PCSPKR=m CONFIG_INPUT_PM8XXX_VIBRATOR=m CONFIG_INPUT_PMIC8XXX_PWRKEY=m -CONFIG_INPUT_POLLDEV=m +# CONFIG_INPUT_POLLDEV is not set CONFIG_INPUT_POWERMATE=m # CONFIG_INPUT_PWM_BEEPER is not set CONFIG_INPUT_RETU_PWRBUTTON=m -CONFIG_INPUT_SPARSEKMAP=m +# CONFIG_INPUT_SPARSEKMAP is not set # CONFIG_INPUT_TABLET is not set # CONFIG_INPUT_TOUCHSCREEN is not set CONFIG_INPUT_UINPUT=m @@ -1875,8 +1848,6 @@ CONFIG_INPUT=y CONFIG_INPUT_YEALINK=m # CONFIG_INTEGRITY is not set # CONFIG_INTEL_IDMA64 is not set -# CONFIG_INTEL_MENLOW is not set -CONFIG_INTEL_RDT_A=y # CONFIG_INTEL_SOC_PMIC is not set # CONFIG_INTEL_TH is not set CONFIG_INTEL_XWAY_PHY=m @@ -1889,6 +1860,7 @@ CONFIG_IOSCHED_CFQ=y CONFIG_IOSCHED_DEADLINE=y CONFIG_IOSCHED_NOOP=y CONFIG_IO_STRICT_DEVMEM=y +# CONFIG_IP1000 is not set CONFIG_IP6_NF_FILTER=m CONFIG_IP6_NF_IPTABLES=m CONFIG_IP6_NF_MANGLE=m @@ -2023,6 +1995,7 @@ CONFIG_IP_VS_SH_TAB_BITS=8 CONFIG_IP_VS_TAB_BITS=12 CONFIG_IP_VS_WLC=m CONFIG_IP_VS_WRR=m +CONFIG_IPVTAP=m # CONFIG_IPW2100_DEBUG is not set # CONFIG_IPW2100 is not set # CONFIG_IPW2200_DEBUG is not set @@ -2064,6 +2037,7 @@ CONFIG_IR_SERIAL=m CONFIG_IR_SERIAL_TRANSMITTER=y CONFIG_IR_SHARP_DECODER=m CONFIG_IR_SONY_DECODER=m +CONFIG_IR_SPI=m CONFIG_IR_STREAMZAP=m CONFIG_IR_TTUSBIR=m CONFIG_IRTTY_SIR=m @@ -2104,8 +2078,8 @@ CONFIG_ISDN_PPP=y CONFIG_ISDN_TTY_FAX=y CONFIG_ISDN=y # CONFIG_ISI is not set -CONFIG_ISL29003=m -CONFIG_ISL29020=m +# CONFIG_ISL29003 is not set +# CONFIG_ISL29020 is not set # CONFIG_ISL29125 is not set CONFIG_ISO9660_FS=m CONFIG_IT8712F_WDT=m @@ -2142,7 +2116,7 @@ CONFIG_JFS_FS=m CONFIG_JFS_POSIX_ACL=y CONFIG_JFS_SECURITY=y # CONFIG_JFS_STATISTICS is not set -CONFIG_JME=m +# CONFIG_JME is not set CONFIG_JOLIET=y CONFIG_JOYSTICK_A3D=m CONFIG_JOYSTICK_ADI=m @@ -2214,6 +2188,7 @@ CONFIG_KEYBOARD_PMIC8XXX=m # CONFIG_KEYBOARD_SUNKBD is not set # CONFIG_KEYBOARD_TCA6416 is not set # CONFIG_KEYBOARD_TCA8418 is not set +CONFIG_KEYBOARD_TM2_TOUCHKEY=m # CONFIG_KEYBOARD_XTKBD is not set CONFIG_KEY_DH_OPERATIONS=y CONFIG_KEYS=y @@ -2225,7 +2200,7 @@ CONFIG_KGDB_TESTS=y CONFIG_KGDB=y CONFIG_KINGSUN_DONGLE=m # CONFIG_KMX61 is not set -CONFIG_KPROBE_EVENT=y +CONFIG_KPROBE_EVENTS=y # CONFIG_KPROBES_SANITY_TEST is not set CONFIG_KPROBES=y CONFIG_KS0108_DELAY=2 @@ -2273,13 +2248,13 @@ CONFIG_LDM_PARTITION=y # CONFIG_LEDS_BCM6358 is not set # CONFIG_LEDS_BD2802 is not set CONFIG_LEDS_BLINKM=m +CONFIG_LEDS_BRIGHTNESS_HW_CHANGED=y CONFIG_LEDS_CLASS_FLASH=m CONFIG_LEDS_CLASS=y CONFIG_LEDS_CLEVO_MAIL=m # CONFIG_LEDS_DAC124S085 is not set CONFIG_LEDS_DELL_NETBOOKS=m # CONFIG_LEDS_GPIO is not set -CONFIG_LEDS_INTEL_SS4200=m # CONFIG_LEDS_IS31FL319X is not set # CONFIG_LEDS_IS31FL32XX is not set # CONFIG_LEDS_KTD2692 is not set @@ -2387,6 +2362,8 @@ CONFIG_LOOPBACK_TARGET=m # CONFIG_LPC_ICH is not set CONFIG_LP_CONSOLE=y # CONFIG_LPC_SCH is not set +CONFIG_LPFC_NVME_INITIATOR=y +CONFIG_LPFC_NVME_TARGET=y CONFIG_LSI_ET1011C_PHY=m CONFIG_LSM_MMAP_MIN_ADDR=65536 # CONFIG_LTC2485 is not set @@ -2419,6 +2396,7 @@ CONFIG_MACVLAN=m CONFIG_MACVTAP=m # CONFIG_MAG3110 is not set CONFIG_MAGIC_SYSRQ_DEFAULT_ENABLE=0x0 +CONFIG_MAGIC_SYSRQ_SERIAL=y CONFIG_MAGIC_SYSRQ=y # CONFIG_MAILBOX is not set # CONFIG_MAILBOX_TEST is not set @@ -2427,10 +2405,12 @@ CONFIG_MANTIS_CORE=m CONFIG_MARCH_ZEC12=y CONFIG_MARVELL_PHY=m # CONFIG_MAX1027 is not set +# CONFIG_MAX11100 is not set # CONFIG_MAX1363 is not set CONFIG_MAX30100=m # CONFIG_MAX44000 is not set # CONFIG_MAX517 is not set +# CONFIG_MAX5481 is not set # CONFIG_MAX5487 is not set # CONFIG_MAX5821 is not set # CONFIG_MAX63XX_WATCHDOG is not set @@ -2483,11 +2463,11 @@ CONFIG_MEDIA_SUBDRV_AUTOSELECT=y # CONFIG_MEDIA_SUPPORT is not set # CONFIG_MEDIA_TUNER_MSI001 is not set CONFIG_MEDIA_USB_SUPPORT=y -CONFIG_MEGARAID_LEGACY=m +# CONFIG_MEGARAID_LEGACY is not set CONFIG_MEGARAID_MAILBOX=m CONFIG_MEGARAID_MM=m -CONFIG_MEGARAID_NEWGEN=y -CONFIG_MEGARAID_SAS=m +# CONFIG_MEGARAID_NEWGEN is not set +# CONFIG_MEGARAID_SAS is not set CONFIG_MEMCG_SWAP_ENABLED=y CONFIG_MEMCG_SWAP=y CONFIG_MEMCG=y @@ -2506,7 +2486,6 @@ CONFIG_MEMSTICK_TIFM_MS=m # CONFIG_MEMSTICK_UNSAFE_RESUME is not set # CONFIG_MEMTEST is not set # CONFIG_MEN_A21_WDT is not set -CONFIG_MESON_GXL_PHY=m CONFIG_MESSAGE_LOGLEVEL_DEFAULT=4 # CONFIG_MFD_88PM800 is not set # CONFIG_MFD_88PM805 is not set @@ -2524,7 +2503,8 @@ CONFIG_MESSAGE_LOGLEVEL_DEFAULT=4 # CONFIG_MFD_AXP20X_I2C is not set # CONFIG_MFD_AXP20X is not set # CONFIG_MFD_BCM590XX is not set -CONFIG_MFD_CORE=m +# CONFIG_MFD_CORE is not set +CONFIG_MFD_CPCAP=m # CONFIG_MFD_CROS_EC is not set # CONFIG_MFD_CS5535 is not set # CONFIG_MFD_DA9052_I2C is not set @@ -2571,7 +2551,6 @@ CONFIG_MFD_SM501_GPIO=y # CONFIG_MFD_SM501 is not set # CONFIG_MFD_SMSC is not set # CONFIG_MFD_STMPE is not set -CONFIG_MFD_SUN4I_GPADC=m # CONFIG_MFD_SYSCON is not set # CONFIG_MFD_TC3589X is not set # CONFIG_MFD_TC6393XB is not set @@ -2630,7 +2609,7 @@ CONFIG_MLX5_INFINIBAND=m # CONFIG_MLX90614 is not set CONFIG_MLX_CPLD_PLATFORM=m CONFIG_MLXSW_CORE_HWMON=y -CONFIG_MLXSW_CORE=m +# CONFIG_MLXSW_CORE is not set CONFIG_MLXSW_CORE_THERMAL=y CONFIG_MLXSW_I2C=m CONFIG_MLXSW_MINIMAL=m @@ -2705,7 +2684,6 @@ CONFIG_MOUSE_ELAN_I2C_SMBUS=y CONFIG_MOUSE_PS2_ELANTECH=y CONFIG_MOUSE_PS2_SENTELIC=y # CONFIG_MOUSE_PS2_TOUCHKIT is not set -# CONFIG_MOUSE_PS2_VMMOUSE is not set CONFIG_MOUSE_PS2=y CONFIG_MOUSE_SERIAL=m CONFIG_MOUSE_SYNAPTICS_I2C=m @@ -2721,6 +2699,7 @@ CONFIG_MOVABLE_NODE=y CONFIG_MPLS_IPTUNNEL=m CONFIG_MPLS_ROUTING=m # CONFIG_MPU3050_I2C is not set +CONFIG_MQ_IOSCHED_DEADLINE=y # CONFIG_MS5611 is not set # CONFIG_MS5637 is not set # CONFIG_MS_BLOCK is not set @@ -2825,12 +2804,13 @@ CONFIG_NET_ACT_MIRRED=m CONFIG_NET_ACT_NAT=m CONFIG_NET_ACT_PEDIT=m CONFIG_NET_ACT_POLICE=m +CONFIG_NET_ACT_SAMPLE=m CONFIG_NET_ACT_SIMP=m CONFIG_NET_ACT_SKBEDIT=m CONFIG_NET_ACT_SKBMOD=m CONFIG_NET_ACT_TUNNEL_KEY=m CONFIG_NET_ACT_VLAN=m -CONFIG_NET_CADENCE=y +# CONFIG_NET_CADENCE is not set CONFIG_NET_CALXEDA_XGMAC=m CONFIG_NET_CLS_ACT=y CONFIG_NET_CLS_BASIC=m @@ -2958,6 +2938,7 @@ CONFIG_NETFILTER_XT_TARGET_TRACE=m CONFIG_NETFILTER=y CONFIG_NET_FOU_IP_TUNNELS=y CONFIG_NET_FOU=m +CONFIG_NET_IFE=m CONFIG_NET_IFE_SKBMARK=m CONFIG_NET_IFE_SKBPRIO=m CONFIG_NET_IFE_SKBTCINDEX=m @@ -2969,13 +2950,13 @@ CONFIG_NET_IPVTI=m # CONFIG_NETIUCV is not set CONFIG_NET_KEY=m CONFIG_NET_KEY_MIGRATE=y -# CONFIG_NET_L3_MASTER_DEV is not set +CONFIG_NET_L3_MASTER_DEV=y CONFIG_NETLABEL=y CONFIG_NETLINK_DIAG=m CONFIG_NET_MPLS_GSO=m CONFIG_NET_NCSI=y CONFIG_NET_NS=y -CONFIG_NET_PACKET_ENGINE=y +# CONFIG_NET_PACKET_ENGINE is not set CONFIG_NET_PKTGEN=m CONFIG_NET_POLL_CONTROLLER=y CONFIG_NETROM=m @@ -3015,26 +2996,27 @@ CONFIG_NET_TEAM_MODE_LOADBALANCE=m CONFIG_NET_TEAM_MODE_RANDOM=m CONFIG_NET_TEAM_MODE_ROUNDROBIN=m CONFIG_NET_TULIP=y -CONFIG_NET_VENDOR_3COM=y -CONFIG_NET_VENDOR_8390=y -CONFIG_NET_VENDOR_ADAPTEC=y -CONFIG_NET_VENDOR_AGERE=y +# CONFIG_NET_VENDOR_3COM is not set +# CONFIG_NET_VENDOR_8390 is not set +# CONFIG_NET_VENDOR_ADAPTEC is not set +# CONFIG_NET_VENDOR_AGERE is not set # CONFIG_NET_VENDOR_ALACRITECH is not set -CONFIG_NET_VENDOR_ALTEON=y +# CONFIG_NET_VENDOR_ALTEON is not set # CONFIG_NET_VENDOR_AMAZON is not set -CONFIG_NET_VENDOR_AMD=y +# CONFIG_NET_VENDOR_AMD is not set +# CONFIG_NET_VENDOR_AQUANTIA is not set # CONFIG_NET_VENDOR_ARC is not set -CONFIG_NET_VENDOR_ATHEROS=y +# CONFIG_NET_VENDOR_ATHEROS is not set # CONFIG_NET_VENDOR_AURORA is not set -CONFIG_NET_VENDOR_BROADCOM=y -CONFIG_NET_VENDOR_BROCADE=y +# CONFIG_NET_VENDOR_BROADCOM is not set +# CONFIG_NET_VENDOR_BROCADE is not set # CONFIG_NET_VENDOR_CAVIUM is not set -CONFIG_NET_VENDOR_CHELSIO=y -CONFIG_NET_VENDOR_CISCO=y -CONFIG_NET_VENDOR_DEC=y -CONFIG_NET_VENDOR_DLINK=y -CONFIG_NET_VENDOR_EMULEX=y -CONFIG_NET_VENDOR_EXAR=y +# CONFIG_NET_VENDOR_CHELSIO is not set +# CONFIG_NET_VENDOR_CISCO is not set +# CONFIG_NET_VENDOR_DEC is not set +# CONFIG_NET_VENDOR_DLINK is not set +# CONFIG_NET_VENDOR_EMULEX is not set +# CONFIG_NET_VENDOR_EXAR is not set # CONFIG_NET_VENDOR_EZCHIP is not set # CONFIG_NET_VENDOR_FARADAY is not set # CONFIG_NET_VENDOR_FUJITSU is not set @@ -3043,43 +3025,43 @@ CONFIG_NET_VENDOR_EXAR=y # CONFIG_NET_VENDOR_I825XX is not set # CONFIG_NET_VENDOR_INTEL is not set # CONFIG_NET_VENDOR_MARVELL is not set -CONFIG_NET_VENDOR_MICREL=y +# CONFIG_NET_VENDOR_MICREL is not set # CONFIG_NET_VENDOR_MICROCHIP is not set -CONFIG_NET_VENDOR_MYRI=y +# CONFIG_NET_VENDOR_MYRI is not set # CONFIG_NET_VENDOR_NATSEMI is not set -CONFIG_NET_VENDOR_NETRONOME=y -CONFIG_NET_VENDOR_NVIDIA=y -CONFIG_NET_VENDOR_OKI=y -CONFIG_NET_VENDOR_QLOGIC=y +# CONFIG_NET_VENDOR_NETRONOME is not set +# CONFIG_NET_VENDOR_NVIDIA is not set +# CONFIG_NET_VENDOR_OKI is not set +# CONFIG_NET_VENDOR_QLOGIC is not set # CONFIG_NET_VENDOR_QUALCOMM is not set -CONFIG_NET_VENDOR_RDC=y -CONFIG_NET_VENDOR_REALTEK=y +# CONFIG_NET_VENDOR_RDC is not set +# CONFIG_NET_VENDOR_REALTEK is not set # CONFIG_NET_VENDOR_RENESAS is not set -CONFIG_NET_VENDOR_ROCKER=y +# CONFIG_NET_VENDOR_ROCKER is not set # CONFIG_NET_VENDOR_SAMSUNG is not set # CONFIG_NET_VENDOR_SEEQ is not set -CONFIG_NET_VENDOR_SILAN=y -CONFIG_NET_VENDOR_SIS=y -CONFIG_NET_VENDOR_SMSC=y +# CONFIG_NET_VENDOR_SILAN is not set +# CONFIG_NET_VENDOR_SIS is not set +# CONFIG_NET_VENDOR_SMSC is not set # CONFIG_NET_VENDOR_SOLARFLARE is not set -CONFIG_NET_VENDOR_STMICRO=y -CONFIG_NET_VENDOR_SUN=y +# CONFIG_NET_VENDOR_STMICRO is not set +# CONFIG_NET_VENDOR_SUN is not set # CONFIG_NET_VENDOR_SYNOPSYS is not set -CONFIG_NET_VENDOR_TEHUTI=y -CONFIG_NET_VENDOR_TI=y +# CONFIG_NET_VENDOR_TEHUTI is not set +# CONFIG_NET_VENDOR_TI is not set # CONFIG_NET_VENDOR_VIA is not set -CONFIG_NET_VENDOR_WIZNET=y -CONFIG_NET_VENDOR_XIRCOM=y +# CONFIG_NET_VENDOR_WIZNET is not set +# CONFIG_NET_VENDOR_XIRCOM is not set CONFIG_NET_VRF=m CONFIG_NETWORK_FILESYSTEMS=y CONFIG_NETWORK_PHY_TIMESTAMPING=y CONFIG_NETXEN_NIC=m CONFIG_NET=y -CONFIG_NEW_LEDS=y +# CONFIG_NEW_LEDS is not set CONFIG_NFC_DIGITAL=m # CONFIG_NFC_FDP is not set CONFIG_NFC_HCI=m -CONFIG_NFC=m +# CONFIG_NFC is not set CONFIG_NFC_MICROREAD_I2C=m CONFIG_NFC_MICROREAD=m # CONFIG_NFC_MRVL_I2C is not set @@ -3144,6 +3126,8 @@ CONFIG_NF_LOG_IPV6=m CONFIG_NF_LOG_NETDEV=m CONFIG_NF_NAT=m CONFIG_NF_NAT_SNMP_BASIC=m +# CONFIG_NFP_DEBUG is not set +CONFIG_NFP=m # CONFIG_NFP_NET_DEBUG is not set CONFIG_NFP_NETVF=m CONFIG_NF_REJECT_IPV6=m @@ -3215,9 +3199,10 @@ CONFIG_NFT_REDIR=m CONFIG_NFT_REJECT_IPV4=m CONFIG_NFT_REJECT=m CONFIG_NFT_RT=m +CONFIG_NFT_SET_BITMAP=m CONFIG_NFT_SET_HASH=m CONFIG_NFT_SET_RBTREE=m -CONFIG_N_GSM=m +# CONFIG_N_GSM is not set CONFIG_N_HDLC=m # CONFIG_NI903X_WDT is not set CONFIG_NILFS2_FS=m @@ -3284,7 +3269,7 @@ CONFIG_NORTEL_HERMES=m # CONFIG_NOTIFIER_ERROR_INJECTION is not set CONFIG_NOUVEAU_DEBUG=5 CONFIG_NOUVEAU_DEBUG_DEFAULT=3 -CONFIG_NOZOMI=m +# CONFIG_NOZOMI is not set CONFIG_NR_CPUS=64 CONFIG_NS83820=m CONFIG_NSC_FIR=m @@ -3343,6 +3328,7 @@ CONFIG_PACK_STACK=y CONFIG_PANIC_TIMEOUT=0 CONFIG_PANTHERLORD_FF=y # CONFIG_PARIDE is not set +CONFIG_PARMAN=m CONFIG_PARPORT_1284=y # CONFIG_PARPORT_AX88796 is not set # CONFIG_PARPORT is not set @@ -3400,6 +3386,7 @@ CONFIG_PATA_TOSHIBA=m CONFIG_PATA_TRIFLEX=m CONFIG_PATA_VIA=m CONFIG_PATA_WINBOND=m +# CONFIG_PC104 is not set # CONFIG_PC87413_WDT is not set CONFIG_PCCARD=y CONFIG_PCF50633_ADC=m @@ -3420,7 +3407,7 @@ CONFIG_PCI_IOV=y CONFIG_PCI_MSI=y CONFIG_PCI_NR_FUNCTIONS=64 CONFIG_PCI_PASID=y -CONFIG_PCIPCWATCHDOG=m +# CONFIG_PCIPCWATCHDOG is not set CONFIG_PCI_PRI=y # CONFIG_PCI_REALLOC_ENABLE_AUTO is not set CONFIG_PCI_STUB=y @@ -3456,6 +3443,8 @@ CONFIG_PFAULT=y CONFIG_PHYLIB=m # CONFIG_PHY_PXA_28NM_HSIC is not set # CONFIG_PHY_PXA_28NM_USB2 is not set +# CONFIG_PHY_QCOM_USB_HSIC is not set +# CONFIG_PHY_QCOM_USB_HS is not set # CONFIG_PHY_ST_SPEAR1310_MIPHY is not set # CONFIG_PHY_ST_SPEAR1340_MIPHY is not set # CONFIG_PHY_TUSB1210 is not set @@ -3464,6 +3453,7 @@ CONFIG_PID_NS=y # CONFIG_PINCTRL is not set CONFIG_PINCTRL_MSM8994=m # CONFIG_PINCTRL_SX150X is not set +# CONFIG_PINCTRL_TI_IODELAY is not set # CONFIG_PINMUX is not set CONFIG_PKCS7_MESSAGE_PARSER=y # CONFIG_PKCS7_TEST_KEY is not set @@ -3475,7 +3465,7 @@ CONFIG_PLX_HERMES=m CONFIG_PMBUS=m CONFIG_PM_DEBUG=y # CONFIG_PM_DEVFREQ_EVENT is not set -CONFIG_PM_DEVFREQ=y +# CONFIG_PM_DEVFREQ is not set # CONFIG_PMIC_ADP5520 is not set # CONFIG_PMIC_DA903X is not set # CONFIG_PM_OPP is not set @@ -3491,11 +3481,11 @@ CONFIG_POSIX_MQUEUE=y # CONFIG_POWER_AVS is not set CONFIG_POWERCAP=y # CONFIG_POWER_RESET_BRCMKONA is not set +# CONFIG_POWER_RESET is not set # CONFIG_POWER_RESET_LTC2952 is not set # CONFIG_POWER_RESET_RESTART is not set # CONFIG_POWER_RESET_SYSCON is not set # CONFIG_POWER_RESET_SYSCON_POWEROFF is not set -CONFIG_POWER_RESET=y # CONFIG_POWER_SUPPLY_DEBUG is not set CONFIG_POWER_SUPPLY=y # CONFIG_PPC_PTDUMP is not set @@ -3525,6 +3515,7 @@ CONFIG_PPTP=m CONFIG_PREEMPT_VOLUNTARY=y CONFIG_PREVENT_FIRMWARE_BUILD=y CONFIG_PRINTER=m +CONFIG_PRINTK_SAFE_LOG_BUF_SHIFT=12 CONFIG_PRINTK_TIME=y # CONFIG_PRINT_QUOTA_WARNING is not set # CONFIG_PRISM2_USB is not set @@ -3538,6 +3529,7 @@ CONFIG_PROC_VMCORE=y CONFIG_PROFILING=y # CONFIG_PROVE_LOCKING is not set # CONFIG_PROVE_RCU_REPEATEDLY is not set +CONFIG_PSAMPLE=m # CONFIG_PSTORE_CONSOLE is not set # CONFIG_PSTORE_FTRACE is not set # CONFIG_PSTORE_PMSG is not set @@ -3547,18 +3539,19 @@ CONFIG_PTP_1588_CLOCK=m CONFIG_PTP_1588_CLOCK_PCH=m # CONFIG_PWM_FSL_FTM is not set CONFIG_PWM_HIBVT=m +# CONFIG_PWM is not set # CONFIG_PWM_PCA9685 is not set -CONFIG_PWM=y CONFIG_PWRSEQ_EMMC=m +# CONFIG_PWRSEQ_SD8787 is not set CONFIG_PWRSEQ_SIMPLE=m # CONFIG_QCA7000 is not set CONFIG_QCOM_ADSP_PIL=m -# CONFIG_QCOM_EBI2 is not set # CONFIG_QCOM_EMAC is not set # CONFIG_QCOM_HIDMA is not set # CONFIG_QCOM_HIDMA_MGMT is not set CONFIG_QDIO=m CONFIG_QEDE=m +CONFIG_QEDF=m CONFIG_QEDI=m CONFIG_QED=m CONFIG_QED_SRIOV=y @@ -3581,7 +3574,7 @@ CONFIG_QUOTACTL=y # CONFIG_QUOTA_DEBUG is not set CONFIG_QUOTA_NETLINK_INTERFACE=y CONFIG_QUOTA=y -CONFIG_R3964=m +# CONFIG_R3964 is not set CONFIG_R6040=m CONFIG_R8169=m # CONFIG_R8188EU is not set @@ -3608,7 +3601,6 @@ CONFIG_RADIO_TERRATEC=m CONFIG_RADIO_TRUST=m CONFIG_RADIO_TYPHOON=m CONFIG_RADIO_WL1273=m -# CONFIG_RADIO_WL128X is not set # depends on TI_ST which we don't enable CONFIG_RADIO_ZOLTRIX=m CONFIG_RAID_ATTRS=m # CONFIG_RANDOM32_SELFTEST is not set @@ -3652,6 +3644,7 @@ CONFIG_REALTEK_AUTOPM=y CONFIG_REALTEK_PHY=m CONFIG_REGMAP_I2C=m CONFIG_REGMAP=y +CONFIG_REGULATOR_CPCAP=m # CONFIG_REGULATOR_DEBUG is not set # CONFIG_REGULATOR is not set # CONFIG_REISERFS_CHECK is not set @@ -3663,15 +3656,16 @@ CONFIG_REISERFS_PROC_INFO=y CONFIG_RELAY=y # CONFIG_RELOCATABLE_TEST is not set CONFIG_REMOTEPROC=m +# CONFIG_RESET_CONTROLLER is not set # CONFIG_RFD_FTL is not set CONFIG_RFKILL_GPIO=m CONFIG_RFKILL_INPUT=y -CONFIG_RFKILL=m +# CONFIG_RFKILL is not set CONFIG_RING_BUFFER_BENCHMARK=m # CONFIG_RING_BUFFER_STARTUP_TEST is not set # CONFIG_RIO is not set -CONFIG_RMI4_CORE=m -# CONFIG_RMI4_F03 is not set +# CONFIG_RMI4_CORE is not set +CONFIG_RMI4_F03=y CONFIG_RMI4_F11=y CONFIG_RMI4_F12=y CONFIG_RMI4_F30=y @@ -3885,51 +3879,51 @@ CONFIG_SCM_BLOCK_CLUSTER_WRITE=y CONFIG_SCM_BLOCK=m CONFIG_SCM_BUS=y # CONFIG_SCR24X is not set -CONFIG_SCSI_3W_9XXX=m -CONFIG_SCSI_3W_SAS=m -CONFIG_SCSI_AACRAID=m -CONFIG_SCSI_ACARD=m +# CONFIG_SCSI_3W_9XXX is not set +# CONFIG_SCSI_3W_SAS is not set +# CONFIG_SCSI_AACRAID is not set +# CONFIG_SCSI_ACARD is not set # CONFIG_SCSI_ADVANSYS is not set -CONFIG_SCSI_AIC79XX=m -CONFIG_SCSI_AIC7XXX=m +# CONFIG_SCSI_AIC79XX is not set +# CONFIG_SCSI_AIC7XXX is not set # CONFIG_SCSI_AIC94XX is not set -CONFIG_SCSI_AM53C974=m -CONFIG_SCSI_ARCMSR=m -CONFIG_SCSI_BFA_FC=m -CONFIG_SCSI_BNX2_ISCSI=m -CONFIG_SCSI_BNX2X_FCOE=m +# CONFIG_SCSI_AM53C974 is not set +# CONFIG_SCSI_ARCMSR is not set +# CONFIG_SCSI_BFA_FC is not set +# CONFIG_SCSI_BNX2_ISCSI is not set +# CONFIG_SCSI_BNX2X_FCOE is not set CONFIG_SCSI_BUSLOGIC=m -CONFIG_SCSI_CHELSIO_FCOE=m +# CONFIG_SCSI_CHELSIO_FCOE is not set CONFIG_SCSI_CONSTANTS=y -CONFIG_SCSI_CXGB3_ISCSI=m -CONFIG_SCSI_CXGB4_ISCSI=m -CONFIG_SCSI_DC395x=m +# CONFIG_SCSI_CXGB3_ISCSI is not set +# CONFIG_SCSI_CXGB4_ISCSI is not set +# CONFIG_SCSI_DC395x is not set CONFIG_SCSI_DEBUG=m CONFIG_SCSI_DH_ALUA=m CONFIG_SCSI_DH_EMC=m CONFIG_SCSI_DH_HP_SW=m +# CONFIG_SCSI_DH is not set CONFIG_SCSI_DH_RDAC=m -CONFIG_SCSI_DH=y -CONFIG_SCSI_DMX3191D=m +# CONFIG_SCSI_DMX3191D is not set # CONFIG_SCSI_DPT_I2O is not set # CONFIG_SCSI_EATA is not set # CONFIG_SCSI_EATA_PIO is not set CONFIG_SCSI_ENCLOSURE=m -CONFIG_SCSI_ESAS2R=m +# CONFIG_SCSI_ESAS2R is not set CONFIG_SCSI_FC_ATTRS=m CONFIG_SCSI_FLASHPOINT=y # CONFIG_SCSI_FUTURE_DOMAIN is not set CONFIG_SCSI_GDTH=m # CONFIG_SCSI_HISI_SAS is not set -CONFIG_SCSI_HPSA=m -CONFIG_SCSI_HPTIOP=m +# CONFIG_SCSI_HPSA is not set +# CONFIG_SCSI_HPTIOP is not set # CONFIG_SCSI_IMM is not set -CONFIG_SCSI_INIA100=m -CONFIG_SCSI_INITIO=m +# CONFIG_SCSI_INIA100 is not set +# CONFIG_SCSI_INITIO is not set CONFIG_SCSI_IPR_DUMP=y CONFIG_SCSI_IPR=m CONFIG_SCSI_IPR_TRACE=y -CONFIG_SCSI_IPS=m +# CONFIG_SCSI_IPS is not set CONFIG_SCSI_ISCI=m CONFIG_SCSI_ISCSI_ATTRS=m # CONFIG_SCSI_IZIP_EPP16 is not set @@ -3938,28 +3932,28 @@ CONFIG_SCSI_LOGGING=y # CONFIG_SCSI_LOWLEVEL_PCMCIA is not set CONFIG_SCSI_LOWLEVEL=y # CONFIG_SCSI_LPFC_DEBUG_FS is not set -CONFIG_SCSI_LPFC=m -CONFIG_SCSI_MPT2SAS=m +# CONFIG_SCSI_LPFC is not set +# CONFIG_SCSI_MPT2SAS is not set CONFIG_SCSI_MPT2SAS_MAX_SGE=128 -CONFIG_SCSI_MPT3SAS=m +# CONFIG_SCSI_MPT3SAS is not set CONFIG_SCSI_MPT3SAS_MAX_SGE=128 # CONFIG_SCSI_MQ_DEFAULT is not set # CONFIG_SCSI_MVSAS_DEBUG is not set -CONFIG_SCSI_MVSAS=m +# CONFIG_SCSI_MVSAS is not set CONFIG_SCSI_MVSAS_TASKLET=y -CONFIG_SCSI_MVUMI=m +# CONFIG_SCSI_MVUMI is not set # CONFIG_SCSI_NSP32 is not set # CONFIG_SCSI_OSD_DEBUG is not set CONFIG_SCSI_OSD_DPRINT_SENSE=1 CONFIG_SCSI_OSD_INITIATOR=m CONFIG_SCSI_OSD_ULD=m -CONFIG_SCSI_PM8001=m -CONFIG_SCSI_PMCRAID=m +# CONFIG_SCSI_PM8001 is not set +# CONFIG_SCSI_PMCRAID is not set # CONFIG_SCSI_PPA is not set CONFIG_SCSI_PROC_FS=y -CONFIG_SCSI_QLA_FC=m -CONFIG_SCSI_QLA_ISCSI=m -CONFIG_SCSI_QLOGIC_1280=m +# CONFIG_SCSI_QLA_FC is not set +# CONFIG_SCSI_QLA_ISCSI is not set +# CONFIG_SCSI_QLOGIC_1280 is not set CONFIG_SCSI_SAS_ATA=y CONFIG_SCSI_SAS_ATTRS=m CONFIG_SCSI_SAS_HOST_SMP=y @@ -3967,22 +3961,22 @@ CONFIG_SCSI_SAS_LIBSAS=m CONFIG_SCSI_SCAN_ASYNC=y CONFIG_SCSI_SMARTPQI=m # CONFIG_SCSI_SNIC_DEBUG_FS is not set -CONFIG_SCSI_SNIC=m +# CONFIG_SCSI_SNIC is not set CONFIG_SCSI_SPI_ATTRS=m CONFIG_SCSI_SRP_ATTRS=m CONFIG_SCSI_SRP=m -CONFIG_SCSI_STEX=m -CONFIG_SCSI_SYM53C8XX_2=m +# CONFIG_SCSI_STEX is not set +# CONFIG_SCSI_SYM53C8XX_2 is not set CONFIG_SCSI_SYM53C8XX_DEFAULT_TAGS=16 CONFIG_SCSI_SYM53C8XX_DMA_ADDRESSING_MODE=1 CONFIG_SCSI_SYM53C8XX_MAX_TAGS=64 CONFIG_SCSI_SYM53C8XX_MMIO=y # CONFIG_SCSI_UFS_DWC_TC_PCI is not set -CONFIG_SCSI_UFSHCD=m +# CONFIG_SCSI_UFSHCD is not set CONFIG_SCSI_UFSHCD_PCI=m # CONFIG_SCSI_UFSHCD_PLATFORM is not set CONFIG_SCSI_VIRTIO=m -CONFIG_SCSI_WD719X=m +# CONFIG_SCSI_WD719X is not set CONFIG_SCSI=y CONFIG_SCTP_COOKIE_HMAC_MD5=y CONFIG_SCTP_COOKIE_HMAC_SHA1=y @@ -4035,10 +4029,10 @@ CONFIG_SENSORS_ADT7462=m CONFIG_SENSORS_ADT7470=m CONFIG_SENSORS_ADT7475=m CONFIG_SENSORS_AMC6821=m -CONFIG_SENSORS_APDS990X=m +# CONFIG_SENSORS_APDS990X is not set CONFIG_SENSORS_ASC7621=m CONFIG_SENSORS_ATXP1=m -CONFIG_SENSORS_BH1770=m +# CONFIG_SENSORS_BH1770 is not set CONFIG_SENSORS_DME1737=m CONFIG_SENSORS_DS1621=m CONFIG_SENSORS_DS620=m @@ -4071,8 +4065,8 @@ CONFIG_SENSORS_INA3221=m CONFIG_SENSORS_IT87=m CONFIG_SENSORS_JC42=m CONFIG_SENSORS_LINEAGE=m -CONFIG_SENSORS_LIS3_I2C=m -CONFIG_SENSORS_LIS3LV02D=m +# CONFIG_SENSORS_LIS3_I2C is not set +# CONFIG_SENSORS_LIS3LV02D is not set # CONFIG_SENSORS_LIS3_SPI is not set CONFIG_SENSORS_LM25066=m CONFIG_SENSORS_LM63=m @@ -4139,6 +4133,7 @@ CONFIG_SENSORS_SIS5595=m CONFIG_SENSORS_SMSC47B397=m CONFIG_SENSORS_SMSC47M192=m CONFIG_SENSORS_SMSC47M1=m +# CONFIG_SENSORS_STTS751 is not set CONFIG_SENSORS_TC654=m CONFIG_SENSORS_TC74=m CONFIG_SENSORS_THMC50=m @@ -4148,7 +4143,7 @@ CONFIG_SENSORS_TMP108=m CONFIG_SENSORS_TMP401=m CONFIG_SENSORS_TMP421=m CONFIG_SENSORS_TPS40422=m -CONFIG_SENSORS_TSL2550=m +# CONFIG_SENSORS_TSL2550 is not set # CONFIG_SENSORS_TSL2563 is not set CONFIG_SENSORS_UCD9000=m CONFIG_SENSORS_UCD9200=m @@ -4174,6 +4169,7 @@ CONFIG_SERIAL_8250_CS=m # CONFIG_SERIAL_8250_DEPRECATED_OPTIONS is not set # CONFIG_SERIAL_8250_DETECT_IRQ is not set CONFIG_SERIAL_8250_DW=y +CONFIG_SERIAL_8250_EXAR=m CONFIG_SERIAL_8250_EXTENDED=y # CONFIG_SERIAL_8250_FINTEK is not set # CONFIG_SERIAL_8250_INGENIC is not set @@ -4182,6 +4178,7 @@ CONFIG_SERIAL_8250_MANY_PORTS=y # CONFIG_SERIAL_8250_MID is not set CONFIG_SERIAL_8250_MOXA=m CONFIG_SERIAL_8250_NR_UARTS=32 +CONFIG_SERIAL_8250_PCI=m CONFIG_SERIAL_8250_RSA=y CONFIG_SERIAL_8250_RT288X=y CONFIG_SERIAL_8250_RUNTIME_UARTS=32 @@ -4193,13 +4190,15 @@ CONFIG_SERIAL_ARC_NR_PORTS=1 # CONFIG_SERIAL_CONEXANT_DIGICOLOR is not set CONFIG_SERIAL_CORE_CONSOLE=y CONFIG_SERIAL_CORE=m +CONFIG_SERIAL_DEV_BUS=y +CONFIG_SERIAL_DEV_CTRL_TTYPORT=y # CONFIG_SERIAL_FSL_LPUART is not set # CONFIG_SERIAL_IFX6X60 is not set CONFIG_SERIAL_JSM=m # CONFIG_SERIAL_KGDB_NMI is not set # CONFIG_SERIAL_MAX3100 is not set # CONFIG_SERIAL_MAX310X is not set -CONFIG_SERIAL_NONSTANDARD=y +# CONFIG_SERIAL_NONSTANDARD is not set # CONFIG_SERIAL_PCH_UART is not set # CONFIG_SERIAL_RP2 is not set # CONFIG_SERIAL_SC16IS7XX is not set @@ -4214,13 +4213,13 @@ CONFIG_SERIO_ARC_PS2=m # CONFIG_SERIO_CT82C710 is not set CONFIG_SERIO_I8042=y # CONFIG_SERIO is not set -CONFIG_SERIO_LIBPS2=y +CONFIG_SERIO_LIBPS2=m # CONFIG_SERIO_OLPC_APSP is not set # CONFIG_SERIO_PARKBD is not set # CONFIG_SERIO_PCIPS2 is not set # CONFIG_SERIO_PS2MULT is not set CONFIG_SERIO_RAW=m -CONFIG_SERIO_SERPORT=y +CONFIG_SERIO_SERPORT=m CONFIG_SFC_FALCON=m CONFIG_SFC_FALCON_MTD=y # CONFIG_SFC is not set @@ -4254,6 +4253,7 @@ CONFIG_SLUB_CPU_PARTIAL=y CONFIG_SLUB=y CONFIG_SMARTJOYPLUS_FF=y CONFIG_SMC_IRCC_FIR=m +# CONFIG_SMC is not set # CONFIG_SM_FTL is not set CONFIG_SMP=y CONFIG_SMSC911X=m @@ -4399,7 +4399,7 @@ CONFIG_SND_SEQUENCER=m CONFIG_SND_SEQUENCER_OSS=y CONFIG_SND_SERIAL_U16550=m CONFIG_SND_SIMPLE_CARD=m -# CONFIG_SND_SIMPLE_SCU_CARD is not set +CONFIG_SND_SIMPLE_SCU_CARD=m CONFIG_SND_SIS7019=m # CONFIG_SND_SOC_ADAU1701 is not set # CONFIG_SND_SOC_ADAU7002 is not set @@ -4450,6 +4450,7 @@ CONFIG_SND_SOC=m # CONFIG_SND_SOC_MAX9860 is not set # CONFIG_SND_SOC_MSM8916_WCD_ANALOG is not set # CONFIG_SND_SOC_MSM8916_WCD_DIGITAL is not set +# CONFIG_SND_SOC_NAU8540 is not set # CONFIG_SND_SOC_NAU8810 is not set # CONFIG_SND_SOC_PCM1681 is not set # CONFIG_SND_SOC_PCM179X_I2C is not set @@ -4472,6 +4473,7 @@ CONFIG_SND_SOC_SPDIF=m # CONFIG_SND_SOC_STI_SAS is not set # CONFIG_SND_SOC_TAS2552 is not set # CONFIG_SND_SOC_TAS5086 is not set +# CONFIG_SND_SOC_TAS571X is not set # CONFIG_SND_SOC_TAS5720 is not set # CONFIG_SND_SOC_TFA9879 is not set # CONFIG_SND_SOC_TLV320AIC23_I2C is not set @@ -4504,7 +4506,6 @@ CONFIG_SND_SOC_SPDIF=m # CONFIG_SND_SOC_XTFPGA_I2S is not set CONFIG_SND_SONICVIBES=m # CONFIG_SND_SPI is not set -CONFIG_SND_SUN8I_CODEC_ANALOG=m # CONFIG_SND_SUPPORT_OLD_API is not set CONFIG_SND_TRIDENT=m CONFIG_SND_USB_6FIRE=m @@ -4530,6 +4531,7 @@ CONFIG_SND_VX222=m CONFIG_SND_YMFPCI=m # CONFIG_SOC_CAMERA is not set # CONFIG_SOC_TI is not set +# CONFIG_SOC_ZTE is not set CONFIG_SOFT_WATCHDOG=m CONFIG_SOLARIS_X86_PARTITION=y # CONFIG_SOLO6X10 is not set @@ -4570,6 +4572,7 @@ CONFIG_SQUASHFS_XATTR=y CONFIG_SQUASHFS_XZ=y CONFIG_SQUASHFS_ZLIB=y # CONFIG_SRAM is not set +# CONFIG_SRF08 is not set # CONFIG_SSB_DEBUG is not set CONFIG_SSB_DRIVER_GPIO=y CONFIG_SSB_DRIVER_PCICORE=y @@ -4588,6 +4591,7 @@ CONFIG_STACK_VALIDATION=y CONFIG_STAGING_MEDIA=y CONFIG_STANDALONE=y # CONFIG_STATIC_KEYS_SELFTEST is not set +# CONFIG_STATIC_USERMODEHELPER is not set CONFIG_STE10XP=m # CONFIG_STE_MODEM_RPROC is not set CONFIG_STK3310=m @@ -4602,10 +4606,6 @@ CONFIG_STMMAC_ETH=m CONFIG_STRICT_DEVMEM=y CONFIG_STRIP_ASM_SYMS=y # CONFIG_STRIP is not set -# CONFIG_SUN50I_A64_CCU is not set -# CONFIG_SUN6I_A31_CCU is not set -# CONFIG_SUN8I_A23_CCU is not set -# CONFIG_SUN8I_A33_CCU is not set CONFIG_SUNDANCE=m # CONFIG_SUNDANCE_MMIO is not set CONFIG_SUNGEM=m @@ -4614,7 +4614,6 @@ CONFIG_SUNRPC_DEBUG=y CONFIG_SUNRPC_GSS=m CONFIG_SUNRPC=m CONFIG_SUNRPC_XPRT_RDMA=m -# CONFIG_SUNXI_CCU is not set CONFIG_SURFACE_3_BUTTON=m CONFIG_SURFACE3_WMI=m # CONFIG_SUSPEND is not set @@ -4695,8 +4694,6 @@ CONFIG_TCP_CONG_YEAH=m CONFIG_TCP_MD5SIG=y # CONFIG_TCS3414 is not set # CONFIG_TCS3472 is not set -CONFIG_TEGRA_GMI=m -CONFIG_TEGRA_IVC=y CONFIG_TEHUTI=m CONFIG_TEKRAM_DONGLE=m CONFIG_TELCLOCK=m @@ -4710,9 +4707,11 @@ CONFIG_TEST_ASYNC_DRIVER_PROBE=m CONFIG_TEST_KSTRTOX=y # CONFIG_TEST_LIST_SORT is not set # CONFIG_TEST_LKM is not set +# CONFIG_TEST_PARMAN is not set # CONFIG_TEST_POWER is not set # CONFIG_TEST_PRINTF is not set # CONFIG_TEST_RHASHTABLE is not set +# CONFIG_TEST_SORT is not set # CONFIG_TEST_STATIC_KEYS is not set # CONFIG_TEST_STRING_HELPERS is not set # CONFIG_TEST_UDELAY is not set @@ -4738,6 +4737,7 @@ CONFIG_THRUSTMASTER_FF=y # CONFIG_TI_ADC128S052 is not set # CONFIG_TI_ADC161S626 is not set # CONFIG_TI_ADS1015 is not set +# CONFIG_TI_ADS7950 is not set # CONFIG_TI_ADS8688 is not set # CONFIG_TI_CPSW_ALE is not set # CONFIG_TI_DAC7512 is not set @@ -4752,9 +4752,11 @@ CONFIG_TIPC_MEDIA_UDP=y CONFIG_TI_SCI_PROTOCOL=m # CONFIG_TI_ST is not set # CONFIG_TI_SYSCON_RESET is not set +# CONFIG_TI_TLC4541 is not set CONFIG_TLAN=m # CONFIG_TMD_HERMES is not set # CONFIG_TMP006 is not set +# CONFIG_TMP007 is not set CONFIG_TMPFS_POSIX_ACL=y CONFIG_TMPFS_XATTR=y CONFIG_TMPFS=y @@ -4829,6 +4831,7 @@ CONFIG_TOUCHSCREEN_WACOM_I2C=m CONFIG_TOUCHSCREEN_WACOM_W8001=m # CONFIG_TOUCHSCREEN_WDT87XX_I2C is not set # CONFIG_TOUCHSCREEN_WM97XX is not set +CONFIG_TOUCHSCREEN_ZET6223=m CONFIG_TOUCHSCREEN_ZFORCE=m # CONFIG_TPL0102 is not set # CONFIG_TPS6105X is not set @@ -4879,7 +4882,7 @@ CONFIG_UIO_AEC=m CONFIG_UIO_CIF=m # CONFIG_UIO_DMEM_GENIRQ is not set CONFIG_UIO_HV_GENERIC=m -CONFIG_UIO=m +# CONFIG_UIO is not set # CONFIG_UIO_MF624 is not set # CONFIG_UIO_NETX is not set CONFIG_UIO_PCI_GENERIC=m @@ -4895,7 +4898,7 @@ CONFIG_UNIX_DIAG=m CONFIG_UNIXWARE_DISKLABEL=y CONFIG_UNIX=y CONFIG_UNUSED_SYMBOLS=y -CONFIG_UPROBE_EVENT=y +CONFIG_UPROBE_EVENTS=y # CONFIG_US5182D is not set CONFIG_USB_ACM=m CONFIG_USB_ADUTUX=m @@ -4912,6 +4915,7 @@ CONFIG_USB_CATC=m CONFIG_USB_CDC_PHONET=m CONFIG_USB_CHAOSKEY=m # CONFIG_USB_CHIPIDEA is not set +# CONFIG_USB_CHIPIDEA_ULPI is not set CONFIG_USB_CXACRU=m # CONFIG_USB_CYPRESS_CY7C63 is not set # CONFIG_USB_CYTHERM is not set @@ -4996,6 +5000,7 @@ CONFIG_USB_HID=y CONFIG_USB_HSIC_USB3503=m CONFIG_USB_HSIC_USB4604=m CONFIG_USB_HSO=m +CONFIG_USB_HUB_USB251XB=m CONFIG_USB_HWA_HCD=m CONFIG_USB_IDMOUSE=m CONFIG_USB_IOWARRIOR=m @@ -5140,6 +5145,7 @@ CONFIG_USB_SERIAL_SPCP8X5=m CONFIG_USB_SERIAL_SSU100=m CONFIG_USB_SERIAL_SYMBOL=m CONFIG_USB_SERIAL_TI=m +CONFIG_USB_SERIAL_UPD78F0730=m CONFIG_USB_SERIAL_VISOR=m CONFIG_USB_SERIAL_WHITEHEAT=m # CONFIG_USB_SERIAL_WISHBONE is not set @@ -5228,6 +5234,7 @@ CONFIG_VFIO_MDEV=m CONFIG_VFIO_PCI=m CONFIG_VGA_ARB_MAX_GPUS=16 CONFIG_VGA_ARB=y +# CONFIG_VGACON_SOFT_SCROLLBACK_PERSISTENT_ENABLE_BY_DEFAULT is not set CONFIG_VGACON_SOFT_SCROLLBACK_SIZE=64 CONFIG_VGACON_SOFT_SCROLLBACK=y CONFIG_VGA_CONSOLE=y @@ -5278,6 +5285,7 @@ CONFIG_VIDEO_HDPVR=m CONFIG_VIDEO_HEXIUM_GEMINI=m CONFIG_VIDEO_HEXIUM_ORION=m # CONFIG_VIDEO_IVTV_ALSA is not set +# CONFIG_VIDEO_IVTV_DEPRECATED_IOCTLS is not set CONFIG_VIDEO_IVTV=m # CONFIG_VIDEO_M5MOLS is not set # CONFIG_VIDEO_MEM2MEM_DEINTERLACE is not set @@ -5299,7 +5307,6 @@ CONFIG_VIDEO_SAA7134_RC=y CONFIG_VIDEO_SAA7146=m CONFIG_VIDEO_SAA7146_VV=m CONFIG_VIDEO_SAA7164=m -CONFIG_VIDEO_SAMSUNG_S5P_CEC=m # CONFIG_VIDEO_SH_MOBILE_CEU is not set # CONFIG_VIDEO_SH_MOBILE_CSI2 is not set # CONFIG_VIDEO_SH_VEU is not set @@ -5335,6 +5342,7 @@ CONFIG_VIDEO_ZORAN_ZR36060=m # CONFIG_VIRT_DRIVERS is not set CONFIG_VIRTIO_BALLOON=m CONFIG_VIRTIO_BLK=m +CONFIG_VIRTIO_BLK_SCSI=y CONFIG_VIRTIO_CONSOLE=y CONFIG_VIRTIO_INPUT=m # CONFIG_VIRTIO_MMIO_CMDLINE_DEVICES is not set @@ -5352,8 +5360,6 @@ CONFIG_VLSI_FIR=m CONFIG_VMCP=y # CONFIG_VME_BUS is not set CONFIG_VMLOGRDR=m -CONFIG_VMWARE_BALLOON=m -CONFIG_VMWARE_PVSCSI=m # CONFIG_VMXNET3 is not set CONFIG_VORTEX=m CONFIG_VSOCKETS=m @@ -5375,6 +5381,7 @@ CONFIG_W1_MASTER_DS2490=m # CONFIG_W1_MASTER_GPIO is not set # CONFIG_W1_MASTER_MATROX is not set CONFIG_W1_SLAVE_BQ27000=m +CONFIG_W1_SLAVE_DS2405=m CONFIG_W1_SLAVE_DS2406=m CONFIG_W1_SLAVE_DS2408=m # CONFIG_W1_SLAVE_DS2408_READBACK is not set @@ -5403,7 +5410,7 @@ CONFIG_WATCHDOG=y # CONFIG_WCN36XX_DEBUGFS is not set CONFIG_WCN36XX=m CONFIG_WDAT_WDT=m -CONFIG_WDTPCI=m +# CONFIG_WDTPCI is not set CONFIG_WIL6210_ISR_COR=y CONFIG_WIL6210=m # CONFIG_WIL6210_TRACING is not set @@ -5448,6 +5455,7 @@ CONFIG_WM8350_POWER=m CONFIG_WM8350_WATCHDOG=m # CONFIG_WQ_POWER_EFFICIENT_DEFAULT is not set # CONFIG_WQ_WATCHDOG is not set +# CONFIG_WW_MUTEX_SELFTEST is not set # CONFIG_X25 is not set # CONFIG_X86_BOOTPARAM_MEMORY_CORRUPTION_CHECK is not set # CONFIG_X86_PTDUMP is not set @@ -5465,7 +5473,7 @@ CONFIG_XFS_QUOTA=y # CONFIG_XILINX_DMA is not set CONFIG_XILINX_GMII2RGMII=m # CONFIG_XILINX_WATCHDOG is not set -CONFIG_XILLYBUS=m +# CONFIG_XILLYBUS is not set # CONFIG_XILLYBUS_OF is not set CONFIG_XILLYBUS_PCIE=m CONFIG_XZ_DEC_IA64=y diff --git a/kernel-x86_64-debug.config b/kernel-x86_64-debug.config index f00a23b9d..905bb6af4 100644 --- a/kernel-x86_64-debug.config +++ b/kernel-x86_64-debug.config @@ -221,10 +221,8 @@ CONFIG_APPLE_PROPERTIES=y CONFIG_AQUANTIA_PHY=m CONFIG_AR5523=m # CONFIG_ARCH_MEMORY_PROBE is not set -# CONFIG_ARCH_TEGRA_186_SOC is not set # CONFIG_ARCNET is not set CONFIG_ARM64_PTDUMP=y -# CONFIG_ARM_SCPI_PROTOCOL is not set # CONFIG_AS3935 is not set CONFIG_ASUS_LAPTOP=m CONFIG_ASUS_NB_WMI=m @@ -381,7 +379,6 @@ CONFIG_BATMAN_ADV_NC=y # CONFIG_BATTERY_DS2781 is not set # CONFIG_BATTERY_DS2782 is not set # CONFIG_BATTERY_GAUGE_LTC2941 is not set -# CONFIG_BATTERY_GOLDFISH is not set # CONFIG_BATTERY_MAX17040 is not set # CONFIG_BATTERY_MAX17042 is not set # CONFIG_BATTERY_SBS is not set @@ -424,6 +421,7 @@ CONFIG_BINFMT_SCRIPT=y CONFIG_BLK_CGROUP=y # CONFIG_BLK_CMDLINE_PARSER is not set CONFIG_BLK_CPQ_CISS_DA=m +CONFIG_BLK_DEBUG_FS=y CONFIG_BLK_DEV_3W_XXXX_RAID=m CONFIG_BLK_DEV_AMD74XX=y CONFIG_BLK_DEV_BSGLIB=y @@ -469,6 +467,7 @@ CONFIG_BLK_DEV_THROTTLING=y CONFIG_BLK_DEV_UMEM=m CONFIG_BLK_DEV=y CONFIG_BLK_DEV_ZONED=y +CONFIG_BLK_SED_OPAL=y CONFIG_BLK_WBT_MQ=y # CONFIG_BLK_WBT_SQ is not set CONFIG_BLK_WBT=y @@ -564,6 +563,7 @@ CONFIG_BT_HCIUART_INTEL=y CONFIG_BT_HCIUART_LL=y CONFIG_BT_HCIUART=m CONFIG_BT_HCIUART_MRVL=y +CONFIG_BT_HCIUART_NOKIA=m CONFIG_BT_HCIUART_QCA=y CONFIG_BT_HCIVHCI=m CONFIG_BT_HIDP=m @@ -665,6 +665,7 @@ CONFIG_CEPH_LIB_PRETTYDEBUG=y # CONFIG_CEPH_LIB_USE_DNS_RESOLVER is not set CONFIG_CFAG12864B=m CONFIG_CFAG12864B_RATE=20 +CONFIG_CFG80211_CRDA_SUPPORT=y CONFIG_CFG80211_DEBUGFS=y CONFIG_CFG80211_DEFAULT_PS=y # CONFIG_CFG80211_DEVELOPER_WARNINGS is not set @@ -682,6 +683,7 @@ CONFIG_CGROUP_NET_CLASSID=y CONFIG_CGROUP_NET_PRIO=y CONFIG_CGROUP_PERF=y CONFIG_CGROUP_PIDS=y +# CONFIG_CGROUP_RDMA is not set CONFIG_CGROUP_SCHED=y CONFIG_CGROUPS=y # CONFIG_CHARGER_BQ2415X is not set @@ -689,6 +691,7 @@ CONFIG_CGROUPS=y # CONFIG_CHARGER_BQ24257 is not set # CONFIG_CHARGER_BQ24735 is not set # CONFIG_CHARGER_BQ25890 is not set +# CONFIG_CHARGER_DETECTOR_MAX14656 is not set # CONFIG_CHARGER_GPIO is not set # CONFIG_CHARGER_ISP1704 is not set # CONFIG_CHARGER_LP8727 is not set @@ -696,6 +699,7 @@ CONFIG_CGROUPS=y # CONFIG_CHARGER_PCF50633 is not set # CONFIG_CHARGER_QCOM_SMBB is not set # CONFIG_CHARGER_RT9455 is not set +# CONFIG_CHARGER_SBS is not set CONFIG_CHARGER_SMB347=m CONFIG_CHECKPOINT_RESTORE=y CONFIG_CHELSIO_T1_1G=y @@ -736,6 +740,7 @@ CONFIG_CLS_U32_PERF=y CONFIG_CM32181=m # CONFIG_CM3232 is not set # CONFIG_CM3323 is not set +CONFIG_CM3605=m # CONFIG_CM36651 is not set CONFIG_CMA_AREAS=7 # CONFIG_CMA_DEBUGFS is not set @@ -749,23 +754,12 @@ CONFIG_CODA_FS=m # CONFIG_COMMON_CLK_CDCE706 is not set # CONFIG_COMMON_CLK_CDCE925 is not set # CONFIG_COMMON_CLK_CS2000_CP is not set -# CONFIG_COMMON_CLK_HI3516CV300 is not set -# CONFIG_COMMON_CLK_HI3519 is not set -# CONFIG_COMMON_CLK_HI3798CV200 is not set -# CONFIG_COMMON_CLK_MT2701_BDPSYS is not set -# CONFIG_COMMON_CLK_MT2701_ETHSYS is not set -# CONFIG_COMMON_CLK_MT2701_HIFSYS is not set -# CONFIG_COMMON_CLK_MT2701_IMGSYS is not set -# CONFIG_COMMON_CLK_MT2701 is not set -# CONFIG_COMMON_CLK_MT2701_MMSYS is not set -# CONFIG_COMMON_CLK_MT2701_VDECSYS is not set -# CONFIG_COMMON_CLK_MT8135 is not set -# CONFIG_COMMON_CLK_MT8173 is not set -# CONFIG_COMMON_CLK_OXNAS is not set # CONFIG_COMMON_CLK_PWM is not set # CONFIG_COMMON_CLK_SI514 is not set # CONFIG_COMMON_CLK_SI5351 is not set +# CONFIG_COMMON_CLK_VC5 is not set # CONFIG_COMMON_CLK_XLNX_CLKWZRD is not set +# CONFIG_COMMON_RESET_HI3660 is not set CONFIG_COMPACTION=y CONFIG_COMPAL_LAPTOP=m # CONFIG_COMPAT_BRK is not set @@ -815,6 +809,7 @@ CONFIG_CROSS_COMPILE="" CONFIG_CROSS_MEMORY_ATTACH=y CONFIG_CRYPTO_842=m CONFIG_CRYPTO_AES_NI_INTEL=y +CONFIG_CRYPTO_AES_TI=m CONFIG_CRYPTO_AES_X86_64=y CONFIG_CRYPTO_AES=y CONFIG_CRYPTO_ANSI_CPRNG=m @@ -838,13 +833,11 @@ CONFIG_CRYPTO_CHACHA20=m CONFIG_CRYPTO_CHACHA20POLY1305=m CONFIG_CRYPTO_CHACHA20_X86_64=m CONFIG_CRYPTO_CMAC=m -CONFIG_CRYPTO_CRC32_ARM_CE=m CONFIG_CRYPTO_CRC32C_INTEL=m CONFIG_CRYPTO_CRC32C_VPMSUM=m CONFIG_CRYPTO_CRC32C=y CONFIG_CRYPTO_CRC32=m CONFIG_CRYPTO_CRC32_PCLMUL=m -CONFIG_CRYPTO_CRCT10DIF_ARM_CE=m CONFIG_CRYPTO_CRCT10DIF_PCLMUL=m CONFIG_CRYPTO_CRYPTD=y CONFIG_CRYPTO_CTR=y @@ -1008,6 +1001,7 @@ CONFIG_DEBUG_OBJECTS=y CONFIG_DEBUG_PERF_USE_VMALLOC=y CONFIG_DEBUG_PI_LIST=y # CONFIG_DEBUG_PINCTRL is not set +CONFIG_DEBUG_REFCOUNT=y CONFIG_DEBUG_RODATA_TEST=y CONFIG_DEBUG_RT_MUTEXES=y # CONFIG_DEBUG_SECTION_MISMATCH is not set @@ -1054,6 +1048,7 @@ CONFIG_DEVFREQ_GOV_SIMPLE_ONDEMAND=m # CONFIG_DEVFREQ_GOV_USERSPACE is not set # CONFIG_DEVKMEM is not set CONFIG_DEVMEM=y +# CONFIG_DEVPORT is not set CONFIG_DEVTMPFS_MOUNT=y CONFIG_DEVTMPFS=y # CONFIG_DGAP is not set @@ -1127,6 +1122,7 @@ CONFIG_DRM_ANALOGIX_ANX78XX=m CONFIG_DRM_AST=m CONFIG_DRM_BOCHS=m CONFIG_DRM_CIRRUS_QEMU=m +# CONFIG_DRM_DEBUG_MM_SELFTEST is not set CONFIG_DRM_DP_AUX_CHARDEV=y # CONFIG_DRM_DUMB_VGA_DAC is not set CONFIG_DRM_DW_HDMI_I2S_AUDIO=m @@ -1137,7 +1133,7 @@ CONFIG_DRM_GMA500=m CONFIG_DRM_HISI_HIBMC=m CONFIG_DRM_I2C_ADV7511_AUDIO=y CONFIG_DRM_I2C_ADV7511=m -# CONFIG_DRM_I2C_ADV7533 is not set +CONFIG_DRM_I2C_ADV7533=y CONFIG_DRM_I2C_CH7006=m CONFIG_DRM_I2C_NXP_TDA998X=m CONFIG_DRM_I2C_SIL164=m @@ -1152,7 +1148,6 @@ CONFIG_DRM_I915_USERPTR=y # CONFIG_DRM_LEGACY is not set CONFIG_DRM_LOAD_EDID_FIRMWARE=y CONFIG_DRM=m -# CONFIG_DRM_MALI_DISPLAY is not set CONFIG_DRM_MGAG200=m # CONFIG_DRM_MGA is not set CONFIG_DRM_MXSFB=m @@ -1176,6 +1171,7 @@ CONFIG_DRM_RADEON_USERPTR=y CONFIG_DRM_SIL_SII8620=m # CONFIG_DRM_SIS is not set # CONFIG_DRM_TDFX is not set +# CONFIG_DRM_TINYDRM is not set CONFIG_DRM_TI_TFP410=m # CONFIG_DRM_TOSHIBA_TC358767 is not set CONFIG_DRM_UDL=m @@ -1270,6 +1266,7 @@ CONFIG_DVB_USB_UMT_010=m CONFIG_DVB_USB_V2=m CONFIG_DVB_USB_VP702X=m CONFIG_DVB_USB_VP7045=m +CONFIG_DVB_USB_ZD1301=m # CONFIG_DW_DMAC_BIG_ENDIAN_IO is not set CONFIG_DW_DMAC_CORE=y CONFIG_DW_DMAC=m @@ -1309,6 +1306,7 @@ CONFIG_EDAC_I82975X=m CONFIG_EDAC_IE31200=m CONFIG_EDAC_LEGACY_SYSFS=y CONFIG_EDAC_MM_EDAC=m +CONFIG_EDAC_PND2=m CONFIG_EDAC_R82600=m CONFIG_EDAC_SBRIDGE=m CONFIG_EDAC_SKX=m @@ -1322,6 +1320,7 @@ CONFIG_EEPROM_93CX6=m # CONFIG_EEPROM_93XX46 is not set CONFIG_EEPROM_AT24=m # CONFIG_EEPROM_AT25 is not set +CONFIG_EEPROM_IDT_89HPESX=m CONFIG_EEPROM_LEGACY=m CONFIG_EEPROM_MAX6875=m CONFIG_EFI_ALLOW_SECURE_BOOT_EXIT=y @@ -1344,10 +1343,10 @@ CONFIG_EFIVAR_FS=y # CONFIG_EFI_VARS_PSTORE is not set CONFIG_EFI=y # CONFIG_EFS_FS is not set -# CONFIG_EMAC_ROCKCHIP is not set # CONFIG_EMBEDDED is not set CONFIG_ENABLE_MUST_CHECK=y # CONFIG_ENABLE_WARN_DEPRECATED is not set +CONFIG_ENA_ETHERNET=m # CONFIG_ENC28J60 is not set CONFIG_ENCLOSURE_SERVICES=m CONFIG_ENCRYPTED_KEYS=y @@ -1376,6 +1375,7 @@ CONFIG_EXT4_FS_SECURITY=y CONFIG_EXT4_FS=y CONFIG_EXT4_USE_FOR_EXT2=y # CONFIG_EXTCON_ADC_JACK is not set +CONFIG_EXTCON_INTEL_INT3496=m # CONFIG_EXTCON is not set # CONFIG_EXTCON_QCOM_SPMI_MISC is not set CONFIG_EXTRA_FIRMWARE="" @@ -1425,7 +1425,6 @@ CONFIG_FB_ATY_BACKLIGHT=y CONFIG_FB_EFI=y # CONFIG_FB_FOREIGN_ENDIAN is not set # CONFIG_FB_GEODE is not set -# CONFIG_FB_GOLDFISH is not set # CONFIG_FB_HECUBA is not set # CONFIG_FB_HGA is not set CONFIG_FB_HYPERV=m @@ -1524,6 +1523,7 @@ CONFIG_FSCACHE_OBJECT_LIST=y CONFIG_FSCACHE_STATS=y CONFIG_FS_DAX=y CONFIG_FS_ENCRYPTION=y +CONFIG_FSI=m # CONFIG_FSL_EDMA is not set # CONFIG_FSL_PQ_MDIO is not set CONFIG_FS_MBCACHE=y @@ -1598,6 +1598,7 @@ CONFIG_GIRBIL_DONGLE=m CONFIG_GPIO_CRYSTAL_COVE=y # CONFIG_GPIO_CS5535 is not set # CONFIG_GPIO_DWAPB is not set +CONFIG_GPIO_EXAR=m # CONFIG_GPIO_F7188X is not set # CONFIG_GPIO_GENERIC_PLATFORM is not set # CONFIG_GPIO_GRGPIO is not set @@ -1617,13 +1618,14 @@ CONFIG_GPIOLIB=y # CONFIG_GPIO_PCA953X is not set # CONFIG_GPIO_PCF857X is not set # CONFIG_GPIO_PCH is not set +CONFIG_GPIO_PCI_IDIO_16=m # CONFIG_GPIO_PISOSR is not set # CONFIG_GPIO_RDC321X is not set # CONFIG_GPIO_SCH311X is not set # CONFIG_GPIO_SCH is not set # CONFIG_GPIO_SX150X is not set # CONFIG_GPIO_SYSCON is not set -CONFIG_GPIO_SYSFS=y +# CONFIG_GPIO_SYSFS is not set # CONFIG_GPIO_TPIC2810 is not set # CONFIG_GPIO_TS4900 is not set # CONFIG_GPIO_TS5500 is not set @@ -1633,7 +1635,6 @@ CONFIG_GPIO_VIPERBOARD=m CONFIG_GPIO_WHISKEY_COVE=y # CONFIG_GPIO_WS16C48 is not set # CONFIG_GPIO_XILINX is not set -# CONFIG_GPIO_ZX is not set CONFIG_GREENASIA_FF=y # CONFIG_GREYBUS is not set # CONFIG_GS_FPGABOOT is not set @@ -1645,6 +1646,7 @@ CONFIG_HAPPYMEAL=m CONFIG_HARDENED_USERCOPY=y CONFIG_HAVE_MEMORY_PRESENT=y # CONFIG_HDC100X is not set +CONFIG_HDMI_LPE_AUDIO=m CONFIG_HEADERS_CHECK=y CONFIG_HERMES_CACHE_FW_ON_INIT=y CONFIG_HERMES=m @@ -1841,6 +1843,7 @@ CONFIG_HW_RANDOM_VIA=m CONFIG_HW_RANDOM_VIRTIO=m CONFIG_HW_RANDOM=y CONFIG_HWSPINLOCK=m +# CONFIG_HX711 is not set CONFIG_HYPERV_BALLOON=m CONFIG_HYPERVISOR_GUEST=y CONFIG_HYPERV_KEYBOARD=m @@ -1882,7 +1885,6 @@ CONFIG_I2C_DIOLAN_U2C=m CONFIG_I2C_HELPER_AUTO=y CONFIG_I2C_HID=m CONFIG_I2C_I801=m -CONFIG_I2C_IMX_LPI2C=m CONFIG_I2C_ISCH=m CONFIG_I2C_ISMT=m CONFIG_I2C_MLXCPLD=m @@ -1980,6 +1982,7 @@ CONFIG_IIO_ST_ACCEL_SPI_3AXIS=m CONFIG_IIO_ST_GYRO_3AXIS=m CONFIG_IIO_ST_GYRO_I2C_3AXIS=m CONFIG_IIO_ST_GYRO_SPI_3AXIS=m +# CONFIG_IIO_ST_LSM6DSX is not set CONFIG_IIO_ST_MAGN_3AXIS=m # CONFIG_IIO_ST_PRESS is not set CONFIG_IIO_SW_DEVICE=m @@ -1996,6 +1999,7 @@ CONFIG_IMA_MEASURE_PCR_IDX=10 # CONFIG_INA2XX_ADC is not set CONFIG_INET6_AH=m CONFIG_INET6_ESP=m +CONFIG_INET6_ESP_OFFLOAD=m CONFIG_INET6_IPCOMP=m CONFIG_INET6_XFRM_MODE_BEET=m CONFIG_INET6_XFRM_MODE_ROUTEOPTIMIZATION=m @@ -2005,6 +2009,7 @@ CONFIG_INET_AH=m CONFIG_INET_DIAG_DESTROY=y CONFIG_INET_DIAG=m CONFIG_INET_ESP=m +CONFIG_INET_ESP_OFFLOAD=m CONFIG_INET_IPCOMP=m CONFIG_INET_RAW_DIAG=m CONFIG_INET_TUNNEL=m @@ -2013,6 +2018,7 @@ CONFIG_INET_XFRM_MODE_BEET=m CONFIG_INET_XFRM_MODE_TRANSPORT=m CONFIG_INET_XFRM_MODE_TUNNEL=m CONFIG_INET=y +# CONFIG_INFINIBAND_BNXT_RE is not set # CONFIG_INFINIBAND_CXGB3_DEBUG is not set CONFIG_INFINIBAND_CXGB3=m CONFIG_INFINIBAND_CXGB4=m @@ -2141,6 +2147,7 @@ CONFIG_INTEL_SMARTCONNECT=y CONFIG_INTEL_SOC_DTS_THERMAL=m CONFIG_INTEL_SOC_PMIC=y # CONFIG_INTEL_TH is not set +CONFIG_INTEL_TURBO_MAX_3=y CONFIG_INTEL_TXT=y CONFIG_INTEL_VBTN=m CONFIG_INTEL_XWAY_PHY=m @@ -2290,6 +2297,7 @@ CONFIG_IP_VS_SH_TAB_BITS=8 CONFIG_IP_VS_TAB_BITS=12 CONFIG_IP_VS_WLC=m CONFIG_IP_VS_WRR=m +CONFIG_IPVTAP=m # CONFIG_IPW2100_DEBUG is not set CONFIG_IPW2100=m CONFIG_IPW2100_MONITOR=y @@ -2337,6 +2345,7 @@ CONFIG_IR_SERIAL=m CONFIG_IR_SERIAL_TRANSMITTER=y CONFIG_IR_SHARP_DECODER=m CONFIG_IR_SONY_DECODER=m +CONFIG_IR_SPI=m CONFIG_IR_STREAMZAP=m CONFIG_IR_TTUSBIR=m CONFIG_IRTTY_SIR=m @@ -2493,6 +2502,7 @@ CONFIG_KEYBOARD_PMIC8XXX=m # CONFIG_KEYBOARD_SUNKBD is not set # CONFIG_KEYBOARD_TCA6416 is not set # CONFIG_KEYBOARD_TCA8418 is not set +CONFIG_KEYBOARD_TM2_TOUCHKEY=m # CONFIG_KEYBOARD_XTKBD is not set CONFIG_KEY_DH_OPERATIONS=y CONFIG_KEYS=y @@ -2504,7 +2514,7 @@ CONFIG_KGDB_TESTS=y CONFIG_KGDB=y CONFIG_KINGSUN_DONGLE=m # CONFIG_KMX61 is not set -CONFIG_KPROBE_EVENT=y +CONFIG_KPROBE_EVENTS=y # CONFIG_KPROBES_SANITY_TEST is not set CONFIG_KPROBES=y CONFIG_KS0108_DELAY=2 @@ -2556,6 +2566,7 @@ CONFIG_LDM_PARTITION=y # CONFIG_LEDS_BCM6358 is not set # CONFIG_LEDS_BD2802 is not set CONFIG_LEDS_BLINKM=m +CONFIG_LEDS_BRIGHTNESS_HW_CHANGED=y CONFIG_LEDS_CLASS_FLASH=m CONFIG_LEDS_CLASS=y CONFIG_LEDS_CLEVO_MAIL=m @@ -2672,6 +2683,8 @@ CONFIG_LOOPBACK_TARGET=m CONFIG_LPC_ICH=m CONFIG_LP_CONSOLE=y CONFIG_LPC_SCH=m +CONFIG_LPFC_NVME_INITIATOR=y +CONFIG_LPFC_NVME_TARGET=y CONFIG_LSI_ET1011C_PHY=m CONFIG_LSM_MMAP_MIN_ADDR=65536 # CONFIG_LTC2485 is not set @@ -2705,6 +2718,7 @@ CONFIG_MACVLAN=m CONFIG_MACVTAP=m # CONFIG_MAG3110 is not set CONFIG_MAGIC_SYSRQ_DEFAULT_ENABLE=0x0 +CONFIG_MAGIC_SYSRQ_SERIAL=y CONFIG_MAGIC_SYSRQ=y # CONFIG_MAILBOX_TEST is not set CONFIG_MAILBOX=y @@ -2712,10 +2726,12 @@ CONFIG_MAILBOX=y CONFIG_MANTIS_CORE=m CONFIG_MARVELL_PHY=m # CONFIG_MAX1027 is not set +# CONFIG_MAX11100 is not set # CONFIG_MAX1363 is not set CONFIG_MAX30100=m # CONFIG_MAX44000 is not set # CONFIG_MAX517 is not set +# CONFIG_MAX5481 is not set # CONFIG_MAX5487 is not set # CONFIG_MAX5821 is not set # CONFIG_MAX63XX_WATCHDOG is not set @@ -2793,7 +2809,6 @@ CONFIG_MEMSTICK_TIFM_MS=m # CONFIG_MEMSTICK_UNSAFE_RESUME is not set # CONFIG_MEMTEST is not set # CONFIG_MEN_A21_WDT is not set -CONFIG_MESON_GXL_PHY=m CONFIG_MESSAGE_LOGLEVEL_DEFAULT=4 # CONFIG_MFD_88PM800 is not set # CONFIG_MFD_88PM805 is not set @@ -2812,6 +2827,7 @@ CONFIG_MESSAGE_LOGLEVEL_DEFAULT=4 # CONFIG_MFD_AXP20X is not set # CONFIG_MFD_BCM590XX is not set CONFIG_MFD_CORE=y +CONFIG_MFD_CPCAP=m # CONFIG_MFD_CROS_EC is not set # CONFIG_MFD_CS5535 is not set # CONFIG_MFD_DA9052_I2C is not set @@ -2861,7 +2877,6 @@ CONFIG_MFD_SM501_GPIO=y CONFIG_MFD_SM501=m # CONFIG_MFD_SMSC is not set # CONFIG_MFD_STMPE is not set -CONFIG_MFD_SUN4I_GPADC=m # CONFIG_MFD_SYSCON is not set # CONFIG_MFD_TC3589X is not set # CONFIG_MFD_TC6393XB is not set @@ -3019,6 +3034,7 @@ CONFIG_MPLS_IPTUNNEL=m CONFIG_MPLS_ROUTING=m # CONFIG_MPSC is not set # CONFIG_MPU3050_I2C is not set +CONFIG_MQ_IOSCHED_DEADLINE=y # CONFIG_MS5611 is not set # CONFIG_MS5637 is not set # CONFIG_MS_BLOCK is not set @@ -3133,6 +3149,7 @@ CONFIG_NET_ACT_MIRRED=m CONFIG_NET_ACT_NAT=m CONFIG_NET_ACT_PEDIT=m CONFIG_NET_ACT_POLICE=m +CONFIG_NET_ACT_SAMPLE=m CONFIG_NET_ACT_SIMP=m CONFIG_NET_ACT_SKBEDIT=m CONFIG_NET_ACT_SKBMOD=m @@ -3266,6 +3283,7 @@ CONFIG_NETFILTER_XT_TARGET_TRACE=m CONFIG_NETFILTER=y CONFIG_NET_FOU_IP_TUNNELS=y CONFIG_NET_FOU=m +CONFIG_NET_IFE=m CONFIG_NET_IFE_SKBMARK=m CONFIG_NET_IFE_SKBPRIO=m CONFIG_NET_IFE_SKBTCINDEX=m @@ -3276,7 +3294,7 @@ CONFIG_NET_IPIP=m CONFIG_NET_IPVTI=m CONFIG_NET_KEY=m CONFIG_NET_KEY_MIGRATE=y -# CONFIG_NET_L3_MASTER_DEV is not set +CONFIG_NET_L3_MASTER_DEV=y CONFIG_NETLABEL=y CONFIG_NETLINK_DIAG=m CONFIG_NET_MPLS_GSO=m @@ -3329,8 +3347,9 @@ CONFIG_NET_VENDOR_ADAPTEC=y CONFIG_NET_VENDOR_AGERE=y # CONFIG_NET_VENDOR_ALACRITECH is not set CONFIG_NET_VENDOR_ALTEON=y -# CONFIG_NET_VENDOR_AMAZON is not set +CONFIG_NET_VENDOR_AMAZON=y CONFIG_NET_VENDOR_AMD=y +# CONFIG_NET_VENDOR_AQUANTIA is not set CONFIG_NET_VENDOR_ARC=y CONFIG_NET_VENDOR_ATHEROS=y # CONFIG_NET_VENDOR_AURORA is not set @@ -3455,6 +3474,8 @@ CONFIG_NF_LOG_IPV6=m CONFIG_NF_LOG_NETDEV=m CONFIG_NF_NAT=m CONFIG_NF_NAT_SNMP_BASIC=m +# CONFIG_NFP_DEBUG is not set +CONFIG_NFP=m # CONFIG_NFP_NET_DEBUG is not set CONFIG_NFP_NETVF=m CONFIG_NF_REJECT_IPV6=m @@ -3526,11 +3547,13 @@ CONFIG_NFT_REDIR=m CONFIG_NFT_REJECT_IPV4=m CONFIG_NFT_REJECT=m CONFIG_NFT_RT=m +CONFIG_NFT_SET_BITMAP=m CONFIG_NFT_SET_HASH=m CONFIG_NFT_SET_RBTREE=m CONFIG_N_GSM=m CONFIG_N_HDLC=m # CONFIG_NI903X_WDT is not set +CONFIG_NIC7018_WDT=m CONFIG_NILFS2_FS=m CONFIG_NIU=m # CONFIG_NL80211_TESTMODE is not set @@ -3674,6 +3697,7 @@ CONFIG_PANTHERLORD_FF=y CONFIG_PARAVIRT_TIME_ACCOUNTING=y CONFIG_PARAVIRT=y # CONFIG_PARIDE is not set +CONFIG_PARMAN=m CONFIG_PARPORT_1284=y # CONFIG_PARPORT_AX88796 is not set CONFIG_PARPORT=m @@ -3731,6 +3755,7 @@ CONFIG_PATA_TOSHIBA=m CONFIG_PATA_TRIFLEX=m CONFIG_PATA_VIA=m CONFIG_PATA_WINBOND=m +# CONFIG_PC104 is not set # CONFIG_PC8736x_GPIO is not set # CONFIG_PC87413_WDT is not set CONFIG_PCCARD=y @@ -3797,6 +3822,8 @@ CONFIG_PERSISTENT_KEYRINGS=y CONFIG_PHYLIB=y # CONFIG_PHY_PXA_28NM_HSIC is not set # CONFIG_PHY_PXA_28NM_USB2 is not set +# CONFIG_PHY_QCOM_USB_HSIC is not set +# CONFIG_PHY_QCOM_USB_HS is not set CONFIG_PHYSICAL_ALIGN=0x1000000 CONFIG_PHYSICAL_START=0x1000000 # CONFIG_PHY_ST_SPEAR1310_MIPHY is not set @@ -3808,9 +3835,11 @@ CONFIG_PINCONF=y CONFIG_PINCTRL_BAYTRAIL=y CONFIG_PINCTRL_BROXTON=m CONFIG_PINCTRL_CHERRYVIEW=y +# CONFIG_PINCTRL_GEMINILAKE is not set CONFIG_PINCTRL_MSM8994=m CONFIG_PINCTRL_SUNRISEPOINT=m # CONFIG_PINCTRL_SX150X is not set +# CONFIG_PINCTRL_TI_IODELAY is not set CONFIG_PINCTRL=y CONFIG_PINMUX=y CONFIG_PKCS7_MESSAGE_PARSER=y @@ -3876,6 +3905,7 @@ CONFIG_PPTP=m CONFIG_PREEMPT_VOLUNTARY=y CONFIG_PREVENT_FIRMWARE_BUILD=y CONFIG_PRINTER=m +CONFIG_PRINTK_SAFE_LOG_BUF_SHIFT=12 CONFIG_PRINTK_TIME=y # CONFIG_PRINT_QUOTA_WARNING is not set # CONFIG_PRISM2_USB is not set @@ -3891,11 +3921,13 @@ CONFIG_PROVE_LOCKING=y # CONFIG_PROVE_RCU_REPEATEDLY is not set CONFIG_PROVE_RCU=y CONFIG_PROVIDE_OHCI1394_DMA_INIT=y +CONFIG_PSAMPLE=m # CONFIG_PSTORE_CONSOLE is not set # CONFIG_PSTORE_FTRACE is not set # CONFIG_PSTORE_PMSG is not set CONFIG_PSTORE_RAM=m CONFIG_PSTORE=y +CONFIG_PTP_1588_CLOCK_KVM=m CONFIG_PTP_1588_CLOCK=m CONFIG_PTP_1588_CLOCK_PCH=m # CONFIG_PUNIT_ATOM_DEBUG is not set @@ -3909,14 +3941,15 @@ CONFIG_PWM_LPSS_PLATFORM=m # CONFIG_PWM_PCA9685 is not set CONFIG_PWM=y CONFIG_PWRSEQ_EMMC=m +# CONFIG_PWRSEQ_SD8787 is not set CONFIG_PWRSEQ_SIMPLE=m # CONFIG_QCA7000 is not set CONFIG_QCOM_ADSP_PIL=m -# CONFIG_QCOM_EBI2 is not set # CONFIG_QCOM_EMAC is not set # CONFIG_QCOM_HIDMA is not set # CONFIG_QCOM_HIDMA_MGMT is not set CONFIG_QEDE=m +CONFIG_QEDF=m CONFIG_QEDI=m CONFIG_QED=m CONFIG_QED_SRIOV=y @@ -3962,7 +3995,6 @@ CONFIG_RADIO_TERRATEC=m CONFIG_RADIO_TRUST=m CONFIG_RADIO_TYPHOON=m CONFIG_RADIO_WL1273=m -# CONFIG_RADIO_WL128X is not set # depends on TI_ST which we don't enable CONFIG_RADIO_ZOLTRIX=m CONFIG_RAID_ATTRS=m # CONFIG_RANDOM32_SELFTEST is not set @@ -4009,6 +4041,7 @@ CONFIG_REALTEK_AUTOPM=y CONFIG_REALTEK_PHY=m CONFIG_REGMAP_I2C=y CONFIG_REGMAP=y +CONFIG_REGULATOR_CPCAP=m # CONFIG_REGULATOR_DEBUG is not set # CONFIG_REGULATOR is not set # CONFIG_REISERFS_CHECK is not set @@ -4496,6 +4529,7 @@ CONFIG_SENSORS_SIS5595=m CONFIG_SENSORS_SMSC47B397=m CONFIG_SENSORS_SMSC47M192=m CONFIG_SENSORS_SMSC47M1=m +# CONFIG_SENSORS_STTS751 is not set CONFIG_SENSORS_TC654=m CONFIG_SENSORS_TC74=m CONFIG_SENSORS_THMC50=m @@ -4532,13 +4566,16 @@ CONFIG_SERIAL_8250_CS=m # CONFIG_SERIAL_8250_DEPRECATED_OPTIONS is not set # CONFIG_SERIAL_8250_DETECT_IRQ is not set CONFIG_SERIAL_8250_DW=y +CONFIG_SERIAL_8250_EXAR=m CONFIG_SERIAL_8250_EXTENDED=y # CONFIG_SERIAL_8250_FINTEK is not set # CONFIG_SERIAL_8250_INGENIC is not set +CONFIG_SERIAL_8250_LPSS=m CONFIG_SERIAL_8250_MANY_PORTS=y CONFIG_SERIAL_8250_MID=y CONFIG_SERIAL_8250_MOXA=m CONFIG_SERIAL_8250_NR_UARTS=32 +CONFIG_SERIAL_8250_PCI=m CONFIG_SERIAL_8250_RSA=y CONFIG_SERIAL_8250_RT288X=y CONFIG_SERIAL_8250_RUNTIME_UARTS=32 @@ -4551,6 +4588,8 @@ CONFIG_SERIAL_ARC_NR_PORTS=1 # CONFIG_SERIAL_CONEXANT_DIGICOLOR is not set CONFIG_SERIAL_CORE_CONSOLE=y CONFIG_SERIAL_CORE=y +CONFIG_SERIAL_DEV_BUS=y +CONFIG_SERIAL_DEV_CTRL_TTYPORT=y # CONFIG_SERIAL_FSL_LPUART is not set # CONFIG_SERIAL_IFX6X60 is not set CONFIG_SERIAL_JSM=m @@ -4599,6 +4638,7 @@ CONFIG_SH_ETH=m # CONFIG_SIGMA is not set CONFIG_SIGMATEL_FIR=m CONFIG_SIGNED_PE_FILE_VERIFICATION=y +# CONFIG_SILEAD_DMI is not set CONFIG_SIS190=m CONFIG_SIS900=m # CONFIG_SKFP is not set @@ -4619,6 +4659,7 @@ CONFIG_SLUB_CPU_PARTIAL=y CONFIG_SLUB=y CONFIG_SMARTJOYPLUS_FF=y CONFIG_SMC_IRCC_FIR=m +# CONFIG_SMC is not set # CONFIG_SM_FTL is not set CONFIG_SMP=y # CONFIG_SMSC37B787_WDT is not set @@ -4764,7 +4805,7 @@ CONFIG_SND_SEQUENCER=m CONFIG_SND_SEQUENCER_OSS=y CONFIG_SND_SERIAL_U16550=m CONFIG_SND_SIMPLE_CARD=m -# CONFIG_SND_SIMPLE_SCU_CARD is not set +CONFIG_SND_SIMPLE_SCU_CARD=m CONFIG_SND_SIS7019=m CONFIG_SND_SOC_AC97_CODEC=m # CONFIG_SND_SOC_ADAU1701 is not set @@ -4796,7 +4837,9 @@ CONFIG_SND_SOC_CS42L42=m # CONFIG_SND_SOC_CS4349 is not set # CONFIG_SND_SOC_CS53L30 is not set CONFIG_SND_SOC_DMIC=m -# CONFIG_SND_SOC_ES8328 is not set +CONFIG_SND_SOC_ES8328_I2C=m +CONFIG_SND_SOC_ES8328=m +CONFIG_SND_SOC_ES8328_SPI=m # CONFIG_SND_SOC_FSL_ASOC_CARD is not set # CONFIG_SND_SOC_FSL_ASRC is not set # CONFIG_SND_SOC_FSL_ESAI is not set @@ -4834,6 +4877,7 @@ CONFIG_SND_SOC=m # CONFIG_SND_SOC_MAX9860 is not set # CONFIG_SND_SOC_MSM8916_WCD_ANALOG is not set # CONFIG_SND_SOC_MSM8916_WCD_DIGITAL is not set +CONFIG_SND_SOC_NAU8540=m # CONFIG_SND_SOC_NAU8810 is not set # CONFIG_SND_SOC_PCM1681 is not set # CONFIG_SND_SOC_PCM179X_I2C is not set @@ -4889,7 +4933,6 @@ CONFIG_SND_SOC_TS3A227E=m # CONFIG_SND_SOC_XTFPGA_I2S is not set CONFIG_SND_SONICVIBES=m # CONFIG_SND_SPI is not set -CONFIG_SND_SUN8I_CODEC_ANALOG=m # CONFIG_SND_SUPPORT_OLD_API is not set CONFIG_SND_TRIDENT=m CONFIG_SND_USB_6FIRE=m @@ -4912,9 +4955,11 @@ CONFIG_SND_VIA82XX_MODEM=m CONFIG_SND_VIRMIDI=m CONFIG_SND_VIRTUOSO=m CONFIG_SND_VX222=m +CONFIG_SND_X86=y CONFIG_SND_YMFPCI=m # CONFIG_SOC_CAMERA is not set # CONFIG_SOC_TI is not set +# CONFIG_SOC_ZTE is not set CONFIG_SOFT_WATCHDOG=m CONFIG_SOLARIS_X86_PARTITION=y # CONFIG_SOLO6X10 is not set @@ -4967,6 +5012,7 @@ CONFIG_SQUASHFS_XATTR=y CONFIG_SQUASHFS_XZ=y CONFIG_SQUASHFS_ZLIB=y # CONFIG_SRAM is not set +# CONFIG_SRF08 is not set # CONFIG_SSB_DEBUG is not set CONFIG_SSB_DRIVER_GPIO=y CONFIG_SSB_DRIVER_PCICORE=y @@ -4984,6 +5030,7 @@ CONFIG_STAGING_MEDIA=y CONFIG_STAGING=y CONFIG_STANDALONE=y # CONFIG_STATIC_KEYS_SELFTEST is not set +# CONFIG_STATIC_USERMODEHELPER is not set CONFIG_STE10XP=m # CONFIG_STE_MODEM_RPROC is not set CONFIG_STK3310=m @@ -4998,10 +5045,6 @@ CONFIG_STMMAC_ETH=m CONFIG_STRICT_DEVMEM=y CONFIG_STRIP_ASM_SYMS=y # CONFIG_STRIP is not set -# CONFIG_SUN50I_A64_CCU is not set -# CONFIG_SUN6I_A31_CCU is not set -# CONFIG_SUN8I_A23_CCU is not set -# CONFIG_SUN8I_A33_CCU is not set CONFIG_SUNDANCE=m # CONFIG_SUNDANCE_MMIO is not set CONFIG_SUNGEM=m @@ -5010,7 +5053,6 @@ CONFIG_SUNRPC_DEBUG=y CONFIG_SUNRPC_GSS=m CONFIG_SUNRPC=m CONFIG_SUNRPC_XPRT_RDMA=m -# CONFIG_SUNXI_CCU is not set CONFIG_SURFACE_3_BUTTON=m CONFIG_SURFACE3_WMI=m CONFIG_SURFACE_PRO3_BUTTON=m @@ -5094,8 +5136,6 @@ CONFIG_TCP_CONG_YEAH=m CONFIG_TCP_MD5SIG=y # CONFIG_TCS3414 is not set # CONFIG_TCS3472 is not set -CONFIG_TEGRA_GMI=m -CONFIG_TEGRA_IVC=y CONFIG_TEHUTI=m CONFIG_TEKRAM_DONGLE=m CONFIG_TELCLOCK=m @@ -5109,9 +5149,11 @@ CONFIG_TEST_ASYNC_DRIVER_PROBE=m CONFIG_TEST_KSTRTOX=y CONFIG_TEST_LIST_SORT=y # CONFIG_TEST_LKM is not set +# CONFIG_TEST_PARMAN is not set # CONFIG_TEST_POWER is not set # CONFIG_TEST_PRINTF is not set # CONFIG_TEST_RHASHTABLE is not set +# CONFIG_TEST_SORT is not set # CONFIG_TEST_STATIC_KEYS is not set # CONFIG_TEST_STRING_HELPERS is not set # CONFIG_TEST_UDELAY is not set @@ -5143,6 +5185,7 @@ CONFIG_THUNDERBOLT=m # CONFIG_TI_ADC128S052 is not set # CONFIG_TI_ADC161S626 is not set # CONFIG_TI_ADS1015 is not set +# CONFIG_TI_ADS7950 is not set # CONFIG_TI_ADS8688 is not set # CONFIG_TI_CPSW_ALE is not set # CONFIG_TI_DAC7512 is not set @@ -5157,9 +5200,11 @@ CONFIG_TIPC_MEDIA_UDP=y CONFIG_TI_SCI_PROTOCOL=m # CONFIG_TI_ST is not set # CONFIG_TI_SYSCON_RESET is not set +# CONFIG_TI_TLC4541 is not set CONFIG_TLAN=m # CONFIG_TMD_HERMES is not set # CONFIG_TMP006 is not set +# CONFIG_TMP007 is not set CONFIG_TMPFS_POSIX_ACL=y CONFIG_TMPFS_XATTR=y CONFIG_TMPFS=y @@ -5233,6 +5278,7 @@ CONFIG_TOUCHSCREEN_WACOM_I2C=m CONFIG_TOUCHSCREEN_WACOM_W8001=m # CONFIG_TOUCHSCREEN_WDT87XX_I2C is not set # CONFIG_TOUCHSCREEN_WM97XX is not set +CONFIG_TOUCHSCREEN_ZET6223=m CONFIG_TOUCHSCREEN_ZFORCE=m # CONFIG_TPL0102 is not set # CONFIG_TPS6105X is not set @@ -5301,7 +5347,7 @@ CONFIG_UNIX_DIAG=m CONFIG_UNIXWARE_DISKLABEL=y CONFIG_UNIX=y CONFIG_UNUSED_SYMBOLS=y -CONFIG_UPROBE_EVENT=y +CONFIG_UPROBE_EVENTS=y # CONFIG_US5182D is not set CONFIG_USB_ACM=m CONFIG_USB_ADUTUX=m @@ -5318,6 +5364,7 @@ CONFIG_USB_CATC=m CONFIG_USB_CDC_PHONET=m CONFIG_USB_CHAOSKEY=m # CONFIG_USB_CHIPIDEA is not set +# CONFIG_USB_CHIPIDEA_ULPI is not set CONFIG_USB_CXACRU=m # CONFIG_USB_CYPRESS_CY7C63 is not set # CONFIG_USB_CYTHERM is not set @@ -5402,6 +5449,7 @@ CONFIG_USB_HID=y CONFIG_USB_HSIC_USB3503=m CONFIG_USB_HSIC_USB4604=m CONFIG_USB_HSO=m +CONFIG_USB_HUB_USB251XB=m CONFIG_USB_HWA_HCD=m CONFIG_USB_IDMOUSE=m CONFIG_USB_IOWARRIOR=m @@ -5546,6 +5594,7 @@ CONFIG_USB_SERIAL_SPCP8X5=m CONFIG_USB_SERIAL_SSU100=m CONFIG_USB_SERIAL_SYMBOL=m CONFIG_USB_SERIAL_TI=m +CONFIG_USB_SERIAL_UPD78F0730=m CONFIG_USB_SERIAL_VISOR=m CONFIG_USB_SERIAL_WHITEHEAT=m # CONFIG_USB_SERIAL_WISHBONE is not set @@ -5636,6 +5685,7 @@ CONFIG_VFIO_PCI=m CONFIG_VFIO_PCI_VGA=y CONFIG_VGA_ARB_MAX_GPUS=16 CONFIG_VGA_ARB=y +# CONFIG_VGACON_SOFT_SCROLLBACK_PERSISTENT_ENABLE_BY_DEFAULT is not set CONFIG_VGACON_SOFT_SCROLLBACK_SIZE=64 CONFIG_VGACON_SOFT_SCROLLBACK=y CONFIG_VGA_CONSOLE=y @@ -5688,6 +5738,7 @@ CONFIG_VIDEO_HDPVR=m CONFIG_VIDEO_HEXIUM_GEMINI=m CONFIG_VIDEO_HEXIUM_ORION=m # CONFIG_VIDEO_IVTV_ALSA is not set +# CONFIG_VIDEO_IVTV_DEPRECATED_IOCTLS is not set CONFIG_VIDEO_IVTV=m # CONFIG_VIDEO_M5MOLS is not set # CONFIG_VIDEO_MEM2MEM_DEINTERLACE is not set @@ -5709,7 +5760,6 @@ CONFIG_VIDEO_SAA7134_RC=y CONFIG_VIDEO_SAA7146=m CONFIG_VIDEO_SAA7146_VV=m CONFIG_VIDEO_SAA7164=m -CONFIG_VIDEO_SAMSUNG_S5P_CEC=m # CONFIG_VIDEO_SH_MOBILE_CEU is not set # CONFIG_VIDEO_SH_MOBILE_CSI2 is not set # CONFIG_VIDEO_SH_VEU is not set @@ -5746,6 +5796,7 @@ CONFIG_VIDEO_ZORAN_ZR36060=m # CONFIG_VIRT_DRIVERS is not set CONFIG_VIRTIO_BALLOON=m CONFIG_VIRTIO_BLK=m +CONFIG_VIRTIO_BLK_SCSI=y CONFIG_VIRTIO_CONSOLE=m CONFIG_VIRTIO_INPUT=m # CONFIG_VIRTIO_MMIO_CMDLINE_DEVICES is not set @@ -5790,6 +5841,7 @@ CONFIG_W1_MASTER_DS2490=m # CONFIG_W1_MASTER_GPIO is not set # CONFIG_W1_MASTER_MATROX is not set CONFIG_W1_SLAVE_BQ27000=m +CONFIG_W1_SLAVE_DS2405=m CONFIG_W1_SLAVE_DS2406=m CONFIG_W1_SLAVE_DS2408=m # CONFIG_W1_SLAVE_DS2408_READBACK is not set @@ -5862,6 +5914,7 @@ CONFIG_WM8350_POWER=m CONFIG_WM8350_WATCHDOG=m # CONFIG_WQ_POWER_EFFICIENT_DEFAULT is not set CONFIG_WQ_WATCHDOG=y +# CONFIG_WW_MUTEX_SELFTEST is not set # CONFIG_X25 is not set CONFIG_X86_64_ACPI_NUMA=y CONFIG_X86_ACPI_CPUFREQ_CPB=y diff --git a/kernel-x86_64.config b/kernel-x86_64.config index 81a2dfb5d..4c24a5330 100644 --- a/kernel-x86_64.config +++ b/kernel-x86_64.config @@ -221,10 +221,7 @@ CONFIG_APPLE_PROPERTIES=y CONFIG_AQUANTIA_PHY=m CONFIG_AR5523=m # CONFIG_ARCH_MEMORY_PROBE is not set -# CONFIG_ARCH_TEGRA_186_SOC is not set # CONFIG_ARCNET is not set -# CONFIG_ARM64_PTDUMP is not set -# CONFIG_ARM_SCPI_PROTOCOL is not set # CONFIG_AS3935 is not set CONFIG_ASUS_LAPTOP=m CONFIG_ASUS_NB_WMI=m @@ -381,7 +378,6 @@ CONFIG_BATMAN_ADV_NC=y # CONFIG_BATTERY_DS2781 is not set # CONFIG_BATTERY_DS2782 is not set # CONFIG_BATTERY_GAUGE_LTC2941 is not set -# CONFIG_BATTERY_GOLDFISH is not set # CONFIG_BATTERY_MAX17040 is not set # CONFIG_BATTERY_MAX17042 is not set # CONFIG_BATTERY_SBS is not set @@ -424,6 +420,7 @@ CONFIG_BINFMT_SCRIPT=y CONFIG_BLK_CGROUP=y # CONFIG_BLK_CMDLINE_PARSER is not set CONFIG_BLK_CPQ_CISS_DA=m +CONFIG_BLK_DEBUG_FS=y CONFIG_BLK_DEV_3W_XXXX_RAID=m CONFIG_BLK_DEV_AMD74XX=y CONFIG_BLK_DEV_BSGLIB=y @@ -469,6 +466,7 @@ CONFIG_BLK_DEV_THROTTLING=y CONFIG_BLK_DEV_UMEM=m CONFIG_BLK_DEV=y CONFIG_BLK_DEV_ZONED=y +CONFIG_BLK_SED_OPAL=y CONFIG_BLK_WBT_MQ=y # CONFIG_BLK_WBT_SQ is not set CONFIG_BLK_WBT=y @@ -564,6 +562,7 @@ CONFIG_BT_HCIUART_INTEL=y CONFIG_BT_HCIUART_LL=y CONFIG_BT_HCIUART=m CONFIG_BT_HCIUART_MRVL=y +CONFIG_BT_HCIUART_NOKIA=m CONFIG_BT_HCIUART_QCA=y CONFIG_BT_HCIVHCI=m CONFIG_BT_HIDP=m @@ -665,6 +664,7 @@ CONFIG_CEPH_LIB=m # CONFIG_CEPH_LIB_USE_DNS_RESOLVER is not set CONFIG_CFAG12864B=m CONFIG_CFAG12864B_RATE=20 +CONFIG_CFG80211_CRDA_SUPPORT=y CONFIG_CFG80211_DEBUGFS=y CONFIG_CFG80211_DEFAULT_PS=y # CONFIG_CFG80211_DEVELOPER_WARNINGS is not set @@ -682,6 +682,7 @@ CONFIG_CGROUP_NET_CLASSID=y CONFIG_CGROUP_NET_PRIO=y CONFIG_CGROUP_PERF=y CONFIG_CGROUP_PIDS=y +# CONFIG_CGROUP_RDMA is not set CONFIG_CGROUP_SCHED=y CONFIG_CGROUPS=y # CONFIG_CHARGER_BQ2415X is not set @@ -689,6 +690,7 @@ CONFIG_CGROUPS=y # CONFIG_CHARGER_BQ24257 is not set # CONFIG_CHARGER_BQ24735 is not set # CONFIG_CHARGER_BQ25890 is not set +# CONFIG_CHARGER_DETECTOR_MAX14656 is not set # CONFIG_CHARGER_GPIO is not set # CONFIG_CHARGER_ISP1704 is not set # CONFIG_CHARGER_LP8727 is not set @@ -696,6 +698,7 @@ CONFIG_CGROUPS=y # CONFIG_CHARGER_PCF50633 is not set # CONFIG_CHARGER_QCOM_SMBB is not set # CONFIG_CHARGER_RT9455 is not set +# CONFIG_CHARGER_SBS is not set CONFIG_CHARGER_SMB347=m CONFIG_CHECKPOINT_RESTORE=y CONFIG_CHELSIO_T1_1G=y @@ -736,6 +739,7 @@ CONFIG_CLS_U32_PERF=y CONFIG_CM32181=m # CONFIG_CM3232 is not set # CONFIG_CM3323 is not set +CONFIG_CM3605=m # CONFIG_CM36651 is not set CONFIG_CMA_AREAS=7 # CONFIG_CMA_DEBUGFS is not set @@ -749,23 +753,12 @@ CONFIG_CODA_FS=m # CONFIG_COMMON_CLK_CDCE706 is not set # CONFIG_COMMON_CLK_CDCE925 is not set # CONFIG_COMMON_CLK_CS2000_CP is not set -# CONFIG_COMMON_CLK_HI3516CV300 is not set -# CONFIG_COMMON_CLK_HI3519 is not set -# CONFIG_COMMON_CLK_HI3798CV200 is not set -# CONFIG_COMMON_CLK_MT2701_BDPSYS is not set -# CONFIG_COMMON_CLK_MT2701_ETHSYS is not set -# CONFIG_COMMON_CLK_MT2701_HIFSYS is not set -# CONFIG_COMMON_CLK_MT2701_IMGSYS is not set -# CONFIG_COMMON_CLK_MT2701 is not set -# CONFIG_COMMON_CLK_MT2701_MMSYS is not set -# CONFIG_COMMON_CLK_MT2701_VDECSYS is not set -# CONFIG_COMMON_CLK_MT8135 is not set -# CONFIG_COMMON_CLK_MT8173 is not set -# CONFIG_COMMON_CLK_OXNAS is not set # CONFIG_COMMON_CLK_PWM is not set # CONFIG_COMMON_CLK_SI514 is not set # CONFIG_COMMON_CLK_SI5351 is not set +# CONFIG_COMMON_CLK_VC5 is not set # CONFIG_COMMON_CLK_XLNX_CLKWZRD is not set +# CONFIG_COMMON_RESET_HI3660 is not set CONFIG_COMPACTION=y CONFIG_COMPAL_LAPTOP=m # CONFIG_COMPAT_BRK is not set @@ -814,6 +807,7 @@ CONFIG_CROSS_COMPILE="" CONFIG_CROSS_MEMORY_ATTACH=y CONFIG_CRYPTO_842=m CONFIG_CRYPTO_AES_NI_INTEL=y +CONFIG_CRYPTO_AES_TI=m CONFIG_CRYPTO_AES_X86_64=y CONFIG_CRYPTO_AES=y CONFIG_CRYPTO_ANSI_CPRNG=m @@ -837,13 +831,11 @@ CONFIG_CRYPTO_CHACHA20=m CONFIG_CRYPTO_CHACHA20POLY1305=m CONFIG_CRYPTO_CHACHA20_X86_64=m CONFIG_CRYPTO_CMAC=m -CONFIG_CRYPTO_CRC32_ARM_CE=m CONFIG_CRYPTO_CRC32C_INTEL=m CONFIG_CRYPTO_CRC32C_VPMSUM=m CONFIG_CRYPTO_CRC32C=y CONFIG_CRYPTO_CRC32=m CONFIG_CRYPTO_CRC32_PCLMUL=m -CONFIG_CRYPTO_CRCT10DIF_ARM_CE=m CONFIG_CRYPTO_CRCT10DIF_PCLMUL=m CONFIG_CRYPTO_CRYPTD=y CONFIG_CRYPTO_CTR=y @@ -1000,6 +992,7 @@ CONFIG_DEBUG_OBJECTS_ENABLE_DEFAULT=1 # CONFIG_DEBUG_PERF_USE_VMALLOC is not set # CONFIG_DEBUG_PI_LIST is not set # CONFIG_DEBUG_PINCTRL is not set +# CONFIG_DEBUG_REFCOUNT is not set CONFIG_DEBUG_RODATA_TEST=y # CONFIG_DEBUG_RT_MUTEXES is not set # CONFIG_DEBUG_SECTION_MISMATCH is not set @@ -1045,6 +1038,7 @@ CONFIG_DEVFREQ_GOV_SIMPLE_ONDEMAND=m # CONFIG_DEVFREQ_GOV_USERSPACE is not set # CONFIG_DEVKMEM is not set CONFIG_DEVMEM=y +# CONFIG_DEVPORT is not set CONFIG_DEVTMPFS_MOUNT=y CONFIG_DEVTMPFS=y # CONFIG_DGAP is not set @@ -1117,6 +1111,7 @@ CONFIG_DRM_ANALOGIX_ANX78XX=m CONFIG_DRM_AST=m CONFIG_DRM_BOCHS=m CONFIG_DRM_CIRRUS_QEMU=m +# CONFIG_DRM_DEBUG_MM_SELFTEST is not set CONFIG_DRM_DP_AUX_CHARDEV=y # CONFIG_DRM_DUMB_VGA_DAC is not set CONFIG_DRM_DW_HDMI_I2S_AUDIO=m @@ -1127,7 +1122,7 @@ CONFIG_DRM_GMA500=m CONFIG_DRM_HISI_HIBMC=m CONFIG_DRM_I2C_ADV7511_AUDIO=y CONFIG_DRM_I2C_ADV7511=m -# CONFIG_DRM_I2C_ADV7533 is not set +CONFIG_DRM_I2C_ADV7533=y CONFIG_DRM_I2C_CH7006=m CONFIG_DRM_I2C_NXP_TDA998X=m CONFIG_DRM_I2C_SIL164=m @@ -1142,7 +1137,6 @@ CONFIG_DRM_I915_USERPTR=y # CONFIG_DRM_LEGACY is not set CONFIG_DRM_LOAD_EDID_FIRMWARE=y CONFIG_DRM=m -# CONFIG_DRM_MALI_DISPLAY is not set CONFIG_DRM_MGAG200=m # CONFIG_DRM_MGA is not set CONFIG_DRM_MXSFB=m @@ -1166,6 +1160,7 @@ CONFIG_DRM_RADEON_USERPTR=y CONFIG_DRM_SIL_SII8620=m # CONFIG_DRM_SIS is not set # CONFIG_DRM_TDFX is not set +# CONFIG_DRM_TINYDRM is not set CONFIG_DRM_TI_TFP410=m # CONFIG_DRM_TOSHIBA_TC358767 is not set CONFIG_DRM_UDL=m @@ -1260,6 +1255,7 @@ CONFIG_DVB_USB_UMT_010=m CONFIG_DVB_USB_V2=m CONFIG_DVB_USB_VP702X=m CONFIG_DVB_USB_VP7045=m +CONFIG_DVB_USB_ZD1301=m # CONFIG_DW_DMAC_BIG_ENDIAN_IO is not set CONFIG_DW_DMAC_CORE=y CONFIG_DW_DMAC=m @@ -1299,6 +1295,7 @@ CONFIG_EDAC_I82975X=m CONFIG_EDAC_IE31200=m CONFIG_EDAC_LEGACY_SYSFS=y CONFIG_EDAC_MM_EDAC=m +CONFIG_EDAC_PND2=m CONFIG_EDAC_R82600=m CONFIG_EDAC_SBRIDGE=m CONFIG_EDAC_SKX=m @@ -1312,6 +1309,7 @@ CONFIG_EEPROM_93CX6=m # CONFIG_EEPROM_93XX46 is not set CONFIG_EEPROM_AT24=m # CONFIG_EEPROM_AT25 is not set +CONFIG_EEPROM_IDT_89HPESX=m CONFIG_EEPROM_LEGACY=m CONFIG_EEPROM_MAX6875=m CONFIG_EFI_ALLOW_SECURE_BOOT_EXIT=y @@ -1334,10 +1332,10 @@ CONFIG_EFIVAR_FS=y # CONFIG_EFI_VARS_PSTORE is not set CONFIG_EFI=y # CONFIG_EFS_FS is not set -# CONFIG_EMAC_ROCKCHIP is not set # CONFIG_EMBEDDED is not set CONFIG_ENABLE_MUST_CHECK=y # CONFIG_ENABLE_WARN_DEPRECATED is not set +CONFIG_ENA_ETHERNET=m # CONFIG_ENC28J60 is not set CONFIG_ENCLOSURE_SERVICES=m CONFIG_ENCRYPTED_KEYS=y @@ -1366,6 +1364,7 @@ CONFIG_EXT4_FS_SECURITY=y CONFIG_EXT4_FS=y CONFIG_EXT4_USE_FOR_EXT2=y # CONFIG_EXTCON_ADC_JACK is not set +CONFIG_EXTCON_INTEL_INT3496=m # CONFIG_EXTCON is not set # CONFIG_EXTCON_QCOM_SPMI_MISC is not set CONFIG_EXTRA_FIRMWARE="" @@ -1408,7 +1407,6 @@ CONFIG_FB_ATY_BACKLIGHT=y CONFIG_FB_EFI=y # CONFIG_FB_FOREIGN_ENDIAN is not set # CONFIG_FB_GEODE is not set -# CONFIG_FB_GOLDFISH is not set # CONFIG_FB_HECUBA is not set # CONFIG_FB_HGA is not set CONFIG_FB_HYPERV=m @@ -1507,6 +1505,7 @@ CONFIG_FSCACHE_OBJECT_LIST=y CONFIG_FSCACHE_STATS=y CONFIG_FS_DAX=y CONFIG_FS_ENCRYPTION=y +CONFIG_FSI=m # CONFIG_FSL_EDMA is not set # CONFIG_FSL_PQ_MDIO is not set CONFIG_FS_MBCACHE=y @@ -1581,6 +1580,7 @@ CONFIG_GIRBIL_DONGLE=m CONFIG_GPIO_CRYSTAL_COVE=y # CONFIG_GPIO_CS5535 is not set # CONFIG_GPIO_DWAPB is not set +CONFIG_GPIO_EXAR=m # CONFIG_GPIO_F7188X is not set # CONFIG_GPIO_GENERIC_PLATFORM is not set # CONFIG_GPIO_GRGPIO is not set @@ -1600,13 +1600,14 @@ CONFIG_GPIOLIB=y # CONFIG_GPIO_PCA953X is not set # CONFIG_GPIO_PCF857X is not set # CONFIG_GPIO_PCH is not set +CONFIG_GPIO_PCI_IDIO_16=m # CONFIG_GPIO_PISOSR is not set # CONFIG_GPIO_RDC321X is not set # CONFIG_GPIO_SCH311X is not set # CONFIG_GPIO_SCH is not set # CONFIG_GPIO_SX150X is not set # CONFIG_GPIO_SYSCON is not set -CONFIG_GPIO_SYSFS=y +# CONFIG_GPIO_SYSFS is not set # CONFIG_GPIO_TPIC2810 is not set # CONFIG_GPIO_TS4900 is not set # CONFIG_GPIO_TS5500 is not set @@ -1616,7 +1617,6 @@ CONFIG_GPIO_VIPERBOARD=m CONFIG_GPIO_WHISKEY_COVE=y # CONFIG_GPIO_WS16C48 is not set # CONFIG_GPIO_XILINX is not set -# CONFIG_GPIO_ZX is not set CONFIG_GREENASIA_FF=y # CONFIG_GREYBUS is not set # CONFIG_GS_FPGABOOT is not set @@ -1628,6 +1628,7 @@ CONFIG_HAPPYMEAL=m CONFIG_HARDENED_USERCOPY=y CONFIG_HAVE_MEMORY_PRESENT=y # CONFIG_HDC100X is not set +CONFIG_HDMI_LPE_AUDIO=m CONFIG_HEADERS_CHECK=y CONFIG_HERMES_CACHE_FW_ON_INIT=y CONFIG_HERMES=m @@ -1824,6 +1825,7 @@ CONFIG_HW_RANDOM_VIA=m CONFIG_HW_RANDOM_VIRTIO=m CONFIG_HW_RANDOM=y CONFIG_HWSPINLOCK=m +# CONFIG_HX711 is not set CONFIG_HYPERV_BALLOON=m CONFIG_HYPERVISOR_GUEST=y CONFIG_HYPERV_KEYBOARD=m @@ -1865,7 +1867,6 @@ CONFIG_I2C_DIOLAN_U2C=m CONFIG_I2C_HELPER_AUTO=y CONFIG_I2C_HID=m CONFIG_I2C_I801=m -CONFIG_I2C_IMX_LPI2C=m CONFIG_I2C_ISCH=m CONFIG_I2C_ISMT=m CONFIG_I2C_MLXCPLD=m @@ -1963,6 +1964,7 @@ CONFIG_IIO_ST_ACCEL_SPI_3AXIS=m CONFIG_IIO_ST_GYRO_3AXIS=m CONFIG_IIO_ST_GYRO_I2C_3AXIS=m CONFIG_IIO_ST_GYRO_SPI_3AXIS=m +# CONFIG_IIO_ST_LSM6DSX is not set CONFIG_IIO_ST_MAGN_3AXIS=m # CONFIG_IIO_ST_PRESS is not set CONFIG_IIO_SW_DEVICE=m @@ -1979,6 +1981,7 @@ CONFIG_IMA_MEASURE_PCR_IDX=10 # CONFIG_INA2XX_ADC is not set CONFIG_INET6_AH=m CONFIG_INET6_ESP=m +CONFIG_INET6_ESP_OFFLOAD=m CONFIG_INET6_IPCOMP=m CONFIG_INET6_XFRM_MODE_BEET=m CONFIG_INET6_XFRM_MODE_ROUTEOPTIMIZATION=m @@ -1988,6 +1991,7 @@ CONFIG_INET_AH=m CONFIG_INET_DIAG_DESTROY=y CONFIG_INET_DIAG=m CONFIG_INET_ESP=m +CONFIG_INET_ESP_OFFLOAD=m CONFIG_INET_IPCOMP=m CONFIG_INET_RAW_DIAG=m CONFIG_INET_TUNNEL=m @@ -1996,6 +2000,7 @@ CONFIG_INET_XFRM_MODE_BEET=m CONFIG_INET_XFRM_MODE_TRANSPORT=m CONFIG_INET_XFRM_MODE_TUNNEL=m CONFIG_INET=y +# CONFIG_INFINIBAND_BNXT_RE is not set # CONFIG_INFINIBAND_CXGB3_DEBUG is not set CONFIG_INFINIBAND_CXGB3=m CONFIG_INFINIBAND_CXGB4=m @@ -2124,6 +2129,7 @@ CONFIG_INTEL_SMARTCONNECT=y CONFIG_INTEL_SOC_DTS_THERMAL=m CONFIG_INTEL_SOC_PMIC=y # CONFIG_INTEL_TH is not set +CONFIG_INTEL_TURBO_MAX_3=y CONFIG_INTEL_TXT=y CONFIG_INTEL_VBTN=m CONFIG_INTEL_XWAY_PHY=m @@ -2273,6 +2279,7 @@ CONFIG_IP_VS_SH_TAB_BITS=8 CONFIG_IP_VS_TAB_BITS=12 CONFIG_IP_VS_WLC=m CONFIG_IP_VS_WRR=m +CONFIG_IPVTAP=m # CONFIG_IPW2100_DEBUG is not set CONFIG_IPW2100=m CONFIG_IPW2100_MONITOR=y @@ -2320,6 +2327,7 @@ CONFIG_IR_SERIAL=m CONFIG_IR_SERIAL_TRANSMITTER=y CONFIG_IR_SHARP_DECODER=m CONFIG_IR_SONY_DECODER=m +CONFIG_IR_SPI=m CONFIG_IR_STREAMZAP=m CONFIG_IR_TTUSBIR=m CONFIG_IRTTY_SIR=m @@ -2474,6 +2482,7 @@ CONFIG_KEYBOARD_PMIC8XXX=m # CONFIG_KEYBOARD_SUNKBD is not set # CONFIG_KEYBOARD_TCA6416 is not set # CONFIG_KEYBOARD_TCA8418 is not set +CONFIG_KEYBOARD_TM2_TOUCHKEY=m # CONFIG_KEYBOARD_XTKBD is not set CONFIG_KEY_DH_OPERATIONS=y CONFIG_KEYS=y @@ -2485,7 +2494,7 @@ CONFIG_KGDB_TESTS=y CONFIG_KGDB=y CONFIG_KINGSUN_DONGLE=m # CONFIG_KMX61 is not set -CONFIG_KPROBE_EVENT=y +CONFIG_KPROBE_EVENTS=y # CONFIG_KPROBES_SANITY_TEST is not set CONFIG_KPROBES=y CONFIG_KS0108_DELAY=2 @@ -2537,6 +2546,7 @@ CONFIG_LDM_PARTITION=y # CONFIG_LEDS_BCM6358 is not set # CONFIG_LEDS_BD2802 is not set CONFIG_LEDS_BLINKM=m +CONFIG_LEDS_BRIGHTNESS_HW_CHANGED=y CONFIG_LEDS_CLASS_FLASH=m CONFIG_LEDS_CLASS=y CONFIG_LEDS_CLEVO_MAIL=m @@ -2653,6 +2663,8 @@ CONFIG_LOOPBACK_TARGET=m CONFIG_LPC_ICH=m CONFIG_LP_CONSOLE=y CONFIG_LPC_SCH=m +CONFIG_LPFC_NVME_INITIATOR=y +CONFIG_LPFC_NVME_TARGET=y CONFIG_LSI_ET1011C_PHY=m CONFIG_LSM_MMAP_MIN_ADDR=65536 # CONFIG_LTC2485 is not set @@ -2686,6 +2698,7 @@ CONFIG_MACVLAN=m CONFIG_MACVTAP=m # CONFIG_MAG3110 is not set CONFIG_MAGIC_SYSRQ_DEFAULT_ENABLE=0x0 +CONFIG_MAGIC_SYSRQ_SERIAL=y CONFIG_MAGIC_SYSRQ=y # CONFIG_MAILBOX_TEST is not set CONFIG_MAILBOX=y @@ -2693,10 +2706,12 @@ CONFIG_MAILBOX=y CONFIG_MANTIS_CORE=m CONFIG_MARVELL_PHY=m # CONFIG_MAX1027 is not set +# CONFIG_MAX11100 is not set # CONFIG_MAX1363 is not set CONFIG_MAX30100=m # CONFIG_MAX44000 is not set # CONFIG_MAX517 is not set +# CONFIG_MAX5481 is not set # CONFIG_MAX5487 is not set # CONFIG_MAX5821 is not set # CONFIG_MAX63XX_WATCHDOG is not set @@ -2774,7 +2789,6 @@ CONFIG_MEMSTICK_TIFM_MS=m # CONFIG_MEMSTICK_UNSAFE_RESUME is not set # CONFIG_MEMTEST is not set # CONFIG_MEN_A21_WDT is not set -CONFIG_MESON_GXL_PHY=m CONFIG_MESSAGE_LOGLEVEL_DEFAULT=4 # CONFIG_MFD_88PM800 is not set # CONFIG_MFD_88PM805 is not set @@ -2793,6 +2807,7 @@ CONFIG_MESSAGE_LOGLEVEL_DEFAULT=4 # CONFIG_MFD_AXP20X is not set # CONFIG_MFD_BCM590XX is not set CONFIG_MFD_CORE=y +CONFIG_MFD_CPCAP=m # CONFIG_MFD_CROS_EC is not set # CONFIG_MFD_CS5535 is not set # CONFIG_MFD_DA9052_I2C is not set @@ -2842,7 +2857,6 @@ CONFIG_MFD_SM501_GPIO=y CONFIG_MFD_SM501=m # CONFIG_MFD_SMSC is not set # CONFIG_MFD_STMPE is not set -CONFIG_MFD_SUN4I_GPADC=m # CONFIG_MFD_SYSCON is not set # CONFIG_MFD_TC3589X is not set # CONFIG_MFD_TC6393XB is not set @@ -3000,6 +3014,7 @@ CONFIG_MPLS_IPTUNNEL=m CONFIG_MPLS_ROUTING=m # CONFIG_MPSC is not set # CONFIG_MPU3050_I2C is not set +CONFIG_MQ_IOSCHED_DEADLINE=y # CONFIG_MS5611 is not set # CONFIG_MS5637 is not set # CONFIG_MS_BLOCK is not set @@ -3114,6 +3129,7 @@ CONFIG_NET_ACT_MIRRED=m CONFIG_NET_ACT_NAT=m CONFIG_NET_ACT_PEDIT=m CONFIG_NET_ACT_POLICE=m +CONFIG_NET_ACT_SAMPLE=m CONFIG_NET_ACT_SIMP=m CONFIG_NET_ACT_SKBEDIT=m CONFIG_NET_ACT_SKBMOD=m @@ -3247,6 +3263,7 @@ CONFIG_NETFILTER_XT_TARGET_TRACE=m CONFIG_NETFILTER=y CONFIG_NET_FOU_IP_TUNNELS=y CONFIG_NET_FOU=m +CONFIG_NET_IFE=m CONFIG_NET_IFE_SKBMARK=m CONFIG_NET_IFE_SKBPRIO=m CONFIG_NET_IFE_SKBTCINDEX=m @@ -3257,7 +3274,7 @@ CONFIG_NET_IPIP=m CONFIG_NET_IPVTI=m CONFIG_NET_KEY=m CONFIG_NET_KEY_MIGRATE=y -# CONFIG_NET_L3_MASTER_DEV is not set +CONFIG_NET_L3_MASTER_DEV=y CONFIG_NETLABEL=y CONFIG_NETLINK_DIAG=m CONFIG_NET_MPLS_GSO=m @@ -3310,8 +3327,9 @@ CONFIG_NET_VENDOR_ADAPTEC=y CONFIG_NET_VENDOR_AGERE=y # CONFIG_NET_VENDOR_ALACRITECH is not set CONFIG_NET_VENDOR_ALTEON=y -# CONFIG_NET_VENDOR_AMAZON is not set +CONFIG_NET_VENDOR_AMAZON=y CONFIG_NET_VENDOR_AMD=y +# CONFIG_NET_VENDOR_AQUANTIA is not set CONFIG_NET_VENDOR_ARC=y CONFIG_NET_VENDOR_ATHEROS=y # CONFIG_NET_VENDOR_AURORA is not set @@ -3436,6 +3454,8 @@ CONFIG_NF_LOG_IPV6=m CONFIG_NF_LOG_NETDEV=m CONFIG_NF_NAT=m CONFIG_NF_NAT_SNMP_BASIC=m +# CONFIG_NFP_DEBUG is not set +CONFIG_NFP=m # CONFIG_NFP_NET_DEBUG is not set CONFIG_NFP_NETVF=m CONFIG_NF_REJECT_IPV6=m @@ -3507,11 +3527,13 @@ CONFIG_NFT_REDIR=m CONFIG_NFT_REJECT_IPV4=m CONFIG_NFT_REJECT=m CONFIG_NFT_RT=m +CONFIG_NFT_SET_BITMAP=m CONFIG_NFT_SET_HASH=m CONFIG_NFT_SET_RBTREE=m CONFIG_N_GSM=m CONFIG_N_HDLC=m # CONFIG_NI903X_WDT is not set +CONFIG_NIC7018_WDT=m CONFIG_NILFS2_FS=m CONFIG_NIU=m # CONFIG_NL80211_TESTMODE is not set @@ -3655,6 +3677,7 @@ CONFIG_PANTHERLORD_FF=y CONFIG_PARAVIRT_TIME_ACCOUNTING=y CONFIG_PARAVIRT=y # CONFIG_PARIDE is not set +CONFIG_PARMAN=m CONFIG_PARPORT_1284=y # CONFIG_PARPORT_AX88796 is not set CONFIG_PARPORT=m @@ -3712,6 +3735,7 @@ CONFIG_PATA_TOSHIBA=m CONFIG_PATA_TRIFLEX=m CONFIG_PATA_VIA=m CONFIG_PATA_WINBOND=m +# CONFIG_PC104 is not set # CONFIG_PC8736x_GPIO is not set # CONFIG_PC87413_WDT is not set CONFIG_PCCARD=y @@ -3778,6 +3802,8 @@ CONFIG_PERSISTENT_KEYRINGS=y CONFIG_PHYLIB=y # CONFIG_PHY_PXA_28NM_HSIC is not set # CONFIG_PHY_PXA_28NM_USB2 is not set +# CONFIG_PHY_QCOM_USB_HSIC is not set +# CONFIG_PHY_QCOM_USB_HS is not set CONFIG_PHYSICAL_ALIGN=0x1000000 CONFIG_PHYSICAL_START=0x1000000 # CONFIG_PHY_ST_SPEAR1310_MIPHY is not set @@ -3789,9 +3815,11 @@ CONFIG_PINCONF=y CONFIG_PINCTRL_BAYTRAIL=y CONFIG_PINCTRL_BROXTON=m CONFIG_PINCTRL_CHERRYVIEW=y +# CONFIG_PINCTRL_GEMINILAKE is not set CONFIG_PINCTRL_MSM8994=m CONFIG_PINCTRL_SUNRISEPOINT=m # CONFIG_PINCTRL_SX150X is not set +# CONFIG_PINCTRL_TI_IODELAY is not set CONFIG_PINCTRL=y CONFIG_PINMUX=y CONFIG_PKCS7_MESSAGE_PARSER=y @@ -3857,6 +3885,7 @@ CONFIG_PPTP=m CONFIG_PREEMPT_VOLUNTARY=y CONFIG_PREVENT_FIRMWARE_BUILD=y CONFIG_PRINTER=m +CONFIG_PRINTK_SAFE_LOG_BUF_SHIFT=12 CONFIG_PRINTK_TIME=y # CONFIG_PRINT_QUOTA_WARNING is not set # CONFIG_PRISM2_USB is not set @@ -3871,11 +3900,13 @@ CONFIG_PROFILING=y # CONFIG_PROVE_LOCKING is not set # CONFIG_PROVE_RCU_REPEATEDLY is not set CONFIG_PROVIDE_OHCI1394_DMA_INIT=y +CONFIG_PSAMPLE=m # CONFIG_PSTORE_CONSOLE is not set # CONFIG_PSTORE_FTRACE is not set # CONFIG_PSTORE_PMSG is not set CONFIG_PSTORE_RAM=m CONFIG_PSTORE=y +CONFIG_PTP_1588_CLOCK_KVM=m CONFIG_PTP_1588_CLOCK=m CONFIG_PTP_1588_CLOCK_PCH=m # CONFIG_PUNIT_ATOM_DEBUG is not set @@ -3889,14 +3920,15 @@ CONFIG_PWM_LPSS_PLATFORM=m # CONFIG_PWM_PCA9685 is not set CONFIG_PWM=y CONFIG_PWRSEQ_EMMC=m +# CONFIG_PWRSEQ_SD8787 is not set CONFIG_PWRSEQ_SIMPLE=m # CONFIG_QCA7000 is not set CONFIG_QCOM_ADSP_PIL=m -# CONFIG_QCOM_EBI2 is not set # CONFIG_QCOM_EMAC is not set # CONFIG_QCOM_HIDMA is not set # CONFIG_QCOM_HIDMA_MGMT is not set CONFIG_QEDE=m +CONFIG_QEDF=m CONFIG_QEDI=m CONFIG_QED=m CONFIG_QED_SRIOV=y @@ -3942,7 +3974,6 @@ CONFIG_RADIO_TERRATEC=m CONFIG_RADIO_TRUST=m CONFIG_RADIO_TYPHOON=m CONFIG_RADIO_WL1273=m -# CONFIG_RADIO_WL128X is not set # depends on TI_ST which we don't enable CONFIG_RADIO_ZOLTRIX=m CONFIG_RAID_ATTRS=m # CONFIG_RANDOM32_SELFTEST is not set @@ -3989,6 +4020,7 @@ CONFIG_REALTEK_AUTOPM=y CONFIG_REALTEK_PHY=m CONFIG_REGMAP_I2C=y CONFIG_REGMAP=y +CONFIG_REGULATOR_CPCAP=m # CONFIG_REGULATOR_DEBUG is not set # CONFIG_REGULATOR is not set # CONFIG_REISERFS_CHECK is not set @@ -4476,6 +4508,7 @@ CONFIG_SENSORS_SIS5595=m CONFIG_SENSORS_SMSC47B397=m CONFIG_SENSORS_SMSC47M192=m CONFIG_SENSORS_SMSC47M1=m +# CONFIG_SENSORS_STTS751 is not set CONFIG_SENSORS_TC654=m CONFIG_SENSORS_TC74=m CONFIG_SENSORS_THMC50=m @@ -4512,13 +4545,16 @@ CONFIG_SERIAL_8250_CS=m # CONFIG_SERIAL_8250_DEPRECATED_OPTIONS is not set # CONFIG_SERIAL_8250_DETECT_IRQ is not set CONFIG_SERIAL_8250_DW=y +CONFIG_SERIAL_8250_EXAR=m CONFIG_SERIAL_8250_EXTENDED=y # CONFIG_SERIAL_8250_FINTEK is not set # CONFIG_SERIAL_8250_INGENIC is not set +CONFIG_SERIAL_8250_LPSS=m CONFIG_SERIAL_8250_MANY_PORTS=y CONFIG_SERIAL_8250_MID=y CONFIG_SERIAL_8250_MOXA=m CONFIG_SERIAL_8250_NR_UARTS=32 +CONFIG_SERIAL_8250_PCI=m CONFIG_SERIAL_8250_RSA=y CONFIG_SERIAL_8250_RT288X=y CONFIG_SERIAL_8250_RUNTIME_UARTS=32 @@ -4531,6 +4567,8 @@ CONFIG_SERIAL_ARC_NR_PORTS=1 # CONFIG_SERIAL_CONEXANT_DIGICOLOR is not set CONFIG_SERIAL_CORE_CONSOLE=y CONFIG_SERIAL_CORE=y +CONFIG_SERIAL_DEV_BUS=y +CONFIG_SERIAL_DEV_CTRL_TTYPORT=y # CONFIG_SERIAL_FSL_LPUART is not set # CONFIG_SERIAL_IFX6X60 is not set CONFIG_SERIAL_JSM=m @@ -4579,6 +4617,7 @@ CONFIG_SH_ETH=m # CONFIG_SIGMA is not set CONFIG_SIGMATEL_FIR=m CONFIG_SIGNED_PE_FILE_VERIFICATION=y +# CONFIG_SILEAD_DMI is not set CONFIG_SIS190=m CONFIG_SIS900=m # CONFIG_SKFP is not set @@ -4599,6 +4638,7 @@ CONFIG_SLUB_CPU_PARTIAL=y CONFIG_SLUB=y CONFIG_SMARTJOYPLUS_FF=y CONFIG_SMC_IRCC_FIR=m +# CONFIG_SMC is not set # CONFIG_SM_FTL is not set CONFIG_SMP=y # CONFIG_SMSC37B787_WDT is not set @@ -4743,7 +4783,7 @@ CONFIG_SND_SEQUENCER=m CONFIG_SND_SEQUENCER_OSS=y CONFIG_SND_SERIAL_U16550=m CONFIG_SND_SIMPLE_CARD=m -# CONFIG_SND_SIMPLE_SCU_CARD is not set +CONFIG_SND_SIMPLE_SCU_CARD=m CONFIG_SND_SIS7019=m CONFIG_SND_SOC_AC97_CODEC=m # CONFIG_SND_SOC_ADAU1701 is not set @@ -4775,7 +4815,9 @@ CONFIG_SND_SOC_CS42L42=m # CONFIG_SND_SOC_CS4349 is not set # CONFIG_SND_SOC_CS53L30 is not set CONFIG_SND_SOC_DMIC=m -# CONFIG_SND_SOC_ES8328 is not set +CONFIG_SND_SOC_ES8328_I2C=m +CONFIG_SND_SOC_ES8328=m +CONFIG_SND_SOC_ES8328_SPI=m # CONFIG_SND_SOC_FSL_ASOC_CARD is not set # CONFIG_SND_SOC_FSL_ASRC is not set # CONFIG_SND_SOC_FSL_ESAI is not set @@ -4813,6 +4855,7 @@ CONFIG_SND_SOC=m # CONFIG_SND_SOC_MAX9860 is not set # CONFIG_SND_SOC_MSM8916_WCD_ANALOG is not set # CONFIG_SND_SOC_MSM8916_WCD_DIGITAL is not set +CONFIG_SND_SOC_NAU8540=m # CONFIG_SND_SOC_NAU8810 is not set # CONFIG_SND_SOC_PCM1681 is not set # CONFIG_SND_SOC_PCM179X_I2C is not set @@ -4868,7 +4911,6 @@ CONFIG_SND_SOC_TS3A227E=m # CONFIG_SND_SOC_XTFPGA_I2S is not set CONFIG_SND_SONICVIBES=m # CONFIG_SND_SPI is not set -CONFIG_SND_SUN8I_CODEC_ANALOG=m # CONFIG_SND_SUPPORT_OLD_API is not set CONFIG_SND_TRIDENT=m CONFIG_SND_USB_6FIRE=m @@ -4891,9 +4933,11 @@ CONFIG_SND_VIA82XX_MODEM=m CONFIG_SND_VIRMIDI=m CONFIG_SND_VIRTUOSO=m CONFIG_SND_VX222=m +CONFIG_SND_X86=y CONFIG_SND_YMFPCI=m # CONFIG_SOC_CAMERA is not set # CONFIG_SOC_TI is not set +# CONFIG_SOC_ZTE is not set CONFIG_SOFT_WATCHDOG=m CONFIG_SOLARIS_X86_PARTITION=y # CONFIG_SOLO6X10 is not set @@ -4946,6 +4990,7 @@ CONFIG_SQUASHFS_XATTR=y CONFIG_SQUASHFS_XZ=y CONFIG_SQUASHFS_ZLIB=y # CONFIG_SRAM is not set +# CONFIG_SRF08 is not set # CONFIG_SSB_DEBUG is not set CONFIG_SSB_DRIVER_GPIO=y CONFIG_SSB_DRIVER_PCICORE=y @@ -4963,6 +5008,7 @@ CONFIG_STAGING_MEDIA=y CONFIG_STAGING=y CONFIG_STANDALONE=y # CONFIG_STATIC_KEYS_SELFTEST is not set +# CONFIG_STATIC_USERMODEHELPER is not set CONFIG_STE10XP=m # CONFIG_STE_MODEM_RPROC is not set CONFIG_STK3310=m @@ -4977,10 +5023,6 @@ CONFIG_STMMAC_ETH=m CONFIG_STRICT_DEVMEM=y CONFIG_STRIP_ASM_SYMS=y # CONFIG_STRIP is not set -# CONFIG_SUN50I_A64_CCU is not set -# CONFIG_SUN6I_A31_CCU is not set -# CONFIG_SUN8I_A23_CCU is not set -# CONFIG_SUN8I_A33_CCU is not set CONFIG_SUNDANCE=m # CONFIG_SUNDANCE_MMIO is not set CONFIG_SUNGEM=m @@ -4989,7 +5031,6 @@ CONFIG_SUNRPC_DEBUG=y CONFIG_SUNRPC_GSS=m CONFIG_SUNRPC=m CONFIG_SUNRPC_XPRT_RDMA=m -# CONFIG_SUNXI_CCU is not set CONFIG_SURFACE_3_BUTTON=m CONFIG_SURFACE3_WMI=m CONFIG_SURFACE_PRO3_BUTTON=m @@ -5073,8 +5114,6 @@ CONFIG_TCP_CONG_YEAH=m CONFIG_TCP_MD5SIG=y # CONFIG_TCS3414 is not set # CONFIG_TCS3472 is not set -CONFIG_TEGRA_GMI=m -CONFIG_TEGRA_IVC=y CONFIG_TEHUTI=m CONFIG_TEKRAM_DONGLE=m CONFIG_TELCLOCK=m @@ -5088,9 +5127,11 @@ CONFIG_TEST_ASYNC_DRIVER_PROBE=m CONFIG_TEST_KSTRTOX=y # CONFIG_TEST_LIST_SORT is not set # CONFIG_TEST_LKM is not set +# CONFIG_TEST_PARMAN is not set # CONFIG_TEST_POWER is not set # CONFIG_TEST_PRINTF is not set # CONFIG_TEST_RHASHTABLE is not set +# CONFIG_TEST_SORT is not set # CONFIG_TEST_STATIC_KEYS is not set # CONFIG_TEST_STRING_HELPERS is not set # CONFIG_TEST_UDELAY is not set @@ -5122,6 +5163,7 @@ CONFIG_THUNDERBOLT=m # CONFIG_TI_ADC128S052 is not set # CONFIG_TI_ADC161S626 is not set # CONFIG_TI_ADS1015 is not set +# CONFIG_TI_ADS7950 is not set # CONFIG_TI_ADS8688 is not set # CONFIG_TI_CPSW_ALE is not set # CONFIG_TI_DAC7512 is not set @@ -5136,9 +5178,11 @@ CONFIG_TIPC_MEDIA_UDP=y CONFIG_TI_SCI_PROTOCOL=m # CONFIG_TI_ST is not set # CONFIG_TI_SYSCON_RESET is not set +# CONFIG_TI_TLC4541 is not set CONFIG_TLAN=m # CONFIG_TMD_HERMES is not set # CONFIG_TMP006 is not set +# CONFIG_TMP007 is not set CONFIG_TMPFS_POSIX_ACL=y CONFIG_TMPFS_XATTR=y CONFIG_TMPFS=y @@ -5212,6 +5256,7 @@ CONFIG_TOUCHSCREEN_WACOM_I2C=m CONFIG_TOUCHSCREEN_WACOM_W8001=m # CONFIG_TOUCHSCREEN_WDT87XX_I2C is not set # CONFIG_TOUCHSCREEN_WM97XX is not set +CONFIG_TOUCHSCREEN_ZET6223=m CONFIG_TOUCHSCREEN_ZFORCE=m # CONFIG_TPL0102 is not set # CONFIG_TPS6105X is not set @@ -5280,7 +5325,7 @@ CONFIG_UNIX_DIAG=m CONFIG_UNIXWARE_DISKLABEL=y CONFIG_UNIX=y CONFIG_UNUSED_SYMBOLS=y -CONFIG_UPROBE_EVENT=y +CONFIG_UPROBE_EVENTS=y # CONFIG_US5182D is not set CONFIG_USB_ACM=m CONFIG_USB_ADUTUX=m @@ -5297,6 +5342,7 @@ CONFIG_USB_CATC=m CONFIG_USB_CDC_PHONET=m CONFIG_USB_CHAOSKEY=m # CONFIG_USB_CHIPIDEA is not set +# CONFIG_USB_CHIPIDEA_ULPI is not set CONFIG_USB_CXACRU=m # CONFIG_USB_CYPRESS_CY7C63 is not set # CONFIG_USB_CYTHERM is not set @@ -5381,6 +5427,7 @@ CONFIG_USB_HID=y CONFIG_USB_HSIC_USB3503=m CONFIG_USB_HSIC_USB4604=m CONFIG_USB_HSO=m +CONFIG_USB_HUB_USB251XB=m CONFIG_USB_HWA_HCD=m CONFIG_USB_IDMOUSE=m CONFIG_USB_IOWARRIOR=m @@ -5525,6 +5572,7 @@ CONFIG_USB_SERIAL_SPCP8X5=m CONFIG_USB_SERIAL_SSU100=m CONFIG_USB_SERIAL_SYMBOL=m CONFIG_USB_SERIAL_TI=m +CONFIG_USB_SERIAL_UPD78F0730=m CONFIG_USB_SERIAL_VISOR=m CONFIG_USB_SERIAL_WHITEHEAT=m # CONFIG_USB_SERIAL_WISHBONE is not set @@ -5615,6 +5663,7 @@ CONFIG_VFIO_PCI=m CONFIG_VFIO_PCI_VGA=y CONFIG_VGA_ARB_MAX_GPUS=16 CONFIG_VGA_ARB=y +# CONFIG_VGACON_SOFT_SCROLLBACK_PERSISTENT_ENABLE_BY_DEFAULT is not set CONFIG_VGACON_SOFT_SCROLLBACK_SIZE=64 CONFIG_VGACON_SOFT_SCROLLBACK=y CONFIG_VGA_CONSOLE=y @@ -5667,6 +5716,7 @@ CONFIG_VIDEO_HDPVR=m CONFIG_VIDEO_HEXIUM_GEMINI=m CONFIG_VIDEO_HEXIUM_ORION=m # CONFIG_VIDEO_IVTV_ALSA is not set +# CONFIG_VIDEO_IVTV_DEPRECATED_IOCTLS is not set CONFIG_VIDEO_IVTV=m # CONFIG_VIDEO_M5MOLS is not set # CONFIG_VIDEO_MEM2MEM_DEINTERLACE is not set @@ -5688,7 +5738,6 @@ CONFIG_VIDEO_SAA7134_RC=y CONFIG_VIDEO_SAA7146=m CONFIG_VIDEO_SAA7146_VV=m CONFIG_VIDEO_SAA7164=m -CONFIG_VIDEO_SAMSUNG_S5P_CEC=m # CONFIG_VIDEO_SH_MOBILE_CEU is not set # CONFIG_VIDEO_SH_MOBILE_CSI2 is not set # CONFIG_VIDEO_SH_VEU is not set @@ -5725,6 +5774,7 @@ CONFIG_VIDEO_ZORAN_ZR36060=m # CONFIG_VIRT_DRIVERS is not set CONFIG_VIRTIO_BALLOON=m CONFIG_VIRTIO_BLK=m +CONFIG_VIRTIO_BLK_SCSI=y CONFIG_VIRTIO_CONSOLE=m CONFIG_VIRTIO_INPUT=m # CONFIG_VIRTIO_MMIO_CMDLINE_DEVICES is not set @@ -5769,6 +5819,7 @@ CONFIG_W1_MASTER_DS2490=m # CONFIG_W1_MASTER_GPIO is not set # CONFIG_W1_MASTER_MATROX is not set CONFIG_W1_SLAVE_BQ27000=m +CONFIG_W1_SLAVE_DS2405=m CONFIG_W1_SLAVE_DS2406=m CONFIG_W1_SLAVE_DS2408=m # CONFIG_W1_SLAVE_DS2408_READBACK is not set @@ -5841,6 +5892,7 @@ CONFIG_WM8350_POWER=m CONFIG_WM8350_WATCHDOG=m # CONFIG_WQ_POWER_EFFICIENT_DEFAULT is not set # CONFIG_WQ_WATCHDOG is not set +# CONFIG_WW_MUTEX_SELFTEST is not set # CONFIG_X25 is not set CONFIG_X86_64_ACPI_NUMA=y CONFIG_X86_ACPI_CPUFREQ_CPB=y diff --git a/kernel.spec b/kernel.spec index 3bf66240b..506b4307f 100644 --- a/kernel.spec +++ b/kernel.spec @@ -48,13 +48,13 @@ Summary: The Linux kernel # base_sublevel is the kernel version we're starting with and patching # on top of -- for example, 3.1-rc7-git1 starts with a 3.0 base, # which yields a base_sublevel of 0. -%define base_sublevel 10 +%define base_sublevel 11 ## If this is a released kernel ## %if 0%{?released_kernel} # Do we have a -stable update to apply? -%define stable_update 3 +%define stable_update 1 # Set rpm version accordingly %if 0%{?stable_update} %define stablerev %{stable_update} @@ -183,6 +183,9 @@ Summary: The Linux kernel %define _enable_debug_packages 0 %endif %define debuginfodir /usr/lib/debug +# Needed because we override almost everything involving build-ids +# and debuginfo generation. Currently we rely on the old alldebug setting. +%global _build_id_links alldebug # kernel PAE is only built on i686 and ARMv7. %ifnarch i686 armv7hl @@ -216,7 +219,7 @@ Summary: The Linux kernel %if %{with_vdso_install} # These arches install vdso/ directories. -%define vdso_arches %{all_x86} x86_64 %{power64} s390 s390x aarch64 +%define vdso_arches %{all_x86} x86_64 %{power64} s390x aarch64 %endif # Overrides for generic default options @@ -326,7 +329,7 @@ Summary: The Linux kernel # Which is a BadThing(tm). # We only build kernel-headers on the following... -%define nobuildarches i386 s390 +%define nobuildarches i386 %ifarch %nobuildarches %define with_up 0 @@ -361,7 +364,7 @@ Version: %{rpmversion} Release: %{pkg_release} # DO NOT CHANGE THE 'ExclusiveArch' LINE TO TEMPORARILY EXCLUDE AN ARCHITECTURE BUILD. # SET %%nobuildarches (ABOVE) INSTEAD -ExclusiveArch: %{all_x86} x86_64 ppc64 ppc64p7 s390 s390x %{arm} aarch64 ppc64le +ExclusiveArch: %{all_x86} x86_64 ppc64 ppc64p7 s390x %{arm} aarch64 ppc64le ExclusiveOS: Linux %ifnarch %{nobuildarches} Requires: kernel-core-uname-r = %{KVERREL}%{?variant} @@ -382,7 +385,7 @@ BuildRequires: sparse %if %{with_perf} BuildRequires: zlib-devel binutils-devel newt-devel python-devel perl(ExtUtils::Embed) bison flex xz-devel BuildRequires: audit-libs-devel -%ifnarch s390 s390x %{arm} +%ifnarch s390x %{arm} BuildRequires: numactl-devel %endif %endif @@ -407,7 +410,7 @@ BuildRequires: binutils-%{_build_arch}-linux-gnu, gcc-%{_build_arch}-linux-gnu %define cross_opts CROSS_COMPILE=%{_build_arch}-linux-gnu- %endif -Source0: ftp://ftp.kernel.org/pub/linux/kernel/v4.x/linux-%{kversion}.tar.xz +Source0: https://www.kernel.org/pub/linux/kernel/v4.x/linux-%{kversion}.tar.xz Source10: perf-man-%{kversion}.tar.gz Source11: x509.genkey @@ -487,8 +490,15 @@ Source5000: patch-4.%{base_sublevel}-git%{gitrev}.xz %endif %endif +## Patches needed for building this package + # build tweak for build ID magic, even for -vanilla -Source5005: kbuild-AFTER_LINK.patch +Patch001: kbuild-AFTER_LINK.patch + +## compile fixes + +# ongoing complaint, full discussion delayed until ksummit/plumbers +Patch002: 0001-iio-Use-event-header-from-kernel-tree.patch %if !%{nopatches} @@ -515,31 +525,42 @@ Patch424: arm64-mm-Fix-memmap-to-be-initialized-for-the-entire-section.patch # http://patchwork.ozlabs.org/patch/587554/ Patch425: ARM-tegra-usb-no-reset.patch -Patch426: AllWinner-net-emac.patch +Patch426: AllWinner-h3.patch +Patch427: AllWinner-net-emac.patch + +# http://www.spinics.net/lists/linux-bluetooth/msg70169.html +# https://www.spinics.net/lists/devicetree/msg170619.html +Patch428: ti-bluetooth.patch + +Patch429: arm64-hikey-fixes.patch # http://www.spinics.net/lists/devicetree/msg163238.html Patch430: bcm2837-initial-support.patch -# http://www.spinics.net/lists/linux-mmc/msg41151.html -Patch431: bcm283x-mmc-imp-speed.patch - -Patch432: bcm283x-VEC.patch +Patch431: arm-rk3288-tinker.patch # http://www.spinics.net/lists/dri-devel/msg132235.html Patch433: drm-vc4-Fix-OOPSes-from-trying-to-cache-a-partially-constructed-BO..patch -# Fix RPi3 from crashing. Nowhere near a final fix but provides breathing room while that is sorted -# https://github.com/anholt/linux/issues/89 -Patch434: 0001-i2c-bcm2835-Debug-test-for-curr_msg.patch +# bcm283x mmc for wifi http://www.spinics.net/lists/arm-kernel/msg567077.html +Patch434: bcm283x-mmc-bcm2835.patch # Upstream fixes for i2c/serial/ethernet MAC addresses Patch435: bcm283x-fixes.patch +# https://lists.freedesktop.org/archives/dri-devel/2017-February/133823.html Patch436: vc4-fix-vblank-cursor-update-issue.patch -# http://www.spinics.net/lists/arm-kernel/msg552554.html +Patch437: bcm283x-hdmi-audio.patch + +# https://www.spinics.net/lists/arm-kernel/msg554183.html Patch438: arm-imx6-hummingboard2.patch +# https://lkml.org/lkml/2017/4/4/316 +Patch339: media-cec-Fix-runtime-BUG-when-CONFIG_RC_CORE-CEC_CAP_RC.patch + +Patch440: arm64-Add-option-of-13-for-FORCE_MAX_ZONEORDER.patch + Patch460: lib-cpumask-Make-CPUMASK_OFFSTACK-usable-without-deb.patch Patch466: input-kill-stupid-messages.patch @@ -594,26 +615,14 @@ Patch509: MODSIGN-Don-t-try-secure-boot-if-EFI-runtime-is-disa.patch #CVE-2016-3134 rhbz 1317383 1317384 Patch665: netfilter-x_tables-deal-with-bogus-nextoffset-values.patch -#ongoing complaint, full discussion delayed until ksummit/plumbers -Patch849: 0001-iio-Use-event-header-from-kernel-tree.patch +#rhbz 1435154 +Patch666: powerpc-prom-Increase-RMA-size-to-512MB.patch -# Fix build issue with armada_trace -Patch851: Armada-trace-build-fix.patch +# CVE-2017-7645 rhbz 1443615 1443617 +Patch667: CVE-2017-7645.patch -# selinux: allow context mounts on tmpfs, ramfs, devpts within user namespaces -Patch852: selinux-allow-context-mounts-on-tmpfs-etc.patch - -# See http://lists.infradead.org/pipermail/linux-arm-kernel/2016-October/461597.html -Patch853: 0001-Work-around-for-gcc7-and-arm64.patch - -#CVE-2017-2596 rhbz 1417812 1417813 -Patch854: kvm-fix-page-struct-leak-in-handle_vmon.patch - -#CVE-2017-6353 rhbz 1428907 1428910 -Patch855: sctp-deny-peeloff-operation-on-asocs-with-threads-sl.patch - -#CVE-2017-6874 rhbz 1432429 1432430 -Patch856: ucount-Remove-the-atomicity-from-ucount-count.patch +# CVE-2017-7477 rhbz 1445207 1445208 +Patch668: CVE-2017-7477.patch # END OF PATCH DEFINITIONS @@ -1214,18 +1223,13 @@ do done %endif -# The kbuild-AFTER_LINK patch is needed regardless so we list it as a Source -# file and apply it separately from the rest. -git am %{SOURCE5005} - -%if !%{nopatches} +# Note: Even in the "nopatches" path some patches (build tweaks and compile +# fixes) will always get applied; see patch defition above for details git am %{patches} # END OF PATCH APPLICATIONS -%endif - # Any further pre-build tree manipulations happen here. chmod +x scripts/checkpatch.pl @@ -2184,6 +2188,9 @@ fi # # %changelog +* Mon May 15 2017 Laura Abbott <labbott@fedoraproject.org> +- Linux v4.11.1 rebase + * Wed Mar 15 2017 Justin M. Forbes <jforbes@fedoraproject.org> - 4.10.3-200 - Linux v4.10.3 - CVE-2017-6874 Fix race condition in ucount.c (rhbz 1432429 1432430) diff --git a/kvm-fix-page-struct-leak-in-handle_vmon.patch b/kvm-fix-page-struct-leak-in-handle_vmon.patch deleted file mode 100644 index b29bcea03..000000000 --- a/kvm-fix-page-struct-leak-in-handle_vmon.patch +++ /dev/null @@ -1,49 +0,0 @@ -From patchwork Tue Jan 24 10:56:21 2017 -Content-Type: text/plain; charset="utf-8" -MIME-Version: 1.0 -Content-Transfer-Encoding: 7bit -Subject: kvm: fix page struct leak in handle_vmon -From: Paolo Bonzini <pbonzini@redhat.com> -X-Patchwork-Id: 9534885 -Message-Id: <1485255381-18069-1-git-send-email-pbonzini@redhat.com> -To: linux-kernel@vger.kernel.org, kvm@vger.kernel.org -Cc: dvyukov@google.com -Date: Tue, 24 Jan 2017 11:56:21 +0100 - -handle_vmon gets a reference on VMXON region page, -but does not release it. Release the reference. - -Found by syzkaller; based on a patch by Dmitry. - -Reported-by: Dmitry Vyukov <dvyukov@google.com> -Signed-off-by: Paolo Bonzini <pbonzini@redhat.com> -Reviewed-by: David Hildenbrand <david@redhat.com> ---- - arch/x86/kvm/vmx.c | 9 +++++++-- - 1 file changed, 7 insertions(+), 2 deletions(-) - -diff --git a/arch/x86/kvm/vmx.c b/arch/x86/kvm/vmx.c -index 42cc3d6f4d20..0f7345035210 100644 ---- a/arch/x86/kvm/vmx.c -+++ b/arch/x86/kvm/vmx.c -@@ -7085,13 +7085,18 @@ static int nested_vmx_check_vmptr(struct kvm_vcpu *vcpu, int exit_reason, - } - - page = nested_get_page(vcpu, vmptr); -- if (page == NULL || -- *(u32 *)kmap(page) != VMCS12_REVISION) { -+ if (page == NULL) { - nested_vmx_failInvalid(vcpu); -+ return kvm_skip_emulated_instruction(vcpu); -+ } -+ if (*(u32 *)kmap(page) != VMCS12_REVISION) { - kunmap(page); -+ nested_release_page_clean(page); -+ nested_vmx_failInvalid(vcpu); - return kvm_skip_emulated_instruction(vcpu); - } - kunmap(page); -+ nested_release_page_clean(page); - vmx->nested.vmxon_ptr = vmptr; - break; - case EXIT_REASON_VMCLEAR: diff --git a/kvm-vmx-more-complete-state-update-on-APICv-on-off.patch b/kvm-vmx-more-complete-state-update-on-APICv-on-off.patch deleted file mode 100644 index 67043300c..000000000 --- a/kvm-vmx-more-complete-state-update-on-APICv-on-off.patch +++ /dev/null @@ -1,112 +0,0 @@ -From: Roman Kagan <rkagan@virtuozzo.com> -Subject: [PATCH v3] kvm:vmx: more complete state update on APICv on/off -Date: 2016-05-18 14:48:20 GMT (1 day, 21 hours and 23 minutes ago) - -The function to update APICv on/off state (in particular, to deactivate -it when enabling Hyper-V SynIC), used to be incomplete: it didn't adjust -APICv-related fields among secondary processor-based VM-execution -controls. - -As a result, Windows 2012 guests would get stuck when SynIC-based -auto-EOI interrupt intersected with e.g. an IPI in the guest. - -In addition, the MSR intercept bitmap wasn't updated to correspond to -whether "virtualize x2APIC mode" was enabled. This path used not to be -triggered, since Windows didn't use x2APIC but rather their own -synthetic APIC access MSRs; however it represented a security risk -because the guest running in a SynIC-enabled VM could switch to x2APIC -and thus obtain direct access to host APIC MSRs (thanks to Yang Zhang -<yang.zhang.wz@gmail.com> for spotting this). - -The patch fixes those omissions. - -Signed-off-by: Roman Kagan <rkagan@virtuozzo.com> -Cc: Steve Rutherford <srutherford@google.com> -Cc: Yang Zhang <yang.zhang.wz@gmail.com> ---- -v2 -> v3: - - only switch to x2apic msr bitmap if virtualize x2apic mode is on in vmcs - -v1 -> v2: - - only update relevant bits in the secondary exec control - - update msr intercept bitmap (also make x2apic msr bitmap always - correspond to APICv) - - arch/x86/kvm/vmx.c | 48 ++++++++++++++++++++++++++++++------------------ - 1 file changed, 30 insertions(+), 18 deletions(-) - -diff --git a/arch/x86/kvm/vmx.c b/arch/x86/kvm/vmx.c -index ee1c8a9..cef741a 100644 ---- a/arch/x86/kvm/vmx.c -+++ b/arch/x86/kvm/vmx.c -@@ -2418,7 +2418,9 @@ static void vmx_set_msr_bitmap(struct kvm_vcpu *vcpu) - - if (is_guest_mode(vcpu)) - msr_bitmap = vmx_msr_bitmap_nested; -- else if (vcpu->arch.apic_base & X2APIC_ENABLE) { -+ else if (cpu_has_secondary_exec_ctrls() && -+ (vmcs_read32(SECONDARY_VM_EXEC_CONTROL) & -+ SECONDARY_EXEC_VIRTUALIZE_X2APIC_MODE)) { - if (is_long_mode(vcpu)) - msr_bitmap = vmx_msr_bitmap_longmode_x2apic; - else -@@ -4783,6 +4785,19 @@ static void vmx_refresh_apicv_exec_ctrl(struct kvm_vcpu *vcpu) - struct vcpu_vmx *vmx = to_vmx(vcpu); - - vmcs_write32(PIN_BASED_VM_EXEC_CONTROL, vmx_pin_based_exec_ctrl(vmx)); -+ if (cpu_has_secondary_exec_ctrls()) { -+ if (kvm_vcpu_apicv_active(vcpu)) -+ vmcs_set_bits(SECONDARY_VM_EXEC_CONTROL, -+ SECONDARY_EXEC_APIC_REGISTER_VIRT | -+ SECONDARY_EXEC_VIRTUAL_INTR_DELIVERY); -+ else -+ vmcs_clear_bits(SECONDARY_VM_EXEC_CONTROL, -+ SECONDARY_EXEC_APIC_REGISTER_VIRT | -+ SECONDARY_EXEC_VIRTUAL_INTR_DELIVERY); -+ } -+ -+ if (cpu_has_vmx_msr_bitmap()) -+ vmx_set_msr_bitmap(vcpu); - } - - static u32 vmx_exec_control(struct vcpu_vmx *vmx) -@@ -6329,23 +6344,20 @@ static __init int hardware_setup(void) - - set_bit(0, vmx_vpid_bitmap); /* 0 is reserved for host */ - -- if (enable_apicv) { -- for (msr = 0x800; msr <= 0x8ff; msr++) -- vmx_disable_intercept_msr_read_x2apic(msr); -- -- /* According SDM, in x2apic mode, the whole id reg is used. -- * But in KVM, it only use the highest eight bits. Need to -- * intercept it */ -- vmx_enable_intercept_msr_read_x2apic(0x802); -- /* TMCCT */ -- vmx_enable_intercept_msr_read_x2apic(0x839); -- /* TPR */ -- vmx_disable_intercept_msr_write_x2apic(0x808); -- /* EOI */ -- vmx_disable_intercept_msr_write_x2apic(0x80b); -- /* SELF-IPI */ -- vmx_disable_intercept_msr_write_x2apic(0x83f); -- } -+ for (msr = 0x800; msr <= 0x8ff; msr++) -+ vmx_disable_intercept_msr_read_x2apic(msr); -+ -+ /* According SDM, in x2apic mode, the whole id reg is used. But in -+ * KVM, it only use the highest eight bits. Need to intercept it */ -+ vmx_enable_intercept_msr_read_x2apic(0x802); -+ /* TMCCT */ -+ vmx_enable_intercept_msr_read_x2apic(0x839); -+ /* TPR */ -+ vmx_disable_intercept_msr_write_x2apic(0x808); -+ /* EOI */ -+ vmx_disable_intercept_msr_write_x2apic(0x80b); -+ /* SELF-IPI */ -+ vmx_disable_intercept_msr_write_x2apic(0x83f); - - if (enable_ept) { - kvm_mmu_set_mask_ptes(0ull, --- -2.5.5 diff --git a/media-cec-Fix-runtime-BUG-when-CONFIG_RC_CORE-CEC_CAP_RC.patch b/media-cec-Fix-runtime-BUG-when-CONFIG_RC_CORE-CEC_CAP_RC.patch new file mode 100644 index 000000000..7a29d72bf --- /dev/null +++ b/media-cec-Fix-runtime-BUG-when-CONFIG_RC_CORE-CEC_CAP_RC.patch @@ -0,0 +1,45 @@ +From patchwork Tue Apr 4 12:32:19 2017 +Content-Type: text/plain; charset="utf-8" +MIME-Version: 1.0 +Content-Transfer-Encoding: 7bit +Subject: [2/2, media] cec: Fix runtime BUG when (CONFIG_RC_CORE && !CEC_CAP_RC) +From: Lee Jones <lee.jones@linaro.org> +X-Patchwork-Id: 9661691 +Message-Id: <20170404123219.22040-2-lee.jones@linaro.org> +To: hans.verkuil@cisco.com, + mchehab@kernel.org +Cc: benjamin.gaignard@st.com, patrice.chotard@st.com, + linux-kernel@vger.kernel.org, kernel@stlinux.com, + Lee Jones <lee.jones@linaro.org>, linux-arm-kernel@lists.infradead.org, + linux-media@vger.kernel.org +Date: Tue, 4 Apr 2017 13:32:19 +0100 + +Currently when the RC Core is enabled (reachable) core code located +in cec_register_adapter() attempts to populate the RC structure with +a pointer to the 'parent' passed in by the caller. + +Unfortunately if the caller did not specify RC capibility when calling +cec_allocate_adapter(), then there will be no RC structure to populate. + +This causes a "NULL pointer dereference" error. + +Fixes: f51e80804f0 ("[media] cec: pass parent device in register(), not allocate()") +Signed-off-by: Lee Jones <lee.jones@linaro.org> +--- + drivers/media/cec/cec-core.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/drivers/media/cec/cec-core.c b/drivers/media/cec/cec-core.c +index 06a312c..d64937b 100644 +--- a/drivers/media/cec/cec-core.c ++++ b/drivers/media/cec/cec-core.c +@@ -286,8 +286,8 @@ int cec_register_adapter(struct cec_adapter *adap, + adap->devnode.dev.parent = parent; + + #if IS_REACHABLE(CONFIG_RC_CORE) +- adap->rc->dev.parent = parent; + if (adap->capabilities & CEC_CAP_RC) { ++ adap->rc->dev.parent = parent; + res = rc_register_device(adap->rc); + + if (res) { diff --git a/powerpc-prom-Increase-RMA-size-to-512MB.patch b/powerpc-prom-Increase-RMA-size-to-512MB.patch new file mode 100644 index 000000000..422f0a9ec --- /dev/null +++ b/powerpc-prom-Increase-RMA-size-to-512MB.patch @@ -0,0 +1,52 @@ +From patchwork Thu Mar 30 04:03:49 2017 +Content-Type: text/plain; charset="utf-8" +MIME-Version: 1.0 +Content-Transfer-Encoding: 7bit +Subject: powerpc/prom: Increase RMA size to 512MB +From: Sukadev Bhattiprolu <sukadev@linux.vnet.ibm.com> +X-Patchwork-Id: 745044 +Message-Id: <20170330040349.GA31756@us.ibm.com> +To: Michael Ellerman <mpe@ellerman.id.au> +Cc: praveen.pandey@in.ibm.com, linuxppc-dev@lists.ozlabs.org, + linux-kernel@vger.kernel.org +Date: Wed, 29 Mar 2017 21:03:49 -0700 + +>From 3ae8d1ed31b01b92b172fe20e4560cfbfab135ec Mon Sep 17 00:00:00 2001 +From: root <root@furatripa-lp2.aus.stglabs.ibm.com> +Date: Mon, 27 Mar 2017 19:43:14 -0400 +Subject: [PATCH] powerpc/prom: Increase RMA size to 512MB + +When booting very large systems with a large initrd, we run out of +space for either the RTAS or the flattened device tree (FDT). Boot +fails with messages like: + + Could not allocate memory for RTAS +or + No memory for flatten_device_tree (no room) + +Increasing the minimum RMA size to 512MB fixes the problem. This +should not have an impact on smaller LPARs (with 256MB memory), +as the firmware will cap the RMA to the memory assigned to the LPAR. + +Fix is based on input/discussions with Michael Ellerman. Thanks to +Praveen K. Pandey for testing on a large system. + +Reported-by: Praveen K. Pandey <preveen.pandey@in.ibm.com> +Signed-off-by: Sukadev Bhattiprolu <sukadev@linux.vnet.ibm.com> +--- + arch/powerpc/kernel/prom_init.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/arch/powerpc/kernel/prom_init.c b/arch/powerpc/kernel/prom_init.c +index 1c1b44e..dd8a04f 100644 +--- a/arch/powerpc/kernel/prom_init.c ++++ b/arch/powerpc/kernel/prom_init.c +@@ -815,7 +815,7 @@ struct ibm_arch_vec __cacheline_aligned ibm_architecture_vec = { + .virt_base = cpu_to_be32(0xffffffff), + .virt_size = cpu_to_be32(0xffffffff), + .load_base = cpu_to_be32(0xffffffff), +- .min_rma = cpu_to_be32(256), /* 256MB min RMA */ ++ .min_rma = cpu_to_be32(512), /* 512MB min RMA */ + .min_load = cpu_to_be32(0xffffffff), /* full client load */ + .min_rma_percent = 0, /* min RMA percentage of total RAM */ + .max_pft_size = 48, /* max log_2(hash table size) */ diff --git a/sctp-deny-peeloff-operation-on-asocs-with-threads-sl.patch b/sctp-deny-peeloff-operation-on-asocs-with-threads-sl.patch deleted file mode 100644 index 47f586ace..000000000 --- a/sctp-deny-peeloff-operation-on-asocs-with-threads-sl.patch +++ /dev/null @@ -1,66 +0,0 @@ -From dfcb9f4f99f1e9a49e43398a7bfbf56927544af1 Mon Sep 17 00:00:00 2001 -From: Marcelo Ricardo Leitner <marcelo.leitner@gmail.com> -Date: Thu, 23 Feb 2017 09:31:18 -0300 -Subject: [PATCH] sctp: deny peeloff operation on asocs with threads sleeping - on it - -commit 2dcab5984841 ("sctp: avoid BUG_ON on sctp_wait_for_sndbuf") -attempted to avoid a BUG_ON call when the association being used for a -sendmsg() is blocked waiting for more sndbuf and another thread did a -peeloff operation on such asoc, moving it to another socket. - -As Ben Hutchings noticed, then in such case it would return without -locking back the socket and would cause two unlocks in a row. - -Further analysis also revealed that it could allow a double free if the -application managed to peeloff the asoc that is created during the -sendmsg call, because then sctp_sendmsg() would try to free the asoc -that was created only for that call. - -This patch takes another approach. It will deny the peeloff operation -if there is a thread sleeping on the asoc, so this situation doesn't -exist anymore. This avoids the issues described above and also honors -the syscalls that are already being handled (it can be multiple sendmsg -calls). - -Joint work with Xin Long. - -Fixes: 2dcab5984841 ("sctp: avoid BUG_ON on sctp_wait_for_sndbuf") -Cc: Alexander Popov <alex.popov@linux.com> -Cc: Ben Hutchings <ben@decadent.org.uk> -Signed-off-by: Marcelo Ricardo Leitner <marcelo.leitner@gmail.com> -Signed-off-by: Xin Long <lucien.xin@gmail.com> -Signed-off-by: David S. Miller <davem@davemloft.net> ---- - net/sctp/socket.c | 8 ++++++-- - 1 file changed, 6 insertions(+), 2 deletions(-) - -diff --git a/net/sctp/socket.c b/net/sctp/socket.c -index b532148..465a9c8 100644 ---- a/net/sctp/socket.c -+++ b/net/sctp/socket.c -@@ -4862,6 +4862,12 @@ int sctp_do_peeloff(struct sock *sk, sctp_assoc_t id, struct socket **sockp) - if (!asoc) - return -EINVAL; - -+ /* If there is a thread waiting on more sndbuf space for -+ * sending on this asoc, it cannot be peeled. -+ */ -+ if (waitqueue_active(&asoc->wait)) -+ return -EBUSY; -+ - /* An association cannot be branched off from an already peeled-off - * socket, nor is this supported for tcp style sockets. - */ -@@ -7599,8 +7605,6 @@ static int sctp_wait_for_sndbuf(struct sctp_association *asoc, long *timeo_p, - */ - release_sock(sk); - current_timeo = schedule_timeout(current_timeo); -- if (sk != asoc->base.sk) -- goto do_error; - lock_sock(sk); - - *timeo_p = current_timeo; --- -2.9.3 - diff --git a/selinux-allow-context-mounts-on-tmpfs-etc.patch b/selinux-allow-context-mounts-on-tmpfs-etc.patch deleted file mode 100644 index cbb5b8cdf..000000000 --- a/selinux-allow-context-mounts-on-tmpfs-etc.patch +++ /dev/null @@ -1,57 +0,0 @@ -From 01593d3299a1cfdb5e08acf95f63ec59dd674906 Mon Sep 17 00:00:00 2001 -From: Stephen Smalley <sds@tycho.nsa.gov> -Date: Mon, 9 Jan 2017 10:07:31 -0500 -Subject: [PATCH] selinux: allow context mounts on tmpfs, ramfs, devpts within - user namespaces - -commit aad82892af261b9903cc11c55be3ecf5f0b0b4f8 ("selinux: Add support for -unprivileged mounts from user namespaces") prohibited any use of context -mount options within non-init user namespaces. However, this breaks -use of context mount options for tmpfs mounts within user namespaces, -which are being used by Docker/runc. There is no reason to block such -usage for tmpfs, ramfs or devpts. Exempt these filesystem types -from this restriction. - -Before: -sh$ userns_child_exec -p -m -U -M '0 1000 1' -G '0 1000 1' bash -sh# mount -t tmpfs -o context=system_u:object_r:user_tmp_t:s0:c13 none /tmp -mount: tmpfs is write-protected, mounting read-only -mount: cannot mount tmpfs read-only - -After: -sh$ userns_child_exec -p -m -U -M '0 1000 1' -G '0 1000 1' bash -sh# mount -t tmpfs -o context=system_u:object_r:user_tmp_t:s0:c13 none /tmp -sh# ls -Zd /tmp -unconfined_u:object_r:user_tmp_t:s0:c13 /tmp - -Signed-off-by: Stephen Smalley <sds@tycho.nsa.gov> -Signed-off-by: Paul Moore <paul@paul-moore.com> ---- - security/selinux/hooks.c | 10 +++++++--- - 1 file changed, 7 insertions(+), 3 deletions(-) - -diff --git a/security/selinux/hooks.c b/security/selinux/hooks.c -index e4b953f..e32f4b5 100644 ---- a/security/selinux/hooks.c -+++ b/security/selinux/hooks.c -@@ -834,10 +834,14 @@ static int selinux_set_mnt_opts(struct super_block *sb, - } - - /* -- * If this is a user namespace mount, no contexts are allowed -- * on the command line and security labels must be ignored. -+ * If this is a user namespace mount and the filesystem type is not -+ * explicitly whitelisted, then no contexts are allowed on the command -+ * line and security labels must be ignored. - */ -- if (sb->s_user_ns != &init_user_ns) { -+ if (sb->s_user_ns != &init_user_ns && -+ strcmp(sb->s_type->name, "tmpfs") && -+ strcmp(sb->s_type->name, "ramfs") && -+ strcmp(sb->s_type->name, "devpts")) { - if (context_sid || fscontext_sid || rootcontext_sid || - defcontext_sid) { - rc = -EACCES; --- -2.9.3 - @@ -1,3 +1,3 @@ -SHA512 (linux-4.10.tar.xz) = c3690125a8402df638095bd98a613fcf1a257b81de7611c84711d315cd11e2634ab4636302b3742aedf1e3ba9ce0fea53fe8c7d48e37865d8ee5db3565220d90 -SHA512 (perf-man-4.10.tar.gz) = 2c830e06f47211d70a8330961487af73a8bc01073019475e6b6131d3bb8c95658b77ca0ae5f1b44371accf103658bc5a3a4366b3e017a4088a8fd408dd6867e8 -SHA512 (patch-4.10.3.xz) = ad297c3c9d52c15444bb76b3be6785a99219527614f39e84299f2121f2657377de4145a9a0c649b3719462c48e8aae8686267a521ad9e58a0372df117edf7594 +SHA512 (perf-man-4.11.tar.gz) = 0b070d2f10a743329de2f532e2d7e19ef385a3e6ef3c700b591ae2697604dbe542b36e31121b3e37517ee8071ab800386fa8663c24a5b36520a18e096c6eefc8 +SHA512 (linux-4.11.tar.xz) = 6610eed97ffb7207c71771198c36179b8244ace7222bebb109507720e26c5f17d918079a56d5febdd8605844d67fb2df0ebe910fa2f2f53690daf6e2a8ad09c3 +SHA512 (patch-4.11.1.xz) = e6cc334312655e8992da8834d09561191482961862c9f7ef5db44e3327db9994bf258412294271db8c3badd04c309f6cf12d6608a15fccdeec4039f50756fea8 diff --git a/ti-bluetooth.patch b/ti-bluetooth.patch new file mode 100644 index 000000000..288eb7c94 --- /dev/null +++ b/ti-bluetooth.patch @@ -0,0 +1,2480 @@ +From patchwork Sat Aug 13 03:14:32 2016 +Content-Type: text/plain; charset="utf-8" +MIME-Version: 1.0 +Content-Transfer-Encoding: 7bit +Subject: [RFC,1/7] tty: serial: omap: add UPF_BOOT_AUTOCONF flag for DT init +From: Sebastian Reichel <sre@kernel.org> +X-Patchwork-Id: 9278297 +Message-Id: <1471058078-5579-2-git-send-email-sre@kernel.org> +To: Sebastian Reichel <sre@kernel.org>, Tony Lindgren <tony@atomide.com>, + Rob Herring <robh+dt@kernel.org>, Mark Rutland <mark.rutland@arm.com>, + Marcel Holtmann <marcel@holtmann.org>, + Greg Kroah-Hartman <gregkh@linuxfoundation.org>, + Jiri Slaby <jslaby@suse.com> +Cc: Ville Tervo <ville.tervo@iki.fi>, + =?UTF-8?q?Filip=20Matijevi=C4=87?= <filip.matijevic.pz@gmail.com>, + Aaro Koskinen <aaro.koskinen@iki.fi>, Pavel Machek <pavel@ucw.cz>, + =?UTF-8?q?Pali=20Roh=C3=A1r?= <pali.rohar@gmail.com>, + ivo.g.dimitrov.75@gmail.com, linux-bluetooth@vger.kernel.org, + linux-serial@vger.kernel.org, linux-omap@vger.kernel.org, + devicetree@vger.kernel.org, linux-kernel@vger.kernel.org +Date: Sat, 13 Aug 2016 05:14:32 +0200 + +--- + drivers/tty/serial/omap-serial.c | 3 +++ + 1 file changed, 3 insertions(+) +Acked-by: Pavel Machek <pavel@ucw.cz> + +diff --git a/drivers/tty/serial/omap-serial.c b/drivers/tty/serial/omap-serial.c +index a2a529994ba5..7c2c77789c2c 100644 +--- a/drivers/tty/serial/omap-serial.c ++++ b/drivers/tty/serial/omap-serial.c +@@ -1542,6 +1542,9 @@ static struct omap_uart_port_info *of_get_uart_port_info(struct device *dev) + + of_property_read_u32(dev->of_node, "clock-frequency", + &omap_up_info->uartclk); ++ ++ omap_up_info->flags = UPF_BOOT_AUTOCONF; ++ + return omap_up_info; + } + +From 6102245c5711e73b83ad79ab0f2c3ec040262a87 Mon Sep 17 00:00:00 2001 +From: Sebastian Reichel <sre@kernel.org> +Date: Tue, 28 Mar 2017 17:59:31 +0200 +Subject: [PATCH 01/13] serdev: add serdev_device_wait_until_sent + +Add method, which waits until the transmission buffer has been sent. +Note, that the change in ttyport_write_wakeup is related, since +tty_wait_until_sent will hang without that change. + +Acked-by: Rob Herring <robh@kernel.org> +Acked-by: Pavel Machek <pavel@ucw.cz> +Signed-off-by: Sebastian Reichel <sre@kernel.org> +Signed-off-by: Rob Herring <robh@kernel.org> +--- + drivers/tty/serdev/core.c | 11 +++++++++++ + drivers/tty/serdev/serdev-ttyport.c | 18 ++++++++++++++---- + include/linux/serdev.h | 3 +++ + 3 files changed, 28 insertions(+), 4 deletions(-) + +diff --git a/drivers/tty/serdev/core.c b/drivers/tty/serdev/core.c +index f4c6c90add78..a63b74031e22 100644 +--- a/drivers/tty/serdev/core.c ++++ b/drivers/tty/serdev/core.c +@@ -173,6 +173,17 @@ void serdev_device_set_flow_control(struct serdev_device *serdev, bool enable) + } + EXPORT_SYMBOL_GPL(serdev_device_set_flow_control); + ++void serdev_device_wait_until_sent(struct serdev_device *serdev, long timeout) ++{ ++ struct serdev_controller *ctrl = serdev->ctrl; ++ ++ if (!ctrl || !ctrl->ops->wait_until_sent) ++ return; ++ ++ ctrl->ops->wait_until_sent(ctrl, timeout); ++} ++EXPORT_SYMBOL_GPL(serdev_device_wait_until_sent); ++ + static int serdev_drv_probe(struct device *dev) + { + const struct serdev_device_driver *sdrv = to_serdev_device_driver(dev->driver); +diff --git a/drivers/tty/serdev/serdev-ttyport.c b/drivers/tty/serdev/serdev-ttyport.c +index d05393594f15..50dc75c4d204 100644 +--- a/drivers/tty/serdev/serdev-ttyport.c ++++ b/drivers/tty/serdev/serdev-ttyport.c +@@ -14,6 +14,7 @@ + #include <linux/serdev.h> + #include <linux/tty.h> + #include <linux/tty_driver.h> ++#include <linux/poll.h> + + #define SERPORT_ACTIVE 1 + +@@ -46,11 +47,11 @@ static void ttyport_write_wakeup(struct tty_port *port) + struct serdev_controller *ctrl = port->client_data; + struct serport *serport = serdev_controller_get_drvdata(ctrl); + +- if (!test_and_clear_bit(TTY_DO_WRITE_WAKEUP, &port->tty->flags)) +- return; +- +- if (test_bit(SERPORT_ACTIVE, &serport->flags)) ++ if (test_and_clear_bit(TTY_DO_WRITE_WAKEUP, &port->tty->flags) && ++ test_bit(SERPORT_ACTIVE, &serport->flags)) + serdev_controller_write_wakeup(ctrl); ++ ++ wake_up_interruptible_poll(&port->tty->write_wait, POLLOUT); + } + + static const struct tty_port_client_operations client_ops = { +@@ -167,6 +168,14 @@ static void ttyport_set_flow_control(struct serdev_controller *ctrl, bool enable + tty_set_termios(tty, &ktermios); + } + ++static void ttyport_wait_until_sent(struct serdev_controller *ctrl, long timeout) ++{ ++ struct serport *serport = serdev_controller_get_drvdata(ctrl); ++ struct tty_struct *tty = serport->tty; ++ ++ tty_wait_until_sent(tty, timeout); ++} ++ + static const struct serdev_controller_ops ctrl_ops = { + .write_buf = ttyport_write_buf, + .write_flush = ttyport_write_flush, +@@ -175,6 +184,7 @@ static const struct serdev_controller_ops ctrl_ops = { + .close = ttyport_close, + .set_flow_control = ttyport_set_flow_control, + .set_baudrate = ttyport_set_baudrate, ++ .wait_until_sent = ttyport_wait_until_sent, + }; + + struct device *serdev_tty_port_register(struct tty_port *port, +diff --git a/include/linux/serdev.h b/include/linux/serdev.h +index 9519da6253a8..a308b206d204 100644 +--- a/include/linux/serdev.h ++++ b/include/linux/serdev.h +@@ -81,6 +81,7 @@ struct serdev_controller_ops { + void (*close)(struct serdev_controller *); + void (*set_flow_control)(struct serdev_controller *, bool); + unsigned int (*set_baudrate)(struct serdev_controller *, unsigned int); ++ void (*wait_until_sent)(struct serdev_controller *, long); + }; + + /** +@@ -186,6 +187,7 @@ int serdev_device_open(struct serdev_device *); + void serdev_device_close(struct serdev_device *); + unsigned int serdev_device_set_baudrate(struct serdev_device *, unsigned int); + void serdev_device_set_flow_control(struct serdev_device *, bool); ++void serdev_device_wait_until_sent(struct serdev_device *, long); + int serdev_device_write_buf(struct serdev_device *, const unsigned char *, size_t); + void serdev_device_write_flush(struct serdev_device *); + int serdev_device_write_room(struct serdev_device *); +@@ -223,6 +225,7 @@ static inline unsigned int serdev_device_set_baudrate(struct serdev_device *sdev + return 0; + } + static inline void serdev_device_set_flow_control(struct serdev_device *sdev, bool enable) {} ++static inline void serdev_device_wait_until_sent(struct serdev_device *sdev, long timeout) {} + static inline int serdev_device_write_buf(struct serdev_device *sdev, const unsigned char *buf, size_t count) + { + return -ENODEV; +-- +2.12.2 + +From 6e1713b03eab6f42251bad76ab05e7e1aa28b199 Mon Sep 17 00:00:00 2001 +From: Sebastian Reichel <sre@kernel.org> +Date: Tue, 28 Mar 2017 17:59:32 +0200 +Subject: [PATCH 02/13] serdev: implement get/set tiocm + +Add method for getting and setting tiocm. + +Acked-by: Pavel Machek <pavel@ucw.cz> +Acked-by: Rob Herring <robh@kernel.org> +Signed-off-by: Sebastian Reichel <sre@kernel.org> +Signed-off-by: Rob Herring <robh@kernel.org> +--- + drivers/tty/serdev/core.c | 22 ++++++++++++++++++++++ + drivers/tty/serdev/serdev-ttyport.c | 24 ++++++++++++++++++++++++ + include/linux/serdev.h | 13 +++++++++++++ + 3 files changed, 59 insertions(+) + +diff --git a/drivers/tty/serdev/core.c b/drivers/tty/serdev/core.c +index a63b74031e22..1e1cbae3a0ea 100644 +--- a/drivers/tty/serdev/core.c ++++ b/drivers/tty/serdev/core.c +@@ -184,6 +184,28 @@ void serdev_device_wait_until_sent(struct serdev_device *serdev, long timeout) + } + EXPORT_SYMBOL_GPL(serdev_device_wait_until_sent); + ++int serdev_device_get_tiocm(struct serdev_device *serdev) ++{ ++ struct serdev_controller *ctrl = serdev->ctrl; ++ ++ if (!ctrl || !ctrl->ops->get_tiocm) ++ return -ENOTSUPP; ++ ++ return ctrl->ops->get_tiocm(ctrl); ++} ++EXPORT_SYMBOL_GPL(serdev_device_get_tiocm); ++ ++int serdev_device_set_tiocm(struct serdev_device *serdev, int set, int clear) ++{ ++ struct serdev_controller *ctrl = serdev->ctrl; ++ ++ if (!ctrl || !ctrl->ops->set_tiocm) ++ return -ENOTSUPP; ++ ++ return ctrl->ops->set_tiocm(ctrl, set, clear); ++} ++EXPORT_SYMBOL_GPL(serdev_device_set_tiocm); ++ + static int serdev_drv_probe(struct device *dev) + { + const struct serdev_device_driver *sdrv = to_serdev_device_driver(dev->driver); +diff --git a/drivers/tty/serdev/serdev-ttyport.c b/drivers/tty/serdev/serdev-ttyport.c +index 50dc75c4d204..487c88f6aa0e 100644 +--- a/drivers/tty/serdev/serdev-ttyport.c ++++ b/drivers/tty/serdev/serdev-ttyport.c +@@ -176,6 +176,28 @@ static void ttyport_wait_until_sent(struct serdev_controller *ctrl, long timeout + tty_wait_until_sent(tty, timeout); + } + ++static int ttyport_get_tiocm(struct serdev_controller *ctrl) ++{ ++ struct serport *serport = serdev_controller_get_drvdata(ctrl); ++ struct tty_struct *tty = serport->tty; ++ ++ if (!tty->ops->tiocmget) ++ return -ENOTSUPP; ++ ++ return tty->driver->ops->tiocmget(tty); ++} ++ ++static int ttyport_set_tiocm(struct serdev_controller *ctrl, unsigned int set, unsigned int clear) ++{ ++ struct serport *serport = serdev_controller_get_drvdata(ctrl); ++ struct tty_struct *tty = serport->tty; ++ ++ if (!tty->ops->tiocmset) ++ return -ENOTSUPP; ++ ++ return tty->driver->ops->tiocmset(tty, set, clear); ++} ++ + static const struct serdev_controller_ops ctrl_ops = { + .write_buf = ttyport_write_buf, + .write_flush = ttyport_write_flush, +@@ -185,6 +207,8 @@ static const struct serdev_controller_ops ctrl_ops = { + .set_flow_control = ttyport_set_flow_control, + .set_baudrate = ttyport_set_baudrate, + .wait_until_sent = ttyport_wait_until_sent, ++ .get_tiocm = ttyport_get_tiocm, ++ .set_tiocm = ttyport_set_tiocm, + }; + + struct device *serdev_tty_port_register(struct tty_port *port, +diff --git a/include/linux/serdev.h b/include/linux/serdev.h +index a308b206d204..e29a270f603c 100644 +--- a/include/linux/serdev.h ++++ b/include/linux/serdev.h +@@ -15,6 +15,7 @@ + + #include <linux/types.h> + #include <linux/device.h> ++#include <linux/termios.h> + + struct serdev_controller; + struct serdev_device; +@@ -82,6 +83,8 @@ struct serdev_controller_ops { + void (*set_flow_control)(struct serdev_controller *, bool); + unsigned int (*set_baudrate)(struct serdev_controller *, unsigned int); + void (*wait_until_sent)(struct serdev_controller *, long); ++ int (*get_tiocm)(struct serdev_controller *); ++ int (*set_tiocm)(struct serdev_controller *, unsigned int, unsigned int); + }; + + /** +@@ -188,6 +191,8 @@ void serdev_device_close(struct serdev_device *); + unsigned int serdev_device_set_baudrate(struct serdev_device *, unsigned int); + void serdev_device_set_flow_control(struct serdev_device *, bool); + void serdev_device_wait_until_sent(struct serdev_device *, long); ++int serdev_device_get_tiocm(struct serdev_device *); ++int serdev_device_set_tiocm(struct serdev_device *, int, int); + int serdev_device_write_buf(struct serdev_device *, const unsigned char *, size_t); + void serdev_device_write_flush(struct serdev_device *); + int serdev_device_write_room(struct serdev_device *); +@@ -226,6 +231,14 @@ static inline unsigned int serdev_device_set_baudrate(struct serdev_device *sdev + } + static inline void serdev_device_set_flow_control(struct serdev_device *sdev, bool enable) {} + static inline void serdev_device_wait_until_sent(struct serdev_device *sdev, long timeout) {} ++static inline int serdev_device_get_tiocm(struct serdev_device *serdev) ++{ ++ return -ENOTSUPP; ++} ++static inline int serdev_device_set_tiocm(struct serdev_device *serdev, int set, int clear) ++{ ++ return -ENOTSUPP; ++} + static inline int serdev_device_write_buf(struct serdev_device *sdev, const unsigned char *buf, size_t count) + { + return -ENODEV; +-- +2.12.2 + +From 9425a7e94dba6d5585c542c50f253f8fbf764a81 Mon Sep 17 00:00:00 2001 +From: Sebastian Reichel <sre@kernel.org> +Date: Tue, 28 Mar 2017 17:59:33 +0200 +Subject: [PATCH 03/13] serdev: add helpers for cts and rts handling + +Add serdev helper functions for handling of cts and rts +lines using the serdev's tiocm functions. + +Acked-by: Rob Herring <robh@kernel.org> +Signed-off-by: Sebastian Reichel <sre@kernel.org> +Signed-off-by: Rob Herring <robh@kernel.org> +--- + include/linux/serdev.h | 31 +++++++++++++++++++++++++++++++ + 1 file changed, 31 insertions(+) + +diff --git a/include/linux/serdev.h b/include/linux/serdev.h +index e29a270f603c..37395b8eb8f1 100644 +--- a/include/linux/serdev.h ++++ b/include/linux/serdev.h +@@ -16,6 +16,7 @@ + #include <linux/types.h> + #include <linux/device.h> + #include <linux/termios.h> ++#include <linux/delay.h> + + struct serdev_controller; + struct serdev_device; +@@ -254,6 +255,36 @@ static inline int serdev_device_write_room(struct serdev_device *sdev) + + #endif /* CONFIG_SERIAL_DEV_BUS */ + ++static inline bool serdev_device_get_cts(struct serdev_device *serdev) ++{ ++ int status = serdev_device_get_tiocm(serdev); ++ return !!(status & TIOCM_CTS); ++} ++ ++static inline int serdev_device_wait_for_cts(struct serdev_device *serdev, bool state, int timeout_ms) ++{ ++ unsigned long timeout; ++ bool signal; ++ ++ timeout = jiffies + msecs_to_jiffies(timeout_ms); ++ while (time_is_after_jiffies(timeout)) { ++ signal = serdev_device_get_cts(serdev); ++ if (signal == state) ++ return 0; ++ usleep_range(1000, 2000); ++ } ++ ++ return -ETIMEDOUT; ++} ++ ++static inline int serdev_device_set_rts(struct serdev_device *serdev, bool enable) ++{ ++ if (enable) ++ return serdev_device_set_tiocm(serdev, TIOCM_RTS, 0); ++ else ++ return serdev_device_set_tiocm(serdev, 0, TIOCM_RTS); ++} ++ + /* + * serdev hooks into TTY core + */ +-- +2.12.2 + +From 8656be75e893514bac2aa817f1c1b35e8dbd9e5b Mon Sep 17 00:00:00 2001 +From: Sebastian Reichel <sre@kernel.org> +Date: Tue, 28 Mar 2017 17:59:34 +0200 +Subject: [PATCH 04/13] Bluetooth: hci_uart: add support for word alignment + +This will be used by Nokia's H4+ protocol, which +uses 2-byte aligned packets. + +Acked-by: Pavel Machek <pavel@ucw.cz> +Signed-off-by: Sebastian Reichel <sre@kernel.org> +Signed-off-by: Rob Herring <robh@kernel.org> +--- + drivers/bluetooth/hci_h4.c | 17 +++++++++++++++++ + drivers/bluetooth/hci_ldisc.c | 4 ++++ + drivers/bluetooth/hci_uart.h | 3 +++ + 3 files changed, 24 insertions(+) + +diff --git a/drivers/bluetooth/hci_h4.c b/drivers/bluetooth/hci_h4.c +index 635597b6e168..82e5a32b87a4 100644 +--- a/drivers/bluetooth/hci_h4.c ++++ b/drivers/bluetooth/hci_h4.c +@@ -171,9 +171,20 @@ struct sk_buff *h4_recv_buf(struct hci_dev *hdev, struct sk_buff *skb, + const unsigned char *buffer, int count, + const struct h4_recv_pkt *pkts, int pkts_count) + { ++ struct hci_uart *hu = hci_get_drvdata(hdev); ++ u8 alignment = hu->alignment; ++ + while (count) { + int i, len; + ++ /* remove padding bytes from buffer */ ++ for (; hu->padding && count > 0; hu->padding--) { ++ count--; ++ buffer++; ++ } ++ if (!count) ++ break; ++ + if (!skb) { + for (i = 0; i < pkts_count; i++) { + if (buffer[0] != (&pkts[i])->type) +@@ -253,11 +264,17 @@ struct sk_buff *h4_recv_buf(struct hci_dev *hdev, struct sk_buff *skb, + } + + if (!dlen) { ++ hu->padding = (skb->len - 1) % alignment; ++ hu->padding = (alignment - hu->padding) % alignment; ++ + /* No more data, complete frame */ + (&pkts[i])->recv(hdev, skb); + skb = NULL; + } + } else { ++ hu->padding = (skb->len - 1) % alignment; ++ hu->padding = (alignment - hu->padding) % alignment; ++ + /* Complete frame */ + (&pkts[i])->recv(hdev, skb); + skb = NULL; +diff --git a/drivers/bluetooth/hci_ldisc.c b/drivers/bluetooth/hci_ldisc.c +index 9497c469efd2..0ec8a94bd712 100644 +--- a/drivers/bluetooth/hci_ldisc.c ++++ b/drivers/bluetooth/hci_ldisc.c +@@ -459,6 +459,10 @@ static int hci_uart_tty_open(struct tty_struct *tty) + hu->tty = tty; + tty->receive_room = 65536; + ++ /* disable alignment support by default */ ++ hu->alignment = 1; ++ hu->padding = 0; ++ + INIT_WORK(&hu->init_ready, hci_uart_init_work); + INIT_WORK(&hu->write_work, hci_uart_write_work); + +diff --git a/drivers/bluetooth/hci_uart.h b/drivers/bluetooth/hci_uart.h +index 070139513e65..4aff50960cac 100644 +--- a/drivers/bluetooth/hci_uart.h ++++ b/drivers/bluetooth/hci_uart.h +@@ -92,6 +92,9 @@ struct hci_uart { + + unsigned int init_speed; + unsigned int oper_speed; ++ ++ u8 alignment; ++ u8 padding; + }; + + /* HCI_UART proto flag bits */ +-- +2.12.2 + +From f2d830b35ce8c834eaa895ff29c461455024f05e Mon Sep 17 00:00:00 2001 +From: Rob Herring <robh@kernel.org> +Date: Tue, 28 Mar 2017 17:59:35 +0200 +Subject: [PATCH 05/13] Bluetooth: hci_uart: add serdev driver support library + +This adds library functions for serdev based BT drivers. This is largely +copied from hci_ldisc.c and modified to use serdev calls. There's a little +bit of duplication, but I avoided intermixing this as the ldisc code should +eventually go away. + +Signed-off-by: Rob Herring <robh@kernel.org> +Cc: Marcel Holtmann <marcel@holtmann.org> +Cc: Gustavo Padovan <gustavo@padovan.org> +Cc: Johan Hedberg <johan.hedberg@gmail.com> +Cc: linux-bluetooth@vger.kernel.org +Acked-by: Pavel Machek <pavel@ucw.cz> +[Fix style issues reported by Pavel] +Signed-off-by: Sebastian Reichel <sre@kernel.org> +Signed-off-by: Rob Herring <robh@kernel.org> +--- + drivers/bluetooth/Makefile | 1 + + drivers/bluetooth/hci_serdev.c | 361 +++++++++++++++++++++++++++++++++++++++++ + drivers/bluetooth/hci_uart.h | 4 + + 3 files changed, 366 insertions(+) + create mode 100644 drivers/bluetooth/hci_serdev.c + +diff --git a/drivers/bluetooth/Makefile b/drivers/bluetooth/Makefile +index 80627187c8b6..fd571689eed6 100644 +--- a/drivers/bluetooth/Makefile ++++ b/drivers/bluetooth/Makefile +@@ -29,6 +29,7 @@ btmrvl-y := btmrvl_main.o + btmrvl-$(CONFIG_DEBUG_FS) += btmrvl_debugfs.o + + hci_uart-y := hci_ldisc.o ++hci_uart-$(CONFIG_SERIAL_DEV_BUS) += hci_serdev.o + hci_uart-$(CONFIG_BT_HCIUART_H4) += hci_h4.o + hci_uart-$(CONFIG_BT_HCIUART_BCSP) += hci_bcsp.o + hci_uart-$(CONFIG_BT_HCIUART_LL) += hci_ll.o +diff --git a/drivers/bluetooth/hci_serdev.c b/drivers/bluetooth/hci_serdev.c +new file mode 100644 +index 000000000000..f5ccb2c7ef92 +--- /dev/null ++++ b/drivers/bluetooth/hci_serdev.c +@@ -0,0 +1,361 @@ ++/* ++ * Bluetooth HCI serdev driver lib ++ * ++ * Copyright (C) 2017 Linaro, Ltd., Rob Herring <robh@kernel.org> ++ * ++ * Based on hci_ldisc.c: ++ * ++ * Copyright (C) 2000-2001 Qualcomm Incorporated ++ * Copyright (C) 2002-2003 Maxim Krasnyansky <maxk@qualcomm.com> ++ * Copyright (C) 2004-2005 Marcel Holtmann <marcel@holtmann.org> ++ * ++ * This program is free software; you can redistribute it and/or modify ++ * it under the terms of the GNU General Public License as published by ++ * the Free Software Foundation; either version 2 of the License, or ++ * (at your option) any later version. ++ * ++ * This program is distributed in the hope that it will be useful, ++ * but WITHOUT ANY WARRANTY; without even the implied warranty of ++ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ++ * GNU General Public License for more details. ++ * ++ */ ++ ++#include <linux/kernel.h> ++#include <linux/types.h> ++#include <linux/serdev.h> ++#include <linux/skbuff.h> ++ ++#include <net/bluetooth/bluetooth.h> ++#include <net/bluetooth/hci_core.h> ++ ++#include "hci_uart.h" ++ ++struct serdev_device_ops hci_serdev_client_ops; ++ ++static inline void hci_uart_tx_complete(struct hci_uart *hu, int pkt_type) ++{ ++ struct hci_dev *hdev = hu->hdev; ++ ++ /* Update HCI stat counters */ ++ switch (pkt_type) { ++ case HCI_COMMAND_PKT: ++ hdev->stat.cmd_tx++; ++ break; ++ ++ case HCI_ACLDATA_PKT: ++ hdev->stat.acl_tx++; ++ break; ++ ++ case HCI_SCODATA_PKT: ++ hdev->stat.sco_tx++; ++ break; ++ } ++} ++ ++static inline struct sk_buff *hci_uart_dequeue(struct hci_uart *hu) ++{ ++ struct sk_buff *skb = hu->tx_skb; ++ ++ if (!skb) ++ skb = hu->proto->dequeue(hu); ++ else ++ hu->tx_skb = NULL; ++ ++ return skb; ++} ++ ++static void hci_uart_write_work(struct work_struct *work) ++{ ++ struct hci_uart *hu = container_of(work, struct hci_uart, write_work); ++ struct serdev_device *serdev = hu->serdev; ++ struct hci_dev *hdev = hu->hdev; ++ struct sk_buff *skb; ++ ++ /* REVISIT: ++ * should we cope with bad skbs or ->write() returning an error value? ++ */ ++ do { ++ clear_bit(HCI_UART_TX_WAKEUP, &hu->tx_state); ++ ++ while ((skb = hci_uart_dequeue(hu))) { ++ int len; ++ ++ len = serdev_device_write_buf(serdev, ++ skb->data, skb->len); ++ hdev->stat.byte_tx += len; ++ ++ skb_pull(skb, len); ++ if (skb->len) { ++ hu->tx_skb = skb; ++ break; ++ } ++ ++ hci_uart_tx_complete(hu, hci_skb_pkt_type(skb)); ++ kfree_skb(skb); ++ } ++ } while(test_bit(HCI_UART_TX_WAKEUP, &hu->tx_state)); ++ ++ clear_bit(HCI_UART_SENDING, &hu->tx_state); ++} ++ ++/* ------- Interface to HCI layer ------ */ ++ ++/* Initialize device */ ++static int hci_uart_open(struct hci_dev *hdev) ++{ ++ struct hci_uart *hu = hci_get_drvdata(hdev); ++ ++ BT_DBG("%s %p", hdev->name, hdev); ++ ++ serdev_device_set_client_ops(hu->serdev, &hci_serdev_client_ops); ++ ++ return serdev_device_open(hu->serdev); ++} ++ ++/* Reset device */ ++static int hci_uart_flush(struct hci_dev *hdev) ++{ ++ struct hci_uart *hu = hci_get_drvdata(hdev); ++ ++ BT_DBG("hdev %p serdev %p", hdev, hu->serdev); ++ ++ if (hu->tx_skb) { ++ kfree_skb(hu->tx_skb); hu->tx_skb = NULL; ++ } ++ ++ /* Flush any pending characters in the driver and discipline. */ ++ serdev_device_write_flush(hu->serdev); ++ ++ if (test_bit(HCI_UART_PROTO_READY, &hu->flags)) ++ hu->proto->flush(hu); ++ ++ return 0; ++} ++ ++/* Close device */ ++static int hci_uart_close(struct hci_dev *hdev) ++{ ++ struct hci_uart *hu = hci_get_drvdata(hdev); ++ ++ BT_DBG("hdev %p", hdev); ++ ++ hci_uart_flush(hdev); ++ hdev->flush = NULL; ++ ++ serdev_device_close(hu->serdev); ++ ++ return 0; ++} ++ ++/* Send frames from HCI layer */ ++static int hci_uart_send_frame(struct hci_dev *hdev, struct sk_buff *skb) ++{ ++ struct hci_uart *hu = hci_get_drvdata(hdev); ++ ++ BT_DBG("%s: type %d len %d", hdev->name, hci_skb_pkt_type(skb), ++ skb->len); ++ ++ hu->proto->enqueue(hu, skb); ++ ++ hci_uart_tx_wakeup(hu); ++ ++ return 0; ++} ++ ++static int hci_uart_setup(struct hci_dev *hdev) ++{ ++ struct hci_uart *hu = hci_get_drvdata(hdev); ++ struct hci_rp_read_local_version *ver; ++ struct sk_buff *skb; ++ unsigned int speed; ++ int err; ++ ++ /* Init speed if any */ ++ if (hu->init_speed) ++ speed = hu->init_speed; ++ else if (hu->proto->init_speed) ++ speed = hu->proto->init_speed; ++ else ++ speed = 0; ++ ++ if (speed) ++ serdev_device_set_baudrate(hu->serdev, speed); ++ ++ /* Operational speed if any */ ++ if (hu->oper_speed) ++ speed = hu->oper_speed; ++ else if (hu->proto->oper_speed) ++ speed = hu->proto->oper_speed; ++ else ++ speed = 0; ++ ++ if (hu->proto->set_baudrate && speed) { ++ err = hu->proto->set_baudrate(hu, speed); ++ if (err) ++ BT_ERR("%s: failed to set baudrate", hdev->name); ++ else ++ serdev_device_set_baudrate(hu->serdev, speed); ++ } ++ ++ if (hu->proto->setup) ++ return hu->proto->setup(hu); ++ ++ if (!test_bit(HCI_UART_VND_DETECT, &hu->hdev_flags)) ++ return 0; ++ ++ skb = __hci_cmd_sync(hdev, HCI_OP_READ_LOCAL_VERSION, 0, NULL, ++ HCI_INIT_TIMEOUT); ++ if (IS_ERR(skb)) { ++ BT_ERR("%s: Reading local version information failed (%ld)", ++ hdev->name, PTR_ERR(skb)); ++ return 0; ++ } ++ ++ if (skb->len != sizeof(*ver)) { ++ BT_ERR("%s: Event length mismatch for version information", ++ hdev->name); ++ } ++ ++ kfree_skb(skb); ++ return 0; ++} ++ ++/** hci_uart_write_wakeup - transmit buffer wakeup ++ * @serdev: serial device ++ * ++ * This function is called by the serdev framework when it accepts ++ * more data being sent. ++ */ ++static void hci_uart_write_wakeup(struct serdev_device *serdev) ++{ ++ struct hci_uart *hu = serdev_device_get_drvdata(serdev); ++ ++ BT_DBG(""); ++ ++ if (!hu || serdev != hu->serdev) { ++ WARN_ON(1); ++ return; ++ } ++ ++ if (test_bit(HCI_UART_PROTO_READY, &hu->flags)) ++ hci_uart_tx_wakeup(hu); ++} ++ ++/** hci_uart_receive_buf - receive buffer wakeup ++ * @serdev: serial device ++ * @data: pointer to received data ++ * @count: count of received data in bytes ++ * ++ * This function is called by the serdev framework when it received data ++ * in the RX buffer. ++ * ++ * Return: number of processed bytes ++ */ ++static int hci_uart_receive_buf(struct serdev_device *serdev, const u8 *data, ++ size_t count) ++{ ++ struct hci_uart *hu = serdev_device_get_drvdata(serdev); ++ ++ if (!hu || serdev != hu->serdev) { ++ WARN_ON(1); ++ return 0; ++ } ++ ++ if (!test_bit(HCI_UART_PROTO_READY, &hu->flags)) ++ return 0; ++ ++ /* It does not need a lock here as it is already protected by a mutex in ++ * tty caller ++ */ ++ hu->proto->recv(hu, data, count); ++ ++ if (hu->hdev) ++ hu->hdev->stat.byte_rx += count; ++ ++ return count; ++} ++ ++struct serdev_device_ops hci_serdev_client_ops = { ++ .receive_buf = hci_uart_receive_buf, ++ .write_wakeup = hci_uart_write_wakeup, ++}; ++ ++int hci_uart_register_device(struct hci_uart *hu, ++ const struct hci_uart_proto *p) ++{ ++ int err; ++ struct hci_dev *hdev; ++ ++ BT_DBG(""); ++ ++ err = p->open(hu); ++ if (err) ++ return err; ++ ++ hu->proto = p; ++ set_bit(HCI_UART_PROTO_READY, &hu->flags); ++ ++ /* Initialize and register HCI device */ ++ hdev = hci_alloc_dev(); ++ if (!hdev) { ++ BT_ERR("Can't allocate HCI device"); ++ err = -ENOMEM; ++ goto err_alloc; ++ } ++ ++ hu->hdev = hdev; ++ ++ hdev->bus = HCI_UART; ++ hci_set_drvdata(hdev, hu); ++ ++ INIT_WORK(&hu->write_work, hci_uart_write_work); ++ ++ /* Only when vendor specific setup callback is provided, consider ++ * the manufacturer information valid. This avoids filling in the ++ * value for Ericsson when nothing is specified. ++ */ ++ if (hu->proto->setup) ++ hdev->manufacturer = hu->proto->manufacturer; ++ ++ hdev->open = hci_uart_open; ++ hdev->close = hci_uart_close; ++ hdev->flush = hci_uart_flush; ++ hdev->send = hci_uart_send_frame; ++ hdev->setup = hci_uart_setup; ++ SET_HCIDEV_DEV(hdev, &hu->serdev->dev); ++ ++ if (test_bit(HCI_UART_RAW_DEVICE, &hu->hdev_flags)) ++ set_bit(HCI_QUIRK_RAW_DEVICE, &hdev->quirks); ++ ++ if (test_bit(HCI_UART_EXT_CONFIG, &hu->hdev_flags)) ++ set_bit(HCI_QUIRK_EXTERNAL_CONFIG, &hdev->quirks); ++ ++ if (!test_bit(HCI_UART_RESET_ON_INIT, &hu->hdev_flags)) ++ set_bit(HCI_QUIRK_RESET_ON_CLOSE, &hdev->quirks); ++ ++ if (test_bit(HCI_UART_CREATE_AMP, &hu->hdev_flags)) ++ hdev->dev_type = HCI_AMP; ++ else ++ hdev->dev_type = HCI_PRIMARY; ++ ++ if (test_bit(HCI_UART_INIT_PENDING, &hu->hdev_flags)) ++ return 0; ++ ++ if (hci_register_dev(hdev) < 0) { ++ BT_ERR("Can't register HCI device"); ++ err = -ENODEV; ++ goto err_register; ++ } ++ ++ set_bit(HCI_UART_REGISTERED, &hu->flags); ++ ++ return 0; ++ ++err_register: ++ hci_free_dev(hdev); ++err_alloc: ++ clear_bit(HCI_UART_PROTO_READY, &hu->flags); ++ p->close(hu); ++ return err; ++} +diff --git a/drivers/bluetooth/hci_uart.h b/drivers/bluetooth/hci_uart.h +index 4aff50960cac..1b41c661bbb8 100644 +--- a/drivers/bluetooth/hci_uart.h ++++ b/drivers/bluetooth/hci_uart.h +@@ -58,6 +58,7 @@ + #define HCI_UART_VND_DETECT 5 + + struct hci_uart; ++struct serdev_device; + + struct hci_uart_proto { + unsigned int id; +@@ -77,6 +78,7 @@ struct hci_uart_proto { + + struct hci_uart { + struct tty_struct *tty; ++ struct serdev_device *serdev; + struct hci_dev *hdev; + unsigned long flags; + unsigned long hdev_flags; +@@ -108,6 +110,8 @@ struct hci_uart { + + int hci_uart_register_proto(const struct hci_uart_proto *p); + int hci_uart_unregister_proto(const struct hci_uart_proto *p); ++int hci_uart_register_device(struct hci_uart *hu, const struct hci_uart_proto *p); ++ + int hci_uart_tx_wakeup(struct hci_uart *hu); + int hci_uart_init_ready(struct hci_uart *hu); + void hci_uart_init_tty(struct hci_uart *hu); +-- +2.12.2 + +From c76b6c5106713b00e183ccb757bc15732d369a33 Mon Sep 17 00:00:00 2001 +From: Sebastian Reichel <sre@kernel.org> +Date: Tue, 28 Mar 2017 17:59:36 +0200 +Subject: [PATCH 06/13] Bluetooth: hci_serdev: do not open device in hci open + +The device driver may need to communicate with the UART +device while the Bluetooth device is closed (e.g. due +to interrupts). + +Acked-by: Pavel Machek <pavel@ucw.cz> +Signed-off-by: Sebastian Reichel <sre@kernel.org> +Signed-off-by: Rob Herring <robh@kernel.org> +--- + drivers/bluetooth/hci_serdev.c | 12 +++--------- + 1 file changed, 3 insertions(+), 9 deletions(-) + +diff --git a/drivers/bluetooth/hci_serdev.c b/drivers/bluetooth/hci_serdev.c +index f5ccb2c7ef92..3b8ac0ece3fb 100644 +--- a/drivers/bluetooth/hci_serdev.c ++++ b/drivers/bluetooth/hci_serdev.c +@@ -104,13 +104,9 @@ static void hci_uart_write_work(struct work_struct *work) + /* Initialize device */ + static int hci_uart_open(struct hci_dev *hdev) + { +- struct hci_uart *hu = hci_get_drvdata(hdev); +- + BT_DBG("%s %p", hdev->name, hdev); + +- serdev_device_set_client_ops(hu->serdev, &hci_serdev_client_ops); +- +- return serdev_device_open(hu->serdev); ++ return 0; + } + + /* Reset device */ +@@ -136,15 +132,11 @@ static int hci_uart_flush(struct hci_dev *hdev) + /* Close device */ + static int hci_uart_close(struct hci_dev *hdev) + { +- struct hci_uart *hu = hci_get_drvdata(hdev); +- + BT_DBG("hdev %p", hdev); + + hci_uart_flush(hdev); + hdev->flush = NULL; + +- serdev_device_close(hu->serdev); +- + return 0; + } + +@@ -289,6 +281,8 @@ int hci_uart_register_device(struct hci_uart *hu, + + BT_DBG(""); + ++ serdev_device_set_client_ops(hu->serdev, &hci_serdev_client_ops); ++ + err = p->open(hu); + if (err) + return err; +-- +2.12.2 + +From 7fe8800d90c5e0f614e72c475687a68a76592241 Mon Sep 17 00:00:00 2001 +From: Sebastian Reichel <sre@kernel.org> +Date: Tue, 28 Mar 2017 17:59:37 +0200 +Subject: [PATCH 07/13] Bluetooth: hci_serdev: allow modular drivers + +For bluetooth protocol driver only supporting serdev it makes +sense to follow common practice and built them into their own +module. + +Such modules need access to hci_uart_register_device and +hci_uart_tx_wakeup for using the common protocol helpers. + +Signed-off-by: Sebastian Reichel <sre@kernel.org> +Signed-off-by: Rob Herring <robh@kernel.org> +--- + drivers/bluetooth/hci_ldisc.c | 1 + + drivers/bluetooth/hci_serdev.c | 1 + + 2 files changed, 2 insertions(+) + +diff --git a/drivers/bluetooth/hci_ldisc.c b/drivers/bluetooth/hci_ldisc.c +index 0ec8a94bd712..17bcbc13623f 100644 +--- a/drivers/bluetooth/hci_ldisc.c ++++ b/drivers/bluetooth/hci_ldisc.c +@@ -134,6 +134,7 @@ int hci_uart_tx_wakeup(struct hci_uart *hu) + + return 0; + } ++EXPORT_SYMBOL_GPL(hci_uart_tx_wakeup); + + static void hci_uart_write_work(struct work_struct *work) + { +diff --git a/drivers/bluetooth/hci_serdev.c b/drivers/bluetooth/hci_serdev.c +index 3b8ac0ece3fb..7de0edc0ff8c 100644 +--- a/drivers/bluetooth/hci_serdev.c ++++ b/drivers/bluetooth/hci_serdev.c +@@ -353,3 +353,4 @@ int hci_uart_register_device(struct hci_uart *hu, + p->close(hu); + return err; + } ++EXPORT_SYMBOL_GPL(hci_uart_register_device); +-- +2.12.2 + +From 68bfebdd86741d45508148c6fa13b5bd21116c7e Mon Sep 17 00:00:00 2001 +From: Sebastian Reichel <sre@kernel.org> +Date: Tue, 28 Mar 2017 17:59:38 +0200 +Subject: [PATCH 08/13] dt-bindings: net: bluetooth: Add nokia-bluetooth + +Add binding document for serial bluetooth chips using +Nokia H4+ protocol. + +Acked-by: Rob Herring <robh@kernel.org> +Signed-off-by: Sebastian Reichel <sre@kernel.org> + +Changes since PATCHv1: + * change compatible strings + * mention active high/low state for GPIOs +Signed-off-by: Rob Herring <robh@kernel.org> +--- + .../devicetree/bindings/net/nokia-bluetooth.txt | 51 ++++++++++++++++++++++ + 1 file changed, 51 insertions(+) + create mode 100644 Documentation/devicetree/bindings/net/nokia-bluetooth.txt + +diff --git a/Documentation/devicetree/bindings/net/nokia-bluetooth.txt b/Documentation/devicetree/bindings/net/nokia-bluetooth.txt +new file mode 100644 +index 000000000000..42be7dc9a70b +--- /dev/null ++++ b/Documentation/devicetree/bindings/net/nokia-bluetooth.txt +@@ -0,0 +1,51 @@ ++Nokia Bluetooth Chips ++--------------------- ++ ++Nokia phones often come with UART connected bluetooth chips from different ++vendors and modified device API. Those devices speak a protocol named H4+ ++(also known as h4p) by Nokia, which is similar to the H4 protocol from the ++Bluetooth standard. In addition to the H4 protocol it specifies two more ++UART status lines for wakeup of UART transceivers to improve power management ++and a few new packet types used to negotiate uart speed. ++ ++Required properties: ++ ++ - compatible: should contain "nokia,h4p-bluetooth" as well as one of the following: ++ * "brcm,bcm2048-nokia" ++ * "ti,wl1271-bluetooth-nokia" ++ - reset-gpios: GPIO specifier, used to reset the BT module (active low) ++ - bluetooth-wakeup-gpios: GPIO specifier, used to wakeup the BT module (active high) ++ - host-wakeup-gpios: GPIO specifier, used to wakeup the host processor (active high) ++ - clock-names: should be "sysclk" ++ - clocks: should contain a clock specifier for every name in clock-names ++ ++Optional properties: ++ ++ - None ++ ++Example: ++ ++/ { ++ /* controlled (enabled/disabled) directly by BT module */ ++ bluetooth_clk: vctcxo { ++ compatible = "fixed-clock"; ++ #clock-cells = <0>; ++ clock-frequency = <38400000>; ++ }; ++}; ++ ++&uart2 { ++ pinctrl-names = "default"; ++ pinctrl-0 = <&uart2_pins>; ++ ++ bluetooth { ++ compatible = "ti,wl1271-bluetooth-nokia", "nokia,h4p-bluetooth"; ++ ++ reset-gpios = <&gpio1 26 GPIO_ACTIVE_LOW>; /* gpio26 */ ++ host-wakeup-gpios = <&gpio4 5 GPIO_ACTIVE_HIGH>; /* gpio101 */ ++ bluetooth-wakeup-gpios = <&gpio2 5 GPIO_ACTIVE_HIGH>; /* gpio37 */ ++ ++ clocks = <&bluetooth_clk>; ++ clock-names = "sysclk"; ++ }; ++}; +-- +2.12.2 + +From 90753299ed56ee7c5807c09b2185094a91a2cbbe Mon Sep 17 00:00:00 2001 +From: Sebastian Reichel <sre@kernel.org> +Date: Tue, 28 Mar 2017 17:59:39 +0200 +Subject: [PATCH 09/13] Bluetooth: add nokia driver + +This adds a driver for the Nokia H4+ protocol, which is used +at least on the Nokia N9, N900 & N950. + +Signed-off-by: Sebastian Reichel <sre@kernel.org> +Signed-off-by: Rob Herring <robh@kernel.org> +--- + drivers/bluetooth/Kconfig | 12 + + drivers/bluetooth/Makefile | 2 + + drivers/bluetooth/hci_nokia.c | 819 ++++++++++++++++++++++++++++++++++++++++++ + 3 files changed, 833 insertions(+) + create mode 100644 drivers/bluetooth/hci_nokia.c + +diff --git a/drivers/bluetooth/Kconfig b/drivers/bluetooth/Kconfig +index 08e054507d0b..479e2eacd1aa 100644 +--- a/drivers/bluetooth/Kconfig ++++ b/drivers/bluetooth/Kconfig +@@ -86,6 +86,18 @@ config BT_HCIUART_H4 + + Say Y here to compile support for HCI UART (H4) protocol. + ++config BT_HCIUART_NOKIA ++ tristate "UART Nokia H4+ protocol support" ++ depends on BT_HCIUART ++ depends on SERIAL_DEV_BUS ++ depends on PM ++ help ++ Nokia H4+ is serial protocol for communication between Bluetooth ++ device and host. This protocol is required for Bluetooth devices ++ with UART interface in Nokia devices. ++ ++ Say Y here to compile support for Nokia's H4+ protocol. ++ + config BT_HCIUART_BCSP + bool "BCSP protocol support" + depends on BT_HCIUART +diff --git a/drivers/bluetooth/Makefile b/drivers/bluetooth/Makefile +index fd571689eed6..a7f237320f4b 100644 +--- a/drivers/bluetooth/Makefile ++++ b/drivers/bluetooth/Makefile +@@ -25,6 +25,8 @@ obj-$(CONFIG_BT_BCM) += btbcm.o + obj-$(CONFIG_BT_RTL) += btrtl.o + obj-$(CONFIG_BT_QCA) += btqca.o + ++obj-$(CONFIG_BT_HCIUART_NOKIA) += hci_nokia.o ++ + btmrvl-y := btmrvl_main.o + btmrvl-$(CONFIG_DEBUG_FS) += btmrvl_debugfs.o + +diff --git a/drivers/bluetooth/hci_nokia.c b/drivers/bluetooth/hci_nokia.c +new file mode 100644 +index 000000000000..c77f04af01bf +--- /dev/null ++++ b/drivers/bluetooth/hci_nokia.c +@@ -0,0 +1,819 @@ ++/* ++ * Bluetooth HCI UART H4 driver with Nokia Extensions AKA Nokia H4+ ++ * ++ * Copyright (C) 2015 Marcel Holtmann <marcel@holtmann.org> ++ * Copyright (C) 2015-2017 Sebastian Reichel <sre@kernel.org> ++ * ++ * This program is free software; you can redistribute it and/or modify ++ * it under the terms of the GNU General Public License as published by ++ * the Free Software Foundation; either version 2 of the License, or ++ * (at your option) any later version. ++ * ++ * This program is distributed in the hope that it will be useful, ++ * but WITHOUT ANY WARRANTY; without even the implied warranty of ++ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ++ * GNU General Public License for more details. ++ */ ++ ++#include <linux/module.h> ++#include <linux/clk.h> ++#include <linux/kernel.h> ++#include <linux/types.h> ++#include <linux/interrupt.h> ++#include <linux/pm_runtime.h> ++#include <linux/firmware.h> ++#include <linux/slab.h> ++#include <linux/string.h> ++#include <linux/errno.h> ++#include <linux/skbuff.h> ++#include <linux/gpio/consumer.h> ++#include <linux/unaligned/le_struct.h> ++#include <net/bluetooth/bluetooth.h> ++#include <net/bluetooth/hci_core.h> ++#include <linux/serdev.h> ++ ++#include "hci_uart.h" ++#include "btbcm.h" ++ ++#define NOKIA_ID_BCM2048 0x04 ++#define NOKIA_ID_TI1271 0x31 ++ ++#define FIRMWARE_BCM2048 "nokia/bcmfw.bin" ++#define FIRMWARE_TI1271 "nokia/ti1273.bin" ++ ++#define HCI_NOKIA_NEG_PKT 0x06 ++#define HCI_NOKIA_ALIVE_PKT 0x07 ++#define HCI_NOKIA_RADIO_PKT 0x08 ++ ++#define HCI_NOKIA_NEG_HDR_SIZE 1 ++#define HCI_NOKIA_MAX_NEG_SIZE 255 ++#define HCI_NOKIA_ALIVE_HDR_SIZE 1 ++#define HCI_NOKIA_MAX_ALIVE_SIZE 255 ++#define HCI_NOKIA_RADIO_HDR_SIZE 2 ++#define HCI_NOKIA_MAX_RADIO_SIZE 255 ++ ++#define NOKIA_PROTO_PKT 0x44 ++#define NOKIA_PROTO_BYTE 0x4c ++ ++#define NOKIA_NEG_REQ 0x00 ++#define NOKIA_NEG_ACK 0x20 ++#define NOKIA_NEG_NAK 0x40 ++ ++#define H4_TYPE_SIZE 1 ++ ++#define NOKIA_RECV_ALIVE \ ++ .type = HCI_NOKIA_ALIVE_PKT, \ ++ .hlen = HCI_NOKIA_ALIVE_HDR_SIZE, \ ++ .loff = 0, \ ++ .lsize = 1, \ ++ .maxlen = HCI_NOKIA_MAX_ALIVE_SIZE \ ++ ++#define NOKIA_RECV_NEG \ ++ .type = HCI_NOKIA_NEG_PKT, \ ++ .hlen = HCI_NOKIA_NEG_HDR_SIZE, \ ++ .loff = 0, \ ++ .lsize = 1, \ ++ .maxlen = HCI_NOKIA_MAX_NEG_SIZE \ ++ ++#define NOKIA_RECV_RADIO \ ++ .type = HCI_NOKIA_RADIO_PKT, \ ++ .hlen = HCI_NOKIA_RADIO_HDR_SIZE, \ ++ .loff = 1, \ ++ .lsize = 1, \ ++ .maxlen = HCI_NOKIA_MAX_RADIO_SIZE \ ++ ++struct hci_nokia_neg_hdr { ++ u8 dlen; ++} __packed; ++ ++struct hci_nokia_neg_cmd { ++ u8 ack; ++ u16 baud; ++ u16 unused1; ++ u8 proto; ++ u16 sys_clk; ++ u16 unused2; ++} __packed; ++ ++#define NOKIA_ALIVE_REQ 0x55 ++#define NOKIA_ALIVE_RESP 0xcc ++ ++struct hci_nokia_alive_hdr { ++ u8 dlen; ++} __packed; ++ ++struct hci_nokia_alive_pkt { ++ u8 mid; ++ u8 unused; ++} __packed; ++ ++struct hci_nokia_neg_evt { ++ u8 ack; ++ u16 baud; ++ u16 unused1; ++ u8 proto; ++ u16 sys_clk; ++ u16 unused2; ++ u8 man_id; ++ u8 ver_id; ++} __packed; ++ ++#define MAX_BAUD_RATE 3692300 ++#define SETUP_BAUD_RATE 921600 ++#define INIT_BAUD_RATE 120000 ++ ++struct hci_nokia_radio_hdr { ++ u8 evt; ++ u8 dlen; ++} __packed; ++ ++struct nokia_bt_dev { ++ struct hci_uart hu; ++ struct serdev_device *serdev; ++ ++ struct gpio_desc *reset; ++ struct gpio_desc *wakeup_host; ++ struct gpio_desc *wakeup_bt; ++ unsigned long sysclk_speed; ++ ++ int wake_irq; ++ struct sk_buff *rx_skb; ++ struct sk_buff_head txq; ++ bdaddr_t bdaddr; ++ ++ int init_error; ++ struct completion init_completion; ++ ++ u8 man_id; ++ u8 ver_id; ++ ++ bool initialized; ++ bool tx_enabled; ++ bool rx_enabled; ++}; ++ ++static int nokia_enqueue(struct hci_uart *hu, struct sk_buff *skb); ++ ++static void nokia_flow_control(struct serdev_device *serdev, bool enable) ++{ ++ if (enable) { ++ serdev_device_set_rts(serdev, true); ++ serdev_device_set_flow_control(serdev, true); ++ } else { ++ serdev_device_set_flow_control(serdev, false); ++ serdev_device_set_rts(serdev, false); ++ } ++} ++ ++static irqreturn_t wakeup_handler(int irq, void *data) ++{ ++ struct nokia_bt_dev *btdev = data; ++ struct device *dev = &btdev->serdev->dev; ++ int wake_state = gpiod_get_value(btdev->wakeup_host); ++ ++ if (btdev->rx_enabled == wake_state) ++ return IRQ_HANDLED; ++ ++ if (wake_state) ++ pm_runtime_get(dev); ++ else ++ pm_runtime_put(dev); ++ ++ btdev->rx_enabled = wake_state; ++ ++ return IRQ_HANDLED; ++} ++ ++static int nokia_reset(struct hci_uart *hu) ++{ ++ struct nokia_bt_dev *btdev = hu->priv; ++ struct device *dev = &btdev->serdev->dev; ++ int err; ++ ++ /* reset routine */ ++ gpiod_set_value_cansleep(btdev->reset, 1); ++ gpiod_set_value_cansleep(btdev->wakeup_bt, 1); ++ ++ msleep(100); ++ ++ /* safety check */ ++ err = gpiod_get_value_cansleep(btdev->wakeup_host); ++ if (err == 1) { ++ dev_err(dev, "reset: host wakeup not low!"); ++ return -EPROTO; ++ } ++ ++ /* flush queue */ ++ serdev_device_write_flush(btdev->serdev); ++ ++ /* init uart */ ++ nokia_flow_control(btdev->serdev, false); ++ serdev_device_set_baudrate(btdev->serdev, INIT_BAUD_RATE); ++ ++ gpiod_set_value_cansleep(btdev->reset, 0); ++ ++ /* wait for cts */ ++ err = serdev_device_wait_for_cts(btdev->serdev, true, 200); ++ if (err < 0) { ++ dev_err(dev, "CTS not received: %d", err); ++ return err; ++ } ++ ++ nokia_flow_control(btdev->serdev, true); ++ ++ return 0; ++} ++ ++static int nokia_send_alive_packet(struct hci_uart *hu) ++{ ++ struct nokia_bt_dev *btdev = hu->priv; ++ struct device *dev = &btdev->serdev->dev; ++ struct hci_nokia_alive_hdr *hdr; ++ struct hci_nokia_alive_pkt *pkt; ++ struct sk_buff *skb; ++ int len; ++ ++ init_completion(&btdev->init_completion); ++ ++ len = H4_TYPE_SIZE + sizeof(*hdr) + sizeof(*pkt); ++ skb = bt_skb_alloc(len, GFP_KERNEL); ++ if (!skb) ++ return -ENOMEM; ++ ++ hci_skb_pkt_type(skb) = HCI_NOKIA_ALIVE_PKT; ++ memset(skb->data, 0x00, len); ++ ++ hdr = (struct hci_nokia_alive_hdr *)skb_put(skb, sizeof(*hdr)); ++ hdr->dlen = sizeof(*pkt); ++ pkt = (struct hci_nokia_alive_pkt *)skb_put(skb, sizeof(*pkt)); ++ pkt->mid = NOKIA_ALIVE_REQ; ++ ++ nokia_enqueue(hu, skb); ++ hci_uart_tx_wakeup(hu); ++ ++ dev_dbg(dev, "Alive sent"); ++ ++ if (!wait_for_completion_interruptible_timeout(&btdev->init_completion, ++ msecs_to_jiffies(1000))) { ++ return -ETIMEDOUT; ++ } ++ ++ if (btdev->init_error < 0) ++ return btdev->init_error; ++ ++ return 0; ++} ++ ++static int nokia_send_negotiation(struct hci_uart *hu) ++{ ++ struct nokia_bt_dev *btdev = hu->priv; ++ struct device *dev = &btdev->serdev->dev; ++ struct hci_nokia_neg_cmd *neg_cmd; ++ struct hci_nokia_neg_hdr *neg_hdr; ++ struct sk_buff *skb; ++ int len, err; ++ u16 baud = DIV_ROUND_CLOSEST(btdev->sysclk_speed * 10, SETUP_BAUD_RATE); ++ int sysclk = btdev->sysclk_speed / 1000; ++ ++ len = H4_TYPE_SIZE + sizeof(*neg_hdr) + sizeof(*neg_cmd); ++ skb = bt_skb_alloc(len, GFP_KERNEL); ++ if (!skb) ++ return -ENOMEM; ++ ++ hci_skb_pkt_type(skb) = HCI_NOKIA_NEG_PKT; ++ ++ neg_hdr = (struct hci_nokia_neg_hdr *)skb_put(skb, sizeof(*neg_hdr)); ++ neg_hdr->dlen = sizeof(*neg_cmd); ++ ++ neg_cmd = (struct hci_nokia_neg_cmd *)skb_put(skb, sizeof(*neg_cmd)); ++ neg_cmd->ack = NOKIA_NEG_REQ; ++ neg_cmd->baud = cpu_to_le16(baud); ++ neg_cmd->unused1 = 0x0000; ++ neg_cmd->proto = NOKIA_PROTO_BYTE; ++ neg_cmd->sys_clk = cpu_to_le16(sysclk); ++ neg_cmd->unused2 = 0x0000; ++ ++ btdev->init_error = 0; ++ init_completion(&btdev->init_completion); ++ ++ nokia_enqueue(hu, skb); ++ hci_uart_tx_wakeup(hu); ++ ++ dev_dbg(dev, "Negotiation sent"); ++ ++ if (!wait_for_completion_interruptible_timeout(&btdev->init_completion, ++ msecs_to_jiffies(10000))) { ++ return -ETIMEDOUT; ++ } ++ ++ if (btdev->init_error < 0) ++ return btdev->init_error; ++ ++ /* Change to previously negotiated speed. Flow Control ++ * is disabled until bluetooth adapter is ready to avoid ++ * broken bytes being received. ++ */ ++ nokia_flow_control(btdev->serdev, false); ++ serdev_device_set_baudrate(btdev->serdev, SETUP_BAUD_RATE); ++ err = serdev_device_wait_for_cts(btdev->serdev, true, 200); ++ if (err < 0) { ++ dev_err(dev, "CTS not received: %d", err); ++ return err; ++ } ++ nokia_flow_control(btdev->serdev, true); ++ ++ dev_dbg(dev, "Negotiation successful"); ++ ++ return 0; ++} ++ ++static int nokia_setup_fw(struct hci_uart *hu) ++{ ++ struct nokia_bt_dev *btdev = hu->priv; ++ struct device *dev = &btdev->serdev->dev; ++ const char *fwname; ++ const struct firmware *fw; ++ const u8 *fw_ptr; ++ size_t fw_size; ++ int err; ++ ++ dev_dbg(dev, "setup firmware"); ++ ++ if (btdev->man_id == NOKIA_ID_BCM2048) { ++ fwname = FIRMWARE_BCM2048; ++ } else if (btdev->man_id == NOKIA_ID_TI1271) { ++ fwname = FIRMWARE_TI1271; ++ } else { ++ dev_err(dev, "Unsupported bluetooth device!"); ++ return -ENODEV; ++ } ++ ++ err = request_firmware(&fw, fwname, dev); ++ if (err < 0) { ++ dev_err(dev, "%s: Failed to load Nokia firmware file (%d)", ++ hu->hdev->name, err); ++ return err; ++ } ++ ++ fw_ptr = fw->data; ++ fw_size = fw->size; ++ ++ while (fw_size >= 4) { ++ u16 pkt_size = get_unaligned_le16(fw_ptr); ++ u8 pkt_type = fw_ptr[2]; ++ const struct hci_command_hdr *cmd; ++ u16 opcode; ++ struct sk_buff *skb; ++ ++ switch (pkt_type) { ++ case HCI_COMMAND_PKT: ++ cmd = (struct hci_command_hdr *)(fw_ptr + 3); ++ opcode = le16_to_cpu(cmd->opcode); ++ ++ skb = __hci_cmd_sync(hu->hdev, opcode, cmd->plen, ++ fw_ptr + 3 + HCI_COMMAND_HDR_SIZE, ++ HCI_INIT_TIMEOUT); ++ if (IS_ERR(skb)) { ++ err = PTR_ERR(skb); ++ dev_err(dev, "%s: FW command %04x failed (%d)", ++ hu->hdev->name, opcode, err); ++ goto done; ++ } ++ kfree_skb(skb); ++ break; ++ case HCI_NOKIA_RADIO_PKT: ++ case HCI_NOKIA_NEG_PKT: ++ case HCI_NOKIA_ALIVE_PKT: ++ break; ++ } ++ ++ fw_ptr += pkt_size + 2; ++ fw_size -= pkt_size + 2; ++ } ++ ++done: ++ release_firmware(fw); ++ return err; ++} ++ ++static int nokia_setup(struct hci_uart *hu) ++{ ++ struct nokia_bt_dev *btdev = hu->priv; ++ struct device *dev = &btdev->serdev->dev; ++ int err; ++ ++ btdev->initialized = false; ++ ++ nokia_flow_control(btdev->serdev, false); ++ ++ pm_runtime_get_sync(dev); ++ ++ if (btdev->tx_enabled) { ++ gpiod_set_value_cansleep(btdev->wakeup_bt, 0); ++ pm_runtime_put(&btdev->serdev->dev); ++ btdev->tx_enabled = false; ++ } ++ ++ dev_dbg(dev, "protocol setup"); ++ ++ /* 0. reset connection */ ++ err = nokia_reset(hu); ++ if (err < 0) { ++ dev_err(dev, "Reset failed: %d", err); ++ goto out; ++ } ++ ++ /* 1. negotiate speed etc */ ++ err = nokia_send_negotiation(hu); ++ if (err < 0) { ++ dev_err(dev, "Negotiation failed: %d", err); ++ goto out; ++ } ++ ++ /* 2. verify correct setup using alive packet */ ++ err = nokia_send_alive_packet(hu); ++ if (err < 0) { ++ dev_err(dev, "Alive check failed: %d", err); ++ goto out; ++ } ++ ++ /* 3. send firmware */ ++ err = nokia_setup_fw(hu); ++ if (err < 0) { ++ dev_err(dev, "Could not setup FW: %d", err); ++ goto out; ++ } ++ ++ nokia_flow_control(btdev->serdev, false); ++ serdev_device_set_baudrate(btdev->serdev, MAX_BAUD_RATE); ++ nokia_flow_control(btdev->serdev, true); ++ ++ if (btdev->man_id == NOKIA_ID_BCM2048) { ++ hu->hdev->set_bdaddr = btbcm_set_bdaddr; ++ set_bit(HCI_QUIRK_INVALID_BDADDR, &hu->hdev->quirks); ++ dev_dbg(dev, "bcm2048 has invalid bluetooth address!"); ++ } ++ ++ dev_dbg(dev, "protocol setup done!"); ++ ++ gpiod_set_value_cansleep(btdev->wakeup_bt, 0); ++ pm_runtime_put(dev); ++ btdev->tx_enabled = false; ++ btdev->initialized = true; ++ ++ return 0; ++out: ++ pm_runtime_put(dev); ++ ++ return err; ++} ++ ++static int nokia_open(struct hci_uart *hu) ++{ ++ struct device *dev = &hu->serdev->dev; ++ ++ dev_dbg(dev, "protocol open"); ++ ++ serdev_device_open(hu->serdev); ++ ++ pm_runtime_enable(dev); ++ ++ return 0; ++} ++ ++static int nokia_flush(struct hci_uart *hu) ++{ ++ struct nokia_bt_dev *btdev = hu->priv; ++ ++ dev_dbg(&btdev->serdev->dev, "flush device"); ++ ++ skb_queue_purge(&btdev->txq); ++ ++ return 0; ++} ++ ++static int nokia_close(struct hci_uart *hu) ++{ ++ struct nokia_bt_dev *btdev = hu->priv; ++ struct device *dev = &btdev->serdev->dev; ++ ++ dev_dbg(dev, "close device"); ++ ++ btdev->initialized = false; ++ ++ skb_queue_purge(&btdev->txq); ++ ++ kfree_skb(btdev->rx_skb); ++ ++ /* disable module */ ++ gpiod_set_value(btdev->reset, 1); ++ gpiod_set_value(btdev->wakeup_bt, 0); ++ ++ pm_runtime_disable(&btdev->serdev->dev); ++ serdev_device_close(btdev->serdev); ++ ++ return 0; ++} ++ ++/* Enqueue frame for transmittion (padding, crc, etc) */ ++static int nokia_enqueue(struct hci_uart *hu, struct sk_buff *skb) ++{ ++ struct nokia_bt_dev *btdev = hu->priv; ++ int err; ++ ++ /* Prepend skb with frame type */ ++ memcpy(skb_push(skb, 1), &bt_cb(skb)->pkt_type, 1); ++ ++ /* Packets must be word aligned */ ++ if (skb->len % 2) { ++ err = skb_pad(skb, 1); ++ if (err) ++ return err; ++ *skb_put(skb, 1) = 0x00; ++ } ++ ++ skb_queue_tail(&btdev->txq, skb); ++ ++ return 0; ++} ++ ++static int nokia_recv_negotiation_packet(struct hci_dev *hdev, ++ struct sk_buff *skb) ++{ ++ struct hci_uart *hu = hci_get_drvdata(hdev); ++ struct nokia_bt_dev *btdev = hu->priv; ++ struct device *dev = &btdev->serdev->dev; ++ struct hci_nokia_neg_hdr *hdr; ++ struct hci_nokia_neg_evt *evt; ++ int ret = 0; ++ ++ hdr = (struct hci_nokia_neg_hdr *)skb->data; ++ if (hdr->dlen != sizeof(*evt)) { ++ btdev->init_error = -EIO; ++ ret = -EIO; ++ goto finish_neg; ++ } ++ ++ evt = (struct hci_nokia_neg_evt *)skb_pull(skb, sizeof(*hdr)); ++ ++ if (evt->ack != NOKIA_NEG_ACK) { ++ dev_err(dev, "Negotiation received: wrong reply"); ++ btdev->init_error = -EINVAL; ++ ret = -EINVAL; ++ goto finish_neg; ++ } ++ ++ btdev->man_id = evt->man_id; ++ btdev->ver_id = evt->ver_id; ++ ++ dev_dbg(dev, "Negotiation received: baud=%u:clk=%u:manu=%u:vers=%u", ++ evt->baud, evt->sys_clk, evt->man_id, evt->ver_id); ++ ++finish_neg: ++ complete(&btdev->init_completion); ++ kfree_skb(skb); ++ return ret; ++} ++ ++static int nokia_recv_alive_packet(struct hci_dev *hdev, struct sk_buff *skb) ++{ ++ struct hci_uart *hu = hci_get_drvdata(hdev); ++ struct nokia_bt_dev *btdev = hu->priv; ++ struct device *dev = &btdev->serdev->dev; ++ struct hci_nokia_alive_hdr *hdr; ++ struct hci_nokia_alive_pkt *pkt; ++ int ret = 0; ++ ++ hdr = (struct hci_nokia_alive_hdr *)skb->data; ++ if (hdr->dlen != sizeof(*pkt)) { ++ dev_err(dev, "Corrupted alive message"); ++ btdev->init_error = -EIO; ++ ret = -EIO; ++ goto finish_alive; ++ } ++ ++ pkt = (struct hci_nokia_alive_pkt *)skb_pull(skb, sizeof(*hdr)); ++ ++ if (pkt->mid != NOKIA_ALIVE_RESP) { ++ dev_err(dev, "Alive received: invalid response: 0x%02x!", ++ pkt->mid); ++ btdev->init_error = -EINVAL; ++ ret = -EINVAL; ++ goto finish_alive; ++ } ++ ++ dev_dbg(dev, "Alive received"); ++ ++finish_alive: ++ complete(&btdev->init_completion); ++ kfree_skb(skb); ++ return ret; ++} ++ ++static int nokia_recv_radio(struct hci_dev *hdev, struct sk_buff *skb) ++{ ++ /* Packets received on the dedicated radio channel are ++ * HCI events and so feed them back into the core. ++ */ ++ hci_skb_pkt_type(skb) = HCI_EVENT_PKT; ++ return hci_recv_frame(hdev, skb); ++} ++ ++/* Recv data */ ++static const struct h4_recv_pkt nokia_recv_pkts[] = { ++ { H4_RECV_ACL, .recv = hci_recv_frame }, ++ { H4_RECV_SCO, .recv = hci_recv_frame }, ++ { H4_RECV_EVENT, .recv = hci_recv_frame }, ++ { NOKIA_RECV_ALIVE, .recv = nokia_recv_alive_packet }, ++ { NOKIA_RECV_NEG, .recv = nokia_recv_negotiation_packet }, ++ { NOKIA_RECV_RADIO, .recv = nokia_recv_radio }, ++}; ++ ++static int nokia_recv(struct hci_uart *hu, const void *data, int count) ++{ ++ struct nokia_bt_dev *btdev = hu->priv; ++ struct device *dev = &btdev->serdev->dev; ++ int err; ++ ++ if (!test_bit(HCI_UART_REGISTERED, &hu->flags)) ++ return -EUNATCH; ++ ++ btdev->rx_skb = h4_recv_buf(hu->hdev, btdev->rx_skb, data, count, ++ nokia_recv_pkts, ARRAY_SIZE(nokia_recv_pkts)); ++ if (IS_ERR(btdev->rx_skb)) { ++ err = PTR_ERR(btdev->rx_skb); ++ dev_err(dev, "Frame reassembly failed (%d)", err); ++ btdev->rx_skb = NULL; ++ return err; ++ } ++ ++ return count; ++} ++ ++static struct sk_buff *nokia_dequeue(struct hci_uart *hu) ++{ ++ struct nokia_bt_dev *btdev = hu->priv; ++ struct device *dev = &btdev->serdev->dev; ++ struct sk_buff *result = skb_dequeue(&btdev->txq); ++ ++ if (!btdev->initialized) ++ return result; ++ ++ if (btdev->tx_enabled == !!result) ++ return result; ++ ++ if (result) { ++ pm_runtime_get_sync(dev); ++ gpiod_set_value_cansleep(btdev->wakeup_bt, 1); ++ } else { ++ serdev_device_wait_until_sent(btdev->serdev, 0); ++ gpiod_set_value_cansleep(btdev->wakeup_bt, 0); ++ pm_runtime_put(dev); ++ } ++ ++ btdev->tx_enabled = !!result; ++ ++ return result; ++} ++ ++static const struct hci_uart_proto nokia_proto = { ++ .id = HCI_UART_NOKIA, ++ .name = "Nokia", ++ .open = nokia_open, ++ .close = nokia_close, ++ .recv = nokia_recv, ++ .enqueue = nokia_enqueue, ++ .dequeue = nokia_dequeue, ++ .flush = nokia_flush, ++ .setup = nokia_setup, ++ .manufacturer = 1, ++}; ++ ++static int nokia_bluetooth_serdev_probe(struct serdev_device *serdev) ++{ ++ struct device *dev = &serdev->dev; ++ struct nokia_bt_dev *btdev; ++ struct clk *sysclk; ++ int err = 0; ++ ++ btdev = devm_kzalloc(dev, sizeof(*btdev), GFP_KERNEL); ++ if (!btdev) ++ return -ENOMEM; ++ ++ btdev->hu.serdev = btdev->serdev = serdev; ++ serdev_device_set_drvdata(serdev, btdev); ++ ++ btdev->reset = devm_gpiod_get(dev, "reset", GPIOD_OUT_HIGH); ++ if (IS_ERR(btdev->reset)) { ++ err = PTR_ERR(btdev->reset); ++ dev_err(dev, "could not get reset gpio: %d", err); ++ return err; ++ } ++ ++ btdev->wakeup_host = devm_gpiod_get(dev, "host-wakeup", GPIOD_IN); ++ if (IS_ERR(btdev->wakeup_host)) { ++ err = PTR_ERR(btdev->wakeup_host); ++ dev_err(dev, "could not get host wakeup gpio: %d", err); ++ return err; ++ } ++ ++ btdev->wake_irq = gpiod_to_irq(btdev->wakeup_host); ++ ++ err = devm_request_threaded_irq(dev, btdev->wake_irq, NULL, ++ wakeup_handler, ++ IRQF_TRIGGER_RISING | IRQF_TRIGGER_FALLING | IRQF_ONESHOT, ++ "wakeup", btdev); ++ if (err) { ++ dev_err(dev, "could request wakeup irq: %d", err); ++ return err; ++ } ++ ++ btdev->wakeup_bt = devm_gpiod_get(dev, "bluetooth-wakeup", ++ GPIOD_OUT_LOW); ++ if (IS_ERR(btdev->wakeup_bt)) { ++ err = PTR_ERR(btdev->wakeup_bt); ++ dev_err(dev, "could not get BT wakeup gpio: %d", err); ++ return err; ++ } ++ ++ sysclk = devm_clk_get(dev, "sysclk"); ++ if (IS_ERR(sysclk)) { ++ err = PTR_ERR(sysclk); ++ dev_err(dev, "could not get sysclk: %d", err); ++ return err; ++ } ++ ++ clk_prepare_enable(sysclk); ++ btdev->sysclk_speed = clk_get_rate(sysclk); ++ clk_disable_unprepare(sysclk); ++ ++ skb_queue_head_init(&btdev->txq); ++ ++ btdev->hu.priv = btdev; ++ btdev->hu.alignment = 2; /* Nokia H4+ is word aligned */ ++ ++ err = hci_uart_register_device(&btdev->hu, &nokia_proto); ++ if (err) { ++ dev_err(dev, "could not register bluetooth uart: %d", err); ++ return err; ++ } ++ ++ return 0; ++} ++ ++static void nokia_bluetooth_serdev_remove(struct serdev_device *serdev) ++{ ++ struct nokia_bt_dev *btdev = serdev_device_get_drvdata(serdev); ++ struct hci_uart *hu = &btdev->hu; ++ struct hci_dev *hdev = hu->hdev; ++ ++ cancel_work_sync(&hu->write_work); ++ ++ hci_unregister_dev(hdev); ++ hci_free_dev(hdev); ++ hu->proto->close(hu); ++ ++ pm_runtime_disable(&btdev->serdev->dev); ++} ++ ++static int nokia_bluetooth_runtime_suspend(struct device *dev) ++{ ++ struct serdev_device *serdev = to_serdev_device(dev); ++ ++ nokia_flow_control(serdev, false); ++ return 0; ++} ++ ++static int nokia_bluetooth_runtime_resume(struct device *dev) ++{ ++ struct serdev_device *serdev = to_serdev_device(dev); ++ ++ nokia_flow_control(serdev, true); ++ return 0; ++} ++ ++static const struct dev_pm_ops nokia_bluetooth_pm_ops = { ++ SET_RUNTIME_PM_OPS(nokia_bluetooth_runtime_suspend, ++ nokia_bluetooth_runtime_resume, ++ NULL) ++}; ++ ++#ifdef CONFIG_OF ++static const struct of_device_id nokia_bluetooth_of_match[] = { ++ { .compatible = "nokia,h4p-bluetooth", }, ++ {}, ++}; ++MODULE_DEVICE_TABLE(of, nokia_bluetooth_of_match); ++#endif ++ ++static struct serdev_device_driver nokia_bluetooth_serdev_driver = { ++ .probe = nokia_bluetooth_serdev_probe, ++ .remove = nokia_bluetooth_serdev_remove, ++ .driver = { ++ .name = "nokia-bluetooth", ++ .pm = &nokia_bluetooth_pm_ops, ++ .of_match_table = of_match_ptr(nokia_bluetooth_of_match), ++ }, ++}; ++ ++module_serdev_device_driver(nokia_bluetooth_serdev_driver); +-- +2.12.2 + +From 5593378d18f2487bdce87a687b4263c9626510cb Mon Sep 17 00:00:00 2001 +From: Rob Herring <robh@kernel.org> +Date: Wed, 5 Apr 2017 12:10:13 -0500 +Subject: [PATCH 10/13] dt-bindings: net: Add TI WiLink shared transport + binding + +Add serial slave device binding for the TI WiLink series of Bluetooth/FM/GPS +devices. + +Signed-off-by: Rob Herring <robh@kernel.org> +Cc: Mark Rutland <mark.rutland@arm.com> +Cc: netdev@vger.kernel.org +Cc: devicetree@vger.kernel.org +--- + .../devicetree/bindings/net/ti,wilink-st.txt | 35 ++++++++++++++++++++++ + 1 file changed, 35 insertions(+) + create mode 100644 Documentation/devicetree/bindings/net/ti,wilink-st.txt + +diff --git a/Documentation/devicetree/bindings/net/ti,wilink-st.txt b/Documentation/devicetree/bindings/net/ti,wilink-st.txt +new file mode 100644 +index 000000000000..cbad73a84ac4 +--- /dev/null ++++ b/Documentation/devicetree/bindings/net/ti,wilink-st.txt +@@ -0,0 +1,35 @@ ++TI WiLink 7/8 (wl12xx/wl18xx) Shared Transport BT/FM/GPS devices ++ ++TI WiLink devices have a UART interface for providing Bluetooth, FM radio, ++and GPS over what's called "shared transport". The shared transport is ++standard BT HCI protocol with additional channels for the other functions. ++ ++These devices also have a separate WiFi interface as described in ++wireless/ti,wlcore.txt. ++ ++This bindings follows the UART slave device binding in ++../serial/slave-device.txt. ++ ++Required properties: ++ - compatible: should be one of the following: ++ "ti,wl1271-st" ++ "ti,wl1273-st" ++ "ti,wl1831-st" ++ "ti,wl1835-st" ++ "ti,wl1837-st" ++ ++Optional properties: ++ - enable-gpios : GPIO signal controlling enabling of BT. Active high. ++ - vio-supply : Vio input supply (1.8V) ++ - vbat-supply : Vbat input supply (2.9-4.8V) ++ ++Example: ++ ++&serial0 { ++ compatible = "ns16550a"; ++ ... ++ bluetooth { ++ compatible = "ti,wl1835-st"; ++ enable-gpios = <&gpio1 7 GPIO_ACTIVE_HIGH>; ++ }; ++}; +-- +2.12.2 + +From d22a4564d1b8e1eeb7c442171cedcc3ae809cfff Mon Sep 17 00:00:00 2001 +From: Rob Herring <robh@kernel.org> +Date: Tue, 17 Jan 2017 09:58:10 -0600 +Subject: [PATCH 11/13] bluetooth: hci_uart: remove unused hci_uart_init_tty + +There are no users of hci_uart_init_tty, so remove it. + +Signed-off-by: Rob Herring <robh@kernel.org> +Cc: Marcel Holtmann <marcel@holtmann.org> +Cc: Gustavo Padovan <gustavo@padovan.org> +Cc: Johan Hedberg <johan.hedberg@gmail.com> +Cc: linux-bluetooth@vger.kernel.org +--- + drivers/bluetooth/hci_ldisc.c | 19 ------------------- + drivers/bluetooth/hci_uart.h | 1 - + 2 files changed, 20 deletions(-) + +diff --git a/drivers/bluetooth/hci_ldisc.c b/drivers/bluetooth/hci_ldisc.c +index 17bcbc13623f..cec4438ede01 100644 +--- a/drivers/bluetooth/hci_ldisc.c ++++ b/drivers/bluetooth/hci_ldisc.c +@@ -319,25 +319,6 @@ void hci_uart_set_speeds(struct hci_uart *hu, unsigned int init_speed, + hu->oper_speed = oper_speed; + } + +-void hci_uart_init_tty(struct hci_uart *hu) +-{ +- struct tty_struct *tty = hu->tty; +- struct ktermios ktermios; +- +- /* Bring the UART into a known 8 bits no parity hw fc state */ +- ktermios = tty->termios; +- ktermios.c_iflag &= ~(IGNBRK | BRKINT | PARMRK | ISTRIP | +- INLCR | IGNCR | ICRNL | IXON); +- ktermios.c_oflag &= ~OPOST; +- ktermios.c_lflag &= ~(ECHO | ECHONL | ICANON | ISIG | IEXTEN); +- ktermios.c_cflag &= ~(CSIZE | PARENB); +- ktermios.c_cflag |= CS8; +- ktermios.c_cflag |= CRTSCTS; +- +- /* tty_set_termios() return not checked as it is always 0 */ +- tty_set_termios(tty, &ktermios); +-} +- + void hci_uart_set_baudrate(struct hci_uart *hu, unsigned int speed) + { + struct tty_struct *tty = hu->tty; +diff --git a/drivers/bluetooth/hci_uart.h b/drivers/bluetooth/hci_uart.h +index 1b41c661bbb8..2b05e557fad0 100644 +--- a/drivers/bluetooth/hci_uart.h ++++ b/drivers/bluetooth/hci_uart.h +@@ -114,7 +114,6 @@ int hci_uart_register_device(struct hci_uart *hu, const struct hci_uart_proto *p + + int hci_uart_tx_wakeup(struct hci_uart *hu); + int hci_uart_init_ready(struct hci_uart *hu); +-void hci_uart_init_tty(struct hci_uart *hu); + void hci_uart_set_baudrate(struct hci_uart *hu, unsigned int speed); + void hci_uart_set_flow_control(struct hci_uart *hu, bool enable); + void hci_uart_set_speeds(struct hci_uart *hu, unsigned int init_speed, +-- +2.12.2 + +From 4664fe8eb293288c1fba2ebc50ac50131f6125cf Mon Sep 17 00:00:00 2001 +From: Rob Herring <robh@kernel.org> +Date: Wed, 18 Jan 2017 11:41:25 -0600 +Subject: [PATCH 12/13] bluetooth: hci_uart: add LL protocol serdev driver + support + +Turns out that the LL protocol and the TI-ST are the same thing AFAICT. +The TI-ST adds firmware loading, GPIO control, and shared access for +NFC, FM radio, etc. For now, we're only implementing what is needed for +BT. This mirrors other drivers like BCM and Intel, but uses the new +serdev bus. + +The firmware loading is greatly simplified by using existing +infrastructure to send commands. It may be a bit slower than the +original code using synchronous functions, but the real bottleneck is +likely doing firmware load at 115.2kbps. + +Signed-off-by: Rob Herring <robh@kernel.org> +Cc: Marcel Holtmann <marcel@holtmann.org> +Cc: Gustavo Padovan <gustavo@padovan.org> +Cc: Johan Hedberg <johan.hedberg@gmail.com> +Cc: linux-bluetooth@vger.kernel.org +--- + drivers/bluetooth/hci_ll.c | 261 ++++++++++++++++++++++++++++++++++++++++++++- + 1 file changed, 260 insertions(+), 1 deletion(-) + +diff --git a/drivers/bluetooth/hci_ll.c b/drivers/bluetooth/hci_ll.c +index 02692fe30279..9b2054f5502d 100644 +--- a/drivers/bluetooth/hci_ll.c ++++ b/drivers/bluetooth/hci_ll.c +@@ -34,20 +34,23 @@ + #include <linux/sched.h> + #include <linux/types.h> + #include <linux/fcntl.h> ++#include <linux/firmware.h> + #include <linux/interrupt.h> + #include <linux/ptrace.h> + #include <linux/poll.h> + + #include <linux/slab.h> +-#include <linux/tty.h> + #include <linux/errno.h> + #include <linux/string.h> + #include <linux/signal.h> + #include <linux/ioctl.h> ++#include <linux/serdev.h> + #include <linux/skbuff.h> ++#include <linux/ti_wilink_st.h> + + #include <net/bluetooth/bluetooth.h> + #include <net/bluetooth/hci_core.h> ++#include <linux/gpio/consumer.h> + + #include "hci_uart.h" + +@@ -76,6 +79,12 @@ struct hcill_cmd { + u8 cmd; + } __packed; + ++struct ll_device { ++ struct hci_uart hu; ++ struct serdev_device *serdev; ++ struct gpio_desc *enable_gpio; ++}; ++ + struct ll_struct { + unsigned long rx_state; + unsigned long rx_count; +@@ -136,6 +145,9 @@ static int ll_open(struct hci_uart *hu) + + hu->priv = ll; + ++ if (hu->serdev) ++ serdev_device_open(hu->serdev); ++ + return 0; + } + +@@ -164,6 +176,13 @@ static int ll_close(struct hci_uart *hu) + + kfree_skb(ll->rx_skb); + ++ if (hu->serdev) { ++ struct ll_device *lldev = serdev_device_get_drvdata(hu->serdev); ++ gpiod_set_value_cansleep(lldev->enable_gpio, 0); ++ ++ serdev_device_close(hu->serdev); ++ } ++ + hu->priv = NULL; + + kfree(ll); +@@ -505,9 +524,245 @@ static struct sk_buff *ll_dequeue(struct hci_uart *hu) + return skb_dequeue(&ll->txq); + } + ++#ifdef CONFIG_SERIAL_DEV_BUS ++static int read_local_version(struct hci_dev *hdev) ++{ ++ int err = 0; ++ unsigned short version = 0; ++ struct sk_buff *skb; ++ struct hci_rp_read_local_version *ver; ++ ++ skb = __hci_cmd_sync(hdev, HCI_OP_READ_LOCAL_VERSION, 0, NULL, HCI_INIT_TIMEOUT); ++ if (IS_ERR(skb)) { ++ bt_dev_err(hdev, "Reading TI version information failed (%ld)", ++ PTR_ERR(skb)); ++ err = PTR_ERR(skb); ++ goto out; ++ } ++ if (skb->len != sizeof(*ver)) { ++ err = -EILSEQ; ++ goto out; ++ } ++ ++ ver = (struct hci_rp_read_local_version *)skb->data; ++ if (le16_to_cpu(ver->manufacturer) != 13) { ++ err = -ENODEV; ++ goto out; ++ } ++ ++ version = le16_to_cpu(ver->lmp_subver); ++ ++out: ++ if (err) bt_dev_err(hdev, "Failed to read TI version info: %d", err); ++ kfree_skb(skb); ++ return err ? err : version; ++} ++ ++/** ++ * download_firmware - ++ * internal function which parses through the .bts firmware ++ * script file intreprets SEND, DELAY actions only as of now ++ */ ++static int download_firmware(struct ll_device *lldev) ++{ ++ unsigned short chip, min_ver, maj_ver; ++ int version, err, len; ++ unsigned char *ptr, *action_ptr; ++ unsigned char bts_scr_name[40]; /* 40 char long bts scr name? */ ++ const struct firmware *fw; ++ struct sk_buff *skb; ++ struct hci_command *cmd; ++ ++ version = read_local_version(lldev->hu.hdev); ++ if (version < 0) ++ return version; ++ ++ chip = (version & 0x7C00) >> 10; ++ min_ver = (version & 0x007F); ++ maj_ver = (version & 0x0380) >> 7; ++ if (version & 0x8000) ++ maj_ver |= 0x0008; ++ ++ snprintf(bts_scr_name, sizeof(bts_scr_name), ++ "ti-connectivity/TIInit_%d.%d.%d.bts", ++ chip, maj_ver, min_ver); ++ ++ err = request_firmware(&fw, bts_scr_name, &lldev->serdev->dev); ++ if (err || !fw->data || !fw->size) { ++ bt_dev_err(lldev->hu.hdev, "request_firmware failed(errno %d) for %s", ++ err, bts_scr_name); ++ return -EINVAL; ++ } ++ ptr = (void *)fw->data; ++ len = fw->size; ++ /* bts_header to remove out magic number and ++ * version ++ */ ++ ptr += sizeof(struct bts_header); ++ len -= sizeof(struct bts_header); ++ ++ while (len > 0 && ptr) { ++ bt_dev_dbg(lldev->hu.hdev, " action size %d, type %d ", ++ ((struct bts_action *)ptr)->size, ++ ((struct bts_action *)ptr)->type); ++ ++ action_ptr = &(((struct bts_action *)ptr)->data[0]); ++ ++ switch (((struct bts_action *)ptr)->type) { ++ case ACTION_SEND_COMMAND: /* action send */ ++ bt_dev_dbg(lldev->hu.hdev, "S"); ++ cmd = (struct hci_command *)action_ptr; ++ if (cmd->opcode == 0xff36) { ++ /* ignore remote change ++ * baud rate HCI VS command */ ++ bt_dev_warn(lldev->hu.hdev, "change remote baud rate command in firmware"); ++ break; ++ } ++ if (cmd->prefix != 1) ++ bt_dev_dbg(lldev->hu.hdev, "command type %d\n", cmd->prefix); ++ ++ skb = __hci_cmd_sync(lldev->hu.hdev, cmd->opcode, cmd->plen, &cmd->speed, HCI_INIT_TIMEOUT); ++ if (IS_ERR(skb)) { ++ bt_dev_err(lldev->hu.hdev, "send command failed\n"); ++ goto out_rel_fw; ++ } ++ kfree_skb(skb); ++ break; ++ case ACTION_WAIT_EVENT: /* wait */ ++ /* no need to wait as command was synchronous */ ++ bt_dev_dbg(lldev->hu.hdev, "W"); ++ break; ++ case ACTION_DELAY: /* sleep */ ++ bt_dev_info(lldev->hu.hdev, "sleep command in scr"); ++ mdelay(((struct bts_action_delay *)action_ptr)->msec); ++ break; ++ } ++ len -= (sizeof(struct bts_action) + ++ ((struct bts_action *)ptr)->size); ++ ptr += sizeof(struct bts_action) + ++ ((struct bts_action *)ptr)->size; ++ } ++ ++out_rel_fw: ++ /* fw download complete */ ++ release_firmware(fw); ++ return err; ++} ++ ++static int ll_setup(struct hci_uart *hu) ++{ ++ int err, retry = 3; ++ struct ll_device *lldev; ++ struct serdev_device *serdev = hu->serdev; ++ u32 speed; ++ ++ if (!serdev) ++ return 0; ++ ++ lldev = serdev_device_get_drvdata(serdev); ++ ++ serdev_device_set_flow_control(serdev, true); ++ ++ do { ++ /* Configure BT_EN to HIGH state */ ++ gpiod_set_value_cansleep(lldev->enable_gpio, 0); ++ msleep(5); ++ gpiod_set_value_cansleep(lldev->enable_gpio, 1); ++ msleep(100); ++ ++ err = download_firmware(lldev); ++ if (!err) ++ break; ++ ++ /* Toggle BT_EN and retry */ ++ bt_dev_err(hu->hdev, "download firmware failed, retrying..."); ++ } while (retry--); ++ ++ if (err) ++ return err; ++ ++ /* Operational speed if any */ ++ if (hu->oper_speed) ++ speed = hu->oper_speed; ++ else if (hu->proto->oper_speed) ++ speed = hu->proto->oper_speed; ++ else ++ speed = 0; ++ ++ if (speed) { ++ struct sk_buff *skb = __hci_cmd_sync(hu->hdev, 0xff36, sizeof(speed), &speed, HCI_INIT_TIMEOUT); ++ if (!IS_ERR(skb)) { ++ kfree_skb(skb); ++ serdev_device_set_baudrate(serdev, speed); ++ } ++ } ++ ++ return 0; ++} ++ ++static const struct hci_uart_proto llp; ++ ++static int hci_ti_probe(struct serdev_device *serdev) ++{ ++ struct hci_uart *hu; ++ struct ll_device *lldev; ++ u32 max_speed = 3000000; ++ ++ lldev = devm_kzalloc(&serdev->dev, sizeof(struct ll_device), GFP_KERNEL); ++ if (!lldev) ++ return -ENOMEM; ++ hu = &lldev->hu; ++ ++ serdev_device_set_drvdata(serdev, lldev); ++ lldev->serdev = hu->serdev = serdev; ++ ++ lldev->enable_gpio = devm_gpiod_get_optional(&serdev->dev, "enable", GPIOD_OUT_LOW); ++ if (IS_ERR(lldev->enable_gpio)) ++ return PTR_ERR(lldev->enable_gpio); ++ ++ of_property_read_u32(serdev->dev.of_node, "max-speed", &max_speed); ++ hci_uart_set_speeds(hu, 115200, max_speed); ++ ++ return hci_uart_register_device(hu, &llp); ++} ++ ++static void hci_ti_remove(struct serdev_device *serdev) ++{ ++ struct ll_device *lldev = serdev_device_get_drvdata(serdev); ++ struct hci_uart *hu = &lldev->hu; ++ struct hci_dev *hdev = hu->hdev; ++ ++ cancel_work_sync(&hu->write_work); ++ ++ hci_unregister_dev(hdev); ++ hci_free_dev(hdev); ++ hu->proto->close(hu); ++} ++ ++static const struct of_device_id hci_ti_of_match[] = { ++ { .compatible = "ti,wl1831-st" }, ++ { .compatible = "ti,wl1835-st" }, ++ { .compatible = "ti,wl1837-st" }, ++ {}, ++}; ++MODULE_DEVICE_TABLE(of, hci_ti_of_match); ++ ++static struct serdev_device_driver hci_ti_drv = { ++ .driver = { ++ .name = "hci-ti", ++ .of_match_table = of_match_ptr(hci_ti_of_match), ++ }, ++ .probe = hci_ti_probe, ++ .remove = hci_ti_remove, ++}; ++#else ++#define ll_setup NULL ++#endif ++ + static const struct hci_uart_proto llp = { + .id = HCI_UART_LL, + .name = "LL", ++ .setup = ll_setup, + .open = ll_open, + .close = ll_close, + .recv = ll_recv, +@@ -518,10 +773,14 @@ static const struct hci_uart_proto llp = { + + int __init ll_init(void) + { ++ serdev_device_driver_register(&hci_ti_drv); ++ + return hci_uart_register_proto(&llp); + } + + int __exit ll_deinit(void) + { ++ serdev_device_driver_unregister(&hci_ti_drv); ++ + return hci_uart_unregister_proto(&llp); + } +-- +2.12.2 + +From 33bbcaa7b1a4639a5e149e725a674324e7487b17 Mon Sep 17 00:00:00 2001 +From: Rob Herring <robh@kernel.org> +Date: Mon, 21 Nov 2016 15:21:56 -0600 +Subject: [PATCH 13/13] arm64: dts: hikey: add WL1835 Bluetooth device node + +This adds the serial slave device for the WL1835 Bluetooth interface. + +Signed-off-by: Rob Herring <robh@kernel.org> +Cc: Wei Xu <xuwei5@hisilicon.com> +Cc: Mark Rutland <mark.rutland@arm.com> +--- + arch/arm64/boot/dts/hisilicon/hi6220-hikey.dts | 5 +++++ + 1 file changed, 5 insertions(+) + +diff --git a/arch/arm64/boot/dts/hisilicon/hi6220-hikey.dts b/arch/arm64/boot/dts/hisilicon/hi6220-hikey.dts +index dba3c131c62c..9b4ba7169210 100644 +--- a/arch/arm64/boot/dts/hisilicon/hi6220-hikey.dts ++++ b/arch/arm64/boot/dts/hisilicon/hi6220-hikey.dts +@@ -98,6 +98,11 @@ + assigned-clocks = <&sys_ctrl HI6220_UART1_SRC>; + assigned-clock-rates = <150000000>; + status = "ok"; ++ ++ bluetooth { ++ compatible = "ti,wl1835-st"; ++ enable-gpios = <&gpio1 7 GPIO_ACTIVE_HIGH>; ++ }; + }; + + uart2: uart@f7112000 { +-- +2.12.2 + diff --git a/tipc-fix-an-infoleak-in-tipc_nl_compat_link_dump.patch b/tipc-fix-an-infoleak-in-tipc_nl_compat_link_dump.patch deleted file mode 100644 index 9cd7c09a3..000000000 --- a/tipc-fix-an-infoleak-in-tipc_nl_compat_link_dump.patch +++ /dev/null @@ -1,32 +0,0 @@ -From 5d2be1422e02ccd697ccfcd45c85b4a26e6178e2 Mon Sep 17 00:00:00 2001 -From: Kangjie Lu <kangjielu@gmail.com> -Date: Thu, 2 Jun 2016 04:04:56 -0400 -Subject: tipc: fix an infoleak in tipc_nl_compat_link_dump - -link_info.str is a char array of size 60. Memory after the NULL -byte is not initialized. Sending the whole object out can cause -a leak. - -Signed-off-by: Kangjie Lu <kjlu@gatech.edu> -Signed-off-by: David S. Miller <davem@davemloft.net> ---- - net/tipc/netlink_compat.c | 3 ++- - 1 file changed, 2 insertions(+), 1 deletion(-) - -diff --git a/net/tipc/netlink_compat.c b/net/tipc/netlink_compat.c -index f795b1d..3ad9fab 100644 ---- a/net/tipc/netlink_compat.c -+++ b/net/tipc/netlink_compat.c -@@ -604,7 +604,8 @@ static int tipc_nl_compat_link_dump(struct tipc_nl_compat_msg *msg, - - link_info.dest = nla_get_flag(link[TIPC_NLA_LINK_DEST]); - link_info.up = htonl(nla_get_flag(link[TIPC_NLA_LINK_UP])); -- strcpy(link_info.str, nla_data(link[TIPC_NLA_LINK_NAME])); -+ nla_strlcpy(link_info.str, nla_data(link[TIPC_NLA_LINK_NAME]), -+ TIPC_MAX_LINK_NAME); - - return tipc_add_tlv(msg->rep, TIPC_TLV_LINK_INFO, - &link_info, sizeof(link_info)); --- -cgit v0.12 - diff --git a/ucount-Remove-the-atomicity-from-ucount-count.patch b/ucount-Remove-the-atomicity-from-ucount-count.patch deleted file mode 100644 index 1b4e3c03f..000000000 --- a/ucount-Remove-the-atomicity-from-ucount-count.patch +++ /dev/null @@ -1,89 +0,0 @@ -From 040757f738e13caaa9c5078bca79aa97e11dde88 Mon Sep 17 00:00:00 2001 -From: "Eric W. Biederman" <ebiederm@xmission.com> -Date: Sun, 5 Mar 2017 15:03:22 -0600 -Subject: [PATCH] ucount: Remove the atomicity from ucount->count - -Always increment/decrement ucount->count under the ucounts_lock. The -increments are there already and moving the decrements there means the -locking logic of the code is simpler. This simplification in the -locking logic fixes a race between put_ucounts and get_ucounts that -could result in a use-after-free because the count could go zero then -be found by get_ucounts and then be freed by put_ucounts. - -A bug presumably this one was found by a combination of syzkaller and -KASAN. JongWhan Kim reported the syzkaller failure and Dmitry Vyukov -spotted the race in the code. - -Cc: stable@vger.kernel.org -Fixes: f6b2db1a3e8d ("userns: Make the count of user namespaces per user") -Reported-by: JongHwan Kim <zzoru007@gmail.com> -Reported-by: Dmitry Vyukov <dvyukov@google.com> -Reviewed-by: Andrei Vagin <avagin@gmail.com> -Signed-off-by: "Eric W. Biederman" <ebiederm@xmission.com> ---- - include/linux/user_namespace.h | 2 +- - kernel/ucount.c | 18 +++++++++++------- - 2 files changed, 12 insertions(+), 8 deletions(-) - -diff --git a/include/linux/user_namespace.h b/include/linux/user_namespace.h -index be76523..32354b4 100644 ---- a/include/linux/user_namespace.h -+++ b/include/linux/user_namespace.h -@@ -72,7 +72,7 @@ struct ucounts { - struct hlist_node node; - struct user_namespace *ns; - kuid_t uid; -- atomic_t count; -+ int count; - atomic_t ucount[UCOUNT_COUNTS]; - }; - -diff --git a/kernel/ucount.c b/kernel/ucount.c -index 62630a4..b4eeee0 100644 ---- a/kernel/ucount.c -+++ b/kernel/ucount.c -@@ -144,7 +144,7 @@ static struct ucounts *get_ucounts(struct user_namespace *ns, kuid_t uid) - - new->ns = ns; - new->uid = uid; -- atomic_set(&new->count, 0); -+ new->count = 0; - - spin_lock_irq(&ucounts_lock); - ucounts = find_ucounts(ns, uid, hashent); -@@ -155,8 +155,10 @@ static struct ucounts *get_ucounts(struct user_namespace *ns, kuid_t uid) - ucounts = new; - } - } -- if (!atomic_add_unless(&ucounts->count, 1, INT_MAX)) -+ if (ucounts->count == INT_MAX) - ucounts = NULL; -+ else -+ ucounts->count += 1; - spin_unlock_irq(&ucounts_lock); - return ucounts; - } -@@ -165,13 +167,15 @@ static void put_ucounts(struct ucounts *ucounts) - { - unsigned long flags; - -- if (atomic_dec_and_test(&ucounts->count)) { -- spin_lock_irqsave(&ucounts_lock, flags); -+ spin_lock_irqsave(&ucounts_lock, flags); -+ ucounts->count -= 1; -+ if (!ucounts->count) - hlist_del_init(&ucounts->node); -- spin_unlock_irqrestore(&ucounts_lock, flags); -+ else -+ ucounts = NULL; -+ spin_unlock_irqrestore(&ucounts_lock, flags); - -- kfree(ucounts); -- } -+ kfree(ucounts); - } - - static inline bool atomic_inc_below(atomic_t *v, int u) --- -2.9.3 - |