diff options
238 files changed, 4802 insertions, 6778 deletions
diff --git a/0001-Bluetooth-btusb-Add-a-Kconfig-option-to-enable-USB-a.patch b/0001-Bluetooth-btusb-Add-a-Kconfig-option-to-enable-USB-a.patch deleted file mode 100644 index 1f94c3d70..000000000 --- a/0001-Bluetooth-btusb-Add-a-Kconfig-option-to-enable-USB-a.patch +++ /dev/null @@ -1,90 +0,0 @@ -From 20eeb02a0a489e35de0830b2d61f09d43763c982 Mon Sep 17 00:00:00 2001 -From: Hans de Goede <hdegoede@redhat.com> -Date: Mon, 13 Nov 2017 09:23:19 +0100 -Subject: [PATCH] Bluetooth: btusb: Add a Kconfig option to enable USB - autosuspend by default - -On many laptops the btusb device is the only USB device not having USB -autosuspend enabled, this causes not only the HCI but also the USB -controller to stay awake, together using aprox. 0.4W of power. - -Modern ultrabooks idle around 6W (at 50% screen brightness), 3.5W for -Apollo Lake devices. 0.4W is a significant chunk of this (7 / 11%). - -The btusb driver already contains code to allow enabling USB autosuspend, -but currently leaves it up to the user / userspace to enable it. This -means that for most people it will not be enabled, leading to an -unnecessarily high power consumption. - -Since enabling it is not entirely without risk of regressions, this -commit adds a Kconfig option so that Linux distributions can choose to -enable it by default. This commit also adds a module option so that when -distros receive bugs they can easily ask the user to disable it again -for easy debugging. - -Signed-off-by: Hans de Goede <hdegoede@redhat.com> ---- -Changes in v2: --s/BT_USB_AUTOSUSPEND/BT_HCIBTUSB_AUTOSUSPEND/ --s/enable_usb_autosuspend/enable_autosuspend/ ---- - drivers/bluetooth/Kconfig | 10 ++++++++++ - drivers/bluetooth/btusb.c | 7 +++++++ - 2 files changed, 17 insertions(+) - -diff --git a/drivers/bluetooth/Kconfig b/drivers/bluetooth/Kconfig -index 6475f8c0d3b2..20940417d937 100644 ---- a/drivers/bluetooth/Kconfig -+++ b/drivers/bluetooth/Kconfig -@@ -30,6 +30,16 @@ config BT_HCIBTUSB - Say Y here to compile support for Bluetooth USB devices into the - kernel or say M to compile it as module (btusb). - -+config BT_HCIBTUSB_AUTOSUSPEND -+ bool "Enable USB autosuspend for Bluetooth USB devices by default" -+ depends on BT_HCIBTUSB -+ help -+ Say Y here to enable USB autosuspend for Bluetooth USB devices by -+ default. -+ -+ This can be overridden by passing btusb.enable_autosuspend=[y|n] -+ on the kernel commandline. -+ - config BT_HCIBTUSB_BCM - bool "Broadcom protocol support" - depends on BT_HCIBTUSB -diff --git a/drivers/bluetooth/btusb.c b/drivers/bluetooth/btusb.c -index c054d7bce490..3386034a44aa 100644 ---- a/drivers/bluetooth/btusb.c -+++ b/drivers/bluetooth/btusb.c -@@ -40,6 +40,7 @@ - - static bool disable_scofix; - static bool force_scofix; -+static bool enable_autosuspend = IS_ENABLED(CONFIG_BT_HCIBTUSB_AUTOSUSPEND); - - static bool reset = true; - -@@ -3175,6 +3176,9 @@ static int btusb_probe(struct usb_interface *intf, - } - #endif - -+ if (enable_autosuspend) -+ usb_enable_autosuspend(data->udev); -+ - err = hci_register_dev(hdev); - if (err < 0) - goto out_free_dev; -@@ -3387,6 +3391,9 @@ MODULE_PARM_DESC(disable_scofix, "Disable fixup of wrong SCO buffer size"); - module_param(force_scofix, bool, 0644); - MODULE_PARM_DESC(force_scofix, "Force fixup of wrong SCO buffers size"); - -+module_param(enable_autosuspend, bool, 0644); -+MODULE_PARM_DESC(enable_autosuspend, "Enable USB autosuspend by default"); -+ - module_param(reset, bool, 0644); - MODULE_PARM_DESC(reset, "Send HCI reset command on initialization"); - --- -2.14.3 - diff --git a/0001-Bluetooth-btusb-Disable-autosuspend-on-QCA-Rome-devi.patch b/0001-Bluetooth-btusb-Disable-autosuspend-on-QCA-Rome-devi.patch deleted file mode 100644 index cc1af2ceb..000000000 --- a/0001-Bluetooth-btusb-Disable-autosuspend-on-QCA-Rome-devi.patch +++ /dev/null @@ -1,47 +0,0 @@ -From a5ffa27c07e06900fcfc50b08de6d11e45830168 Mon Sep 17 00:00:00 2001 -From: Hans de Goede <hdegoede@redhat.com> -Date: Wed, 3 Jan 2018 12:49:44 +0100 -Subject: [PATCH v2] Bluetooth: btusb: Disable autosuspend on QCA Rome devices - -Commit fd865802c66b ("Bluetooth: btusb: fix QCA Rome suspend/resume") fixes -a suspend/resume problem on QCA devices by doing a full reset on resume, -reloading the firmware. - -A similar problem happens when using runtime-pm / autosuspend, when this is -enabled by the user the QCA Rome device stops working. Reloading the -firmware after a runtime suspend is not really an option since the latency -caused by this is unacceptable. - -To fix the runtime-pm issues, this commit disables runtime-pm on QCA Rome -HCIs, by getting (and not releasing) an usb autopm reference on the btusb -interface. - -BugLink: https://bugzilla.redhat.com/show_bug.cgi?id=1514836 -Signed-off-by: Hans de Goede <hdegoede@redhat.com> ---- - drivers/bluetooth/btusb.c | 7 +++++++ - 1 file changed, 7 insertions(+) - -diff --git a/drivers/bluetooth/btusb.c b/drivers/bluetooth/btusb.c -index 808c249845db..6ed3a0e5b8f6 100644 ---- a/drivers/bluetooth/btusb.c -+++ b/drivers/bluetooth/btusb.c -@@ -3122,8 +3122,15 @@ static int btusb_probe(struct usb_interface *intf, - /* QCA Rome devices lose their updated firmware over suspend, - * but the USB hub doesn't notice any status change. - * Explicitly request a device reset on resume. -+ * And disable runtime pm by getting a pm reference, the USB -+ * core will drop our reference on disconnect. - */ - set_bit(BTUSB_RESET_RESUME, &data->flags); -+ err = usb_autopm_get_interface(data->intf); -+ if (err < 0) { -+ BT_ERR("failed to get pm reference %d", err); -+ goto out_free_dev; -+ } - } - - #ifdef CONFIG_BT_HCIBTUSB_RTL --- -2.14.3 - diff --git a/0001-HID-multitouch-Properly-deal-with-Win8-PTP-reports-w.patch b/0001-HID-multitouch-Properly-deal-with-Win8-PTP-reports-w.patch deleted file mode 100644 index e15ec6bb1..000000000 --- a/0001-HID-multitouch-Properly-deal-with-Win8-PTP-reports-w.patch +++ /dev/null @@ -1,106 +0,0 @@ -From f5c1da991de077420fda17a236342de5a0068f5d Mon Sep 17 00:00:00 2001 -From: Hans de Goede <hdegoede@redhat.com> -Date: Wed, 22 Nov 2017 12:57:08 +0100 -Subject: [PATCH v2 1/3] HID: multitouch: Properly deal with Win8 PTP reports - with 0 touches - -The Windows Precision Touchpad spec "Figure 4 Button Only Down and Up" -and "Table 9 Report Sequence for Button Only Down and Up" indicate -that the first packet of a (possibly hybrid mode multi-packet) frame -may contain a contact-count of 0 if only a button is pressed and no -fingers are detected. - -This means that a value of 0 for contact-count is a valid value and -should be used as expected contact count when it is the first packet -(num_received == 0), as extra check to make sure that this is the first -packet of a buttons only frame, we also check that the timestamp is -different. - -Signed-off-by: Hans de Goede <hdegoede@redhat.com> -Reviewed-by: Benjamin Tissoires <benjamin.tissoires@redhat.com> -Signed-off-by: Jiri Kosina <jkosina@suse.cz> ---- - drivers/hid/hid-multitouch.c | 32 ++++++++++++++++++++++++++++++-- - 1 file changed, 30 insertions(+), 2 deletions(-) - -diff --git a/drivers/hid/hid-multitouch.c b/drivers/hid/hid-multitouch.c -index 9ef24b518f12..d8b1cad74faf 100644 ---- a/drivers/hid/hid-multitouch.c -+++ b/drivers/hid/hid-multitouch.c -@@ -119,6 +119,9 @@ struct mt_device { - unsigned long mt_io_flags; /* mt flags (MT_IO_FLAGS_*) */ - int cc_index; /* contact count field index in the report */ - int cc_value_index; /* contact count value index in the field */ -+ int scantime_index; /* scantime field index in the report */ -+ int scantime_val_index; /* scantime value index in the field */ -+ int prev_scantime; /* scantime reported in the previous packet */ - unsigned last_slot_field; /* the last field of a slot */ - unsigned mt_report_id; /* the report ID of the multitouch device */ - unsigned long initial_quirks; /* initial quirks state */ -@@ -599,6 +602,12 @@ static int mt_touch_input_mapping(struct hid_device *hdev, struct hid_input *hi, - EV_MSC, MSC_TIMESTAMP); - input_set_capability(hi->input, EV_MSC, MSC_TIMESTAMP); - mt_store_field(usage, td, hi); -+ /* Ignore if indexes are out of bounds. */ -+ if (field->index >= field->report->maxfield || -+ usage->usage_index >= field->report_count) -+ return 1; -+ td->scantime_index = field->index; -+ td->scantime_val_index = usage->usage_index; - return 1; - case HID_DG_CONTACTCOUNT: - /* Ignore if indexes are out of bounds. */ -@@ -855,9 +864,10 @@ static void mt_process_mt_event(struct hid_device *hid, struct hid_field *field, - static void mt_touch_report(struct hid_device *hid, struct hid_report *report) - { - struct mt_device *td = hid_get_drvdata(hid); -+ __s32 cls = td->mtclass.name; - struct hid_field *field; - unsigned count; -- int r, n; -+ int r, n, scantime = 0; - - /* sticky fingers release in progress, abort */ - if (test_and_set_bit(MT_IO_FLAGS_RUNNING, &td->mt_io_flags)) -@@ -867,12 +877,29 @@ static void mt_touch_report(struct hid_device *hid, struct hid_report *report) - * Includes multi-packet support where subsequent - * packets are sent with zero contactcount. - */ -+ if (td->scantime_index >= 0) { -+ field = report->field[td->scantime_index]; -+ scantime = field->value[td->scantime_val_index]; -+ } - if (td->cc_index >= 0) { - struct hid_field *field = report->field[td->cc_index]; - int value = field->value[td->cc_value_index]; -- if (value) -+ -+ /* -+ * For Win8 PTPs the first packet (td->num_received == 0) may -+ * have a contactcount of 0 if there only is a button event. -+ * We double check that this is not a continuation packet -+ * of a possible multi-packet frame be checking that the -+ * timestamp has changed. -+ */ -+ if ((cls == MT_CLS_WIN_8 || cls == MT_CLS_WIN_8_DUAL) && -+ td->num_received == 0 && td->prev_scantime != scantime) -+ td->num_expected = value; -+ /* A non 0 contact count always indicates a first packet */ -+ else if (value) - td->num_expected = value; - } -+ td->prev_scantime = scantime; - - for (r = 0; r < report->maxfield; r++) { - field = report->field[r]; -@@ -1329,6 +1356,7 @@ static int mt_probe(struct hid_device *hdev, const struct hid_device_id *id) - td->maxcontact_report_id = -1; - td->inputmode_value = MT_INPUTMODE_TOUCHSCREEN; - td->cc_index = -1; -+ td->scantime_index = -1; - td->mt_report_id = -1; - hid_set_drvdata(hdev, td); - --- -2.14.3 - diff --git a/0001-Temporarily-work-around-gcc-aliasing-warning-error.patch b/0001-Temporarily-work-around-gcc-aliasing-warning-error.patch new file mode 100644 index 000000000..24302d2ec --- /dev/null +++ b/0001-Temporarily-work-around-gcc-aliasing-warning-error.patch @@ -0,0 +1,27 @@ +From 991b5e95d4fe7778c8f5e7d7f478d01134d51ca7 Mon Sep 17 00:00:00 2001 +From: Laura Abbott <labbott@redhat.com> +Date: Wed, 14 Mar 2018 14:20:02 -0700 +Subject: [PATCH] Temporarily work around gcc aliasing warning/error + +Signed-off-by: Laura Abbott <labbott@redhat.com> +--- + tools/lib/str_error_r.c | 3 ++- + 1 file changed, 2 insertions(+), 1 deletion(-) + +diff --git a/tools/lib/str_error_r.c b/tools/lib/str_error_r.c +index d6d65537b0d9..c0ede4f6adae 100644 +--- a/tools/lib/str_error_r.c ++++ b/tools/lib/str_error_r.c +@@ -21,7 +21,8 @@ + char *str_error_r(int errnum, char *buf, size_t buflen) + { + int err = strerror_r(errnum, buf, buflen); ++ void *temp = buf; + if (err) +- snprintf(buf, buflen, "INTERNAL ERROR: strerror_r(%d, %p, %zd)=%d", errnum, buf, buflen, err); ++ snprintf(buf, buflen, "INTERNAL ERROR: strerror_r(%d, %p, %zd)=%d", errnum, temp, buflen, err); + return buf; + } +-- +2.16.2 + diff --git a/0001-ahci-Annotate-PCI-ids-for-mobile-Intel-chipsets-as-s.patch b/0001-ahci-Annotate-PCI-ids-for-mobile-Intel-chipsets-as-s.patch deleted file mode 100644 index d73ce05c6..000000000 --- a/0001-ahci-Annotate-PCI-ids-for-mobile-Intel-chipsets-as-s.patch +++ /dev/null @@ -1,106 +0,0 @@ -From cb1072f66e72eda65a8f7ac37d32c9f4217af6ba Mon Sep 17 00:00:00 2001 -From: Hans de Goede <hdegoede@redhat.com> -Date: Tue, 21 Nov 2017 14:44:15 +0100 -Subject: [PATCH 1/3] ahci: Annotate PCI ids for mobile Intel chipsets as such - -Intel uses different SATA PCI ids for the Desktop and Mobile SKUs of their -chipsets. For older models the comment describing which chipset the PCI id -is for, aksi indicates when we're dealing with a mobile SKU. Extend the -comments for recent chipsets to also indicate mobile SKUs. - -The information this commit adds comes from Intel's chipset datasheets. - -This commit is a preparation patch for allowing a different default -sata link powermanagement policy for mobile chipsets. - -Signed-off-by: Hans de Goede <hdegoede@redhat.com> ---- - drivers/ata/ahci.c | 32 ++++++++++++++++---------------- - 1 file changed, 16 insertions(+), 16 deletions(-) - -diff --git a/drivers/ata/ahci.c b/drivers/ata/ahci.c -index 5443cb71d7ba..9d842ff6ec51 100644 ---- a/drivers/ata/ahci.c -+++ b/drivers/ata/ahci.c -@@ -268,9 +268,9 @@ static const struct pci_device_id ahci_pci_tbl[] = { - { PCI_VDEVICE(INTEL, 0x3b23), board_ahci }, /* PCH AHCI */ - { PCI_VDEVICE(INTEL, 0x3b24), board_ahci }, /* PCH RAID */ - { PCI_VDEVICE(INTEL, 0x3b25), board_ahci }, /* PCH RAID */ -- { PCI_VDEVICE(INTEL, 0x3b29), board_ahci }, /* PCH AHCI */ -+ { PCI_VDEVICE(INTEL, 0x3b29), board_ahci }, /* PCH M AHCI */ - { PCI_VDEVICE(INTEL, 0x3b2b), board_ahci }, /* PCH RAID */ -- { PCI_VDEVICE(INTEL, 0x3b2c), board_ahci }, /* PCH RAID */ -+ { PCI_VDEVICE(INTEL, 0x3b2c), board_ahci }, /* PCH M RAID */ - { PCI_VDEVICE(INTEL, 0x3b2f), board_ahci }, /* PCH AHCI */ - { PCI_VDEVICE(INTEL, 0x19b0), board_ahci }, /* DNV AHCI */ - { PCI_VDEVICE(INTEL, 0x19b1), board_ahci }, /* DNV AHCI */ -@@ -293,9 +293,9 @@ static const struct pci_device_id ahci_pci_tbl[] = { - { PCI_VDEVICE(INTEL, 0x19cE), board_ahci }, /* DNV AHCI */ - { PCI_VDEVICE(INTEL, 0x19cF), board_ahci }, /* DNV AHCI */ - { PCI_VDEVICE(INTEL, 0x1c02), board_ahci }, /* CPT AHCI */ -- { PCI_VDEVICE(INTEL, 0x1c03), board_ahci }, /* CPT AHCI */ -+ { PCI_VDEVICE(INTEL, 0x1c03), board_ahci }, /* CPT M AHCI */ - { PCI_VDEVICE(INTEL, 0x1c04), board_ahci }, /* CPT RAID */ -- { PCI_VDEVICE(INTEL, 0x1c05), board_ahci }, /* CPT RAID */ -+ { PCI_VDEVICE(INTEL, 0x1c05), board_ahci }, /* CPT M RAID */ - { PCI_VDEVICE(INTEL, 0x1c06), board_ahci }, /* CPT RAID */ - { PCI_VDEVICE(INTEL, 0x1c07), board_ahci }, /* CPT RAID */ - { PCI_VDEVICE(INTEL, 0x1d02), board_ahci }, /* PBG AHCI */ -@@ -304,20 +304,20 @@ static const struct pci_device_id ahci_pci_tbl[] = { - { PCI_VDEVICE(INTEL, 0x2826), board_ahci }, /* PBG RAID */ - { PCI_VDEVICE(INTEL, 0x2323), board_ahci }, /* DH89xxCC AHCI */ - { PCI_VDEVICE(INTEL, 0x1e02), board_ahci }, /* Panther Point AHCI */ -- { PCI_VDEVICE(INTEL, 0x1e03), board_ahci }, /* Panther Point AHCI */ -+ { PCI_VDEVICE(INTEL, 0x1e03), board_ahci }, /* Panther Point M AHCI */ - { PCI_VDEVICE(INTEL, 0x1e04), board_ahci }, /* Panther Point RAID */ - { PCI_VDEVICE(INTEL, 0x1e05), board_ahci }, /* Panther Point RAID */ - { PCI_VDEVICE(INTEL, 0x1e06), board_ahci }, /* Panther Point RAID */ -- { PCI_VDEVICE(INTEL, 0x1e07), board_ahci }, /* Panther Point RAID */ -+ { PCI_VDEVICE(INTEL, 0x1e07), board_ahci }, /* Panther Point M RAID */ - { PCI_VDEVICE(INTEL, 0x1e0e), board_ahci }, /* Panther Point RAID */ - { PCI_VDEVICE(INTEL, 0x8c02), board_ahci }, /* Lynx Point AHCI */ -- { PCI_VDEVICE(INTEL, 0x8c03), board_ahci }, /* Lynx Point AHCI */ -+ { PCI_VDEVICE(INTEL, 0x8c03), board_ahci }, /* Lynx Point M AHCI */ - { PCI_VDEVICE(INTEL, 0x8c04), board_ahci }, /* Lynx Point RAID */ -- { PCI_VDEVICE(INTEL, 0x8c05), board_ahci }, /* Lynx Point RAID */ -+ { PCI_VDEVICE(INTEL, 0x8c05), board_ahci }, /* Lynx Point M RAID */ - { PCI_VDEVICE(INTEL, 0x8c06), board_ahci }, /* Lynx Point RAID */ -- { PCI_VDEVICE(INTEL, 0x8c07), board_ahci }, /* Lynx Point RAID */ -+ { PCI_VDEVICE(INTEL, 0x8c07), board_ahci }, /* Lynx Point M RAID */ - { PCI_VDEVICE(INTEL, 0x8c0e), board_ahci }, /* Lynx Point RAID */ -- { PCI_VDEVICE(INTEL, 0x8c0f), board_ahci }, /* Lynx Point RAID */ -+ { PCI_VDEVICE(INTEL, 0x8c0f), board_ahci }, /* Lynx Point M RAID */ - { PCI_VDEVICE(INTEL, 0x9c02), board_ahci }, /* Lynx Point-LP AHCI */ - { PCI_VDEVICE(INTEL, 0x9c03), board_ahci }, /* Lynx Point-LP AHCI */ - { PCI_VDEVICE(INTEL, 0x9c04), board_ahci }, /* Lynx Point-LP RAID */ -@@ -358,21 +358,21 @@ static const struct pci_device_id ahci_pci_tbl[] = { - { PCI_VDEVICE(INTEL, 0x9c87), board_ahci }, /* Wildcat Point-LP RAID */ - { PCI_VDEVICE(INTEL, 0x9c8f), board_ahci }, /* Wildcat Point-LP RAID */ - { PCI_VDEVICE(INTEL, 0x8c82), board_ahci }, /* 9 Series AHCI */ -- { PCI_VDEVICE(INTEL, 0x8c83), board_ahci }, /* 9 Series AHCI */ -+ { PCI_VDEVICE(INTEL, 0x8c83), board_ahci }, /* 9 Series M AHCI */ - { PCI_VDEVICE(INTEL, 0x8c84), board_ahci }, /* 9 Series RAID */ -- { PCI_VDEVICE(INTEL, 0x8c85), board_ahci }, /* 9 Series RAID */ -+ { PCI_VDEVICE(INTEL, 0x8c85), board_ahci }, /* 9 Series M RAID */ - { PCI_VDEVICE(INTEL, 0x8c86), board_ahci }, /* 9 Series RAID */ -- { PCI_VDEVICE(INTEL, 0x8c87), board_ahci }, /* 9 Series RAID */ -+ { PCI_VDEVICE(INTEL, 0x8c87), board_ahci }, /* 9 Series M RAID */ - { PCI_VDEVICE(INTEL, 0x8c8e), board_ahci }, /* 9 Series RAID */ -- { PCI_VDEVICE(INTEL, 0x8c8f), board_ahci }, /* 9 Series RAID */ -+ { PCI_VDEVICE(INTEL, 0x8c8f), board_ahci }, /* 9 Series M RAID */ - { PCI_VDEVICE(INTEL, 0x9d03), board_ahci }, /* Sunrise Point-LP AHCI */ - { PCI_VDEVICE(INTEL, 0x9d05), board_ahci }, /* Sunrise Point-LP RAID */ - { PCI_VDEVICE(INTEL, 0x9d07), board_ahci }, /* Sunrise Point-LP RAID */ - { PCI_VDEVICE(INTEL, 0xa102), board_ahci }, /* Sunrise Point-H AHCI */ -- { PCI_VDEVICE(INTEL, 0xa103), board_ahci }, /* Sunrise Point-H AHCI */ -+ { PCI_VDEVICE(INTEL, 0xa103), board_ahci }, /* Sunrise Point-H M AHCI */ - { PCI_VDEVICE(INTEL, 0xa105), board_ahci }, /* Sunrise Point-H RAID */ - { PCI_VDEVICE(INTEL, 0xa106), board_ahci }, /* Sunrise Point-H RAID */ -- { PCI_VDEVICE(INTEL, 0xa107), board_ahci }, /* Sunrise Point-H RAID */ -+ { PCI_VDEVICE(INTEL, 0xa107), board_ahci }, /* Sunrise Point-H M RAID */ - { PCI_VDEVICE(INTEL, 0xa10f), board_ahci }, /* Sunrise Point-H RAID */ - { PCI_VDEVICE(INTEL, 0x2822), board_ahci }, /* Lewisburg RAID*/ - { PCI_VDEVICE(INTEL, 0x2823), board_ahci }, /* Lewisburg AHCI*/ --- -2.14.3 - diff --git a/0001-platform-x86-dell-laptop-Filter-out-spurious-keyboar.patch b/0001-platform-x86-dell-laptop-Filter-out-spurious-keyboar.patch deleted file mode 100644 index 926487b3d..000000000 --- a/0001-platform-x86-dell-laptop-Filter-out-spurious-keyboar.patch +++ /dev/null @@ -1,99 +0,0 @@ -From 714fe15daa07e7691c9731c88de71aa57f84b6c2 Mon Sep 17 00:00:00 2001 -From: Hans de Goede <hdegoede@redhat.com> -Date: Wed, 3 Jan 2018 11:13:54 +0100 -Subject: [PATCH] platform/x86: dell-laptop: Filter out spurious keyboard - backlight change events - -On some Dell XPS models WMI events of type 0x0000 reporting a keycode of -0xe00c get reported when the brightness of the LCD panel changes. - -This leads to us reporting false-positive kbd_led change events to -userspace which in turn leads to the kbd backlight OSD showing when it -should not. - -We already read the current keyboard backlight brightness value when -reporting events because the led_classdev_notify_brightness_hw_changed -API requires this. Compare this value to the last known value and filter -out duplicate events, fixing this. - -Note the fixed issue is esp. a problem on XPS models with an ambient light -sensor and automatic brightness adjustments turned on, this causes the kbd -backlight OSD to show all the time there. - -BugLink: https://bugzilla.redhat.com/show_bug.cgi?id=1514969 -Signed-off-by: Hans de Goede <hdegoede@redhat.com> ---- - drivers/platform/x86/dell-laptop.c | 24 ++++++++++++++++++++++-- - 1 file changed, 22 insertions(+), 2 deletions(-) - -diff --git a/drivers/platform/x86/dell-laptop.c b/drivers/platform/x86/dell-laptop.c -index cd4725e7e0b5..2ef3297a9efc 100644 ---- a/drivers/platform/x86/dell-laptop.c -+++ b/drivers/platform/x86/dell-laptop.c -@@ -1133,6 +1133,7 @@ static u8 kbd_previous_mode_bit; - - static bool kbd_led_present; - static DEFINE_MUTEX(kbd_led_mutex); -+static enum led_brightness kbd_led_level; - - /* - * NOTE: there are three ways to set the keyboard backlight level. -@@ -1947,6 +1948,7 @@ static enum led_brightness kbd_led_level_get(struct led_classdev *led_cdev) - static int kbd_led_level_set(struct led_classdev *led_cdev, - enum led_brightness value) - { -+ enum led_brightness new_value = value; - struct kbd_state state; - struct kbd_state new_state; - u16 num; -@@ -1976,6 +1978,9 @@ static int kbd_led_level_set(struct led_classdev *led_cdev, - } - - out: -+ if (ret == 0) -+ kbd_led_level = new_value; -+ - mutex_unlock(&kbd_led_mutex); - return ret; - } -@@ -2003,6 +2008,9 @@ static int __init kbd_led_init(struct device *dev) - if (kbd_led.max_brightness) - kbd_led.max_brightness--; - } -+ -+ kbd_led_level = kbd_led_level_get(NULL); -+ - ret = led_classdev_register(dev, &kbd_led); - if (ret) - kbd_led_present = false; -@@ -2027,13 +2035,25 @@ static void kbd_led_exit(void) - static int dell_laptop_notifier_call(struct notifier_block *nb, - unsigned long action, void *data) - { -+ bool changed = false; -+ enum led_brightness new_kbd_led_level; -+ - switch (action) { - case DELL_LAPTOP_KBD_BACKLIGHT_BRIGHTNESS_CHANGED: - if (!kbd_led_present) - break; - -- led_classdev_notify_brightness_hw_changed(&kbd_led, -- kbd_led_level_get(&kbd_led)); -+ mutex_lock(&kbd_led_mutex); -+ new_kbd_led_level = kbd_led_level_get(&kbd_led); -+ if (kbd_led_level != new_kbd_led_level) { -+ kbd_led_level = new_kbd_led_level; -+ changed = true; -+ } -+ mutex_unlock(&kbd_led_mutex); -+ -+ if (changed) -+ led_classdev_notify_brightness_hw_changed(&kbd_led, -+ kbd_led_level); - break; - } - --- -2.14.3 - diff --git a/0002-HID-multitouch-Only-look-at-non-touch-fields-in-firs.patch b/0002-HID-multitouch-Only-look-at-non-touch-fields-in-firs.patch deleted file mode 100644 index 3ea374ff5..000000000 --- a/0002-HID-multitouch-Only-look-at-non-touch-fields-in-firs.patch +++ /dev/null @@ -1,84 +0,0 @@ -From c25d877f4ee97deb92170129eee4777a5d5997d9 Mon Sep 17 00:00:00 2001 -From: Hans de Goede <hdegoede@redhat.com> -Date: Wed, 22 Nov 2017 12:57:09 +0100 -Subject: [PATCH v2 2/3] HID: multitouch: Only look at non touch fields in - first packet of a frame - -Devices in "single finger hybrid mode" will send one report per finger, -on some devices only the first report of such a multi-packet frame will -contain a value for BTN_LEFT, in subsequent reports (if multiple fingers -are down) the value is always 0, causing hid-mt to report BTN_LEFT going -1 - 0 - 1 - 0 when pressing a clickpad and putting down a second finger. -This happens for example on USB 0603:0002 mt touchpads. - -This commit fixes this by only reporting non touch fields for the first -packet of a (possibly) multi-packet frame. - -Signed-off-by: Hans de Goede <hdegoede@redhat.com> -Reviewed-by: Benjamin Tissoires <benjamin.tissoires@redhat.com> -Signed-off-by: Jiri Kosina <jkosina@suse.cz> ---- - drivers/hid/hid-multitouch.c | 17 +++++++++++++++-- - 1 file changed, 15 insertions(+), 2 deletions(-) - -diff --git a/drivers/hid/hid-multitouch.c b/drivers/hid/hid-multitouch.c -index d8b1cad74faf..760c4a042e6a 100644 ---- a/drivers/hid/hid-multitouch.c -+++ b/drivers/hid/hid-multitouch.c -@@ -787,9 +787,11 @@ static int mt_touch_event(struct hid_device *hid, struct hid_field *field, - } - - static void mt_process_mt_event(struct hid_device *hid, struct hid_field *field, -- struct hid_usage *usage, __s32 value) -+ struct hid_usage *usage, __s32 value, -+ bool first_packet) - { - struct mt_device *td = hid_get_drvdata(hid); -+ __s32 cls = td->mtclass.name; - __s32 quirks = td->mtclass.quirks; - struct input_dev *input = field->hidinput->input; - -@@ -846,6 +848,15 @@ static void mt_process_mt_event(struct hid_device *hid, struct hid_field *field, - break; - - default: -+ /* -+ * For Win8 PTP touchpads we should only look at -+ * non finger/touch events in the first_packet of -+ * a (possible) multi-packet frame. -+ */ -+ if ((cls == MT_CLS_WIN_8 || cls == MT_CLS_WIN_8_DUAL) && -+ !first_packet) -+ return; -+ - if (usage->type) - input_event(input, usage->type, usage->code, - value); -@@ -866,6 +877,7 @@ static void mt_touch_report(struct hid_device *hid, struct hid_report *report) - struct mt_device *td = hid_get_drvdata(hid); - __s32 cls = td->mtclass.name; - struct hid_field *field; -+ bool first_packet; - unsigned count; - int r, n, scantime = 0; - -@@ -901,6 +913,7 @@ static void mt_touch_report(struct hid_device *hid, struct hid_report *report) - } - td->prev_scantime = scantime; - -+ first_packet = td->num_received == 0; - for (r = 0; r < report->maxfield; r++) { - field = report->field[r]; - count = field->report_count; -@@ -910,7 +923,7 @@ static void mt_touch_report(struct hid_device *hid, struct hid_report *report) - - for (n = 0; n < count; n++) - mt_process_mt_event(hid, field, &field->usage[n], -- field->value[n]); -+ field->value[n], first_packet); - } - - if (td->num_received >= td->num_expected) --- -2.14.3 - diff --git a/0002-ahci-Add-PCI-ids-for-Intel-Bay-Trail-Cherry-Trail-an.patch b/0002-ahci-Add-PCI-ids-for-Intel-Bay-Trail-Cherry-Trail-an.patch deleted file mode 100644 index f27812b85..000000000 --- a/0002-ahci-Add-PCI-ids-for-Intel-Bay-Trail-Cherry-Trail-an.patch +++ /dev/null @@ -1,33 +0,0 @@ -From eab582db4b6c04a20a8bd792faa9ebf7adf1ec17 Mon Sep 17 00:00:00 2001 -From: Hans de Goede <hdegoede@redhat.com> -Date: Mon, 27 Nov 2017 12:07:34 +0100 -Subject: [PATCH 2/3] ahci: Add PCI ids for Intel Bay Trail, Cherry Trail and - Apollo Lake AHCI - -Add PCI ids for Intel Bay Trail, Cherry Trail and Apollo Lake AHCI -SATA controllers. This commit is a preparation patch for allowing a -different default sata link powermanagement policy for mobile chipsets. - -Signed-off-by: Hans de Goede <hdegoede@redhat.com> ---- - drivers/ata/ahci.c | 4 ++++ - 1 file changed, 4 insertions(+) - -diff --git a/drivers/ata/ahci.c b/drivers/ata/ahci.c -index 9d842ff6ec51..844f697bedbf 100644 ---- a/drivers/ata/ahci.c -+++ b/drivers/ata/ahci.c -@@ -386,6 +386,10 @@ static const struct pci_device_id ahci_pci_tbl[] = { - { PCI_VDEVICE(INTEL, 0xa206), board_ahci }, /* Lewisburg RAID*/ - { PCI_VDEVICE(INTEL, 0xa252), board_ahci }, /* Lewisburg RAID*/ - { PCI_VDEVICE(INTEL, 0xa256), board_ahci }, /* Lewisburg RAID*/ -+ { PCI_VDEVICE(INTEL, 0x0f22), board_ahci }, /* Bay Trail AHCI */ -+ { PCI_VDEVICE(INTEL, 0x0f23), board_ahci }, /* Bay Trail AHCI */ -+ { PCI_VDEVICE(INTEL, 0x22a3), board_ahci }, /* Cherry Trail AHCI */ -+ { PCI_VDEVICE(INTEL, 0x5ae3), board_ahci }, /* Apollo Lake AHCI */ - - /* JMicron 360/1/3/5/6, match class to avoid IDE function */ - { PCI_VENDOR_ID_JMICRON, PCI_ANY_ID, PCI_ANY_ID, PCI_ANY_ID, --- -2.14.3 - diff --git a/0003-HID-multitouch-Combine-all-left-button-events-in-a-f.patch b/0003-HID-multitouch-Combine-all-left-button-events-in-a-f.patch deleted file mode 100644 index 7fda714cb..000000000 --- a/0003-HID-multitouch-Combine-all-left-button-events-in-a-f.patch +++ /dev/null @@ -1,78 +0,0 @@ -From 1719566899e5a69b4ba767beb07dab7ceb9ae5a8 Mon Sep 17 00:00:00 2001 -From: Hans de Goede <hdegoede@redhat.com> -Date: Wed, 22 Nov 2017 12:57:10 +0100 -Subject: [PATCH v2 3/3] HID: multitouch: Combine all left-button events in a - frame - -According to the Win8 Precision Touchpad spec, inside the HID_UP_BUTTON -usage-page usage 1 is for a clickpad getting clicked, 2 for an external -left button and 3 for an external right button. Since Linux uses -BTN_LEFT for a clickpad being clicked we end up mapping both usage 1 -and 2 to BTN_LEFT and if a single report contains both then we ended -up always reporting the value of both in a single SYN, e.g. : -BTN_LEFT 1, BTN_LEFT 0, SYN. This happens for example with Hantick -HTT5288 i2c mt touchpads. - -This commit fixes this by not immediately reporting left button when we -parse the report, but instead storing or-ing together the values and -reporting the result from mt_sync_frame() when we've a complete frame. - -Signed-off-by: Hans de Goede <hdegoede@redhat.com> -Reviewed-by: Benjamin Tissoires <benjamin.tissoires@redhat.com> -Signed-off-by: Jiri Kosina <jkosina@suse.cz> ---- - drivers/hid/hid-multitouch.c | 20 ++++++++++++++++++++ - 1 file changed, 20 insertions(+) - -diff --git a/drivers/hid/hid-multitouch.c b/drivers/hid/hid-multitouch.c -index 760c4a042e6a..76088f2cf598 100644 ---- a/drivers/hid/hid-multitouch.c -+++ b/drivers/hid/hid-multitouch.c -@@ -122,6 +122,7 @@ struct mt_device { - int scantime_index; /* scantime field index in the report */ - int scantime_val_index; /* scantime value index in the field */ - int prev_scantime; /* scantime reported in the previous packet */ -+ int left_button_state; /* left button state */ - unsigned last_slot_field; /* the last field of a slot */ - unsigned mt_report_id; /* the report ID of the multitouch device */ - unsigned long initial_quirks; /* initial quirks state */ -@@ -743,10 +744,16 @@ static void mt_complete_slot(struct mt_device *td, struct input_dev *input) - */ - static void mt_sync_frame(struct mt_device *td, struct input_dev *input) - { -+ __s32 cls = td->mtclass.name; -+ -+ if (cls == MT_CLS_WIN_8 || cls == MT_CLS_WIN_8_DUAL) -+ input_event(input, EV_KEY, BTN_LEFT, td->left_button_state); -+ - input_mt_sync_frame(input); - input_event(input, EV_MSC, MSC_TIMESTAMP, td->timestamp); - input_sync(input); - td->num_received = 0; -+ td->left_button_state = 0; - if (test_bit(MT_IO_FLAGS_ACTIVE_SLOTS, &td->mt_io_flags)) - set_bit(MT_IO_FLAGS_PENDING_SLOTS, &td->mt_io_flags); - else -@@ -857,6 +864,19 @@ static void mt_process_mt_event(struct hid_device *hid, struct hid_field *field, - !first_packet) - return; - -+ /* -+ * For Win8 PTP touchpads we map both the clickpad click -+ * and any "external" left buttons to BTN_LEFT if a -+ * device claims to have both we need to report 1 for -+ * BTN_LEFT if either is pressed, so we or all values -+ * together and report the result in mt_sync_frame(). -+ */ -+ if ((cls == MT_CLS_WIN_8 || cls == MT_CLS_WIN_8_DUAL) && -+ usage->type == EV_KEY && usage->code == BTN_LEFT) { -+ td->left_button_state |= value; -+ return; -+ } -+ - if (usage->type) - input_event(input, usage->type, usage->code, - value); --- -2.14.3 - diff --git a/0003-ahci-Allow-setting-a-default-LPM-policy-for-mobile-c.patch b/0003-ahci-Allow-setting-a-default-LPM-policy-for-mobile-c.patch deleted file mode 100644 index fe7edde8f..000000000 --- a/0003-ahci-Allow-setting-a-default-LPM-policy-for-mobile-c.patch +++ /dev/null @@ -1,274 +0,0 @@ -From 262135cf058c28d248b997bd11b2c124e27d8d47 Mon Sep 17 00:00:00 2001 -From: Hans de Goede <hdegoede@redhat.com> -Date: Mon, 27 Nov 2017 15:32:01 +0100 -Subject: [PATCH 3/3] ahci: Allow setting a default LPM policy for mobile - chipsets - -On many laptops setting a different LPM policy then unknown / -max_performance can lead to power-savings of 1.0 - 1.5 Watts (when idle). - -Modern ultrabooks idle around 6W (at 50% screen brightness), 1.0 - 1.5W -is a significant chunk of this. - -There are some performance / latency costs to enabling LPM by default, -so it is desirable to make it possible to set a different LPM policy -for mobile / laptop variants of chipsets / "South Bridges" vs their -desktop / server counterparts. Also enabling LPM by default is not -entirely without risk of regressions. At least min_power is known to -cause issues with some disks, including some reports of data corruption. - -This commits adds a new ahci.mobile_lpm_policy kernel cmdline option, -which defaults to a new SATA_MOBILE_LPM_POLICY Kconfig option so that -Linux distributions can choose to set a LPM policy for mobile chipsets -by default. - -The reason to have both a kernel cmdline option and a Kconfig default -value for it, is to allow easy overriding of the default to allow -trouble-shooting without needing to rebuild the kernel. - -Signed-off-by: Hans de Goede <hdegoede@redhat.com> ---- -Changes in v2: --Remove .config changes from the patch ---- - drivers/ata/Kconfig | 19 +++++++++++ - drivers/ata/ahci.c | 97 +++++++++++++++++++++++++++++++---------------------- - drivers/ata/ahci.h | 3 ++ - 3 files changed, 78 insertions(+), 41 deletions(-) - -diff --git a/drivers/ata/Kconfig b/drivers/ata/Kconfig -index cb5339166563..b3fad5663aeb 100644 ---- a/drivers/ata/Kconfig -+++ b/drivers/ata/Kconfig -@@ -92,6 +92,25 @@ config SATA_AHCI - - If unsure, say N. - -+config SATA_MOBILE_LPM_POLICY -+ int "Default SATA Link Power Management policy for mobile chipsets" -+ range 0 4 -+ default 0 -+ depends on SATA_AHCI -+ help -+ Select the Default SATA Link Power Management (LPM) policy to use -+ for mobile / laptop variants of chipsets / "South Bridges". -+ -+ The value set has the following meanings: -+ 0 => Keep firmware settings -+ 1 => Maximum performance -+ 2 => Medium power -+ 3 => Medium power with Device Initiated PM enabled -+ 4 => Minimum power -+ -+ Note "Minimum power" is known to cause issues, including disk -+ corruption, with some disks and should not be used. -+ - config SATA_AHCI_PLATFORM - tristate "Platform AHCI SATA support" - help -diff --git a/drivers/ata/ahci.c b/drivers/ata/ahci.c -index 844f697bedbf..8e910fae8892 100644 ---- a/drivers/ata/ahci.c -+++ b/drivers/ata/ahci.c -@@ -65,6 +65,7 @@ enum board_ids { - /* board IDs by feature in alphabetical order */ - board_ahci, - board_ahci_ign_iferr, -+ board_ahci_mobile, - board_ahci_nomsi, - board_ahci_noncq, - board_ahci_nosntf, -@@ -140,6 +141,13 @@ static const struct ata_port_info ahci_port_info[] = { - .udma_mask = ATA_UDMA6, - .port_ops = &ahci_ops, - }, -+ [board_ahci_mobile] = { -+ AHCI_HFLAGS (AHCI_HFLAG_IS_MOBILE), -+ .flags = AHCI_FLAG_COMMON, -+ .pio_mask = ATA_PIO4, -+ .udma_mask = ATA_UDMA6, -+ .port_ops = &ahci_ops, -+ }, - [board_ahci_nomsi] = { - AHCI_HFLAGS (AHCI_HFLAG_NO_MSI), - .flags = AHCI_FLAG_COMMON, -@@ -252,13 +260,13 @@ static const struct pci_device_id ahci_pci_tbl[] = { - { PCI_VDEVICE(INTEL, 0x2924), board_ahci }, /* ICH9 */ - { PCI_VDEVICE(INTEL, 0x2925), board_ahci }, /* ICH9 */ - { PCI_VDEVICE(INTEL, 0x2927), board_ahci }, /* ICH9 */ -- { PCI_VDEVICE(INTEL, 0x2929), board_ahci }, /* ICH9M */ -- { PCI_VDEVICE(INTEL, 0x292a), board_ahci }, /* ICH9M */ -- { PCI_VDEVICE(INTEL, 0x292b), board_ahci }, /* ICH9M */ -- { PCI_VDEVICE(INTEL, 0x292c), board_ahci }, /* ICH9M */ -- { PCI_VDEVICE(INTEL, 0x292f), board_ahci }, /* ICH9M */ -+ { PCI_VDEVICE(INTEL, 0x2929), board_ahci_mobile }, /* ICH9M */ -+ { PCI_VDEVICE(INTEL, 0x292a), board_ahci_mobile }, /* ICH9M */ -+ { PCI_VDEVICE(INTEL, 0x292b), board_ahci_mobile }, /* ICH9M */ -+ { PCI_VDEVICE(INTEL, 0x292c), board_ahci_mobile }, /* ICH9M */ -+ { PCI_VDEVICE(INTEL, 0x292f), board_ahci_mobile }, /* ICH9M */ - { PCI_VDEVICE(INTEL, 0x294d), board_ahci }, /* ICH9 */ -- { PCI_VDEVICE(INTEL, 0x294e), board_ahci }, /* ICH9M */ -+ { PCI_VDEVICE(INTEL, 0x294e), board_ahci_mobile }, /* ICH9M */ - { PCI_VDEVICE(INTEL, 0x502a), board_ahci }, /* Tolapai */ - { PCI_VDEVICE(INTEL, 0x502b), board_ahci }, /* Tolapai */ - { PCI_VDEVICE(INTEL, 0x3a05), board_ahci }, /* ICH10 */ -@@ -268,9 +276,9 @@ static const struct pci_device_id ahci_pci_tbl[] = { - { PCI_VDEVICE(INTEL, 0x3b23), board_ahci }, /* PCH AHCI */ - { PCI_VDEVICE(INTEL, 0x3b24), board_ahci }, /* PCH RAID */ - { PCI_VDEVICE(INTEL, 0x3b25), board_ahci }, /* PCH RAID */ -- { PCI_VDEVICE(INTEL, 0x3b29), board_ahci }, /* PCH M AHCI */ -+ { PCI_VDEVICE(INTEL, 0x3b29), board_ahci_mobile }, /* PCH M AHCI */ - { PCI_VDEVICE(INTEL, 0x3b2b), board_ahci }, /* PCH RAID */ -- { PCI_VDEVICE(INTEL, 0x3b2c), board_ahci }, /* PCH M RAID */ -+ { PCI_VDEVICE(INTEL, 0x3b2c), board_ahci_mobile }, /* PCH M RAID */ - { PCI_VDEVICE(INTEL, 0x3b2f), board_ahci }, /* PCH AHCI */ - { PCI_VDEVICE(INTEL, 0x19b0), board_ahci }, /* DNV AHCI */ - { PCI_VDEVICE(INTEL, 0x19b1), board_ahci }, /* DNV AHCI */ -@@ -293,9 +301,9 @@ static const struct pci_device_id ahci_pci_tbl[] = { - { PCI_VDEVICE(INTEL, 0x19cE), board_ahci }, /* DNV AHCI */ - { PCI_VDEVICE(INTEL, 0x19cF), board_ahci }, /* DNV AHCI */ - { PCI_VDEVICE(INTEL, 0x1c02), board_ahci }, /* CPT AHCI */ -- { PCI_VDEVICE(INTEL, 0x1c03), board_ahci }, /* CPT M AHCI */ -+ { PCI_VDEVICE(INTEL, 0x1c03), board_ahci_mobile }, /* CPT M AHCI */ - { PCI_VDEVICE(INTEL, 0x1c04), board_ahci }, /* CPT RAID */ -- { PCI_VDEVICE(INTEL, 0x1c05), board_ahci }, /* CPT M RAID */ -+ { PCI_VDEVICE(INTEL, 0x1c05), board_ahci_mobile }, /* CPT M RAID */ - { PCI_VDEVICE(INTEL, 0x1c06), board_ahci }, /* CPT RAID */ - { PCI_VDEVICE(INTEL, 0x1c07), board_ahci }, /* CPT RAID */ - { PCI_VDEVICE(INTEL, 0x1d02), board_ahci }, /* PBG AHCI */ -@@ -304,28 +312,28 @@ static const struct pci_device_id ahci_pci_tbl[] = { - { PCI_VDEVICE(INTEL, 0x2826), board_ahci }, /* PBG RAID */ - { PCI_VDEVICE(INTEL, 0x2323), board_ahci }, /* DH89xxCC AHCI */ - { PCI_VDEVICE(INTEL, 0x1e02), board_ahci }, /* Panther Point AHCI */ -- { PCI_VDEVICE(INTEL, 0x1e03), board_ahci }, /* Panther Point M AHCI */ -+ { PCI_VDEVICE(INTEL, 0x1e03), board_ahci_mobile }, /* Panther M AHCI */ - { PCI_VDEVICE(INTEL, 0x1e04), board_ahci }, /* Panther Point RAID */ - { PCI_VDEVICE(INTEL, 0x1e05), board_ahci }, /* Panther Point RAID */ - { PCI_VDEVICE(INTEL, 0x1e06), board_ahci }, /* Panther Point RAID */ -- { PCI_VDEVICE(INTEL, 0x1e07), board_ahci }, /* Panther Point M RAID */ -+ { PCI_VDEVICE(INTEL, 0x1e07), board_ahci_mobile }, /* Panther M RAID */ - { PCI_VDEVICE(INTEL, 0x1e0e), board_ahci }, /* Panther Point RAID */ - { PCI_VDEVICE(INTEL, 0x8c02), board_ahci }, /* Lynx Point AHCI */ -- { PCI_VDEVICE(INTEL, 0x8c03), board_ahci }, /* Lynx Point M AHCI */ -+ { PCI_VDEVICE(INTEL, 0x8c03), board_ahci_mobile }, /* Lynx M AHCI */ - { PCI_VDEVICE(INTEL, 0x8c04), board_ahci }, /* Lynx Point RAID */ -- { PCI_VDEVICE(INTEL, 0x8c05), board_ahci }, /* Lynx Point M RAID */ -+ { PCI_VDEVICE(INTEL, 0x8c05), board_ahci_mobile }, /* Lynx M RAID */ - { PCI_VDEVICE(INTEL, 0x8c06), board_ahci }, /* Lynx Point RAID */ -- { PCI_VDEVICE(INTEL, 0x8c07), board_ahci }, /* Lynx Point M RAID */ -+ { PCI_VDEVICE(INTEL, 0x8c07), board_ahci_mobile }, /* Lynx M RAID */ - { PCI_VDEVICE(INTEL, 0x8c0e), board_ahci }, /* Lynx Point RAID */ -- { PCI_VDEVICE(INTEL, 0x8c0f), board_ahci }, /* Lynx Point M RAID */ -- { PCI_VDEVICE(INTEL, 0x9c02), board_ahci }, /* Lynx Point-LP AHCI */ -- { PCI_VDEVICE(INTEL, 0x9c03), board_ahci }, /* Lynx Point-LP AHCI */ -- { PCI_VDEVICE(INTEL, 0x9c04), board_ahci }, /* Lynx Point-LP RAID */ -- { PCI_VDEVICE(INTEL, 0x9c05), board_ahci }, /* Lynx Point-LP RAID */ -- { PCI_VDEVICE(INTEL, 0x9c06), board_ahci }, /* Lynx Point-LP RAID */ -- { PCI_VDEVICE(INTEL, 0x9c07), board_ahci }, /* Lynx Point-LP RAID */ -- { PCI_VDEVICE(INTEL, 0x9c0e), board_ahci }, /* Lynx Point-LP RAID */ -- { PCI_VDEVICE(INTEL, 0x9c0f), board_ahci }, /* Lynx Point-LP RAID */ -+ { PCI_VDEVICE(INTEL, 0x8c0f), board_ahci_mobile }, /* Lynx M RAID */ -+ { PCI_VDEVICE(INTEL, 0x9c02), board_ahci_mobile }, /* Lynx LP AHCI */ -+ { PCI_VDEVICE(INTEL, 0x9c03), board_ahci_mobile }, /* Lynx LP AHCI */ -+ { PCI_VDEVICE(INTEL, 0x9c04), board_ahci_mobile }, /* Lynx LP RAID */ -+ { PCI_VDEVICE(INTEL, 0x9c05), board_ahci_mobile }, /* Lynx LP RAID */ -+ { PCI_VDEVICE(INTEL, 0x9c06), board_ahci_mobile }, /* Lynx LP RAID */ -+ { PCI_VDEVICE(INTEL, 0x9c07), board_ahci_mobile }, /* Lynx LP RAID */ -+ { PCI_VDEVICE(INTEL, 0x9c0e), board_ahci_mobile }, /* Lynx LP RAID */ -+ { PCI_VDEVICE(INTEL, 0x9c0f), board_ahci_mobile }, /* Lynx LP RAID */ - { PCI_VDEVICE(INTEL, 0x1f22), board_ahci }, /* Avoton AHCI */ - { PCI_VDEVICE(INTEL, 0x1f23), board_ahci }, /* Avoton AHCI */ - { PCI_VDEVICE(INTEL, 0x1f24), board_ahci }, /* Avoton RAID */ -@@ -353,26 +361,26 @@ static const struct pci_device_id ahci_pci_tbl[] = { - { PCI_VDEVICE(INTEL, 0x8d66), board_ahci }, /* Wellsburg RAID */ - { PCI_VDEVICE(INTEL, 0x8d6e), board_ahci }, /* Wellsburg RAID */ - { PCI_VDEVICE(INTEL, 0x23a3), board_ahci }, /* Coleto Creek AHCI */ -- { PCI_VDEVICE(INTEL, 0x9c83), board_ahci }, /* Wildcat Point-LP AHCI */ -- { PCI_VDEVICE(INTEL, 0x9c85), board_ahci }, /* Wildcat Point-LP RAID */ -- { PCI_VDEVICE(INTEL, 0x9c87), board_ahci }, /* Wildcat Point-LP RAID */ -- { PCI_VDEVICE(INTEL, 0x9c8f), board_ahci }, /* Wildcat Point-LP RAID */ -+ { PCI_VDEVICE(INTEL, 0x9c83), board_ahci_mobile }, /* Wildcat LP AHCI */ -+ { PCI_VDEVICE(INTEL, 0x9c85), board_ahci_mobile }, /* Wildcat LP RAID */ -+ { PCI_VDEVICE(INTEL, 0x9c87), board_ahci_mobile }, /* Wildcat LP RAID */ -+ { PCI_VDEVICE(INTEL, 0x9c8f), board_ahci_mobile }, /* Wildcat LP RAID */ - { PCI_VDEVICE(INTEL, 0x8c82), board_ahci }, /* 9 Series AHCI */ -- { PCI_VDEVICE(INTEL, 0x8c83), board_ahci }, /* 9 Series M AHCI */ -+ { PCI_VDEVICE(INTEL, 0x8c83), board_ahci_mobile }, /* 9 Series M AHCI */ - { PCI_VDEVICE(INTEL, 0x8c84), board_ahci }, /* 9 Series RAID */ -- { PCI_VDEVICE(INTEL, 0x8c85), board_ahci }, /* 9 Series M RAID */ -+ { PCI_VDEVICE(INTEL, 0x8c85), board_ahci_mobile }, /* 9 Series M RAID */ - { PCI_VDEVICE(INTEL, 0x8c86), board_ahci }, /* 9 Series RAID */ -- { PCI_VDEVICE(INTEL, 0x8c87), board_ahci }, /* 9 Series M RAID */ -+ { PCI_VDEVICE(INTEL, 0x8c87), board_ahci_mobile }, /* 9 Series M RAID */ - { PCI_VDEVICE(INTEL, 0x8c8e), board_ahci }, /* 9 Series RAID */ -- { PCI_VDEVICE(INTEL, 0x8c8f), board_ahci }, /* 9 Series M RAID */ -- { PCI_VDEVICE(INTEL, 0x9d03), board_ahci }, /* Sunrise Point-LP AHCI */ -- { PCI_VDEVICE(INTEL, 0x9d05), board_ahci }, /* Sunrise Point-LP RAID */ -- { PCI_VDEVICE(INTEL, 0x9d07), board_ahci }, /* Sunrise Point-LP RAID */ -+ { PCI_VDEVICE(INTEL, 0x8c8f), board_ahci_mobile }, /* 9 Series M RAID */ -+ { PCI_VDEVICE(INTEL, 0x9d03), board_ahci_mobile }, /* Sunrise LP AHCI */ -+ { PCI_VDEVICE(INTEL, 0x9d05), board_ahci_mobile }, /* Sunrise LP RAID */ -+ { PCI_VDEVICE(INTEL, 0x9d07), board_ahci_mobile }, /* Sunrise LP RAID */ - { PCI_VDEVICE(INTEL, 0xa102), board_ahci }, /* Sunrise Point-H AHCI */ -- { PCI_VDEVICE(INTEL, 0xa103), board_ahci }, /* Sunrise Point-H M AHCI */ -+ { PCI_VDEVICE(INTEL, 0xa103), board_ahci_mobile }, /* Sunrise M AHCI */ - { PCI_VDEVICE(INTEL, 0xa105), board_ahci }, /* Sunrise Point-H RAID */ - { PCI_VDEVICE(INTEL, 0xa106), board_ahci }, /* Sunrise Point-H RAID */ -- { PCI_VDEVICE(INTEL, 0xa107), board_ahci }, /* Sunrise Point-H M RAID */ -+ { PCI_VDEVICE(INTEL, 0xa107), board_ahci_mobile }, /* Sunrise M RAID */ - { PCI_VDEVICE(INTEL, 0xa10f), board_ahci }, /* Sunrise Point-H RAID */ - { PCI_VDEVICE(INTEL, 0x2822), board_ahci }, /* Lewisburg RAID*/ - { PCI_VDEVICE(INTEL, 0x2823), board_ahci }, /* Lewisburg AHCI*/ -@@ -386,10 +394,10 @@ static const struct pci_device_id ahci_pci_tbl[] = { - { PCI_VDEVICE(INTEL, 0xa206), board_ahci }, /* Lewisburg RAID*/ - { PCI_VDEVICE(INTEL, 0xa252), board_ahci }, /* Lewisburg RAID*/ - { PCI_VDEVICE(INTEL, 0xa256), board_ahci }, /* Lewisburg RAID*/ -- { PCI_VDEVICE(INTEL, 0x0f22), board_ahci }, /* Bay Trail AHCI */ -- { PCI_VDEVICE(INTEL, 0x0f23), board_ahci }, /* Bay Trail AHCI */ -- { PCI_VDEVICE(INTEL, 0x22a3), board_ahci }, /* Cherry Trail AHCI */ -- { PCI_VDEVICE(INTEL, 0x5ae3), board_ahci }, /* Apollo Lake AHCI */ -+ { PCI_VDEVICE(INTEL, 0x0f22), board_ahci_mobile }, /* Bay Trail AHCI */ -+ { PCI_VDEVICE(INTEL, 0x0f23), board_ahci_mobile }, /* Bay Trail AHCI */ -+ { PCI_VDEVICE(INTEL, 0x22a3), board_ahci_mobile }, /* Cherry Tr. AHCI */ -+ { PCI_VDEVICE(INTEL, 0x5ae3), board_ahci_mobile }, /* ApolloLake AHCI */ - - /* JMicron 360/1/3/5/6, match class to avoid IDE function */ - { PCI_VENDOR_ID_JMICRON, PCI_ANY_ID, PCI_ANY_ID, PCI_ANY_ID, -@@ -597,6 +605,9 @@ static int marvell_enable = 1; - module_param(marvell_enable, int, 0644); - MODULE_PARM_DESC(marvell_enable, "Marvell SATA via AHCI (1 = enabled)"); - -+static int mobile_lpm_policy = CONFIG_SATA_MOBILE_LPM_POLICY; -+module_param(mobile_lpm_policy, int, 0644); -+MODULE_PARM_DESC(mobile_lpm_policy, "Default LPM policy for mobile chipsets"); - - static void ahci_pci_save_initial_config(struct pci_dev *pdev, - struct ahci_host_priv *hpriv) -@@ -1732,6 +1743,10 @@ static int ahci_init_one(struct pci_dev *pdev, const struct pci_device_id *ent) - if (ap->flags & ATA_FLAG_EM) - ap->em_message_type = hpriv->em_msg_type; - -+ if ((hpriv->flags & AHCI_HFLAG_IS_MOBILE) && -+ mobile_lpm_policy >= ATA_LPM_UNKNOWN && -+ mobile_lpm_policy <= ATA_LPM_MIN_POWER) -+ ap->target_lpm_policy = mobile_lpm_policy; - - /* disabled/not-implemented port */ - if (!(hpriv->port_map & (1 << i))) -diff --git a/drivers/ata/ahci.h b/drivers/ata/ahci.h -index 749fd94441b0..a9d996e17d75 100644 ---- a/drivers/ata/ahci.h -+++ b/drivers/ata/ahci.h -@@ -251,6 +251,9 @@ enum { - AHCI_HFLAG_YES_ALPM = (1 << 23), /* force ALPM cap on */ - AHCI_HFLAG_NO_WRITE_TO_RO = (1 << 24), /* don't write to read - only registers */ -+ AHCI_HFLAG_IS_MOBILE = (1 << 25), /* mobile chipset, use -+ SATA_MOBILE_LPM_POLICY -+ as default lpm_policy */ - - /* ap->flags bits */ - --- -2.14.3 - diff --git a/0010-Input-silead-Add-support-for-capactive-home-button-f.patch b/0010-Input-silead-Add-support-for-capactive-home-button-f.patch deleted file mode 100644 index ce9be3760..000000000 --- a/0010-Input-silead-Add-support-for-capactive-home-button-f.patch +++ /dev/null @@ -1,114 +0,0 @@ -From 33fc16fd8aa3684e19b1d1f0a712593e2e570ab1 Mon Sep 17 00:00:00 2001 -From: Hans de Goede <hdegoede@redhat.com> -Date: Sun, 11 Jun 2017 21:24:50 +0200 -Subject: [PATCH 10/16] Input: silead: Add support for capactive home button - found on some x86 tablets - -On some x86 tablets with a silead touchscreen the windows logo on the -front is a capacitive home button. Touching this button results in a touch -with bits 12-15 of the Y coordinates set, while normally only the lower 12 -are used. - -Detect this and report a KEY_LEFTMETA press when this happens. Note for -now we only respond to the Y coordinate bits 12-15 containing 0x01, on some -tablets *without* a capacative button I've noticed these bits containing -0x04 when crossing the edges of the screen. - -Signed-off-by: Hans de Goede <hdegoede@redhat.com> ---- - drivers/input/touchscreen/silead.c | 45 ++++++++++++++++++++++++++++---------- - 1 file changed, 34 insertions(+), 11 deletions(-) - -diff --git a/drivers/input/touchscreen/silead.c b/drivers/input/touchscreen/silead.c -index 0dbcf105f7db..c0ba40c09699 100644 ---- a/drivers/input/touchscreen/silead.c -+++ b/drivers/input/touchscreen/silead.c -@@ -56,7 +56,7 @@ - #define SILEAD_POINT_Y_MSB_OFF 0x01 - #define SILEAD_POINT_X_OFF 0x02 - #define SILEAD_POINT_X_MSB_OFF 0x03 --#define SILEAD_TOUCH_ID_MASK 0xF0 -+#define SILEAD_EXTRA_DATA_MASK 0xF0 - - #define SILEAD_CMD_SLEEP_MIN 10000 - #define SILEAD_CMD_SLEEP_MAX 20000 -@@ -109,6 +109,8 @@ static int silead_ts_request_input_dev(struct silead_ts_data *data) - INPUT_MT_DIRECT | INPUT_MT_DROP_UNUSED | - INPUT_MT_TRACK); - -+ input_set_capability(data->input, EV_KEY, KEY_LEFTMETA); -+ - data->input->name = SILEAD_TS_NAME; - data->input->phys = "input/ts"; - data->input->id.bustype = BUS_I2C; -@@ -139,7 +141,8 @@ static void silead_ts_read_data(struct i2c_client *client) - struct input_dev *input = data->input; - struct device *dev = &client->dev; - u8 *bufp, buf[SILEAD_TS_DATA_LEN]; -- int touch_nr, error, i; -+ int touch_nr, softbutton, error, i; -+ bool softbutton_pressed = false; - - error = i2c_smbus_read_i2c_block_data(client, SILEAD_REG_DATA, - SILEAD_TS_DATA_LEN, buf); -@@ -148,21 +151,40 @@ static void silead_ts_read_data(struct i2c_client *client) - return; - } - -- touch_nr = buf[0]; -- if (touch_nr > data->max_fingers) { -+ if (buf[0] > data->max_fingers) { - dev_warn(dev, "More touches reported then supported %d > %d\n", -- touch_nr, data->max_fingers); -- touch_nr = data->max_fingers; -+ buf[0], data->max_fingers); -+ buf[0] = data->max_fingers; - } - -+ touch_nr = 0; - bufp = buf + SILEAD_POINT_DATA_LEN; -- for (i = 0; i < touch_nr; i++, bufp += SILEAD_POINT_DATA_LEN) { -- /* Bits 4-7 are the touch id */ -- data->id[i] = (bufp[SILEAD_POINT_X_MSB_OFF] & -- SILEAD_TOUCH_ID_MASK) >> 4; -- touchscreen_set_mt_pos(&data->pos[i], &data->prop, -+ for (i = 0; i < buf[0]; i++, bufp += SILEAD_POINT_DATA_LEN) { -+ softbutton = (bufp[SILEAD_POINT_Y_MSB_OFF] & -+ SILEAD_EXTRA_DATA_MASK) >> 4; -+ -+ if (softbutton) { -+ /* -+ * For now only respond to softbutton == 0x01, some -+ * tablets *without* a capacative button send 0x04 -+ * when crossing the edges of the screen. -+ */ -+ if (softbutton == 0x01) -+ softbutton_pressed = true; -+ -+ continue; -+ } -+ -+ /* -+ * Bits 4-7 are the touch id, note not all models have -+ * hardware touch ids so atm we don't use these. -+ */ -+ data->id[touch_nr] = (bufp[SILEAD_POINT_X_MSB_OFF] & -+ SILEAD_EXTRA_DATA_MASK) >> 4; -+ touchscreen_set_mt_pos(&data->pos[touch_nr], &data->prop, - get_unaligned_le16(&bufp[SILEAD_POINT_X_OFF]) & 0xfff, - get_unaligned_le16(&bufp[SILEAD_POINT_Y_OFF]) & 0xfff); -+ touch_nr++; - } - - input_mt_assign_slots(input, data->slots, data->pos, touch_nr, 0); -@@ -178,6 +200,7 @@ static void silead_ts_read_data(struct i2c_client *client) - } - - input_mt_sync_frame(input); -+ input_report_key(input, KEY_LEFTMETA, softbutton_pressed); - input_sync(input); - } - --- -2.13.0 - diff --git a/Add-option-to-automatically-enforce-module-signature.patch b/Add-option-to-automatically-enforce-module-signature.patch new file mode 100644 index 000000000..ebabac62e --- /dev/null +++ b/Add-option-to-automatically-enforce-module-signature.patch @@ -0,0 +1,217 @@ +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/PatchList.txt b/PatchList.txt index 0b358213a..c7945639d 100644 --- a/PatchList.txt +++ b/PatchList.txt @@ -1,52 +1,76 @@ -**** Backports and patches headed/already upsteram ***************************** +# This file contains patches that we intend to carry for longer than +# "Should show up in a stable release soonish" +# Some of these may eventually drop out -* cpupower-Fix-segfault-due-to-incorrect-getopt_long-a.patch (rhbz 1000439) - - Queued for next upstream release I believe. Fixes a segfault in cpupower +kbuild-AFTER_LINK.patch -* dm-cache-policy-mq_fix-large-scale-table-allocation-bug.patch (rhbz 993744) - - Still pending upstream +arm64-avoid-needing-console-to-enable-serial-console.patch -* ath9k_rx_dma_stop_check.patch (rhbz 892811) - - Fixes some DMA issue on specific hardware. Taken from -https://dev.openwrt.org/browser/trunk/package/mac80211/patches/552-ath9k_rx_dma_stop_check.patch?rev=34910 +geekbox-v4-device-tree-support.patch -* secure-modules.patch -* modsign-uefi.patch -* sb-hibernate.patch -* sysrq-secure-boot.patch - - Fedora secure boot support. - - Dear Matthew, this is your fault. Run sed already and get a new set out. +Initial-AllWinner-A64-and-PINE64-support.patch -**** Other stuff that should go upstream (in decreasing likelyhood) ************ +arm64-pcie-quirks-xgene.patch -* defaults-acpi-video.patch -* disable-i8042-check-on-apple-mac.patch -* no-pcspkr-modalias.patch -* die-floppy-die.patch - Fedora policy decisions - Turn into CONFIG_ options and upstream ? +usb-phy-tegra-Add-38.4MHz-clock-table-entry.patch -* input-kill-stupid-messages.patch -* silence-fbcon-logo.patch -* silence-noise.patch - Fedora local 'hush' patches. (TODO: push more upstream) +ARM-tegra-usb-no-reset.patch -* makefile-after_link.patch - Rolandware that is used by the debuginfo generation. - Possibly upstreamable ? +bcm283x-upstream-fixes.patch -* serial-460800.patch - Probably not upstreamable. - http://marc.theaimsgroup.com/?l=linux-kernel&m=112687270832687&w=2 - https://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=126403 - http://lkml.org/lkml/2006/8/2/208 +lib-cpumask-Make-CPUMASK_OFFSTACK-usable-without-deb.patch -******************************************************************************** +input-kill-stupid-messages.patch -'MUSTARD' patches. Fedora local patches that are very unlikely to go upstream. +die-floppy-die.patch -* crash-driver.patch - Unlikely to go upstream. - https://bugzilla.redhat.com/show_bug.cgi?id=492803 +no-pcspkr-modalias.patch + +silence-fbcon-logo.patch + +Kbuild-Add-an-option-to-enable-GCC-VTA.patch + +crash-driver.patch + +#Secure boot patches +Add-secure_modules-call.patch +PCI-Lock-down-BAR-access-when-module-security-is-ena.patch +x86-Lock-down-IO-port-access-when-module-security-is.patch +ACPI-Limit-access-to-custom_method.patch +asus-wmi-Restrict-debugfs-interface-when-module-load.patch +Restrict-dev-mem-and-dev-kmem-when-module-loading-is.patch +acpi-Ignore-acpi_rsdp-kernel-parameter-when-module-l.patch +kexec-Disable-at-runtime-if-the-kernel-enforces-modu.patch +x86-Restrict-MSR-access-when-module-loading-is-restr.patch +Add-option-to-automatically-enforce-module-signature.patch +efi-Disable-secure-boot-if-shim-is-in-insecure-mode.patch +efi-Add-EFI_SECURE_BOOT-bit.patch +hibernate-Disable-in-a-signed-modules-environment.patch +Add-EFI-signature-data-types.patch +Add-an-EFI-signature-blob-parser-and-key-loader.patch +KEYS-Add-a-system-blacklist-keyring.patch +MODSIGN-Import-certificates-from-UEFI-Secure-Boot.patch +MODSIGN-Support-not-importing-certs-from-db.patch +Add-sysrq-option-to-disable-secure-boot-mode.patch +kexec-uefi-copy-secure_boot-flag-in-boot-params.patch + +drm-i915-hush-check-crtc-state.patch + +disable-i8042-check-on-apple-mac.patch + +lis3-improve-handling-of-null-rate.patch + +scsi-sd_revalidate_disk-prevent-NULL-ptr-deref.patch + +criu-no-expert.patch + +ath9k-rx-dma-stop-check.patch + +xen-pciback-Don-t-disable-PCI_COMMAND-on-PCI-device-.patch + +Input-synaptics-pin-3-touches-when-the-firmware-repo.patch + +firmware-Drop-WARN-from-usermodehelper_read_trylock-.patch + +drm-i915-turn-off-wc-mmaps.patch -******************************************************************************** diff --git a/arm-crypto-sunxi-ss-Add-MODULE_ALIAS-to-sun4i-ss.patch b/arm-crypto-sunxi-ss-Add-MODULE_ALIAS-to-sun4i-ss.patch new file mode 100644 index 000000000..45941edd0 --- /dev/null +++ b/arm-crypto-sunxi-ss-Add-MODULE_ALIAS-to-sun4i-ss.patch @@ -0,0 +1,28 @@ +From 7a2e67bfa5316e267e782477ec880e2464fd682a Mon Sep 17 00:00:00 2001 +From: Peter Robinson <pbrobinson@gmail.com> +Date: Sun, 11 Feb 2018 21:28:41 +0000 +Subject: [PATCH] crypto: sunxi-ss: Add MODULE_ALIAS to sun4i-ss + +The MODULE_ALIAS is required to enable the sun4i-ss driver to load +automatically when built at a module. Tested on a Cubietruck. + +Signed-off-by: Peter Robinson <pbrobinson@gmail.com> +--- + drivers/crypto/sunxi-ss/sun4i-ss-core.c | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/drivers/crypto/sunxi-ss/sun4i-ss-core.c b/drivers/crypto/sunxi-ss/sun4i-ss-core.c +index 1547cbe13dc2..a81d89b3b7d8 100644 +--- a/drivers/crypto/sunxi-ss/sun4i-ss-core.c ++++ b/drivers/crypto/sunxi-ss/sun4i-ss-core.c +@@ -451,6 +451,7 @@ static struct platform_driver sun4i_ss_driver = { + + module_platform_driver(sun4i_ss_driver); + ++MODULE_ALIAS("platform:sun4i-ss"); + MODULE_DESCRIPTION("Allwinner Security System cryptographic accelerator"); + MODULE_LICENSE("GPL"); + MODULE_AUTHOR("Corentin LABBE <clabbe.montjoie@gmail.com>"); +-- +2.14.3 + diff --git a/arm-imx6-hummingboard2.patch b/arm-imx6-hummingboard2.patch deleted file mode 100644 index 9c55a7b81..000000000 --- a/arm-imx6-hummingboard2.patch +++ /dev/null @@ -1,902 +0,0 @@ -From e9e601215d294d473a593641b1ecfd1fa4586a90 Mon Sep 17 00:00:00 2001 -From: Peter Robinson <pbrobinson@gmail.com> -Date: Thu, 6 Apr 2017 13:52:54 +0100 -Subject: [PATCH 1/4] [RFC,v2,1/4] ARM: dts: imx6qdl: add HummingBoard2 boards - -From: Jon Nettleton <jon@solid-run.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 | 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 011808490fed..ccdff6650541 100644 ---- a/arch/arm/boot/dts/Makefile -+++ b/arch/arm/boot/dts/Makefile -@@ -353,6 +353,7 @@ dtb-$(CONFIG_SOC_IMX6Q) += \ - imx6dl-gw5903.dtb \ - imx6dl-gw5904.dtb \ - imx6dl-hummingboard.dtb \ -+ imx6dl-hummingboard2.dtb \ - imx6dl-icore.dtb \ - imx6dl-icore-rqs.dtb \ - imx6dl-nit6xlite.dtb \ -@@ -397,6 +398,7 @@ dtb-$(CONFIG_SOC_IMX6Q) += \ - imx6q-gw5904.dtb \ - imx6q-h100.dtb \ - imx6q-hummingboard.dtb \ -+ imx6q-hummingboard2.dtb \ - imx6q-icore.dtb \ - imx6q-icore-ofcap10.dtb \ - imx6q-icore-ofcap12.dtb \ -diff --git a/arch/arm/boot/dts/imx6dl-hummingboard2.dts b/arch/arm/boot/dts/imx6dl-hummingboard2.dts -new file mode 100644 -index 000000000000..990b5050de5b ---- /dev/null -+++ b/arch/arm/boot/dts/imx6dl-hummingboard2.dts -@@ -0,0 +1,52 @@ -+/* -+ * Device Tree file for SolidRun HummingBoard2 -+ * Copyright (C) 2015 Rabeeh Khoury <rabeeh@solid-run.com> -+ * Based on work by Russell King -+ * -+ * 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. -+ * -+ * 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 , 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 "imx6dl.dtsi" -+#include "imx6qdl-hummingboard2.dtsi" -+ -+/ { -+ model = "SolidRun HummingBoard2 Solo/DualLite"; -+ compatible = "solidrun,hummingboard2/dl", "fsl,imx6dl"; -+}; -diff --git a/arch/arm/boot/dts/imx6q-hummingboard2.dts b/arch/arm/boot/dts/imx6q-hummingboard2.dts -new file mode 100644 -index 000000000000..f5eec9163bb8 ---- /dev/null -+++ b/arch/arm/boot/dts/imx6q-hummingboard2.dts -@@ -0,0 +1,60 @@ -+/* -+ * Device Tree file for SolidRun HummingBoard2 -+ * Copyright (C) 2015 Rabeeh Khoury <rabeeh@solid-run.com> -+ * Based on work by Russell King -+ * -+ * 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. -+ * -+ * 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 , 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 "imx6q.dtsi" -+#include "imx6qdl-hummingboard2.dtsi" -+ -+/ { -+ model = "SolidRun HummingBoard2 Dual/Quad"; -+ compatible = "solidrun,hummingboard2/q", "fsl,imx6q"; -+}; -+ -+&sata { -+ status = "okay"; -+ fsl,transmit-level-mV = <1104>; -+ fsl,transmit-boost-mdB = <0>; -+ fsl,transmit-atten-16ths = <9>; -+ fsl,no-spread-spectrum; -+}; -diff --git a/arch/arm/boot/dts/imx6qdl-hummingboard2.dtsi b/arch/arm/boot/dts/imx6qdl-hummingboard2.dtsi -new file mode 100644 -index 000000000000..11b63f6f2b89 ---- /dev/null -+++ b/arch/arm/boot/dts/imx6qdl-hummingboard2.dtsi -@@ -0,0 +1,543 @@ -+/* -+ * Device Tree file for SolidRun HummingBoard2 -+ * Copyright (C) 2015 Rabeeh Khoury <rabeeh@solid-run.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. -+ * -+ * 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 "imx6qdl-microsom.dtsi" -+#include "imx6qdl-microsom-ar8035.dtsi" -+ -+/ { -+ chosen { -+ stdout-path = &uart1; -+ }; -+ -+ ir_recv: ir-receiver { -+ compatible = "gpio-ir-receiver"; -+ gpios = <&gpio7 9 1>; -+ pinctrl-names = "default"; -+ pinctrl-0 = <&pinctrl_hummingboard2_gpio7_9>; -+ 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"; -+ regulator-min-microvolt = <3300000>; -+ regulator-max-microvolt = <3300000>; -+ regulator-always-on; -+ }; -+ -+ reg_1p8v: regulator-1p8v { -+ compatible = "regulator-fixed"; -+ regulator-name = "1P8V"; -+ regulator-min-microvolt = <1800000>; -+ regulator-max-microvolt = <1800000>; -+ regulator-always-on; -+ }; -+ -+ 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: 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: 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: 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 { -+ audio-codec = <&sgtl5000>; -+ audio-routing = -+ "MIC_IN", "Mic Jack", -+ "Mic Jack", "Mic Bias", -+ "Headphone Jack", "HP_OUT"; -+ compatible = "fsl,imx-audio-sgtl5000"; -+ model = "On-board Codec"; -+ mux-ext-port = <5>; -+ mux-int-port = <1>; -+ ssi-controller = <&ssi1>; -+ }; -+}; -+ -+&audmux { -+ status = "okay"; -+}; -+ -+&ecspi2 { -+ pinctrl-names = "default"; -+ pinctrl-0 = <&pinctrl_hummingboard2_ecspi2>; -+ cs-gpios = <&gpio2 26 0>; -+ status = "okay"; -+}; -+ -+&hdmi { -+ pinctrl-names = "default"; -+ pinctrl-0 = <&pinctrl_hummingboard2_hdmi>; -+ ddc-i2c-bus = <&i2c2>; -+ status = "okay"; -+}; -+ -+&i2c1 { -+ clock-frequency = <100000>; -+ pinctrl-names = "default"; -+ pinctrl-0 = <&pinctrl_hummingboard2_i2c1>; -+ status = "okay"; -+ -+ pcf8523: rtc@68 { -+ compatible = "nxp,pcf8523"; -+ reg = <0x68>; -+ nxp,12p5_pf; -+ }; -+ -+ sgtl5000: codec@0a { -+ clocks = <&clks IMX6QDL_CLK_CKO>; -+ compatible = "fsl,sgtl5000"; -+ pinctrl-names = "default"; -+ pinctrl-0 = <&pinctrl_hummingboard2_sgtl5000>; -+ reg = <0x0a>; -+ VDDA-supply = <®_3p3v>; -+ VDDIO-supply = <®_3p3v>; -+ }; -+}; -+ -+&i2c2 { -+ clock-frequency = <100000>; -+ pinctrl-names = "default"; -+ pinctrl-0 = <&pinctrl_hummingboard2_i2c2>; -+ status = "okay"; -+}; -+ -+&i2c3 { -+ clock-frequency = <100000>; -+ pinctrl-names = "default"; -+ pinctrl-0 = <&pinctrl_hummingboard2_i2c3>; -+ status = "okay"; -+}; -+ -+&iomuxc { -+ pinctrl-names = "default"; -+ pinctrl-0 = <&pinctrl_hog>; -+ -+ hummingboard2 { -+ pinctrl_hog: hoggrp { -+ fsl,pins = < -+ /* -+ * 36 pin headers GPIO description. The pins -+ * numbering as following - -+ * -+ * 3.2v 5v 74 75 -+ * 73 72 71 70 -+ * 69 68 67 66 -+ * -+ * 77 78 79 76 -+ * 65 64 61 60 -+ * 53 52 51 50 -+ * 49 48 166 132 -+ * 95 94 90 91 -+ * GND 54 24 204 -+ * -+ * The GPIO numbers can be extracted using -+ * signal name from below. -+ * Example - -+ * MX6QDL_PAD_EIM_DA10__GPIO3_IO10 is -+ * GPIO(3,10) which is (3-1)*32+10 = gpio 74 -+ * -+ * i.e. The mapping of GPIO(X,Y) to Linux gpio -+ * number is : gpio number = (X-1) * 32 + Y -+ */ -+ /* DI1_PIN15 */ -+ MX6QDL_PAD_EIM_DA10__GPIO3_IO10 0x400130b1 -+ /* DI1_PIN02 */ -+ MX6QDL_PAD_EIM_DA11__GPIO3_IO11 0x400130b1 -+ /* DISP1_DATA00 */ -+ MX6QDL_PAD_EIM_DA9__GPIO3_IO09 0x400130b1 -+ /* DISP1_DATA01 */ -+ MX6QDL_PAD_EIM_DA8__GPIO3_IO08 0x400130b1 -+ /* DISP1_DATA02 */ -+ MX6QDL_PAD_EIM_DA7__GPIO3_IO07 0x400130b1 -+ /* DISP1_DATA03 */ -+ MX6QDL_PAD_EIM_DA6__GPIO3_IO06 0x400130b1 -+ /* DISP1_DATA04 */ -+ MX6QDL_PAD_EIM_DA5__GPIO3_IO05 0x400130b1 -+ /* DISP1_DATA05 */ -+ MX6QDL_PAD_EIM_DA4__GPIO3_IO04 0x400130b1 -+ /* DISP1_DATA06 */ -+ MX6QDL_PAD_EIM_DA3__GPIO3_IO03 0x400130b1 -+ /* DISP1_DATA07 */ -+ MX6QDL_PAD_EIM_DA2__GPIO3_IO02 0x400130b1 -+ /* DI1_D0_CS */ -+ MX6QDL_PAD_EIM_DA13__GPIO3_IO13 0x400130b1 -+ /* DI1_D1_CS */ -+ MX6QDL_PAD_EIM_DA14__GPIO3_IO14 0x400130b1 -+ /* DI1_PIN01 */ -+ MX6QDL_PAD_EIM_DA15__GPIO3_IO15 0x400130b1 -+ /* DI1_PIN03 */ -+ MX6QDL_PAD_EIM_DA12__GPIO3_IO12 0x400130b1 -+ /* DISP1_DATA08 */ -+ MX6QDL_PAD_EIM_DA1__GPIO3_IO01 0x400130b1 -+ /* DISP1_DATA09 */ -+ MX6QDL_PAD_EIM_DA0__GPIO3_IO00 0x400130b1 -+ /* DISP1_DATA10 */ -+ MX6QDL_PAD_EIM_EB1__GPIO2_IO29 0x400130b1 -+ /* DISP1_DATA11 */ -+ MX6QDL_PAD_EIM_EB0__GPIO2_IO28 0x400130b1 -+ /* DISP1_DATA12 */ -+ MX6QDL_PAD_EIM_A17__GPIO2_IO21 0x400130b1 -+ /* DISP1_DATA13 */ -+ MX6QDL_PAD_EIM_A18__GPIO2_IO20 0x400130b1 -+ /* DISP1_DATA14 */ -+ MX6QDL_PAD_EIM_A19__GPIO2_IO19 0x400130b1 -+ /* DISP1_DATA15 */ -+ MX6QDL_PAD_EIM_A20__GPIO2_IO18 0x400130b1 -+ /* DISP1_DATA16 */ -+ MX6QDL_PAD_EIM_A21__GPIO2_IO17 0x400130b1 -+ /* DISP1_DATA17 */ -+ MX6QDL_PAD_EIM_A22__GPIO2_IO16 0x400130b1 -+ /* DISP1_DATA18 */ -+ MX6QDL_PAD_EIM_A23__GPIO6_IO06 0x400130b1 -+ /* DISP1_DATA19 */ -+ MX6QDL_PAD_EIM_A24__GPIO5_IO04 0x400130b1 -+ /* DISP1_DATA20 */ -+ MX6QDL_PAD_EIM_D31__GPIO3_IO31 0x400130b1 -+ /* DISP1_DATA21 */ -+ MX6QDL_PAD_EIM_D30__GPIO3_IO30 0x400130b1 -+ /* DISP1_DATA22 */ -+ MX6QDL_PAD_EIM_D26__GPIO3_IO26 0x400130b1 -+ /* DISP1_DATA23 */ -+ MX6QDL_PAD_EIM_D27__GPIO3_IO27 0x400130b1 -+ /* DI1_DISP_CLK */ -+ MX6QDL_PAD_EIM_A16__GPIO2_IO22 0x400130b1 -+ /* SPDIF_IN */ -+ MX6QDL_PAD_ENET_RX_ER__GPIO1_IO24 0x400130b1 -+ /* SPDIF_OUT */ -+ MX6QDL_PAD_GPIO_17__GPIO7_IO12 0x400130b1 -+ -+ /* MikroBUS GPIO pin number 10 */ -+ MX6QDL_PAD_EIM_LBA__GPIO2_IO27 0x400130b1 -+ >; -+ }; -+ -+ 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 -+ >; -+ }; -+ -+ pinctrl_hummingboard2_hdmi: hummingboard2-hdmi { -+ fsl,pins = < -+ MX6QDL_PAD_KEY_ROW2__HDMI_TX_CEC_LINE 0x1f8b0 -+ >; -+ }; -+ -+ pinctrl_hummingboard2_i2c1: hummingboard2-i2c1 { -+ fsl,pins = < -+ MX6QDL_PAD_EIM_D21__I2C1_SCL 0x4001b8b1 -+ MX6QDL_PAD_EIM_D28__I2C1_SDA 0x4001b8b1 -+ >; -+ }; -+ -+ pinctrl_hummingboard2_i2c2: hummingboard2-i2c2 { -+ fsl,pins = < -+ MX6QDL_PAD_KEY_COL3__I2C2_SCL 0x4001b8b1 -+ MX6QDL_PAD_KEY_ROW3__I2C2_SDA 0x4001b8b1 -+ >; -+ }; -+ -+ pinctrl_hummingboard2_i2c3: hummingboard2-i2c3 { -+ fsl,pins = < -+ MX6QDL_PAD_EIM_D17__I2C3_SCL 0x4001b8b1 -+ MX6QDL_PAD_EIM_D18__I2C3_SDA 0x4001b8b1 -+ >; -+ }; -+ -+ 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 = < -+ MX6QDL_PAD_SD4_DAT3__GPIO2_IO11 0x1b0b1 -+ >; -+ }; -+ -+ pinctrl_hummingboard2_pwm1: pwm1grp { -+ fsl,pins = < -+ MX6QDL_PAD_DISP0_DAT8__PWM1_OUT 0x1b0b1 -+ >; -+ }; -+ -+ pinctrl_hummingboard2_sgtl5000: hummingboard2-sgtl5000 { -+ fsl,pins = < -+ MX6QDL_PAD_DISP0_DAT19__AUD5_RXD 0x130b0 -+ MX6QDL_PAD_KEY_COL0__AUD5_TXC 0x130b0 -+ MX6QDL_PAD_KEY_ROW0__AUD5_TXD 0x110b0 -+ MX6QDL_PAD_KEY_COL1__AUD5_TXFS 0x130b0 -+ MX6QDL_PAD_GPIO_5__CCM_CLKO1 0x130b0 -+ >; -+ }; -+ -+ pinctrl_hummingboard2_usbh1_vbus: hummingboard2-usbh1-vbus { -+ fsl,pins = <MX6QDL_PAD_GPIO_0__GPIO1_IO00 0x1b0b0>; -+ }; -+ -+ pinctrl_hummingboard2_usbh2_vbus: hummingboard2-usbh2-vbus { -+ fsl,pins = <MX6QDL_PAD_SD4_DAT5__GPIO2_IO13 0x1b0b0>; -+ }; -+ -+ pinctrl_hummingboard2_usbh3_vbus: hummingboard2-usbh3-vbus { -+ fsl,pins = <MX6QDL_PAD_SD4_CLK__GPIO7_IO10 0x1b0b0>; -+ }; -+ -+ pinctrl_hummingboard2_usbotg_id: hummingboard2-usbotg-id { -+ /* -+ * Similar to pinctrl_usbotg_2, but we want it -+ * pulled down for a fixed host connection. -+ */ -+ fsl,pins = <MX6QDL_PAD_GPIO_1__USB_OTG_ID 0x13059>; -+ }; -+ -+ pinctrl_hummingboard2_usbotg_vbus: hummingboard2-usbotg-vbus { -+ fsl,pins = <MX6QDL_PAD_EIM_D22__GPIO3_IO22 0x1b0b0>; -+ }; -+ -+ 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 -+ >; -+ }; -+ -+ pinctrl_hummingboard2_usdhc2: hummingboard2-usdhc2 { -+ fsl,pins = < -+ MX6QDL_PAD_SD2_CMD__SD2_CMD 0x17059 -+ MX6QDL_PAD_SD2_CLK__SD2_CLK 0x10059 -+ MX6QDL_PAD_SD2_DAT0__SD2_DATA0 0x17059 -+ MX6QDL_PAD_SD2_DAT1__SD2_DATA1 0x17059 -+ MX6QDL_PAD_SD2_DAT2__SD2_DATA2 0x17059 -+ MX6QDL_PAD_SD2_DAT3__SD2_DATA3 0x13059 -+ >; -+ }; -+ -+ pinctrl_hummingboard2_usdhc2_100mhz: hummingboard2-usdhc2-100mhz { -+ fsl,pins = < -+ MX6QDL_PAD_SD2_CMD__SD2_CMD 0x170b9 -+ MX6QDL_PAD_SD2_CLK__SD2_CLK 0x100b9 -+ MX6QDL_PAD_SD2_DAT0__SD2_DATA0 0x170b9 -+ MX6QDL_PAD_SD2_DAT1__SD2_DATA1 0x170b9 -+ MX6QDL_PAD_SD2_DAT2__SD2_DATA2 0x170b9 -+ MX6QDL_PAD_SD2_DAT3__SD2_DATA3 0x130b9 -+ >; -+ }; -+ -+ pinctrl_hummingboard2_usdhc2_200mhz: hummingboard2-usdhc2-200mhz { -+ fsl,pins = < -+ MX6QDL_PAD_SD2_CMD__SD2_CMD 0x170f9 -+ MX6QDL_PAD_SD2_CLK__SD2_CLK 0x100f9 -+ MX6QDL_PAD_SD2_DAT0__SD2_DATA0 0x170f9 -+ MX6QDL_PAD_SD2_DAT1__SD2_DATA1 0x170f9 -+ MX6QDL_PAD_SD2_DAT2__SD2_DATA2 0x170f9 -+ MX6QDL_PAD_SD2_DAT3__SD2_DATA3 0x130f9 -+ >; -+ }; -+ -+ pinctrl_hummingboard2_usdhc3: hummingboard2-usdhc3 { -+ fsl,pins = < -+ MX6QDL_PAD_SD3_CMD__SD3_CMD 0x17059 -+ MX6QDL_PAD_SD3_CLK__SD3_CLK 0x10059 -+ MX6QDL_PAD_SD3_DAT0__SD3_DATA0 0x17059 -+ MX6QDL_PAD_SD3_DAT1__SD3_DATA1 0x17059 -+ MX6QDL_PAD_SD3_DAT2__SD3_DATA2 0x17059 -+ MX6QDL_PAD_SD3_DAT3__SD3_DATA3 0x17059 -+ MX6QDL_PAD_SD3_DAT4__SD3_DATA4 0x17059 -+ MX6QDL_PAD_SD3_DAT5__SD3_DATA5 0x17059 -+ MX6QDL_PAD_SD3_DAT6__SD3_DATA6 0x17059 -+ MX6QDL_PAD_SD3_DAT7__SD3_DATA7 0x17059 -+ MX6QDL_PAD_SD3_RST__SD3_RESET 0x17059 -+ >; -+ }; -+ -+ pinctrl_hummingboard2_uart3: hummingboard2-uart3 { -+ fsl,pins = < -+ MX6QDL_PAD_EIM_D25__UART3_TX_DATA 0x1b0b1 -+ MX6QDL_PAD_EIM_D24__UART3_RX_DATA 0x40013000 -+ >; -+ }; -+ }; -+}; -+ -+&ldb { -+ status = "disabled"; -+ -+ lvds-channel@0 { -+ fsl,data-mapping = "spwg"; -+ fsl,data-width = <18>; -+ }; -+}; -+ -+&pcie { -+ pinctrl-names = "default"; -+ pinctrl-0 = <&pinctrl_hummingboard2_pcie_reset>; -+ reset-gpio = <&gpio2 11 0>; -+ status = "okay"; -+}; -+ -+&pwm1 { -+ pinctrl-names = "default"; -+ pinctrl-0 = <&pinctrl_hummingboard2_pwm1>; -+ status = "okay"; -+}; -+ -+&pwm3 { -+ status = "disabled"; -+}; -+ -+&pwm4 { -+ status = "disabled"; -+}; -+ -+&ssi1 { -+ status = "okay"; -+}; -+ -+&usbh1 { -+ disable-over-current; -+ vbus-supply = <®_usbh1_vbus>; -+ status = "okay"; -+}; -+ -+&usbotg { -+ disable-over-current; -+ pinctrl-names = "default"; -+ pinctrl-0 = <&pinctrl_hummingboard2_usbotg_id>; -+ vbus-supply = <®_usbotg_vbus>; -+ status = "okay"; -+}; -+ -+&usdhc2 { -+ pinctrl-names = "default", "state_100mhz", "state_200mhz"; -+ pinctrl-0 = < -+ &pinctrl_hummingboard2_usdhc2_aux -+ &pinctrl_hummingboard2_usdhc2 -+ >; -+ pinctrl-1 = < -+ &pinctrl_hummingboard2_usdhc2_aux -+ &pinctrl_hummingboard2_usdhc2_100mhz -+ >; -+ pinctrl-2 = < -+ &pinctrl_hummingboard2_usdhc2_aux -+ &pinctrl_hummingboard2_usdhc2_200mhz -+ >; -+ mmc-pwrseq = <&usdhc2_pwrseq>; -+ cd-gpios = <&gpio1 4 0>; -+ status = "okay"; -+}; -+ -+&usdhc3 { -+ pinctrl-names = "default"; -+ pinctrl-0 = < -+ &pinctrl_hummingboard2_usdhc3 -+ >; -+ vmmc-supply = <®_3p3v>; -+ vqmmc-supply = <®_3p3v>; -+ bus-width = <8>; -+ non-removable; -+ status = "okay"; -+}; -+ -+&uart3 { -+ pinctrl-names = "default"; -+ pinctrl-0 = <&pinctrl_hummingboard2_uart3>; -+ status = "okay"; -+}; --- -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/arm64-mmc-sdhci_f_sdh30-add-ACPI-support.patch b/arm64-mmc-sdhci_f_sdh30-add-ACPI-support.patch deleted file mode 100644 index 4eaf67e33..000000000 --- a/arm64-mmc-sdhci_f_sdh30-add-ACPI-support.patch +++ /dev/null @@ -1,146 +0,0 @@ -From patchwork Mon Jan 8 15:44:19 2018 -Content-Type: text/plain; charset="utf-8" -MIME-Version: 1.0 -Content-Transfer-Encoding: 7bit -Subject: [v2] mmc: sdhci_f_sdh30: add ACPI support -From: Ard Biesheuvel <ard.biesheuvel@linaro.org> -X-Patchwork-Id: 10149775 -Message-Id: <20180108154419.2821-1-ard.biesheuvel@linaro.org> -To: linux-mmc@vger.kernel.org -Cc: adrian.hunter@intel.com, ulf.hansson@linaro.org, - Ard Biesheuvel <ard.biesheuvel@linaro.org> -Date: Mon, 8 Jan 2018 15:44:19 +0000 - -The Fujitsu SDH30 SDHCI controller may be described as a SCX0002 ACPI -device on ACPI platforms incorporating the Socionext SynQuacer SoC. - -Given that mmc_of_parse() has already been made ACPI/DT agnostic, -making the SDH30 driver ACPI capable is actually rather simple: -all we need to do is make the call to sdhci_get_of_property() [which -does not set any properties we care about] and the clock handling -dependent on whether we are dealing with a DT device, and exposing -the ACPI id via the platform_driver struct and the module metadata. - -Signed-off-by: Ard Biesheuvel <ard.biesheuvel@linaro.org> -Acked-by: Adrian Hunter <adrian.hunter@intel.com> ---- -v2: make OF optional now that ACPI is supported - drop dev_of_node() check when disabling the clocks - those routines - tolerate NULL pointers so there's no need - - drivers/mmc/host/Kconfig | 2 +- - drivers/mmc/host/sdhci_f_sdh30.c | 52 +++++++++++++------- - 2 files changed, 35 insertions(+), 19 deletions(-) - -diff --git a/drivers/mmc/host/Kconfig b/drivers/mmc/host/Kconfig -index 567028c9219a..07ed947ed10b 100644 ---- a/drivers/mmc/host/Kconfig -+++ b/drivers/mmc/host/Kconfig -@@ -320,7 +320,7 @@ config MMC_SDHCI_BCM_KONA - config MMC_SDHCI_F_SDH30 - tristate "SDHCI support for Fujitsu Semiconductor F_SDH30" - depends on MMC_SDHCI_PLTFM -- depends on OF -+ depends on OF || ACPI - help - This selects the Secure Digital Host Controller Interface (SDHCI) - Needed by some Fujitsu SoC for MMC / SD / SDIO support. -diff --git a/drivers/mmc/host/sdhci_f_sdh30.c b/drivers/mmc/host/sdhci_f_sdh30.c -index 04ca0d33a521..485f7591fae4 100644 ---- a/drivers/mmc/host/sdhci_f_sdh30.c -+++ b/drivers/mmc/host/sdhci_f_sdh30.c -@@ -10,9 +10,11 @@ - * the Free Software Foundation, version 2 of the License. - */ - -+#include <linux/acpi.h> - #include <linux/err.h> - #include <linux/delay.h> - #include <linux/module.h> -+#include <linux/of.h> - #include <linux/property.h> - #include <linux/clk.h> - -@@ -146,7 +148,6 @@ static int sdhci_f_sdh30_probe(struct platform_device *pdev) - - platform_set_drvdata(pdev, host); - -- sdhci_get_of_property(pdev); - host->hw_name = "f_sdh30"; - host->ops = &sdhci_f_sdh30_ops; - host->irq = irq; -@@ -158,25 +159,29 @@ static int sdhci_f_sdh30_probe(struct platform_device *pdev) - goto err; - } - -- priv->clk_iface = devm_clk_get(&pdev->dev, "iface"); -- if (IS_ERR(priv->clk_iface)) { -- ret = PTR_ERR(priv->clk_iface); -- goto err; -- } -+ if (dev_of_node(dev)) { -+ sdhci_get_of_property(pdev); - -- ret = clk_prepare_enable(priv->clk_iface); -- if (ret) -- goto err; -+ priv->clk_iface = devm_clk_get(&pdev->dev, "iface"); -+ if (IS_ERR(priv->clk_iface)) { -+ ret = PTR_ERR(priv->clk_iface); -+ goto err; -+ } - -- priv->clk = devm_clk_get(&pdev->dev, "core"); -- if (IS_ERR(priv->clk)) { -- ret = PTR_ERR(priv->clk); -- goto err_clk; -- } -+ ret = clk_prepare_enable(priv->clk_iface); -+ if (ret) -+ goto err; - -- ret = clk_prepare_enable(priv->clk); -- if (ret) -- goto err_clk; -+ priv->clk = devm_clk_get(&pdev->dev, "core"); -+ if (IS_ERR(priv->clk)) { -+ ret = PTR_ERR(priv->clk); -+ goto err_clk; -+ } -+ -+ ret = clk_prepare_enable(priv->clk); -+ if (ret) -+ goto err_clk; -+ } - - /* init vendor specific regs */ - ctrl = sdhci_readw(host, F_SDH30_AHB_CONFIG); -@@ -226,16 +231,27 @@ static int sdhci_f_sdh30_remove(struct platform_device *pdev) - return 0; - } - -+#ifdef CONFIG_OF - static const struct of_device_id f_sdh30_dt_ids[] = { - { .compatible = "fujitsu,mb86s70-sdhci-3.0" }, - { /* sentinel */ } - }; - MODULE_DEVICE_TABLE(of, f_sdh30_dt_ids); -+#endif -+ -+#ifdef CONFIG_ACPI -+static const struct acpi_device_id f_sdh30_acpi_ids[] = { -+ { "SCX0002" }, -+ { /* sentinel */ } -+}; -+MODULE_DEVICE_TABLE(acpi, f_sdh30_acpi_ids); -+#endif - - static struct platform_driver sdhci_f_sdh30_driver = { - .driver = { - .name = "f_sdh30", -- .of_match_table = f_sdh30_dt_ids, -+ .of_match_table = of_match_ptr(f_sdh30_dt_ids), -+ .acpi_match_table = ACPI_PTR(f_sdh30_acpi_ids), - .pm = &sdhci_pltfm_pmops, - }, - .probe = sdhci_f_sdh30_probe, diff --git a/arm64-socionext-96b-enablement.patch b/arm64-socionext-96b-enablement.patch deleted file mode 100644 index d5d6cda86..000000000 --- a/arm64-socionext-96b-enablement.patch +++ /dev/null @@ -1,2679 +0,0 @@ -From e3dff048a10f16aa0fd32438442ce39558bbdbef Mon Sep 17 00:00:00 2001 -From: Jassi Brar <jaswinder.singh@linaro.org> -Date: Tue, 29 Aug 2017 22:45:59 +0530 -Subject: net: socionext: Add Synquacer NetSec driver - -This driver adds support for Socionext "netsec" IP Gigabit -Ethernet + PHY IP used in the Synquacer SC2A11 SoC. - -Signed-off-by: Jassi Brar <jaswinder.singh@linaro.org> -Signed-off-by: Ard Biesheuvel <ard.biesheuvel@linaro.org> ---- - drivers/net/ethernet/Kconfig | 1 + - drivers/net/ethernet/Makefile | 1 + - drivers/net/ethernet/socionext/Kconfig | 29 + - drivers/net/ethernet/socionext/Makefile | 1 + - drivers/net/ethernet/socionext/netsec/Makefile | 6 + - drivers/net/ethernet/socionext/netsec/netsec.h | 408 ++++++++++++++ - .../socionext/netsec/netsec_desc_ring_access.c | 623 +++++++++++++++++++++ - .../net/ethernet/socionext/netsec/netsec_ethtool.c | 78 +++ - .../ethernet/socionext/netsec/netsec_gmac_access.c | 330 +++++++++++ - .../net/ethernet/socionext/netsec/netsec_netdev.c | 540 ++++++++++++++++++ - .../ethernet/socionext/netsec/netsec_platform.c | 435 ++++++++++++++ - 11 files changed, 2452 insertions(+) - create mode 100644 drivers/net/ethernet/socionext/Kconfig - create mode 100644 drivers/net/ethernet/socionext/Makefile - create mode 100644 drivers/net/ethernet/socionext/netsec/Makefile - create mode 100644 drivers/net/ethernet/socionext/netsec/netsec.h - create mode 100644 drivers/net/ethernet/socionext/netsec/netsec_desc_ring_access.c - create mode 100644 drivers/net/ethernet/socionext/netsec/netsec_ethtool.c - create mode 100644 drivers/net/ethernet/socionext/netsec/netsec_gmac_access.c - create mode 100644 drivers/net/ethernet/socionext/netsec/netsec_netdev.c - create mode 100644 drivers/net/ethernet/socionext/netsec/netsec_platform.c - -diff --git a/drivers/net/ethernet/Kconfig b/drivers/net/ethernet/Kconfig -index c604213..d50519e 100644 ---- a/drivers/net/ethernet/Kconfig -+++ b/drivers/net/ethernet/Kconfig -@@ -170,6 +170,7 @@ source "drivers/net/ethernet/sis/Kconfig" - source "drivers/net/ethernet/sfc/Kconfig" - source "drivers/net/ethernet/sgi/Kconfig" - source "drivers/net/ethernet/smsc/Kconfig" -+source "drivers/net/ethernet/socionext/Kconfig" - source "drivers/net/ethernet/stmicro/Kconfig" - source "drivers/net/ethernet/sun/Kconfig" - source "drivers/net/ethernet/tehuti/Kconfig" -diff --git a/drivers/net/ethernet/Makefile b/drivers/net/ethernet/Makefile -index a0a03d4..6ae1bb9 100644 ---- a/drivers/net/ethernet/Makefile -+++ b/drivers/net/ethernet/Makefile -@@ -81,6 +81,7 @@ obj-$(CONFIG_SFC) += sfc/ - obj-$(CONFIG_SFC_FALCON) += sfc/falcon/ - obj-$(CONFIG_NET_VENDOR_SGI) += sgi/ - obj-$(CONFIG_NET_VENDOR_SMSC) += smsc/ -+obj-$(CONFIG_NET_VENDOR_SNI) += socionext/ - obj-$(CONFIG_NET_VENDOR_STMICRO) += stmicro/ - obj-$(CONFIG_NET_VENDOR_SUN) += sun/ - obj-$(CONFIG_NET_VENDOR_TEHUTI) += tehuti/ -diff --git a/drivers/net/ethernet/socionext/Kconfig b/drivers/net/ethernet/socionext/Kconfig -new file mode 100644 -index 0000000..a6dc195 ---- /dev/null -+++ b/drivers/net/ethernet/socionext/Kconfig -@@ -0,0 +1,29 @@ -+# -+# Socionext Network device configuration -+# -+ -+config NET_VENDOR_SNI -+ bool "Socionext devices" -+ default y -+ ---help--- -+ If you have a network (Ethernet) card belonging to this class, say Y. -+ -+ Note that the answer to this question doesn't directly affect the -+ the questions about Socionext cards. If you say Y, you will be asked -+ for your specific card in the following questions. -+ -+if NET_VENDOR_SNI -+ -+config SNI_NETSEC -+ tristate "NETSEC Driver Support" -+ depends on OF -+ select PHYLIB -+ select MII -+help -+ Enable to add support for the SocioNext NetSec Gigabit Ethernet -+ controller + PHY, as found on the Synquacer SC2A11 SoC -+ -+ To compile this driver as a module, choose M here: the module will be -+ called netsec. If unsure, say N. -+ -+endif # NET_VENDOR_SNI -diff --git a/drivers/net/ethernet/socionext/Makefile b/drivers/net/ethernet/socionext/Makefile -new file mode 100644 -index 0000000..9555899 ---- /dev/null -+++ b/drivers/net/ethernet/socionext/Makefile -@@ -0,0 +1 @@ -+obj-$(CONFIG_SNI_NETSEC) += netsec/ -diff --git a/drivers/net/ethernet/socionext/netsec/Makefile b/drivers/net/ethernet/socionext/netsec/Makefile -new file mode 100644 -index 0000000..18884ed ---- /dev/null -+++ b/drivers/net/ethernet/socionext/netsec/Makefile -@@ -0,0 +1,6 @@ -+obj-$(CONFIG_SNI_NETSEC) := netsec.o -+netsec-objs := netsec_desc_ring_access.o \ -+ netsec_netdev.o \ -+ netsec_ethtool.o \ -+ netsec_platform.o \ -+ netsec_gmac_access.o -diff --git a/drivers/net/ethernet/socionext/netsec/netsec.h b/drivers/net/ethernet/socionext/netsec/netsec.h -new file mode 100644 -index 0000000..3b97661 ---- /dev/null -+++ b/drivers/net/ethernet/socionext/netsec/netsec.h -@@ -0,0 +1,408 @@ -+/** -+ * netsec.h -+ * -+ * Copyright (C) 2013-2014 Fujitsu Semiconductor Limited. -+ * Copyright (C) 2014-2017 Linaro Ltd. All rights reserved. -+ * Andy Green <andy.green@linaro.org> -+ * Jassi Brar <jaswinder.singh@linaro.org> -+ * Ard Biesheuvel <ard.biesheuvel@linaro.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. -+ */ -+#ifndef NETSEC_INTERNAL_H -+#define NETSEC_INTERNAL_H -+ -+#include <linux/netdevice.h> -+#include <linux/types.h> -+#include <linux/device.h> -+#include <linux/phy.h> -+#include <linux/ethtool.h> -+#include <linux/of_address.h> -+#include <linux/of_mdio.h> -+#include <linux/etherdevice.h> -+#include <net/sock.h> -+ -+#define NETSEC_FLOW_CONTROL_START_THRESHOLD 36 -+#define NETSEC_FLOW_CONTROL_STOP_THRESHOLD 48 -+ -+#define NETSEC_CLK_MHZ 1000000 -+ -+#define NETSEC_RX_PKT_BUF_LEN 1522 -+#define NETSEC_RX_JUMBO_PKT_BUF_LEN 9022 -+ -+#define NETSEC_NETDEV_TX_PKT_SCAT_NUM_MAX 19 -+ -+#define DESC_NUM 128 -+ -+#define NETSEC_TX_SHIFT_OWN_FIELD 31 -+#define NETSEC_TX_SHIFT_LD_FIELD 30 -+#define NETSEC_TX_SHIFT_DRID_FIELD 24 -+#define NETSEC_TX_SHIFT_PT_FIELD 21 -+#define NETSEC_TX_SHIFT_TDRID_FIELD 16 -+#define NETSEC_TX_SHIFT_CC_FIELD 15 -+#define NETSEC_TX_SHIFT_FS_FIELD 9 -+#define NETSEC_TX_LAST 8 -+#define NETSEC_TX_SHIFT_CO 7 -+#define NETSEC_TX_SHIFT_SO 6 -+#define NETSEC_TX_SHIFT_TRS_FIELD 4 -+ -+#define NETSEC_RX_PKT_OWN_FIELD 31 -+#define NETSEC_RX_PKT_LD_FIELD 30 -+#define NETSEC_RX_PKT_SDRID_FIELD 24 -+#define NETSEC_RX_PKT_FR_FIELD 23 -+#define NETSEC_RX_PKT_ER_FIELD 21 -+#define NETSEC_RX_PKT_ERR_FIELD 16 -+#define NETSEC_RX_PKT_TDRID_FIELD 12 -+#define NETSEC_RX_PKT_FS_FIELD 9 -+#define NETSEC_RX_PKT_LS_FIELD 8 -+#define NETSEC_RX_PKT_CO_FIELD 6 -+ -+#define NETSEC_RX_PKT_ERR_MASK 3 -+ -+#define NETSEC_MAX_TX_PKT_LEN 1518 -+#define NETSEC_MAX_TX_JUMBO_PKT_LEN 9018 -+ -+enum netsec_rings { -+ NETSEC_RING_TX, -+ NETSEC_RING_RX -+}; -+ -+#define NETSEC_RING_GMAC 15 -+#define NETSEC_RING_MAX 1 -+ -+#define NETSEC_TCP_SEG_LEN_MAX 1460 -+#define NETSEC_TCP_JUMBO_SEG_LEN_MAX 8960 -+ -+#define NETSEC_RX_CKSUM_NOTAVAIL 0 -+#define NETSEC_RX_CKSUM_OK 1 -+#define NETSEC_RX_CKSUM_NG 2 -+ -+#define NETSEC_TOP_IRQ_REG_CODE_LOAD_END BIT(20) -+#define NETSEC_IRQ_TRANSITION_COMPLETE BIT(4) -+#define NETSEC_IRQ_RX BIT(1) -+#define NETSEC_IRQ_TX BIT(0) -+ -+#define NETSEC_IRQ_EMPTY BIT(17) -+#define NETSEC_IRQ_ERR BIT(16) -+#define NETSEC_IRQ_PKT_CNT BIT(15) -+#define NETSEC_IRQ_TIMEUP BIT(14) -+#define NETSEC_IRQ_RCV (NETSEC_IRQ_PKT_CNT | \ -+ NETSEC_IRQ_TIMEUP) -+ -+#define NETSEC_IRQ_TX_DONE BIT(15) -+#define NETSEC_IRQ_SND (NETSEC_IRQ_TX_DONE | \ -+ NETSEC_IRQ_TIMEUP) -+ -+#define NETSEC_MODE_TRANS_COMP_IRQ_N2T BIT(20) -+#define NETSEC_MODE_TRANS_COMP_IRQ_T2N BIT(19) -+ -+#define NETSEC_DESC_MIN 2 -+#define NETSEC_DESC_MAX 2047 -+#define NETSEC_INT_PKTCNT_MAX 2047 -+ -+#define NETSEC_FLOW_START_TH_MAX 95 -+#define NETSEC_FLOW_STOP_TH_MAX 95 -+#define NETSEC_FLOW_PAUSE_TIME_MIN 5 -+ -+#define NETSEC_CLK_EN_REG_DOM_ALL 0x3f -+ -+#define NETSEC_REG_TOP_STATUS 0x80 -+#define NETSEC_REG_TOP_INTEN 0x81 -+#define NETSEC_REG_INTEN_SET 0x8d -+#define NETSEC_REG_INTEN_CLR 0x8e -+#define NETSEC_REG_NRM_TX_STATUS 0x100 -+#define NETSEC_REG_NRM_TX_INTEN 0x101 -+#define NETSEC_REG_NRM_TX_INTEN_SET 0x10a -+#define NETSEC_REG_NRM_TX_INTEN_CLR 0x10b -+#define NETSEC_REG_NRM_RX_STATUS 0x110 -+#define NETSEC_REG_NRM_RX_INTEN 0x111 -+#define NETSEC_REG_NRM_RX_INTEN_SET 0x11a -+#define NETSEC_REG_NRM_RX_INTEN_CLR 0x11b -+#define NETSEC_REG_RESERVED_RX_DESC_START 0x122 -+#define NETSEC_REG_RESERVED_TX_DESC_START 0x132 -+#define NETSEC_REG_CLK_EN 0x40 -+#define NETSEC_REG_SOFT_RST 0x41 -+#define NETSEC_REG_PKT_CMD_BUF 0x34 -+#define NETSEC_REG_PKT_CTRL 0x50 -+#define NETSEC_REG_COM_INIT 0x48 -+#define NETSEC_REG_DMA_TMR_CTRL 0x83 -+#define NETSEC_REG_F_TAIKI_MC_VER 0x8b -+#define NETSEC_REG_F_TAIKI_VER 0x8c -+#define NETSEC_REG_DMA_HM_CTRL 0x85 -+#define NETSEC_REG_DMA_MH_CTRL 0x88 -+#define NETSEC_REG_ADDR_DIS_CORE 0x86 -+#define NETSEC_REG_DMAC_HM_CMD_BUF 0x84 -+#define NETSEC_REG_DMAC_MH_CMD_BUF 0x87 -+#define NETSEC_REG_NRM_TX_PKTCNT 0x104 -+#define NETSEC_REG_NRM_TX_DONE_TXINT_PKTCNT 0x106 -+#define NETSEC_REG_NRM_RX_RXINT_PKTCNT 0x116 -+#define NETSEC_REG_NRM_TX_TXINT_TMR 0x108 -+#define NETSEC_REG_NRM_RX_RXINT_TMR 0x118 -+#define NETSEC_REG_NRM_TX_DONE_PKTCNT 0x105 -+#define NETSEC_REG_NRM_RX_PKTCNT 0x115 -+#define NETSEC_REG_NRM_TX_TMR 0x107 -+#define NETSEC_REG_NRM_RX_TMR 0x117 -+#define NETSEC_REG_NRM_TX_DESC_START_UP 0x10d -+#define NETSEC_REG_NRM_TX_DESC_START_LW 0x102 -+#define NETSEC_REG_NRM_RX_DESC_START_UP 0x11d -+#define NETSEC_REG_NRM_RX_DESC_START_LW 0x112 -+#define NETSEC_REG_NRM_TX_CONFIG 0x10c -+#define NETSEC_REG_NRM_RX_CONFIG 0x11c -+#define MAC_REG_DATA 0x470 -+#define MAC_REG_CMD 0x471 -+#define MAC_REG_FLOW_TH 0x473 -+#define MAC_REG_INTF_SEL 0x475 -+#define MAC_REG_DESC_INIT 0x47f -+#define MAC_REG_DESC_SOFT_RST 0x481 -+#define NETSEC_REG_MODE_TRANS_COMP_STATUS 0x140 -+#define GMAC_REG_MCR 0x0000 -+#define GMAC_REG_MFFR 0x0004 -+#define GMAC_REG_GAR 0x0010 -+#define GMAC_REG_GDR 0x0014 -+#define GMAC_REG_FCR 0x0018 -+#define GMAC_REG_BMR 0x1000 -+#define GMAC_REG_RDLAR 0x100c -+#define GMAC_REG_TDLAR 0x1010 -+#define GMAC_REG_OMR 0x1018 -+ -+#define NETSEC_PKT_CTRL_REG_MODE_NRM BIT(28) -+#define NETSEC_PKT_CTRL_REG_EN_JUMBO BIT(27) -+#define NETSEC_PKT_CTRL_REG_LOG_CHKSUM_ER BIT(3) -+#define NETSEC_PKT_CTRL_REG_LOG_HD_INCOMPLETE BIT(2) -+#define NETSEC_PKT_CTRL_REG_LOG_HD_ER BIT(1) -+#define NETSEC_PKT_CTRL_REG_DRP_NO_MATCH BIT(0) -+ -+#define NETSEC_CLK_EN_REG_DOM_G BIT(5) -+#define NETSEC_CLK_EN_REG_DOM_C BIT(1) -+#define NETSEC_CLK_EN_REG_DOM_D BIT(0) -+ -+#define NETSEC_COM_INIT_REG_DB BIT(2) -+#define NETSEC_COM_INIT_REG_CLS BIT(1) -+#define NETSEC_COM_INIT_REG_ALL (NETSEC_COM_INIT_REG_CLS | \ -+ NETSEC_COM_INIT_REG_DB) -+ -+#define NETSEC_SOFT_RST_REG_RESET 0 -+#define NETSEC_SOFT_RST_REG_RUN BIT(31) -+ -+#define NETSEC_DMA_CTRL_REG_STOP 1 -+#define MH_CTRL__MODE_TRANS BIT(20) -+ -+#define NETSEC_GMAC_CMD_ST_READ 0 -+#define NETSEC_GMAC_CMD_ST_WRITE BIT(28) -+#define NETSEC_GMAC_CMD_ST_BUSY BIT(31) -+ -+#define NETSEC_GMAC_BMR_REG_COMMON 0x00412080 -+#define NETSEC_GMAC_BMR_REG_RESET 0x00020181 -+#define NETSEC_GMAC_BMR_REG_SWR 0x00000001 -+ -+#define NETSEC_GMAC_OMR_REG_ST BIT(13) -+#define NETSEC_GMAC_OMR_REG_SR BIT(1) -+ -+#define NETSEC_GMAC_MCR_REG_IBN BIT(30) -+#define NETSEC_GMAC_MCR_REG_CST BIT(25) -+#define NETSEC_GMAC_MCR_REG_JE BIT(20) -+#define NETSEC_MCR_PS BIT(15) -+#define NETSEC_GMAC_MCR_REG_FES BIT(14) -+#define NETSEC_GMAC_MCR_REG_FULL_DUPLEX_COMMON 0x0000280c -+#define NETSEC_GMAC_MCR_REG_HALF_DUPLEX_COMMON 0x0001a00c -+ -+#define NETSEC_FCR_RFE BIT(2) -+#define NETSEC_FCR_TFE BIT(1) -+ -+#define NETSEC_GMAC_GAR_REG_GW BIT(1) -+#define NETSEC_GMAC_GAR_REG_GB BIT(0) -+ -+#define NETSEC_GMAC_GAR_REG_SHIFT_PA 11 -+#define NETSEC_GMAC_GAR_REG_SHIFT_GR 6 -+#define GMAC_REG_SHIFT_CR_GAR 2 -+ -+#define NETSEC_GMAC_GAR_REG_CR_25_35_MHZ 2 -+#define NETSEC_GMAC_GAR_REG_CR_35_60_MHZ 3 -+#define NETSEC_GMAC_GAR_REG_CR_60_100_MHZ 0 -+#define NETSEC_GMAC_GAR_REG_CR_100_150_MHZ 1 -+#define NETSEC_GMAC_GAR_REG_CR_150_250_MHZ 4 -+#define NETSEC_GMAC_GAR_REG_CR_250_300_MHZ 5 -+ -+#define NETSEC_GMAC_RDLAR_REG_COMMON 0x18000 -+#define NETSEC_GMAC_TDLAR_REG_COMMON 0x1c000 -+ -+#define NETSEC_REG_NETSEC_VER_F_TAIKI 0x50000 -+ -+#define NETSEC_REG_DESC_RING_CONFIG_CFG_UP BIT(31) -+#define NETSEC_REG_DESC_RING_CONFIG_CH_RST BIT(30) -+#define NETSEC_REG_DESC_TMR_MODE 4 -+#define NETSEC_REG_DESC_ENDIAN 0 -+ -+#define NETSEC_MAC_DESC_SOFT_RST_SOFT_RST 1 -+#define NETSEC_MAC_DESC_INIT_REG_INIT 1 -+ -+#define NETSEC_EEPROM_MAC_ADDRESS 0x00 -+#define NETSEC_EEPROM_HM_ME_ADDRESS_H 0x08 -+#define NETSEC_EEPROM_HM_ME_ADDRESS_L 0x0C -+#define NETSEC_EEPROM_HM_ME_SIZE 0x10 -+#define NETSEC_EEPROM_MH_ME_ADDRESS_H 0x14 -+#define NETSEC_EEPROM_MH_ME_ADDRESS_L 0x18 -+#define NETSEC_EEPROM_MH_ME_SIZE 0x1C -+#define NETSEC_EEPROM_PKT_ME_ADDRESS 0x20 -+#define NETSEC_EEPROM_PKT_ME_SIZE 0x24 -+ -+/* this is used to interpret a register layout */ -+struct netsec_pkt_ctrlaram { -+ u8 log_chksum_er_flag:1; -+ u8 log_hd_imcomplete_flag:1; -+ u8 log_hd_er_flag:1; -+}; -+ -+struct netsec_param { -+ struct netsec_pkt_ctrlaram pkt_ctrlaram; -+ bool use_jumbo_pkt_flag; -+}; -+ -+struct netsec_mac_mode { -+ u16 flow_start_th; -+ u16 flow_stop_th; -+ u16 pause_time; -+ bool flow_ctrl_enable_flag; -+}; -+ -+struct netsec_desc_ring { -+ spinlock_t spinlock_desc; /* protect descriptor access */ -+ phys_addr_t desc_phys; -+ struct netsec_frag_info *frag; -+ struct sk_buff **priv; -+ void *ring_vaddr; -+ enum netsec_rings id; -+ int len; -+ u16 tx_done_num; -+ u16 rx_num; -+ u16 head; -+ u16 tail; -+ bool running; -+ bool full; -+}; -+ -+struct netsec_frag_info { -+ dma_addr_t dma_addr; -+ void *addr; -+ u16 len; -+}; -+ -+struct netsec_priv { -+ struct netsec_desc_ring desc_ring[NETSEC_RING_MAX + 1]; -+ struct ethtool_coalesce et_coalesce; -+ struct netsec_mac_mode mac_mode; -+ struct netsec_param param; -+ struct napi_struct napi; -+ phy_interface_t phy_interface; -+ spinlock_t tx_queue_lock; /* protect transmit queue */ -+ struct netsec_frag_info tx_info[MAX_SKB_FRAGS]; -+ struct net_device *ndev; -+ struct device_node *phy_np; -+ struct phy_device *phydev; -+ struct mii_bus *mii_bus; -+ void __iomem *ioaddr; -+ const void *eeprom_base; -+ struct device *dev; -+ struct clk *clk[3]; -+ u32 rx_pkt_buf_len; -+ u32 msg_enable; -+ u32 freq; -+ int actual_link_speed; -+ int clock_count; -+ bool rx_cksum_offload_flag; -+ bool actual_duplex; -+ bool irq_registered; -+}; -+ -+struct netsec_tx_de { -+ u32 attr; -+ u32 data_buf_addr_up; -+ u32 data_buf_addr_lw; -+ u32 buf_len_info; -+}; -+ -+struct netsec_rx_de { -+ u32 attr; -+ u32 data_buf_addr_up; -+ u32 data_buf_addr_lw; -+ u32 buf_len_info; -+}; -+ -+struct netsec_tx_pkt_ctrl { -+ u16 tcp_seg_len; -+ bool tcp_seg_offload_flag; -+ bool cksum_offload_flag; -+}; -+ -+struct netsec_rx_pkt_info { -+ int rx_cksum_result; -+ int err_code; -+ bool is_fragmented; -+ bool err_flag; -+}; -+ -+struct netsec_skb_cb { -+ bool is_rx; -+}; -+ -+static inline void netsec_writel(struct netsec_priv *priv, -+ u32 reg_addr, u32 val) -+{ -+ writel_relaxed(val, priv->ioaddr + (reg_addr << 2)); -+} -+ -+static inline u32 netsec_readl(struct netsec_priv *priv, u32 reg_addr) -+{ -+ return readl_relaxed(priv->ioaddr + (reg_addr << 2)); -+} -+ -+static inline void netsec_mark_skb_type(struct sk_buff *skb, bool is_rx) -+{ -+ struct netsec_skb_cb *cb = (struct netsec_skb_cb *)skb->cb; -+ -+ cb->is_rx = is_rx; -+} -+ -+static inline bool skb_is_rx(struct sk_buff *skb) -+{ -+ struct netsec_skb_cb *cb = (struct netsec_skb_cb *)skb->cb; -+ -+ return cb->is_rx; -+} -+ -+extern const struct net_device_ops netsec_netdev_ops; -+extern const struct ethtool_ops netsec_ethtool_ops; -+ -+int netsec_start_gmac(struct netsec_priv *priv); -+int netsec_stop_gmac(struct netsec_priv *priv); -+int netsec_mii_register(struct netsec_priv *priv); -+void netsec_mii_unregister(struct netsec_priv *priv); -+int netsec_start_desc_ring(struct netsec_priv *priv, enum netsec_rings id); -+void netsec_stop_desc_ring(struct netsec_priv *priv, enum netsec_rings id); -+u16 netsec_get_rx_num(struct netsec_priv *priv); -+u16 netsec_get_tx_avail_num(struct netsec_priv *priv); -+int netsec_clean_tx_desc_ring(struct netsec_priv *priv); -+int netsec_clean_rx_desc_ring(struct netsec_priv *priv); -+int netsec_set_tx_pkt_data(struct netsec_priv *priv, -+ const struct netsec_tx_pkt_ctrl *tx_ctrl, -+ u8 count_frags, const struct netsec_frag_info *info, -+ struct sk_buff *skb); -+int netsec_get_rx_pkt_data(struct netsec_priv *priv, -+ struct netsec_rx_pkt_info *rxpi, -+ struct netsec_frag_info *frag, u16 *len, -+ struct sk_buff **skb); -+void netsec_ring_irq_enable(struct netsec_priv *priv, -+ enum netsec_rings id, u32 i); -+void netsec_ring_irq_disable(struct netsec_priv *priv, -+ enum netsec_rings id, u32 i); -+int netsec_alloc_desc_ring(struct netsec_priv *priv, enum netsec_rings id); -+void netsec_free_desc_ring(struct netsec_priv *priv, -+ struct netsec_desc_ring *desc); -+int netsec_setup_rx_desc(struct netsec_priv *priv, -+ struct netsec_desc_ring *desc); -+int netsec_netdev_napi_poll(struct napi_struct *napi_p, int budget); -+ -+#endif /* NETSEC_INTERNAL_H */ -diff --git a/drivers/net/ethernet/socionext/netsec/netsec_desc_ring_access.c b/drivers/net/ethernet/socionext/netsec/netsec_desc_ring_access.c -new file mode 100644 -index 0000000..a4e56cd ---- /dev/null -+++ b/drivers/net/ethernet/socionext/netsec/netsec_desc_ring_access.c -@@ -0,0 +1,623 @@ -+/** -+ * drivers/net/ethernet/socionext/netsec/netsec_desc_ring_access.c -+ * -+ * Copyright (C) 2013-2014 Fujitsu Semiconductor Limited. -+ * Copyright (C) 2014-2017 Linaro Ltd. All rights reserved. -+ * Andy Green <andy.green@linaro.org> -+ * Jassi Brar <jaswinder.singh@linaro.org> -+ * Ard Biesheuvel <ard.biesheuvel@linaro.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. -+ */ -+ -+#include <linux/spinlock.h> -+#include <linux/dma-mapping.h> -+ -+#include "netsec.h" -+ -+static const u32 ads_irq_set[] = { -+ NETSEC_REG_NRM_TX_INTEN_SET, -+ NETSEC_REG_NRM_RX_INTEN_SET, -+}; -+ -+static const u32 desc_ring_irq_inten_clr_reg_addr[] = { -+ NETSEC_REG_NRM_TX_INTEN_CLR, -+ NETSEC_REG_NRM_RX_INTEN_CLR, -+}; -+ -+static const u32 int_tmr_reg_addr[] = { -+ NETSEC_REG_NRM_TX_TXINT_TMR, -+ NETSEC_REG_NRM_RX_RXINT_TMR, -+}; -+ -+static const u32 rx_pkt_cnt_reg_addr[] = { -+ 0, -+ NETSEC_REG_NRM_RX_PKTCNT, -+}; -+ -+static const u32 tx_pkt_cnt_reg_addr[] = { -+ NETSEC_REG_NRM_TX_PKTCNT, -+ 0, -+}; -+ -+static const u32 int_pkt_cnt_reg_addr[] = { -+ NETSEC_REG_NRM_TX_DONE_TXINT_PKTCNT, -+ NETSEC_REG_NRM_RX_RXINT_PKTCNT, -+}; -+ -+static const u32 tx_done_pkt_addr[] = { -+ NETSEC_REG_NRM_TX_DONE_PKTCNT, -+ 0, -+}; -+ -+static const u32 netsec_desc_mask[] = { -+ [NETSEC_RING_TX] = NETSEC_GMAC_OMR_REG_ST, -+ [NETSEC_RING_RX] = NETSEC_GMAC_OMR_REG_SR -+}; -+ -+void netsec_ring_irq_enable(struct netsec_priv *priv, -+ enum netsec_rings id, u32 irqf) -+{ -+ netsec_writel(priv, ads_irq_set[id], irqf); -+} -+ -+void netsec_ring_irq_disable(struct netsec_priv *priv, -+ enum netsec_rings id, u32 irqf) -+{ -+ netsec_writel(priv, desc_ring_irq_inten_clr_reg_addr[id], irqf); -+} -+ -+static struct sk_buff *alloc_rx_pkt_buf(struct netsec_priv *priv, -+ struct netsec_frag_info *info) -+{ -+ struct sk_buff *skb; -+ -+ if (device_get_dma_attr(priv->dev) == DEV_DMA_COHERENT) { -+ skb = netdev_alloc_skb_ip_align(priv->ndev, info->len); -+ } else { -+ info->len = L1_CACHE_ALIGN(info->len); -+ skb = netdev_alloc_skb(priv->ndev, info->len); -+ } -+ if (!skb) -+ return NULL; -+ -+ netsec_mark_skb_type(skb, NETSEC_RING_RX); -+ info->addr = skb->data; -+ info->dma_addr = dma_map_single(priv->dev, info->addr, info->len, -+ DMA_FROM_DEVICE); -+ if (dma_mapping_error(priv->dev, info->dma_addr)) { -+ dev_kfree_skb(skb); -+ return NULL; -+ } -+ return skb; -+} -+ -+int netsec_alloc_desc_ring(struct netsec_priv *priv, enum netsec_rings id) -+{ -+ struct netsec_desc_ring *desc = &priv->desc_ring[id]; -+ int ret = 0; -+ -+ desc->id = id; -+ desc->len = sizeof(struct netsec_tx_de); /* rx and tx desc same size */ -+ -+ spin_lock_init(&desc->spinlock_desc); -+ -+ desc->ring_vaddr = dma_zalloc_coherent(priv->dev, desc->len * DESC_NUM, -+ &desc->desc_phys, GFP_KERNEL); -+ if (!desc->ring_vaddr) { -+ ret = -ENOMEM; -+ goto err; -+ } -+ -+ desc->frag = kcalloc(DESC_NUM, sizeof(*desc->frag), GFP_KERNEL); -+ if (!desc->frag) { -+ ret = -ENOMEM; -+ goto err; -+ } -+ -+ desc->priv = kcalloc(DESC_NUM, sizeof(struct sk_buff *), GFP_KERNEL); -+ if (!desc->priv) { -+ ret = -ENOMEM; -+ goto err; -+ } -+ -+ return 0; -+ -+err: -+ netsec_free_desc_ring(priv, desc); -+ -+ return ret; -+} -+ -+static void netsec_uninit_pkt_desc_ring(struct netsec_priv *priv, -+ struct netsec_desc_ring *desc) -+{ -+ struct netsec_frag_info *frag; -+ u32 status; -+ u16 idx; -+ -+ for (idx = 0; idx < DESC_NUM; idx++) { -+ frag = &desc->frag[idx]; -+ if (!frag->addr) -+ continue; -+ -+ status = *(u32 *)(desc->ring_vaddr + desc->len * idx); -+ -+ dma_unmap_single(priv->dev, frag->dma_addr, frag->len, -+ skb_is_rx(desc->priv[idx]) ? DMA_FROM_DEVICE : -+ DMA_TO_DEVICE); -+ if ((status >> NETSEC_TX_LAST) & 1) -+ dev_kfree_skb(desc->priv[idx]); -+ } -+ -+ memset(desc->frag, 0, sizeof(struct netsec_frag_info) * DESC_NUM); -+ memset(desc->priv, 0, sizeof(struct sk_buff *) * DESC_NUM); -+ memset(desc->ring_vaddr, 0, desc->len * DESC_NUM); -+} -+ -+void netsec_free_desc_ring(struct netsec_priv *priv, -+ struct netsec_desc_ring *desc) -+{ -+ if (desc->ring_vaddr && desc->frag && desc->priv) -+ netsec_uninit_pkt_desc_ring(priv, desc); -+ -+ if (desc->ring_vaddr) { -+ dma_free_coherent(priv->dev, desc->len * DESC_NUM, -+ desc->ring_vaddr, desc->desc_phys); -+ desc->ring_vaddr = NULL; -+ } -+ kfree(desc->frag); -+ desc->frag = NULL; -+ kfree(desc->priv); -+ desc->priv = NULL; -+} -+ -+static void netsec_set_rx_de(struct netsec_priv *priv, -+ struct netsec_desc_ring *desc, u16 idx, -+ const struct netsec_frag_info *info, -+ struct sk_buff *skb) -+{ -+ struct netsec_rx_de *de = desc->ring_vaddr + desc->len * idx; -+ u32 attr = (1 << NETSEC_RX_PKT_OWN_FIELD) | -+ (1 << NETSEC_RX_PKT_FS_FIELD) | -+ (1 << NETSEC_RX_PKT_LS_FIELD); -+ -+ if (idx == DESC_NUM - 1) -+ attr |= (1 << NETSEC_RX_PKT_LD_FIELD); -+ -+ de->data_buf_addr_up = upper_32_bits(info->dma_addr); -+ de->data_buf_addr_lw = lower_32_bits(info->dma_addr); -+ de->buf_len_info = info->len; -+ /* desc->attr makes the descriptor live, so it must be physically -+ * written last after the rest of the descriptor body is already there -+ */ -+ dma_wmb(); -+ de->attr = attr; -+ -+ desc->frag[idx].dma_addr = info->dma_addr; -+ desc->frag[idx].addr = info->addr; -+ desc->frag[idx].len = info->len; -+ -+ desc->priv[idx] = skb; -+} -+ -+int netsec_setup_rx_desc(struct netsec_priv *priv, -+ struct netsec_desc_ring *desc) -+{ -+ struct netsec_frag_info info; -+ struct sk_buff *skb; -+ int n; -+ -+ info.len = priv->rx_pkt_buf_len; -+ -+ for (n = 0; n < DESC_NUM; n++) { -+ skb = alloc_rx_pkt_buf(priv, &info); -+ if (!skb) { -+ netsec_uninit_pkt_desc_ring(priv, desc); -+ return -ENOMEM; -+ } -+ netsec_set_rx_de(priv, desc, n, &info, skb); -+ } -+ -+ return 0; -+} -+ -+static void netsec_set_tx_desc_entry(struct netsec_priv *priv, -+ struct netsec_desc_ring *desc, -+ const struct netsec_tx_pkt_ctrl *tx_ctrl, -+ bool first_flag, bool last_flag, -+ const struct netsec_frag_info *frag, -+ struct sk_buff *skb) -+{ -+ struct netsec_tx_de *tx_desc_entry; -+ int idx = desc->head; -+ u32 attr; -+ -+ tx_desc_entry = desc->ring_vaddr + (desc->len * idx); -+ -+ attr = (1 << NETSEC_TX_SHIFT_OWN_FIELD) | -+ (desc->id << NETSEC_TX_SHIFT_DRID_FIELD) | -+ (1 << NETSEC_TX_SHIFT_PT_FIELD) | -+ (NETSEC_RING_GMAC << NETSEC_TX_SHIFT_TDRID_FIELD) | -+ (first_flag << NETSEC_TX_SHIFT_FS_FIELD) | -+ (last_flag << NETSEC_TX_LAST) | -+ (tx_ctrl->cksum_offload_flag << NETSEC_TX_SHIFT_CO) | -+ (tx_ctrl->tcp_seg_offload_flag << NETSEC_TX_SHIFT_SO) | -+ (1 << NETSEC_TX_SHIFT_TRS_FIELD); -+ if (idx == DESC_NUM - 1) -+ attr |= (1 << NETSEC_TX_SHIFT_LD_FIELD); -+ -+ tx_desc_entry->data_buf_addr_up = upper_32_bits(frag->dma_addr); -+ tx_desc_entry->data_buf_addr_lw = lower_32_bits(frag->dma_addr); -+ tx_desc_entry->buf_len_info = (tx_ctrl->tcp_seg_len << 16) | frag->len; -+ /* desc->attr makes the descriptor live, so it must be physically -+ * written last after the rest of the descriptor body is already there -+ */ -+ dma_wmb(); -+ tx_desc_entry->attr = attr; -+ -+ desc->frag[idx] = *frag; -+ desc->priv[idx] = skb; -+} -+ -+static void netsec_get_rx_de(struct netsec_priv *priv, -+ struct netsec_desc_ring *desc, u16 idx, -+ struct netsec_rx_pkt_info *rxpi, -+ struct netsec_frag_info *frag, u16 *len, -+ struct sk_buff **skb) -+{ -+ struct netsec_rx_de de = {}; -+ -+ *rxpi = (struct netsec_rx_pkt_info){}; -+ memcpy(&de, desc->ring_vaddr + desc->len * idx, desc->len); -+ -+ dev_dbg(priv->dev, "%08x\n", *(u32 *)&de); -+ *len = de.buf_len_info >> 16; -+ -+ rxpi->is_fragmented = (de.attr >> NETSEC_RX_PKT_FR_FIELD) & 1; -+ rxpi->err_flag = (de.attr >> NETSEC_RX_PKT_ER_FIELD) & 1; -+ rxpi->rx_cksum_result = (de.attr >> NETSEC_RX_PKT_CO_FIELD) & 3; -+ rxpi->err_code = (de.attr >> NETSEC_RX_PKT_ERR_FIELD) & -+ NETSEC_RX_PKT_ERR_MASK; -+ *frag = desc->frag[idx]; -+ *skb = desc->priv[idx]; -+} -+ -+static void netsec_inc_desc_head_idx(struct netsec_priv *priv, -+ struct netsec_desc_ring *desc, u16 inc) -+{ -+ u32 sum; -+ -+ sum = desc->head + inc; -+ -+ if (sum >= DESC_NUM) -+ sum -= DESC_NUM; -+ -+ desc->head = sum; -+ desc->full = desc->head == desc->tail; -+} -+ -+static void netsec_inc_desc_tail_idx(struct netsec_priv *priv, -+ struct netsec_desc_ring *desc) -+{ -+ u32 sum; -+ -+ sum = desc->tail + 1; -+ -+ if (sum >= DESC_NUM) -+ sum -= DESC_NUM; -+ -+ desc->tail = sum; -+ desc->full = false; -+} -+ -+static u16 netsec_get_tx_avail_num_sub(struct netsec_priv *priv, -+ const struct netsec_desc_ring *desc) -+{ -+ if (desc->full) -+ return 0; -+ -+ if (desc->tail > desc->head) -+ return desc->tail - desc->head; -+ -+ return DESC_NUM + desc->tail - desc->head; -+} -+ -+static u16 netsec_get_tx_done_num_sub(struct netsec_priv *priv, -+ struct netsec_desc_ring *desc) -+{ -+ desc->tx_done_num += netsec_readl(priv, tx_done_pkt_addr[desc->id]); -+ -+ return desc->tx_done_num; -+} -+ -+static int netsec_set_irq_coalesce_param(struct netsec_priv *priv, -+ enum netsec_rings id) -+{ -+ int max_frames, tmr; -+ -+ switch (id) { -+ case NETSEC_RING_TX: -+ max_frames = priv->et_coalesce.tx_max_coalesced_frames; -+ tmr = priv->et_coalesce.tx_coalesce_usecs; -+ break; -+ case NETSEC_RING_RX: -+ max_frames = priv->et_coalesce.rx_max_coalesced_frames; -+ tmr = priv->et_coalesce.rx_coalesce_usecs; -+ break; -+ default: -+ return -EINVAL; -+ } -+ -+ netsec_writel(priv, int_pkt_cnt_reg_addr[id], max_frames); -+ netsec_writel(priv, int_tmr_reg_addr[id], ((tmr != 0) << 31) | tmr); -+ -+ return 0; -+} -+ -+int netsec_start_desc_ring(struct netsec_priv *priv, enum netsec_rings id) -+{ -+ struct netsec_desc_ring *desc = &priv->desc_ring[id]; -+ int ret = 0; -+ -+ spin_lock_bh(&desc->spinlock_desc); -+ -+ if (desc->running) { -+ ret = -EBUSY; -+ goto err; -+ } -+ -+ switch (desc->id) { -+ case NETSEC_RING_RX: -+ netsec_writel(priv, ads_irq_set[id], NETSEC_IRQ_RCV); -+ break; -+ case NETSEC_RING_TX: -+ netsec_writel(priv, ads_irq_set[id], NETSEC_IRQ_EMPTY); -+ break; -+ } -+ -+ netsec_set_irq_coalesce_param(priv, desc->id); -+ desc->running = true; -+ -+err: -+ spin_unlock_bh(&desc->spinlock_desc); -+ -+ return ret; -+} -+ -+void netsec_stop_desc_ring(struct netsec_priv *priv, enum netsec_rings id) -+{ -+ struct netsec_desc_ring *desc = &priv->desc_ring[id]; -+ -+ spin_lock_bh(&desc->spinlock_desc); -+ if (desc->running) -+ netsec_writel(priv, desc_ring_irq_inten_clr_reg_addr[id], -+ NETSEC_IRQ_RCV | NETSEC_IRQ_EMPTY | -+ NETSEC_IRQ_SND); -+ -+ desc->running = false; -+ spin_unlock_bh(&desc->spinlock_desc); -+} -+ -+u16 netsec_get_rx_num(struct netsec_priv *priv) -+{ -+ struct netsec_desc_ring *desc = &priv->desc_ring[NETSEC_RING_RX]; -+ u32 result; -+ -+ spin_lock(&desc->spinlock_desc); -+ if (desc->running) { -+ result = netsec_readl(priv, -+ rx_pkt_cnt_reg_addr[NETSEC_RING_RX]); -+ desc->rx_num += result; -+ if (result) -+ netsec_inc_desc_head_idx(priv, desc, result); -+ } -+ spin_unlock(&desc->spinlock_desc); -+ -+ return desc->rx_num; -+} -+ -+u16 netsec_get_tx_avail_num(struct netsec_priv *priv) -+{ -+ struct netsec_desc_ring *desc = &priv->desc_ring[NETSEC_RING_TX]; -+ u16 result; -+ -+ spin_lock(&desc->spinlock_desc); -+ -+ if (!desc->running) { -+ netif_err(priv, drv, priv->ndev, -+ "%s: not running tx desc\n", __func__); -+ result = 0; -+ goto err; -+ } -+ -+ result = netsec_get_tx_avail_num_sub(priv, desc); -+ -+err: -+ spin_unlock(&desc->spinlock_desc); -+ -+ return result; -+} -+ -+int netsec_clean_tx_desc_ring(struct netsec_priv *priv) -+{ -+ struct netsec_desc_ring *desc = &priv->desc_ring[NETSEC_RING_TX]; -+ unsigned int pkts = 0, bytes = 0; -+ struct netsec_frag_info *frag; -+ struct netsec_tx_de *entry; -+ bool is_last; -+ -+ spin_lock(&desc->spinlock_desc); -+ -+ netsec_get_tx_done_num_sub(priv, desc); -+ -+ while ((desc->tail != desc->head || desc->full) && desc->tx_done_num) { -+ frag = &desc->frag[desc->tail]; -+ entry = desc->ring_vaddr + desc->len * desc->tail; -+ is_last = (entry->attr >> NETSEC_TX_LAST) & 1; -+ -+ dma_unmap_single(priv->dev, frag->dma_addr, frag->len, -+ DMA_TO_DEVICE); -+ if (is_last) { -+ pkts++; -+ bytes += desc->priv[desc->tail]->len; -+ dev_kfree_skb(desc->priv[desc->tail]); -+ } -+ *frag = (struct netsec_frag_info){}; -+ netsec_inc_desc_tail_idx(priv, desc); -+ -+ if (is_last) -+ desc->tx_done_num--; -+ } -+ -+ spin_unlock(&desc->spinlock_desc); -+ -+ priv->ndev->stats.tx_packets += pkts; -+ priv->ndev->stats.tx_bytes += bytes; -+ -+ netdev_completed_queue(priv->ndev, pkts, bytes); -+ -+ return 0; -+} -+ -+int netsec_clean_rx_desc_ring(struct netsec_priv *priv) -+{ -+ struct netsec_desc_ring *desc = &priv->desc_ring[NETSEC_RING_RX]; -+ -+ spin_lock(&desc->spinlock_desc); -+ -+ while (desc->full || (desc->tail != desc->head)) { -+ netsec_set_rx_de(priv, desc, desc->tail, -+ &desc->frag[desc->tail], -+ desc->priv[desc->tail]); -+ desc->rx_num--; -+ netsec_inc_desc_tail_idx(priv, desc); -+ } -+ -+ spin_unlock(&desc->spinlock_desc); -+ -+ return 0; -+} -+ -+int netsec_set_tx_pkt_data(struct netsec_priv *priv, -+ const struct netsec_tx_pkt_ctrl *tx_ctrl, -+ u8 count_frags, const struct netsec_frag_info *info, -+ struct sk_buff *skb) -+{ -+ struct netsec_desc_ring *desc; -+ u32 sum_len = 0; -+ unsigned int i; -+ int ret = 0; -+ -+ if (tx_ctrl->tcp_seg_offload_flag && !tx_ctrl->cksum_offload_flag) -+ return -EINVAL; -+ -+ if (tx_ctrl->tcp_seg_offload_flag) { -+ if (tx_ctrl->tcp_seg_len == 0) -+ return -EINVAL; -+ -+ if (priv->param.use_jumbo_pkt_flag) { -+ if (tx_ctrl->tcp_seg_len > NETSEC_TCP_JUMBO_SEG_LEN_MAX) -+ return -EINVAL; -+ } else { -+ if (tx_ctrl->tcp_seg_len > NETSEC_TCP_SEG_LEN_MAX) -+ return -EINVAL; -+ } -+ } else { -+ if (tx_ctrl->tcp_seg_len) -+ return -EINVAL; -+ } -+ -+ if (!count_frags) -+ return -ERANGE; -+ -+ for (i = 0; i < count_frags; i++) { -+ if ((info[i].len == 0) || (info[i].len > 0xffff)) { -+ netif_err(priv, drv, priv->ndev, -+ "%s: bad info len\n", __func__); -+ return -EINVAL; -+ } -+ sum_len += info[i].len; -+ } -+ -+ if (!tx_ctrl->tcp_seg_offload_flag) { -+ if (priv->param.use_jumbo_pkt_flag) { -+ if (sum_len > NETSEC_MAX_TX_JUMBO_PKT_LEN) -+ return -EINVAL; -+ } else { -+ if (sum_len > NETSEC_MAX_TX_PKT_LEN) -+ return -EINVAL; -+ } -+ } -+ -+ desc = &priv->desc_ring[NETSEC_RING_TX]; -+ spin_lock(&desc->spinlock_desc); -+ -+ if (!desc->running) { -+ ret = -ENODEV; -+ goto end; -+ } -+ -+ dma_rmb(); /* we need to see a consistent view of pending tx count */ -+ if (count_frags > netsec_get_tx_avail_num_sub(priv, desc)) { -+ ret = -EBUSY; -+ goto end; -+ } -+ -+ for (i = 0; i < count_frags; i++) { -+ netsec_set_tx_desc_entry(priv, desc, tx_ctrl, i == 0, -+ i == count_frags - 1, &info[i], skb); -+ netsec_inc_desc_head_idx(priv, desc, 1); -+ } -+ -+ dma_wmb(); /* ensure the descriptor is flushed */ -+ netsec_writel(priv, tx_pkt_cnt_reg_addr[NETSEC_RING_TX], 1); -+ -+end: -+ spin_unlock(&desc->spinlock_desc); -+ -+ return ret; -+} -+ -+int netsec_get_rx_pkt_data(struct netsec_priv *priv, -+ struct netsec_rx_pkt_info *rxpi, -+ struct netsec_frag_info *frag, u16 *len, -+ struct sk_buff **skb) -+{ -+ struct netsec_desc_ring *desc = &priv->desc_ring[NETSEC_RING_RX]; -+ struct netsec_frag_info info; -+ struct sk_buff *tmp_skb; -+ int ret = 0; -+ -+ spin_lock(&desc->spinlock_desc); -+ -+ if (desc->rx_num == 0) { -+ dev_err(priv->dev, "%s 0 len rx\n", __func__); -+ ret = -EINVAL; -+ goto err; -+ } -+ -+ info.len = priv->rx_pkt_buf_len; -+ dma_rmb(); /* we need to ensure we only see current data in descriptor */ -+ tmp_skb = alloc_rx_pkt_buf(priv, &info); -+ if (!tmp_skb) { -+ netsec_set_rx_de(priv, desc, desc->tail, -+ &desc->frag[desc->tail], -+ desc->priv[desc->tail]); -+ ret = -ENOMEM; -+ } else { -+ netsec_get_rx_de(priv, desc, desc->tail, rxpi, frag, len, skb); -+ netsec_set_rx_de(priv, desc, desc->tail, &info, tmp_skb); -+ } -+ -+ netsec_inc_desc_tail_idx(priv, desc); -+ desc->rx_num--; -+ -+err: -+ spin_unlock(&desc->spinlock_desc); -+ -+ return ret; -+} -diff --git a/drivers/net/ethernet/socionext/netsec/netsec_ethtool.c b/drivers/net/ethernet/socionext/netsec/netsec_ethtool.c -new file mode 100644 -index 0000000..45830fe ---- /dev/null -+++ b/drivers/net/ethernet/socionext/netsec/netsec_ethtool.c -@@ -0,0 +1,78 @@ -+/** -+ * drivers/net/ethernet/socionext/netsec/netsec_ethtool.c -+ * -+ * Copyright (C) 2013-2014 Fujitsu Semiconductor Limited. -+ * Copyright (C) 2014-2017 Linaro Ltd. All rights reserved. -+ * Andy Green <andy.green@linaro.org> -+ * Jassi Brar <jaswinder.singh@linaro.org> -+ * Ard Biesheuvel <ard.biesheuvel@linaro.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. -+ */ -+ -+#include "netsec.h" -+ -+static void netsec_et_get_drvinfo(struct net_device *net_device, -+ struct ethtool_drvinfo *info) -+{ -+ strlcpy(info->driver, "netsec", sizeof(info->driver)); -+ strlcpy(info->bus_info, dev_name(net_device->dev.parent), -+ sizeof(info->bus_info)); -+} -+ -+static int netsec_et_get_coalesce(struct net_device *net_device, -+ struct ethtool_coalesce *et_coalesce) -+{ -+ struct netsec_priv *priv = netdev_priv(net_device); -+ -+ *et_coalesce = priv->et_coalesce; -+ -+ return 0; -+} -+ -+static int netsec_et_set_coalesce(struct net_device *net_device, -+ struct ethtool_coalesce *et_coalesce) -+{ -+ struct netsec_priv *priv = netdev_priv(net_device); -+ -+ if (et_coalesce->rx_max_coalesced_frames > NETSEC_INT_PKTCNT_MAX) -+ return -EINVAL; -+ if (et_coalesce->tx_max_coalesced_frames > NETSEC_INT_PKTCNT_MAX) -+ return -EINVAL; -+ if (!et_coalesce->rx_max_coalesced_frames) -+ return -EINVAL; -+ if (!et_coalesce->tx_max_coalesced_frames) -+ return -EINVAL; -+ -+ priv->et_coalesce = *et_coalesce; -+ -+ return 0; -+} -+ -+static u32 netsec_et_get_msglevel(struct net_device *dev) -+{ -+ struct netsec_priv *priv = netdev_priv(dev); -+ -+ return priv->msg_enable; -+} -+ -+static void netsec_et_set_msglevel(struct net_device *dev, u32 datum) -+{ -+ struct netsec_priv *priv = netdev_priv(dev); -+ -+ priv->msg_enable = datum; -+} -+ -+const struct ethtool_ops netsec_ethtool_ops = { -+ .get_drvinfo = netsec_et_get_drvinfo, -+ .get_link_ksettings = phy_ethtool_get_link_ksettings, -+ .set_link_ksettings = phy_ethtool_set_link_ksettings, -+ .get_link = ethtool_op_get_link, -+ .get_coalesce = netsec_et_get_coalesce, -+ .set_coalesce = netsec_et_set_coalesce, -+ .get_msglevel = netsec_et_get_msglevel, -+ .set_msglevel = netsec_et_set_msglevel, -+}; -diff --git a/drivers/net/ethernet/socionext/netsec/netsec_gmac_access.c b/drivers/net/ethernet/socionext/netsec/netsec_gmac_access.c -new file mode 100644 -index 0000000..94e9b7f ---- /dev/null -+++ b/drivers/net/ethernet/socionext/netsec/netsec_gmac_access.c -@@ -0,0 +1,330 @@ -+/** -+ * drivers/net/ethernet/socionext/netsec/netsec_gmac_access.c -+ * -+ * Copyright (C) 2013-2014 Fujitsu Semiconductor Limited. -+ * Copyright (C) 2014-2017 Linaro Ltd. All rights reserved. -+ * Andy Green <andy.green@linaro.org> -+ * Jassi Brar <jaswinder.singh@linaro.org> -+ * Ard Biesheuvel <ard.biesheuvel@linaro.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. -+ */ -+#include "netsec.h" -+ -+#define TIMEOUT_SPINS_MAC 1000 -+#define TIMEOUT_SECONDARY_MS_MAC 100 -+ -+static u32 netsec_clk_type(u32 freq) -+{ -+ if (freq < 35 * NETSEC_CLK_MHZ) -+ return NETSEC_GMAC_GAR_REG_CR_25_35_MHZ; -+ if (freq < 60 * NETSEC_CLK_MHZ) -+ return NETSEC_GMAC_GAR_REG_CR_35_60_MHZ; -+ if (freq < 100 * NETSEC_CLK_MHZ) -+ return NETSEC_GMAC_GAR_REG_CR_60_100_MHZ; -+ if (freq < 150 * NETSEC_CLK_MHZ) -+ return NETSEC_GMAC_GAR_REG_CR_100_150_MHZ; -+ if (freq < 250 * NETSEC_CLK_MHZ) -+ return NETSEC_GMAC_GAR_REG_CR_150_250_MHZ; -+ -+ return NETSEC_GMAC_GAR_REG_CR_250_300_MHZ; -+} -+ -+static int netsec_wait_while_busy(struct netsec_priv *priv, u32 addr, u32 mask) -+{ -+ u32 timeout = TIMEOUT_SPINS_MAC; -+ -+ while (--timeout && netsec_readl(priv, addr) & mask) -+ cpu_relax(); -+ if (timeout) -+ return 0; -+ -+ timeout = TIMEOUT_SECONDARY_MS_MAC; -+ while (--timeout && netsec_readl(priv, addr) & mask) -+ usleep_range(1000, 2000); -+ -+ if (timeout) -+ return 0; -+ -+ netdev_WARN(priv->ndev, "%s: timeout\n", __func__); -+ -+ return -ETIMEDOUT; -+} -+ -+static int netsec_mac_write(struct netsec_priv *priv, u32 addr, u32 value) -+{ -+ netsec_writel(priv, MAC_REG_DATA, value); -+ netsec_writel(priv, MAC_REG_CMD, addr | NETSEC_GMAC_CMD_ST_WRITE); -+ return netsec_wait_while_busy(priv, -+ MAC_REG_CMD, NETSEC_GMAC_CMD_ST_BUSY); -+} -+ -+static int netsec_mac_read(struct netsec_priv *priv, u32 addr, u32 *read) -+{ -+ int ret; -+ -+ netsec_writel(priv, MAC_REG_CMD, addr | NETSEC_GMAC_CMD_ST_READ); -+ ret = netsec_wait_while_busy(priv, -+ MAC_REG_CMD, NETSEC_GMAC_CMD_ST_BUSY); -+ if (ret) -+ return ret; -+ -+ *read = netsec_readl(priv, MAC_REG_DATA); -+ -+ return 0; -+} -+ -+static int netsec_mac_wait_while_busy(struct netsec_priv *priv, -+ u32 addr, u32 mask) -+{ -+ u32 timeout = TIMEOUT_SPINS_MAC; -+ int ret, data; -+ -+ do { -+ ret = netsec_mac_read(priv, addr, &data); -+ if (ret) -+ break; -+ cpu_relax(); -+ } while (--timeout && (data & mask)); -+ -+ if (timeout) -+ return 0; -+ -+ timeout = TIMEOUT_SECONDARY_MS_MAC; -+ do { -+ usleep_range(1000, 2000); -+ -+ ret = netsec_mac_read(priv, addr, &data); -+ if (ret) -+ break; -+ cpu_relax(); -+ } while (--timeout && (data & mask)); -+ -+ if (timeout && !ret) -+ return 0; -+ -+ netdev_WARN(priv->ndev, "%s: timeout\n", __func__); -+ -+ return -ETIMEDOUT; -+} -+ -+static int netsec_mac_update_to_phy_state(struct netsec_priv *priv) -+{ -+ struct phy_device *phydev = priv->ndev->phydev; -+ u32 value = 0; -+ -+ value = phydev->duplex ? NETSEC_GMAC_MCR_REG_FULL_DUPLEX_COMMON : -+ NETSEC_GMAC_MCR_REG_HALF_DUPLEX_COMMON; -+ -+ if (phydev->speed != SPEED_1000) -+ value |= NETSEC_MCR_PS; -+ -+ if ((priv->phy_interface != PHY_INTERFACE_MODE_GMII) && -+ (phydev->speed == SPEED_100)) -+ value |= NETSEC_GMAC_MCR_REG_FES; -+ -+ value |= NETSEC_GMAC_MCR_REG_CST | NETSEC_GMAC_MCR_REG_JE; -+ -+ if (priv->phy_interface == PHY_INTERFACE_MODE_RGMII) -+ value |= NETSEC_GMAC_MCR_REG_IBN; -+ -+ if (netsec_mac_write(priv, GMAC_REG_MCR, value)) -+ return -ETIMEDOUT; -+ -+ priv->actual_link_speed = phydev->speed; -+ priv->actual_duplex = phydev->duplex; -+ -+ return 0; -+} -+ -+/* NB netsec_start_gmac() only called from adjust_link */ -+ -+int netsec_start_gmac(struct netsec_priv *priv) -+{ -+ struct phy_device *phydev = priv->ndev->phydev; -+ u32 value = 0; -+ int ret; -+ -+ if (priv->desc_ring[NETSEC_RING_TX].running && -+ priv->desc_ring[NETSEC_RING_RX].running) -+ return 0; -+ -+ if (!priv->desc_ring[NETSEC_RING_RX].running && -+ !priv->desc_ring[NETSEC_RING_TX].running) { -+ if (phydev->speed != SPEED_1000) -+ value = (NETSEC_GMAC_MCR_REG_CST | -+ NETSEC_GMAC_MCR_REG_HALF_DUPLEX_COMMON); -+ -+ if (netsec_mac_write(priv, GMAC_REG_MCR, value)) -+ return -ETIMEDOUT; -+ if (netsec_mac_write(priv, GMAC_REG_BMR, -+ NETSEC_GMAC_BMR_REG_RESET)) -+ return -ETIMEDOUT; -+ -+ /* Wait soft reset */ -+ usleep_range(1000, 5000); -+ -+ ret = netsec_mac_read(priv, GMAC_REG_BMR, &value); -+ if (ret) -+ return ret; -+ if (value & NETSEC_GMAC_BMR_REG_SWR) -+ return -EAGAIN; -+ -+ netsec_writel(priv, MAC_REG_DESC_SOFT_RST, 1); -+ if (netsec_wait_while_busy(priv, MAC_REG_DESC_SOFT_RST, 1)) -+ return -ETIMEDOUT; -+ -+ netsec_writel(priv, MAC_REG_DESC_INIT, 1); -+ if (netsec_wait_while_busy(priv, MAC_REG_DESC_INIT, 1)) -+ return -ETIMEDOUT; -+ -+ if (netsec_mac_write(priv, GMAC_REG_BMR, -+ NETSEC_GMAC_BMR_REG_COMMON)) -+ return -ETIMEDOUT; -+ if (netsec_mac_write(priv, GMAC_REG_RDLAR, -+ NETSEC_GMAC_RDLAR_REG_COMMON)) -+ return -ETIMEDOUT; -+ if (netsec_mac_write(priv, GMAC_REG_TDLAR, -+ NETSEC_GMAC_TDLAR_REG_COMMON)) -+ return -ETIMEDOUT; -+ if (netsec_mac_write(priv, GMAC_REG_MFFR, 0x80000001)) -+ return -ETIMEDOUT; -+ -+ ret = netsec_mac_update_to_phy_state(priv); -+ if (ret) -+ return ret; -+ -+ if (priv->mac_mode.flow_ctrl_enable_flag) { -+ netsec_writel(priv, MAC_REG_FLOW_TH, -+ (priv->mac_mode.flow_stop_th << 16) | -+ priv->mac_mode.flow_start_th); -+ if (netsec_mac_write(priv, GMAC_REG_FCR, -+ (priv->mac_mode.pause_time << 16) | -+ NETSEC_FCR_RFE | NETSEC_FCR_TFE)) -+ return -ETIMEDOUT; -+ } -+ } -+ -+ ret = netsec_mac_read(priv, GMAC_REG_OMR, &value); -+ if (ret) -+ return ret; -+ -+ if (!priv->desc_ring[NETSEC_RING_RX].running) { -+ value |= NETSEC_GMAC_OMR_REG_SR; -+ netsec_start_desc_ring(priv, NETSEC_RING_RX); -+ } -+ if (!priv->desc_ring[NETSEC_RING_TX].running) { -+ value |= NETSEC_GMAC_OMR_REG_ST; -+ netsec_start_desc_ring(priv, NETSEC_RING_TX); -+ } -+ -+ if (netsec_mac_write(priv, GMAC_REG_OMR, value)) -+ return -ETIMEDOUT; -+ -+ netsec_writel(priv, NETSEC_REG_INTEN_SET, -+ NETSEC_IRQ_TX | NETSEC_IRQ_RX); -+ -+ return 0; -+} -+ -+int netsec_stop_gmac(struct netsec_priv *priv) -+{ -+ u32 value; -+ int ret; -+ -+ ret = netsec_mac_read(priv, GMAC_REG_OMR, &value); -+ if (ret) -+ return ret; -+ -+ if (priv->desc_ring[NETSEC_RING_RX].running) { -+ value &= ~NETSEC_GMAC_OMR_REG_SR; -+ netsec_stop_desc_ring(priv, NETSEC_RING_RX); -+ } -+ if (priv->desc_ring[NETSEC_RING_TX].running) { -+ value &= ~NETSEC_GMAC_OMR_REG_ST; -+ netsec_stop_desc_ring(priv, NETSEC_RING_TX); -+ } -+ -+ priv->actual_link_speed = 0; -+ priv->actual_duplex = false; -+ -+ return netsec_mac_write(priv, GMAC_REG_OMR, value); -+} -+ -+static int netsec_phy_write(struct mii_bus *bus, -+ int phy_addr, int reg, u16 val) -+{ -+ struct netsec_priv *priv = bus->priv; -+ -+ if (netsec_mac_write(priv, GMAC_REG_GDR, val)) -+ return -ETIMEDOUT; -+ if (netsec_mac_write(priv, GMAC_REG_GAR, -+ phy_addr << NETSEC_GMAC_GAR_REG_SHIFT_PA | -+ reg << NETSEC_GMAC_GAR_REG_SHIFT_GR | -+ NETSEC_GMAC_GAR_REG_GW | NETSEC_GMAC_GAR_REG_GB | -+ (netsec_clk_type(priv->freq) << -+ GMAC_REG_SHIFT_CR_GAR))) -+ return -ETIMEDOUT; -+ -+ return netsec_mac_wait_while_busy(priv, GMAC_REG_GAR, -+ NETSEC_GMAC_GAR_REG_GB); -+} -+ -+static int netsec_phy_read(struct mii_bus *bus, int phy_addr, int reg_addr) -+{ -+ struct netsec_priv *priv = bus->priv; -+ u32 data; -+ int ret; -+ -+ if (netsec_mac_write(priv, GMAC_REG_GAR, NETSEC_GMAC_GAR_REG_GB | -+ phy_addr << NETSEC_GMAC_GAR_REG_SHIFT_PA | -+ reg_addr << NETSEC_GMAC_GAR_REG_SHIFT_GR | -+ (netsec_clk_type(priv->freq) << -+ GMAC_REG_SHIFT_CR_GAR))) -+ return -ETIMEDOUT; -+ -+ ret = netsec_mac_wait_while_busy(priv, GMAC_REG_GAR, -+ NETSEC_GMAC_GAR_REG_GB); -+ if (ret) -+ return ret; -+ -+ ret = netsec_mac_read(priv, GMAC_REG_GDR, &data); -+ if (ret) -+ return ret; -+ -+ return data; -+} -+ -+int netsec_mii_register(struct netsec_priv *priv) -+{ -+ struct mii_bus *bus = devm_mdiobus_alloc(priv->dev); -+ int ret; -+ -+ if (!bus) -+ return -ENOMEM; -+ -+ snprintf(bus->id, MII_BUS_ID_SIZE, "%s", dev_name(priv->dev)); -+ bus->priv = priv; -+ bus->name = "SNI NETSEC MDIO"; -+ bus->read = netsec_phy_read; -+ bus->write = netsec_phy_write; -+ bus->parent = priv->dev; -+ priv->mii_bus = bus; -+ -+ if (dev_of_node(priv->dev)) { -+ ret = of_mdiobus_register(bus, dev_of_node(priv->dev)); -+ } else { -+ /* Mask out all PHYs from auto probing. */ -+ bus->phy_mask = ~0; -+ ret = mdiobus_register(bus); -+ } -+ return ret; -+} -+ -+void netsec_mii_unregister(struct netsec_priv *priv) -+{ -+ mdiobus_unregister(priv->mii_bus); -+} -diff --git a/drivers/net/ethernet/socionext/netsec/netsec_netdev.c b/drivers/net/ethernet/socionext/netsec/netsec_netdev.c -new file mode 100644 -index 0000000..e99cf0e ---- /dev/null -+++ b/drivers/net/ethernet/socionext/netsec/netsec_netdev.c -@@ -0,0 +1,540 @@ -+/** -+ * drivers/net/ethernet/socionext/netsec/netsec_netdev.c -+ * -+ * Copyright (C) 2013-2014 Fujitsu Semiconductor Limited. -+ * Copyright (C) 2014-2017 Linaro Ltd. All rights reserved. -+ * Andy Green <andy.green@linaro.org> -+ * Jassi Brar <jaswinder.singh@linaro.org> -+ * Ard Biesheuvel <ard.biesheuvel@linaro.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. -+ */ -+ -+#include <linux/ip.h> -+#include <linux/ipv6.h> -+#include <linux/tcp.h> -+#include <net/tcp.h> -+#include <net/ip6_checksum.h> -+#include <linux/pm_runtime.h> -+ -+#include "netsec.h" -+ -+#define WAIT_FW_RDY_TIMEOUT 50 -+ -+static const u32 desc_ring_irq_status_reg_addr[] = { -+ NETSEC_REG_NRM_TX_STATUS, -+ NETSEC_REG_NRM_RX_STATUS, -+}; -+ -+static const u32 desc_ads[] = { -+ NETSEC_REG_NRM_TX_CONFIG, -+ NETSEC_REG_NRM_RX_CONFIG, -+}; -+ -+static const u32 netsec_desc_start_reg_addr_up[] = { -+ NETSEC_REG_NRM_TX_DESC_START_UP, -+ NETSEC_REG_NRM_RX_DESC_START_UP, -+}; -+ -+static const u32 netsec_desc_start_reg_addr_lw[] = { -+ NETSEC_REG_NRM_TX_DESC_START_LW, -+ NETSEC_REG_NRM_RX_DESC_START_LW, -+}; -+ -+static u32 netsec_calc_pkt_ctrl_reg_param(const struct netsec_pkt_ctrlaram -+ *pkt_ctrlaram_p) -+{ -+ u32 param = NETSEC_PKT_CTRL_REG_MODE_NRM; -+ -+ if (pkt_ctrlaram_p->log_chksum_er_flag) -+ param |= NETSEC_PKT_CTRL_REG_LOG_CHKSUM_ER; -+ -+ if (pkt_ctrlaram_p->log_hd_imcomplete_flag) -+ param |= NETSEC_PKT_CTRL_REG_LOG_HD_INCOMPLETE; -+ -+ if (pkt_ctrlaram_p->log_hd_er_flag) -+ param |= NETSEC_PKT_CTRL_REG_LOG_HD_ER; -+ -+ return param; -+} -+ -+static int netsec_netdev_load_ucode_region(struct netsec_priv *priv, u32 reg, -+ u32 addr_h, u32 addr_l, u32 size) -+{ -+ u64 base = (u64)addr_h << 32 | addr_l; -+ __le32 *ucode; -+ u32 i; -+ -+ ucode = memremap(base, size * sizeof(u32), MEMREMAP_WT); -+ if (!ucode) -+ return -ENOMEM; -+ -+ for (i = 0; i < size; i++) -+ netsec_writel(priv, reg, le32_to_cpu(ucode[i])); -+ -+ memunmap(ucode); -+ return 0; -+} -+ -+static int netsec_netdev_load_microcode(struct netsec_priv *priv) -+{ -+ int err; -+ -+ err = netsec_netdev_load_ucode_region( -+ priv, NETSEC_REG_DMAC_HM_CMD_BUF, -+ le32_to_cpup(priv->eeprom_base + NETSEC_EEPROM_HM_ME_ADDRESS_H), -+ le32_to_cpup(priv->eeprom_base + NETSEC_EEPROM_HM_ME_ADDRESS_L), -+ le32_to_cpup(priv->eeprom_base + NETSEC_EEPROM_HM_ME_SIZE)); -+ if (err) -+ return err; -+ -+ err = netsec_netdev_load_ucode_region( -+ priv, NETSEC_REG_DMAC_MH_CMD_BUF, -+ le32_to_cpup(priv->eeprom_base + NETSEC_EEPROM_MH_ME_ADDRESS_H), -+ le32_to_cpup(priv->eeprom_base + NETSEC_EEPROM_MH_ME_ADDRESS_L), -+ le32_to_cpup(priv->eeprom_base + NETSEC_EEPROM_MH_ME_SIZE)); -+ if (err) -+ return err; -+ -+ err = netsec_netdev_load_ucode_region( -+ priv, NETSEC_REG_PKT_CMD_BUF, -+ 0, -+ le32_to_cpup(priv->eeprom_base + NETSEC_EEPROM_PKT_ME_ADDRESS), -+ le32_to_cpup(priv->eeprom_base + NETSEC_EEPROM_PKT_ME_SIZE)); -+ if (err) -+ return err; -+ -+ return 0; -+} -+ -+static int netsec_init_hardware(struct netsec_priv *priv) -+{ -+ u32 value; -+ int err; -+ -+ /* set desc_start addr */ -+ netsec_writel(priv, netsec_desc_start_reg_addr_up[NETSEC_RING_RX], -+ upper_32_bits(priv->desc_ring[NETSEC_RING_RX].desc_phys)); -+ netsec_writel(priv, netsec_desc_start_reg_addr_lw[NETSEC_RING_RX], -+ lower_32_bits(priv->desc_ring[NETSEC_RING_RX].desc_phys)); -+ -+ netsec_writel(priv, netsec_desc_start_reg_addr_up[NETSEC_RING_TX], -+ upper_32_bits(priv->desc_ring[NETSEC_RING_TX].desc_phys)); -+ netsec_writel(priv, netsec_desc_start_reg_addr_lw[NETSEC_RING_TX], -+ lower_32_bits(priv->desc_ring[NETSEC_RING_TX].desc_phys)); -+ -+ /* set normal tx desc ring config */ -+ netsec_writel(priv, desc_ads[NETSEC_RING_TX], -+ 1 << NETSEC_REG_DESC_ENDIAN); -+ netsec_writel(priv, desc_ads[NETSEC_RING_RX], -+ 1 << NETSEC_REG_DESC_ENDIAN); -+ -+ err = netsec_netdev_load_microcode(priv); -+ if (err) { -+ netif_err(priv, probe, priv->ndev, -+ "%s: failed to load microcode (%d)\n", __func__, err); -+ return err; -+ } -+ -+ /* start DMA engines */ -+ netsec_writel(priv, NETSEC_REG_DMA_TMR_CTRL, priv->freq / 1000000 - 1); -+ netsec_writel(priv, NETSEC_REG_ADDR_DIS_CORE, 0); -+ -+ usleep_range(1000, 2000); -+ -+ if (!(netsec_readl(priv, NETSEC_REG_TOP_STATUS) & -+ NETSEC_TOP_IRQ_REG_CODE_LOAD_END)) { -+ netif_err(priv, drv, priv->ndev, "microengine start failed\n"); -+ return -ENXIO; -+ } -+ netsec_writel(priv, NETSEC_REG_TOP_STATUS, -+ NETSEC_TOP_IRQ_REG_CODE_LOAD_END); -+ -+ value = netsec_calc_pkt_ctrl_reg_param(&priv->param.pkt_ctrlaram); -+ -+ if (priv->param.use_jumbo_pkt_flag) -+ value |= NETSEC_PKT_CTRL_REG_EN_JUMBO; -+ -+ /* change to normal mode */ -+ netsec_writel(priv, NETSEC_REG_DMA_MH_CTRL, MH_CTRL__MODE_TRANS); -+ netsec_writel(priv, NETSEC_REG_PKT_CTRL, value); -+ -+ while ((netsec_readl(priv, NETSEC_REG_MODE_TRANS_COMP_STATUS) & -+ NETSEC_MODE_TRANS_COMP_IRQ_T2N) == 0) -+ cpu_relax(); -+ -+ return 0; -+} -+ -+static void netsec_ring_irq_clr(struct netsec_priv *priv, -+ unsigned int id, u32 value) -+{ -+ netsec_writel(priv, desc_ring_irq_status_reg_addr[id], -+ value & (NETSEC_IRQ_EMPTY | NETSEC_IRQ_ERR)); -+} -+ -+static void netsec_napi_tx_processing(struct netsec_priv *priv) -+{ -+ netsec_ring_irq_clr(priv, NETSEC_RING_TX, NETSEC_IRQ_EMPTY); -+ netsec_clean_tx_desc_ring(priv); -+ -+ if (netif_queue_stopped(priv->ndev) && -+ netsec_get_tx_avail_num(priv) >= NETSEC_NETDEV_TX_PKT_SCAT_NUM_MAX) -+ netif_wake_queue(priv->ndev); -+} -+ -+int netsec_netdev_napi_poll(struct napi_struct *napi_p, int budget) -+{ -+ struct netsec_priv *priv = container_of(napi_p, struct netsec_priv, -+ napi); -+ struct net_device *ndev = priv->ndev; -+ struct netsec_rx_pkt_info rx_info; -+ int ret, done = 0, rx_num = 0; -+ struct netsec_frag_info frag; -+ struct sk_buff *skb; -+ u16 len; -+ -+ netsec_napi_tx_processing(priv); -+ -+ while (done < budget) { -+ if (!rx_num) { -+ rx_num = netsec_get_rx_num(priv); -+ if (!rx_num) -+ break; -+ } -+ done++; -+ rx_num--; -+ ret = netsec_get_rx_pkt_data(priv, &rx_info, &frag, &len, &skb); -+ if (unlikely(ret == -ENOMEM)) { -+ netif_err(priv, drv, priv->ndev, -+ "%s: rx fail %d\n", __func__, ret); -+ ndev->stats.rx_dropped++; -+ continue; -+ } -+ dma_unmap_single(priv->dev, frag.dma_addr, frag.len, -+ DMA_FROM_DEVICE); -+ skb_put(skb, len); -+ skb->protocol = eth_type_trans(skb, priv->ndev); -+ -+ if (priv->rx_cksum_offload_flag && -+ rx_info.rx_cksum_result == NETSEC_RX_CKSUM_OK) -+ skb->ip_summed = CHECKSUM_UNNECESSARY; -+ -+ if (napi_gro_receive(napi_p, skb) != GRO_DROP) { -+ ndev->stats.rx_packets++; -+ ndev->stats.rx_bytes += len; -+ } -+ } -+ -+ if (done < budget && napi_complete_done(napi_p, done)) -+ netsec_writel(priv, NETSEC_REG_INTEN_SET, -+ NETSEC_IRQ_TX | NETSEC_IRQ_RX); -+ return done; -+} -+ -+static netdev_tx_t netsec_netdev_start_xmit(struct sk_buff *skb, -+ struct net_device *ndev) -+{ -+ struct netsec_priv *priv = netdev_priv(ndev); -+ struct netsec_tx_pkt_ctrl tx_ctrl = {}; -+ u16 pend_tx, tso_seg_len = 0; -+ skb_frag_t *frag; -+ int count_frags; -+ int ret, i; -+ -+ netsec_ring_irq_clr(priv, NETSEC_RING_TX, NETSEC_IRQ_EMPTY); -+ -+ count_frags = skb_shinfo(skb)->nr_frags + 1; -+ -+ if (skb->ip_summed == CHECKSUM_PARTIAL) { -+ if ((skb->protocol == htons(ETH_P_IP) && -+ ip_hdr(skb)->protocol == IPPROTO_TCP) || -+ (skb->protocol == htons(ETH_P_IPV6) && -+ ipv6_hdr(skb)->nexthdr == IPPROTO_TCP)) -+ tx_ctrl.cksum_offload_flag = true; -+ else -+ skb_checksum_help(skb); -+ } -+ -+ if (skb_is_gso(skb)) -+ tso_seg_len = skb_shinfo(skb)->gso_size; -+ -+ if (tso_seg_len > 0) { -+ if (skb->protocol == htons(ETH_P_IP)) { -+ ip_hdr(skb)->tot_len = 0; -+ tcp_hdr(skb)->check = -+ ~tcp_v4_check(0, ip_hdr(skb)->saddr, -+ ip_hdr(skb)->daddr, 0); -+ } else { -+ ipv6_hdr(skb)->payload_len = 0; -+ tcp_hdr(skb)->check = -+ ~csum_ipv6_magic(&ipv6_hdr(skb)->saddr, -+ &ipv6_hdr(skb)->daddr, -+ 0, IPPROTO_TCP, 0); -+ } -+ -+ tx_ctrl.tcp_seg_offload_flag = true; -+ tx_ctrl.tcp_seg_len = tso_seg_len; -+ } -+ -+ priv->tx_info[0].dma_addr = dma_map_single(priv->dev, skb->data, -+ skb_headlen(skb), -+ DMA_TO_DEVICE); -+ if (dma_mapping_error(priv->dev, priv->tx_info[0].dma_addr)) { -+ netif_err(priv, drv, priv->ndev, -+ "%s: DMA mapping failed\n", __func__); -+ return NETDEV_TX_OK; -+ } -+ priv->tx_info[0].addr = skb->data; -+ priv->tx_info[0].len = skb_headlen(skb); -+ -+ for (i = 0; i < skb_shinfo(skb)->nr_frags; i++) { -+ frag = &skb_shinfo(skb)->frags[i]; -+ priv->tx_info[i + 1].dma_addr = -+ skb_frag_dma_map(priv->dev, frag, 0, -+ skb_frag_size(frag), DMA_TO_DEVICE); -+ priv->tx_info[i + 1].addr = skb_frag_address(frag); -+ priv->tx_info[i + 1].len = frag->size; -+ } -+ -+ netsec_mark_skb_type(skb, NETSEC_RING_TX); -+ -+ ret = netsec_set_tx_pkt_data(priv, &tx_ctrl, count_frags, -+ priv->tx_info, skb); -+ if (ret) { -+ netif_info(priv, drv, priv->ndev, -+ "set tx pkt failed %d\n", ret); -+ for (i = 0; i < count_frags; i++) -+ dma_unmap_single(priv->dev, priv->tx_info[i].dma_addr, -+ priv->tx_info[i].len, DMA_TO_DEVICE); -+ ndev->stats.tx_dropped++; -+ -+ return NETDEV_TX_OK; -+ } -+ -+ netdev_sent_queue(priv->ndev, skb->len); -+ -+ spin_lock(&priv->tx_queue_lock); -+ pend_tx = netsec_get_tx_avail_num(priv); -+ -+ if (pend_tx < NETSEC_NETDEV_TX_PKT_SCAT_NUM_MAX) { -+ netsec_ring_irq_enable(priv, NETSEC_RING_TX, NETSEC_IRQ_EMPTY); -+ netif_stop_queue(ndev); -+ goto err; -+ } -+ if (pend_tx <= DESC_NUM - 2) { -+ netsec_ring_irq_enable(priv, NETSEC_RING_TX, NETSEC_IRQ_EMPTY); -+ goto err; -+ } -+ netsec_ring_irq_disable(priv, NETSEC_RING_TX, NETSEC_IRQ_EMPTY); -+ -+err: -+ spin_unlock(&priv->tx_queue_lock); -+ -+ return NETDEV_TX_OK; -+} -+ -+static int netsec_netdev_set_features(struct net_device *ndev, -+ netdev_features_t features) -+{ -+ struct netsec_priv *priv = netdev_priv(ndev); -+ -+ priv->rx_cksum_offload_flag = !!(features & NETIF_F_RXCSUM); -+ -+ return 0; -+} -+ -+static void netsec_phy_adjust_link(struct net_device *ndev) -+{ -+ struct netsec_priv *priv = netdev_priv(ndev); -+ -+ if (priv->actual_link_speed == ndev->phydev->speed && -+ priv->actual_duplex == ndev->phydev->duplex) -+ return; -+ -+ phy_print_status(ndev->phydev); -+ -+ netsec_stop_gmac(priv); -+ netsec_start_gmac(priv); -+} -+ -+static irqreturn_t netsec_irq_handler(int irq, void *dev_id) -+{ -+ struct netsec_priv *priv = dev_id; -+ u32 status = netsec_readl(priv, NETSEC_REG_TOP_STATUS) & -+ netsec_readl(priv, NETSEC_REG_TOP_INTEN); -+ -+ if (!status) -+ return IRQ_NONE; -+ -+ if (status & (NETSEC_IRQ_TX | NETSEC_IRQ_RX)) { -+ netsec_writel(priv, NETSEC_REG_INTEN_CLR, -+ status & (NETSEC_IRQ_TX | NETSEC_IRQ_RX)); -+ napi_schedule(&priv->napi); -+ } -+ -+ return IRQ_HANDLED; -+} -+ -+static void netsec_reset_hardware(struct netsec_priv *priv) -+{ -+ /* stop DMA engines */ -+ if (!netsec_readl(priv, NETSEC_REG_ADDR_DIS_CORE)) { -+ netsec_writel(priv, NETSEC_REG_DMA_HM_CTRL, -+ NETSEC_DMA_CTRL_REG_STOP); -+ netsec_writel(priv, NETSEC_REG_DMA_MH_CTRL, -+ NETSEC_DMA_CTRL_REG_STOP); -+ -+ while (netsec_readl(priv, NETSEC_REG_DMA_HM_CTRL) & -+ NETSEC_DMA_CTRL_REG_STOP) -+ cpu_relax(); -+ -+ while (netsec_readl(priv, NETSEC_REG_DMA_MH_CTRL) & -+ NETSEC_DMA_CTRL_REG_STOP) -+ cpu_relax(); -+ } -+ -+ netsec_writel(priv, NETSEC_REG_SOFT_RST, NETSEC_SOFT_RST_REG_RESET); -+ netsec_writel(priv, NETSEC_REG_SOFT_RST, NETSEC_SOFT_RST_REG_RUN); -+ netsec_writel(priv, NETSEC_REG_COM_INIT, NETSEC_COM_INIT_REG_ALL); -+ -+ while (netsec_readl(priv, NETSEC_REG_COM_INIT) != 0) -+ cpu_relax(); -+} -+ -+static int netsec_netdev_open(struct net_device *ndev) -+{ -+ struct netsec_priv *priv = netdev_priv(ndev); -+ int ret, n; -+ -+ pm_runtime_get_sync(priv->dev); -+ -+ netsec_reset_hardware(priv); -+ -+ for (n = 0; n <= NETSEC_RING_MAX; n++) { -+ ret = netsec_alloc_desc_ring(priv, n); -+ if (ret) { -+ netif_err(priv, probe, priv->ndev, -+ "%s: alloc ring failed\n", __func__); -+ goto err; -+ } -+ } -+ -+ ret = netsec_setup_rx_desc(priv, &priv->desc_ring[NETSEC_RING_RX]); -+ if (ret) { -+ netif_err(priv, probe, priv->ndev, -+ "%s: fail setup ring\n", __func__); -+ goto err1; -+ } -+ -+ ret = netsec_init_hardware(priv); -+ if (ret) { -+ netif_err(priv, probe, priv->ndev, -+ "%s: netsec_init_hardware fail %d\n", __func__, ret); -+ goto err1; -+ } -+ -+ ret = request_irq(priv->ndev->irq, netsec_irq_handler, -+ IRQF_SHARED, "netsec", priv); -+ if (ret) { -+ netif_err(priv, drv, priv->ndev, "request_irq failed\n"); -+ goto err1; -+ } -+ priv->irq_registered = true; -+ -+ ret = netsec_clean_rx_desc_ring(priv); -+ if (ret) { -+ netif_err(priv, drv, priv->ndev, -+ "%s: clean rx desc fail\n", __func__); -+ goto err2; -+ } -+ -+ ret = netsec_clean_tx_desc_ring(priv); -+ if (ret) { -+ netif_err(priv, drv, priv->ndev, -+ "%s: clean tx desc fail\n", __func__); -+ goto err2; -+ } -+ -+ netsec_ring_irq_clr(priv, NETSEC_RING_TX, NETSEC_IRQ_EMPTY); -+ -+ if (dev_of_node(priv->dev)) { -+ if (!of_phy_connect(priv->ndev, priv->phy_np, -+ netsec_phy_adjust_link, 0, -+ priv->phy_interface)) { -+ netif_err(priv, link, priv->ndev, "missing PHY\n"); -+ goto err2; -+ } -+ } else { -+ ret = phy_connect_direct(priv->ndev, priv->phydev, -+ netsec_phy_adjust_link, -+ priv->phy_interface); -+ if (ret) { -+ netif_err(priv, link, priv->ndev, -+ "phy_connect_direct() failed (%d)\n", ret); -+ goto err2; -+ } -+ } -+ -+ phy_start_aneg(ndev->phydev); -+ -+ netsec_ring_irq_disable(priv, NETSEC_RING_TX, NETSEC_IRQ_EMPTY); -+ -+ netsec_start_gmac(priv); -+ napi_enable(&priv->napi); -+ netif_start_queue(ndev); -+ -+ netsec_writel(priv, NETSEC_REG_INTEN_SET, -+ NETSEC_IRQ_TX | NETSEC_IRQ_RX); -+ -+ return 0; -+ -+err2: -+ pm_runtime_put_sync(priv->dev); -+ free_irq(priv->ndev->irq, priv); -+ priv->irq_registered = false; -+err1: -+ for (n = 0; n <= NETSEC_RING_MAX; n++) -+ netsec_free_desc_ring(priv, &priv->desc_ring[n]); -+err: -+ pm_runtime_put_sync(priv->dev); -+ -+ return ret; -+} -+ -+static int netsec_netdev_stop(struct net_device *ndev) -+{ -+ struct netsec_priv *priv = netdev_priv(ndev); -+ int n; -+ -+ phy_stop(ndev->phydev); -+ phy_disconnect(ndev->phydev); -+ -+ netif_stop_queue(priv->ndev); -+ napi_disable(&priv->napi); -+ -+ netsec_writel(priv, NETSEC_REG_INTEN_CLR, ~0); -+ netsec_stop_gmac(priv); -+ -+ pm_runtime_put_sync(priv->dev); -+ -+ for (n = 0; n <= NETSEC_RING_MAX; n++) -+ netsec_free_desc_ring(priv, &priv->desc_ring[n]); -+ -+ free_irq(priv->ndev->irq, priv); -+ priv->irq_registered = false; -+ -+ return 0; -+} -+ -+const struct net_device_ops netsec_netdev_ops = { -+ .ndo_open = netsec_netdev_open, -+ .ndo_stop = netsec_netdev_stop, -+ .ndo_start_xmit = netsec_netdev_start_xmit, -+ .ndo_set_features = netsec_netdev_set_features, -+ .ndo_set_mac_address = eth_mac_addr, -+ .ndo_validate_addr = eth_validate_addr, -+}; -diff --git a/drivers/net/ethernet/socionext/netsec/netsec_platform.c b/drivers/net/ethernet/socionext/netsec/netsec_platform.c -new file mode 100644 -index 0000000..624f6a7 ---- /dev/null -+++ b/drivers/net/ethernet/socionext/netsec/netsec_platform.c -@@ -0,0 +1,435 @@ -+/** -+ * drivers/net/ethernet/socionext/netsec/netsec_platform.c -+ * -+ * Copyright (C) 2013-2014 Fujitsu Semiconductor Limited. -+ * Copyright (C) 2014-2017 Linaro Ltd. All rights reserved. -+ * Andy Green <andy.green@linaro.org> -+ * Jassi Brar <jaswinder.singh@linaro.org> -+ * Ard Biesheuvel <ard.biesheuvel@linaro.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. -+ */ -+ -+#include <linux/acpi.h> -+#include <linux/device.h> -+#include <linux/ctype.h> -+#include <linux/netdevice.h> -+#include <linux/types.h> -+#include <linux/bitops.h> -+#include <linux/dma-mapping.h> -+#include <linux/module.h> -+#include <linux/sizes.h> -+#include <linux/platform_device.h> -+#include <linux/clk.h> -+#include <linux/of.h> -+#include <linux/of_device.h> -+#include <linux/of_net.h> -+#include <linux/io.h> -+#include <linux/pm_runtime.h> -+ -+#include "netsec.h" -+ -+#define NETSEC_F_NETSEC_VER_MAJOR_NUM(x) (x & 0xffff0000) -+ -+static int napi_weight = 64; -+static u16 pause_time = 256; -+ -+static int netsec_of_probe(struct platform_device *pdev, -+ struct netsec_priv *priv) -+{ -+ int clk_count, ret, i; -+ -+ priv->phy_np = of_parse_phandle(pdev->dev.of_node, "phy-handle", 0); -+ if (!priv->phy_np) { -+ dev_err(&pdev->dev, "missing required property 'phy-handle'\n"); -+ return -EINVAL; -+ } -+ -+ /* we require named clocks if there is more than one */ -+ clk_count = of_property_count_strings(pdev->dev.of_node, "clock-names"); -+ if (clk_count > 1) { -+ if (clk_count > ARRAY_SIZE(priv->clk)) { -+ dev_err(&pdev->dev, "too many clocks specified (%d)\n", -+ clk_count); -+ return -EINVAL; -+ } -+ -+ for (i = 0; i < clk_count; i++) { -+ const char *clk_name; -+ -+ ret = of_property_read_string_index(pdev->dev.of_node, -+ "clock-names", i, -+ &clk_name); -+ if (ret) { -+ dev_err(&pdev->dev, -+ "failed to parse 'clock-names'\n"); -+ return ret; -+ } -+ priv->clk[i] = devm_clk_get(&pdev->dev, clk_name); -+ if (!strcmp(clk_name, "phy_refclk")) { -+ priv->freq = clk_get_rate(priv->clk[i]); -+ dev_dbg(&pdev->dev, -+ "found PHY refclock #%d freq %u\n", -+ i, priv->freq); -+ } -+ } -+ priv->clock_count = clk_count; -+ } else { -+ priv->clk[0] = devm_clk_get(&pdev->dev, NULL); -+ if (IS_ERR(priv->clk)) { -+ dev_err(&pdev->dev, -+ "missing required property 'clocks'\n"); -+ return PTR_ERR(priv->clk); -+ } -+ priv->freq = clk_get_rate(priv->clk[0]); -+ priv->clock_count = 1; -+ } -+ return 0; -+} -+ -+static int netsec_acpi_probe(struct platform_device *pdev, -+ struct netsec_priv *priv, u32 *phy_addr) -+{ -+ int ret; -+ -+ if (!IS_ENABLED(CONFIG_ACPI)) -+ return -ENODEV; -+ -+ ret = device_property_read_u32(&pdev->dev, "phy-channel", phy_addr); -+ if (ret) { -+ dev_err(&pdev->dev, -+ "missing required property 'phy-channel'\n"); -+ return ret; -+ } -+ -+ ret = device_property_read_u32(&pdev->dev, -+ "socionext,phy-clock-frequency", -+ &priv->freq); -+ if (ret) -+ dev_err(&pdev->dev, -+ "missing required property 'socionext,phy-clock-frequency'\n"); -+ return ret; -+} -+ -+static int netsec_probe(struct platform_device *pdev) -+{ -+ struct net_device *ndev; -+ struct netsec_priv *priv; -+ struct resource *mmio_res, *eeprom_res, *irq_res; -+ u8 *mac, macbuf[ETH_ALEN]; -+ u32 hw_ver, phy_addr; -+ int ret; -+ -+ mmio_res = platform_get_resource(pdev, IORESOURCE_MEM, 0); -+ if (!mmio_res) { -+ dev_err(&pdev->dev, "No MMIO resource found.\n"); -+ return -ENODEV; -+ } -+ -+ eeprom_res = platform_get_resource(pdev, IORESOURCE_MEM, 1); -+ if (!eeprom_res) { -+ dev_info(&pdev->dev, "No EEPROM resource found.\n"); -+ return -ENODEV; -+ } -+ -+ irq_res = platform_get_resource(pdev, IORESOURCE_IRQ, 0); -+ if (!irq_res) { -+ dev_err(&pdev->dev, "No IRQ resource found.\n"); -+ return -ENODEV; -+ } -+ -+ ndev = alloc_etherdev(sizeof(*priv)); -+ if (!ndev) -+ return -ENOMEM; -+ -+ priv = netdev_priv(ndev); -+ priv->ndev = ndev; -+ SET_NETDEV_DEV(ndev, &pdev->dev); -+ platform_set_drvdata(pdev, priv); -+ priv->dev = &pdev->dev; -+ -+ priv->msg_enable = NETIF_MSG_TX_ERR | NETIF_MSG_HW | NETIF_MSG_DRV | -+ NETIF_MSG_LINK | NETIF_MSG_PROBE; -+ -+ ndev->irq = irq_res->start; -+ -+ priv->phy_interface = device_get_phy_mode(&pdev->dev); -+ if (priv->phy_interface < 0) { -+ dev_err(&pdev->dev, "missing required property 'phy-mode'\n"); -+ ret = -ENODEV; -+ goto free_ndev; -+ } -+ -+ priv->ioaddr = devm_ioremap(&pdev->dev, mmio_res->start, -+ resource_size(mmio_res)); -+ if (!priv->ioaddr) { -+ dev_err(&pdev->dev, "devm_ioremap() failed\n"); -+ ret = -ENXIO; -+ goto free_ndev; -+ } -+ -+ priv->eeprom_base = devm_memremap(&pdev->dev, eeprom_res->start, -+ resource_size(eeprom_res), -+ MEMREMAP_WT); -+ if (!priv->eeprom_base) { -+ dev_err(&pdev->dev, "devm_memremap() failed for EEPROM\n"); -+ ret = -ENXIO; -+ goto free_ndev; -+ } -+ -+ mac = device_get_mac_address(&pdev->dev, macbuf, sizeof(macbuf)); -+ if (mac) -+ ether_addr_copy(ndev->dev_addr, mac); -+ -+ if (priv->eeprom_base && -+ (!mac || !is_valid_ether_addr(ndev->dev_addr))) { -+ const u8 *macp = priv->eeprom_base + NETSEC_EEPROM_MAC_ADDRESS; -+ -+ ndev->dev_addr[0] = macp[3]; -+ ndev->dev_addr[1] = macp[2]; -+ ndev->dev_addr[2] = macp[1]; -+ ndev->dev_addr[3] = macp[0]; -+ ndev->dev_addr[4] = macp[7]; -+ ndev->dev_addr[5] = macp[6]; -+ } -+ -+ if (!is_valid_ether_addr(ndev->dev_addr)) { -+ dev_warn(&pdev->dev, "No MAC address found, using random\n"); -+ eth_hw_addr_random(ndev); -+ } -+ -+ if (dev_of_node(&pdev->dev)) -+ ret = netsec_of_probe(pdev, priv); -+ else -+ ret = netsec_acpi_probe(pdev, priv, &phy_addr); -+ if (ret) -+ goto free_ndev; -+ -+ if (!priv->freq) { -+ dev_err(&pdev->dev, "missing PHY reference clock frequency\n"); -+ ret = -ENODEV; -+ goto free_ndev; -+ } -+ -+ /* disable by default */ -+ priv->et_coalesce.rx_coalesce_usecs = 0; -+ priv->et_coalesce.rx_max_coalesced_frames = 1; -+ priv->et_coalesce.tx_coalesce_usecs = 0; -+ priv->et_coalesce.tx_max_coalesced_frames = 1; -+ -+ ret = device_property_read_u32(&pdev->dev, "max-frame-size", -+ &ndev->max_mtu); -+ if (ret < 0) -+ ndev->max_mtu = ETH_DATA_LEN; -+ -+ priv->rx_pkt_buf_len = ndev->max_mtu + 22; -+ priv->param.use_jumbo_pkt_flag = (ndev->max_mtu > ETH_DATA_LEN); -+ -+ pm_runtime_enable(&pdev->dev); -+ /* runtime_pm coverage just for probe, open/close also cover it */ -+ pm_runtime_get_sync(&pdev->dev); -+ -+ hw_ver = netsec_readl(priv, NETSEC_REG_F_TAIKI_VER); -+ /* this driver only supports F_TAIKI style NETSEC */ -+ if (NETSEC_F_NETSEC_VER_MAJOR_NUM(hw_ver) != -+ NETSEC_F_NETSEC_VER_MAJOR_NUM(NETSEC_REG_NETSEC_VER_F_TAIKI)) { -+ ret = -ENODEV; -+ goto pm_disable; -+ } -+ -+ dev_info(&pdev->dev, "hardware revision %d.%d\n", -+ hw_ver >> 16, hw_ver & 0xffff); -+ -+ priv->mac_mode.flow_start_th = NETSEC_FLOW_CONTROL_START_THRESHOLD; -+ priv->mac_mode.flow_stop_th = NETSEC_FLOW_CONTROL_STOP_THRESHOLD; -+ priv->mac_mode.pause_time = pause_time; -+ priv->mac_mode.flow_ctrl_enable_flag = false; -+ -+ netif_napi_add(ndev, &priv->napi, netsec_netdev_napi_poll, napi_weight); -+ -+ ndev->netdev_ops = &netsec_netdev_ops; -+ ndev->ethtool_ops = &netsec_ethtool_ops; -+ ndev->features = NETIF_F_SG | NETIF_F_IP_CSUM | NETIF_F_IPV6_CSUM | -+ NETIF_F_TSO | NETIF_F_TSO6 | NETIF_F_GSO | -+ NETIF_F_HIGHDMA | NETIF_F_RXCSUM; -+ ndev->hw_features = ndev->features; -+ -+ priv->rx_cksum_offload_flag = true; -+ spin_lock_init(&priv->tx_queue_lock); -+ -+ ret = netsec_mii_register(priv); -+ if (ret) { -+ dev_err(&pdev->dev, "mii bus registration failed (%d)\n", ret); -+ goto pm_disable; -+ } -+ -+ if (!dev_of_node(&pdev->dev)) { /* ACPI */ -+ priv->phydev = get_phy_device(priv->mii_bus, phy_addr, false); -+ if (IS_ERR(priv->phydev)) { -+ dev_err(&pdev->dev, "get_phy_device() failed (%ld)\n", -+ PTR_ERR(priv->phydev)); -+ ret = PTR_ERR(priv->phydev); -+ goto unregister_mii; -+ } -+ -+ ret = phy_device_register(priv->phydev); -+ if (ret) { -+ dev_err(&pdev->dev, -+ "phy_device_register() failed (%d)\n", ret); -+ phy_device_free(priv->phydev); -+ goto unregister_mii; -+ } -+ } -+ -+ /* disable all other interrupt sources */ -+ netsec_writel(priv, NETSEC_REG_INTEN_CLR, ~0); -+ netsec_writel(priv, NETSEC_REG_INTEN_SET, -+ NETSEC_IRQ_TX | NETSEC_IRQ_RX); -+ -+ if (dma_set_mask_and_coherent(&pdev->dev, DMA_BIT_MASK(64))) -+ dev_warn(&pdev->dev, "Failed to enable 64-bit DMA\n"); -+ -+ ret = register_netdev(ndev); -+ if (ret) { -+ netif_err(priv, probe, ndev, "register_netdev() failed\n"); -+ goto unregister_mii; -+ } -+ -+ pm_runtime_put_sync_suspend(&pdev->dev); -+ -+ return 0; -+ -+unregister_mii: -+ netsec_mii_unregister(priv); -+ -+pm_disable: -+ pm_runtime_put_sync_suspend(&pdev->dev); -+ pm_runtime_disable(&pdev->dev); -+ -+free_ndev: -+ free_netdev(ndev); -+ -+ dev_err(&pdev->dev, "init failed\n"); -+ -+ return ret; -+} -+ -+static int netsec_remove(struct platform_device *pdev) -+{ -+ struct netsec_priv *priv = platform_get_drvdata(pdev); -+ -+ unregister_netdev(priv->ndev); -+ if (!dev_of_node(&pdev->dev)) { /* ACPI */ -+ phy_device_remove(priv->phydev); -+ phy_device_free(priv->phydev); -+ } -+ netsec_mii_unregister(priv); -+ pm_runtime_disable(&pdev->dev); -+ free_netdev(priv->ndev); -+ -+ return 0; -+} -+ -+#ifdef CONFIG_PM -+static int netsec_runtime_suspend(struct device *dev) -+{ -+ struct netsec_priv *priv = dev_get_drvdata(dev); -+ int n; -+ -+ netif_dbg(priv, drv, priv->ndev, "%s\n", __func__); -+ -+ if (priv->irq_registered) -+ disable_irq(priv->ndev->irq); -+ -+ netsec_writel(priv, NETSEC_REG_CLK_EN, 0); -+ -+ for (n = priv->clock_count - 1; n >= 0; n--) -+ clk_disable_unprepare(priv->clk[n]); -+ -+ return 0; -+} -+ -+static int netsec_runtime_resume(struct device *dev) -+{ -+ struct netsec_priv *priv = dev_get_drvdata(dev); -+ int n; -+ -+ netif_dbg(priv, drv, priv->ndev, "%s\n", __func__); -+ -+ /* first let the clocks back on */ -+ -+ for (n = 0; n < priv->clock_count; n++) -+ clk_prepare_enable(priv->clk[n]); -+ -+ netsec_writel(priv, NETSEC_REG_CLK_EN, NETSEC_CLK_EN_REG_DOM_D | -+ NETSEC_CLK_EN_REG_DOM_C | -+ NETSEC_CLK_EN_REG_DOM_G); -+ -+ if (priv->irq_registered) -+ enable_irq(priv->ndev->irq); -+ -+ return 0; -+} -+ -+static int netsec_pm_suspend(struct device *dev) -+{ -+ struct netsec_priv *priv = dev_get_drvdata(dev); -+ -+ netif_dbg(priv, drv, priv->ndev, "%s\n", __func__); -+ -+ if (pm_runtime_status_suspended(dev)) -+ return 0; -+ -+ return netsec_runtime_suspend(dev); -+} -+ -+static int netsec_pm_resume(struct device *dev) -+{ -+ struct netsec_priv *priv = dev_get_drvdata(dev); -+ -+ netif_dbg(priv, drv, priv->ndev, "%s\n", __func__); -+ -+ if (pm_runtime_status_suspended(dev)) -+ return 0; -+ -+ return netsec_runtime_resume(dev); -+} -+#endif -+ -+static const struct dev_pm_ops netsec_pm_ops = { -+ SET_SYSTEM_SLEEP_PM_OPS(netsec_pm_suspend, netsec_pm_resume) -+ SET_RUNTIME_PM_OPS(netsec_runtime_suspend, netsec_runtime_resume, NULL) -+}; -+ -+static const struct of_device_id netsec_dt_ids[] = { -+ { .compatible = "socionext,synquacer-netsec" }, -+ { } -+}; -+MODULE_DEVICE_TABLE(of, netsec_dt_ids); -+ -+#ifdef CONFIG_ACPI -+static const struct acpi_device_id netsec_acpi_ids[] = { -+ { "SCX0001" }, -+ { } -+}; -+MODULE_DEVICE_TABLE(acpi, netsec_acpi_ids); -+#endif -+ -+static struct platform_driver netsec_driver = { -+ .probe = netsec_probe, -+ .remove = netsec_remove, -+ .driver.name = "netsec", -+ .driver.of_match_table = netsec_dt_ids, -+ .driver.acpi_match_table = ACPI_PTR(netsec_acpi_ids), -+ .driver.pm = &netsec_pm_ops, -+}; -+module_platform_driver(netsec_driver); -+ -+MODULE_AUTHOR("Andy Green <andy.green@linaro.org>"); -+MODULE_AUTHOR("Jassi Brar <jaswinder.singh@linaro.org>"); -+MODULE_AUTHOR("Ard Biesheuvel <ard.biesheuvel@linaro.org>"); -+MODULE_DESCRIPTION("NETSEC Ethernet driver"); -+MODULE_LICENSE("GPL"); --- -cgit v1.1 - -From 31a61532e7b859a797d36595ec5ab7485a9b24d5 Mon Sep 17 00:00:00 2001 -From: Jassi Brar <jassisinghbrar@gmail.com> -Date: Wed, 30 Aug 2017 15:55:52 +0530 -Subject: dt-bindings: net: Add DT bindings for Socionext Netsec - -This patch adds documentation for Device-Tree bindings for the -Socionext NetSec Controller driver. - -Signed-off-by: Jassi Brar <jaswinder.singh@linaro.org> -Signed-off-by: Ard Biesheuvel <ard.biesheuvel@linaro.org> ---- - .../devicetree/bindings/net/socionext-netsec.txt | 43 ++++++++++++++++++++++ - 1 file changed, 43 insertions(+) - create mode 100644 Documentation/devicetree/bindings/net/socionext-netsec.txt - -diff --git a/Documentation/devicetree/bindings/net/socionext-netsec.txt b/Documentation/devicetree/bindings/net/socionext-netsec.txt -new file mode 100644 -index 0000000..4695969 ---- /dev/null -+++ b/Documentation/devicetree/bindings/net/socionext-netsec.txt -@@ -0,0 +1,43 @@ -+* Socionext NetSec Ethernet Controller IP -+ -+Required properties: -+- compatible: Should be "socionext,synquacer-netsec" -+- reg: Address and length of the control register area, followed by the -+ address and length of the EEPROM holding the MAC address and -+ microengine firmware -+- interrupts: Should contain ethernet controller interrupt -+- clocks: phandle to the PHY reference clock, and any other clocks to be -+ switched by runtime_pm -+- clock-names: Required only if more than a single clock is listed in 'clocks'. -+ The PHY reference clock must be named 'phy_refclk' -+- phy-mode: See ethernet.txt file in the same directory -+- phy-handle: phandle to select child phy -+ -+Optional properties: (See ethernet.txt file in the same directory) -+- local-mac-address -+- mac-address -+- max-speed -+- max-frame-size -+ -+Required properties for the child phy: -+- reg: phy address -+ -+Example: -+ eth0: netsec@522D0000 { -+ compatible = "socionext,synquacer-netsec"; -+ reg = <0 0x522D0000 0x0 0x10000>, <0 0x10000000 0x0 0x10000>; -+ interrupts = <GIC_SPI 176 IRQ_TYPE_LEVEL_HIGH>; -+ clocks = <&clk_netsec>; -+ phy-mode = "rgmii"; -+ max-speed = <1000>; -+ max-frame-size = <9000>; -+ phy-handle = <ðphy0>; -+ -+ #address-cells = <1>; -+ #size-cells = <0>; -+ -+ ethphy0: ethernet-phy@1 { -+ compatible = "ethernet-phy-ieee802.3-c22"; -+ reg = <1>; -+ }; -+ }; --- -cgit v1.1 - -From d2fc584f8237746a84e6ec8690d8884f148fc449 Mon Sep 17 00:00:00 2001 -From: Peter Robinson <pbrobinson@gmail.com> -Date: Tue, 10 Oct 2017 11:35:51 +0100 -Subject: [PATCH] add interrupt.h, sort alphabetically - -Signed-off-by: Peter Robinson <pbrobinson@gmail.com> ---- - drivers/net/ethernet/socionext/netsec/netsec_platform.c | 17 +++++++++-------- - 1 file changed, 9 insertions(+), 8 deletions(-) - -diff --git a/drivers/net/ethernet/socionext/netsec/netsec_platform.c b/drivers/net/ethernet/socionext/netsec/netsec_platform.c -index 624f6a7093f6..79072bae917d 100644 ---- a/drivers/net/ethernet/socionext/netsec/netsec_platform.c -+++ b/drivers/net/ethernet/socionext/netsec/netsec_platform.c -@@ -14,21 +14,22 @@ - */ - - #include <linux/acpi.h> --#include <linux/device.h> --#include <linux/ctype.h> --#include <linux/netdevice.h> --#include <linux/types.h> - #include <linux/bitops.h> -+#include <linux/clk.h> -+#include <linux/ctype.h> -+#include <linux/device.h> - #include <linux/dma-mapping.h> -+#include <linux/io.h> -+#include <linux/interrupt.h> - #include <linux/module.h> --#include <linux/sizes.h> --#include <linux/platform_device.h> --#include <linux/clk.h> -+#include <linux/netdevice.h> - #include <linux/of.h> - #include <linux/of_device.h> - #include <linux/of_net.h> --#include <linux/io.h> -+#include <linux/platform_device.h> - #include <linux/pm_runtime.h> -+#include <linux/sizes.h> -+#include <linux/types.h> - - #include "netsec.h" - --- -2.14.2 - diff --git a/baseconfig/CONFIG_ACPI_SPCR_TABLE b/baseconfig/CONFIG_ACPI_SPCR_TABLE new file mode 100644 index 000000000..f8a19253c --- /dev/null +++ b/baseconfig/CONFIG_ACPI_SPCR_TABLE @@ -0,0 +1 @@ +CONFIG_ACPI_SPCR_TABLE=y diff --git a/baseconfig/CONFIG_ATH10K_SPECTRAL b/baseconfig/CONFIG_ATH10K_SPECTRAL new file mode 100644 index 000000000..8bc1582c6 --- /dev/null +++ b/baseconfig/CONFIG_ATH10K_SPECTRAL @@ -0,0 +1 @@ +# CONFIG_ATH10K_SPECTRAL is not set diff --git a/baseconfig/CONFIG_ATH9K_COMMON_SPECTRAL b/baseconfig/CONFIG_ATH9K_COMMON_SPECTRAL new file mode 100644 index 000000000..48a795914 --- /dev/null +++ b/baseconfig/CONFIG_ATH9K_COMMON_SPECTRAL @@ -0,0 +1 @@ +# CONFIG_ATH9K_COMMON_SPECTRAL is not set diff --git a/baseconfig/CONFIG_BLK_DEV_NULL_BLK_FAULT_INJECTION b/baseconfig/CONFIG_BLK_DEV_NULL_BLK_FAULT_INJECTION new file mode 100644 index 000000000..b93aaa794 --- /dev/null +++ b/baseconfig/CONFIG_BLK_DEV_NULL_BLK_FAULT_INJECTION @@ -0,0 +1 @@ +# CONFIG_BLK_DEV_NULL_BLK_FAULT_INJECTION is not set diff --git a/baseconfig/CONFIG_BPF_KPROBE_OVERRIDE b/baseconfig/CONFIG_BPF_KPROBE_OVERRIDE new file mode 100644 index 000000000..573604162 --- /dev/null +++ b/baseconfig/CONFIG_BPF_KPROBE_OVERRIDE @@ -0,0 +1 @@ +# CONFIG_BPF_KPROBE_OVERRIDE is not set diff --git a/baseconfig/CONFIG_BT_HCIBTUSB_AUTOSUSPEND b/baseconfig/CONFIG_BT_HCIBTUSB_AUTOSUSPEND index 76c0b541b..7a1be90bf 100644 --- a/baseconfig/CONFIG_BT_HCIBTUSB_AUTOSUSPEND +++ b/baseconfig/CONFIG_BT_HCIBTUSB_AUTOSUSPEND @@ -1 +1 @@ -CONFIG_BT_HCIBTUSB_AUTOSUSPEND=y +# CONFIG_BT_HCIBTUSB_AUTOSUSPEND is not set diff --git a/baseconfig/CONFIG_CHELSIO_IPSEC_INLINE b/baseconfig/CONFIG_CHELSIO_IPSEC_INLINE new file mode 100644 index 000000000..729e6efde --- /dev/null +++ b/baseconfig/CONFIG_CHELSIO_IPSEC_INLINE @@ -0,0 +1 @@ +CONFIG_CHELSIO_IPSEC_INLINE=y diff --git a/baseconfig/CONFIG_CIFS_SMB_DIRECT b/baseconfig/CONFIG_CIFS_SMB_DIRECT new file mode 100644 index 000000000..849bffb38 --- /dev/null +++ b/baseconfig/CONFIG_CIFS_SMB_DIRECT @@ -0,0 +1 @@ +# CONFIG_CIFS_SMB_DIRECT is not set diff --git a/baseconfig/CONFIG_DM_UNSTRIPED b/baseconfig/CONFIG_DM_UNSTRIPED new file mode 100644 index 000000000..27e4d2352 --- /dev/null +++ b/baseconfig/CONFIG_DM_UNSTRIPED @@ -0,0 +1 @@ +CONFIG_DM_UNSTRIPED=m diff --git a/baseconfig/CONFIG_DRM_AMDGPU_SI b/baseconfig/CONFIG_DRM_AMDGPU_SI index 78dd0a3c6..db6f0aeac 100644 --- a/baseconfig/CONFIG_DRM_AMDGPU_SI +++ b/baseconfig/CONFIG_DRM_AMDGPU_SI @@ -1 +1 @@ -# CONFIG_DRM_AMDGPU_SI is not set +CONFIG_DRM_AMDGPU_SI=y diff --git a/baseconfig/CONFIG_DRM_I2C_ADV7511 b/baseconfig/CONFIG_DRM_I2C_ADV7511 index 18208c93f..2d931f712 100644 --- a/baseconfig/CONFIG_DRM_I2C_ADV7511 +++ b/baseconfig/CONFIG_DRM_I2C_ADV7511 @@ -1 +1 @@ -# CONFIG_DRM_I2C_ADV7511 is not set +CONFIG_DRM_I2C_ADV7511=m diff --git a/baseconfig/CONFIG_DRM_I2C_ADV7511_CEC b/baseconfig/CONFIG_DRM_I2C_ADV7511_CEC index 25530967a..42e87e034 100644 --- a/baseconfig/CONFIG_DRM_I2C_ADV7511_CEC +++ b/baseconfig/CONFIG_DRM_I2C_ADV7511_CEC @@ -1 +1 @@ -# CONFIG_DRM_I2C_ADV7511_CEC is not set +CONFIG_DRM_I2C_ADV7511_CEC=y diff --git a/baseconfig/CONFIG_DRM_PANEL_ILITEK_IL9322 b/baseconfig/CONFIG_DRM_PANEL_ILITEK_IL9322 new file mode 100644 index 000000000..4a9fd454c --- /dev/null +++ b/baseconfig/CONFIG_DRM_PANEL_ILITEK_IL9322 @@ -0,0 +1 @@ +# CONFIG_DRM_PANEL_ILITEK_IL9322 is not set diff --git a/baseconfig/CONFIG_DVB_MMAP b/baseconfig/CONFIG_DVB_MMAP new file mode 100644 index 000000000..fea1faad6 --- /dev/null +++ b/baseconfig/CONFIG_DVB_MMAP @@ -0,0 +1 @@ +# CONFIG_DVB_MMAP is not set diff --git a/baseconfig/CONFIG_DVB_ULE_DEBUG b/baseconfig/CONFIG_DVB_ULE_DEBUG new file mode 100644 index 000000000..3acb854cc --- /dev/null +++ b/baseconfig/CONFIG_DVB_ULE_DEBUG @@ -0,0 +1 @@ +# CONFIG_DVB_ULE_DEBUG is not set diff --git a/baseconfig/CONFIG_FIND_BIT_BENCHMARK b/baseconfig/CONFIG_FIND_BIT_BENCHMARK new file mode 100644 index 000000000..93fe7e039 --- /dev/null +++ b/baseconfig/CONFIG_FIND_BIT_BENCHMARK @@ -0,0 +1 @@ +# CONFIG_FIND_BIT_BENCHMARK is not set diff --git a/baseconfig/CONFIG_GPIO_PCIE_IDIO_24 b/baseconfig/CONFIG_GPIO_PCIE_IDIO_24 new file mode 100644 index 000000000..6313cc61d --- /dev/null +++ b/baseconfig/CONFIG_GPIO_PCIE_IDIO_24 @@ -0,0 +1 @@ +# CONFIG_GPIO_PCIE_IDIO_24 is not set diff --git a/baseconfig/CONFIG_HARDENED_USERCOPY_FALLBACK b/baseconfig/CONFIG_HARDENED_USERCOPY_FALLBACK new file mode 100644 index 000000000..36d49f582 --- /dev/null +++ b/baseconfig/CONFIG_HARDENED_USERCOPY_FALLBACK @@ -0,0 +1 @@ +CONFIG_HARDENED_USERCOPY_FALLBACK=y diff --git a/baseconfig/CONFIG_HID_JABRA b/baseconfig/CONFIG_HID_JABRA new file mode 100644 index 000000000..c93fae8a6 --- /dev/null +++ b/baseconfig/CONFIG_HID_JABRA @@ -0,0 +1 @@ +CONFIG_HID_JABRA=m diff --git a/baseconfig/CONFIG_HW_RANDOM_TPM b/baseconfig/CONFIG_HW_RANDOM_TPM index 51b6ac9cb..d991b3c93 100644 --- a/baseconfig/CONFIG_HW_RANDOM_TPM +++ b/baseconfig/CONFIG_HW_RANDOM_TPM @@ -1 +1 @@ -CONFIG_HW_RANDOM_TPM=m +CONFIG_HW_RANDOM_TPM=y diff --git a/baseconfig/CONFIG_IIO_BUFFER_HW_CONSUMER b/baseconfig/CONFIG_IIO_BUFFER_HW_CONSUMER new file mode 100644 index 000000000..1d90b19ae --- /dev/null +++ b/baseconfig/CONFIG_IIO_BUFFER_HW_CONSUMER @@ -0,0 +1 @@ +CONFIG_IIO_BUFFER_HW_CONSUMER=m diff --git a/baseconfig/CONFIG_IP6_NF_MATCH_SRH b/baseconfig/CONFIG_IP6_NF_MATCH_SRH new file mode 100644 index 000000000..c90ba3ec7 --- /dev/null +++ b/baseconfig/CONFIG_IP6_NF_MATCH_SRH @@ -0,0 +1 @@ +CONFIG_IP6_NF_MATCH_SRH=m diff --git a/baseconfig/CONFIG_IPX_INTERN b/baseconfig/CONFIG_IPX_INTERN deleted file mode 100644 index d409381ce..000000000 --- a/baseconfig/CONFIG_IPX_INTERN +++ /dev/null @@ -1 +0,0 @@ -# CONFIG_IPX_INTERN is not set diff --git a/baseconfig/CONFIG_LEDS_LM3692X b/baseconfig/CONFIG_LEDS_LM3692X new file mode 100644 index 000000000..f31f9cb8a --- /dev/null +++ b/baseconfig/CONFIG_LEDS_LM3692X @@ -0,0 +1 @@ +CONFIG_LEDS_LM3692X=m diff --git a/baseconfig/CONFIG_LEDS_TRIGGER_NETDEV b/baseconfig/CONFIG_LEDS_TRIGGER_NETDEV new file mode 100644 index 000000000..890e0a4ba --- /dev/null +++ b/baseconfig/CONFIG_LEDS_TRIGGER_NETDEV @@ -0,0 +1 @@ +CONFIG_LEDS_TRIGGER_NETDEV=m diff --git a/baseconfig/CONFIG_LIRC b/baseconfig/CONFIG_LIRC index e1049c6ea..f0068c944 100644 --- a/baseconfig/CONFIG_LIRC +++ b/baseconfig/CONFIG_LIRC @@ -1 +1 @@ -CONFIG_LIRC=m +CONFIG_LIRC=y diff --git a/baseconfig/CONFIG_MELLANOX_PLATFORM b/baseconfig/CONFIG_MELLANOX_PLATFORM new file mode 100644 index 000000000..8bd7b2e54 --- /dev/null +++ b/baseconfig/CONFIG_MELLANOX_PLATFORM @@ -0,0 +1 @@ +CONFIG_MELLANOX_PLATFORM=y diff --git a/baseconfig/CONFIG_MFD_RTSX_PCI b/baseconfig/CONFIG_MFD_RTSX_PCI deleted file mode 100644 index 161c0e2c2..000000000 --- a/baseconfig/CONFIG_MFD_RTSX_PCI +++ /dev/null @@ -1 +0,0 @@ -CONFIG_MFD_RTSX_PCI=m diff --git a/baseconfig/CONFIG_MFD_RTSX_USB b/baseconfig/CONFIG_MFD_RTSX_USB deleted file mode 100644 index 1ec59a181..000000000 --- a/baseconfig/CONFIG_MFD_RTSX_USB +++ /dev/null @@ -1 +0,0 @@ -CONFIG_MFD_RTSX_USB=m diff --git a/baseconfig/CONFIG_MISC_RTSX_PCI b/baseconfig/CONFIG_MISC_RTSX_PCI new file mode 100644 index 000000000..c05d0dda2 --- /dev/null +++ b/baseconfig/CONFIG_MISC_RTSX_PCI @@ -0,0 +1 @@ +CONFIG_MISC_RTSX_PCI=m diff --git a/baseconfig/CONFIG_MISC_RTSX_USB b/baseconfig/CONFIG_MISC_RTSX_USB new file mode 100644 index 000000000..c22296e51 --- /dev/null +++ b/baseconfig/CONFIG_MISC_RTSX_USB @@ -0,0 +1 @@ +CONFIG_MISC_RTSX_USB=m diff --git a/baseconfig/CONFIG_MLXREG_HOTPLUG b/baseconfig/CONFIG_MLXREG_HOTPLUG new file mode 100644 index 000000000..44d9d3771 --- /dev/null +++ b/baseconfig/CONFIG_MLXREG_HOTPLUG @@ -0,0 +1 @@ +CONFIG_MLXREG_HOTPLUG=m diff --git a/baseconfig/CONFIG_MMC_CQHCI b/baseconfig/CONFIG_MMC_CQHCI new file mode 100644 index 000000000..3ecbe65d0 --- /dev/null +++ b/baseconfig/CONFIG_MMC_CQHCI @@ -0,0 +1 @@ +CONFIG_MMC_CQHCI=m diff --git a/baseconfig/CONFIG_MT76x2E b/baseconfig/CONFIG_MT76x2E new file mode 100644 index 000000000..9667d0d96 --- /dev/null +++ b/baseconfig/CONFIG_MT76x2E @@ -0,0 +1 @@ +CONFIG_MT76x2E=m diff --git a/baseconfig/CONFIG_NETDEVSIM b/baseconfig/CONFIG_NETDEVSIM new file mode 100644 index 000000000..f7666c533 --- /dev/null +++ b/baseconfig/CONFIG_NETDEVSIM @@ -0,0 +1 @@ +# CONFIG_NETDEVSIM is not set diff --git a/baseconfig/CONFIG_NET_DSA_LEGACY b/baseconfig/CONFIG_NET_DSA_LEGACY new file mode 100644 index 000000000..76080523a --- /dev/null +++ b/baseconfig/CONFIG_NET_DSA_LEGACY @@ -0,0 +1 @@ +# CONFIG_NET_DSA_LEGACY is not set diff --git a/baseconfig/CONFIG_NET_VENDOR_CORTINA b/baseconfig/CONFIG_NET_VENDOR_CORTINA new file mode 100644 index 000000000..3e188cd81 --- /dev/null +++ b/baseconfig/CONFIG_NET_VENDOR_CORTINA @@ -0,0 +1 @@ +# CONFIG_NET_VENDOR_CORTINA is not set diff --git a/baseconfig/CONFIG_NET_VENDOR_SOCIONEXT b/baseconfig/CONFIG_NET_VENDOR_SOCIONEXT new file mode 100644 index 000000000..7e4d43ba5 --- /dev/null +++ b/baseconfig/CONFIG_NET_VENDOR_SOCIONEXT @@ -0,0 +1 @@ +# CONFIG_NET_VENDOR_SOCIONEXT is not set diff --git a/baseconfig/CONFIG_NFT_FLOW_OFFLOAD b/baseconfig/CONFIG_NFT_FLOW_OFFLOAD new file mode 100644 index 000000000..2960ce593 --- /dev/null +++ b/baseconfig/CONFIG_NFT_FLOW_OFFLOAD @@ -0,0 +1 @@ +CONFIG_NFT_FLOW_OFFLOAD=m diff --git a/baseconfig/CONFIG_NF_FLOW_TABLE b/baseconfig/CONFIG_NF_FLOW_TABLE new file mode 100644 index 000000000..a2b5e03a7 --- /dev/null +++ b/baseconfig/CONFIG_NF_FLOW_TABLE @@ -0,0 +1 @@ +CONFIG_NF_FLOW_TABLE=m diff --git a/baseconfig/CONFIG_NF_FLOW_TABLE_INET b/baseconfig/CONFIG_NF_FLOW_TABLE_INET new file mode 100644 index 000000000..f41129cf1 --- /dev/null +++ b/baseconfig/CONFIG_NF_FLOW_TABLE_INET @@ -0,0 +1 @@ +CONFIG_NF_FLOW_TABLE_INET=m diff --git a/baseconfig/CONFIG_NF_FLOW_TABLE_IPV4 b/baseconfig/CONFIG_NF_FLOW_TABLE_IPV4 new file mode 100644 index 000000000..413b7910e --- /dev/null +++ b/baseconfig/CONFIG_NF_FLOW_TABLE_IPV4 @@ -0,0 +1 @@ +CONFIG_NF_FLOW_TABLE_IPV4=m diff --git a/baseconfig/CONFIG_NF_FLOW_TABLE_IPV6 b/baseconfig/CONFIG_NF_FLOW_TABLE_IPV6 new file mode 100644 index 000000000..d482fc459 --- /dev/null +++ b/baseconfig/CONFIG_NF_FLOW_TABLE_IPV6 @@ -0,0 +1 @@ +CONFIG_NF_FLOW_TABLE_IPV6=m diff --git a/baseconfig/CONFIG_PCIE_CADENCE_HOST b/baseconfig/CONFIG_PCIE_CADENCE_HOST new file mode 100644 index 000000000..1f1f00d6c --- /dev/null +++ b/baseconfig/CONFIG_PCIE_CADENCE_HOST @@ -0,0 +1 @@ +CONFIG_PCIE_CADENCE_HOST=y diff --git a/baseconfig/CONFIG_PINCTRL_AXP209 b/baseconfig/CONFIG_PINCTRL_AXP209 new file mode 100644 index 000000000..4e6ecd9bf --- /dev/null +++ b/baseconfig/CONFIG_PINCTRL_AXP209 @@ -0,0 +1 @@ +# CONFIG_PINCTRL_AXP209 is not set diff --git a/baseconfig/CONFIG_RAVE_SP_CORE b/baseconfig/CONFIG_RAVE_SP_CORE new file mode 100644 index 000000000..309dfa088 --- /dev/null +++ b/baseconfig/CONFIG_RAVE_SP_CORE @@ -0,0 +1 @@ +# CONFIG_RAVE_SP_CORE is not set diff --git a/baseconfig/CONFIG_RESET_HSDK_V1 b/baseconfig/CONFIG_RESET_HSDK_V1 deleted file mode 100644 index 4c2b97d79..000000000 --- a/baseconfig/CONFIG_RESET_HSDK_V1 +++ /dev/null @@ -1 +0,0 @@ -# CONFIG_RESET_HSDK_V1 is not set diff --git a/baseconfig/CONFIG_RUNTIME_TESTING_MENU b/baseconfig/CONFIG_RUNTIME_TESTING_MENU new file mode 100644 index 000000000..7d54fe119 --- /dev/null +++ b/baseconfig/CONFIG_RUNTIME_TESTING_MENU @@ -0,0 +1 @@ +CONFIG_RUNTIME_TESTING_MENU=y diff --git a/baseconfig/CONFIG_SATA_MOBILE_LPM_POLICY b/baseconfig/CONFIG_SATA_MOBILE_LPM_POLICY index 17ae48a01..a510f6d0b 100644 --- a/baseconfig/CONFIG_SATA_MOBILE_LPM_POLICY +++ b/baseconfig/CONFIG_SATA_MOBILE_LPM_POLICY @@ -1 +1 @@ -CONFIG_SATA_MOBILE_LPM_POLICY=3 +CONFIG_SATA_MOBILE_LPM_POLICY=0 diff --git a/baseconfig/CONFIG_SD_ADC_MODULATOR b/baseconfig/CONFIG_SD_ADC_MODULATOR new file mode 100644 index 000000000..ec43a0ff1 --- /dev/null +++ b/baseconfig/CONFIG_SD_ADC_MODULATOR @@ -0,0 +1 @@ +# CONFIG_SD_ADC_MODULATOR is not set diff --git a/baseconfig/CONFIG_SENSORS_W83773G b/baseconfig/CONFIG_SENSORS_W83773G new file mode 100644 index 000000000..d0e8c4c84 --- /dev/null +++ b/baseconfig/CONFIG_SENSORS_W83773G @@ -0,0 +1 @@ +CONFIG_SENSORS_W83773G=m diff --git a/baseconfig/CONFIG_SIOX b/baseconfig/CONFIG_SIOX new file mode 100644 index 000000000..89578e7ae --- /dev/null +++ b/baseconfig/CONFIG_SIOX @@ -0,0 +1 @@ +# CONFIG_SIOX is not set diff --git a/baseconfig/CONFIG_SLIMBUS b/baseconfig/CONFIG_SLIMBUS new file mode 100644 index 000000000..63141c29d --- /dev/null +++ b/baseconfig/CONFIG_SLIMBUS @@ -0,0 +1 @@ +# CONFIG_SLIMBUS is not set diff --git a/baseconfig/CONFIG_SND_SOC_MAX98373 b/baseconfig/CONFIG_SND_SOC_MAX98373 new file mode 100644 index 000000000..c82d1c860 --- /dev/null +++ b/baseconfig/CONFIG_SND_SOC_MAX98373 @@ -0,0 +1 @@ +CONFIG_SND_SOC_MAX98373=m diff --git a/baseconfig/CONFIG_SND_SOC_PCM186X_I2C b/baseconfig/CONFIG_SND_SOC_PCM186X_I2C new file mode 100644 index 000000000..8d0fad2b4 --- /dev/null +++ b/baseconfig/CONFIG_SND_SOC_PCM186X_I2C @@ -0,0 +1 @@ +CONFIG_SND_SOC_PCM186X_I2C=m diff --git a/baseconfig/CONFIG_SND_SOC_PCM186X_SPI b/baseconfig/CONFIG_SND_SOC_PCM186X_SPI new file mode 100644 index 000000000..0e112b31e --- /dev/null +++ b/baseconfig/CONFIG_SND_SOC_PCM186X_SPI @@ -0,0 +1 @@ +CONFIG_SND_SOC_PCM186X_SPI=m diff --git a/baseconfig/CONFIG_SND_SOC_TAS6424 b/baseconfig/CONFIG_SND_SOC_TAS6424 new file mode 100644 index 000000000..c70624da7 --- /dev/null +++ b/baseconfig/CONFIG_SND_SOC_TAS6424 @@ -0,0 +1 @@ +CONFIG_SND_SOC_TAS6424=m diff --git a/baseconfig/CONFIG_SND_SOC_TLV320AIC32X4_I2C b/baseconfig/CONFIG_SND_SOC_TLV320AIC32X4_I2C new file mode 100644 index 000000000..e7ecb5383 --- /dev/null +++ b/baseconfig/CONFIG_SND_SOC_TLV320AIC32X4_I2C @@ -0,0 +1 @@ +CONFIG_SND_SOC_TLV320AIC32X4_I2C=m diff --git a/baseconfig/CONFIG_SND_SOC_TLV320AIC32X4_SPI b/baseconfig/CONFIG_SND_SOC_TLV320AIC32X4_SPI new file mode 100644 index 000000000..166098de5 --- /dev/null +++ b/baseconfig/CONFIG_SND_SOC_TLV320AIC32X4_SPI @@ -0,0 +1 @@ +CONFIG_SND_SOC_TLV320AIC32X4_SPI=m diff --git a/baseconfig/CONFIG_SND_SOC_TSCS42XX b/baseconfig/CONFIG_SND_SOC_TSCS42XX new file mode 100644 index 000000000..d91060f18 --- /dev/null +++ b/baseconfig/CONFIG_SND_SOC_TSCS42XX @@ -0,0 +1 @@ +CONFIG_SND_SOC_TSCS42XX=m diff --git a/baseconfig/CONFIG_SOUNDWIRE b/baseconfig/CONFIG_SOUNDWIRE new file mode 100644 index 000000000..1446f20a3 --- /dev/null +++ b/baseconfig/CONFIG_SOUNDWIRE @@ -0,0 +1 @@ +CONFIG_SOUNDWIRE=y diff --git a/baseconfig/CONFIG_SOUNDWIRE_BUS b/baseconfig/CONFIG_SOUNDWIRE_BUS new file mode 100644 index 000000000..dd3714b7c --- /dev/null +++ b/baseconfig/CONFIG_SOUNDWIRE_BUS @@ -0,0 +1 @@ +CONFIG_SOUNDWIRE_BUS=m diff --git a/baseconfig/CONFIG_SOUNDWIRE_CADENCE b/baseconfig/CONFIG_SOUNDWIRE_CADENCE new file mode 100644 index 000000000..f97a403fa --- /dev/null +++ b/baseconfig/CONFIG_SOUNDWIRE_CADENCE @@ -0,0 +1 @@ +CONFIG_SOUNDWIRE_CADENCE=m diff --git a/baseconfig/CONFIG_ST_UVIS25 b/baseconfig/CONFIG_ST_UVIS25 new file mode 100644 index 000000000..55c15bb5b --- /dev/null +++ b/baseconfig/CONFIG_ST_UVIS25 @@ -0,0 +1 @@ +CONFIG_ST_UVIS25=m diff --git a/baseconfig/CONFIG_ST_UVIS25_I2C b/baseconfig/CONFIG_ST_UVIS25_I2C new file mode 100644 index 000000000..677b118e1 --- /dev/null +++ b/baseconfig/CONFIG_ST_UVIS25_I2C @@ -0,0 +1 @@ +CONFIG_ST_UVIS25_I2C=m diff --git a/baseconfig/CONFIG_ST_UVIS25_SPI b/baseconfig/CONFIG_ST_UVIS25_SPI new file mode 100644 index 000000000..e094a51ea --- /dev/null +++ b/baseconfig/CONFIG_ST_UVIS25_SPI @@ -0,0 +1 @@ +CONFIG_ST_UVIS25_SPI=m diff --git a/baseconfig/CONFIG_TIMER_STATS b/baseconfig/CONFIG_TIMER_STATS deleted file mode 100644 index 0dfc820be..000000000 --- a/baseconfig/CONFIG_TIMER_STATS +++ /dev/null @@ -1 +0,0 @@ -# CONFIG_TIMER_STATS is not set diff --git a/baseconfig/CONFIG_UNISYS_VISORBUS b/baseconfig/CONFIG_UNISYS_VISORBUS new file mode 100644 index 000000000..ba34845c8 --- /dev/null +++ b/baseconfig/CONFIG_UNISYS_VISORBUS @@ -0,0 +1 @@ +# CONFIG_UNISYS_VISORBUS is not set diff --git a/baseconfig/CONFIG_USB_CHIPIDEA_ULPI b/baseconfig/CONFIG_USB_CHIPIDEA_ULPI deleted file mode 100644 index c97b84c79..000000000 --- a/baseconfig/CONFIG_USB_CHIPIDEA_ULPI +++ /dev/null @@ -1 +0,0 @@ -# CONFIG_USB_CHIPIDEA_ULPI is not set diff --git a/baseconfig/CONFIG_USB_XHCI_DBGCAP b/baseconfig/CONFIG_USB_XHCI_DBGCAP new file mode 100644 index 000000000..3cf92a71a --- /dev/null +++ b/baseconfig/CONFIG_USB_XHCI_DBGCAP @@ -0,0 +1 @@ +CONFIG_USB_XHCI_DBGCAP=y diff --git a/baseconfig/CONFIG_VIRTIO_MENU b/baseconfig/CONFIG_VIRTIO_MENU new file mode 100644 index 000000000..ce9f283a8 --- /dev/null +++ b/baseconfig/CONFIG_VIRTIO_MENU @@ -0,0 +1 @@ +CONFIG_VIRTIO_MENU=y diff --git a/baseconfig/CONFIG_XILINX_VCU b/baseconfig/CONFIG_XILINX_VCU new file mode 100644 index 000000000..6ba10b386 --- /dev/null +++ b/baseconfig/CONFIG_XILINX_VCU @@ -0,0 +1 @@ +CONFIG_XILINX_VCU=m diff --git a/baseconfig/CONFIG_ZOPT2201 b/baseconfig/CONFIG_ZOPT2201 new file mode 100644 index 000000000..407ef5f8c --- /dev/null +++ b/baseconfig/CONFIG_ZOPT2201 @@ -0,0 +1 @@ +CONFIG_ZOPT2201=m diff --git a/baseconfig/arm/CONFIG_ARM_ARMADA_37XX_CPUFREQ b/baseconfig/arm/CONFIG_ARM_ARMADA_37XX_CPUFREQ new file mode 100644 index 000000000..c2475dc86 --- /dev/null +++ b/baseconfig/arm/CONFIG_ARM_ARMADA_37XX_CPUFREQ @@ -0,0 +1 @@ +CONFIG_ARM_ARMADA_37XX_CPUFREQ=m diff --git a/baseconfig/arm/CONFIG_ARM_BIG_LITTLE_CPUFREQ b/baseconfig/arm/CONFIG_ARM_BIG_LITTLE_CPUFREQ index 89d555289..8b76dfa84 100644 --- a/baseconfig/arm/CONFIG_ARM_BIG_LITTLE_CPUFREQ +++ b/baseconfig/arm/CONFIG_ARM_BIG_LITTLE_CPUFREQ @@ -1 +1 @@ -# CONFIG_ARM_BIG_LITTLE_CPUFREQ is not set +CONFIG_ARM_BIG_LITTLE_CPUFREQ=m diff --git a/baseconfig/arm/CONFIG_ARM_PTDUMP_DEBUGFS b/baseconfig/arm/CONFIG_ARM_PTDUMP_DEBUGFS new file mode 100644 index 000000000..b0e62594c --- /dev/null +++ b/baseconfig/arm/CONFIG_ARM_PTDUMP_DEBUGFS @@ -0,0 +1 @@ +# CONFIG_ARM_PTDUMP_DEBUGFS is not set diff --git a/baseconfig/arm/armv7/CONFIG_ARM_SCPI_CPUFREQ b/baseconfig/arm/CONFIG_ARM_SCPI_CPUFREQ index f2b7060d6..f2b7060d6 100644 --- a/baseconfig/arm/armv7/CONFIG_ARM_SCPI_CPUFREQ +++ b/baseconfig/arm/CONFIG_ARM_SCPI_CPUFREQ diff --git a/baseconfig/arm/CONFIG_CRYPTO_DEV_MV_CESA b/baseconfig/arm/CONFIG_CRYPTO_DEV_MV_CESA deleted file mode 100644 index 25ac0e90d..000000000 --- a/baseconfig/arm/CONFIG_CRYPTO_DEV_MV_CESA +++ /dev/null @@ -1 +0,0 @@ -CONFIG_CRYPTO_DEV_MV_CESA=m diff --git a/baseconfig/arm/CONFIG_DEBUG_WX b/baseconfig/arm/CONFIG_DEBUG_WX new file mode 100644 index 000000000..95e08f44b --- /dev/null +++ b/baseconfig/arm/CONFIG_DEBUG_WX @@ -0,0 +1 @@ +CONFIG_DEBUG_WX=y diff --git a/baseconfig/arm/CONFIG_DRM_I2C_ADV7511 b/baseconfig/arm/CONFIG_DRM_I2C_ADV7511 new file mode 100644 index 000000000..2d931f712 --- /dev/null +++ b/baseconfig/arm/CONFIG_DRM_I2C_ADV7511 @@ -0,0 +1 @@ +CONFIG_DRM_I2C_ADV7511=m diff --git a/baseconfig/arm/CONFIG_DRM_I2C_ADV7511_CEC b/baseconfig/arm/CONFIG_DRM_I2C_ADV7511_CEC new file mode 100644 index 000000000..42e87e034 --- /dev/null +++ b/baseconfig/arm/CONFIG_DRM_I2C_ADV7511_CEC @@ -0,0 +1 @@ +CONFIG_DRM_I2C_ADV7511_CEC=y diff --git a/baseconfig/arm/CONFIG_DRM_PANEL_ILITEK_IL9322 b/baseconfig/arm/CONFIG_DRM_PANEL_ILITEK_IL9322 new file mode 100644 index 000000000..c18cc1b27 --- /dev/null +++ b/baseconfig/arm/CONFIG_DRM_PANEL_ILITEK_IL9322 @@ -0,0 +1 @@ +CONFIG_DRM_PANEL_ILITEK_IL9322=m diff --git a/baseconfig/arm/CONFIG_FTWDT010_WATCHDOG b/baseconfig/arm/CONFIG_FTWDT010_WATCHDOG new file mode 100644 index 000000000..63ed03113 --- /dev/null +++ b/baseconfig/arm/CONFIG_FTWDT010_WATCHDOG @@ -0,0 +1 @@ +# CONFIG_FTWDT010_WATCHDOG is not set diff --git a/baseconfig/arm/CONFIG_GPIO_RASPBERRYPI_EXP b/baseconfig/arm/CONFIG_GPIO_RASPBERRYPI_EXP new file mode 100644 index 000000000..c98e757e1 --- /dev/null +++ b/baseconfig/arm/CONFIG_GPIO_RASPBERRYPI_EXP @@ -0,0 +1 @@ +CONFIG_GPIO_RASPBERRYPI_EXP=m diff --git a/baseconfig/arm/CONFIG_I2C_GPIO_FAULT_INJECTOR b/baseconfig/arm/CONFIG_I2C_GPIO_FAULT_INJECTOR new file mode 100644 index 000000000..711cee4c9 --- /dev/null +++ b/baseconfig/arm/CONFIG_I2C_GPIO_FAULT_INJECTOR @@ -0,0 +1 @@ +# CONFIG_I2C_GPIO_FAULT_INJECTOR is not set diff --git a/baseconfig/arm/CONFIG_MFD_CROS_EC_CHARDEV b/baseconfig/arm/CONFIG_MFD_CROS_EC_CHARDEV new file mode 100644 index 000000000..fc68f1d89 --- /dev/null +++ b/baseconfig/arm/CONFIG_MFD_CROS_EC_CHARDEV @@ -0,0 +1 @@ +CONFIG_MFD_CROS_EC_CHARDEV=m diff --git a/baseconfig/arm/CONFIG_MTD_NAND_MARVELL b/baseconfig/arm/CONFIG_MTD_NAND_MARVELL new file mode 100644 index 000000000..439fe9528 --- /dev/null +++ b/baseconfig/arm/CONFIG_MTD_NAND_MARVELL @@ -0,0 +1 @@ +CONFIG_MTD_NAND_MARVELL=m diff --git a/baseconfig/arm/CONFIG_NCP_FS b/baseconfig/arm/CONFIG_NCP_FS deleted file mode 100644 index 62eb3bdd0..000000000 --- a/baseconfig/arm/CONFIG_NCP_FS +++ /dev/null @@ -1 +0,0 @@ -# CONFIG_NCP_FS is not set diff --git a/baseconfig/arm/CONFIG_PINCTRL_AXP209 b/baseconfig/arm/CONFIG_PINCTRL_AXP209 new file mode 100644 index 000000000..6ccab1d44 --- /dev/null +++ b/baseconfig/arm/CONFIG_PINCTRL_AXP209 @@ -0,0 +1 @@ +CONFIG_PINCTRL_AXP209=m diff --git a/baseconfig/arm/CONFIG_PINCTRL_MSM8998 b/baseconfig/arm/CONFIG_PINCTRL_MSM8998 new file mode 100644 index 000000000..e2650002f --- /dev/null +++ b/baseconfig/arm/CONFIG_PINCTRL_MSM8998 @@ -0,0 +1 @@ +CONFIG_PINCTRL_MSM8998=m diff --git a/baseconfig/arm/CONFIG_QCOM_A53PLL b/baseconfig/arm/CONFIG_QCOM_A53PLL new file mode 100644 index 000000000..6928d6138 --- /dev/null +++ b/baseconfig/arm/CONFIG_QCOM_A53PLL @@ -0,0 +1 @@ +CONFIG_QCOM_A53PLL=m diff --git a/baseconfig/arm/CONFIG_QCOM_CLK_APCS_MSM8916 b/baseconfig/arm/CONFIG_QCOM_CLK_APCS_MSM8916 new file mode 100644 index 000000000..ca97c450e --- /dev/null +++ b/baseconfig/arm/CONFIG_QCOM_CLK_APCS_MSM8916 @@ -0,0 +1 @@ +CONFIG_QCOM_CLK_APCS_MSM8916=m diff --git a/baseconfig/arm/aarch64/CONFIG_REFCOUNT_FULL b/baseconfig/arm/CONFIG_REFCOUNT_FULL index c7e4a167a..c7e4a167a 100644 --- a/baseconfig/arm/aarch64/CONFIG_REFCOUNT_FULL +++ b/baseconfig/arm/CONFIG_REFCOUNT_FULL diff --git a/baseconfig/arm/CONFIG_RTC_DRV_CROS_EC b/baseconfig/arm/CONFIG_RTC_DRV_CROS_EC new file mode 100644 index 000000000..4665f7916 --- /dev/null +++ b/baseconfig/arm/CONFIG_RTC_DRV_CROS_EC @@ -0,0 +1 @@ +CONFIG_RTC_DRV_CROS_EC=m diff --git a/baseconfig/arm/CONFIG_SATA_SIL24 b/baseconfig/arm/CONFIG_SATA_SIL24 deleted file mode 100644 index 7526a06a0..000000000 --- a/baseconfig/arm/CONFIG_SATA_SIL24 +++ /dev/null @@ -1 +0,0 @@ -# CONFIG_SATA_SIL24 is not set diff --git a/baseconfig/arm/CONFIG_SD_ADC_MODULATOR b/baseconfig/arm/CONFIG_SD_ADC_MODULATOR new file mode 100644 index 000000000..de78e1d14 --- /dev/null +++ b/baseconfig/arm/CONFIG_SD_ADC_MODULATOR @@ -0,0 +1 @@ +CONFIG_SD_ADC_MODULATOR=m diff --git a/baseconfig/arm/CONFIG_SLIMBUS b/baseconfig/arm/CONFIG_SLIMBUS new file mode 100644 index 000000000..6b6eac17c --- /dev/null +++ b/baseconfig/arm/CONFIG_SLIMBUS @@ -0,0 +1 @@ +CONFIG_SLIMBUS=m diff --git a/baseconfig/arm/CONFIG_SLIM_QCOM_CTRL b/baseconfig/arm/CONFIG_SLIM_QCOM_CTRL new file mode 100644 index 000000000..ea353222f --- /dev/null +++ b/baseconfig/arm/CONFIG_SLIM_QCOM_CTRL @@ -0,0 +1 @@ +CONFIG_SLIM_QCOM_CTRL=m diff --git a/baseconfig/arm/CONFIG_SPMI_PMIC_CLKDIV b/baseconfig/arm/CONFIG_SPMI_PMIC_CLKDIV new file mode 100644 index 000000000..2b11b2de7 --- /dev/null +++ b/baseconfig/arm/CONFIG_SPMI_PMIC_CLKDIV @@ -0,0 +1 @@ +CONFIG_SPMI_PMIC_CLKDIV=m diff --git a/baseconfig/arm/CONFIG_SUN8I_DE2_CCU b/baseconfig/arm/CONFIG_SUN8I_DE2_CCU index 41a3847ad..1729d1f68 100644 --- a/baseconfig/arm/CONFIG_SUN8I_DE2_CCU +++ b/baseconfig/arm/CONFIG_SUN8I_DE2_CCU @@ -1 +1 @@ -# CONFIG_SUN8I_DE2_CCU is not set +CONFIG_SUN8I_DE2_CCU=y diff --git a/baseconfig/arm/CONFIG_TEGRA_VDE b/baseconfig/arm/CONFIG_TEGRA_VDE new file mode 100644 index 000000000..1b373e8f2 --- /dev/null +++ b/baseconfig/arm/CONFIG_TEGRA_VDE @@ -0,0 +1 @@ +CONFIG_TEGRA_VDE=m diff --git a/baseconfig/arm/CONFIG_TINYDRM_ILI9225 b/baseconfig/arm/CONFIG_TINYDRM_ILI9225 new file mode 100644 index 000000000..3f9d07d4e --- /dev/null +++ b/baseconfig/arm/CONFIG_TINYDRM_ILI9225 @@ -0,0 +1 @@ +CONFIG_TINYDRM_ILI9225=m diff --git a/baseconfig/arm/CONFIG_TINYDRM_ST7735R b/baseconfig/arm/CONFIG_TINYDRM_ST7735R new file mode 100644 index 000000000..89c0fd568 --- /dev/null +++ b/baseconfig/arm/CONFIG_TINYDRM_ST7735R @@ -0,0 +1 @@ +CONFIG_TINYDRM_ST7735R=m diff --git a/baseconfig/arm/aarch64/CONFIG_USB_MUSB_SUNXI b/baseconfig/arm/CONFIG_USB_MUSB_SUNXI index 258e716ab..258e716ab 100644 --- a/baseconfig/arm/aarch64/CONFIG_USB_MUSB_SUNXI +++ b/baseconfig/arm/CONFIG_USB_MUSB_SUNXI diff --git a/baseconfig/arm/CONFIG_USB_OTG_FSM b/baseconfig/arm/CONFIG_USB_OTG_FSM new file mode 100644 index 000000000..6dc1aac25 --- /dev/null +++ b/baseconfig/arm/CONFIG_USB_OTG_FSM @@ -0,0 +1 @@ +CONFIG_USB_OTG_FSM=m diff --git a/baseconfig/arm/aarch64/CONFIG_ARCH_ZYNQMP b/baseconfig/arm/aarch64/CONFIG_ARCH_ZYNQMP index f92a386c6..59df22f3c 100644 --- a/baseconfig/arm/aarch64/CONFIG_ARCH_ZYNQMP +++ b/baseconfig/arm/aarch64/CONFIG_ARCH_ZYNQMP @@ -1 +1 @@ -# CONFIG_ARCH_ZYNQMP is not set +CONFIG_ARCH_ZYNQMP=y diff --git a/baseconfig/arm/aarch64/CONFIG_ARM64_PMEM b/baseconfig/arm/aarch64/CONFIG_ARM64_PMEM index 9325600d1..f2e1b130f 100644 --- a/baseconfig/arm/aarch64/CONFIG_ARM64_PMEM +++ b/baseconfig/arm/aarch64/CONFIG_ARM64_PMEM @@ -1 +1 @@ -# CONFIG_ARM64_PMEM is not set +CONFIG_ARM64_PMEM=y diff --git a/baseconfig/arm/aarch64/CONFIG_ARM64_RAS_EXTN b/baseconfig/arm/aarch64/CONFIG_ARM64_RAS_EXTN new file mode 100644 index 000000000..b664a0de1 --- /dev/null +++ b/baseconfig/arm/aarch64/CONFIG_ARM64_RAS_EXTN @@ -0,0 +1 @@ +CONFIG_ARM64_RAS_EXTN=y diff --git a/baseconfig/arm/aarch64/CONFIG_ARM_DSU_PMU b/baseconfig/arm/aarch64/CONFIG_ARM_DSU_PMU new file mode 100644 index 000000000..383292c89 --- /dev/null +++ b/baseconfig/arm/aarch64/CONFIG_ARM_DSU_PMU @@ -0,0 +1 @@ +CONFIG_ARM_DSU_PMU=m diff --git a/baseconfig/arm/aarch64/CONFIG_ARM_SDE_INTERFACE b/baseconfig/arm/aarch64/CONFIG_ARM_SDE_INTERFACE new file mode 100644 index 000000000..b33609158 --- /dev/null +++ b/baseconfig/arm/aarch64/CONFIG_ARM_SDE_INTERFACE @@ -0,0 +1 @@ +CONFIG_ARM_SDE_INTERFACE=y diff --git a/baseconfig/arm/aarch64/CONFIG_CAVIUM_PTP b/baseconfig/arm/aarch64/CONFIG_CAVIUM_PTP new file mode 100644 index 000000000..271967f8a --- /dev/null +++ b/baseconfig/arm/aarch64/CONFIG_CAVIUM_PTP @@ -0,0 +1 @@ +CONFIG_CAVIUM_PTP=m diff --git a/baseconfig/arm/aarch64/CONFIG_CRYPTO_SHA3_ARM64 b/baseconfig/arm/aarch64/CONFIG_CRYPTO_SHA3_ARM64 new file mode 100644 index 000000000..52d5aeaab --- /dev/null +++ b/baseconfig/arm/aarch64/CONFIG_CRYPTO_SHA3_ARM64 @@ -0,0 +1 @@ +CONFIG_CRYPTO_SHA3_ARM64=m diff --git a/baseconfig/arm/aarch64/CONFIG_CRYPTO_SHA512_ARM64_CE b/baseconfig/arm/aarch64/CONFIG_CRYPTO_SHA512_ARM64_CE new file mode 100644 index 000000000..3a159ef93 --- /dev/null +++ b/baseconfig/arm/aarch64/CONFIG_CRYPTO_SHA512_ARM64_CE @@ -0,0 +1 @@ +CONFIG_CRYPTO_SHA512_ARM64_CE=m diff --git a/baseconfig/arm/aarch64/CONFIG_CRYPTO_SM3_ARM64_CE b/baseconfig/arm/aarch64/CONFIG_CRYPTO_SM3_ARM64_CE new file mode 100644 index 000000000..93a6a00f4 --- /dev/null +++ b/baseconfig/arm/aarch64/CONFIG_CRYPTO_SM3_ARM64_CE @@ -0,0 +1 @@ +CONFIG_CRYPTO_SM3_ARM64_CE=m diff --git a/baseconfig/arm/aarch64/CONFIG_FB_XILINX b/baseconfig/arm/aarch64/CONFIG_FB_XILINX new file mode 100644 index 000000000..4bcb7d896 --- /dev/null +++ b/baseconfig/arm/aarch64/CONFIG_FB_XILINX @@ -0,0 +1 @@ +CONFIG_FB_XILINX=m diff --git a/baseconfig/arm/aarch64/CONFIG_GPIO_MB86S7X b/baseconfig/arm/aarch64/CONFIG_GPIO_MB86S7X new file mode 100644 index 000000000..3c4c7370f --- /dev/null +++ b/baseconfig/arm/aarch64/CONFIG_GPIO_MB86S7X @@ -0,0 +1 @@ +CONFIG_GPIO_MB86S7X=m diff --git a/baseconfig/arm/aarch64/CONFIG_GPIO_ZYNQ b/baseconfig/arm/aarch64/CONFIG_GPIO_ZYNQ new file mode 100644 index 000000000..2f9ba2067 --- /dev/null +++ b/baseconfig/arm/aarch64/CONFIG_GPIO_ZYNQ @@ -0,0 +1 @@ +CONFIG_GPIO_ZYNQ=m diff --git a/baseconfig/arm/aarch64/CONFIG_NET_VENDOR_SOCIONEXT b/baseconfig/arm/aarch64/CONFIG_NET_VENDOR_SOCIONEXT new file mode 100644 index 000000000..213e48587 --- /dev/null +++ b/baseconfig/arm/aarch64/CONFIG_NET_VENDOR_SOCIONEXT @@ -0,0 +1 @@ +CONFIG_NET_VENDOR_SOCIONEXT=y diff --git a/baseconfig/arm/aarch64/CONFIG_PCIE_XILINX_NWL b/baseconfig/arm/aarch64/CONFIG_PCIE_XILINX_NWL new file mode 100644 index 000000000..90eae1f9b --- /dev/null +++ b/baseconfig/arm/aarch64/CONFIG_PCIE_XILINX_NWL @@ -0,0 +1 @@ +CONFIG_PCIE_XILINX_NWL=y diff --git a/baseconfig/arm/aarch64/CONFIG_PINCTRL_MESON_AXG b/baseconfig/arm/aarch64/CONFIG_PINCTRL_MESON_AXG new file mode 100644 index 000000000..fec409eb2 --- /dev/null +++ b/baseconfig/arm/aarch64/CONFIG_PINCTRL_MESON_AXG @@ -0,0 +1 @@ +CONFIG_PINCTRL_MESON_AXG=y diff --git a/baseconfig/arm/aarch64/CONFIG_RTC_DRV_ZYNQMP b/baseconfig/arm/aarch64/CONFIG_RTC_DRV_ZYNQMP new file mode 100644 index 000000000..440cc295e --- /dev/null +++ b/baseconfig/arm/aarch64/CONFIG_RTC_DRV_ZYNQMP @@ -0,0 +1 @@ +CONFIG_RTC_DRV_ZYNQMP=m diff --git a/baseconfig/arm/aarch64/CONFIG_SPI_ZYNQMP_GQSPI b/baseconfig/arm/aarch64/CONFIG_SPI_ZYNQMP_GQSPI new file mode 100644 index 000000000..98ca0a7ef --- /dev/null +++ b/baseconfig/arm/aarch64/CONFIG_SPI_ZYNQMP_GQSPI @@ -0,0 +1 @@ +CONFIG_SPI_ZYNQMP_GQSPI=m diff --git a/baseconfig/arm/aarch64/CONFIG_STUB_CLK_HI3660 b/baseconfig/arm/aarch64/CONFIG_STUB_CLK_HI3660 new file mode 100644 index 000000000..99ffc024c --- /dev/null +++ b/baseconfig/arm/aarch64/CONFIG_STUB_CLK_HI3660 @@ -0,0 +1 @@ +CONFIG_STUB_CLK_HI3660=y diff --git a/baseconfig/arm/aarch64/CONFIG_XILINX_ZYNQMP_DMA b/baseconfig/arm/aarch64/CONFIG_XILINX_ZYNQMP_DMA new file mode 100644 index 000000000..9d804ee98 --- /dev/null +++ b/baseconfig/arm/aarch64/CONFIG_XILINX_ZYNQMP_DMA @@ -0,0 +1 @@ +CONFIG_XILINX_ZYNQMP_DMA=m diff --git a/baseconfig/arm/armv7/CONFIG_ARM_BIG_LITTLE_CPUFREQ b/baseconfig/arm/armv7/CONFIG_ARM_BIG_LITTLE_CPUFREQ deleted file mode 100644 index 8b76dfa84..000000000 --- a/baseconfig/arm/armv7/CONFIG_ARM_BIG_LITTLE_CPUFREQ +++ /dev/null @@ -1 +0,0 @@ -CONFIG_ARM_BIG_LITTLE_CPUFREQ=m diff --git a/baseconfig/arm/armv7/CONFIG_DRM_EXYNOS_FIMC b/baseconfig/arm/armv7/CONFIG_DRM_EXYNOS_FIMC deleted file mode 100644 index 761cf114e..000000000 --- a/baseconfig/arm/armv7/CONFIG_DRM_EXYNOS_FIMC +++ /dev/null @@ -1 +0,0 @@ -CONFIG_DRM_EXYNOS_FIMC=y diff --git a/baseconfig/arm/armv7/CONFIG_DRM_EXYNOS_GSC b/baseconfig/arm/armv7/CONFIG_DRM_EXYNOS_GSC deleted file mode 100644 index cf2c394a6..000000000 --- a/baseconfig/arm/armv7/CONFIG_DRM_EXYNOS_GSC +++ /dev/null @@ -1 +0,0 @@ -CONFIG_DRM_EXYNOS_GSC=y diff --git a/baseconfig/arm/armv7/CONFIG_DRM_EXYNOS_IPP b/baseconfig/arm/armv7/CONFIG_DRM_EXYNOS_IPP deleted file mode 100644 index 0d547a2f8..000000000 --- a/baseconfig/arm/armv7/CONFIG_DRM_EXYNOS_IPP +++ /dev/null @@ -1 +0,0 @@ -CONFIG_DRM_EXYNOS_IPP=y diff --git a/baseconfig/arm/armv7/CONFIG_DRM_EXYNOS_ROTATOR b/baseconfig/arm/armv7/CONFIG_DRM_EXYNOS_ROTATOR deleted file mode 100644 index b994e95b5..000000000 --- a/baseconfig/arm/armv7/CONFIG_DRM_EXYNOS_ROTATOR +++ /dev/null @@ -1 +0,0 @@ -CONFIG_DRM_EXYNOS_ROTATOR=y diff --git a/baseconfig/arm/armv7/CONFIG_HW_RANDOM_EXYNOS b/baseconfig/arm/armv7/CONFIG_HW_RANDOM_EXYNOS new file mode 100644 index 000000000..87c25300c --- /dev/null +++ b/baseconfig/arm/armv7/CONFIG_HW_RANDOM_EXYNOS @@ -0,0 +1 @@ +CONFIG_HW_RANDOM_EXYNOS=m diff --git a/baseconfig/arm/armv7/CONFIG_SUN8I_DE2_CCU b/baseconfig/arm/armv7/CONFIG_SUN8I_DE2_CCU deleted file mode 100644 index 1729d1f68..000000000 --- a/baseconfig/arm/armv7/CONFIG_SUN8I_DE2_CCU +++ /dev/null @@ -1 +0,0 @@ -CONFIG_SUN8I_DE2_CCU=y diff --git a/baseconfig/arm/armv7/armv7/CONFIG_DRM_ETNAVIV_THERMAL b/baseconfig/arm/armv7/armv7/CONFIG_DRM_ETNAVIV_THERMAL new file mode 100644 index 000000000..ddd9d5832 --- /dev/null +++ b/baseconfig/arm/armv7/armv7/CONFIG_DRM_ETNAVIV_THERMAL @@ -0,0 +1 @@ +CONFIG_DRM_ETNAVIV_THERMAL=y diff --git a/baseconfig/arm/armv7/armv7/CONFIG_MFD_TI_LMU b/baseconfig/arm/armv7/armv7/CONFIG_MFD_TI_LMU new file mode 100644 index 000000000..777cb90c8 --- /dev/null +++ b/baseconfig/arm/armv7/armv7/CONFIG_MFD_TI_LMU @@ -0,0 +1 @@ +CONFIG_MFD_TI_LMU=m diff --git a/baseconfig/arm/armv7/armv7/CONFIG_POWER_RESET_IMX b/baseconfig/arm/armv7/armv7/CONFIG_POWER_RESET_IMX deleted file mode 100644 index 25d1d5570..000000000 --- a/baseconfig/arm/armv7/armv7/CONFIG_POWER_RESET_IMX +++ /dev/null @@ -1 +0,0 @@ -CONFIG_POWER_RESET_IMX=y diff --git a/baseconfig/arm/armv7/armv7/CONFIG_REGULATOR_LM363X b/baseconfig/arm/armv7/armv7/CONFIG_REGULATOR_LM363X new file mode 100644 index 000000000..a4610d589 --- /dev/null +++ b/baseconfig/arm/armv7/armv7/CONFIG_REGULATOR_LM363X @@ -0,0 +1 @@ +CONFIG_REGULATOR_LM363X=m diff --git a/baseconfig/arm/armv7/armv7/CONFIG_RESET_IMX7 b/baseconfig/arm/armv7/armv7/CONFIG_RESET_IMX7 new file mode 100644 index 000000000..6718265f9 --- /dev/null +++ b/baseconfig/arm/armv7/armv7/CONFIG_RESET_IMX7 @@ -0,0 +1 @@ +CONFIG_RESET_IMX7=y diff --git a/baseconfig/arm/armv7/armv7/CONFIG_RTC_DRV_MXC_V2 b/baseconfig/arm/armv7/armv7/CONFIG_RTC_DRV_MXC_V2 new file mode 100644 index 000000000..225594051 --- /dev/null +++ b/baseconfig/arm/armv7/armv7/CONFIG_RTC_DRV_MXC_V2 @@ -0,0 +1 @@ +CONFIG_RTC_DRV_MXC_V2=m diff --git a/baseconfig/arm/armv7/armv7/CONFIG_SERIAL_8250_OMAP b/baseconfig/arm/armv7/armv7/CONFIG_SERIAL_8250_OMAP index 582053b2d..0f7ea5449 100644 --- a/baseconfig/arm/armv7/armv7/CONFIG_SERIAL_8250_OMAP +++ b/baseconfig/arm/armv7/armv7/CONFIG_SERIAL_8250_OMAP @@ -1 +1 @@ -CONFIG_SERIAL_8250_OMAP=m +CONFIG_SERIAL_8250_OMAP=y diff --git a/baseconfig/arm/armv7/armv7/CONFIG_SERIAL_8250_OMAP_TTYO_FIXUP b/baseconfig/arm/armv7/armv7/CONFIG_SERIAL_8250_OMAP_TTYO_FIXUP new file mode 100644 index 000000000..cffbc1b84 --- /dev/null +++ b/baseconfig/arm/armv7/armv7/CONFIG_SERIAL_8250_OMAP_TTYO_FIXUP @@ -0,0 +1 @@ +CONFIG_SERIAL_8250_OMAP_TTYO_FIXUP=y diff --git a/baseconfig/arm/armv7/armv7/CONFIG_SERIAL_OMAP b/baseconfig/arm/armv7/armv7/CONFIG_SERIAL_OMAP index 0dbd205b2..1c036ec4f 100644 --- a/baseconfig/arm/armv7/armv7/CONFIG_SERIAL_OMAP +++ b/baseconfig/arm/armv7/armv7/CONFIG_SERIAL_OMAP @@ -1 +1 @@ -CONFIG_SERIAL_OMAP=y +# CONFIG_SERIAL_OMAP is not set diff --git a/baseconfig/arm/armv7/armv7/CONFIG_SERIAL_OMAP_CONSOLE b/baseconfig/arm/armv7/armv7/CONFIG_SERIAL_OMAP_CONSOLE deleted file mode 100644 index 84ab44f7f..000000000 --- a/baseconfig/arm/armv7/armv7/CONFIG_SERIAL_OMAP_CONSOLE +++ /dev/null @@ -1 +0,0 @@ -CONFIG_SERIAL_OMAP_CONSOLE=y diff --git a/baseconfig/arm/armv7/armv7/CONFIG_TI_EMIF_SRAM b/baseconfig/arm/armv7/armv7/CONFIG_TI_EMIF_SRAM new file mode 100644 index 000000000..6bb0bf6e6 --- /dev/null +++ b/baseconfig/arm/armv7/armv7/CONFIG_TI_EMIF_SRAM @@ -0,0 +1 @@ +CONFIG_TI_EMIF_SRAM=m diff --git a/baseconfig/arm/armv7/lpae/CONFIG_EDAC_TI b/baseconfig/arm/armv7/lpae/CONFIG_EDAC_TI new file mode 100644 index 000000000..6989ad752 --- /dev/null +++ b/baseconfig/arm/armv7/lpae/CONFIG_EDAC_TI @@ -0,0 +1 @@ +CONFIG_EDAC_TI=m diff --git a/baseconfig/powerpc/CONFIG_OCXL b/baseconfig/powerpc/CONFIG_OCXL new file mode 100644 index 000000000..4f2a1a2ca --- /dev/null +++ b/baseconfig/powerpc/CONFIG_OCXL @@ -0,0 +1 @@ +CONFIG_OCXL=m diff --git a/baseconfig/powerpc/CONFIG_PPC_IRQ_SOFT_MASK_DEBUG b/baseconfig/powerpc/CONFIG_PPC_IRQ_SOFT_MASK_DEBUG new file mode 100644 index 000000000..34e3d00fe --- /dev/null +++ b/baseconfig/powerpc/CONFIG_PPC_IRQ_SOFT_MASK_DEBUG @@ -0,0 +1 @@ +# CONFIG_PPC_IRQ_SOFT_MASK_DEBUG is not set diff --git a/baseconfig/powerpc/CONFIG_PPC_MEM_KEYS b/baseconfig/powerpc/CONFIG_PPC_MEM_KEYS new file mode 100644 index 000000000..fc57e86b5 --- /dev/null +++ b/baseconfig/powerpc/CONFIG_PPC_MEM_KEYS @@ -0,0 +1 @@ +CONFIG_PPC_MEM_KEYS=y diff --git a/baseconfig/s390x/CONFIG_EXPOLINE b/baseconfig/s390x/CONFIG_EXPOLINE new file mode 100644 index 000000000..4fed3923a --- /dev/null +++ b/baseconfig/s390x/CONFIG_EXPOLINE @@ -0,0 +1 @@ +CONFIG_EXPOLINE=y diff --git a/baseconfig/s390x/CONFIG_EXPOLINE_MEDIUM b/baseconfig/s390x/CONFIG_EXPOLINE_MEDIUM new file mode 100644 index 000000000..82c8370c3 --- /dev/null +++ b/baseconfig/s390x/CONFIG_EXPOLINE_MEDIUM @@ -0,0 +1 @@ +CONFIG_EXPOLINE_MEDIUM=y diff --git a/baseconfig/s390x/CONFIG_KERNEL_NOBP b/baseconfig/s390x/CONFIG_KERNEL_NOBP new file mode 100644 index 000000000..b3c291602 --- /dev/null +++ b/baseconfig/s390x/CONFIG_KERNEL_NOBP @@ -0,0 +1 @@ +CONFIG_KERNEL_NOBP=y diff --git a/baseconfig/s390x/CONFIG_MFD_RTSX_PCI b/baseconfig/s390x/CONFIG_MFD_RTSX_PCI deleted file mode 100644 index 03cefd786..000000000 --- a/baseconfig/s390x/CONFIG_MFD_RTSX_PCI +++ /dev/null @@ -1 +0,0 @@ -# CONFIG_MFD_RTSX_PCI is not set diff --git a/baseconfig/s390x/CONFIG_MFD_RTSX_USB b/baseconfig/s390x/CONFIG_MFD_RTSX_USB deleted file mode 100644 index b6efa65e7..000000000 --- a/baseconfig/s390x/CONFIG_MFD_RTSX_USB +++ /dev/null @@ -1 +0,0 @@ -# CONFIG_MFD_RTSX_USB is not set diff --git a/baseconfig/s390x/CONFIG_MISC_RTSX_PCI b/baseconfig/s390x/CONFIG_MISC_RTSX_PCI new file mode 100644 index 000000000..eeec3f096 --- /dev/null +++ b/baseconfig/s390x/CONFIG_MISC_RTSX_PCI @@ -0,0 +1 @@ +# CONFIG_MISC_RTSX_PCI is not set diff --git a/baseconfig/s390x/CONFIG_MISC_RTSX_USB b/baseconfig/s390x/CONFIG_MISC_RTSX_USB new file mode 100644 index 000000000..f41dad5dd --- /dev/null +++ b/baseconfig/s390x/CONFIG_MISC_RTSX_USB @@ -0,0 +1 @@ +# CONFIG_MISC_RTSX_USB is not set diff --git a/baseconfig/x86/CONFIG_ACER_WIRELESS b/baseconfig/x86/CONFIG_ACER_WIRELESS new file mode 100644 index 000000000..6d6dddcc0 --- /dev/null +++ b/baseconfig/x86/CONFIG_ACER_WIRELESS @@ -0,0 +1 @@ +CONFIG_ACER_WIRELESS=m diff --git a/baseconfig/x86/CONFIG_DELL_SMBIOS_SMM b/baseconfig/x86/CONFIG_DELL_SMBIOS_SMM index 2ba638248..3fead97e1 100644 --- a/baseconfig/x86/CONFIG_DELL_SMBIOS_SMM +++ b/baseconfig/x86/CONFIG_DELL_SMBIOS_SMM @@ -1 +1 @@ -CONFIG_DELL_SMBIOS_SMM=m +CONFIG_DELL_SMBIOS_SMM=y diff --git a/baseconfig/x86/CONFIG_DELL_SMBIOS_WMI b/baseconfig/x86/CONFIG_DELL_SMBIOS_WMI index 0e3f3d8de..46a8c84ce 100644 --- a/baseconfig/x86/CONFIG_DELL_SMBIOS_WMI +++ b/baseconfig/x86/CONFIG_DELL_SMBIOS_WMI @@ -1 +1 @@ -CONFIG_DELL_SMBIOS_WMI=m +CONFIG_DELL_SMBIOS_WMI=y diff --git a/baseconfig/x86/CONFIG_GPD_POCKET_FAN b/baseconfig/x86/CONFIG_GPD_POCKET_FAN new file mode 100644 index 000000000..6eb761b30 --- /dev/null +++ b/baseconfig/x86/CONFIG_GPD_POCKET_FAN @@ -0,0 +1 @@ +CONFIG_GPD_POCKET_FAN=m diff --git a/baseconfig/x86/CONFIG_INTEL_CHTDC_TI_PWRBTN b/baseconfig/x86/CONFIG_INTEL_CHTDC_TI_PWRBTN new file mode 100644 index 000000000..55ca8a3ad --- /dev/null +++ b/baseconfig/x86/CONFIG_INTEL_CHTDC_TI_PWRBTN @@ -0,0 +1 @@ +CONFIG_INTEL_CHTDC_TI_PWRBTN=m diff --git a/baseconfig/x86/CONFIG_KEXEC_SIG b/baseconfig/x86/CONFIG_KEXEC_SIG new file mode 100644 index 000000000..49392e485 --- /dev/null +++ b/baseconfig/x86/CONFIG_KEXEC_SIG @@ -0,0 +1 @@ +# CONFIG_KEXEC_SIG is not set diff --git a/baseconfig/x86/CONFIG_KEXEC_VERIFY_SIG b/baseconfig/x86/CONFIG_KEXEC_VERIFY_SIG deleted file mode 100644 index 5d9b84372..000000000 --- a/baseconfig/x86/CONFIG_KEXEC_VERIFY_SIG +++ /dev/null @@ -1 +0,0 @@ -# CONFIG_KEXEC_VERIFY_SIG is not set diff --git a/baseconfig/x86/x86_64/CONFIG_MLX_PLATFORM b/baseconfig/x86/CONFIG_MLX_PLATFORM index 54e7906ec..54e7906ec 100644 --- a/baseconfig/x86/x86_64/CONFIG_MLX_PLATFORM +++ b/baseconfig/x86/CONFIG_MLX_PLATFORM diff --git a/baseconfig/x86/CONFIG_SD_ADC_MODULATOR b/baseconfig/x86/CONFIG_SD_ADC_MODULATOR new file mode 100644 index 000000000..de78e1d14 --- /dev/null +++ b/baseconfig/x86/CONFIG_SD_ADC_MODULATOR @@ -0,0 +1 @@ +CONFIG_SD_ADC_MODULATOR=m diff --git a/baseconfig/x86/CONFIG_SND_SOC_INTEL_SST_TOPLEVEL b/baseconfig/x86/CONFIG_SND_SOC_INTEL_SST_TOPLEVEL index b5dc6477a..419418b86 100644 --- a/baseconfig/x86/CONFIG_SND_SOC_INTEL_SST_TOPLEVEL +++ b/baseconfig/x86/CONFIG_SND_SOC_INTEL_SST_TOPLEVEL @@ -1 +1 @@ -CONFIG_SND_SOC_INTEL_SST_TOPLEVEL=m +CONFIG_SND_SOC_INTEL_SST_TOPLEVEL=y diff --git a/baseconfig/x86/CONFIG_SND_SST_ATOM_HIFI2_PLATFORM_PCI b/baseconfig/x86/CONFIG_SND_SST_ATOM_HIFI2_PLATFORM_PCI new file mode 100644 index 000000000..2fcfec9cc --- /dev/null +++ b/baseconfig/x86/CONFIG_SND_SST_ATOM_HIFI2_PLATFORM_PCI @@ -0,0 +1 @@ +CONFIG_SND_SST_ATOM_HIFI2_PLATFORM_PCI=m diff --git a/baseconfig/x86/CONFIG_SOUNDWIRE_INTEL b/baseconfig/x86/CONFIG_SOUNDWIRE_INTEL new file mode 100644 index 000000000..d48d1cc17 --- /dev/null +++ b/baseconfig/x86/CONFIG_SOUNDWIRE_INTEL @@ -0,0 +1 @@ +CONFIG_SOUNDWIRE_INTEL=m diff --git a/baseconfig/x86/CONFIG_VBOXGUEST b/baseconfig/x86/CONFIG_VBOXGUEST new file mode 100644 index 000000000..790186610 --- /dev/null +++ b/baseconfig/x86/CONFIG_VBOXGUEST @@ -0,0 +1 @@ +# CONFIG_VBOXGUEST is not set diff --git a/baseconfig/x86/CONFIG_VIDEO_IPU3_CIO2 b/baseconfig/x86/CONFIG_VIDEO_IPU3_CIO2 new file mode 100644 index 000000000..d8d306e62 --- /dev/null +++ b/baseconfig/x86/CONFIG_VIDEO_IPU3_CIO2 @@ -0,0 +1 @@ +CONFIG_VIDEO_IPU3_CIO2=m diff --git a/baseconfig/x86/CONFIG_VIRT_DRIVERS b/baseconfig/x86/CONFIG_VIRT_DRIVERS new file mode 100644 index 000000000..7173b9c64 --- /dev/null +++ b/baseconfig/x86/CONFIG_VIRT_DRIVERS @@ -0,0 +1 @@ +CONFIG_VIRT_DRIVERS=y diff --git a/baseconfig/x86/CONFIG_X86_PMEM_LEGACY b/baseconfig/x86/CONFIG_X86_PMEM_LEGACY index 3ac539aca..b93c1350f 100644 --- a/baseconfig/x86/CONFIG_X86_PMEM_LEGACY +++ b/baseconfig/x86/CONFIG_X86_PMEM_LEGACY @@ -1 +1 @@ -CONFIG_X86_PMEM_LEGACY=y +CONFIG_X86_PMEM_LEGACY=m diff --git a/baseconfig/x86/i686/CONFIG_X86_PPRO_FENCE b/baseconfig/x86/i686/CONFIG_X86_PPRO_FENCE deleted file mode 100644 index 373382804..000000000 --- a/baseconfig/x86/i686/CONFIG_X86_PPRO_FENCE +++ /dev/null @@ -1 +0,0 @@ -# CONFIG_X86_PPRO_FENCE is not set diff --git a/baseconfig/x86/i686PAE/CONFIG_X86_PPRO_FENCE b/baseconfig/x86/i686PAE/CONFIG_X86_PPRO_FENCE deleted file mode 100644 index 373382804..000000000 --- a/baseconfig/x86/i686PAE/CONFIG_X86_PPRO_FENCE +++ /dev/null @@ -1 +0,0 @@ -# CONFIG_X86_PPRO_FENCE is not set diff --git a/baseconfig/x86/x86_64/CONFIG_CRYPTO_DEV_SP_PSP b/baseconfig/x86/x86_64/CONFIG_CRYPTO_DEV_SP_PSP new file mode 100644 index 000000000..7b0c6490a --- /dev/null +++ b/baseconfig/x86/x86_64/CONFIG_CRYPTO_DEV_SP_PSP @@ -0,0 +1 @@ +CONFIG_CRYPTO_DEV_SP_PSP=y diff --git a/baseconfig/x86/x86_64/CONFIG_JAILHOUSE_GUEST b/baseconfig/x86/x86_64/CONFIG_JAILHOUSE_GUEST new file mode 100644 index 000000000..aa93b53af --- /dev/null +++ b/baseconfig/x86/x86_64/CONFIG_JAILHOUSE_GUEST @@ -0,0 +1 @@ +# CONFIG_JAILHOUSE_GUEST is not set diff --git a/baseconfig/x86/x86_64/CONFIG_KEXEC_SIG b/baseconfig/x86/x86_64/CONFIG_KEXEC_SIG new file mode 100644 index 000000000..67b688658 --- /dev/null +++ b/baseconfig/x86/x86_64/CONFIG_KEXEC_SIG @@ -0,0 +1 @@ +CONFIG_KEXEC_SIG=y diff --git a/baseconfig/x86/x86_64/CONFIG_KEXEC_SIG_FORCE b/baseconfig/x86/x86_64/CONFIG_KEXEC_SIG_FORCE new file mode 100644 index 000000000..6aa62efa5 --- /dev/null +++ b/baseconfig/x86/x86_64/CONFIG_KEXEC_SIG_FORCE @@ -0,0 +1 @@ +CONFIG_KEXEC_SIG_FORCE=y diff --git a/baseconfig/x86/x86_64/CONFIG_KEXEC_VERIFY_SIG b/baseconfig/x86/x86_64/CONFIG_KEXEC_VERIFY_SIG deleted file mode 100644 index 5f39f1993..000000000 --- a/baseconfig/x86/x86_64/CONFIG_KEXEC_VERIFY_SIG +++ /dev/null @@ -1 +0,0 @@ -CONFIG_KEXEC_VERIFY_SIG=y diff --git a/baseconfig/x86/x86_64/CONFIG_KVM_AMD_SEV b/baseconfig/x86/x86_64/CONFIG_KVM_AMD_SEV new file mode 100644 index 000000000..de33426a5 --- /dev/null +++ b/baseconfig/x86/x86_64/CONFIG_KVM_AMD_SEV @@ -0,0 +1 @@ +CONFIG_KVM_AMD_SEV=y diff --git a/baseconfig/x86/x86_64/CONFIG_SND_HDA_POWER_SAVE_DEFAULT b/baseconfig/x86/x86_64/CONFIG_SND_HDA_POWER_SAVE_DEFAULT deleted file mode 100644 index ba018972d..000000000 --- a/baseconfig/x86/x86_64/CONFIG_SND_HDA_POWER_SAVE_DEFAULT +++ /dev/null @@ -1 +0,0 @@ -CONFIG_SND_HDA_POWER_SAVE_DEFAULT=1 diff --git a/bcm2835-hwrng-Handle-deferred-clock-properly.patch b/bcm2835-hwrng-Handle-deferred-clock-properly.patch new file mode 100644 index 000000000..4b4cdfea0 --- /dev/null +++ b/bcm2835-hwrng-Handle-deferred-clock-properly.patch @@ -0,0 +1,42 @@ +From patchwork Mon Feb 12 20:11:36 2018 +Content-Type: text/plain; charset="utf-8" +MIME-Version: 1.0 +Content-Transfer-Encoding: 7bit +Subject: hwrng: bcm2835: Handle deferred clock properly +From: Stefan Wahren <stefan.wahren@i2se.com> +X-Patchwork-Id: 10214385 +Message-Id: <1518466296-30161-1-git-send-email-stefan.wahren@i2se.com> +To: Herbert Xu <herbert@gondor.apana.org.au>, Matt Mackall <mpm@selenic.com> +Cc: Stefan Wahren <stefan.wahren@i2se.com>, + Florian Fainelli <f.fainelli@gmail.com>, Arnd Bergmann <arnd@arndb.de>, + Scott Branden <sbranden@broadcom.com>, Jon Mason <jonmason@broadcom.com>, + Greg Kroah-Hartman <gregkh@linuxfoundation.org>, + Eric Anholt <eric@anholt.net>, + bcm-kernel-feedback-list@broadcom.com, linux-crypto@vger.kernel.org, + Ray Jui <rjui@broadcom.com>, linux-arm-kernel@lists.infradead.org +Date: Mon, 12 Feb 2018 21:11:36 +0100 + +In case the probe of the clock is deferred, we would assume it is +optional. This is wrong, so defer the probe of this driver until +the clock is available. + +Fixes: 791af4f4907a ("hwrng: bcm2835 - Manage an optional clock") +Signed-off-by: Stefan Wahren <stefan.wahren@i2se.com> +Acked-by: Florian Fainelli <f.fainelli@gmail.com> +--- + drivers/char/hw_random/bcm2835-rng.c | 2 ++ + 1 file changed, 2 insertions(+) + +diff --git a/drivers/char/hw_random/bcm2835-rng.c b/drivers/char/hw_random/bcm2835-rng.c +index 7a84cec..6767d96 100644 +--- a/drivers/char/hw_random/bcm2835-rng.c ++++ b/drivers/char/hw_random/bcm2835-rng.c +@@ -163,6 +163,8 @@ static int bcm2835_rng_probe(struct platform_device *pdev) + + /* Clock is optional on most platforms */ + priv->clk = devm_clk_get(dev, NULL); ++ if (IS_ERR(priv->clk) && PTR_ERR(priv->clk) == -EPROBE_DEFER) ++ return -EPROBE_DEFER; + + priv->rng.name = pdev->name; + priv->rng.init = bcm2835_rng_init; diff --git a/bcm2837-enable-pmu.patch b/bcm2837-enable-pmu.patch new file mode 100644 index 000000000..378dd64c1 --- /dev/null +++ b/bcm2837-enable-pmu.patch @@ -0,0 +1,31 @@ +From 69e52712002cb6768b894cde9620fb426fd8728d Mon Sep 17 00:00:00 2001 +From: Stefan Wahren <stefan.wahren@i2se.com> +Date: Fri, 16 Mar 2018 21:49:37 +0100 +Subject: [PATCH] ARM: dts: bcm2837: Enable PMU on Raspberry Pi 3 + +This enables the PMU (performance monitoring unit) on Raspberry Pi 3. +In order to make it work on ARM and ARM64, we need to specify two +compatible strings. + +Signed-off-by: Stefan Wahren <stefan.wahren@i2se.com> +--- + arch/arm/boot/dts/bcm2837.dtsi | 6 ++++++ + 1 file changed, 6 insertions(+) + +diff --git a/arch/arm/boot/dts/bcm2837.dtsi b/arch/arm/boot/dts/bcm2837.dtsi +index 7704bb029605..1f5e5c782835 100644 +--- a/arch/arm/boot/dts/bcm2837.dtsi ++++ b/arch/arm/boot/dts/bcm2837.dtsi +@@ -17,6 +17,12 @@ + }; + }; + ++ arm-pmu { ++ compatible = "arm,cortex-a53-pmu", "arm,cortex-a7-pmu"; ++ interrupt-parent = <&local_intc>; ++ interrupts = <9 IRQ_TYPE_LEVEL_HIGH>; ++ }; ++ + timer { + compatible = "arm,armv7-timer"; + interrupt-parent = <&local_intc>; diff --git a/bcm2837-gpio-expander.patch b/bcm2837-gpio-expander.patch new file mode 100644 index 000000000..f5b8370b4 --- /dev/null +++ b/bcm2837-gpio-expander.patch @@ -0,0 +1,707 @@ +From patchwork Tue Feb 20 12:19:31 2018 +Content-Type: text/plain; charset="utf-8" +MIME-Version: 1.0 +Content-Transfer-Encoding: 7bit +Subject: [v5,1/5] ARM: bcm2835: sync firmware properties with downstream +From: Baruch Siach <baruch@tkos.co.il> +X-Patchwork-Id: 10229963 +Message-Id: <e7d1f1d0789f11d37957a8998bee23d035115aeb.1519128054.git.baruch@tkos.co.il> +To: Linus Walleij <linus.walleij@linaro.org>, + Dave Stevenson <dave.stevenson@raspberrypi.org>, + Eric Anholt <eric@anholt.net>, Stefan Wahren <stefan.wahren@i2se.com> +Cc: devicetree@vger.kernel.org, Baruch Siach <baruch@tkos.co.il>, + linux-gpio@vger.kernel.org, Michael Zoran <mzoran@crowfest.net>, + Rob Herring <robh+dt@kernel.org>, linux-rpi-kernel@lists.infradead.org, + Frank Rowand <frowand.list@gmail.com>, linux-arm-kernel@lists.infradead.org +Date: Tue, 20 Feb 2018 14:19:31 +0200 + +Add latest firmware property tags from the latest Raspberry Pi downstream +kernel. This is needed for the GPIO tags, so we can control the GPIO +multiplexor lines. + +Acked-by: Stefan Wahren <stefan.wahren@i2se.com> +Signed-off-by: Baruch Siach <baruch@tkos.co.il> +--- +v4: No change + +v3: Add Stefan's ack + +v2: No change +--- + include/soc/bcm2835/raspberrypi-firmware.h | 18 ++++++++++++++++++ + 1 file changed, 18 insertions(+) + +diff --git a/include/soc/bcm2835/raspberrypi-firmware.h b/include/soc/bcm2835/raspberrypi-firmware.h +index cb979ad90401..50df5b28d2c9 100644 +--- a/include/soc/bcm2835/raspberrypi-firmware.h ++++ b/include/soc/bcm2835/raspberrypi-firmware.h +@@ -63,6 +63,7 @@ enum rpi_firmware_property_tag { + RPI_FIRMWARE_GET_MIN_VOLTAGE = 0x00030008, + RPI_FIRMWARE_GET_TURBO = 0x00030009, + RPI_FIRMWARE_GET_MAX_TEMPERATURE = 0x0003000a, ++ RPI_FIRMWARE_GET_STC = 0x0003000b, + RPI_FIRMWARE_ALLOCATE_MEMORY = 0x0003000c, + RPI_FIRMWARE_LOCK_MEMORY = 0x0003000d, + RPI_FIRMWARE_UNLOCK_MEMORY = 0x0003000e, +@@ -72,12 +73,22 @@ enum rpi_firmware_property_tag { + RPI_FIRMWARE_SET_ENABLE_QPU = 0x00030012, + RPI_FIRMWARE_GET_DISPMANX_RESOURCE_MEM_HANDLE = 0x00030014, + RPI_FIRMWARE_GET_EDID_BLOCK = 0x00030020, ++ RPI_FIRMWARE_GET_CUSTOMER_OTP = 0x00030021, + RPI_FIRMWARE_GET_DOMAIN_STATE = 0x00030030, + RPI_FIRMWARE_SET_CLOCK_STATE = 0x00038001, + RPI_FIRMWARE_SET_CLOCK_RATE = 0x00038002, + RPI_FIRMWARE_SET_VOLTAGE = 0x00038003, + RPI_FIRMWARE_SET_TURBO = 0x00038009, ++ RPI_FIRMWARE_SET_CUSTOMER_OTP = 0x00038021, + RPI_FIRMWARE_SET_DOMAIN_STATE = 0x00038030, ++ RPI_FIRMWARE_GET_GPIO_STATE = 0x00030041, ++ RPI_FIRMWARE_SET_GPIO_STATE = 0x00038041, ++ RPI_FIRMWARE_SET_SDHOST_CLOCK = 0x00038042, ++ RPI_FIRMWARE_GET_GPIO_CONFIG = 0x00030043, ++ RPI_FIRMWARE_SET_GPIO_CONFIG = 0x00038043, ++ RPI_FIRMWARE_GET_PERIPH_REG = 0x00030045, ++ RPI_FIRMWARE_SET_PERIPH_REG = 0x00038045, ++ + + /* Dispmanx TAGS */ + RPI_FIRMWARE_FRAMEBUFFER_ALLOCATE = 0x00040001, +@@ -91,6 +102,8 @@ enum rpi_firmware_property_tag { + RPI_FIRMWARE_FRAMEBUFFER_GET_VIRTUAL_OFFSET = 0x00040009, + RPI_FIRMWARE_FRAMEBUFFER_GET_OVERSCAN = 0x0004000a, + RPI_FIRMWARE_FRAMEBUFFER_GET_PALETTE = 0x0004000b, ++ RPI_FIRMWARE_FRAMEBUFFER_GET_TOUCHBUF = 0x0004000f, ++ RPI_FIRMWARE_FRAMEBUFFER_GET_GPIOVIRTBUF = 0x00040010, + RPI_FIRMWARE_FRAMEBUFFER_RELEASE = 0x00048001, + RPI_FIRMWARE_FRAMEBUFFER_TEST_PHYSICAL_WIDTH_HEIGHT = 0x00044003, + RPI_FIRMWARE_FRAMEBUFFER_TEST_VIRTUAL_WIDTH_HEIGHT = 0x00044004, +@@ -100,6 +113,7 @@ enum rpi_firmware_property_tag { + RPI_FIRMWARE_FRAMEBUFFER_TEST_VIRTUAL_OFFSET = 0x00044009, + RPI_FIRMWARE_FRAMEBUFFER_TEST_OVERSCAN = 0x0004400a, + RPI_FIRMWARE_FRAMEBUFFER_TEST_PALETTE = 0x0004400b, ++ RPI_FIRMWARE_FRAMEBUFFER_TEST_VSYNC = 0x0004400e, + RPI_FIRMWARE_FRAMEBUFFER_SET_PHYSICAL_WIDTH_HEIGHT = 0x00048003, + RPI_FIRMWARE_FRAMEBUFFER_SET_VIRTUAL_WIDTH_HEIGHT = 0x00048004, + RPI_FIRMWARE_FRAMEBUFFER_SET_DEPTH = 0x00048005, +@@ -108,6 +122,10 @@ enum rpi_firmware_property_tag { + RPI_FIRMWARE_FRAMEBUFFER_SET_VIRTUAL_OFFSET = 0x00048009, + RPI_FIRMWARE_FRAMEBUFFER_SET_OVERSCAN = 0x0004800a, + RPI_FIRMWARE_FRAMEBUFFER_SET_PALETTE = 0x0004800b, ++ RPI_FIRMWARE_FRAMEBUFFER_SET_TOUCHBUF = 0x0004801f, ++ RPI_FIRMWARE_FRAMEBUFFER_SET_GPIOVIRTBUF = 0x00048020, ++ RPI_FIRMWARE_FRAMEBUFFER_SET_VSYNC = 0x0004800e, ++ RPI_FIRMWARE_FRAMEBUFFER_SET_BACKLIGHT = 0x0004800f, + + RPI_FIRMWARE_VCHIQ_INIT = 0x00048010, + +From patchwork Tue Feb 20 12:19:32 2018 +Content-Type: text/plain; charset="utf-8" +MIME-Version: 1.0 +Content-Transfer-Encoding: 7bit +Subject: [v5,2/5] dt-bindings: gpio: add raspberry pi GPIO expander binding +From: Baruch Siach <baruch@tkos.co.il> +X-Patchwork-Id: 10229965 +Message-Id: <f400b48cbcd8a138c39d4e8f63d6c1f569090dcc.1519128054.git.baruch@tkos.co.il> +To: Linus Walleij <linus.walleij@linaro.org>, + Dave Stevenson <dave.stevenson@raspberrypi.org>, + Eric Anholt <eric@anholt.net>, Stefan Wahren <stefan.wahren@i2se.com> +Cc: devicetree@vger.kernel.org, Baruch Siach <baruch@tkos.co.il>, + linux-gpio@vger.kernel.org, Michael Zoran <mzoran@crowfest.net>, + Rob Herring <robh+dt@kernel.org>, linux-rpi-kernel@lists.infradead.org, + Frank Rowand <frowand.list@gmail.com>, linux-arm-kernel@lists.infradead.org +Date: Tue, 20 Feb 2018 14:19:32 +0200 + +The Raspberry Pi 3 GPIO expander is controlled by the VC4 firmware over +I2C. The firmware mailbox interface allows the ARM core to control the +GPIO lines. + +Signed-off-by: Baruch Siach <baruch@tkos.co.il> +Reviewed-by: Rob Herring <robh@kernel.org> +--- +v5: + * Remove the 'firmware' property + * Note that the gpio node is a child of the firmware node + +v4: + * Move the example gpio node under the firmware node + * Rename gpio node name to plain 'gpio' + +v3: + * Rename node name. + +v2: + * Rename compatible string to raspberrypi,firmware-gpio +--- + .../bindings/gpio/raspberrypi,firmware-gpio.txt | 30 ++++++++++++++++++++++ + 1 file changed, 30 insertions(+) + create mode 100644 Documentation/devicetree/bindings/gpio/raspberrypi,firmware-gpio.txt + +diff --git a/Documentation/devicetree/bindings/gpio/raspberrypi,firmware-gpio.txt b/Documentation/devicetree/bindings/gpio/raspberrypi,firmware-gpio.txt +new file mode 100644 +index 000000000000..ce97265e23ba +--- /dev/null ++++ b/Documentation/devicetree/bindings/gpio/raspberrypi,firmware-gpio.txt +@@ -0,0 +1,30 @@ ++Raspberry Pi GPIO expander ++ ++The Raspberry Pi 3 GPIO expander is controlled by the VC4 firmware. The ++firmware exposes a mailbox interface that allows the ARM core to control the ++GPIO lines on the expander. ++ ++The Raspberry Pi GPIO expander node must be a child node of the Raspberry Pi ++firmware node. ++ ++Required properties: ++ ++- compatible : Should be "raspberrypi,firmware-gpio" ++- gpio-controller : Marks the device node as a gpio controller ++- #gpio-cells : Should be two. The first cell is the pin number, and ++ the second cell is used to specify the gpio polarity: ++ 0 = active high ++ 1 = active low ++ ++Example: ++ ++firmware: firmware-rpi { ++ compatible = "raspberrypi,bcm2835-firmware"; ++ mboxes = <&mailbox>; ++ ++ expgpio: gpio { ++ compatible = "raspberrypi,firmware-gpio"; ++ gpio-controller; ++ #gpio-cells = <2>; ++ }; ++}; +From patchwork Tue Feb 20 12:19:33 2018 +Content-Type: text/plain; charset="utf-8" +MIME-Version: 1.0 +Content-Transfer-Encoding: 7bit +Subject: [v5, + 3/5] gpio: raspberrypi-exp: Driver for RPi3 GPIO expander via mailbox + service +From: Baruch Siach <baruch@tkos.co.il> +X-Patchwork-Id: 10229967 +Message-Id: <8c34f287ee72b340fa9d693aa0e304b25541c74c.1519128054.git.baruch@tkos.co.il> +To: Linus Walleij <linus.walleij@linaro.org>, + Dave Stevenson <dave.stevenson@raspberrypi.org>, + Eric Anholt <eric@anholt.net>, Stefan Wahren <stefan.wahren@i2se.com> +Cc: devicetree@vger.kernel.org, Baruch Siach <baruch@tkos.co.il>, + linux-gpio@vger.kernel.org, Michael Zoran <mzoran@crowfest.net>, + Rob Herring <robh+dt@kernel.org>, linux-rpi-kernel@lists.infradead.org, + Frank Rowand <frowand.list@gmail.com>, linux-arm-kernel@lists.infradead.org +Date: Tue, 20 Feb 2018 14:19:33 +0200 + +From: Dave Stevenson <dave.stevenson@raspberrypi.org> + +Pi3 and Compute Module 3 have a GPIO expander that the +VPU communicates with. +There is a mailbox service that now allows control of this +expander, so add a kernel driver that can make use of it. + +Reviewed-by: Stefan Wahren <stefan.wahren@i2se.com> +Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.org> +Signed-off-by: Baruch Siach <baruch@tkos.co.il> +--- +v5: + * Use the parent node to find the firmware + +v4: + * Don't set the .owner driver field + * Add Stefan's review tag + +v3: + * Tweak Kconfig driver prompt + * Make GPIO_RASPBERRYPI_EXP tristate + * Make COMPILE_TEST independent of RASPBERRYPI_FIRMWARE + * Remove redundant DMA header + * Use less code lines for dev_err() + * Check rpi_exp_gpio_get_polarity() return value + * Remove redundant platform_set_drvdata() call + +v2: + * Rename driver to gpio-raspberrypi-exp + * Populate the gpiochip parent device pointer + * Use macro for the mailbox base GPIO number + * Drop linux/gpio.h and GPIOF_DIR_* + * Check and print firmware error value + * Use devm_gpiochip_add_data(); drop .remove + * A few more minor tweaks +--- + drivers/gpio/Kconfig | 9 ++ + drivers/gpio/Makefile | 1 + + drivers/gpio/gpio-raspberrypi-exp.c | 252 ++++++++++++++++++++++++++++++++++++ + 3 files changed, 262 insertions(+) + create mode 100644 drivers/gpio/gpio-raspberrypi-exp.c + +diff --git a/drivers/gpio/Kconfig b/drivers/gpio/Kconfig +index 8dbb2280538d..fd0562a37f68 100644 +--- a/drivers/gpio/Kconfig ++++ b/drivers/gpio/Kconfig +@@ -122,6 +122,15 @@ config GPIO_ATH79 + Select this option to enable GPIO driver for + Atheros AR71XX/AR724X/AR913X SoC devices. + ++config GPIO_RASPBERRYPI_EXP ++ tristate "Raspberry Pi 3 GPIO Expander" ++ default RASPBERRYPI_FIRMWARE ++ depends on OF_GPIO ++ depends on (ARCH_BCM2835 && RASPBERRYPI_FIRMWARE) || COMPILE_TEST ++ help ++ Turn on GPIO support for the expander on Raspberry Pi 3 boards, using ++ the firmware mailbox to communicate with VideoCore on BCM283x chips. ++ + config GPIO_BCM_KONA + bool "Broadcom Kona GPIO" + depends on OF_GPIO && (ARCH_BCM_MOBILE || COMPILE_TEST) +diff --git a/drivers/gpio/Makefile b/drivers/gpio/Makefile +index cccb0d40846c..76dc0a02bd56 100644 +--- a/drivers/gpio/Makefile ++++ b/drivers/gpio/Makefile +@@ -32,6 +32,7 @@ obj-$(CONFIG_GPIO_AMDPT) += gpio-amdpt.o + obj-$(CONFIG_GPIO_ARIZONA) += gpio-arizona.o + obj-$(CONFIG_GPIO_ATH79) += gpio-ath79.o + obj-$(CONFIG_GPIO_ASPEED) += gpio-aspeed.o ++obj-$(CONFIG_GPIO_RASPBERRYPI_EXP) += gpio-raspberrypi-exp.o + obj-$(CONFIG_GPIO_BCM_KONA) += gpio-bcm-kona.o + obj-$(CONFIG_GPIO_BD9571MWV) += gpio-bd9571mwv.o + obj-$(CONFIG_GPIO_BRCMSTB) += gpio-brcmstb.o +diff --git a/drivers/gpio/gpio-raspberrypi-exp.c b/drivers/gpio/gpio-raspberrypi-exp.c +new file mode 100644 +index 000000000000..d6d36d537e37 +--- /dev/null ++++ b/drivers/gpio/gpio-raspberrypi-exp.c +@@ -0,0 +1,252 @@ ++// SPDX-License-Identifier: GPL-2.0+ ++/* ++ * Raspberry Pi 3 expander GPIO driver ++ * ++ * Uses the firmware mailbox service to communicate with the ++ * GPIO expander on the VPU. ++ * ++ * Copyright (C) 2017 Raspberry Pi Trading Ltd. ++ */ ++ ++#include <linux/err.h> ++#include <linux/gpio/driver.h> ++#include <linux/module.h> ++#include <linux/platform_device.h> ++#include <soc/bcm2835/raspberrypi-firmware.h> ++ ++#define MODULE_NAME "raspberrypi-exp-gpio" ++#define NUM_GPIO 8 ++ ++#define RPI_EXP_GPIO_BASE 128 ++ ++#define RPI_EXP_GPIO_DIR_IN 0 ++#define RPI_EXP_GPIO_DIR_OUT 1 ++ ++struct rpi_exp_gpio { ++ struct gpio_chip gc; ++ struct rpi_firmware *fw; ++}; ++ ++/* VC4 firmware mailbox interface data structures */ ++ ++struct gpio_set_config { ++ u32 gpio; ++ u32 direction; ++ u32 polarity; ++ u32 term_en; ++ u32 term_pull_up; ++ u32 state; ++}; ++ ++struct gpio_get_config { ++ u32 gpio; ++ u32 direction; ++ u32 polarity; ++ u32 term_en; ++ u32 term_pull_up; ++}; ++ ++struct gpio_get_set_state { ++ u32 gpio; ++ u32 state; ++}; ++ ++static int rpi_exp_gpio_get_polarity(struct gpio_chip *gc, unsigned int off) ++{ ++ struct rpi_exp_gpio *gpio; ++ struct gpio_get_config get; ++ int ret; ++ ++ gpio = gpiochip_get_data(gc); ++ ++ get.gpio = off + RPI_EXP_GPIO_BASE; /* GPIO to update */ ++ ++ ret = rpi_firmware_property(gpio->fw, RPI_FIRMWARE_GET_GPIO_CONFIG, ++ &get, sizeof(get)); ++ if (ret || get.gpio != 0) { ++ dev_err(gc->parent, "Failed to get GPIO %u config (%d %x)\n", ++ off, ret, get.gpio); ++ return ret ? ret : -EIO; ++ } ++ return get.polarity; ++} ++ ++static int rpi_exp_gpio_dir_in(struct gpio_chip *gc, unsigned int off) ++{ ++ struct rpi_exp_gpio *gpio; ++ struct gpio_set_config set_in; ++ int ret; ++ ++ gpio = gpiochip_get_data(gc); ++ ++ set_in.gpio = off + RPI_EXP_GPIO_BASE; /* GPIO to update */ ++ set_in.direction = RPI_EXP_GPIO_DIR_IN; ++ set_in.term_en = 0; /* termination disabled */ ++ set_in.term_pull_up = 0; /* n/a as termination disabled */ ++ set_in.state = 0; /* n/a as configured as an input */ ++ ++ ret = rpi_exp_gpio_get_polarity(gc, off); ++ if (ret < 0) ++ return ret; ++ set_in.polarity = ret; /* Retain existing setting */ ++ ++ ret = rpi_firmware_property(gpio->fw, RPI_FIRMWARE_SET_GPIO_CONFIG, ++ &set_in, sizeof(set_in)); ++ if (ret || set_in.gpio != 0) { ++ dev_err(gc->parent, "Failed to set GPIO %u to input (%d %x)\n", ++ off, ret, set_in.gpio); ++ return ret ? ret : -EIO; ++ } ++ return 0; ++} ++ ++static int rpi_exp_gpio_dir_out(struct gpio_chip *gc, unsigned int off, int val) ++{ ++ struct rpi_exp_gpio *gpio; ++ struct gpio_set_config set_out; ++ int ret; ++ ++ gpio = gpiochip_get_data(gc); ++ ++ set_out.gpio = off + RPI_EXP_GPIO_BASE; /* GPIO to update */ ++ set_out.direction = RPI_EXP_GPIO_DIR_OUT; ++ set_out.term_en = 0; /* n/a as an output */ ++ set_out.term_pull_up = 0; /* n/a as termination disabled */ ++ set_out.state = val; /* Output state */ ++ ++ ret = rpi_exp_gpio_get_polarity(gc, off); ++ if (ret < 0) ++ return ret; ++ set_out.polarity = ret; /* Retain existing setting */ ++ ++ ret = rpi_firmware_property(gpio->fw, RPI_FIRMWARE_SET_GPIO_CONFIG, ++ &set_out, sizeof(set_out)); ++ if (ret || set_out.gpio != 0) { ++ dev_err(gc->parent, "Failed to set GPIO %u to output (%d %x)\n", ++ off, ret, set_out.gpio); ++ return ret ? ret : -EIO; ++ } ++ return 0; ++} ++ ++static int rpi_exp_gpio_get_direction(struct gpio_chip *gc, unsigned int off) ++{ ++ struct rpi_exp_gpio *gpio; ++ struct gpio_get_config get; ++ int ret; ++ ++ gpio = gpiochip_get_data(gc); ++ ++ get.gpio = off + RPI_EXP_GPIO_BASE; /* GPIO to update */ ++ ++ ret = rpi_firmware_property(gpio->fw, RPI_FIRMWARE_GET_GPIO_CONFIG, ++ &get, sizeof(get)); ++ if (ret || get.gpio != 0) { ++ dev_err(gc->parent, ++ "Failed to get GPIO %u config (%d %x)\n", off, ret, ++ get.gpio); ++ return ret ? ret : -EIO; ++ } ++ return !get.direction; ++} ++ ++static int rpi_exp_gpio_get(struct gpio_chip *gc, unsigned int off) ++{ ++ struct rpi_exp_gpio *gpio; ++ struct gpio_get_set_state get; ++ int ret; ++ ++ gpio = gpiochip_get_data(gc); ++ ++ get.gpio = off + RPI_EXP_GPIO_BASE; /* GPIO to update */ ++ get.state = 0; /* storage for returned value */ ++ ++ ret = rpi_firmware_property(gpio->fw, RPI_FIRMWARE_GET_GPIO_STATE, ++ &get, sizeof(get)); ++ if (ret || get.gpio != 0) { ++ dev_err(gc->parent, ++ "Failed to get GPIO %u state (%d %x)\n", off, ret, ++ get.gpio); ++ return ret ? ret : -EIO; ++ } ++ return !!get.state; ++} ++ ++static void rpi_exp_gpio_set(struct gpio_chip *gc, unsigned int off, int val) ++{ ++ struct rpi_exp_gpio *gpio; ++ struct gpio_get_set_state set; ++ int ret; ++ ++ gpio = gpiochip_get_data(gc); ++ ++ set.gpio = off + RPI_EXP_GPIO_BASE; /* GPIO to update */ ++ set.state = val; /* Output state */ ++ ++ ret = rpi_firmware_property(gpio->fw, RPI_FIRMWARE_SET_GPIO_STATE, ++ &set, sizeof(set)); ++ if (ret || set.gpio != 0) ++ dev_err(gc->parent, ++ "Failed to set GPIO %u state (%d %x)\n", off, ret, ++ set.gpio); ++} ++ ++static int rpi_exp_gpio_probe(struct platform_device *pdev) ++{ ++ struct device *dev = &pdev->dev; ++ struct device_node *np = dev->of_node; ++ struct device_node *fw_node; ++ struct rpi_firmware *fw; ++ struct rpi_exp_gpio *rpi_gpio; ++ ++ fw_node = of_get_parent(np); ++ if (!fw_node) { ++ dev_err(dev, "Missing firmware node\n"); ++ return -ENOENT; ++ } ++ ++ fw = rpi_firmware_get(fw_node); ++ if (!fw) ++ return -EPROBE_DEFER; ++ ++ rpi_gpio = devm_kzalloc(dev, sizeof(*rpi_gpio), GFP_KERNEL); ++ if (!rpi_gpio) ++ return -ENOMEM; ++ ++ rpi_gpio->fw = fw; ++ rpi_gpio->gc.parent = dev; ++ rpi_gpio->gc.label = MODULE_NAME; ++ rpi_gpio->gc.owner = THIS_MODULE; ++ rpi_gpio->gc.of_node = np; ++ rpi_gpio->gc.base = -1; ++ rpi_gpio->gc.ngpio = NUM_GPIO; ++ ++ rpi_gpio->gc.direction_input = rpi_exp_gpio_dir_in; ++ rpi_gpio->gc.direction_output = rpi_exp_gpio_dir_out; ++ rpi_gpio->gc.get_direction = rpi_exp_gpio_get_direction; ++ rpi_gpio->gc.get = rpi_exp_gpio_get; ++ rpi_gpio->gc.set = rpi_exp_gpio_set; ++ rpi_gpio->gc.can_sleep = true; ++ ++ return devm_gpiochip_add_data(dev, &rpi_gpio->gc, rpi_gpio); ++} ++ ++static const struct of_device_id rpi_exp_gpio_ids[] = { ++ { .compatible = "raspberrypi,firmware-gpio" }, ++ { } ++}; ++MODULE_DEVICE_TABLE(of, rpi_exp_gpio_ids); ++ ++static struct platform_driver rpi_exp_gpio_driver = { ++ .driver = { ++ .name = MODULE_NAME, ++ .of_match_table = of_match_ptr(rpi_exp_gpio_ids), ++ }, ++ .probe = rpi_exp_gpio_probe, ++}; ++module_platform_driver(rpi_exp_gpio_driver); ++ ++MODULE_LICENSE("GPL"); ++MODULE_AUTHOR("Dave Stevenson <dave.stevenson@raspberrypi.org>"); ++MODULE_DESCRIPTION("Raspberry Pi 3 expander GPIO driver"); ++MODULE_ALIAS("platform:rpi-exp-gpio"); +From patchwork Tue Feb 20 12:19:34 2018 +Content-Type: text/plain; charset="utf-8" +MIME-Version: 1.0 +Content-Transfer-Encoding: 7bit +Subject: [v5,4/5] ARM: dts: bcm2835: make the firmware node into a bus +From: Baruch Siach <baruch@tkos.co.il> +X-Patchwork-Id: 10229961 +Message-Id: <43f9082a6835df6d7bcd3e16d79db687c52826d2.1519128054.git.baruch@tkos.co.il> +To: Linus Walleij <linus.walleij@linaro.org>, + Dave Stevenson <dave.stevenson@raspberrypi.org>, + Eric Anholt <eric@anholt.net>, Stefan Wahren <stefan.wahren@i2se.com> +Cc: devicetree@vger.kernel.org, Baruch Siach <baruch@tkos.co.il>, + linux-gpio@vger.kernel.org, Michael Zoran <mzoran@crowfest.net>, + Rob Herring <robh+dt@kernel.org>, linux-rpi-kernel@lists.infradead.org, + Frank Rowand <frowand.list@gmail.com>, linux-arm-kernel@lists.infradead.org +Date: Tue, 20 Feb 2018 14:19:34 +0200 + +This allows adding devices for which the firmware exposes control interface +via the mailbox. An example of such device is the GPIO expander. + +Signed-off-by: Baruch Siach <baruch@tkos.co.il> +Reviewed-by: Linus Walleij <linus.walleij@linaro.org> +--- +v4: New patch in this series +--- + arch/arm/boot/dts/bcm2835-rpi.dtsi | 4 +++- + 1 file changed, 3 insertions(+), 1 deletion(-) + +diff --git a/arch/arm/boot/dts/bcm2835-rpi.dtsi b/arch/arm/boot/dts/bcm2835-rpi.dtsi +index e36c392a2b8f..0198bd46ef7c 100644 +--- a/arch/arm/boot/dts/bcm2835-rpi.dtsi ++++ b/arch/arm/boot/dts/bcm2835-rpi.dtsi +@@ -18,7 +18,9 @@ + + soc { + firmware: firmware { +- compatible = "raspberrypi,bcm2835-firmware"; ++ compatible = "raspberrypi,bcm2835-firmware", "simple-bus"; ++ #address-cells = <0>; ++ #size-cells = <0>; + mboxes = <&mailbox>; + }; + +From patchwork Tue Feb 20 12:19:35 2018 +Content-Type: text/plain; charset="utf-8" +MIME-Version: 1.0 +Content-Transfer-Encoding: 7bit +Subject: [v5,5/5] ARM: dts: bcm2837-rpi-3-b: add GPIO expander +From: Baruch Siach <baruch@tkos.co.il> +X-Patchwork-Id: 10229995 +Message-Id: <a6d59692dc4847e0b1639a26542e28c95ad5240f.1519128054.git.baruch@tkos.co.il> +To: Linus Walleij <linus.walleij@linaro.org>, + Dave Stevenson <dave.stevenson@raspberrypi.org>, + Eric Anholt <eric@anholt.net>, Stefan Wahren <stefan.wahren@i2se.com> +Cc: devicetree@vger.kernel.org, Baruch Siach <baruch@tkos.co.il>, + linux-gpio@vger.kernel.org, Michael Zoran <mzoran@crowfest.net>, + Rob Herring <robh+dt@kernel.org>, linux-rpi-kernel@lists.infradead.org, + Frank Rowand <frowand.list@gmail.com>, linux-arm-kernel@lists.infradead.org +Date: Tue, 20 Feb 2018 14:19:35 +0200 + +Add a description of the RPi3 GPIO expander that the VC4 firmware controls. + +Acked-by: Stefan Wahren <stefan.wahren@i2se.com> +Signed-off-by: Baruch Siach <baruch@tkos.co.il> +Reviewed-by: Linus Walleij <linus.walleij@linaro.org> +--- +v5: + * Drop the 'firmware' property + +v4: + * Move the gpio node under the firmware node + * Rename the gpio node to plain 'gpio' + * Add Stefan's ack + +v3: + * List GPIO names one per line. + +v2: + * Move GPIO expander node out of the soc container + * Rename compatible string + * Add gpio-line-names property +--- + arch/arm/boot/dts/bcm2837-rpi-3-b.dts | 17 +++++++++++++++++ + 1 file changed, 17 insertions(+) + +diff --git a/arch/arm/boot/dts/bcm2837-rpi-3-b.dts b/arch/arm/boot/dts/bcm2837-rpi-3-b.dts +index 3e4ed7c5b0b3..0b31d995a066 100644 +--- a/arch/arm/boot/dts/bcm2837-rpi-3-b.dts ++++ b/arch/arm/boot/dts/bcm2837-rpi-3-b.dts +@@ -25,6 +25,23 @@ + }; + }; + ++&firmware { ++ expgpio: gpio { ++ compatible = "raspberrypi,firmware-gpio"; ++ gpio-controller; ++ #gpio-cells = <2>; ++ gpio-line-names = "BT_ON", ++ "WL_ON", ++ "STATUS_LED", ++ "LAN_RUN", ++ "HPD_N", ++ "CAM_GPIO0", ++ "CAM_GPIO1", ++ "PWR_LOW_N"; ++ status = "okay"; ++ }; ++}; ++ + /* uart0 communicates with the BT module */ + &uart0 { + pinctrl-names = "default"; +From 257f497bb3e58f88500971145761ed55428618eb Mon Sep 17 00:00:00 2001 +From: Stefan Wahren <stefan.wahren@i2se.com> +Date: Wed, 7 Mar 2018 15:56:20 +0100 +Subject: [PATCH] ARM: dts: bcm2837: Add missing GPIOs of Expander + +Signed-off-by: Stefan Wahren <stefan.wahren@i2se.com> +--- + arch/arm/boot/dts/bcm2837-rpi-3-b.dts | 20 +++++++++++++++++++- + 1 file changed, 19 insertions(+), 1 deletion(-) + +diff --git a/arch/arm/boot/dts/bcm2837-rpi-3-b.dts b/arch/arm/boot/dts/bcm2837-rpi-3-b.dts +index 0b31d995a066..3e87ed05918e 100644 +--- a/arch/arm/boot/dts/bcm2837-rpi-3-b.dts ++++ b/arch/arm/boot/dts/bcm2837-rpi-3-b.dts +@@ -20,9 +20,14 @@ + + leds { + act { +- gpios = <&gpio 47 GPIO_ACTIVE_HIGH>; ++ gpios = <&expgpio 2 GPIO_ACTIVE_HIGH>; + }; + }; ++ ++ wifi_pwrseq: wifi-pwrseq { ++ compatible = "mmc-pwrseq-simple"; ++ reset-gpios = <&expgpio 1 GPIO_ACTIVE_HIGH>; ++ }; + }; + + &firmware { +@@ -42,6 +47,10 @@ + }; + }; + ++&hdmi { ++ hpd-gpios = <&expgpio 4 GPIO_ACTIVE_LOW>; ++}; ++ + /* uart0 communicates with the BT module */ + &uart0 { + pinctrl-names = "default"; +@@ -51,6 +60,7 @@ + bluetooth { + compatible = "brcm,bcm43438-bt"; + max-speed = <2000000>; ++ shutdown-gpios = <&expgpio 0 GPIO_ACTIVE_HIGH>; + }; + }; + +@@ -63,11 +73,19 @@ + + /* SDHCI is used to control the SDIO for wireless */ + &sdhci { ++ #address-cells = <1>; ++ #size-cells = <0>; + pinctrl-names = "default"; + pinctrl-0 = <&emmc_gpio34>; + status = "okay"; + bus-width = <4>; + non-removable; ++ mmc-pwrseq = <&wifi_pwrseq>; ++ ++ brcmf: wifi@1 { ++ reg = <1>; ++ compatible = "brcm,bcm4329-fmac"; ++ }; + }; + + /* SDHOST is used to drive the SD card */ diff --git a/bcm2837-lan78xx-fixes.patch b/bcm2837-lan78xx-fixes.patch new file mode 100644 index 000000000..f877ac15b --- /dev/null +++ b/bcm2837-lan78xx-fixes.patch @@ -0,0 +1,108 @@ +From 6ed88d188a8240ba44da6578eab7d17e036d0e61 Mon Sep 17 00:00:00 2001 +From: Phil Elwell <phil@raspberrypi.org> +Date: Tue, 17 Oct 2017 15:04:29 +0100 +Subject: [PATCH] lan78xx: Enable LEDs if no valid EEPROM or OTP + +For applications of the LAN78xx that don't have valid programmed +EEPROMs or OTPs, enabling both LEDs by default seems reasonable. + +Signed-off-by: Phil Elwell <phil@raspberrypi.org> +--- + drivers/net/usb/lan78xx.c | 6 ++++++ + 1 file changed, 6 insertions(+) + +diff --git a/drivers/net/usb/lan78xx.c b/drivers/net/usb/lan78xx.c +index a21039852f8d..cd20ce4ed87d 100644 +--- a/drivers/net/usb/lan78xx.c ++++ b/drivers/net/usb/lan78xx.c +@@ -2414,6 +2414,12 @@ static int lan78xx_reset(struct lan78xx_net *dev) + + ret = lan78xx_read_reg(dev, HW_CFG, &buf); + buf |= HW_CFG_MEF_; ++ ++ /* If no valid EEPROM and no valid OTP, enable the LEDs by default */ ++ if (lan78xx_read_eeprom(dev, 0, 0, NULL) && ++ lan78xx_read_otp(dev, 0, 0, NULL)) ++ buf |= HW_CFG_LED0_EN_ | HW_CFG_LED1_EN_; ++ + ret = lan78xx_write_reg(dev, HW_CFG, buf); + + ret = lan78xx_read_reg(dev, USB_CFG0, &buf); +From f8a798bb45ae15cbec980c8e921eb377fd1a3df6 Mon Sep 17 00:00:00 2001 +From: Phil Elwell <phil@raspberrypi.org> +Date: Tue, 28 Nov 2017 12:02:37 +0000 +Subject: [PATCH] lan78xx: Correctly indicate invalid OTP + +lan78xx_read_otp tries to return -EINVAL in the event of invalid OTP +content, but the value gets overwritten before it is returned and the +read goes ahead anyway. Make the read conditional as it should be +and preserve the error code. + +Signed-off-by: Phil Elwell <phil@raspberrypi.org> +--- + drivers/net/usb/lan78xx.c | 3 ++- + 1 file changed, 2 insertions(+), 1 deletion(-) + +diff --git a/drivers/net/usb/lan78xx.c b/drivers/net/usb/lan78xx.c +index cd20ce4ed87d..b270935f3f8d 100644 +--- a/drivers/net/usb/lan78xx.c ++++ b/drivers/net/usb/lan78xx.c +@@ -929,7 +929,8 @@ static int lan78xx_read_otp(struct lan78xx_net *dev, u32 offset, + offset += 0x100; + else + ret = -EINVAL; +- ret = lan78xx_read_raw_otp(dev, offset, length, data); ++ if (!ret) ++ ret = lan78xx_read_raw_otp(dev, offset, length, data); + } + + return ret; +From 4a4710f3847cd087e150f83382dffd92e09d9914 Mon Sep 17 00:00:00 2001 +From: Phil Elwell <phil@raspberrypi.org> +Date: Sat, 17 Mar 2018 00:10:02 +0100 +Subject: [PATCH] lan78xx: Read MAC address from DT if present + +There is a standard mechanism for locating and using a MAC address from +the Device Tree. Use this facility in the lan78xx driver to support +applications without programmed EEPROM or OTP. + +Signed-off-by: Phil Elwell <phil@raspberrypi.org> +--- + drivers/net/usb/lan78xx.c | 10 ++++++++++ + 1 file changed, 10 insertions(+) + +diff --git a/drivers/net/usb/lan78xx.c b/drivers/net/usb/lan78xx.c +index 60a604cc7647..a21039852f8d 100644 +--- a/drivers/net/usb/lan78xx.c ++++ b/drivers/net/usb/lan78xx.c +@@ -36,6 +36,7 @@ + #include <linux/irq.h> + #include <linux/irqchip/chained_irq.h> + #include <linux/microchipphy.h> ++#include <linux/of_net.h> + #include <linux/phy.h> + #include "lan78xx.h" + +@@ -1639,6 +1640,14 @@ static void lan78xx_init_mac_address(struct lan78xx_net *dev) + u32 addr_lo, addr_hi; + int ret; + u8 addr[6]; ++ const u8 *mac_addr; ++ ++ /* maybe the boot loader passed the MAC address in devicetree */ ++ mac_addr = of_get_mac_address(dev->udev->dev.of_node); ++ if (mac_addr) { ++ ether_addr_copy(addr, mac_addr); ++ goto set_mac_addr; ++ } + + ret = lan78xx_read_reg(dev, RX_ADDRL, &addr_lo); + ret = lan78xx_read_reg(dev, RX_ADDRH, &addr_hi); +@@ -1667,6 +1676,7 @@ static void lan78xx_init_mac_address(struct lan78xx_net *dev) + "MAC address set to random addr"); + } + ++set_mac_addr: + addr_lo = addr[0] | (addr[1] << 8) | + (addr[2] << 16) | (addr[3] << 24); + addr_hi = addr[4] | (addr[5] << 8); diff --git a/bcm2837-rpi-initial-support-for-the-3.patch b/bcm2837-rpi-initial-support-for-the-3.patch new file mode 100644 index 000000000..c9bedfebc --- /dev/null +++ b/bcm2837-rpi-initial-support-for-the-3.patch @@ -0,0 +1,209 @@ +From defa4876ece55751c691d17ffc928d9bfe049585 Mon Sep 17 00:00:00 2001 +From: Stefan Wahren <stefan.wahren@i2se.com> +Date: Fri, 16 Mar 2018 22:56:59 +0100 +Subject: [PATCH] arm64: dts: broadcom: Add reference to Raspberry Pi 3 B+ + +This adds a reference to the dts file of the Raspberry Pi 3 B+ + +Signed-off-by: Stefan Wahren <stefan.wahren@i2se.com> +--- + arch/arm64/boot/dts/broadcom/Makefile | 3 ++- + arch/arm64/boot/dts/broadcom/bcm2837-rpi-3-b-plus.dts | 2 ++ + 2 files changed, 4 insertions(+), 1 deletion(-) + create mode 100644 arch/arm64/boot/dts/broadcom/bcm2837-rpi-3-b-plus.dts + +diff --git a/arch/arm64/boot/dts/broadcom/Makefile b/arch/arm64/boot/dts/broadcom/Makefile +index 2a2591ef1fee..1193a9e34bbb 100644 +--- a/arch/arm64/boot/dts/broadcom/Makefile ++++ b/arch/arm64/boot/dts/broadcom/Makefile +@@ -1,5 +1,6 @@ + # SPDX-License-Identifier: GPL-2.0 +-dtb-$(CONFIG_ARCH_BCM2835) += bcm2837-rpi-3-b.dtb ++dtb-$(CONFIG_ARCH_BCM2835) += bcm2837-rpi-3-b.dtb \ ++ bcm2837-rpi-3-b-plus.dtb + + subdir-y += northstar2 + subdir-y += stingray +diff --git a/arch/arm64/boot/dts/broadcom/bcm2837-rpi-3-b-plus.dts b/arch/arm64/boot/dts/broadcom/bcm2837-rpi-3-b-plus.dts +new file mode 100644 +index 000000000000..46ad2023cccf +--- /dev/null ++++ b/arch/arm64/boot/dts/broadcom/bcm2837-rpi-3-b-plus.dts +@@ -0,0 +1,2 @@ ++// SPDX-License-Identifier: GPL-2.0 ++#include "arm/bcm2837-rpi-3-b-plus.dts" + +From c7c06c54087dfadd065abcba0b7f614f7a88d549 Mon Sep 17 00:00:00 2001 +From: Phil Elwell <phil@raspberrypi.org> +Date: Fri, 16 Mar 2018 22:42:28 +0100 +Subject: [PATCH] ARM: dts: bcm2837: Add Raspberry Pi 3 B+ + +The Raspberry Pi 3 B+ has the following major differences compared +to the model 3 B: +* Microchip LAN7515 (Gigabit Ethernet) +* Cypress CYW43455 (802.11ac and BT 4.2) + +Signed-off-by: Phil Elwell <phil@raspberrypi.org> +Signed-off-by: Stefan Wahren <stefan.wahren@i2se.com> +--- + arch/arm/boot/dts/Makefile | 1 + + arch/arm/boot/dts/bcm2837-rpi-3-b-plus.dts | 102 +++++++++++++++++++++++++++++ + arch/arm/boot/dts/bcm283x-rpi-lan7515.dtsi | 27 ++++++++ + 3 files changed, 130 insertions(+) + create mode 100644 arch/arm/boot/dts/bcm2837-rpi-3-b-plus.dts + create mode 100644 arch/arm/boot/dts/bcm283x-rpi-lan7515.dtsi + +diff --git a/arch/arm/boot/dts/Makefile b/arch/arm/boot/dts/Makefile +index 3b471e6787ff..dee85f848de9 100644 +--- a/arch/arm/boot/dts/Makefile ++++ b/arch/arm/boot/dts/Makefile +@@ -75,6 +75,7 @@ dtb-$(CONFIG_ARCH_BCM2835) += \ + bcm2835-rpi-a-plus.dtb \ + bcm2836-rpi-2-b.dtb \ + bcm2837-rpi-3-b.dtb \ ++ bcm2837-rpi-3-b-plus.dtb \ + bcm2835-rpi-zero.dtb \ + bcm2835-rpi-zero-w.dtb + dtb-$(CONFIG_ARCH_BCM_5301X) += \ +diff --git a/arch/arm/boot/dts/bcm2837-rpi-3-b-plus.dts b/arch/arm/boot/dts/bcm2837-rpi-3-b-plus.dts +new file mode 100644 +index 000000000000..fb9f6f7e965c +--- /dev/null ++++ b/arch/arm/boot/dts/bcm2837-rpi-3-b-plus.dts +@@ -0,0 +1,102 @@ ++// SPDX-License-Identifier: GPL-2.0 ++/dts-v1/; ++#include "bcm2837.dtsi" ++#include "bcm2835-rpi.dtsi" ++#include "bcm283x-rpi-lan7515.dtsi" ++#include "bcm283x-rpi-usb-host.dtsi" ++ ++/ { ++ compatible = "raspberrypi,3-model-b-plus", "brcm,bcm2837"; ++ model = "Raspberry Pi 3 Model B+"; ++ ++ chosen { ++ /* 8250 auxiliary UART instead of pl011 */ ++ stdout-path = "serial1:115200n8"; ++ }; ++ ++ memory { ++ reg = <0 0x40000000>; ++ }; ++ ++ leds { ++ act { ++ gpios = <&gpio 29 0>; ++ }; ++ ++ pwr { ++ label = "PWR"; ++ gpios = <&expgpio 2 GPIO_ACTIVE_LOW>; ++ }; ++ }; ++ ++ wifi_pwrseq: wifi-pwrseq { ++ compatible = "mmc-pwrseq-simple"; ++ reset-gpios = <&expgpio 1 GPIO_ACTIVE_HIGH>; ++ }; ++}; ++ ++&firmware { ++ expgpio: gpio { ++ compatible = "raspberrypi,firmware-gpio"; ++ gpio-controller; ++ #gpio-cells = <2>; ++ gpio-line-names = "BT_ON", ++ "WL_ON", ++ "STATUS_LED", ++ "LAN_RUN", ++ "", ++ "CAM_GPIO0", ++ "CAM_GPIO1", ++ ""; ++ status = "okay"; ++ }; ++}; ++ ++&hdmi { ++ hpd-gpios = <&gpio 28 GPIO_ACTIVE_LOW>; ++}; ++ ++/* uart0 communicates with the BT module */ ++&uart0 { ++ pinctrl-names = "default"; ++ pinctrl-0 = <&uart0_gpio32 &gpclk2_gpio43>; ++ status = "okay"; ++ ++ bluetooth { ++ compatible = "brcm,bcm43438-bt"; ++ max-speed = <2000000>; ++ shutdown-gpios = <&expgpio 0 GPIO_ACTIVE_HIGH>; ++ }; ++}; ++ ++/* uart1 is mapped to the pin header */ ++&uart1 { ++ pinctrl-names = "default"; ++ pinctrl-0 = <&uart1_gpio14>; ++ status = "okay"; ++}; ++ ++/* SDHCI is used to control the SDIO for wireless */ ++&sdhci { ++ #address-cells = <1>; ++ #size-cells = <0>; ++ pinctrl-names = "default"; ++ pinctrl-0 = <&emmc_gpio34>; ++ status = "okay"; ++ bus-width = <4>; ++ non-removable; ++ mmc-pwrseq = <&wifi_pwrseq>; ++ ++ brcmf: wifi@1 { ++ reg = <1>; ++ compatible = "brcm,bcm4329-fmac"; ++ }; ++}; ++ ++/* SDHOST is used to drive the SD card */ ++&sdhost { ++ pinctrl-names = "default"; ++ pinctrl-0 = <&sdhost_gpio48>; ++ status = "okay"; ++ bus-width = <4>; ++}; +diff --git a/arch/arm/boot/dts/bcm283x-rpi-lan7515.dtsi b/arch/arm/boot/dts/bcm283x-rpi-lan7515.dtsi +new file mode 100644 +index 000000000000..169203c5ce8b +--- /dev/null ++++ b/arch/arm/boot/dts/bcm283x-rpi-lan7515.dtsi +@@ -0,0 +1,27 @@ ++// SPDX-License-Identifier: GPL-2.0 ++/ { ++ aliases { ++ ethernet0 = ðernet; ++ }; ++}; ++ ++&usb { ++ usb1@1 { ++ compatible = "usb424,2514"; ++ reg = <1>; ++ #address-cells = <1>; ++ #size-cells = <0>; ++ ++ usb1_1@1 { ++ compatible = "usb424,2514"; ++ reg = <1>; ++ #address-cells = <1>; ++ #size-cells = <0>; ++ ++ ethernet: usbether@1 { ++ compatible = "usb424,7800"; ++ reg = <1>; ++ }; ++ }; ++ }; ++}; + diff --git a/bcm283x-Fix-probing-of-bcm2835-i2s.patch b/bcm283x-Fix-probing-of-bcm2835-i2s.patch new file mode 100644 index 000000000..911b2d982 --- /dev/null +++ b/bcm283x-Fix-probing-of-bcm2835-i2s.patch @@ -0,0 +1,118 @@ +From patchwork Fri Feb 16 10:55:33 2018 +Content-Type: text/plain; charset="utf-8" +MIME-Version: 1.0 +Content-Transfer-Encoding: 7bit +Subject: [V3, 1/2, + RESEND] dt-bindings: bcm283x: Fix register ranges of bcm2835-i2s +From: Stefan Wahren <stefan.wahren@i2se.com> +X-Patchwork-Id: 10224429 +Message-Id: <1518778534-3328-2-git-send-email-stefan.wahren@i2se.com> +To: Rob Herring <robh+dt@kernel.org>, Mark Rutland <mark.rutland@arm.com>, + Eric Anholt <eric@anholt.net> +Cc: Stefan Wahren <stefan.wahren@i2se.com>, devicetree@vger.kernel.org, + alsa-devel@alsa-project.org, Liam Girdwood <lgirdwood@gmail.com>, + Mark Brown <broonie@kernel.org>, linux-rpi-kernel@lists.infradead.org, + linux-arm-kernel@lists.infradead.org +Date: Fri, 16 Feb 2018 11:55:33 +0100 + +Since 517e7a1537a ("ASoC: bcm2835: move to use the clock framework") +the bcm2835-i2s requires a clock as DT property. Unfortunately +the necessary DT change has never been applied. While we are at it +also fix the first PCM register range to cover the PCM_GRAY register. + +This patch only fixes the affected dt-bindings. + +Signed-off-by: Stefan Wahren <stefan.wahren@i2se.com> +Reviewed-by: Eric Anholt <eric@anholt.net> +Reviewed-by: Rob Herring <robh@kernel.org> +--- + Documentation/devicetree/bindings/dma/brcm,bcm2835-dma.txt | 4 ++-- + Documentation/devicetree/bindings/sound/brcm,bcm2835-i2s.txt | 9 ++++----- + 2 files changed, 6 insertions(+), 7 deletions(-) + +diff --git a/Documentation/devicetree/bindings/dma/brcm,bcm2835-dma.txt b/Documentation/devicetree/bindings/dma/brcm,bcm2835-dma.txt +index baf9b34..b6a8cc0 100644 +--- a/Documentation/devicetree/bindings/dma/brcm,bcm2835-dma.txt ++++ b/Documentation/devicetree/bindings/dma/brcm,bcm2835-dma.txt +@@ -74,8 +74,8 @@ Example: + + bcm2835_i2s: i2s@7e203000 { + compatible = "brcm,bcm2835-i2s"; +- reg = < 0x7e203000 0x20>, +- < 0x7e101098 0x02>; ++ reg = < 0x7e203000 0x24>; ++ clocks = <&clocks BCM2835_CLOCK_PCM>; + + dmas = <&dma 2>, + <&dma 3>; +diff --git a/Documentation/devicetree/bindings/sound/brcm,bcm2835-i2s.txt b/Documentation/devicetree/bindings/sound/brcm,bcm2835-i2s.txt +index 65783de..7bb0362 100644 +--- a/Documentation/devicetree/bindings/sound/brcm,bcm2835-i2s.txt ++++ b/Documentation/devicetree/bindings/sound/brcm,bcm2835-i2s.txt +@@ -2,9 +2,8 @@ + + Required properties: + - compatible: "brcm,bcm2835-i2s" +-- reg: A list of base address and size entries: +- * The first entry should cover the PCM registers +- * The second entry should cover the PCM clock registers ++- reg: Should contain PCM registers location and length. ++- clocks: the (PCM) clock to use + - dmas: List of DMA controller phandle and DMA request line ordered pairs. + - dma-names: Identifier string for each DMA request line in the dmas property. + These strings correspond 1:1 with the ordered pairs in dmas. +@@ -16,8 +15,8 @@ Example: + + bcm2835_i2s: i2s@7e203000 { + compatible = "brcm,bcm2835-i2s"; +- reg = <0x7e203000 0x20>, +- <0x7e101098 0x02>; ++ reg = <0x7e203000 0x24>; ++ clocks = <&clocks BCM2835_CLOCK_PCM>; + + dmas = <&dma 2>, + <&dma 3>; +From patchwork Fri Feb 16 10:55:34 2018 +Content-Type: text/plain; charset="utf-8" +MIME-Version: 1.0 +Content-Transfer-Encoding: 7bit +Subject: [V3,2/2,RESEND] ARM: dts: bcm283x: Fix probing of bcm2835-i2s +From: Stefan Wahren <stefan.wahren@i2se.com> +X-Patchwork-Id: 10224427 +Message-Id: <1518778534-3328-3-git-send-email-stefan.wahren@i2se.com> +To: Rob Herring <robh+dt@kernel.org>, Mark Rutland <mark.rutland@arm.com>, + Eric Anholt <eric@anholt.net> +Cc: Stefan Wahren <stefan.wahren@i2se.com>, devicetree@vger.kernel.org, + alsa-devel@alsa-project.org, Liam Girdwood <lgirdwood@gmail.com>, + Mark Brown <broonie@kernel.org>, linux-rpi-kernel@lists.infradead.org, + linux-arm-kernel@lists.infradead.org +Date: Fri, 16 Feb 2018 11:55:34 +0100 + +Since 517e7a1537a ("ASoC: bcm2835: move to use the clock framework") +the bcm2835-i2s requires a clock as DT property. Unfortunately +the necessary DT change has never been applied. While we are at it +also fix the first PCM register range to cover the PCM_GRAY register. + +Fixes: 517e7a1537a ("ASoC: bcm2835: move to use the clock framework") +Signed-off-by: Stefan Wahren <stefan.wahren@i2se.com> +Reviewed-by: Eric Anholt <eric@anholt.net> +Tested-by: Matthias Reichl <hias@horus.com> +--- + arch/arm/boot/dts/bcm283x.dtsi | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +diff --git a/arch/arm/boot/dts/bcm283x.dtsi b/arch/arm/boot/dts/bcm283x.dtsi +index 013431e..e08203c 100644 +--- a/arch/arm/boot/dts/bcm283x.dtsi ++++ b/arch/arm/boot/dts/bcm283x.dtsi +@@ -396,8 +396,8 @@ + + i2s: i2s@7e203000 { + compatible = "brcm,bcm2835-i2s"; +- reg = <0x7e203000 0x20>, +- <0x7e101098 0x02>; ++ reg = <0x7e203000 0x24>; ++ clocks = <&clocks BCM2835_CLOCK_PCM>; + + dmas = <&dma 2>, + <&dma 3>; diff --git a/bcm283x-clk-audio-fixes.patch b/bcm283x-clk-audio-fixes.patch new file mode 100644 index 000000000..51c9fa791 --- /dev/null +++ b/bcm283x-clk-audio-fixes.patch @@ -0,0 +1,98 @@ +From aa964d59aab2cb04bc011ffd370822ac79f82a0b Mon Sep 17 00:00:00 2001 +From: Boris Brezillon <boris.brezillon@bootlin.com> +Date: Wed, 7 Mar 2018 15:39:17 +0100 +Subject: [PATCH] clk: bcm2835: De-assert/assert PLL reset signal when + appropriate + +In order to enable a PLL, not only the PLL has to be powered up and +locked, but you also have to de-assert the reset signal. The last part +was missing. Add it so PLLs that were not enabled by the FW/bootloader +can be enabled from Linux. + +Fixes: 41691b8862e2 ("clk: bcm2835: Add support for programming the audio domain clocks") +Cc: <stable@vger.kernel.org> +Signed-off-by: Boris Brezillon <boris.brezillon@bootlin.com> +--- + drivers/clk/bcm/clk-bcm2835.c | 7 +++++++ + 1 file changed, 7 insertions(+) + +diff --git a/drivers/clk/bcm/clk-bcm2835.c b/drivers/clk/bcm/clk-bcm2835.c +index a07f6451694a..6c5d4a8e426c 100644 +--- a/drivers/clk/bcm/clk-bcm2835.c ++++ b/drivers/clk/bcm/clk-bcm2835.c +@@ -602,6 +602,9 @@ static void bcm2835_pll_off(struct clk_hw *hw) + const struct bcm2835_pll_data *data = pll->data; + + spin_lock(&cprman->regs_lock); ++ cprman_write(cprman, data->a2w_ctrl_reg, ++ cprman_read(cprman, data->a2w_ctrl_reg) & ++ ~A2W_PLL_CTRL_PRST_DISABLE); + cprman_write(cprman, data->cm_ctrl_reg, + cprman_read(cprman, data->cm_ctrl_reg) | + CM_PLL_ANARST); +@@ -640,6 +643,10 @@ static int bcm2835_pll_on(struct clk_hw *hw) + cpu_relax(); + } + ++ cprman_write(cprman, data->a2w_ctrl_reg, ++ cprman_read(cprman, data->a2w_ctrl_reg) | ++ A2W_PLL_CTRL_PRST_DISABLE); ++ + return 0; + } + +From 1b6867ee05d84cc6ec23b5ec0b78684187d3190a Mon Sep 17 00:00:00 2001 +From: Boris Brezillon <boris.brezillon@bootlin.com> +Date: Wed, 7 Mar 2018 15:41:14 +0100 +Subject: [PATCH] clk: bcm2835: Make sure the PLL is gated before changing its + rate + +All bcm2835 PLLs should be gated before their rate can be changed. +Setting CLK_SET_RATE_GATE will let the core enforce that, but this is +not enough to make the code work in all situations. Indeed, the +CLK_SET_RATE_GATE flag prevents a user from changing the rate while +the clock is enabled, but this check only guarantees there's no Linux +users. In our case, the clock might have been enabled by the +bootloader/FW, and, because we have CLK_IGNORE_UNUSED set, Linux never +disables the PLL. So we have to make sure the PLL is actually disabled +before changing the rate. + +Fixes: 41691b8862e2 ("clk: bcm2835: Add support for programming the audio domain clocks") +Cc: <stable@vger.kernel.org> +Signed-off-by: Boris Brezillon <boris.brezillon@bootlin.com> +--- + drivers/clk/bcm/clk-bcm2835.c | 14 +++++++++++++- + 1 file changed, 13 insertions(+), 1 deletion(-) + +diff --git a/drivers/clk/bcm/clk-bcm2835.c b/drivers/clk/bcm/clk-bcm2835.c +index 6c5d4a8e426c..051ce769c109 100644 +--- a/drivers/clk/bcm/clk-bcm2835.c ++++ b/drivers/clk/bcm/clk-bcm2835.c +@@ -678,6 +678,18 @@ static int bcm2835_pll_set_rate(struct clk_hw *hw, + u32 ana[4]; + int i; + ++ /* ++ * Normally, the CLK_SET_RATE_GATE flag prevents a user from changing ++ * the rate while the clock is enabled, but this check only makes sure ++ * there's no Linux users. ++ * In our case, the clock might have been enabled by the bootloader/FW, ++ * and, since CLK_IGNORE_UNUSED flag is set, Linux never disables it. ++ * So we have to make sure the clk is actually disabled before changing ++ * the rate. ++ */ ++ if (bcm2835_pll_is_on(hw)) ++ bcm2835_pll_off(hw); ++ + if (rate > data->max_fb_rate) { + use_fb_prediv = true; + rate /= 2; +@@ -1318,7 +1330,7 @@ static struct clk_hw *bcm2835_register_pll(struct bcm2835_cprman *cprman, + init.num_parents = 1; + init.name = data->name; + init.ops = &bcm2835_pll_clk_ops; +- init.flags = CLK_IGNORE_UNUSED; ++ init.flags = CLK_IGNORE_UNUSED | CLK_SET_RATE_GATE; + + pll = kzalloc(sizeof(*pll), GFP_KERNEL); + if (!pll) diff --git a/debugconfig/CONFIG_BLK_DEV_NULL_BLK_FAULT_INJECTION b/debugconfig/CONFIG_BLK_DEV_NULL_BLK_FAULT_INJECTION new file mode 100644 index 000000000..80056c1a1 --- /dev/null +++ b/debugconfig/CONFIG_BLK_DEV_NULL_BLK_FAULT_INJECTION @@ -0,0 +1 @@ +CONFIG_BLK_DEV_NULL_BLK_FAULT_INJECTION=y diff --git a/debugconfig/CONFIG_BPF_KPROBE_OVERRIDE b/debugconfig/CONFIG_BPF_KPROBE_OVERRIDE new file mode 100644 index 000000000..cf1d8d5bb --- /dev/null +++ b/debugconfig/CONFIG_BPF_KPROBE_OVERRIDE @@ -0,0 +1 @@ +CONFIG_BPF_KPROBE_OVERRIDE=y diff --git a/debugconfig/CONFIG_FAIL_FUNCTION b/debugconfig/CONFIG_FAIL_FUNCTION new file mode 100644 index 000000000..f41816ded --- /dev/null +++ b/debugconfig/CONFIG_FAIL_FUNCTION @@ -0,0 +1 @@ +CONFIG_FAIL_FUNCTION=y diff --git a/dma-buf-fix-reservation_object_wait_timeout_rcu-once-more-v2.patch b/dma-buf-fix-reservation_object_wait_timeout_rcu-once-more-v2.patch deleted file mode 100644 index 6e40c3da3..000000000 --- a/dma-buf-fix-reservation_object_wait_timeout_rcu-once-more-v2.patch +++ /dev/null @@ -1,62 +0,0 @@ -From patchwork Mon Jan 22 20:00:03 2018 -Content-Type: text/plain; charset="utf-8" -MIME-Version: 1.0 -Content-Transfer-Encoding: 8bit -Subject: dma-buf: fix reservation_object_wait_timeout_rcu once more v2 -From: =?UTF-8?q?Christian=20K=C3=B6nig?= <ckoenig.leichtzumerken@gmail.com> -X-Patchwork-Id: 199865 -Message-Id: <20180122200003.6665-1-christian.koenig@amd.com> -To: dri-devel@lists.freedesktop.org, chris@chris-wilson.co.uk, lyude@redhat.com -Date: Mon, 22 Jan 2018 21:00:03 +0100 - -We need to set shared_count even if we already have a fence to wait for. - -v2: init i to -1 as well - -Signed-off-by: Christian König <christian.koenig@amd.com> -Cc: stable@vger.kernel.org -Tested-by: Lyude Paul <lyude@redhat.com> -Reviewed-by: Lyude Paul <lyude@redhat.com> -Reviewed-by: Chris Wilson <chris@chris-wilson.co.uk> ---- - drivers/dma-buf/reservation.c | 8 +++++--- - 1 file changed, 5 insertions(+), 3 deletions(-) - -diff --git a/drivers/dma-buf/reservation.c b/drivers/dma-buf/reservation.c -index 461afa9febd4..314eb1071cce 100644 ---- a/drivers/dma-buf/reservation.c -+++ b/drivers/dma-buf/reservation.c -@@ -484,13 +484,15 @@ long reservation_object_wait_timeout_rcu(struct reservation_object *obj, - unsigned long timeout) - { - struct dma_fence *fence; -- unsigned seq, shared_count, i = 0; -+ unsigned seq, shared_count; - long ret = timeout ? timeout : 1; -+ int i; - - retry: - shared_count = 0; - seq = read_seqcount_begin(&obj->seq); - rcu_read_lock(); -+ i = -1; - - fence = rcu_dereference(obj->fence_excl); - if (fence && !test_bit(DMA_FENCE_FLAG_SIGNALED_BIT, &fence->flags)) { -@@ -506,14 +508,14 @@ long reservation_object_wait_timeout_rcu(struct reservation_object *obj, - fence = NULL; - } - -- if (!fence && wait_all) { -+ if (wait_all) { - struct reservation_object_list *fobj = - rcu_dereference(obj->fence); - - if (fobj) - shared_count = fobj->shared_count; - -- for (i = 0; i < shared_count; ++i) { -+ for (i = 0; !fence && i < shared_count; ++i) { - struct dma_fence *lfence = rcu_dereference(fobj->shared[i]); - - if (test_bit(DMA_FENCE_FLAG_SIGNALED_BIT, diff --git a/efi-Add-EFI_SECURE_BOOT-bit.patch b/efi-Add-EFI_SECURE_BOOT-bit.patch new file mode 100644 index 000000000..c44010322 --- /dev/null +++ b/efi-Add-EFI_SECURE_BOOT-bit.patch @@ -0,0 +1,43 @@ +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-Disable-secure-boot-if-shim-is-in-insecure-mode.patch b/efi-Disable-secure-boot-if-shim-is-in-insecure-mode.patch new file mode 100644 index 000000000..761a66ff7 --- /dev/null +++ b/efi-Disable-secure-boot-if-shim-is-in-insecure-mode.patch @@ -0,0 +1,58 @@ +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-lockdown.patch b/efi-lockdown.patch index c99d85c12..ceb0ca7f9 100644 --- a/efi-lockdown.patch +++ b/efi-lockdown.patch @@ -1,7 +1,7 @@ -From 646ac5c07196bc3680e34188e55c8cc3565f65e7 Mon Sep 17 00:00:00 2001 +From 1235d72fe1d34f9961051d159af3b48a1617ff0a Mon Sep 17 00:00:00 2001 From: David Howells <dhowells@redhat.com> -Date: Wed, 24 May 2017 14:56:00 +0100 -Subject: [PATCH 01/26] Add the ability to lock down access to the running +Date: Tue, 27 Feb 2018 10:04:50 +0000 +Subject: [PATCH 01/31] Add the ability to lock down access to the running kernel image Provide a single call to allow kernel code to determine whether the system @@ -22,10 +22,10 @@ Acked-by: James Morris <james.l.morris@oracle.com> create mode 100644 security/lock_down.c diff --git a/include/linux/kernel.h b/include/linux/kernel.h -index 0ad4c3044cf9..362da2e4bf53 100644 +index 3fd291503576..dcc8916098e7 100644 --- a/include/linux/kernel.h +++ b/include/linux/kernel.h -@@ -287,6 +287,23 @@ static inline void refcount_error_report(struct pt_regs *regs, const char *err) +@@ -306,6 +306,23 @@ static inline void refcount_error_report(struct pt_regs *regs, const char *err) { } #endif @@ -50,10 +50,10 @@ index 0ad4c3044cf9..362da2e4bf53 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 ce6265960d6c..310775476b68 100644 +index 73f1ef625d40..2e9690f3d1ce 100644 --- a/include/linux/security.h +++ b/include/linux/security.h -@@ -1753,5 +1753,13 @@ static inline void free_secdata(void *secdata) +@@ -1801,5 +1801,13 @@ static inline void free_secdata(void *secdata) { } #endif /* CONFIG_SECURITY */ @@ -68,10 +68,10 @@ index ce6265960d6c..310775476b68 100644 #endif /* ! __LINUX_SECURITY_H */ diff --git a/security/Kconfig b/security/Kconfig -index e8e449444e65..8e01fd59ae7e 100644 +index c4302067a3ad..a9e6207d287e 100644 --- a/security/Kconfig +++ b/security/Kconfig -@@ -205,6 +205,14 @@ config STATIC_USERMODEHELPER_PATH +@@ -231,6 +231,14 @@ config STATIC_USERMODEHELPER_PATH If you wish for all usermode helper programs to be disabled, specify an empty string here (i.e. ""). @@ -87,10 +87,10 @@ index e8e449444e65..8e01fd59ae7e 100644 source security/smack/Kconfig source security/tomoyo/Kconfig diff --git a/security/Makefile b/security/Makefile -index f2d71cdb8e19..8c4a43e3d4e0 100644 +index 4d2d3782ddef..507ac8c520ce 100644 --- a/security/Makefile +++ b/security/Makefile -@@ -29,3 +29,6 @@ obj-$(CONFIG_CGROUP_DEVICE) += device_cgroup.o +@@ -30,3 +30,6 @@ obj-$(CONFIG_CGROUP_DEVICE) += device_cgroup.o # Object integrity file lists subdir-$(CONFIG_INTEGRITY) += integrity obj-$(CONFIG_INTEGRITY) += integrity/ @@ -164,18 +164,20 @@ index 000000000000..d8595c0e6673 +} +EXPORT_SYMBOL(__kernel_is_locked_down); -- -2.13.6 +2.14.3 -From 2c46467f43bc54324de5474a8355f98c692309e4 Mon Sep 17 00:00:00 2001 +From 2c6e78b766569c7a966639346cc2b5a023998adc Mon Sep 17 00:00:00 2001 From: Kyle McMartin <kyle@redhat.com> -Date: Wed, 18 Oct 2017 14:02:25 +0100 -Subject: [PATCH 02/26] Add a SysRq option to lift kernel lockdown +Date: Tue, 27 Feb 2018 10:04:50 +0000 +Subject: [PATCH 02/31] Add a SysRq option to lift kernel lockdown Make an option to provide a sysrq key that will lift the kernel lockdown, thereby allowing the running kernel image to be accessed and modified. -On x86_64 this is triggered with SysRq+x, but this key may not be available -on all arches, so it is set by setting LOCKDOWN_LIFT_KEY in asm/setup.h. +On x86 this is triggered with SysRq+x, but this key may not be available on +all arches, so it is set by setting LOCKDOWN_LIFT_KEY in asm/setup.h. +Since this macro must be defined in an arch to be able to use this facility +for that arch, the Kconfig option is restricted to arches that support it. Signed-off-by: Kyle McMartin <kyle@redhat.com> Signed-off-by: David Howells <dhowells@redhat.com> @@ -187,15 +189,15 @@ cc: x86@kernel.org include/linux/input.h | 5 +++++ include/linux/sysrq.h | 8 +++++++- kernel/debug/kdb/kdb_main.c | 2 +- - security/Kconfig | 8 ++++++++ + security/Kconfig | 10 ++++++++++ security/lock_down.c | 47 ++++++++++++++++++++++++++++++++++++++++++++ - 8 files changed, 84 insertions(+), 8 deletions(-) + 8 files changed, 86 insertions(+), 8 deletions(-) diff --git a/arch/x86/include/asm/setup.h b/arch/x86/include/asm/setup.h -index a65cf544686a..863f77582c09 100644 +index ae13bc974416..3108e297d87d 100644 --- a/arch/x86/include/asm/setup.h +++ b/arch/x86/include/asm/setup.h -@@ -8,6 +8,8 @@ +@@ -9,6 +9,8 @@ #include <linux/linkage.h> #include <asm/page_types.h> @@ -205,22 +207,22 @@ index a65cf544686a..863f77582c09 100644 #include <linux/pfn.h> diff --git a/drivers/input/misc/uinput.c b/drivers/input/misc/uinput.c -index 39ddd9a73feb..0afeef1672bc 100644 +index 96a887f33698..027c730631cc 100644 --- a/drivers/input/misc/uinput.c +++ b/drivers/input/misc/uinput.c -@@ -362,6 +362,7 @@ static int uinput_create_device(struct uinput_device *udev) +@@ -365,6 +365,7 @@ static int uinput_create_device(struct uinput_device *udev) dev->flush = uinput_dev_flush; } - + + dev->flags |= INPUTDEV_FLAGS_SYNTHETIC; dev->event = uinput_dev_event; - + input_set_drvdata(udev->dev, udev); diff --git a/drivers/tty/sysrq.c b/drivers/tty/sysrq.c -index 3ffc1ce29023..8b766dbad6dd 100644 +index b674793be478..7c06541b422e 100644 --- a/drivers/tty/sysrq.c +++ b/drivers/tty/sysrq.c -@@ -481,6 +481,7 @@ static struct sysrq_key_op *sysrq_key_table[36] = { +@@ -487,6 +487,7 @@ static struct sysrq_key_op *sysrq_key_table[36] = { /* x: May be registered on mips for TLB dump */ /* x: May be registered on ppc/powerpc for xmon */ /* x: May be registered on sparc64 for global PMU dump */ @@ -228,7 +230,7 @@ index 3ffc1ce29023..8b766dbad6dd 100644 NULL, /* x */ /* y: May be registered on sparc64 for global register dump */ NULL, /* y */ -@@ -524,7 +525,7 @@ static void __sysrq_put_key_op(int key, struct sysrq_key_op *op_p) +@@ -530,7 +531,7 @@ static void __sysrq_put_key_op(int key, struct sysrq_key_op *op_p) sysrq_key_table[i] = op_p; } @@ -237,7 +239,7 @@ index 3ffc1ce29023..8b766dbad6dd 100644 { struct sysrq_key_op *op_p; int orig_log_level; -@@ -544,11 +545,15 @@ void __handle_sysrq(int key, bool check_mask) +@@ -550,11 +551,15 @@ void __handle_sysrq(int key, bool check_mask) op_p = __sysrq_get_key_op(key); if (op_p) { @@ -254,7 +256,7 @@ index 3ffc1ce29023..8b766dbad6dd 100644 pr_cont("%s\n", op_p->action_msg); console_loglevel = orig_log_level; op_p->handler(key); -@@ -580,7 +585,7 @@ void __handle_sysrq(int key, bool check_mask) +@@ -586,7 +591,7 @@ void __handle_sysrq(int key, bool check_mask) void handle_sysrq(int key) { if (sysrq_on()) @@ -263,7 +265,7 @@ index 3ffc1ce29023..8b766dbad6dd 100644 } EXPORT_SYMBOL(handle_sysrq); -@@ -661,7 +666,7 @@ static void sysrq_do_reset(unsigned long _state) +@@ -667,7 +672,7 @@ static void sysrq_do_reset(struct timer_list *t) static void sysrq_handle_reset_request(struct sysrq_state *state) { if (state->reset_requested) @@ -272,7 +274,7 @@ index 3ffc1ce29023..8b766dbad6dd 100644 if (sysrq_reset_downtime_ms) mod_timer(&state->keyreset_timer, -@@ -812,8 +817,10 @@ static bool sysrq_handle_keypress(struct sysrq_state *sysrq, +@@ -818,8 +823,10 @@ static bool sysrq_handle_keypress(struct sysrq_state *sysrq, default: if (sysrq->active && value && value != 2) { @@ -284,7 +286,7 @@ index 3ffc1ce29023..8b766dbad6dd 100644 } break; } -@@ -1097,7 +1104,7 @@ static ssize_t write_sysrq_trigger(struct file *file, const char __user *buf, +@@ -1102,7 +1109,7 @@ static ssize_t write_sysrq_trigger(struct file *file, const char __user *buf, if (get_user(c, buf)) return -EFAULT; @@ -294,7 +296,7 @@ index 3ffc1ce29023..8b766dbad6dd 100644 return count; diff --git a/include/linux/input.h b/include/linux/input.h -index fb5e23c7ed98..9d2b45a21ade 100644 +index 7c7516eb7d76..38cd0ea72c37 100644 --- a/include/linux/input.h +++ b/include/linux/input.h @@ -42,6 +42,7 @@ struct input_value { @@ -324,10 +326,10 @@ index fb5e23c7ed98..9d2b45a21ade 100644 * Verify that we are in sync with input_device_id mod_devicetable.h #defines */ diff --git a/include/linux/sysrq.h b/include/linux/sysrq.h -index 387fa7d05c98..f7c52a9ea394 100644 +index 8c71874e8485..7de1f08b60a9 100644 --- a/include/linux/sysrq.h +++ b/include/linux/sysrq.h -@@ -28,6 +28,8 @@ +@@ -29,6 +29,8 @@ #define SYSRQ_ENABLE_BOOT 0x0080 #define SYSRQ_ENABLE_RTNICE 0x0100 @@ -336,7 +338,7 @@ index 387fa7d05c98..f7c52a9ea394 100644 struct sysrq_key_op { void (*handler)(int); char *help_msg; -@@ -42,8 +44,12 @@ struct sysrq_key_op { +@@ -43,8 +45,12 @@ struct sysrq_key_op { * are available -- else NULL's). */ @@ -351,7 +353,7 @@ index 387fa7d05c98..f7c52a9ea394 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 c8146d53ca67..b480cadf9272 100644 +index dbb0781a0533..aae9a0f44058 100644 --- a/kernel/debug/kdb/kdb_main.c +++ b/kernel/debug/kdb/kdb_main.c @@ -1970,7 +1970,7 @@ static int kdb_sr(int argc, const char **argv) @@ -364,16 +366,18 @@ index c8146d53ca67..b480cadf9272 100644 return 0; diff --git a/security/Kconfig b/security/Kconfig -index 8e01fd59ae7e..453cc89c198a 100644 +index a9e6207d287e..461d5acc3616 100644 --- a/security/Kconfig +++ b/security/Kconfig -@@ -213,6 +213,14 @@ config LOCK_DOWN_KERNEL +@@ -239,6 +239,16 @@ config LOCK_DOWN_KERNEL turns off various features that might otherwise allow access to the kernel image (eg. setting MSR registers). +config ALLOW_LOCKDOWN_LIFT_BY_SYSRQ + bool "Allow the kernel lockdown to be lifted by SysRq" -+ depends on LOCK_DOWN_KERNEL && MAGIC_SYSRQ ++ depends on LOCK_DOWN_KERNEL ++ depends on MAGIC_SYSRQ ++ depends on X86 + help + Allow the lockdown on a kernel to be lifted, by pressing a SysRq key + combination on a wired keyboard. @@ -447,44 +451,244 @@ index d8595c0e6673..2c6b00f0c229 100644 + +#endif /* CONFIG_ALLOW_LOCKDOWN_LIFT_BY_SYSRQ */ -- -2.13.6 +2.14.3 + +From 16376a9b88db8d79637fbda7576ced261050eb2a Mon Sep 17 00:00:00 2001 +From: Mimi Zohar <zohar@linux.vnet.ibm.com> +Date: Tue, 27 Feb 2018 10:04:50 +0000 +Subject: [PATCH 03/31] ima: require secure_boot rules in lockdown mode + +Require the "secure_boot" rules, whether or not it is specified +on the boot command line, for both the builtin and custom policies +in secure boot lockdown mode. + +Signed-off-by: Mimi Zohar <zohar@linux.vnet.ibm.com> +Signed-off-by: David Howells <dhowells@redhat.com> +--- + security/integrity/ima/ima_policy.c | 39 +++++++++++++++++++++++++++---------- + 1 file changed, 29 insertions(+), 10 deletions(-) + +diff --git a/security/integrity/ima/ima_policy.c b/security/integrity/ima/ima_policy.c +index 915f5572c6ff..830ce0de5386 100644 +--- a/security/integrity/ima/ima_policy.c ++++ b/security/integrity/ima/ima_policy.c +@@ -431,14 +431,21 @@ void ima_update_policy_flag(void) + */ + void __init ima_init_policy(void) + { +- int i, measure_entries, appraise_entries, secure_boot_entries; ++ int i; ++ int measure_entries = 0; ++ int appraise_entries = 0; ++ int secure_boot_entries = 0; ++ bool kernel_locked_down = __kernel_is_locked_down(NULL, false); + + /* if !ima_policy set entries = 0 so we load NO default rules */ +- measure_entries = ima_policy ? ARRAY_SIZE(dont_measure_rules) : 0; +- appraise_entries = ima_use_appraise_tcb ? +- ARRAY_SIZE(default_appraise_rules) : 0; +- secure_boot_entries = ima_use_secure_boot ? +- ARRAY_SIZE(secure_boot_rules) : 0; ++ if (ima_policy) ++ measure_entries = ARRAY_SIZE(dont_measure_rules); ++ ++ if (ima_use_appraise_tcb) ++ appraise_entries = ARRAY_SIZE(default_appraise_rules); ++ ++ if (ima_use_secure_boot || kernel_locked_down) ++ secure_boot_entries = ARRAY_SIZE(secure_boot_rules); + + for (i = 0; i < measure_entries; i++) + list_add_tail(&dont_measure_rules[i].list, &ima_default_rules); +@@ -459,11 +466,23 @@ void __init ima_init_policy(void) + + /* + * Insert the appraise rules requiring file signatures, prior to +- * any other appraise rules. ++ * any other appraise rules. In secure boot lock-down mode, also ++ * require these appraise rules for custom policies. + */ +- for (i = 0; i < secure_boot_entries; i++) +- list_add_tail(&secure_boot_rules[i].list, +- &ima_default_rules); ++ for (i = 0; i < secure_boot_entries; i++) { ++ struct ima_rule_entry *entry; ++ ++ /* Include for builtin policies */ ++ list_add_tail(&secure_boot_rules[i].list, &ima_default_rules); ++ ++ /* Include for custom policies */ ++ if (kernel_locked_down) { ++ entry = kmemdup(&secure_boot_rules[i], sizeof(*entry), ++ GFP_KERNEL); ++ if (entry) ++ list_add_tail(&entry->list, &ima_policy_rules); ++ } ++ } -From 4c389db9daee3a3a444339a7d789de1d9366f736 Mon Sep 17 00:00:00 2001 + for (i = 0; i < appraise_entries; i++) { + list_add_tail(&default_appraise_rules[i].list, +-- +2.14.3 + +From 7c0d4949d8343a3b6ceca21f3d7710b20f283de0 Mon Sep 17 00:00:00 2001 From: David Howells <dhowells@redhat.com> -Date: Wed, 24 May 2017 14:56:01 +0100 -Subject: [PATCH 03/26] Enforce module signatures if the kernel is locked down +Date: Tue, 27 Feb 2018 10:04:50 +0000 +Subject: [PATCH 04/31] Enforce module signatures if the kernel is locked down If the kernel is locked down, require that all modules have valid -signatures that we can verify. +signatures that we can verify or that IMA can validate the file. + +I have adjusted the errors generated: + + (1) If there's no signature (ENODATA) or we can't check it (ENOPKG, + ENOKEY), then: + + (a) If signatures are enforced then EKEYREJECTED is returned. + + (b) If IMA will have validated the image, return 0 (okay). + + (c) If there's no signature or we can't check it, but the kernel is + locked down then EPERM is returned (this is then consistent with + other lockdown cases). + + (2) If the signature is unparseable (EBADMSG, EINVAL), the signature fails + the check (EKEYREJECTED) or a system error occurs (eg. ENOMEM), we + return the error we got. + +Note that the X.509 code doesn't check for key expiry as the RTC might not +be valid or might not have been transferred to the kernel's clock yet. Signed-off-by: David Howells <dhowells@redhat.com> -Reviewed-by: "Lee, Chun-Yi" <jlee@suse.com> -Reviewed-by: James Morris <james.l.morris@oracle.com> +Reviewed-by: Jiri Bohac <jbohac@suse.cz> +cc: "Lee, Chun-Yi" <jlee@suse.com> +cc: James Morris <james.l.morris@oracle.com> --- - kernel/module.c | 3 ++- - 1 file changed, 2 insertions(+), 1 deletion(-) + kernel/module.c | 56 +++++++++++++++++++++++++++++++++++++++++++------------- + 1 file changed, 43 insertions(+), 13 deletions(-) diff --git a/kernel/module.c b/kernel/module.c -index de66ec825992..3d9a3270c179 100644 +index ad2d420024f6..62419cf48ef6 100644 --- a/kernel/module.c +++ b/kernel/module.c -@@ -2781,7 +2781,8 @@ static int module_sig_check(struct load_info *info, int flags) +@@ -64,6 +64,7 @@ + #include <linux/bsearch.h> + #include <linux/dynamic_debug.h> + #include <linux/audit.h> ++#include <linux/ima.h> + #include <uapi/linux/module.h> + #include "module-internal.h" + +@@ -2765,10 +2766,12 @@ static inline void kmemleak_load_module(const struct module *mod, + #endif + + #ifdef CONFIG_MODULE_SIG +-static int module_sig_check(struct load_info *info, int flags) ++static int module_sig_check(struct load_info *info, int flags, ++ bool can_do_ima_check) + { +- int err = -ENOKEY; ++ int err = -ENODATA; + const unsigned long markerlen = sizeof(MODULE_SIG_STRING) - 1; ++ const char *reason; + const void *mod = info->hdr; + + /* +@@ -2783,19 +2786,46 @@ static int module_sig_check(struct load_info *info, int flags) + err = mod_verify_sig(mod, &info->len); } - /* Not having a signature is only an error if we're strict. */ +- if (!err) { ++ switch (err) { ++ case 0: + info->sig_ok = true; + return 0; +- } + +- /* 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("Loading of unsigned modules")) - err = 0; +- err = 0; ++ /* We don't permit modules to be loaded into trusted kernels ++ * without a valid signature on them, but if we're not ++ * enforcing, certain errors are non-fatal. ++ */ ++ case -ENODATA: ++ reason = "Loading of unsigned module"; ++ goto decide; ++ case -ENOPKG: ++ reason = "Loading of module with unsupported crypto"; ++ goto decide; ++ case -ENOKEY: ++ reason = "Loading of module with unavailable key"; ++ decide: ++ if (sig_enforce) { ++ pr_notice("%s is rejected\n", reason); ++ return -EKEYREJECTED; ++ } + +- return err; ++ if (can_do_ima_check && is_ima_appraise_enabled()) ++ return 0; ++ if (kernel_is_locked_down(reason)) ++ return -EPERM; ++ return 0; ++ ++ /* All other errors are fatal, including nomem, unparseable ++ * signatures and signature check failures - even if signatures ++ * aren't required. ++ */ ++ default: ++ return err; ++ } + } + #else /* !CONFIG_MODULE_SIG */ +-static int module_sig_check(struct load_info *info, int flags) ++static int module_sig_check(struct load_info *info, int flags, ++ bool can_do_ima_check) + { + return 0; + } +@@ -3655,13 +3685,13 @@ static int unknown_module_param_cb(char *param, char *val, const char *modname, + /* Allocate and load the module: note that size of section 0 is always + zero, and we rely on this for optional sections. */ + static int load_module(struct load_info *info, const char __user *uargs, +- int flags) ++ int flags, bool can_do_ima_check) + { + struct module *mod; + long err; + char *after_dashes; + +- err = module_sig_check(info, flags); ++ err = module_sig_check(info, flags, can_do_ima_check); + if (err) + goto free_copy; + +@@ -3850,7 +3880,7 @@ SYSCALL_DEFINE3(init_module, void __user *, umod, + if (err) + return err; + +- return load_module(&info, uargs, 0); ++ return load_module(&info, uargs, 0, false); + } + + SYSCALL_DEFINE3(finit_module, int, fd, const char __user *, uargs, int, flags) +@@ -3877,7 +3907,7 @@ SYSCALL_DEFINE3(finit_module, int, fd, const char __user *, uargs, int, flags) + info.hdr = hdr; + info.len = size; + +- return load_module(&info, uargs, flags); ++ return load_module(&info, uargs, flags, true); + } - return err; + static inline int within(unsigned long addr, void *start, unsigned long size) -- -2.13.6 +2.14.3 -From 59312c44aa46939a14b3fbfeb510f94b4a73c8a1 Mon Sep 17 00:00:00 2001 -From: Matthew Garrett <matthew.garrett@nebula.com> -Date: Wed, 24 May 2017 14:56:02 +0100 -Subject: [PATCH 04/26] Restrict /dev/{mem,kmem,port} when the kernel is locked +From 11b23b45b895133b0c4660622fe2cd8cea373324 Mon Sep 17 00:00:00 2001 +From: Matthew Garrett <mjg59@srcf.ucam.org> +Date: Tue, 27 Feb 2018 10:04:51 +0000 +Subject: [PATCH 05/31] Restrict /dev/{mem,kmem,port} when the kernel is locked down Allowing users to read and write to core kernel memory makes it possible @@ -497,7 +701,7 @@ been locked down to prevent this. Also disallow /dev/port from being opened to prevent raw ioport access and thus DMA from being used to accomplish the same thing. -Signed-off-by: Matthew Garrett <matthew.garrett@nebula.com> +Signed-off-by: Matthew Garrett <mjg59@srcf.ucam.org> Signed-off-by: David Howells <dhowells@redhat.com> Reviewed-by: "Lee, Chun-Yi" <jlee@suse.com> --- @@ -505,10 +709,10 @@ Reviewed-by: "Lee, Chun-Yi" <jlee@suse.com> 1 file changed, 2 insertions(+) diff --git a/drivers/char/mem.c b/drivers/char/mem.c -index 593a8818aca9..0ce5ac0a5c6b 100644 +index 052011bcf100..c024e7b2bbcb 100644 --- a/drivers/char/mem.c +++ b/drivers/char/mem.c -@@ -762,6 +762,8 @@ static loff_t memory_lseek(struct file *file, loff_t offset, int orig) +@@ -784,6 +784,8 @@ static loff_t memory_lseek(struct file *file, loff_t offset, int orig) static int open_port(struct inode *inode, struct file *filp) { @@ -518,21 +722,22 @@ index 593a8818aca9..0ce5ac0a5c6b 100644 } -- -2.13.6 +2.14.3 -From 6304f16efd61e66701f4b331e95da3cafb5f5f76 Mon Sep 17 00:00:00 2001 -From: Matthew Garrett <matthew.garrett@nebula.com> -Date: Wed, 24 May 2017 14:56:02 +0100 -Subject: [PATCH 05/26] kexec: Disable at runtime if the kernel is locked down +From ccaf57b0a1afb62c1278e3fee69634a710b60a44 Mon Sep 17 00:00:00 2001 +From: Matthew Garrett <mjg59@srcf.ucam.org> +Date: Tue, 27 Feb 2018 10:04:51 +0000 +Subject: [PATCH 06/31] kexec_load: Disable at runtime if the kernel is locked + down -kexec permits the loading and execution of arbitrary code in ring 0, which -is something that lock-down is meant to prevent. It makes sense to disable -kexec in this situation. +The kexec_load() syscall permits the loading and execution of arbitrary +code in ring 0, which is something that lock-down is meant to prevent. It +makes sense to disable kexec_load() in this situation. -This does not affect kexec_file_load() which can check for a signature on the -image to be booted. +This does not affect kexec_file_load() syscall which can check for a +signature on the image to be booted. -Signed-off-by: Matthew Garrett <matthew.garrett@nebula.com> +Signed-off-by: Matthew Garrett <mjg59@srcf.ucam.org> Signed-off-by: David Howells <dhowells@redhat.com> Acked-by: Dave Young <dyoung@redhat.com> Reviewed-by: "Lee, Chun-Yi" <jlee@suse.com> @@ -546,27 +751,27 @@ diff --git a/kernel/kexec.c b/kernel/kexec.c index e62ec4dc6620..7dadfed9b676 100644 --- a/kernel/kexec.c +++ b/kernel/kexec.c -@@ -202,6 +202,13 @@ SYSCALL_DEFINE4(kexec_load, unsigned long, entry, unsigned long, nr_segments, +@@ -201,6 +201,13 @@ SYSCALL_DEFINE4(kexec_load, unsigned long, entry, unsigned long, nr_segments, + if (!capable(CAP_SYS_BOOT) || kexec_load_disabled) return -EPERM; - /* ++ /* + * kexec can be used to circumvent module loading restrictions, so + * prevent loading in that case + */ + if (kernel_is_locked_down("kexec of unsigned images")) + return -EPERM; + -+ /* + /* * Verify we have a legal set of flags * This leaves us room for future extensions. - */ -- -2.13.6 +2.14.3 -From cd00079900870855cea3573253a95c331ccab523 Mon Sep 17 00:00:00 2001 +From b96ff1fd9e94772fde7b58fd69969d1a1c87eb6d Mon Sep 17 00:00:00 2001 From: Dave Young <dyoung@redhat.com> -Date: Wed, 24 May 2017 14:56:02 +0100 -Subject: [PATCH 06/26] Copy secure_boot flag in boot params across kexec +Date: Tue, 27 Feb 2018 10:04:51 +0000 +Subject: [PATCH 07/31] Copy secure_boot flag in boot params across kexec reboot Kexec reboot in case secure boot being enabled does not keep the secure @@ -601,54 +806,286 @@ index fb095ba0c02f..7d0fac5bcbbe 100644 ei->efi_systab = current_ei->efi_systab; ei->efi_systab_hi = current_ei->efi_systab_hi; -- -2.13.6 +2.14.3 + +From 092494dea28896108dfb654cebf9f7e3666fc514 Mon Sep 17 00:00:00 2001 +From: Jiri Bohac <jbohac@suse.cz> +Date: Tue, 27 Feb 2018 10:04:51 +0000 +Subject: [PATCH 08/31] kexec_file: split KEXEC_VERIFY_SIG into KEXEC_SIG and + KEXEC_SIG_FORCE + +This is a preparatory patch for kexec_file_load() lockdown. A locked down +kernel needs to prevent unsigned kernel images from being loaded with +kexec_file_load(). Currently, the only way to force the signature +verification is compiling with KEXEC_VERIFY_SIG. This prevents loading +usigned images even when the kernel is not locked down at runtime. + +This patch splits KEXEC_VERIFY_SIG into KEXEC_SIG and KEXEC_SIG_FORCE. +Analogous to the MODULE_SIG and MODULE_SIG_FORCE for modules, KEXEC_SIG +turns on the signature verification but allows unsigned images to be +loaded. KEXEC_SIG_FORCE disallows images without a valid signature. + +[Modified by David Howells such that: + + (1) verify_pefile_signature() differentiates between no-signature and + sig-didn't-match in its returned errors. + + (2) kexec fails with EKEYREJECTED and logs an appropriate message if + signature checking is enforced and an signature is not found, uses + unsupported crypto or has no matching key. -From de2ac5da82fc55156134820ba32095710b935ad5 Mon Sep 17 00:00:00 2001 -From: Chun-Yi Lee <joeyli.kernel@gmail.com> -Date: Wed, 24 May 2017 14:56:03 +0100 -Subject: [PATCH 07/26] kexec_file: Disable at runtime if the kernel is locked + (3) kexec fails with EKEYREJECTED if there is a signature for which we + have a key, but signature doesn't match - even if in non-forcing mode. + + (4) kexec fails with EBADMSG or some other error if there is a signature + which cannot be parsed - even if in non-forcing mode. + + (5) kexec fails with ELIBBAD if the PE file cannot be parsed to extract + the signature - even if in non-forcing mode. + +] + +Signed-off-by: Jiri Bohac <jbohac@suse.cz> +Signed-off-by: David Howells <dhowells@redhat.com> +Reviewed-by: Jiri Bohac <jbohac@suse.cz> +cc: Matthew Garrett <mjg59@srcf.ucam.org> +cc: Chun-Yi Lee <jlee@suse.com> +cc: kexec@lists.infradead.org +--- + arch/x86/Kconfig | 20 ++++++++++---- + arch/x86/kernel/machine_kexec_64.c | 2 +- + crypto/asymmetric_keys/verify_pefile.c | 4 ++- + include/linux/kexec.h | 4 +-- + kernel/kexec_file.c | 48 +++++++++++++++++++++++++++++----- + 5 files changed, 62 insertions(+), 16 deletions(-) + +diff --git a/arch/x86/Kconfig b/arch/x86/Kconfig +index eb7f43f23521..b2c5eb5a8333 100644 +--- a/arch/x86/Kconfig ++++ b/arch/x86/Kconfig +@@ -2020,20 +2020,30 @@ config KEXEC_FILE + for kernel and initramfs as opposed to list of segments as + accepted by previous system call. + +-config KEXEC_VERIFY_SIG ++config KEXEC_SIG + bool "Verify kernel signature during kexec_file_load() syscall" + depends on KEXEC_FILE + ---help--- +- This option makes kernel signature verification mandatory for +- the kexec_file_load() syscall. + +- In addition to that option, you need to enable signature ++ This option makes the kexec_file_load() syscall check for a valid ++ signature of the kernel image. The image can still be loaded without ++ a valid signature unless you also enable KEXEC_SIG_FORCE, though if ++ there's a signature that we can check, then it must be valid. ++ ++ In addition to this option, you need to enable signature + verification for the corresponding kernel image type being + loaded in order for this to work. + ++config KEXEC_SIG_FORCE ++ bool "Require a valid signature in kexec_file_load() syscall" ++ depends on KEXEC_SIG ++ ---help--- ++ This option makes kernel signature verification mandatory for ++ the kexec_file_load() syscall. ++ + config KEXEC_BZIMAGE_VERIFY_SIG + bool "Enable bzImage signature verification support" +- depends on KEXEC_VERIFY_SIG ++ depends on KEXEC_SIG + depends on SIGNED_PE_FILE_VERIFICATION + select SYSTEM_TRUSTED_KEYRING + ---help--- +diff --git a/arch/x86/kernel/machine_kexec_64.c b/arch/x86/kernel/machine_kexec_64.c +index 3b7427aa7d85..b0870d47d520 100644 +--- a/arch/x86/kernel/machine_kexec_64.c ++++ b/arch/x86/kernel/machine_kexec_64.c +@@ -406,7 +406,7 @@ int arch_kimage_file_post_load_cleanup(struct kimage *image) + return image->fops->cleanup(image->image_loader_data); + } + +-#ifdef CONFIG_KEXEC_VERIFY_SIG ++#ifdef CONFIG_KEXEC_SIG + int arch_kexec_kernel_verify_sig(struct kimage *image, void *kernel, + unsigned long kernel_len) + { +diff --git a/crypto/asymmetric_keys/verify_pefile.c b/crypto/asymmetric_keys/verify_pefile.c +index d178650fd524..4473cea1e877 100644 +--- a/crypto/asymmetric_keys/verify_pefile.c ++++ b/crypto/asymmetric_keys/verify_pefile.c +@@ -100,7 +100,7 @@ static int pefile_parse_binary(const void *pebuf, unsigned int pelen, + + if (!ddir->certs.virtual_address || !ddir->certs.size) { + pr_debug("Unsigned PE binary\n"); +- return -EKEYREJECTED; ++ return -ENODATA; + } + + chkaddr(ctx->header_size, ddir->certs.virtual_address, +@@ -408,6 +408,8 @@ static int pefile_digest_pe(const void *pebuf, unsigned int pelen, + * (*) 0 if at least one signature chain intersects with the keys in the trust + * keyring, or: + * ++ * (*) -ENODATA if there is no signature present. ++ * + * (*) -ENOPKG if a suitable crypto module couldn't be found for a check on a + * chain. + * +diff --git a/include/linux/kexec.h b/include/linux/kexec.h +index f16f6ceb3875..19652372f3ee 100644 +--- a/include/linux/kexec.h ++++ b/include/linux/kexec.h +@@ -121,7 +121,7 @@ typedef void *(kexec_load_t)(struct kimage *image, char *kernel_buf, + unsigned long cmdline_len); + typedef int (kexec_cleanup_t)(void *loader_data); + +-#ifdef CONFIG_KEXEC_VERIFY_SIG ++#ifdef CONFIG_KEXEC_SIG + typedef int (kexec_verify_sig_t)(const char *kernel_buf, + unsigned long kernel_len); + #endif +@@ -130,7 +130,7 @@ struct kexec_file_ops { + kexec_probe_t *probe; + kexec_load_t *load; + kexec_cleanup_t *cleanup; +-#ifdef CONFIG_KEXEC_VERIFY_SIG ++#ifdef CONFIG_KEXEC_SIG + kexec_verify_sig_t *verify_sig; + #endif + }; +diff --git a/kernel/kexec_file.c b/kernel/kexec_file.c +index e5bcd94c1efb..d5931e392050 100644 +--- a/kernel/kexec_file.c ++++ b/kernel/kexec_file.c +@@ -45,7 +45,7 @@ int __weak arch_kimage_file_post_load_cleanup(struct kimage *image) + return -EINVAL; + } + +-#ifdef CONFIG_KEXEC_VERIFY_SIG ++#ifdef CONFIG_KEXEC_SIG + int __weak arch_kexec_kernel_verify_sig(struct kimage *image, void *buf, + unsigned long buf_len) + { +@@ -116,7 +116,8 @@ kimage_file_prepare_segments(struct kimage *image, int kernel_fd, int initrd_fd, + const char __user *cmdline_ptr, + unsigned long cmdline_len, unsigned flags) + { +- int ret = 0; ++ const char *reason; ++ int ret; + void *ldata; + loff_t size; + +@@ -135,15 +136,48 @@ kimage_file_prepare_segments(struct kimage *image, int kernel_fd, int initrd_fd, + if (ret) + goto out; + +-#ifdef CONFIG_KEXEC_VERIFY_SIG ++#ifdef CONFIG_KEXEC_SIG + ret = arch_kexec_kernel_verify_sig(image, image->kernel_buf, + image->kernel_buf_len); +- if (ret) { +- pr_debug("kernel signature verification failed.\n"); ++#else ++ ret = -ENODATA; ++#endif ++ ++ switch (ret) { ++ case 0: ++ break; ++ ++ /* Certain verification errors are non-fatal if we're not ++ * checking errors, provided we aren't mandating that there ++ * must be a valid signature. ++ */ ++ case -ENODATA: ++ reason = "kexec of unsigned image"; ++ goto decide; ++ case -ENOPKG: ++ reason = "kexec of image with unsupported crypto"; ++ goto decide; ++ case -ENOKEY: ++ reason = "kexec of image with unavailable key"; ++ decide: ++ if (IS_ENABLED(CONFIG_KEXEC_SIG_FORCE)) { ++ pr_notice("%s rejected\n", reason); ++ ret = -EKEYREJECTED; ++ goto out; ++ } ++ ++ ret = 0; ++ break; ++ ++ /* All other errors are fatal, including nomem, unparseable ++ * signatures and signature check failures - even if signatures ++ * aren't required. ++ */ ++ default: ++ pr_notice("kernel signature verification failed (%d).\n", ret); + goto out; + } +- pr_debug("kernel signature verification successful.\n"); +-#endif ++ + /* It is possible that there no initramfs is being loaded */ + if (!(flags & KEXEC_FILE_NO_INITRAMFS)) { + ret = kernel_read_file_from_fd(initrd_fd, &image->initrd_buf, +-- +2.14.3 + +From 7124221c5cdb956365ed731b55e663db4075a131 Mon Sep 17 00:00:00 2001 +From: Jiri Bohac <jbohac@suse.cz> +Date: Tue, 27 Feb 2018 10:04:52 +0000 +Subject: [PATCH 09/31] kexec_file: Restrict at runtime if the kernel is locked down -When KEXEC_VERIFY_SIG is not enabled, kernel should not load images -through kexec_file systemcall if the kernel is locked down. +When KEXEC_SIG is not enabled, kernel should not load images through +kexec_file systemcall if the kernel is locked down unless IMA can be used +to validate the image. -This code was showed in Matthew's patch but not in git: -https://lkml.org/lkml/2015/3/13/778 +[Modified by David Howells to fit with modifications to the previous patch + and to return -EPERM if the kernel is locked down for consistency with + other lockdowns] -Cc: Matthew Garrett <mjg59@srcf.ucam.org> -Signed-off-by: Chun-Yi Lee <jlee@suse.com> +Signed-off-by: Jiri Bohac <jbohac@suse.cz> Signed-off-by: David Howells <dhowells@redhat.com> -Reviewed-by: James Morris <james.l.morris@oracle.com> +Reviewed-by: Jiri Bohac <jbohac@suse.cz> +Cc: Matthew Garrett <mjg59@srcf.ucam.org> +cc: Chun-Yi Lee <jlee@suse.com> cc: kexec@lists.infradead.org --- - kernel/kexec_file.c | 7 +++++++ - 1 file changed, 7 insertions(+) + kernel/kexec_file.c | 8 ++++++++ + 1 file changed, 8 insertions(+) diff --git a/kernel/kexec_file.c b/kernel/kexec_file.c -index 9f48f4412297..ff6523f2dcc2 100644 +index d5931e392050..c47c4de604cd 100644 --- a/kernel/kexec_file.c +++ b/kernel/kexec_file.c -@@ -255,6 +255,13 @@ SYSCALL_DEFINE5(kexec_file_load, int, kernel_fd, int, initrd_fd, - if (!capable(CAP_SYS_BOOT) || kexec_load_disabled) - return -EPERM; +@@ -167,6 +167,14 @@ kimage_file_prepare_segments(struct kimage *image, int kernel_fd, int initrd_fd, + } -+ /* Don't permit images to be loaded into trusted kernels if we're not -+ * going to verify the signature on them -+ */ -+ if (!IS_ENABLED(CONFIG_KEXEC_VERIFY_SIG) && -+ kernel_is_locked_down("kexec of unsigned images")) -+ return -EPERM; + ret = 0; ++ if (is_ima_appraise_enabled()) ++ break; + - /* Make sure we have a legal set of flags */ - if (flags != (flags & KEXEC_FILE_FLAGS)) - return -EINVAL; ++ if (kernel_is_locked_down(reason)) { ++ ret = -EPERM; ++ goto out; ++ } ++ + break; + + /* All other errors are fatal, including nomem, unparseable -- -2.13.6 +2.14.3 -From ba823f2b5125605fcbac150fe27e622fd224ea61 Mon Sep 17 00:00:00 2001 +From 70911b9a15ee62c6222e09099d23d94bdd132972 Mon Sep 17 00:00:00 2001 From: Josh Boyer <jwboyer@fedoraproject.org> -Date: Wed, 24 May 2017 14:56:03 +0100 -Subject: [PATCH 08/26] hibernate: Disable when the kernel is locked down +Date: Tue, 27 Feb 2018 10:04:52 +0000 +Subject: [PATCH 10/31] hibernate: Disable when the kernel is locked down There is currently no way to verify the resume image when returning from hibernate. This might compromise the signed modules trust model, @@ -677,12 +1114,12 @@ index a5c36e9c56a6..f2eafefeec50 100644 /** -- -2.13.6 +2.14.3 -From 9e78666a6153d72c3e50160a30ead699ba508d8f Mon Sep 17 00:00:00 2001 +From b85febc7ab5ceede3c53b438b899dfba7741f366 Mon Sep 17 00:00:00 2001 From: Matthew Garrett <mjg59@srcf.ucam.org> -Date: Wed, 24 May 2017 14:56:03 +0100 -Subject: [PATCH 09/26] uswsusp: Disable when the kernel is locked down +Date: Tue, 27 Feb 2018 10:04:52 +0000 +Subject: [PATCH 11/31] uswsusp: Disable when the kernel is locked down uswsusp allows a user process to dump and then restore kernel state, which makes it possible to modify the running kernel. Disable this if the kernel @@ -712,12 +1149,12 @@ index 22df9f7ff672..678ade9decfe 100644 if (!atomic_add_unless(&snapshot_device_available, -1, 0)) { -- -2.13.6 +2.14.3 -From 334fa071b01ced7f48b2920208addfb1eab5d0fe Mon Sep 17 00:00:00 2001 -From: Matthew Garrett <matthew.garrett@nebula.com> -Date: Wed, 24 May 2017 14:56:03 +0100 -Subject: [PATCH 10/26] PCI: Lock down BAR access when the kernel is locked +From 9e2700d1746e53da4de4d0fbee7ca4f8f06d6ff2 Mon Sep 17 00:00:00 2001 +From: Matthew Garrett <mjg59@srcf.ucam.org> +Date: Tue, 27 Feb 2018 10:04:52 +0000 +Subject: [PATCH 12/31] PCI: Lock down BAR access when the kernel is locked down Any hardware that can potentially generate DMA has to be locked down in @@ -726,7 +1163,7 @@ allowing them to circumvent disabled module loading or module signing. Default to paranoid - in future we can potentially relax this for sufficiently IOMMU-isolated devices. -Signed-off-by: Matthew Garrett <matthew.garrett@nebula.com> +Signed-off-by: Matthew Garrett <mjg59@srcf.ucam.org> Signed-off-by: David Howells <dhowells@redhat.com> Acked-by: Bjorn Helgaas <bhelgaas@google.com> Reviewed-by: "Lee, Chun-Yi" <jlee@suse.com> @@ -738,10 +1175,10 @@ cc: linux-pci@vger.kernel.org 3 files changed, 19 insertions(+), 2 deletions(-) diff --git a/drivers/pci/pci-sysfs.c b/drivers/pci/pci-sysfs.c -index 1eecfa301f7f..e1a3b0e765c2 100644 +index eb6bee8724cc..6d2afc730ab7 100644 --- a/drivers/pci/pci-sysfs.c +++ b/drivers/pci/pci-sysfs.c -@@ -881,6 +881,9 @@ static ssize_t pci_write_config(struct file *filp, struct kobject *kobj, +@@ -930,6 +930,9 @@ static ssize_t pci_write_config(struct file *filp, struct kobject *kobj, loff_t init_off = off; u8 *data = (u8 *) buf; @@ -751,7 +1188,7 @@ index 1eecfa301f7f..e1a3b0e765c2 100644 if (off > dev->cfg_size) return 0; if (off + count > dev->cfg_size) { -@@ -1175,6 +1178,9 @@ static int pci_mmap_resource(struct kobject *kobj, struct bin_attribute *attr, +@@ -1224,6 +1227,9 @@ static int pci_mmap_resource(struct kobject *kobj, struct bin_attribute *attr, enum pci_mmap_state mmap_type; struct resource *res = &pdev->resource[bar]; @@ -761,7 +1198,7 @@ index 1eecfa301f7f..e1a3b0e765c2 100644 if (res->flags & IORESOURCE_MEM && iomem_is_exclusive(res->start)) return -EINVAL; -@@ -1255,6 +1261,9 @@ static ssize_t pci_write_resource_io(struct file *filp, struct kobject *kobj, +@@ -1299,6 +1305,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) { @@ -772,10 +1209,10 @@ index 1eecfa301f7f..e1a3b0e765c2 100644 } diff --git a/drivers/pci/proc.c b/drivers/pci/proc.c -index 098360d7ff81..a6c53d855daa 100644 +index 58a662e3c4a6..b30e53eb41df 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, +@@ -117,6 +117,9 @@ static ssize_t proc_bus_pci_write(struct file *file, const char __user *buf, int size = dev->cfg_size; int cnt; @@ -785,7 +1222,7 @@ index 098360d7ff81..a6c53d855daa 100644 if (pos >= size) return 0; if (nbytes >= size) -@@ -195,6 +198,9 @@ static long proc_bus_pci_ioctl(struct file *file, unsigned int cmd, +@@ -196,6 +199,9 @@ static long proc_bus_pci_ioctl(struct file *file, unsigned int cmd, #endif /* HAVE_PCI_MMAP */ int ret = 0; @@ -795,7 +1232,7 @@ index 098360d7ff81..a6c53d855daa 100644 switch (cmd) { case PCIIOC_CONTROLLER: ret = pci_domain_nr(dev->bus); -@@ -236,7 +242,8 @@ static int proc_bus_pci_mmap(struct file *file, struct vm_area_struct *vma) +@@ -237,7 +243,8 @@ 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 = 0, res_bit = IORESOURCE_MEM; @@ -806,10 +1243,10 @@ index 098360d7ff81..a6c53d855daa 100644 if (fpriv->mmap_state == pci_mmap_io) { diff --git a/drivers/pci/syscall.c b/drivers/pci/syscall.c -index 9bf993e1f71e..afa01cc3ceec 100644 +index e725f99b5479..6cb3b22a3b94 100644 --- a/drivers/pci/syscall.c +++ b/drivers/pci/syscall.c -@@ -92,7 +92,8 @@ SYSCALL_DEFINE5(pciconfig_write, unsigned long, bus, unsigned long, dfn, +@@ -93,7 +93,8 @@ SYSCALL_DEFINE5(pciconfig_write, unsigned long, bus, unsigned long, dfn, u32 dword; int err = 0; @@ -818,14 +1255,14 @@ index 9bf993e1f71e..afa01cc3ceec 100644 + kernel_is_locked_down("Direct PCI access")) return -EPERM; - dev = pci_get_bus_and_slot(bus, dfn); + dev = pci_get_domain_bus_and_slot(0, bus, dfn); -- -2.13.6 +2.14.3 -From 7e608c45ac2ab6c8e125aaf3993b8257352ac631 Mon Sep 17 00:00:00 2001 -From: Matthew Garrett <matthew.garrett@nebula.com> -Date: Wed, 24 May 2017 14:56:04 +0100 -Subject: [PATCH 11/26] x86: Lock down IO port access when the kernel is locked +From d7a876a8a1616730c0bc44c47823483ec3b99c12 Mon Sep 17 00:00:00 2001 +From: Matthew Garrett <mjg59@srcf.ucam.org> +Date: Tue, 27 Feb 2018 10:04:52 +0000 +Subject: [PATCH 13/31] x86: Lock down IO port access when the kernel is locked down IO port access would permit users to gain access to PCI configuration @@ -836,7 +1273,7 @@ DMA, so lock it down by default. This also implicitly locks down the KDADDIO, KDDELIO, KDENABIO and KDDISABIO console ioctls. -Signed-off-by: Matthew Garrett <matthew.garrett@nebula.com> +Signed-off-by: Matthew Garrett <mjg59@srcf.ucam.org> Signed-off-by: David Howells <dhowells@redhat.com> Reviewed-by: Thomas Gleixner <tglx@linutronix.de> Reviewed-by: "Lee, Chun-Yi" <jlee@suse.com> @@ -846,10 +1283,10 @@ cc: x86@kernel.org 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/arch/x86/kernel/ioport.c b/arch/x86/kernel/ioport.c -index 9c3cf0944bce..2c0f058651c5 100644 +index 2f723301eb58..b3758cc23262 100644 --- a/arch/x86/kernel/ioport.c +++ b/arch/x86/kernel/ioport.c -@@ -30,7 +30,8 @@ asmlinkage long sys_ioperm(unsigned long from, unsigned long num, int turn_on) +@@ -31,7 +31,8 @@ asmlinkage long sys_ioperm(unsigned long from, unsigned long num, int turn_on) if ((from + num <= from) || (from + num > IO_BITMAP_BITS)) return -EINVAL; @@ -859,7 +1296,7 @@ index 9c3cf0944bce..2c0f058651c5 100644 return -EPERM; /* -@@ -120,7 +121,8 @@ SYSCALL_DEFINE1(iopl, unsigned int, level) +@@ -121,7 +122,8 @@ SYSCALL_DEFINE1(iopl, unsigned int, level) return -EINVAL; /* Trying to gain more privileges? */ if (level > old) { @@ -870,12 +1307,12 @@ index 9c3cf0944bce..2c0f058651c5 100644 } regs->flags = (regs->flags & ~X86_EFLAGS_IOPL) | -- -2.13.6 +2.14.3 -From 2644bf492568e3733bc841112c6e8628a6e01b8e Mon Sep 17 00:00:00 2001 -From: Matthew Garrett <matthew.garrett@nebula.com> -Date: Wed, 24 May 2017 14:56:04 +0100 -Subject: [PATCH 12/26] x86/msr: Restrict MSR access when the kernel is locked +From 43e89781371daf295925ffa1f9074eb31b815491 Mon Sep 17 00:00:00 2001 +From: Matthew Garrett <mjg59@srcf.ucam.org> +Date: Tue, 27 Feb 2018 10:04:53 +0000 +Subject: [PATCH 14/31] x86/msr: Restrict MSR access when the kernel is locked down Writing to MSRs should not be allowed if the kernel is locked down, since @@ -885,7 +1322,7 @@ patch by Kees Cook. MSR accesses are logged for the purposes of building up a whitelist as per Alan Cox's suggestion. -Signed-off-by: Matthew Garrett <matthew.garrett@nebula.com> +Signed-off-by: Matthew Garrett <mjg59@srcf.ucam.org> Signed-off-by: David Howells <dhowells@redhat.com> Acked-by: Kees Cook <keescook@chromium.org> Reviewed-by: Thomas Gleixner <tglx@linutronix.de> @@ -924,77 +1361,19 @@ index ef688804f80d..dfb61d358196 100644 if (err) break; -- -2.13.6 - -From e6850fffe186e252cc94e8747e589076e215ca1a Mon Sep 17 00:00:00 2001 -From: Matthew Garrett <matthew.garrett@nebula.com> -Date: Wed, 24 May 2017 14:56:04 +0100 -Subject: [PATCH 13/26] asus-wmi: Restrict debugfs interface when the kernel is - locked down - -We have no way of validating what all of the Asus WMI methods do on a given -machine - and there's a risk that some will allow hardware state to be -manipulated in such a way that arbitrary code can be executed in the -kernel, circumventing module loading restrictions. Prevent that if the -kernel is locked down. - -Signed-off-by: Matthew Garrett <matthew.garrett@nebula.com> -Signed-off-by: David Howells <dhowells@redhat.com> -Reviewed-by: "Lee, Chun-Yi" <jlee@suse.com> -cc: acpi4asus-user@lists.sourceforge.net -cc: platform-driver-x86@vger.kernel.org ---- - drivers/platform/x86/asus-wmi.c | 9 +++++++++ - 1 file changed, 9 insertions(+) - -diff --git a/drivers/platform/x86/asus-wmi.c b/drivers/platform/x86/asus-wmi.c -index 48e1541dc8d4..ef5587469337 100644 ---- a/drivers/platform/x86/asus-wmi.c -+++ b/drivers/platform/x86/asus-wmi.c -@@ -1905,6 +1905,9 @@ static int show_dsts(struct seq_file *m, void *data) - int err; - u32 retval = -1; - -+ if (kernel_is_locked_down("Asus WMI")) -+ return -EPERM; -+ - err = asus_wmi_get_devstate(asus, asus->debug.dev_id, &retval); - - if (err < 0) -@@ -1921,6 +1924,9 @@ static int show_devs(struct seq_file *m, void *data) - int err; - u32 retval = -1; +2.14.3 -+ if (kernel_is_locked_down("Asus WMI")) -+ return -EPERM; -+ - err = asus_wmi_set_devstate(asus->debug.dev_id, asus->debug.ctrl_param, - &retval); - -@@ -1945,6 +1951,9 @@ static int show_call(struct seq_file *m, void *data) - union acpi_object *obj; - acpi_status status; - -+ if (kernel_is_locked_down("Asus WMI")) -+ return -EPERM; -+ - status = wmi_evaluate_method(ASUS_WMI_MGMT_GUID, - 0, asus->debug.method_id, - &input, &output); --- -2.13.6 - -From 6dda2a4dbc8bb80efaa55aba6d54382e986305c5 Mon Sep 17 00:00:00 2001 -From: Matthew Garrett <matthew.garrett@nebula.com> -Date: Wed, 24 May 2017 14:56:04 +0100 -Subject: [PATCH 14/26] ACPI: Limit access to custom_method when the kernel is +From 13b28d5eb338531f53ac27bce86c663c88ac4aca Mon Sep 17 00:00:00 2001 +From: Matthew Garrett <mjg59@srcf.ucam.org> +Date: Tue, 27 Feb 2018 10:04:53 +0000 +Subject: [PATCH 15/31] ACPI: Limit access to custom_method when the kernel is locked down custom_method effectively allows arbitrary access to system memory, making it possible for an attacker to circumvent restrictions on module loading. Disable it if the kernel is locked down. -Signed-off-by: Matthew Garrett <matthew.garrett@nebula.com> +Signed-off-by: Matthew Garrett <mjg59@srcf.ucam.org> Signed-off-by: David Howells <dhowells@redhat.com> Reviewed-by: "Lee, Chun-Yi" <jlee@suse.com> cc: linux-acpi@vger.kernel.org @@ -1017,12 +1396,12 @@ index c68e72414a67..b33fba70ec51 100644 /* parse the table header to get the table length */ if (count <= sizeof(struct acpi_table_header)) -- -2.13.6 +2.14.3 -From 64caa33410f85663cf0a65e4c09b8b8d28a219ad Mon Sep 17 00:00:00 2001 +From dadc30f71155a6f2df81d791cf1314ecdb36cb84 Mon Sep 17 00:00:00 2001 From: Josh Boyer <jwboyer@redhat.com> -Date: Wed, 24 May 2017 14:56:05 +0100 -Subject: [PATCH 15/26] acpi: Ignore acpi_rsdp kernel param when the kernel has +Date: Tue, 27 Feb 2018 10:04:53 +0000 +Subject: [PATCH 16/31] acpi: Ignore acpi_rsdp kernel param when the kernel has been locked down This option allows userspace to pass the RSDP address to the kernel, which @@ -1039,7 +1418,7 @@ cc: linux-acpi@vger.kernel.org 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/acpi/osl.c b/drivers/acpi/osl.c -index db78d353bab1..36c6527c1b0a 100644 +index 3bb46cb24a99..3d3b59b97f31 100644 --- a/drivers/acpi/osl.c +++ b/drivers/acpi/osl.c @@ -192,7 +192,7 @@ acpi_physical_address __init acpi_os_get_root_pointer(void) @@ -1052,12 +1431,12 @@ index db78d353bab1..36c6527c1b0a 100644 #endif -- -2.13.6 +2.14.3 -From d87ce06969f2d4da0c864e8a4cf6c820d950cd1f Mon Sep 17 00:00:00 2001 +From 9185a89b926a57d52ac9edf588ad533d53af4985 Mon Sep 17 00:00:00 2001 From: Linn Crosetto <linn@hpe.com> -Date: Wed, 24 May 2017 14:56:05 +0100 -Subject: [PATCH 16/26] acpi: Disable ACPI table override if the kernel is +Date: Tue, 27 Feb 2018 10:04:53 +0000 +Subject: [PATCH 17/31] acpi: Disable ACPI table override if the kernel is locked down From the kernel documentation (initrd_table_override.txt): @@ -1079,10 +1458,10 @@ cc: linux-acpi@vger.kernel.org 1 file changed, 5 insertions(+) diff --git a/drivers/acpi/tables.c b/drivers/acpi/tables.c -index 80ce2a7d224b..5cc13c42daf9 100644 +index 7bcb66ccccf3..5ea02c9ca47f 100644 --- a/drivers/acpi/tables.c +++ b/drivers/acpi/tables.c -@@ -526,6 +526,11 @@ void __init acpi_table_upgrade(void) +@@ -527,6 +527,11 @@ void __init acpi_table_upgrade(void) if (table_nr == 0) return; @@ -1095,12 +1474,12 @@ index 80ce2a7d224b..5cc13c42daf9 100644 memblock_find_in_range(0, ACPI_TABLE_UPGRADE_MAX_PHYS, all_tables_size, PAGE_SIZE); -- -2.13.6 +2.14.3 -From 547e2ca9cbfd420a15dd70e1c1c24b7040f88058 Mon Sep 17 00:00:00 2001 +From aa434c790a2581df5dc7973f2dc3a6a3234bd6b7 Mon Sep 17 00:00:00 2001 From: Linn Crosetto <linn@hpe.com> -Date: Wed, 24 May 2017 14:56:05 +0100 -Subject: [PATCH 17/26] acpi: Disable APEI error injection if the kernel is +Date: Tue, 27 Feb 2018 10:04:53 +0000 +Subject: [PATCH 18/31] acpi: Disable APEI error injection if the kernel is locked down ACPI provides an error injection mechanism, EINJ, for debugging and testing @@ -1141,12 +1520,12 @@ index b38737c83a24..6d71e1e97b20 100644 if (flags && (flags & ~(SETWA_FLAGS_APICID|SETWA_FLAGS_MEM|SETWA_FLAGS_PCIE_SBDF))) -- -2.13.6 +2.14.3 -From abbf8de44feab5f50b316d6491926d8d9029cb49 Mon Sep 17 00:00:00 2001 +From 5b76b160badb6e53f68a65f0374df700894559bb Mon Sep 17 00:00:00 2001 From: David Howells <dhowells@redhat.com> -Date: Wed, 24 May 2017 14:56:06 +0100 -Subject: [PATCH 18/26] scsi: Lock down the eata driver +Date: Tue, 27 Feb 2018 10:04:53 +0000 +Subject: [PATCH 19/31] scsi: Lock down the eata driver When the kernel is running in secure boot mode, we lock down the kernel to prevent userspace from modifying the running kernel image. Whilst this @@ -1186,12 +1565,12 @@ index 6501c330d8c8..72fceaa8f3da 100644 #if defined(MODULE) /* io_port could have been modified when loading as a module */ -- -2.13.6 +2.14.3 -From 116b02dff661d497c10099862b8b86e6cd2262ae Mon Sep 17 00:00:00 2001 +From ebdc673699d9732a1cccfc2f80e84402aa7ec0c9 Mon Sep 17 00:00:00 2001 From: David Howells <dhowells@redhat.com> -Date: Wed, 24 May 2017 14:56:06 +0100 -Subject: [PATCH 19/26] Prohibit PCMCIA CIS storage when the kernel is locked +Date: Tue, 27 Feb 2018 10:04:54 +0000 +Subject: [PATCH 20/31] Prohibit PCMCIA CIS storage when the kernel is locked down Prohibit replacement of the PCMCIA Card Information Structure when the @@ -1205,7 +1584,7 @@ cc: linux-pcmcia@lists.infradead.org 1 file changed, 3 insertions(+) diff --git a/drivers/pcmcia/cistpl.c b/drivers/pcmcia/cistpl.c -index 55ef7d1fd8da..b7a0e42eeb25 100644 +index 102646fedb56..e46c948d7246 100644 --- a/drivers/pcmcia/cistpl.c +++ b/drivers/pcmcia/cistpl.c @@ -1578,6 +1578,9 @@ static ssize_t pccard_store_cis(struct file *filp, struct kobject *kobj, @@ -1219,12 +1598,12 @@ index 55ef7d1fd8da..b7a0e42eeb25 100644 if (off) -- -2.13.6 +2.14.3 -From f3dc03aa368cfde123bc1b60bda287091c9d43b4 Mon Sep 17 00:00:00 2001 +From 0f058a0aecf0aea70fc42905250bb2a0f195157a Mon Sep 17 00:00:00 2001 From: David Howells <dhowells@redhat.com> -Date: Wed, 24 May 2017 14:56:06 +0100 -Subject: [PATCH 20/26] Lock down TIOCSSERIAL +Date: Tue, 27 Feb 2018 10:04:54 +0000 +Subject: [PATCH 21/31] Lock down TIOCSSERIAL Lock down TIOCSSERIAL as that can be used to change the ioport and irq settings on a serial port. This only appears to be an issue for the serial @@ -1239,10 +1618,10 @@ cc: Jiri Slaby <jslaby@suse.com> 1 file changed, 6 insertions(+) diff --git a/drivers/tty/serial/serial_core.c b/drivers/tty/serial/serial_core.c -index 3a14cccbd7ff..41f0922ad842 100644 +index c8dde56b532b..7370f3d169fe 100644 --- a/drivers/tty/serial/serial_core.c +++ b/drivers/tty/serial/serial_core.c -@@ -842,6 +842,12 @@ static int uart_set_info(struct tty_struct *tty, struct tty_port *port, +@@ -829,6 +829,12 @@ static int uart_set_info(struct tty_struct *tty, struct tty_port *port, new_flags = (__force upf_t)new_info->flags; old_custom_divisor = uport->custom_divisor; @@ -1256,12 +1635,12 @@ index 3a14cccbd7ff..41f0922ad842 100644 retval = -EPERM; if (change_irq || change_port || -- -2.13.6 +2.14.3 -From 9d266defc89a73c6dcca3b67ad70b95ac99b8e53 Mon Sep 17 00:00:00 2001 +From e5a9ff56a0c1762ba2b3d3ea46b03cf2ba9d2c60 Mon Sep 17 00:00:00 2001 From: David Howells <dhowells@redhat.com> -Date: Wed, 24 May 2017 14:56:06 +0100 -Subject: [PATCH 21/26] Lock down module params that specify hardware +Date: Tue, 27 Feb 2018 10:04:54 +0000 +Subject: [PATCH 22/31] Lock down module params that specify hardware parameters (eg. ioport) Provided an annotation for module parameters that specify hardware @@ -1275,7 +1654,7 @@ Signed-off-by: David Howells <dhowells@redhat.com> 1 file changed, 21 insertions(+), 5 deletions(-) diff --git a/kernel/params.c b/kernel/params.c -index 60b2d8101355..422979adb60a 100644 +index cc9108c2a1fd..2c08c4aa376b 100644 --- a/kernel/params.c +++ b/kernel/params.c @@ -108,13 +108,19 @@ bool parameq(const char *a, const char *b) @@ -1312,7 +1691,7 @@ index 60b2d8101355..422979adb60a 100644 kernel_param_unlock(params[i].mod); return err; } -@@ -556,6 +564,12 @@ static ssize_t param_attr_show(struct module_attribute *mattr, +@@ -553,6 +561,12 @@ static ssize_t param_attr_show(struct module_attribute *mattr, return count; } @@ -1325,7 +1704,7 @@ index 60b2d8101355..422979adb60a 100644 /* sysfs always hands a nul-terminated string in buf. We rely on that. */ static ssize_t param_attr_store(struct module_attribute *mattr, struct module_kobject *mk, -@@ -568,8 +582,10 @@ static ssize_t param_attr_store(struct module_attribute *mattr, +@@ -565,8 +579,10 @@ static ssize_t param_attr_store(struct module_attribute *mattr, return -EPERM; kernel_param_lock(mk->mod); @@ -1339,12 +1718,12 @@ index 60b2d8101355..422979adb60a 100644 if (!err) return len; -- -2.13.6 +2.14.3 -From 17a8caed6507846edd0a7016cdcd97fe46cca263 Mon Sep 17 00:00:00 2001 +From 6733115594290091a00d19060893f2396e51832c Mon Sep 17 00:00:00 2001 From: David Howells <dhowells@redhat.com> -Date: Wed, 24 May 2017 14:56:07 +0100 -Subject: [PATCH 22/26] x86/mmiotrace: Lock down the testmmiotrace module +Date: Tue, 27 Feb 2018 10:04:54 +0000 +Subject: [PATCH 23/31] x86/mmiotrace: Lock down the testmmiotrace module The testmmiotrace module shouldn't be permitted when the kernel is locked down as it can be used to arbitrarily read and write MMIO space. @@ -1375,98 +1754,310 @@ index f6ae6830b341..bbaad357f5d7 100644 pr_err("you have to use the module argument mmio_address.\n"); pr_err("DO NOT LOAD THIS MODULE UNLESS YOU REALLY KNOW WHAT YOU ARE DOING!\n"); -- -2.13.6 +2.14.3 + +From 69a17e04714182d314a7a7425f584ed3a54e065e Mon Sep 17 00:00:00 2001 +From: David Howells <dhowells@redhat.com> +Date: Tue, 27 Feb 2018 10:04:54 +0000 +Subject: [PATCH 24/31] Lock down /proc/kcore + +Disallow access to /proc/kcore when the kernel is locked down to prevent +access to cryptographic data. + +Signed-off-by: David Howells <dhowells@redhat.com> +Reviewed-by: James Morris <james.l.morris@oracle.com> +--- + fs/proc/kcore.c | 2 ++ + 1 file changed, 2 insertions(+) + +diff --git a/fs/proc/kcore.c b/fs/proc/kcore.c +index d1e82761de81..cdebdee81719 100644 +--- a/fs/proc/kcore.c ++++ b/fs/proc/kcore.c +@@ -546,6 +546,8 @@ read_kcore(struct file *file, char __user *buffer, size_t buflen, loff_t *fpos) + + static int open_kcore(struct inode *inode, struct file *filp) + { ++ if (kernel_is_locked_down("/proc/kcore")) ++ return -EPERM; + if (!capable(CAP_SYS_RAWIO)) + return -EPERM; + +-- +2.14.3 + +From aa4a17515ea163cf0020d4a8c41302fb159b56ce Mon Sep 17 00:00:00 2001 +From: David Howells <dhowells@redhat.com> +Date: Tue, 27 Feb 2018 10:04:54 +0000 +Subject: [PATCH 25/31] Lock down kprobes + +Disallow the creation of kprobes when the kernel is locked down by +preventing their registration. This prevents kprobes from being used to +access kernel memory, either to make modifications or to steal crypto data. + +Reported-by: Alexei Starovoitov <alexei.starovoitov@gmail.com> +Signed-off-by: David Howells <dhowells@redhat.com> +--- + kernel/kprobes.c | 3 +++ + 1 file changed, 3 insertions(+) + +diff --git a/kernel/kprobes.c b/kernel/kprobes.c +index 102160ff5c66..4f5757732553 100644 +--- a/kernel/kprobes.c ++++ b/kernel/kprobes.c +@@ -1561,6 +1561,9 @@ int register_kprobe(struct kprobe *p) + struct module *probed_mod; + kprobe_opcode_t *addr; + ++ if (kernel_is_locked_down("Use of kprobes")) ++ return -EPERM; ++ + /* Adjust probe address from symbol */ + addr = kprobe_addr(p); + if (IS_ERR(addr)) +-- +2.14.3 + +From 78bb0059c3b8304a8d124b55feebc780fb3e0500 Mon Sep 17 00:00:00 2001 +From: David Howells <dhowells@redhat.com> +Date: Tue, 27 Feb 2018 10:04:55 +0000 +Subject: [PATCH 26/31] bpf: Restrict kernel image access functions when the + kernel is locked down + +There are some bpf functions can be used to read kernel memory: +bpf_probe_read, bpf_probe_write_user and bpf_trace_printk. These allow +private keys in kernel memory (e.g. the hibernation image signing key) to +be read by an eBPF program and kernel memory to be altered without +restriction. + +Completely prohibit the use of BPF when the kernel is locked down. + +Suggested-by: Alexei Starovoitov <alexei.starovoitov@gmail.com> +Signed-off-by: David Howells <dhowells@redhat.com> +cc: netdev@vger.kernel.org +cc: Chun-Yi Lee <jlee@suse.com> +cc: Alexei Starovoitov <alexei.starovoitov@gmail.com> +--- + kernel/bpf/syscall.c | 3 +++ + 1 file changed, 3 insertions(+) + +diff --git a/kernel/bpf/syscall.c b/kernel/bpf/syscall.c +index e24aa3241387..3ea87a004771 100644 +--- a/kernel/bpf/syscall.c ++++ b/kernel/bpf/syscall.c +@@ -1848,6 +1848,9 @@ SYSCALL_DEFINE3(bpf, int, cmd, union bpf_attr __user *, uattr, unsigned int, siz + if (sysctl_unprivileged_bpf_disabled && !capable(CAP_SYS_ADMIN)) + return -EPERM; + ++ if (kernel_is_locked_down("BPF")) ++ return -EPERM; ++ + err = check_uarg_tail_zero(uattr, sizeof(attr), size); + if (err) + return err; +-- +2.14.3 + +From 9d6d6000dffb44cb2269b26eafeb371345bd2297 Mon Sep 17 00:00:00 2001 +From: David Howells <dhowells@redhat.com> +Date: Tue, 27 Feb 2018 10:04:55 +0000 +Subject: [PATCH 27/31] Lock down perf + +Disallow the use of certain perf facilities that might allow userspace to +access kernel data. + +Signed-off-by: David Howells <dhowells@redhat.com> +--- + kernel/events/core.c | 5 +++++ + 1 file changed, 5 insertions(+) + +diff --git a/kernel/events/core.c b/kernel/events/core.c +index 96db9ae5d5af..1fba021d61d4 100644 +--- a/kernel/events/core.c ++++ b/kernel/events/core.c +@@ -9924,6 +9924,11 @@ SYSCALL_DEFINE5(perf_event_open, + return -EINVAL; + } + ++ if ((attr.sample_type & PERF_SAMPLE_REGS_INTR) && ++ kernel_is_locked_down("PERF_SAMPLE_REGS_INTR")) ++ /* REGS_INTR can leak data, lockdown must prevent this */ ++ return -EPERM; ++ + /* Only privileged users can get physical addresses */ + if ((attr.sample_type & PERF_SAMPLE_PHYS_ADDR) && + perf_paranoid_kernel() && !capable(CAP_SYS_ADMIN)) +-- +2.14.3 -From 79ae67bf5f7eda526abaa80b01b19e08c1ed3558 Mon Sep 17 00:00:00 2001 +From 3fc32260515837f4c87cb923513973f1e77ccef9 Mon Sep 17 00:00:00 2001 From: David Howells <dhowells@redhat.com> -Date: Wed, 18 Oct 2017 17:28:02 +0100 -Subject: [PATCH 23/26] debugfs: Disallow use of debugfs files when the kernel - is locked down +Date: Tue, 27 Feb 2018 10:04:55 +0000 +Subject: [PATCH 28/31] debugfs: Restrict debugfs when the kernel is locked + down + +Disallow opening of debugfs files that might be used to muck around when +the kernel is locked down as various drivers give raw access to hardware +through debugfs. Given the effort of auditing all 2000 or so files and +manually fixing each one as necessary, I've chosen to apply a heuristic +instead. The following changes are made: + + (1) chmod and chown are disallowed on debugfs objects (though the root dir + can be modified by mount and remount, but I'm not worried about that). -Disallow opening of debugfs files when the kernel is locked down as various -drivers give raw access to hardware through debugfs. + (2) When the kernel is locked down, only files with the following criteria + are permitted to be opened: -Accesses to tracefs should use /sys/kernel/tracing/ rather than -/sys/kernel/debug/tracing/. Possibly a symlink should be emplaced. + - The file must have mode 00444 + - The file must not have ioctl methods + - The file must not have mmap -Normal device interaction should be done through configfs or a miscdev, not -debugfs. + (3) When the kernel is locked down, files may only be opened for reading. + +Normal device interaction should be done through configfs, sysfs or a +miscdev, not debugfs. Note that this makes it unnecessary to specifically lock down show_dsts(), show_devs() and show_call() in the asus-wmi driver. +I would actually prefer to lock down all files by default and have the +the files unlocked by the creator. This is tricky to manage correctly, +though, as there are 19 creation functions and ~1600 call sites (some of +them in loops scanning tables). + Signed-off-by: David Howells <dhowells@redhat.com> cc: Andy Shevchenko <andy.shevchenko@gmail.com> cc: acpi4asus-user@lists.sourceforge.net cc: platform-driver-x86@vger.kernel.org -cc: Matthew Garrett <matthew.garrett@nebula.com> +cc: Matthew Garrett <mjg59@srcf.ucam.org> cc: Thomas Gleixner <tglx@linutronix.de> --- - fs/debugfs/file.c | 6 ++++++ + fs/debugfs/file.c | 28 ++++++++++++++++++++++++++++ + fs/debugfs/inode.c | 30 ++++++++++++++++++++++++++++-- + 2 files changed, 56 insertions(+), 2 deletions(-) - 1 file changed, 6 insertions(+) diff --git a/fs/debugfs/file.c b/fs/debugfs/file.c -index cd12e6576b48..097be2a59c51 100644 +index 1f99678ff5d3..51cb894c21f2 100644 --- a/fs/debugfs/file.c +++ b/fs/debugfs/file.c -@@ -142,6 +142,10 @@ static int open_proxy_open(struct inode *inode, struct file *filp) - const struct file_operations *real_fops = NULL; - int r; - -+ if (kernel_is_locked_down("debugfs")) -+ return -EPERM; +@@ -136,6 +136,25 @@ void debugfs_file_put(struct dentry *dentry) + } + EXPORT_SYMBOL_GPL(debugfs_file_put); + ++/* ++ * Only permit access to world-readable files when the kernel is locked down. ++ * We also need to exclude any file that has ways to write or alter it as root ++ * can bypass the permissions check. ++ */ ++static bool debugfs_is_locked_down(struct inode *inode, ++ struct file *filp, ++ const struct file_operations *real_fops) ++{ ++ if ((inode->i_mode & 07777) == 0444 && ++ !(filp->f_mode & FMODE_WRITE) && ++ !real_fops->unlocked_ioctl && ++ !real_fops->compat_ioctl && ++ !real_fops->mmap) ++ return false; + ++ return kernel_is_locked_down("debugfs"); ++} + - r = debugfs_file_get(dentry); - if (r) + static int open_proxy_open(struct inode *inode, struct file *filp) + { + struct dentry *dentry = F_DENTRY(filp); +@@ -147,6 +166,11 @@ static int open_proxy_open(struct inode *inode, struct file *filp) return r == -EIO ? -ENOENT : r; -@@ -267,6 +271,9 @@ static int full_proxy_open(struct inode *inode, struct file *filp) - struct file_operations *proxy_fops = NULL; - int r; - -+ if (kernel_is_locked_down("debugfs")) -+ return -EPERM; + + real_fops = debugfs_real_fops(filp); ++ ++ r = -EPERM; ++ if (debugfs_is_locked_down(inode, filp, real_fops)) ++ goto out; + - r = debugfs_file_get(dentry); - if (r) + real_fops = fops_get(real_fops); + if (!real_fops) { + /* Huh? Module did not clean up after itself at exit? */ +@@ -272,6 +296,10 @@ static int full_proxy_open(struct inode *inode, struct file *filp) return r == -EIO ? -ENOENT : r; --- -2.13.6 - -From 87ed5c02f0946c855730420cbf1daa6a2dfc54d7 Mon Sep 17 00:00:00 2001 -From: David Howells <dhowells@redhat.com> -Date: Thu, 19 Oct 2017 13:58:19 +0100 -Subject: [PATCH 24/26] Lock down /proc/kcore - -Disallow access to /proc/kcore when the kernel is locked down to prevent -access to cryptographic data. - -Signed-off-by: David Howells <dhowells@redhat.com> -Reviewed-by: James Morris <james.l.morris@oracle.com> ---- - fs/proc/kcore.c | 2 ++ - 1 file changed, 2 insertions(+) -diff --git a/fs/proc/kcore.c b/fs/proc/kcore.c -index 45629f4b5402..176cf749e650 100644 ---- a/fs/proc/kcore.c -+++ b/fs/proc/kcore.c -@@ -549,6 +549,8 @@ read_kcore(struct file *file, char __user *buffer, size_t buflen, loff_t *fpos) + real_fops = debugfs_real_fops(filp); ++ r = -EPERM; ++ if (debugfs_is_locked_down(inode, filp, real_fops)) ++ goto out; ++ + real_fops = fops_get(real_fops); + if (!real_fops) { + /* Huh? Module did not cleanup after itself at exit? */ +diff --git a/fs/debugfs/inode.c b/fs/debugfs/inode.c +index 63a998c3f252..ce261e1765ff 100644 +--- a/fs/debugfs/inode.c ++++ b/fs/debugfs/inode.c +@@ -32,6 +32,31 @@ static struct vfsmount *debugfs_mount; + static int debugfs_mount_count; + static bool debugfs_registered; - static int open_kcore(struct inode *inode, struct file *filp) - { -+ if (kernel_is_locked_down("/proc/kcore")) ++/* ++ * Don't allow access attributes to be changed whilst the kernel is locked down ++ * so that we can use the file mode as part of a heuristic to determine whether ++ * to lock down individual files. ++ */ ++static int debugfs_setattr(struct dentry *dentry, struct iattr *ia) ++{ ++ if ((ia->ia_valid & (ATTR_MODE | ATTR_UID | ATTR_GID)) && ++ kernel_is_locked_down("debugfs")) + return -EPERM; - if (!capable(CAP_SYS_RAWIO)) - return -EPERM; - ++ return simple_setattr(dentry, ia); ++} ++ ++static const struct inode_operations debugfs_file_inode_operations = { ++ .setattr = debugfs_setattr, ++}; ++static const struct inode_operations debugfs_dir_inode_operations = { ++ .lookup = simple_lookup, ++ .setattr = debugfs_setattr, ++}; ++static const struct inode_operations debugfs_symlink_inode_operations = { ++ .get_link = simple_get_link, ++ .setattr = debugfs_setattr, ++}; ++ + static struct inode *debugfs_get_inode(struct super_block *sb) + { + struct inode *inode = new_inode(sb); +@@ -359,6 +384,7 @@ static struct dentry *__debugfs_create_file(const char *name, umode_t mode, + inode->i_mode = mode; + inode->i_private = data; + ++ inode->i_op = &debugfs_file_inode_operations; + inode->i_fop = proxy_fops; + dentry->d_fsdata = (void *)((unsigned long)real_fops | + DEBUGFS_FSDATA_IS_REAL_FOPS_BIT); +@@ -516,7 +542,7 @@ struct dentry *debugfs_create_dir(const char *name, struct dentry *parent) + return failed_creating(dentry); + + inode->i_mode = S_IFDIR | S_IRWXU | S_IRUGO | S_IXUGO; +- inode->i_op = &simple_dir_inode_operations; ++ inode->i_op = &debugfs_dir_inode_operations; + inode->i_fop = &simple_dir_operations; + + /* directory inodes start off with i_nlink == 2 (for "." entry) */ +@@ -611,7 +637,7 @@ struct dentry *debugfs_create_symlink(const char *name, struct dentry *parent, + return failed_creating(dentry); + } + inode->i_mode = S_IFLNK | S_IRWXUGO; +- inode->i_op = &simple_symlink_inode_operations; ++ inode->i_op = &debugfs_symlink_inode_operations; + inode->i_link = link; + d_instantiate(dentry, inode); + return end_creating(dentry); -- -2.13.6 +2.14.3 -From 2bce9ca3a24e0b35dcf665e6ba082f0a796c6aad Mon Sep 17 00:00:00 2001 +From 42b2c81c12a8e8139fc7252cf91151c37b5a0966 Mon Sep 17 00:00:00 2001 From: David Howells <dhowells@redhat.com> -Date: Thu, 19 Oct 2017 14:18:53 +0100 -Subject: [PATCH 25/26] efi: Add an EFI_SECURE_BOOT flag to indicate secure +Date: Tue, 27 Feb 2018 10:04:55 +0000 +Subject: [PATCH 29/31] efi: Add an EFI_SECURE_BOOT flag to indicate secure boot mode UEFI machines can be booted in Secure Boot mode. Add an EFI_SECURE_BOOT @@ -1489,10 +2080,10 @@ cc: linux-efi@vger.kernel.org create mode 100644 drivers/firmware/efi/secureboot.c diff --git a/arch/x86/kernel/setup.c b/arch/x86/kernel/setup.c -index 0957dd73d127..7c2162f9e769 100644 +index 1ae67e982af7..a7c240f00d78 100644 --- a/arch/x86/kernel/setup.c +++ b/arch/x86/kernel/setup.c -@@ -1197,19 +1197,7 @@ void __init setup_arch(char **cmdline_p) +@@ -1150,19 +1150,7 @@ void __init setup_arch(char **cmdline_p) /* Allocate bigger log buffer */ setup_log_buf(1); @@ -1514,10 +2105,10 @@ index 0957dd73d127..7c2162f9e769 100644 reserve_initrd(); diff --git a/drivers/firmware/efi/Makefile b/drivers/firmware/efi/Makefile -index 0329d319d89a..883f9f7eefc6 100644 +index cb805374f4bc..da2b3e37b9f0 100644 --- a/drivers/firmware/efi/Makefile +++ b/drivers/firmware/efi/Makefile -@@ -23,6 +23,7 @@ obj-$(CONFIG_EFI_FAKE_MEMMAP) += fake_mem.o +@@ -24,6 +24,7 @@ obj-$(CONFIG_EFI_FAKE_MEMMAP) += fake_mem.o obj-$(CONFIG_EFI_BOOTLOADER_CONTROL) += efibc.o obj-$(CONFIG_EFI_TEST) += test/ obj-$(CONFIG_EFI_DEV_PATH_PARSER) += dev-path-parser.o @@ -1570,10 +2161,10 @@ index 000000000000..9070055de0a1 + } +} diff --git a/include/linux/efi.h b/include/linux/efi.h -index 66f4a4e79f4b..7c7a7e33e4d1 100644 +index f5083aa72eae..79da76d14ca3 100644 --- a/include/linux/efi.h +++ b/include/linux/efi.h -@@ -1103,6 +1103,14 @@ extern int __init efi_setup_pcdp_console(char *); +@@ -1142,6 +1142,14 @@ 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_MEM_ATTR 10 /* Did firmware publish an EFI_MEMORY_ATTRIBUTES table? */ @@ -1588,7 +2179,7 @@ index 66f4a4e79f4b..7c7a7e33e4d1 100644 #ifdef CONFIG_EFI /* -@@ -1115,6 +1123,7 @@ static inline bool efi_enabled(int feature) +@@ -1154,6 +1162,7 @@ static inline bool efi_enabled(int feature) extern void efi_reboot(enum reboot_mode reboot_mode, const char *__unused); extern bool efi_is_table_address(unsigned long phys_addr); @@ -1596,7 +2187,7 @@ index 66f4a4e79f4b..7c7a7e33e4d1 100644 #else static inline bool efi_enabled(int feature) { -@@ -1133,6 +1142,7 @@ static inline bool efi_is_table_address(unsigned long phys_addr) +@@ -1172,6 +1181,7 @@ static inline bool efi_is_table_address(unsigned long phys_addr) { return false; } @@ -1604,7 +2195,7 @@ index 66f4a4e79f4b..7c7a7e33e4d1 100644 #endif extern int efi_status_to_err(efi_status_t status); -@@ -1518,12 +1528,6 @@ efi_status_t efi_setup_gop(efi_system_table_t *sys_table_arg, +@@ -1557,12 +1567,6 @@ 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); @@ -1618,12 +2209,12 @@ index 66f4a4e79f4b..7c7a7e33e4d1 100644 #ifdef CONFIG_RESET_ATTACK_MITIGATION -- -2.13.6 +2.14.3 -From 163d6a313399a4d50c5c7e42e3dd642ca8d495d7 Mon Sep 17 00:00:00 2001 +From d78bf678059f83e22bec8ada1a448e22b9b90203 Mon Sep 17 00:00:00 2001 From: David Howells <dhowells@redhat.com> -Date: Thu, 19 Oct 2017 14:05:02 +0100 -Subject: [PATCH 26/26] efi: Lock down the kernel if booted in secure boot mode +Date: Tue, 27 Feb 2018 10:04:55 +0000 +Subject: [PATCH 30/31] efi: Lock down the kernel if booted 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 @@ -1636,12 +2227,13 @@ Acked-by: Ard Biesheuvel <ard.biesheuvel@linaro.org> cc: linux-efi@vger.kernel.org --- arch/x86/kernel/setup.c | 6 ++++-- + fs/debugfs/inode.c | 2 +- security/Kconfig | 14 ++++++++++++++ security/lock_down.c | 1 + - 3 files changed, 19 insertions(+), 2 deletions(-) + 4 files changed, 20 insertions(+), 3 deletions(-) diff --git a/arch/x86/kernel/setup.c b/arch/x86/kernel/setup.c -index 7c2162f9e769..4e38327efb2e 100644 +index a7c240f00d78..1277d1857c5c 100644 --- a/arch/x86/kernel/setup.c +++ b/arch/x86/kernel/setup.c @@ -64,6 +64,7 @@ @@ -1652,7 +2244,7 @@ index 7c2162f9e769..4e38327efb2e 100644 #include <linux/percpu.h> #include <linux/crash_dump.h> -@@ -1039,6 +1040,9 @@ void __init setup_arch(char **cmdline_p) +@@ -997,6 +998,9 @@ void __init setup_arch(char **cmdline_p) if (efi_enabled(EFI_BOOT)) efi_init(); @@ -1662,7 +2254,7 @@ index 7c2162f9e769..4e38327efb2e 100644 dmi_scan_machine(); dmi_memdev_walk(); dmi_set_dump_stack_arch_desc(); -@@ -1197,8 +1201,6 @@ void __init setup_arch(char **cmdline_p) +@@ -1150,8 +1154,6 @@ void __init setup_arch(char **cmdline_p) /* Allocate bigger log buffer */ setup_log_buf(1); @@ -1671,11 +2263,24 @@ index 7c2162f9e769..4e38327efb2e 100644 reserve_initrd(); acpi_table_upgrade(); +diff --git a/fs/debugfs/inode.c b/fs/debugfs/inode.c +index ce261e1765ff..7aff55b309a6 100644 +--- a/fs/debugfs/inode.c ++++ b/fs/debugfs/inode.c +@@ -40,7 +40,7 @@ static bool debugfs_registered; + static int debugfs_setattr(struct dentry *dentry, struct iattr *ia) + { + if ((ia->ia_valid & (ATTR_MODE | ATTR_UID | ATTR_GID)) && +- kernel_is_locked_down("debugfs")) ++ kernel_is_locked_down("changing perms in debugfs")) + return -EPERM; + return simple_setattr(dentry, ia); + } diff --git a/security/Kconfig b/security/Kconfig -index 453cc89c198a..974731ac4f85 100644 +index 461d5acc3616..13fdada1ffc2 100644 --- a/security/Kconfig +++ b/security/Kconfig -@@ -220,6 +220,20 @@ config ALLOW_LOCKDOWN_LIFT_BY_SYSRQ +@@ -248,6 +248,20 @@ config ALLOW_LOCKDOWN_LIFT_BY_SYSRQ Allow the lockdown on a kernel to be lifted, by pressing a SysRq key combination on a wired keyboard. @@ -1709,5 +2314,41 @@ index 2c6b00f0c229..527f7e51dc8d 100644 #ifdef CONFIG_ALLOW_LOCKDOWN_LIFT_BY_SYSRQ -- -2.13.6 +2.14.3 + +From 89bcd5b02f125335f74289c5f4ae03e9b893ab7f Mon Sep 17 00:00:00 2001 +From: David Howells <dhowells@redhat.com> +Date: Wed, 28 Feb 2018 14:43:03 +0000 +Subject: [PATCH 31/31] lockdown: Print current->comm in restriction messages + +Print the content of current->comm in messages generated by lockdown to +indicate a restriction that was hit. This makes it a bit easier to find +out what caused the message. + +The message now patterned something like: + + Lockdown: <comm>: <what> is restricted; see man kernel_lockdown.7 + +Signed-off-by: David Howells <dhowells@redhat.com> +--- + security/lock_down.c | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +diff --git a/security/lock_down.c b/security/lock_down.c +index 527f7e51dc8d..4745278e0f3b 100644 +--- a/security/lock_down.c ++++ b/security/lock_down.c +@@ -60,8 +60,8 @@ void __init init_lockdown(void) + bool __kernel_is_locked_down(const char *what, bool first) + { + if (what && first && kernel_locked_down) +- pr_notice("Lockdown: %s is restricted; see man kernel_lockdown.7\n", +- what); ++ pr_notice("Lockdown: %s: %s is restricted; see man kernel_lockdown.7\n", ++ current->comm, what); + return kernel_locked_down; + } + EXPORT_SYMBOL(__kernel_is_locked_down); +-- +2.14.3 diff --git a/filter-aarch64.sh b/filter-aarch64.sh index 4adc0e7e4..0bc756108 100644 --- a/filter-aarch64.sh +++ b/filter-aarch64.sh @@ -9,10 +9,10 @@ # modifications to the overrides below. If something should be removed across # all arches, remove it in the default instead of per-arch. -driverdirs="atm auxdisplay bcma bluetooth firewire fmc infiniband isdn leds media memstick message mmc mtd mwave nfc ntb pcmcia platform power ssb staging tty uio uwb w1" +driverdirs="atm auxdisplay bcma bluetooth firewire fmc infiniband isdn leds media memstick message mmc mtd mwave nfc ntb pcmcia power ssb staging tty uio uwb w1" ethdrvs="3com adaptec arc alteon atheros broadcom cadence calxeda chelsio cisco dec dlink emulex icplus marvell micrel myricom neterion nvidia oki-semi packetengines qlogic rdc renesas sfc silan sis smsc stmicro sun tehuti ti via wiznet xircom" -drmdrvs="amd arm ast exynos hisilicon i2c imx mgag200 meson msm nouveau panel radeon rockchip tegra sun4i tinydrm vc4" +drmdrvs="amd arm bridge ast exynos hisilicon i2c imx mgag200 meson msm nouveau panel radeon rockchip tegra sun4i sun4i-drm-hdmi tinydrm vc4" singlemods="ntb_netdev iscsi_ibft iscsi_boot_sysfs megaraid pmcraid qedi qla1280 9pnet_rdma rpcrdma nvmet-rdma nvme-rdma hid-picolcd hid-prodikeys hwa-hc hwpoison-inject target_core_user sbp_target cxgbit iw_cxgb3 iw_cxgb4 cxgb3i cxgb3i cxgb3i_ddp cxgb4i chcr" diff --git a/filter-armv7hl.sh b/filter-armv7hl.sh index fdad4070b..f021c0609 100644 --- a/filter-armv7hl.sh +++ b/filter-armv7hl.sh @@ -9,10 +9,10 @@ # modifications to the overrides below. If something should be removed across # all arches, remove it in the default instead of per-arch. -driverdirs="atm auxdisplay bcma bluetooth firewire fmc infiniband isdn media memstick message mwave nfc ntb pcmcia platform ssb staging tty uio uwb w1" +driverdirs="atm auxdisplay bcma bluetooth firewire fmc infiniband isdn media memstick message mwave nfc ntb pcmcia ssb staging tty uio uwb w1" ethdrvs="3com adaptec alteon altera amd atheros broadcom cadence chelsio cisco dec dlink emulex icplus mellanox micrel myricom natsemi neterion nvidia oki-semi packetengines qlogic rdc renesas sfc silan sis sun tehuti via wiznet xircom" -drmdrvs="amd armada ast exynos etnaviv hisilicon i2c imx meson mgag200 msm omapdrm panel nouveau radeon rockchip sti sun4i tegra tilcdc tinydrm via vc4" +drmdrvs="amd armada bridge ast exynos etnaviv hisilicon i2c imx meson mgag200 msm omapdrm panel nouveau radeon rockchip sti sun4i sun4i-drm-hdmi tegra tilcdc tinydrm via vc4" singlemods="ntb_netdev iscsi_ibft iscsi_boot_sysfs megaraid pmcraid qedi qla1280 9pnet_rdma rpcrdma nvmet-rdma nvme-rdma hid-picolcd hid-prodikeys hwa-hc hwpoison-inject target_core_user sbp_target cxgbit iw_cxgb3 iw_cxgb4 cxgb3i cxgb3i cxgb3i_ddp cxgb4i chcr bq27xxx_battery_hdq" diff --git a/filter-ppc64p7.sh b/filter-ppc64p7.sh deleted file mode 100644 index 0d42b4741..000000000 --- a/filter-ppc64p7.sh +++ /dev/null @@ -1,14 +0,0 @@ -#! /bin/bash - -# This is the ppc64p7 override file for the core/drivers package split. The -# module directories listed here and in the generic list in filter-modules.sh -# will be moved to the resulting kernel-modules package for this arch. -# Anything not listed in those files will be in the kernel-core package. -# -# Please review the default list in filter-modules.sh before making -# modifications to the overrides below. If something should be removed across -# all arches, remove it in the default instead of per-arch. - -driverdirs="atm auxdisplay bcma bluetooth firewire fmc infiniband isdn leds media memstick message mmc mtd mwave nfc ntb pcmcia platform power ssb staging tty uio uwb w1" - -singlemods="ntb_netdev iscsi_ibft iscsi_boot_sysfs megaraid pmcraid qedi qla1280 9pnet_rdma rpcrdma nvmet-rdma nvme-rdma hid-picolcd hid-prodikeys hwa-hc hwpoison-inject target_core_user sbp_target cxgbit iw_cxgb3 iw_cxgb4 cxgb3i cxgb3i cxgb3i_ddp cxgb4i chcr" diff --git a/kernel-aarch64-debug.config b/kernel-aarch64-debug.config index a3152a988..6b55f3b4b 100644 --- a/kernel-aarch64-debug.config +++ b/kernel-aarch64-debug.config @@ -67,6 +67,7 @@ CONFIG_ACPI_NUMA=y CONFIG_ACPI_PCI_SLOT=y CONFIG_ACPI_PROCESSOR=y CONFIG_ACPI_PROCFS_POWER=y +CONFIG_ACPI_SPCR_TABLE=y CONFIG_ACPI_TABLE_UPGRADE=y CONFIG_ACPI_THERMAL=y CONFIG_ACPI_WATCHDOG=y @@ -242,7 +243,7 @@ CONFIG_ARCH_THUNDER=y CONFIG_ARCH_VEXPRESS=y CONFIG_ARCH_XGENE=y # CONFIG_ARCH_ZX is not set -# CONFIG_ARCH_ZYNQMP is not set +CONFIG_ARCH_ZYNQMP=y # CONFIG_ARCNET is not set CONFIG_ARM64_4K_PAGES=y CONFIG_ARM64_ACPI_PARKING_PROTOCOL=y @@ -258,10 +259,11 @@ CONFIG_ARM64_ERRATUM_858921=y CONFIG_ARM64_HW_AFDBM=y CONFIG_ARM64_LSE_ATOMICS=y CONFIG_ARM64_PAN=y -# CONFIG_ARM64_PMEM is not set +CONFIG_ARM64_PMEM=y CONFIG_ARM64_PTDUMP_DEBUGFS=y CONFIG_ARM64_PTDUMP=y # CONFIG_ARM64_RANDOMIZE_TEXT_OFFSET is not set +CONFIG_ARM64_RAS_EXTN=y # CONFIG_ARM64_RELOC_TEST is not set CONFIG_ARM64_SVE=y CONFIG_ARM64_SW_TTBR0_PAN=y @@ -275,7 +277,8 @@ CONFIG_ARMADA_THERMAL=m CONFIG_ARM_AMBA=y CONFIG_ARM_ARCH_TIMER_EVTSTREAM=y CONFIG_ARM_ARCH_TIMER=y -# CONFIG_ARM_BIG_LITTLE_CPUFREQ is not set +CONFIG_ARM_ARMADA_37XX_CPUFREQ=m +CONFIG_ARM_BIG_LITTLE_CPUFREQ=m # CONFIG_ARM_BIG_LITTLE_CPUIDLE is not set CONFIG_ARM_CCI400_PMU=y CONFIG_ARM_CCI5xx_PMU=y @@ -286,6 +289,7 @@ CONFIG_ARM_CPUIDLE=y CONFIG_ARM_CRYPTO=y CONFIG_ARM_DMA_IOMMU_ALIGNMENT=8 CONFIG_ARM_DMA_USE_IOMMU=y +CONFIG_ARM_DSU_PMU=m # CONFIG_ARM_DT_BL_CPUFREQ is not set CONFIG_ARM_GIC_V2M=y CONFIG_ARM_GIC_V3_ITS=y @@ -297,11 +301,14 @@ CONFIG_ARM_PL172_MPMC=m CONFIG_ARM_PMU=y # CONFIG_ARM_PSCI_CHECKER is not set CONFIG_ARM_PSCI=y +# CONFIG_ARM_PTDUMP_DEBUGFS is not set # CONFIG_ARM_PTDUMP is not set CONFIG_ARM_RK3399_DMC_DEVFREQ=m CONFIG_ARM_SBSA_WATCHDOG=m +CONFIG_ARM_SCPI_CPUFREQ=m CONFIG_ARM_SCPI_POWER_DOMAIN=m CONFIG_ARM_SCPI_PROTOCOL=m +CONFIG_ARM_SDE_INTERFACE=y CONFIG_ARM_SMMU_V3=y CONFIG_ARM_SMMU=y CONFIG_ARM_SP805_WATCHDOG=m @@ -333,6 +340,7 @@ CONFIG_ATH10K_DEBUGFS=y CONFIG_ATH10K=m CONFIG_ATH10K_PCI=m CONFIG_ATH10K_SDIO=m +# CONFIG_ATH10K_SPECTRAL is not set # CONFIG_ATH10K_TRACING is not set CONFIG_ATH10K_USB=m CONFIG_ATH5K_DEBUG=y @@ -346,6 +354,7 @@ CONFIG_ATH6KL_USB=m CONFIG_ATH9K_AHB=y CONFIG_ATH9K_BTCOEX_SUPPORT=y # CONFIG_ATH9K_CHANNEL_CONTEXT is not set +# CONFIG_ATH9K_COMMON_SPECTRAL is not set CONFIG_ATH9K_DEBUGFS=y # CONFIG_ATH9K_DEBUG is not set # CONFIG_ATH9K_DYNACK is not set @@ -542,6 +551,7 @@ CONFIG_BLK_DEV_LOOP=m CONFIG_BLK_DEV_LOOP_MIN_COUNT=0 CONFIG_BLK_DEV_MD=y CONFIG_BLK_DEV_NBD=m +CONFIG_BLK_DEV_NULL_BLK_FAULT_INJECTION=y CONFIG_BLK_DEV_NULL_BLK=m CONFIG_BLK_DEV_NVME=m # CONFIG_BLK_DEV_NVME_SCSI is not set @@ -597,6 +607,7 @@ CONFIG_BOOT_PRINTK_DELAY=y CONFIG_BOUNCE=y CONFIG_BPF_JIT_ALWAYS_ON=y CONFIG_BPF_JIT=y +CONFIG_BPF_KPROBE_OVERRIDE=y CONFIG_BPF_STREAM_PARSER=y CONFIG_BPF_SYSCALL=y CONFIG_BPQETHER=m @@ -653,7 +664,7 @@ CONFIG_BT_HCIBPA10X=m CONFIG_BT_HCIBT3C=m CONFIG_BT_HCIBTSDIO=m CONFIG_BT_HCIBTUART=m -CONFIG_BT_HCIBTUSB_AUTOSUSPEND=y +# CONFIG_BT_HCIBTUSB_AUTOSUSPEND is not set CONFIG_BT_HCIBTUSB_BCM=y CONFIG_BT_HCIBTUSB=m CONFIG_BT_HCIBTUSB_RTL=y @@ -766,6 +777,7 @@ CONFIG_CAVIUM_ERRATUM_23144=y CONFIG_CAVIUM_ERRATUM_23154=y CONFIG_CAVIUM_ERRATUM_27456=y CONFIG_CAVIUM_ERRATUM_30115=y +CONFIG_CAVIUM_PTP=m CONFIG_CB710_CORE=m # CONFIG_CB710_DEBUG is not set # CONFIG_CC10001_ADC is not set @@ -828,6 +840,7 @@ CONFIG_CHARGER_SMB347=m # CONFIG_CHASH_SELFTEST is not set # CONFIG_CHASH_STATS is not set CONFIG_CHECKPOINT_RESTORE=y +CONFIG_CHELSIO_IPSEC_INLINE=y CONFIG_CHELSIO_T1_1G=y CONFIG_CHELSIO_T1=m CONFIG_CHELSIO_T3=m @@ -853,6 +866,7 @@ CONFIG_CIFS_NFSD_EXPORT=y CONFIG_CIFS_POSIX=y CONFIG_CIFS_SMB2=y # CONFIG_CIFS_SMB311 is not set +# CONFIG_CIFS_SMB_DIRECT is not set # CONFIG_CIFS_STATS2 is not set CONFIG_CIFS_STATS=y CONFIG_CIFS_UPCALL=y @@ -1014,7 +1028,6 @@ CONFIG_CRYPTO_DEV_CHELSIO=m CONFIG_CRYPTO_DEV_HIFN_795X=m CONFIG_CRYPTO_DEV_HIFN_795X_RNG=y CONFIG_CRYPTO_DEV_MARVELL_CESA=m -CONFIG_CRYPTO_DEV_MV_CESA=m CONFIG_CRYPTO_DEV_NITROX_CNN55XX=m CONFIG_CRYPTO_DEV_QCE=m CONFIG_CRYPTO_DEV_ROCKCHIP=m @@ -1072,11 +1085,14 @@ CONFIG_CRYPTO_SHA256_ARM64=y CONFIG_CRYPTO_SHA256_ARM=y CONFIG_CRYPTO_SHA256=y CONFIG_CRYPTO_SHA2_ARM64_CE=y +CONFIG_CRYPTO_SHA3_ARM64=m CONFIG_CRYPTO_SHA3=m +CONFIG_CRYPTO_SHA512_ARM64_CE=m CONFIG_CRYPTO_SHA512_ARM64=m CONFIG_CRYPTO_SHA512_ARM=y CONFIG_CRYPTO_SHA512=m CONFIG_CRYPTO_SIMD=y +CONFIG_CRYPTO_SM3_ARM64_CE=m CONFIG_CRYPTO_SM3=m CONFIG_CRYPTO_TEA=m CONFIG_CRYPTO_TEST=m @@ -1245,6 +1261,7 @@ CONFIG_DM_SNAPSHOT=y CONFIG_DM_SWITCH=m CONFIG_DM_THIN_PROVISIONING=m CONFIG_DM_UEVENT=y +CONFIG_DM_UNSTRIPED=m CONFIG_DM_VERITY_FEC=y CONFIG_DM_VERITY=m CONFIG_DM_ZERO=y @@ -1267,7 +1284,7 @@ CONFIG_DRM_AMD_DC=y CONFIG_DRM_AMDGPU_CIK=y # CONFIG_DRM_AMDGPU_GART_DEBUGFS is not set CONFIG_DRM_AMDGPU=m -# CONFIG_DRM_AMDGPU_SI is not set +CONFIG_DRM_AMDGPU_SI=y CONFIG_DRM_AMDGPU_USERPTR=y CONFIG_DRM_AMD_POWERPLAY=y CONFIG_DRM_ANALOGIX_ANX78XX=m @@ -1291,8 +1308,8 @@ CONFIG_DRM_HDLCD=m CONFIG_DRM_HISI_HIBMC=m CONFIG_DRM_HISI_KIRIN=m CONFIG_DRM_I2C_ADV7511_AUDIO=y -# CONFIG_DRM_I2C_ADV7511_CEC is not set -# CONFIG_DRM_I2C_ADV7511 is not set +CONFIG_DRM_I2C_ADV7511_CEC=y +CONFIG_DRM_I2C_ADV7511=m CONFIG_DRM_I2C_ADV7533=y CONFIG_DRM_I2C_CH7006=m CONFIG_DRM_I2C_NXP_TDA998X=m @@ -1320,6 +1337,7 @@ CONFIG_DRM_MSM=m CONFIG_DRM_NOUVEAU_BACKLIGHT=y CONFIG_DRM_NOUVEAU=m CONFIG_DRM_NXP_PTN3460=m +CONFIG_DRM_PANEL_ILITEK_IL9322=m # CONFIG_DRM_PANEL_INNOLUX_P079ZCA is not set # CONFIG_DRM_PANEL_JDI_LT070ME05000 is not set CONFIG_DRM_PANEL_LG_LG4573=m @@ -1404,6 +1422,7 @@ CONFIG_DVB_FIREDTV=m CONFIG_DVB_HOPPER=m CONFIG_DVB_MANTIS=m CONFIG_DVB_MAX_ADAPTERS=8 +# CONFIG_DVB_MMAP is not set CONFIG_DVB_MN88472=m CONFIG_DVB_MN88473=m CONFIG_DVB_NETUP_UNIDVB=m @@ -1417,6 +1436,7 @@ CONFIG_DVB_PT1=m CONFIG_DVB_SMIPCIE=m CONFIG_DVB_TTUSB_BUDGET=m CONFIG_DVB_TTUSB_DEC=m +# CONFIG_DVB_ULE_DEBUG is not set CONFIG_DVB_USB_A800=m CONFIG_DVB_USB_AF9005=m CONFIG_DVB_USB_AF9005_REMOTE=m @@ -1561,6 +1581,7 @@ CONFIG_F2FS_FS_SECURITY=y CONFIG_F2FS_FS_XATTR=y # CONFIG_F2FS_IO_TRACE is not set CONFIG_F2FS_STAT_FS=y +CONFIG_FAIL_FUNCTION=y # CONFIG_FAIL_FUTEX is not set CONFIG_FAIL_IO_TIMEOUT=y CONFIG_FAIL_MAKE_REQUEST=y @@ -1647,12 +1668,14 @@ CONFIG_FB_VIRTUAL=m # CONFIG_FB_VOODOO1 is not set # CONFIG_FB_VT8623 is not set # CONFIG_FB_XGI is not set +CONFIG_FB_XILINX=m CONFIG_FB=y CONFIG_FCOE_FNIC=m CONFIG_FCOE=m # CONFIG_FDDI is not set CONFIG_FEALNX=m CONFIG_FHANDLE=y +# CONFIG_FIND_BIT_BENCHMARK is not set # CONFIG_FIREWIRE is not set CONFIG_FIREWIRE_NET=m CONFIG_FIREWIRE_NOSY=m @@ -1702,6 +1725,7 @@ CONFIG_FTRACE_MCOUNT_RECORD=y # CONFIG_FTRACE_STARTUP_TEST is not set CONFIG_FTRACE_SYSCALLS=y CONFIG_FTRACE=y +# CONFIG_FTWDT010_WATCHDOG is not set # CONFIG_FUJITSU_ES is not set # CONFIG_FUNCTION_GRAPH_TRACER is not set CONFIG_FUNCTION_PROFILER=y @@ -1774,7 +1798,7 @@ CONFIG_GPIOLIB=y # CONFIG_GPIO_MAX7301 is not set # CONFIG_GPIO_MAX732X is not set CONFIG_GPIO_MAX77620=m -# CONFIG_GPIO_MB86S7X is not set +CONFIG_GPIO_MB86S7X=m # CONFIG_GPIO_MC33880 is not set # CONFIG_GPIO_MCP23S08 is not set # CONFIG_GPIO_MOCKUP is not set @@ -1784,9 +1808,11 @@ CONFIG_GPIO_PCA953X_IRQ=y CONFIG_GPIO_PCA953X=y CONFIG_GPIO_PCF857X=m # CONFIG_GPIO_PCH is not set +# CONFIG_GPIO_PCIE_IDIO_24 is not set CONFIG_GPIO_PCI_IDIO_16=m # CONFIG_GPIO_PISOSR is not set CONFIG_GPIO_PL061=y +CONFIG_GPIO_RASPBERRYPI_EXP=m # CONFIG_GPIO_RDC321X is not set # CONFIG_GPIO_SCH311X is not set # CONFIG_GPIO_SX150X is not set @@ -1807,6 +1833,7 @@ CONFIG_GPIO_XGENE=y # CONFIG_GPIO_XILINX is not set CONFIG_GPIO_XLP=m # CONFIG_GPIO_XRA1403 is not set +CONFIG_GPIO_ZYNQ=m CONFIG_GREENASIA_FF=y # CONFIG_GREYBUS is not set # CONFIG_GS_FPGABOOT is not set @@ -1816,6 +1843,7 @@ CONFIG_HAMACHI=m CONFIG_HAMRADIO=y CONFIG_HANGCHECK_TIMER=m CONFIG_HAPPYMEAL=m +CONFIG_HARDENED_USERCOPY_FALLBACK=y CONFIG_HARDENED_USERCOPY=y CONFIG_HAVE_PERF_REGS=y CONFIG_HAVE_PERF_USER_STACK_DUMP=y @@ -1863,6 +1891,7 @@ CONFIG_HID_GYRATION=m CONFIG_HID_HOLTEK=m CONFIG_HID_ICADE=m CONFIG_HID_ITE=m +CONFIG_HID_JABRA=m CONFIG_HID_KENSINGTON=m CONFIG_HID_KEYTOUCH=m CONFIG_HID_KYE=m @@ -2015,7 +2044,7 @@ CONFIG_HW_RANDOM_MESON=m CONFIG_HW_RANDOM_MSM=m CONFIG_HW_RANDOM_OMAP=m CONFIG_HW_RANDOM_TIMERIOMEM=m -CONFIG_HW_RANDOM_TPM=m +CONFIG_HW_RANDOM_TPM=y CONFIG_HW_RANDOM_VIRTIO=m CONFIG_HW_RANDOM_XGENE=m CONFIG_HW_RANDOM=y @@ -2057,6 +2086,7 @@ CONFIG_I2C_DESIGNWARE_SLAVE=y CONFIG_I2C_DIOLAN_U2C=m # CONFIG_I2C_EG20T is not set # CONFIG_I2C_EMEV2 is not set +# CONFIG_I2C_GPIO_FAULT_INJECTOR is not set CONFIG_I2C_GPIO=m CONFIG_I2C_HELPER_AUTO=y CONFIG_I2C_HID=m @@ -2143,6 +2173,7 @@ CONFIG_IGB_HWMON=y CONFIG_IGB=m CONFIG_IGBVF=m CONFIG_IIO_BUFFER_CB=m +CONFIG_IIO_BUFFER_HW_CONSUMER=m CONFIG_IIO_BUFFER=y CONFIG_IIO_CONFIGFS=m CONFIG_IIO_CONSUMERS_PER_TRIGGER=2 @@ -2330,6 +2361,7 @@ CONFIG_IP6_NF_MATCH_MH=m CONFIG_IP6_NF_MATCH_OPTS=m CONFIG_IP6_NF_MATCH_RPFILTER=m CONFIG_IP6_NF_MATCH_RT=m +CONFIG_IP6_NF_MATCH_SRH=m CONFIG_IP6_NF_NAT=m CONFIG_IP6_NF_RAW=m CONFIG_IP6_NF_SECURITY=m @@ -2462,7 +2494,6 @@ CONFIG_IPVTAP=m # CONFIG_IPW2200_DEBUG is not set # CONFIG_IPW2200 is not set CONFIG_IPWIRELESS=m -# CONFIG_IPX_INTERN is not set # CONFIG_IPX is not set # CONFIG_IRDA is not set CONFIG_IR_ENE=m @@ -2729,6 +2760,7 @@ CONFIG_LEDS_IS31FL32XX=m CONFIG_LEDS_LM3530=m # CONFIG_LEDS_LM355x is not set # CONFIG_LEDS_LM3642 is not set +CONFIG_LEDS_LM3692X=m # CONFIG_LEDS_LOCOMO is not set CONFIG_LEDS_LP3944=m CONFIG_LEDS_LP3952=m @@ -2761,6 +2793,7 @@ CONFIG_LEDS_TRIGGER_DISK=y CONFIG_LEDS_TRIGGER_GPIO=m CONFIG_LEDS_TRIGGER_HEARTBEAT=m CONFIG_LEDS_TRIGGER_MTD=y +CONFIG_LEDS_TRIGGER_NETDEV=m CONFIG_LEDS_TRIGGER_ONESHOT=m CONFIG_LEDS_TRIGGER_PANIC=y CONFIG_LEDS_TRIGGERS=y @@ -2794,11 +2827,11 @@ CONFIG_LIBNVDIMM=m CONFIG_LIQUIDIO_VF=m CONFIG_LIRC_BT829=m CONFIG_LIRC_IMON=m -CONFIG_LIRC=m CONFIG_LIRC_PARALLEL=m CONFIG_LIRC_SERIAL=m CONFIG_LIRC_SERIAL_TRANSMITTER=y CONFIG_LIRC_STAGING=y +CONFIG_LIRC=y CONFIG_LIRC_ZILOG=m # CONFIG_LIVEPATCH is not set # CONFIG_LKDTM is not set @@ -2951,6 +2984,7 @@ CONFIG_MEGARAID_MAILBOX=m CONFIG_MEGARAID_MM=m CONFIG_MEGARAID_NEWGEN=y CONFIG_MEGARAID_SAS=m +CONFIG_MELLANOX_PLATFORM=y CONFIG_MEMCG_SWAP_ENABLED=y CONFIG_MEMCG_SWAP=y CONFIG_MEMCG=y @@ -2999,6 +3033,7 @@ CONFIG_MFD_AXP20X=y CONFIG_MFD_BD9571MWV=m CONFIG_MFD_CORE=y # CONFIG_MFD_CPCAP is not set +CONFIG_MFD_CROS_EC_CHARDEV=m CONFIG_MFD_CROS_EC_I2C=m CONFIG_MFD_CROS_EC=m CONFIG_MFD_CROS_EC_SPI=m @@ -3041,8 +3076,6 @@ CONFIG_MFD_QCOM_RPM=m CONFIG_MFD_RK808=m # CONFIG_MFD_RN5T618 is not set # CONFIG_MFD_RT5033 is not set -CONFIG_MFD_RTSX_PCI=m -CONFIG_MFD_RTSX_USB=m # CONFIG_MFD_SEC_CORE is not set # CONFIG_MFD_SI476X_CORE is not set # CONFIG_MFD_SKY81452 is not set @@ -3094,6 +3127,8 @@ CONFIG_MII=m CONFIG_MINIX_FS=m CONFIG_MINIX_SUBPARTITION=y CONFIG_MISC_FILESYSTEMS=y +CONFIG_MISC_RTSX_PCI=m +CONFIG_MISC_RTSX_USB=m CONFIG_MISDN_AVMFRITZ=m CONFIG_MISDN_DSP=m CONFIG_MISDN_HFCMULTI=m @@ -3123,6 +3158,7 @@ CONFIG_MLX5_MPFS=y # CONFIG_MLX90614 is not set CONFIG_MLX_CPLD_PLATFORM=m CONFIG_MLXFW=m +CONFIG_MLXREG_HOTPLUG=m CONFIG_MLXSW_CORE_HWMON=y CONFIG_MLXSW_CORE=m CONFIG_MLXSW_CORE_THERMAL=y @@ -3146,6 +3182,7 @@ CONFIG_MMC_BLOCK=m CONFIG_MMC_BLOCK_MINORS=8 CONFIG_MMC_CAVIUM_THUNDERX=m CONFIG_MMC_CB710=m +CONFIG_MMC_CQHCI=m # CONFIG_MMC_DEBUG is not set # CONFIG_MMC_DW_EXYNOS is not set CONFIG_MMC_DW_K3=m @@ -3249,6 +3286,7 @@ CONFIG_MSM_MMCC_8974=m CONFIG_MSM_MMCC_8996=m CONFIG_MSPRO_BLOCK=m CONFIG_MT7601U=m +CONFIG_MT76x2E=m # CONFIG_MTD_ABSENT is not set # CONFIG_MTD_AFS_PARTS is not set # CONFIG_MTD_AR7_PARTS is not set @@ -3288,6 +3326,7 @@ CONFIG_MTD_MAP_BANK_WIDTH_4=y # CONFIG_MTD_NAND_ECC_BCH is not set # CONFIG_MTD_NAND_HISI504 is not set # CONFIG_MTD_NAND is not set +CONFIG_MTD_NAND_MARVELL=m # CONFIG_MTD_NAND_OMAP2 is not set # CONFIG_MTD_NAND_OXNAS is not set CONFIG_MTD_NAND_PXA3xx=m @@ -3407,9 +3446,11 @@ CONFIG_NET_CORE=y # CONFIG_NET_DCCPPROBE is not set CONFIG_NETDEVICES=y CONFIG_NET_DEVLINK=m +# CONFIG_NETDEVSIM is not set CONFIG_NET_DROP_MONITOR=y CONFIG_NET_DSA_BCM_SF2=m CONFIG_NET_DSA_HWMON=y +# CONFIG_NET_DSA_LEGACY is not set CONFIG_NET_DSA_LOOP=m CONFIG_NET_DSA=m CONFIG_NET_DSA_MT7530=m @@ -3594,6 +3635,7 @@ CONFIG_NET_VENDOR_BROADCOM=y CONFIG_NET_VENDOR_CAVIUM=y CONFIG_NET_VENDOR_CHELSIO=y # CONFIG_NET_VENDOR_CISCO is not set +# CONFIG_NET_VENDOR_CORTINA is not set # CONFIG_NET_VENDOR_DEC is not set CONFIG_NET_VENDOR_DLINK=y CONFIG_NET_VENDOR_EMULEX=y @@ -3627,6 +3669,7 @@ CONFIG_NET_VENDOR_SILAN=y CONFIG_NET_VENDOR_SIS=y CONFIG_NET_VENDOR_SMSC=y CONFIG_NET_VENDOR_SNI=y +CONFIG_NET_VENDOR_SOCIONEXT=y # CONFIG_NET_VENDOR_SOLARFLARE is not set CONFIG_NET_VENDOR_STMICRO=y # CONFIG_NET_VENDOR_SUN is not set @@ -3705,6 +3748,10 @@ CONFIG_NFC_TRF7970A=m CONFIG_NF_DUP_IPV4=m CONFIG_NF_DUP_IPV6=m CONFIG_NF_DUP_NETDEV=m +CONFIG_NF_FLOW_TABLE_INET=m +CONFIG_NF_FLOW_TABLE_IPV4=m +CONFIG_NF_FLOW_TABLE_IPV6=m +CONFIG_NF_FLOW_TABLE=m CONFIG_NF_LOG_ARP=m CONFIG_NF_LOG_BRIDGE=m CONFIG_NF_LOG_IPV4=m @@ -3766,6 +3813,7 @@ CONFIG_NFT_FIB_INET=m CONFIG_NFT_FIB_IPV4=m CONFIG_NFT_FIB_IPV6=m CONFIG_NFT_FIB_NETDEV=m +CONFIG_NFT_FLOW_OFFLOAD=m CONFIG_NFT_FWD_NETDEV=m CONFIG_NFT_HASH=m CONFIG_NFT_LIMIT=m @@ -4007,6 +4055,7 @@ CONFIG_PCIEAER=y CONFIG_PCIE_ARMADA_8K=y # CONFIG_PCIEASPM_DEBUG is not set CONFIG_PCIEASPM=y +CONFIG_PCIE_CADENCE_HOST=y CONFIG_PCIE_DPC=y CONFIG_PCIE_DW_HOST_ECAM=y CONFIG_PCIE_DW_HOST=y @@ -4021,6 +4070,7 @@ CONFIG_PCIEPORTBUS=y CONFIG_PCIE_PTM=y CONFIG_PCIE_QCOM=y CONFIG_PCIE_ROCKCHIP=y +CONFIG_PCIE_XILINX_NWL=y # CONFIG_PCI_FTPCI100 is not set CONFIG_PCI_HERMES=m CONFIG_PCI_HISI=y @@ -4107,6 +4157,7 @@ CONFIG_PINCONF=y CONFIG_PINCTRL_AMD=y # CONFIG_PINCTRL_APQ8064 is not set # CONFIG_PINCTRL_APQ8084 is not set +CONFIG_PINCTRL_AXP209=m # CONFIG_PINCTRL_BAYTRAIL is not set # CONFIG_PINCTRL_BROXTON is not set # CONFIG_PINCTRL_CANNONLAKE is not set @@ -4121,6 +4172,7 @@ CONFIG_PINCTRL_MAX77620=m # CONFIG_PINCTRL_MDM9615 is not set # CONFIG_PINCTRL_MESON8B is not set # CONFIG_PINCTRL_MESON8 is not set +CONFIG_PINCTRL_MESON_AXG=y # CONFIG_PINCTRL_MESON_GXBB is not set # CONFIG_PINCTRL_MESON_GXL is not set # CONFIG_PINCTRL_MSM8660 is not set @@ -4128,6 +4180,7 @@ CONFIG_PINCTRL_MSM8916=y # CONFIG_PINCTRL_MSM8960 is not set # CONFIG_PINCTRL_MSM8994 is not set CONFIG_PINCTRL_MSM8996=y +CONFIG_PINCTRL_MSM8998=m # CONFIG_PINCTRL_MSM8X74 is not set CONFIG_PINCTRL_MSM=y CONFIG_PINCTRL_MVEBU=y @@ -4254,9 +4307,11 @@ CONFIG_PWRSEQ_SIMPLE=y # CONFIG_QCA7000 is not set # CONFIG_QCA7000_SPI is not set # CONFIG_QCA7000_UART is not set +CONFIG_QCOM_A53PLL=m CONFIG_QCOM_ADSP_PIL=m CONFIG_QCOM_APCS_IPC=m CONFIG_QCOM_BAM_DMA=y +CONFIG_QCOM_CLK_APCS_MSM8916=m CONFIG_QCOM_CLK_RPM=m CONFIG_QCOM_CLK_SMD_RPM=m CONFIG_QCOM_COINCELL=m @@ -4349,6 +4404,7 @@ CONFIG_RANDOMIZE_MODULE_REGION_FULL=y CONFIG_RAS_CEC=y CONFIG_RASPBERRYPI_FIRMWARE=y CONFIG_RASPBERRYPI_POWER=y +# CONFIG_RAVE_SP_CORE is not set CONFIG_RAW_DRIVER=y # CONFIG_RBTREE_TEST is not set CONFIG_RC_ATI_REMOTE=m @@ -4455,7 +4511,6 @@ CONFIG_RENESAS_PHY=m CONFIG_RESET_CONTROLLER=y CONFIG_RESET_GPIO=y CONFIG_RESET_HISI=y -# CONFIG_RESET_HSDK_V1 is not set CONFIG_RESET_SIMPLE=y # CONFIG_RESET_TI_SCI is not set # CONFIG_RESET_TI_SYSCON is not set @@ -4540,6 +4595,7 @@ CONFIG_RTC_DRV_ARMADA38X=m CONFIG_RTC_DRV_BQ32K=m CONFIG_RTC_DRV_BQ4802=m CONFIG_RTC_DRV_CMOS=y +CONFIG_RTC_DRV_CROS_EC=m CONFIG_RTC_DRV_DS1286=m # CONFIG_RTC_DRV_DS1302 is not set CONFIG_RTC_DRV_DS1305=m @@ -4621,7 +4677,7 @@ CONFIG_RTC_DRV_WM831X=m CONFIG_RTC_DRV_WM8350=m CONFIG_RTC_DRV_X1205=m CONFIG_RTC_DRV_XGENE=m -# CONFIG_RTC_DRV_ZYNQMP is not set +CONFIG_RTC_DRV_ZYNQMP=m # CONFIG_RTC_DS1685_PROC_REGS is not set CONFIG_RTC_DS1685_SYSFS_REGS=y CONFIG_RTC_HCTOSYS_DEVICE="rtc0" @@ -4658,6 +4714,7 @@ CONFIG_RTLLIB=m # CONFIG_RTLWIFI_DEBUG is not set CONFIG_RTLWIFI=m # CONFIG_RTS5208 is not set +CONFIG_RUNTIME_TESTING_MENU=y CONFIG_S2IO=m # CONFIG_SAMPLES is not set # CONFIG_SAMSUNG_USBPHY is not set @@ -4668,13 +4725,13 @@ CONFIG_SATA_AHCI=y # CONFIG_SATA_DWC is not set # CONFIG_SATA_HIGHBANK is not set # CONFIG_SATA_INIC162X is not set -CONFIG_SATA_MOBILE_LPM_POLICY=3 +CONFIG_SATA_MOBILE_LPM_POLICY=0 CONFIG_SATA_MV=m # CONFIG_SATA_NV is not set CONFIG_SATA_PMP=y # CONFIG_SATA_PROMISE is not set # CONFIG_SATA_QSTOR is not set -# CONFIG_SATA_SIL24 is not set +CONFIG_SATA_SIL24=m # CONFIG_SATA_SIL is not set # CONFIG_SATA_SIS is not set # CONFIG_SATA_SVW is not set @@ -4806,6 +4863,7 @@ CONFIG_SCTP_COOKIE_HMAC_SHA1=y # CONFIG_SCTP_DEFAULT_COOKIE_HMAC_MD5 is not set # CONFIG_SCTP_DEFAULT_COOKIE_HMAC_NONE is not set CONFIG_SCTP_DEFAULT_COOKIE_HMAC_SHA1=y +CONFIG_SD_ADC_MODULATOR=m CONFIG_SDIO_UART=m CONFIG_SECCOMP=y CONFIG_SECONDARY_TRUSTED_KEYRING=y @@ -4984,6 +5042,7 @@ CONFIG_SENSORS_VT1211=m CONFIG_SENSORS_VT8231=m CONFIG_SENSORS_W83627EHF=m CONFIG_SENSORS_W83627HF=m +CONFIG_SENSORS_W83773G=m CONFIG_SENSORS_W83781D=m CONFIG_SENSORS_W83791D=m CONFIG_SENSORS_W83792D=m @@ -5082,6 +5141,7 @@ CONFIG_SH_ETH=m # CONFIG_SIGMA is not set CONFIG_SIGNED_PE_FILE_VERIFICATION=y CONFIG_SIMPLE_PM_BUS=y +# CONFIG_SIOX is not set CONFIG_SIS190=m CONFIG_SIS900=m # CONFIG_SKFP is not set @@ -5094,6 +5154,8 @@ CONFIG_SLAB_FREELIST_HARDENED=y CONFIG_SLAB_FREELIST_RANDOM=y CONFIG_SLAB_MERGE_DEFAULT=y # CONFIG_SLICOSS is not set +CONFIG_SLIMBUS=m +CONFIG_SLIM_QCOM_CTRL=m CONFIG_SLIP_COMPRESSED=y CONFIG_SLIP=m # CONFIG_SLIP_MODE_SLIP6 is not set @@ -5318,6 +5380,7 @@ CONFIG_SND_SOC_HDMI_CODEC=m # CONFIG_SND_SOC_IMX_ES8328 is not set # CONFIG_SND_SOC_INNO_RK3036 is not set CONFIG_SND_SOC=m +CONFIG_SND_SOC_MAX98373=m # CONFIG_SND_SOC_MAX98504 is not set # CONFIG_SND_SOC_MAX9860 is not set CONFIG_SND_SOC_MAX98927=m @@ -5330,6 +5393,8 @@ CONFIG_SND_SOC_NAU8824=m # CONFIG_SND_SOC_PCM179X_I2C is not set # CONFIG_SND_SOC_PCM179X is not set # CONFIG_SND_SOC_PCM179X_SPI is not set +CONFIG_SND_SOC_PCM186X_I2C=m +CONFIG_SND_SOC_PCM186X_SPI=m # CONFIG_SND_SOC_PCM3168A_I2C is not set # CONFIG_SND_SOC_PCM3168A_SPI is not set CONFIG_SND_SOC_PCM512x_I2C=m @@ -5360,6 +5425,7 @@ CONFIG_SND_SOC_SPDIF=m # CONFIG_SND_SOC_TAS5086 is not set # CONFIG_SND_SOC_TAS571X is not set # CONFIG_SND_SOC_TAS5720 is not set +CONFIG_SND_SOC_TAS6424=m CONFIG_SND_SOC_TEGRA20_AC97=m CONFIG_SND_SOC_TEGRA20_DAS=m CONFIG_SND_SOC_TEGRA20_I2S=m @@ -5380,9 +5446,12 @@ CONFIG_SND_SOC_TEGRA_SGTL5000=m # 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_TLV320AIC32X4_I2C=m +CONFIG_SND_SOC_TLV320AIC32X4_SPI=m # CONFIG_SND_SOC_TLV320AIC3X is not set CONFIG_SND_SOC_TPA6130A2=m CONFIG_SND_SOC_TS3A227E=m +CONFIG_SND_SOC_TSCS42XX=m # CONFIG_SND_SOC_WM8510 is not set # CONFIG_SND_SOC_WM8523 is not set CONFIG_SND_SOC_WM8524=m @@ -5452,6 +5521,9 @@ CONFIG_SONY_FF=y # CONFIG_SONYPI is not set CONFIG_SOUND=m CONFIG_SOUND_OSS_CORE_PRECLAIM=y +CONFIG_SOUNDWIRE_BUS=m +CONFIG_SOUNDWIRE_CADENCE=m +CONFIG_SOUNDWIRE=y CONFIG_SPARSE_IRQ=y CONFIG_SPARSEMEM_VMEMMAP=y CONFIG_SPARSE_RCU_POINTER=y @@ -5499,8 +5571,9 @@ CONFIG_SPI_THUNDERX=m # CONFIG_SPI_XILINX is not set CONFIG_SPI_XLP=m CONFIG_SPI=y -# CONFIG_SPI_ZYNQMP_GQSPI is not set +CONFIG_SPI_ZYNQMP_GQSPI=m CONFIG_SPMI_MSM_PMIC_ARB=y +CONFIG_SPMI_PMIC_CLKDIV=m CONFIG_SPMI=y # CONFIG_SQUASHFS_4K_DEVBLK_SIZE is not set # CONFIG_SQUASHFS_EMBEDDED is not set @@ -5547,12 +5620,16 @@ CONFIG_STRICT_DEVMEM=y # CONFIG_STRING_SELFTEST is not set CONFIG_STRIP_ASM_SYMS=y # CONFIG_STRIP is not set +CONFIG_STUB_CLK_HI3660=y CONFIG_STUB_CLK_HI6220=y +CONFIG_ST_UVIS25_I2C=m +CONFIG_ST_UVIS25=m +CONFIG_ST_UVIS25_SPI=m # CONFIG_SUN4I_EMAC is not set CONFIG_SUN4I_GPADC=m CONFIG_SUN50I_A64_CCU=y # CONFIG_SUN8I_A83T_CCU is not set -# CONFIG_SUN8I_DE2_CCU is not set +CONFIG_SUN8I_DE2_CCU=y CONFIG_SUN8I_H3_CCU=y CONFIG_SUN8I_R_CCU=y # CONFIG_SUN8I_V3S_CCU is not set @@ -5667,6 +5744,7 @@ CONFIG_TEGRA_IOMMU_SMMU=y CONFIG_TEGRA_IVC=y CONFIG_TEGRA_MC=y CONFIG_TEGRA_SOCTHERM=m +CONFIG_TEGRA_VDE=m CONFIG_TEGRA_WATCHDOG=m CONFIG_TEHUTI=m CONFIG_TELCLOCK=m @@ -5730,11 +5808,12 @@ CONFIG_TIFM_CORE=m CONFIG_TIGON3_HWMON=y CONFIG_TIGON3=m # CONFIG_TIMB_DMA is not set -# CONFIG_TIMER_STATS is not set +CONFIG_TINYDRM_ILI9225=m CONFIG_TINYDRM_MI0283QT=m CONFIG_TINYDRM_MIPI_DBI=m # CONFIG_TINYDRM_REPAPER is not set # CONFIG_TINYDRM_ST7586 is not set +CONFIG_TINYDRM_ST7735R=m CONFIG_TIPC=m # CONFIG_TIPC_MEDIA_IB is not set CONFIG_TIPC_MEDIA_UDP=y @@ -5893,6 +5972,7 @@ CONFIG_UIO_SERCOS3=m CONFIG_ULI526X=m # CONFIG_ULTRIX_PARTITION is not set # CONFIG_UNISYSSPAR is not set +# CONFIG_UNISYS_VISORBUS is not set CONFIG_UNIX98_PTYS=y CONFIG_UNIX_DIAG=m CONFIG_UNIXWARE_DISKLABEL=y @@ -6119,7 +6199,7 @@ CONFIG_USB_OHCI_HCD_PLATFORM=m # CONFIG_USB_OHCI_HCD_SSB is not set CONFIG_USB_OHCI_HCD=y # CONFIG_USB_OTG_BLACKLIST_HUB is not set -# CONFIG_USB_OTG_FSM is not set +CONFIG_USB_OTG_FSM=m # CONFIG_USB_OTG_WHITELIST is not set CONFIG_USB_OTG=y # CONFIG_USB_OXU210HP_HCD is not set @@ -6257,6 +6337,7 @@ CONFIG_USB_WDM=m # CONFIG_USB_WUSB_CBAF_DEBUG is not set CONFIG_USB_WUSB_CBAF=m CONFIG_USB_WUSB=m +CONFIG_USB_XHCI_DBGCAP=y CONFIG_USB_XHCI_HCD=y CONFIG_USB_XHCI_MVEBU=m CONFIG_USB_XHCI_PLATFORM=m @@ -6417,6 +6498,7 @@ CONFIG_VIRTIO_BLK=m # CONFIG_VIRTIO_BLK_SCSI is not set CONFIG_VIRTIO_CONSOLE=m CONFIG_VIRTIO_INPUT=m +CONFIG_VIRTIO_MENU=y # CONFIG_VIRTIO_MMIO_CMDLINE_DEVICES is not set CONFIG_VIRTIO_MMIO=m CONFIG_VIRTIO_NET=m @@ -6557,8 +6639,9 @@ CONFIG_XGENE_PMU=y CONFIG_XGENE_SLIMPRO_MBOX=m # CONFIG_XILINX_DMA is not set CONFIG_XILINX_GMII2RGMII=m +CONFIG_XILINX_VCU=m # CONFIG_XILINX_WATCHDOG is not set -# CONFIG_XILINX_ZYNQMP_DMA is not set +CONFIG_XILINX_ZYNQMP_DMA=m CONFIG_XILLYBUS=m # CONFIG_XILLYBUS_OF is not set CONFIG_XILLYBUS_PCIE=m @@ -6582,6 +6665,7 @@ CONFIG_ZEROPLUS_FF=y CONFIG_ZISOFS=y CONFIG_ZLIB_DEFLATE=y CONFIG_ZLIB_INFLATE=y +CONFIG_ZOPT2201=m # CONFIG_ZPA2326 is not set CONFIG_ZRAM=m # CONFIG_ZRAM_WRITEBACK is not set diff --git a/kernel-aarch64.config b/kernel-aarch64.config index 00f82def1..8bde68a83 100644 --- a/kernel-aarch64.config +++ b/kernel-aarch64.config @@ -67,6 +67,7 @@ CONFIG_ACPI_NUMA=y CONFIG_ACPI_PCI_SLOT=y CONFIG_ACPI_PROCESSOR=y CONFIG_ACPI_PROCFS_POWER=y +CONFIG_ACPI_SPCR_TABLE=y CONFIG_ACPI_TABLE_UPGRADE=y CONFIG_ACPI_THERMAL=y CONFIG_ACPI_WATCHDOG=y @@ -242,7 +243,7 @@ CONFIG_ARCH_THUNDER=y CONFIG_ARCH_VEXPRESS=y CONFIG_ARCH_XGENE=y # CONFIG_ARCH_ZX is not set -# CONFIG_ARCH_ZYNQMP is not set +CONFIG_ARCH_ZYNQMP=y # CONFIG_ARCNET is not set CONFIG_ARM64_4K_PAGES=y CONFIG_ARM64_ACPI_PARKING_PROTOCOL=y @@ -258,10 +259,11 @@ CONFIG_ARM64_ERRATUM_858921=y CONFIG_ARM64_HW_AFDBM=y CONFIG_ARM64_LSE_ATOMICS=y CONFIG_ARM64_PAN=y -# CONFIG_ARM64_PMEM is not set +CONFIG_ARM64_PMEM=y CONFIG_ARM64_PTDUMP_DEBUGFS=y # CONFIG_ARM64_PTDUMP is not set # CONFIG_ARM64_RANDOMIZE_TEXT_OFFSET is not set +CONFIG_ARM64_RAS_EXTN=y # CONFIG_ARM64_RELOC_TEST is not set CONFIG_ARM64_SVE=y CONFIG_ARM64_SW_TTBR0_PAN=y @@ -275,7 +277,8 @@ CONFIG_ARMADA_THERMAL=m CONFIG_ARM_AMBA=y CONFIG_ARM_ARCH_TIMER_EVTSTREAM=y CONFIG_ARM_ARCH_TIMER=y -# CONFIG_ARM_BIG_LITTLE_CPUFREQ is not set +CONFIG_ARM_ARMADA_37XX_CPUFREQ=m +CONFIG_ARM_BIG_LITTLE_CPUFREQ=m # CONFIG_ARM_BIG_LITTLE_CPUIDLE is not set CONFIG_ARM_CCI400_PMU=y CONFIG_ARM_CCI5xx_PMU=y @@ -286,6 +289,7 @@ CONFIG_ARM_CPUIDLE=y CONFIG_ARM_CRYPTO=y CONFIG_ARM_DMA_IOMMU_ALIGNMENT=8 CONFIG_ARM_DMA_USE_IOMMU=y +CONFIG_ARM_DSU_PMU=m # CONFIG_ARM_DT_BL_CPUFREQ is not set CONFIG_ARM_GIC_V2M=y CONFIG_ARM_GIC_V3_ITS=y @@ -297,11 +301,14 @@ CONFIG_ARM_PL172_MPMC=m CONFIG_ARM_PMU=y # CONFIG_ARM_PSCI_CHECKER is not set CONFIG_ARM_PSCI=y +# CONFIG_ARM_PTDUMP_DEBUGFS is not set # CONFIG_ARM_PTDUMP is not set CONFIG_ARM_RK3399_DMC_DEVFREQ=m CONFIG_ARM_SBSA_WATCHDOG=m +CONFIG_ARM_SCPI_CPUFREQ=m CONFIG_ARM_SCPI_POWER_DOMAIN=m CONFIG_ARM_SCPI_PROTOCOL=m +CONFIG_ARM_SDE_INTERFACE=y CONFIG_ARM_SMMU_V3=y CONFIG_ARM_SMMU=y CONFIG_ARM_SP805_WATCHDOG=m @@ -333,6 +340,7 @@ CONFIG_ATH10K_DEBUGFS=y CONFIG_ATH10K=m CONFIG_ATH10K_PCI=m CONFIG_ATH10K_SDIO=m +# CONFIG_ATH10K_SPECTRAL is not set # CONFIG_ATH10K_TRACING is not set CONFIG_ATH10K_USB=m CONFIG_ATH5K_DEBUG=y @@ -346,6 +354,7 @@ CONFIG_ATH6KL_USB=m CONFIG_ATH9K_AHB=y CONFIG_ATH9K_BTCOEX_SUPPORT=y # CONFIG_ATH9K_CHANNEL_CONTEXT is not set +# CONFIG_ATH9K_COMMON_SPECTRAL is not set CONFIG_ATH9K_DEBUGFS=y # CONFIG_ATH9K_DEBUG is not set # CONFIG_ATH9K_DYNACK is not set @@ -542,6 +551,7 @@ CONFIG_BLK_DEV_LOOP=m CONFIG_BLK_DEV_LOOP_MIN_COUNT=0 CONFIG_BLK_DEV_MD=y CONFIG_BLK_DEV_NBD=m +# CONFIG_BLK_DEV_NULL_BLK_FAULT_INJECTION is not set CONFIG_BLK_DEV_NULL_BLK=m CONFIG_BLK_DEV_NVME=m # CONFIG_BLK_DEV_NVME_SCSI is not set @@ -597,6 +607,7 @@ CONFIG_BOOT_PRINTK_DELAY=y CONFIG_BOUNCE=y CONFIG_BPF_JIT_ALWAYS_ON=y CONFIG_BPF_JIT=y +# CONFIG_BPF_KPROBE_OVERRIDE is not set CONFIG_BPF_STREAM_PARSER=y CONFIG_BPF_SYSCALL=y CONFIG_BPQETHER=m @@ -653,7 +664,7 @@ CONFIG_BT_HCIBPA10X=m CONFIG_BT_HCIBT3C=m CONFIG_BT_HCIBTSDIO=m CONFIG_BT_HCIBTUART=m -CONFIG_BT_HCIBTUSB_AUTOSUSPEND=y +# CONFIG_BT_HCIBTUSB_AUTOSUSPEND is not set CONFIG_BT_HCIBTUSB_BCM=y CONFIG_BT_HCIBTUSB=m CONFIG_BT_HCIBTUSB_RTL=y @@ -766,6 +777,7 @@ CONFIG_CAVIUM_ERRATUM_23144=y CONFIG_CAVIUM_ERRATUM_23154=y CONFIG_CAVIUM_ERRATUM_27456=y CONFIG_CAVIUM_ERRATUM_30115=y +CONFIG_CAVIUM_PTP=m CONFIG_CB710_CORE=m # CONFIG_CB710_DEBUG is not set # CONFIG_CC10001_ADC is not set @@ -828,6 +840,7 @@ CONFIG_CHARGER_SMB347=m # CONFIG_CHASH_SELFTEST is not set # CONFIG_CHASH_STATS is not set CONFIG_CHECKPOINT_RESTORE=y +CONFIG_CHELSIO_IPSEC_INLINE=y CONFIG_CHELSIO_T1_1G=y CONFIG_CHELSIO_T1=m CONFIG_CHELSIO_T3=m @@ -853,6 +866,7 @@ CONFIG_CIFS_NFSD_EXPORT=y CONFIG_CIFS_POSIX=y CONFIG_CIFS_SMB2=y # CONFIG_CIFS_SMB311 is not set +# CONFIG_CIFS_SMB_DIRECT is not set # CONFIG_CIFS_STATS2 is not set CONFIG_CIFS_STATS=y CONFIG_CIFS_UPCALL=y @@ -1013,7 +1027,6 @@ CONFIG_CRYPTO_DEV_CHELSIO=m CONFIG_CRYPTO_DEV_HIFN_795X=m CONFIG_CRYPTO_DEV_HIFN_795X_RNG=y CONFIG_CRYPTO_DEV_MARVELL_CESA=m -CONFIG_CRYPTO_DEV_MV_CESA=m CONFIG_CRYPTO_DEV_NITROX_CNN55XX=m CONFIG_CRYPTO_DEV_QCE=m CONFIG_CRYPTO_DEV_ROCKCHIP=m @@ -1071,11 +1084,14 @@ CONFIG_CRYPTO_SHA256_ARM64=y CONFIG_CRYPTO_SHA256_ARM=y CONFIG_CRYPTO_SHA256=y CONFIG_CRYPTO_SHA2_ARM64_CE=y +CONFIG_CRYPTO_SHA3_ARM64=m CONFIG_CRYPTO_SHA3=m +CONFIG_CRYPTO_SHA512_ARM64_CE=m CONFIG_CRYPTO_SHA512_ARM64=m CONFIG_CRYPTO_SHA512_ARM=y CONFIG_CRYPTO_SHA512=m CONFIG_CRYPTO_SIMD=y +CONFIG_CRYPTO_SM3_ARM64_CE=m CONFIG_CRYPTO_SM3=m CONFIG_CRYPTO_TEA=m CONFIG_CRYPTO_TEST=m @@ -1235,6 +1251,7 @@ CONFIG_DM_SNAPSHOT=y CONFIG_DM_SWITCH=m CONFIG_DM_THIN_PROVISIONING=m CONFIG_DM_UEVENT=y +CONFIG_DM_UNSTRIPED=m CONFIG_DM_VERITY_FEC=y CONFIG_DM_VERITY=m CONFIG_DM_ZERO=y @@ -1257,7 +1274,7 @@ CONFIG_DRM_AMD_DC=y CONFIG_DRM_AMDGPU_CIK=y # CONFIG_DRM_AMDGPU_GART_DEBUGFS is not set CONFIG_DRM_AMDGPU=m -# CONFIG_DRM_AMDGPU_SI is not set +CONFIG_DRM_AMDGPU_SI=y CONFIG_DRM_AMDGPU_USERPTR=y CONFIG_DRM_AMD_POWERPLAY=y CONFIG_DRM_ANALOGIX_ANX78XX=m @@ -1281,8 +1298,8 @@ CONFIG_DRM_HDLCD=m CONFIG_DRM_HISI_HIBMC=m CONFIG_DRM_HISI_KIRIN=m CONFIG_DRM_I2C_ADV7511_AUDIO=y -# CONFIG_DRM_I2C_ADV7511_CEC is not set -# CONFIG_DRM_I2C_ADV7511 is not set +CONFIG_DRM_I2C_ADV7511_CEC=y +CONFIG_DRM_I2C_ADV7511=m CONFIG_DRM_I2C_ADV7533=y CONFIG_DRM_I2C_CH7006=m CONFIG_DRM_I2C_NXP_TDA998X=m @@ -1310,6 +1327,7 @@ CONFIG_DRM_MSM=m CONFIG_DRM_NOUVEAU_BACKLIGHT=y CONFIG_DRM_NOUVEAU=m CONFIG_DRM_NXP_PTN3460=m +CONFIG_DRM_PANEL_ILITEK_IL9322=m # CONFIG_DRM_PANEL_INNOLUX_P079ZCA is not set # CONFIG_DRM_PANEL_JDI_LT070ME05000 is not set CONFIG_DRM_PANEL_LG_LG4573=m @@ -1394,6 +1412,7 @@ CONFIG_DVB_FIREDTV=m CONFIG_DVB_HOPPER=m CONFIG_DVB_MANTIS=m CONFIG_DVB_MAX_ADAPTERS=8 +# CONFIG_DVB_MMAP is not set CONFIG_DVB_MN88472=m CONFIG_DVB_MN88473=m CONFIG_DVB_NETUP_UNIDVB=m @@ -1407,6 +1426,7 @@ CONFIG_DVB_PT1=m CONFIG_DVB_SMIPCIE=m CONFIG_DVB_TTUSB_BUDGET=m CONFIG_DVB_TTUSB_DEC=m +# CONFIG_DVB_ULE_DEBUG is not set CONFIG_DVB_USB_A800=m CONFIG_DVB_USB_AF9005=m CONFIG_DVB_USB_AF9005_REMOTE=m @@ -1630,12 +1650,14 @@ CONFIG_FB_VIRTUAL=m # CONFIG_FB_VOODOO1 is not set # CONFIG_FB_VT8623 is not set # CONFIG_FB_XGI is not set +CONFIG_FB_XILINX=m CONFIG_FB=y CONFIG_FCOE_FNIC=m CONFIG_FCOE=m # CONFIG_FDDI is not set CONFIG_FEALNX=m CONFIG_FHANDLE=y +# CONFIG_FIND_BIT_BENCHMARK is not set # CONFIG_FIREWIRE is not set CONFIG_FIREWIRE_NET=m CONFIG_FIREWIRE_NOSY=m @@ -1685,6 +1707,7 @@ CONFIG_FTRACE_MCOUNT_RECORD=y # CONFIG_FTRACE_STARTUP_TEST is not set CONFIG_FTRACE_SYSCALLS=y CONFIG_FTRACE=y +# CONFIG_FTWDT010_WATCHDOG is not set # CONFIG_FUJITSU_ES is not set # CONFIG_FUNCTION_GRAPH_TRACER is not set CONFIG_FUNCTION_PROFILER=y @@ -1757,7 +1780,7 @@ CONFIG_GPIOLIB=y # CONFIG_GPIO_MAX7301 is not set # CONFIG_GPIO_MAX732X is not set CONFIG_GPIO_MAX77620=m -# CONFIG_GPIO_MB86S7X is not set +CONFIG_GPIO_MB86S7X=m # CONFIG_GPIO_MC33880 is not set # CONFIG_GPIO_MCP23S08 is not set # CONFIG_GPIO_MOCKUP is not set @@ -1767,9 +1790,11 @@ CONFIG_GPIO_PCA953X_IRQ=y CONFIG_GPIO_PCA953X=y CONFIG_GPIO_PCF857X=m # CONFIG_GPIO_PCH is not set +# CONFIG_GPIO_PCIE_IDIO_24 is not set CONFIG_GPIO_PCI_IDIO_16=m # CONFIG_GPIO_PISOSR is not set CONFIG_GPIO_PL061=y +CONFIG_GPIO_RASPBERRYPI_EXP=m # CONFIG_GPIO_RDC321X is not set # CONFIG_GPIO_SCH311X is not set # CONFIG_GPIO_SX150X is not set @@ -1790,6 +1815,7 @@ CONFIG_GPIO_XGENE=y # CONFIG_GPIO_XILINX is not set CONFIG_GPIO_XLP=m # CONFIG_GPIO_XRA1403 is not set +CONFIG_GPIO_ZYNQ=m CONFIG_GREENASIA_FF=y # CONFIG_GREYBUS is not set # CONFIG_GS_FPGABOOT is not set @@ -1799,6 +1825,7 @@ CONFIG_HAMACHI=m CONFIG_HAMRADIO=y CONFIG_HANGCHECK_TIMER=m CONFIG_HAPPYMEAL=m +CONFIG_HARDENED_USERCOPY_FALLBACK=y CONFIG_HARDENED_USERCOPY=y CONFIG_HAVE_PERF_REGS=y CONFIG_HAVE_PERF_USER_STACK_DUMP=y @@ -1846,6 +1873,7 @@ CONFIG_HID_GYRATION=m CONFIG_HID_HOLTEK=m CONFIG_HID_ICADE=m CONFIG_HID_ITE=m +CONFIG_HID_JABRA=m CONFIG_HID_KENSINGTON=m CONFIG_HID_KEYTOUCH=m CONFIG_HID_KYE=m @@ -1998,7 +2026,7 @@ CONFIG_HW_RANDOM_MESON=m CONFIG_HW_RANDOM_MSM=m CONFIG_HW_RANDOM_OMAP=m CONFIG_HW_RANDOM_TIMERIOMEM=m -CONFIG_HW_RANDOM_TPM=m +CONFIG_HW_RANDOM_TPM=y CONFIG_HW_RANDOM_VIRTIO=m CONFIG_HW_RANDOM_XGENE=m CONFIG_HW_RANDOM=y @@ -2040,6 +2068,7 @@ CONFIG_I2C_DESIGNWARE_SLAVE=y CONFIG_I2C_DIOLAN_U2C=m # CONFIG_I2C_EG20T is not set # CONFIG_I2C_EMEV2 is not set +# CONFIG_I2C_GPIO_FAULT_INJECTOR is not set CONFIG_I2C_GPIO=m CONFIG_I2C_HELPER_AUTO=y CONFIG_I2C_HID=m @@ -2126,6 +2155,7 @@ CONFIG_IGB_HWMON=y CONFIG_IGB=m CONFIG_IGBVF=m CONFIG_IIO_BUFFER_CB=m +CONFIG_IIO_BUFFER_HW_CONSUMER=m CONFIG_IIO_BUFFER=y CONFIG_IIO_CONFIGFS=m CONFIG_IIO_CONSUMERS_PER_TRIGGER=2 @@ -2313,6 +2343,7 @@ CONFIG_IP6_NF_MATCH_MH=m CONFIG_IP6_NF_MATCH_OPTS=m CONFIG_IP6_NF_MATCH_RPFILTER=m CONFIG_IP6_NF_MATCH_RT=m +CONFIG_IP6_NF_MATCH_SRH=m CONFIG_IP6_NF_NAT=m CONFIG_IP6_NF_RAW=m CONFIG_IP6_NF_SECURITY=m @@ -2445,7 +2476,6 @@ CONFIG_IPVTAP=m # CONFIG_IPW2200_DEBUG is not set # CONFIG_IPW2200 is not set CONFIG_IPWIRELESS=m -# CONFIG_IPX_INTERN is not set # CONFIG_IPX is not set # CONFIG_IRDA is not set CONFIG_IR_ENE=m @@ -2710,6 +2740,7 @@ CONFIG_LEDS_IS31FL32XX=m CONFIG_LEDS_LM3530=m # CONFIG_LEDS_LM355x is not set # CONFIG_LEDS_LM3642 is not set +CONFIG_LEDS_LM3692X=m # CONFIG_LEDS_LOCOMO is not set CONFIG_LEDS_LP3944=m CONFIG_LEDS_LP3952=m @@ -2742,6 +2773,7 @@ CONFIG_LEDS_TRIGGER_DISK=y CONFIG_LEDS_TRIGGER_GPIO=m CONFIG_LEDS_TRIGGER_HEARTBEAT=m CONFIG_LEDS_TRIGGER_MTD=y +CONFIG_LEDS_TRIGGER_NETDEV=m CONFIG_LEDS_TRIGGER_ONESHOT=m CONFIG_LEDS_TRIGGER_PANIC=y CONFIG_LEDS_TRIGGERS=y @@ -2775,11 +2807,11 @@ CONFIG_LIBNVDIMM=m CONFIG_LIQUIDIO_VF=m CONFIG_LIRC_BT829=m CONFIG_LIRC_IMON=m -CONFIG_LIRC=m CONFIG_LIRC_PARALLEL=m CONFIG_LIRC_SERIAL=m CONFIG_LIRC_SERIAL_TRANSMITTER=y CONFIG_LIRC_STAGING=y +CONFIG_LIRC=y CONFIG_LIRC_ZILOG=m # CONFIG_LIVEPATCH is not set # CONFIG_LKDTM is not set @@ -2931,6 +2963,7 @@ CONFIG_MEGARAID_MAILBOX=m CONFIG_MEGARAID_MM=m CONFIG_MEGARAID_NEWGEN=y CONFIG_MEGARAID_SAS=m +CONFIG_MELLANOX_PLATFORM=y CONFIG_MEMCG_SWAP_ENABLED=y CONFIG_MEMCG_SWAP=y CONFIG_MEMCG=y @@ -2979,6 +3012,7 @@ CONFIG_MFD_AXP20X=y CONFIG_MFD_BD9571MWV=m CONFIG_MFD_CORE=y # CONFIG_MFD_CPCAP is not set +CONFIG_MFD_CROS_EC_CHARDEV=m CONFIG_MFD_CROS_EC_I2C=m CONFIG_MFD_CROS_EC=m CONFIG_MFD_CROS_EC_SPI=m @@ -3021,8 +3055,6 @@ CONFIG_MFD_QCOM_RPM=m CONFIG_MFD_RK808=m # CONFIG_MFD_RN5T618 is not set # CONFIG_MFD_RT5033 is not set -CONFIG_MFD_RTSX_PCI=m -CONFIG_MFD_RTSX_USB=m # CONFIG_MFD_SEC_CORE is not set # CONFIG_MFD_SI476X_CORE is not set # CONFIG_MFD_SKY81452 is not set @@ -3074,6 +3106,8 @@ CONFIG_MII=m CONFIG_MINIX_FS=m CONFIG_MINIX_SUBPARTITION=y CONFIG_MISC_FILESYSTEMS=y +CONFIG_MISC_RTSX_PCI=m +CONFIG_MISC_RTSX_USB=m CONFIG_MISDN_AVMFRITZ=m CONFIG_MISDN_DSP=m CONFIG_MISDN_HFCMULTI=m @@ -3103,6 +3137,7 @@ CONFIG_MLX5_MPFS=y # CONFIG_MLX90614 is not set CONFIG_MLX_CPLD_PLATFORM=m CONFIG_MLXFW=m +CONFIG_MLXREG_HOTPLUG=m CONFIG_MLXSW_CORE_HWMON=y CONFIG_MLXSW_CORE=m CONFIG_MLXSW_CORE_THERMAL=y @@ -3126,6 +3161,7 @@ CONFIG_MMC_BLOCK=m CONFIG_MMC_BLOCK_MINORS=8 CONFIG_MMC_CAVIUM_THUNDERX=m CONFIG_MMC_CB710=m +CONFIG_MMC_CQHCI=m # CONFIG_MMC_DEBUG is not set # CONFIG_MMC_DW_EXYNOS is not set CONFIG_MMC_DW_K3=m @@ -3228,6 +3264,7 @@ CONFIG_MSM_MMCC_8974=m CONFIG_MSM_MMCC_8996=m CONFIG_MSPRO_BLOCK=m CONFIG_MT7601U=m +CONFIG_MT76x2E=m # CONFIG_MTD_ABSENT is not set # CONFIG_MTD_AFS_PARTS is not set # CONFIG_MTD_AR7_PARTS is not set @@ -3267,6 +3304,7 @@ CONFIG_MTD_MAP_BANK_WIDTH_4=y # CONFIG_MTD_NAND_ECC_BCH is not set # CONFIG_MTD_NAND_HISI504 is not set # CONFIG_MTD_NAND is not set +CONFIG_MTD_NAND_MARVELL=m # CONFIG_MTD_NAND_OMAP2 is not set # CONFIG_MTD_NAND_OXNAS is not set CONFIG_MTD_NAND_PXA3xx=m @@ -3386,9 +3424,11 @@ CONFIG_NET_CORE=y # CONFIG_NET_DCCPPROBE is not set CONFIG_NETDEVICES=y CONFIG_NET_DEVLINK=m +# CONFIG_NETDEVSIM is not set CONFIG_NET_DROP_MONITOR=y CONFIG_NET_DSA_BCM_SF2=m CONFIG_NET_DSA_HWMON=y +# CONFIG_NET_DSA_LEGACY is not set CONFIG_NET_DSA_LOOP=m CONFIG_NET_DSA=m CONFIG_NET_DSA_MT7530=m @@ -3573,6 +3613,7 @@ CONFIG_NET_VENDOR_BROADCOM=y CONFIG_NET_VENDOR_CAVIUM=y CONFIG_NET_VENDOR_CHELSIO=y # CONFIG_NET_VENDOR_CISCO is not set +# CONFIG_NET_VENDOR_CORTINA is not set # CONFIG_NET_VENDOR_DEC is not set CONFIG_NET_VENDOR_DLINK=y CONFIG_NET_VENDOR_EMULEX=y @@ -3606,6 +3647,7 @@ CONFIG_NET_VENDOR_SILAN=y CONFIG_NET_VENDOR_SIS=y CONFIG_NET_VENDOR_SMSC=y CONFIG_NET_VENDOR_SNI=y +CONFIG_NET_VENDOR_SOCIONEXT=y # CONFIG_NET_VENDOR_SOLARFLARE is not set CONFIG_NET_VENDOR_STMICRO=y # CONFIG_NET_VENDOR_SUN is not set @@ -3684,6 +3726,10 @@ CONFIG_NFC_TRF7970A=m CONFIG_NF_DUP_IPV4=m CONFIG_NF_DUP_IPV6=m CONFIG_NF_DUP_NETDEV=m +CONFIG_NF_FLOW_TABLE_INET=m +CONFIG_NF_FLOW_TABLE_IPV4=m +CONFIG_NF_FLOW_TABLE_IPV6=m +CONFIG_NF_FLOW_TABLE=m CONFIG_NF_LOG_ARP=m CONFIG_NF_LOG_BRIDGE=m CONFIG_NF_LOG_IPV4=m @@ -3745,6 +3791,7 @@ CONFIG_NFT_FIB_INET=m CONFIG_NFT_FIB_IPV4=m CONFIG_NFT_FIB_IPV6=m CONFIG_NFT_FIB_NETDEV=m +CONFIG_NFT_FLOW_OFFLOAD=m CONFIG_NFT_FWD_NETDEV=m CONFIG_NFT_HASH=m CONFIG_NFT_LIMIT=m @@ -3986,6 +4033,7 @@ CONFIG_PCIEAER=y CONFIG_PCIE_ARMADA_8K=y # CONFIG_PCIEASPM_DEBUG is not set CONFIG_PCIEASPM=y +CONFIG_PCIE_CADENCE_HOST=y CONFIG_PCIE_DPC=y CONFIG_PCIE_DW_HOST_ECAM=y CONFIG_PCIE_DW_HOST=y @@ -4000,6 +4048,7 @@ CONFIG_PCIEPORTBUS=y CONFIG_PCIE_PTM=y CONFIG_PCIE_QCOM=y CONFIG_PCIE_ROCKCHIP=y +CONFIG_PCIE_XILINX_NWL=y # CONFIG_PCI_FTPCI100 is not set CONFIG_PCI_HERMES=m CONFIG_PCI_HISI=y @@ -4086,6 +4135,7 @@ CONFIG_PINCONF=y CONFIG_PINCTRL_AMD=y # CONFIG_PINCTRL_APQ8064 is not set # CONFIG_PINCTRL_APQ8084 is not set +CONFIG_PINCTRL_AXP209=m # CONFIG_PINCTRL_BAYTRAIL is not set # CONFIG_PINCTRL_BROXTON is not set # CONFIG_PINCTRL_CANNONLAKE is not set @@ -4100,6 +4150,7 @@ CONFIG_PINCTRL_MAX77620=m # CONFIG_PINCTRL_MDM9615 is not set # CONFIG_PINCTRL_MESON8B is not set # CONFIG_PINCTRL_MESON8 is not set +CONFIG_PINCTRL_MESON_AXG=y # CONFIG_PINCTRL_MESON_GXBB is not set # CONFIG_PINCTRL_MESON_GXL is not set # CONFIG_PINCTRL_MSM8660 is not set @@ -4107,6 +4158,7 @@ CONFIG_PINCTRL_MSM8916=y # CONFIG_PINCTRL_MSM8960 is not set # CONFIG_PINCTRL_MSM8994 is not set CONFIG_PINCTRL_MSM8996=y +CONFIG_PINCTRL_MSM8998=m # CONFIG_PINCTRL_MSM8X74 is not set CONFIG_PINCTRL_MSM=y CONFIG_PINCTRL_MVEBU=y @@ -4232,9 +4284,11 @@ CONFIG_PWRSEQ_SIMPLE=y # CONFIG_QCA7000 is not set # CONFIG_QCA7000_SPI is not set # CONFIG_QCA7000_UART is not set +CONFIG_QCOM_A53PLL=m CONFIG_QCOM_ADSP_PIL=m CONFIG_QCOM_APCS_IPC=m CONFIG_QCOM_BAM_DMA=y +CONFIG_QCOM_CLK_APCS_MSM8916=m CONFIG_QCOM_CLK_RPM=m CONFIG_QCOM_CLK_SMD_RPM=m CONFIG_QCOM_COINCELL=m @@ -4327,6 +4381,7 @@ CONFIG_RANDOMIZE_MODULE_REGION_FULL=y CONFIG_RAS_CEC=y CONFIG_RASPBERRYPI_FIRMWARE=y CONFIG_RASPBERRYPI_POWER=y +# CONFIG_RAVE_SP_CORE is not set CONFIG_RAW_DRIVER=y # CONFIG_RBTREE_TEST is not set CONFIG_RC_ATI_REMOTE=m @@ -4433,7 +4488,6 @@ CONFIG_RENESAS_PHY=m CONFIG_RESET_CONTROLLER=y CONFIG_RESET_GPIO=y CONFIG_RESET_HISI=y -# CONFIG_RESET_HSDK_V1 is not set CONFIG_RESET_SIMPLE=y # CONFIG_RESET_TI_SCI is not set # CONFIG_RESET_TI_SYSCON is not set @@ -4518,6 +4572,7 @@ CONFIG_RTC_DRV_ARMADA38X=m CONFIG_RTC_DRV_BQ32K=m CONFIG_RTC_DRV_BQ4802=m CONFIG_RTC_DRV_CMOS=y +CONFIG_RTC_DRV_CROS_EC=m CONFIG_RTC_DRV_DS1286=m # CONFIG_RTC_DRV_DS1302 is not set CONFIG_RTC_DRV_DS1305=m @@ -4599,7 +4654,7 @@ CONFIG_RTC_DRV_WM831X=m CONFIG_RTC_DRV_WM8350=m CONFIG_RTC_DRV_X1205=m CONFIG_RTC_DRV_XGENE=m -# CONFIG_RTC_DRV_ZYNQMP is not set +CONFIG_RTC_DRV_ZYNQMP=m # CONFIG_RTC_DS1685_PROC_REGS is not set CONFIG_RTC_DS1685_SYSFS_REGS=y CONFIG_RTC_HCTOSYS_DEVICE="rtc0" @@ -4636,6 +4691,7 @@ CONFIG_RTLLIB=m # CONFIG_RTLWIFI_DEBUG is not set CONFIG_RTLWIFI=m # CONFIG_RTS5208 is not set +CONFIG_RUNTIME_TESTING_MENU=y CONFIG_S2IO=m # CONFIG_SAMPLES is not set # CONFIG_SAMSUNG_USBPHY is not set @@ -4646,13 +4702,13 @@ CONFIG_SATA_AHCI=y # CONFIG_SATA_DWC is not set # CONFIG_SATA_HIGHBANK is not set # CONFIG_SATA_INIC162X is not set -CONFIG_SATA_MOBILE_LPM_POLICY=3 +CONFIG_SATA_MOBILE_LPM_POLICY=0 CONFIG_SATA_MV=m # CONFIG_SATA_NV is not set CONFIG_SATA_PMP=y # CONFIG_SATA_PROMISE is not set # CONFIG_SATA_QSTOR is not set -# CONFIG_SATA_SIL24 is not set +CONFIG_SATA_SIL24=m # CONFIG_SATA_SIL is not set # CONFIG_SATA_SIS is not set # CONFIG_SATA_SVW is not set @@ -4784,6 +4840,7 @@ CONFIG_SCTP_COOKIE_HMAC_SHA1=y # CONFIG_SCTP_DEFAULT_COOKIE_HMAC_MD5 is not set # CONFIG_SCTP_DEFAULT_COOKIE_HMAC_NONE is not set CONFIG_SCTP_DEFAULT_COOKIE_HMAC_SHA1=y +CONFIG_SD_ADC_MODULATOR=m CONFIG_SDIO_UART=m CONFIG_SECCOMP=y CONFIG_SECONDARY_TRUSTED_KEYRING=y @@ -4962,6 +5019,7 @@ CONFIG_SENSORS_VT1211=m CONFIG_SENSORS_VT8231=m CONFIG_SENSORS_W83627EHF=m CONFIG_SENSORS_W83627HF=m +CONFIG_SENSORS_W83773G=m CONFIG_SENSORS_W83781D=m CONFIG_SENSORS_W83791D=m CONFIG_SENSORS_W83792D=m @@ -5060,6 +5118,7 @@ CONFIG_SH_ETH=m # CONFIG_SIGMA is not set CONFIG_SIGNED_PE_FILE_VERIFICATION=y CONFIG_SIMPLE_PM_BUS=y +# CONFIG_SIOX is not set CONFIG_SIS190=m CONFIG_SIS900=m # CONFIG_SKFP is not set @@ -5072,6 +5131,8 @@ CONFIG_SLAB_FREELIST_HARDENED=y CONFIG_SLAB_FREELIST_RANDOM=y CONFIG_SLAB_MERGE_DEFAULT=y # CONFIG_SLICOSS is not set +CONFIG_SLIMBUS=m +CONFIG_SLIM_QCOM_CTRL=m CONFIG_SLIP_COMPRESSED=y CONFIG_SLIP=m # CONFIG_SLIP_MODE_SLIP6 is not set @@ -5295,6 +5356,7 @@ CONFIG_SND_SOC_HDMI_CODEC=m # CONFIG_SND_SOC_IMX_ES8328 is not set # CONFIG_SND_SOC_INNO_RK3036 is not set CONFIG_SND_SOC=m +CONFIG_SND_SOC_MAX98373=m # CONFIG_SND_SOC_MAX98504 is not set # CONFIG_SND_SOC_MAX9860 is not set CONFIG_SND_SOC_MAX98927=m @@ -5307,6 +5369,8 @@ CONFIG_SND_SOC_NAU8824=m # CONFIG_SND_SOC_PCM179X_I2C is not set # CONFIG_SND_SOC_PCM179X is not set # CONFIG_SND_SOC_PCM179X_SPI is not set +CONFIG_SND_SOC_PCM186X_I2C=m +CONFIG_SND_SOC_PCM186X_SPI=m # CONFIG_SND_SOC_PCM3168A_I2C is not set # CONFIG_SND_SOC_PCM3168A_SPI is not set CONFIG_SND_SOC_PCM512x_I2C=m @@ -5337,6 +5401,7 @@ CONFIG_SND_SOC_SPDIF=m # CONFIG_SND_SOC_TAS5086 is not set # CONFIG_SND_SOC_TAS571X is not set # CONFIG_SND_SOC_TAS5720 is not set +CONFIG_SND_SOC_TAS6424=m CONFIG_SND_SOC_TEGRA20_AC97=m CONFIG_SND_SOC_TEGRA20_DAS=m CONFIG_SND_SOC_TEGRA20_I2S=m @@ -5357,9 +5422,12 @@ CONFIG_SND_SOC_TEGRA_SGTL5000=m # 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_TLV320AIC32X4_I2C=m +CONFIG_SND_SOC_TLV320AIC32X4_SPI=m # CONFIG_SND_SOC_TLV320AIC3X is not set CONFIG_SND_SOC_TPA6130A2=m CONFIG_SND_SOC_TS3A227E=m +CONFIG_SND_SOC_TSCS42XX=m # CONFIG_SND_SOC_WM8510 is not set # CONFIG_SND_SOC_WM8523 is not set CONFIG_SND_SOC_WM8524=m @@ -5429,6 +5497,9 @@ CONFIG_SONY_FF=y # CONFIG_SONYPI is not set CONFIG_SOUND=m CONFIG_SOUND_OSS_CORE_PRECLAIM=y +CONFIG_SOUNDWIRE_BUS=m +CONFIG_SOUNDWIRE_CADENCE=m +CONFIG_SOUNDWIRE=y CONFIG_SPARSE_IRQ=y CONFIG_SPARSEMEM_VMEMMAP=y CONFIG_SPARSE_RCU_POINTER=y @@ -5476,8 +5547,9 @@ CONFIG_SPI_THUNDERX=m # CONFIG_SPI_XILINX is not set CONFIG_SPI_XLP=m CONFIG_SPI=y -# CONFIG_SPI_ZYNQMP_GQSPI is not set +CONFIG_SPI_ZYNQMP_GQSPI=m CONFIG_SPMI_MSM_PMIC_ARB=y +CONFIG_SPMI_PMIC_CLKDIV=m CONFIG_SPMI=y # CONFIG_SQUASHFS_4K_DEVBLK_SIZE is not set # CONFIG_SQUASHFS_EMBEDDED is not set @@ -5524,12 +5596,16 @@ CONFIG_STRICT_DEVMEM=y # CONFIG_STRING_SELFTEST is not set CONFIG_STRIP_ASM_SYMS=y # CONFIG_STRIP is not set +CONFIG_STUB_CLK_HI3660=y CONFIG_STUB_CLK_HI6220=y +CONFIG_ST_UVIS25_I2C=m +CONFIG_ST_UVIS25=m +CONFIG_ST_UVIS25_SPI=m # CONFIG_SUN4I_EMAC is not set CONFIG_SUN4I_GPADC=m CONFIG_SUN50I_A64_CCU=y # CONFIG_SUN8I_A83T_CCU is not set -# CONFIG_SUN8I_DE2_CCU is not set +CONFIG_SUN8I_DE2_CCU=y CONFIG_SUN8I_H3_CCU=y CONFIG_SUN8I_R_CCU=y # CONFIG_SUN8I_V3S_CCU is not set @@ -5644,6 +5720,7 @@ CONFIG_TEGRA_IOMMU_SMMU=y CONFIG_TEGRA_IVC=y CONFIG_TEGRA_MC=y CONFIG_TEGRA_SOCTHERM=m +CONFIG_TEGRA_VDE=m CONFIG_TEGRA_WATCHDOG=m CONFIG_TEHUTI=m CONFIG_TELCLOCK=m @@ -5707,11 +5784,12 @@ CONFIG_TIFM_CORE=m CONFIG_TIGON3_HWMON=y CONFIG_TIGON3=m # CONFIG_TIMB_DMA is not set -# CONFIG_TIMER_STATS is not set +CONFIG_TINYDRM_ILI9225=m CONFIG_TINYDRM_MI0283QT=m CONFIG_TINYDRM_MIPI_DBI=m # CONFIG_TINYDRM_REPAPER is not set # CONFIG_TINYDRM_ST7586 is not set +CONFIG_TINYDRM_ST7735R=m CONFIG_TIPC=m # CONFIG_TIPC_MEDIA_IB is not set CONFIG_TIPC_MEDIA_UDP=y @@ -5870,6 +5948,7 @@ CONFIG_UIO_SERCOS3=m CONFIG_ULI526X=m # CONFIG_ULTRIX_PARTITION is not set # CONFIG_UNISYSSPAR is not set +# CONFIG_UNISYS_VISORBUS is not set CONFIG_UNIX98_PTYS=y CONFIG_UNIX_DIAG=m CONFIG_UNIXWARE_DISKLABEL=y @@ -6096,7 +6175,7 @@ CONFIG_USB_OHCI_HCD_PLATFORM=m # CONFIG_USB_OHCI_HCD_SSB is not set CONFIG_USB_OHCI_HCD=y # CONFIG_USB_OTG_BLACKLIST_HUB is not set -# CONFIG_USB_OTG_FSM is not set +CONFIG_USB_OTG_FSM=m # CONFIG_USB_OTG_WHITELIST is not set CONFIG_USB_OTG=y # CONFIG_USB_OXU210HP_HCD is not set @@ -6234,6 +6313,7 @@ CONFIG_USB_WDM=m # CONFIG_USB_WUSB_CBAF_DEBUG is not set CONFIG_USB_WUSB_CBAF=m CONFIG_USB_WUSB=m +CONFIG_USB_XHCI_DBGCAP=y CONFIG_USB_XHCI_HCD=y CONFIG_USB_XHCI_MVEBU=m CONFIG_USB_XHCI_PLATFORM=m @@ -6394,6 +6474,7 @@ CONFIG_VIRTIO_BLK=m # CONFIG_VIRTIO_BLK_SCSI is not set CONFIG_VIRTIO_CONSOLE=m CONFIG_VIRTIO_INPUT=m +CONFIG_VIRTIO_MENU=y # CONFIG_VIRTIO_MMIO_CMDLINE_DEVICES is not set CONFIG_VIRTIO_MMIO=m CONFIG_VIRTIO_NET=m @@ -6534,8 +6615,9 @@ CONFIG_XGENE_PMU=y CONFIG_XGENE_SLIMPRO_MBOX=m # CONFIG_XILINX_DMA is not set CONFIG_XILINX_GMII2RGMII=m +CONFIG_XILINX_VCU=m # CONFIG_XILINX_WATCHDOG is not set -# CONFIG_XILINX_ZYNQMP_DMA is not set +CONFIG_XILINX_ZYNQMP_DMA=m CONFIG_XILLYBUS=m # CONFIG_XILLYBUS_OF is not set CONFIG_XILLYBUS_PCIE=m @@ -6559,6 +6641,7 @@ CONFIG_ZEROPLUS_FF=y CONFIG_ZISOFS=y CONFIG_ZLIB_DEFLATE=y CONFIG_ZLIB_INFLATE=y +CONFIG_ZOPT2201=m # CONFIG_ZPA2326 is not set CONFIG_ZRAM=m # CONFIG_ZRAM_WRITEBACK is not set diff --git a/kernel-armv7hl-debug.config b/kernel-armv7hl-debug.config index 44809c3e7..30c4497ba 100644 --- a/kernel-armv7hl-debug.config +++ b/kernel-armv7hl-debug.config @@ -44,6 +44,7 @@ CONFIG_ACPI_ALS=m CONFIG_ACPI_DEBUG=y # CONFIG_ACPI_NFIT is not set CONFIG_ACPI_PCI_SLOT=y +CONFIG_ACPI_SPCR_TABLE=y # CONFIG_ACQUIRE_WDT is not set # CONFIG_AD2S1200 is not set # CONFIG_AD2S1210 is not set @@ -257,6 +258,7 @@ CONFIG_ARM_AMBA=y CONFIG_ARM_APPENDED_DTB=y CONFIG_ARM_ARCH_TIMER_EVTSTREAM=y CONFIG_ARM_ARCH_TIMER=y +CONFIG_ARM_ARMADA_37XX_CPUFREQ=m CONFIG_ARM_ASM_UNIFIED=y CONFIG_ARM_ATAG_DTB_COMPAT=y CONFIG_ARM_BIG_LITTLE_CPUFREQ=m @@ -317,6 +319,7 @@ CONFIG_ARM_PL172_MPMC=m CONFIG_ARM_PMU=y # CONFIG_ARM_PSCI_CHECKER is not set CONFIG_ARM_PSCI=y +# CONFIG_ARM_PTDUMP_DEBUGFS is not set # CONFIG_ARM_PTDUMP is not set CONFIG_ARM_RK3399_DMC_DEVFREQ=m CONFIG_ARM_SCPI_CPUFREQ=m @@ -361,6 +364,7 @@ CONFIG_ATH10K_DEBUGFS=y CONFIG_ATH10K=m CONFIG_ATH10K_PCI=m CONFIG_ATH10K_SDIO=m +# CONFIG_ATH10K_SPECTRAL is not set # CONFIG_ATH10K_TRACING is not set CONFIG_ATH10K_USB=m CONFIG_ATH5K_DEBUG=y @@ -374,6 +378,7 @@ CONFIG_ATH6KL_USB=m CONFIG_ATH9K_AHB=y CONFIG_ATH9K_BTCOEX_SUPPORT=y # CONFIG_ATH9K_CHANNEL_CONTEXT is not set +# CONFIG_ATH9K_COMMON_SPECTRAL is not set CONFIG_ATH9K_DEBUGFS=y # CONFIG_ATH9K_DEBUG is not set # CONFIG_ATH9K_DYNACK is not set @@ -581,6 +586,7 @@ CONFIG_BLK_DEV_LOOP=m CONFIG_BLK_DEV_LOOP_MIN_COUNT=0 CONFIG_BLK_DEV_MD=y CONFIG_BLK_DEV_NBD=m +CONFIG_BLK_DEV_NULL_BLK_FAULT_INJECTION=y CONFIG_BLK_DEV_NULL_BLK=m CONFIG_BLK_DEV_NVME=m # CONFIG_BLK_DEV_NVME_SCSI is not set @@ -637,6 +643,7 @@ CONFIG_BOOT_PRINTK_DELAY=y CONFIG_BOUNCE=y CONFIG_BPF_JIT_ALWAYS_ON=y CONFIG_BPF_JIT=y +CONFIG_BPF_KPROBE_OVERRIDE=y CONFIG_BPF_STREAM_PARSER=y CONFIG_BPF_SYSCALL=y CONFIG_BPQETHER=m @@ -692,7 +699,7 @@ CONFIG_BT_HCIBPA10X=m CONFIG_BT_HCIBT3C=m CONFIG_BT_HCIBTSDIO=m CONFIG_BT_HCIBTUART=m -CONFIG_BT_HCIBTUSB_AUTOSUSPEND=y +# CONFIG_BT_HCIBTUSB_AUTOSUSPEND is not set CONFIG_BT_HCIBTUSB_BCM=y CONFIG_BT_HCIBTUSB=m CONFIG_BT_HCIBTUSB_RTL=y @@ -871,6 +878,7 @@ CONFIG_CHARGER_TWL4030=m # CONFIG_CHASH_SELFTEST is not set # CONFIG_CHASH_STATS is not set CONFIG_CHECKPOINT_RESTORE=y +CONFIG_CHELSIO_IPSEC_INLINE=y CONFIG_CHELSIO_T1_1G=y CONFIG_CHELSIO_T1=m CONFIG_CHELSIO_T3=m @@ -896,6 +904,7 @@ CONFIG_CIFS_NFSD_EXPORT=y CONFIG_CIFS_POSIX=y CONFIG_CIFS_SMB2=y # CONFIG_CIFS_SMB311 is not set +# CONFIG_CIFS_SMB_DIRECT is not set # CONFIG_CIFS_STATS2 is not set CONFIG_CIFS_STATS=y CONFIG_CIFS_UPCALL=y @@ -1057,7 +1066,6 @@ CONFIG_CRYPTO_DEV_FSL_CAAM_RNG_API=m CONFIG_CRYPTO_DEV_HIFN_795X=m CONFIG_CRYPTO_DEV_HIFN_795X_RNG=y CONFIG_CRYPTO_DEV_MARVELL_CESA=m -CONFIG_CRYPTO_DEV_MV_CESA=m # CONFIG_CRYPTO_DEV_MXC_SCC is not set # CONFIG_CRYPTO_DEV_MXS_DCP is not set CONFIG_CRYPTO_DEV_NITROX_CNN55XX=m @@ -1230,6 +1238,7 @@ CONFIG_DEBUG_VM_PGFLAGS=y CONFIG_DEBUG_VM=y # CONFIG_DEBUG_WQ_FORCE_RR_CPU is not set # CONFIG_DEBUG_WW_MUTEX_SLOWPATH is not set +CONFIG_DEBUG_WX=y # CONFIG_DECNET is not set CONFIG_DEFAULT_CFQ=y CONFIG_DEFAULT_HOSTNAME="(none)" @@ -1306,6 +1315,7 @@ CONFIG_DM_SNAPSHOT=y CONFIG_DM_SWITCH=m CONFIG_DM_THIN_PROVISIONING=m CONFIG_DM_UEVENT=y +CONFIG_DM_UNSTRIPED=m CONFIG_DM_VERITY_FEC=y CONFIG_DM_VERITY=m CONFIG_DM_ZERO=y @@ -1329,7 +1339,7 @@ CONFIG_DRM_AMD_DC=y CONFIG_DRM_AMDGPU_CIK=y # CONFIG_DRM_AMDGPU_GART_DEBUGFS is not set CONFIG_DRM_AMDGPU=m -# CONFIG_DRM_AMDGPU_SI is not set +CONFIG_DRM_AMDGPU_SI=y CONFIG_DRM_AMDGPU_USERPTR=y CONFIG_DRM_AMD_POWERPLAY=y CONFIG_DRM_ANALOGIX_ANX78XX=m @@ -1348,22 +1358,19 @@ CONFIG_DRM_DW_HDMI_I2S_AUDIO=m CONFIG_DRM_DW_HDMI=m CONFIG_DRM_ETNAVIV=m # CONFIG_DRM_ETNAVIV_REGISTER_LOGGING is not set +CONFIG_DRM_ETNAVIV_THERMAL=y CONFIG_DRM_EXYNOS5433_DECON=y CONFIG_DRM_EXYNOS7_DECON=y CONFIG_DRM_EXYNOS_DPI=y CONFIG_DRM_EXYNOS_DP=y CONFIG_DRM_EXYNOS_DSI=y -CONFIG_DRM_EXYNOS_FIMC=y CONFIG_DRM_EXYNOS_FIMD=y CONFIG_DRM_EXYNOS_G2D=y -CONFIG_DRM_EXYNOS_GSC=y CONFIG_DRM_EXYNOS_HDMI=y # CONFIG_DRM_EXYNOS_IOMMU is not set -CONFIG_DRM_EXYNOS_IPP=y CONFIG_DRM_EXYNOS=m CONFIG_DRM_EXYNOS_MIC=y CONFIG_DRM_EXYNOS_MIXER=y -CONFIG_DRM_EXYNOS_ROTATOR=y CONFIG_DRM_EXYNOS_VIDI=y CONFIG_DRM_FBDEV_EMULATION=y CONFIG_DRM_FBDEV_OVERALLOC=100 @@ -1372,8 +1379,8 @@ CONFIG_DRM_HDLCD=m # CONFIG_DRM_HDLCD_SHOW_UNDERRUN is not set CONFIG_DRM_HISI_HIBMC=m CONFIG_DRM_I2C_ADV7511_AUDIO=y -# CONFIG_DRM_I2C_ADV7511_CEC is not set -# CONFIG_DRM_I2C_ADV7511 is not set +CONFIG_DRM_I2C_ADV7511_CEC=y +CONFIG_DRM_I2C_ADV7511=m CONFIG_DRM_I2C_ADV7533=y CONFIG_DRM_I2C_CH7006=m CONFIG_DRM_I2C_NXP_TDA998X=m @@ -1423,6 +1430,7 @@ CONFIG_DRM_OMAP_PANEL_SHARP_LS037V7DW01=m CONFIG_DRM_OMAP_PANEL_SONY_ACX565AKM=m CONFIG_DRM_OMAP_PANEL_TPO_TD028TTEC1=m CONFIG_DRM_OMAP_PANEL_TPO_TD043MTEA1=m +CONFIG_DRM_PANEL_ILITEK_IL9322=m # CONFIG_DRM_PANEL_INNOLUX_P079ZCA is not set # CONFIG_DRM_PANEL_JDI_LT070ME05000 is not set CONFIG_DRM_PANEL_LG_LG4573=m @@ -1513,6 +1521,7 @@ CONFIG_DVB_FIREDTV=m CONFIG_DVB_HOPPER=m CONFIG_DVB_MANTIS=m CONFIG_DVB_MAX_ADAPTERS=8 +# CONFIG_DVB_MMAP is not set CONFIG_DVB_MN88472=m CONFIG_DVB_MN88473=m CONFIG_DVB_NETUP_UNIDVB=m @@ -1526,6 +1535,7 @@ CONFIG_DVB_PT1=m CONFIG_DVB_SMIPCIE=m CONFIG_DVB_TTUSB_BUDGET=m CONFIG_DVB_TTUSB_DEC=m +# CONFIG_DVB_ULE_DEBUG is not set CONFIG_DVB_USB_A800=m CONFIG_DVB_USB_AF9005=m CONFIG_DVB_USB_AF9005_REMOTE=m @@ -1680,6 +1690,7 @@ CONFIG_F2FS_FS_SECURITY=y CONFIG_F2FS_FS_XATTR=y # CONFIG_F2FS_IO_TRACE is not set CONFIG_F2FS_STAT_FS=y +CONFIG_FAIL_FUNCTION=y # CONFIG_FAIL_FUTEX is not set CONFIG_FAIL_IO_TIMEOUT=y CONFIG_FAIL_MAKE_REQUEST=y @@ -1778,6 +1789,7 @@ CONFIG_FCOE=m CONFIG_FEALNX=m CONFIG_FEC=m CONFIG_FHANDLE=y +# CONFIG_FIND_BIT_BENCHMARK is not set # CONFIG_FIREWIRE is not set CONFIG_FIREWIRE_NET=m CONFIG_FIREWIRE_NOSY=m @@ -1825,6 +1837,7 @@ CONFIG_FTRACE_MCOUNT_RECORD=y # CONFIG_FTRACE_STARTUP_TEST is not set CONFIG_FTRACE_SYSCALLS=y CONFIG_FTRACE=y +# CONFIG_FTWDT010_WATCHDOG is not set # CONFIG_FUNCTION_GRAPH_TRACER is not set CONFIG_FUNCTION_PROFILER=y CONFIG_FUNCTION_TRACER=y @@ -1910,9 +1923,11 @@ CONFIG_GPIO_PCA953X_IRQ=y CONFIG_GPIO_PCA953X=y CONFIG_GPIO_PCF857X=m # CONFIG_GPIO_PCH is not set +# CONFIG_GPIO_PCIE_IDIO_24 is not set CONFIG_GPIO_PCI_IDIO_16=m # CONFIG_GPIO_PISOSR is not set CONFIG_GPIO_PL061=y +CONFIG_GPIO_RASPBERRYPI_EXP=m # CONFIG_GPIO_RDC321X is not set # CONFIG_GPIO_SCH311X is not set CONFIG_GPIO_STMPE=y @@ -1949,6 +1964,7 @@ CONFIG_HAMACHI=m CONFIG_HAMRADIO=y CONFIG_HANGCHECK_TIMER=m CONFIG_HAPPYMEAL=m +CONFIG_HARDENED_USERCOPY_FALLBACK=y CONFIG_HARDENED_USERCOPY=y CONFIG_HAVE_ARM_ARCH_TIMER=y CONFIG_HAVE_ARM_TWD=y @@ -1998,6 +2014,7 @@ CONFIG_HID_GYRATION=m CONFIG_HID_HOLTEK=m CONFIG_HID_ICADE=m CONFIG_HID_ITE=m +CONFIG_HID_JABRA=m CONFIG_HID_KENSINGTON=m CONFIG_HID_KEYTOUCH=m CONFIG_HID_KYE=m @@ -2140,6 +2157,7 @@ CONFIG_HWMON=y CONFIG_HW_PERF_EVENTS=y CONFIG_HWPOISON_INJECT=m CONFIG_HW_RANDOM_BCM2835=m +CONFIG_HW_RANDOM_EXYNOS=m CONFIG_HW_RANDOM_IMX_RNGC=m CONFIG_HW_RANDOM_MESON=m CONFIG_HW_RANDOM_MSM=m @@ -2148,7 +2166,7 @@ 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_TPM=y CONFIG_HW_RANDOM_VIRTIO=m CONFIG_HW_RANDOM=y CONFIG_HWSPINLOCK_OMAP=m @@ -2189,6 +2207,7 @@ CONFIG_I2C_DIOLAN_U2C=m # CONFIG_I2C_EG20T is not set # CONFIG_I2C_EMEV2 is not set CONFIG_I2C_EXYNOS5=m +# CONFIG_I2C_GPIO_FAULT_INJECTOR is not set CONFIG_I2C_GPIO=m CONFIG_I2C_HELPER_AUTO=y CONFIG_I2C_HID=m @@ -2276,6 +2295,7 @@ CONFIG_IGB_HWMON=y CONFIG_IGB=m CONFIG_IGBVF=m CONFIG_IIO_BUFFER_CB=m +CONFIG_IIO_BUFFER_HW_CONSUMER=m CONFIG_IIO_BUFFER=y CONFIG_IIO_CONFIGFS=m CONFIG_IIO_CONSUMERS_PER_TRIGGER=2 @@ -2482,6 +2502,7 @@ CONFIG_IP6_NF_MATCH_MH=m CONFIG_IP6_NF_MATCH_OPTS=m CONFIG_IP6_NF_MATCH_RPFILTER=m CONFIG_IP6_NF_MATCH_RT=m +CONFIG_IP6_NF_MATCH_SRH=m CONFIG_IP6_NF_NAT=m CONFIG_IP6_NF_RAW=m CONFIG_IP6_NF_SECURITY=m @@ -2614,7 +2635,6 @@ CONFIG_IPVTAP=m # CONFIG_IPW2200_DEBUG is not set # CONFIG_IPW2200 is not set CONFIG_IPWIRELESS=m -# CONFIG_IPX_INTERN is not set # CONFIG_IPX is not set # CONFIG_IRDA is not set CONFIG_IR_ENE=m @@ -2903,6 +2923,7 @@ CONFIG_LEDS_IS31FL32XX=m CONFIG_LEDS_LM3530=m # CONFIG_LEDS_LM355x is not set # CONFIG_LEDS_LM3642 is not set +CONFIG_LEDS_LM3692X=m # CONFIG_LEDS_LOCOMO is not set CONFIG_LEDS_LP3944=m CONFIG_LEDS_LP3952=m @@ -2939,6 +2960,7 @@ CONFIG_LEDS_TRIGGER_DISK=y CONFIG_LEDS_TRIGGER_GPIO=m CONFIG_LEDS_TRIGGER_HEARTBEAT=m CONFIG_LEDS_TRIGGER_MTD=y +CONFIG_LEDS_TRIGGER_NETDEV=m CONFIG_LEDS_TRIGGER_ONESHOT=m CONFIG_LEDS_TRIGGER_PANIC=y CONFIG_LEDS_TRIGGERS=y @@ -2971,11 +2993,11 @@ CONFIG_LIBFCOE=m CONFIG_LIQUIDIO_VF=m CONFIG_LIRC_BT829=m CONFIG_LIRC_IMON=m -CONFIG_LIRC=m CONFIG_LIRC_PARALLEL=m CONFIG_LIRC_SERIAL=m CONFIG_LIRC_SERIAL_TRANSMITTER=y CONFIG_LIRC_STAGING=y +CONFIG_LIRC=y CONFIG_LIRC_ZILOG=m # CONFIG_LIVEPATCH is not set # CONFIG_LKDTM is not set @@ -3148,6 +3170,7 @@ CONFIG_MEGARAID_MAILBOX=m CONFIG_MEGARAID_MM=m CONFIG_MEGARAID_NEWGEN=y CONFIG_MEGARAID_SAS=m +CONFIG_MELLANOX_PLATFORM=y CONFIG_MEMCG_SWAP_ENABLED=y CONFIG_MEMCG_SWAP=y CONFIG_MEMCG=y @@ -3196,6 +3219,7 @@ CONFIG_MFD_AXP20X=y CONFIG_MFD_BD9571MWV=m CONFIG_MFD_CORE=y # CONFIG_MFD_CPCAP is not set +CONFIG_MFD_CROS_EC_CHARDEV=m CONFIG_MFD_CROS_EC_I2C=m CONFIG_MFD_CROS_EC=m CONFIG_MFD_CROS_EC_SPI=m @@ -3239,8 +3263,6 @@ CONFIG_MFD_QCOM_RPM=m CONFIG_MFD_RK808=m # CONFIG_MFD_RN5T618 is not set # CONFIG_MFD_RT5033 is not set -CONFIG_MFD_RTSX_PCI=m -CONFIG_MFD_RTSX_USB=m CONFIG_MFD_SEC_CORE=y # CONFIG_MFD_SI476X_CORE is not set # CONFIG_MFD_SKY81452 is not set @@ -3256,7 +3278,7 @@ CONFIG_MFD_T7L66XB=y CONFIG_MFD_TC6387XB=y # CONFIG_MFD_TC6393XB is not set CONFIG_MFD_TI_AM335X_TSCADC=m -# CONFIG_MFD_TI_LMU is not set +CONFIG_MFD_TI_LMU=m # CONFIG_MFD_TI_LP873X is not set # CONFIG_MFD_TI_LP87565 is not set # CONFIG_MFD_TIMBERDALE is not set @@ -3294,6 +3316,8 @@ CONFIG_MII=m CONFIG_MINIX_FS=m CONFIG_MINIX_SUBPARTITION=y CONFIG_MISC_FILESYSTEMS=y +CONFIG_MISC_RTSX_PCI=m +CONFIG_MISC_RTSX_USB=m CONFIG_MISDN_AVMFRITZ=m CONFIG_MISDN_DSP=m CONFIG_MISDN_HFCMULTI=m @@ -3323,6 +3347,7 @@ CONFIG_MLX5_MPFS=y # CONFIG_MLX90614 is not set CONFIG_MLX_CPLD_PLATFORM=m CONFIG_MLXFW=m +CONFIG_MLXREG_HOTPLUG=m CONFIG_MLXSW_CORE_HWMON=y CONFIG_MLXSW_CORE=m CONFIG_MLXSW_CORE_THERMAL=y @@ -3345,6 +3370,7 @@ CONFIG_MMC_BCM2835=m CONFIG_MMC_BLOCK=m CONFIG_MMC_BLOCK_MINORS=8 CONFIG_MMC_CB710=m +CONFIG_MMC_CQHCI=m # CONFIG_MMC_DEBUG is not set CONFIG_MMC_DW_EXYNOS=m CONFIG_MMC_DW_K3=m @@ -3461,6 +3487,7 @@ CONFIG_MSM_MMCC_8974=m CONFIG_MSM_MMCC_8996=m CONFIG_MSPRO_BLOCK=m CONFIG_MT7601U=m +CONFIG_MT76x2E=m # CONFIG_MTD_ABSENT is not set # CONFIG_MTD_AFS_PARTS is not set # CONFIG_MTD_AR7_PARTS is not set @@ -3512,6 +3539,7 @@ CONFIG_MTD_NAND_GPIO=m CONFIG_MTD_NAND_GPMI_NAND=m # CONFIG_MTD_NAND_HISI504 is not set CONFIG_MTD_NAND=m +CONFIG_MTD_NAND_MARVELL=m # CONFIG_MTD_NAND_MTK is not set CONFIG_MTD_NAND_MXC=m CONFIG_MTD_NAND_NANDSIM=m @@ -3649,9 +3677,11 @@ CONFIG_NET_CORE=y # CONFIG_NET_DCCPPROBE is not set CONFIG_NETDEVICES=y CONFIG_NET_DEVLINK=m +# CONFIG_NETDEVSIM is not set CONFIG_NET_DROP_MONITOR=y CONFIG_NET_DSA_BCM_SF2=m CONFIG_NET_DSA_HWMON=y +# CONFIG_NET_DSA_LEGACY is not set CONFIG_NET_DSA_LOOP=m CONFIG_NET_DSA=m CONFIG_NET_DSA_MT7530=m @@ -3836,6 +3866,7 @@ CONFIG_NET_VENDOR_BROADCOM=y CONFIG_NET_VENDOR_CHELSIO=y # CONFIG_NET_VENDOR_CIRRUS is not set # CONFIG_NET_VENDOR_CISCO is not set +# CONFIG_NET_VENDOR_CORTINA is not set # CONFIG_NET_VENDOR_DEC is not set CONFIG_NET_VENDOR_DLINK=y CONFIG_NET_VENDOR_EMULEX=y @@ -3870,6 +3901,7 @@ CONFIG_NET_VENDOR_SILAN=y CONFIG_NET_VENDOR_SIS=y CONFIG_NET_VENDOR_SMSC=y # CONFIG_NET_VENDOR_SNI is not set +# CONFIG_NET_VENDOR_SOCIONEXT is not set # CONFIG_NET_VENDOR_SOLARFLARE is not set CONFIG_NET_VENDOR_STMICRO=y # CONFIG_NET_VENDOR_SUN is not set @@ -3948,6 +3980,10 @@ CONFIG_NFC_WILINK=m CONFIG_NF_DUP_IPV4=m CONFIG_NF_DUP_IPV6=m CONFIG_NF_DUP_NETDEV=m +CONFIG_NF_FLOW_TABLE_INET=m +CONFIG_NF_FLOW_TABLE_IPV4=m +CONFIG_NF_FLOW_TABLE_IPV6=m +CONFIG_NF_FLOW_TABLE=m CONFIG_NF_LOG_ARP=m CONFIG_NF_LOG_BRIDGE=m CONFIG_NF_LOG_IPV4=m @@ -4009,6 +4045,7 @@ CONFIG_NFT_FIB_INET=m CONFIG_NFT_FIB_IPV4=m CONFIG_NFT_FIB_IPV6=m CONFIG_NFT_FIB_NETDEV=m +CONFIG_NFT_FLOW_OFFLOAD=m CONFIG_NFT_FWD_NETDEV=m CONFIG_NFT_HASH=m CONFIG_NFT_LIMIT=m @@ -4294,6 +4331,7 @@ CONFIG_PCIEAER=y # CONFIG_PCIE_ARMADA_8K is not set # CONFIG_PCIEASPM_DEBUG is not set CONFIG_PCIEASPM=y +CONFIG_PCIE_CADENCE_HOST=y CONFIG_PCIE_DPC=y # CONFIG_PCIE_DW_HOST_ECAM is not set CONFIG_PCIE_DW_HOST=y @@ -4404,6 +4442,7 @@ CONFIG_PINCTRL_APQ8084=m CONFIG_PINCTRL_ARMADA_370=y CONFIG_PINCTRL_ARMADA_XP=y CONFIG_PINCTRL_AS3722=y +CONFIG_PINCTRL_AXP209=m # CONFIG_PINCTRL_BAYTRAIL is not set # CONFIG_PINCTRL_BROXTON is not set # CONFIG_PINCTRL_CANNONLAKE is not set @@ -4426,6 +4465,7 @@ CONFIG_PINCTRL_MSM8916=m CONFIG_PINCTRL_MSM8960=m # CONFIG_PINCTRL_MSM8994 is not set # CONFIG_PINCTRL_MSM8996 is not set +CONFIG_PINCTRL_MSM8998=m CONFIG_PINCTRL_MSM8X74=m CONFIG_PINCTRL_MVEBU=y CONFIG_PINCTRL_PALMAS=y @@ -4483,7 +4523,6 @@ CONFIG_POWER_RESET_AS3722=y # CONFIG_POWER_RESET_BRCMSTB is not set CONFIG_POWER_RESET_GPIO_RESTART=y CONFIG_POWER_RESET_GPIO=y -CONFIG_POWER_RESET_IMX=y # CONFIG_POWER_RESET_LTC2952 is not set CONFIG_POWER_RESET_MSM=y # CONFIG_POWER_RESET_QNAP is not set @@ -4572,9 +4611,11 @@ CONFIG_PXA_DMA=y # CONFIG_QCA7000 is not set # CONFIG_QCA7000_SPI is not set # CONFIG_QCA7000_UART is not set +CONFIG_QCOM_A53PLL=m CONFIG_QCOM_ADSP_PIL=m CONFIG_QCOM_APCS_IPC=m CONFIG_QCOM_BAM_DMA=m +CONFIG_QCOM_CLK_APCS_MSM8916=m CONFIG_QCOM_CLK_RPM=m CONFIG_QCOM_CLK_SMD_RPM=m CONFIG_QCOM_COINCELL=m @@ -4660,6 +4701,7 @@ CONFIG_RAID_ATTRS=m CONFIG_RAS_CEC=y CONFIG_RASPBERRYPI_FIRMWARE=y CONFIG_RASPBERRYPI_POWER=y +# CONFIG_RAVE_SP_CORE is not set CONFIG_RAW_DRIVER=y # CONFIG_RBTREE_TEST is not set CONFIG_RC_ATI_REMOTE=m @@ -4723,6 +4765,7 @@ CONFIG_REGULATOR_FIXED_VOLTAGE=y CONFIG_REGULATOR_GPIO=m CONFIG_REGULATOR_ISL6271A=m CONFIG_REGULATOR_ISL9305=m +CONFIG_REGULATOR_LM363X=m CONFIG_REGULATOR_LP3971=m CONFIG_REGULATOR_LP3972=m CONFIG_REGULATOR_LP872X=y @@ -4789,7 +4832,7 @@ CONFIG_RENESAS_PHY=m # CONFIG_RESET_ATTACK_MITIGATION is not set CONFIG_RESET_CONTROLLER=y CONFIG_RESET_GPIO=y -# CONFIG_RESET_HSDK_V1 is not set +CONFIG_RESET_IMX7=y CONFIG_RESET_SIMPLE=y # CONFIG_RESET_TI_SCI is not set # CONFIG_RESET_TI_SYSCON is not set @@ -4875,6 +4918,7 @@ CONFIG_RTC_DRV_AS3722=y CONFIG_RTC_DRV_BQ32K=m CONFIG_RTC_DRV_BQ4802=m CONFIG_RTC_DRV_CMOS=y +CONFIG_RTC_DRV_CROS_EC=m CONFIG_RTC_DRV_DA9052=m CONFIG_RTC_DRV_DA9055=m CONFIG_RTC_DRV_DS1286=m @@ -4926,6 +4970,7 @@ CONFIG_RTC_DRV_MC13XXX=m CONFIG_RTC_DRV_MSM6242=m CONFIG_RTC_DRV_MV=m CONFIG_RTC_DRV_MXC=m +CONFIG_RTC_DRV_MXC_V2=m CONFIG_RTC_DRV_OMAP=m CONFIG_RTC_DRV_PALMAS=m CONFIG_RTC_DRV_PCF2123=m @@ -5010,6 +5055,7 @@ CONFIG_RTLLIB=m # CONFIG_RTLWIFI_DEBUG is not set CONFIG_RTLWIFI=m # CONFIG_RTS5208 is not set +CONFIG_RUNTIME_TESTING_MENU=y CONFIG_S2IO=m CONFIG_S3C2410_WATCHDOG=m # CONFIG_SAMPLES is not set @@ -5022,13 +5068,13 @@ CONFIG_SATA_AHCI=y # CONFIG_SATA_DWC is not set CONFIG_SATA_HIGHBANK=m # CONFIG_SATA_INIC162X is not set -CONFIG_SATA_MOBILE_LPM_POLICY=3 +CONFIG_SATA_MOBILE_LPM_POLICY=0 CONFIG_SATA_MV=m # CONFIG_SATA_NV is not set CONFIG_SATA_PMP=y # CONFIG_SATA_PROMISE is not set # CONFIG_SATA_QSTOR is not set -# CONFIG_SATA_SIL24 is not set +CONFIG_SATA_SIL24=m # CONFIG_SATA_SIL is not set # CONFIG_SATA_SIS is not set # CONFIG_SATA_SVW is not set @@ -5160,6 +5206,7 @@ CONFIG_SCTP_COOKIE_HMAC_SHA1=y # CONFIG_SCTP_DEFAULT_COOKIE_HMAC_MD5 is not set # CONFIG_SCTP_DEFAULT_COOKIE_HMAC_NONE is not set CONFIG_SCTP_DEFAULT_COOKIE_HMAC_SHA1=y +CONFIG_SD_ADC_MODULATOR=m CONFIG_SDIO_UART=m CONFIG_SECCOMP=y CONFIG_SECONDARY_TRUSTED_KEYRING=y @@ -5341,6 +5388,7 @@ CONFIG_SENSORS_VT1211=m CONFIG_SENSORS_VT8231=m CONFIG_SENSORS_W83627EHF=m CONFIG_SENSORS_W83627HF=m +CONFIG_SENSORS_W83773G=m CONFIG_SENSORS_W83781D=m CONFIG_SENSORS_W83791D=m CONFIG_SENSORS_W83792D=m @@ -5369,7 +5417,8 @@ 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_OMAP=m +CONFIG_SERIAL_8250_OMAP_TTYO_FIXUP=y +CONFIG_SERIAL_8250_OMAP=y CONFIG_SERIAL_8250_PCI=y CONFIG_SERIAL_8250_RSA=y CONFIG_SERIAL_8250_RT288X=y @@ -5408,8 +5457,7 @@ CONFIG_SERIAL_MVEBU_CONSOLE=y CONFIG_SERIAL_MVEBU_UART=y # CONFIG_SERIAL_NONSTANDARD is not set CONFIG_SERIAL_OF_PLATFORM=y -CONFIG_SERIAL_OMAP_CONSOLE=y -CONFIG_SERIAL_OMAP=y +# CONFIG_SERIAL_OMAP is not set # CONFIG_SERIAL_PCH_UART is not set CONFIG_SERIAL_PXA_CONSOLE=y CONFIG_SERIAL_PXA=y @@ -5458,6 +5506,7 @@ CONFIG_SI7020=m # CONFIG_SIGMA is not set CONFIG_SIGNED_PE_FILE_VERIFICATION=y CONFIG_SIMPLE_PM_BUS=y +# CONFIG_SIOX is not set CONFIG_SIS190=m CONFIG_SIS900=m # CONFIG_SKFP is not set @@ -5470,6 +5519,8 @@ CONFIG_SLAB_FREELIST_HARDENED=y CONFIG_SLAB_FREELIST_RANDOM=y CONFIG_SLAB_MERGE_DEFAULT=y # CONFIG_SLICOSS is not set +CONFIG_SLIMBUS=m +CONFIG_SLIM_QCOM_CTRL=m CONFIG_SLIP_COMPRESSED=y CONFIG_SLIP=m # CONFIG_SLIP_MODE_SLIP6 is not set @@ -5736,6 +5787,7 @@ CONFIG_SND_SOC_LPASS_CPU=m CONFIG_SND_SOC_LPASS_PLATFORM=m CONFIG_SND_SOC=m CONFIG_SND_SOC_MAX98090=m +CONFIG_SND_SOC_MAX98373=m # CONFIG_SND_SOC_MAX98504 is not set # CONFIG_SND_SOC_MAX9860 is not set CONFIG_SND_SOC_MAX98927=m @@ -5750,6 +5802,8 @@ CONFIG_SND_SOC_ODROID=m # CONFIG_SND_SOC_PCM179X_I2C is not set # CONFIG_SND_SOC_PCM179X is not set # CONFIG_SND_SOC_PCM179X_SPI is not set +CONFIG_SND_SOC_PCM186X_I2C=m +CONFIG_SND_SOC_PCM186X_SPI=m # CONFIG_SND_SOC_PCM3168A_I2C is not set # CONFIG_SND_SOC_PCM3168A_SPI is not set CONFIG_SND_SOC_PCM512x_I2C=m @@ -5786,6 +5840,7 @@ CONFIG_SND_SOC_STORM=m # CONFIG_SND_SOC_TAS5086 is not set # CONFIG_SND_SOC_TAS571X is not set # CONFIG_SND_SOC_TAS5720 is not set +CONFIG_SND_SOC_TAS6424=m CONFIG_SND_SOC_TEGRA20_AC97=m CONFIG_SND_SOC_TEGRA20_DAS=m CONFIG_SND_SOC_TEGRA20_I2S=m @@ -5807,9 +5862,12 @@ CONFIG_SND_SOC_TLV320AIC23_I2C=m CONFIG_SND_SOC_TLV320AIC23=m CONFIG_SND_SOC_TLV320AIC23_SPI=m CONFIG_SND_SOC_TLV320AIC31XX=m +CONFIG_SND_SOC_TLV320AIC32X4_I2C=m +CONFIG_SND_SOC_TLV320AIC32X4_SPI=m CONFIG_SND_SOC_TLV320AIC3X=m CONFIG_SND_SOC_TPA6130A2=m CONFIG_SND_SOC_TS3A227E=m +CONFIG_SND_SOC_TSCS42XX=m CONFIG_SND_SOC_TWL4030=m CONFIG_SND_SOC_TWL6040=m # CONFIG_SND_SOC_WM8510 is not set @@ -5910,6 +5968,9 @@ CONFIG_SONY_FF=y # CONFIG_SONYPI is not set CONFIG_SOUND=m CONFIG_SOUND_OSS_CORE_PRECLAIM=y +CONFIG_SOUNDWIRE_BUS=m +CONFIG_SOUNDWIRE_CADENCE=m +CONFIG_SOUNDWIRE=y CONFIG_SPARSE_RCU_POINTER=y # CONFIG_SPEAKUP is not set # CONFIG_SPI_ALTERA is not set @@ -5965,6 +6026,7 @@ CONFIG_SPI=y # CONFIG_SPI_ZYNQMP_GQSPI is not set CONFIG_SPMI=m CONFIG_SPMI_MSM_PMIC_ARB=m +CONFIG_SPMI_PMIC_CLKDIV=m # CONFIG_SQUASHFS_4K_DEVBLK_SIZE is not set # CONFIG_SQUASHFS_EMBEDDED is not set CONFIG_SQUASHFS_LZ4=y @@ -6021,6 +6083,9 @@ CONFIG_STRIP_ASM_SYMS=y CONFIG_ST_THERMAL=m CONFIG_ST_THERMAL_MEMMAP=m # CONFIG_ST_THERMAL_SYSCFG is not set +CONFIG_ST_UVIS25_I2C=m +CONFIG_ST_UVIS25=m +CONFIG_ST_UVIS25_SPI=m CONFIG_SUN4I_A10_CCU=y CONFIG_SUN4I_EMAC=m CONFIG_SUN4I_GPADC=m @@ -6146,6 +6211,7 @@ CONFIG_TEGRA_IOMMU_SMMU=y CONFIG_TEGRA_IVC=y CONFIG_TEGRA_MC=y CONFIG_TEGRA_SOCTHERM=m +CONFIG_TEGRA_VDE=m CONFIG_TEGRA_WATCHDOG=m CONFIG_TEHUTI=m CONFIG_TELCLOCK=m @@ -6212,16 +6278,18 @@ CONFIG_TI_DAVINCI_EMAC=m CONFIG_TI_DAVINCI_MDIO=m CONFIG_TI_EDMA=y CONFIG_TI_EMIF=m +CONFIG_TI_EMIF_SRAM=m CONFIG_TIFM_7XX1=m CONFIG_TIFM_CORE=m CONFIG_TIGON3_HWMON=y CONFIG_TIGON3=m # CONFIG_TIMB_DMA is not set -# CONFIG_TIMER_STATS is not set +CONFIG_TINYDRM_ILI9225=m CONFIG_TINYDRM_MI0283QT=m CONFIG_TINYDRM_MIPI_DBI=m # CONFIG_TINYDRM_REPAPER is not set # CONFIG_TINYDRM_ST7586 is not set +CONFIG_TINYDRM_ST7735R=m CONFIG_TIPC=m # CONFIG_TIPC_MEDIA_IB is not set CONFIG_TIPC_MEDIA_UDP=y @@ -6393,6 +6461,7 @@ CONFIG_UIO_SERCOS3=m CONFIG_ULI526X=m # CONFIG_ULTRIX_PARTITION is not set # CONFIG_UNISYSSPAR is not set +# CONFIG_UNISYS_VISORBUS is not set CONFIG_UNIX98_PTYS=y CONFIG_UNIX_DIAG=m CONFIG_UNIXWARE_DISKLABEL=y @@ -6636,7 +6705,7 @@ CONFIG_USB_OHCI_HCD_PLATFORM=m 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 +CONFIG_USB_OTG_FSM=m # CONFIG_USB_OTG_WHITELIST is not set CONFIG_USB_OTG=y # CONFIG_USB_OXU210HP_HCD is not set @@ -6775,6 +6844,7 @@ CONFIG_USB_WDM=m # CONFIG_USB_WUSB_CBAF_DEBUG is not set CONFIG_USB_WUSB_CBAF=m CONFIG_USB_WUSB=m +CONFIG_USB_XHCI_DBGCAP=y CONFIG_USB_XHCI_HCD=y CONFIG_USB_XHCI_MVEBU=m CONFIG_USB_XHCI_PLATFORM=m @@ -6969,6 +7039,7 @@ CONFIG_VIRTIO_BLK=m # CONFIG_VIRTIO_BLK_SCSI is not set CONFIG_VIRTIO_CONSOLE=m CONFIG_VIRTIO_INPUT=m +CONFIG_VIRTIO_MENU=y # CONFIG_VIRTIO_MMIO_CMDLINE_DEVICES is not set CONFIG_VIRTIO_MMIO=m CONFIG_VIRTIO_NET=m @@ -7109,6 +7180,7 @@ CONFIG_XFS_QUOTA=y # CONFIG_XILINX_DMA is not set CONFIG_XILINX_EMACLITE=m CONFIG_XILINX_GMII2RGMII=m +CONFIG_XILINX_VCU=m CONFIG_XILINX_WATCHDOG=m CONFIG_XILINX_XADC=m # CONFIG_XILINX_ZYNQMP_DMA is not set @@ -7138,6 +7210,7 @@ CONFIG_ZEROPLUS_FF=y CONFIG_ZISOFS=y CONFIG_ZLIB_DEFLATE=y CONFIG_ZLIB_INFLATE=y +CONFIG_ZOPT2201=m # CONFIG_ZPA2326 is not set CONFIG_ZRAM=m # CONFIG_ZRAM_WRITEBACK is not set diff --git a/kernel-armv7hl-lpae-debug.config b/kernel-armv7hl-lpae-debug.config index 3f63064dd..3c997c879 100644 --- a/kernel-armv7hl-lpae-debug.config +++ b/kernel-armv7hl-lpae-debug.config @@ -44,6 +44,7 @@ CONFIG_ACPI_ALS=m CONFIG_ACPI_DEBUG=y # CONFIG_ACPI_NFIT is not set CONFIG_ACPI_PCI_SLOT=y +CONFIG_ACPI_SPCR_TABLE=y # CONFIG_ACQUIRE_WDT is not set # CONFIG_AD2S1200 is not set # CONFIG_AD2S1210 is not set @@ -248,6 +249,7 @@ CONFIG_ARM_AMBA=y CONFIG_ARM_APPENDED_DTB=y CONFIG_ARM_ARCH_TIMER_EVTSTREAM=y CONFIG_ARM_ARCH_TIMER=y +CONFIG_ARM_ARMADA_37XX_CPUFREQ=m CONFIG_ARM_ASM_UNIFIED=y CONFIG_ARM_ATAG_DTB_COMPAT=y CONFIG_ARM_BIG_LITTLE_CPUFREQ=m @@ -306,6 +308,7 @@ CONFIG_ARM_PL172_MPMC=m CONFIG_ARM_PMU=y # CONFIG_ARM_PSCI_CHECKER is not set CONFIG_ARM_PSCI=y +# CONFIG_ARM_PTDUMP_DEBUGFS is not set # CONFIG_ARM_PTDUMP is not set CONFIG_ARM_RK3399_DMC_DEVFREQ=m CONFIG_ARM_SCPI_CPUFREQ=m @@ -347,6 +350,7 @@ CONFIG_ATH10K_DEBUGFS=y CONFIG_ATH10K=m CONFIG_ATH10K_PCI=m CONFIG_ATH10K_SDIO=m +# CONFIG_ATH10K_SPECTRAL is not set # CONFIG_ATH10K_TRACING is not set CONFIG_ATH10K_USB=m CONFIG_ATH5K_DEBUG=y @@ -360,6 +364,7 @@ CONFIG_ATH6KL_USB=m CONFIG_ATH9K_AHB=y CONFIG_ATH9K_BTCOEX_SUPPORT=y # CONFIG_ATH9K_CHANNEL_CONTEXT is not set +# CONFIG_ATH9K_COMMON_SPECTRAL is not set CONFIG_ATH9K_DEBUGFS=y # CONFIG_ATH9K_DEBUG is not set # CONFIG_ATH9K_DYNACK is not set @@ -557,6 +562,7 @@ CONFIG_BLK_DEV_LOOP=m CONFIG_BLK_DEV_LOOP_MIN_COUNT=0 CONFIG_BLK_DEV_MD=y CONFIG_BLK_DEV_NBD=m +CONFIG_BLK_DEV_NULL_BLK_FAULT_INJECTION=y CONFIG_BLK_DEV_NULL_BLK=m CONFIG_BLK_DEV_NVME=m # CONFIG_BLK_DEV_NVME_SCSI is not set @@ -613,6 +619,7 @@ CONFIG_BOOT_PRINTK_DELAY=y CONFIG_BOUNCE=y CONFIG_BPF_JIT_ALWAYS_ON=y CONFIG_BPF_JIT=y +CONFIG_BPF_KPROBE_OVERRIDE=y CONFIG_BPF_STREAM_PARSER=y CONFIG_BPF_SYSCALL=y CONFIG_BPQETHER=m @@ -668,7 +675,7 @@ CONFIG_BT_HCIBPA10X=m CONFIG_BT_HCIBT3C=m CONFIG_BT_HCIBTSDIO=m CONFIG_BT_HCIBTUART=m -CONFIG_BT_HCIBTUSB_AUTOSUSPEND=y +# CONFIG_BT_HCIBTUSB_AUTOSUSPEND is not set CONFIG_BT_HCIBTUSB_BCM=y CONFIG_BT_HCIBTUSB=m CONFIG_BT_HCIBTUSB_RTL=y @@ -843,6 +850,7 @@ CONFIG_CHARGER_TPS65090=m # CONFIG_CHASH_SELFTEST is not set # CONFIG_CHASH_STATS is not set CONFIG_CHECKPOINT_RESTORE=y +CONFIG_CHELSIO_IPSEC_INLINE=y CONFIG_CHELSIO_T1_1G=y CONFIG_CHELSIO_T1=m CONFIG_CHELSIO_T3=m @@ -868,6 +876,7 @@ CONFIG_CIFS_NFSD_EXPORT=y CONFIG_CIFS_POSIX=y CONFIG_CIFS_SMB2=y # CONFIG_CIFS_SMB311 is not set +# CONFIG_CIFS_SMB_DIRECT is not set # CONFIG_CIFS_STATS2 is not set CONFIG_CIFS_STATS=y CONFIG_CIFS_UPCALL=y @@ -1013,7 +1022,6 @@ CONFIG_CRYPTO_DEV_EXYNOS_RNG=m CONFIG_CRYPTO_DEV_HIFN_795X=m CONFIG_CRYPTO_DEV_HIFN_795X_RNG=y CONFIG_CRYPTO_DEV_MARVELL_CESA=m -CONFIG_CRYPTO_DEV_MV_CESA=m CONFIG_CRYPTO_DEV_NITROX_CNN55XX=m CONFIG_CRYPTO_DEV_ROCKCHIP=m CONFIG_CRYPTO_DEV_S5P=m @@ -1176,6 +1184,7 @@ CONFIG_DEBUG_VM_PGFLAGS=y CONFIG_DEBUG_VM=y # CONFIG_DEBUG_WQ_FORCE_RR_CPU is not set # CONFIG_DEBUG_WW_MUTEX_SLOWPATH is not set +CONFIG_DEBUG_WX=y # CONFIG_DECNET is not set CONFIG_DEFAULT_CFQ=y CONFIG_DEFAULT_HOSTNAME="(none)" @@ -1251,6 +1260,7 @@ CONFIG_DM_SNAPSHOT=y CONFIG_DM_SWITCH=m CONFIG_DM_THIN_PROVISIONING=m CONFIG_DM_UEVENT=y +CONFIG_DM_UNSTRIPED=m CONFIG_DM_VERITY_FEC=y CONFIG_DM_VERITY=m CONFIG_DM_ZERO=y @@ -1274,7 +1284,7 @@ CONFIG_DRM_AMD_DC=y CONFIG_DRM_AMDGPU_CIK=y # CONFIG_DRM_AMDGPU_GART_DEBUGFS is not set CONFIG_DRM_AMDGPU=m -# CONFIG_DRM_AMDGPU_SI is not set +CONFIG_DRM_AMDGPU_SI=y CONFIG_DRM_AMDGPU_USERPTR=y CONFIG_DRM_AMD_POWERPLAY=y CONFIG_DRM_ANALOGIX_ANX78XX=m @@ -1296,17 +1306,13 @@ CONFIG_DRM_EXYNOS7_DECON=y CONFIG_DRM_EXYNOS_DPI=y CONFIG_DRM_EXYNOS_DP=y CONFIG_DRM_EXYNOS_DSI=y -CONFIG_DRM_EXYNOS_FIMC=y CONFIG_DRM_EXYNOS_FIMD=y CONFIG_DRM_EXYNOS_G2D=y -CONFIG_DRM_EXYNOS_GSC=y CONFIG_DRM_EXYNOS_HDMI=y # CONFIG_DRM_EXYNOS_IOMMU is not set -CONFIG_DRM_EXYNOS_IPP=y CONFIG_DRM_EXYNOS=m CONFIG_DRM_EXYNOS_MIC=y CONFIG_DRM_EXYNOS_MIXER=y -CONFIG_DRM_EXYNOS_ROTATOR=y CONFIG_DRM_EXYNOS_VIDI=y CONFIG_DRM_FBDEV_EMULATION=y CONFIG_DRM_FBDEV_OVERALLOC=100 @@ -1315,8 +1321,8 @@ CONFIG_DRM_HDLCD=m # CONFIG_DRM_HDLCD_SHOW_UNDERRUN is not set CONFIG_DRM_HISI_HIBMC=m CONFIG_DRM_I2C_ADV7511_AUDIO=y -# CONFIG_DRM_I2C_ADV7511_CEC is not set -# CONFIG_DRM_I2C_ADV7511 is not set +CONFIG_DRM_I2C_ADV7511_CEC=y +CONFIG_DRM_I2C_ADV7511=m CONFIG_DRM_I2C_ADV7533=y CONFIG_DRM_I2C_CH7006=m CONFIG_DRM_I2C_NXP_TDA998X=m @@ -1337,6 +1343,7 @@ CONFIG_DRM_NOUVEAU_BACKLIGHT=y CONFIG_DRM_NOUVEAU=m CONFIG_DRM_NXP_PTN3460=m # CONFIG_DRM_OMAP is not set +CONFIG_DRM_PANEL_ILITEK_IL9322=m # CONFIG_DRM_PANEL_INNOLUX_P079ZCA is not set # CONFIG_DRM_PANEL_JDI_LT070ME05000 is not set CONFIG_DRM_PANEL_LG_LG4573=m @@ -1426,6 +1433,7 @@ CONFIG_DVB_FIREDTV=m CONFIG_DVB_HOPPER=m CONFIG_DVB_MANTIS=m CONFIG_DVB_MAX_ADAPTERS=8 +# CONFIG_DVB_MMAP is not set CONFIG_DVB_MN88472=m CONFIG_DVB_MN88473=m CONFIG_DVB_NETUP_UNIDVB=m @@ -1439,6 +1447,7 @@ CONFIG_DVB_PT1=m CONFIG_DVB_SMIPCIE=m CONFIG_DVB_TTUSB_BUDGET=m CONFIG_DVB_TTUSB_DEC=m +# CONFIG_DVB_ULE_DEBUG is not set CONFIG_DVB_USB_A800=m CONFIG_DVB_USB_AF9005=m CONFIG_DVB_USB_AF9005_REMOTE=m @@ -1509,6 +1518,7 @@ CONFIG_EDAC_HIGHBANK_L2=m CONFIG_EDAC_HIGHBANK_MC=m CONFIG_EDAC_LEGACY_SYSFS=y CONFIG_EDAC_MV64X60=m +CONFIG_EDAC_TI=m CONFIG_EDAC=y CONFIG_EEPROM_93CX6=m CONFIG_EEPROM_93XX46=m @@ -1589,6 +1599,7 @@ CONFIG_F2FS_FS_SECURITY=y CONFIG_F2FS_FS_XATTR=y # CONFIG_F2FS_IO_TRACE is not set CONFIG_F2FS_STAT_FS=y +CONFIG_FAIL_FUNCTION=y # CONFIG_FAIL_FUTEX is not set CONFIG_FAIL_IO_TIMEOUT=y CONFIG_FAIL_MAKE_REQUEST=y @@ -1683,6 +1694,7 @@ CONFIG_FCOE=m # CONFIG_FDDI is not set CONFIG_FEALNX=m CONFIG_FHANDLE=y +# CONFIG_FIND_BIT_BENCHMARK is not set # CONFIG_FIREWIRE is not set CONFIG_FIREWIRE_NET=m CONFIG_FIREWIRE_NOSY=m @@ -1730,6 +1742,7 @@ CONFIG_FTRACE_MCOUNT_RECORD=y # CONFIG_FTRACE_STARTUP_TEST is not set CONFIG_FTRACE_SYSCALLS=y CONFIG_FTRACE=y +# CONFIG_FTWDT010_WATCHDOG is not set # CONFIG_FUNCTION_GRAPH_TRACER is not set CONFIG_FUNCTION_PROFILER=y CONFIG_FUNCTION_TRACER=y @@ -1811,9 +1824,11 @@ CONFIG_GPIO_PCA953X_IRQ=y CONFIG_GPIO_PCA953X=y CONFIG_GPIO_PCF857X=m # CONFIG_GPIO_PCH is not set +# CONFIG_GPIO_PCIE_IDIO_24 is not set CONFIG_GPIO_PCI_IDIO_16=m # CONFIG_GPIO_PISOSR is not set CONFIG_GPIO_PL061=y +CONFIG_GPIO_RASPBERRYPI_EXP=m # CONFIG_GPIO_RDC321X is not set # CONFIG_GPIO_SCH311X is not set # CONFIG_GPIO_SX150X is not set @@ -1843,6 +1858,7 @@ CONFIG_HAMACHI=m CONFIG_HAMRADIO=y CONFIG_HANGCHECK_TIMER=m CONFIG_HAPPYMEAL=m +CONFIG_HARDENED_USERCOPY_FALLBACK=y CONFIG_HARDENED_USERCOPY=y CONFIG_HAVE_ARCH_TRANSPARENT_HUGEPAGE=y CONFIG_HAVE_ARM_ARCH_TIMER=y @@ -1892,6 +1908,7 @@ CONFIG_HID_GYRATION=m CONFIG_HID_HOLTEK=m CONFIG_HID_ICADE=m CONFIG_HID_ITE=m +CONFIG_HID_JABRA=m CONFIG_HID_KENSINGTON=m CONFIG_HID_KEYTOUCH=m CONFIG_HID_KYE=m @@ -2036,11 +2053,12 @@ CONFIG_HWMON=y CONFIG_HW_PERF_EVENTS=y CONFIG_HWPOISON_INJECT=m CONFIG_HW_RANDOM_BCM2835=m +CONFIG_HW_RANDOM_EXYNOS=m CONFIG_HW_RANDOM_IMX_RNGC=m CONFIG_HW_RANDOM_MESON=m CONFIG_HW_RANDOM_OMAP=m CONFIG_HW_RANDOM_TIMERIOMEM=m -CONFIG_HW_RANDOM_TPM=m +CONFIG_HW_RANDOM_TPM=y CONFIG_HW_RANDOM_VIRTIO=m CONFIG_HW_RANDOM=y CONFIG_HWSPINLOCK=y @@ -2080,6 +2098,7 @@ CONFIG_I2C_DIOLAN_U2C=m # CONFIG_I2C_EG20T is not set # CONFIG_I2C_EMEV2 is not set CONFIG_I2C_EXYNOS5=m +# CONFIG_I2C_GPIO_FAULT_INJECTOR is not set CONFIG_I2C_GPIO=m CONFIG_I2C_HELPER_AUTO=y CONFIG_I2C_HID=m @@ -2162,6 +2181,7 @@ CONFIG_IGB_HWMON=y CONFIG_IGB=m CONFIG_IGBVF=m CONFIG_IIO_BUFFER_CB=m +CONFIG_IIO_BUFFER_HW_CONSUMER=m CONFIG_IIO_BUFFER=y CONFIG_IIO_CONFIGFS=m CONFIG_IIO_CONSUMERS_PER_TRIGGER=2 @@ -2351,6 +2371,7 @@ CONFIG_IP6_NF_MATCH_MH=m CONFIG_IP6_NF_MATCH_OPTS=m CONFIG_IP6_NF_MATCH_RPFILTER=m CONFIG_IP6_NF_MATCH_RT=m +CONFIG_IP6_NF_MATCH_SRH=m CONFIG_IP6_NF_NAT=m CONFIG_IP6_NF_RAW=m CONFIG_IP6_NF_SECURITY=m @@ -2483,7 +2504,6 @@ CONFIG_IPVTAP=m # CONFIG_IPW2200_DEBUG is not set # CONFIG_IPW2200 is not set CONFIG_IPWIRELESS=m -# CONFIG_IPX_INTERN is not set # CONFIG_IPX is not set # CONFIG_IRDA is not set CONFIG_IR_ENE=m @@ -2767,6 +2787,7 @@ CONFIG_LEDS_IS31FL32XX=m CONFIG_LEDS_LM3530=m # CONFIG_LEDS_LM355x is not set # CONFIG_LEDS_LM3642 is not set +CONFIG_LEDS_LM3692X=m # CONFIG_LEDS_LOCOMO is not set CONFIG_LEDS_LP3944=m CONFIG_LEDS_LP3952=m @@ -2801,6 +2822,7 @@ CONFIG_LEDS_TRIGGER_DISK=y CONFIG_LEDS_TRIGGER_GPIO=m CONFIG_LEDS_TRIGGER_HEARTBEAT=m CONFIG_LEDS_TRIGGER_MTD=y +CONFIG_LEDS_TRIGGER_NETDEV=m CONFIG_LEDS_TRIGGER_ONESHOT=m CONFIG_LEDS_TRIGGER_PANIC=y CONFIG_LEDS_TRIGGERS=y @@ -2833,11 +2855,11 @@ CONFIG_LIBFCOE=m CONFIG_LIQUIDIO_VF=m CONFIG_LIRC_BT829=m CONFIG_LIRC_IMON=m -CONFIG_LIRC=m CONFIG_LIRC_PARALLEL=m CONFIG_LIRC_SERIAL=m CONFIG_LIRC_SERIAL_TRANSMITTER=y CONFIG_LIRC_STAGING=y +CONFIG_LIRC=y CONFIG_LIRC_ZILOG=m # CONFIG_LIVEPATCH is not set # CONFIG_LKDTM is not set @@ -3001,6 +3023,7 @@ CONFIG_MEGARAID_MAILBOX=m CONFIG_MEGARAID_MM=m CONFIG_MEGARAID_NEWGEN=y CONFIG_MEGARAID_SAS=m +CONFIG_MELLANOX_PLATFORM=y CONFIG_MEMCG_SWAP_ENABLED=y CONFIG_MEMCG_SWAP=y CONFIG_MEMCG=y @@ -3049,6 +3072,7 @@ CONFIG_MFD_AXP20X=y CONFIG_MFD_BD9571MWV=m CONFIG_MFD_CORE=y # CONFIG_MFD_CPCAP is not set +CONFIG_MFD_CROS_EC_CHARDEV=m CONFIG_MFD_CROS_EC_I2C=m CONFIG_MFD_CROS_EC=m CONFIG_MFD_CROS_EC_SPI=m @@ -3090,8 +3114,6 @@ CONFIG_MFD_MAX8997=y CONFIG_MFD_RK808=m # CONFIG_MFD_RN5T618 is not set # CONFIG_MFD_RT5033 is not set -CONFIG_MFD_RTSX_PCI=m -CONFIG_MFD_RTSX_USB=m CONFIG_MFD_SEC_CORE=y # CONFIG_MFD_SI476X_CORE is not set # CONFIG_MFD_SKY81452 is not set @@ -3144,6 +3166,8 @@ CONFIG_MII=m CONFIG_MINIX_FS=m CONFIG_MINIX_SUBPARTITION=y CONFIG_MISC_FILESYSTEMS=y +CONFIG_MISC_RTSX_PCI=m +CONFIG_MISC_RTSX_USB=m CONFIG_MISDN_AVMFRITZ=m CONFIG_MISDN_DSP=m CONFIG_MISDN_HFCMULTI=m @@ -3173,6 +3197,7 @@ CONFIG_MLX5_MPFS=y # CONFIG_MLX90614 is not set CONFIG_MLX_CPLD_PLATFORM=m CONFIG_MLXFW=m +CONFIG_MLXREG_HOTPLUG=m CONFIG_MLXSW_CORE_HWMON=y CONFIG_MLXSW_CORE=m CONFIG_MLXSW_CORE_THERMAL=y @@ -3195,6 +3220,7 @@ CONFIG_MMC_BCM2835=m CONFIG_MMC_BLOCK=m CONFIG_MMC_BLOCK_MINORS=8 CONFIG_MMC_CB710=m +CONFIG_MMC_CQHCI=m # CONFIG_MMC_DEBUG is not set CONFIG_MMC_DW_EXYNOS=m CONFIG_MMC_DW_K3=m @@ -3292,6 +3318,7 @@ CONFIG_MSDOS_PARTITION=y # CONFIG_MSM_GCC_8994 is not set CONFIG_MSPRO_BLOCK=m CONFIG_MT7601U=m +CONFIG_MT76x2E=m # CONFIG_MTD_ABSENT is not set # CONFIG_MTD_AFS_PARTS is not set # CONFIG_MTD_AR7_PARTS is not set @@ -3343,6 +3370,7 @@ CONFIG_MTD_NAND_FSMC=m CONFIG_MTD_NAND_GPIO=m # CONFIG_MTD_NAND_HISI504 is not set CONFIG_MTD_NAND=m +CONFIG_MTD_NAND_MARVELL=m # CONFIG_MTD_NAND_MTK is not set CONFIG_MTD_NAND_MXC=m CONFIG_MTD_NAND_NANDSIM=m @@ -3473,9 +3501,11 @@ CONFIG_NET_CORE=y # CONFIG_NET_DCCPPROBE is not set CONFIG_NETDEVICES=y CONFIG_NET_DEVLINK=m +# CONFIG_NETDEVSIM is not set CONFIG_NET_DROP_MONITOR=y CONFIG_NET_DSA_BCM_SF2=m CONFIG_NET_DSA_HWMON=y +# CONFIG_NET_DSA_LEGACY is not set CONFIG_NET_DSA_LOOP=m CONFIG_NET_DSA=m CONFIG_NET_DSA_MT7530=m @@ -3660,6 +3690,7 @@ CONFIG_NET_VENDOR_BROADCOM=y CONFIG_NET_VENDOR_CHELSIO=y # CONFIG_NET_VENDOR_CIRRUS is not set # CONFIG_NET_VENDOR_CISCO is not set +# CONFIG_NET_VENDOR_CORTINA is not set # CONFIG_NET_VENDOR_DEC is not set CONFIG_NET_VENDOR_DLINK=y CONFIG_NET_VENDOR_EMULEX=y @@ -3693,6 +3724,7 @@ CONFIG_NET_VENDOR_SILAN=y CONFIG_NET_VENDOR_SIS=y CONFIG_NET_VENDOR_SMSC=y # CONFIG_NET_VENDOR_SNI is not set +# CONFIG_NET_VENDOR_SOCIONEXT is not set # CONFIG_NET_VENDOR_SOLARFLARE is not set CONFIG_NET_VENDOR_STMICRO=y # CONFIG_NET_VENDOR_SUN is not set @@ -3769,6 +3801,10 @@ CONFIG_NFC_TRF7970A=m CONFIG_NF_DUP_IPV4=m CONFIG_NF_DUP_IPV6=m CONFIG_NF_DUP_NETDEV=m +CONFIG_NF_FLOW_TABLE_INET=m +CONFIG_NF_FLOW_TABLE_IPV4=m +CONFIG_NF_FLOW_TABLE_IPV6=m +CONFIG_NF_FLOW_TABLE=m CONFIG_NF_LOG_ARP=m CONFIG_NF_LOG_BRIDGE=m CONFIG_NF_LOG_IPV4=m @@ -3830,6 +3866,7 @@ CONFIG_NFT_FIB_INET=m CONFIG_NFT_FIB_IPV4=m CONFIG_NFT_FIB_IPV6=m CONFIG_NFT_FIB_NETDEV=m +CONFIG_NFT_FLOW_OFFLOAD=m CONFIG_NFT_FWD_NETDEV=m CONFIG_NFT_HASH=m CONFIG_NFT_LIMIT=m @@ -4075,6 +4112,7 @@ CONFIG_PCIEAER=y # CONFIG_PCIE_ARMADA_8K is not set # CONFIG_PCIEASPM_DEBUG is not set CONFIG_PCIEASPM=y +CONFIG_PCIE_CADENCE_HOST=y CONFIG_PCIE_DPC=y # CONFIG_PCIE_DW_HOST_ECAM is not set CONFIG_PCIE_DW_HOST=y @@ -4172,6 +4210,7 @@ CONFIG_PINCONF=y CONFIG_PINCTRL_ARMADA_370=y CONFIG_PINCTRL_ARMADA_XP=y CONFIG_PINCTRL_AS3722=y +CONFIG_PINCTRL_AXP209=m # CONFIG_PINCTRL_BAYTRAIL is not set # CONFIG_PINCTRL_BROXTON is not set # CONFIG_PINCTRL_CANNONLAKE is not set @@ -4190,6 +4229,7 @@ CONFIG_PINCTRL_DOVE=y # CONFIG_PINCTRL_MESON_GXL is not set # CONFIG_PINCTRL_MSM8994 is not set # CONFIG_PINCTRL_MSM8996 is not set +CONFIG_PINCTRL_MSM8998=m CONFIG_PINCTRL_MVEBU=y CONFIG_PINCTRL_RK805=m CONFIG_PINCTRL_SAMSUNG=y @@ -4318,6 +4358,8 @@ CONFIG_PWRSEQ_SIMPLE=y # CONFIG_QCA7000 is not set # CONFIG_QCA7000_SPI is not set # CONFIG_QCA7000_UART is not set +CONFIG_QCOM_A53PLL=m +CONFIG_QCOM_CLK_APCS_MSM8916=m # CONFIG_QCOM_EBI2 is not set # CONFIG_QCOM_EMAC is not set # CONFIG_QCOM_GLINK_SSR is not set @@ -4384,6 +4426,7 @@ CONFIG_RAID_ATTRS=m CONFIG_RAS_CEC=y CONFIG_RASPBERRYPI_FIRMWARE=y CONFIG_RASPBERRYPI_POWER=y +# CONFIG_RAVE_SP_CORE is not set CONFIG_RAW_DRIVER=y # CONFIG_RBTREE_TEST is not set CONFIG_RC_ATI_REMOTE=m @@ -4497,7 +4540,6 @@ CONFIG_RENESAS_PHY=m # CONFIG_RESET_ATTACK_MITIGATION is not set CONFIG_RESET_CONTROLLER=y CONFIG_RESET_GPIO=y -# CONFIG_RESET_HSDK_V1 is not set CONFIG_RESET_SIMPLE=y # CONFIG_RESET_TI_SCI is not set # CONFIG_RESET_TI_SYSCON is not set @@ -4581,6 +4623,7 @@ CONFIG_RTC_DRV_AS3722=y CONFIG_RTC_DRV_BQ32K=m CONFIG_RTC_DRV_BQ4802=m CONFIG_RTC_DRV_CMOS=y +CONFIG_RTC_DRV_CROS_EC=m CONFIG_RTC_DRV_DS1286=m # CONFIG_RTC_DRV_DS1302 is not set CONFIG_RTC_DRV_DS1305=m @@ -4704,6 +4747,7 @@ CONFIG_RTLLIB=m # CONFIG_RTLWIFI_DEBUG is not set CONFIG_RTLWIFI=m # CONFIG_RTS5208 is not set +CONFIG_RUNTIME_TESTING_MENU=y CONFIG_S2IO=m CONFIG_S3C2410_WATCHDOG=m # CONFIG_SAMPLES is not set @@ -4716,13 +4760,13 @@ CONFIG_SATA_AHCI=y # CONFIG_SATA_DWC is not set CONFIG_SATA_HIGHBANK=m # CONFIG_SATA_INIC162X is not set -CONFIG_SATA_MOBILE_LPM_POLICY=3 +CONFIG_SATA_MOBILE_LPM_POLICY=0 CONFIG_SATA_MV=m # CONFIG_SATA_NV is not set CONFIG_SATA_PMP=y # CONFIG_SATA_PROMISE is not set # CONFIG_SATA_QSTOR is not set -# CONFIG_SATA_SIL24 is not set +CONFIG_SATA_SIL24=m # CONFIG_SATA_SIL is not set # CONFIG_SATA_SIS is not set # CONFIG_SATA_SVW is not set @@ -4854,6 +4898,7 @@ CONFIG_SCTP_COOKIE_HMAC_SHA1=y # CONFIG_SCTP_DEFAULT_COOKIE_HMAC_MD5 is not set # CONFIG_SCTP_DEFAULT_COOKIE_HMAC_NONE is not set CONFIG_SCTP_DEFAULT_COOKIE_HMAC_SHA1=y +CONFIG_SD_ADC_MODULATOR=m CONFIG_SDIO_UART=m CONFIG_SECCOMP=y CONFIG_SECONDARY_TRUSTED_KEYRING=y @@ -5031,6 +5076,7 @@ CONFIG_SENSORS_VT1211=m CONFIG_SENSORS_VT8231=m CONFIG_SENSORS_W83627EHF=m CONFIG_SENSORS_W83627HF=m +CONFIG_SENSORS_W83773G=m CONFIG_SENSORS_W83781D=m CONFIG_SENSORS_W83791D=m CONFIG_SENSORS_W83792D=m @@ -5135,6 +5181,7 @@ CONFIG_SI7020=m # CONFIG_SIGMA is not set CONFIG_SIGNED_PE_FILE_VERIFICATION=y CONFIG_SIMPLE_PM_BUS=y +# CONFIG_SIOX is not set CONFIG_SIS190=m CONFIG_SIS900=m # CONFIG_SKFP is not set @@ -5147,6 +5194,8 @@ CONFIG_SLAB_FREELIST_HARDENED=y CONFIG_SLAB_FREELIST_RANDOM=y CONFIG_SLAB_MERGE_DEFAULT=y # CONFIG_SLICOSS is not set +CONFIG_SLIMBUS=m +CONFIG_SLIM_QCOM_CTRL=m CONFIG_SLIP_COMPRESSED=y CONFIG_SLIP=m # CONFIG_SLIP_MODE_SLIP6 is not set @@ -5379,6 +5428,7 @@ CONFIG_SND_SOC_HDMI_CODEC=m # CONFIG_SND_SOC_INNO_RK3036 is not set CONFIG_SND_SOC=m CONFIG_SND_SOC_MAX98090=m +CONFIG_SND_SOC_MAX98373=m # CONFIG_SND_SOC_MAX98504 is not set # CONFIG_SND_SOC_MAX9860 is not set CONFIG_SND_SOC_MAX98927=m @@ -5392,6 +5442,8 @@ CONFIG_SND_SOC_ODROID=m # CONFIG_SND_SOC_PCM179X_I2C is not set # CONFIG_SND_SOC_PCM179X is not set # CONFIG_SND_SOC_PCM179X_SPI is not set +CONFIG_SND_SOC_PCM186X_I2C=m +CONFIG_SND_SOC_PCM186X_SPI=m # CONFIG_SND_SOC_PCM3168A_I2C is not set # CONFIG_SND_SOC_PCM3168A_SPI is not set CONFIG_SND_SOC_PCM512x_I2C=m @@ -5425,6 +5477,7 @@ CONFIG_SND_SOC_SPDIF=m # CONFIG_SND_SOC_TAS5086 is not set # CONFIG_SND_SOC_TAS571X is not set # CONFIG_SND_SOC_TAS5720 is not set +CONFIG_SND_SOC_TAS6424=m # CONFIG_SND_SOC_TEGRA20_AC97 is not set CONFIG_SND_SOC_TEGRA20_DAS=m CONFIG_SND_SOC_TEGRA20_I2S=m @@ -5445,9 +5498,12 @@ CONFIG_SND_SOC_TEGRA_SGTL5000=m # 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_TLV320AIC32X4_I2C=m +CONFIG_SND_SOC_TLV320AIC32X4_SPI=m # CONFIG_SND_SOC_TLV320AIC3X is not set CONFIG_SND_SOC_TPA6130A2=m CONFIG_SND_SOC_TS3A227E=m +CONFIG_SND_SOC_TSCS42XX=m # CONFIG_SND_SOC_WM8510 is not set # CONFIG_SND_SOC_WM8523 is not set CONFIG_SND_SOC_WM8524=m @@ -5526,6 +5582,9 @@ CONFIG_SONY_FF=y # CONFIG_SONYPI is not set CONFIG_SOUND=m CONFIG_SOUND_OSS_CORE_PRECLAIM=y +CONFIG_SOUNDWIRE_BUS=m +CONFIG_SOUNDWIRE_CADENCE=m +CONFIG_SOUNDWIRE=y CONFIG_SPARSE_RCU_POINTER=y # CONFIG_SPEAKUP is not set # CONFIG_SPI_ALTERA is not set @@ -5573,6 +5632,7 @@ CONFIG_SPI_TEGRA114=m CONFIG_SPI=y # CONFIG_SPI_ZYNQMP_GQSPI is not set # CONFIG_SPMI is not set +CONFIG_SPMI_PMIC_CLKDIV=m # CONFIG_SQUASHFS_4K_DEVBLK_SIZE is not set # CONFIG_SQUASHFS_EMBEDDED is not set CONFIG_SQUASHFS_LZ4=y @@ -5620,6 +5680,9 @@ CONFIG_STRICT_MODULE_RWX=y # CONFIG_STRING_SELFTEST is not set CONFIG_STRIP_ASM_SYMS=y # CONFIG_STRIP is not set +CONFIG_ST_UVIS25_I2C=m +CONFIG_ST_UVIS25=m +CONFIG_ST_UVIS25_SPI=m CONFIG_SUN4I_A10_CCU=y CONFIG_SUN4I_EMAC=m CONFIG_SUN4I_GPADC=m @@ -5746,6 +5809,7 @@ CONFIG_TEGRA_IOMMU_SMMU=y CONFIG_TEGRA_IVC=y CONFIG_TEGRA_MC=y CONFIG_TEGRA_SOCTHERM=m +CONFIG_TEGRA_VDE=m CONFIG_TEGRA_WATCHDOG=m CONFIG_TEHUTI=m CONFIG_TELCLOCK=m @@ -5809,12 +5873,13 @@ CONFIG_TIFM_CORE=m CONFIG_TIGON3_HWMON=y CONFIG_TIGON3=m # CONFIG_TIMB_DMA is not set -# CONFIG_TIMER_STATS is not set CONFIG_TI_MESSAGE_MANAGER=m +CONFIG_TINYDRM_ILI9225=m CONFIG_TINYDRM_MI0283QT=m CONFIG_TINYDRM_MIPI_DBI=m # CONFIG_TINYDRM_REPAPER is not set # CONFIG_TINYDRM_ST7586 is not set +CONFIG_TINYDRM_ST7735R=m CONFIG_TIPC=m # CONFIG_TIPC_MEDIA_IB is not set CONFIG_TIPC_MEDIA_UDP=y @@ -5977,6 +6042,7 @@ CONFIG_UIO_SERCOS3=m CONFIG_ULI526X=m # CONFIG_ULTRIX_PARTITION is not set # CONFIG_UNISYSSPAR is not set +# CONFIG_UNISYS_VISORBUS is not set CONFIG_UNIX98_PTYS=y CONFIG_UNIX_DIAG=m CONFIG_UNIXWARE_DISKLABEL=y @@ -6207,7 +6273,7 @@ CONFIG_USB_OHCI_HCD_PLATFORM=m # CONFIG_USB_OHCI_HCD_SSB is not set CONFIG_USB_OHCI_HCD=y # CONFIG_USB_OTG_BLACKLIST_HUB is not set -# CONFIG_USB_OTG_FSM is not set +CONFIG_USB_OTG_FSM=m # CONFIG_USB_OTG_WHITELIST is not set CONFIG_USB_OTG=y # CONFIG_USB_OXU210HP_HCD is not set @@ -6345,6 +6411,7 @@ CONFIG_USB_WDM=m # CONFIG_USB_WUSB_CBAF_DEBUG is not set CONFIG_USB_WUSB_CBAF=m CONFIG_USB_WUSB=m +CONFIG_USB_XHCI_DBGCAP=y CONFIG_USB_XHCI_HCD=y CONFIG_USB_XHCI_MVEBU=m CONFIG_USB_XHCI_PLATFORM=m @@ -6520,6 +6587,7 @@ CONFIG_VIRTIO_BLK=m # CONFIG_VIRTIO_BLK_SCSI is not set CONFIG_VIRTIO_CONSOLE=m CONFIG_VIRTIO_INPUT=m +CONFIG_VIRTIO_MENU=y # CONFIG_VIRTIO_MMIO_CMDLINE_DEVICES is not set CONFIG_VIRTIO_MMIO=m CONFIG_VIRTIO_NET=m @@ -6670,6 +6738,7 @@ CONFIG_XFS_QUOTA=y # CONFIG_XFS_WARN is not set # CONFIG_XILINX_DMA is not set CONFIG_XILINX_GMII2RGMII=m +CONFIG_XILINX_VCU=m # CONFIG_XILINX_WATCHDOG is not set # CONFIG_XILINX_ZYNQMP_DMA is not set CONFIG_XILLYBUS=m @@ -6698,6 +6767,7 @@ CONFIG_ZEROPLUS_FF=y CONFIG_ZISOFS=y CONFIG_ZLIB_DEFLATE=y CONFIG_ZLIB_INFLATE=y +CONFIG_ZOPT2201=m # CONFIG_ZPA2326 is not set CONFIG_ZRAM=m # CONFIG_ZRAM_WRITEBACK is not set diff --git a/kernel-armv7hl-lpae.config b/kernel-armv7hl-lpae.config index b42356542..d605f4b07 100644 --- a/kernel-armv7hl-lpae.config +++ b/kernel-armv7hl-lpae.config @@ -44,6 +44,7 @@ CONFIG_ACPI_ALS=m # CONFIG_ACPI_DEBUG is not set # CONFIG_ACPI_NFIT is not set CONFIG_ACPI_PCI_SLOT=y +CONFIG_ACPI_SPCR_TABLE=y # CONFIG_ACQUIRE_WDT is not set # CONFIG_AD2S1200 is not set # CONFIG_AD2S1210 is not set @@ -247,6 +248,7 @@ CONFIG_ARM_AMBA=y CONFIG_ARM_APPENDED_DTB=y CONFIG_ARM_ARCH_TIMER_EVTSTREAM=y CONFIG_ARM_ARCH_TIMER=y +CONFIG_ARM_ARMADA_37XX_CPUFREQ=m CONFIG_ARM_ASM_UNIFIED=y CONFIG_ARM_ATAG_DTB_COMPAT=y CONFIG_ARM_BIG_LITTLE_CPUFREQ=m @@ -305,6 +307,7 @@ CONFIG_ARM_PL172_MPMC=m CONFIG_ARM_PMU=y # CONFIG_ARM_PSCI_CHECKER is not set CONFIG_ARM_PSCI=y +# CONFIG_ARM_PTDUMP_DEBUGFS is not set # CONFIG_ARM_PTDUMP is not set CONFIG_ARM_RK3399_DMC_DEVFREQ=m CONFIG_ARM_SCPI_CPUFREQ=m @@ -346,6 +349,7 @@ CONFIG_ATH10K_DEBUGFS=y CONFIG_ATH10K=m CONFIG_ATH10K_PCI=m CONFIG_ATH10K_SDIO=m +# CONFIG_ATH10K_SPECTRAL is not set # CONFIG_ATH10K_TRACING is not set CONFIG_ATH10K_USB=m CONFIG_ATH5K_DEBUG=y @@ -359,6 +363,7 @@ CONFIG_ATH6KL_USB=m CONFIG_ATH9K_AHB=y CONFIG_ATH9K_BTCOEX_SUPPORT=y # CONFIG_ATH9K_CHANNEL_CONTEXT is not set +# CONFIG_ATH9K_COMMON_SPECTRAL is not set CONFIG_ATH9K_DEBUGFS=y # CONFIG_ATH9K_DEBUG is not set # CONFIG_ATH9K_DYNACK is not set @@ -556,6 +561,7 @@ CONFIG_BLK_DEV_LOOP=m CONFIG_BLK_DEV_LOOP_MIN_COUNT=0 CONFIG_BLK_DEV_MD=y CONFIG_BLK_DEV_NBD=m +# CONFIG_BLK_DEV_NULL_BLK_FAULT_INJECTION is not set CONFIG_BLK_DEV_NULL_BLK=m CONFIG_BLK_DEV_NVME=m # CONFIG_BLK_DEV_NVME_SCSI is not set @@ -612,6 +618,7 @@ CONFIG_BOOT_PRINTK_DELAY=y CONFIG_BOUNCE=y CONFIG_BPF_JIT_ALWAYS_ON=y CONFIG_BPF_JIT=y +# CONFIG_BPF_KPROBE_OVERRIDE is not set CONFIG_BPF_STREAM_PARSER=y CONFIG_BPF_SYSCALL=y CONFIG_BPQETHER=m @@ -667,7 +674,7 @@ CONFIG_BT_HCIBPA10X=m CONFIG_BT_HCIBT3C=m CONFIG_BT_HCIBTSDIO=m CONFIG_BT_HCIBTUART=m -CONFIG_BT_HCIBTUSB_AUTOSUSPEND=y +# CONFIG_BT_HCIBTUSB_AUTOSUSPEND is not set CONFIG_BT_HCIBTUSB_BCM=y CONFIG_BT_HCIBTUSB=m CONFIG_BT_HCIBTUSB_RTL=y @@ -842,6 +849,7 @@ CONFIG_CHARGER_TPS65090=m # CONFIG_CHASH_SELFTEST is not set # CONFIG_CHASH_STATS is not set CONFIG_CHECKPOINT_RESTORE=y +CONFIG_CHELSIO_IPSEC_INLINE=y CONFIG_CHELSIO_T1_1G=y CONFIG_CHELSIO_T1=m CONFIG_CHELSIO_T3=m @@ -867,6 +875,7 @@ CONFIG_CIFS_NFSD_EXPORT=y CONFIG_CIFS_POSIX=y CONFIG_CIFS_SMB2=y # CONFIG_CIFS_SMB311 is not set +# CONFIG_CIFS_SMB_DIRECT is not set # CONFIG_CIFS_STATS2 is not set CONFIG_CIFS_STATS=y CONFIG_CIFS_UPCALL=y @@ -1011,7 +1020,6 @@ CONFIG_CRYPTO_DEV_EXYNOS_RNG=m CONFIG_CRYPTO_DEV_HIFN_795X=m CONFIG_CRYPTO_DEV_HIFN_795X_RNG=y CONFIG_CRYPTO_DEV_MARVELL_CESA=m -CONFIG_CRYPTO_DEV_MV_CESA=m CONFIG_CRYPTO_DEV_NITROX_CNN55XX=m CONFIG_CRYPTO_DEV_ROCKCHIP=m CONFIG_CRYPTO_DEV_S5P=m @@ -1166,6 +1174,7 @@ CONFIG_DEBUG_SHIRQ=y CONFIG_DEBUG_VM=y # CONFIG_DEBUG_WQ_FORCE_RR_CPU is not set # CONFIG_DEBUG_WW_MUTEX_SLOWPATH is not set +CONFIG_DEBUG_WX=y # CONFIG_DECNET is not set CONFIG_DEFAULT_CFQ=y CONFIG_DEFAULT_HOSTNAME="(none)" @@ -1241,6 +1250,7 @@ CONFIG_DM_SNAPSHOT=y CONFIG_DM_SWITCH=m CONFIG_DM_THIN_PROVISIONING=m CONFIG_DM_UEVENT=y +CONFIG_DM_UNSTRIPED=m CONFIG_DM_VERITY_FEC=y CONFIG_DM_VERITY=m CONFIG_DM_ZERO=y @@ -1264,7 +1274,7 @@ CONFIG_DRM_AMD_DC=y CONFIG_DRM_AMDGPU_CIK=y # CONFIG_DRM_AMDGPU_GART_DEBUGFS is not set CONFIG_DRM_AMDGPU=m -# CONFIG_DRM_AMDGPU_SI is not set +CONFIG_DRM_AMDGPU_SI=y CONFIG_DRM_AMDGPU_USERPTR=y CONFIG_DRM_AMD_POWERPLAY=y CONFIG_DRM_ANALOGIX_ANX78XX=m @@ -1286,17 +1296,13 @@ CONFIG_DRM_EXYNOS7_DECON=y CONFIG_DRM_EXYNOS_DPI=y CONFIG_DRM_EXYNOS_DP=y CONFIG_DRM_EXYNOS_DSI=y -CONFIG_DRM_EXYNOS_FIMC=y CONFIG_DRM_EXYNOS_FIMD=y CONFIG_DRM_EXYNOS_G2D=y -CONFIG_DRM_EXYNOS_GSC=y CONFIG_DRM_EXYNOS_HDMI=y # CONFIG_DRM_EXYNOS_IOMMU is not set -CONFIG_DRM_EXYNOS_IPP=y CONFIG_DRM_EXYNOS=m CONFIG_DRM_EXYNOS_MIC=y CONFIG_DRM_EXYNOS_MIXER=y -CONFIG_DRM_EXYNOS_ROTATOR=y CONFIG_DRM_EXYNOS_VIDI=y CONFIG_DRM_FBDEV_EMULATION=y CONFIG_DRM_FBDEV_OVERALLOC=100 @@ -1305,8 +1311,8 @@ CONFIG_DRM_HDLCD=m # CONFIG_DRM_HDLCD_SHOW_UNDERRUN is not set CONFIG_DRM_HISI_HIBMC=m CONFIG_DRM_I2C_ADV7511_AUDIO=y -# CONFIG_DRM_I2C_ADV7511_CEC is not set -# CONFIG_DRM_I2C_ADV7511 is not set +CONFIG_DRM_I2C_ADV7511_CEC=y +CONFIG_DRM_I2C_ADV7511=m CONFIG_DRM_I2C_ADV7533=y CONFIG_DRM_I2C_CH7006=m CONFIG_DRM_I2C_NXP_TDA998X=m @@ -1327,6 +1333,7 @@ CONFIG_DRM_NOUVEAU_BACKLIGHT=y CONFIG_DRM_NOUVEAU=m CONFIG_DRM_NXP_PTN3460=m # CONFIG_DRM_OMAP is not set +CONFIG_DRM_PANEL_ILITEK_IL9322=m # CONFIG_DRM_PANEL_INNOLUX_P079ZCA is not set # CONFIG_DRM_PANEL_JDI_LT070ME05000 is not set CONFIG_DRM_PANEL_LG_LG4573=m @@ -1416,6 +1423,7 @@ CONFIG_DVB_FIREDTV=m CONFIG_DVB_HOPPER=m CONFIG_DVB_MANTIS=m CONFIG_DVB_MAX_ADAPTERS=8 +# CONFIG_DVB_MMAP is not set CONFIG_DVB_MN88472=m CONFIG_DVB_MN88473=m CONFIG_DVB_NETUP_UNIDVB=m @@ -1429,6 +1437,7 @@ CONFIG_DVB_PT1=m CONFIG_DVB_SMIPCIE=m CONFIG_DVB_TTUSB_BUDGET=m CONFIG_DVB_TTUSB_DEC=m +# CONFIG_DVB_ULE_DEBUG is not set CONFIG_DVB_USB_A800=m CONFIG_DVB_USB_AF9005=m CONFIG_DVB_USB_AF9005_REMOTE=m @@ -1499,6 +1508,7 @@ CONFIG_EDAC_HIGHBANK_L2=m CONFIG_EDAC_HIGHBANK_MC=m CONFIG_EDAC_LEGACY_SYSFS=y CONFIG_EDAC_MV64X60=m +CONFIG_EDAC_TI=m CONFIG_EDAC=y CONFIG_EEPROM_93CX6=m CONFIG_EEPROM_93XX46=m @@ -1666,6 +1676,7 @@ CONFIG_FCOE=m # CONFIG_FDDI is not set CONFIG_FEALNX=m CONFIG_FHANDLE=y +# CONFIG_FIND_BIT_BENCHMARK is not set # CONFIG_FIREWIRE is not set CONFIG_FIREWIRE_NET=m CONFIG_FIREWIRE_NOSY=m @@ -1713,6 +1724,7 @@ CONFIG_FTRACE_MCOUNT_RECORD=y # CONFIG_FTRACE_STARTUP_TEST is not set CONFIG_FTRACE_SYSCALLS=y CONFIG_FTRACE=y +# CONFIG_FTWDT010_WATCHDOG is not set # CONFIG_FUNCTION_GRAPH_TRACER is not set CONFIG_FUNCTION_PROFILER=y CONFIG_FUNCTION_TRACER=y @@ -1794,9 +1806,11 @@ CONFIG_GPIO_PCA953X_IRQ=y CONFIG_GPIO_PCA953X=y CONFIG_GPIO_PCF857X=m # CONFIG_GPIO_PCH is not set +# CONFIG_GPIO_PCIE_IDIO_24 is not set CONFIG_GPIO_PCI_IDIO_16=m # CONFIG_GPIO_PISOSR is not set CONFIG_GPIO_PL061=y +CONFIG_GPIO_RASPBERRYPI_EXP=m # CONFIG_GPIO_RDC321X is not set # CONFIG_GPIO_SCH311X is not set # CONFIG_GPIO_SX150X is not set @@ -1826,6 +1840,7 @@ CONFIG_HAMACHI=m CONFIG_HAMRADIO=y CONFIG_HANGCHECK_TIMER=m CONFIG_HAPPYMEAL=m +CONFIG_HARDENED_USERCOPY_FALLBACK=y CONFIG_HARDENED_USERCOPY=y CONFIG_HAVE_ARCH_TRANSPARENT_HUGEPAGE=y CONFIG_HAVE_ARM_ARCH_TIMER=y @@ -1875,6 +1890,7 @@ CONFIG_HID_GYRATION=m CONFIG_HID_HOLTEK=m CONFIG_HID_ICADE=m CONFIG_HID_ITE=m +CONFIG_HID_JABRA=m CONFIG_HID_KENSINGTON=m CONFIG_HID_KEYTOUCH=m CONFIG_HID_KYE=m @@ -2019,11 +2035,12 @@ CONFIG_HWMON=y CONFIG_HW_PERF_EVENTS=y CONFIG_HWPOISON_INJECT=m CONFIG_HW_RANDOM_BCM2835=m +CONFIG_HW_RANDOM_EXYNOS=m CONFIG_HW_RANDOM_IMX_RNGC=m CONFIG_HW_RANDOM_MESON=m CONFIG_HW_RANDOM_OMAP=m CONFIG_HW_RANDOM_TIMERIOMEM=m -CONFIG_HW_RANDOM_TPM=m +CONFIG_HW_RANDOM_TPM=y CONFIG_HW_RANDOM_VIRTIO=m CONFIG_HW_RANDOM=y CONFIG_HWSPINLOCK=y @@ -2063,6 +2080,7 @@ CONFIG_I2C_DIOLAN_U2C=m # CONFIG_I2C_EG20T is not set # CONFIG_I2C_EMEV2 is not set CONFIG_I2C_EXYNOS5=m +# CONFIG_I2C_GPIO_FAULT_INJECTOR is not set CONFIG_I2C_GPIO=m CONFIG_I2C_HELPER_AUTO=y CONFIG_I2C_HID=m @@ -2145,6 +2163,7 @@ CONFIG_IGB_HWMON=y CONFIG_IGB=m CONFIG_IGBVF=m CONFIG_IIO_BUFFER_CB=m +CONFIG_IIO_BUFFER_HW_CONSUMER=m CONFIG_IIO_BUFFER=y CONFIG_IIO_CONFIGFS=m CONFIG_IIO_CONSUMERS_PER_TRIGGER=2 @@ -2334,6 +2353,7 @@ CONFIG_IP6_NF_MATCH_MH=m CONFIG_IP6_NF_MATCH_OPTS=m CONFIG_IP6_NF_MATCH_RPFILTER=m CONFIG_IP6_NF_MATCH_RT=m +CONFIG_IP6_NF_MATCH_SRH=m CONFIG_IP6_NF_NAT=m CONFIG_IP6_NF_RAW=m CONFIG_IP6_NF_SECURITY=m @@ -2466,7 +2486,6 @@ CONFIG_IPVTAP=m # CONFIG_IPW2200_DEBUG is not set # CONFIG_IPW2200 is not set CONFIG_IPWIRELESS=m -# CONFIG_IPX_INTERN is not set # CONFIG_IPX is not set # CONFIG_IRDA is not set CONFIG_IR_ENE=m @@ -2748,6 +2767,7 @@ CONFIG_LEDS_IS31FL32XX=m CONFIG_LEDS_LM3530=m # CONFIG_LEDS_LM355x is not set # CONFIG_LEDS_LM3642 is not set +CONFIG_LEDS_LM3692X=m # CONFIG_LEDS_LOCOMO is not set CONFIG_LEDS_LP3944=m CONFIG_LEDS_LP3952=m @@ -2782,6 +2802,7 @@ CONFIG_LEDS_TRIGGER_DISK=y CONFIG_LEDS_TRIGGER_GPIO=m CONFIG_LEDS_TRIGGER_HEARTBEAT=m CONFIG_LEDS_TRIGGER_MTD=y +CONFIG_LEDS_TRIGGER_NETDEV=m CONFIG_LEDS_TRIGGER_ONESHOT=m CONFIG_LEDS_TRIGGER_PANIC=y CONFIG_LEDS_TRIGGERS=y @@ -2814,11 +2835,11 @@ CONFIG_LIBFCOE=m CONFIG_LIQUIDIO_VF=m CONFIG_LIRC_BT829=m CONFIG_LIRC_IMON=m -CONFIG_LIRC=m CONFIG_LIRC_PARALLEL=m CONFIG_LIRC_SERIAL=m CONFIG_LIRC_SERIAL_TRANSMITTER=y CONFIG_LIRC_STAGING=y +CONFIG_LIRC=y CONFIG_LIRC_ZILOG=m # CONFIG_LIVEPATCH is not set # CONFIG_LKDTM is not set @@ -2981,6 +3002,7 @@ CONFIG_MEGARAID_MAILBOX=m CONFIG_MEGARAID_MM=m CONFIG_MEGARAID_NEWGEN=y CONFIG_MEGARAID_SAS=m +CONFIG_MELLANOX_PLATFORM=y CONFIG_MEMCG_SWAP_ENABLED=y CONFIG_MEMCG_SWAP=y CONFIG_MEMCG=y @@ -3029,6 +3051,7 @@ CONFIG_MFD_AXP20X=y CONFIG_MFD_BD9571MWV=m CONFIG_MFD_CORE=y # CONFIG_MFD_CPCAP is not set +CONFIG_MFD_CROS_EC_CHARDEV=m CONFIG_MFD_CROS_EC_I2C=m CONFIG_MFD_CROS_EC=m CONFIG_MFD_CROS_EC_SPI=m @@ -3070,8 +3093,6 @@ CONFIG_MFD_MAX8997=y CONFIG_MFD_RK808=m # CONFIG_MFD_RN5T618 is not set # CONFIG_MFD_RT5033 is not set -CONFIG_MFD_RTSX_PCI=m -CONFIG_MFD_RTSX_USB=m CONFIG_MFD_SEC_CORE=y # CONFIG_MFD_SI476X_CORE is not set # CONFIG_MFD_SKY81452 is not set @@ -3124,6 +3145,8 @@ CONFIG_MII=m CONFIG_MINIX_FS=m CONFIG_MINIX_SUBPARTITION=y CONFIG_MISC_FILESYSTEMS=y +CONFIG_MISC_RTSX_PCI=m +CONFIG_MISC_RTSX_USB=m CONFIG_MISDN_AVMFRITZ=m CONFIG_MISDN_DSP=m CONFIG_MISDN_HFCMULTI=m @@ -3153,6 +3176,7 @@ CONFIG_MLX5_MPFS=y # CONFIG_MLX90614 is not set CONFIG_MLX_CPLD_PLATFORM=m CONFIG_MLXFW=m +CONFIG_MLXREG_HOTPLUG=m CONFIG_MLXSW_CORE_HWMON=y CONFIG_MLXSW_CORE=m CONFIG_MLXSW_CORE_THERMAL=y @@ -3175,6 +3199,7 @@ CONFIG_MMC_BCM2835=m CONFIG_MMC_BLOCK=m CONFIG_MMC_BLOCK_MINORS=8 CONFIG_MMC_CB710=m +CONFIG_MMC_CQHCI=m # CONFIG_MMC_DEBUG is not set CONFIG_MMC_DW_EXYNOS=m CONFIG_MMC_DW_K3=m @@ -3271,6 +3296,7 @@ CONFIG_MSDOS_PARTITION=y # CONFIG_MSM_GCC_8994 is not set CONFIG_MSPRO_BLOCK=m CONFIG_MT7601U=m +CONFIG_MT76x2E=m # CONFIG_MTD_ABSENT is not set # CONFIG_MTD_AFS_PARTS is not set # CONFIG_MTD_AR7_PARTS is not set @@ -3322,6 +3348,7 @@ CONFIG_MTD_NAND_FSMC=m CONFIG_MTD_NAND_GPIO=m # CONFIG_MTD_NAND_HISI504 is not set CONFIG_MTD_NAND=m +CONFIG_MTD_NAND_MARVELL=m # CONFIG_MTD_NAND_MTK is not set CONFIG_MTD_NAND_MXC=m CONFIG_MTD_NAND_NANDSIM=m @@ -3452,9 +3479,11 @@ CONFIG_NET_CORE=y # CONFIG_NET_DCCPPROBE is not set CONFIG_NETDEVICES=y CONFIG_NET_DEVLINK=m +# CONFIG_NETDEVSIM is not set CONFIG_NET_DROP_MONITOR=y CONFIG_NET_DSA_BCM_SF2=m CONFIG_NET_DSA_HWMON=y +# CONFIG_NET_DSA_LEGACY is not set CONFIG_NET_DSA_LOOP=m CONFIG_NET_DSA=m CONFIG_NET_DSA_MT7530=m @@ -3639,6 +3668,7 @@ CONFIG_NET_VENDOR_BROADCOM=y CONFIG_NET_VENDOR_CHELSIO=y # CONFIG_NET_VENDOR_CIRRUS is not set # CONFIG_NET_VENDOR_CISCO is not set +# CONFIG_NET_VENDOR_CORTINA is not set # CONFIG_NET_VENDOR_DEC is not set CONFIG_NET_VENDOR_DLINK=y CONFIG_NET_VENDOR_EMULEX=y @@ -3672,6 +3702,7 @@ CONFIG_NET_VENDOR_SILAN=y CONFIG_NET_VENDOR_SIS=y CONFIG_NET_VENDOR_SMSC=y # CONFIG_NET_VENDOR_SNI is not set +# CONFIG_NET_VENDOR_SOCIONEXT is not set # CONFIG_NET_VENDOR_SOLARFLARE is not set CONFIG_NET_VENDOR_STMICRO=y # CONFIG_NET_VENDOR_SUN is not set @@ -3748,6 +3779,10 @@ CONFIG_NFC_TRF7970A=m CONFIG_NF_DUP_IPV4=m CONFIG_NF_DUP_IPV6=m CONFIG_NF_DUP_NETDEV=m +CONFIG_NF_FLOW_TABLE_INET=m +CONFIG_NF_FLOW_TABLE_IPV4=m +CONFIG_NF_FLOW_TABLE_IPV6=m +CONFIG_NF_FLOW_TABLE=m CONFIG_NF_LOG_ARP=m CONFIG_NF_LOG_BRIDGE=m CONFIG_NF_LOG_IPV4=m @@ -3809,6 +3844,7 @@ CONFIG_NFT_FIB_INET=m CONFIG_NFT_FIB_IPV4=m CONFIG_NFT_FIB_IPV6=m CONFIG_NFT_FIB_NETDEV=m +CONFIG_NFT_FLOW_OFFLOAD=m CONFIG_NFT_FWD_NETDEV=m CONFIG_NFT_HASH=m CONFIG_NFT_LIMIT=m @@ -4054,6 +4090,7 @@ CONFIG_PCIEAER=y # CONFIG_PCIE_ARMADA_8K is not set # CONFIG_PCIEASPM_DEBUG is not set CONFIG_PCIEASPM=y +CONFIG_PCIE_CADENCE_HOST=y CONFIG_PCIE_DPC=y # CONFIG_PCIE_DW_HOST_ECAM is not set CONFIG_PCIE_DW_HOST=y @@ -4151,6 +4188,7 @@ CONFIG_PINCONF=y CONFIG_PINCTRL_ARMADA_370=y CONFIG_PINCTRL_ARMADA_XP=y CONFIG_PINCTRL_AS3722=y +CONFIG_PINCTRL_AXP209=m # CONFIG_PINCTRL_BAYTRAIL is not set # CONFIG_PINCTRL_BROXTON is not set # CONFIG_PINCTRL_CANNONLAKE is not set @@ -4169,6 +4207,7 @@ CONFIG_PINCTRL_DOVE=y # CONFIG_PINCTRL_MESON_GXL is not set # CONFIG_PINCTRL_MSM8994 is not set # CONFIG_PINCTRL_MSM8996 is not set +CONFIG_PINCTRL_MSM8998=m CONFIG_PINCTRL_MVEBU=y CONFIG_PINCTRL_RK805=m CONFIG_PINCTRL_SAMSUNG=y @@ -4296,6 +4335,8 @@ CONFIG_PWRSEQ_SIMPLE=y # CONFIG_QCA7000 is not set # CONFIG_QCA7000_SPI is not set # CONFIG_QCA7000_UART is not set +CONFIG_QCOM_A53PLL=m +CONFIG_QCOM_CLK_APCS_MSM8916=m # CONFIG_QCOM_EBI2 is not set # CONFIG_QCOM_EMAC is not set # CONFIG_QCOM_GLINK_SSR is not set @@ -4362,6 +4403,7 @@ CONFIG_RAID_ATTRS=m CONFIG_RAS_CEC=y CONFIG_RASPBERRYPI_FIRMWARE=y CONFIG_RASPBERRYPI_POWER=y +# CONFIG_RAVE_SP_CORE is not set CONFIG_RAW_DRIVER=y # CONFIG_RBTREE_TEST is not set CONFIG_RC_ATI_REMOTE=m @@ -4400,7 +4442,7 @@ CONFIG_RD_XZ=y # CONFIG_READABLE_ASM is not set CONFIG_REALTEK_AUTOPM=y CONFIG_REALTEK_PHY=m -# CONFIG_REFCOUNT_FULL is not set +CONFIG_REFCOUNT_FULL=y CONFIG_REGMAP_I2C=y CONFIG_REGMAP_IRQ=y CONFIG_REGMAP_MMIO=y @@ -4475,7 +4517,6 @@ CONFIG_RENESAS_PHY=m # CONFIG_RESET_ATTACK_MITIGATION is not set CONFIG_RESET_CONTROLLER=y CONFIG_RESET_GPIO=y -# CONFIG_RESET_HSDK_V1 is not set CONFIG_RESET_SIMPLE=y # CONFIG_RESET_TI_SCI is not set # CONFIG_RESET_TI_SYSCON is not set @@ -4559,6 +4600,7 @@ CONFIG_RTC_DRV_AS3722=y CONFIG_RTC_DRV_BQ32K=m CONFIG_RTC_DRV_BQ4802=m CONFIG_RTC_DRV_CMOS=y +CONFIG_RTC_DRV_CROS_EC=m CONFIG_RTC_DRV_DS1286=m # CONFIG_RTC_DRV_DS1302 is not set CONFIG_RTC_DRV_DS1305=m @@ -4682,6 +4724,7 @@ CONFIG_RTLLIB=m # CONFIG_RTLWIFI_DEBUG is not set CONFIG_RTLWIFI=m # CONFIG_RTS5208 is not set +CONFIG_RUNTIME_TESTING_MENU=y CONFIG_S2IO=m CONFIG_S3C2410_WATCHDOG=m # CONFIG_SAMPLES is not set @@ -4694,13 +4737,13 @@ CONFIG_SATA_AHCI=y # CONFIG_SATA_DWC is not set CONFIG_SATA_HIGHBANK=m # CONFIG_SATA_INIC162X is not set -CONFIG_SATA_MOBILE_LPM_POLICY=3 +CONFIG_SATA_MOBILE_LPM_POLICY=0 CONFIG_SATA_MV=m # CONFIG_SATA_NV is not set CONFIG_SATA_PMP=y # CONFIG_SATA_PROMISE is not set # CONFIG_SATA_QSTOR is not set -# CONFIG_SATA_SIL24 is not set +CONFIG_SATA_SIL24=m # CONFIG_SATA_SIL is not set # CONFIG_SATA_SIS is not set # CONFIG_SATA_SVW is not set @@ -4832,6 +4875,7 @@ CONFIG_SCTP_COOKIE_HMAC_SHA1=y # CONFIG_SCTP_DEFAULT_COOKIE_HMAC_MD5 is not set # CONFIG_SCTP_DEFAULT_COOKIE_HMAC_NONE is not set CONFIG_SCTP_DEFAULT_COOKIE_HMAC_SHA1=y +CONFIG_SD_ADC_MODULATOR=m CONFIG_SDIO_UART=m CONFIG_SECCOMP=y CONFIG_SECONDARY_TRUSTED_KEYRING=y @@ -5009,6 +5053,7 @@ CONFIG_SENSORS_VT1211=m CONFIG_SENSORS_VT8231=m CONFIG_SENSORS_W83627EHF=m CONFIG_SENSORS_W83627HF=m +CONFIG_SENSORS_W83773G=m CONFIG_SENSORS_W83781D=m CONFIG_SENSORS_W83791D=m CONFIG_SENSORS_W83792D=m @@ -5113,6 +5158,7 @@ CONFIG_SI7020=m # CONFIG_SIGMA is not set CONFIG_SIGNED_PE_FILE_VERIFICATION=y CONFIG_SIMPLE_PM_BUS=y +# CONFIG_SIOX is not set CONFIG_SIS190=m CONFIG_SIS900=m # CONFIG_SKFP is not set @@ -5125,6 +5171,8 @@ CONFIG_SLAB_FREELIST_HARDENED=y CONFIG_SLAB_FREELIST_RANDOM=y CONFIG_SLAB_MERGE_DEFAULT=y # CONFIG_SLICOSS is not set +CONFIG_SLIMBUS=m +CONFIG_SLIM_QCOM_CTRL=m CONFIG_SLIP_COMPRESSED=y CONFIG_SLIP=m # CONFIG_SLIP_MODE_SLIP6 is not set @@ -5356,6 +5404,7 @@ CONFIG_SND_SOC_HDMI_CODEC=m # CONFIG_SND_SOC_INNO_RK3036 is not set CONFIG_SND_SOC=m CONFIG_SND_SOC_MAX98090=m +CONFIG_SND_SOC_MAX98373=m # CONFIG_SND_SOC_MAX98504 is not set # CONFIG_SND_SOC_MAX9860 is not set CONFIG_SND_SOC_MAX98927=m @@ -5369,6 +5418,8 @@ CONFIG_SND_SOC_ODROID=m # CONFIG_SND_SOC_PCM179X_I2C is not set # CONFIG_SND_SOC_PCM179X is not set # CONFIG_SND_SOC_PCM179X_SPI is not set +CONFIG_SND_SOC_PCM186X_I2C=m +CONFIG_SND_SOC_PCM186X_SPI=m # CONFIG_SND_SOC_PCM3168A_I2C is not set # CONFIG_SND_SOC_PCM3168A_SPI is not set CONFIG_SND_SOC_PCM512x_I2C=m @@ -5402,6 +5453,7 @@ CONFIG_SND_SOC_SPDIF=m # CONFIG_SND_SOC_TAS5086 is not set # CONFIG_SND_SOC_TAS571X is not set # CONFIG_SND_SOC_TAS5720 is not set +CONFIG_SND_SOC_TAS6424=m # CONFIG_SND_SOC_TEGRA20_AC97 is not set CONFIG_SND_SOC_TEGRA20_DAS=m CONFIG_SND_SOC_TEGRA20_I2S=m @@ -5422,9 +5474,12 @@ CONFIG_SND_SOC_TEGRA_SGTL5000=m # 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_TLV320AIC32X4_I2C=m +CONFIG_SND_SOC_TLV320AIC32X4_SPI=m # CONFIG_SND_SOC_TLV320AIC3X is not set CONFIG_SND_SOC_TPA6130A2=m CONFIG_SND_SOC_TS3A227E=m +CONFIG_SND_SOC_TSCS42XX=m # CONFIG_SND_SOC_WM8510 is not set # CONFIG_SND_SOC_WM8523 is not set CONFIG_SND_SOC_WM8524=m @@ -5503,6 +5558,9 @@ CONFIG_SONY_FF=y # CONFIG_SONYPI is not set CONFIG_SOUND=m CONFIG_SOUND_OSS_CORE_PRECLAIM=y +CONFIG_SOUNDWIRE_BUS=m +CONFIG_SOUNDWIRE_CADENCE=m +CONFIG_SOUNDWIRE=y CONFIG_SPARSE_RCU_POINTER=y # CONFIG_SPEAKUP is not set # CONFIG_SPI_ALTERA is not set @@ -5550,6 +5608,7 @@ CONFIG_SPI_TEGRA114=m CONFIG_SPI=y # CONFIG_SPI_ZYNQMP_GQSPI is not set # CONFIG_SPMI is not set +CONFIG_SPMI_PMIC_CLKDIV=m # CONFIG_SQUASHFS_4K_DEVBLK_SIZE is not set # CONFIG_SQUASHFS_EMBEDDED is not set CONFIG_SQUASHFS_LZ4=y @@ -5597,6 +5656,9 @@ CONFIG_STRICT_MODULE_RWX=y # CONFIG_STRING_SELFTEST is not set CONFIG_STRIP_ASM_SYMS=y # CONFIG_STRIP is not set +CONFIG_ST_UVIS25_I2C=m +CONFIG_ST_UVIS25=m +CONFIG_ST_UVIS25_SPI=m CONFIG_SUN4I_A10_CCU=y CONFIG_SUN4I_EMAC=m CONFIG_SUN4I_GPADC=m @@ -5723,6 +5785,7 @@ CONFIG_TEGRA_IOMMU_SMMU=y CONFIG_TEGRA_IVC=y CONFIG_TEGRA_MC=y CONFIG_TEGRA_SOCTHERM=m +CONFIG_TEGRA_VDE=m CONFIG_TEGRA_WATCHDOG=m CONFIG_TEHUTI=m CONFIG_TELCLOCK=m @@ -5786,12 +5849,13 @@ CONFIG_TIFM_CORE=m CONFIG_TIGON3_HWMON=y CONFIG_TIGON3=m # CONFIG_TIMB_DMA is not set -# CONFIG_TIMER_STATS is not set CONFIG_TI_MESSAGE_MANAGER=m +CONFIG_TINYDRM_ILI9225=m CONFIG_TINYDRM_MI0283QT=m CONFIG_TINYDRM_MIPI_DBI=m # CONFIG_TINYDRM_REPAPER is not set # CONFIG_TINYDRM_ST7586 is not set +CONFIG_TINYDRM_ST7735R=m CONFIG_TIPC=m # CONFIG_TIPC_MEDIA_IB is not set CONFIG_TIPC_MEDIA_UDP=y @@ -5954,6 +6018,7 @@ CONFIG_UIO_SERCOS3=m CONFIG_ULI526X=m # CONFIG_ULTRIX_PARTITION is not set # CONFIG_UNISYSSPAR is not set +# CONFIG_UNISYS_VISORBUS is not set CONFIG_UNIX98_PTYS=y CONFIG_UNIX_DIAG=m CONFIG_UNIXWARE_DISKLABEL=y @@ -6184,7 +6249,7 @@ CONFIG_USB_OHCI_HCD_PLATFORM=m # CONFIG_USB_OHCI_HCD_SSB is not set CONFIG_USB_OHCI_HCD=y # CONFIG_USB_OTG_BLACKLIST_HUB is not set -# CONFIG_USB_OTG_FSM is not set +CONFIG_USB_OTG_FSM=m # CONFIG_USB_OTG_WHITELIST is not set CONFIG_USB_OTG=y # CONFIG_USB_OXU210HP_HCD is not set @@ -6322,6 +6387,7 @@ CONFIG_USB_WDM=m # CONFIG_USB_WUSB_CBAF_DEBUG is not set CONFIG_USB_WUSB_CBAF=m CONFIG_USB_WUSB=m +CONFIG_USB_XHCI_DBGCAP=y CONFIG_USB_XHCI_HCD=y CONFIG_USB_XHCI_MVEBU=m CONFIG_USB_XHCI_PLATFORM=m @@ -6497,6 +6563,7 @@ CONFIG_VIRTIO_BLK=m # CONFIG_VIRTIO_BLK_SCSI is not set CONFIG_VIRTIO_CONSOLE=m CONFIG_VIRTIO_INPUT=m +CONFIG_VIRTIO_MENU=y # CONFIG_VIRTIO_MMIO_CMDLINE_DEVICES is not set CONFIG_VIRTIO_MMIO=m CONFIG_VIRTIO_NET=m @@ -6647,6 +6714,7 @@ CONFIG_XFS_QUOTA=y # CONFIG_XFS_WARN is not set # CONFIG_XILINX_DMA is not set CONFIG_XILINX_GMII2RGMII=m +CONFIG_XILINX_VCU=m # CONFIG_XILINX_WATCHDOG is not set # CONFIG_XILINX_ZYNQMP_DMA is not set CONFIG_XILLYBUS=m @@ -6675,6 +6743,7 @@ CONFIG_ZEROPLUS_FF=y CONFIG_ZISOFS=y CONFIG_ZLIB_DEFLATE=y CONFIG_ZLIB_INFLATE=y +CONFIG_ZOPT2201=m # CONFIG_ZPA2326 is not set CONFIG_ZRAM=m # CONFIG_ZRAM_WRITEBACK is not set diff --git a/kernel-armv7hl.config b/kernel-armv7hl.config index 8f496beb2..ef0c0f2cb 100644 --- a/kernel-armv7hl.config +++ b/kernel-armv7hl.config @@ -44,6 +44,7 @@ CONFIG_ACPI_ALS=m # CONFIG_ACPI_DEBUG is not set # CONFIG_ACPI_NFIT is not set CONFIG_ACPI_PCI_SLOT=y +CONFIG_ACPI_SPCR_TABLE=y # CONFIG_ACQUIRE_WDT is not set # CONFIG_AD2S1200 is not set # CONFIG_AD2S1210 is not set @@ -256,6 +257,7 @@ CONFIG_ARM_AMBA=y CONFIG_ARM_APPENDED_DTB=y CONFIG_ARM_ARCH_TIMER_EVTSTREAM=y CONFIG_ARM_ARCH_TIMER=y +CONFIG_ARM_ARMADA_37XX_CPUFREQ=m CONFIG_ARM_ASM_UNIFIED=y CONFIG_ARM_ATAG_DTB_COMPAT=y CONFIG_ARM_BIG_LITTLE_CPUFREQ=m @@ -316,6 +318,7 @@ CONFIG_ARM_PL172_MPMC=m CONFIG_ARM_PMU=y # CONFIG_ARM_PSCI_CHECKER is not set CONFIG_ARM_PSCI=y +# CONFIG_ARM_PTDUMP_DEBUGFS is not set # CONFIG_ARM_PTDUMP is not set CONFIG_ARM_RK3399_DMC_DEVFREQ=m CONFIG_ARM_SCPI_CPUFREQ=m @@ -360,6 +363,7 @@ CONFIG_ATH10K_DEBUGFS=y CONFIG_ATH10K=m CONFIG_ATH10K_PCI=m CONFIG_ATH10K_SDIO=m +# CONFIG_ATH10K_SPECTRAL is not set # CONFIG_ATH10K_TRACING is not set CONFIG_ATH10K_USB=m CONFIG_ATH5K_DEBUG=y @@ -373,6 +377,7 @@ CONFIG_ATH6KL_USB=m CONFIG_ATH9K_AHB=y CONFIG_ATH9K_BTCOEX_SUPPORT=y # CONFIG_ATH9K_CHANNEL_CONTEXT is not set +# CONFIG_ATH9K_COMMON_SPECTRAL is not set CONFIG_ATH9K_DEBUGFS=y # CONFIG_ATH9K_DEBUG is not set # CONFIG_ATH9K_DYNACK is not set @@ -580,6 +585,7 @@ CONFIG_BLK_DEV_LOOP=m CONFIG_BLK_DEV_LOOP_MIN_COUNT=0 CONFIG_BLK_DEV_MD=y CONFIG_BLK_DEV_NBD=m +# CONFIG_BLK_DEV_NULL_BLK_FAULT_INJECTION is not set CONFIG_BLK_DEV_NULL_BLK=m CONFIG_BLK_DEV_NVME=m # CONFIG_BLK_DEV_NVME_SCSI is not set @@ -636,6 +642,7 @@ CONFIG_BOOT_PRINTK_DELAY=y CONFIG_BOUNCE=y CONFIG_BPF_JIT_ALWAYS_ON=y CONFIG_BPF_JIT=y +# CONFIG_BPF_KPROBE_OVERRIDE is not set CONFIG_BPF_STREAM_PARSER=y CONFIG_BPF_SYSCALL=y CONFIG_BPQETHER=m @@ -691,7 +698,7 @@ CONFIG_BT_HCIBPA10X=m CONFIG_BT_HCIBT3C=m CONFIG_BT_HCIBTSDIO=m CONFIG_BT_HCIBTUART=m -CONFIG_BT_HCIBTUSB_AUTOSUSPEND=y +# CONFIG_BT_HCIBTUSB_AUTOSUSPEND is not set CONFIG_BT_HCIBTUSB_BCM=y CONFIG_BT_HCIBTUSB=m CONFIG_BT_HCIBTUSB_RTL=y @@ -870,6 +877,7 @@ CONFIG_CHARGER_TWL4030=m # CONFIG_CHASH_SELFTEST is not set # CONFIG_CHASH_STATS is not set CONFIG_CHECKPOINT_RESTORE=y +CONFIG_CHELSIO_IPSEC_INLINE=y CONFIG_CHELSIO_T1_1G=y CONFIG_CHELSIO_T1=m CONFIG_CHELSIO_T3=m @@ -895,6 +903,7 @@ CONFIG_CIFS_NFSD_EXPORT=y CONFIG_CIFS_POSIX=y CONFIG_CIFS_SMB2=y # CONFIG_CIFS_SMB311 is not set +# CONFIG_CIFS_SMB_DIRECT is not set # CONFIG_CIFS_STATS2 is not set CONFIG_CIFS_STATS=y CONFIG_CIFS_UPCALL=y @@ -1055,7 +1064,6 @@ CONFIG_CRYPTO_DEV_FSL_CAAM_RNG_API=m CONFIG_CRYPTO_DEV_HIFN_795X=m CONFIG_CRYPTO_DEV_HIFN_795X_RNG=y CONFIG_CRYPTO_DEV_MARVELL_CESA=m -CONFIG_CRYPTO_DEV_MV_CESA=m # CONFIG_CRYPTO_DEV_MXC_SCC is not set # CONFIG_CRYPTO_DEV_MXS_DCP is not set CONFIG_CRYPTO_DEV_NITROX_CNN55XX=m @@ -1220,6 +1228,7 @@ CONFIG_DEBUG_SHIRQ=y CONFIG_DEBUG_VM=y # CONFIG_DEBUG_WQ_FORCE_RR_CPU is not set # CONFIG_DEBUG_WW_MUTEX_SLOWPATH is not set +CONFIG_DEBUG_WX=y # CONFIG_DECNET is not set CONFIG_DEFAULT_CFQ=y CONFIG_DEFAULT_HOSTNAME="(none)" @@ -1296,6 +1305,7 @@ CONFIG_DM_SNAPSHOT=y CONFIG_DM_SWITCH=m CONFIG_DM_THIN_PROVISIONING=m CONFIG_DM_UEVENT=y +CONFIG_DM_UNSTRIPED=m CONFIG_DM_VERITY_FEC=y CONFIG_DM_VERITY=m CONFIG_DM_ZERO=y @@ -1319,7 +1329,7 @@ CONFIG_DRM_AMD_DC=y CONFIG_DRM_AMDGPU_CIK=y # CONFIG_DRM_AMDGPU_GART_DEBUGFS is not set CONFIG_DRM_AMDGPU=m -# CONFIG_DRM_AMDGPU_SI is not set +CONFIG_DRM_AMDGPU_SI=y CONFIG_DRM_AMDGPU_USERPTR=y CONFIG_DRM_AMD_POWERPLAY=y CONFIG_DRM_ANALOGIX_ANX78XX=m @@ -1338,22 +1348,19 @@ CONFIG_DRM_DW_HDMI_I2S_AUDIO=m CONFIG_DRM_DW_HDMI=m CONFIG_DRM_ETNAVIV=m # CONFIG_DRM_ETNAVIV_REGISTER_LOGGING is not set +CONFIG_DRM_ETNAVIV_THERMAL=y CONFIG_DRM_EXYNOS5433_DECON=y CONFIG_DRM_EXYNOS7_DECON=y CONFIG_DRM_EXYNOS_DPI=y CONFIG_DRM_EXYNOS_DP=y CONFIG_DRM_EXYNOS_DSI=y -CONFIG_DRM_EXYNOS_FIMC=y CONFIG_DRM_EXYNOS_FIMD=y CONFIG_DRM_EXYNOS_G2D=y -CONFIG_DRM_EXYNOS_GSC=y CONFIG_DRM_EXYNOS_HDMI=y # CONFIG_DRM_EXYNOS_IOMMU is not set -CONFIG_DRM_EXYNOS_IPP=y CONFIG_DRM_EXYNOS=m CONFIG_DRM_EXYNOS_MIC=y CONFIG_DRM_EXYNOS_MIXER=y -CONFIG_DRM_EXYNOS_ROTATOR=y CONFIG_DRM_EXYNOS_VIDI=y CONFIG_DRM_FBDEV_EMULATION=y CONFIG_DRM_FBDEV_OVERALLOC=100 @@ -1362,8 +1369,8 @@ CONFIG_DRM_HDLCD=m # CONFIG_DRM_HDLCD_SHOW_UNDERRUN is not set CONFIG_DRM_HISI_HIBMC=m CONFIG_DRM_I2C_ADV7511_AUDIO=y -# CONFIG_DRM_I2C_ADV7511_CEC is not set -# CONFIG_DRM_I2C_ADV7511 is not set +CONFIG_DRM_I2C_ADV7511_CEC=y +CONFIG_DRM_I2C_ADV7511=m CONFIG_DRM_I2C_ADV7533=y CONFIG_DRM_I2C_CH7006=m CONFIG_DRM_I2C_NXP_TDA998X=m @@ -1413,6 +1420,7 @@ CONFIG_DRM_OMAP_PANEL_SHARP_LS037V7DW01=m CONFIG_DRM_OMAP_PANEL_SONY_ACX565AKM=m CONFIG_DRM_OMAP_PANEL_TPO_TD028TTEC1=m CONFIG_DRM_OMAP_PANEL_TPO_TD043MTEA1=m +CONFIG_DRM_PANEL_ILITEK_IL9322=m # CONFIG_DRM_PANEL_INNOLUX_P079ZCA is not set # CONFIG_DRM_PANEL_JDI_LT070ME05000 is not set CONFIG_DRM_PANEL_LG_LG4573=m @@ -1503,6 +1511,7 @@ CONFIG_DVB_FIREDTV=m CONFIG_DVB_HOPPER=m CONFIG_DVB_MANTIS=m CONFIG_DVB_MAX_ADAPTERS=8 +# CONFIG_DVB_MMAP is not set CONFIG_DVB_MN88472=m CONFIG_DVB_MN88473=m CONFIG_DVB_NETUP_UNIDVB=m @@ -1516,6 +1525,7 @@ CONFIG_DVB_PT1=m CONFIG_DVB_SMIPCIE=m CONFIG_DVB_TTUSB_BUDGET=m CONFIG_DVB_TTUSB_DEC=m +# CONFIG_DVB_ULE_DEBUG is not set CONFIG_DVB_USB_A800=m CONFIG_DVB_USB_AF9005=m CONFIG_DVB_USB_AF9005_REMOTE=m @@ -1761,6 +1771,7 @@ CONFIG_FCOE=m CONFIG_FEALNX=m CONFIG_FEC=m CONFIG_FHANDLE=y +# CONFIG_FIND_BIT_BENCHMARK is not set # CONFIG_FIREWIRE is not set CONFIG_FIREWIRE_NET=m CONFIG_FIREWIRE_NOSY=m @@ -1808,6 +1819,7 @@ CONFIG_FTRACE_MCOUNT_RECORD=y # CONFIG_FTRACE_STARTUP_TEST is not set CONFIG_FTRACE_SYSCALLS=y CONFIG_FTRACE=y +# CONFIG_FTWDT010_WATCHDOG is not set # CONFIG_FUNCTION_GRAPH_TRACER is not set CONFIG_FUNCTION_PROFILER=y CONFIG_FUNCTION_TRACER=y @@ -1893,9 +1905,11 @@ CONFIG_GPIO_PCA953X_IRQ=y CONFIG_GPIO_PCA953X=y CONFIG_GPIO_PCF857X=m # CONFIG_GPIO_PCH is not set +# CONFIG_GPIO_PCIE_IDIO_24 is not set CONFIG_GPIO_PCI_IDIO_16=m # CONFIG_GPIO_PISOSR is not set CONFIG_GPIO_PL061=y +CONFIG_GPIO_RASPBERRYPI_EXP=m # CONFIG_GPIO_RDC321X is not set # CONFIG_GPIO_SCH311X is not set CONFIG_GPIO_STMPE=y @@ -1932,6 +1946,7 @@ CONFIG_HAMACHI=m CONFIG_HAMRADIO=y CONFIG_HANGCHECK_TIMER=m CONFIG_HAPPYMEAL=m +CONFIG_HARDENED_USERCOPY_FALLBACK=y CONFIG_HARDENED_USERCOPY=y CONFIG_HAVE_ARM_ARCH_TIMER=y CONFIG_HAVE_ARM_TWD=y @@ -1981,6 +1996,7 @@ CONFIG_HID_GYRATION=m CONFIG_HID_HOLTEK=m CONFIG_HID_ICADE=m CONFIG_HID_ITE=m +CONFIG_HID_JABRA=m CONFIG_HID_KENSINGTON=m CONFIG_HID_KEYTOUCH=m CONFIG_HID_KYE=m @@ -2123,6 +2139,7 @@ CONFIG_HWMON=y CONFIG_HW_PERF_EVENTS=y CONFIG_HWPOISON_INJECT=m CONFIG_HW_RANDOM_BCM2835=m +CONFIG_HW_RANDOM_EXYNOS=m CONFIG_HW_RANDOM_IMX_RNGC=m CONFIG_HW_RANDOM_MESON=m CONFIG_HW_RANDOM_MSM=m @@ -2131,7 +2148,7 @@ 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_TPM=y CONFIG_HW_RANDOM_VIRTIO=m CONFIG_HW_RANDOM=y CONFIG_HWSPINLOCK_OMAP=m @@ -2172,6 +2189,7 @@ CONFIG_I2C_DIOLAN_U2C=m # CONFIG_I2C_EG20T is not set # CONFIG_I2C_EMEV2 is not set CONFIG_I2C_EXYNOS5=m +# CONFIG_I2C_GPIO_FAULT_INJECTOR is not set CONFIG_I2C_GPIO=m CONFIG_I2C_HELPER_AUTO=y CONFIG_I2C_HID=m @@ -2259,6 +2277,7 @@ CONFIG_IGB_HWMON=y CONFIG_IGB=m CONFIG_IGBVF=m CONFIG_IIO_BUFFER_CB=m +CONFIG_IIO_BUFFER_HW_CONSUMER=m CONFIG_IIO_BUFFER=y CONFIG_IIO_CONFIGFS=m CONFIG_IIO_CONSUMERS_PER_TRIGGER=2 @@ -2465,6 +2484,7 @@ CONFIG_IP6_NF_MATCH_MH=m CONFIG_IP6_NF_MATCH_OPTS=m CONFIG_IP6_NF_MATCH_RPFILTER=m CONFIG_IP6_NF_MATCH_RT=m +CONFIG_IP6_NF_MATCH_SRH=m CONFIG_IP6_NF_NAT=m CONFIG_IP6_NF_RAW=m CONFIG_IP6_NF_SECURITY=m @@ -2597,7 +2617,6 @@ CONFIG_IPVTAP=m # CONFIG_IPW2200_DEBUG is not set # CONFIG_IPW2200 is not set CONFIG_IPWIRELESS=m -# CONFIG_IPX_INTERN is not set # CONFIG_IPX is not set # CONFIG_IRDA is not set CONFIG_IR_ENE=m @@ -2884,6 +2903,7 @@ CONFIG_LEDS_IS31FL32XX=m CONFIG_LEDS_LM3530=m # CONFIG_LEDS_LM355x is not set # CONFIG_LEDS_LM3642 is not set +CONFIG_LEDS_LM3692X=m # CONFIG_LEDS_LOCOMO is not set CONFIG_LEDS_LP3944=m CONFIG_LEDS_LP3952=m @@ -2920,6 +2940,7 @@ CONFIG_LEDS_TRIGGER_DISK=y CONFIG_LEDS_TRIGGER_GPIO=m CONFIG_LEDS_TRIGGER_HEARTBEAT=m CONFIG_LEDS_TRIGGER_MTD=y +CONFIG_LEDS_TRIGGER_NETDEV=m CONFIG_LEDS_TRIGGER_ONESHOT=m CONFIG_LEDS_TRIGGER_PANIC=y CONFIG_LEDS_TRIGGERS=y @@ -2952,11 +2973,11 @@ CONFIG_LIBFCOE=m CONFIG_LIQUIDIO_VF=m CONFIG_LIRC_BT829=m CONFIG_LIRC_IMON=m -CONFIG_LIRC=m CONFIG_LIRC_PARALLEL=m CONFIG_LIRC_SERIAL=m CONFIG_LIRC_SERIAL_TRANSMITTER=y CONFIG_LIRC_STAGING=y +CONFIG_LIRC=y CONFIG_LIRC_ZILOG=m # CONFIG_LIVEPATCH is not set # CONFIG_LKDTM is not set @@ -3128,6 +3149,7 @@ CONFIG_MEGARAID_MAILBOX=m CONFIG_MEGARAID_MM=m CONFIG_MEGARAID_NEWGEN=y CONFIG_MEGARAID_SAS=m +CONFIG_MELLANOX_PLATFORM=y CONFIG_MEMCG_SWAP_ENABLED=y CONFIG_MEMCG_SWAP=y CONFIG_MEMCG=y @@ -3176,6 +3198,7 @@ CONFIG_MFD_AXP20X=y CONFIG_MFD_BD9571MWV=m CONFIG_MFD_CORE=y # CONFIG_MFD_CPCAP is not set +CONFIG_MFD_CROS_EC_CHARDEV=m CONFIG_MFD_CROS_EC_I2C=m CONFIG_MFD_CROS_EC=m CONFIG_MFD_CROS_EC_SPI=m @@ -3219,8 +3242,6 @@ CONFIG_MFD_QCOM_RPM=m CONFIG_MFD_RK808=m # CONFIG_MFD_RN5T618 is not set # CONFIG_MFD_RT5033 is not set -CONFIG_MFD_RTSX_PCI=m -CONFIG_MFD_RTSX_USB=m CONFIG_MFD_SEC_CORE=y # CONFIG_MFD_SI476X_CORE is not set # CONFIG_MFD_SKY81452 is not set @@ -3236,7 +3257,7 @@ CONFIG_MFD_T7L66XB=y CONFIG_MFD_TC6387XB=y # CONFIG_MFD_TC6393XB is not set CONFIG_MFD_TI_AM335X_TSCADC=m -# CONFIG_MFD_TI_LMU is not set +CONFIG_MFD_TI_LMU=m # CONFIG_MFD_TI_LP873X is not set # CONFIG_MFD_TI_LP87565 is not set # CONFIG_MFD_TIMBERDALE is not set @@ -3274,6 +3295,8 @@ CONFIG_MII=m CONFIG_MINIX_FS=m CONFIG_MINIX_SUBPARTITION=y CONFIG_MISC_FILESYSTEMS=y +CONFIG_MISC_RTSX_PCI=m +CONFIG_MISC_RTSX_USB=m CONFIG_MISDN_AVMFRITZ=m CONFIG_MISDN_DSP=m CONFIG_MISDN_HFCMULTI=m @@ -3303,6 +3326,7 @@ CONFIG_MLX5_MPFS=y # CONFIG_MLX90614 is not set CONFIG_MLX_CPLD_PLATFORM=m CONFIG_MLXFW=m +CONFIG_MLXREG_HOTPLUG=m CONFIG_MLXSW_CORE_HWMON=y CONFIG_MLXSW_CORE=m CONFIG_MLXSW_CORE_THERMAL=y @@ -3325,6 +3349,7 @@ CONFIG_MMC_BCM2835=m CONFIG_MMC_BLOCK=m CONFIG_MMC_BLOCK_MINORS=8 CONFIG_MMC_CB710=m +CONFIG_MMC_CQHCI=m # CONFIG_MMC_DEBUG is not set CONFIG_MMC_DW_EXYNOS=m CONFIG_MMC_DW_K3=m @@ -3440,6 +3465,7 @@ CONFIG_MSM_MMCC_8974=m CONFIG_MSM_MMCC_8996=m CONFIG_MSPRO_BLOCK=m CONFIG_MT7601U=m +CONFIG_MT76x2E=m # CONFIG_MTD_ABSENT is not set # CONFIG_MTD_AFS_PARTS is not set # CONFIG_MTD_AR7_PARTS is not set @@ -3491,6 +3517,7 @@ CONFIG_MTD_NAND_GPIO=m CONFIG_MTD_NAND_GPMI_NAND=m # CONFIG_MTD_NAND_HISI504 is not set CONFIG_MTD_NAND=m +CONFIG_MTD_NAND_MARVELL=m # CONFIG_MTD_NAND_MTK is not set CONFIG_MTD_NAND_MXC=m CONFIG_MTD_NAND_NANDSIM=m @@ -3628,9 +3655,11 @@ CONFIG_NET_CORE=y # CONFIG_NET_DCCPPROBE is not set CONFIG_NETDEVICES=y CONFIG_NET_DEVLINK=m +# CONFIG_NETDEVSIM is not set CONFIG_NET_DROP_MONITOR=y CONFIG_NET_DSA_BCM_SF2=m CONFIG_NET_DSA_HWMON=y +# CONFIG_NET_DSA_LEGACY is not set CONFIG_NET_DSA_LOOP=m CONFIG_NET_DSA=m CONFIG_NET_DSA_MT7530=m @@ -3815,6 +3844,7 @@ CONFIG_NET_VENDOR_BROADCOM=y CONFIG_NET_VENDOR_CHELSIO=y # CONFIG_NET_VENDOR_CIRRUS is not set # CONFIG_NET_VENDOR_CISCO is not set +# CONFIG_NET_VENDOR_CORTINA is not set # CONFIG_NET_VENDOR_DEC is not set CONFIG_NET_VENDOR_DLINK=y CONFIG_NET_VENDOR_EMULEX=y @@ -3849,6 +3879,7 @@ CONFIG_NET_VENDOR_SILAN=y CONFIG_NET_VENDOR_SIS=y CONFIG_NET_VENDOR_SMSC=y # CONFIG_NET_VENDOR_SNI is not set +# CONFIG_NET_VENDOR_SOCIONEXT is not set # CONFIG_NET_VENDOR_SOLARFLARE is not set CONFIG_NET_VENDOR_STMICRO=y # CONFIG_NET_VENDOR_SUN is not set @@ -3927,6 +3958,10 @@ CONFIG_NFC_WILINK=m CONFIG_NF_DUP_IPV4=m CONFIG_NF_DUP_IPV6=m CONFIG_NF_DUP_NETDEV=m +CONFIG_NF_FLOW_TABLE_INET=m +CONFIG_NF_FLOW_TABLE_IPV4=m +CONFIG_NF_FLOW_TABLE_IPV6=m +CONFIG_NF_FLOW_TABLE=m CONFIG_NF_LOG_ARP=m CONFIG_NF_LOG_BRIDGE=m CONFIG_NF_LOG_IPV4=m @@ -3988,6 +4023,7 @@ CONFIG_NFT_FIB_INET=m CONFIG_NFT_FIB_IPV4=m CONFIG_NFT_FIB_IPV6=m CONFIG_NFT_FIB_NETDEV=m +CONFIG_NFT_FLOW_OFFLOAD=m CONFIG_NFT_FWD_NETDEV=m CONFIG_NFT_HASH=m CONFIG_NFT_LIMIT=m @@ -4273,6 +4309,7 @@ CONFIG_PCIEAER=y # CONFIG_PCIE_ARMADA_8K is not set # CONFIG_PCIEASPM_DEBUG is not set CONFIG_PCIEASPM=y +CONFIG_PCIE_CADENCE_HOST=y CONFIG_PCIE_DPC=y # CONFIG_PCIE_DW_HOST_ECAM is not set CONFIG_PCIE_DW_HOST=y @@ -4383,6 +4420,7 @@ CONFIG_PINCTRL_APQ8084=m CONFIG_PINCTRL_ARMADA_370=y CONFIG_PINCTRL_ARMADA_XP=y CONFIG_PINCTRL_AS3722=y +CONFIG_PINCTRL_AXP209=m # CONFIG_PINCTRL_BAYTRAIL is not set # CONFIG_PINCTRL_BROXTON is not set # CONFIG_PINCTRL_CANNONLAKE is not set @@ -4405,6 +4443,7 @@ CONFIG_PINCTRL_MSM8916=m CONFIG_PINCTRL_MSM8960=m # CONFIG_PINCTRL_MSM8994 is not set # CONFIG_PINCTRL_MSM8996 is not set +CONFIG_PINCTRL_MSM8998=m CONFIG_PINCTRL_MSM8X74=m CONFIG_PINCTRL_MVEBU=y CONFIG_PINCTRL_PALMAS=y @@ -4462,7 +4501,6 @@ CONFIG_POWER_RESET_AS3722=y # CONFIG_POWER_RESET_BRCMSTB is not set CONFIG_POWER_RESET_GPIO_RESTART=y CONFIG_POWER_RESET_GPIO=y -CONFIG_POWER_RESET_IMX=y # CONFIG_POWER_RESET_LTC2952 is not set CONFIG_POWER_RESET_MSM=y # CONFIG_POWER_RESET_QNAP is not set @@ -4550,9 +4588,11 @@ CONFIG_PXA_DMA=y # CONFIG_QCA7000 is not set # CONFIG_QCA7000_SPI is not set # CONFIG_QCA7000_UART is not set +CONFIG_QCOM_A53PLL=m CONFIG_QCOM_ADSP_PIL=m CONFIG_QCOM_APCS_IPC=m CONFIG_QCOM_BAM_DMA=m +CONFIG_QCOM_CLK_APCS_MSM8916=m CONFIG_QCOM_CLK_RPM=m CONFIG_QCOM_CLK_SMD_RPM=m CONFIG_QCOM_COINCELL=m @@ -4638,6 +4678,7 @@ CONFIG_RAID_ATTRS=m CONFIG_RAS_CEC=y CONFIG_RASPBERRYPI_FIRMWARE=y CONFIG_RASPBERRYPI_POWER=y +# CONFIG_RAVE_SP_CORE is not set CONFIG_RAW_DRIVER=y # CONFIG_RBTREE_TEST is not set CONFIG_RC_ATI_REMOTE=m @@ -4677,7 +4718,7 @@ CONFIG_RD_XZ=y # CONFIG_READABLE_ASM is not set CONFIG_REALTEK_AUTOPM=y CONFIG_REALTEK_PHY=m -# CONFIG_REFCOUNT_FULL is not set +CONFIG_REFCOUNT_FULL=y CONFIG_REGMAP_I2C=y CONFIG_REGMAP_IRQ=y CONFIG_REGMAP_MMIO=y @@ -4701,6 +4742,7 @@ CONFIG_REGULATOR_FIXED_VOLTAGE=y CONFIG_REGULATOR_GPIO=m CONFIG_REGULATOR_ISL6271A=m CONFIG_REGULATOR_ISL9305=m +CONFIG_REGULATOR_LM363X=m CONFIG_REGULATOR_LP3971=m CONFIG_REGULATOR_LP3972=m CONFIG_REGULATOR_LP872X=y @@ -4767,7 +4809,7 @@ CONFIG_RENESAS_PHY=m # CONFIG_RESET_ATTACK_MITIGATION is not set CONFIG_RESET_CONTROLLER=y CONFIG_RESET_GPIO=y -# CONFIG_RESET_HSDK_V1 is not set +CONFIG_RESET_IMX7=y CONFIG_RESET_SIMPLE=y # CONFIG_RESET_TI_SCI is not set # CONFIG_RESET_TI_SYSCON is not set @@ -4853,6 +4895,7 @@ CONFIG_RTC_DRV_AS3722=y CONFIG_RTC_DRV_BQ32K=m CONFIG_RTC_DRV_BQ4802=m CONFIG_RTC_DRV_CMOS=y +CONFIG_RTC_DRV_CROS_EC=m CONFIG_RTC_DRV_DA9052=m CONFIG_RTC_DRV_DA9055=m CONFIG_RTC_DRV_DS1286=m @@ -4904,6 +4947,7 @@ CONFIG_RTC_DRV_MC13XXX=m CONFIG_RTC_DRV_MSM6242=m CONFIG_RTC_DRV_MV=m CONFIG_RTC_DRV_MXC=m +CONFIG_RTC_DRV_MXC_V2=m CONFIG_RTC_DRV_OMAP=m CONFIG_RTC_DRV_PALMAS=m CONFIG_RTC_DRV_PCF2123=m @@ -4988,6 +5032,7 @@ CONFIG_RTLLIB=m # CONFIG_RTLWIFI_DEBUG is not set CONFIG_RTLWIFI=m # CONFIG_RTS5208 is not set +CONFIG_RUNTIME_TESTING_MENU=y CONFIG_S2IO=m CONFIG_S3C2410_WATCHDOG=m # CONFIG_SAMPLES is not set @@ -5000,13 +5045,13 @@ CONFIG_SATA_AHCI=y # CONFIG_SATA_DWC is not set CONFIG_SATA_HIGHBANK=m # CONFIG_SATA_INIC162X is not set -CONFIG_SATA_MOBILE_LPM_POLICY=3 +CONFIG_SATA_MOBILE_LPM_POLICY=0 CONFIG_SATA_MV=m # CONFIG_SATA_NV is not set CONFIG_SATA_PMP=y # CONFIG_SATA_PROMISE is not set # CONFIG_SATA_QSTOR is not set -# CONFIG_SATA_SIL24 is not set +CONFIG_SATA_SIL24=m # CONFIG_SATA_SIL is not set # CONFIG_SATA_SIS is not set # CONFIG_SATA_SVW is not set @@ -5138,6 +5183,7 @@ CONFIG_SCTP_COOKIE_HMAC_SHA1=y # CONFIG_SCTP_DEFAULT_COOKIE_HMAC_MD5 is not set # CONFIG_SCTP_DEFAULT_COOKIE_HMAC_NONE is not set CONFIG_SCTP_DEFAULT_COOKIE_HMAC_SHA1=y +CONFIG_SD_ADC_MODULATOR=m CONFIG_SDIO_UART=m CONFIG_SECCOMP=y CONFIG_SECONDARY_TRUSTED_KEYRING=y @@ -5319,6 +5365,7 @@ CONFIG_SENSORS_VT1211=m CONFIG_SENSORS_VT8231=m CONFIG_SENSORS_W83627EHF=m CONFIG_SENSORS_W83627HF=m +CONFIG_SENSORS_W83773G=m CONFIG_SENSORS_W83781D=m CONFIG_SENSORS_W83791D=m CONFIG_SENSORS_W83792D=m @@ -5347,7 +5394,8 @@ 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_OMAP=m +CONFIG_SERIAL_8250_OMAP_TTYO_FIXUP=y +CONFIG_SERIAL_8250_OMAP=y CONFIG_SERIAL_8250_PCI=y CONFIG_SERIAL_8250_RSA=y CONFIG_SERIAL_8250_RT288X=y @@ -5386,8 +5434,7 @@ CONFIG_SERIAL_MVEBU_CONSOLE=y CONFIG_SERIAL_MVEBU_UART=y # CONFIG_SERIAL_NONSTANDARD is not set CONFIG_SERIAL_OF_PLATFORM=y -CONFIG_SERIAL_OMAP_CONSOLE=y -CONFIG_SERIAL_OMAP=y +# CONFIG_SERIAL_OMAP is not set # CONFIG_SERIAL_PCH_UART is not set CONFIG_SERIAL_PXA_CONSOLE=y CONFIG_SERIAL_PXA=y @@ -5436,6 +5483,7 @@ CONFIG_SI7020=m # CONFIG_SIGMA is not set CONFIG_SIGNED_PE_FILE_VERIFICATION=y CONFIG_SIMPLE_PM_BUS=y +# CONFIG_SIOX is not set CONFIG_SIS190=m CONFIG_SIS900=m # CONFIG_SKFP is not set @@ -5448,6 +5496,8 @@ CONFIG_SLAB_FREELIST_HARDENED=y CONFIG_SLAB_FREELIST_RANDOM=y CONFIG_SLAB_MERGE_DEFAULT=y # CONFIG_SLICOSS is not set +CONFIG_SLIMBUS=m +CONFIG_SLIM_QCOM_CTRL=m CONFIG_SLIP_COMPRESSED=y CONFIG_SLIP=m # CONFIG_SLIP_MODE_SLIP6 is not set @@ -5713,6 +5763,7 @@ CONFIG_SND_SOC_LPASS_CPU=m CONFIG_SND_SOC_LPASS_PLATFORM=m CONFIG_SND_SOC=m CONFIG_SND_SOC_MAX98090=m +CONFIG_SND_SOC_MAX98373=m # CONFIG_SND_SOC_MAX98504 is not set # CONFIG_SND_SOC_MAX9860 is not set CONFIG_SND_SOC_MAX98927=m @@ -5727,6 +5778,8 @@ CONFIG_SND_SOC_ODROID=m # CONFIG_SND_SOC_PCM179X_I2C is not set # CONFIG_SND_SOC_PCM179X is not set # CONFIG_SND_SOC_PCM179X_SPI is not set +CONFIG_SND_SOC_PCM186X_I2C=m +CONFIG_SND_SOC_PCM186X_SPI=m # CONFIG_SND_SOC_PCM3168A_I2C is not set # CONFIG_SND_SOC_PCM3168A_SPI is not set CONFIG_SND_SOC_PCM512x_I2C=m @@ -5763,6 +5816,7 @@ CONFIG_SND_SOC_STORM=m # CONFIG_SND_SOC_TAS5086 is not set # CONFIG_SND_SOC_TAS571X is not set # CONFIG_SND_SOC_TAS5720 is not set +CONFIG_SND_SOC_TAS6424=m CONFIG_SND_SOC_TEGRA20_AC97=m CONFIG_SND_SOC_TEGRA20_DAS=m CONFIG_SND_SOC_TEGRA20_I2S=m @@ -5784,9 +5838,12 @@ CONFIG_SND_SOC_TLV320AIC23_I2C=m CONFIG_SND_SOC_TLV320AIC23=m CONFIG_SND_SOC_TLV320AIC23_SPI=m CONFIG_SND_SOC_TLV320AIC31XX=m +CONFIG_SND_SOC_TLV320AIC32X4_I2C=m +CONFIG_SND_SOC_TLV320AIC32X4_SPI=m CONFIG_SND_SOC_TLV320AIC3X=m CONFIG_SND_SOC_TPA6130A2=m CONFIG_SND_SOC_TS3A227E=m +CONFIG_SND_SOC_TSCS42XX=m CONFIG_SND_SOC_TWL4030=m CONFIG_SND_SOC_TWL6040=m # CONFIG_SND_SOC_WM8510 is not set @@ -5887,6 +5944,9 @@ CONFIG_SONY_FF=y # CONFIG_SONYPI is not set CONFIG_SOUND=m CONFIG_SOUND_OSS_CORE_PRECLAIM=y +CONFIG_SOUNDWIRE_BUS=m +CONFIG_SOUNDWIRE_CADENCE=m +CONFIG_SOUNDWIRE=y CONFIG_SPARSE_RCU_POINTER=y # CONFIG_SPEAKUP is not set # CONFIG_SPI_ALTERA is not set @@ -5942,6 +6002,7 @@ CONFIG_SPI=y # CONFIG_SPI_ZYNQMP_GQSPI is not set CONFIG_SPMI=m CONFIG_SPMI_MSM_PMIC_ARB=m +CONFIG_SPMI_PMIC_CLKDIV=m # CONFIG_SQUASHFS_4K_DEVBLK_SIZE is not set # CONFIG_SQUASHFS_EMBEDDED is not set CONFIG_SQUASHFS_LZ4=y @@ -5998,6 +6059,9 @@ CONFIG_STRIP_ASM_SYMS=y CONFIG_ST_THERMAL=m CONFIG_ST_THERMAL_MEMMAP=m # CONFIG_ST_THERMAL_SYSCFG is not set +CONFIG_ST_UVIS25_I2C=m +CONFIG_ST_UVIS25=m +CONFIG_ST_UVIS25_SPI=m CONFIG_SUN4I_A10_CCU=y CONFIG_SUN4I_EMAC=m CONFIG_SUN4I_GPADC=m @@ -6123,6 +6187,7 @@ CONFIG_TEGRA_IOMMU_SMMU=y CONFIG_TEGRA_IVC=y CONFIG_TEGRA_MC=y CONFIG_TEGRA_SOCTHERM=m +CONFIG_TEGRA_VDE=m CONFIG_TEGRA_WATCHDOG=m CONFIG_TEHUTI=m CONFIG_TELCLOCK=m @@ -6189,16 +6254,18 @@ CONFIG_TI_DAVINCI_EMAC=m CONFIG_TI_DAVINCI_MDIO=m CONFIG_TI_EDMA=y CONFIG_TI_EMIF=m +CONFIG_TI_EMIF_SRAM=m CONFIG_TIFM_7XX1=m CONFIG_TIFM_CORE=m CONFIG_TIGON3_HWMON=y CONFIG_TIGON3=m # CONFIG_TIMB_DMA is not set -# CONFIG_TIMER_STATS is not set +CONFIG_TINYDRM_ILI9225=m CONFIG_TINYDRM_MI0283QT=m CONFIG_TINYDRM_MIPI_DBI=m # CONFIG_TINYDRM_REPAPER is not set # CONFIG_TINYDRM_ST7586 is not set +CONFIG_TINYDRM_ST7735R=m CONFIG_TIPC=m # CONFIG_TIPC_MEDIA_IB is not set CONFIG_TIPC_MEDIA_UDP=y @@ -6370,6 +6437,7 @@ CONFIG_UIO_SERCOS3=m CONFIG_ULI526X=m # CONFIG_ULTRIX_PARTITION is not set # CONFIG_UNISYSSPAR is not set +# CONFIG_UNISYS_VISORBUS is not set CONFIG_UNIX98_PTYS=y CONFIG_UNIX_DIAG=m CONFIG_UNIXWARE_DISKLABEL=y @@ -6613,7 +6681,7 @@ CONFIG_USB_OHCI_HCD_PLATFORM=m 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 +CONFIG_USB_OTG_FSM=m # CONFIG_USB_OTG_WHITELIST is not set CONFIG_USB_OTG=y # CONFIG_USB_OXU210HP_HCD is not set @@ -6752,6 +6820,7 @@ CONFIG_USB_WDM=m # CONFIG_USB_WUSB_CBAF_DEBUG is not set CONFIG_USB_WUSB_CBAF=m CONFIG_USB_WUSB=m +CONFIG_USB_XHCI_DBGCAP=y CONFIG_USB_XHCI_HCD=y CONFIG_USB_XHCI_MVEBU=m CONFIG_USB_XHCI_PLATFORM=m @@ -6946,6 +7015,7 @@ CONFIG_VIRTIO_BLK=m # CONFIG_VIRTIO_BLK_SCSI is not set CONFIG_VIRTIO_CONSOLE=m CONFIG_VIRTIO_INPUT=m +CONFIG_VIRTIO_MENU=y # CONFIG_VIRTIO_MMIO_CMDLINE_DEVICES is not set CONFIG_VIRTIO_MMIO=m CONFIG_VIRTIO_NET=m @@ -7086,6 +7156,7 @@ CONFIG_XFS_QUOTA=y # CONFIG_XILINX_DMA is not set CONFIG_XILINX_EMACLITE=m CONFIG_XILINX_GMII2RGMII=m +CONFIG_XILINX_VCU=m CONFIG_XILINX_WATCHDOG=m CONFIG_XILINX_XADC=m # CONFIG_XILINX_ZYNQMP_DMA is not set @@ -7115,6 +7186,7 @@ CONFIG_ZEROPLUS_FF=y CONFIG_ZISOFS=y CONFIG_ZLIB_DEFLATE=y CONFIG_ZLIB_INFLATE=y +CONFIG_ZOPT2201=m # CONFIG_ZPA2326 is not set CONFIG_ZRAM=m # CONFIG_ZRAM_WRITEBACK is not set diff --git a/kernel-i686-PAE.config b/kernel-i686-PAE.config index 7d2eeff10..ce6300276 100644 --- a/kernel-i686-PAE.config +++ b/kernel-i686-PAE.config @@ -40,6 +40,7 @@ CONFIG_ACCESSIBILITY=y CONFIG_ACENIC=m # CONFIG_ACENIC_OMIT_TIGON_I is not set CONFIG_ACERHDF=m +CONFIG_ACER_WIRELESS=m CONFIG_ACER_WMI=m # CONFIG_ACORN_PARTITION is not set CONFIG_ACPI_AC=y @@ -75,6 +76,7 @@ CONFIG_ACPI_PROCFS=y CONFIG_ACPI_REV_OVERRIDE_POSSIBLE=y CONFIG_ACPI_SBS=m CONFIG_ACPI_SLEEP=y +CONFIG_ACPI_SPCR_TABLE=y CONFIG_ACPI_TABLE_UPGRADE=y CONFIG_ACPI_THERMAL=y CONFIG_ACPI_TOSHIBA=m @@ -250,6 +252,7 @@ CONFIG_ATH10K_DEBUGFS=y CONFIG_ATH10K=m CONFIG_ATH10K_PCI=m CONFIG_ATH10K_SDIO=m +# CONFIG_ATH10K_SPECTRAL is not set # CONFIG_ATH10K_TRACING is not set CONFIG_ATH10K_USB=m CONFIG_ATH5K_DEBUG=y @@ -263,6 +266,7 @@ CONFIG_ATH6KL_USB=m CONFIG_ATH9K_AHB=y CONFIG_ATH9K_BTCOEX_SUPPORT=y # CONFIG_ATH9K_CHANNEL_CONTEXT is not set +# CONFIG_ATH9K_COMMON_SPECTRAL is not set CONFIG_ATH9K_DEBUGFS=y # CONFIG_ATH9K_DEBUG is not set # CONFIG_ATH9K_DYNACK is not set @@ -448,6 +452,7 @@ CONFIG_BLK_DEV_LOOP=m CONFIG_BLK_DEV_LOOP_MIN_COUNT=0 CONFIG_BLK_DEV_MD=y CONFIG_BLK_DEV_NBD=m +# CONFIG_BLK_DEV_NULL_BLK_FAULT_INJECTION is not set CONFIG_BLK_DEV_NULL_BLK=m CONFIG_BLK_DEV_NVME=m # CONFIG_BLK_DEV_NVME_SCSI is not set @@ -502,6 +507,7 @@ CONFIG_BOOT_PRINTK_DELAY=y CONFIG_BOUNCE=y CONFIG_BPF_JIT_ALWAYS_ON=y CONFIG_BPF_JIT=y +# CONFIG_BPF_KPROBE_OVERRIDE is not set CONFIG_BPF_STREAM_PARSER=y CONFIG_BPF_SYSCALL=y CONFIG_BPQETHER=m @@ -557,7 +563,7 @@ CONFIG_BT_HCIBPA10X=m CONFIG_BT_HCIBT3C=m CONFIG_BT_HCIBTSDIO=m CONFIG_BT_HCIBTUART=m -CONFIG_BT_HCIBTUSB_AUTOSUSPEND=y +# CONFIG_BT_HCIBTUSB_AUTOSUSPEND is not set CONFIG_BT_HCIBTUSB_BCM=y CONFIG_BT_HCIBTUSB=m CONFIG_BT_HCIBTUSB_RTL=y @@ -719,6 +725,7 @@ CONFIG_CHARGER_SMB347=m # CONFIG_CHASH_SELFTEST is not set # CONFIG_CHASH_STATS is not set # CONFIG_CHECKPOINT_RESTORE is not set +CONFIG_CHELSIO_IPSEC_INLINE=y CONFIG_CHELSIO_T1_1G=y CONFIG_CHELSIO_T1=m CONFIG_CHELSIO_T3=m @@ -746,6 +753,7 @@ CONFIG_CIFS_NFSD_EXPORT=y CONFIG_CIFS_POSIX=y CONFIG_CIFS_SMB2=y # CONFIG_CIFS_SMB311 is not set +# CONFIG_CIFS_SMB_DIRECT is not set # CONFIG_CIFS_STATS2 is not set CONFIG_CIFS_STATS=y CONFIG_CIFS_UPCALL=y @@ -1030,8 +1038,8 @@ CONFIG_DELL_LAPTOP=m CONFIG_DELL_RBTN=m # CONFIG_DELL_RBU is not set CONFIG_DELL_SMBIOS=m -CONFIG_DELL_SMBIOS_SMM=m -CONFIG_DELL_SMBIOS_WMI=m +CONFIG_DELL_SMBIOS_SMM=y +CONFIG_DELL_SMBIOS_WMI=y CONFIG_DELL_SMO8800=m CONFIG_DELL_WMI_AIO=m CONFIG_DELL_WMI_LED=m @@ -1091,6 +1099,7 @@ CONFIG_DM_SNAPSHOT=y CONFIG_DM_SWITCH=m CONFIG_DM_THIN_PROVISIONING=m CONFIG_DM_UEVENT=y +CONFIG_DM_UNSTRIPED=m CONFIG_DM_VERITY_FEC=y CONFIG_DM_VERITY=m CONFIG_DM_ZERO=y @@ -1115,7 +1124,7 @@ CONFIG_DRM_AMD_DC=y CONFIG_DRM_AMDGPU_CIK=y # CONFIG_DRM_AMDGPU_GART_DEBUGFS is not set CONFIG_DRM_AMDGPU=m -# CONFIG_DRM_AMDGPU_SI is not set +CONFIG_DRM_AMDGPU_SI=y CONFIG_DRM_AMDGPU_USERPTR=y CONFIG_DRM_AMD_POWERPLAY=y CONFIG_DRM_ANALOGIX_ANX78XX=m @@ -1135,8 +1144,8 @@ CONFIG_DRM_GMA500=m # CONFIG_DRM_GMA600 is not set CONFIG_DRM_HISI_HIBMC=m CONFIG_DRM_I2C_ADV7511_AUDIO=y -# CONFIG_DRM_I2C_ADV7511_CEC is not set -# CONFIG_DRM_I2C_ADV7511 is not set +CONFIG_DRM_I2C_ADV7511_CEC=y +CONFIG_DRM_I2C_ADV7511=m CONFIG_DRM_I2C_ADV7533=y CONFIG_DRM_I2C_CH7006=m CONFIG_DRM_I2C_NXP_TDA998X=m @@ -1161,6 +1170,7 @@ CONFIG_DRM_MGAG200=m CONFIG_DRM_NOUVEAU_BACKLIGHT=y CONFIG_DRM_NOUVEAU=m # CONFIG_DRM_NXP_PTN3460 is not set +# CONFIG_DRM_PANEL_ILITEK_IL9322 is not set # CONFIG_DRM_PANEL_INNOLUX_P079ZCA is not set # CONFIG_DRM_PANEL_JDI_LT070ME05000 is not set # CONFIG_DRM_PANEL_LG_LG4573 is not set @@ -1235,6 +1245,7 @@ CONFIG_DVB_FIREDTV=m CONFIG_DVB_HOPPER=m CONFIG_DVB_MANTIS=m CONFIG_DVB_MAX_ADAPTERS=8 +# CONFIG_DVB_MMAP is not set CONFIG_DVB_MN88472=m CONFIG_DVB_MN88473=m CONFIG_DVB_NETUP_UNIDVB=m @@ -1248,6 +1259,7 @@ CONFIG_DVB_PT1=m CONFIG_DVB_SMIPCIE=m CONFIG_DVB_TTUSB_BUDGET=m CONFIG_DVB_TTUSB_DEC=m +# CONFIG_DVB_ULE_DEBUG is not set CONFIG_DVB_USB_A800=m CONFIG_DVB_USB_AF9005=m CONFIG_DVB_USB_AF9005_REMOTE=m @@ -1512,6 +1524,7 @@ CONFIG_FCOE=m # CONFIG_FDDI is not set CONFIG_FEALNX=m CONFIG_FHANDLE=y +# CONFIG_FIND_BIT_BENCHMARK is not set CONFIG_FIREWIRE=m CONFIG_FIREWIRE_NET=m CONFIG_FIREWIRE_NOSY=m @@ -1609,6 +1622,7 @@ CONFIG_GIGASET_M105=m # CONFIG_GOLDFISH is not set # CONFIG_GOOGLE_FIRMWARE is not set # CONFIG_GP2AP020A00F is not set +CONFIG_GPD_POCKET_FAN=m # CONFIG_GPIO_104_DIO_48E is not set # CONFIG_GPIO_104_IDI_48 is not set # CONFIG_GPIO_104_IDIO_16 is not set @@ -1647,6 +1661,7 @@ CONFIG_GPIOLIB=y # CONFIG_GPIO_PCA953X is not set # CONFIG_GPIO_PCF857X is not set # CONFIG_GPIO_PCH is not set +# CONFIG_GPIO_PCIE_IDIO_24 is not set CONFIG_GPIO_PCI_IDIO_16=m # CONFIG_GPIO_PISOSR is not set # CONFIG_GPIO_RDC321X is not set @@ -1677,6 +1692,7 @@ CONFIG_HAMACHI=m CONFIG_HAMRADIO=y CONFIG_HANGCHECK_TIMER=m CONFIG_HAPPYMEAL=m +CONFIG_HARDENED_USERCOPY_FALLBACK=y CONFIG_HARDENED_USERCOPY=y CONFIG_HARDLOCKUP_DETECTOR=y CONFIG_HD44780=m @@ -1724,6 +1740,7 @@ CONFIG_HID_HOLTEK=m CONFIG_HID_HYPERV_MOUSE=m CONFIG_HID_ICADE=m CONFIG_HID_ITE=m +CONFIG_HID_JABRA=m CONFIG_HID_KENSINGTON=m CONFIG_HID_KEYTOUCH=m CONFIG_HID_KYE=m @@ -1880,7 +1897,7 @@ CONFIG_HW_RANDOM_AMD=m CONFIG_HW_RANDOM_GEODE=m CONFIG_HW_RANDOM_INTEL=m CONFIG_HW_RANDOM_TIMERIOMEM=m -CONFIG_HW_RANDOM_TPM=m +CONFIG_HW_RANDOM_TPM=y CONFIG_HW_RANDOM_VIA=m CONFIG_HW_RANDOM_VIRTIO=m CONFIG_HW_RANDOM=y @@ -2009,6 +2026,7 @@ CONFIG_IGB_HWMON=y CONFIG_IGB=m CONFIG_IGBVF=m CONFIG_IIO_BUFFER_CB=m +CONFIG_IIO_BUFFER_HW_CONSUMER=m CONFIG_IIO_BUFFER=y CONFIG_IIO_CONFIGFS=m CONFIG_IIO_CONSUMERS_PER_TRIGGER=2 @@ -2159,6 +2177,7 @@ CONFIG_INT340X_THERMAL=m # CONFIG_INTEGRITY is not set # CONFIG_INTEL_ATOMISP is not set CONFIG_INTEL_BXT_PMIC_THERMAL=m +CONFIG_INTEL_CHTDC_TI_PWRBTN=m CONFIG_INTEL_CHT_INT33FE=m CONFIG_INTEL_HID_EVENT=m CONFIG_INTEL_IDLE=y @@ -2221,6 +2240,7 @@ CONFIG_IP6_NF_MATCH_MH=m CONFIG_IP6_NF_MATCH_OPTS=m CONFIG_IP6_NF_MATCH_RPFILTER=m CONFIG_IP6_NF_MATCH_RT=m +CONFIG_IP6_NF_MATCH_SRH=m CONFIG_IP6_NF_NAT=m CONFIG_IP6_NF_RAW=m CONFIG_IP6_NF_SECURITY=m @@ -2354,7 +2374,6 @@ CONFIG_IPW2200_PROMISCUOUS=y CONFIG_IPW2200_QOS=y CONFIG_IPW2200_RADIOTAP=y CONFIG_IPWIRELESS=m -# CONFIG_IPX_INTERN is not set # CONFIG_IPX is not set # CONFIG_IRDA is not set CONFIG_IR_ENE=m @@ -2513,7 +2532,7 @@ CONFIG_KERNEL_GZIP=y # CONFIG_KERNEL_LZO is not set # CONFIG_KEXEC_FILE is not set # CONFIG_KEXEC_JUMP is not set -# CONFIG_KEXEC_VERIFY_SIG is not set +# CONFIG_KEXEC_SIG is not set CONFIG_KEXEC=y # CONFIG_KEYBOARD_ADC is not set # CONFIG_KEYBOARD_ADP5588 is not set @@ -2620,6 +2639,7 @@ CONFIG_LEDS_IS31FL32XX=m CONFIG_LEDS_LM3530=m # CONFIG_LEDS_LM355x is not set # CONFIG_LEDS_LM3642 is not set +CONFIG_LEDS_LM3692X=m # CONFIG_LEDS_LOCOMO is not set CONFIG_LEDS_LP3944=m CONFIG_LEDS_LP3952=m @@ -2652,6 +2672,7 @@ CONFIG_LEDS_TRIGGER_DISK=y CONFIG_LEDS_TRIGGER_GPIO=m CONFIG_LEDS_TRIGGER_HEARTBEAT=m CONFIG_LEDS_TRIGGER_MTD=y +CONFIG_LEDS_TRIGGER_NETDEV=m CONFIG_LEDS_TRIGGER_ONESHOT=m CONFIG_LEDS_TRIGGER_PANIC=y CONFIG_LEDS_TRIGGERS=y @@ -2686,11 +2707,11 @@ CONFIG_LIBNVDIMM=y CONFIG_LIQUIDIO_VF=m CONFIG_LIRC_BT829=m CONFIG_LIRC_IMON=m -CONFIG_LIRC=m CONFIG_LIRC_PARALLEL=m CONFIG_LIRC_SERIAL=m CONFIG_LIRC_SERIAL_TRANSMITTER=y CONFIG_LIRC_STAGING=y +CONFIG_LIRC=y CONFIG_LIRC_ZILOG=m # CONFIG_LIVEPATCH is not set # CONFIG_LKDTM is not set @@ -2846,6 +2867,7 @@ CONFIG_MEGARAID_MAILBOX=m CONFIG_MEGARAID_MM=m CONFIG_MEGARAID_NEWGEN=y CONFIG_MEGARAID_SAS=m +CONFIG_MELLANOX_PLATFORM=y CONFIG_MEMCG_SWAP_ENABLED=y CONFIG_MEMCG_SWAP=y CONFIG_MEMCG=y @@ -2923,8 +2945,6 @@ CONFIG_MFD_INTEL_LPSS_PCI=m # CONFIG_MFD_RK808 is not set # CONFIG_MFD_RN5T618 is not set # CONFIG_MFD_RT5033 is not set -CONFIG_MFD_RTSX_PCI=m -CONFIG_MFD_RTSX_USB=m # CONFIG_MFD_SEC_CORE is not set # CONFIG_MFD_SI476X_CORE is not set # CONFIG_MFD_SKY81452 is not set @@ -2975,6 +2995,8 @@ CONFIG_MII=m CONFIG_MINIX_FS=m CONFIG_MINIX_SUBPARTITION=y CONFIG_MISC_FILESYSTEMS=y +CONFIG_MISC_RTSX_PCI=m +CONFIG_MISC_RTSX_USB=m CONFIG_MISDN_AVMFRITZ=m CONFIG_MISDN_DSP=m CONFIG_MISDN_HFCMULTI=m @@ -3007,6 +3029,8 @@ CONFIG_MLX5_MPFS=y # CONFIG_MLX90614 is not set CONFIG_MLX_CPLD_PLATFORM=m CONFIG_MLXFW=m +CONFIG_MLX_PLATFORM=m +CONFIG_MLXREG_HOTPLUG=m CONFIG_MLXSW_CORE_HWMON=y CONFIG_MLXSW_CORE=m CONFIG_MLXSW_CORE_THERMAL=y @@ -3027,6 +3051,7 @@ CONFIG_MMA7660=m CONFIG_MMC_BLOCK=m CONFIG_MMC_BLOCK_MINORS=8 CONFIG_MMC_CB710=m +CONFIG_MMC_CQHCI=m # CONFIG_MMC_DEBUG is not set CONFIG_MMC=m # CONFIG_MMC_MTK is not set @@ -3116,6 +3141,7 @@ CONFIG_MSI_WMI=m # CONFIG_MSM_GCC_8994 is not set CONFIG_MSPRO_BLOCK=m CONFIG_MT7601U=m +CONFIG_MT76x2E=m # CONFIG_MTD_ABSENT is not set # CONFIG_MTD_AR7_PARTS is not set # CONFIG_MTD_BLKDEVS is not set @@ -3262,9 +3288,11 @@ CONFIG_NET_CORE=y # CONFIG_NET_DCCPPROBE is not set CONFIG_NETDEVICES=y CONFIG_NET_DEVLINK=m +# CONFIG_NETDEVSIM is not set CONFIG_NET_DROP_MONITOR=y CONFIG_NET_DSA_BCM_SF2=m CONFIG_NET_DSA_HWMON=y +# CONFIG_NET_DSA_LEGACY is not set CONFIG_NET_DSA_LOOP=m CONFIG_NET_DSA=m CONFIG_NET_DSA_MT7530=m @@ -3448,6 +3476,7 @@ CONFIG_NET_VENDOR_BROCADE=y # CONFIG_NET_VENDOR_CAVIUM is not set CONFIG_NET_VENDOR_CHELSIO=y CONFIG_NET_VENDOR_CISCO=y +# CONFIG_NET_VENDOR_CORTINA is not set CONFIG_NET_VENDOR_DEC=y CONFIG_NET_VENDOR_DLINK=y CONFIG_NET_VENDOR_EMULEX=y @@ -3480,6 +3509,7 @@ CONFIG_NET_VENDOR_SILAN=y CONFIG_NET_VENDOR_SIS=y CONFIG_NET_VENDOR_SMSC=y # CONFIG_NET_VENDOR_SNI is not set +# CONFIG_NET_VENDOR_SOCIONEXT is not set CONFIG_NET_VENDOR_SOLARFLARE=y CONFIG_NET_VENDOR_STMICRO=y CONFIG_NET_VENDOR_SUN=y @@ -3559,6 +3589,10 @@ CONFIG_NFC_TRF7970A=m CONFIG_NF_DUP_IPV4=m CONFIG_NF_DUP_IPV6=m CONFIG_NF_DUP_NETDEV=m +CONFIG_NF_FLOW_TABLE_INET=m +CONFIG_NF_FLOW_TABLE_IPV4=m +CONFIG_NF_FLOW_TABLE_IPV6=m +CONFIG_NF_FLOW_TABLE=m CONFIG_NF_LOG_ARP=m CONFIG_NF_LOG_BRIDGE=m CONFIG_NF_LOG_IPV4=m @@ -3620,6 +3654,7 @@ CONFIG_NFT_FIB_INET=m CONFIG_NFT_FIB_IPV4=m CONFIG_NFT_FIB_IPV6=m CONFIG_NFT_FIB_NETDEV=m +CONFIG_NFT_FLOW_OFFLOAD=m CONFIG_NFT_FWD_NETDEV=m CONFIG_NFT_HASH=m CONFIG_NFT_LIMIT=m @@ -3864,6 +3899,7 @@ CONFIG_PCIEAER_INJECT=m CONFIG_PCIEAER=y # CONFIG_PCIEASPM_DEBUG is not set CONFIG_PCIEASPM=y +CONFIG_PCIE_CADENCE_HOST=y CONFIG_PCIE_DPC=y # CONFIG_PCIE_DW_HOST_ECAM is not set # CONFIG_PCIE_DW_PLAT is not set @@ -3939,6 +3975,7 @@ CONFIG_PHYSICAL_START=0x400000 CONFIG_PID_NS=y CONFIG_PINCONF=y # CONFIG_PINCTRL_AMD is not set +# CONFIG_PINCTRL_AXP209 is not set CONFIG_PINCTRL_BAYTRAIL=y CONFIG_PINCTRL_BROXTON=m # CONFIG_PINCTRL_CANNONLAKE is not set @@ -4125,6 +4162,7 @@ CONFIG_RAID_ATTRS=m CONFIG_RANDOMIZE_BASE=y # CONFIG_RAPIDIO is not set CONFIG_RAS_CEC=y +# CONFIG_RAVE_SP_CORE is not set CONFIG_RAW_DRIVER=y # CONFIG_RBTREE_TEST is not set CONFIG_RC_ATI_REMOTE=m @@ -4183,7 +4221,6 @@ CONFIG_RELOCATABLE=y CONFIG_REMOTEPROC=m CONFIG_RENESAS_PHY=m # CONFIG_RESET_ATTACK_MITIGATION is not set -# CONFIG_RESET_HSDK_V1 is not set # CONFIG_RESET_TI_SYSCON is not set CONFIG_RETPOLINE=y # CONFIG_RFD77402 is not set @@ -4359,6 +4396,7 @@ CONFIG_RTLLIB=m # CONFIG_RTLWIFI_DEBUG is not set CONFIG_RTLWIFI=m # CONFIG_RTS5208 is not set +CONFIG_RUNTIME_TESTING_MENU=y CONFIG_S2IO=m # CONFIG_SAMPLES is not set CONFIG_SAMSUNG_LAPTOP=m @@ -4370,7 +4408,7 @@ CONFIG_SATA_AHCI=y # CONFIG_SATA_DWC is not set # CONFIG_SATA_HIGHBANK is not set CONFIG_SATA_INIC162X=m -CONFIG_SATA_MOBILE_LPM_POLICY=3 +CONFIG_SATA_MOBILE_LPM_POLICY=0 CONFIG_SATA_MV=m CONFIG_SATA_NV=m CONFIG_SATA_PMP=y @@ -4511,6 +4549,7 @@ CONFIG_SCTP_COOKIE_HMAC_SHA1=y CONFIG_SCTP_DEFAULT_COOKIE_HMAC_SHA1=y # CONFIG_SCx200_ACB is not set # CONFIG_SCx200 is not set +CONFIG_SD_ADC_MODULATOR=m CONFIG_SDIO_UART=m CONFIG_SECCOMP=y CONFIG_SECONDARY_TRUSTED_KEYRING=y @@ -4700,6 +4739,7 @@ CONFIG_SENSORS_VT1211=m CONFIG_SENSORS_VT8231=m CONFIG_SENSORS_W83627EHF=m CONFIG_SENSORS_W83627HF=m +CONFIG_SENSORS_W83773G=m CONFIG_SENSORS_W83781D=m CONFIG_SENSORS_W83791D=m CONFIG_SENSORS_W83792D=m @@ -4788,6 +4828,7 @@ CONFIG_SH_ETH=m CONFIG_SIGNED_PE_FILE_VERIFICATION=y # CONFIG_SILEAD_DMI is not set # CONFIG_SIMPLE_PM_BUS is not set +# CONFIG_SIOX is not set CONFIG_SIS190=m CONFIG_SIS900=m # CONFIG_SKFP is not set @@ -4800,6 +4841,7 @@ CONFIG_SLAB_FREELIST_HARDENED=y CONFIG_SLAB_FREELIST_RANDOM=y CONFIG_SLAB_MERGE_DEFAULT=y # CONFIG_SLICOSS is not set +# CONFIG_SLIMBUS is not set CONFIG_SLIP_COMPRESSED=y CONFIG_SLIP=m # CONFIG_SLIP_MODE_SLIP6 is not set @@ -5042,8 +5084,9 @@ CONFIG_SND_SOC_INTEL_SKL_RT286_MACH=m CONFIG_SND_SOC_INTEL_SKYLAKE=m CONFIG_SND_SOC_INTEL_SST_ACPI=m CONFIG_SND_SOC_INTEL_SST=m -CONFIG_SND_SOC_INTEL_SST_TOPLEVEL=m +CONFIG_SND_SOC_INTEL_SST_TOPLEVEL=y CONFIG_SND_SOC=m +CONFIG_SND_SOC_MAX98373=m # CONFIG_SND_SOC_MAX98504 is not set # CONFIG_SND_SOC_MAX9860 is not set CONFIG_SND_SOC_MAX98927=m @@ -5056,6 +5099,8 @@ CONFIG_SND_SOC_NAU8824=m # CONFIG_SND_SOC_PCM179X_I2C is not set # CONFIG_SND_SOC_PCM179X is not set # CONFIG_SND_SOC_PCM179X_SPI is not set +CONFIG_SND_SOC_PCM186X_I2C=m +CONFIG_SND_SOC_PCM186X_SPI=m # CONFIG_SND_SOC_PCM3168A_I2C is not set # CONFIG_SND_SOC_PCM3168A_SPI is not set # CONFIG_SND_SOC_PCM512x_I2C is not set @@ -5075,13 +5120,17 @@ CONFIG_SND_SOC_SSM4567=m # CONFIG_SND_SOC_TAS5086 is not set # CONFIG_SND_SOC_TAS571X is not set # CONFIG_SND_SOC_TAS5720 is not set +CONFIG_SND_SOC_TAS6424=m # 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_TLV320AIC32X4_I2C=m +CONFIG_SND_SOC_TLV320AIC32X4_SPI=m # CONFIG_SND_SOC_TLV320AIC3X is not set # CONFIG_SND_SOC_TPA6130A2 is not set CONFIG_SND_SOC_TS3A227E=m +CONFIG_SND_SOC_TSCS42XX=m # CONFIG_SND_SOC_WM8510 is not set # CONFIG_SND_SOC_WM8523 is not set CONFIG_SND_SOC_WM8524=m @@ -5109,6 +5158,7 @@ CONFIG_SND_SOC_WM8524=m CONFIG_SND_SONICVIBES=m # CONFIG_SND_SPI is not set CONFIG_SND_SST_ATOM_HIFI2_PLATFORM=m +CONFIG_SND_SST_ATOM_HIFI2_PLATFORM_PCI=m # CONFIG_SND_SUPPORT_OLD_API is not set CONFIG_SND_TRIDENT=m CONFIG_SND_USB_6FIRE=m @@ -5146,6 +5196,10 @@ CONFIG_SONYPI_COMPAT=y CONFIG_SONYPI=m CONFIG_SOUND=m CONFIG_SOUND_OSS_CORE_PRECLAIM=y +CONFIG_SOUNDWIRE_BUS=m +CONFIG_SOUNDWIRE_CADENCE=m +CONFIG_SOUNDWIRE_INTEL=m +CONFIG_SOUNDWIRE=y CONFIG_SP5100_TCO=m CONFIG_SPARSE_IRQ=y CONFIG_SPARSE_RCU_POINTER=y @@ -5222,6 +5276,9 @@ CONFIG_STRICT_DEVMEM=y # CONFIG_STRING_SELFTEST is not set CONFIG_STRIP_ASM_SYMS=y # CONFIG_STRIP is not set +CONFIG_ST_UVIS25_I2C=m +CONFIG_ST_UVIS25=m +CONFIG_ST_UVIS25_SPI=m CONFIG_SUNDANCE=m # CONFIG_SUNDANCE_MMIO is not set CONFIG_SUNGEM=m @@ -5381,7 +5438,6 @@ CONFIG_TIFM_CORE=m CONFIG_TIGON3_HWMON=y CONFIG_TIGON3=m # CONFIG_TIMB_DMA is not set -# CONFIG_TIMER_STATS is not set CONFIG_TIPC=m # CONFIG_TIPC_MEDIA_IB is not set CONFIG_TIPC_MEDIA_UDP=y @@ -5544,6 +5600,7 @@ CONFIG_UIO_SERCOS3=m CONFIG_ULI526X=m # CONFIG_ULTRIX_PARTITION is not set # CONFIG_UNISYSSPAR is not set +# CONFIG_UNISYS_VISORBUS is not set CONFIG_UNIX98_PTYS=y CONFIG_UNIX_DIAG=m CONFIG_UNIXWARE_DISKLABEL=y @@ -5566,7 +5623,6 @@ 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_F_UAC1_LEGACY is not set CONFIG_USB_CXACRU=m # CONFIG_USB_CYPRESS_CY7C63 is not set @@ -5853,6 +5909,7 @@ CONFIG_USB_WDM=m # CONFIG_USB_WUSB_CBAF_DEBUG is not set CONFIG_USB_WUSB_CBAF=m CONFIG_USB_WUSB=m +CONFIG_USB_XHCI_DBGCAP=y CONFIG_USB_XHCI_HCD=y # CONFIG_USB_XHCI_PLATFORM is not set CONFIG_USB_XUSBATM=m @@ -5874,6 +5931,7 @@ CONFIG_UWB_WHCI=m CONFIG_V4L_MEM2MEM_DRIVERS=y # CONFIG_V4L_PLATFORM_DRIVERS is not set # CONFIG_V4L_TEST_DRIVERS is not set +# CONFIG_VBOXGUEST is not set # CONFIG_VCNL4000 is not set # CONFIG_VEML6070 is not set CONFIG_VETH=m @@ -5940,6 +5998,7 @@ CONFIG_VIDEO_GO7007_USB_S2250_BOARD=m CONFIG_VIDEO_HDPVR=m CONFIG_VIDEO_HEXIUM_GEMINI=m CONFIG_VIDEO_HEXIUM_ORION=m +CONFIG_VIDEO_IPU3_CIO2=m # CONFIG_VIDEO_IVTV_ALSA is not set # CONFIG_VIDEO_IVTV_DEPRECATED_IOCTLS is not set CONFIG_VIDEO_IVTV=m @@ -5995,12 +6054,13 @@ CONFIG_VIDEO_ZORAN_LML33R10=m CONFIG_VIDEO_ZORAN=m CONFIG_VIDEO_ZORAN_ZR36060=m # CONFIG_VIPERBOARD_ADC is not set -# CONFIG_VIRT_DRIVERS is not set +CONFIG_VIRT_DRIVERS=y CONFIG_VIRTIO_BALLOON=m CONFIG_VIRTIO_BLK=m # CONFIG_VIRTIO_BLK_SCSI is not set CONFIG_VIRTIO_CONSOLE=m CONFIG_VIRTIO_INPUT=m +CONFIG_VIRTIO_MENU=y # CONFIG_VIRTIO_MMIO_CMDLINE_DEVICES is not set CONFIG_VIRTIO_MMIO=m CONFIG_VIRTIO_NET=m @@ -6163,12 +6223,11 @@ CONFIG_X86_PAT=y CONFIG_X86_PCC_CPUFREQ=m CONFIG_X86_PKG_TEMP_THERMAL=m CONFIG_X86_PLATFORM_DEVICES=y -CONFIG_X86_PMEM_LEGACY=y +CONFIG_X86_PMEM_LEGACY=m CONFIG_X86_PM_TIMER=y # CONFIG_X86_POWERNOW_K6 is not set CONFIG_X86_POWERNOW_K7=y CONFIG_X86_POWERNOW_K8=m -# CONFIG_X86_PPRO_FENCE is not set # CONFIG_X86_PTDUMP is not set # CONFIG_X86_RDC321X is not set # CONFIG_X86_REBOOTFIXUPS is not set @@ -6227,6 +6286,7 @@ CONFIG_XFS_QUOTA=y # CONFIG_XFS_WARN is not set # CONFIG_XILINX_DMA is not set CONFIG_XILINX_GMII2RGMII=m +CONFIG_XILINX_VCU=m # CONFIG_XILINX_WATCHDOG is not set CONFIG_XILLYBUS=m # CONFIG_XILLYBUS_OF is not set @@ -6253,6 +6313,7 @@ CONFIG_ZISOFS=y CONFIG_ZLIB_DEFLATE=y CONFIG_ZLIB_INFLATE=y CONFIG_ZONE_DMA=y +CONFIG_ZOPT2201=m # CONFIG_ZPA2326 is not set CONFIG_ZRAM=m # CONFIG_ZRAM_WRITEBACK is not set diff --git a/kernel-i686-PAEdebug.config b/kernel-i686-PAEdebug.config index 66eff4bd4..a95ad4116 100644 --- a/kernel-i686-PAEdebug.config +++ b/kernel-i686-PAEdebug.config @@ -40,6 +40,7 @@ CONFIG_ACCESSIBILITY=y CONFIG_ACENIC=m # CONFIG_ACENIC_OMIT_TIGON_I is not set CONFIG_ACERHDF=m +CONFIG_ACER_WIRELESS=m CONFIG_ACER_WMI=m # CONFIG_ACORN_PARTITION is not set CONFIG_ACPI_AC=y @@ -75,6 +76,7 @@ CONFIG_ACPI_PROCFS=y CONFIG_ACPI_REV_OVERRIDE_POSSIBLE=y CONFIG_ACPI_SBS=m CONFIG_ACPI_SLEEP=y +CONFIG_ACPI_SPCR_TABLE=y CONFIG_ACPI_TABLE_UPGRADE=y CONFIG_ACPI_THERMAL=y CONFIG_ACPI_TOSHIBA=m @@ -251,6 +253,7 @@ CONFIG_ATH10K_DEBUGFS=y CONFIG_ATH10K=m CONFIG_ATH10K_PCI=m CONFIG_ATH10K_SDIO=m +# CONFIG_ATH10K_SPECTRAL is not set # CONFIG_ATH10K_TRACING is not set CONFIG_ATH10K_USB=m CONFIG_ATH5K_DEBUG=y @@ -264,6 +267,7 @@ CONFIG_ATH6KL_USB=m CONFIG_ATH9K_AHB=y CONFIG_ATH9K_BTCOEX_SUPPORT=y # CONFIG_ATH9K_CHANNEL_CONTEXT is not set +# CONFIG_ATH9K_COMMON_SPECTRAL is not set CONFIG_ATH9K_DEBUGFS=y # CONFIG_ATH9K_DEBUG is not set # CONFIG_ATH9K_DYNACK is not set @@ -449,6 +453,7 @@ CONFIG_BLK_DEV_LOOP=m CONFIG_BLK_DEV_LOOP_MIN_COUNT=0 CONFIG_BLK_DEV_MD=y CONFIG_BLK_DEV_NBD=m +CONFIG_BLK_DEV_NULL_BLK_FAULT_INJECTION=y CONFIG_BLK_DEV_NULL_BLK=m CONFIG_BLK_DEV_NVME=m # CONFIG_BLK_DEV_NVME_SCSI is not set @@ -503,6 +508,7 @@ CONFIG_BOOT_PRINTK_DELAY=y CONFIG_BOUNCE=y CONFIG_BPF_JIT_ALWAYS_ON=y CONFIG_BPF_JIT=y +CONFIG_BPF_KPROBE_OVERRIDE=y CONFIG_BPF_STREAM_PARSER=y CONFIG_BPF_SYSCALL=y CONFIG_BPQETHER=m @@ -558,7 +564,7 @@ CONFIG_BT_HCIBPA10X=m CONFIG_BT_HCIBT3C=m CONFIG_BT_HCIBTSDIO=m CONFIG_BT_HCIBTUART=m -CONFIG_BT_HCIBTUSB_AUTOSUSPEND=y +# CONFIG_BT_HCIBTUSB_AUTOSUSPEND is not set CONFIG_BT_HCIBTUSB_BCM=y CONFIG_BT_HCIBTUSB=m CONFIG_BT_HCIBTUSB_RTL=y @@ -720,6 +726,7 @@ CONFIG_CHARGER_SMB347=m # CONFIG_CHASH_SELFTEST is not set # CONFIG_CHASH_STATS is not set # CONFIG_CHECKPOINT_RESTORE is not set +CONFIG_CHELSIO_IPSEC_INLINE=y CONFIG_CHELSIO_T1_1G=y CONFIG_CHELSIO_T1=m CONFIG_CHELSIO_T3=m @@ -747,6 +754,7 @@ CONFIG_CIFS_NFSD_EXPORT=y CONFIG_CIFS_POSIX=y CONFIG_CIFS_SMB2=y # CONFIG_CIFS_SMB311 is not set +# CONFIG_CIFS_SMB_DIRECT is not set # CONFIG_CIFS_STATS2 is not set CONFIG_CIFS_STATS=y CONFIG_CIFS_UPCALL=y @@ -1040,8 +1048,8 @@ CONFIG_DELL_LAPTOP=m CONFIG_DELL_RBTN=m # CONFIG_DELL_RBU is not set CONFIG_DELL_SMBIOS=m -CONFIG_DELL_SMBIOS_SMM=m -CONFIG_DELL_SMBIOS_WMI=m +CONFIG_DELL_SMBIOS_SMM=y +CONFIG_DELL_SMBIOS_WMI=y CONFIG_DELL_SMO8800=m CONFIG_DELL_WMI_AIO=m CONFIG_DELL_WMI_LED=m @@ -1102,6 +1110,7 @@ CONFIG_DM_SNAPSHOT=y CONFIG_DM_SWITCH=m CONFIG_DM_THIN_PROVISIONING=m CONFIG_DM_UEVENT=y +CONFIG_DM_UNSTRIPED=m CONFIG_DM_VERITY_FEC=y CONFIG_DM_VERITY=m CONFIG_DM_ZERO=y @@ -1126,7 +1135,7 @@ CONFIG_DRM_AMD_DC=y CONFIG_DRM_AMDGPU_CIK=y # CONFIG_DRM_AMDGPU_GART_DEBUGFS is not set CONFIG_DRM_AMDGPU=m -# CONFIG_DRM_AMDGPU_SI is not set +CONFIG_DRM_AMDGPU_SI=y CONFIG_DRM_AMDGPU_USERPTR=y CONFIG_DRM_AMD_POWERPLAY=y CONFIG_DRM_ANALOGIX_ANX78XX=m @@ -1146,8 +1155,8 @@ CONFIG_DRM_GMA500=m # CONFIG_DRM_GMA600 is not set CONFIG_DRM_HISI_HIBMC=m CONFIG_DRM_I2C_ADV7511_AUDIO=y -# CONFIG_DRM_I2C_ADV7511_CEC is not set -# CONFIG_DRM_I2C_ADV7511 is not set +CONFIG_DRM_I2C_ADV7511_CEC=y +CONFIG_DRM_I2C_ADV7511=m CONFIG_DRM_I2C_ADV7533=y CONFIG_DRM_I2C_CH7006=m CONFIG_DRM_I2C_NXP_TDA998X=m @@ -1172,6 +1181,7 @@ CONFIG_DRM_MGAG200=m CONFIG_DRM_NOUVEAU_BACKLIGHT=y CONFIG_DRM_NOUVEAU=m # CONFIG_DRM_NXP_PTN3460 is not set +# CONFIG_DRM_PANEL_ILITEK_IL9322 is not set # CONFIG_DRM_PANEL_INNOLUX_P079ZCA is not set # CONFIG_DRM_PANEL_JDI_LT070ME05000 is not set # CONFIG_DRM_PANEL_LG_LG4573 is not set @@ -1246,6 +1256,7 @@ CONFIG_DVB_FIREDTV=m CONFIG_DVB_HOPPER=m CONFIG_DVB_MANTIS=m CONFIG_DVB_MAX_ADAPTERS=8 +# CONFIG_DVB_MMAP is not set CONFIG_DVB_MN88472=m CONFIG_DVB_MN88473=m CONFIG_DVB_NETUP_UNIDVB=m @@ -1259,6 +1270,7 @@ CONFIG_DVB_PT1=m CONFIG_DVB_SMIPCIE=m CONFIG_DVB_TTUSB_BUDGET=m CONFIG_DVB_TTUSB_DEC=m +# CONFIG_DVB_ULE_DEBUG is not set CONFIG_DVB_USB_A800=m CONFIG_DVB_USB_AF9005=m CONFIG_DVB_USB_AF9005_REMOTE=m @@ -1424,6 +1436,7 @@ CONFIG_F2FS_FS_XATTR=y # CONFIG_F2FS_IO_TRACE is not set CONFIG_F2FS_STAT_FS=y CONFIG_F71808E_WDT=m +CONFIG_FAIL_FUNCTION=y # CONFIG_FAIL_FUTEX is not set CONFIG_FAIL_IO_TIMEOUT=y CONFIG_FAIL_MAKE_REQUEST=y @@ -1530,6 +1543,7 @@ CONFIG_FCOE=m # CONFIG_FDDI is not set CONFIG_FEALNX=m CONFIG_FHANDLE=y +# CONFIG_FIND_BIT_BENCHMARK is not set CONFIG_FIREWIRE=m CONFIG_FIREWIRE_NET=m CONFIG_FIREWIRE_NOSY=m @@ -1627,6 +1641,7 @@ CONFIG_GIGASET_M105=m # CONFIG_GOLDFISH is not set # CONFIG_GOOGLE_FIRMWARE is not set # CONFIG_GP2AP020A00F is not set +CONFIG_GPD_POCKET_FAN=m # CONFIG_GPIO_104_DIO_48E is not set # CONFIG_GPIO_104_IDI_48 is not set # CONFIG_GPIO_104_IDIO_16 is not set @@ -1665,6 +1680,7 @@ CONFIG_GPIOLIB=y # CONFIG_GPIO_PCA953X is not set # CONFIG_GPIO_PCF857X is not set # CONFIG_GPIO_PCH is not set +# CONFIG_GPIO_PCIE_IDIO_24 is not set CONFIG_GPIO_PCI_IDIO_16=m # CONFIG_GPIO_PISOSR is not set # CONFIG_GPIO_RDC321X is not set @@ -1695,6 +1711,7 @@ CONFIG_HAMACHI=m CONFIG_HAMRADIO=y CONFIG_HANGCHECK_TIMER=m CONFIG_HAPPYMEAL=m +CONFIG_HARDENED_USERCOPY_FALLBACK=y CONFIG_HARDENED_USERCOPY=y CONFIG_HARDLOCKUP_DETECTOR=y CONFIG_HD44780=m @@ -1742,6 +1759,7 @@ CONFIG_HID_HOLTEK=m CONFIG_HID_HYPERV_MOUSE=m CONFIG_HID_ICADE=m CONFIG_HID_ITE=m +CONFIG_HID_JABRA=m CONFIG_HID_KENSINGTON=m CONFIG_HID_KEYTOUCH=m CONFIG_HID_KYE=m @@ -1898,7 +1916,7 @@ CONFIG_HW_RANDOM_AMD=m CONFIG_HW_RANDOM_GEODE=m CONFIG_HW_RANDOM_INTEL=m CONFIG_HW_RANDOM_TIMERIOMEM=m -CONFIG_HW_RANDOM_TPM=m +CONFIG_HW_RANDOM_TPM=y CONFIG_HW_RANDOM_VIA=m CONFIG_HW_RANDOM_VIRTIO=m CONFIG_HW_RANDOM=y @@ -2027,6 +2045,7 @@ CONFIG_IGB_HWMON=y CONFIG_IGB=m CONFIG_IGBVF=m CONFIG_IIO_BUFFER_CB=m +CONFIG_IIO_BUFFER_HW_CONSUMER=m CONFIG_IIO_BUFFER=y CONFIG_IIO_CONFIGFS=m CONFIG_IIO_CONSUMERS_PER_TRIGGER=2 @@ -2177,6 +2196,7 @@ CONFIG_INT340X_THERMAL=m # CONFIG_INTEGRITY is not set # CONFIG_INTEL_ATOMISP is not set CONFIG_INTEL_BXT_PMIC_THERMAL=m +CONFIG_INTEL_CHTDC_TI_PWRBTN=m CONFIG_INTEL_CHT_INT33FE=m CONFIG_INTEL_HID_EVENT=m CONFIG_INTEL_IDLE=y @@ -2239,6 +2259,7 @@ CONFIG_IP6_NF_MATCH_MH=m CONFIG_IP6_NF_MATCH_OPTS=m CONFIG_IP6_NF_MATCH_RPFILTER=m CONFIG_IP6_NF_MATCH_RT=m +CONFIG_IP6_NF_MATCH_SRH=m CONFIG_IP6_NF_NAT=m CONFIG_IP6_NF_RAW=m CONFIG_IP6_NF_SECURITY=m @@ -2372,7 +2393,6 @@ CONFIG_IPW2200_PROMISCUOUS=y CONFIG_IPW2200_QOS=y CONFIG_IPW2200_RADIOTAP=y CONFIG_IPWIRELESS=m -# CONFIG_IPX_INTERN is not set # CONFIG_IPX is not set # CONFIG_IRDA is not set CONFIG_IR_ENE=m @@ -2533,7 +2553,7 @@ CONFIG_KERNEL_GZIP=y # CONFIG_KERNEL_LZO is not set # CONFIG_KEXEC_FILE is not set # CONFIG_KEXEC_JUMP is not set -# CONFIG_KEXEC_VERIFY_SIG is not set +# CONFIG_KEXEC_SIG is not set CONFIG_KEXEC=y # CONFIG_KEYBOARD_ADC is not set # CONFIG_KEYBOARD_ADP5588 is not set @@ -2640,6 +2660,7 @@ CONFIG_LEDS_IS31FL32XX=m CONFIG_LEDS_LM3530=m # CONFIG_LEDS_LM355x is not set # CONFIG_LEDS_LM3642 is not set +CONFIG_LEDS_LM3692X=m # CONFIG_LEDS_LOCOMO is not set CONFIG_LEDS_LP3944=m CONFIG_LEDS_LP3952=m @@ -2672,6 +2693,7 @@ CONFIG_LEDS_TRIGGER_DISK=y CONFIG_LEDS_TRIGGER_GPIO=m CONFIG_LEDS_TRIGGER_HEARTBEAT=m CONFIG_LEDS_TRIGGER_MTD=y +CONFIG_LEDS_TRIGGER_NETDEV=m CONFIG_LEDS_TRIGGER_ONESHOT=m CONFIG_LEDS_TRIGGER_PANIC=y CONFIG_LEDS_TRIGGERS=y @@ -2706,11 +2728,11 @@ CONFIG_LIBNVDIMM=y CONFIG_LIQUIDIO_VF=m CONFIG_LIRC_BT829=m CONFIG_LIRC_IMON=m -CONFIG_LIRC=m CONFIG_LIRC_PARALLEL=m CONFIG_LIRC_SERIAL=m CONFIG_LIRC_SERIAL_TRANSMITTER=y CONFIG_LIRC_STAGING=y +CONFIG_LIRC=y CONFIG_LIRC_ZILOG=m # CONFIG_LIVEPATCH is not set # CONFIG_LKDTM is not set @@ -2866,6 +2888,7 @@ CONFIG_MEGARAID_MAILBOX=m CONFIG_MEGARAID_MM=m CONFIG_MEGARAID_NEWGEN=y CONFIG_MEGARAID_SAS=m +CONFIG_MELLANOX_PLATFORM=y CONFIG_MEMCG_SWAP_ENABLED=y CONFIG_MEMCG_SWAP=y CONFIG_MEMCG=y @@ -2943,8 +2966,6 @@ CONFIG_MFD_INTEL_LPSS_PCI=m # CONFIG_MFD_RK808 is not set # CONFIG_MFD_RN5T618 is not set # CONFIG_MFD_RT5033 is not set -CONFIG_MFD_RTSX_PCI=m -CONFIG_MFD_RTSX_USB=m # CONFIG_MFD_SEC_CORE is not set # CONFIG_MFD_SI476X_CORE is not set # CONFIG_MFD_SKY81452 is not set @@ -2995,6 +3016,8 @@ CONFIG_MII=m CONFIG_MINIX_FS=m CONFIG_MINIX_SUBPARTITION=y CONFIG_MISC_FILESYSTEMS=y +CONFIG_MISC_RTSX_PCI=m +CONFIG_MISC_RTSX_USB=m CONFIG_MISDN_AVMFRITZ=m CONFIG_MISDN_DSP=m CONFIG_MISDN_HFCMULTI=m @@ -3027,6 +3050,8 @@ CONFIG_MLX5_MPFS=y # CONFIG_MLX90614 is not set CONFIG_MLX_CPLD_PLATFORM=m CONFIG_MLXFW=m +CONFIG_MLX_PLATFORM=m +CONFIG_MLXREG_HOTPLUG=m CONFIG_MLXSW_CORE_HWMON=y CONFIG_MLXSW_CORE=m CONFIG_MLXSW_CORE_THERMAL=y @@ -3047,6 +3072,7 @@ CONFIG_MMA7660=m CONFIG_MMC_BLOCK=m CONFIG_MMC_BLOCK_MINORS=8 CONFIG_MMC_CB710=m +CONFIG_MMC_CQHCI=m # CONFIG_MMC_DEBUG is not set CONFIG_MMC=m # CONFIG_MMC_MTK is not set @@ -3136,6 +3162,7 @@ CONFIG_MSI_WMI=m # CONFIG_MSM_GCC_8994 is not set CONFIG_MSPRO_BLOCK=m CONFIG_MT7601U=m +CONFIG_MT76x2E=m # CONFIG_MTD_ABSENT is not set # CONFIG_MTD_AR7_PARTS is not set # CONFIG_MTD_BLKDEVS is not set @@ -3282,9 +3309,11 @@ CONFIG_NET_CORE=y # CONFIG_NET_DCCPPROBE is not set CONFIG_NETDEVICES=y CONFIG_NET_DEVLINK=m +# CONFIG_NETDEVSIM is not set CONFIG_NET_DROP_MONITOR=y CONFIG_NET_DSA_BCM_SF2=m CONFIG_NET_DSA_HWMON=y +# CONFIG_NET_DSA_LEGACY is not set CONFIG_NET_DSA_LOOP=m CONFIG_NET_DSA=m CONFIG_NET_DSA_MT7530=m @@ -3468,6 +3497,7 @@ CONFIG_NET_VENDOR_BROCADE=y # CONFIG_NET_VENDOR_CAVIUM is not set CONFIG_NET_VENDOR_CHELSIO=y CONFIG_NET_VENDOR_CISCO=y +# CONFIG_NET_VENDOR_CORTINA is not set CONFIG_NET_VENDOR_DEC=y CONFIG_NET_VENDOR_DLINK=y CONFIG_NET_VENDOR_EMULEX=y @@ -3500,6 +3530,7 @@ CONFIG_NET_VENDOR_SILAN=y CONFIG_NET_VENDOR_SIS=y CONFIG_NET_VENDOR_SMSC=y # CONFIG_NET_VENDOR_SNI is not set +# CONFIG_NET_VENDOR_SOCIONEXT is not set CONFIG_NET_VENDOR_SOLARFLARE=y CONFIG_NET_VENDOR_STMICRO=y CONFIG_NET_VENDOR_SUN=y @@ -3579,6 +3610,10 @@ CONFIG_NFC_TRF7970A=m CONFIG_NF_DUP_IPV4=m CONFIG_NF_DUP_IPV6=m CONFIG_NF_DUP_NETDEV=m +CONFIG_NF_FLOW_TABLE_INET=m +CONFIG_NF_FLOW_TABLE_IPV4=m +CONFIG_NF_FLOW_TABLE_IPV6=m +CONFIG_NF_FLOW_TABLE=m CONFIG_NF_LOG_ARP=m CONFIG_NF_LOG_BRIDGE=m CONFIG_NF_LOG_IPV4=m @@ -3640,6 +3675,7 @@ CONFIG_NFT_FIB_INET=m CONFIG_NFT_FIB_IPV4=m CONFIG_NFT_FIB_IPV6=m CONFIG_NFT_FIB_NETDEV=m +CONFIG_NFT_FLOW_OFFLOAD=m CONFIG_NFT_FWD_NETDEV=m CONFIG_NFT_HASH=m CONFIG_NFT_LIMIT=m @@ -3884,6 +3920,7 @@ CONFIG_PCIEAER_INJECT=m CONFIG_PCIEAER=y # CONFIG_PCIEASPM_DEBUG is not set CONFIG_PCIEASPM=y +CONFIG_PCIE_CADENCE_HOST=y CONFIG_PCIE_DPC=y # CONFIG_PCIE_DW_HOST_ECAM is not set # CONFIG_PCIE_DW_PLAT is not set @@ -3959,6 +3996,7 @@ CONFIG_PHYSICAL_START=0x400000 CONFIG_PID_NS=y CONFIG_PINCONF=y # CONFIG_PINCTRL_AMD is not set +# CONFIG_PINCTRL_AXP209 is not set CONFIG_PINCTRL_BAYTRAIL=y CONFIG_PINCTRL_BROXTON=m # CONFIG_PINCTRL_CANNONLAKE is not set @@ -4146,6 +4184,7 @@ CONFIG_RAID_ATTRS=m CONFIG_RANDOMIZE_BASE=y # CONFIG_RAPIDIO is not set CONFIG_RAS_CEC=y +# CONFIG_RAVE_SP_CORE is not set CONFIG_RAW_DRIVER=y # CONFIG_RBTREE_TEST is not set CONFIG_RC_ATI_REMOTE=m @@ -4204,7 +4243,6 @@ CONFIG_RELOCATABLE=y CONFIG_REMOTEPROC=m CONFIG_RENESAS_PHY=m # CONFIG_RESET_ATTACK_MITIGATION is not set -# CONFIG_RESET_HSDK_V1 is not set # CONFIG_RESET_TI_SYSCON is not set CONFIG_RETPOLINE=y # CONFIG_RFD77402 is not set @@ -4380,6 +4418,7 @@ CONFIG_RTLLIB=m # CONFIG_RTLWIFI_DEBUG is not set CONFIG_RTLWIFI=m # CONFIG_RTS5208 is not set +CONFIG_RUNTIME_TESTING_MENU=y CONFIG_S2IO=m # CONFIG_SAMPLES is not set CONFIG_SAMSUNG_LAPTOP=m @@ -4391,7 +4430,7 @@ CONFIG_SATA_AHCI=y # CONFIG_SATA_DWC is not set # CONFIG_SATA_HIGHBANK is not set CONFIG_SATA_INIC162X=m -CONFIG_SATA_MOBILE_LPM_POLICY=3 +CONFIG_SATA_MOBILE_LPM_POLICY=0 CONFIG_SATA_MV=m CONFIG_SATA_NV=m CONFIG_SATA_PMP=y @@ -4532,6 +4571,7 @@ CONFIG_SCTP_COOKIE_HMAC_SHA1=y CONFIG_SCTP_DEFAULT_COOKIE_HMAC_SHA1=y # CONFIG_SCx200_ACB is not set # CONFIG_SCx200 is not set +CONFIG_SD_ADC_MODULATOR=m CONFIG_SDIO_UART=m CONFIG_SECCOMP=y CONFIG_SECONDARY_TRUSTED_KEYRING=y @@ -4721,6 +4761,7 @@ CONFIG_SENSORS_VT1211=m CONFIG_SENSORS_VT8231=m CONFIG_SENSORS_W83627EHF=m CONFIG_SENSORS_W83627HF=m +CONFIG_SENSORS_W83773G=m CONFIG_SENSORS_W83781D=m CONFIG_SENSORS_W83791D=m CONFIG_SENSORS_W83792D=m @@ -4809,6 +4850,7 @@ CONFIG_SH_ETH=m CONFIG_SIGNED_PE_FILE_VERIFICATION=y # CONFIG_SILEAD_DMI is not set # CONFIG_SIMPLE_PM_BUS is not set +# CONFIG_SIOX is not set CONFIG_SIS190=m CONFIG_SIS900=m # CONFIG_SKFP is not set @@ -4821,6 +4863,7 @@ CONFIG_SLAB_FREELIST_HARDENED=y CONFIG_SLAB_FREELIST_RANDOM=y CONFIG_SLAB_MERGE_DEFAULT=y # CONFIG_SLICOSS is not set +# CONFIG_SLIMBUS is not set CONFIG_SLIP_COMPRESSED=y CONFIG_SLIP=m # CONFIG_SLIP_MODE_SLIP6 is not set @@ -5064,8 +5107,9 @@ CONFIG_SND_SOC_INTEL_SKL_RT286_MACH=m CONFIG_SND_SOC_INTEL_SKYLAKE=m CONFIG_SND_SOC_INTEL_SST_ACPI=m CONFIG_SND_SOC_INTEL_SST=m -CONFIG_SND_SOC_INTEL_SST_TOPLEVEL=m +CONFIG_SND_SOC_INTEL_SST_TOPLEVEL=y CONFIG_SND_SOC=m +CONFIG_SND_SOC_MAX98373=m # CONFIG_SND_SOC_MAX98504 is not set # CONFIG_SND_SOC_MAX9860 is not set CONFIG_SND_SOC_MAX98927=m @@ -5078,6 +5122,8 @@ CONFIG_SND_SOC_NAU8824=m # CONFIG_SND_SOC_PCM179X_I2C is not set # CONFIG_SND_SOC_PCM179X is not set # CONFIG_SND_SOC_PCM179X_SPI is not set +CONFIG_SND_SOC_PCM186X_I2C=m +CONFIG_SND_SOC_PCM186X_SPI=m # CONFIG_SND_SOC_PCM3168A_I2C is not set # CONFIG_SND_SOC_PCM3168A_SPI is not set # CONFIG_SND_SOC_PCM512x_I2C is not set @@ -5097,13 +5143,17 @@ CONFIG_SND_SOC_SSM4567=m # CONFIG_SND_SOC_TAS5086 is not set # CONFIG_SND_SOC_TAS571X is not set # CONFIG_SND_SOC_TAS5720 is not set +CONFIG_SND_SOC_TAS6424=m # 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_TLV320AIC32X4_I2C=m +CONFIG_SND_SOC_TLV320AIC32X4_SPI=m # CONFIG_SND_SOC_TLV320AIC3X is not set # CONFIG_SND_SOC_TPA6130A2 is not set CONFIG_SND_SOC_TS3A227E=m +CONFIG_SND_SOC_TSCS42XX=m # CONFIG_SND_SOC_WM8510 is not set # CONFIG_SND_SOC_WM8523 is not set CONFIG_SND_SOC_WM8524=m @@ -5131,6 +5181,7 @@ CONFIG_SND_SOC_WM8524=m CONFIG_SND_SONICVIBES=m # CONFIG_SND_SPI is not set CONFIG_SND_SST_ATOM_HIFI2_PLATFORM=m +CONFIG_SND_SST_ATOM_HIFI2_PLATFORM_PCI=m # CONFIG_SND_SUPPORT_OLD_API is not set CONFIG_SND_TRIDENT=m CONFIG_SND_USB_6FIRE=m @@ -5168,6 +5219,10 @@ CONFIG_SONYPI_COMPAT=y CONFIG_SONYPI=m CONFIG_SOUND=m CONFIG_SOUND_OSS_CORE_PRECLAIM=y +CONFIG_SOUNDWIRE_BUS=m +CONFIG_SOUNDWIRE_CADENCE=m +CONFIG_SOUNDWIRE_INTEL=m +CONFIG_SOUNDWIRE=y CONFIG_SP5100_TCO=m CONFIG_SPARSE_IRQ=y CONFIG_SPARSE_RCU_POINTER=y @@ -5244,6 +5299,9 @@ CONFIG_STRICT_DEVMEM=y # CONFIG_STRING_SELFTEST is not set CONFIG_STRIP_ASM_SYMS=y # CONFIG_STRIP is not set +CONFIG_ST_UVIS25_I2C=m +CONFIG_ST_UVIS25=m +CONFIG_ST_UVIS25_SPI=m CONFIG_SUNDANCE=m # CONFIG_SUNDANCE_MMIO is not set CONFIG_SUNGEM=m @@ -5403,7 +5461,6 @@ CONFIG_TIFM_CORE=m CONFIG_TIGON3_HWMON=y CONFIG_TIGON3=m # CONFIG_TIMB_DMA is not set -# CONFIG_TIMER_STATS is not set CONFIG_TIPC=m # CONFIG_TIPC_MEDIA_IB is not set CONFIG_TIPC_MEDIA_UDP=y @@ -5566,6 +5623,7 @@ CONFIG_UIO_SERCOS3=m CONFIG_ULI526X=m # CONFIG_ULTRIX_PARTITION is not set # CONFIG_UNISYSSPAR is not set +# CONFIG_UNISYS_VISORBUS is not set CONFIG_UNIX98_PTYS=y CONFIG_UNIX_DIAG=m CONFIG_UNIXWARE_DISKLABEL=y @@ -5588,7 +5646,6 @@ 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_F_UAC1_LEGACY is not set CONFIG_USB_CXACRU=m # CONFIG_USB_CYPRESS_CY7C63 is not set @@ -5875,6 +5932,7 @@ CONFIG_USB_WDM=m # CONFIG_USB_WUSB_CBAF_DEBUG is not set CONFIG_USB_WUSB_CBAF=m CONFIG_USB_WUSB=m +CONFIG_USB_XHCI_DBGCAP=y CONFIG_USB_XHCI_HCD=y # CONFIG_USB_XHCI_PLATFORM is not set CONFIG_USB_XUSBATM=m @@ -5896,6 +5954,7 @@ CONFIG_UWB_WHCI=m CONFIG_V4L_MEM2MEM_DRIVERS=y # CONFIG_V4L_PLATFORM_DRIVERS is not set # CONFIG_V4L_TEST_DRIVERS is not set +# CONFIG_VBOXGUEST is not set # CONFIG_VCNL4000 is not set # CONFIG_VEML6070 is not set CONFIG_VETH=m @@ -5962,6 +6021,7 @@ CONFIG_VIDEO_GO7007_USB_S2250_BOARD=m CONFIG_VIDEO_HDPVR=m CONFIG_VIDEO_HEXIUM_GEMINI=m CONFIG_VIDEO_HEXIUM_ORION=m +CONFIG_VIDEO_IPU3_CIO2=m # CONFIG_VIDEO_IVTV_ALSA is not set # CONFIG_VIDEO_IVTV_DEPRECATED_IOCTLS is not set CONFIG_VIDEO_IVTV=m @@ -6017,12 +6077,13 @@ CONFIG_VIDEO_ZORAN_LML33R10=m CONFIG_VIDEO_ZORAN=m CONFIG_VIDEO_ZORAN_ZR36060=m # CONFIG_VIPERBOARD_ADC is not set -# CONFIG_VIRT_DRIVERS is not set +CONFIG_VIRT_DRIVERS=y CONFIG_VIRTIO_BALLOON=m CONFIG_VIRTIO_BLK=m # CONFIG_VIRTIO_BLK_SCSI is not set CONFIG_VIRTIO_CONSOLE=m CONFIG_VIRTIO_INPUT=m +CONFIG_VIRTIO_MENU=y # CONFIG_VIRTIO_MMIO_CMDLINE_DEVICES is not set CONFIG_VIRTIO_MMIO=m CONFIG_VIRTIO_NET=m @@ -6185,12 +6246,11 @@ CONFIG_X86_PAT=y CONFIG_X86_PCC_CPUFREQ=m CONFIG_X86_PKG_TEMP_THERMAL=m CONFIG_X86_PLATFORM_DEVICES=y -CONFIG_X86_PMEM_LEGACY=y +CONFIG_X86_PMEM_LEGACY=m CONFIG_X86_PM_TIMER=y # CONFIG_X86_POWERNOW_K6 is not set CONFIG_X86_POWERNOW_K7=y CONFIG_X86_POWERNOW_K8=m -# CONFIG_X86_PPRO_FENCE is not set CONFIG_X86_PTDUMP=y # CONFIG_X86_RDC321X is not set # CONFIG_X86_REBOOTFIXUPS is not set @@ -6249,6 +6309,7 @@ CONFIG_XFS_QUOTA=y # CONFIG_XFS_WARN is not set # CONFIG_XILINX_DMA is not set CONFIG_XILINX_GMII2RGMII=m +CONFIG_XILINX_VCU=m # CONFIG_XILINX_WATCHDOG is not set CONFIG_XILLYBUS=m # CONFIG_XILLYBUS_OF is not set @@ -6275,6 +6336,7 @@ CONFIG_ZISOFS=y CONFIG_ZLIB_DEFLATE=y CONFIG_ZLIB_INFLATE=y CONFIG_ZONE_DMA=y +CONFIG_ZOPT2201=m # CONFIG_ZPA2326 is not set CONFIG_ZRAM=m # CONFIG_ZRAM_WRITEBACK is not set diff --git a/kernel-i686-debug.config b/kernel-i686-debug.config index ae3147718..3d4eaa2b4 100644 --- a/kernel-i686-debug.config +++ b/kernel-i686-debug.config @@ -40,6 +40,7 @@ CONFIG_ACCESSIBILITY=y CONFIG_ACENIC=m # CONFIG_ACENIC_OMIT_TIGON_I is not set CONFIG_ACERHDF=m +CONFIG_ACER_WIRELESS=m CONFIG_ACER_WMI=m # CONFIG_ACORN_PARTITION is not set CONFIG_ACPI_AC=y @@ -75,6 +76,7 @@ CONFIG_ACPI_PROCFS=y CONFIG_ACPI_REV_OVERRIDE_POSSIBLE=y CONFIG_ACPI_SBS=m CONFIG_ACPI_SLEEP=y +CONFIG_ACPI_SPCR_TABLE=y CONFIG_ACPI_TABLE_UPGRADE=y CONFIG_ACPI_THERMAL=y CONFIG_ACPI_TOSHIBA=m @@ -251,6 +253,7 @@ CONFIG_ATH10K_DEBUGFS=y CONFIG_ATH10K=m CONFIG_ATH10K_PCI=m CONFIG_ATH10K_SDIO=m +# CONFIG_ATH10K_SPECTRAL is not set # CONFIG_ATH10K_TRACING is not set CONFIG_ATH10K_USB=m CONFIG_ATH5K_DEBUG=y @@ -264,6 +267,7 @@ CONFIG_ATH6KL_USB=m CONFIG_ATH9K_AHB=y CONFIG_ATH9K_BTCOEX_SUPPORT=y # CONFIG_ATH9K_CHANNEL_CONTEXT is not set +# CONFIG_ATH9K_COMMON_SPECTRAL is not set CONFIG_ATH9K_DEBUGFS=y # CONFIG_ATH9K_DEBUG is not set # CONFIG_ATH9K_DYNACK is not set @@ -449,6 +453,7 @@ CONFIG_BLK_DEV_LOOP=m CONFIG_BLK_DEV_LOOP_MIN_COUNT=0 CONFIG_BLK_DEV_MD=y CONFIG_BLK_DEV_NBD=m +CONFIG_BLK_DEV_NULL_BLK_FAULT_INJECTION=y CONFIG_BLK_DEV_NULL_BLK=m CONFIG_BLK_DEV_NVME=m # CONFIG_BLK_DEV_NVME_SCSI is not set @@ -503,6 +508,7 @@ CONFIG_BOOT_PRINTK_DELAY=y CONFIG_BOUNCE=y CONFIG_BPF_JIT_ALWAYS_ON=y CONFIG_BPF_JIT=y +CONFIG_BPF_KPROBE_OVERRIDE=y CONFIG_BPF_STREAM_PARSER=y CONFIG_BPF_SYSCALL=y CONFIG_BPQETHER=m @@ -558,7 +564,7 @@ CONFIG_BT_HCIBPA10X=m CONFIG_BT_HCIBT3C=m CONFIG_BT_HCIBTSDIO=m CONFIG_BT_HCIBTUART=m -CONFIG_BT_HCIBTUSB_AUTOSUSPEND=y +# CONFIG_BT_HCIBTUSB_AUTOSUSPEND is not set CONFIG_BT_HCIBTUSB_BCM=y CONFIG_BT_HCIBTUSB=m CONFIG_BT_HCIBTUSB_RTL=y @@ -720,6 +726,7 @@ CONFIG_CHARGER_SMB347=m # CONFIG_CHASH_SELFTEST is not set # CONFIG_CHASH_STATS is not set # CONFIG_CHECKPOINT_RESTORE is not set +CONFIG_CHELSIO_IPSEC_INLINE=y CONFIG_CHELSIO_T1_1G=y CONFIG_CHELSIO_T1=m CONFIG_CHELSIO_T3=m @@ -747,6 +754,7 @@ CONFIG_CIFS_NFSD_EXPORT=y CONFIG_CIFS_POSIX=y CONFIG_CIFS_SMB2=y # CONFIG_CIFS_SMB311 is not set +# CONFIG_CIFS_SMB_DIRECT is not set # CONFIG_CIFS_STATS2 is not set CONFIG_CIFS_STATS=y CONFIG_CIFS_UPCALL=y @@ -1040,8 +1048,8 @@ CONFIG_DELL_LAPTOP=m CONFIG_DELL_RBTN=m # CONFIG_DELL_RBU is not set CONFIG_DELL_SMBIOS=m -CONFIG_DELL_SMBIOS_SMM=m -CONFIG_DELL_SMBIOS_WMI=m +CONFIG_DELL_SMBIOS_SMM=y +CONFIG_DELL_SMBIOS_WMI=y CONFIG_DELL_SMO8800=m CONFIG_DELL_WMI_AIO=m CONFIG_DELL_WMI_LED=m @@ -1102,6 +1110,7 @@ CONFIG_DM_SNAPSHOT=y CONFIG_DM_SWITCH=m CONFIG_DM_THIN_PROVISIONING=m CONFIG_DM_UEVENT=y +CONFIG_DM_UNSTRIPED=m CONFIG_DM_VERITY_FEC=y CONFIG_DM_VERITY=m CONFIG_DM_ZERO=y @@ -1126,7 +1135,7 @@ CONFIG_DRM_AMD_DC=y CONFIG_DRM_AMDGPU_CIK=y # CONFIG_DRM_AMDGPU_GART_DEBUGFS is not set CONFIG_DRM_AMDGPU=m -# CONFIG_DRM_AMDGPU_SI is not set +CONFIG_DRM_AMDGPU_SI=y CONFIG_DRM_AMDGPU_USERPTR=y CONFIG_DRM_AMD_POWERPLAY=y CONFIG_DRM_ANALOGIX_ANX78XX=m @@ -1146,8 +1155,8 @@ CONFIG_DRM_GMA500=m # CONFIG_DRM_GMA600 is not set CONFIG_DRM_HISI_HIBMC=m CONFIG_DRM_I2C_ADV7511_AUDIO=y -# CONFIG_DRM_I2C_ADV7511_CEC is not set -# CONFIG_DRM_I2C_ADV7511 is not set +CONFIG_DRM_I2C_ADV7511_CEC=y +CONFIG_DRM_I2C_ADV7511=m CONFIG_DRM_I2C_ADV7533=y CONFIG_DRM_I2C_CH7006=m CONFIG_DRM_I2C_NXP_TDA998X=m @@ -1172,6 +1181,7 @@ CONFIG_DRM_MGAG200=m CONFIG_DRM_NOUVEAU_BACKLIGHT=y CONFIG_DRM_NOUVEAU=m # CONFIG_DRM_NXP_PTN3460 is not set +# CONFIG_DRM_PANEL_ILITEK_IL9322 is not set # CONFIG_DRM_PANEL_INNOLUX_P079ZCA is not set # CONFIG_DRM_PANEL_JDI_LT070ME05000 is not set # CONFIG_DRM_PANEL_LG_LG4573 is not set @@ -1246,6 +1256,7 @@ CONFIG_DVB_FIREDTV=m CONFIG_DVB_HOPPER=m CONFIG_DVB_MANTIS=m CONFIG_DVB_MAX_ADAPTERS=8 +# CONFIG_DVB_MMAP is not set CONFIG_DVB_MN88472=m CONFIG_DVB_MN88473=m CONFIG_DVB_NETUP_UNIDVB=m @@ -1259,6 +1270,7 @@ CONFIG_DVB_PT1=m CONFIG_DVB_SMIPCIE=m CONFIG_DVB_TTUSB_BUDGET=m CONFIG_DVB_TTUSB_DEC=m +# CONFIG_DVB_ULE_DEBUG is not set CONFIG_DVB_USB_A800=m CONFIG_DVB_USB_AF9005=m CONFIG_DVB_USB_AF9005_REMOTE=m @@ -1424,6 +1436,7 @@ CONFIG_F2FS_FS_XATTR=y # CONFIG_F2FS_IO_TRACE is not set CONFIG_F2FS_STAT_FS=y CONFIG_F71808E_WDT=m +CONFIG_FAIL_FUNCTION=y # CONFIG_FAIL_FUTEX is not set CONFIG_FAIL_IO_TIMEOUT=y CONFIG_FAIL_MAKE_REQUEST=y @@ -1530,6 +1543,7 @@ CONFIG_FCOE=m # CONFIG_FDDI is not set CONFIG_FEALNX=m CONFIG_FHANDLE=y +# CONFIG_FIND_BIT_BENCHMARK is not set CONFIG_FIREWIRE=m CONFIG_FIREWIRE_NET=m CONFIG_FIREWIRE_NOSY=m @@ -1627,6 +1641,7 @@ CONFIG_GIGASET_M105=m # CONFIG_GOLDFISH is not set # CONFIG_GOOGLE_FIRMWARE is not set # CONFIG_GP2AP020A00F is not set +CONFIG_GPD_POCKET_FAN=m # CONFIG_GPIO_104_DIO_48E is not set # CONFIG_GPIO_104_IDI_48 is not set # CONFIG_GPIO_104_IDIO_16 is not set @@ -1665,6 +1680,7 @@ CONFIG_GPIOLIB=y # CONFIG_GPIO_PCA953X is not set # CONFIG_GPIO_PCF857X is not set # CONFIG_GPIO_PCH is not set +# CONFIG_GPIO_PCIE_IDIO_24 is not set CONFIG_GPIO_PCI_IDIO_16=m # CONFIG_GPIO_PISOSR is not set # CONFIG_GPIO_RDC321X is not set @@ -1695,6 +1711,7 @@ CONFIG_HAMACHI=m CONFIG_HAMRADIO=y CONFIG_HANGCHECK_TIMER=m CONFIG_HAPPYMEAL=m +CONFIG_HARDENED_USERCOPY_FALLBACK=y CONFIG_HARDENED_USERCOPY=y CONFIG_HARDLOCKUP_DETECTOR=y CONFIG_HD44780=m @@ -1742,6 +1759,7 @@ CONFIG_HID_HOLTEK=m CONFIG_HID_HYPERV_MOUSE=m CONFIG_HID_ICADE=m CONFIG_HID_ITE=m +CONFIG_HID_JABRA=m CONFIG_HID_KENSINGTON=m CONFIG_HID_KEYTOUCH=m CONFIG_HID_KYE=m @@ -1898,7 +1916,7 @@ CONFIG_HW_RANDOM_AMD=m CONFIG_HW_RANDOM_GEODE=m CONFIG_HW_RANDOM_INTEL=m CONFIG_HW_RANDOM_TIMERIOMEM=m -CONFIG_HW_RANDOM_TPM=m +CONFIG_HW_RANDOM_TPM=y CONFIG_HW_RANDOM_VIA=m CONFIG_HW_RANDOM_VIRTIO=m CONFIG_HW_RANDOM=y @@ -2027,6 +2045,7 @@ CONFIG_IGB_HWMON=y CONFIG_IGB=m CONFIG_IGBVF=m CONFIG_IIO_BUFFER_CB=m +CONFIG_IIO_BUFFER_HW_CONSUMER=m CONFIG_IIO_BUFFER=y CONFIG_IIO_CONFIGFS=m CONFIG_IIO_CONSUMERS_PER_TRIGGER=2 @@ -2177,6 +2196,7 @@ CONFIG_INT340X_THERMAL=m # CONFIG_INTEGRITY is not set # CONFIG_INTEL_ATOMISP is not set CONFIG_INTEL_BXT_PMIC_THERMAL=m +CONFIG_INTEL_CHTDC_TI_PWRBTN=m CONFIG_INTEL_CHT_INT33FE=m CONFIG_INTEL_HID_EVENT=m CONFIG_INTEL_IDLE=y @@ -2239,6 +2259,7 @@ CONFIG_IP6_NF_MATCH_MH=m CONFIG_IP6_NF_MATCH_OPTS=m CONFIG_IP6_NF_MATCH_RPFILTER=m CONFIG_IP6_NF_MATCH_RT=m +CONFIG_IP6_NF_MATCH_SRH=m CONFIG_IP6_NF_NAT=m CONFIG_IP6_NF_RAW=m CONFIG_IP6_NF_SECURITY=m @@ -2372,7 +2393,6 @@ CONFIG_IPW2200_PROMISCUOUS=y CONFIG_IPW2200_QOS=y CONFIG_IPW2200_RADIOTAP=y CONFIG_IPWIRELESS=m -# CONFIG_IPX_INTERN is not set # CONFIG_IPX is not set # CONFIG_IRDA is not set CONFIG_IR_ENE=m @@ -2533,7 +2553,7 @@ CONFIG_KERNEL_GZIP=y # CONFIG_KERNEL_LZO is not set # CONFIG_KEXEC_FILE is not set # CONFIG_KEXEC_JUMP is not set -# CONFIG_KEXEC_VERIFY_SIG is not set +# CONFIG_KEXEC_SIG is not set CONFIG_KEXEC=y # CONFIG_KEYBOARD_ADC is not set # CONFIG_KEYBOARD_ADP5588 is not set @@ -2640,6 +2660,7 @@ CONFIG_LEDS_IS31FL32XX=m CONFIG_LEDS_LM3530=m # CONFIG_LEDS_LM355x is not set # CONFIG_LEDS_LM3642 is not set +CONFIG_LEDS_LM3692X=m # CONFIG_LEDS_LOCOMO is not set CONFIG_LEDS_LP3944=m CONFIG_LEDS_LP3952=m @@ -2672,6 +2693,7 @@ CONFIG_LEDS_TRIGGER_DISK=y CONFIG_LEDS_TRIGGER_GPIO=m CONFIG_LEDS_TRIGGER_HEARTBEAT=m CONFIG_LEDS_TRIGGER_MTD=y +CONFIG_LEDS_TRIGGER_NETDEV=m CONFIG_LEDS_TRIGGER_ONESHOT=m CONFIG_LEDS_TRIGGER_PANIC=y CONFIG_LEDS_TRIGGERS=y @@ -2706,11 +2728,11 @@ CONFIG_LIBFCOE=m CONFIG_LIQUIDIO_VF=m CONFIG_LIRC_BT829=m CONFIG_LIRC_IMON=m -CONFIG_LIRC=m CONFIG_LIRC_PARALLEL=m CONFIG_LIRC_SERIAL=m CONFIG_LIRC_SERIAL_TRANSMITTER=y CONFIG_LIRC_STAGING=y +CONFIG_LIRC=y CONFIG_LIRC_ZILOG=m # CONFIG_LIVEPATCH is not set # CONFIG_LKDTM is not set @@ -2866,6 +2888,7 @@ CONFIG_MEGARAID_MAILBOX=m CONFIG_MEGARAID_MM=m CONFIG_MEGARAID_NEWGEN=y CONFIG_MEGARAID_SAS=m +CONFIG_MELLANOX_PLATFORM=y CONFIG_MEMCG_SWAP_ENABLED=y CONFIG_MEMCG_SWAP=y CONFIG_MEMCG=y @@ -2943,8 +2966,6 @@ CONFIG_MFD_INTEL_LPSS_PCI=m # CONFIG_MFD_RK808 is not set # CONFIG_MFD_RN5T618 is not set # CONFIG_MFD_RT5033 is not set -CONFIG_MFD_RTSX_PCI=m -CONFIG_MFD_RTSX_USB=m # CONFIG_MFD_SEC_CORE is not set # CONFIG_MFD_SI476X_CORE is not set # CONFIG_MFD_SKY81452 is not set @@ -2995,6 +3016,8 @@ CONFIG_MII=m CONFIG_MINIX_FS=m CONFIG_MINIX_SUBPARTITION=y CONFIG_MISC_FILESYSTEMS=y +CONFIG_MISC_RTSX_PCI=m +CONFIG_MISC_RTSX_USB=m CONFIG_MISDN_AVMFRITZ=m CONFIG_MISDN_DSP=m CONFIG_MISDN_HFCMULTI=m @@ -3027,6 +3050,8 @@ CONFIG_MLX5_MPFS=y # CONFIG_MLX90614 is not set CONFIG_MLX_CPLD_PLATFORM=m CONFIG_MLXFW=m +CONFIG_MLX_PLATFORM=m +CONFIG_MLXREG_HOTPLUG=m CONFIG_MLXSW_CORE_HWMON=y CONFIG_MLXSW_CORE=m CONFIG_MLXSW_CORE_THERMAL=y @@ -3047,6 +3072,7 @@ CONFIG_MMA7660=m CONFIG_MMC_BLOCK=m CONFIG_MMC_BLOCK_MINORS=8 CONFIG_MMC_CB710=m +CONFIG_MMC_CQHCI=m # CONFIG_MMC_DEBUG is not set CONFIG_MMC=m # CONFIG_MMC_MTK is not set @@ -3136,6 +3162,7 @@ CONFIG_MSI_WMI=m # CONFIG_MSM_GCC_8994 is not set CONFIG_MSPRO_BLOCK=m CONFIG_MT7601U=m +CONFIG_MT76x2E=m # CONFIG_MTD_ABSENT is not set # CONFIG_MTD_AR7_PARTS is not set # CONFIG_MTD_BLKDEVS is not set @@ -3282,9 +3309,11 @@ CONFIG_NET_CORE=y # CONFIG_NET_DCCPPROBE is not set CONFIG_NETDEVICES=y CONFIG_NET_DEVLINK=m +# CONFIG_NETDEVSIM is not set CONFIG_NET_DROP_MONITOR=y CONFIG_NET_DSA_BCM_SF2=m CONFIG_NET_DSA_HWMON=y +# CONFIG_NET_DSA_LEGACY is not set CONFIG_NET_DSA_LOOP=m CONFIG_NET_DSA=m CONFIG_NET_DSA_MT7530=m @@ -3468,6 +3497,7 @@ CONFIG_NET_VENDOR_BROCADE=y # CONFIG_NET_VENDOR_CAVIUM is not set CONFIG_NET_VENDOR_CHELSIO=y CONFIG_NET_VENDOR_CISCO=y +# CONFIG_NET_VENDOR_CORTINA is not set CONFIG_NET_VENDOR_DEC=y CONFIG_NET_VENDOR_DLINK=y CONFIG_NET_VENDOR_EMULEX=y @@ -3500,6 +3530,7 @@ CONFIG_NET_VENDOR_SILAN=y CONFIG_NET_VENDOR_SIS=y CONFIG_NET_VENDOR_SMSC=y # CONFIG_NET_VENDOR_SNI is not set +# CONFIG_NET_VENDOR_SOCIONEXT is not set CONFIG_NET_VENDOR_SOLARFLARE=y CONFIG_NET_VENDOR_STMICRO=y CONFIG_NET_VENDOR_SUN=y @@ -3579,6 +3610,10 @@ CONFIG_NFC_TRF7970A=m CONFIG_NF_DUP_IPV4=m CONFIG_NF_DUP_IPV6=m CONFIG_NF_DUP_NETDEV=m +CONFIG_NF_FLOW_TABLE_INET=m +CONFIG_NF_FLOW_TABLE_IPV4=m +CONFIG_NF_FLOW_TABLE_IPV6=m +CONFIG_NF_FLOW_TABLE=m CONFIG_NF_LOG_ARP=m CONFIG_NF_LOG_BRIDGE=m CONFIG_NF_LOG_IPV4=m @@ -3640,6 +3675,7 @@ CONFIG_NFT_FIB_INET=m CONFIG_NFT_FIB_IPV4=m CONFIG_NFT_FIB_IPV6=m CONFIG_NFT_FIB_NETDEV=m +CONFIG_NFT_FLOW_OFFLOAD=m CONFIG_NFT_FWD_NETDEV=m CONFIG_NFT_HASH=m CONFIG_NFT_LIMIT=m @@ -3884,6 +3920,7 @@ CONFIG_PCIEAER_INJECT=m CONFIG_PCIEAER=y # CONFIG_PCIEASPM_DEBUG is not set CONFIG_PCIEASPM=y +CONFIG_PCIE_CADENCE_HOST=y CONFIG_PCIE_DPC=y # CONFIG_PCIE_DW_HOST_ECAM is not set # CONFIG_PCIE_DW_PLAT is not set @@ -3959,6 +3996,7 @@ CONFIG_PHYSICAL_START=0x400000 CONFIG_PID_NS=y CONFIG_PINCONF=y # CONFIG_PINCTRL_AMD is not set +# CONFIG_PINCTRL_AXP209 is not set CONFIG_PINCTRL_BAYTRAIL=y CONFIG_PINCTRL_BROXTON=m # CONFIG_PINCTRL_CANNONLAKE is not set @@ -4146,6 +4184,7 @@ CONFIG_RAID_ATTRS=m CONFIG_RANDOMIZE_BASE=y # CONFIG_RAPIDIO is not set CONFIG_RAS_CEC=y +# CONFIG_RAVE_SP_CORE is not set CONFIG_RAW_DRIVER=y # CONFIG_RBTREE_TEST is not set CONFIG_RC_ATI_REMOTE=m @@ -4204,7 +4243,6 @@ CONFIG_RELOCATABLE=y CONFIG_REMOTEPROC=m CONFIG_RENESAS_PHY=m # CONFIG_RESET_ATTACK_MITIGATION is not set -# CONFIG_RESET_HSDK_V1 is not set # CONFIG_RESET_TI_SYSCON is not set CONFIG_RETPOLINE=y # CONFIG_RFD77402 is not set @@ -4380,6 +4418,7 @@ CONFIG_RTLLIB=m # CONFIG_RTLWIFI_DEBUG is not set CONFIG_RTLWIFI=m # CONFIG_RTS5208 is not set +CONFIG_RUNTIME_TESTING_MENU=y CONFIG_S2IO=m # CONFIG_SAMPLES is not set CONFIG_SAMSUNG_LAPTOP=m @@ -4391,7 +4430,7 @@ CONFIG_SATA_AHCI=y # CONFIG_SATA_DWC is not set # CONFIG_SATA_HIGHBANK is not set CONFIG_SATA_INIC162X=m -CONFIG_SATA_MOBILE_LPM_POLICY=3 +CONFIG_SATA_MOBILE_LPM_POLICY=0 CONFIG_SATA_MV=m CONFIG_SATA_NV=m CONFIG_SATA_PMP=y @@ -4532,6 +4571,7 @@ CONFIG_SCTP_COOKIE_HMAC_SHA1=y CONFIG_SCTP_DEFAULT_COOKIE_HMAC_SHA1=y # CONFIG_SCx200_ACB is not set # CONFIG_SCx200 is not set +CONFIG_SD_ADC_MODULATOR=m CONFIG_SDIO_UART=m CONFIG_SECCOMP=y CONFIG_SECONDARY_TRUSTED_KEYRING=y @@ -4721,6 +4761,7 @@ CONFIG_SENSORS_VT1211=m CONFIG_SENSORS_VT8231=m CONFIG_SENSORS_W83627EHF=m CONFIG_SENSORS_W83627HF=m +CONFIG_SENSORS_W83773G=m CONFIG_SENSORS_W83781D=m CONFIG_SENSORS_W83791D=m CONFIG_SENSORS_W83792D=m @@ -4809,6 +4850,7 @@ CONFIG_SH_ETH=m CONFIG_SIGNED_PE_FILE_VERIFICATION=y # CONFIG_SILEAD_DMI is not set # CONFIG_SIMPLE_PM_BUS is not set +# CONFIG_SIOX is not set CONFIG_SIS190=m CONFIG_SIS900=m # CONFIG_SKFP is not set @@ -4821,6 +4863,7 @@ CONFIG_SLAB_FREELIST_HARDENED=y CONFIG_SLAB_FREELIST_RANDOM=y CONFIG_SLAB_MERGE_DEFAULT=y # CONFIG_SLICOSS is not set +# CONFIG_SLIMBUS is not set CONFIG_SLIP_COMPRESSED=y CONFIG_SLIP=m # CONFIG_SLIP_MODE_SLIP6 is not set @@ -5064,8 +5107,9 @@ CONFIG_SND_SOC_INTEL_SKL_RT286_MACH=m CONFIG_SND_SOC_INTEL_SKYLAKE=m CONFIG_SND_SOC_INTEL_SST_ACPI=m CONFIG_SND_SOC_INTEL_SST=m -CONFIG_SND_SOC_INTEL_SST_TOPLEVEL=m +CONFIG_SND_SOC_INTEL_SST_TOPLEVEL=y CONFIG_SND_SOC=m +CONFIG_SND_SOC_MAX98373=m # CONFIG_SND_SOC_MAX98504 is not set # CONFIG_SND_SOC_MAX9860 is not set CONFIG_SND_SOC_MAX98927=m @@ -5078,6 +5122,8 @@ CONFIG_SND_SOC_NAU8824=m # CONFIG_SND_SOC_PCM179X_I2C is not set # CONFIG_SND_SOC_PCM179X is not set # CONFIG_SND_SOC_PCM179X_SPI is not set +CONFIG_SND_SOC_PCM186X_I2C=m +CONFIG_SND_SOC_PCM186X_SPI=m # CONFIG_SND_SOC_PCM3168A_I2C is not set # CONFIG_SND_SOC_PCM3168A_SPI is not set # CONFIG_SND_SOC_PCM512x_I2C is not set @@ -5097,13 +5143,17 @@ CONFIG_SND_SOC_SSM4567=m # CONFIG_SND_SOC_TAS5086 is not set # CONFIG_SND_SOC_TAS571X is not set # CONFIG_SND_SOC_TAS5720 is not set +CONFIG_SND_SOC_TAS6424=m # 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_TLV320AIC32X4_I2C=m +CONFIG_SND_SOC_TLV320AIC32X4_SPI=m # CONFIG_SND_SOC_TLV320AIC3X is not set # CONFIG_SND_SOC_TPA6130A2 is not set CONFIG_SND_SOC_TS3A227E=m +CONFIG_SND_SOC_TSCS42XX=m # CONFIG_SND_SOC_WM8510 is not set # CONFIG_SND_SOC_WM8523 is not set CONFIG_SND_SOC_WM8524=m @@ -5131,6 +5181,7 @@ CONFIG_SND_SOC_WM8524=m CONFIG_SND_SONICVIBES=m # CONFIG_SND_SPI is not set CONFIG_SND_SST_ATOM_HIFI2_PLATFORM=m +CONFIG_SND_SST_ATOM_HIFI2_PLATFORM_PCI=m # CONFIG_SND_SUPPORT_OLD_API is not set CONFIG_SND_TRIDENT=m CONFIG_SND_USB_6FIRE=m @@ -5168,6 +5219,10 @@ CONFIG_SONYPI_COMPAT=y CONFIG_SONYPI=m CONFIG_SOUND=m CONFIG_SOUND_OSS_CORE_PRECLAIM=y +CONFIG_SOUNDWIRE_BUS=m +CONFIG_SOUNDWIRE_CADENCE=m +CONFIG_SOUNDWIRE_INTEL=m +CONFIG_SOUNDWIRE=y CONFIG_SP5100_TCO=m CONFIG_SPARSE_IRQ=y CONFIG_SPARSE_RCU_POINTER=y @@ -5244,6 +5299,9 @@ CONFIG_STRICT_DEVMEM=y # CONFIG_STRING_SELFTEST is not set CONFIG_STRIP_ASM_SYMS=y # CONFIG_STRIP is not set +CONFIG_ST_UVIS25_I2C=m +CONFIG_ST_UVIS25=m +CONFIG_ST_UVIS25_SPI=m CONFIG_SUNDANCE=m # CONFIG_SUNDANCE_MMIO is not set CONFIG_SUNGEM=m @@ -5403,7 +5461,6 @@ CONFIG_TIFM_CORE=m CONFIG_TIGON3_HWMON=y CONFIG_TIGON3=m # CONFIG_TIMB_DMA is not set -# CONFIG_TIMER_STATS is not set CONFIG_TIPC=m # CONFIG_TIPC_MEDIA_IB is not set CONFIG_TIPC_MEDIA_UDP=y @@ -5566,6 +5623,7 @@ CONFIG_UIO_SERCOS3=m CONFIG_ULI526X=m # CONFIG_ULTRIX_PARTITION is not set # CONFIG_UNISYSSPAR is not set +# CONFIG_UNISYS_VISORBUS is not set CONFIG_UNIX98_PTYS=y CONFIG_UNIX_DIAG=m CONFIG_UNIXWARE_DISKLABEL=y @@ -5588,7 +5646,6 @@ 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_F_UAC1_LEGACY is not set CONFIG_USB_CXACRU=m # CONFIG_USB_CYPRESS_CY7C63 is not set @@ -5875,6 +5932,7 @@ CONFIG_USB_WDM=m # CONFIG_USB_WUSB_CBAF_DEBUG is not set CONFIG_USB_WUSB_CBAF=m CONFIG_USB_WUSB=m +CONFIG_USB_XHCI_DBGCAP=y CONFIG_USB_XHCI_HCD=y # CONFIG_USB_XHCI_PLATFORM is not set CONFIG_USB_XUSBATM=m @@ -5896,6 +5954,7 @@ CONFIG_UWB_WHCI=m CONFIG_V4L_MEM2MEM_DRIVERS=y # CONFIG_V4L_PLATFORM_DRIVERS is not set # CONFIG_V4L_TEST_DRIVERS is not set +# CONFIG_VBOXGUEST is not set # CONFIG_VCNL4000 is not set # CONFIG_VEML6070 is not set CONFIG_VETH=m @@ -5962,6 +6021,7 @@ CONFIG_VIDEO_GO7007_USB_S2250_BOARD=m CONFIG_VIDEO_HDPVR=m CONFIG_VIDEO_HEXIUM_GEMINI=m CONFIG_VIDEO_HEXIUM_ORION=m +CONFIG_VIDEO_IPU3_CIO2=m # CONFIG_VIDEO_IVTV_ALSA is not set # CONFIG_VIDEO_IVTV_DEPRECATED_IOCTLS is not set CONFIG_VIDEO_IVTV=m @@ -6017,12 +6077,13 @@ CONFIG_VIDEO_ZORAN_LML33R10=m CONFIG_VIDEO_ZORAN=m CONFIG_VIDEO_ZORAN_ZR36060=m # CONFIG_VIPERBOARD_ADC is not set -# CONFIG_VIRT_DRIVERS is not set +CONFIG_VIRT_DRIVERS=y CONFIG_VIRTIO_BALLOON=m CONFIG_VIRTIO_BLK=m # CONFIG_VIRTIO_BLK_SCSI is not set CONFIG_VIRTIO_CONSOLE=m CONFIG_VIRTIO_INPUT=m +CONFIG_VIRTIO_MENU=y # CONFIG_VIRTIO_MMIO_CMDLINE_DEVICES is not set CONFIG_VIRTIO_MMIO=m CONFIG_VIRTIO_NET=m @@ -6185,12 +6246,11 @@ CONFIG_X86_PAT=y CONFIG_X86_PCC_CPUFREQ=m CONFIG_X86_PKG_TEMP_THERMAL=m CONFIG_X86_PLATFORM_DEVICES=y -CONFIG_X86_PMEM_LEGACY=y +CONFIG_X86_PMEM_LEGACY=m CONFIG_X86_PM_TIMER=y # CONFIG_X86_POWERNOW_K6 is not set CONFIG_X86_POWERNOW_K7=y CONFIG_X86_POWERNOW_K8=m -# CONFIG_X86_PPRO_FENCE is not set CONFIG_X86_PTDUMP=y # CONFIG_X86_RDC321X is not set # CONFIG_X86_REBOOTFIXUPS is not set @@ -6247,6 +6307,7 @@ CONFIG_XFS_QUOTA=y # CONFIG_XFS_WARN is not set # CONFIG_XILINX_DMA is not set CONFIG_XILINX_GMII2RGMII=m +CONFIG_XILINX_VCU=m # CONFIG_XILINX_WATCHDOG is not set CONFIG_XILLYBUS=m # CONFIG_XILLYBUS_OF is not set @@ -6273,6 +6334,7 @@ CONFIG_ZISOFS=y CONFIG_ZLIB_DEFLATE=y CONFIG_ZLIB_INFLATE=y CONFIG_ZONE_DMA=y +CONFIG_ZOPT2201=m # CONFIG_ZPA2326 is not set CONFIG_ZRAM=m # CONFIG_ZRAM_WRITEBACK is not set diff --git a/kernel-i686.config b/kernel-i686.config index e6a81c4fb..1f56ec555 100644 --- a/kernel-i686.config +++ b/kernel-i686.config @@ -40,6 +40,7 @@ CONFIG_ACCESSIBILITY=y CONFIG_ACENIC=m # CONFIG_ACENIC_OMIT_TIGON_I is not set CONFIG_ACERHDF=m +CONFIG_ACER_WIRELESS=m CONFIG_ACER_WMI=m # CONFIG_ACORN_PARTITION is not set CONFIG_ACPI_AC=y @@ -75,6 +76,7 @@ CONFIG_ACPI_PROCFS=y CONFIG_ACPI_REV_OVERRIDE_POSSIBLE=y CONFIG_ACPI_SBS=m CONFIG_ACPI_SLEEP=y +CONFIG_ACPI_SPCR_TABLE=y CONFIG_ACPI_TABLE_UPGRADE=y CONFIG_ACPI_THERMAL=y CONFIG_ACPI_TOSHIBA=m @@ -250,6 +252,7 @@ CONFIG_ATH10K_DEBUGFS=y CONFIG_ATH10K=m CONFIG_ATH10K_PCI=m CONFIG_ATH10K_SDIO=m +# CONFIG_ATH10K_SPECTRAL is not set # CONFIG_ATH10K_TRACING is not set CONFIG_ATH10K_USB=m CONFIG_ATH5K_DEBUG=y @@ -263,6 +266,7 @@ CONFIG_ATH6KL_USB=m CONFIG_ATH9K_AHB=y CONFIG_ATH9K_BTCOEX_SUPPORT=y # CONFIG_ATH9K_CHANNEL_CONTEXT is not set +# CONFIG_ATH9K_COMMON_SPECTRAL is not set CONFIG_ATH9K_DEBUGFS=y # CONFIG_ATH9K_DEBUG is not set # CONFIG_ATH9K_DYNACK is not set @@ -448,6 +452,7 @@ CONFIG_BLK_DEV_LOOP=m CONFIG_BLK_DEV_LOOP_MIN_COUNT=0 CONFIG_BLK_DEV_MD=y CONFIG_BLK_DEV_NBD=m +# CONFIG_BLK_DEV_NULL_BLK_FAULT_INJECTION is not set CONFIG_BLK_DEV_NULL_BLK=m CONFIG_BLK_DEV_NVME=m # CONFIG_BLK_DEV_NVME_SCSI is not set @@ -502,6 +507,7 @@ CONFIG_BOOT_PRINTK_DELAY=y CONFIG_BOUNCE=y CONFIG_BPF_JIT_ALWAYS_ON=y CONFIG_BPF_JIT=y +# CONFIG_BPF_KPROBE_OVERRIDE is not set CONFIG_BPF_STREAM_PARSER=y CONFIG_BPF_SYSCALL=y CONFIG_BPQETHER=m @@ -557,7 +563,7 @@ CONFIG_BT_HCIBPA10X=m CONFIG_BT_HCIBT3C=m CONFIG_BT_HCIBTSDIO=m CONFIG_BT_HCIBTUART=m -CONFIG_BT_HCIBTUSB_AUTOSUSPEND=y +# CONFIG_BT_HCIBTUSB_AUTOSUSPEND is not set CONFIG_BT_HCIBTUSB_BCM=y CONFIG_BT_HCIBTUSB=m CONFIG_BT_HCIBTUSB_RTL=y @@ -719,6 +725,7 @@ CONFIG_CHARGER_SMB347=m # CONFIG_CHASH_SELFTEST is not set # CONFIG_CHASH_STATS is not set # CONFIG_CHECKPOINT_RESTORE is not set +CONFIG_CHELSIO_IPSEC_INLINE=y CONFIG_CHELSIO_T1_1G=y CONFIG_CHELSIO_T1=m CONFIG_CHELSIO_T3=m @@ -746,6 +753,7 @@ CONFIG_CIFS_NFSD_EXPORT=y CONFIG_CIFS_POSIX=y CONFIG_CIFS_SMB2=y # CONFIG_CIFS_SMB311 is not set +# CONFIG_CIFS_SMB_DIRECT is not set # CONFIG_CIFS_STATS2 is not set CONFIG_CIFS_STATS=y CONFIG_CIFS_UPCALL=y @@ -1030,8 +1038,8 @@ CONFIG_DELL_LAPTOP=m CONFIG_DELL_RBTN=m # CONFIG_DELL_RBU is not set CONFIG_DELL_SMBIOS=m -CONFIG_DELL_SMBIOS_SMM=m -CONFIG_DELL_SMBIOS_WMI=m +CONFIG_DELL_SMBIOS_SMM=y +CONFIG_DELL_SMBIOS_WMI=y CONFIG_DELL_SMO8800=m CONFIG_DELL_WMI_AIO=m CONFIG_DELL_WMI_LED=m @@ -1091,6 +1099,7 @@ CONFIG_DM_SNAPSHOT=y CONFIG_DM_SWITCH=m CONFIG_DM_THIN_PROVISIONING=m CONFIG_DM_UEVENT=y +CONFIG_DM_UNSTRIPED=m CONFIG_DM_VERITY_FEC=y CONFIG_DM_VERITY=m CONFIG_DM_ZERO=y @@ -1115,7 +1124,7 @@ CONFIG_DRM_AMD_DC=y CONFIG_DRM_AMDGPU_CIK=y # CONFIG_DRM_AMDGPU_GART_DEBUGFS is not set CONFIG_DRM_AMDGPU=m -# CONFIG_DRM_AMDGPU_SI is not set +CONFIG_DRM_AMDGPU_SI=y CONFIG_DRM_AMDGPU_USERPTR=y CONFIG_DRM_AMD_POWERPLAY=y CONFIG_DRM_ANALOGIX_ANX78XX=m @@ -1135,8 +1144,8 @@ CONFIG_DRM_GMA500=m # CONFIG_DRM_GMA600 is not set CONFIG_DRM_HISI_HIBMC=m CONFIG_DRM_I2C_ADV7511_AUDIO=y -# CONFIG_DRM_I2C_ADV7511_CEC is not set -# CONFIG_DRM_I2C_ADV7511 is not set +CONFIG_DRM_I2C_ADV7511_CEC=y +CONFIG_DRM_I2C_ADV7511=m CONFIG_DRM_I2C_ADV7533=y CONFIG_DRM_I2C_CH7006=m CONFIG_DRM_I2C_NXP_TDA998X=m @@ -1161,6 +1170,7 @@ CONFIG_DRM_MGAG200=m CONFIG_DRM_NOUVEAU_BACKLIGHT=y CONFIG_DRM_NOUVEAU=m # CONFIG_DRM_NXP_PTN3460 is not set +# CONFIG_DRM_PANEL_ILITEK_IL9322 is not set # CONFIG_DRM_PANEL_INNOLUX_P079ZCA is not set # CONFIG_DRM_PANEL_JDI_LT070ME05000 is not set # CONFIG_DRM_PANEL_LG_LG4573 is not set @@ -1235,6 +1245,7 @@ CONFIG_DVB_FIREDTV=m CONFIG_DVB_HOPPER=m CONFIG_DVB_MANTIS=m CONFIG_DVB_MAX_ADAPTERS=8 +# CONFIG_DVB_MMAP is not set CONFIG_DVB_MN88472=m CONFIG_DVB_MN88473=m CONFIG_DVB_NETUP_UNIDVB=m @@ -1248,6 +1259,7 @@ CONFIG_DVB_PT1=m CONFIG_DVB_SMIPCIE=m CONFIG_DVB_TTUSB_BUDGET=m CONFIG_DVB_TTUSB_DEC=m +# CONFIG_DVB_ULE_DEBUG is not set CONFIG_DVB_USB_A800=m CONFIG_DVB_USB_AF9005=m CONFIG_DVB_USB_AF9005_REMOTE=m @@ -1512,6 +1524,7 @@ CONFIG_FCOE=m # CONFIG_FDDI is not set CONFIG_FEALNX=m CONFIG_FHANDLE=y +# CONFIG_FIND_BIT_BENCHMARK is not set CONFIG_FIREWIRE=m CONFIG_FIREWIRE_NET=m CONFIG_FIREWIRE_NOSY=m @@ -1609,6 +1622,7 @@ CONFIG_GIGASET_M105=m # CONFIG_GOLDFISH is not set # CONFIG_GOOGLE_FIRMWARE is not set # CONFIG_GP2AP020A00F is not set +CONFIG_GPD_POCKET_FAN=m # CONFIG_GPIO_104_DIO_48E is not set # CONFIG_GPIO_104_IDI_48 is not set # CONFIG_GPIO_104_IDIO_16 is not set @@ -1647,6 +1661,7 @@ CONFIG_GPIOLIB=y # CONFIG_GPIO_PCA953X is not set # CONFIG_GPIO_PCF857X is not set # CONFIG_GPIO_PCH is not set +# CONFIG_GPIO_PCIE_IDIO_24 is not set CONFIG_GPIO_PCI_IDIO_16=m # CONFIG_GPIO_PISOSR is not set # CONFIG_GPIO_RDC321X is not set @@ -1677,6 +1692,7 @@ CONFIG_HAMACHI=m CONFIG_HAMRADIO=y CONFIG_HANGCHECK_TIMER=m CONFIG_HAPPYMEAL=m +CONFIG_HARDENED_USERCOPY_FALLBACK=y CONFIG_HARDENED_USERCOPY=y CONFIG_HARDLOCKUP_DETECTOR=y CONFIG_HD44780=m @@ -1724,6 +1740,7 @@ CONFIG_HID_HOLTEK=m CONFIG_HID_HYPERV_MOUSE=m CONFIG_HID_ICADE=m CONFIG_HID_ITE=m +CONFIG_HID_JABRA=m CONFIG_HID_KENSINGTON=m CONFIG_HID_KEYTOUCH=m CONFIG_HID_KYE=m @@ -1880,7 +1897,7 @@ CONFIG_HW_RANDOM_AMD=m CONFIG_HW_RANDOM_GEODE=m CONFIG_HW_RANDOM_INTEL=m CONFIG_HW_RANDOM_TIMERIOMEM=m -CONFIG_HW_RANDOM_TPM=m +CONFIG_HW_RANDOM_TPM=y CONFIG_HW_RANDOM_VIA=m CONFIG_HW_RANDOM_VIRTIO=m CONFIG_HW_RANDOM=y @@ -2009,6 +2026,7 @@ CONFIG_IGB_HWMON=y CONFIG_IGB=m CONFIG_IGBVF=m CONFIG_IIO_BUFFER_CB=m +CONFIG_IIO_BUFFER_HW_CONSUMER=m CONFIG_IIO_BUFFER=y CONFIG_IIO_CONFIGFS=m CONFIG_IIO_CONSUMERS_PER_TRIGGER=2 @@ -2159,6 +2177,7 @@ CONFIG_INT340X_THERMAL=m # CONFIG_INTEGRITY is not set # CONFIG_INTEL_ATOMISP is not set CONFIG_INTEL_BXT_PMIC_THERMAL=m +CONFIG_INTEL_CHTDC_TI_PWRBTN=m CONFIG_INTEL_CHT_INT33FE=m CONFIG_INTEL_HID_EVENT=m CONFIG_INTEL_IDLE=y @@ -2221,6 +2240,7 @@ CONFIG_IP6_NF_MATCH_MH=m CONFIG_IP6_NF_MATCH_OPTS=m CONFIG_IP6_NF_MATCH_RPFILTER=m CONFIG_IP6_NF_MATCH_RT=m +CONFIG_IP6_NF_MATCH_SRH=m CONFIG_IP6_NF_NAT=m CONFIG_IP6_NF_RAW=m CONFIG_IP6_NF_SECURITY=m @@ -2354,7 +2374,6 @@ CONFIG_IPW2200_PROMISCUOUS=y CONFIG_IPW2200_QOS=y CONFIG_IPW2200_RADIOTAP=y CONFIG_IPWIRELESS=m -# CONFIG_IPX_INTERN is not set # CONFIG_IPX is not set # CONFIG_IRDA is not set CONFIG_IR_ENE=m @@ -2513,7 +2532,7 @@ CONFIG_KERNEL_GZIP=y # CONFIG_KERNEL_LZO is not set # CONFIG_KEXEC_FILE is not set # CONFIG_KEXEC_JUMP is not set -# CONFIG_KEXEC_VERIFY_SIG is not set +# CONFIG_KEXEC_SIG is not set CONFIG_KEXEC=y # CONFIG_KEYBOARD_ADC is not set # CONFIG_KEYBOARD_ADP5588 is not set @@ -2620,6 +2639,7 @@ CONFIG_LEDS_IS31FL32XX=m CONFIG_LEDS_LM3530=m # CONFIG_LEDS_LM355x is not set # CONFIG_LEDS_LM3642 is not set +CONFIG_LEDS_LM3692X=m # CONFIG_LEDS_LOCOMO is not set CONFIG_LEDS_LP3944=m CONFIG_LEDS_LP3952=m @@ -2652,6 +2672,7 @@ CONFIG_LEDS_TRIGGER_DISK=y CONFIG_LEDS_TRIGGER_GPIO=m CONFIG_LEDS_TRIGGER_HEARTBEAT=m CONFIG_LEDS_TRIGGER_MTD=y +CONFIG_LEDS_TRIGGER_NETDEV=m CONFIG_LEDS_TRIGGER_ONESHOT=m CONFIG_LEDS_TRIGGER_PANIC=y CONFIG_LEDS_TRIGGERS=y @@ -2686,11 +2707,11 @@ CONFIG_LIBFCOE=m CONFIG_LIQUIDIO_VF=m CONFIG_LIRC_BT829=m CONFIG_LIRC_IMON=m -CONFIG_LIRC=m CONFIG_LIRC_PARALLEL=m CONFIG_LIRC_SERIAL=m CONFIG_LIRC_SERIAL_TRANSMITTER=y CONFIG_LIRC_STAGING=y +CONFIG_LIRC=y CONFIG_LIRC_ZILOG=m # CONFIG_LIVEPATCH is not set # CONFIG_LKDTM is not set @@ -2846,6 +2867,7 @@ CONFIG_MEGARAID_MAILBOX=m CONFIG_MEGARAID_MM=m CONFIG_MEGARAID_NEWGEN=y CONFIG_MEGARAID_SAS=m +CONFIG_MELLANOX_PLATFORM=y CONFIG_MEMCG_SWAP_ENABLED=y CONFIG_MEMCG_SWAP=y CONFIG_MEMCG=y @@ -2923,8 +2945,6 @@ CONFIG_MFD_INTEL_LPSS_PCI=m # CONFIG_MFD_RK808 is not set # CONFIG_MFD_RN5T618 is not set # CONFIG_MFD_RT5033 is not set -CONFIG_MFD_RTSX_PCI=m -CONFIG_MFD_RTSX_USB=m # CONFIG_MFD_SEC_CORE is not set # CONFIG_MFD_SI476X_CORE is not set # CONFIG_MFD_SKY81452 is not set @@ -2975,6 +2995,8 @@ CONFIG_MII=m CONFIG_MINIX_FS=m CONFIG_MINIX_SUBPARTITION=y CONFIG_MISC_FILESYSTEMS=y +CONFIG_MISC_RTSX_PCI=m +CONFIG_MISC_RTSX_USB=m CONFIG_MISDN_AVMFRITZ=m CONFIG_MISDN_DSP=m CONFIG_MISDN_HFCMULTI=m @@ -3007,6 +3029,8 @@ CONFIG_MLX5_MPFS=y # CONFIG_MLX90614 is not set CONFIG_MLX_CPLD_PLATFORM=m CONFIG_MLXFW=m +CONFIG_MLX_PLATFORM=m +CONFIG_MLXREG_HOTPLUG=m CONFIG_MLXSW_CORE_HWMON=y CONFIG_MLXSW_CORE=m CONFIG_MLXSW_CORE_THERMAL=y @@ -3027,6 +3051,7 @@ CONFIG_MMA7660=m CONFIG_MMC_BLOCK=m CONFIG_MMC_BLOCK_MINORS=8 CONFIG_MMC_CB710=m +CONFIG_MMC_CQHCI=m # CONFIG_MMC_DEBUG is not set CONFIG_MMC=m # CONFIG_MMC_MTK is not set @@ -3116,6 +3141,7 @@ CONFIG_MSI_WMI=m # CONFIG_MSM_GCC_8994 is not set CONFIG_MSPRO_BLOCK=m CONFIG_MT7601U=m +CONFIG_MT76x2E=m # CONFIG_MTD_ABSENT is not set # CONFIG_MTD_AR7_PARTS is not set # CONFIG_MTD_BLKDEVS is not set @@ -3262,9 +3288,11 @@ CONFIG_NET_CORE=y # CONFIG_NET_DCCPPROBE is not set CONFIG_NETDEVICES=y CONFIG_NET_DEVLINK=m +# CONFIG_NETDEVSIM is not set CONFIG_NET_DROP_MONITOR=y CONFIG_NET_DSA_BCM_SF2=m CONFIG_NET_DSA_HWMON=y +# CONFIG_NET_DSA_LEGACY is not set CONFIG_NET_DSA_LOOP=m CONFIG_NET_DSA=m CONFIG_NET_DSA_MT7530=m @@ -3448,6 +3476,7 @@ CONFIG_NET_VENDOR_BROCADE=y # CONFIG_NET_VENDOR_CAVIUM is not set CONFIG_NET_VENDOR_CHELSIO=y CONFIG_NET_VENDOR_CISCO=y +# CONFIG_NET_VENDOR_CORTINA is not set CONFIG_NET_VENDOR_DEC=y CONFIG_NET_VENDOR_DLINK=y CONFIG_NET_VENDOR_EMULEX=y @@ -3480,6 +3509,7 @@ CONFIG_NET_VENDOR_SILAN=y CONFIG_NET_VENDOR_SIS=y CONFIG_NET_VENDOR_SMSC=y # CONFIG_NET_VENDOR_SNI is not set +# CONFIG_NET_VENDOR_SOCIONEXT is not set CONFIG_NET_VENDOR_SOLARFLARE=y CONFIG_NET_VENDOR_STMICRO=y CONFIG_NET_VENDOR_SUN=y @@ -3559,6 +3589,10 @@ CONFIG_NFC_TRF7970A=m CONFIG_NF_DUP_IPV4=m CONFIG_NF_DUP_IPV6=m CONFIG_NF_DUP_NETDEV=m +CONFIG_NF_FLOW_TABLE_INET=m +CONFIG_NF_FLOW_TABLE_IPV4=m +CONFIG_NF_FLOW_TABLE_IPV6=m +CONFIG_NF_FLOW_TABLE=m CONFIG_NF_LOG_ARP=m CONFIG_NF_LOG_BRIDGE=m CONFIG_NF_LOG_IPV4=m @@ -3620,6 +3654,7 @@ CONFIG_NFT_FIB_INET=m CONFIG_NFT_FIB_IPV4=m CONFIG_NFT_FIB_IPV6=m CONFIG_NFT_FIB_NETDEV=m +CONFIG_NFT_FLOW_OFFLOAD=m CONFIG_NFT_FWD_NETDEV=m CONFIG_NFT_HASH=m CONFIG_NFT_LIMIT=m @@ -3864,6 +3899,7 @@ CONFIG_PCIEAER_INJECT=m CONFIG_PCIEAER=y # CONFIG_PCIEASPM_DEBUG is not set CONFIG_PCIEASPM=y +CONFIG_PCIE_CADENCE_HOST=y CONFIG_PCIE_DPC=y # CONFIG_PCIE_DW_HOST_ECAM is not set # CONFIG_PCIE_DW_PLAT is not set @@ -3939,6 +3975,7 @@ CONFIG_PHYSICAL_START=0x400000 CONFIG_PID_NS=y CONFIG_PINCONF=y # CONFIG_PINCTRL_AMD is not set +# CONFIG_PINCTRL_AXP209 is not set CONFIG_PINCTRL_BAYTRAIL=y CONFIG_PINCTRL_BROXTON=m # CONFIG_PINCTRL_CANNONLAKE is not set @@ -4125,6 +4162,7 @@ CONFIG_RAID_ATTRS=m CONFIG_RANDOMIZE_BASE=y # CONFIG_RAPIDIO is not set CONFIG_RAS_CEC=y +# CONFIG_RAVE_SP_CORE is not set CONFIG_RAW_DRIVER=y # CONFIG_RBTREE_TEST is not set CONFIG_RC_ATI_REMOTE=m @@ -4183,7 +4221,6 @@ CONFIG_RELOCATABLE=y CONFIG_REMOTEPROC=m CONFIG_RENESAS_PHY=m # CONFIG_RESET_ATTACK_MITIGATION is not set -# CONFIG_RESET_HSDK_V1 is not set # CONFIG_RESET_TI_SYSCON is not set CONFIG_RETPOLINE=y # CONFIG_RFD77402 is not set @@ -4359,6 +4396,7 @@ CONFIG_RTLLIB=m # CONFIG_RTLWIFI_DEBUG is not set CONFIG_RTLWIFI=m # CONFIG_RTS5208 is not set +CONFIG_RUNTIME_TESTING_MENU=y CONFIG_S2IO=m # CONFIG_SAMPLES is not set CONFIG_SAMSUNG_LAPTOP=m @@ -4370,7 +4408,7 @@ CONFIG_SATA_AHCI=y # CONFIG_SATA_DWC is not set # CONFIG_SATA_HIGHBANK is not set CONFIG_SATA_INIC162X=m -CONFIG_SATA_MOBILE_LPM_POLICY=3 +CONFIG_SATA_MOBILE_LPM_POLICY=0 CONFIG_SATA_MV=m CONFIG_SATA_NV=m CONFIG_SATA_PMP=y @@ -4511,6 +4549,7 @@ CONFIG_SCTP_COOKIE_HMAC_SHA1=y CONFIG_SCTP_DEFAULT_COOKIE_HMAC_SHA1=y # CONFIG_SCx200_ACB is not set # CONFIG_SCx200 is not set +CONFIG_SD_ADC_MODULATOR=m CONFIG_SDIO_UART=m CONFIG_SECCOMP=y CONFIG_SECONDARY_TRUSTED_KEYRING=y @@ -4700,6 +4739,7 @@ CONFIG_SENSORS_VT1211=m CONFIG_SENSORS_VT8231=m CONFIG_SENSORS_W83627EHF=m CONFIG_SENSORS_W83627HF=m +CONFIG_SENSORS_W83773G=m CONFIG_SENSORS_W83781D=m CONFIG_SENSORS_W83791D=m CONFIG_SENSORS_W83792D=m @@ -4788,6 +4828,7 @@ CONFIG_SH_ETH=m CONFIG_SIGNED_PE_FILE_VERIFICATION=y # CONFIG_SILEAD_DMI is not set # CONFIG_SIMPLE_PM_BUS is not set +# CONFIG_SIOX is not set CONFIG_SIS190=m CONFIG_SIS900=m # CONFIG_SKFP is not set @@ -4800,6 +4841,7 @@ CONFIG_SLAB_FREELIST_HARDENED=y CONFIG_SLAB_FREELIST_RANDOM=y CONFIG_SLAB_MERGE_DEFAULT=y # CONFIG_SLICOSS is not set +# CONFIG_SLIMBUS is not set CONFIG_SLIP_COMPRESSED=y CONFIG_SLIP=m # CONFIG_SLIP_MODE_SLIP6 is not set @@ -5042,8 +5084,9 @@ CONFIG_SND_SOC_INTEL_SKL_RT286_MACH=m CONFIG_SND_SOC_INTEL_SKYLAKE=m CONFIG_SND_SOC_INTEL_SST_ACPI=m CONFIG_SND_SOC_INTEL_SST=m -CONFIG_SND_SOC_INTEL_SST_TOPLEVEL=m +CONFIG_SND_SOC_INTEL_SST_TOPLEVEL=y CONFIG_SND_SOC=m +CONFIG_SND_SOC_MAX98373=m # CONFIG_SND_SOC_MAX98504 is not set # CONFIG_SND_SOC_MAX9860 is not set CONFIG_SND_SOC_MAX98927=m @@ -5056,6 +5099,8 @@ CONFIG_SND_SOC_NAU8824=m # CONFIG_SND_SOC_PCM179X_I2C is not set # CONFIG_SND_SOC_PCM179X is not set # CONFIG_SND_SOC_PCM179X_SPI is not set +CONFIG_SND_SOC_PCM186X_I2C=m +CONFIG_SND_SOC_PCM186X_SPI=m # CONFIG_SND_SOC_PCM3168A_I2C is not set # CONFIG_SND_SOC_PCM3168A_SPI is not set # CONFIG_SND_SOC_PCM512x_I2C is not set @@ -5075,13 +5120,17 @@ CONFIG_SND_SOC_SSM4567=m # CONFIG_SND_SOC_TAS5086 is not set # CONFIG_SND_SOC_TAS571X is not set # CONFIG_SND_SOC_TAS5720 is not set +CONFIG_SND_SOC_TAS6424=m # 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_TLV320AIC32X4_I2C=m +CONFIG_SND_SOC_TLV320AIC32X4_SPI=m # CONFIG_SND_SOC_TLV320AIC3X is not set # CONFIG_SND_SOC_TPA6130A2 is not set CONFIG_SND_SOC_TS3A227E=m +CONFIG_SND_SOC_TSCS42XX=m # CONFIG_SND_SOC_WM8510 is not set # CONFIG_SND_SOC_WM8523 is not set CONFIG_SND_SOC_WM8524=m @@ -5109,6 +5158,7 @@ CONFIG_SND_SOC_WM8524=m CONFIG_SND_SONICVIBES=m # CONFIG_SND_SPI is not set CONFIG_SND_SST_ATOM_HIFI2_PLATFORM=m +CONFIG_SND_SST_ATOM_HIFI2_PLATFORM_PCI=m # CONFIG_SND_SUPPORT_OLD_API is not set CONFIG_SND_TRIDENT=m CONFIG_SND_USB_6FIRE=m @@ -5146,6 +5196,10 @@ CONFIG_SONYPI_COMPAT=y CONFIG_SONYPI=m CONFIG_SOUND=m CONFIG_SOUND_OSS_CORE_PRECLAIM=y +CONFIG_SOUNDWIRE_BUS=m +CONFIG_SOUNDWIRE_CADENCE=m +CONFIG_SOUNDWIRE_INTEL=m +CONFIG_SOUNDWIRE=y CONFIG_SP5100_TCO=m CONFIG_SPARSE_IRQ=y CONFIG_SPARSE_RCU_POINTER=y @@ -5222,6 +5276,9 @@ CONFIG_STRICT_DEVMEM=y # CONFIG_STRING_SELFTEST is not set CONFIG_STRIP_ASM_SYMS=y # CONFIG_STRIP is not set +CONFIG_ST_UVIS25_I2C=m +CONFIG_ST_UVIS25=m +CONFIG_ST_UVIS25_SPI=m CONFIG_SUNDANCE=m # CONFIG_SUNDANCE_MMIO is not set CONFIG_SUNGEM=m @@ -5381,7 +5438,6 @@ CONFIG_TIFM_CORE=m CONFIG_TIGON3_HWMON=y CONFIG_TIGON3=m # CONFIG_TIMB_DMA is not set -# CONFIG_TIMER_STATS is not set CONFIG_TIPC=m # CONFIG_TIPC_MEDIA_IB is not set CONFIG_TIPC_MEDIA_UDP=y @@ -5544,6 +5600,7 @@ CONFIG_UIO_SERCOS3=m CONFIG_ULI526X=m # CONFIG_ULTRIX_PARTITION is not set # CONFIG_UNISYSSPAR is not set +# CONFIG_UNISYS_VISORBUS is not set CONFIG_UNIX98_PTYS=y CONFIG_UNIX_DIAG=m CONFIG_UNIXWARE_DISKLABEL=y @@ -5566,7 +5623,6 @@ 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_F_UAC1_LEGACY is not set CONFIG_USB_CXACRU=m # CONFIG_USB_CYPRESS_CY7C63 is not set @@ -5853,6 +5909,7 @@ CONFIG_USB_WDM=m # CONFIG_USB_WUSB_CBAF_DEBUG is not set CONFIG_USB_WUSB_CBAF=m CONFIG_USB_WUSB=m +CONFIG_USB_XHCI_DBGCAP=y CONFIG_USB_XHCI_HCD=y # CONFIG_USB_XHCI_PLATFORM is not set CONFIG_USB_XUSBATM=m @@ -5874,6 +5931,7 @@ CONFIG_UWB_WHCI=m CONFIG_V4L_MEM2MEM_DRIVERS=y # CONFIG_V4L_PLATFORM_DRIVERS is not set # CONFIG_V4L_TEST_DRIVERS is not set +# CONFIG_VBOXGUEST is not set # CONFIG_VCNL4000 is not set # CONFIG_VEML6070 is not set CONFIG_VETH=m @@ -5940,6 +5998,7 @@ CONFIG_VIDEO_GO7007_USB_S2250_BOARD=m CONFIG_VIDEO_HDPVR=m CONFIG_VIDEO_HEXIUM_GEMINI=m CONFIG_VIDEO_HEXIUM_ORION=m +CONFIG_VIDEO_IPU3_CIO2=m # CONFIG_VIDEO_IVTV_ALSA is not set # CONFIG_VIDEO_IVTV_DEPRECATED_IOCTLS is not set CONFIG_VIDEO_IVTV=m @@ -5995,12 +6054,13 @@ CONFIG_VIDEO_ZORAN_LML33R10=m CONFIG_VIDEO_ZORAN=m CONFIG_VIDEO_ZORAN_ZR36060=m # CONFIG_VIPERBOARD_ADC is not set -# CONFIG_VIRT_DRIVERS is not set +CONFIG_VIRT_DRIVERS=y CONFIG_VIRTIO_BALLOON=m CONFIG_VIRTIO_BLK=m # CONFIG_VIRTIO_BLK_SCSI is not set CONFIG_VIRTIO_CONSOLE=m CONFIG_VIRTIO_INPUT=m +CONFIG_VIRTIO_MENU=y # CONFIG_VIRTIO_MMIO_CMDLINE_DEVICES is not set CONFIG_VIRTIO_MMIO=m CONFIG_VIRTIO_NET=m @@ -6163,12 +6223,11 @@ CONFIG_X86_PAT=y CONFIG_X86_PCC_CPUFREQ=m CONFIG_X86_PKG_TEMP_THERMAL=m CONFIG_X86_PLATFORM_DEVICES=y -CONFIG_X86_PMEM_LEGACY=y +CONFIG_X86_PMEM_LEGACY=m CONFIG_X86_PM_TIMER=y # CONFIG_X86_POWERNOW_K6 is not set CONFIG_X86_POWERNOW_K7=y CONFIG_X86_POWERNOW_K8=m -# CONFIG_X86_PPRO_FENCE is not set # CONFIG_X86_PTDUMP is not set # CONFIG_X86_RDC321X is not set # CONFIG_X86_REBOOTFIXUPS is not set @@ -6225,6 +6284,7 @@ CONFIG_XFS_QUOTA=y # CONFIG_XFS_WARN is not set # CONFIG_XILINX_DMA is not set CONFIG_XILINX_GMII2RGMII=m +CONFIG_XILINX_VCU=m # CONFIG_XILINX_WATCHDOG is not set CONFIG_XILLYBUS=m # CONFIG_XILLYBUS_OF is not set @@ -6251,6 +6311,7 @@ CONFIG_ZISOFS=y CONFIG_ZLIB_DEFLATE=y CONFIG_ZLIB_INFLATE=y CONFIG_ZONE_DMA=y +CONFIG_ZOPT2201=m # CONFIG_ZPA2326 is not set CONFIG_ZRAM=m # CONFIG_ZRAM_WRITEBACK is not set diff --git a/kernel-ppc64-debug.config b/kernel-ppc64-debug.config index 1d25295e0..c60de3905 100644 --- a/kernel-ppc64-debug.config +++ b/kernel-ppc64-debug.config @@ -44,6 +44,7 @@ CONFIG_ACPI_ALS=m CONFIG_ACPI_DEBUG=y # CONFIG_ACPI_NFIT is not set CONFIG_ACPI_PCI_SLOT=y +CONFIG_ACPI_SPCR_TABLE=y # CONFIG_ACQUIRE_WDT is not set # CONFIG_AD2S1200 is not set # CONFIG_AD2S1210 is not set @@ -199,6 +200,7 @@ CONFIG_ATH10K_DEBUGFS=y CONFIG_ATH10K=m CONFIG_ATH10K_PCI=m CONFIG_ATH10K_SDIO=m +# CONFIG_ATH10K_SPECTRAL is not set # CONFIG_ATH10K_TRACING is not set CONFIG_ATH10K_USB=m CONFIG_ATH5K_DEBUG=y @@ -212,6 +214,7 @@ CONFIG_ATH6KL_USB=m CONFIG_ATH9K_AHB=y CONFIG_ATH9K_BTCOEX_SUPPORT=y # CONFIG_ATH9K_CHANNEL_CONTEXT is not set +# CONFIG_ATH9K_COMMON_SPECTRAL is not set CONFIG_ATH9K_DEBUGFS=y # CONFIG_ATH9K_DEBUG is not set # CONFIG_ATH9K_DYNACK is not set @@ -418,6 +421,7 @@ CONFIG_BLK_DEV_LOOP_MIN_COUNT=0 CONFIG_BLK_DEV_MD=y CONFIG_BLK_DEV_NBD=m # CONFIG_BLK_DEV_NS87415 is not set +CONFIG_BLK_DEV_NULL_BLK_FAULT_INJECTION=y CONFIG_BLK_DEV_NULL_BLK=m CONFIG_BLK_DEV_NVME=m # CONFIG_BLK_DEV_NVME_SCSI is not set @@ -488,6 +492,7 @@ CONFIG_BOOTX_TEXT=y CONFIG_BOUNCE=y CONFIG_BPF_JIT_ALWAYS_ON=y CONFIG_BPF_JIT=y +CONFIG_BPF_KPROBE_OVERRIDE=y CONFIG_BPF_STREAM_PARSER=y CONFIG_BPF_SYSCALL=y CONFIG_BPQETHER=m @@ -543,7 +548,7 @@ CONFIG_BT_HCIBPA10X=m CONFIG_BT_HCIBT3C=m CONFIG_BT_HCIBTSDIO=m CONFIG_BT_HCIBTUART=m -CONFIG_BT_HCIBTUSB_AUTOSUSPEND=y +# CONFIG_BT_HCIBTUSB_AUTOSUSPEND is not set CONFIG_BT_HCIBTUSB_BCM=y CONFIG_BT_HCIBTUSB=m CONFIG_BT_HCIBTUSB_RTL=y @@ -705,6 +710,7 @@ CONFIG_CHARGER_SMB347=m # CONFIG_CHASH_SELFTEST is not set # CONFIG_CHASH_STATS is not set # CONFIG_CHECKPOINT_RESTORE is not set +CONFIG_CHELSIO_IPSEC_INLINE=y CONFIG_CHELSIO_T1_1G=y CONFIG_CHELSIO_T1=m CONFIG_CHELSIO_T3=m @@ -730,6 +736,7 @@ CONFIG_CIFS_NFSD_EXPORT=y CONFIG_CIFS_POSIX=y CONFIG_CIFS_SMB2=y # CONFIG_CIFS_SMB311 is not set +# CONFIG_CIFS_SMB_DIRECT is not set # CONFIG_CIFS_STATS2 is not set CONFIG_CIFS_STATS=y CONFIG_CIFS_UPCALL=y @@ -1069,6 +1076,7 @@ CONFIG_DM_SNAPSHOT=y CONFIG_DM_SWITCH=m CONFIG_DM_THIN_PROVISIONING=m CONFIG_DM_UEVENT=y +CONFIG_DM_UNSTRIPED=m CONFIG_DM_VERITY_FEC=y CONFIG_DM_VERITY=m CONFIG_DM_ZERO=y @@ -1091,7 +1099,7 @@ CONFIG_DRM_AMD_DC=y CONFIG_DRM_AMDGPU_CIK=y # CONFIG_DRM_AMDGPU_GART_DEBUGFS is not set CONFIG_DRM_AMDGPU=m -# CONFIG_DRM_AMDGPU_SI is not set +CONFIG_DRM_AMDGPU_SI=y CONFIG_DRM_AMDGPU_USERPTR=y CONFIG_DRM_AMD_POWERPLAY=y CONFIG_DRM_ANALOGIX_ANX78XX=m @@ -1108,8 +1116,8 @@ CONFIG_DRM_FBDEV_EMULATION=y CONFIG_DRM_FBDEV_OVERALLOC=100 CONFIG_DRM_HISI_HIBMC=m CONFIG_DRM_I2C_ADV7511_AUDIO=y -# CONFIG_DRM_I2C_ADV7511_CEC is not set -# CONFIG_DRM_I2C_ADV7511 is not set +CONFIG_DRM_I2C_ADV7511_CEC=y +CONFIG_DRM_I2C_ADV7511=m CONFIG_DRM_I2C_ADV7533=y CONFIG_DRM_I2C_CH7006=m CONFIG_DRM_I2C_NXP_TDA998X=m @@ -1125,6 +1133,7 @@ CONFIG_DRM_MGAG200=m CONFIG_DRM_NOUVEAU_BACKLIGHT=y CONFIG_DRM_NOUVEAU=m # CONFIG_DRM_NXP_PTN3460 is not set +# CONFIG_DRM_PANEL_ILITEK_IL9322 is not set # CONFIG_DRM_PANEL_INNOLUX_P079ZCA is not set # CONFIG_DRM_PANEL_JDI_LT070ME05000 is not set # CONFIG_DRM_PANEL_LG_LG4573 is not set @@ -1198,6 +1207,7 @@ CONFIG_DVB_FIREDTV=m CONFIG_DVB_HOPPER=m CONFIG_DVB_MANTIS=m CONFIG_DVB_MAX_ADAPTERS=8 +# CONFIG_DVB_MMAP is not set CONFIG_DVB_MN88472=m CONFIG_DVB_MN88473=m CONFIG_DVB_NETUP_UNIDVB=m @@ -1211,6 +1221,7 @@ CONFIG_DVB_PT1=m CONFIG_DVB_SMIPCIE=m CONFIG_DVB_TTUSB_BUDGET=m CONFIG_DVB_TTUSB_DEC=m +# CONFIG_DVB_ULE_DEBUG is not set CONFIG_DVB_USB_A800=m CONFIG_DVB_USB_AF9005=m CONFIG_DVB_USB_AF9005_REMOTE=m @@ -1341,6 +1352,7 @@ CONFIG_F2FS_FS_XATTR=y # CONFIG_F2FS_IO_TRACE is not set CONFIG_F2FS_STAT_FS=y CONFIG_FA_DUMP=y +CONFIG_FAIL_FUNCTION=y # CONFIG_FAIL_FUTEX is not set # CONFIG_FAIL_IOMMU is not set CONFIG_FAIL_IO_TIMEOUT=y @@ -1442,6 +1454,7 @@ CONFIG_FCOE=m CONFIG_FEALNX=m CONFIG_FHANDLE=y # CONFIG_FHCI_DEBUG is not set +# CONFIG_FIND_BIT_BENCHMARK is not set CONFIG_FIREWIRE=m CONFIG_FIREWIRE_NET=m CONFIG_FIREWIRE_NOSY=m @@ -1570,6 +1583,7 @@ CONFIG_GPIOLIB=y CONFIG_GPIO_PCA953X=m CONFIG_GPIO_PCF857X=m # CONFIG_GPIO_PCH is not set +# CONFIG_GPIO_PCIE_IDIO_24 is not set CONFIG_GPIO_PCI_IDIO_16=m # CONFIG_GPIO_PISOSR is not set # CONFIG_GPIO_RDC321X is not set @@ -1598,6 +1612,7 @@ CONFIG_HAMACHI=m CONFIG_HAMRADIO=y CONFIG_HANGCHECK_TIMER=m CONFIG_HAPPYMEAL=m +CONFIG_HARDENED_USERCOPY_FALLBACK=y CONFIG_HARDENED_USERCOPY=y CONFIG_HARDLOCKUP_DETECTOR=y CONFIG_HAVE_BOOTMEM_INFO_NODE=y @@ -1645,6 +1660,7 @@ CONFIG_HID_GYRATION=m CONFIG_HID_HOLTEK=m CONFIG_HID_ICADE=m CONFIG_HID_ITE=m +CONFIG_HID_JABRA=m CONFIG_HID_KENSINGTON=m CONFIG_HID_KEYTOUCH=m CONFIG_HID_KYE=m @@ -1794,7 +1810,7 @@ CONFIG_HW_RANDOM_AMD=m CONFIG_HW_RANDOM_POWERNV=m CONFIG_HW_RANDOM_PSERIES=m CONFIG_HW_RANDOM_TIMERIOMEM=m -CONFIG_HW_RANDOM_TPM=m +CONFIG_HW_RANDOM_TPM=y CONFIG_HW_RANDOM_VIRTIO=m CONFIG_HW_RANDOM=y CONFIG_HWSPINLOCK=y @@ -1918,6 +1934,7 @@ CONFIG_IGB_HWMON=y CONFIG_IGB=m CONFIG_IGBVF=m CONFIG_IIO_BUFFER_CB=m +CONFIG_IIO_BUFFER_HW_CONSUMER=m CONFIG_IIO_BUFFER=y CONFIG_IIO_CONFIGFS=m CONFIG_IIO_CONSUMERS_PER_TRIGGER=2 @@ -2090,6 +2107,7 @@ CONFIG_IP6_NF_MATCH_MH=m CONFIG_IP6_NF_MATCH_OPTS=m CONFIG_IP6_NF_MATCH_RPFILTER=m CONFIG_IP6_NF_MATCH_RT=m +CONFIG_IP6_NF_MATCH_SRH=m CONFIG_IP6_NF_NAT=m CONFIG_IP6_NF_RAW=m CONFIG_IP6_NF_SECURITY=m @@ -2219,7 +2237,6 @@ CONFIG_IPVTAP=m # CONFIG_IPW2200_DEBUG is not set # CONFIG_IPW2200 is not set CONFIG_IPWIRELESS=m -# CONFIG_IPX_INTERN is not set # CONFIG_IPX is not set # CONFIG_IRDA is not set CONFIG_IR_ENE=m @@ -2484,6 +2501,7 @@ CONFIG_LEDS_IS31FL32XX=m CONFIG_LEDS_LM3530=m # CONFIG_LEDS_LM355x is not set # CONFIG_LEDS_LM3642 is not set +CONFIG_LEDS_LM3692X=m # CONFIG_LEDS_LOCOMO is not set CONFIG_LEDS_LP3944=m CONFIG_LEDS_LP3952=m @@ -2517,6 +2535,7 @@ CONFIG_LEDS_TRIGGER_DISK=y CONFIG_LEDS_TRIGGER_GPIO=m CONFIG_LEDS_TRIGGER_HEARTBEAT=m CONFIG_LEDS_TRIGGER_MTD=y +CONFIG_LEDS_TRIGGER_NETDEV=m CONFIG_LEDS_TRIGGER_ONESHOT=m CONFIG_LEDS_TRIGGER_PANIC=y CONFIG_LEDS_TRIGGERS=y @@ -2549,11 +2568,11 @@ CONFIG_LIBFCOE=m CONFIG_LIQUIDIO_VF=m CONFIG_LIRC_BT829=m CONFIG_LIRC_IMON=m -CONFIG_LIRC=m CONFIG_LIRC_PARALLEL=m CONFIG_LIRC_SERIAL=m CONFIG_LIRC_SERIAL_TRANSMITTER=y CONFIG_LIRC_STAGING=y +CONFIG_LIRC=y CONFIG_LIRC_ZILOG=m # CONFIG_LIVEPATCH is not set # CONFIG_LKDTM is not set @@ -2704,6 +2723,7 @@ CONFIG_MEGARAID_MAILBOX=m CONFIG_MEGARAID_MM=m CONFIG_MEGARAID_NEWGEN=y CONFIG_MEGARAID_SAS=m +CONFIG_MELLANOX_PLATFORM=y CONFIG_MEMCG_SWAP_ENABLED=y CONFIG_MEMCG_SWAP=y CONFIG_MEMCG=y @@ -2782,8 +2802,6 @@ CONFIG_MFD_CORE=m # CONFIG_MFD_RK808 is not set # CONFIG_MFD_RN5T618 is not set # CONFIG_MFD_RT5033 is not set -CONFIG_MFD_RTSX_PCI=m -CONFIG_MFD_RTSX_USB=m # CONFIG_MFD_SEC_CORE is not set # CONFIG_MFD_SI476X_CORE is not set # CONFIG_MFD_SKY81452 is not set @@ -2832,6 +2850,8 @@ CONFIG_MII=m CONFIG_MINIX_FS=m CONFIG_MINIX_SUBPARTITION=y CONFIG_MISC_FILESYSTEMS=y +CONFIG_MISC_RTSX_PCI=m +CONFIG_MISC_RTSX_USB=m CONFIG_MISDN_AVMFRITZ=m CONFIG_MISDN_DSP=m CONFIG_MISDN_HFCMULTI=m @@ -2861,6 +2881,7 @@ CONFIG_MLX5_MPFS=y # CONFIG_MLX90614 is not set CONFIG_MLX_CPLD_PLATFORM=m CONFIG_MLXFW=m +CONFIG_MLXREG_HOTPLUG=m CONFIG_MLXSW_CORE_HWMON=y CONFIG_MLXSW_CORE=m CONFIG_MLXSW_CORE_THERMAL=y @@ -2881,6 +2902,7 @@ CONFIG_MMA7660=m CONFIG_MMC_BLOCK=m CONFIG_MMC_BLOCK_MINORS=8 CONFIG_MMC_CB710=m +CONFIG_MMC_CQHCI=m # CONFIG_MMC_DEBUG is not set CONFIG_MMC=m # CONFIG_MMC_MTK is not set @@ -2965,6 +2987,7 @@ CONFIG_MSI_BITMAP_SELFTEST=y # CONFIG_MSM_GCC_8994 is not set CONFIG_MSPRO_BLOCK=m CONFIG_MT7601U=m +CONFIG_MT76x2E=m # CONFIG_MTD_ABSENT is not set # CONFIG_MTD_AR7_PARTS is not set # CONFIG_MTD_BLKDEVS is not set @@ -3101,9 +3124,11 @@ CONFIG_NET_CORE=y # CONFIG_NET_DCCPPROBE is not set CONFIG_NETDEVICES=y CONFIG_NET_DEVLINK=m +# CONFIG_NETDEVSIM is not set CONFIG_NET_DROP_MONITOR=y CONFIG_NET_DSA_BCM_SF2=m CONFIG_NET_DSA_HWMON=y +# CONFIG_NET_DSA_LEGACY is not set CONFIG_NET_DSA_LOOP=m CONFIG_NET_DSA=m CONFIG_NET_DSA_MT7530=m @@ -3286,6 +3311,7 @@ CONFIG_NET_VENDOR_BROCADE=y # CONFIG_NET_VENDOR_CAVIUM is not set CONFIG_NET_VENDOR_CHELSIO=y CONFIG_NET_VENDOR_CISCO=y +# CONFIG_NET_VENDOR_CORTINA is not set CONFIG_NET_VENDOR_DEC=y CONFIG_NET_VENDOR_DLINK=y CONFIG_NET_VENDOR_EMULEX=y @@ -3320,6 +3346,7 @@ CONFIG_NET_VENDOR_SILAN=y CONFIG_NET_VENDOR_SIS=y CONFIG_NET_VENDOR_SMSC=y # CONFIG_NET_VENDOR_SNI is not set +# CONFIG_NET_VENDOR_SOCIONEXT is not set # CONFIG_NET_VENDOR_SOLARFLARE is not set CONFIG_NET_VENDOR_STMICRO=y CONFIG_NET_VENDOR_SUN=y @@ -3398,6 +3425,10 @@ CONFIG_NFC_TRF7970A=m CONFIG_NF_DUP_IPV4=m CONFIG_NF_DUP_IPV6=m CONFIG_NF_DUP_NETDEV=m +CONFIG_NF_FLOW_TABLE_INET=m +CONFIG_NF_FLOW_TABLE_IPV4=m +CONFIG_NF_FLOW_TABLE_IPV6=m +CONFIG_NF_FLOW_TABLE=m CONFIG_NF_LOG_ARP=m CONFIG_NF_LOG_BRIDGE=m CONFIG_NF_LOG_IPV4=m @@ -3459,6 +3490,7 @@ CONFIG_NFT_FIB_INET=m CONFIG_NFT_FIB_IPV4=m CONFIG_NFT_FIB_IPV6=m CONFIG_NFT_FIB_NETDEV=m +CONFIG_NFT_FLOW_OFFLOAD=m CONFIG_NFT_FWD_NETDEV=m CONFIG_NFT_HASH=m CONFIG_NFT_LIMIT=m @@ -3581,6 +3613,7 @@ CONFIG_OCFS2_FS=m CONFIG_OCFS2_FS_O2CB=m # CONFIG_OCFS2_FS_STATS is not set CONFIG_OCFS2_FS_USERSPACE_CLUSTER=m +CONFIG_OCXL=m # CONFIG_OF_OVERLAY is not set # CONFIG_OF_UNITTEST is not set # CONFIG_OMFS_FS is not set @@ -3680,6 +3713,7 @@ CONFIG_PCIEAER_INJECT=m CONFIG_PCIEAER=y # CONFIG_PCIEASPM_DEBUG is not set CONFIG_PCIEASPM=y +CONFIG_PCIE_CADENCE_HOST=y CONFIG_PCIE_DPC=y # CONFIG_PCIE_DW_HOST_ECAM is not set # CONFIG_PCIE_DW_PLAT is not set @@ -3741,6 +3775,7 @@ CONFIG_PHYLINK=m # CONFIG_PI433 is not set CONFIG_PID_NS=y # CONFIG_PINCONF is not set +# CONFIG_PINCTRL_AXP209 is not set # CONFIG_PINCTRL_CANNONLAKE is not set CONFIG_PINCTRL_CEDARFORK=m # CONFIG_PINCTRL_IPQ8074 is not set @@ -3815,7 +3850,9 @@ CONFIG_PPC_EMULATED_STATS=y # CONFIG_PPC_ICSWX_PID is not set # CONFIG_PPC_ICSWX_USE_SIGILL is not set CONFIG_PPC_ICSWX=y +# CONFIG_PPC_IRQ_SOFT_MASK_DEBUG is not set CONFIG_PPC_MAPLE=y +CONFIG_PPC_MEM_KEYS=y # CONFIG_PPC_MEMTRACE is not set # CONFIG_PPC_MPC5200_LPBFIFO is not set CONFIG_PPC_OF_BOOT_TRAMPOLINE=y @@ -3954,6 +3991,7 @@ CONFIG_RAID_ATTRS=m # CONFIG_RANDOM32_SELFTEST is not set # CONFIG_RAPIDIO is not set CONFIG_RAS_CEC=y +# CONFIG_RAVE_SP_CORE is not set CONFIG_RAW_DRIVER=y # CONFIG_RBTREE_TEST is not set CONFIG_RC_ATI_REMOTE=m @@ -4012,7 +4050,6 @@ CONFIG_RELOCATABLE=y CONFIG_REMOTEPROC=m CONFIG_RENESAS_PHY=m # CONFIG_RESET_ATTACK_MITIGATION is not set -# CONFIG_RESET_HSDK_V1 is not set # CONFIG_RESET_TI_SYSCON is not set # CONFIG_RFD77402 is not set # CONFIG_RFD_FTL is not set @@ -4191,6 +4228,7 @@ CONFIG_RTLLIB=m # CONFIG_RTLWIFI_DEBUG is not set CONFIG_RTLWIFI=m # CONFIG_RTS5208 is not set +CONFIG_RUNTIME_TESTING_MENU=y CONFIG_S2IO=m # CONFIG_SAMPLES is not set # CONFIG_SAMSUNG_USBPHY is not set @@ -4200,7 +4238,7 @@ CONFIG_SATA_AHCI=y # CONFIG_SATA_DWC is not set # CONFIG_SATA_HIGHBANK is not set CONFIG_SATA_INIC162X=m -CONFIG_SATA_MOBILE_LPM_POLICY=3 +CONFIG_SATA_MOBILE_LPM_POLICY=0 CONFIG_SATA_MV=m CONFIG_SATA_NV=m CONFIG_SATA_PMP=y @@ -4345,6 +4383,7 @@ CONFIG_SCTP_COOKIE_HMAC_SHA1=y # CONFIG_SCTP_DEFAULT_COOKIE_HMAC_MD5 is not set # CONFIG_SCTP_DEFAULT_COOKIE_HMAC_NONE is not set CONFIG_SCTP_DEFAULT_COOKIE_HMAC_SHA1=y +# CONFIG_SD_ADC_MODULATOR is not set CONFIG_SDIO_UART=m CONFIG_SECCOMP=y CONFIG_SECONDARY_TRUSTED_KEYRING=y @@ -4520,6 +4559,7 @@ CONFIG_SENSORS_VT1211=m CONFIG_SENSORS_VT8231=m CONFIG_SENSORS_W83627EHF=m CONFIG_SENSORS_W83627HF=m +CONFIG_SENSORS_W83773G=m CONFIG_SENSORS_W83781D=m CONFIG_SENSORS_W83791D=m CONFIG_SENSORS_W83792D=m @@ -4611,6 +4651,7 @@ CONFIG_SH_ETH=m CONFIG_SIGNED_PE_FILE_VERIFICATION=y CONFIG_SIMPLE_GPIO=y # CONFIG_SIMPLE_PM_BUS is not set +# CONFIG_SIOX is not set CONFIG_SIS190=m CONFIG_SIS900=m # CONFIG_SKFP is not set @@ -4623,6 +4664,7 @@ CONFIG_SLAB_FREELIST_HARDENED=y CONFIG_SLAB_FREELIST_RANDOM=y CONFIG_SLAB_MERGE_DEFAULT=y # CONFIG_SLICOSS is not set +# CONFIG_SLIMBUS is not set CONFIG_SLIP_COMPRESSED=y CONFIG_SLIP=m # CONFIG_SLIP_MODE_SLIP6 is not set @@ -4848,6 +4890,7 @@ CONFIG_SND_SOC_HDMI_CODEC=m # 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_MAX98373=m # CONFIG_SND_SOC_MAX98504 is not set # CONFIG_SND_SOC_MAX9860 is not set CONFIG_SND_SOC_MAX98927=m @@ -4860,6 +4903,8 @@ CONFIG_SND_SOC_NAU8824=m # CONFIG_SND_SOC_PCM179X_I2C is not set # CONFIG_SND_SOC_PCM179X is not set # CONFIG_SND_SOC_PCM179X_SPI is not set +CONFIG_SND_SOC_PCM186X_I2C=m +CONFIG_SND_SOC_PCM186X_SPI=m # CONFIG_SND_SOC_PCM3168A_I2C is not set # CONFIG_SND_SOC_PCM3168A_SPI is not set # CONFIG_SND_SOC_PCM512x_I2C is not set @@ -4879,13 +4924,17 @@ CONFIG_SND_SOC_SPDIF=m # CONFIG_SND_SOC_TAS5086 is not set # CONFIG_SND_SOC_TAS571X is not set # CONFIG_SND_SOC_TAS5720 is not set +CONFIG_SND_SOC_TAS6424=m # 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_TLV320AIC32X4_I2C=m +CONFIG_SND_SOC_TLV320AIC32X4_SPI=m # CONFIG_SND_SOC_TLV320AIC3X is not set # CONFIG_SND_SOC_TPA6130A2 is not set # CONFIG_SND_SOC_TS3A227E is not set +CONFIG_SND_SOC_TSCS42XX=m # CONFIG_SND_SOC_WM8510 is not set # CONFIG_SND_SOC_WM8523 is not set CONFIG_SND_SOC_WM8524=m @@ -4946,6 +4995,9 @@ CONFIG_SONY_FF=y # CONFIG_SONYPI is not set CONFIG_SOUND=m CONFIG_SOUND_OSS_CORE_PRECLAIM=y +CONFIG_SOUNDWIRE_BUS=m +CONFIG_SOUNDWIRE_CADENCE=m +CONFIG_SOUNDWIRE=y CONFIG_SPAPR_TCE_IOMMU=y CONFIG_SPARSE_IRQ=y CONFIG_SPARSEMEM_VMEMMAP=y @@ -5019,6 +5071,9 @@ CONFIG_STRICT_DEVMEM=y # CONFIG_STRING_SELFTEST is not set CONFIG_STRIP_ASM_SYMS=y # CONFIG_STRIP is not set +CONFIG_ST_UVIS25_I2C=m +CONFIG_ST_UVIS25=m +CONFIG_ST_UVIS25_SPI=m CONFIG_SUNDANCE=m # CONFIG_SUNDANCE_MMIO is not set CONFIG_SUNGEM=m @@ -5170,7 +5225,6 @@ CONFIG_TIFM_CORE=m CONFIG_TIGON3_HWMON=y CONFIG_TIGON3=m # CONFIG_TIMB_DMA is not set -# CONFIG_TIMER_STATS is not set CONFIG_TIPC=m # CONFIG_TIPC_MEDIA_IB is not set CONFIG_TIPC_MEDIA_UDP=y @@ -5329,6 +5383,7 @@ CONFIG_UIO_SERCOS3=m CONFIG_ULI526X=m # CONFIG_ULTRIX_PARTITION is not set # CONFIG_UNISYSSPAR is not set +# CONFIG_UNISYS_VISORBUS is not set CONFIG_UNIX98_PTYS=y CONFIG_UNIX_DIAG=m CONFIG_UNIXWARE_DISKLABEL=y @@ -5351,7 +5406,6 @@ 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_F_UAC1_LEGACY is not set CONFIG_USB_CXACRU=m # CONFIG_USB_CYPRESS_CY7C63 is not set @@ -5642,6 +5696,7 @@ CONFIG_USB_WDM=m # CONFIG_USB_WUSB_CBAF_DEBUG is not set CONFIG_USB_WUSB_CBAF=m CONFIG_USB_WUSB=m +CONFIG_USB_XHCI_DBGCAP=y CONFIG_USB_XHCI_HCD=y # CONFIG_USB_XHCI_PLATFORM is not set CONFIG_USB_XUSBATM=m @@ -5786,6 +5841,7 @@ CONFIG_VIRTIO_BLK=m # CONFIG_VIRTIO_BLK_SCSI is not set CONFIG_VIRTIO_CONSOLE=m CONFIG_VIRTIO_INPUT=m +CONFIG_VIRTIO_MENU=y # CONFIG_VIRTIO_MMIO_CMDLINE_DEVICES is not set CONFIG_VIRTIO_MMIO=m CONFIG_VIRTIO_NET=m @@ -5932,6 +5988,7 @@ CONFIG_XFS_QUOTA=y # CONFIG_XILINX_EMACLITE is not set CONFIG_XILINX_GMII2RGMII=m # CONFIG_XILINX_LL_TEMAC is not set +CONFIG_XILINX_VCU=m # CONFIG_XILINX_WATCHDOG is not set CONFIG_XILLYBUS=m # CONFIG_XILLYBUS_OF is not set @@ -5959,6 +6016,7 @@ CONFIG_ZISOFS=y CONFIG_ZLIB_DEFLATE=y CONFIG_ZLIB_INFLATE=y # CONFIG_ZONE_DEVICE is not set +CONFIG_ZOPT2201=m # CONFIG_ZPA2326 is not set CONFIG_ZRAM=m # CONFIG_ZRAM_WRITEBACK is not set diff --git a/kernel-ppc64.config b/kernel-ppc64.config index d5d3f5d0d..c05534927 100644 --- a/kernel-ppc64.config +++ b/kernel-ppc64.config @@ -44,6 +44,7 @@ CONFIG_ACPI_ALS=m # CONFIG_ACPI_DEBUG is not set # CONFIG_ACPI_NFIT is not set CONFIG_ACPI_PCI_SLOT=y +CONFIG_ACPI_SPCR_TABLE=y # CONFIG_ACQUIRE_WDT is not set # CONFIG_AD2S1200 is not set # CONFIG_AD2S1210 is not set @@ -198,6 +199,7 @@ CONFIG_ATH10K_DEBUGFS=y CONFIG_ATH10K=m CONFIG_ATH10K_PCI=m CONFIG_ATH10K_SDIO=m +# CONFIG_ATH10K_SPECTRAL is not set # CONFIG_ATH10K_TRACING is not set CONFIG_ATH10K_USB=m CONFIG_ATH5K_DEBUG=y @@ -211,6 +213,7 @@ CONFIG_ATH6KL_USB=m CONFIG_ATH9K_AHB=y CONFIG_ATH9K_BTCOEX_SUPPORT=y # CONFIG_ATH9K_CHANNEL_CONTEXT is not set +# CONFIG_ATH9K_COMMON_SPECTRAL is not set CONFIG_ATH9K_DEBUGFS=y # CONFIG_ATH9K_DEBUG is not set # CONFIG_ATH9K_DYNACK is not set @@ -417,6 +420,7 @@ CONFIG_BLK_DEV_LOOP_MIN_COUNT=0 CONFIG_BLK_DEV_MD=y CONFIG_BLK_DEV_NBD=m # CONFIG_BLK_DEV_NS87415 is not set +# CONFIG_BLK_DEV_NULL_BLK_FAULT_INJECTION is not set CONFIG_BLK_DEV_NULL_BLK=m CONFIG_BLK_DEV_NVME=m # CONFIG_BLK_DEV_NVME_SCSI is not set @@ -487,6 +491,7 @@ CONFIG_BOOTX_TEXT=y CONFIG_BOUNCE=y CONFIG_BPF_JIT_ALWAYS_ON=y CONFIG_BPF_JIT=y +# CONFIG_BPF_KPROBE_OVERRIDE is not set CONFIG_BPF_STREAM_PARSER=y CONFIG_BPF_SYSCALL=y CONFIG_BPQETHER=m @@ -542,7 +547,7 @@ CONFIG_BT_HCIBPA10X=m CONFIG_BT_HCIBT3C=m CONFIG_BT_HCIBTSDIO=m CONFIG_BT_HCIBTUART=m -CONFIG_BT_HCIBTUSB_AUTOSUSPEND=y +# CONFIG_BT_HCIBTUSB_AUTOSUSPEND is not set CONFIG_BT_HCIBTUSB_BCM=y CONFIG_BT_HCIBTUSB=m CONFIG_BT_HCIBTUSB_RTL=y @@ -704,6 +709,7 @@ CONFIG_CHARGER_SMB347=m # CONFIG_CHASH_SELFTEST is not set # CONFIG_CHASH_STATS is not set # CONFIG_CHECKPOINT_RESTORE is not set +CONFIG_CHELSIO_IPSEC_INLINE=y CONFIG_CHELSIO_T1_1G=y CONFIG_CHELSIO_T1=m CONFIG_CHELSIO_T3=m @@ -729,6 +735,7 @@ CONFIG_CIFS_NFSD_EXPORT=y CONFIG_CIFS_POSIX=y CONFIG_CIFS_SMB2=y # CONFIG_CIFS_SMB311 is not set +# CONFIG_CIFS_SMB_DIRECT is not set # CONFIG_CIFS_STATS2 is not set CONFIG_CIFS_STATS=y CONFIG_CIFS_UPCALL=y @@ -1058,6 +1065,7 @@ CONFIG_DM_SNAPSHOT=y CONFIG_DM_SWITCH=m CONFIG_DM_THIN_PROVISIONING=m CONFIG_DM_UEVENT=y +CONFIG_DM_UNSTRIPED=m CONFIG_DM_VERITY_FEC=y CONFIG_DM_VERITY=m CONFIG_DM_ZERO=y @@ -1080,7 +1088,7 @@ CONFIG_DRM_AMD_DC=y CONFIG_DRM_AMDGPU_CIK=y # CONFIG_DRM_AMDGPU_GART_DEBUGFS is not set CONFIG_DRM_AMDGPU=m -# CONFIG_DRM_AMDGPU_SI is not set +CONFIG_DRM_AMDGPU_SI=y CONFIG_DRM_AMDGPU_USERPTR=y CONFIG_DRM_AMD_POWERPLAY=y CONFIG_DRM_ANALOGIX_ANX78XX=m @@ -1097,8 +1105,8 @@ CONFIG_DRM_FBDEV_EMULATION=y CONFIG_DRM_FBDEV_OVERALLOC=100 CONFIG_DRM_HISI_HIBMC=m CONFIG_DRM_I2C_ADV7511_AUDIO=y -# CONFIG_DRM_I2C_ADV7511_CEC is not set -# CONFIG_DRM_I2C_ADV7511 is not set +CONFIG_DRM_I2C_ADV7511_CEC=y +CONFIG_DRM_I2C_ADV7511=m CONFIG_DRM_I2C_ADV7533=y CONFIG_DRM_I2C_CH7006=m CONFIG_DRM_I2C_NXP_TDA998X=m @@ -1114,6 +1122,7 @@ CONFIG_DRM_MGAG200=m CONFIG_DRM_NOUVEAU_BACKLIGHT=y CONFIG_DRM_NOUVEAU=m # CONFIG_DRM_NXP_PTN3460 is not set +# CONFIG_DRM_PANEL_ILITEK_IL9322 is not set # CONFIG_DRM_PANEL_INNOLUX_P079ZCA is not set # CONFIG_DRM_PANEL_JDI_LT070ME05000 is not set # CONFIG_DRM_PANEL_LG_LG4573 is not set @@ -1187,6 +1196,7 @@ CONFIG_DVB_FIREDTV=m CONFIG_DVB_HOPPER=m CONFIG_DVB_MANTIS=m CONFIG_DVB_MAX_ADAPTERS=8 +# CONFIG_DVB_MMAP is not set CONFIG_DVB_MN88472=m CONFIG_DVB_MN88473=m CONFIG_DVB_NETUP_UNIDVB=m @@ -1200,6 +1210,7 @@ CONFIG_DVB_PT1=m CONFIG_DVB_SMIPCIE=m CONFIG_DVB_TTUSB_BUDGET=m CONFIG_DVB_TTUSB_DEC=m +# CONFIG_DVB_ULE_DEBUG is not set CONFIG_DVB_USB_A800=m CONFIG_DVB_USB_AF9005=m CONFIG_DVB_USB_AF9005_REMOTE=m @@ -1424,6 +1435,7 @@ CONFIG_FCOE=m CONFIG_FEALNX=m CONFIG_FHANDLE=y # CONFIG_FHCI_DEBUG is not set +# CONFIG_FIND_BIT_BENCHMARK is not set CONFIG_FIREWIRE=m CONFIG_FIREWIRE_NET=m CONFIG_FIREWIRE_NOSY=m @@ -1552,6 +1564,7 @@ CONFIG_GPIOLIB=y CONFIG_GPIO_PCA953X=m CONFIG_GPIO_PCF857X=m # CONFIG_GPIO_PCH is not set +# CONFIG_GPIO_PCIE_IDIO_24 is not set CONFIG_GPIO_PCI_IDIO_16=m # CONFIG_GPIO_PISOSR is not set # CONFIG_GPIO_RDC321X is not set @@ -1580,6 +1593,7 @@ CONFIG_HAMACHI=m CONFIG_HAMRADIO=y CONFIG_HANGCHECK_TIMER=m CONFIG_HAPPYMEAL=m +CONFIG_HARDENED_USERCOPY_FALLBACK=y CONFIG_HARDENED_USERCOPY=y CONFIG_HARDLOCKUP_DETECTOR=y CONFIG_HAVE_BOOTMEM_INFO_NODE=y @@ -1627,6 +1641,7 @@ CONFIG_HID_GYRATION=m CONFIG_HID_HOLTEK=m CONFIG_HID_ICADE=m CONFIG_HID_ITE=m +CONFIG_HID_JABRA=m CONFIG_HID_KENSINGTON=m CONFIG_HID_KEYTOUCH=m CONFIG_HID_KYE=m @@ -1776,7 +1791,7 @@ CONFIG_HW_RANDOM_AMD=m CONFIG_HW_RANDOM_POWERNV=m CONFIG_HW_RANDOM_PSERIES=m CONFIG_HW_RANDOM_TIMERIOMEM=m -CONFIG_HW_RANDOM_TPM=m +CONFIG_HW_RANDOM_TPM=y CONFIG_HW_RANDOM_VIRTIO=m CONFIG_HW_RANDOM=y CONFIG_HWSPINLOCK=y @@ -1900,6 +1915,7 @@ CONFIG_IGB_HWMON=y CONFIG_IGB=m CONFIG_IGBVF=m CONFIG_IIO_BUFFER_CB=m +CONFIG_IIO_BUFFER_HW_CONSUMER=m CONFIG_IIO_BUFFER=y CONFIG_IIO_CONFIGFS=m CONFIG_IIO_CONSUMERS_PER_TRIGGER=2 @@ -2072,6 +2088,7 @@ CONFIG_IP6_NF_MATCH_MH=m CONFIG_IP6_NF_MATCH_OPTS=m CONFIG_IP6_NF_MATCH_RPFILTER=m CONFIG_IP6_NF_MATCH_RT=m +CONFIG_IP6_NF_MATCH_SRH=m CONFIG_IP6_NF_NAT=m CONFIG_IP6_NF_RAW=m CONFIG_IP6_NF_SECURITY=m @@ -2201,7 +2218,6 @@ CONFIG_IPVTAP=m # CONFIG_IPW2200_DEBUG is not set # CONFIG_IPW2200 is not set CONFIG_IPWIRELESS=m -# CONFIG_IPX_INTERN is not set # CONFIG_IPX is not set # CONFIG_IRDA is not set CONFIG_IR_ENE=m @@ -2464,6 +2480,7 @@ CONFIG_LEDS_IS31FL32XX=m CONFIG_LEDS_LM3530=m # CONFIG_LEDS_LM355x is not set # CONFIG_LEDS_LM3642 is not set +CONFIG_LEDS_LM3692X=m # CONFIG_LEDS_LOCOMO is not set CONFIG_LEDS_LP3944=m CONFIG_LEDS_LP3952=m @@ -2497,6 +2514,7 @@ CONFIG_LEDS_TRIGGER_DISK=y CONFIG_LEDS_TRIGGER_GPIO=m CONFIG_LEDS_TRIGGER_HEARTBEAT=m CONFIG_LEDS_TRIGGER_MTD=y +CONFIG_LEDS_TRIGGER_NETDEV=m CONFIG_LEDS_TRIGGER_ONESHOT=m CONFIG_LEDS_TRIGGER_PANIC=y CONFIG_LEDS_TRIGGERS=y @@ -2529,11 +2547,11 @@ CONFIG_LIBFCOE=m CONFIG_LIQUIDIO_VF=m CONFIG_LIRC_BT829=m CONFIG_LIRC_IMON=m -CONFIG_LIRC=m CONFIG_LIRC_PARALLEL=m CONFIG_LIRC_SERIAL=m CONFIG_LIRC_SERIAL_TRANSMITTER=y CONFIG_LIRC_STAGING=y +CONFIG_LIRC=y CONFIG_LIRC_ZILOG=m # CONFIG_LIVEPATCH is not set # CONFIG_LKDTM is not set @@ -2683,6 +2701,7 @@ CONFIG_MEGARAID_MAILBOX=m CONFIG_MEGARAID_MM=m CONFIG_MEGARAID_NEWGEN=y CONFIG_MEGARAID_SAS=m +CONFIG_MELLANOX_PLATFORM=y CONFIG_MEMCG_SWAP_ENABLED=y CONFIG_MEMCG_SWAP=y CONFIG_MEMCG=y @@ -2761,8 +2780,6 @@ CONFIG_MFD_CORE=m # CONFIG_MFD_RK808 is not set # CONFIG_MFD_RN5T618 is not set # CONFIG_MFD_RT5033 is not set -CONFIG_MFD_RTSX_PCI=m -CONFIG_MFD_RTSX_USB=m # CONFIG_MFD_SEC_CORE is not set # CONFIG_MFD_SI476X_CORE is not set # CONFIG_MFD_SKY81452 is not set @@ -2811,6 +2828,8 @@ CONFIG_MII=m CONFIG_MINIX_FS=m CONFIG_MINIX_SUBPARTITION=y CONFIG_MISC_FILESYSTEMS=y +CONFIG_MISC_RTSX_PCI=m +CONFIG_MISC_RTSX_USB=m CONFIG_MISDN_AVMFRITZ=m CONFIG_MISDN_DSP=m CONFIG_MISDN_HFCMULTI=m @@ -2840,6 +2859,7 @@ CONFIG_MLX5_MPFS=y # CONFIG_MLX90614 is not set CONFIG_MLX_CPLD_PLATFORM=m CONFIG_MLXFW=m +CONFIG_MLXREG_HOTPLUG=m CONFIG_MLXSW_CORE_HWMON=y CONFIG_MLXSW_CORE=m CONFIG_MLXSW_CORE_THERMAL=y @@ -2860,6 +2880,7 @@ CONFIG_MMA7660=m CONFIG_MMC_BLOCK=m CONFIG_MMC_BLOCK_MINORS=8 CONFIG_MMC_CB710=m +CONFIG_MMC_CQHCI=m # CONFIG_MMC_DEBUG is not set CONFIG_MMC=m # CONFIG_MMC_MTK is not set @@ -2943,6 +2964,7 @@ CONFIG_MSI_BITMAP_SELFTEST=y # CONFIG_MSM_GCC_8994 is not set CONFIG_MSPRO_BLOCK=m CONFIG_MT7601U=m +CONFIG_MT76x2E=m # CONFIG_MTD_ABSENT is not set # CONFIG_MTD_AR7_PARTS is not set # CONFIG_MTD_BLKDEVS is not set @@ -3079,9 +3101,11 @@ CONFIG_NET_CORE=y # CONFIG_NET_DCCPPROBE is not set CONFIG_NETDEVICES=y CONFIG_NET_DEVLINK=m +# CONFIG_NETDEVSIM is not set CONFIG_NET_DROP_MONITOR=y CONFIG_NET_DSA_BCM_SF2=m CONFIG_NET_DSA_HWMON=y +# CONFIG_NET_DSA_LEGACY is not set CONFIG_NET_DSA_LOOP=m CONFIG_NET_DSA=m CONFIG_NET_DSA_MT7530=m @@ -3264,6 +3288,7 @@ CONFIG_NET_VENDOR_BROCADE=y # CONFIG_NET_VENDOR_CAVIUM is not set CONFIG_NET_VENDOR_CHELSIO=y CONFIG_NET_VENDOR_CISCO=y +# CONFIG_NET_VENDOR_CORTINA is not set CONFIG_NET_VENDOR_DEC=y CONFIG_NET_VENDOR_DLINK=y CONFIG_NET_VENDOR_EMULEX=y @@ -3298,6 +3323,7 @@ CONFIG_NET_VENDOR_SILAN=y CONFIG_NET_VENDOR_SIS=y CONFIG_NET_VENDOR_SMSC=y # CONFIG_NET_VENDOR_SNI is not set +# CONFIG_NET_VENDOR_SOCIONEXT is not set # CONFIG_NET_VENDOR_SOLARFLARE is not set CONFIG_NET_VENDOR_STMICRO=y CONFIG_NET_VENDOR_SUN=y @@ -3376,6 +3402,10 @@ CONFIG_NFC_TRF7970A=m CONFIG_NF_DUP_IPV4=m CONFIG_NF_DUP_IPV6=m CONFIG_NF_DUP_NETDEV=m +CONFIG_NF_FLOW_TABLE_INET=m +CONFIG_NF_FLOW_TABLE_IPV4=m +CONFIG_NF_FLOW_TABLE_IPV6=m +CONFIG_NF_FLOW_TABLE=m CONFIG_NF_LOG_ARP=m CONFIG_NF_LOG_BRIDGE=m CONFIG_NF_LOG_IPV4=m @@ -3437,6 +3467,7 @@ CONFIG_NFT_FIB_INET=m CONFIG_NFT_FIB_IPV4=m CONFIG_NFT_FIB_IPV6=m CONFIG_NFT_FIB_NETDEV=m +CONFIG_NFT_FLOW_OFFLOAD=m CONFIG_NFT_FWD_NETDEV=m CONFIG_NFT_HASH=m CONFIG_NFT_LIMIT=m @@ -3559,6 +3590,7 @@ CONFIG_OCFS2_FS=m CONFIG_OCFS2_FS_O2CB=m # CONFIG_OCFS2_FS_STATS is not set CONFIG_OCFS2_FS_USERSPACE_CLUSTER=m +CONFIG_OCXL=m # CONFIG_OF_OVERLAY is not set # CONFIG_OF_UNITTEST is not set # CONFIG_OMFS_FS is not set @@ -3658,6 +3690,7 @@ CONFIG_PCIEAER_INJECT=m CONFIG_PCIEAER=y # CONFIG_PCIEASPM_DEBUG is not set CONFIG_PCIEASPM=y +CONFIG_PCIE_CADENCE_HOST=y CONFIG_PCIE_DPC=y # CONFIG_PCIE_DW_HOST_ECAM is not set # CONFIG_PCIE_DW_PLAT is not set @@ -3719,6 +3752,7 @@ CONFIG_PHYLINK=m # CONFIG_PI433 is not set CONFIG_PID_NS=y # CONFIG_PINCONF is not set +# CONFIG_PINCTRL_AXP209 is not set # CONFIG_PINCTRL_CANNONLAKE is not set CONFIG_PINCTRL_CEDARFORK=m # CONFIG_PINCTRL_IPQ8074 is not set @@ -3793,7 +3827,9 @@ CONFIG_PPC_EMULATED_STATS=y # CONFIG_PPC_ICSWX_PID is not set # CONFIG_PPC_ICSWX_USE_SIGILL is not set CONFIG_PPC_ICSWX=y +# CONFIG_PPC_IRQ_SOFT_MASK_DEBUG is not set CONFIG_PPC_MAPLE=y +CONFIG_PPC_MEM_KEYS=y # CONFIG_PPC_MEMTRACE is not set # CONFIG_PPC_MPC5200_LPBFIFO is not set CONFIG_PPC_OF_BOOT_TRAMPOLINE=y @@ -3931,6 +3967,7 @@ CONFIG_RAID_ATTRS=m # CONFIG_RANDOM32_SELFTEST is not set # CONFIG_RAPIDIO is not set CONFIG_RAS_CEC=y +# CONFIG_RAVE_SP_CORE is not set CONFIG_RAW_DRIVER=y # CONFIG_RBTREE_TEST is not set CONFIG_RC_ATI_REMOTE=m @@ -3989,7 +4026,6 @@ CONFIG_RELOCATABLE=y CONFIG_REMOTEPROC=m CONFIG_RENESAS_PHY=m # CONFIG_RESET_ATTACK_MITIGATION is not set -# CONFIG_RESET_HSDK_V1 is not set # CONFIG_RESET_TI_SYSCON is not set # CONFIG_RFD77402 is not set # CONFIG_RFD_FTL is not set @@ -4168,6 +4204,7 @@ CONFIG_RTLLIB=m # CONFIG_RTLWIFI_DEBUG is not set CONFIG_RTLWIFI=m # CONFIG_RTS5208 is not set +CONFIG_RUNTIME_TESTING_MENU=y CONFIG_S2IO=m # CONFIG_SAMPLES is not set # CONFIG_SAMSUNG_USBPHY is not set @@ -4177,7 +4214,7 @@ CONFIG_SATA_AHCI=y # CONFIG_SATA_DWC is not set # CONFIG_SATA_HIGHBANK is not set CONFIG_SATA_INIC162X=m -CONFIG_SATA_MOBILE_LPM_POLICY=3 +CONFIG_SATA_MOBILE_LPM_POLICY=0 CONFIG_SATA_MV=m CONFIG_SATA_NV=m CONFIG_SATA_PMP=y @@ -4322,6 +4359,7 @@ CONFIG_SCTP_COOKIE_HMAC_SHA1=y # CONFIG_SCTP_DEFAULT_COOKIE_HMAC_MD5 is not set # CONFIG_SCTP_DEFAULT_COOKIE_HMAC_NONE is not set CONFIG_SCTP_DEFAULT_COOKIE_HMAC_SHA1=y +# CONFIG_SD_ADC_MODULATOR is not set CONFIG_SDIO_UART=m CONFIG_SECCOMP=y CONFIG_SECONDARY_TRUSTED_KEYRING=y @@ -4497,6 +4535,7 @@ CONFIG_SENSORS_VT1211=m CONFIG_SENSORS_VT8231=m CONFIG_SENSORS_W83627EHF=m CONFIG_SENSORS_W83627HF=m +CONFIG_SENSORS_W83773G=m CONFIG_SENSORS_W83781D=m CONFIG_SENSORS_W83791D=m CONFIG_SENSORS_W83792D=m @@ -4588,6 +4627,7 @@ CONFIG_SH_ETH=m CONFIG_SIGNED_PE_FILE_VERIFICATION=y CONFIG_SIMPLE_GPIO=y # CONFIG_SIMPLE_PM_BUS is not set +# CONFIG_SIOX is not set CONFIG_SIS190=m CONFIG_SIS900=m # CONFIG_SKFP is not set @@ -4600,6 +4640,7 @@ CONFIG_SLAB_FREELIST_HARDENED=y CONFIG_SLAB_FREELIST_RANDOM=y CONFIG_SLAB_MERGE_DEFAULT=y # CONFIG_SLICOSS is not set +# CONFIG_SLIMBUS is not set CONFIG_SLIP_COMPRESSED=y CONFIG_SLIP=m # CONFIG_SLIP_MODE_SLIP6 is not set @@ -4824,6 +4865,7 @@ CONFIG_SND_SOC_HDMI_CODEC=m # 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_MAX98373=m # CONFIG_SND_SOC_MAX98504 is not set # CONFIG_SND_SOC_MAX9860 is not set CONFIG_SND_SOC_MAX98927=m @@ -4836,6 +4878,8 @@ CONFIG_SND_SOC_NAU8824=m # CONFIG_SND_SOC_PCM179X_I2C is not set # CONFIG_SND_SOC_PCM179X is not set # CONFIG_SND_SOC_PCM179X_SPI is not set +CONFIG_SND_SOC_PCM186X_I2C=m +CONFIG_SND_SOC_PCM186X_SPI=m # CONFIG_SND_SOC_PCM3168A_I2C is not set # CONFIG_SND_SOC_PCM3168A_SPI is not set # CONFIG_SND_SOC_PCM512x_I2C is not set @@ -4855,13 +4899,17 @@ CONFIG_SND_SOC_SPDIF=m # CONFIG_SND_SOC_TAS5086 is not set # CONFIG_SND_SOC_TAS571X is not set # CONFIG_SND_SOC_TAS5720 is not set +CONFIG_SND_SOC_TAS6424=m # 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_TLV320AIC32X4_I2C=m +CONFIG_SND_SOC_TLV320AIC32X4_SPI=m # CONFIG_SND_SOC_TLV320AIC3X is not set # CONFIG_SND_SOC_TPA6130A2 is not set # CONFIG_SND_SOC_TS3A227E is not set +CONFIG_SND_SOC_TSCS42XX=m # CONFIG_SND_SOC_WM8510 is not set # CONFIG_SND_SOC_WM8523 is not set CONFIG_SND_SOC_WM8524=m @@ -4922,6 +4970,9 @@ CONFIG_SONY_FF=y # CONFIG_SONYPI is not set CONFIG_SOUND=m CONFIG_SOUND_OSS_CORE_PRECLAIM=y +CONFIG_SOUNDWIRE_BUS=m +CONFIG_SOUNDWIRE_CADENCE=m +CONFIG_SOUNDWIRE=y CONFIG_SPAPR_TCE_IOMMU=y CONFIG_SPARSE_IRQ=y CONFIG_SPARSEMEM_VMEMMAP=y @@ -4995,6 +5046,9 @@ CONFIG_STRICT_DEVMEM=y # CONFIG_STRING_SELFTEST is not set CONFIG_STRIP_ASM_SYMS=y # CONFIG_STRIP is not set +CONFIG_ST_UVIS25_I2C=m +CONFIG_ST_UVIS25=m +CONFIG_ST_UVIS25_SPI=m CONFIG_SUNDANCE=m # CONFIG_SUNDANCE_MMIO is not set CONFIG_SUNGEM=m @@ -5146,7 +5200,6 @@ CONFIG_TIFM_CORE=m CONFIG_TIGON3_HWMON=y CONFIG_TIGON3=m # CONFIG_TIMB_DMA is not set -# CONFIG_TIMER_STATS is not set CONFIG_TIPC=m # CONFIG_TIPC_MEDIA_IB is not set CONFIG_TIPC_MEDIA_UDP=y @@ -5305,6 +5358,7 @@ CONFIG_UIO_SERCOS3=m CONFIG_ULI526X=m # CONFIG_ULTRIX_PARTITION is not set # CONFIG_UNISYSSPAR is not set +# CONFIG_UNISYS_VISORBUS is not set CONFIG_UNIX98_PTYS=y CONFIG_UNIX_DIAG=m CONFIG_UNIXWARE_DISKLABEL=y @@ -5327,7 +5381,6 @@ 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_F_UAC1_LEGACY is not set CONFIG_USB_CXACRU=m # CONFIG_USB_CYPRESS_CY7C63 is not set @@ -5618,6 +5671,7 @@ CONFIG_USB_WDM=m # CONFIG_USB_WUSB_CBAF_DEBUG is not set CONFIG_USB_WUSB_CBAF=m CONFIG_USB_WUSB=m +CONFIG_USB_XHCI_DBGCAP=y CONFIG_USB_XHCI_HCD=y # CONFIG_USB_XHCI_PLATFORM is not set CONFIG_USB_XUSBATM=m @@ -5762,6 +5816,7 @@ CONFIG_VIRTIO_BLK=m # CONFIG_VIRTIO_BLK_SCSI is not set CONFIG_VIRTIO_CONSOLE=m CONFIG_VIRTIO_INPUT=m +CONFIG_VIRTIO_MENU=y # CONFIG_VIRTIO_MMIO_CMDLINE_DEVICES is not set CONFIG_VIRTIO_MMIO=m CONFIG_VIRTIO_NET=m @@ -5908,6 +5963,7 @@ CONFIG_XFS_QUOTA=y # CONFIG_XILINX_EMACLITE is not set CONFIG_XILINX_GMII2RGMII=m # CONFIG_XILINX_LL_TEMAC is not set +CONFIG_XILINX_VCU=m # CONFIG_XILINX_WATCHDOG is not set CONFIG_XILLYBUS=m # CONFIG_XILLYBUS_OF is not set @@ -5935,6 +5991,7 @@ CONFIG_ZISOFS=y CONFIG_ZLIB_DEFLATE=y CONFIG_ZLIB_INFLATE=y # CONFIG_ZONE_DEVICE is not set +CONFIG_ZOPT2201=m # CONFIG_ZPA2326 is not set CONFIG_ZRAM=m # CONFIG_ZRAM_WRITEBACK is not set diff --git a/kernel-ppc64le-debug.config b/kernel-ppc64le-debug.config index 6d5162f79..e7246aafb 100644 --- a/kernel-ppc64le-debug.config +++ b/kernel-ppc64le-debug.config @@ -44,6 +44,7 @@ CONFIG_ACPI_ALS=m CONFIG_ACPI_DEBUG=y # CONFIG_ACPI_NFIT is not set CONFIG_ACPI_PCI_SLOT=y +CONFIG_ACPI_SPCR_TABLE=y # CONFIG_ACQUIRE_WDT is not set # CONFIG_AD2S1200 is not set # CONFIG_AD2S1210 is not set @@ -192,6 +193,7 @@ CONFIG_ATH10K_DEBUGFS=y CONFIG_ATH10K=m CONFIG_ATH10K_PCI=m CONFIG_ATH10K_SDIO=m +# CONFIG_ATH10K_SPECTRAL is not set # CONFIG_ATH10K_TRACING is not set CONFIG_ATH10K_USB=m CONFIG_ATH5K_DEBUG=y @@ -205,6 +207,7 @@ CONFIG_ATH6KL_USB=m CONFIG_ATH9K_AHB=y CONFIG_ATH9K_BTCOEX_SUPPORT=y # CONFIG_ATH9K_CHANNEL_CONTEXT is not set +# CONFIG_ATH9K_COMMON_SPECTRAL is not set CONFIG_ATH9K_DEBUGFS=y # CONFIG_ATH9K_DEBUG is not set # CONFIG_ATH9K_DYNACK is not set @@ -388,6 +391,7 @@ CONFIG_BLK_DEV_LOOP=m CONFIG_BLK_DEV_LOOP_MIN_COUNT=0 CONFIG_BLK_DEV_MD=y CONFIG_BLK_DEV_NBD=m +CONFIG_BLK_DEV_NULL_BLK_FAULT_INJECTION=y CONFIG_BLK_DEV_NULL_BLK=m CONFIG_BLK_DEV_NVME=m # CONFIG_BLK_DEV_NVME_SCSI is not set @@ -444,6 +448,7 @@ CONFIG_BOOTX_TEXT=y CONFIG_BOUNCE=y CONFIG_BPF_JIT_ALWAYS_ON=y CONFIG_BPF_JIT=y +CONFIG_BPF_KPROBE_OVERRIDE=y CONFIG_BPF_STREAM_PARSER=y CONFIG_BPF_SYSCALL=y CONFIG_BPQETHER=m @@ -499,7 +504,7 @@ CONFIG_BT_HCIBPA10X=m CONFIG_BT_HCIBT3C=m CONFIG_BT_HCIBTSDIO=m CONFIG_BT_HCIBTUART=m -CONFIG_BT_HCIBTUSB_AUTOSUSPEND=y +# CONFIG_BT_HCIBTUSB_AUTOSUSPEND is not set CONFIG_BT_HCIBTUSB_BCM=y CONFIG_BT_HCIBTUSB=m CONFIG_BT_HCIBTUSB_RTL=y @@ -661,6 +666,7 @@ CONFIG_CHARGER_SMB347=m # CONFIG_CHASH_SELFTEST is not set # CONFIG_CHASH_STATS is not set CONFIG_CHECKPOINT_RESTORE=y +CONFIG_CHELSIO_IPSEC_INLINE=y CONFIG_CHELSIO_T1_1G=y CONFIG_CHELSIO_T1=m CONFIG_CHELSIO_T3=m @@ -686,6 +692,7 @@ CONFIG_CIFS_NFSD_EXPORT=y CONFIG_CIFS_POSIX=y CONFIG_CIFS_SMB2=y # CONFIG_CIFS_SMB311 is not set +# CONFIG_CIFS_SMB_DIRECT is not set # CONFIG_CIFS_STATS2 is not set CONFIG_CIFS_STATS=y CONFIG_CIFS_UPCALL=y @@ -1024,6 +1031,7 @@ CONFIG_DM_SNAPSHOT=y CONFIG_DM_SWITCH=m CONFIG_DM_THIN_PROVISIONING=m CONFIG_DM_UEVENT=y +CONFIG_DM_UNSTRIPED=m CONFIG_DM_VERITY_FEC=y CONFIG_DM_VERITY=m CONFIG_DM_ZERO=y @@ -1046,7 +1054,7 @@ CONFIG_DRM_AMD_DC=y CONFIG_DRM_AMDGPU_CIK=y # CONFIG_DRM_AMDGPU_GART_DEBUGFS is not set CONFIG_DRM_AMDGPU=m -# CONFIG_DRM_AMDGPU_SI is not set +CONFIG_DRM_AMDGPU_SI=y CONFIG_DRM_AMDGPU_USERPTR=y CONFIG_DRM_AMD_POWERPLAY=y CONFIG_DRM_ANALOGIX_ANX78XX=m @@ -1063,8 +1071,8 @@ CONFIG_DRM_FBDEV_EMULATION=y CONFIG_DRM_FBDEV_OVERALLOC=100 CONFIG_DRM_HISI_HIBMC=m CONFIG_DRM_I2C_ADV7511_AUDIO=y -# CONFIG_DRM_I2C_ADV7511_CEC is not set -# CONFIG_DRM_I2C_ADV7511 is not set +CONFIG_DRM_I2C_ADV7511_CEC=y +CONFIG_DRM_I2C_ADV7511=m CONFIG_DRM_I2C_ADV7533=y CONFIG_DRM_I2C_CH7006=m CONFIG_DRM_I2C_NXP_TDA998X=m @@ -1080,6 +1088,7 @@ CONFIG_DRM_MGAG200=m CONFIG_DRM_NOUVEAU_BACKLIGHT=y CONFIG_DRM_NOUVEAU=m # CONFIG_DRM_NXP_PTN3460 is not set +# CONFIG_DRM_PANEL_ILITEK_IL9322 is not set # CONFIG_DRM_PANEL_INNOLUX_P079ZCA is not set # CONFIG_DRM_PANEL_JDI_LT070ME05000 is not set # CONFIG_DRM_PANEL_LG_LG4573 is not set @@ -1153,6 +1162,7 @@ CONFIG_DVB_FIREDTV=m CONFIG_DVB_HOPPER=m CONFIG_DVB_MANTIS=m CONFIG_DVB_MAX_ADAPTERS=8 +# CONFIG_DVB_MMAP is not set CONFIG_DVB_MN88472=m CONFIG_DVB_MN88473=m CONFIG_DVB_NETUP_UNIDVB=m @@ -1166,6 +1176,7 @@ CONFIG_DVB_PT1=m CONFIG_DVB_SMIPCIE=m CONFIG_DVB_TTUSB_BUDGET=m CONFIG_DVB_TTUSB_DEC=m +# CONFIG_DVB_ULE_DEBUG is not set CONFIG_DVB_USB_A800=m CONFIG_DVB_USB_AF9005=m CONFIG_DVB_USB_AF9005_REMOTE=m @@ -1294,6 +1305,7 @@ CONFIG_F2FS_FS_XATTR=y # CONFIG_F2FS_IO_TRACE is not set CONFIG_F2FS_STAT_FS=y CONFIG_FA_DUMP=y +CONFIG_FAIL_FUNCTION=y # CONFIG_FAIL_FUTEX is not set # CONFIG_FAIL_IOMMU is not set CONFIG_FAIL_IO_TIMEOUT=y @@ -1395,6 +1407,7 @@ CONFIG_FCOE=m CONFIG_FEALNX=m CONFIG_FHANDLE=y # CONFIG_FHCI_DEBUG is not set +# CONFIG_FIND_BIT_BENCHMARK is not set CONFIG_FIREWIRE=m CONFIG_FIREWIRE_NET=m CONFIG_FIREWIRE_NOSY=m @@ -1523,6 +1536,7 @@ CONFIG_GPIOLIB=y CONFIG_GPIO_PCA953X=m CONFIG_GPIO_PCF857X=m # CONFIG_GPIO_PCH is not set +# CONFIG_GPIO_PCIE_IDIO_24 is not set CONFIG_GPIO_PCI_IDIO_16=m # CONFIG_GPIO_PISOSR is not set # CONFIG_GPIO_RDC321X is not set @@ -1551,6 +1565,7 @@ CONFIG_HAMACHI=m CONFIG_HAMRADIO=y CONFIG_HANGCHECK_TIMER=m CONFIG_HAPPYMEAL=m +CONFIG_HARDENED_USERCOPY_FALLBACK=y CONFIG_HARDENED_USERCOPY=y CONFIG_HARDLOCKUP_DETECTOR=y CONFIG_HAVE_BOOTMEM_INFO_NODE=y @@ -1598,6 +1613,7 @@ CONFIG_HID_GYRATION=m CONFIG_HID_HOLTEK=m CONFIG_HID_ICADE=m CONFIG_HID_ITE=m +CONFIG_HID_JABRA=m CONFIG_HID_KENSINGTON=m CONFIG_HID_KEYTOUCH=m CONFIG_HID_KYE=m @@ -1746,7 +1762,7 @@ CONFIG_HWPOISON_INJECT=m CONFIG_HW_RANDOM_POWERNV=m CONFIG_HW_RANDOM_PSERIES=m CONFIG_HW_RANDOM_TIMERIOMEM=m -CONFIG_HW_RANDOM_TPM=m +CONFIG_HW_RANDOM_TPM=y CONFIG_HW_RANDOM_VIRTIO=m CONFIG_HW_RANDOM=y CONFIG_HWSPINLOCK=y @@ -1863,6 +1879,7 @@ CONFIG_IGB_HWMON=y CONFIG_IGB=m CONFIG_IGBVF=m CONFIG_IIO_BUFFER_CB=m +CONFIG_IIO_BUFFER_HW_CONSUMER=m CONFIG_IIO_BUFFER=y CONFIG_IIO_CONFIGFS=m CONFIG_IIO_CONSUMERS_PER_TRIGGER=2 @@ -2035,6 +2052,7 @@ CONFIG_IP6_NF_MATCH_MH=m CONFIG_IP6_NF_MATCH_OPTS=m CONFIG_IP6_NF_MATCH_RPFILTER=m CONFIG_IP6_NF_MATCH_RT=m +CONFIG_IP6_NF_MATCH_SRH=m CONFIG_IP6_NF_NAT=m CONFIG_IP6_NF_RAW=m CONFIG_IP6_NF_SECURITY=m @@ -2164,7 +2182,6 @@ CONFIG_IPVTAP=m # CONFIG_IPW2200_DEBUG is not set # CONFIG_IPW2200 is not set CONFIG_IPWIRELESS=m -# CONFIG_IPX_INTERN is not set # CONFIG_IPX is not set # CONFIG_IRDA is not set CONFIG_IR_ENE=m @@ -2429,6 +2446,7 @@ CONFIG_LEDS_IS31FL32XX=m CONFIG_LEDS_LM3530=m # CONFIG_LEDS_LM355x is not set # CONFIG_LEDS_LM3642 is not set +CONFIG_LEDS_LM3692X=m # CONFIG_LEDS_LOCOMO is not set CONFIG_LEDS_LP3944=m CONFIG_LEDS_LP3952=m @@ -2462,6 +2480,7 @@ CONFIG_LEDS_TRIGGER_DISK=y CONFIG_LEDS_TRIGGER_GPIO=m CONFIG_LEDS_TRIGGER_HEARTBEAT=m CONFIG_LEDS_TRIGGER_MTD=y +CONFIG_LEDS_TRIGGER_NETDEV=m CONFIG_LEDS_TRIGGER_ONESHOT=m CONFIG_LEDS_TRIGGER_PANIC=y CONFIG_LEDS_TRIGGERS=y @@ -2494,11 +2513,11 @@ CONFIG_LIBFCOE=m CONFIG_LIQUIDIO_VF=m CONFIG_LIRC_BT829=m CONFIG_LIRC_IMON=m -CONFIG_LIRC=m CONFIG_LIRC_PARALLEL=m CONFIG_LIRC_SERIAL=m CONFIG_LIRC_SERIAL_TRANSMITTER=y CONFIG_LIRC_STAGING=y +CONFIG_LIRC=y CONFIG_LIRC_ZILOG=m # CONFIG_LIVEPATCH is not set # CONFIG_LKDTM is not set @@ -2649,6 +2668,7 @@ CONFIG_MEGARAID_MAILBOX=m CONFIG_MEGARAID_MM=m CONFIG_MEGARAID_NEWGEN=y CONFIG_MEGARAID_SAS=m +CONFIG_MELLANOX_PLATFORM=y CONFIG_MEMCG_SWAP_ENABLED=y CONFIG_MEMCG_SWAP=y CONFIG_MEMCG=y @@ -2727,8 +2747,6 @@ CONFIG_MFD_CORE=m # CONFIG_MFD_RK808 is not set # CONFIG_MFD_RN5T618 is not set # CONFIG_MFD_RT5033 is not set -CONFIG_MFD_RTSX_PCI=m -CONFIG_MFD_RTSX_USB=m # CONFIG_MFD_SEC_CORE is not set # CONFIG_MFD_SI476X_CORE is not set # CONFIG_MFD_SKY81452 is not set @@ -2777,6 +2795,8 @@ CONFIG_MII=m CONFIG_MINIX_FS=m CONFIG_MINIX_SUBPARTITION=y CONFIG_MISC_FILESYSTEMS=y +CONFIG_MISC_RTSX_PCI=m +CONFIG_MISC_RTSX_USB=m CONFIG_MISDN_AVMFRITZ=m CONFIG_MISDN_DSP=m CONFIG_MISDN_HFCMULTI=m @@ -2806,6 +2826,7 @@ CONFIG_MLX5_MPFS=y # CONFIG_MLX90614 is not set CONFIG_MLX_CPLD_PLATFORM=m CONFIG_MLXFW=m +CONFIG_MLXREG_HOTPLUG=m CONFIG_MLXSW_CORE_HWMON=y CONFIG_MLXSW_CORE=m CONFIG_MLXSW_CORE_THERMAL=y @@ -2826,6 +2847,7 @@ CONFIG_MMA7660=m CONFIG_MMC_BLOCK=m CONFIG_MMC_BLOCK_MINORS=8 CONFIG_MMC_CB710=m +CONFIG_MMC_CQHCI=m # CONFIG_MMC_DEBUG is not set CONFIG_MMC=m # CONFIG_MMC_MTK is not set @@ -2909,6 +2931,7 @@ CONFIG_MSI_BITMAP_SELFTEST=y # CONFIG_MSM_GCC_8994 is not set CONFIG_MSPRO_BLOCK=m CONFIG_MT7601U=m +CONFIG_MT76x2E=m # CONFIG_MTD_ABSENT is not set # CONFIG_MTD_AR7_PARTS is not set # CONFIG_MTD_BLKDEVS is not set @@ -3045,9 +3068,11 @@ CONFIG_NET_CORE=y # CONFIG_NET_DCCPPROBE is not set CONFIG_NETDEVICES=y CONFIG_NET_DEVLINK=m +# CONFIG_NETDEVSIM is not set CONFIG_NET_DROP_MONITOR=y CONFIG_NET_DSA_BCM_SF2=m CONFIG_NET_DSA_HWMON=y +# CONFIG_NET_DSA_LEGACY is not set CONFIG_NET_DSA_LOOP=m CONFIG_NET_DSA=m CONFIG_NET_DSA_MT7530=m @@ -3230,6 +3255,7 @@ CONFIG_NET_VENDOR_BROCADE=y # CONFIG_NET_VENDOR_CAVIUM is not set CONFIG_NET_VENDOR_CHELSIO=y CONFIG_NET_VENDOR_CISCO=y +# CONFIG_NET_VENDOR_CORTINA is not set CONFIG_NET_VENDOR_DEC=y CONFIG_NET_VENDOR_DLINK=y CONFIG_NET_VENDOR_EMULEX=y @@ -3264,6 +3290,7 @@ CONFIG_NET_VENDOR_SILAN=y CONFIG_NET_VENDOR_SIS=y CONFIG_NET_VENDOR_SMSC=y # CONFIG_NET_VENDOR_SNI is not set +# CONFIG_NET_VENDOR_SOCIONEXT is not set # CONFIG_NET_VENDOR_SOLARFLARE is not set CONFIG_NET_VENDOR_STMICRO=y CONFIG_NET_VENDOR_SUN=y @@ -3342,6 +3369,10 @@ CONFIG_NFC_TRF7970A=m CONFIG_NF_DUP_IPV4=m CONFIG_NF_DUP_IPV6=m CONFIG_NF_DUP_NETDEV=m +CONFIG_NF_FLOW_TABLE_INET=m +CONFIG_NF_FLOW_TABLE_IPV4=m +CONFIG_NF_FLOW_TABLE_IPV6=m +CONFIG_NF_FLOW_TABLE=m CONFIG_NF_LOG_ARP=m CONFIG_NF_LOG_BRIDGE=m CONFIG_NF_LOG_IPV4=m @@ -3403,6 +3434,7 @@ CONFIG_NFT_FIB_INET=m CONFIG_NFT_FIB_IPV4=m CONFIG_NFT_FIB_IPV6=m CONFIG_NFT_FIB_NETDEV=m +CONFIG_NFT_FLOW_OFFLOAD=m CONFIG_NFT_FWD_NETDEV=m CONFIG_NFT_HASH=m CONFIG_NFT_LIMIT=m @@ -3525,6 +3557,7 @@ CONFIG_OCFS2_FS=m CONFIG_OCFS2_FS_O2CB=m # CONFIG_OCFS2_FS_STATS is not set CONFIG_OCFS2_FS_USERSPACE_CLUSTER=m +CONFIG_OCXL=m # CONFIG_OF_OVERLAY is not set # CONFIG_OF_UNITTEST is not set # CONFIG_OMFS_FS is not set @@ -3622,6 +3655,7 @@ CONFIG_PCIEAER_INJECT=m CONFIG_PCIEAER=y # CONFIG_PCIEASPM_DEBUG is not set CONFIG_PCIEASPM=y +CONFIG_PCIE_CADENCE_HOST=y CONFIG_PCIE_DPC=y # CONFIG_PCIE_DW_HOST_ECAM is not set # CONFIG_PCIE_DW_PLAT is not set @@ -3683,6 +3717,7 @@ CONFIG_PHYLINK=m # CONFIG_PI433 is not set CONFIG_PID_NS=y # CONFIG_PINCONF is not set +# CONFIG_PINCTRL_AXP209 is not set # CONFIG_PINCTRL_CANNONLAKE is not set CONFIG_PINCTRL_CEDARFORK=m # CONFIG_PINCTRL_IPQ8074 is not set @@ -3754,7 +3789,9 @@ CONFIG_PPC_EMULATED_STATS=y # CONFIG_PPC_ICSWX_PID is not set # CONFIG_PPC_ICSWX_USE_SIGILL is not set CONFIG_PPC_ICSWX=y +# CONFIG_PPC_IRQ_SOFT_MASK_DEBUG is not set # CONFIG_PPC_MAPLE is not set +CONFIG_PPC_MEM_KEYS=y # CONFIG_PPC_MEMTRACE is not set # CONFIG_PPC_MPC5200_LPBFIFO is not set CONFIG_PPC_OF_BOOT_TRAMPOLINE=y @@ -3893,6 +3930,7 @@ CONFIG_RAID_ATTRS=m # CONFIG_RANDOM32_SELFTEST is not set # CONFIG_RAPIDIO is not set CONFIG_RAS_CEC=y +# CONFIG_RAVE_SP_CORE is not set CONFIG_RAW_DRIVER=y # CONFIG_RBTREE_TEST is not set CONFIG_RC_ATI_REMOTE=m @@ -3951,7 +3989,6 @@ CONFIG_RELOCATABLE=y CONFIG_REMOTEPROC=m CONFIG_RENESAS_PHY=m # CONFIG_RESET_ATTACK_MITIGATION is not set -# CONFIG_RESET_HSDK_V1 is not set # CONFIG_RESET_TI_SYSCON is not set # CONFIG_RFD77402 is not set # CONFIG_RFD_FTL is not set @@ -4130,6 +4167,7 @@ CONFIG_RTLLIB=m # CONFIG_RTLWIFI_DEBUG is not set CONFIG_RTLWIFI=m # CONFIG_RTS5208 is not set +CONFIG_RUNTIME_TESTING_MENU=y CONFIG_S2IO=m # CONFIG_SAMPLES is not set # CONFIG_SAMSUNG_USBPHY is not set @@ -4139,7 +4177,7 @@ CONFIG_SATA_AHCI=y # CONFIG_SATA_DWC is not set # CONFIG_SATA_HIGHBANK is not set CONFIG_SATA_INIC162X=m -CONFIG_SATA_MOBILE_LPM_POLICY=3 +CONFIG_SATA_MOBILE_LPM_POLICY=0 CONFIG_SATA_MV=m CONFIG_SATA_NV=m CONFIG_SATA_PMP=y @@ -4284,6 +4322,7 @@ CONFIG_SCTP_COOKIE_HMAC_SHA1=y # CONFIG_SCTP_DEFAULT_COOKIE_HMAC_MD5 is not set # CONFIG_SCTP_DEFAULT_COOKIE_HMAC_NONE is not set CONFIG_SCTP_DEFAULT_COOKIE_HMAC_SHA1=y +# CONFIG_SD_ADC_MODULATOR is not set CONFIG_SDIO_UART=m CONFIG_SECCOMP=y CONFIG_SECONDARY_TRUSTED_KEYRING=y @@ -4459,6 +4498,7 @@ CONFIG_SENSORS_VT1211=m CONFIG_SENSORS_VT8231=m CONFIG_SENSORS_W83627EHF=m CONFIG_SENSORS_W83627HF=m +CONFIG_SENSORS_W83773G=m CONFIG_SENSORS_W83781D=m CONFIG_SENSORS_W83791D=m CONFIG_SENSORS_W83792D=m @@ -4548,6 +4588,7 @@ CONFIG_SH_ETH=m CONFIG_SIGNED_PE_FILE_VERIFICATION=y CONFIG_SIMPLE_GPIO=y # CONFIG_SIMPLE_PM_BUS is not set +# CONFIG_SIOX is not set CONFIG_SIS190=m CONFIG_SIS900=m # CONFIG_SKFP is not set @@ -4560,6 +4601,7 @@ CONFIG_SLAB_FREELIST_HARDENED=y CONFIG_SLAB_FREELIST_RANDOM=y CONFIG_SLAB_MERGE_DEFAULT=y # CONFIG_SLICOSS is not set +# CONFIG_SLIMBUS is not set CONFIG_SLIP_COMPRESSED=y CONFIG_SLIP=m # CONFIG_SLIP_MODE_SLIP6 is not set @@ -4776,6 +4818,7 @@ CONFIG_SND_SOC_HDMI_CODEC=m # 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_MAX98373=m # CONFIG_SND_SOC_MAX98504 is not set # CONFIG_SND_SOC_MAX9860 is not set CONFIG_SND_SOC_MAX98927=m @@ -4788,6 +4831,8 @@ CONFIG_SND_SOC_NAU8824=m # CONFIG_SND_SOC_PCM179X_I2C is not set # CONFIG_SND_SOC_PCM179X is not set # CONFIG_SND_SOC_PCM179X_SPI is not set +CONFIG_SND_SOC_PCM186X_I2C=m +CONFIG_SND_SOC_PCM186X_SPI=m # CONFIG_SND_SOC_PCM3168A_I2C is not set # CONFIG_SND_SOC_PCM3168A_SPI is not set # CONFIG_SND_SOC_PCM512x_I2C is not set @@ -4807,13 +4852,17 @@ CONFIG_SND_SOC_SPDIF=m # CONFIG_SND_SOC_TAS5086 is not set # CONFIG_SND_SOC_TAS571X is not set # CONFIG_SND_SOC_TAS5720 is not set +CONFIG_SND_SOC_TAS6424=m # 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_TLV320AIC32X4_I2C=m +CONFIG_SND_SOC_TLV320AIC32X4_SPI=m # CONFIG_SND_SOC_TLV320AIC3X is not set # CONFIG_SND_SOC_TPA6130A2 is not set # CONFIG_SND_SOC_TS3A227E is not set +CONFIG_SND_SOC_TSCS42XX=m # CONFIG_SND_SOC_WM8510 is not set # CONFIG_SND_SOC_WM8523 is not set CONFIG_SND_SOC_WM8524=m @@ -4874,6 +4923,9 @@ CONFIG_SONY_FF=y # CONFIG_SONYPI is not set CONFIG_SOUND=m CONFIG_SOUND_OSS_CORE_PRECLAIM=y +CONFIG_SOUNDWIRE_BUS=m +CONFIG_SOUNDWIRE_CADENCE=m +CONFIG_SOUNDWIRE=y CONFIG_SPAPR_TCE_IOMMU=y CONFIG_SPARSE_IRQ=y CONFIG_SPARSEMEM_VMEMMAP=y @@ -4947,6 +4999,9 @@ CONFIG_STRICT_DEVMEM=y # CONFIG_STRING_SELFTEST is not set CONFIG_STRIP_ASM_SYMS=y # CONFIG_STRIP is not set +CONFIG_ST_UVIS25_I2C=m +CONFIG_ST_UVIS25=m +CONFIG_ST_UVIS25_SPI=m CONFIG_SUNDANCE=m # CONFIG_SUNDANCE_MMIO is not set CONFIG_SUNGEM=m @@ -5098,7 +5153,6 @@ CONFIG_TIFM_CORE=m CONFIG_TIGON3_HWMON=y CONFIG_TIGON3=m # CONFIG_TIMB_DMA is not set -# CONFIG_TIMER_STATS is not set CONFIG_TIPC=m # CONFIG_TIPC_MEDIA_IB is not set CONFIG_TIPC_MEDIA_UDP=y @@ -5257,6 +5311,7 @@ CONFIG_UIO_SERCOS3=m CONFIG_ULI526X=m # CONFIG_ULTRIX_PARTITION is not set # CONFIG_UNISYSSPAR is not set +# CONFIG_UNISYS_VISORBUS is not set CONFIG_UNIX98_PTYS=y CONFIG_UNIX_DIAG=m CONFIG_UNIXWARE_DISKLABEL=y @@ -5279,7 +5334,6 @@ 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_F_UAC1_LEGACY is not set CONFIG_USB_CXACRU=m # CONFIG_USB_CYPRESS_CY7C63 is not set @@ -5570,6 +5624,7 @@ CONFIG_USB_WDM=m # CONFIG_USB_WUSB_CBAF_DEBUG is not set CONFIG_USB_WUSB_CBAF=m CONFIG_USB_WUSB=m +CONFIG_USB_XHCI_DBGCAP=y CONFIG_USB_XHCI_HCD=y # CONFIG_USB_XHCI_PLATFORM is not set CONFIG_USB_XUSBATM=m @@ -5714,6 +5769,7 @@ CONFIG_VIRTIO_BLK=m # CONFIG_VIRTIO_BLK_SCSI is not set CONFIG_VIRTIO_CONSOLE=m CONFIG_VIRTIO_INPUT=m +CONFIG_VIRTIO_MENU=y # CONFIG_VIRTIO_MMIO_CMDLINE_DEVICES is not set CONFIG_VIRTIO_MMIO=m CONFIG_VIRTIO_NET=m @@ -5854,6 +5910,7 @@ CONFIG_XFS_QUOTA=y # CONFIG_XILINX_EMACLITE is not set CONFIG_XILINX_GMII2RGMII=m # CONFIG_XILINX_LL_TEMAC is not set +CONFIG_XILINX_VCU=m # CONFIG_XILINX_WATCHDOG is not set CONFIG_XILLYBUS=m # CONFIG_XILLYBUS_OF is not set @@ -5881,6 +5938,7 @@ CONFIG_ZISOFS=y CONFIG_ZLIB_DEFLATE=y CONFIG_ZLIB_INFLATE=y # CONFIG_ZONE_DEVICE is not set +CONFIG_ZOPT2201=m # CONFIG_ZPA2326 is not set CONFIG_ZRAM=m # CONFIG_ZRAM_WRITEBACK is not set diff --git a/kernel-ppc64le.config b/kernel-ppc64le.config index 6b1a70787..9cde8bee9 100644 --- a/kernel-ppc64le.config +++ b/kernel-ppc64le.config @@ -44,6 +44,7 @@ CONFIG_ACPI_ALS=m # CONFIG_ACPI_DEBUG is not set # CONFIG_ACPI_NFIT is not set CONFIG_ACPI_PCI_SLOT=y +CONFIG_ACPI_SPCR_TABLE=y # CONFIG_ACQUIRE_WDT is not set # CONFIG_AD2S1200 is not set # CONFIG_AD2S1210 is not set @@ -191,6 +192,7 @@ CONFIG_ATH10K_DEBUGFS=y CONFIG_ATH10K=m CONFIG_ATH10K_PCI=m CONFIG_ATH10K_SDIO=m +# CONFIG_ATH10K_SPECTRAL is not set # CONFIG_ATH10K_TRACING is not set CONFIG_ATH10K_USB=m CONFIG_ATH5K_DEBUG=y @@ -204,6 +206,7 @@ CONFIG_ATH6KL_USB=m CONFIG_ATH9K_AHB=y CONFIG_ATH9K_BTCOEX_SUPPORT=y # CONFIG_ATH9K_CHANNEL_CONTEXT is not set +# CONFIG_ATH9K_COMMON_SPECTRAL is not set CONFIG_ATH9K_DEBUGFS=y # CONFIG_ATH9K_DEBUG is not set # CONFIG_ATH9K_DYNACK is not set @@ -387,6 +390,7 @@ CONFIG_BLK_DEV_LOOP=m CONFIG_BLK_DEV_LOOP_MIN_COUNT=0 CONFIG_BLK_DEV_MD=y CONFIG_BLK_DEV_NBD=m +# CONFIG_BLK_DEV_NULL_BLK_FAULT_INJECTION is not set CONFIG_BLK_DEV_NULL_BLK=m CONFIG_BLK_DEV_NVME=m # CONFIG_BLK_DEV_NVME_SCSI is not set @@ -443,6 +447,7 @@ CONFIG_BOOTX_TEXT=y CONFIG_BOUNCE=y CONFIG_BPF_JIT_ALWAYS_ON=y CONFIG_BPF_JIT=y +# CONFIG_BPF_KPROBE_OVERRIDE is not set CONFIG_BPF_STREAM_PARSER=y CONFIG_BPF_SYSCALL=y CONFIG_BPQETHER=m @@ -498,7 +503,7 @@ CONFIG_BT_HCIBPA10X=m CONFIG_BT_HCIBT3C=m CONFIG_BT_HCIBTSDIO=m CONFIG_BT_HCIBTUART=m -CONFIG_BT_HCIBTUSB_AUTOSUSPEND=y +# CONFIG_BT_HCIBTUSB_AUTOSUSPEND is not set CONFIG_BT_HCIBTUSB_BCM=y CONFIG_BT_HCIBTUSB=m CONFIG_BT_HCIBTUSB_RTL=y @@ -660,6 +665,7 @@ CONFIG_CHARGER_SMB347=m # CONFIG_CHASH_SELFTEST is not set # CONFIG_CHASH_STATS is not set CONFIG_CHECKPOINT_RESTORE=y +CONFIG_CHELSIO_IPSEC_INLINE=y CONFIG_CHELSIO_T1_1G=y CONFIG_CHELSIO_T1=m CONFIG_CHELSIO_T3=m @@ -685,6 +691,7 @@ CONFIG_CIFS_NFSD_EXPORT=y CONFIG_CIFS_POSIX=y CONFIG_CIFS_SMB2=y # CONFIG_CIFS_SMB311 is not set +# CONFIG_CIFS_SMB_DIRECT is not set # CONFIG_CIFS_STATS2 is not set CONFIG_CIFS_STATS=y CONFIG_CIFS_UPCALL=y @@ -1013,6 +1020,7 @@ CONFIG_DM_SNAPSHOT=y CONFIG_DM_SWITCH=m CONFIG_DM_THIN_PROVISIONING=m CONFIG_DM_UEVENT=y +CONFIG_DM_UNSTRIPED=m CONFIG_DM_VERITY_FEC=y CONFIG_DM_VERITY=m CONFIG_DM_ZERO=y @@ -1035,7 +1043,7 @@ CONFIG_DRM_AMD_DC=y CONFIG_DRM_AMDGPU_CIK=y # CONFIG_DRM_AMDGPU_GART_DEBUGFS is not set CONFIG_DRM_AMDGPU=m -# CONFIG_DRM_AMDGPU_SI is not set +CONFIG_DRM_AMDGPU_SI=y CONFIG_DRM_AMDGPU_USERPTR=y CONFIG_DRM_AMD_POWERPLAY=y CONFIG_DRM_ANALOGIX_ANX78XX=m @@ -1052,8 +1060,8 @@ CONFIG_DRM_FBDEV_EMULATION=y CONFIG_DRM_FBDEV_OVERALLOC=100 CONFIG_DRM_HISI_HIBMC=m CONFIG_DRM_I2C_ADV7511_AUDIO=y -# CONFIG_DRM_I2C_ADV7511_CEC is not set -# CONFIG_DRM_I2C_ADV7511 is not set +CONFIG_DRM_I2C_ADV7511_CEC=y +CONFIG_DRM_I2C_ADV7511=m CONFIG_DRM_I2C_ADV7533=y CONFIG_DRM_I2C_CH7006=m CONFIG_DRM_I2C_NXP_TDA998X=m @@ -1069,6 +1077,7 @@ CONFIG_DRM_MGAG200=m CONFIG_DRM_NOUVEAU_BACKLIGHT=y CONFIG_DRM_NOUVEAU=m # CONFIG_DRM_NXP_PTN3460 is not set +# CONFIG_DRM_PANEL_ILITEK_IL9322 is not set # CONFIG_DRM_PANEL_INNOLUX_P079ZCA is not set # CONFIG_DRM_PANEL_JDI_LT070ME05000 is not set # CONFIG_DRM_PANEL_LG_LG4573 is not set @@ -1142,6 +1151,7 @@ CONFIG_DVB_FIREDTV=m CONFIG_DVB_HOPPER=m CONFIG_DVB_MANTIS=m CONFIG_DVB_MAX_ADAPTERS=8 +# CONFIG_DVB_MMAP is not set CONFIG_DVB_MN88472=m CONFIG_DVB_MN88473=m CONFIG_DVB_NETUP_UNIDVB=m @@ -1155,6 +1165,7 @@ CONFIG_DVB_PT1=m CONFIG_DVB_SMIPCIE=m CONFIG_DVB_TTUSB_BUDGET=m CONFIG_DVB_TTUSB_DEC=m +# CONFIG_DVB_ULE_DEBUG is not set CONFIG_DVB_USB_A800=m CONFIG_DVB_USB_AF9005=m CONFIG_DVB_USB_AF9005_REMOTE=m @@ -1377,6 +1388,7 @@ CONFIG_FCOE=m CONFIG_FEALNX=m CONFIG_FHANDLE=y # CONFIG_FHCI_DEBUG is not set +# CONFIG_FIND_BIT_BENCHMARK is not set CONFIG_FIREWIRE=m CONFIG_FIREWIRE_NET=m CONFIG_FIREWIRE_NOSY=m @@ -1505,6 +1517,7 @@ CONFIG_GPIOLIB=y CONFIG_GPIO_PCA953X=m CONFIG_GPIO_PCF857X=m # CONFIG_GPIO_PCH is not set +# CONFIG_GPIO_PCIE_IDIO_24 is not set CONFIG_GPIO_PCI_IDIO_16=m # CONFIG_GPIO_PISOSR is not set # CONFIG_GPIO_RDC321X is not set @@ -1533,6 +1546,7 @@ CONFIG_HAMACHI=m CONFIG_HAMRADIO=y CONFIG_HANGCHECK_TIMER=m CONFIG_HAPPYMEAL=m +CONFIG_HARDENED_USERCOPY_FALLBACK=y CONFIG_HARDENED_USERCOPY=y CONFIG_HARDLOCKUP_DETECTOR=y CONFIG_HAVE_BOOTMEM_INFO_NODE=y @@ -1580,6 +1594,7 @@ CONFIG_HID_GYRATION=m CONFIG_HID_HOLTEK=m CONFIG_HID_ICADE=m CONFIG_HID_ITE=m +CONFIG_HID_JABRA=m CONFIG_HID_KENSINGTON=m CONFIG_HID_KEYTOUCH=m CONFIG_HID_KYE=m @@ -1728,7 +1743,7 @@ CONFIG_HWPOISON_INJECT=m CONFIG_HW_RANDOM_POWERNV=m CONFIG_HW_RANDOM_PSERIES=m CONFIG_HW_RANDOM_TIMERIOMEM=m -CONFIG_HW_RANDOM_TPM=m +CONFIG_HW_RANDOM_TPM=y CONFIG_HW_RANDOM_VIRTIO=m CONFIG_HW_RANDOM=y CONFIG_HWSPINLOCK=y @@ -1845,6 +1860,7 @@ CONFIG_IGB_HWMON=y CONFIG_IGB=m CONFIG_IGBVF=m CONFIG_IIO_BUFFER_CB=m +CONFIG_IIO_BUFFER_HW_CONSUMER=m CONFIG_IIO_BUFFER=y CONFIG_IIO_CONFIGFS=m CONFIG_IIO_CONSUMERS_PER_TRIGGER=2 @@ -2017,6 +2033,7 @@ CONFIG_IP6_NF_MATCH_MH=m CONFIG_IP6_NF_MATCH_OPTS=m CONFIG_IP6_NF_MATCH_RPFILTER=m CONFIG_IP6_NF_MATCH_RT=m +CONFIG_IP6_NF_MATCH_SRH=m CONFIG_IP6_NF_NAT=m CONFIG_IP6_NF_RAW=m CONFIG_IP6_NF_SECURITY=m @@ -2146,7 +2163,6 @@ CONFIG_IPVTAP=m # CONFIG_IPW2200_DEBUG is not set # CONFIG_IPW2200 is not set CONFIG_IPWIRELESS=m -# CONFIG_IPX_INTERN is not set # CONFIG_IPX is not set # CONFIG_IRDA is not set CONFIG_IR_ENE=m @@ -2409,6 +2425,7 @@ CONFIG_LEDS_IS31FL32XX=m CONFIG_LEDS_LM3530=m # CONFIG_LEDS_LM355x is not set # CONFIG_LEDS_LM3642 is not set +CONFIG_LEDS_LM3692X=m # CONFIG_LEDS_LOCOMO is not set CONFIG_LEDS_LP3944=m CONFIG_LEDS_LP3952=m @@ -2442,6 +2459,7 @@ CONFIG_LEDS_TRIGGER_DISK=y CONFIG_LEDS_TRIGGER_GPIO=m CONFIG_LEDS_TRIGGER_HEARTBEAT=m CONFIG_LEDS_TRIGGER_MTD=y +CONFIG_LEDS_TRIGGER_NETDEV=m CONFIG_LEDS_TRIGGER_ONESHOT=m CONFIG_LEDS_TRIGGER_PANIC=y CONFIG_LEDS_TRIGGERS=y @@ -2474,11 +2492,11 @@ CONFIG_LIBFCOE=m CONFIG_LIQUIDIO_VF=m CONFIG_LIRC_BT829=m CONFIG_LIRC_IMON=m -CONFIG_LIRC=m CONFIG_LIRC_PARALLEL=m CONFIG_LIRC_SERIAL=m CONFIG_LIRC_SERIAL_TRANSMITTER=y CONFIG_LIRC_STAGING=y +CONFIG_LIRC=y CONFIG_LIRC_ZILOG=m # CONFIG_LIVEPATCH is not set # CONFIG_LKDTM is not set @@ -2628,6 +2646,7 @@ CONFIG_MEGARAID_MAILBOX=m CONFIG_MEGARAID_MM=m CONFIG_MEGARAID_NEWGEN=y CONFIG_MEGARAID_SAS=m +CONFIG_MELLANOX_PLATFORM=y CONFIG_MEMCG_SWAP_ENABLED=y CONFIG_MEMCG_SWAP=y CONFIG_MEMCG=y @@ -2706,8 +2725,6 @@ CONFIG_MFD_CORE=m # CONFIG_MFD_RK808 is not set # CONFIG_MFD_RN5T618 is not set # CONFIG_MFD_RT5033 is not set -CONFIG_MFD_RTSX_PCI=m -CONFIG_MFD_RTSX_USB=m # CONFIG_MFD_SEC_CORE is not set # CONFIG_MFD_SI476X_CORE is not set # CONFIG_MFD_SKY81452 is not set @@ -2756,6 +2773,8 @@ CONFIG_MII=m CONFIG_MINIX_FS=m CONFIG_MINIX_SUBPARTITION=y CONFIG_MISC_FILESYSTEMS=y +CONFIG_MISC_RTSX_PCI=m +CONFIG_MISC_RTSX_USB=m CONFIG_MISDN_AVMFRITZ=m CONFIG_MISDN_DSP=m CONFIG_MISDN_HFCMULTI=m @@ -2785,6 +2804,7 @@ CONFIG_MLX5_MPFS=y # CONFIG_MLX90614 is not set CONFIG_MLX_CPLD_PLATFORM=m CONFIG_MLXFW=m +CONFIG_MLXREG_HOTPLUG=m CONFIG_MLXSW_CORE_HWMON=y CONFIG_MLXSW_CORE=m CONFIG_MLXSW_CORE_THERMAL=y @@ -2805,6 +2825,7 @@ CONFIG_MMA7660=m CONFIG_MMC_BLOCK=m CONFIG_MMC_BLOCK_MINORS=8 CONFIG_MMC_CB710=m +CONFIG_MMC_CQHCI=m # CONFIG_MMC_DEBUG is not set CONFIG_MMC=m # CONFIG_MMC_MTK is not set @@ -2887,6 +2908,7 @@ CONFIG_MSI_BITMAP_SELFTEST=y # CONFIG_MSM_GCC_8994 is not set CONFIG_MSPRO_BLOCK=m CONFIG_MT7601U=m +CONFIG_MT76x2E=m # CONFIG_MTD_ABSENT is not set # CONFIG_MTD_AR7_PARTS is not set # CONFIG_MTD_BLKDEVS is not set @@ -3023,9 +3045,11 @@ CONFIG_NET_CORE=y # CONFIG_NET_DCCPPROBE is not set CONFIG_NETDEVICES=y CONFIG_NET_DEVLINK=m +# CONFIG_NETDEVSIM is not set CONFIG_NET_DROP_MONITOR=y CONFIG_NET_DSA_BCM_SF2=m CONFIG_NET_DSA_HWMON=y +# CONFIG_NET_DSA_LEGACY is not set CONFIG_NET_DSA_LOOP=m CONFIG_NET_DSA=m CONFIG_NET_DSA_MT7530=m @@ -3208,6 +3232,7 @@ CONFIG_NET_VENDOR_BROCADE=y # CONFIG_NET_VENDOR_CAVIUM is not set CONFIG_NET_VENDOR_CHELSIO=y CONFIG_NET_VENDOR_CISCO=y +# CONFIG_NET_VENDOR_CORTINA is not set CONFIG_NET_VENDOR_DEC=y CONFIG_NET_VENDOR_DLINK=y CONFIG_NET_VENDOR_EMULEX=y @@ -3242,6 +3267,7 @@ CONFIG_NET_VENDOR_SILAN=y CONFIG_NET_VENDOR_SIS=y CONFIG_NET_VENDOR_SMSC=y # CONFIG_NET_VENDOR_SNI is not set +# CONFIG_NET_VENDOR_SOCIONEXT is not set # CONFIG_NET_VENDOR_SOLARFLARE is not set CONFIG_NET_VENDOR_STMICRO=y CONFIG_NET_VENDOR_SUN=y @@ -3320,6 +3346,10 @@ CONFIG_NFC_TRF7970A=m CONFIG_NF_DUP_IPV4=m CONFIG_NF_DUP_IPV6=m CONFIG_NF_DUP_NETDEV=m +CONFIG_NF_FLOW_TABLE_INET=m +CONFIG_NF_FLOW_TABLE_IPV4=m +CONFIG_NF_FLOW_TABLE_IPV6=m +CONFIG_NF_FLOW_TABLE=m CONFIG_NF_LOG_ARP=m CONFIG_NF_LOG_BRIDGE=m CONFIG_NF_LOG_IPV4=m @@ -3381,6 +3411,7 @@ CONFIG_NFT_FIB_INET=m CONFIG_NFT_FIB_IPV4=m CONFIG_NFT_FIB_IPV6=m CONFIG_NFT_FIB_NETDEV=m +CONFIG_NFT_FLOW_OFFLOAD=m CONFIG_NFT_FWD_NETDEV=m CONFIG_NFT_HASH=m CONFIG_NFT_LIMIT=m @@ -3503,6 +3534,7 @@ CONFIG_OCFS2_FS=m CONFIG_OCFS2_FS_O2CB=m # CONFIG_OCFS2_FS_STATS is not set CONFIG_OCFS2_FS_USERSPACE_CLUSTER=m +CONFIG_OCXL=m # CONFIG_OF_OVERLAY is not set # CONFIG_OF_UNITTEST is not set # CONFIG_OMFS_FS is not set @@ -3600,6 +3632,7 @@ CONFIG_PCIEAER_INJECT=m CONFIG_PCIEAER=y # CONFIG_PCIEASPM_DEBUG is not set CONFIG_PCIEASPM=y +CONFIG_PCIE_CADENCE_HOST=y CONFIG_PCIE_DPC=y # CONFIG_PCIE_DW_HOST_ECAM is not set # CONFIG_PCIE_DW_PLAT is not set @@ -3661,6 +3694,7 @@ CONFIG_PHYLINK=m # CONFIG_PI433 is not set CONFIG_PID_NS=y # CONFIG_PINCONF is not set +# CONFIG_PINCTRL_AXP209 is not set # CONFIG_PINCTRL_CANNONLAKE is not set CONFIG_PINCTRL_CEDARFORK=m # CONFIG_PINCTRL_IPQ8074 is not set @@ -3732,7 +3766,9 @@ CONFIG_PPC_EMULATED_STATS=y # CONFIG_PPC_ICSWX_PID is not set # CONFIG_PPC_ICSWX_USE_SIGILL is not set CONFIG_PPC_ICSWX=y +# CONFIG_PPC_IRQ_SOFT_MASK_DEBUG is not set # CONFIG_PPC_MAPLE is not set +CONFIG_PPC_MEM_KEYS=y # CONFIG_PPC_MEMTRACE is not set # CONFIG_PPC_MPC5200_LPBFIFO is not set CONFIG_PPC_OF_BOOT_TRAMPOLINE=y @@ -3870,6 +3906,7 @@ CONFIG_RAID_ATTRS=m # CONFIG_RANDOM32_SELFTEST is not set # CONFIG_RAPIDIO is not set CONFIG_RAS_CEC=y +# CONFIG_RAVE_SP_CORE is not set CONFIG_RAW_DRIVER=y # CONFIG_RBTREE_TEST is not set CONFIG_RC_ATI_REMOTE=m @@ -3928,7 +3965,6 @@ CONFIG_RELOCATABLE=y CONFIG_REMOTEPROC=m CONFIG_RENESAS_PHY=m # CONFIG_RESET_ATTACK_MITIGATION is not set -# CONFIG_RESET_HSDK_V1 is not set # CONFIG_RESET_TI_SYSCON is not set # CONFIG_RFD77402 is not set # CONFIG_RFD_FTL is not set @@ -4107,6 +4143,7 @@ CONFIG_RTLLIB=m # CONFIG_RTLWIFI_DEBUG is not set CONFIG_RTLWIFI=m # CONFIG_RTS5208 is not set +CONFIG_RUNTIME_TESTING_MENU=y CONFIG_S2IO=m # CONFIG_SAMPLES is not set # CONFIG_SAMSUNG_USBPHY is not set @@ -4116,7 +4153,7 @@ CONFIG_SATA_AHCI=y # CONFIG_SATA_DWC is not set # CONFIG_SATA_HIGHBANK is not set CONFIG_SATA_INIC162X=m -CONFIG_SATA_MOBILE_LPM_POLICY=3 +CONFIG_SATA_MOBILE_LPM_POLICY=0 CONFIG_SATA_MV=m CONFIG_SATA_NV=m CONFIG_SATA_PMP=y @@ -4261,6 +4298,7 @@ CONFIG_SCTP_COOKIE_HMAC_SHA1=y # CONFIG_SCTP_DEFAULT_COOKIE_HMAC_MD5 is not set # CONFIG_SCTP_DEFAULT_COOKIE_HMAC_NONE is not set CONFIG_SCTP_DEFAULT_COOKIE_HMAC_SHA1=y +# CONFIG_SD_ADC_MODULATOR is not set CONFIG_SDIO_UART=m CONFIG_SECCOMP=y CONFIG_SECONDARY_TRUSTED_KEYRING=y @@ -4436,6 +4474,7 @@ CONFIG_SENSORS_VT1211=m CONFIG_SENSORS_VT8231=m CONFIG_SENSORS_W83627EHF=m CONFIG_SENSORS_W83627HF=m +CONFIG_SENSORS_W83773G=m CONFIG_SENSORS_W83781D=m CONFIG_SENSORS_W83791D=m CONFIG_SENSORS_W83792D=m @@ -4525,6 +4564,7 @@ CONFIG_SH_ETH=m CONFIG_SIGNED_PE_FILE_VERIFICATION=y CONFIG_SIMPLE_GPIO=y # CONFIG_SIMPLE_PM_BUS is not set +# CONFIG_SIOX is not set CONFIG_SIS190=m CONFIG_SIS900=m # CONFIG_SKFP is not set @@ -4537,6 +4577,7 @@ CONFIG_SLAB_FREELIST_HARDENED=y CONFIG_SLAB_FREELIST_RANDOM=y CONFIG_SLAB_MERGE_DEFAULT=y # CONFIG_SLICOSS is not set +# CONFIG_SLIMBUS is not set CONFIG_SLIP_COMPRESSED=y CONFIG_SLIP=m # CONFIG_SLIP_MODE_SLIP6 is not set @@ -4752,6 +4793,7 @@ CONFIG_SND_SOC_HDMI_CODEC=m # 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_MAX98373=m # CONFIG_SND_SOC_MAX98504 is not set # CONFIG_SND_SOC_MAX9860 is not set CONFIG_SND_SOC_MAX98927=m @@ -4764,6 +4806,8 @@ CONFIG_SND_SOC_NAU8824=m # CONFIG_SND_SOC_PCM179X_I2C is not set # CONFIG_SND_SOC_PCM179X is not set # CONFIG_SND_SOC_PCM179X_SPI is not set +CONFIG_SND_SOC_PCM186X_I2C=m +CONFIG_SND_SOC_PCM186X_SPI=m # CONFIG_SND_SOC_PCM3168A_I2C is not set # CONFIG_SND_SOC_PCM3168A_SPI is not set # CONFIG_SND_SOC_PCM512x_I2C is not set @@ -4783,13 +4827,17 @@ CONFIG_SND_SOC_SPDIF=m # CONFIG_SND_SOC_TAS5086 is not set # CONFIG_SND_SOC_TAS571X is not set # CONFIG_SND_SOC_TAS5720 is not set +CONFIG_SND_SOC_TAS6424=m # 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_TLV320AIC32X4_I2C=m +CONFIG_SND_SOC_TLV320AIC32X4_SPI=m # CONFIG_SND_SOC_TLV320AIC3X is not set # CONFIG_SND_SOC_TPA6130A2 is not set # CONFIG_SND_SOC_TS3A227E is not set +CONFIG_SND_SOC_TSCS42XX=m # CONFIG_SND_SOC_WM8510 is not set # CONFIG_SND_SOC_WM8523 is not set CONFIG_SND_SOC_WM8524=m @@ -4850,6 +4898,9 @@ CONFIG_SONY_FF=y # CONFIG_SONYPI is not set CONFIG_SOUND=m CONFIG_SOUND_OSS_CORE_PRECLAIM=y +CONFIG_SOUNDWIRE_BUS=m +CONFIG_SOUNDWIRE_CADENCE=m +CONFIG_SOUNDWIRE=y CONFIG_SPAPR_TCE_IOMMU=y CONFIG_SPARSE_IRQ=y CONFIG_SPARSEMEM_VMEMMAP=y @@ -4923,6 +4974,9 @@ CONFIG_STRICT_DEVMEM=y # CONFIG_STRING_SELFTEST is not set CONFIG_STRIP_ASM_SYMS=y # CONFIG_STRIP is not set +CONFIG_ST_UVIS25_I2C=m +CONFIG_ST_UVIS25=m +CONFIG_ST_UVIS25_SPI=m CONFIG_SUNDANCE=m # CONFIG_SUNDANCE_MMIO is not set CONFIG_SUNGEM=m @@ -5074,7 +5128,6 @@ CONFIG_TIFM_CORE=m CONFIG_TIGON3_HWMON=y CONFIG_TIGON3=m # CONFIG_TIMB_DMA is not set -# CONFIG_TIMER_STATS is not set CONFIG_TIPC=m # CONFIG_TIPC_MEDIA_IB is not set CONFIG_TIPC_MEDIA_UDP=y @@ -5233,6 +5286,7 @@ CONFIG_UIO_SERCOS3=m CONFIG_ULI526X=m # CONFIG_ULTRIX_PARTITION is not set # CONFIG_UNISYSSPAR is not set +# CONFIG_UNISYS_VISORBUS is not set CONFIG_UNIX98_PTYS=y CONFIG_UNIX_DIAG=m CONFIG_UNIXWARE_DISKLABEL=y @@ -5255,7 +5309,6 @@ 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_F_UAC1_LEGACY is not set CONFIG_USB_CXACRU=m # CONFIG_USB_CYPRESS_CY7C63 is not set @@ -5546,6 +5599,7 @@ CONFIG_USB_WDM=m # CONFIG_USB_WUSB_CBAF_DEBUG is not set CONFIG_USB_WUSB_CBAF=m CONFIG_USB_WUSB=m +CONFIG_USB_XHCI_DBGCAP=y CONFIG_USB_XHCI_HCD=y # CONFIG_USB_XHCI_PLATFORM is not set CONFIG_USB_XUSBATM=m @@ -5690,6 +5744,7 @@ CONFIG_VIRTIO_BLK=m # CONFIG_VIRTIO_BLK_SCSI is not set CONFIG_VIRTIO_CONSOLE=m CONFIG_VIRTIO_INPUT=m +CONFIG_VIRTIO_MENU=y # CONFIG_VIRTIO_MMIO_CMDLINE_DEVICES is not set CONFIG_VIRTIO_MMIO=m CONFIG_VIRTIO_NET=m @@ -5830,6 +5885,7 @@ CONFIG_XFS_QUOTA=y # CONFIG_XILINX_EMACLITE is not set CONFIG_XILINX_GMII2RGMII=m # CONFIG_XILINX_LL_TEMAC is not set +CONFIG_XILINX_VCU=m # CONFIG_XILINX_WATCHDOG is not set CONFIG_XILLYBUS=m # CONFIG_XILLYBUS_OF is not set @@ -5857,6 +5913,7 @@ CONFIG_ZISOFS=y CONFIG_ZLIB_DEFLATE=y CONFIG_ZLIB_INFLATE=y # CONFIG_ZONE_DEVICE is not set +CONFIG_ZOPT2201=m # CONFIG_ZPA2326 is not set CONFIG_ZRAM=m # CONFIG_ZRAM_WRITEBACK is not set diff --git a/kernel-s390x-debug.config b/kernel-s390x-debug.config index 598d7165f..d7a2712fe 100644 --- a/kernel-s390x-debug.config +++ b/kernel-s390x-debug.config @@ -44,6 +44,7 @@ CONFIG_ACPI_ALS=m CONFIG_ACPI_DEBUG=y # CONFIG_ACPI_NFIT is not set CONFIG_ACPI_PCI_SLOT=y +CONFIG_ACPI_SPCR_TABLE=y # CONFIG_ACQUIRE_WDT is not set # CONFIG_AD2S1200 is not set # CONFIG_AD2S1210 is not set @@ -196,6 +197,7 @@ CONFIG_ATH10K_DEBUGFS=y CONFIG_ATH10K=m CONFIG_ATH10K_PCI=m CONFIG_ATH10K_SDIO=m +# CONFIG_ATH10K_SPECTRAL is not set # CONFIG_ATH10K_TRACING is not set CONFIG_ATH10K_USB=m CONFIG_ATH5K_DEBUG=y @@ -209,6 +211,7 @@ CONFIG_ATH6KL_USB=m CONFIG_ATH9K_AHB=y CONFIG_ATH9K_BTCOEX_SUPPORT=y # CONFIG_ATH9K_CHANNEL_CONTEXT is not set +# CONFIG_ATH9K_COMMON_SPECTRAL is not set CONFIG_ATH9K_DEBUGFS=y # CONFIG_ATH9K_DEBUG is not set # CONFIG_ATH9K_DYNACK is not set @@ -390,6 +393,7 @@ CONFIG_BLK_DEV_LOOP=m CONFIG_BLK_DEV_LOOP_MIN_COUNT=0 CONFIG_BLK_DEV_MD=y CONFIG_BLK_DEV_NBD=m +CONFIG_BLK_DEV_NULL_BLK_FAULT_INJECTION=y CONFIG_BLK_DEV_NULL_BLK=m CONFIG_BLK_DEV_NVME=m # CONFIG_BLK_DEV_NVME_SCSI is not set @@ -445,6 +449,7 @@ CONFIG_BOOT_PRINTK_DELAY=y CONFIG_BOUNCE=y CONFIG_BPF_JIT_ALWAYS_ON=y CONFIG_BPF_JIT=y +CONFIG_BPF_KPROBE_OVERRIDE=y CONFIG_BPF_STREAM_PARSER=y CONFIG_BPF_SYSCALL=y CONFIG_BPQETHER=m @@ -500,7 +505,7 @@ CONFIG_BT_HCIBPA10X=m CONFIG_BT_HCIBT3C=m CONFIG_BT_HCIBTSDIO=m CONFIG_BT_HCIBTUART=m -CONFIG_BT_HCIBTUSB_AUTOSUSPEND=y +# CONFIG_BT_HCIBTUSB_AUTOSUSPEND is not set CONFIG_BT_HCIBTUSB_BCM=y CONFIG_BT_HCIBTUSB=m CONFIG_BT_HCIBTUSB_RTL=y @@ -663,6 +668,7 @@ CONFIG_CGROUPS=y # CONFIG_CHASH_STATS is not set CONFIG_CHECKPOINT_RESTORE=y CONFIG_CHECK_STACK=y +CONFIG_CHELSIO_IPSEC_INLINE=y CONFIG_CHELSIO_T1_1G=y CONFIG_CHELSIO_T1=m CONFIG_CHELSIO_T3=m @@ -689,6 +695,7 @@ CONFIG_CIFS_NFSD_EXPORT=y CONFIG_CIFS_POSIX=y CONFIG_CIFS_SMB2=y # CONFIG_CIFS_SMB311 is not set +# CONFIG_CIFS_SMB_DIRECT is not set # CONFIG_CIFS_STATS2 is not set CONFIG_CIFS_STATS=y CONFIG_CIFS_UPCALL=y @@ -1024,6 +1031,7 @@ CONFIG_DM_SNAPSHOT=y CONFIG_DM_SWITCH=m CONFIG_DM_THIN_PROVISIONING=m CONFIG_DM_UEVENT=y +CONFIG_DM_UNSTRIPED=m CONFIG_DM_VERITY_FEC=y CONFIG_DM_VERITY=m CONFIG_DM_ZERO=y @@ -1046,7 +1054,7 @@ CONFIG_DRM_AMD_DC=y CONFIG_DRM_AMDGPU_CIK=y # CONFIG_DRM_AMDGPU_GART_DEBUGFS is not set CONFIG_DRM_AMDGPU=m -# CONFIG_DRM_AMDGPU_SI is not set +CONFIG_DRM_AMDGPU_SI=y CONFIG_DRM_AMDGPU_USERPTR=y CONFIG_DRM_AMD_POWERPLAY=y CONFIG_DRM_ANALOGIX_ANX78XX=m @@ -1063,8 +1071,8 @@ CONFIG_DRM_FBDEV_EMULATION=y CONFIG_DRM_FBDEV_OVERALLOC=100 CONFIG_DRM_HISI_HIBMC=m CONFIG_DRM_I2C_ADV7511_AUDIO=y -# CONFIG_DRM_I2C_ADV7511_CEC is not set -# CONFIG_DRM_I2C_ADV7511 is not set +CONFIG_DRM_I2C_ADV7511_CEC=y +CONFIG_DRM_I2C_ADV7511=m CONFIG_DRM_I2C_ADV7533=y CONFIG_DRM_I2C_CH7006=m CONFIG_DRM_I2C_NXP_TDA998X=m @@ -1080,6 +1088,7 @@ CONFIG_DRM_MGAG200=m CONFIG_DRM_NOUVEAU_BACKLIGHT=y CONFIG_DRM_NOUVEAU=m # CONFIG_DRM_NXP_PTN3460 is not set +# CONFIG_DRM_PANEL_ILITEK_IL9322 is not set # CONFIG_DRM_PANEL_INNOLUX_P079ZCA is not set # CONFIG_DRM_PANEL is not set # CONFIG_DRM_PANEL_JDI_LT070ME05000 is not set @@ -1152,6 +1161,7 @@ CONFIG_DVB_FIREDTV=m CONFIG_DVB_HOPPER=m CONFIG_DVB_MANTIS=m CONFIG_DVB_MAX_ADAPTERS=8 +# CONFIG_DVB_MMAP is not set CONFIG_DVB_MN88472=m CONFIG_DVB_MN88473=m CONFIG_DVB_NETUP_UNIDVB=m @@ -1165,6 +1175,7 @@ CONFIG_DVB_PT1=m CONFIG_DVB_SMIPCIE=m CONFIG_DVB_TTUSB_BUDGET=m CONFIG_DVB_TTUSB_DEC=m +# CONFIG_DVB_ULE_DEBUG is not set CONFIG_DVB_USB_A800=m CONFIG_DVB_USB_AF9005=m CONFIG_DVB_USB_AF9005_REMOTE=m @@ -1261,6 +1272,8 @@ CONFIG_ETHERNET=y # CONFIG_EXOFS_DEBUG is not set # CONFIG_EXOFS_FS is not set # CONFIG_EXPERT is not set +CONFIG_EXPOLINE_MEDIUM=y +CONFIG_EXPOLINE=y CONFIG_EXPORTFS=y # CONFIG_EXT2_FS is not set # CONFIG_EXT3_FS is not set @@ -1290,6 +1303,7 @@ CONFIG_F2FS_FS_SECURITY=y CONFIG_F2FS_FS_XATTR=y # CONFIG_F2FS_IO_TRACE is not set CONFIG_F2FS_STAT_FS=y +CONFIG_FAIL_FUNCTION=y # CONFIG_FAIL_FUTEX is not set CONFIG_FAIL_IO_TIMEOUT=y CONFIG_FAIL_MAKE_REQUEST=y @@ -1379,6 +1393,7 @@ CONFIG_FCOE_FNIC=m # CONFIG_FDDI is not set # CONFIG_FEALNX is not set CONFIG_FHANDLE=y +# CONFIG_FIND_BIT_BENCHMARK is not set # CONFIG_FIREWIRE is not set CONFIG_FIREWIRE_NET=m # CONFIG_FIREWIRE_NOSY is not set @@ -1498,6 +1513,7 @@ CONFIG_GPIO_EXAR=m # CONFIG_GPIO_PCA953X is not set # CONFIG_GPIO_PCF857X is not set # CONFIG_GPIO_PCH is not set +# CONFIG_GPIO_PCIE_IDIO_24 is not set CONFIG_GPIO_PCI_IDIO_16=m # CONFIG_GPIO_PISOSR is not set # CONFIG_GPIO_RDC321X is not set @@ -1524,6 +1540,7 @@ CONFIG_HAMACHI=m CONFIG_HAMRADIO=y CONFIG_HANGCHECK_TIMER=m CONFIG_HAPPYMEAL=m +CONFIG_HARDENED_USERCOPY_FALLBACK=y CONFIG_HARDENED_USERCOPY=y CONFIG_HD44780=m # CONFIG_HDC100X is not set @@ -1569,6 +1586,7 @@ CONFIG_HID_HOLTEK=m CONFIG_HID_ICADE=m # CONFIG_HID is not set CONFIG_HID_ITE=m +CONFIG_HID_JABRA=m CONFIG_HID_KENSINGTON=m CONFIG_HID_KEYTOUCH=m CONFIG_HID_KYE=m @@ -1707,7 +1725,7 @@ CONFIG_HWLAT_TRACER=y CONFIG_HWPOISON_INJECT=m CONFIG_HW_RANDOM_S390=m CONFIG_HW_RANDOM_TIMERIOMEM=m -CONFIG_HW_RANDOM_TPM=m +CONFIG_HW_RANDOM_TPM=y CONFIG_HW_RANDOM_VIRTIO=m CONFIG_HW_RANDOM=y CONFIG_HWSPINLOCK=y @@ -1816,6 +1834,7 @@ CONFIG_IGB_HWMON=y CONFIG_IGB=m CONFIG_IGBVF=m CONFIG_IIO_BUFFER_CB=m +CONFIG_IIO_BUFFER_HW_CONSUMER=m CONFIG_IIO_BUFFER=y CONFIG_IIO_CONFIGFS=m CONFIG_IIO_CONSUMERS_PER_TRIGGER=2 @@ -1988,6 +2007,7 @@ CONFIG_IP6_NF_MATCH_MH=m CONFIG_IP6_NF_MATCH_OPTS=m CONFIG_IP6_NF_MATCH_RPFILTER=m CONFIG_IP6_NF_MATCH_RT=m +CONFIG_IP6_NF_MATCH_SRH=m CONFIG_IP6_NF_NAT=m CONFIG_IP6_NF_RAW=m CONFIG_IP6_NF_SECURITY=m @@ -2117,7 +2137,6 @@ CONFIG_IPVTAP=m # CONFIG_IPW2200_DEBUG is not set # CONFIG_IPW2200 is not set CONFIG_IPWIRELESS=m -# CONFIG_IPX_INTERN is not set # CONFIG_IPX is not set # CONFIG_IRDA is not set CONFIG_IR_ENE=m @@ -2275,6 +2294,7 @@ CONFIG_KDB_KEYBOARD=y CONFIG_KERNEL_GZIP=y # CONFIG_KERNEL_LZMA is not set # CONFIG_KERNEL_LZO is not set +CONFIG_KERNEL_NOBP=y # CONFIG_KEXEC_FILE is not set CONFIG_KEXEC=y # CONFIG_KEYBOARD_ADC is not set @@ -2374,6 +2394,7 @@ CONFIG_LEDS_IS31FL32XX=m CONFIG_LEDS_LM3530=m # CONFIG_LEDS_LM355x is not set # CONFIG_LEDS_LM3642 is not set +CONFIG_LEDS_LM3692X=m # CONFIG_LEDS_LOCOMO is not set CONFIG_LEDS_LP3944=m CONFIG_LEDS_LP3952=m @@ -2406,6 +2427,7 @@ CONFIG_LEDS_TRIGGER_DISK=y CONFIG_LEDS_TRIGGER_GPIO=m CONFIG_LEDS_TRIGGER_HEARTBEAT=m CONFIG_LEDS_TRIGGER_MTD=y +CONFIG_LEDS_TRIGGER_NETDEV=m CONFIG_LEDS_TRIGGER_ONESHOT=m CONFIG_LEDS_TRIGGER_PANIC=y CONFIG_LEDS_TRIGGERS=y @@ -2438,11 +2460,11 @@ CONFIG_LIBFCOE=m CONFIG_LIQUIDIO_VF=m CONFIG_LIRC_BT829=m CONFIG_LIRC_IMON=m -CONFIG_LIRC=m CONFIG_LIRC_PARALLEL=m CONFIG_LIRC_SERIAL=m CONFIG_LIRC_SERIAL_TRANSMITTER=y CONFIG_LIRC_STAGING=y +CONFIG_LIRC=y CONFIG_LIRC_ZILOG=m # CONFIG_LIVEPATCH is not set # CONFIG_LKDTM is not set @@ -2592,6 +2614,7 @@ CONFIG_MEGARAID_MAILBOX=m CONFIG_MEGARAID_MM=m # CONFIG_MEGARAID_NEWGEN is not set # CONFIG_MEGARAID_SAS is not set +CONFIG_MELLANOX_PLATFORM=y CONFIG_MEMCG_SWAP_ENABLED=y CONFIG_MEMCG_SWAP=y CONFIG_MEMCG=y @@ -2670,8 +2693,6 @@ CONFIG_MESSAGE_LOGLEVEL_DEFAULT=4 # CONFIG_MFD_RK808 is not set # CONFIG_MFD_RN5T618 is not set # CONFIG_MFD_RT5033 is not set -# CONFIG_MFD_RTSX_PCI is not set -# CONFIG_MFD_RTSX_USB is not set # CONFIG_MFD_SEC_CORE is not set # CONFIG_MFD_SI476X_CORE is not set # CONFIG_MFD_SKY81452 is not set @@ -2719,6 +2740,8 @@ CONFIG_MII=m CONFIG_MINIX_FS=m CONFIG_MINIX_SUBPARTITION=y CONFIG_MISC_FILESYSTEMS=y +# CONFIG_MISC_RTSX_PCI is not set +# CONFIG_MISC_RTSX_USB is not set CONFIG_MISDN_AVMFRITZ=m CONFIG_MISDN_DSP=m # CONFIG_MISDN_HFCMULTI is not set @@ -2748,6 +2771,7 @@ CONFIG_MLX5_MPFS=y # CONFIG_MLX90614 is not set CONFIG_MLX_CPLD_PLATFORM=m CONFIG_MLXFW=m +CONFIG_MLXREG_HOTPLUG=m CONFIG_MLXSW_CORE_HWMON=y # CONFIG_MLXSW_CORE is not set CONFIG_MLXSW_CORE_THERMAL=y @@ -2768,6 +2792,7 @@ CONFIG_MMA7660=m CONFIG_MMC_BLOCK=m CONFIG_MMC_BLOCK_MINORS=8 CONFIG_MMC_CB710=m +CONFIG_MMC_CQHCI=m # CONFIG_MMC_DEBUG is not set # CONFIG_MMC is not set # CONFIG_MMC_MTK is not set @@ -2849,6 +2874,7 @@ CONFIG_MSDOS_PARTITION=y # CONFIG_MSM_GCC_8994 is not set CONFIG_MSPRO_BLOCK=m CONFIG_MT7601U=m +CONFIG_MT76x2E=m # CONFIG_MTD_ABSENT is not set # CONFIG_MTD_AR7_PARTS is not set # CONFIG_MTD_BLKDEVS is not set @@ -2982,9 +3008,11 @@ CONFIG_NET_CORE=y # CONFIG_NET_DCCPPROBE is not set CONFIG_NETDEVICES=y CONFIG_NET_DEVLINK=m +# CONFIG_NETDEVSIM is not set CONFIG_NET_DROP_MONITOR=y CONFIG_NET_DSA_BCM_SF2=m CONFIG_NET_DSA_HWMON=y +# CONFIG_NET_DSA_LEGACY is not set CONFIG_NET_DSA_LOOP=m CONFIG_NET_DSA=m CONFIG_NET_DSA_MT7530=m @@ -3168,6 +3196,7 @@ CONFIG_NET_VENDOR_AQUANTIA=y # CONFIG_NET_VENDOR_CAVIUM is not set # CONFIG_NET_VENDOR_CHELSIO is not set # CONFIG_NET_VENDOR_CISCO is not set +# CONFIG_NET_VENDOR_CORTINA is not set # CONFIG_NET_VENDOR_DEC is not set # CONFIG_NET_VENDOR_DLINK is not set # CONFIG_NET_VENDOR_EMULEX is not set @@ -3200,6 +3229,7 @@ CONFIG_NET_VENDOR_AQUANTIA=y # CONFIG_NET_VENDOR_SIS is not set # CONFIG_NET_VENDOR_SMSC is not set # CONFIG_NET_VENDOR_SNI is not set +# CONFIG_NET_VENDOR_SOCIONEXT is not set # CONFIG_NET_VENDOR_SOLARFLARE is not set # CONFIG_NET_VENDOR_STMICRO is not set # CONFIG_NET_VENDOR_SUN is not set @@ -3276,6 +3306,10 @@ CONFIG_NFC_TRF7970A=m CONFIG_NF_DUP_IPV4=m CONFIG_NF_DUP_IPV6=m CONFIG_NF_DUP_NETDEV=m +CONFIG_NF_FLOW_TABLE_INET=m +CONFIG_NF_FLOW_TABLE_IPV4=m +CONFIG_NF_FLOW_TABLE_IPV6=m +CONFIG_NF_FLOW_TABLE=m CONFIG_NF_LOG_ARP=m CONFIG_NF_LOG_BRIDGE=m CONFIG_NF_LOG_IPV4=m @@ -3337,6 +3371,7 @@ CONFIG_NFT_FIB_INET=m CONFIG_NFT_FIB_IPV4=m CONFIG_NFT_FIB_IPV6=m CONFIG_NFT_FIB_NETDEV=m +CONFIG_NFT_FLOW_OFFLOAD=m CONFIG_NFT_FWD_NETDEV=m CONFIG_NFT_HASH=m CONFIG_NFT_LIMIT=m @@ -3554,6 +3589,7 @@ CONFIG_PCIEAER_INJECT=m CONFIG_PCIEAER=y # CONFIG_PCIEASPM_DEBUG is not set CONFIG_PCIEASPM=y +CONFIG_PCIE_CADENCE_HOST=y CONFIG_PCIE_DPC=y # CONFIG_PCIE_DW_HOST_ECAM is not set # CONFIG_PCIE_DW_PLAT is not set @@ -3617,6 +3653,7 @@ CONFIG_PHYLINK=m # CONFIG_PI433 is not set CONFIG_PID_NS=y # CONFIG_PINCONF is not set +# CONFIG_PINCTRL_AXP209 is not set # CONFIG_PINCTRL_CANNONLAKE is not set CONFIG_PINCTRL_CEDARFORK=m # CONFIG_PINCTRL_IPQ8074 is not set @@ -3786,6 +3823,7 @@ CONFIG_RADIO_ZOLTRIX=m CONFIG_RAID_ATTRS=m # CONFIG_RANDOM32_SELFTEST is not set CONFIG_RAS_CEC=y +# CONFIG_RAVE_SP_CORE is not set CONFIG_RAW_DRIVER=y # CONFIG_RBTREE_TEST is not set CONFIG_RC_ATI_REMOTE=m @@ -3844,7 +3882,6 @@ CONFIG_REMOTEPROC=m CONFIG_RENESAS_PHY=m # CONFIG_RESET_ATTACK_MITIGATION is not set # CONFIG_RESET_CONTROLLER is not set -# CONFIG_RESET_HSDK_V1 is not set # CONFIG_RESET_TI_SYSCON is not set # CONFIG_RFD77402 is not set # CONFIG_RFD_FTL is not set @@ -4019,6 +4056,7 @@ CONFIG_RTLLIB=m # CONFIG_RTLWIFI_DEBUG is not set CONFIG_RTLWIFI=m # CONFIG_RTS5208 is not set +CONFIG_RUNTIME_TESTING_MENU=y CONFIG_S2IO=m CONFIG_S390_CCW_IOMMU=y CONFIG_S390_GUEST_OLD_TRANSPORT=y @@ -4038,7 +4076,7 @@ CONFIG_SATA_AHCI=y # CONFIG_SATA_DWC is not set # CONFIG_SATA_HIGHBANK is not set CONFIG_SATA_INIC162X=m -CONFIG_SATA_MOBILE_LPM_POLICY=3 +CONFIG_SATA_MOBILE_LPM_POLICY=0 CONFIG_SATA_MV=m CONFIG_SATA_NV=m CONFIG_SATA_PMP=y @@ -4187,6 +4225,7 @@ CONFIG_SCTP_COOKIE_HMAC_SHA1=y # CONFIG_SCTP_DEFAULT_COOKIE_HMAC_MD5 is not set # CONFIG_SCTP_DEFAULT_COOKIE_HMAC_NONE is not set CONFIG_SCTP_DEFAULT_COOKIE_HMAC_SHA1=y +# CONFIG_SD_ADC_MODULATOR is not set CONFIG_SDIO_UART=m CONFIG_SECCOMP=y CONFIG_SECONDARY_TRUSTED_KEYRING=y @@ -4361,6 +4400,7 @@ CONFIG_SENSORS_VT1211=m CONFIG_SENSORS_VT8231=m CONFIG_SENSORS_W83627EHF=m CONFIG_SENSORS_W83627HF=m +CONFIG_SENSORS_W83773G=m CONFIG_SENSORS_W83781D=m CONFIG_SENSORS_W83791D=m CONFIG_SENSORS_W83792D=m @@ -4445,6 +4485,7 @@ CONFIG_SHARED_KERNEL=y # CONFIG_SIGMA is not set CONFIG_SIGNED_PE_FILE_VERIFICATION=y # CONFIG_SIMPLE_PM_BUS is not set +# CONFIG_SIOX is not set CONFIG_SIS190=m CONFIG_SIS900=m # CONFIG_SKFP is not set @@ -4457,6 +4498,7 @@ CONFIG_SLAB_FREELIST_HARDENED=y CONFIG_SLAB_FREELIST_RANDOM=y CONFIG_SLAB_MERGE_DEFAULT=y # CONFIG_SLICOSS is not set +# CONFIG_SLIMBUS is not set CONFIG_SLIP_COMPRESSED=y # CONFIG_SLIP is not set # CONFIG_SLIP_MODE_SLIP6 is not set @@ -4674,6 +4716,7 @@ CONFIG_SND_SOC_HDMI_CODEC=m # CONFIG_SND_SOC_IMX_ES8328 is not set # CONFIG_SND_SOC_INNO_RK3036 is not set CONFIG_SND_SOC=m +CONFIG_SND_SOC_MAX98373=m # CONFIG_SND_SOC_MAX98504 is not set # CONFIG_SND_SOC_MAX9860 is not set CONFIG_SND_SOC_MAX98927=m @@ -4686,6 +4729,8 @@ CONFIG_SND_SOC_NAU8824=m # CONFIG_SND_SOC_PCM179X_I2C is not set # CONFIG_SND_SOC_PCM179X is not set # CONFIG_SND_SOC_PCM179X_SPI is not set +CONFIG_SND_SOC_PCM186X_I2C=m +CONFIG_SND_SOC_PCM186X_SPI=m # CONFIG_SND_SOC_PCM3168A_I2C is not set # CONFIG_SND_SOC_PCM3168A_SPI is not set # CONFIG_SND_SOC_PCM512x_I2C is not set @@ -4705,13 +4750,17 @@ CONFIG_SND_SOC_SPDIF=m # CONFIG_SND_SOC_TAS5086 is not set # CONFIG_SND_SOC_TAS571X is not set # CONFIG_SND_SOC_TAS5720 is not set +CONFIG_SND_SOC_TAS6424=m # 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_TLV320AIC32X4_I2C=m +CONFIG_SND_SOC_TLV320AIC32X4_SPI=m # CONFIG_SND_SOC_TLV320AIC3X is not set # CONFIG_SND_SOC_TPA6130A2 is not set # CONFIG_SND_SOC_TS3A227E is not set +CONFIG_SND_SOC_TSCS42XX=m # CONFIG_SND_SOC_WM8510 is not set # CONFIG_SND_SOC_WM8523 is not set CONFIG_SND_SOC_WM8524=m @@ -4772,6 +4821,9 @@ CONFIG_SONY_FF=y # CONFIG_SONYPI is not set # CONFIG_SOUND is not set CONFIG_SOUND_OSS_CORE_PRECLAIM=y +CONFIG_SOUNDWIRE_BUS=m +CONFIG_SOUNDWIRE_CADENCE=m +CONFIG_SOUNDWIRE=y CONFIG_SPARSE_RCU_POINTER=y # CONFIG_SPEAKUP is not set # CONFIG_SPI_ALTERA is not set @@ -4843,6 +4895,9 @@ CONFIG_STRICT_DEVMEM=y # CONFIG_STRING_SELFTEST is not set CONFIG_STRIP_ASM_SYMS=y # CONFIG_STRIP is not set +CONFIG_ST_UVIS25_I2C=m +CONFIG_ST_UVIS25=m +CONFIG_ST_UVIS25_SPI=m CONFIG_SUNDANCE=m # CONFIG_SUNDANCE_MMIO is not set CONFIG_SUNGEM=m @@ -4992,7 +5047,6 @@ CONFIG_TIFM_7XX1=m CONFIG_TIGON3_HWMON=y CONFIG_TIGON3=m # CONFIG_TIMB_DMA is not set -# CONFIG_TIMER_STATS is not set CONFIG_TIPC=m # CONFIG_TIPC_MEDIA_IB is not set CONFIG_TIPC_MEDIA_UDP=y @@ -5154,6 +5208,7 @@ CONFIG_UIO_SERCOS3=m CONFIG_ULI526X=m # CONFIG_ULTRIX_PARTITION is not set # CONFIG_UNISYSSPAR is not set +# CONFIG_UNISYS_VISORBUS is not set CONFIG_UNIX98_PTYS=y CONFIG_UNIX_DIAG=m CONFIG_UNIXWARE_DISKLABEL=y @@ -5176,7 +5231,6 @@ 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_F_UAC1_LEGACY is not set CONFIG_USB_CXACRU=m # CONFIG_USB_CYPRESS_CY7C63 is not set @@ -5462,6 +5516,7 @@ CONFIG_USB_WDM=m # CONFIG_USB_WUSB_CBAF_DEBUG is not set CONFIG_USB_WUSB_CBAF=m CONFIG_USB_WUSB=m +CONFIG_USB_XHCI_DBGCAP=y CONFIG_USB_XHCI_HCD=y # CONFIG_USB_XHCI_PLATFORM is not set CONFIG_USB_XUSBATM=m @@ -5607,6 +5662,7 @@ CONFIG_VIRTIO_BLK=m # CONFIG_VIRTIO_BLK_SCSI is not set CONFIG_VIRTIO_CONSOLE=y CONFIG_VIRTIO_INPUT=m +CONFIG_VIRTIO_MENU=y # CONFIG_VIRTIO_MMIO_CMDLINE_DEVICES is not set CONFIG_VIRTIO_MMIO=m CONFIG_VIRTIO_NET=m @@ -5746,6 +5802,7 @@ CONFIG_XFS_QUOTA=y # CONFIG_XFS_WARN is not set # CONFIG_XILINX_DMA is not set CONFIG_XILINX_GMII2RGMII=m +CONFIG_XILINX_VCU=m # CONFIG_XILINX_WATCHDOG is not set # CONFIG_XILLYBUS is not set # CONFIG_XILLYBUS_OF is not set @@ -5770,6 +5827,7 @@ CONFIG_ZFCP=m CONFIG_ZISOFS=y CONFIG_ZLIB_DEFLATE=y CONFIG_ZLIB_INFLATE=y +CONFIG_ZOPT2201=m # CONFIG_ZPA2326 is not set CONFIG_ZRAM=m # CONFIG_ZRAM_WRITEBACK is not set diff --git a/kernel-s390x.config b/kernel-s390x.config index 1f7a53fa7..d9d1d616b 100644 --- a/kernel-s390x.config +++ b/kernel-s390x.config @@ -44,6 +44,7 @@ CONFIG_ACPI_ALS=m # CONFIG_ACPI_DEBUG is not set # CONFIG_ACPI_NFIT is not set CONFIG_ACPI_PCI_SLOT=y +CONFIG_ACPI_SPCR_TABLE=y # CONFIG_ACQUIRE_WDT is not set # CONFIG_AD2S1200 is not set # CONFIG_AD2S1210 is not set @@ -195,6 +196,7 @@ CONFIG_ATH10K_DEBUGFS=y CONFIG_ATH10K=m CONFIG_ATH10K_PCI=m CONFIG_ATH10K_SDIO=m +# CONFIG_ATH10K_SPECTRAL is not set # CONFIG_ATH10K_TRACING is not set CONFIG_ATH10K_USB=m CONFIG_ATH5K_DEBUG=y @@ -208,6 +210,7 @@ CONFIG_ATH6KL_USB=m CONFIG_ATH9K_AHB=y CONFIG_ATH9K_BTCOEX_SUPPORT=y # CONFIG_ATH9K_CHANNEL_CONTEXT is not set +# CONFIG_ATH9K_COMMON_SPECTRAL is not set CONFIG_ATH9K_DEBUGFS=y # CONFIG_ATH9K_DEBUG is not set # CONFIG_ATH9K_DYNACK is not set @@ -389,6 +392,7 @@ CONFIG_BLK_DEV_LOOP=m CONFIG_BLK_DEV_LOOP_MIN_COUNT=0 CONFIG_BLK_DEV_MD=y CONFIG_BLK_DEV_NBD=m +# CONFIG_BLK_DEV_NULL_BLK_FAULT_INJECTION is not set CONFIG_BLK_DEV_NULL_BLK=m CONFIG_BLK_DEV_NVME=m # CONFIG_BLK_DEV_NVME_SCSI is not set @@ -444,6 +448,7 @@ CONFIG_BOOT_PRINTK_DELAY=y CONFIG_BOUNCE=y CONFIG_BPF_JIT_ALWAYS_ON=y CONFIG_BPF_JIT=y +# CONFIG_BPF_KPROBE_OVERRIDE is not set CONFIG_BPF_STREAM_PARSER=y CONFIG_BPF_SYSCALL=y CONFIG_BPQETHER=m @@ -499,7 +504,7 @@ CONFIG_BT_HCIBPA10X=m CONFIG_BT_HCIBT3C=m CONFIG_BT_HCIBTSDIO=m CONFIG_BT_HCIBTUART=m -CONFIG_BT_HCIBTUSB_AUTOSUSPEND=y +# CONFIG_BT_HCIBTUSB_AUTOSUSPEND is not set CONFIG_BT_HCIBTUSB_BCM=y CONFIG_BT_HCIBTUSB=m CONFIG_BT_HCIBTUSB_RTL=y @@ -662,6 +667,7 @@ CONFIG_CGROUPS=y # CONFIG_CHASH_STATS is not set CONFIG_CHECKPOINT_RESTORE=y CONFIG_CHECK_STACK=y +CONFIG_CHELSIO_IPSEC_INLINE=y CONFIG_CHELSIO_T1_1G=y CONFIG_CHELSIO_T1=m CONFIG_CHELSIO_T3=m @@ -688,6 +694,7 @@ CONFIG_CIFS_NFSD_EXPORT=y CONFIG_CIFS_POSIX=y CONFIG_CIFS_SMB2=y # CONFIG_CIFS_SMB311 is not set +# CONFIG_CIFS_SMB_DIRECT is not set # CONFIG_CIFS_STATS2 is not set CONFIG_CIFS_STATS=y CONFIG_CIFS_UPCALL=y @@ -1013,6 +1020,7 @@ CONFIG_DM_SNAPSHOT=y CONFIG_DM_SWITCH=m CONFIG_DM_THIN_PROVISIONING=m CONFIG_DM_UEVENT=y +CONFIG_DM_UNSTRIPED=m CONFIG_DM_VERITY_FEC=y CONFIG_DM_VERITY=m CONFIG_DM_ZERO=y @@ -1035,7 +1043,7 @@ CONFIG_DRM_AMD_DC=y CONFIG_DRM_AMDGPU_CIK=y # CONFIG_DRM_AMDGPU_GART_DEBUGFS is not set CONFIG_DRM_AMDGPU=m -# CONFIG_DRM_AMDGPU_SI is not set +CONFIG_DRM_AMDGPU_SI=y CONFIG_DRM_AMDGPU_USERPTR=y CONFIG_DRM_AMD_POWERPLAY=y CONFIG_DRM_ANALOGIX_ANX78XX=m @@ -1052,8 +1060,8 @@ CONFIG_DRM_FBDEV_EMULATION=y CONFIG_DRM_FBDEV_OVERALLOC=100 CONFIG_DRM_HISI_HIBMC=m CONFIG_DRM_I2C_ADV7511_AUDIO=y -# CONFIG_DRM_I2C_ADV7511_CEC is not set -# CONFIG_DRM_I2C_ADV7511 is not set +CONFIG_DRM_I2C_ADV7511_CEC=y +CONFIG_DRM_I2C_ADV7511=m CONFIG_DRM_I2C_ADV7533=y CONFIG_DRM_I2C_CH7006=m CONFIG_DRM_I2C_NXP_TDA998X=m @@ -1069,6 +1077,7 @@ CONFIG_DRM_MGAG200=m CONFIG_DRM_NOUVEAU_BACKLIGHT=y CONFIG_DRM_NOUVEAU=m # CONFIG_DRM_NXP_PTN3460 is not set +# CONFIG_DRM_PANEL_ILITEK_IL9322 is not set # CONFIG_DRM_PANEL_INNOLUX_P079ZCA is not set # CONFIG_DRM_PANEL is not set # CONFIG_DRM_PANEL_JDI_LT070ME05000 is not set @@ -1141,6 +1150,7 @@ CONFIG_DVB_FIREDTV=m CONFIG_DVB_HOPPER=m CONFIG_DVB_MANTIS=m CONFIG_DVB_MAX_ADAPTERS=8 +# CONFIG_DVB_MMAP is not set CONFIG_DVB_MN88472=m CONFIG_DVB_MN88473=m CONFIG_DVB_NETUP_UNIDVB=m @@ -1154,6 +1164,7 @@ CONFIG_DVB_PT1=m CONFIG_DVB_SMIPCIE=m CONFIG_DVB_TTUSB_BUDGET=m CONFIG_DVB_TTUSB_DEC=m +# CONFIG_DVB_ULE_DEBUG is not set CONFIG_DVB_USB_A800=m CONFIG_DVB_USB_AF9005=m CONFIG_DVB_USB_AF9005_REMOTE=m @@ -1250,6 +1261,8 @@ CONFIG_ETHERNET=y # CONFIG_EXOFS_DEBUG is not set # CONFIG_EXOFS_FS is not set # CONFIG_EXPERT is not set +CONFIG_EXPOLINE_MEDIUM=y +CONFIG_EXPOLINE=y CONFIG_EXPORTFS=y # CONFIG_EXT2_FS is not set # CONFIG_EXT3_FS is not set @@ -1361,6 +1374,7 @@ CONFIG_FCOE_FNIC=m # CONFIG_FDDI is not set # CONFIG_FEALNX is not set CONFIG_FHANDLE=y +# CONFIG_FIND_BIT_BENCHMARK is not set # CONFIG_FIREWIRE is not set CONFIG_FIREWIRE_NET=m # CONFIG_FIREWIRE_NOSY is not set @@ -1480,6 +1494,7 @@ CONFIG_GPIO_EXAR=m # CONFIG_GPIO_PCA953X is not set # CONFIG_GPIO_PCF857X is not set # CONFIG_GPIO_PCH is not set +# CONFIG_GPIO_PCIE_IDIO_24 is not set CONFIG_GPIO_PCI_IDIO_16=m # CONFIG_GPIO_PISOSR is not set # CONFIG_GPIO_RDC321X is not set @@ -1506,6 +1521,7 @@ CONFIG_HAMACHI=m CONFIG_HAMRADIO=y CONFIG_HANGCHECK_TIMER=m CONFIG_HAPPYMEAL=m +CONFIG_HARDENED_USERCOPY_FALLBACK=y CONFIG_HARDENED_USERCOPY=y CONFIG_HD44780=m # CONFIG_HDC100X is not set @@ -1551,6 +1567,7 @@ CONFIG_HID_HOLTEK=m CONFIG_HID_ICADE=m # CONFIG_HID is not set CONFIG_HID_ITE=m +CONFIG_HID_JABRA=m CONFIG_HID_KENSINGTON=m CONFIG_HID_KEYTOUCH=m CONFIG_HID_KYE=m @@ -1689,7 +1706,7 @@ CONFIG_HWLAT_TRACER=y CONFIG_HWPOISON_INJECT=m CONFIG_HW_RANDOM_S390=m CONFIG_HW_RANDOM_TIMERIOMEM=m -CONFIG_HW_RANDOM_TPM=m +CONFIG_HW_RANDOM_TPM=y CONFIG_HW_RANDOM_VIRTIO=m CONFIG_HW_RANDOM=y CONFIG_HWSPINLOCK=y @@ -1798,6 +1815,7 @@ CONFIG_IGB_HWMON=y CONFIG_IGB=m CONFIG_IGBVF=m CONFIG_IIO_BUFFER_CB=m +CONFIG_IIO_BUFFER_HW_CONSUMER=m CONFIG_IIO_BUFFER=y CONFIG_IIO_CONFIGFS=m CONFIG_IIO_CONSUMERS_PER_TRIGGER=2 @@ -1970,6 +1988,7 @@ CONFIG_IP6_NF_MATCH_MH=m CONFIG_IP6_NF_MATCH_OPTS=m CONFIG_IP6_NF_MATCH_RPFILTER=m CONFIG_IP6_NF_MATCH_RT=m +CONFIG_IP6_NF_MATCH_SRH=m CONFIG_IP6_NF_NAT=m CONFIG_IP6_NF_RAW=m CONFIG_IP6_NF_SECURITY=m @@ -2099,7 +2118,6 @@ CONFIG_IPVTAP=m # CONFIG_IPW2200_DEBUG is not set # CONFIG_IPW2200 is not set CONFIG_IPWIRELESS=m -# CONFIG_IPX_INTERN is not set # CONFIG_IPX is not set # CONFIG_IRDA is not set CONFIG_IR_ENE=m @@ -2255,6 +2273,7 @@ CONFIG_KDB_CONTINUE_CATASTROPHIC=0 CONFIG_KERNEL_GZIP=y # CONFIG_KERNEL_LZMA is not set # CONFIG_KERNEL_LZO is not set +CONFIG_KERNEL_NOBP=y # CONFIG_KEXEC_FILE is not set CONFIG_KEXEC=y # CONFIG_KEYBOARD_ADC is not set @@ -2354,6 +2373,7 @@ CONFIG_LEDS_IS31FL32XX=m CONFIG_LEDS_LM3530=m # CONFIG_LEDS_LM355x is not set # CONFIG_LEDS_LM3642 is not set +CONFIG_LEDS_LM3692X=m # CONFIG_LEDS_LOCOMO is not set CONFIG_LEDS_LP3944=m CONFIG_LEDS_LP3952=m @@ -2386,6 +2406,7 @@ CONFIG_LEDS_TRIGGER_DISK=y CONFIG_LEDS_TRIGGER_GPIO=m CONFIG_LEDS_TRIGGER_HEARTBEAT=m CONFIG_LEDS_TRIGGER_MTD=y +CONFIG_LEDS_TRIGGER_NETDEV=m CONFIG_LEDS_TRIGGER_ONESHOT=m CONFIG_LEDS_TRIGGER_PANIC=y CONFIG_LEDS_TRIGGERS=y @@ -2418,11 +2439,11 @@ CONFIG_LIBFCOE=m CONFIG_LIQUIDIO_VF=m CONFIG_LIRC_BT829=m CONFIG_LIRC_IMON=m -CONFIG_LIRC=m CONFIG_LIRC_PARALLEL=m CONFIG_LIRC_SERIAL=m CONFIG_LIRC_SERIAL_TRANSMITTER=y CONFIG_LIRC_STAGING=y +CONFIG_LIRC=y CONFIG_LIRC_ZILOG=m # CONFIG_LIVEPATCH is not set # CONFIG_LKDTM is not set @@ -2571,6 +2592,7 @@ CONFIG_MEGARAID_MAILBOX=m CONFIG_MEGARAID_MM=m # CONFIG_MEGARAID_NEWGEN is not set # CONFIG_MEGARAID_SAS is not set +CONFIG_MELLANOX_PLATFORM=y CONFIG_MEMCG_SWAP_ENABLED=y CONFIG_MEMCG_SWAP=y CONFIG_MEMCG=y @@ -2649,8 +2671,6 @@ CONFIG_MESSAGE_LOGLEVEL_DEFAULT=4 # CONFIG_MFD_RK808 is not set # CONFIG_MFD_RN5T618 is not set # CONFIG_MFD_RT5033 is not set -# CONFIG_MFD_RTSX_PCI is not set -# CONFIG_MFD_RTSX_USB is not set # CONFIG_MFD_SEC_CORE is not set # CONFIG_MFD_SI476X_CORE is not set # CONFIG_MFD_SKY81452 is not set @@ -2698,6 +2718,8 @@ CONFIG_MII=m CONFIG_MINIX_FS=m CONFIG_MINIX_SUBPARTITION=y CONFIG_MISC_FILESYSTEMS=y +# CONFIG_MISC_RTSX_PCI is not set +# CONFIG_MISC_RTSX_USB is not set CONFIG_MISDN_AVMFRITZ=m CONFIG_MISDN_DSP=m # CONFIG_MISDN_HFCMULTI is not set @@ -2727,6 +2749,7 @@ CONFIG_MLX5_MPFS=y # CONFIG_MLX90614 is not set CONFIG_MLX_CPLD_PLATFORM=m CONFIG_MLXFW=m +CONFIG_MLXREG_HOTPLUG=m CONFIG_MLXSW_CORE_HWMON=y # CONFIG_MLXSW_CORE is not set CONFIG_MLXSW_CORE_THERMAL=y @@ -2747,6 +2770,7 @@ CONFIG_MMA7660=m CONFIG_MMC_BLOCK=m CONFIG_MMC_BLOCK_MINORS=8 CONFIG_MMC_CB710=m +CONFIG_MMC_CQHCI=m # CONFIG_MMC_DEBUG is not set # CONFIG_MMC is not set # CONFIG_MMC_MTK is not set @@ -2827,6 +2851,7 @@ CONFIG_MSDOS_PARTITION=y # CONFIG_MSM_GCC_8994 is not set CONFIG_MSPRO_BLOCK=m CONFIG_MT7601U=m +CONFIG_MT76x2E=m # CONFIG_MTD_ABSENT is not set # CONFIG_MTD_AR7_PARTS is not set # CONFIG_MTD_BLKDEVS is not set @@ -2960,9 +2985,11 @@ CONFIG_NET_CORE=y # CONFIG_NET_DCCPPROBE is not set CONFIG_NETDEVICES=y CONFIG_NET_DEVLINK=m +# CONFIG_NETDEVSIM is not set CONFIG_NET_DROP_MONITOR=y CONFIG_NET_DSA_BCM_SF2=m CONFIG_NET_DSA_HWMON=y +# CONFIG_NET_DSA_LEGACY is not set CONFIG_NET_DSA_LOOP=m CONFIG_NET_DSA=m CONFIG_NET_DSA_MT7530=m @@ -3146,6 +3173,7 @@ CONFIG_NET_VENDOR_AQUANTIA=y # CONFIG_NET_VENDOR_CAVIUM is not set # CONFIG_NET_VENDOR_CHELSIO is not set # CONFIG_NET_VENDOR_CISCO is not set +# CONFIG_NET_VENDOR_CORTINA is not set # CONFIG_NET_VENDOR_DEC is not set # CONFIG_NET_VENDOR_DLINK is not set # CONFIG_NET_VENDOR_EMULEX is not set @@ -3178,6 +3206,7 @@ CONFIG_NET_VENDOR_AQUANTIA=y # CONFIG_NET_VENDOR_SIS is not set # CONFIG_NET_VENDOR_SMSC is not set # CONFIG_NET_VENDOR_SNI is not set +# CONFIG_NET_VENDOR_SOCIONEXT is not set # CONFIG_NET_VENDOR_SOLARFLARE is not set # CONFIG_NET_VENDOR_STMICRO is not set # CONFIG_NET_VENDOR_SUN is not set @@ -3254,6 +3283,10 @@ CONFIG_NFC_TRF7970A=m CONFIG_NF_DUP_IPV4=m CONFIG_NF_DUP_IPV6=m CONFIG_NF_DUP_NETDEV=m +CONFIG_NF_FLOW_TABLE_INET=m +CONFIG_NF_FLOW_TABLE_IPV4=m +CONFIG_NF_FLOW_TABLE_IPV6=m +CONFIG_NF_FLOW_TABLE=m CONFIG_NF_LOG_ARP=m CONFIG_NF_LOG_BRIDGE=m CONFIG_NF_LOG_IPV4=m @@ -3315,6 +3348,7 @@ CONFIG_NFT_FIB_INET=m CONFIG_NFT_FIB_IPV4=m CONFIG_NFT_FIB_IPV6=m CONFIG_NFT_FIB_NETDEV=m +CONFIG_NFT_FLOW_OFFLOAD=m CONFIG_NFT_FWD_NETDEV=m CONFIG_NFT_HASH=m CONFIG_NFT_LIMIT=m @@ -3532,6 +3566,7 @@ CONFIG_PCIEAER_INJECT=m CONFIG_PCIEAER=y # CONFIG_PCIEASPM_DEBUG is not set CONFIG_PCIEASPM=y +CONFIG_PCIE_CADENCE_HOST=y CONFIG_PCIE_DPC=y # CONFIG_PCIE_DW_HOST_ECAM is not set # CONFIG_PCIE_DW_PLAT is not set @@ -3595,6 +3630,7 @@ CONFIG_PHYLINK=m # CONFIG_PI433 is not set CONFIG_PID_NS=y # CONFIG_PINCONF is not set +# CONFIG_PINCTRL_AXP209 is not set # CONFIG_PINCTRL_CANNONLAKE is not set CONFIG_PINCTRL_CEDARFORK=m # CONFIG_PINCTRL_IPQ8074 is not set @@ -3763,6 +3799,7 @@ CONFIG_RADIO_ZOLTRIX=m CONFIG_RAID_ATTRS=m # CONFIG_RANDOM32_SELFTEST is not set CONFIG_RAS_CEC=y +# CONFIG_RAVE_SP_CORE is not set CONFIG_RAW_DRIVER=y # CONFIG_RBTREE_TEST is not set CONFIG_RC_ATI_REMOTE=m @@ -3821,7 +3858,6 @@ CONFIG_REMOTEPROC=m CONFIG_RENESAS_PHY=m # CONFIG_RESET_ATTACK_MITIGATION is not set # CONFIG_RESET_CONTROLLER is not set -# CONFIG_RESET_HSDK_V1 is not set # CONFIG_RESET_TI_SYSCON is not set # CONFIG_RFD77402 is not set # CONFIG_RFD_FTL is not set @@ -3996,6 +4032,7 @@ CONFIG_RTLLIB=m # CONFIG_RTLWIFI_DEBUG is not set CONFIG_RTLWIFI=m # CONFIG_RTS5208 is not set +CONFIG_RUNTIME_TESTING_MENU=y CONFIG_S2IO=m CONFIG_S390_CCW_IOMMU=y CONFIG_S390_GUEST_OLD_TRANSPORT=y @@ -4015,7 +4052,7 @@ CONFIG_SATA_AHCI=y # CONFIG_SATA_DWC is not set # CONFIG_SATA_HIGHBANK is not set CONFIG_SATA_INIC162X=m -CONFIG_SATA_MOBILE_LPM_POLICY=3 +CONFIG_SATA_MOBILE_LPM_POLICY=0 CONFIG_SATA_MV=m CONFIG_SATA_NV=m CONFIG_SATA_PMP=y @@ -4164,6 +4201,7 @@ CONFIG_SCTP_COOKIE_HMAC_SHA1=y # CONFIG_SCTP_DEFAULT_COOKIE_HMAC_MD5 is not set # CONFIG_SCTP_DEFAULT_COOKIE_HMAC_NONE is not set CONFIG_SCTP_DEFAULT_COOKIE_HMAC_SHA1=y +# CONFIG_SD_ADC_MODULATOR is not set CONFIG_SDIO_UART=m CONFIG_SECCOMP=y CONFIG_SECONDARY_TRUSTED_KEYRING=y @@ -4338,6 +4376,7 @@ CONFIG_SENSORS_VT1211=m CONFIG_SENSORS_VT8231=m CONFIG_SENSORS_W83627EHF=m CONFIG_SENSORS_W83627HF=m +CONFIG_SENSORS_W83773G=m CONFIG_SENSORS_W83781D=m CONFIG_SENSORS_W83791D=m CONFIG_SENSORS_W83792D=m @@ -4422,6 +4461,7 @@ CONFIG_SHARED_KERNEL=y # CONFIG_SIGMA is not set CONFIG_SIGNED_PE_FILE_VERIFICATION=y # CONFIG_SIMPLE_PM_BUS is not set +# CONFIG_SIOX is not set CONFIG_SIS190=m CONFIG_SIS900=m # CONFIG_SKFP is not set @@ -4434,6 +4474,7 @@ CONFIG_SLAB_FREELIST_HARDENED=y CONFIG_SLAB_FREELIST_RANDOM=y CONFIG_SLAB_MERGE_DEFAULT=y # CONFIG_SLICOSS is not set +# CONFIG_SLIMBUS is not set CONFIG_SLIP_COMPRESSED=y # CONFIG_SLIP is not set # CONFIG_SLIP_MODE_SLIP6 is not set @@ -4650,6 +4691,7 @@ CONFIG_SND_SOC_HDMI_CODEC=m # CONFIG_SND_SOC_IMX_ES8328 is not set # CONFIG_SND_SOC_INNO_RK3036 is not set CONFIG_SND_SOC=m +CONFIG_SND_SOC_MAX98373=m # CONFIG_SND_SOC_MAX98504 is not set # CONFIG_SND_SOC_MAX9860 is not set CONFIG_SND_SOC_MAX98927=m @@ -4662,6 +4704,8 @@ CONFIG_SND_SOC_NAU8824=m # CONFIG_SND_SOC_PCM179X_I2C is not set # CONFIG_SND_SOC_PCM179X is not set # CONFIG_SND_SOC_PCM179X_SPI is not set +CONFIG_SND_SOC_PCM186X_I2C=m +CONFIG_SND_SOC_PCM186X_SPI=m # CONFIG_SND_SOC_PCM3168A_I2C is not set # CONFIG_SND_SOC_PCM3168A_SPI is not set # CONFIG_SND_SOC_PCM512x_I2C is not set @@ -4681,13 +4725,17 @@ CONFIG_SND_SOC_SPDIF=m # CONFIG_SND_SOC_TAS5086 is not set # CONFIG_SND_SOC_TAS571X is not set # CONFIG_SND_SOC_TAS5720 is not set +CONFIG_SND_SOC_TAS6424=m # 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_TLV320AIC32X4_I2C=m +CONFIG_SND_SOC_TLV320AIC32X4_SPI=m # CONFIG_SND_SOC_TLV320AIC3X is not set # CONFIG_SND_SOC_TPA6130A2 is not set # CONFIG_SND_SOC_TS3A227E is not set +CONFIG_SND_SOC_TSCS42XX=m # CONFIG_SND_SOC_WM8510 is not set # CONFIG_SND_SOC_WM8523 is not set CONFIG_SND_SOC_WM8524=m @@ -4748,6 +4796,9 @@ CONFIG_SONY_FF=y # CONFIG_SONYPI is not set # CONFIG_SOUND is not set CONFIG_SOUND_OSS_CORE_PRECLAIM=y +CONFIG_SOUNDWIRE_BUS=m +CONFIG_SOUNDWIRE_CADENCE=m +CONFIG_SOUNDWIRE=y CONFIG_SPARSE_RCU_POINTER=y # CONFIG_SPEAKUP is not set # CONFIG_SPI_ALTERA is not set @@ -4819,6 +4870,9 @@ CONFIG_STRICT_DEVMEM=y # CONFIG_STRING_SELFTEST is not set CONFIG_STRIP_ASM_SYMS=y # CONFIG_STRIP is not set +CONFIG_ST_UVIS25_I2C=m +CONFIG_ST_UVIS25=m +CONFIG_ST_UVIS25_SPI=m CONFIG_SUNDANCE=m # CONFIG_SUNDANCE_MMIO is not set CONFIG_SUNGEM=m @@ -4968,7 +5022,6 @@ CONFIG_TIFM_7XX1=m CONFIG_TIGON3_HWMON=y CONFIG_TIGON3=m # CONFIG_TIMB_DMA is not set -# CONFIG_TIMER_STATS is not set CONFIG_TIPC=m # CONFIG_TIPC_MEDIA_IB is not set CONFIG_TIPC_MEDIA_UDP=y @@ -5130,6 +5183,7 @@ CONFIG_UIO_SERCOS3=m CONFIG_ULI526X=m # CONFIG_ULTRIX_PARTITION is not set # CONFIG_UNISYSSPAR is not set +# CONFIG_UNISYS_VISORBUS is not set CONFIG_UNIX98_PTYS=y CONFIG_UNIX_DIAG=m CONFIG_UNIXWARE_DISKLABEL=y @@ -5152,7 +5206,6 @@ 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_F_UAC1_LEGACY is not set CONFIG_USB_CXACRU=m # CONFIG_USB_CYPRESS_CY7C63 is not set @@ -5438,6 +5491,7 @@ CONFIG_USB_WDM=m # CONFIG_USB_WUSB_CBAF_DEBUG is not set CONFIG_USB_WUSB_CBAF=m CONFIG_USB_WUSB=m +CONFIG_USB_XHCI_DBGCAP=y CONFIG_USB_XHCI_HCD=y # CONFIG_USB_XHCI_PLATFORM is not set CONFIG_USB_XUSBATM=m @@ -5583,6 +5637,7 @@ CONFIG_VIRTIO_BLK=m # CONFIG_VIRTIO_BLK_SCSI is not set CONFIG_VIRTIO_CONSOLE=y CONFIG_VIRTIO_INPUT=m +CONFIG_VIRTIO_MENU=y # CONFIG_VIRTIO_MMIO_CMDLINE_DEVICES is not set CONFIG_VIRTIO_MMIO=m CONFIG_VIRTIO_NET=m @@ -5722,6 +5777,7 @@ CONFIG_XFS_QUOTA=y # CONFIG_XFS_WARN is not set # CONFIG_XILINX_DMA is not set CONFIG_XILINX_GMII2RGMII=m +CONFIG_XILINX_VCU=m # CONFIG_XILINX_WATCHDOG is not set # CONFIG_XILLYBUS is not set # CONFIG_XILLYBUS_OF is not set @@ -5746,6 +5802,7 @@ CONFIG_ZFCP=m CONFIG_ZISOFS=y CONFIG_ZLIB_DEFLATE=y CONFIG_ZLIB_INFLATE=y +CONFIG_ZOPT2201=m # CONFIG_ZPA2326 is not set CONFIG_ZRAM=m # CONFIG_ZRAM_WRITEBACK is not set diff --git a/kernel-x86_64-debug.config b/kernel-x86_64-debug.config index a9ce3a5a6..5201167d4 100644 --- a/kernel-x86_64-debug.config +++ b/kernel-x86_64-debug.config @@ -40,6 +40,7 @@ CONFIG_ACCESSIBILITY=y CONFIG_ACENIC=m # CONFIG_ACENIC_OMIT_TIGON_I is not set CONFIG_ACERHDF=m +CONFIG_ACER_WIRELESS=m CONFIG_ACER_WMI=m # CONFIG_ACORN_PARTITION is not set CONFIG_ACPI_AC=y @@ -78,6 +79,7 @@ CONFIG_ACPI_PROCFS=y CONFIG_ACPI_REV_OVERRIDE_POSSIBLE=y CONFIG_ACPI_SBS=m CONFIG_ACPI_SLEEP=y +CONFIG_ACPI_SPCR_TABLE=y CONFIG_ACPI_TABLE_UPGRADE=y CONFIG_ACPI_THERMAL=y CONFIG_ACPI_TOSHIBA=m @@ -254,6 +256,7 @@ CONFIG_ATH10K_DEBUGFS=y CONFIG_ATH10K=m CONFIG_ATH10K_PCI=m CONFIG_ATH10K_SDIO=m +# CONFIG_ATH10K_SPECTRAL is not set # CONFIG_ATH10K_TRACING is not set CONFIG_ATH10K_USB=m CONFIG_ATH5K_DEBUG=y @@ -267,6 +270,7 @@ CONFIG_ATH6KL_USB=m CONFIG_ATH9K_AHB=y CONFIG_ATH9K_BTCOEX_SUPPORT=y # CONFIG_ATH9K_CHANNEL_CONTEXT is not set +# CONFIG_ATH9K_COMMON_SPECTRAL is not set CONFIG_ATH9K_DEBUGFS=y # CONFIG_ATH9K_DEBUG is not set # CONFIG_ATH9K_DYNACK is not set @@ -459,6 +463,7 @@ CONFIG_BLK_DEV_LOOP=m CONFIG_BLK_DEV_LOOP_MIN_COUNT=0 CONFIG_BLK_DEV_MD=y CONFIG_BLK_DEV_NBD=m +CONFIG_BLK_DEV_NULL_BLK_FAULT_INJECTION=y CONFIG_BLK_DEV_NULL_BLK=m CONFIG_BLK_DEV_NVME=m # CONFIG_BLK_DEV_NVME_SCSI is not set @@ -515,6 +520,7 @@ CONFIG_BOOT_PRINTK_DELAY=y CONFIG_BOUNCE=y CONFIG_BPF_JIT_ALWAYS_ON=y CONFIG_BPF_JIT=y +CONFIG_BPF_KPROBE_OVERRIDE=y CONFIG_BPF_STREAM_PARSER=y CONFIG_BPF_SYSCALL=y CONFIG_BPQETHER=m @@ -570,7 +576,7 @@ CONFIG_BT_HCIBPA10X=m CONFIG_BT_HCIBT3C=m CONFIG_BT_HCIBTSDIO=m CONFIG_BT_HCIBTUART=m -CONFIG_BT_HCIBTUSB_AUTOSUSPEND=y +# CONFIG_BT_HCIBTUSB_AUTOSUSPEND is not set CONFIG_BT_HCIBTUSB_BCM=y CONFIG_BT_HCIBTUSB=m CONFIG_BT_HCIBTUSB_RTL=y @@ -734,6 +740,7 @@ CONFIG_CHARGER_SMB347=m # CONFIG_CHASH_SELFTEST is not set # CONFIG_CHASH_STATS is not set CONFIG_CHECKPOINT_RESTORE=y +CONFIG_CHELSIO_IPSEC_INLINE=y CONFIG_CHELSIO_T1_1G=y CONFIG_CHELSIO_T1=m CONFIG_CHELSIO_T3=m @@ -762,6 +769,7 @@ CONFIG_CIFS_NFSD_EXPORT=y CONFIG_CIFS_POSIX=y CONFIG_CIFS_SMB2=y # CONFIG_CIFS_SMB311 is not set +# CONFIG_CIFS_SMB_DIRECT is not set # CONFIG_CIFS_STATS2 is not set CONFIG_CIFS_STATS=y CONFIG_CIFS_UPCALL=y @@ -904,6 +912,7 @@ CONFIG_CRYPTO_DEV_QAT_C62XVF=m CONFIG_CRYPTO_DEV_QAT_DH895xCC=m CONFIG_CRYPTO_DEV_QAT_DH895xCCVF=m # CONFIG_CRYPTO_DEV_SP_CCP is not set +CONFIG_CRYPTO_DEV_SP_PSP=y CONFIG_CRYPTO_DEV_VIRTIO=m CONFIG_CRYPTO_DH=y CONFIG_CRYPTO_DRBG_CTR=y @@ -1080,8 +1089,8 @@ CONFIG_DELL_LAPTOP=m CONFIG_DELL_RBTN=m # CONFIG_DELL_RBU is not set CONFIG_DELL_SMBIOS=m -CONFIG_DELL_SMBIOS_SMM=m -CONFIG_DELL_SMBIOS_WMI=m +CONFIG_DELL_SMBIOS_SMM=y +CONFIG_DELL_SMBIOS_WMI=y CONFIG_DELL_SMO8800=m CONFIG_DELL_WMI_AIO=m CONFIG_DELL_WMI_LED=m @@ -1148,6 +1157,7 @@ CONFIG_DM_SNAPSHOT=y CONFIG_DM_SWITCH=m CONFIG_DM_THIN_PROVISIONING=m CONFIG_DM_UEVENT=y +CONFIG_DM_UNSTRIPED=m CONFIG_DM_VERITY_FEC=y CONFIG_DM_VERITY=m CONFIG_DM_ZERO=y @@ -1172,7 +1182,7 @@ CONFIG_DRM_AMD_DC=y CONFIG_DRM_AMDGPU_CIK=y # CONFIG_DRM_AMDGPU_GART_DEBUGFS is not set CONFIG_DRM_AMDGPU=m -# CONFIG_DRM_AMDGPU_SI is not set +CONFIG_DRM_AMDGPU_SI=y CONFIG_DRM_AMDGPU_USERPTR=y CONFIG_DRM_AMD_POWERPLAY=y CONFIG_DRM_ANALOGIX_ANX78XX=m @@ -1192,8 +1202,8 @@ CONFIG_DRM_GMA500=m # CONFIG_DRM_GMA600 is not set CONFIG_DRM_HISI_HIBMC=m CONFIG_DRM_I2C_ADV7511_AUDIO=y -# CONFIG_DRM_I2C_ADV7511_CEC is not set -# CONFIG_DRM_I2C_ADV7511 is not set +CONFIG_DRM_I2C_ADV7511_CEC=y +CONFIG_DRM_I2C_ADV7511=m CONFIG_DRM_I2C_ADV7533=y CONFIG_DRM_I2C_CH7006=m CONFIG_DRM_I2C_NXP_TDA998X=m @@ -1218,6 +1228,7 @@ CONFIG_DRM_MGAG200=m CONFIG_DRM_NOUVEAU_BACKLIGHT=y CONFIG_DRM_NOUVEAU=m # CONFIG_DRM_NXP_PTN3460 is not set +# CONFIG_DRM_PANEL_ILITEK_IL9322 is not set # CONFIG_DRM_PANEL_INNOLUX_P079ZCA is not set # CONFIG_DRM_PANEL_JDI_LT070ME05000 is not set # CONFIG_DRM_PANEL_LG_LG4573 is not set @@ -1292,6 +1303,7 @@ CONFIG_DVB_FIREDTV=m CONFIG_DVB_HOPPER=m CONFIG_DVB_MANTIS=m CONFIG_DVB_MAX_ADAPTERS=8 +# CONFIG_DVB_MMAP is not set CONFIG_DVB_MN88472=m CONFIG_DVB_MN88473=m CONFIG_DVB_NETUP_UNIDVB=m @@ -1305,6 +1317,7 @@ CONFIG_DVB_PT1=m CONFIG_DVB_SMIPCIE=m CONFIG_DVB_TTUSB_BUDGET=m CONFIG_DVB_TTUSB_DEC=m +# CONFIG_DVB_ULE_DEBUG is not set CONFIG_DVB_USB_A800=m CONFIG_DVB_USB_AF9005=m CONFIG_DVB_USB_AF9005_REMOTE=m @@ -1472,6 +1485,7 @@ CONFIG_F2FS_FS_XATTR=y # CONFIG_F2FS_IO_TRACE is not set CONFIG_F2FS_STAT_FS=y CONFIG_F71808E_WDT=m +CONFIG_FAIL_FUNCTION=y # CONFIG_FAIL_FUTEX is not set CONFIG_FAIL_IO_TIMEOUT=y CONFIG_FAIL_MAKE_REQUEST=y @@ -1573,6 +1587,7 @@ CONFIG_FCOE=m # CONFIG_FDDI is not set CONFIG_FEALNX=m CONFIG_FHANDLE=y +# CONFIG_FIND_BIT_BENCHMARK is not set CONFIG_FIREWIRE=m CONFIG_FIREWIRE_NET=m CONFIG_FIREWIRE_NOSY=m @@ -1670,6 +1685,7 @@ CONFIG_GIGASET_M105=m # CONFIG_GOLDFISH is not set # CONFIG_GOOGLE_FIRMWARE is not set # CONFIG_GP2AP020A00F is not set +CONFIG_GPD_POCKET_FAN=m # CONFIG_GPIO_104_DIO_48E is not set # CONFIG_GPIO_104_IDI_48 is not set # CONFIG_GPIO_104_IDIO_16 is not set @@ -1708,6 +1724,7 @@ CONFIG_GPIOLIB=y # CONFIG_GPIO_PCA953X is not set # CONFIG_GPIO_PCF857X is not set # CONFIG_GPIO_PCH is not set +# CONFIG_GPIO_PCIE_IDIO_24 is not set CONFIG_GPIO_PCI_IDIO_16=m # CONFIG_GPIO_PISOSR is not set # CONFIG_GPIO_RDC321X is not set @@ -1737,6 +1754,7 @@ CONFIG_HAMACHI=m CONFIG_HAMRADIO=y CONFIG_HANGCHECK_TIMER=m CONFIG_HAPPYMEAL=m +CONFIG_HARDENED_USERCOPY_FALLBACK=y CONFIG_HARDENED_USERCOPY=y CONFIG_HARDLOCKUP_DETECTOR=y CONFIG_HAVE_MEMORY_PRESENT=y @@ -1787,6 +1805,7 @@ CONFIG_HID_HOLTEK=m CONFIG_HID_HYPERV_MOUSE=m CONFIG_HID_ICADE=m CONFIG_HID_ITE=m +CONFIG_HID_JABRA=m CONFIG_HID_KENSINGTON=m CONFIG_HID_KEYTOUCH=m CONFIG_HID_KYE=m @@ -1940,7 +1959,7 @@ CONFIG_HWPOISON_INJECT=m CONFIG_HW_RANDOM_AMD=m CONFIG_HW_RANDOM_INTEL=m CONFIG_HW_RANDOM_TIMERIOMEM=m -CONFIG_HW_RANDOM_TPM=m +CONFIG_HW_RANDOM_TPM=y CONFIG_HW_RANDOM_VIA=m CONFIG_HW_RANDOM_VIRTIO=m CONFIG_HW_RANDOM=y @@ -2073,6 +2092,7 @@ CONFIG_IGB_HWMON=y CONFIG_IGB=m CONFIG_IGBVF=m CONFIG_IIO_BUFFER_CB=m +CONFIG_IIO_BUFFER_HW_CONSUMER=m CONFIG_IIO_BUFFER=y CONFIG_IIO_CONFIGFS=m CONFIG_IIO_CONSUMERS_PER_TRIGGER=2 @@ -2227,6 +2247,7 @@ CONFIG_INT340X_THERMAL=m # CONFIG_INTEGRITY is not set # CONFIG_INTEL_ATOMISP is not set CONFIG_INTEL_BXT_PMIC_THERMAL=m +CONFIG_INTEL_CHTDC_TI_PWRBTN=m CONFIG_INTEL_CHT_INT33FE=m CONFIG_INTEL_HID_EVENT=m CONFIG_INTEL_IDLE=y @@ -2296,6 +2317,7 @@ CONFIG_IP6_NF_MATCH_MH=m CONFIG_IP6_NF_MATCH_OPTS=m CONFIG_IP6_NF_MATCH_RPFILTER=m CONFIG_IP6_NF_MATCH_RT=m +CONFIG_IP6_NF_MATCH_SRH=m CONFIG_IP6_NF_NAT=m CONFIG_IP6_NF_RAW=m CONFIG_IP6_NF_SECURITY=m @@ -2429,7 +2451,6 @@ CONFIG_IPW2200_PROMISCUOUS=y CONFIG_IPW2200_QOS=y CONFIG_IPW2200_RADIOTAP=y CONFIG_IPWIRELESS=m -# CONFIG_IPX_INTERN is not set # CONFIG_IPX is not set # CONFIG_IRDA is not set CONFIG_IR_ENE=m @@ -2533,6 +2554,7 @@ CONFIG_IXGBE_HWMON=y CONFIG_IXGBE=m CONFIG_IXGBEVF=m CONFIG_IXGB=m +# CONFIG_JAILHOUSE_GUEST is not set CONFIG_JBD2_DEBUG=y CONFIG_JBD2=y # CONFIG_JFFS2_FS is not set @@ -2592,7 +2614,8 @@ CONFIG_KERNEL_GZIP=y CONFIG_KEXEC_BZIMAGE_VERIFY_SIG=y CONFIG_KEXEC_FILE=y CONFIG_KEXEC_JUMP=y -CONFIG_KEXEC_VERIFY_SIG=y +CONFIG_KEXEC_SIG_FORCE=y +CONFIG_KEXEC_SIG=y CONFIG_KEXEC=y # CONFIG_KEYBOARD_ADC is not set # CONFIG_KEYBOARD_ADP5588 is not set @@ -2645,6 +2668,7 @@ CONFIG_KS0108_PORT=0x378 CONFIG_KSM=y CONFIG_KSZ884X_PCI=m CONFIG_KVM_AMD=m +CONFIG_KVM_AMD_SEV=y # CONFIG_KVM_DEBUG_FS is not set CONFIG_KVM_DEVICE_ASSIGNMENT=y CONFIG_KVM_GUEST=y @@ -2697,6 +2721,7 @@ CONFIG_LEDS_IS31FL32XX=m CONFIG_LEDS_LM3530=m # CONFIG_LEDS_LM355x is not set # CONFIG_LEDS_LM3642 is not set +CONFIG_LEDS_LM3692X=m # CONFIG_LEDS_LOCOMO is not set CONFIG_LEDS_LP3944=m CONFIG_LEDS_LP3952=m @@ -2729,6 +2754,7 @@ CONFIG_LEDS_TRIGGER_DISK=y CONFIG_LEDS_TRIGGER_GPIO=m CONFIG_LEDS_TRIGGER_HEARTBEAT=m CONFIG_LEDS_TRIGGER_MTD=y +CONFIG_LEDS_TRIGGER_NETDEV=m CONFIG_LEDS_TRIGGER_ONESHOT=m CONFIG_LEDS_TRIGGER_PANIC=y CONFIG_LEDS_TRIGGERS=y @@ -2763,11 +2789,11 @@ CONFIG_LIBNVDIMM=y CONFIG_LIQUIDIO_VF=m CONFIG_LIRC_BT829=m CONFIG_LIRC_IMON=m -CONFIG_LIRC=m CONFIG_LIRC_PARALLEL=m CONFIG_LIRC_SERIAL=m CONFIG_LIRC_SERIAL_TRANSMITTER=y CONFIG_LIRC_STAGING=y +CONFIG_LIRC=y CONFIG_LIRC_ZILOG=m # CONFIG_LIVEPATCH is not set # CONFIG_LKDTM is not set @@ -2915,6 +2941,7 @@ CONFIG_MEGARAID_MAILBOX=m CONFIG_MEGARAID_MM=m CONFIG_MEGARAID_NEWGEN=y CONFIG_MEGARAID_SAS=m +CONFIG_MELLANOX_PLATFORM=y CONFIG_MEMCG_SWAP_ENABLED=y CONFIG_MEMCG_SWAP=y CONFIG_MEMCG=y @@ -2996,8 +3023,6 @@ CONFIG_MFD_INTEL_LPSS_PCI=m # CONFIG_MFD_RK808 is not set # CONFIG_MFD_RN5T618 is not set # CONFIG_MFD_RT5033 is not set -CONFIG_MFD_RTSX_PCI=m -CONFIG_MFD_RTSX_USB=m # CONFIG_MFD_SEC_CORE is not set # CONFIG_MFD_SI476X_CORE is not set # CONFIG_MFD_SKY81452 is not set @@ -3049,6 +3074,8 @@ CONFIG_MII=m CONFIG_MINIX_FS=m CONFIG_MINIX_SUBPARTITION=y CONFIG_MISC_FILESYSTEMS=y +CONFIG_MISC_RTSX_PCI=m +CONFIG_MISC_RTSX_USB=m CONFIG_MISDN_AVMFRITZ=m CONFIG_MISDN_DSP=m CONFIG_MISDN_HFCMULTI=m @@ -3080,6 +3107,7 @@ CONFIG_MLX5_MPFS=y CONFIG_MLX_CPLD_PLATFORM=m CONFIG_MLXFW=m CONFIG_MLX_PLATFORM=m +CONFIG_MLXREG_HOTPLUG=m CONFIG_MLXSW_CORE_HWMON=y CONFIG_MLXSW_CORE=m CONFIG_MLXSW_CORE_THERMAL=y @@ -3100,6 +3128,7 @@ CONFIG_MMA7660=m CONFIG_MMC_BLOCK=m CONFIG_MMC_BLOCK_MINORS=8 CONFIG_MMC_CB710=m +CONFIG_MMC_CQHCI=m # CONFIG_MMC_DEBUG is not set CONFIG_MMC=m # CONFIG_MMC_MTK is not set @@ -3185,6 +3214,7 @@ CONFIG_MSI_WMI=m # CONFIG_MSM_GCC_8994 is not set CONFIG_MSPRO_BLOCK=m CONFIG_MT7601U=m +CONFIG_MT76x2E=m # CONFIG_MTD_ABSENT is not set # CONFIG_MTD_AR7_PARTS is not set CONFIG_MTD_BLKDEVS=m @@ -3326,9 +3356,11 @@ CONFIG_NET_CORE=y # CONFIG_NET_DCCPPROBE is not set CONFIG_NETDEVICES=y CONFIG_NET_DEVLINK=m +# CONFIG_NETDEVSIM is not set CONFIG_NET_DROP_MONITOR=y CONFIG_NET_DSA_BCM_SF2=m CONFIG_NET_DSA_HWMON=y +# CONFIG_NET_DSA_LEGACY is not set CONFIG_NET_DSA_LOOP=m CONFIG_NET_DSA=m CONFIG_NET_DSA_MT7530=m @@ -3512,6 +3544,7 @@ CONFIG_NET_VENDOR_BROCADE=y # CONFIG_NET_VENDOR_CAVIUM is not set CONFIG_NET_VENDOR_CHELSIO=y CONFIG_NET_VENDOR_CISCO=y +# CONFIG_NET_VENDOR_CORTINA is not set CONFIG_NET_VENDOR_DEC=y CONFIG_NET_VENDOR_DLINK=y CONFIG_NET_VENDOR_EMULEX=y @@ -3544,6 +3577,7 @@ CONFIG_NET_VENDOR_SILAN=y CONFIG_NET_VENDOR_SIS=y CONFIG_NET_VENDOR_SMSC=y # CONFIG_NET_VENDOR_SNI is not set +# CONFIG_NET_VENDOR_SOCIONEXT is not set CONFIG_NET_VENDOR_SOLARFLARE=y CONFIG_NET_VENDOR_STMICRO=y CONFIG_NET_VENDOR_SUN=y @@ -3623,6 +3657,10 @@ CONFIG_NFC_TRF7970A=m CONFIG_NF_DUP_IPV4=m CONFIG_NF_DUP_IPV6=m CONFIG_NF_DUP_NETDEV=m +CONFIG_NF_FLOW_TABLE_INET=m +CONFIG_NF_FLOW_TABLE_IPV4=m +CONFIG_NF_FLOW_TABLE_IPV6=m +CONFIG_NF_FLOW_TABLE=m CONFIG_NF_LOG_ARP=m CONFIG_NF_LOG_BRIDGE=m CONFIG_NF_LOG_IPV4=m @@ -3684,6 +3722,7 @@ CONFIG_NFT_FIB_INET=m CONFIG_NFT_FIB_IPV4=m CONFIG_NFT_FIB_IPV6=m CONFIG_NFT_FIB_NETDEV=m +CONFIG_NFT_FLOW_OFFLOAD=m CONFIG_NFT_FWD_NETDEV=m CONFIG_NFT_HASH=m CONFIG_NFT_LIMIT=m @@ -3935,6 +3974,7 @@ CONFIG_PCIEAER_INJECT=m CONFIG_PCIEAER=y # CONFIG_PCIEASPM_DEBUG is not set CONFIG_PCIEASPM=y +CONFIG_PCIE_CADENCE_HOST=y CONFIG_PCIE_DPC=y # CONFIG_PCIE_DW_HOST_ECAM is not set # CONFIG_PCIE_DW_PLAT is not set @@ -4006,6 +4046,7 @@ CONFIG_PHYSICAL_START=0x1000000 CONFIG_PID_NS=y CONFIG_PINCONF=y # CONFIG_PINCTRL_AMD is not set +# CONFIG_PINCTRL_AXP209 is not set CONFIG_PINCTRL_BAYTRAIL=y CONFIG_PINCTRL_BROXTON=m # CONFIG_PINCTRL_CANNONLAKE is not set @@ -4191,6 +4232,7 @@ CONFIG_RANDOMIZE_BASE=y CONFIG_RANDOMIZE_MEMORY=y # CONFIG_RAPIDIO is not set CONFIG_RAS_CEC=y +# CONFIG_RAVE_SP_CORE is not set CONFIG_RAW_DRIVER=y # CONFIG_RBTREE_TEST is not set CONFIG_RC_ATI_REMOTE=m @@ -4282,7 +4324,6 @@ CONFIG_RELOCATABLE=y CONFIG_REMOTEPROC=m CONFIG_RENESAS_PHY=m # CONFIG_RESET_ATTACK_MITIGATION is not set -# CONFIG_RESET_HSDK_V1 is not set # CONFIG_RESET_TI_SYSCON is not set CONFIG_RETPOLINE=y # CONFIG_RFD77402 is not set @@ -4458,6 +4499,7 @@ CONFIG_RTLLIB=m # CONFIG_RTLWIFI_DEBUG is not set CONFIG_RTLWIFI=m # CONFIG_RTS5208 is not set +CONFIG_RUNTIME_TESTING_MENU=y CONFIG_S2IO=m # CONFIG_SAMPLES is not set CONFIG_SAMSUNG_LAPTOP=m @@ -4469,7 +4511,7 @@ CONFIG_SATA_AHCI=y # CONFIG_SATA_DWC is not set # CONFIG_SATA_HIGHBANK is not set CONFIG_SATA_INIC162X=m -CONFIG_SATA_MOBILE_LPM_POLICY=3 +CONFIG_SATA_MOBILE_LPM_POLICY=0 CONFIG_SATA_MV=m CONFIG_SATA_NV=m CONFIG_SATA_PMP=y @@ -4610,6 +4652,7 @@ CONFIG_SCTP_COOKIE_HMAC_SHA1=y # CONFIG_SCTP_DEFAULT_COOKIE_HMAC_MD5 is not set # CONFIG_SCTP_DEFAULT_COOKIE_HMAC_NONE is not set CONFIG_SCTP_DEFAULT_COOKIE_HMAC_SHA1=y +CONFIG_SD_ADC_MODULATOR=m CONFIG_SDIO_UART=m # CONFIG_SDMA_VERBOSITY is not set CONFIG_SECCOMP=y @@ -4801,6 +4844,7 @@ CONFIG_SENSORS_VT1211=m CONFIG_SENSORS_VT8231=m CONFIG_SENSORS_W83627EHF=m CONFIG_SENSORS_W83627HF=m +CONFIG_SENSORS_W83773G=m CONFIG_SENSORS_W83781D=m CONFIG_SENSORS_W83791D=m CONFIG_SENSORS_W83792D=m @@ -4894,6 +4938,7 @@ CONFIG_SH_ETH=m CONFIG_SIGNED_PE_FILE_VERIFICATION=y CONFIG_SILEAD_DMI=y # CONFIG_SIMPLE_PM_BUS is not set +# CONFIG_SIOX is not set CONFIG_SIS190=m CONFIG_SIS900=m # CONFIG_SKFP is not set @@ -4906,6 +4951,7 @@ CONFIG_SLAB_FREELIST_HARDENED=y CONFIG_SLAB_FREELIST_RANDOM=y CONFIG_SLAB_MERGE_DEFAULT=y # CONFIG_SLICOSS is not set +# CONFIG_SLIMBUS is not set CONFIG_SLIP_COMPRESSED=y CONFIG_SLIP=m # CONFIG_SLIP_MODE_SLIP6 is not set @@ -5009,7 +5055,7 @@ CONFIG_SND_HDA_INPUT_BEEP_MODE=0 CONFIG_SND_HDA_INPUT_BEEP=y CONFIG_SND_HDA_INTEL=m CONFIG_SND_HDA_PATCH_LOADER=y -CONFIG_SND_HDA_POWER_SAVE_DEFAULT=1 +CONFIG_SND_HDA_POWER_SAVE_DEFAULT=0 CONFIG_SND_HDA_POWER_SAVE=y CONFIG_SND_HDA_PREALLOC_SIZE=4096 CONFIG_SND_HDA_RECONFIG=y @@ -5149,8 +5195,9 @@ CONFIG_SND_SOC_INTEL_SKL_RT286_MACH=m CONFIG_SND_SOC_INTEL_SKYLAKE=m CONFIG_SND_SOC_INTEL_SST_ACPI=m CONFIG_SND_SOC_INTEL_SST=m -CONFIG_SND_SOC_INTEL_SST_TOPLEVEL=m +CONFIG_SND_SOC_INTEL_SST_TOPLEVEL=y CONFIG_SND_SOC=m +CONFIG_SND_SOC_MAX98373=m # CONFIG_SND_SOC_MAX98504 is not set # CONFIG_SND_SOC_MAX9860 is not set CONFIG_SND_SOC_MAX98927=m @@ -5163,6 +5210,8 @@ CONFIG_SND_SOC_NAU8824=m # CONFIG_SND_SOC_PCM179X_I2C is not set # CONFIG_SND_SOC_PCM179X is not set # CONFIG_SND_SOC_PCM179X_SPI is not set +CONFIG_SND_SOC_PCM186X_I2C=m +CONFIG_SND_SOC_PCM186X_SPI=m # CONFIG_SND_SOC_PCM3168A_I2C is not set # CONFIG_SND_SOC_PCM3168A_SPI is not set # CONFIG_SND_SOC_PCM512x_I2C is not set @@ -5182,13 +5231,17 @@ CONFIG_SND_SOC_SSM4567=m # CONFIG_SND_SOC_TAS5086 is not set # CONFIG_SND_SOC_TAS571X is not set # CONFIG_SND_SOC_TAS5720 is not set +CONFIG_SND_SOC_TAS6424=m # 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_TLV320AIC32X4_I2C=m +CONFIG_SND_SOC_TLV320AIC32X4_SPI=m # CONFIG_SND_SOC_TLV320AIC3X is not set # CONFIG_SND_SOC_TPA6130A2 is not set CONFIG_SND_SOC_TS3A227E=m +CONFIG_SND_SOC_TSCS42XX=m # CONFIG_SND_SOC_WM8510 is not set # CONFIG_SND_SOC_WM8523 is not set CONFIG_SND_SOC_WM8524=m @@ -5216,6 +5269,7 @@ CONFIG_SND_SOC_WM8524=m CONFIG_SND_SONICVIBES=m # CONFIG_SND_SPI is not set CONFIG_SND_SST_ATOM_HIFI2_PLATFORM=m +CONFIG_SND_SST_ATOM_HIFI2_PLATFORM_PCI=m # CONFIG_SND_SUPPORT_OLD_API is not set CONFIG_SND_TRIDENT=m CONFIG_SND_USB_6FIRE=m @@ -5253,6 +5307,10 @@ CONFIG_SONYPI_COMPAT=y # CONFIG_SONYPI is not set CONFIG_SOUND=m CONFIG_SOUND_OSS_CORE_PRECLAIM=y +CONFIG_SOUNDWIRE_BUS=m +CONFIG_SOUNDWIRE_CADENCE=m +CONFIG_SOUNDWIRE_INTEL=m +CONFIG_SOUNDWIRE=y CONFIG_SP5100_TCO=m CONFIG_SPARSE_IRQ=y CONFIG_SPARSEMEM_EXTREME=y @@ -5332,6 +5390,9 @@ CONFIG_STRICT_DEVMEM=y # CONFIG_STRING_SELFTEST is not set CONFIG_STRIP_ASM_SYMS=y # CONFIG_STRIP is not set +CONFIG_ST_UVIS25_I2C=m +CONFIG_ST_UVIS25=m +CONFIG_ST_UVIS25_SPI=m CONFIG_SUNDANCE=m # CONFIG_SUNDANCE_MMIO is not set CONFIG_SUNGEM=m @@ -5491,7 +5552,6 @@ CONFIG_TIFM_CORE=m CONFIG_TIGON3_HWMON=y CONFIG_TIGON3=m # CONFIG_TIMB_DMA is not set -# CONFIG_TIMER_STATS is not set CONFIG_TIPC=m # CONFIG_TIPC_MEDIA_IB is not set CONFIG_TIPC_MEDIA_UDP=y @@ -5654,6 +5714,7 @@ CONFIG_UIO_SERCOS3=m CONFIG_ULI526X=m # CONFIG_ULTRIX_PARTITION is not set # CONFIG_UNISYSSPAR is not set +# CONFIG_UNISYS_VISORBUS is not set CONFIG_UNIX98_PTYS=y CONFIG_UNIX_DIAG=m CONFIG_UNIXWARE_DISKLABEL=y @@ -5676,7 +5737,6 @@ 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_F_UAC1_LEGACY is not set CONFIG_USB_CXACRU=m # CONFIG_USB_CYPRESS_CY7C63 is not set @@ -5963,6 +6023,7 @@ CONFIG_USB_WDM=m # CONFIG_USB_WUSB_CBAF_DEBUG is not set CONFIG_USB_WUSB_CBAF=m CONFIG_USB_WUSB=m +CONFIG_USB_XHCI_DBGCAP=y CONFIG_USB_XHCI_HCD=y CONFIG_USB_XHCI_PLATFORM=m CONFIG_USB_XUSBATM=m @@ -5985,6 +6046,7 @@ CONFIG_UWB_WHCI=m CONFIG_V4L_MEM2MEM_DRIVERS=y # CONFIG_V4L_PLATFORM_DRIVERS is not set # CONFIG_V4L_TEST_DRIVERS is not set +# CONFIG_VBOXGUEST is not set # CONFIG_VCNL4000 is not set # CONFIG_VEML6070 is not set CONFIG_VETH=m @@ -6051,6 +6113,7 @@ CONFIG_VIDEO_GO7007_USB_S2250_BOARD=m CONFIG_VIDEO_HDPVR=m CONFIG_VIDEO_HEXIUM_GEMINI=m CONFIG_VIDEO_HEXIUM_ORION=m +CONFIG_VIDEO_IPU3_CIO2=m # CONFIG_VIDEO_IVTV_ALSA is not set # CONFIG_VIDEO_IVTV_DEPRECATED_IOCTLS is not set CONFIG_VIDEO_IVTV=m @@ -6106,12 +6169,13 @@ CONFIG_VIDEO_ZORAN_LML33R10=m CONFIG_VIDEO_ZORAN=m CONFIG_VIDEO_ZORAN_ZR36060=m # CONFIG_VIPERBOARD_ADC is not set -# CONFIG_VIRT_DRIVERS is not set +CONFIG_VIRT_DRIVERS=y CONFIG_VIRTIO_BALLOON=m CONFIG_VIRTIO_BLK=m # CONFIG_VIRTIO_BLK_SCSI is not set CONFIG_VIRTIO_CONSOLE=m CONFIG_VIRTIO_INPUT=m +CONFIG_VIRTIO_MENU=y # CONFIG_VIRTIO_MMIO_CMDLINE_DEVICES is not set CONFIG_VIRTIO_MMIO=m CONFIG_VIRTIO_NET=m @@ -6271,7 +6335,7 @@ CONFIG_X86_PAT=y CONFIG_X86_PCC_CPUFREQ=m CONFIG_X86_PKG_TEMP_THERMAL=m CONFIG_X86_PLATFORM_DEVICES=y -CONFIG_X86_PMEM_LEGACY=y +CONFIG_X86_PMEM_LEGACY=m CONFIG_X86_PM_TIMER=y CONFIG_X86_POWERNOW_K8=m CONFIG_X86_PTDUMP=y @@ -6334,6 +6398,7 @@ CONFIG_XFS_QUOTA=y # CONFIG_XFS_WARN is not set # CONFIG_XILINX_DMA is not set CONFIG_XILINX_GMII2RGMII=m +CONFIG_XILINX_VCU=m # CONFIG_XILINX_WATCHDOG is not set CONFIG_XILLYBUS=m # CONFIG_XILLYBUS_OF is not set @@ -6360,6 +6425,7 @@ CONFIG_ZLIB_DEFLATE=y CONFIG_ZLIB_INFLATE=y CONFIG_ZONE_DEVICE=y CONFIG_ZONE_DMA=y +CONFIG_ZOPT2201=m # CONFIG_ZPA2326 is not set CONFIG_ZRAM=m # CONFIG_ZRAM_WRITEBACK is not set diff --git a/kernel-x86_64.config b/kernel-x86_64.config index e35b4df4c..53ff69190 100644 --- a/kernel-x86_64.config +++ b/kernel-x86_64.config @@ -40,6 +40,7 @@ CONFIG_ACCESSIBILITY=y CONFIG_ACENIC=m # CONFIG_ACENIC_OMIT_TIGON_I is not set CONFIG_ACERHDF=m +CONFIG_ACER_WIRELESS=m CONFIG_ACER_WMI=m # CONFIG_ACORN_PARTITION is not set CONFIG_ACPI_AC=y @@ -78,6 +79,7 @@ CONFIG_ACPI_PROCFS=y CONFIG_ACPI_REV_OVERRIDE_POSSIBLE=y CONFIG_ACPI_SBS=m CONFIG_ACPI_SLEEP=y +CONFIG_ACPI_SPCR_TABLE=y CONFIG_ACPI_TABLE_UPGRADE=y CONFIG_ACPI_THERMAL=y CONFIG_ACPI_TOSHIBA=m @@ -253,6 +255,7 @@ CONFIG_ATH10K_DEBUGFS=y CONFIG_ATH10K=m CONFIG_ATH10K_PCI=m CONFIG_ATH10K_SDIO=m +# CONFIG_ATH10K_SPECTRAL is not set # CONFIG_ATH10K_TRACING is not set CONFIG_ATH10K_USB=m CONFIG_ATH5K_DEBUG=y @@ -266,6 +269,7 @@ CONFIG_ATH6KL_USB=m CONFIG_ATH9K_AHB=y CONFIG_ATH9K_BTCOEX_SUPPORT=y # CONFIG_ATH9K_CHANNEL_CONTEXT is not set +# CONFIG_ATH9K_COMMON_SPECTRAL is not set CONFIG_ATH9K_DEBUGFS=y # CONFIG_ATH9K_DEBUG is not set # CONFIG_ATH9K_DYNACK is not set @@ -458,6 +462,7 @@ CONFIG_BLK_DEV_LOOP=m CONFIG_BLK_DEV_LOOP_MIN_COUNT=0 CONFIG_BLK_DEV_MD=y CONFIG_BLK_DEV_NBD=m +# CONFIG_BLK_DEV_NULL_BLK_FAULT_INJECTION is not set CONFIG_BLK_DEV_NULL_BLK=m CONFIG_BLK_DEV_NVME=m # CONFIG_BLK_DEV_NVME_SCSI is not set @@ -514,6 +519,7 @@ CONFIG_BOOT_PRINTK_DELAY=y CONFIG_BOUNCE=y CONFIG_BPF_JIT_ALWAYS_ON=y CONFIG_BPF_JIT=y +# CONFIG_BPF_KPROBE_OVERRIDE is not set CONFIG_BPF_STREAM_PARSER=y CONFIG_BPF_SYSCALL=y CONFIG_BPQETHER=m @@ -569,7 +575,7 @@ CONFIG_BT_HCIBPA10X=m CONFIG_BT_HCIBT3C=m CONFIG_BT_HCIBTSDIO=m CONFIG_BT_HCIBTUART=m -CONFIG_BT_HCIBTUSB_AUTOSUSPEND=y +# CONFIG_BT_HCIBTUSB_AUTOSUSPEND is not set CONFIG_BT_HCIBTUSB_BCM=y CONFIG_BT_HCIBTUSB=m CONFIG_BT_HCIBTUSB_RTL=y @@ -733,6 +739,7 @@ CONFIG_CHARGER_SMB347=m # CONFIG_CHASH_SELFTEST is not set # CONFIG_CHASH_STATS is not set CONFIG_CHECKPOINT_RESTORE=y +CONFIG_CHELSIO_IPSEC_INLINE=y CONFIG_CHELSIO_T1_1G=y CONFIG_CHELSIO_T1=m CONFIG_CHELSIO_T3=m @@ -761,6 +768,7 @@ CONFIG_CIFS_NFSD_EXPORT=y CONFIG_CIFS_POSIX=y CONFIG_CIFS_SMB2=y # CONFIG_CIFS_SMB311 is not set +# CONFIG_CIFS_SMB_DIRECT is not set # CONFIG_CIFS_STATS2 is not set CONFIG_CIFS_STATS=y CONFIG_CIFS_UPCALL=y @@ -902,6 +910,7 @@ CONFIG_CRYPTO_DEV_QAT_C62XVF=m CONFIG_CRYPTO_DEV_QAT_DH895xCC=m CONFIG_CRYPTO_DEV_QAT_DH895xCCVF=m # CONFIG_CRYPTO_DEV_SP_CCP is not set +CONFIG_CRYPTO_DEV_SP_PSP=y CONFIG_CRYPTO_DEV_VIRTIO=m CONFIG_CRYPTO_DH=y CONFIG_CRYPTO_DRBG_CTR=y @@ -1070,8 +1079,8 @@ CONFIG_DELL_LAPTOP=m CONFIG_DELL_RBTN=m # CONFIG_DELL_RBU is not set CONFIG_DELL_SMBIOS=m -CONFIG_DELL_SMBIOS_SMM=m -CONFIG_DELL_SMBIOS_WMI=m +CONFIG_DELL_SMBIOS_SMM=y +CONFIG_DELL_SMBIOS_WMI=y CONFIG_DELL_SMO8800=m CONFIG_DELL_WMI_AIO=m CONFIG_DELL_WMI_LED=m @@ -1137,6 +1146,7 @@ CONFIG_DM_SNAPSHOT=y CONFIG_DM_SWITCH=m CONFIG_DM_THIN_PROVISIONING=m CONFIG_DM_UEVENT=y +CONFIG_DM_UNSTRIPED=m CONFIG_DM_VERITY_FEC=y CONFIG_DM_VERITY=m CONFIG_DM_ZERO=y @@ -1161,7 +1171,7 @@ CONFIG_DRM_AMD_DC=y CONFIG_DRM_AMDGPU_CIK=y # CONFIG_DRM_AMDGPU_GART_DEBUGFS is not set CONFIG_DRM_AMDGPU=m -# CONFIG_DRM_AMDGPU_SI is not set +CONFIG_DRM_AMDGPU_SI=y CONFIG_DRM_AMDGPU_USERPTR=y CONFIG_DRM_AMD_POWERPLAY=y CONFIG_DRM_ANALOGIX_ANX78XX=m @@ -1181,8 +1191,8 @@ CONFIG_DRM_GMA500=m # CONFIG_DRM_GMA600 is not set CONFIG_DRM_HISI_HIBMC=m CONFIG_DRM_I2C_ADV7511_AUDIO=y -# CONFIG_DRM_I2C_ADV7511_CEC is not set -# CONFIG_DRM_I2C_ADV7511 is not set +CONFIG_DRM_I2C_ADV7511_CEC=y +CONFIG_DRM_I2C_ADV7511=m CONFIG_DRM_I2C_ADV7533=y CONFIG_DRM_I2C_CH7006=m CONFIG_DRM_I2C_NXP_TDA998X=m @@ -1207,6 +1217,7 @@ CONFIG_DRM_MGAG200=m CONFIG_DRM_NOUVEAU_BACKLIGHT=y CONFIG_DRM_NOUVEAU=m # CONFIG_DRM_NXP_PTN3460 is not set +# CONFIG_DRM_PANEL_ILITEK_IL9322 is not set # CONFIG_DRM_PANEL_INNOLUX_P079ZCA is not set # CONFIG_DRM_PANEL_JDI_LT070ME05000 is not set # CONFIG_DRM_PANEL_LG_LG4573 is not set @@ -1281,6 +1292,7 @@ CONFIG_DVB_FIREDTV=m CONFIG_DVB_HOPPER=m CONFIG_DVB_MANTIS=m CONFIG_DVB_MAX_ADAPTERS=8 +# CONFIG_DVB_MMAP is not set CONFIG_DVB_MN88472=m CONFIG_DVB_MN88473=m CONFIG_DVB_NETUP_UNIDVB=m @@ -1294,6 +1306,7 @@ CONFIG_DVB_PT1=m CONFIG_DVB_SMIPCIE=m CONFIG_DVB_TTUSB_BUDGET=m CONFIG_DVB_TTUSB_DEC=m +# CONFIG_DVB_ULE_DEBUG is not set CONFIG_DVB_USB_A800=m CONFIG_DVB_USB_AF9005=m CONFIG_DVB_USB_AF9005_REMOTE=m @@ -1555,6 +1568,7 @@ CONFIG_FCOE=m # CONFIG_FDDI is not set CONFIG_FEALNX=m CONFIG_FHANDLE=y +# CONFIG_FIND_BIT_BENCHMARK is not set CONFIG_FIREWIRE=m CONFIG_FIREWIRE_NET=m CONFIG_FIREWIRE_NOSY=m @@ -1652,6 +1666,7 @@ CONFIG_GIGASET_M105=m # CONFIG_GOLDFISH is not set # CONFIG_GOOGLE_FIRMWARE is not set # CONFIG_GP2AP020A00F is not set +CONFIG_GPD_POCKET_FAN=m # CONFIG_GPIO_104_DIO_48E is not set # CONFIG_GPIO_104_IDI_48 is not set # CONFIG_GPIO_104_IDIO_16 is not set @@ -1690,6 +1705,7 @@ CONFIG_GPIOLIB=y # CONFIG_GPIO_PCA953X is not set # CONFIG_GPIO_PCF857X is not set # CONFIG_GPIO_PCH is not set +# CONFIG_GPIO_PCIE_IDIO_24 is not set CONFIG_GPIO_PCI_IDIO_16=m # CONFIG_GPIO_PISOSR is not set # CONFIG_GPIO_RDC321X is not set @@ -1719,6 +1735,7 @@ CONFIG_HAMACHI=m CONFIG_HAMRADIO=y CONFIG_HANGCHECK_TIMER=m CONFIG_HAPPYMEAL=m +CONFIG_HARDENED_USERCOPY_FALLBACK=y CONFIG_HARDENED_USERCOPY=y CONFIG_HARDLOCKUP_DETECTOR=y CONFIG_HAVE_MEMORY_PRESENT=y @@ -1769,6 +1786,7 @@ CONFIG_HID_HOLTEK=m CONFIG_HID_HYPERV_MOUSE=m CONFIG_HID_ICADE=m CONFIG_HID_ITE=m +CONFIG_HID_JABRA=m CONFIG_HID_KENSINGTON=m CONFIG_HID_KEYTOUCH=m CONFIG_HID_KYE=m @@ -1922,7 +1940,7 @@ CONFIG_HWPOISON_INJECT=m CONFIG_HW_RANDOM_AMD=m CONFIG_HW_RANDOM_INTEL=m CONFIG_HW_RANDOM_TIMERIOMEM=m -CONFIG_HW_RANDOM_TPM=m +CONFIG_HW_RANDOM_TPM=y CONFIG_HW_RANDOM_VIA=m CONFIG_HW_RANDOM_VIRTIO=m CONFIG_HW_RANDOM=y @@ -2055,6 +2073,7 @@ CONFIG_IGB_HWMON=y CONFIG_IGB=m CONFIG_IGBVF=m CONFIG_IIO_BUFFER_CB=m +CONFIG_IIO_BUFFER_HW_CONSUMER=m CONFIG_IIO_BUFFER=y CONFIG_IIO_CONFIGFS=m CONFIG_IIO_CONSUMERS_PER_TRIGGER=2 @@ -2209,6 +2228,7 @@ CONFIG_INT340X_THERMAL=m # CONFIG_INTEGRITY is not set # CONFIG_INTEL_ATOMISP is not set CONFIG_INTEL_BXT_PMIC_THERMAL=m +CONFIG_INTEL_CHTDC_TI_PWRBTN=m CONFIG_INTEL_CHT_INT33FE=m CONFIG_INTEL_HID_EVENT=m CONFIG_INTEL_IDLE=y @@ -2278,6 +2298,7 @@ CONFIG_IP6_NF_MATCH_MH=m CONFIG_IP6_NF_MATCH_OPTS=m CONFIG_IP6_NF_MATCH_RPFILTER=m CONFIG_IP6_NF_MATCH_RT=m +CONFIG_IP6_NF_MATCH_SRH=m CONFIG_IP6_NF_NAT=m CONFIG_IP6_NF_RAW=m CONFIG_IP6_NF_SECURITY=m @@ -2411,7 +2432,6 @@ CONFIG_IPW2200_PROMISCUOUS=y CONFIG_IPW2200_QOS=y CONFIG_IPW2200_RADIOTAP=y CONFIG_IPWIRELESS=m -# CONFIG_IPX_INTERN is not set # CONFIG_IPX is not set # CONFIG_IRDA is not set CONFIG_IR_ENE=m @@ -2515,6 +2535,7 @@ CONFIG_IXGBE_HWMON=y CONFIG_IXGBE=m CONFIG_IXGBEVF=m CONFIG_IXGB=m +# CONFIG_JAILHOUSE_GUEST is not set # CONFIG_JBD2_DEBUG is not set CONFIG_JBD2=y # CONFIG_JFFS2_FS is not set @@ -2572,7 +2593,8 @@ CONFIG_KERNEL_GZIP=y CONFIG_KEXEC_BZIMAGE_VERIFY_SIG=y CONFIG_KEXEC_FILE=y CONFIG_KEXEC_JUMP=y -CONFIG_KEXEC_VERIFY_SIG=y +CONFIG_KEXEC_SIG_FORCE=y +CONFIG_KEXEC_SIG=y CONFIG_KEXEC=y # CONFIG_KEYBOARD_ADC is not set # CONFIG_KEYBOARD_ADP5588 is not set @@ -2625,6 +2647,7 @@ CONFIG_KS0108_PORT=0x378 CONFIG_KSM=y CONFIG_KSZ884X_PCI=m CONFIG_KVM_AMD=m +CONFIG_KVM_AMD_SEV=y # CONFIG_KVM_DEBUG_FS is not set CONFIG_KVM_DEVICE_ASSIGNMENT=y CONFIG_KVM_GUEST=y @@ -2677,6 +2700,7 @@ CONFIG_LEDS_IS31FL32XX=m CONFIG_LEDS_LM3530=m # CONFIG_LEDS_LM355x is not set # CONFIG_LEDS_LM3642 is not set +CONFIG_LEDS_LM3692X=m # CONFIG_LEDS_LOCOMO is not set CONFIG_LEDS_LP3944=m CONFIG_LEDS_LP3952=m @@ -2709,6 +2733,7 @@ CONFIG_LEDS_TRIGGER_DISK=y CONFIG_LEDS_TRIGGER_GPIO=m CONFIG_LEDS_TRIGGER_HEARTBEAT=m CONFIG_LEDS_TRIGGER_MTD=y +CONFIG_LEDS_TRIGGER_NETDEV=m CONFIG_LEDS_TRIGGER_ONESHOT=m CONFIG_LEDS_TRIGGER_PANIC=y CONFIG_LEDS_TRIGGERS=y @@ -2743,11 +2768,11 @@ CONFIG_LIBNVDIMM=y CONFIG_LIQUIDIO_VF=m CONFIG_LIRC_BT829=m CONFIG_LIRC_IMON=m -CONFIG_LIRC=m CONFIG_LIRC_PARALLEL=m CONFIG_LIRC_SERIAL=m CONFIG_LIRC_SERIAL_TRANSMITTER=y CONFIG_LIRC_STAGING=y +CONFIG_LIRC=y CONFIG_LIRC_ZILOG=m # CONFIG_LIVEPATCH is not set # CONFIG_LKDTM is not set @@ -2895,6 +2920,7 @@ CONFIG_MEGARAID_MAILBOX=m CONFIG_MEGARAID_MM=m CONFIG_MEGARAID_NEWGEN=y CONFIG_MEGARAID_SAS=m +CONFIG_MELLANOX_PLATFORM=y CONFIG_MEMCG_SWAP_ENABLED=y CONFIG_MEMCG_SWAP=y CONFIG_MEMCG=y @@ -2976,8 +3002,6 @@ CONFIG_MFD_INTEL_LPSS_PCI=m # CONFIG_MFD_RK808 is not set # CONFIG_MFD_RN5T618 is not set # CONFIG_MFD_RT5033 is not set -CONFIG_MFD_RTSX_PCI=m -CONFIG_MFD_RTSX_USB=m # CONFIG_MFD_SEC_CORE is not set # CONFIG_MFD_SI476X_CORE is not set # CONFIG_MFD_SKY81452 is not set @@ -3029,6 +3053,8 @@ CONFIG_MII=m CONFIG_MINIX_FS=m CONFIG_MINIX_SUBPARTITION=y CONFIG_MISC_FILESYSTEMS=y +CONFIG_MISC_RTSX_PCI=m +CONFIG_MISC_RTSX_USB=m CONFIG_MISDN_AVMFRITZ=m CONFIG_MISDN_DSP=m CONFIG_MISDN_HFCMULTI=m @@ -3060,6 +3086,7 @@ CONFIG_MLX5_MPFS=y CONFIG_MLX_CPLD_PLATFORM=m CONFIG_MLXFW=m CONFIG_MLX_PLATFORM=m +CONFIG_MLXREG_HOTPLUG=m CONFIG_MLXSW_CORE_HWMON=y CONFIG_MLXSW_CORE=m CONFIG_MLXSW_CORE_THERMAL=y @@ -3080,6 +3107,7 @@ CONFIG_MMA7660=m CONFIG_MMC_BLOCK=m CONFIG_MMC_BLOCK_MINORS=8 CONFIG_MMC_CB710=m +CONFIG_MMC_CQHCI=m # CONFIG_MMC_DEBUG is not set CONFIG_MMC=m # CONFIG_MMC_MTK is not set @@ -3165,6 +3193,7 @@ CONFIG_MSI_WMI=m # CONFIG_MSM_GCC_8994 is not set CONFIG_MSPRO_BLOCK=m CONFIG_MT7601U=m +CONFIG_MT76x2E=m # CONFIG_MTD_ABSENT is not set # CONFIG_MTD_AR7_PARTS is not set CONFIG_MTD_BLKDEVS=m @@ -3306,9 +3335,11 @@ CONFIG_NET_CORE=y # CONFIG_NET_DCCPPROBE is not set CONFIG_NETDEVICES=y CONFIG_NET_DEVLINK=m +# CONFIG_NETDEVSIM is not set CONFIG_NET_DROP_MONITOR=y CONFIG_NET_DSA_BCM_SF2=m CONFIG_NET_DSA_HWMON=y +# CONFIG_NET_DSA_LEGACY is not set CONFIG_NET_DSA_LOOP=m CONFIG_NET_DSA=m CONFIG_NET_DSA_MT7530=m @@ -3492,6 +3523,7 @@ CONFIG_NET_VENDOR_BROCADE=y # CONFIG_NET_VENDOR_CAVIUM is not set CONFIG_NET_VENDOR_CHELSIO=y CONFIG_NET_VENDOR_CISCO=y +# CONFIG_NET_VENDOR_CORTINA is not set CONFIG_NET_VENDOR_DEC=y CONFIG_NET_VENDOR_DLINK=y CONFIG_NET_VENDOR_EMULEX=y @@ -3524,6 +3556,7 @@ CONFIG_NET_VENDOR_SILAN=y CONFIG_NET_VENDOR_SIS=y CONFIG_NET_VENDOR_SMSC=y # CONFIG_NET_VENDOR_SNI is not set +# CONFIG_NET_VENDOR_SOCIONEXT is not set CONFIG_NET_VENDOR_SOLARFLARE=y CONFIG_NET_VENDOR_STMICRO=y CONFIG_NET_VENDOR_SUN=y @@ -3603,6 +3636,10 @@ CONFIG_NFC_TRF7970A=m CONFIG_NF_DUP_IPV4=m CONFIG_NF_DUP_IPV6=m CONFIG_NF_DUP_NETDEV=m +CONFIG_NF_FLOW_TABLE_INET=m +CONFIG_NF_FLOW_TABLE_IPV4=m +CONFIG_NF_FLOW_TABLE_IPV6=m +CONFIG_NF_FLOW_TABLE=m CONFIG_NF_LOG_ARP=m CONFIG_NF_LOG_BRIDGE=m CONFIG_NF_LOG_IPV4=m @@ -3664,6 +3701,7 @@ CONFIG_NFT_FIB_INET=m CONFIG_NFT_FIB_IPV4=m CONFIG_NFT_FIB_IPV6=m CONFIG_NFT_FIB_NETDEV=m +CONFIG_NFT_FLOW_OFFLOAD=m CONFIG_NFT_FWD_NETDEV=m CONFIG_NFT_HASH=m CONFIG_NFT_LIMIT=m @@ -3915,6 +3953,7 @@ CONFIG_PCIEAER_INJECT=m CONFIG_PCIEAER=y # CONFIG_PCIEASPM_DEBUG is not set CONFIG_PCIEASPM=y +CONFIG_PCIE_CADENCE_HOST=y CONFIG_PCIE_DPC=y # CONFIG_PCIE_DW_HOST_ECAM is not set # CONFIG_PCIE_DW_PLAT is not set @@ -3986,6 +4025,7 @@ CONFIG_PHYSICAL_START=0x1000000 CONFIG_PID_NS=y CONFIG_PINCONF=y # CONFIG_PINCTRL_AMD is not set +# CONFIG_PINCTRL_AXP209 is not set CONFIG_PINCTRL_BAYTRAIL=y CONFIG_PINCTRL_BROXTON=m # CONFIG_PINCTRL_CANNONLAKE is not set @@ -4170,6 +4210,7 @@ CONFIG_RANDOMIZE_BASE=y CONFIG_RANDOMIZE_MEMORY=y # CONFIG_RAPIDIO is not set CONFIG_RAS_CEC=y +# CONFIG_RAVE_SP_CORE is not set CONFIG_RAW_DRIVER=y # CONFIG_RBTREE_TEST is not set CONFIG_RC_ATI_REMOTE=m @@ -4261,7 +4302,6 @@ CONFIG_RELOCATABLE=y CONFIG_REMOTEPROC=m CONFIG_RENESAS_PHY=m # CONFIG_RESET_ATTACK_MITIGATION is not set -# CONFIG_RESET_HSDK_V1 is not set # CONFIG_RESET_TI_SYSCON is not set CONFIG_RETPOLINE=y # CONFIG_RFD77402 is not set @@ -4437,6 +4477,7 @@ CONFIG_RTLLIB=m # CONFIG_RTLWIFI_DEBUG is not set CONFIG_RTLWIFI=m # CONFIG_RTS5208 is not set +CONFIG_RUNTIME_TESTING_MENU=y CONFIG_S2IO=m # CONFIG_SAMPLES is not set CONFIG_SAMSUNG_LAPTOP=m @@ -4448,7 +4489,7 @@ CONFIG_SATA_AHCI=y # CONFIG_SATA_DWC is not set # CONFIG_SATA_HIGHBANK is not set CONFIG_SATA_INIC162X=m -CONFIG_SATA_MOBILE_LPM_POLICY=3 +CONFIG_SATA_MOBILE_LPM_POLICY=0 CONFIG_SATA_MV=m CONFIG_SATA_NV=m CONFIG_SATA_PMP=y @@ -4589,6 +4630,7 @@ CONFIG_SCTP_COOKIE_HMAC_SHA1=y # CONFIG_SCTP_DEFAULT_COOKIE_HMAC_MD5 is not set # CONFIG_SCTP_DEFAULT_COOKIE_HMAC_NONE is not set CONFIG_SCTP_DEFAULT_COOKIE_HMAC_SHA1=y +CONFIG_SD_ADC_MODULATOR=m CONFIG_SDIO_UART=m # CONFIG_SDMA_VERBOSITY is not set CONFIG_SECCOMP=y @@ -4780,6 +4822,7 @@ CONFIG_SENSORS_VT1211=m CONFIG_SENSORS_VT8231=m CONFIG_SENSORS_W83627EHF=m CONFIG_SENSORS_W83627HF=m +CONFIG_SENSORS_W83773G=m CONFIG_SENSORS_W83781D=m CONFIG_SENSORS_W83791D=m CONFIG_SENSORS_W83792D=m @@ -4873,6 +4916,7 @@ CONFIG_SH_ETH=m CONFIG_SIGNED_PE_FILE_VERIFICATION=y CONFIG_SILEAD_DMI=y # CONFIG_SIMPLE_PM_BUS is not set +# CONFIG_SIOX is not set CONFIG_SIS190=m CONFIG_SIS900=m # CONFIG_SKFP is not set @@ -4885,6 +4929,7 @@ CONFIG_SLAB_FREELIST_HARDENED=y CONFIG_SLAB_FREELIST_RANDOM=y CONFIG_SLAB_MERGE_DEFAULT=y # CONFIG_SLICOSS is not set +# CONFIG_SLIMBUS is not set CONFIG_SLIP_COMPRESSED=y CONFIG_SLIP=m # CONFIG_SLIP_MODE_SLIP6 is not set @@ -4988,7 +5033,7 @@ CONFIG_SND_HDA_INPUT_BEEP_MODE=0 CONFIG_SND_HDA_INPUT_BEEP=y CONFIG_SND_HDA_INTEL=m CONFIG_SND_HDA_PATCH_LOADER=y -CONFIG_SND_HDA_POWER_SAVE_DEFAULT=1 +CONFIG_SND_HDA_POWER_SAVE_DEFAULT=0 CONFIG_SND_HDA_POWER_SAVE=y CONFIG_SND_HDA_PREALLOC_SIZE=4096 CONFIG_SND_HDA_RECONFIG=y @@ -5127,8 +5172,9 @@ CONFIG_SND_SOC_INTEL_SKL_RT286_MACH=m CONFIG_SND_SOC_INTEL_SKYLAKE=m CONFIG_SND_SOC_INTEL_SST_ACPI=m CONFIG_SND_SOC_INTEL_SST=m -CONFIG_SND_SOC_INTEL_SST_TOPLEVEL=m +CONFIG_SND_SOC_INTEL_SST_TOPLEVEL=y CONFIG_SND_SOC=m +CONFIG_SND_SOC_MAX98373=m # CONFIG_SND_SOC_MAX98504 is not set # CONFIG_SND_SOC_MAX9860 is not set CONFIG_SND_SOC_MAX98927=m @@ -5141,6 +5187,8 @@ CONFIG_SND_SOC_NAU8824=m # CONFIG_SND_SOC_PCM179X_I2C is not set # CONFIG_SND_SOC_PCM179X is not set # CONFIG_SND_SOC_PCM179X_SPI is not set +CONFIG_SND_SOC_PCM186X_I2C=m +CONFIG_SND_SOC_PCM186X_SPI=m # CONFIG_SND_SOC_PCM3168A_I2C is not set # CONFIG_SND_SOC_PCM3168A_SPI is not set # CONFIG_SND_SOC_PCM512x_I2C is not set @@ -5160,13 +5208,17 @@ CONFIG_SND_SOC_SSM4567=m # CONFIG_SND_SOC_TAS5086 is not set # CONFIG_SND_SOC_TAS571X is not set # CONFIG_SND_SOC_TAS5720 is not set +CONFIG_SND_SOC_TAS6424=m # 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_TLV320AIC32X4_I2C=m +CONFIG_SND_SOC_TLV320AIC32X4_SPI=m # CONFIG_SND_SOC_TLV320AIC3X is not set # CONFIG_SND_SOC_TPA6130A2 is not set CONFIG_SND_SOC_TS3A227E=m +CONFIG_SND_SOC_TSCS42XX=m # CONFIG_SND_SOC_WM8510 is not set # CONFIG_SND_SOC_WM8523 is not set CONFIG_SND_SOC_WM8524=m @@ -5194,6 +5246,7 @@ CONFIG_SND_SOC_WM8524=m CONFIG_SND_SONICVIBES=m # CONFIG_SND_SPI is not set CONFIG_SND_SST_ATOM_HIFI2_PLATFORM=m +CONFIG_SND_SST_ATOM_HIFI2_PLATFORM_PCI=m # CONFIG_SND_SUPPORT_OLD_API is not set CONFIG_SND_TRIDENT=m CONFIG_SND_USB_6FIRE=m @@ -5231,6 +5284,10 @@ CONFIG_SONYPI_COMPAT=y # CONFIG_SONYPI is not set CONFIG_SOUND=m CONFIG_SOUND_OSS_CORE_PRECLAIM=y +CONFIG_SOUNDWIRE_BUS=m +CONFIG_SOUNDWIRE_CADENCE=m +CONFIG_SOUNDWIRE_INTEL=m +CONFIG_SOUNDWIRE=y CONFIG_SP5100_TCO=m CONFIG_SPARSE_IRQ=y CONFIG_SPARSEMEM_EXTREME=y @@ -5310,6 +5367,9 @@ CONFIG_STRICT_DEVMEM=y # CONFIG_STRING_SELFTEST is not set CONFIG_STRIP_ASM_SYMS=y # CONFIG_STRIP is not set +CONFIG_ST_UVIS25_I2C=m +CONFIG_ST_UVIS25=m +CONFIG_ST_UVIS25_SPI=m CONFIG_SUNDANCE=m # CONFIG_SUNDANCE_MMIO is not set CONFIG_SUNGEM=m @@ -5469,7 +5529,6 @@ CONFIG_TIFM_CORE=m CONFIG_TIGON3_HWMON=y CONFIG_TIGON3=m # CONFIG_TIMB_DMA is not set -# CONFIG_TIMER_STATS is not set CONFIG_TIPC=m # CONFIG_TIPC_MEDIA_IB is not set CONFIG_TIPC_MEDIA_UDP=y @@ -5632,6 +5691,7 @@ CONFIG_UIO_SERCOS3=m CONFIG_ULI526X=m # CONFIG_ULTRIX_PARTITION is not set # CONFIG_UNISYSSPAR is not set +# CONFIG_UNISYS_VISORBUS is not set CONFIG_UNIX98_PTYS=y CONFIG_UNIX_DIAG=m CONFIG_UNIXWARE_DISKLABEL=y @@ -5654,7 +5714,6 @@ 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_F_UAC1_LEGACY is not set CONFIG_USB_CXACRU=m # CONFIG_USB_CYPRESS_CY7C63 is not set @@ -5941,6 +6000,7 @@ CONFIG_USB_WDM=m # CONFIG_USB_WUSB_CBAF_DEBUG is not set CONFIG_USB_WUSB_CBAF=m CONFIG_USB_WUSB=m +CONFIG_USB_XHCI_DBGCAP=y CONFIG_USB_XHCI_HCD=y CONFIG_USB_XHCI_PLATFORM=m CONFIG_USB_XUSBATM=m @@ -5963,6 +6023,7 @@ CONFIG_UWB_WHCI=m CONFIG_V4L_MEM2MEM_DRIVERS=y # CONFIG_V4L_PLATFORM_DRIVERS is not set # CONFIG_V4L_TEST_DRIVERS is not set +# CONFIG_VBOXGUEST is not set # CONFIG_VCNL4000 is not set # CONFIG_VEML6070 is not set CONFIG_VETH=m @@ -6029,6 +6090,7 @@ CONFIG_VIDEO_GO7007_USB_S2250_BOARD=m CONFIG_VIDEO_HDPVR=m CONFIG_VIDEO_HEXIUM_GEMINI=m CONFIG_VIDEO_HEXIUM_ORION=m +CONFIG_VIDEO_IPU3_CIO2=m # CONFIG_VIDEO_IVTV_ALSA is not set # CONFIG_VIDEO_IVTV_DEPRECATED_IOCTLS is not set CONFIG_VIDEO_IVTV=m @@ -6084,12 +6146,13 @@ CONFIG_VIDEO_ZORAN_LML33R10=m CONFIG_VIDEO_ZORAN=m CONFIG_VIDEO_ZORAN_ZR36060=m # CONFIG_VIPERBOARD_ADC is not set -# CONFIG_VIRT_DRIVERS is not set +CONFIG_VIRT_DRIVERS=y CONFIG_VIRTIO_BALLOON=m CONFIG_VIRTIO_BLK=m # CONFIG_VIRTIO_BLK_SCSI is not set CONFIG_VIRTIO_CONSOLE=m CONFIG_VIRTIO_INPUT=m +CONFIG_VIRTIO_MENU=y # CONFIG_VIRTIO_MMIO_CMDLINE_DEVICES is not set CONFIG_VIRTIO_MMIO=m CONFIG_VIRTIO_NET=m @@ -6249,7 +6312,7 @@ CONFIG_X86_PAT=y CONFIG_X86_PCC_CPUFREQ=m CONFIG_X86_PKG_TEMP_THERMAL=m CONFIG_X86_PLATFORM_DEVICES=y -CONFIG_X86_PMEM_LEGACY=y +CONFIG_X86_PMEM_LEGACY=m CONFIG_X86_PM_TIMER=y CONFIG_X86_POWERNOW_K8=m # CONFIG_X86_PTDUMP is not set @@ -6312,6 +6375,7 @@ CONFIG_XFS_QUOTA=y # CONFIG_XFS_WARN is not set # CONFIG_XILINX_DMA is not set CONFIG_XILINX_GMII2RGMII=m +CONFIG_XILINX_VCU=m # CONFIG_XILINX_WATCHDOG is not set CONFIG_XILLYBUS=m # CONFIG_XILLYBUS_OF is not set @@ -6338,6 +6402,7 @@ CONFIG_ZLIB_DEFLATE=y CONFIG_ZLIB_INFLATE=y CONFIG_ZONE_DEVICE=y CONFIG_ZONE_DMA=y +CONFIG_ZOPT2201=m # CONFIG_ZPA2326 is not set CONFIG_ZRAM=m # CONFIG_ZRAM_WRITEBACK is not set diff --git a/kernel.spec b/kernel.spec index ebff58b65..90b308d79 100644 --- a/kernel.spec +++ b/kernel.spec @@ -42,19 +42,19 @@ Summary: The Linux kernel # For non-released -rc kernels, this will be appended after the rcX and # gitX tags, so a 3 here would become part of release "0.rcX.gitX.3" # -%global baserelease 300 +%global baserelease 200 %global fedora_build %{baserelease} # 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 15 +%define base_sublevel 16 ## If this is a released kernel ## %if 0%{?released_kernel} # Do we have a -stable update to apply? -%define stable_update 2 +%define stable_update 0 # Set rpm version accordingly %if 0%{?stable_update} %define stablerev %{stable_update} @@ -368,9 +368,8 @@ Summary: The Linux kernel Name: kernel%{?variant} -Group: System Environment/Kernel License: GPLv2 and Redistributable, no modification permitted -URL: http://www.kernel.org/ +URL: https://www.kernel.org/ Version: %{rpmversion} Release: %{pkg_release} # DO NOT CHANGE THE 'ExclusiveArch' LINE TO TEMPORARILY EXCLUDE AN ARCHITECTURE BUILD. @@ -388,7 +387,7 @@ Requires: kernel-modules-uname-r = %{KVERREL}%{?variant} # BuildRequires: kmod, patch, bash, tar, git BuildRequires: bzip2, xz, findutils, gzip, m4, perl-interpreter, perl-Carp, perl-devel, perl-generators, make, diffutils, gawk -BuildRequires: gcc, binutils, redhat-rpm-config, hmaccalc +BuildRequires: gcc, binutils, redhat-rpm-config, hmaccalc, bison, flex BuildRequires: net-tools, hostname, bc, elfutils-devel %if %{with_sparse} BuildRequires: sparse @@ -506,6 +505,9 @@ Source5000: patch-4.%{base_sublevel}-git%{gitrev}.xz # ongoing complaint, full discussion delayed until ksummit/plumbers Patch002: 0001-iio-Use-event-header-from-kernel-tree.patch +# gcc -Werror=aliasing workaround +Patch003: 0001-Temporarily-work-around-gcc-aliasing-warning-error.patch + %if !%{nopatches} # Git trees. @@ -577,78 +579,63 @@ Patch302: arm-revert-mmc-omap_hsmmc-Use-dma_request_chan-for-reque.patch # http://patchwork.ozlabs.org/patch/587554/ Patch303: ARM-tegra-usb-no-reset.patch -# https://www.spinics.net/lists/arm-kernel/msg554183.html -Patch304: arm-imx6-hummingboard2.patch - -Patch305: arm64-Revert-allwinner-a64-pine64-Use-dcdc1-regulato.patch +Patch304: arm64-Revert-allwinner-a64-pine64-Use-dcdc1-regulato.patch # https://patchwork.kernel.org/patch/9820417/ -Patch306: qcom-msm89xx-fixes.patch +Patch305: qcom-msm89xx-fixes.patch # https://patchwork.kernel.org/patch/10173115/ -Patch307: arm-dts-imx6qdl-udoo-Disable-usbh1-to-avoid-kernel-hang.patch +Patch306: arm-dts-imx6qdl-udoo-Disable-usbh1-to-avoid-kernel-hang.patch -# Fix USB on the RPi https://patchwork.kernel.org/patch/9879371/ -Patch308: bcm283x-dma-mapping-skip-USB-devices-when-configuring-DMA-during-probe.patch +# http://patches.linaro.org/patch/131764/ +Patch307: wcn36xx-Fix-firmware-crash-due-to-corrupted-buffer-address.patch -# https://git.kernel.org/pub/scm/linux/kernel/git/ardb/linux.git/log/?h=synquacer-netsec -Patch330: arm64-socionext-96b-enablement.patch +# https://patchwork.kernel.org/patch/10245303/ +Patch308: wcn36xx-reduce-verbosity-of-drivers-messages.patch -# https://patchwork.kernel.org/patch/10149775/ MMC support for Synquacer -Patch331: arm64-mmc-sdhci_f_sdh30-add-ACPI-support.patch - -# 400 - IBM (ppc/s390x) patches +# https://www.spinics.net/lists/arm-kernel/msg632925.html +Patch309: arm-crypto-sunxi-ss-Add-MODULE_ALIAS-to-sun4i-ss.patch -# 500 - Temp fixes/CVEs etc +# Fix USB on the RPi https://patchwork.kernel.org/patch/9879371/ +Patch310: bcm283x-dma-mapping-skip-USB-devices-when-configuring-DMA-during-probe.patch -# 600 - Patches for improved Bay and Cherry Trail device support -# Below patches are submitted upstream, awaiting review / merging -Patch610: 0010-Input-silead-Add-support-for-capactive-home-button-f.patch +# https://www.spinics.net/lists/arm-kernel/msg621982.html +Patch311: bcm283x-Fix-probing-of-bcm2835-i2s.patch -# rhbz 1476467 -Patch617: Fix-for-module-sig-verification.patch +# https://www.spinics.net/lists/arm-kernel/msg633942.html +Patch312: mmc-sdhci-iproc-Disable-preset-values-for-BCM2835.patch -# rhbz 1431375 -Patch619: input-rmi4-remove-the-need-for-artifical-IRQ.patch +# https://www.spinics.net/lists/arm-kernel/msg633945.html +Patch313: bcm2835-hwrng-Handle-deferred-clock-properly.patch -# rhbz 1509461 -Patch625: v3-2-2-Input-synaptics---Lenovo-X1-Carbon-5-should-use-SMBUS-RMI.patch +Patch314: bcm283x-clk-audio-fixes.patch -# For https://fedoraproject.org/wiki/Changes/ImprovedLaptopBatteryLife -# Queued in bluetooth-next for merging into 4.16 -Patch628: 0001-Bluetooth-btusb-Add-a-Kconfig-option-to-enable-USB-a.patch +# Enabling Patches for the RPi3+ +Patch330: bcm2837-rpi-initial-support-for-the-3.patch +Patch331: bcm2837-gpio-expander.patch +Patch332: bcm2837-enable-pmu.patch +Patch333: bcm2837-lan78xx-fixes.patch -# Fix left-button not working with some hid-multitouch touchpads -# Adding these suggested by Benjamin Tissoires -# Queued in hid.git/for-4.16/hid-quirks-cleanup/multitouch for merging into 4.16 -Patch630: 0001-HID-multitouch-Properly-deal-with-Win8-PTP-reports-w.patch -Patch631: 0002-HID-multitouch-Only-look-at-non-touch-fields-in-firs.patch -Patch632: 0003-HID-multitouch-Combine-all-left-button-events-in-a-f.patch +# 400 - IBM (ppc/s390x) patches -# Make SATA link powermanagement policy configurable for: -# https://fedoraproject.org/wiki/Changes/ImprovedLaptopBatteryLife -# Queued upstream for merging into 4.16 -Patch636: 0001-ahci-Annotate-PCI-ids-for-mobile-Intel-chipsets-as-s.patch -Patch637: 0002-ahci-Add-PCI-ids-for-Intel-Bay-Trail-Cherry-Trail-an.patch -Patch638: 0003-ahci-Allow-setting-a-default-LPM-policy-for-mobile-c.patch +# 500 - Temp fixes/CVEs etc -# rhbz1514969, submitted upstream -Patch640: 0001-platform-x86-dell-laptop-Filter-out-spurious-keyboar.patch +# rhbz 1476467 +Patch501: Fix-for-module-sig-verification.patch -# rhbz1514836, submitted upstream -Patch641: 0001-Bluetooth-btusb-Disable-autosuspend-on-QCA-Rome-devi.patch +# rhbz 1431375 +Patch502: input-rmi4-remove-the-need-for-artifical-IRQ.patch -# Speculative Execution patches -Patch642: prevent-bounds-check-bypass-via-speculative-execution.patch +# rhbz 1509461 +Patch503: v3-2-2-Input-synaptics---Lenovo-X1-Carbon-5-should-use-SMBUS-RMI.patch -# Fix crash on Xwayland using nouveau -Patch650: dma-buf-fix-reservation_object_wait_timeout_rcu-once-more-v2.patch +# rhbz 1558977 +Patch504: sunrpc-remove-incorrect-HMAC-request-initialization.patch # END OF PATCH DEFINITIONS %endif -BuildRoot: %{_tmppath}/kernel-%{KVERREL}-root %description The kernel meta package @@ -682,7 +669,6 @@ AutoProv: yes\ %package headers Summary: Header files for the Linux kernel for use by glibc -Group: Development/System Obsoletes: glibc-kernheaders < 3.0-46 Provides: glibc-kernheaders = 3.0-46 %if "0%{?variant}" @@ -698,7 +684,6 @@ glibc package. %package cross-headers Summary: Header files for the Linux kernel for use by cross-glibc -Group: Development/System %description cross-headers Kernel-cross-headers includes the C header files that specify the interface between the Linux kernel and userspace libraries and programs. The @@ -709,7 +694,6 @@ cross-glibc package. %package bootwrapper Summary: Boot wrapper files for generating combined kernel + initrd images -Group: Development/System Requires: gzip binutils %description bootwrapper Kernel-bootwrapper contains the wrapper code which makes bootable "zImage" @@ -717,7 +701,6 @@ files combining both kernel and initial ramdisk. %package debuginfo-common-%{_target_cpu} Summary: Kernel source files used by %{name}-debuginfo packages -Group: Development/Debug Provides: installonlypkg(kernel) %description debuginfo-common-%{_target_cpu} This package is required by %{name}-debuginfo subpackages. @@ -730,7 +713,6 @@ It provides the kernel source files common to all builds. %define kernel_debuginfo_package() \ %package %{?1:%{1}-}debuginfo\ Summary: Debug information for package %{name}%{?1:-%{1}}\ -Group: Development/Debug\ Requires: %{name}-debuginfo-common-%{_target_cpu} = %{version}-%{release}\ Provides: %{name}%{?1:-%{1}}-debuginfo-%{_target_cpu} = %{version}-%{release}\ Provides: installonlypkg(kernel)\ @@ -748,7 +730,6 @@ This is required to use SystemTap with %{name}%{?1:-%{1}}-%{KVERREL}.\ %define kernel_devel_package() \ %package %{?1:%{1}-}devel\ Summary: Development package for building kernel modules to match the %{?2:%{2} }kernel\ -Group: System Environment/Kernel\ Provides: kernel%{?1:-%{1}}-devel-%{_target_cpu} = %{version}-%{release}\ Provides: kernel-devel-%{_target_cpu} = %{version}-%{release}%{?1:+%{1}}\ Provides: kernel-devel-uname-r = %{KVERREL}%{?variant}%{?1:+%{1}}\ @@ -769,7 +750,6 @@ against the %{?2:%{2} }kernel package.\ %define kernel_modules_extra_package() \ %package %{?1:%{1}-}modules-extra\ Summary: Extra kernel modules to match the %{?2:%{2} }kernel\ -Group: System Environment/Kernel\ Provides: kernel%{?1:-%{1}}-modules-extra-%{_target_cpu} = %{version}-%{release}\ Provides: kernel%{?1:-%{1}}-modules-extra-%{_target_cpu} = %{version}-%{release}%{?1:+%{1}}\ Provides: kernel%{?1:-%{1}}-modules-extra = %{version}-%{release}%{?1:+%{1}}\ @@ -790,7 +770,6 @@ This package provides less commonly used kernel modules for the %{?2:%{2} }kerne %define kernel_modules_package() \ %package %{?1:%{1}-}modules\ Summary: kernel modules to match the %{?2:%{2}-}core kernel\ -Group: System Environment/Kernel\ Provides: kernel%{?1:-%{1}}-modules-%{_target_cpu} = %{version}-%{release}\ Provides: kernel-modules-%{_target_cpu} = %{version}-%{release}%{?1:+%{1}}\ Provides: kernel-modules = %{version}-%{release}%{?1:+%{1}}\ @@ -810,7 +789,6 @@ This package provides commonly used kernel modules for the %{?2:%{2}-}core kerne %define kernel_meta_package() \ %package %{1}\ summary: kernel meta-package for the %{1} kernel\ -group: system environment/kernel\ Requires: kernel-%{1}-core-uname-r = %{KVERREL}%{?variant}+%{1}\ Requires: kernel-%{1}-modules-uname-r = %{KVERREL}%{?variant}+%{1}\ Provides: installonlypkg(kernel)\ @@ -826,7 +804,6 @@ The meta-package for the %{1} kernel\ %define kernel_variant_package(n:) \ %package %{?1:%{1}-}core\ Summary: %{variant_summary}\ -Group: System Environment/Kernel\ Provides: kernel-%{?1:%{1}-}core-uname-r = %{KVERREL}%{?variant}%{?1:+%{1}}\ Provides: installonlypkg(kernel)\ %{expand:%%kernel_reqprovconf}\ @@ -1152,6 +1129,7 @@ git am %{patches} # Any further pre-build tree manipulations happen here. chmod +x scripts/checkpatch.pl +chmod +x tools/objtool/sync-check.sh # This Prevents scripts/setlocalversion from mucking with our version numbers. touch .scmversion @@ -1369,6 +1347,16 @@ BuildKernel() { cp -a scripts $RPM_BUILD_ROOT/lib/modules/$KernelVer/build if [ -f tools/objtool/objtool ]; then cp -a tools/objtool/objtool $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/tools/objtool/ || : + # these are a few files associated with objtool + cp -a --parents tools/build/Build.include $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/ + cp -a --parents tools/build/Build $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/ + cp -a --parents tools/build/fixdep.c $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/ + cp -a --parents tools/scripts/utilities.mak $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/ + # also more than necessary but it's not that many more files + cp -a --parents tools/objtool/* $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/ + cp -a --parents tools/lib/str_error_r.c $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/ + cp -a --parents tools/lib/string.c $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/ + cp -a --parents tools/lib/subcmd/* $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/ fi if [ -d arch/$Arch/scripts ]; then cp -a arch/$Arch/scripts $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/arch/%{_arch} || : @@ -1414,7 +1402,9 @@ BuildKernel() { cp -a --parents arch/x86/tools/relocs.c $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/ cp -a --parents arch/x86/tools/relocs_common.c $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/ cp -a --parents arch/x86/tools/relocs.h $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/ - cp -a --parents tools/include/tools/le_byteshift.h $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/ + # Yes this is more includes than we probably need. Feel free to sort out + # dependencies if you so choose. + cp -a --parents tools/include/* $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/ cp -a --parents arch/x86/purgatory/purgatory.c $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/ cp -a --parents arch/x86/purgatory/sha256.h $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/ cp -a --parents arch/x86/purgatory/sha256.c $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/ @@ -1631,7 +1621,6 @@ BuildKernel %make_target %kernel_image %{_use_vdso} %ifnarch noarch %global __debug_package 1 %files -f debugfiles.list debuginfo-common-%{_target_cpu} -%defattr(-,root,root) %endif %endif @@ -1704,9 +1693,6 @@ make DESTDIR=$RPM_BUILD_ROOT bootwrapper_install WRAPPER_OBJDIR=%{_libdir}/kerne ### clean ### -%clean -rm -rf $RPM_BUILD_ROOT - ### ### scripts ### @@ -1817,27 +1803,22 @@ fi %if %{with_headers} %files headers -%defattr(-,root,root) /usr/include/* %endif %if %{with_cross_headers} %files cross-headers -%defattr(-,root,root) /usr/*-linux-gnu/include/* %endif %if %{with_bootwrapper} %files bootwrapper -%defattr(-,root,root) /usr/sbin/* %{_libdir}/kernel-wrapper %endif # empty meta-package %files -%defattr(-,root,root) - # This is %%{image_install_path} on an arch where that includes ELF files, # or empty otherwise. %define elf_image_install_path %{?kernel_image_elf:%{image_install_path}} @@ -1850,7 +1831,6 @@ fi %define kernel_variant_files(k:) \ %if %{2}\ %{expand:%%files -f kernel-%{?3:%{3}-}core.list %{?3:%{3}-}core}\ -%defattr(-,root,root)\ %{!?_licensedir:%global license %%doc}\ %license linux-%{KVERREL}/COPYING\ /lib/modules/%{KVERREL}%{?3:+%{3}}/%{?-k:%{-k*}}%{!?-k:vmlinuz}\ @@ -1878,29 +1858,24 @@ fi %endif\ /lib/modules/%{KVERREL}%{?3:+%{3}}/modules.*\ %{expand:%%files -f kernel-%{?3:%{3}-}modules.list %{?3:%{3}-}modules}\ -%defattr(-,root,root)\ %{expand:%%files %{?3:%{3}-}devel}\ -%defattr(-,root,root)\ %defverify(not mtime)\ /usr/src/kernels/%{KVERREL}%{?3:+%{3}}\ %{expand:%%files %{?3:%{3}-}modules-extra}\ -%defattr(-,root,root)\ /lib/modules/%{KVERREL}%{?3:+%{3}}/extra\ %if %{with_debuginfo}\ %ifnarch noarch\ %{expand:%%files -f debuginfo%{?3}.list %{?3:%{3}-}debuginfo}\ -%defattr(-,root,root)\ %endif\ %endif\ %if %{?3:1} %{!?3:0}\ %{expand:%%files %{3}}\ -%defattr(-,root,root)\ %endif\ %endif\ %{nil} -%kernel_variant_files %{_use_vdso} %{with_up} -%kernel_variant_files %{_use_vdso} %{with_debug} debug +%kernel_variant_files %{_use_vdso} %{with_up} +%kernel_variant_files %{_use_vdso} %{with_debug} debug %kernel_variant_files %{use_vdso} %{with_pae} %{pae} %kernel_variant_files %{use_vdso} %{with_pae_debug} %{pae}debug @@ -1909,6 +1884,9 @@ fi # # %changelog +* Thu Apr 05 2018 Jeremy Cline <jeremy@jcline.org> - 4.16.0-200 +- Linux v4.16 + * Wed Feb 07 2018 Laura Abbott <labbott@redhat.com> - 4.15.2-300 - Linux v4.15.2 diff --git a/mmc-sdhci-iproc-Disable-preset-values-for-BCM2835.patch b/mmc-sdhci-iproc-Disable-preset-values-for-BCM2835.patch new file mode 100644 index 000000000..7b3b2c01c --- /dev/null +++ b/mmc-sdhci-iproc-Disable-preset-values-for-BCM2835.patch @@ -0,0 +1,37 @@ +From patchwork Mon Feb 12 20:02:44 2018 +Content-Type: text/plain; charset="utf-8" +MIME-Version: 1.0 +Content-Transfer-Encoding: 7bit +Subject: mmc: sdhci-iproc: Disable preset values for BCM2835 +From: Stefan Wahren <stefan.wahren@i2se.com> +X-Patchwork-Id: 10214367 +Message-Id: <1518465764-30051-1-git-send-email-stefan.wahren@i2se.com> +To: Adrian Hunter <adrian.hunter@intel.com>, + Ulf Hansson <ulf.hansson@linaro.org> +Cc: Eric Anholt <eric@anholt.net>, Ray Jui <rjui@broadcom.com>, + Scott Branden <sbranden@broadcom.com>, Jon Mason <jonmason@broadcom.com>, + linux-arm-kernel@lists.infradead.org, + bcm-kernel-feedback-list@broadcom.com, linux-mmc@vger.kernel.org, + Stefan Wahren <stefan.wahren@i2se.com> +Date: Mon, 12 Feb 2018 21:02:44 +0100 + +According to the BCM2835 datasheet there are no preset value registers. +This wasn't an issue before, because we didn't propagate 1.8V support. + +Signed-off-by: Stefan Wahren <stefan.wahren@i2se.com> +--- + drivers/mmc/host/sdhci-iproc.c | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/drivers/mmc/host/sdhci-iproc.c b/drivers/mmc/host/sdhci-iproc.c +index 61666d2..0ef741b 100644 +--- a/drivers/mmc/host/sdhci-iproc.c ++++ b/drivers/mmc/host/sdhci-iproc.c +@@ -214,6 +214,7 @@ static const struct sdhci_pltfm_data sdhci_bcm2835_pltfm_data = { + SDHCI_QUIRK_DATA_TIMEOUT_USES_SDCLK | + SDHCI_QUIRK_MISSING_CAPS | + SDHCI_QUIRK_NO_HISPD_BIT, ++ .quirks2 = SDHCI_QUIRK2_PRESET_VALUE_BROKEN, + .ops = &sdhci_iproc_32only_ops, + }; + diff --git a/prevent-bounds-check-bypass-via-speculative-execution.patch b/prevent-bounds-check-bypass-via-speculative-execution.patch deleted file mode 100644 index aa19fc0d4..000000000 --- a/prevent-bounds-check-bypass-via-speculative-execution.patch +++ /dev/null @@ -1,1105 +0,0 @@ -From 1d115042dde79e3c0fcc18af548342b172e749e1 Mon Sep 17 00:00:00 2001 -From: Mark Rutland <mark.rutland@arm.com> -Date: Thu, 7 Dec 2017 17:14:24 +0000 -Subject: [PATCH 01/19] asm-generic/barrier: add generic nospec helpers - -Under speculation, CPUs may mis-predict branches in bounds checks. Thus, -memory accesses under a bounds check may be speculated even if the -bounds check fails, providing a primitive for building a side channel. - -This patch adds helpers which can be used to inhibit the use of -out-of-bounds pointers under speculation. - -A generic implementation is provided for compatibility, but does not -guarantee safety under speculation. Architectures are expected to -override these helpers as necessary. - -Signed-off-by: Mark Rutland <mark.rutland@arm.com> -Signed-off-by: Will Deacon <will.deacon@arm.com> -Cc: Daniel Willams <dan.j.williams@intel.com> -Cc: Peter Zijlstra <peterz@infradead.org> -Signed-off-by: Dan Williams <dan.j.williams@intel.com> ---- - include/asm-generic/barrier.h | 68 +++++++++++++++++++++++++++++++++++++++++++ - 1 file changed, 68 insertions(+) - -diff --git a/include/asm-generic/barrier.h b/include/asm-generic/barrier.h -index fe297b599b0a..91c3071f49e5 100644 ---- a/include/asm-generic/barrier.h -+++ b/include/asm-generic/barrier.h -@@ -54,6 +54,74 @@ - #define read_barrier_depends() do { } while (0) - #endif - -+/* -+ * Inhibit subsequent speculative memory accesses. -+ * -+ * Architectures with a suitable memory barrier should provide an -+ * implementation. This is non-portable, and generic code should use -+ * nospec_ptr(). -+ */ -+#ifndef __nospec_barrier -+#define __nospec_barrier() do { } while (0) -+#endif -+ -+/** -+ * nospec_ptr() - Ensure a pointer is bounded, even under speculation. -+ * -+ * @ptr: the pointer to test -+ * @lo: the lower valid bound for @ptr, inclusive -+ * @hi: the upper valid bound for @ptr, exclusive -+ * -+ * If @ptr falls in the interval [@lo, @i), returns @ptr, otherwise returns -+ * NULL. -+ * -+ * Architectures which do not provide __nospec_barrier() should override this -+ * to ensure that ptr falls in the [lo, hi) interval both under architectural -+ * execution and under speculation, preventing propagation of an out-of-bounds -+ * pointer to code which is speculatively executed. -+ */ -+#ifndef nospec_ptr -+#define nospec_ptr(ptr, lo, hi) \ -+({ \ -+ typeof (ptr) __ret; \ -+ typeof (ptr) __ptr = (ptr); \ -+ typeof (ptr) __lo = (lo); \ -+ typeof (ptr) __hi = (hi); \ -+ \ -+ __ret = (__lo <= __ptr && __ptr < __hi) ? __ptr : NULL; \ -+ \ -+ __nospec_barrier(); \ -+ \ -+ __ret; \ -+}) -+#endif -+ -+/** -+ * nospec_array_ptr - Generate a pointer to an array element, ensuring the -+ * pointer is bounded under speculation. -+ * -+ * @arr: the base of the array -+ * @idx: the index of the element -+ * @sz: the number of elements in the array -+ * -+ * If @idx falls in the interval [0, @sz), returns the pointer to @arr[@idx], -+ * otherwise returns NULL. -+ * -+ * This is a wrapper around nospec_ptr(), provided for convenience. -+ * Architectures should implement nospec_ptr() to ensure this is the case -+ * under speculation. -+ */ -+#define nospec_array_ptr(arr, idx, sz) \ -+({ \ -+ typeof(*(arr)) *__arr = (arr); \ -+ typeof(idx) __idx = (idx); \ -+ typeof(sz) __sz = (sz); \ -+ \ -+ nospec_ptr(__arr + __idx, __arr, __arr + __sz); \ -+}) -+ -+#undef __nospec_barrier -+ - #ifndef __smp_mb - #define __smp_mb() mb() - #endif --- -2.14.3 - -From 2b98026ffeeb0b4a06c80fe39bfebd5cef4a8fa6 Mon Sep 17 00:00:00 2001 -From: Mark Rutland <mark.rutland@arm.com> -Date: Thu, 7 Dec 2017 17:15:01 +0000 -Subject: [PATCH 03/19] arm64: implement nospec_ptr() - -This patch implements nospec_ptr() for arm64, following the recommended -architectural sequence. - -Signed-off-by: Mark Rutland <mark.rutland@arm.com> -Signed-off-by: Will Deacon <will.deacon@arm.com> -Cc: Dan Williams <dan.j.williams@intel.com> -Cc: Peter Zijlstra <peterz@infradead.org> -Signed-off-by: Dan Williams <dan.j.williams@intel.com> ---- - arch/arm64/include/asm/barrier.h | 55 ++++++++++++++++++++++++++++++++++++++++ - 1 file changed, 55 insertions(+) - -diff --git a/arch/arm64/include/asm/barrier.h b/arch/arm64/include/asm/barrier.h -index 77651c49ef44..b4819f6a0e5c 100644 ---- a/arch/arm64/include/asm/barrier.h -+++ b/arch/arm64/include/asm/barrier.h -@@ -40,6 +40,61 @@ - #define dma_rmb() dmb(oshld) - #define dma_wmb() dmb(oshst) - -+#define __load_no_speculate_n(ptr, lo, hi, failval, cmpptr, w, sz) \ -+({ \ -+ typeof(*ptr) __nln_val; \ -+ typeof(*ptr) __failval = \ -+ (typeof(*ptr))(unsigned long)(failval); \ -+ \ -+ asm volatile ( \ -+ " cmp %[c], %[l]\n" \ -+ " ccmp %[c], %[h], 2, cs\n" \ -+ " b.cs 1f\n" \ -+ " ldr" #sz " %" #w "[v], %[p]\n" \ -+ "1: csel %" #w "[v], %" #w "[v], %" #w "[f], cc\n" \ -+ " hint #0x14 // CSDB\n" \ -+ : [v] "=&r" (__nln_val) \ -+ : [p] "m" (*(ptr)), [l] "r" (lo), [h] "r" (hi), \ -+ [f] "rZ" (__failval), [c] "r" (cmpptr) \ -+ : "cc"); \ -+ \ -+ __nln_val; \ -+}) -+ -+#define __load_no_speculate(ptr, lo, hi, failval, cmpptr) \ -+({ \ -+ typeof(*(ptr)) __nl_val; \ -+ \ -+ switch (sizeof(__nl_val)) { \ -+ case 1: \ -+ __nl_val = __load_no_speculate_n(ptr, lo, hi, failval, \ -+ cmpptr, w, b); \ -+ break; \ -+ case 2: \ -+ __nl_val = __load_no_speculate_n(ptr, lo, hi, failval, \ -+ cmpptr, w, h); \ -+ break; \ -+ case 4: \ -+ __nl_val = __load_no_speculate_n(ptr, lo, hi, failval, \ -+ cmpptr, w, ); \ -+ break; \ -+ case 8: \ -+ __nl_val = __load_no_speculate_n(ptr, lo, hi, failval, \ -+ cmpptr, x, ); \ -+ break; \ -+ default: \ -+ BUILD_BUG(); \ -+ } \ -+ \ -+ __nl_val; \ -+}) -+ -+#define nospec_ptr(ptr, lo, hi) \ -+({ \ -+ typeof(ptr) __np_ptr = (ptr); \ -+ __load_no_speculate(&__np_ptr, lo, hi, 0, __np_ptr); \ -+}) -+ - #define __smp_mb() dmb(ish) - #define __smp_rmb() dmb(ishld) - #define __smp_wmb() dmb(ishst) --- -2.14.3 - -From cedaed8d38108dc6b68c1418d9b942f64b2be488 Mon Sep 17 00:00:00 2001 -From: Mark Rutland <mark.rutland@arm.com> -Date: Fri, 5 Jan 2018 16:44:36 +0000 -Subject: [PATCH 04/19] arm: implement nospec_ptr() - -This patch implements nospec_ptr() for arm, following the recommended -architectural sequences for the arm and thumb instruction sets. - -Signed-off-by: Mark Rutland <mark.rutland@arm.com> -Signed-off-by: Dan Williams <dan.j.williams@intel.com> ---- - arch/arm/include/asm/barrier.h | 75 ++++++++++++++++++++++++++++++++++++++++++ - 1 file changed, 75 insertions(+) - -diff --git a/arch/arm/include/asm/barrier.h b/arch/arm/include/asm/barrier.h -index 40f5c410fd8c..6384c90e4b72 100644 ---- a/arch/arm/include/asm/barrier.h -+++ b/arch/arm/include/asm/barrier.h -@@ -37,6 +37,81 @@ - #define dmb(x) __asm__ __volatile__ ("" : : : "memory") - #endif - -+#ifdef CONFIG_THUMB2_KERNEL -+#define __load_no_speculate_n(ptr, lo, hi, failval, cmpptr, sz) \ -+({ \ -+ typeof(*ptr) __nln_val; \ -+ typeof(*ptr) __failval = \ -+ (typeof(*ptr))(unsigned long)(failval); \ -+ \ -+ asm volatile ( \ -+ " cmp %[c], %[l]\n" \ -+ " it hs\n" \ -+ " cmphs %[h], %[c]\n" \ -+ " blo 1f\n" \ -+ " ld" #sz " %[v], %[p]\n" \ -+ "1: it lo\n" \ -+ " movlo %[v], %[f]\n" \ -+ " .inst 0xf3af8014 @ CSDB\n" \ -+ : [v] "=&r" (__nln_val) \ -+ : [p] "m" (*(ptr)), [l] "r" (lo), [h] "r" (hi), \ -+ [f] "r" (__failval), [c] "r" (cmpptr) \ -+ : "cc"); \ -+ \ -+ __nln_val; \ -+}) -+#else -+#define __load_no_speculate_n(ptr, lo, hi, failval, cmpptr, sz) \ -+({ \ -+ typeof(*ptr) __nln_val; \ -+ typeof(*ptr) __failval = \ -+ (typeof(*ptr))(unsigned long)(failval); \ -+ \ -+ asm volatile ( \ -+ " cmp %[c], %[l]\n" \ -+ " cmphs %[h], %[c]\n" \ -+ " ldr" #sz "hi %[v], %[p]\n" \ -+ " movls %[v], %[f]\n" \ -+ " .inst 0xe320f014 @ CSDB\n" \ -+ : [v] "=&r" (__nln_val) \ -+ : [p] "m" (*(ptr)), [l] "r" (lo), [h] "r" (hi), \ -+ [f] "r" (__failval), [c] "r" (cmpptr) \ -+ : "cc"); \ -+ \ -+ __nln_val; \ -+}) -+#endif -+ -+#define __load_no_speculate(ptr, lo, hi, failval, cmpptr) \ -+({ \ -+ typeof(*(ptr)) __nl_val; \ -+ \ -+ switch (sizeof(__nl_val)) { \ -+ case 1: \ -+ __nl_val = __load_no_speculate_n(ptr, lo, hi, failval, \ -+ cmpptr, b); \ -+ break; \ -+ case 2: \ -+ __nl_val = __load_no_speculate_n(ptr, lo, hi, failval, \ -+ cmpptr, h); \ -+ break; \ -+ case 4: \ -+ __nl_val = __load_no_speculate_n(ptr, lo, hi, failval, \ -+ cmpptr, ); \ -+ break; \ -+ default: \ -+ BUILD_BUG(); \ -+ } \ -+ \ -+ __nl_val; \ -+}) -+ -+#define nospec_ptr(ptr, lo, hi) \ -+({ \ -+ typeof(ptr) __np_ptr = (ptr); \ -+ __load_no_speculate(&__np_ptr, lo, hi, 0, __np_ptr); \ -+}) -+ - #ifdef CONFIG_ARM_HEAVY_MB - extern void (*soc_mb)(void); - extern void arm_heavy_mb(void); --- -2.14.3 - -From d077f11b7fcb697af0c9419cc2273d179e6f51ad Mon Sep 17 00:00:00 2001 -From: Andi Kleen <ak@linux.intel.com> -Date: Thu, 4 Jan 2018 13:36:20 -0800 -Subject: [PATCH 06/19] x86, barrier: stop speculation for failed access_ok - -When access_ok fails we should always stop speculating. -Add the required barriers to the x86 access_ok macro. - -Cc: Thomas Gleixner <tglx@linutronix.de> -Cc: Ingo Molnar <mingo@redhat.com> -Cc: "H. Peter Anvin" <hpa@zytor.com> -Cc: Arnd Bergmann <arnd@arndb.de> -Cc: x86@kernel.org -Signed-off-by: Andi Kleen <ak@linux.intel.com> -Signed-off-by: Dan Williams <dan.j.williams@intel.com> ---- - arch/x86/include/asm/uaccess.h | 17 +++++++++++++---- - include/asm-generic/barrier.h | 6 +++--- - 2 files changed, 16 insertions(+), 7 deletions(-) - -diff --git a/arch/x86/include/asm/uaccess.h b/arch/x86/include/asm/uaccess.h -index 574dff4d2913..9b6f20cfaeb9 100644 ---- a/arch/x86/include/asm/uaccess.h -+++ b/arch/x86/include/asm/uaccess.h -@@ -43,6 +43,8 @@ static inline void set_fs(mm_segment_t fs) - /* - * Test whether a block of memory is a valid user space address. - * Returns 0 if the range is valid, nonzero otherwise. -+ * -+ * We also disable speculation when a check fails. - */ - static inline bool __chk_range_not_ok(unsigned long addr, unsigned long size, unsigned long limit) - { -@@ -53,14 +55,19 @@ static inline bool __chk_range_not_ok(unsigned long addr, unsigned long size, un - * important to subtract the size from the - * limit, not add it to the address). - */ -- if (__builtin_constant_p(size)) -- return unlikely(addr > limit - size); -+ if (__builtin_constant_p(size)) { -+ if (unlikely(addr > limit - size)) -+ return true; -+ barrier_nospec(); -+ return false; -+ } - - /* Arbitrary sizes? Be careful about overflow */ - addr += size; -- if (unlikely(addr < size)) -+ if (unlikely(addr < size || addr > limit)) - return true; -- return unlikely(addr > limit); -+ barrier_nospec(); -+ return false; - } - - #define __range_not_ok(addr, size, limit) \ -@@ -94,6 +101,8 @@ static inline bool __chk_range_not_ok(unsigned long addr, unsigned long size, un - * Note that, depending on architecture, this function probably just - * checks that the pointer is in the user space range - after calling - * this function, memory access functions may still return -EFAULT. -+ * -+ * Stops speculation automatically - */ - #define access_ok(type, addr, size) \ - ({ \ -diff --git a/include/asm-generic/barrier.h b/include/asm-generic/barrier.h -index 91c3071f49e5..a11765eba860 100644 ---- a/include/asm-generic/barrier.h -+++ b/include/asm-generic/barrier.h -@@ -59,7 +59,9 @@ - * - * Architectures with a suitable memory barrier should provide an - * implementation. This is non-portable, and generic code should use -- * nospec_ptr(). -+ * nospec_{array_ptr,ptr}. Arch-specific code should define and use -+ * nospec_barrier() for usages where nospec_{array_ptr,ptr} is -+ * unsuitable. - */ - #ifndef __nospec_barrier - #define __nospec_barrier() do { } while (0) -@@ -120,8 +122,6 @@ - nospec_ptr(__arr + __idx, __arr, __arr + __sz); \ - }) - --#undef __nospec_barrier -- - #ifndef __smp_mb - #define __smp_mb() mb() - #endif --- -2.14.3 - -From bb10d660be01a93f19d258260dd25444e14e5889 Mon Sep 17 00:00:00 2001 -From: Dan Williams <dan.j.williams@intel.com> -Date: Wed, 3 Jan 2018 13:53:55 -0800 -Subject: [PATCH 07/19] [media] uvcvideo: prevent bounds-check bypass via - speculative execution - -Static analysis reports that 'index' may be a user controlled value that -is used as a data dependency to read 'pin' from the -'selector->baSourceID' array. In order to avoid potential leaks of -kernel memory values, block speculative execution of the instruction -stream that could issue reads based on an invalid value of 'pin'. - -Based on an original patch by Elena Reshetova. - -Cc: Laurent Pinchart <laurent.pinchart@ideasonboard.com> -Cc: Mauro Carvalho Chehab <mchehab@kernel.org> -Cc: linux-media@vger.kernel.org -Signed-off-by: Elena Reshetova <elena.reshetova@intel.com> -Signed-off-by: Dan Williams <dan.j.williams@intel.com> ---- - drivers/media/usb/uvc/uvc_v4l2.c | 7 +++++-- - 1 file changed, 5 insertions(+), 2 deletions(-) - -diff --git a/drivers/media/usb/uvc/uvc_v4l2.c b/drivers/media/usb/uvc/uvc_v4l2.c -index 3e7e283a44a8..7442626dc20e 100644 ---- a/drivers/media/usb/uvc/uvc_v4l2.c -+++ b/drivers/media/usb/uvc/uvc_v4l2.c -@@ -22,6 +22,7 @@ - #include <linux/mm.h> - #include <linux/wait.h> - #include <linux/atomic.h> -+#include <linux/compiler.h> - - #include <media/v4l2-common.h> - #include <media/v4l2-ctrls.h> -@@ -810,6 +811,7 @@ static int uvc_ioctl_enum_input(struct file *file, void *fh, - struct uvc_entity *iterm = NULL; - u32 index = input->index; - int pin = 0; -+ __u8 *elem; - - if (selector == NULL || - (chain->dev->quirks & UVC_QUIRK_IGNORE_SELECTOR_UNIT)) { -@@ -820,8 +822,9 @@ static int uvc_ioctl_enum_input(struct file *file, void *fh, - break; - } - pin = iterm->id; -- } else if (index < selector->bNrInPins) { -- pin = selector->baSourceID[index]; -+ } else if ((elem = nospec_array_ptr(selector->baSourceID, index, -+ selector->bNrInPins))) { -+ pin = *elem; - list_for_each_entry(iterm, &chain->entities, chain) { - if (!UVC_ENTITY_IS_ITERM(iterm)) - continue; --- -2.14.3 - -From 8a4e4e1e674b9aaf0d2ca95c3fa5117ab5aa2987 Mon Sep 17 00:00:00 2001 -From: Dan Williams <dan.j.williams@intel.com> -Date: Wed, 3 Jan 2018 13:53:56 -0800 -Subject: [PATCH 08/19] carl9170: prevent bounds-check bypass via speculative - execution - -Static analysis reports that 'queue' may be a user controlled value that -is used as a data dependency to read from the 'ar9170_qmap' array. In -order to avoid potential leaks of kernel memory values, block -speculative execution of the instruction stream that could issue reads -based on an invalid result of 'ar9170_qmap[queue]'. In this case the -value of 'ar9170_qmap[queue]' is immediately reused as an index to the -'ar->edcf' array. - -Based on an original patch by Elena Reshetova. - -Cc: Christian Lamparter <chunkeey@googlemail.com> -Cc: Kalle Valo <kvalo@codeaurora.org> -Cc: linux-wireless@vger.kernel.org -Cc: netdev@vger.kernel.org -Signed-off-by: Elena Reshetova <elena.reshetova@intel.com> -Signed-off-by: Dan Williams <dan.j.williams@intel.com> ---- - drivers/net/wireless/ath/carl9170/main.c | 6 ++++-- - 1 file changed, 4 insertions(+), 2 deletions(-) - -diff --git a/drivers/net/wireless/ath/carl9170/main.c b/drivers/net/wireless/ath/carl9170/main.c -index 988c8857d78c..0ff34cbe2b62 100644 ---- a/drivers/net/wireless/ath/carl9170/main.c -+++ b/drivers/net/wireless/ath/carl9170/main.c -@@ -41,6 +41,7 @@ - #include <linux/module.h> - #include <linux/etherdevice.h> - #include <linux/random.h> -+#include <linux/compiler.h> - #include <net/mac80211.h> - #include <net/cfg80211.h> - #include "hw.h" -@@ -1384,11 +1385,12 @@ static int carl9170_op_conf_tx(struct ieee80211_hw *hw, - const struct ieee80211_tx_queue_params *param) - { - struct ar9170 *ar = hw->priv; -+ const u8 *elem; - int ret; - - mutex_lock(&ar->mutex); -- if (queue < ar->hw->queues) { -- memcpy(&ar->edcf[ar9170_qmap[queue]], param, sizeof(*param)); -+ if ((elem = nospec_array_ptr(ar9170_qmap, queue, ar->hw->queues))) { -+ memcpy(&ar->edcf[*elem], param, sizeof(*param)); - ret = carl9170_set_qos(ar); - } else { - ret = -EINVAL; --- -2.14.3 - -From b2134ba6dc16b4e6a232e34179c3489c3e51ba89 Mon Sep 17 00:00:00 2001 -From: Dan Williams <dan.j.williams@intel.com> -Date: Wed, 3 Jan 2018 13:53:57 -0800 -Subject: [PATCH 09/19] p54: prevent bounds-check bypass via speculative - execution - -Static analysis reports that 'queue' may be a user controlled value that -is used as a data dependency to read from the 'priv->qos_params' array. -In order to avoid potential leaks of kernel memory values, block -speculative execution of the instruction stream that could issue reads -based on an invalid result of 'priv->qos_params[queue]'. - -Based on an original patch by Elena Reshetova. - -Cc: Christian Lamparter <chunkeey@googlemail.com> -Cc: Kalle Valo <kvalo@codeaurora.org> -Cc: linux-wireless@vger.kernel.org -Cc: netdev@vger.kernel.org -Signed-off-by: Elena Reshetova <elena.reshetova@intel.com> -Signed-off-by: Dan Williams <dan.j.williams@intel.com> ---- - drivers/net/wireless/intersil/p54/main.c | 8 +++++--- - 1 file changed, 5 insertions(+), 3 deletions(-) - -diff --git a/drivers/net/wireless/intersil/p54/main.c b/drivers/net/wireless/intersil/p54/main.c -index ab6d39e12069..85c9cbee35fc 100644 ---- a/drivers/net/wireless/intersil/p54/main.c -+++ b/drivers/net/wireless/intersil/p54/main.c -@@ -20,6 +20,7 @@ - #include <linux/firmware.h> - #include <linux/etherdevice.h> - #include <linux/module.h> -+#include <linux/compiler.h> - - #include <net/mac80211.h> - -@@ -411,12 +412,13 @@ static int p54_conf_tx(struct ieee80211_hw *dev, - const struct ieee80211_tx_queue_params *params) - { - struct p54_common *priv = dev->priv; -+ struct p54_edcf_queue_param *p54_q; - int ret; - - mutex_lock(&priv->conf_mutex); -- if (queue < dev->queues) { -- P54_SET_QUEUE(priv->qos_params[queue], params->aifs, -- params->cw_min, params->cw_max, params->txop); -+ if ((p54_q = nospec_array_ptr(priv->qos_params, queue, dev->queues))) { -+ P54_SET_QUEUE(p54_q[0], params->aifs, params->cw_min, -+ params->cw_max, params->txop); - ret = p54_set_edcf(priv); - } else - ret = -EINVAL; --- -2.14.3 - -From addb69e8d90a79887aa369398e73b9b64fb9e910 Mon Sep 17 00:00:00 2001 -From: Dan Williams <dan.j.williams@intel.com> -Date: Wed, 3 Jan 2018 13:53:58 -0800 -Subject: [PATCH 10/19] qla2xxx: prevent bounds-check bypass via speculative - execution - -Static analysis reports that 'handle' may be a user controlled value -that is used as a data dependency to read 'sp' from the -'req->outstanding_cmds' array. In order to avoid potential leaks of -kernel memory values, block speculative execution of the instruction -stream that could issue reads based on an invalid value of 'sp'. In this -case 'sp' is directly dereferenced later in the function. - -Based on an original patch by Elena Reshetova. - -Cc: qla2xxx-upstream@qlogic.com -Cc: "James E.J. Bottomley" <jejb@linux.vnet.ibm.com> -Cc: "Martin K. Petersen" <martin.petersen@oracle.com> -Cc: linux-scsi@vger.kernel.org -Signed-off-by: Elena Reshetova <elena.reshetova@intel.com> -Signed-off-by: Dan Williams <dan.j.williams@intel.com> ---- - drivers/scsi/qla2xxx/qla_mr.c | 15 +++++++++------ - 1 file changed, 9 insertions(+), 6 deletions(-) - -diff --git a/drivers/scsi/qla2xxx/qla_mr.c b/drivers/scsi/qla2xxx/qla_mr.c -index d5da3981cefe..128b41de3784 100644 ---- a/drivers/scsi/qla2xxx/qla_mr.c -+++ b/drivers/scsi/qla2xxx/qla_mr.c -@@ -9,6 +9,7 @@ - #include <linux/ktime.h> - #include <linux/pci.h> - #include <linux/ratelimit.h> -+#include <linux/compiler.h> - #include <linux/vmalloc.h> - #include <linux/bsg-lib.h> - #include <scsi/scsi_tcq.h> -@@ -2275,7 +2276,7 @@ qlafx00_ioctl_iosb_entry(scsi_qla_host_t *vha, struct req_que *req, - static void - qlafx00_status_entry(scsi_qla_host_t *vha, struct rsp_que *rsp, void *pkt) - { -- srb_t *sp; -+ srb_t *sp, **elem; - fc_port_t *fcport; - struct scsi_cmnd *cp; - struct sts_entry_fx00 *sts; -@@ -2304,8 +2305,9 @@ qlafx00_status_entry(scsi_qla_host_t *vha, struct rsp_que *rsp, void *pkt) - req = ha->req_q_map[que]; - - /* Validate handle. */ -- if (handle < req->num_outstanding_cmds) -- sp = req->outstanding_cmds[handle]; -+ if ((elem = nospec_array_ptr(req->outstanding_cmds, handle, -+ req->num_outstanding_cmds))) -+ sp = *elem; - else - sp = NULL; - -@@ -2626,7 +2628,7 @@ static void - qlafx00_multistatus_entry(struct scsi_qla_host *vha, - struct rsp_que *rsp, void *pkt) - { -- srb_t *sp; -+ srb_t *sp, **elem; - struct multi_sts_entry_fx00 *stsmfx; - struct qla_hw_data *ha = vha->hw; - uint32_t handle, hindex, handle_count, i; -@@ -2655,8 +2657,9 @@ qlafx00_multistatus_entry(struct scsi_qla_host *vha, - req = ha->req_q_map[que]; - - /* Validate handle. */ -- if (handle < req->num_outstanding_cmds) -- sp = req->outstanding_cmds[handle]; -+ if ((elem = nospec_array_ptr(req->outstanding_cmds, handle, -+ req->num_outstanding_cmds))) -+ sp = *elem; - else - sp = NULL; - --- -2.14.3 - -From 18e5e10139f6a04e00f6522c4b0091f167eb6c1d Mon Sep 17 00:00:00 2001 -From: Dan Williams <dan.j.williams@intel.com> -Date: Wed, 3 Jan 2018 13:54:00 -0800 -Subject: [PATCH 11/19] cw1200: prevent bounds-check bypass via speculative - execution - -Static analysis reports that 'queue' may be a user controlled value that -is used as a data dependency to read 'txq_params' from the -'priv->tx_queue_params.params' array. In order to avoid potential leaks -of kernel memory values, block speculative execution of the instruction -stream that could issue reads based on an invalid value of 'txq_params'. -In this case 'txq_params' is referenced later in the function. - -Based on an original patch by Elena Reshetova. - -Cc: Solomon Peachy <pizza@shaftnet.org> -Cc: Kalle Valo <kvalo@codeaurora.org> -Cc: linux-wireless@vger.kernel.org -Cc: netdev@vger.kernel.org -Signed-off-by: Elena Reshetova <elena.reshetova@intel.com> -Signed-off-by: Dan Williams <dan.j.williams@intel.com> ---- - drivers/net/wireless/st/cw1200/sta.c | 10 ++++++---- - drivers/net/wireless/st/cw1200/wsm.h | 4 +--- - 2 files changed, 7 insertions(+), 7 deletions(-) - -diff --git a/drivers/net/wireless/st/cw1200/sta.c b/drivers/net/wireless/st/cw1200/sta.c -index 38678e9a0562..886942617f14 100644 ---- a/drivers/net/wireless/st/cw1200/sta.c -+++ b/drivers/net/wireless/st/cw1200/sta.c -@@ -14,6 +14,7 @@ - #include <linux/firmware.h> - #include <linux/module.h> - #include <linux/etherdevice.h> -+#include <linux/compiler.h> - - #include "cw1200.h" - #include "sta.h" -@@ -612,18 +613,19 @@ int cw1200_conf_tx(struct ieee80211_hw *dev, struct ieee80211_vif *vif, - u16 queue, const struct ieee80211_tx_queue_params *params) - { - struct cw1200_common *priv = dev->priv; -+ struct wsm_set_tx_queue_params *txq_params; - int ret = 0; - /* To prevent re-applying PM request OID again and again*/ - bool old_uapsd_flags; - - mutex_lock(&priv->conf_mutex); - -- if (queue < dev->queues) { -+ if ((txq_params = nospec_array_ptr(priv->tx_queue_params.params, -+ queue, dev->queues))) { - old_uapsd_flags = le16_to_cpu(priv->uapsd_info.uapsd_flags); - -- WSM_TX_QUEUE_SET(&priv->tx_queue_params, queue, 0, 0, 0); -- ret = wsm_set_tx_queue_params(priv, -- &priv->tx_queue_params.params[queue], queue); -+ WSM_TX_QUEUE_SET(txq_params, 0, 0, 0); -+ ret = wsm_set_tx_queue_params(priv, txq_params, queue); - if (ret) { - ret = -EINVAL; - goto out; -diff --git a/drivers/net/wireless/st/cw1200/wsm.h b/drivers/net/wireless/st/cw1200/wsm.h -index 48086e849515..8c8d9191e233 100644 ---- a/drivers/net/wireless/st/cw1200/wsm.h -+++ b/drivers/net/wireless/st/cw1200/wsm.h -@@ -1099,10 +1099,8 @@ struct wsm_tx_queue_params { - }; - - --#define WSM_TX_QUEUE_SET(queue_params, queue, ack_policy, allowed_time,\ -- max_life_time) \ -+#define WSM_TX_QUEUE_SET(p, ack_policy, allowed_time, max_life_time) \ - do { \ -- struct wsm_set_tx_queue_params *p = &(queue_params)->params[queue]; \ - p->ackPolicy = (ack_policy); \ - p->allowedMediumTime = (allowed_time); \ - p->maxTransmitLifetime = (max_life_time); \ --- -2.14.3 - -From 0096694093529628e2a855812a5111358d1e952d Mon Sep 17 00:00:00 2001 -From: Dan Williams <dan.j.williams@intel.com> -Date: Wed, 3 Jan 2018 13:54:01 -0800 -Subject: [PATCH 12/19] Thermal/int340x: prevent bounds-check bypass via - speculative execution - -Static analysis reports that 'trip' may be a user controlled value that -is used as a data dependency to read '*temp' from the 'd->aux_trips' -array. In order to avoid potential leaks of kernel memory values, block -speculative execution of the instruction stream that could issue reads -based on an invalid value of '*temp'. - -Based on an original patch by Elena Reshetova. - -Cc: Srinivas Pandruvada <srinivas.pandruvada@linux.intel.com> -Cc: Zhang Rui <rui.zhang@intel.com> -Cc: Eduardo Valentin <edubezval@gmail.com> -Signed-off-by: Elena Reshetova <elena.reshetova@intel.com> -Signed-off-by: Dan Williams <dan.j.williams@intel.com> ---- - drivers/thermal/int340x_thermal/int340x_thermal_zone.c | 14 ++++++++------ - 1 file changed, 8 insertions(+), 6 deletions(-) - -diff --git a/drivers/thermal/int340x_thermal/int340x_thermal_zone.c b/drivers/thermal/int340x_thermal/int340x_thermal_zone.c -index 145a5c53ff5c..442a1d9bf7ad 100644 ---- a/drivers/thermal/int340x_thermal/int340x_thermal_zone.c -+++ b/drivers/thermal/int340x_thermal/int340x_thermal_zone.c -@@ -17,6 +17,7 @@ - #include <linux/init.h> - #include <linux/acpi.h> - #include <linux/thermal.h> -+#include <linux/compiler.h> - #include "int340x_thermal_zone.h" - - static int int340x_thermal_get_zone_temp(struct thermal_zone_device *zone, -@@ -52,20 +53,21 @@ static int int340x_thermal_get_trip_temp(struct thermal_zone_device *zone, - int trip, int *temp) - { - struct int34x_thermal_zone *d = zone->devdata; -+ unsigned long *elem; - int i; - - if (d->override_ops && d->override_ops->get_trip_temp) - return d->override_ops->get_trip_temp(zone, trip, temp); - -- if (trip < d->aux_trip_nr) -- *temp = d->aux_trips[trip]; -- else if (trip == d->crt_trip_id) -+ if ((elem = nospec_array_ptr(d->aux_trips, trip, d->aux_trip_nr))) { -+ *temp = *elem; -+ } else if (trip == d->crt_trip_id) { - *temp = d->crt_temp; -- else if (trip == d->psv_trip_id) -+ } else if (trip == d->psv_trip_id) { - *temp = d->psv_temp; -- else if (trip == d->hot_trip_id) -+ } else if (trip == d->hot_trip_id) { - *temp = d->hot_temp; -- else { -+ } else { - for (i = 0; i < INT340X_THERMAL_MAX_ACT_TRIP_COUNT; i++) { - if (d->act_trips[i].valid && - d->act_trips[i].id == trip) { --- -2.14.3 - -From 2a5a165ff05df37c3f4d02ab70ddee1e9329401c Mon Sep 17 00:00:00 2001 -From: Dan Williams <dan.j.williams@intel.com> -Date: Wed, 3 Jan 2018 13:54:03 -0800 -Subject: [PATCH 13/19] ipv6: prevent bounds-check bypass via speculative - execution - -Static analysis reports that 'offset' may be a user controlled value -that is used as a data dependency reading from a raw6_frag_vec buffer. -In order to avoid potential leaks of kernel memory values, block -speculative execution of the instruction stream that could issue further -reads based on an invalid '*(rfv->c + offset)' value. - -Based on an original patch by Elena Reshetova. - -Cc: "David S. Miller" <davem@davemloft.net> -Cc: Alexey Kuznetsov <kuznet@ms2.inr.ac.ru> -Cc: Hideaki YOSHIFUJI <yoshfuji@linux-ipv6.org> -Cc: netdev@vger.kernel.org -Signed-off-by: Elena Reshetova <elena.reshetova@intel.com> -Signed-off-by: Dan Williams <dan.j.williams@intel.com> ---- - net/ipv6/raw.c | 9 +++++---- - 1 file changed, 5 insertions(+), 4 deletions(-) - -diff --git a/net/ipv6/raw.c b/net/ipv6/raw.c -index 761a473a07c5..384e3d59d148 100644 ---- a/net/ipv6/raw.c -+++ b/net/ipv6/raw.c -@@ -33,6 +33,7 @@ - #include <linux/skbuff.h> - #include <linux/compat.h> - #include <linux/uaccess.h> -+#include <linux/compiler.h> - #include <asm/ioctls.h> - - #include <net/net_namespace.h> -@@ -725,17 +726,17 @@ static int raw6_getfrag(void *from, char *to, int offset, int len, int odd, - struct sk_buff *skb) - { - struct raw6_frag_vec *rfv = from; -+ char *rfv_buf; - -- if (offset < rfv->hlen) { -+ if ((rfv_buf = nospec_array_ptr(rfv->c, offset, rfv->hlen))) { - int copy = min(rfv->hlen - offset, len); - - if (skb->ip_summed == CHECKSUM_PARTIAL) -- memcpy(to, rfv->c + offset, copy); -+ memcpy(to, rfv_buf, copy); - else - skb->csum = csum_block_add( - skb->csum, -- csum_partial_copy_nocheck(rfv->c + offset, -- to, copy, 0), -+ csum_partial_copy_nocheck(rfv_buf, to, copy, 0), - odd); - - odd = 0; --- -2.14.3 - -From f38cdd5d461ce686d201e41242fd626641e7253d Mon Sep 17 00:00:00 2001 -From: Dan Williams <dan.j.williams@intel.com> -Date: Wed, 3 Jan 2018 13:54:02 -0800 -Subject: [PATCH 14/19] ipv4: prevent bounds-check bypass via speculative - execution - -Static analysis reports that 'offset' may be a user controlled value -that is used as a data dependency reading from a raw_frag_vec buffer. -In order to avoid potential leaks of kernel memory values, block -speculative execution of the instruction stream that could issue further -reads based on an invalid '*(rfv->c + offset)' value. - -Based on an original patch by Elena Reshetova. - -Cc: "David S. Miller" <davem@davemloft.net> -Cc: Alexey Kuznetsov <kuznet@ms2.inr.ac.ru> -Cc: Hideaki YOSHIFUJI <yoshfuji@linux-ipv6.org> -Cc: netdev@vger.kernel.org -Signed-off-by: Elena Reshetova <elena.reshetova@intel.com> -Signed-off-by: Dan Williams <dan.j.williams@intel.com> ---- - net/ipv4/raw.c | 9 +++++---- - 1 file changed, 5 insertions(+), 4 deletions(-) - -diff --git a/net/ipv4/raw.c b/net/ipv4/raw.c -index 125c1eab3eaa..f72b20131a15 100644 ---- a/net/ipv4/raw.c -+++ b/net/ipv4/raw.c -@@ -57,6 +57,7 @@ - #include <linux/in_route.h> - #include <linux/route.h> - #include <linux/skbuff.h> -+#include <linux/compiler.h> - #include <linux/igmp.h> - #include <net/net_namespace.h> - #include <net/dst.h> -@@ -472,17 +473,17 @@ static int raw_getfrag(void *from, char *to, int offset, int len, int odd, - struct sk_buff *skb) - { - struct raw_frag_vec *rfv = from; -+ char *rfv_buf; - -- if (offset < rfv->hlen) { -+ if ((rfv_buf = nospec_array_ptr(rfv->hdr.c, offset, rfv->hlen))) { - int copy = min(rfv->hlen - offset, len); - - if (skb->ip_summed == CHECKSUM_PARTIAL) -- memcpy(to, rfv->hdr.c + offset, copy); -+ memcpy(to, rfv_buf, copy); - else - skb->csum = csum_block_add( - skb->csum, -- csum_partial_copy_nocheck(rfv->hdr.c + offset, -- to, copy, 0), -+ csum_partial_copy_nocheck(rfv_buf, to, copy, 0), - odd); - - odd = 0; --- -2.14.3 - -From e5ef1fdb08b0d2ae0af3f725a6c4a3394af538fe Mon Sep 17 00:00:00 2001 -From: Dan Williams <dan.j.williams@intel.com> -Date: Wed, 3 Jan 2018 13:54:05 -0800 -Subject: [PATCH 16/19] net: mpls: prevent bounds-check bypass via speculative - execution - -Static analysis reports that 'index' may be a user controlled value that -is used as a data dependency reading 'rt' from the 'platform_label' -array. In order to avoid potential leaks of kernel memory values, block -speculative execution of the instruction stream that could issue further -reads based on an invalid 'rt' value. - -Based on an original patch by Elena Reshetova. - -Cc: "David S. Miller" <davem@davemloft.net> -Cc: Eric W. Biederman <ebiederm@xmission.com> -Cc: netdev@vger.kernel.org -Signed-off-by: Elena Reshetova <elena.reshetova@intel.com> -Signed-off-by: Dan Williams <dan.j.williams@intel.com> ---- - net/mpls/af_mpls.c | 12 +++++++----- - 1 file changed, 7 insertions(+), 5 deletions(-) - -diff --git a/net/mpls/af_mpls.c b/net/mpls/af_mpls.c -index 8ca9915befc8..ebcf0e246cfe 100644 ---- a/net/mpls/af_mpls.c -+++ b/net/mpls/af_mpls.c -@@ -8,6 +8,7 @@ - #include <linux/ipv6.h> - #include <linux/mpls.h> - #include <linux/netconf.h> -+#include <linux/compiler.h> - #include <linux/vmalloc.h> - #include <linux/percpu.h> - #include <net/ip.h> -@@ -77,12 +78,13 @@ static void rtmsg_lfib(int event, u32 label, struct mpls_route *rt, - static struct mpls_route *mpls_route_input_rcu(struct net *net, unsigned index) - { - struct mpls_route *rt = NULL; -+ struct mpls_route __rcu **platform_label = -+ rcu_dereference(net->mpls.platform_label); -+ struct mpls_route __rcu **rtp; - -- if (index < net->mpls.platform_labels) { -- struct mpls_route __rcu **platform_label = -- rcu_dereference(net->mpls.platform_label); -- rt = rcu_dereference(platform_label[index]); -- } -+ if ((rtp = nospec_array_ptr(platform_label, index, -+ net->mpls.platform_labels))) -+ rt = rcu_dereference(*rtp); - return rt; - } - --- -2.14.3 - -From 276b18c636de3afc89571198b22b518473ce2b2a Mon Sep 17 00:00:00 2001 -From: Dan Williams <dan.j.williams@intel.com> -Date: Wed, 3 Jan 2018 13:54:07 -0800 -Subject: [PATCH 17/19] udf: prevent bounds-check bypass via speculative - execution - -Static analysis reports that 'eahd->appAttrLocation' and -'eahd->impAttrLocation' may be a user controlled values that are used as -data dependencies for calculating source and destination buffers for -memmove operations. In order to avoid potential leaks of kernel memory -values, block speculative execution of the instruction stream that could -issue further reads based on invalid 'aal' or 'ial' values. - -Based on an original patch by Elena Reshetova. - -Cc: Jan Kara <jack@suse.com> -Signed-off-by: Elena Reshetova <elena.reshetova@intel.com> -Signed-off-by: Dan Williams <dan.j.williams@intel.com> ---- - fs/udf/misc.c | 39 +++++++++++++++++++++------------------ - 1 file changed, 21 insertions(+), 18 deletions(-) - -diff --git a/fs/udf/misc.c b/fs/udf/misc.c -index 401e64cde1be..9403160822de 100644 ---- a/fs/udf/misc.c -+++ b/fs/udf/misc.c -@@ -51,6 +51,8 @@ struct genericFormat *udf_add_extendedattr(struct inode *inode, uint32_t size, - int offset; - uint16_t crclen; - struct udf_inode_info *iinfo = UDF_I(inode); -+ uint8_t *ea_dst, *ea_src; -+ uint32_t aal, ial; - - ea = iinfo->i_ext.i_data; - if (iinfo->i_lenEAttr) { -@@ -100,33 +102,34 @@ struct genericFormat *udf_add_extendedattr(struct inode *inode, uint32_t size, - - offset = iinfo->i_lenEAttr; - if (type < 2048) { -- if (le32_to_cpu(eahd->appAttrLocation) < -- iinfo->i_lenEAttr) { -- uint32_t aal = -- le32_to_cpu(eahd->appAttrLocation); -- memmove(&ea[offset - aal + size], -- &ea[aal], offset - aal); -+ aal = le32_to_cpu(eahd->appAttrLocation); -+ if ((ea_dst = nospec_array_ptr(ea, offset - aal + size, -+ iinfo->i_lenEAttr)) && -+ (ea_src = nospec_array_ptr(ea, aal, -+ iinfo->i_lenEAttr))) { -+ memmove(ea_dst, ea_src, offset - aal); - offset -= aal; - eahd->appAttrLocation = - cpu_to_le32(aal + size); - } -- if (le32_to_cpu(eahd->impAttrLocation) < -- iinfo->i_lenEAttr) { -- uint32_t ial = -- le32_to_cpu(eahd->impAttrLocation); -- memmove(&ea[offset - ial + size], -- &ea[ial], offset - ial); -+ -+ ial = le32_to_cpu(eahd->impAttrLocation); -+ if ((ea_dst = nospec_array_ptr(ea, offset - ial + size, -+ iinfo->i_lenEAttr)) && -+ (ea_src = nospec_array_ptr(ea, ial, -+ iinfo->i_lenEAttr))) { -+ memmove(ea_dst, ea_src, offset - ial); - offset -= ial; - eahd->impAttrLocation = - cpu_to_le32(ial + size); - } - } else if (type < 65536) { -- if (le32_to_cpu(eahd->appAttrLocation) < -- iinfo->i_lenEAttr) { -- uint32_t aal = -- le32_to_cpu(eahd->appAttrLocation); -- memmove(&ea[offset - aal + size], -- &ea[aal], offset - aal); -+ aal = le32_to_cpu(eahd->appAttrLocation); -+ if ((ea_dst = nospec_array_ptr(ea, offset - aal + size, -+ iinfo->i_lenEAttr)) && -+ (ea_src = nospec_array_ptr(ea, aal, -+ iinfo->i_lenEAttr))) { -+ memmove(ea_dst, ea_src, offset - aal); - offset -= aal; - eahd->appAttrLocation = - cpu_to_le32(aal + size); --- -2.14.3 - -From e13d6b8e1e65dc93044b72a84990094bb4f7b94c Mon Sep 17 00:00:00 2001 -From: Dan Williams <dan.j.williams@intel.com> -Date: Wed, 3 Jan 2018 13:54:09 -0800 -Subject: [PATCH 18/19] userns: prevent bounds-check bypass via speculative - execution - -Static analysis reports that 'pos' may be a user controlled value that -is used as a data dependency determining which extent to return out of -'map'. In order to avoid potential leaks of kernel memory values, block -speculative execution of the instruction stream that could issue further -reads based on an invalid speculative result from 'm_start()'. - -Based on an original patch by Elena Reshetova. - -Cc: "Eric W. Biederman" <ebiederm@xmission.com> -Signed-off-by: Elena Reshetova <elena.reshetova@intel.com> -Signed-off-by: Dan Williams <dan.j.williams@intel.com> ---- - kernel/user_namespace.c | 10 ++++------ - 1 file changed, 4 insertions(+), 6 deletions(-) - -diff --git a/kernel/user_namespace.c b/kernel/user_namespace.c -index 246d4d4ce5c7..e958f2e5c061 100644 ---- a/kernel/user_namespace.c -+++ b/kernel/user_namespace.c -@@ -648,15 +648,13 @@ static void *m_start(struct seq_file *seq, loff_t *ppos, - { - loff_t pos = *ppos; - unsigned extents = map->nr_extents; -- smp_rmb(); - -- if (pos >= extents) -- return NULL; -+ /* paired with smp_wmb in map_write */ -+ smp_rmb(); - - if (extents <= UID_GID_MAP_MAX_BASE_EXTENTS) -- return &map->extent[pos]; -- -- return &map->forward[pos]; -+ return nospec_array_ptr(map->extent, pos, extents); -+ return nospec_array_ptr(map->forward, pos, extents); - } - - static void *uid_m_start(struct seq_file *seq, loff_t *ppos) --- -2.14.3 @@ -1,2 +1 @@ -SHA512 (linux-4.15.tar.xz) = c00d92659df815a53dcac7dde145b742b1f20867d380c07cb09ddb3295d6ff10f8931b21ef0b09d7156923a3957b39d74d87c883300173b2e20690d2b4ec35ea -SHA512 (patch-4.15.2.xz) = 883d36831ab6a785dda071c91502ca4401b4d4602901bb19716a390cf48ef21830ebb309fe77ec1b741519fa799de7e342df5d7689224a2989f2816bbeaded24 +SHA512 (linux-4.16.tar.xz) = ab47849314b177d0eec9dbf261f33972b0d89fb92fb0650130ffa7abc2f36c0fab2d06317dc1683c51a472a9a631573a9b1e7258d6281a2ee189897827f14662 diff --git a/sunrpc-remove-incorrect-HMAC-request-initialization.patch b/sunrpc-remove-incorrect-HMAC-request-initialization.patch new file mode 100644 index 000000000..c31bb73bb --- /dev/null +++ b/sunrpc-remove-incorrect-HMAC-request-initialization.patch @@ -0,0 +1,54 @@ +From 5cdbcf4aa78b57c4f10892f20725174829cca191 Mon Sep 17 00:00:00 2001 +From: Eric Biggers <ebiggers@google.com> +Date: Wed, 28 Mar 2018 10:57:22 -0700 +Subject: [PATCH] sunrpc: remove incorrect HMAC request initialization + +make_checksum_hmac_md5() is allocating an HMAC transform and doing +crypto API calls in the following order: + + crypto_ahash_init() + crypto_ahash_setkey() + crypto_ahash_digest() + +This is wrong because it makes no sense to init() the request before a +key has been set, given that the initial state depends on the key. And +digest() is short for init() + update() + final(), so in this case +there's no need to explicitly call init() at all. + +Before commit 9fa68f620041 ("crypto: hash - prevent using keyed hashes +without setting key") the extra init() had no real effect, at least for +the software HMAC implementation. (There are also hardware drivers that +implement HMAC-MD5, and it's not immediately obvious how gracefully they +handle init() before setkey().) But now the crypto API detects this +incorrect initialization and returns -ENOKEY. This is breaking NFS +mounts in some cases. + +Fix it by removing the incorrect call to crypto_ahash_init(). + +Reported-by: Michael Young <m.a.young@durham.ac.uk> +Fixes: 9fa68f620041 ("crypto: hash - prevent using keyed hashes without setting key") +Fixes: fffdaef2eb4a ("gss_krb5: Add support for rc4-hmac encryption") +Cc: stable@vger.kernel.org +Signed-off-by: Eric Biggers <ebiggers@google.com> +Signed-off-by: Jeremy Cline <jeremy@jcline.org> +--- + net/sunrpc/auth_gss/gss_krb5_crypto.c | 3 --- + 1 file changed, 3 deletions(-) + +diff --git a/net/sunrpc/auth_gss/gss_krb5_crypto.c b/net/sunrpc/auth_gss/gss_krb5_crypto.c +index 12649c9fedab..8654494b4d0a 100644 +--- a/net/sunrpc/auth_gss/gss_krb5_crypto.c ++++ b/net/sunrpc/auth_gss/gss_krb5_crypto.c +@@ -237,9 +237,6 @@ make_checksum_hmac_md5(struct krb5_ctx *kctx, char *header, int hdrlen, + + ahash_request_set_callback(req, CRYPTO_TFM_REQ_MAY_SLEEP, NULL, NULL); + +- err = crypto_ahash_init(req); +- if (err) +- goto out; + err = crypto_ahash_setkey(hmac_md5, cksumkey, kctx->gk5e->keylength); + if (err) + goto out; +-- +2.16.2 + diff --git a/v3-2-2-Input-synaptics---Lenovo-X1-Carbon-5-should-use-SMBUS-RMI.patch b/v3-2-2-Input-synaptics---Lenovo-X1-Carbon-5-should-use-SMBUS-RMI.patch index 7e22e3669..a37b15ec7 100644 --- a/v3-2-2-Input-synaptics---Lenovo-X1-Carbon-5-should-use-SMBUS-RMI.patch +++ b/v3-2-2-Input-synaptics---Lenovo-X1-Carbon-5-should-use-SMBUS-RMI.patch @@ -25,5 +25,5 @@ index ee5466a374bf..b3c683a84d3f 100644 "LEN004a", /* W541 */ + "LEN0073", /* X1 Carbon 5 */ "LEN200f", /* T450s */ - "LEN2018", /* T460p */ NULL + }; diff --git a/wcn36xx-Fix-firmware-crash-due-to-corrupted-buffer-address.patch b/wcn36xx-Fix-firmware-crash-due-to-corrupted-buffer-address.patch new file mode 100644 index 000000000..dd8db063c --- /dev/null +++ b/wcn36xx-Fix-firmware-crash-due-to-corrupted-buffer-address.patch @@ -0,0 +1,164 @@ +From patchwork Thu Mar 15 11:31:33 2018 +Content-Type: text/plain; charset="utf-8" +MIME-Version: 1.0 +Content-Transfer-Encoding: 7bit +Subject: wcn36xx: Fix firmware crash due to corrupted buffer address +X-Patchwork-Submitter: Ramon Fried <rfried@codeaurora.org> +X-Patchwork-Id: 131764 +Message-Id: <20180315113133.28791-1-rfried@codeaurora.org> +To: k.eugene.e@gmail.com, kvalo@codeaurora.org, + wcn36xx@lists.infradead.org, linux-wireless@vger.kernel.org +Cc: Loic Poulain <loic.poulain@linaro.org>, Ramon Fried <rfried@codeaurora.org> +Date: Thu, 15 Mar 2018 13:31:33 +0200 +From: Ramon Fried <rfried@codeaurora.org> +List-Id: <linux-wireless.vger.kernel.org> + +From: Loic Poulain <loic.poulain@linaro.org>
+
+wcn36xx_start_tx function retrieves the buffer descriptor from the
+channel control queue to start filling tx buffer information. However,
+nothing prevents this same buffer to be concurrently accessed in a
+concurent tx call, leading to potential buffer coruption and firmware
+crash (observed during iperf test). The channel control queue should
+only be accessed and updated with the channel lock.
+
+Fix this issue by using a local buffer descriptor which will be copied
+in the thread-safe wcn36xx_dxe_tx_frame.
+
+Note that buffer descriptor size is few bytes so the introduced copy
+overhead is insignificant. Moreover, this allows to keep the locked
+section minimal.
+
+Signed-off-by: Loic Poulain <loic.poulain@linaro.org>
+Signed-off-by: Ramon Fried <rfried@codeaurora.org>
+---
+ drivers/net/wireless/ath/wcn36xx/dxe.c | 13 ++++---------
+ drivers/net/wireless/ath/wcn36xx/dxe.h | 3 ++-
+ drivers/net/wireless/ath/wcn36xx/txrx.c | 32 ++++++++++----------------------
+ 3 files changed, 16 insertions(+), 32 deletions(-)
+
+--
+The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum,
+a Linux Foundation Collaborative Project + +diff --git a/drivers/net/wireless/ath/wcn36xx/dxe.c b/drivers/net/wireless/ath/wcn36xx/dxe.c
+index 7d5ecaf02288..2c3b899a88fa 100644
+--- a/drivers/net/wireless/ath/wcn36xx/dxe.c
++++ b/drivers/net/wireless/ath/wcn36xx/dxe.c
+@@ -27,15 +27,6 @@
+ #include "wcn36xx.h"
+ #include "txrx.h"
+
+-void *wcn36xx_dxe_get_next_bd(struct wcn36xx *wcn, bool is_low)
+-{
+- struct wcn36xx_dxe_ch *ch = is_low ?
+- &wcn->dxe_tx_l_ch :
+- &wcn->dxe_tx_h_ch;
+-
+- return ch->head_blk_ctl->bd_cpu_addr;
+-}
+-
+ static void wcn36xx_ccu_write_register(struct wcn36xx *wcn, int addr, int data)
+ {
+ wcn36xx_dbg(WCN36XX_DBG_DXE,
+@@ -648,6 +639,7 @@ void wcn36xx_dxe_free_mem_pools(struct wcn36xx *wcn)
+
+ int wcn36xx_dxe_tx_frame(struct wcn36xx *wcn,
+ struct wcn36xx_vif *vif_priv,
++ struct wcn36xx_tx_bd *bd,
+ struct sk_buff *skb,
+ bool is_low)
+ {
+@@ -681,6 +673,9 @@ int wcn36xx_dxe_tx_frame(struct wcn36xx *wcn,
+ ctl->skb = NULL;
+ desc = ctl->desc;
+
++ /* write buffer descriptor */
++ memcpy(ctl->bd_cpu_addr, bd, sizeof(*bd));
++
+ /* Set source address of the BD we send */
+ desc->src_addr_l = ctl->bd_phy_addr;
+
+diff --git a/drivers/net/wireless/ath/wcn36xx/dxe.h b/drivers/net/wireless/ath/wcn36xx/dxe.h
+index 2bc376c5391b..ce580960d109 100644
+--- a/drivers/net/wireless/ath/wcn36xx/dxe.h
++++ b/drivers/net/wireless/ath/wcn36xx/dxe.h
+@@ -452,6 +452,7 @@ struct wcn36xx_dxe_mem_pool {
+ dma_addr_t phy_addr;
+ };
+
++struct wcn36xx_tx_bd;
+ struct wcn36xx_vif;
+ int wcn36xx_dxe_allocate_mem_pools(struct wcn36xx *wcn);
+ void wcn36xx_dxe_free_mem_pools(struct wcn36xx *wcn);
+@@ -463,8 +464,8 @@ void wcn36xx_dxe_deinit(struct wcn36xx *wcn);
+ int wcn36xx_dxe_init_channels(struct wcn36xx *wcn);
+ int wcn36xx_dxe_tx_frame(struct wcn36xx *wcn,
+ struct wcn36xx_vif *vif_priv,
++ struct wcn36xx_tx_bd *bd,
+ struct sk_buff *skb,
+ bool is_low);
+ void wcn36xx_dxe_tx_ack_ind(struct wcn36xx *wcn, u32 status);
+-void *wcn36xx_dxe_get_next_bd(struct wcn36xx *wcn, bool is_low);
+ #endif /* _DXE_H_ */
+diff --git a/drivers/net/wireless/ath/wcn36xx/txrx.c b/drivers/net/wireless/ath/wcn36xx/txrx.c
+index 22304edc5948..b1768ed6b0be 100644
+--- a/drivers/net/wireless/ath/wcn36xx/txrx.c
++++ b/drivers/net/wireless/ath/wcn36xx/txrx.c
+@@ -272,21 +272,9 @@ int wcn36xx_start_tx(struct wcn36xx *wcn,
+ bool is_low = ieee80211_is_data(hdr->frame_control);
+ bool bcast = is_broadcast_ether_addr(hdr->addr1) ||
+ is_multicast_ether_addr(hdr->addr1);
+- struct wcn36xx_tx_bd *bd = wcn36xx_dxe_get_next_bd(wcn, is_low);
+-
+- if (!bd) {
+- /*
+- * TX DXE are used in pairs. One for the BD and one for the
+- * actual frame. The BD DXE's has a preallocated buffer while
+- * the skb ones does not. If this isn't true something is really
+- * wierd. TODO: Recover from this situation
+- */
+-
+- wcn36xx_err("bd address may not be NULL for BD DXE\n");
+- return -EINVAL;
+- }
++ struct wcn36xx_tx_bd bd;
+
+- memset(bd, 0, sizeof(*bd));
++ memset(&bd, 0, sizeof(bd));
+
+ wcn36xx_dbg(WCN36XX_DBG_TX,
+ "tx skb %p len %d fc %04x sn %d %s %s\n",
+@@ -296,10 +284,10 @@ int wcn36xx_start_tx(struct wcn36xx *wcn,
+
+ wcn36xx_dbg_dump(WCN36XX_DBG_TX_DUMP, "", skb->data, skb->len);
+
+- bd->dpu_rf = WCN36XX_BMU_WQ_TX;
++ bd.dpu_rf = WCN36XX_BMU_WQ_TX;
+
+- bd->tx_comp = !!(info->flags & IEEE80211_TX_CTL_REQ_TX_STATUS);
+- if (bd->tx_comp) {
++ bd.tx_comp = !!(info->flags & IEEE80211_TX_CTL_REQ_TX_STATUS);
++ if (bd.tx_comp) {
+ wcn36xx_dbg(WCN36XX_DBG_DXE, "TX_ACK status requested\n");
+ spin_lock_irqsave(&wcn->dxe_lock, flags);
+ if (wcn->tx_ack_skb) {
+@@ -321,13 +309,13 @@ int wcn36xx_start_tx(struct wcn36xx *wcn,
+
+ /* Data frames served first*/
+ if (is_low)
+- wcn36xx_set_tx_data(bd, wcn, &vif_priv, sta_priv, skb, bcast);
++ wcn36xx_set_tx_data(&bd, wcn, &vif_priv, sta_priv, skb, bcast);
+ else
+ /* MGMT and CTRL frames are handeld here*/
+- wcn36xx_set_tx_mgmt(bd, wcn, &vif_priv, skb, bcast);
++ wcn36xx_set_tx_mgmt(&bd, wcn, &vif_priv, skb, bcast);
+
+- buff_to_be((u32 *)bd, sizeof(*bd)/sizeof(u32));
+- bd->tx_bd_sign = 0xbdbdbdbd;
++ buff_to_be((u32 *)&bd, sizeof(bd)/sizeof(u32));
++ bd.tx_bd_sign = 0xbdbdbdbd;
+
+- return wcn36xx_dxe_tx_frame(wcn, vif_priv, skb, is_low);
++ return wcn36xx_dxe_tx_frame(wcn, vif_priv, &bd, skb, is_low);
+ }
diff --git a/wcn36xx-reduce-verbosity-of-drivers-messages.patch b/wcn36xx-reduce-verbosity-of-drivers-messages.patch new file mode 100644 index 000000000..7f9e39b40 --- /dev/null +++ b/wcn36xx-reduce-verbosity-of-drivers-messages.patch @@ -0,0 +1,95 @@ +From patchwork Tue Feb 27 14:05:35 2018 +Content-Type: text/plain; charset="utf-8" +MIME-Version: 1.0 +Content-Transfer-Encoding: 7bit +Subject: [v3] wcn36xx: reduce verbosity of drivers messages +From: Ramon Fried <rfried@codeaurora.org> +X-Patchwork-Id: 10245303 +Message-Id: <20180227140535.4794-1-rfried@codeaurora.org> +To: k.eugene.e@gmail.com, kvalo@codeaurora.org, + wcn36xx@lists.infradead.org, linux-wireless@vger.kernel.org +Cc: Ramon Fried <rfried@codeaurora.org> +Date: Tue, 27 Feb 2018 16:05:35 +0200 + +Whenever the WLAN interface is started the FW +version and caps are printed. +The caps now will be displayed only in debug mode. +Firmware version will be displayed only once on first +startup of the interface. + +Change-Id: I4db6ea7f384fe15eebe4c3ddb1d1ccab00094332 +Signed-off-by: Ramon Fried <rfried@codeaurora.org> +--- +v2: print the firwmare version as info but only + onetime. +v3: change the static variable to a struct variable. + + drivers/net/wireless/ath/wcn36xx/main.c | 3 ++- + drivers/net/wireless/ath/wcn36xx/smd.c | 18 ++++++++++-------- + drivers/net/wireless/ath/wcn36xx/wcn36xx.h | 2 ++ + 3 files changed, 14 insertions(+), 9 deletions(-) + +diff --git a/drivers/net/wireless/ath/wcn36xx/main.c b/drivers/net/wireless/ath/wcn36xx/main.c +index ab5be6d2c691..bfe9062bfa52 100644 +--- a/drivers/net/wireless/ath/wcn36xx/main.c ++++ b/drivers/net/wireless/ath/wcn36xx/main.c +@@ -261,7 +261,7 @@ static void wcn36xx_feat_caps_info(struct wcn36xx *wcn) + + for (i = 0; i < MAX_FEATURE_SUPPORTED; i++) { + if (get_feat_caps(wcn->fw_feat_caps, i)) +- wcn36xx_info("FW Cap %s\n", wcn36xx_get_cap_name(i)); ++ wcn36xx_dbg(WCN36XX_DBG_MAC, "FW Cap %s\n", wcn36xx_get_cap_name(i)); + } + } + +@@ -1283,6 +1283,7 @@ static int wcn36xx_probe(struct platform_device *pdev) + wcn = hw->priv; + wcn->hw = hw; + wcn->dev = &pdev->dev; ++ wcn->first_boot = true; + mutex_init(&wcn->conf_mutex); + mutex_init(&wcn->hal_mutex); + mutex_init(&wcn->scan_lock); +diff --git a/drivers/net/wireless/ath/wcn36xx/smd.c b/drivers/net/wireless/ath/wcn36xx/smd.c +index 2a4871ca9c72..1a5b4d57c0ac 100644 +--- a/drivers/net/wireless/ath/wcn36xx/smd.c ++++ b/drivers/net/wireless/ath/wcn36xx/smd.c +@@ -409,15 +409,17 @@ static int wcn36xx_smd_start_rsp(struct wcn36xx *wcn, void *buf, size_t len) + wcn->fw_minor = rsp->start_rsp_params.version.minor; + wcn->fw_major = rsp->start_rsp_params.version.major; + +- wcn36xx_info("firmware WLAN version '%s' and CRM version '%s'\n", +- wcn->wlan_version, wcn->crm_version); +- +- wcn36xx_info("firmware API %u.%u.%u.%u, %u stations, %u bssids\n", +- wcn->fw_major, wcn->fw_minor, +- wcn->fw_version, wcn->fw_revision, +- rsp->start_rsp_params.stations, +- rsp->start_rsp_params.bssids); ++ if (wcn->first_boot) { ++ wcn->first_boot = false; ++ wcn36xx_info("firmware WLAN version '%s' and CRM version '%s'\n", ++ wcn->wlan_version, wcn->crm_version); + ++ wcn36xx_info("firmware API %u.%u.%u.%u, %u stations, %u bssids\n", ++ wcn->fw_major, wcn->fw_minor, ++ wcn->fw_version, wcn->fw_revision, ++ rsp->start_rsp_params.stations, ++ rsp->start_rsp_params.bssids); ++ } + return 0; + } + +diff --git a/drivers/net/wireless/ath/wcn36xx/wcn36xx.h b/drivers/net/wireless/ath/wcn36xx/wcn36xx.h +index 81017e6703b4..5854adf43f3a 100644 +--- a/drivers/net/wireless/ath/wcn36xx/wcn36xx.h ++++ b/drivers/net/wireless/ath/wcn36xx/wcn36xx.h +@@ -192,6 +192,8 @@ struct wcn36xx { + u8 crm_version[WCN36XX_HAL_VERSION_LENGTH + 1]; + u8 wlan_version[WCN36XX_HAL_VERSION_LENGTH + 1]; + ++ bool first_boot; ++ + /* IRQs */ + int tx_irq; + int rx_irq; |