From: Sasha Levin Date: Sat, 18 Jul 2020 19:15:44 +0000 (-0400) Subject: Fixes for 4.19 X-Git-Tag: v4.4.231~55 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=e951adb6e39fa14d0d86597012b3bb77cee54991;p=thirdparty%2Fkernel%2Fstable-queue.git Fixes for 4.19 Signed-off-by: Sasha Levin --- diff --git a/queue-4.19/acpi-video-use-native-backlight-on-acer-aspire-5783z.patch b/queue-4.19/acpi-video-use-native-backlight-on-acer-aspire-5783z.patch new file mode 100644 index 00000000000..a83508de798 --- /dev/null +++ b/queue-4.19/acpi-video-use-native-backlight-on-acer-aspire-5783z.patch @@ -0,0 +1,46 @@ +From 103913ee907591d8e363a81fd56559d047f23cbd Mon Sep 17 00:00:00 2001 +From: Sasha Levin +Date: Tue, 31 Mar 2020 14:36:23 +0200 +Subject: ACPI: video: Use native backlight on Acer Aspire 5783z + +From: Hans de Goede + +[ Upstream commit 1c8fbc1f9bfb804ef2f0d4ee9397ab800e33f23a ] + +The Acer Aspire 5783z shipped with Windows 7 and as such does not trigger +our "win8 ready" heuristic for prefering the native backlight interface. + +Still ACPI backlight control doesn't work on this model, where as the +native (intel_video) backlight interface does work. Add a quirk to +force using native backlight control on this model. + +Signed-off-by: Hans de Goede +Signed-off-by: Rafael J. Wysocki +Signed-off-by: Sasha Levin +--- + drivers/acpi/video_detect.c | 9 +++++++++ + 1 file changed, 9 insertions(+) + +diff --git a/drivers/acpi/video_detect.c b/drivers/acpi/video_detect.c +index 214c4e2e8ade1..5f0178967d14c 100644 +--- a/drivers/acpi/video_detect.c ++++ b/drivers/acpi/video_detect.c +@@ -328,6 +328,15 @@ static const struct dmi_system_id video_detect_dmi_table[] = { + DMI_MATCH(DMI_PRODUCT_NAME, "Precision 7510"), + }, + }, ++ { ++ .callback = video_detect_force_native, ++ .ident = "Acer Aspire 5738z", ++ .matches = { ++ DMI_MATCH(DMI_SYS_VENDOR, "Acer"), ++ DMI_MATCH(DMI_PRODUCT_NAME, "Aspire 5738"), ++ DMI_MATCH(DMI_BOARD_NAME, "JV50"), ++ }, ++ }, + + /* + * Desktops which falsely report a backlight and which our heuristics +-- +2.25.1 + diff --git a/queue-4.19/acpi-video-use-native-backlight-on-acer-travelmate-5.patch b/queue-4.19/acpi-video-use-native-backlight-on-acer-travelmate-5.patch new file mode 100644 index 00000000000..687eda60b08 --- /dev/null +++ b/queue-4.19/acpi-video-use-native-backlight-on-acer-travelmate-5.patch @@ -0,0 +1,60 @@ +From 80842e3a16eda6787d73e4586d05d76fed4bfffe Mon Sep 17 00:00:00 2001 +From: Sasha Levin +Date: Fri, 22 May 2020 14:22:28 +0200 +Subject: ACPI: video: Use native backlight on Acer TravelMate 5735Z +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +From: Paul Menzel + +[ Upstream commit c41c36e900a337b4132b12ccabc97f5578248b44 ] + +Currently, changing the brightness of the internal display of the Acer +TravelMate 5735Z does not work. Pressing the function keys or changing the +slider, GNOME Shell 3.36.2 displays the OSD (five steps), but the +brightness does not change. + +The Acer TravelMate 5735Z shipped with Windows 7 and as such does not +trigger our "win8 ready" heuristic for preferring the native backlight +interface. + +Still ACPI backlight control doesn't work on this model, where as the +native (intel_video) backlight interface does work by adding +`acpi_backlight=native` or `acpi_backlight=none` to Linux’ command line. + +So, add a quirk to force using native backlight control on this model. + +Link: https://bugzilla.kernel.org/show_bug.cgi?id=207835 +Reviewed-by: Hans de Goede +Signed-off-by: Paul Menzel +Signed-off-by: Rafael J. Wysocki +Signed-off-by: Sasha Levin +--- + drivers/acpi/video_detect.c | 10 ++++++++++ + 1 file changed, 10 insertions(+) + +diff --git a/drivers/acpi/video_detect.c b/drivers/acpi/video_detect.c +index 5f0178967d14c..ab1da5e6e7e3e 100644 +--- a/drivers/acpi/video_detect.c ++++ b/drivers/acpi/video_detect.c +@@ -337,6 +337,16 @@ static const struct dmi_system_id video_detect_dmi_table[] = { + DMI_MATCH(DMI_BOARD_NAME, "JV50"), + }, + }, ++ { ++ /* https://bugzilla.kernel.org/show_bug.cgi?id=207835 */ ++ .callback = video_detect_force_native, ++ .ident = "Acer TravelMate 5735Z", ++ .matches = { ++ DMI_MATCH(DMI_SYS_VENDOR, "Acer"), ++ DMI_MATCH(DMI_PRODUCT_NAME, "TravelMate 5735Z"), ++ DMI_MATCH(DMI_BOARD_NAME, "BA51_MV"), ++ }, ++ }, + + /* + * Desktops which falsely report a backlight and which our heuristics +-- +2.25.1 + diff --git a/queue-4.19/alsa-usb-audio-add-registration-quirk-for-kingston-h.patch b/queue-4.19/alsa-usb-audio-add-registration-quirk-for-kingston-h.patch new file mode 100644 index 00000000000..347751dbee6 --- /dev/null +++ b/queue-4.19/alsa-usb-audio-add-registration-quirk-for-kingston-h.patch @@ -0,0 +1,38 @@ +From ed33893b7739d5184788989c6a08e7e6fc9e6e59 Mon Sep 17 00:00:00 2001 +From: Sasha Levin +Date: Sat, 4 Apr 2020 17:38:43 +0200 +Subject: ALSA: usb-audio: Add registration quirk for Kingston HyperX Cloud + Alpha S + +From: Emmanuel Pescosta + +[ Upstream commit fd60e0683e8e9107e09cd2e4798f3e27e85d2705 ] + +Similar to the Kingston HyperX AMP, the Kingston HyperX Cloud +Alpha S (0951:16d8) uses two interfaces, but only the second +interface contains the capture stream. This patch delays the +registration until the second interface appears. + +Signed-off-by: Emmanuel Pescosta +Link: https://lore.kernel.org/r/20200404153843.9288-1-emmanuelpescosta099@gmail.com +Signed-off-by: Takashi Iwai +Signed-off-by: Sasha Levin +--- + sound/usb/quirks.c | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/sound/usb/quirks.c b/sound/usb/quirks.c +index 79c3787ad8fd8..15d7d1e92245c 100644 +--- a/sound/usb/quirks.c ++++ b/sound/usb/quirks.c +@@ -1527,6 +1527,7 @@ struct registration_quirk { + + static const struct registration_quirk registration_quirks[] = { + REG_QUIRK_ENTRY(0x0951, 0x16d8, 2), /* Kingston HyperX AMP */ ++ REG_QUIRK_ENTRY(0x0951, 0x16ed, 2), /* Kingston HyperX Cloud Alpha S */ + { 0 } /* terminator */ + }; + +-- +2.25.1 + diff --git a/queue-4.19/alsa-usb-audio-add-registration-quirk-for-kingston-h.patch-7751 b/queue-4.19/alsa-usb-audio-add-registration-quirk-for-kingston-h.patch-7751 new file mode 100644 index 00000000000..3fba7491c84 --- /dev/null +++ b/queue-4.19/alsa-usb-audio-add-registration-quirk-for-kingston-h.patch-7751 @@ -0,0 +1,39 @@ +From 142a8b7a21d4adc0a951a5e49699b862795c1fa2 Mon Sep 17 00:00:00 2001 +From: Sasha Levin +Date: Fri, 19 Jun 2020 13:48:22 +0200 +Subject: ALSA: usb-audio: Add registration quirk for Kingston HyperX Cloud + Flight S + +From: Christoffer Nielsen + +[ Upstream commit 73094608b8e214952444fb104651704c98a37aeb ] + +Similar to the Kingston HyperX AMP, the Kingston HyperX Cloud +Alpha S (0951:0x16ea) uses two interfaces, but only the second +interface contains the capture stream. This patch delays the +registration until the second interface appears. + +Signed-off-by: Christoffer Nielsen +Cc: +Link: https://lore.kernel.org/r/CAOtG2YHOM3zy+ed9KS-J4HkZo_QGzcUG9MigSp4e4_-13r6B=Q@mail.gmail.com +Signed-off-by: Takashi Iwai +Signed-off-by: Sasha Levin +--- + sound/usb/quirks.c | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/sound/usb/quirks.c b/sound/usb/quirks.c +index 15d7d1e92245c..e9ec6166acc65 100644 +--- a/sound/usb/quirks.c ++++ b/sound/usb/quirks.c +@@ -1528,6 +1528,7 @@ struct registration_quirk { + static const struct registration_quirk registration_quirks[] = { + REG_QUIRK_ENTRY(0x0951, 0x16d8, 2), /* Kingston HyperX AMP */ + REG_QUIRK_ENTRY(0x0951, 0x16ed, 2), /* Kingston HyperX Cloud Alpha S */ ++ REG_QUIRK_ENTRY(0x0951, 0x16ea, 2), /* Kingston HyperX Cloud Flight S */ + { 0 } /* terminator */ + }; + +-- +2.25.1 + diff --git a/queue-4.19/alsa-usb-audio-create-a-registration-quirk-for-kings.patch b/queue-4.19/alsa-usb-audio-create-a-registration-quirk-for-kings.patch new file mode 100644 index 00000000000..12f64eeea92 --- /dev/null +++ b/queue-4.19/alsa-usb-audio-create-a-registration-quirk-for-kings.patch @@ -0,0 +1,87 @@ +From 2206c4d992b459169d0aa6b258b310a0a763921d Mon Sep 17 00:00:00 2001 +From: Sasha Levin +Date: Sat, 14 Mar 2020 12:54:49 -0400 +Subject: ALSA: usb-audio: Create a registration quirk for Kingston HyperX Amp + (0951:16d8) + +From: Chris Wulff + +[ Upstream commit 55f7326170d9e83e2d828591938e1101982a679c ] + +Create a quirk that allows special processing and/or +skipping the call to snd_card_register. + +For HyperX AMP, which uses two interfaces, but only has +a capture stream in the second, this allows the capture +stream to merge with the first PCM. + +Signed-off-by: Chris Wulff +Link: https://lore.kernel.org/r/20200314165449.4086-3-crwulff@gmail.com +Signed-off-by: Takashi Iwai +Signed-off-by: Sasha Levin +--- + sound/usb/card.c | 12 ++++++++---- + sound/usb/quirks.c | 14 ++++++++++++++ + sound/usb/quirks.h | 3 +++ + 3 files changed, 25 insertions(+), 4 deletions(-) + +diff --git a/sound/usb/card.c b/sound/usb/card.c +index 2644a5ae2b757..6615734d29911 100644 +--- a/sound/usb/card.c ++++ b/sound/usb/card.c +@@ -668,10 +668,14 @@ static int usb_audio_probe(struct usb_interface *intf, + goto __error; + } + +- /* we are allowed to call snd_card_register() many times */ +- err = snd_card_register(chip->card); +- if (err < 0) +- goto __error; ++ /* we are allowed to call snd_card_register() many times, but first ++ * check to see if a device needs to skip it or do anything special ++ */ ++ if (snd_usb_registration_quirk(chip, ifnum) == 0) { ++ err = snd_card_register(chip->card); ++ if (err < 0) ++ goto __error; ++ } + + usb_chip[chip->index] = chip; + chip->num_interfaces++; +diff --git a/sound/usb/quirks.c b/sound/usb/quirks.c +index 8b5bc809efd3f..a95fbdbfbd05f 100644 +--- a/sound/usb/quirks.c ++++ b/sound/usb/quirks.c +@@ -1508,3 +1508,17 @@ void snd_usb_audioformat_attributes_quirk(struct snd_usb_audio *chip, + break; + } + } ++ ++int snd_usb_registration_quirk(struct snd_usb_audio *chip, ++ int iface) ++{ ++ switch (chip->usb_id) { ++ case USB_ID(0x0951, 0x16d8): /* Kingston HyperX AMP */ ++ /* Register only when we reach interface 2 so that streams can ++ * merge correctly into PCMs from interface 0 ++ */ ++ return (iface != 2); ++ } ++ /* Register as normal */ ++ return 0; ++} +diff --git a/sound/usb/quirks.h b/sound/usb/quirks.h +index a80e0ddd07364..dc02c9d80e991 100644 +--- a/sound/usb/quirks.h ++++ b/sound/usb/quirks.h +@@ -46,4 +46,7 @@ void snd_usb_audioformat_attributes_quirk(struct snd_usb_audio *chip, + struct audioformat *fp, + int stream); + ++int snd_usb_registration_quirk(struct snd_usb_audio *chip, ++ int iface); ++ + #endif /* __USBAUDIO_QUIRKS_H */ +-- +2.25.1 + diff --git a/queue-4.19/alsa-usb-audio-rewrite-registration-quirk-handling.patch b/queue-4.19/alsa-usb-audio-rewrite-registration-quirk-handling.patch new file mode 100644 index 00000000000..feefabec448 --- /dev/null +++ b/queue-4.19/alsa-usb-audio-rewrite-registration-quirk-handling.patch @@ -0,0 +1,102 @@ +From 8bbc6ff18035d55cdbf8529d20837157db27391f Mon Sep 17 00:00:00 2001 +From: Sasha Levin +Date: Wed, 25 Mar 2020 11:33:19 +0100 +Subject: ALSA: usb-audio: Rewrite registration quirk handling + +From: Takashi Iwai + +[ Upstream commit d8695bc5b1fe88305396b1f788d3b5f218e28a30 ] + +A slight refactoring of the registration quirk code. Now it uses the +table lookup for easy additions in future. Also the return type was +changed to bool, and got a few more comments. + +Link: https://lore.kernel.org/r/20200325103322.2508-2-tiwai@suse.de +Signed-off-by: Takashi Iwai +Signed-off-by: Sasha Levin +--- + sound/usb/card.c | 2 +- + sound/usb/quirks.c | 40 ++++++++++++++++++++++++++++++---------- + sound/usb/quirks.h | 3 +-- + 3 files changed, 32 insertions(+), 13 deletions(-) + +diff --git a/sound/usb/card.c b/sound/usb/card.c +index 6615734d29911..ba096cb4a53e4 100644 +--- a/sound/usb/card.c ++++ b/sound/usb/card.c +@@ -671,7 +671,7 @@ static int usb_audio_probe(struct usb_interface *intf, + /* we are allowed to call snd_card_register() many times, but first + * check to see if a device needs to skip it or do anything special + */ +- if (snd_usb_registration_quirk(chip, ifnum) == 0) { ++ if (!snd_usb_registration_quirk(chip, ifnum)) { + err = snd_card_register(chip->card); + if (err < 0) + goto __error; +diff --git a/sound/usb/quirks.c b/sound/usb/quirks.c +index a95fbdbfbd05f..79c3787ad8fd8 100644 +--- a/sound/usb/quirks.c ++++ b/sound/usb/quirks.c +@@ -1509,16 +1509,36 @@ void snd_usb_audioformat_attributes_quirk(struct snd_usb_audio *chip, + } + } + +-int snd_usb_registration_quirk(struct snd_usb_audio *chip, +- int iface) ++/* ++ * registration quirk: ++ * the registration is skipped if a device matches with the given ID, ++ * unless the interface reaches to the defined one. This is for delaying ++ * the registration until the last known interface, so that the card and ++ * devices appear at the same time. ++ */ ++ ++struct registration_quirk { ++ unsigned int usb_id; /* composed via USB_ID() */ ++ unsigned int interface; /* the interface to trigger register */ ++}; ++ ++#define REG_QUIRK_ENTRY(vendor, product, iface) \ ++ { .usb_id = USB_ID(vendor, product), .interface = (iface) } ++ ++static const struct registration_quirk registration_quirks[] = { ++ REG_QUIRK_ENTRY(0x0951, 0x16d8, 2), /* Kingston HyperX AMP */ ++ { 0 } /* terminator */ ++}; ++ ++/* return true if skipping registration */ ++bool snd_usb_registration_quirk(struct snd_usb_audio *chip, int iface) + { +- switch (chip->usb_id) { +- case USB_ID(0x0951, 0x16d8): /* Kingston HyperX AMP */ +- /* Register only when we reach interface 2 so that streams can +- * merge correctly into PCMs from interface 0 +- */ +- return (iface != 2); +- } ++ const struct registration_quirk *q; ++ ++ for (q = registration_quirks; q->usb_id; q++) ++ if (chip->usb_id == q->usb_id) ++ return iface != q->interface; ++ + /* Register as normal */ +- return 0; ++ return false; + } +diff --git a/sound/usb/quirks.h b/sound/usb/quirks.h +index dc02c9d80e991..1efa6c968532f 100644 +--- a/sound/usb/quirks.h ++++ b/sound/usb/quirks.h +@@ -46,7 +46,6 @@ void snd_usb_audioformat_attributes_quirk(struct snd_usb_audio *chip, + struct audioformat *fp, + int stream); + +-int snd_usb_registration_quirk(struct snd_usb_audio *chip, +- int iface); ++bool snd_usb_registration_quirk(struct snd_usb_audio *chip, int iface); + + #endif /* __USBAUDIO_QUIRKS_H */ +-- +2.25.1 + diff --git a/queue-4.19/arm-at91-pm-add-quirk-for-sam9x60-s-ulp1.patch b/queue-4.19/arm-at91-pm-add-quirk-for-sam9x60-s-ulp1.patch new file mode 100644 index 00000000000..5871ce4b4ac --- /dev/null +++ b/queue-4.19/arm-at91-pm-add-quirk-for-sam9x60-s-ulp1.patch @@ -0,0 +1,38 @@ +From 73cacc99a8042e7984da168591045f8c0f027d31 Mon Sep 17 00:00:00 2001 +From: Sasha Levin +Date: Mon, 20 Jan 2020 14:10:08 +0200 +Subject: ARM: at91: pm: add quirk for sam9x60's ulp1 + +From: Claudiu Beznea + +[ Upstream commit bb1a0e87e1c54cd884e9b92b1cec06b186edc7a0 ] + +On SAM9X60 2 nop operations has to be introduced after setting +WAITMODE bit in CKGR_MOR. + +Signed-off-by: Claudiu Beznea +Signed-off-by: Alexandre Belloni +Link: https://lore.kernel.org/r/1579522208-19523-9-git-send-email-claudiu.beznea@microchip.com +Signed-off-by: Sasha Levin +--- + arch/arm/mach-at91/pm_suspend.S | 4 ++++ + 1 file changed, 4 insertions(+) + +diff --git a/arch/arm/mach-at91/pm_suspend.S b/arch/arm/mach-at91/pm_suspend.S +index a7c6ae13c9453..d650a5a1dfee9 100644 +--- a/arch/arm/mach-at91/pm_suspend.S ++++ b/arch/arm/mach-at91/pm_suspend.S +@@ -220,6 +220,10 @@ ENDPROC(at91_backup_mode) + orr tmp1, tmp1, #AT91_PMC_KEY + str tmp1, [pmc, #AT91_CKGR_MOR] + ++ /* Quirk for SAM9X60's PMC */ ++ nop ++ nop ++ + wait_mckrdy + + /* Enable the crystal oscillator */ +-- +2.25.1 + diff --git a/queue-4.19/doc-dt-bindings-usb-dwc3-update-entries-for-disablin.patch b/queue-4.19/doc-dt-bindings-usb-dwc3-update-entries-for-disablin.patch new file mode 100644 index 00000000000..fad0a035248 --- /dev/null +++ b/queue-4.19/doc-dt-bindings-usb-dwc3-update-entries-for-disablin.patch @@ -0,0 +1,43 @@ +From 81c91ea1ff1ad431811e6bc282d0dd81853a95ac Mon Sep 17 00:00:00 2001 +From: Sasha Levin +Date: Fri, 21 Feb 2020 10:15:30 +0100 +Subject: doc: dt: bindings: usb: dwc3: Update entries for disabling SS + instances in park mode + +From: Neil Armstrong + +[ Upstream commit 3d157c28d2289edf0439e8308e8de3a06acaaf0e ] + +This patch updates the documentation with the information related +to the quirks that needs to be added for disabling all SuperSpeed XHCI +instances in park mode. + +Cc: Dongjin Kim +Cc: Jianxin Pan +Cc: Thinh Nguyen +Cc: Jun Li +Reported-by: Tim +Signed-off-by: Neil Armstrong +Acked-by: Rob Herring +Signed-off-by: Felipe Balbi +Signed-off-by: Sasha Levin +--- + Documentation/devicetree/bindings/usb/dwc3.txt | 2 ++ + 1 file changed, 2 insertions(+) + +diff --git a/Documentation/devicetree/bindings/usb/dwc3.txt b/Documentation/devicetree/bindings/usb/dwc3.txt +index 3e4c38b806ac1..ae46c0ac9f118 100644 +--- a/Documentation/devicetree/bindings/usb/dwc3.txt ++++ b/Documentation/devicetree/bindings/usb/dwc3.txt +@@ -68,6 +68,8 @@ Optional properties: + from P0 to P1/P2/P3 without delay. + - snps,dis-tx-ipgap-linecheck-quirk: when set, disable u2mac linestate check + during HS transmit. ++ - snps,parkmode-disable-ss-quirk: when set, all SuperSpeed bus instances in ++ park mode are disabled. + - snps,dis_metastability_quirk: when set, disable metastability workaround. + CAUTION: use only if you are absolutely sure of it. + - snps,is-utmi-l1-suspend: true when DWC3 asserts output signal +-- +2.25.1 + diff --git a/queue-4.19/efi-arm-defer-probe-of-pcie-backed-efifb-on-dt-syste.patch b/queue-4.19/efi-arm-defer-probe-of-pcie-backed-efifb-on-dt-syste.patch new file mode 100644 index 00000000000..4892e83435e --- /dev/null +++ b/queue-4.19/efi-arm-defer-probe-of-pcie-backed-efifb-on-dt-syste.patch @@ -0,0 +1,168 @@ +From 37f50b36e616f403b8d4cdee13cf0ba612275b7b Mon Sep 17 00:00:00 2001 +From: Sasha Levin +Date: Mon, 13 Jan 2020 18:22:40 +0100 +Subject: efi/arm: Defer probe of PCIe backed efifb on DT systems + +From: Ard Biesheuvel + +[ Upstream commit 64c8a0cd0a535891d5905c3a1651150f0f141439 ] + +The new of_devlink support breaks PCIe probing on ARM platforms booting +via UEFI if the firmware exposes a EFI framebuffer that is backed by a +PCI device. The reason is that the probing order gets reversed, +resulting in a resource conflict on the framebuffer memory window when +the PCIe probes last, causing it to give up entirely. + +Given that we rely on PCI quirks to deal with EFI framebuffers that get +moved around in memory, we cannot simply drop the memory reservation, so +instead, let's use the device link infrastructure to register this +dependency, and force the probing to occur in the expected order. + +Co-developed-by: Saravana Kannan +Signed-off-by: Ard Biesheuvel +Signed-off-by: Saravana Kannan +Signed-off-by: Ard Biesheuvel +Signed-off-by: Ingo Molnar +Link: https://lore.kernel.org/r/20200113172245.27925-9-ardb@kernel.org +Signed-off-by: Sasha Levin +--- + drivers/firmware/efi/arm-init.c | 107 ++++++++++++++++++++++++++++++-- + 1 file changed, 103 insertions(+), 4 deletions(-) + +diff --git a/drivers/firmware/efi/arm-init.c b/drivers/firmware/efi/arm-init.c +index 1a6a77df8a5e8..85533ec55396a 100644 +--- a/drivers/firmware/efi/arm-init.c ++++ b/drivers/firmware/efi/arm-init.c +@@ -14,10 +14,12 @@ + #define pr_fmt(fmt) "efi: " fmt + + #include ++#include + #include + #include + #include + #include ++#include + #include + #include + #include +@@ -271,15 +273,112 @@ void __init efi_init(void) + efi_memmap_unmap(); + } + ++static bool efifb_overlaps_pci_range(const struct of_pci_range *range) ++{ ++ u64 fb_base = screen_info.lfb_base; ++ ++ if (screen_info.capabilities & VIDEO_CAPABILITY_64BIT_BASE) ++ fb_base |= (u64)(unsigned long)screen_info.ext_lfb_base << 32; ++ ++ return fb_base >= range->cpu_addr && ++ fb_base < (range->cpu_addr + range->size); ++} ++ ++static struct device_node *find_pci_overlap_node(void) ++{ ++ struct device_node *np; ++ ++ for_each_node_by_type(np, "pci") { ++ struct of_pci_range_parser parser; ++ struct of_pci_range range; ++ int err; ++ ++ err = of_pci_range_parser_init(&parser, np); ++ if (err) { ++ pr_warn("of_pci_range_parser_init() failed: %d\n", err); ++ continue; ++ } ++ ++ for_each_of_pci_range(&parser, &range) ++ if (efifb_overlaps_pci_range(&range)) ++ return np; ++ } ++ return NULL; ++} ++ ++/* ++ * If the efifb framebuffer is backed by a PCI graphics controller, we have ++ * to ensure that this relation is expressed using a device link when ++ * running in DT mode, or the probe order may be reversed, resulting in a ++ * resource reservation conflict on the memory window that the efifb ++ * framebuffer steals from the PCIe host bridge. ++ */ ++static int efifb_add_links(const struct fwnode_handle *fwnode, ++ struct device *dev) ++{ ++ struct device_node *sup_np; ++ struct device *sup_dev; ++ ++ sup_np = find_pci_overlap_node(); ++ ++ /* ++ * If there's no PCI graphics controller backing the efifb, we are ++ * done here. ++ */ ++ if (!sup_np) ++ return 0; ++ ++ sup_dev = get_dev_from_fwnode(&sup_np->fwnode); ++ of_node_put(sup_np); ++ ++ /* ++ * Return -ENODEV if the PCI graphics controller device hasn't been ++ * registered yet. This ensures that efifb isn't allowed to probe ++ * and this function is retried again when new devices are ++ * registered. ++ */ ++ if (!sup_dev) ++ return -ENODEV; ++ ++ /* ++ * If this fails, retrying this function at a later point won't ++ * change anything. So, don't return an error after this. ++ */ ++ if (!device_link_add(dev, sup_dev, 0)) ++ dev_warn(dev, "device_link_add() failed\n"); ++ ++ put_device(sup_dev); ++ ++ return 0; ++} ++ ++static const struct fwnode_operations efifb_fwnode_ops = { ++ .add_links = efifb_add_links, ++}; ++ ++static struct fwnode_handle efifb_fwnode = { ++ .ops = &efifb_fwnode_ops, ++}; ++ + static int __init register_gop_device(void) + { +- void *pd; ++ struct platform_device *pd; ++ int err; + + if (screen_info.orig_video_isVGA != VIDEO_TYPE_EFI) + return 0; + +- pd = platform_device_register_data(NULL, "efi-framebuffer", 0, +- &screen_info, sizeof(screen_info)); +- return PTR_ERR_OR_ZERO(pd); ++ pd = platform_device_alloc("efi-framebuffer", 0); ++ if (!pd) ++ return -ENOMEM; ++ ++ if (IS_ENABLED(CONFIG_PCI)) ++ pd->dev.fwnode = &efifb_fwnode; ++ ++ err = platform_device_add_data(pd, &screen_info, sizeof(screen_info)); ++ if (err) ++ return err; ++ ++ return platform_device_add(pd); + } + subsys_initcall(register_gop_device); +-- +2.25.1 + diff --git a/queue-4.19/hid-quirks-remove-ite-8595-entry-from-hid_have_speci.patch b/queue-4.19/hid-quirks-remove-ite-8595-entry-from-hid_have_speci.patch new file mode 100644 index 00000000000..4ba294758d4 --- /dev/null +++ b/queue-4.19/hid-quirks-remove-ite-8595-entry-from-hid_have_speci.patch @@ -0,0 +1,41 @@ +From 3ed80bf0999c48eb243c1d8b22484ba01d5ca85a Mon Sep 17 00:00:00 2001 +From: Sasha Levin +Date: Fri, 31 Jan 2020 13:46:25 +0100 +Subject: HID: quirks: Remove ITE 8595 entry from hid_have_special_driver + +From: Hans de Goede + +[ Upstream commit 3045696d0ce663d67c95dcb8206d3de57f6841ec ] + +The ITE 8595 chip used in various 2-in-1 keyboard docks works fine with +the hid-generic driver (minus the RF_KILL key) and also keeps working fine +when swapping drivers, so there is no need to have it in the +hid_have_special_driver list. + +Note the other 2 USB ids in hid-ite.c were never added to +hid_have_special_driver. + +Signed-off-by: Hans de Goede +Signed-off-by: Jiri Kosina +Signed-off-by: Sasha Levin +--- + drivers/hid/hid-quirks.c | 3 --- + 1 file changed, 3 deletions(-) + +diff --git a/drivers/hid/hid-quirks.c b/drivers/hid/hid-quirks.c +index f4bab7004aff7..7216285659566 100644 +--- a/drivers/hid/hid-quirks.c ++++ b/drivers/hid/hid-quirks.c +@@ -400,9 +400,6 @@ static const struct hid_device_id hid_have_special_driver[] = { + { HID_USB_DEVICE(USB_VENDOR_ID_HOLTEK_ALT, USB_DEVICE_ID_HOLTEK_ALT_MOUSE_A081) }, + { HID_USB_DEVICE(USB_VENDOR_ID_HOLTEK_ALT, USB_DEVICE_ID_HOLTEK_ALT_MOUSE_A0C2) }, + #endif +-#if IS_ENABLED(CONFIG_HID_ITE) +- { HID_USB_DEVICE(USB_VENDOR_ID_ITE, USB_DEVICE_ID_ITE8595) }, +-#endif + #if IS_ENABLED(CONFIG_HID_ICADE) + { HID_BLUETOOTH_DEVICE(USB_VENDOR_ID_ION, USB_DEVICE_ID_ICADE) }, + #endif +-- +2.25.1 + diff --git a/queue-4.19/input-mms114-add-extra-compatible-for-mms345l.patch b/queue-4.19/input-mms114-add-extra-compatible-for-mms345l.patch new file mode 100644 index 00000000000..62f469fa418 --- /dev/null +++ b/queue-4.19/input-mms114-add-extra-compatible-for-mms345l.patch @@ -0,0 +1,88 @@ +From 9368cd6b6928cde02fa92f9a9bc5c105ebe42218 Mon Sep 17 00:00:00 2001 +From: Sasha Levin +Date: Sat, 25 Apr 2020 13:06:31 -0700 +Subject: Input: mms114 - add extra compatible for mms345l + +From: Stephan Gerhold + +[ Upstream commit 7842087b0196d674ed877d768de8f2a34d7fdc53 ] + +MMS345L is another first generation touch screen from Melfas, +which uses mostly the same registers as MMS152. + +However, there is some garbage printed during initialization. +Apparently MMS345L does not have the MMS152_COMPAT_GROUP register +that is read+printed during initialization. + + TSP FW Rev: bootloader 0x6 / core 0x26 / config 0x26, Compat group: \x06 + +On earlier kernel versions the compat group was actually printed as +an ASCII control character, seems like it gets escaped now. + +But we probably shouldn't print something from a random register. + +Add a separate "melfas,mms345l" compatible that avoids reading +from the MMS152_COMPAT_GROUP register. This might also help in case +there is some other device-specific quirk in the future. + +Signed-off-by: Stephan Gerhold +Reviewed-by: Andi Shyti +Link: https://lore.kernel.org/r/20200423102431.2715-1-stephan@gerhold.net +Signed-off-by: Dmitry Torokhov +Signed-off-by: Sasha Levin +--- + drivers/input/touchscreen/mms114.c | 17 +++++++++++++++-- + 1 file changed, 15 insertions(+), 2 deletions(-) + +diff --git a/drivers/input/touchscreen/mms114.c b/drivers/input/touchscreen/mms114.c +index fca908ba4841f..fb28fd2d6f1c5 100644 +--- a/drivers/input/touchscreen/mms114.c ++++ b/drivers/input/touchscreen/mms114.c +@@ -54,6 +54,7 @@ + enum mms_type { + TYPE_MMS114 = 114, + TYPE_MMS152 = 152, ++ TYPE_MMS345L = 345, + }; + + struct mms114_data { +@@ -250,6 +251,15 @@ static int mms114_get_version(struct mms114_data *data) + int error; + + switch (data->type) { ++ case TYPE_MMS345L: ++ error = __mms114_read_reg(data, MMS152_FW_REV, 3, buf); ++ if (error) ++ return error; ++ ++ dev_info(dev, "TSP FW Rev: bootloader 0x%x / core 0x%x / config 0x%x\n", ++ buf[0], buf[1], buf[2]); ++ break; ++ + case TYPE_MMS152: + error = __mms114_read_reg(data, MMS152_FW_REV, 3, buf); + if (error) +@@ -287,8 +297,8 @@ static int mms114_setup_regs(struct mms114_data *data) + if (error < 0) + return error; + +- /* MMS152 has no configuration or power on registers */ +- if (data->type == TYPE_MMS152) ++ /* Only MMS114 has configuration and power on registers */ ++ if (data->type != TYPE_MMS114) + return 0; + + error = mms114_set_active(data, true); +@@ -598,6 +608,9 @@ static const struct of_device_id mms114_dt_match[] = { + }, { + .compatible = "melfas,mms152", + .data = (void *)TYPE_MMS152, ++ }, { ++ .compatible = "melfas,mms345l", ++ .data = (void *)TYPE_MMS345L, + }, + { } + }; +-- +2.25.1 + diff --git a/queue-4.19/mmc-sdhci-do-not-enable-card-detect-interrupt-for-gp.patch b/queue-4.19/mmc-sdhci-do-not-enable-card-detect-interrupt-for-gp.patch new file mode 100644 index 00000000000..b3be8e1a7e7 --- /dev/null +++ b/queue-4.19/mmc-sdhci-do-not-enable-card-detect-interrupt-for-gp.patch @@ -0,0 +1,42 @@ +From d7dff79ca2147ebe6700d061dea4ff846bcf153c Mon Sep 17 00:00:00 2001 +From: Sasha Levin +Date: Wed, 19 Feb 2020 16:22:40 +0800 +Subject: mmc: sdhci: do not enable card detect interrupt for gpio cd type + +From: Haibo Chen + +[ Upstream commit e65bb38824711559844ba932132f417bc5a355e2 ] + +Except SDHCI_QUIRK_BROKEN_CARD_DETECTION and MMC_CAP_NONREMOVABLE, +we also do not need to handle controller native card detect interrupt +for gpio cd type. +If we wrong enabled the card detect interrupt for gpio case, it will +cause a lot of unexpected card detect interrupts during data transfer +which should not happen. + +Signed-off-by: Haibo Chen +Acked-by: Adrian Hunter +Reviewed-by: Linus Walleij +Link: https://lore.kernel.org/r/1582100563-20555-2-git-send-email-haibo.chen@nxp.com +Signed-off-by: Ulf Hansson +Signed-off-by: Sasha Levin +--- + drivers/mmc/host/sdhci.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/drivers/mmc/host/sdhci.c b/drivers/mmc/host/sdhci.c +index 5a7fd89a8f2b1..499a3d2a8e315 100644 +--- a/drivers/mmc/host/sdhci.c ++++ b/drivers/mmc/host/sdhci.c +@@ -133,7 +133,7 @@ static void sdhci_set_card_detection(struct sdhci_host *host, bool enable) + u32 present; + + if ((host->quirks & SDHCI_QUIRK_BROKEN_CARD_DETECTION) || +- !mmc_card_is_removable(host->mmc)) ++ !mmc_card_is_removable(host->mmc) || mmc_can_gpio_cd(host->mmc)) + return; + + if (enable) { +-- +2.25.1 + diff --git a/queue-4.19/net-sfp-add-some-quirks-for-gpon-modules.patch b/queue-4.19/net-sfp-add-some-quirks-for-gpon-modules.patch new file mode 100644 index 00000000000..4b202961048 --- /dev/null +++ b/queue-4.19/net-sfp-add-some-quirks-for-gpon-modules.patch @@ -0,0 +1,65 @@ +From 9741efca873338280c7fd24ec376dcab6b8e2106 Mon Sep 17 00:00:00 2001 +From: Sasha Levin +Date: Wed, 20 Nov 2019 11:42:47 +0000 +Subject: net: sfp: add some quirks for GPON modules + +From: Russell King + +[ Upstream commit b0eae33b2583dceb36224619f9fd85e6140ae594 ] + +Marc Micalizzi reports that Huawei MA5671A and Alcatel/Lucent G-010S-P +modules are capable of 2500base-X, but incorrectly report their +capabilities in the EEPROM. It seems rather common that GPON modules +mis-report. + +Let's fix these modules by adding some quirks. + +Signed-off-by: Russell King +Reviewed-by: Andrew Lunn +Reviewed-by: Florian Fainelli +Signed-off-by: David S. Miller +Signed-off-by: Sasha Levin +--- + drivers/net/phy/sfp-bus.c | 25 +++++++++++++++++++++++++ + 1 file changed, 25 insertions(+) + +diff --git a/drivers/net/phy/sfp-bus.c b/drivers/net/phy/sfp-bus.c +index bd3ea01bff0b8..1fe7783c28712 100644 +--- a/drivers/net/phy/sfp-bus.c ++++ b/drivers/net/phy/sfp-bus.c +@@ -37,7 +37,32 @@ struct sfp_bus { + bool started; + }; + ++static void sfp_quirk_2500basex(const struct sfp_eeprom_id *id, ++ unsigned long *modes) ++{ ++ phylink_set(modes, 2500baseX_Full); ++} ++ + static const struct sfp_quirk sfp_quirks[] = { ++ { ++ // Alcatel Lucent G-010S-P can operate at 2500base-X, but ++ // incorrectly report 2500MBd NRZ in their EEPROM ++ .vendor = "ALCATELLUCENT", ++ .part = "G010SP", ++ .modes = sfp_quirk_2500basex, ++ }, { ++ // Alcatel Lucent G-010S-A can operate at 2500base-X, but ++ // report 3.2GBd NRZ in their EEPROM ++ .vendor = "ALCATELLUCENT", ++ .part = "3FE46541AA", ++ .modes = sfp_quirk_2500basex, ++ }, { ++ // Huawei MA5671A can operate at 2500base-X, but report 1.2GBd ++ // NRZ in their EEPROM ++ .vendor = "HUAWEI", ++ .part = "MA5671A", ++ .modes = sfp_quirk_2500basex, ++ }, + }; + + static size_t sfp_strlen(const char *str, size_t maxlen) +-- +2.25.1 + diff --git a/queue-4.19/net-sfp-add-support-for-module-quirks.patch b/queue-4.19/net-sfp-add-support-for-module-quirks.patch new file mode 100644 index 00000000000..80714d45af5 --- /dev/null +++ b/queue-4.19/net-sfp-add-support-for-module-quirks.patch @@ -0,0 +1,124 @@ +From afa007c999ef878491cf715ecbb4055b5ed7a18e Mon Sep 17 00:00:00 2001 +From: Sasha Levin +Date: Wed, 20 Nov 2019 11:42:42 +0000 +Subject: net: sfp: add support for module quirks + +From: Russell King + +[ Upstream commit b34bb2cb5b62c7397c28fcc335e8047a687eada4 ] + +Add support for applying module quirks to the list of supported +ethtool link modes. + +Signed-off-by: Russell King +Reviewed-by: Andrew Lunn +Reviewed-by: Florian Fainelli +Signed-off-by: David S. Miller +Signed-off-by: Sasha Levin +--- + drivers/net/phy/sfp-bus.c | 54 +++++++++++++++++++++++++++++++++++++++ + 1 file changed, 54 insertions(+) + +diff --git a/drivers/net/phy/sfp-bus.c b/drivers/net/phy/sfp-bus.c +index fef701bfad62e..bd3ea01bff0b8 100644 +--- a/drivers/net/phy/sfp-bus.c ++++ b/drivers/net/phy/sfp-bus.c +@@ -8,6 +8,12 @@ + + #include "sfp.h" + ++struct sfp_quirk { ++ const char *vendor; ++ const char *part; ++ void (*modes)(const struct sfp_eeprom_id *id, unsigned long *modes); ++}; ++ + /** + * struct sfp_bus - internal representation of a sfp bus + */ +@@ -20,6 +26,7 @@ struct sfp_bus { + const struct sfp_socket_ops *socket_ops; + struct device *sfp_dev; + struct sfp *sfp; ++ const struct sfp_quirk *sfp_quirk; + + const struct sfp_upstream_ops *upstream_ops; + void *upstream; +@@ -30,6 +37,46 @@ struct sfp_bus { + bool started; + }; + ++static const struct sfp_quirk sfp_quirks[] = { ++}; ++ ++static size_t sfp_strlen(const char *str, size_t maxlen) ++{ ++ size_t size, i; ++ ++ /* Trailing characters should be filled with space chars */ ++ for (i = 0, size = 0; i < maxlen; i++) ++ if (str[i] != ' ') ++ size = i + 1; ++ ++ return size; ++} ++ ++static bool sfp_match(const char *qs, const char *str, size_t len) ++{ ++ if (!qs) ++ return true; ++ if (strlen(qs) != len) ++ return false; ++ return !strncmp(qs, str, len); ++} ++ ++static const struct sfp_quirk *sfp_lookup_quirk(const struct sfp_eeprom_id *id) ++{ ++ const struct sfp_quirk *q; ++ unsigned int i; ++ size_t vs, ps; ++ ++ vs = sfp_strlen(id->base.vendor_name, ARRAY_SIZE(id->base.vendor_name)); ++ ps = sfp_strlen(id->base.vendor_pn, ARRAY_SIZE(id->base.vendor_pn)); ++ ++ for (i = 0, q = sfp_quirks; i < ARRAY_SIZE(sfp_quirks); i++, q++) ++ if (sfp_match(q->vendor, id->base.vendor_name, vs) && ++ sfp_match(q->part, id->base.vendor_pn, ps)) ++ return q; ++ ++ return NULL; ++} + /** + * sfp_parse_port() - Parse the EEPROM base ID, setting the port type + * @bus: a pointer to the &struct sfp_bus structure for the sfp module +@@ -233,6 +280,9 @@ void sfp_parse_support(struct sfp_bus *bus, const struct sfp_eeprom_id *id, + phylink_set(modes, 1000baseX_Full); + } + ++ if (bus->sfp_quirk) ++ bus->sfp_quirk->modes(id, modes); ++ + bitmap_or(support, support, modes, __ETHTOOL_LINK_MODE_MASK_NBITS); + + phylink_set(support, Autoneg); +@@ -556,6 +606,8 @@ int sfp_module_insert(struct sfp_bus *bus, const struct sfp_eeprom_id *id) + const struct sfp_upstream_ops *ops = sfp_get_upstream_ops(bus); + int ret = 0; + ++ bus->sfp_quirk = sfp_lookup_quirk(id); ++ + if (ops && ops->module_insert) + ret = ops->module_insert(bus->upstream, id); + +@@ -569,6 +621,8 @@ void sfp_module_remove(struct sfp_bus *bus) + + if (ops && ops->module_remove) + ops->module_remove(bus->upstream); ++ ++ bus->sfp_quirk = NULL; + } + EXPORT_SYMBOL_GPL(sfp_module_remove); + +-- +2.25.1 + diff --git a/queue-4.19/scsi-sr-remove-references-to-blk_dev_sr_vendor-leave.patch b/queue-4.19/scsi-sr-remove-references-to-blk_dev_sr_vendor-leave.patch new file mode 100644 index 00000000000..e408e48f1ae --- /dev/null +++ b/queue-4.19/scsi-sr-remove-references-to-blk_dev_sr_vendor-leave.patch @@ -0,0 +1,663 @@ +From dfaca588db861f71c9842f82560e98ae0c7df2f5 Mon Sep 17 00:00:00 2001 +From: Sasha Levin +Date: Sun, 23 Feb 2020 19:11:44 +0000 +Subject: scsi: sr: remove references to BLK_DEV_SR_VENDOR, leave it enabled +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +From: Diego Elio Pettenò + +[ Upstream commit 679b2ec8e060ca7a90441aff5e7d384720a41b76 ] + +This kernel configuration is basically enabling/disabling sr driver quirks +detection. While these quirks are for fairly rare devices (very old CD +burners, and a glucometer), the additional detection of these models is a +very minimal amount of code. + +The logic behind the quirks is always built into the sr driver. + +This also removes the config from all the defconfig files that are enabling +this already. + +Link: https://lore.kernel.org/r/20200223191144.726-1-flameeyes@flameeyes.com +Reviewed-by: Jens Axboe +Signed-off-by: Diego Elio Pettenò +Signed-off-by: Martin K. Petersen +Signed-off-by: Sasha Levin +--- + arch/alpha/defconfig | 1 - + arch/arm/configs/rpc_defconfig | 1 - + arch/arm/configs/s3c2410_defconfig | 1 - + arch/ia64/configs/zx1_defconfig | 1 - + arch/m68k/configs/amiga_defconfig | 1 - + arch/m68k/configs/apollo_defconfig | 1 - + arch/m68k/configs/atari_defconfig | 1 - + arch/m68k/configs/bvme6000_defconfig | 1 - + arch/m68k/configs/hp300_defconfig | 1 - + arch/m68k/configs/mac_defconfig | 1 - + arch/m68k/configs/multi_defconfig | 1 - + arch/m68k/configs/mvme147_defconfig | 1 - + arch/m68k/configs/mvme16x_defconfig | 1 - + arch/m68k/configs/q40_defconfig | 1 - + arch/m68k/configs/sun3_defconfig | 1 - + arch/m68k/configs/sun3x_defconfig | 1 - + arch/mips/configs/bigsur_defconfig | 1 - + arch/mips/configs/fuloong2e_defconfig | 1 - + arch/mips/configs/ip27_defconfig | 1 - + arch/mips/configs/ip32_defconfig | 1 - + arch/mips/configs/jazz_defconfig | 1 - + arch/mips/configs/malta_defconfig | 1 - + arch/mips/configs/malta_kvm_defconfig | 1 - + arch/mips/configs/malta_kvm_guest_defconfig | 1 - + arch/mips/configs/maltaup_xpa_defconfig | 1 - + arch/mips/configs/rm200_defconfig | 1 - + arch/powerpc/configs/85xx-hw.config | 1 - + arch/powerpc/configs/amigaone_defconfig | 1 - + arch/powerpc/configs/chrp32_defconfig | 1 - + arch/powerpc/configs/g5_defconfig | 1 - + arch/powerpc/configs/maple_defconfig | 1 - + arch/powerpc/configs/pasemi_defconfig | 1 - + arch/powerpc/configs/pmac32_defconfig | 1 - + arch/powerpc/configs/powernv_defconfig | 1 - + arch/powerpc/configs/ppc64_defconfig | 1 - + arch/powerpc/configs/ppc64e_defconfig | 1 - + arch/powerpc/configs/ppc6xx_defconfig | 1 - + arch/powerpc/configs/pseries_defconfig | 1 - + arch/powerpc/configs/skiroot_defconfig | 1 - + arch/sh/configs/sh03_defconfig | 1 - + arch/sparc/configs/sparc64_defconfig | 1 - + arch/x86/configs/i386_defconfig | 1 - + arch/x86/configs/x86_64_defconfig | 1 - + drivers/scsi/Kconfig | 9 --------- + drivers/scsi/sr_vendor.c | 8 -------- + 45 files changed, 60 deletions(-) + +diff --git a/arch/alpha/defconfig b/arch/alpha/defconfig +index f4ec420d7f2df..3a132c91d45bc 100644 +--- a/arch/alpha/defconfig ++++ b/arch/alpha/defconfig +@@ -36,7 +36,6 @@ CONFIG_BLK_DEV_CY82C693=y + CONFIG_SCSI=y + CONFIG_BLK_DEV_SD=y + CONFIG_BLK_DEV_SR=y +-CONFIG_BLK_DEV_SR_VENDOR=y + CONFIG_SCSI_AIC7XXX=m + CONFIG_AIC7XXX_CMDS_PER_DEVICE=253 + # CONFIG_AIC7XXX_DEBUG_ENABLE is not set +diff --git a/arch/arm/configs/rpc_defconfig b/arch/arm/configs/rpc_defconfig +index 3b82b64950d96..c090643b1ecbc 100644 +--- a/arch/arm/configs/rpc_defconfig ++++ b/arch/arm/configs/rpc_defconfig +@@ -32,7 +32,6 @@ CONFIG_BLK_DEV_RAM=y + CONFIG_BLK_DEV_SD=y + CONFIG_CHR_DEV_ST=m + CONFIG_BLK_DEV_SR=y +-CONFIG_BLK_DEV_SR_VENDOR=y + CONFIG_CHR_DEV_SG=y + CONFIG_SCSI_CONSTANTS=y + CONFIG_SCSI_LOGGING=y +diff --git a/arch/arm/configs/s3c2410_defconfig b/arch/arm/configs/s3c2410_defconfig +index bd71d5bf98c91..9c69a9020e77d 100644 +--- a/arch/arm/configs/s3c2410_defconfig ++++ b/arch/arm/configs/s3c2410_defconfig +@@ -206,7 +206,6 @@ CONFIG_EEPROM_AT24=y + CONFIG_BLK_DEV_SD=y + CONFIG_CHR_DEV_ST=m + CONFIG_BLK_DEV_SR=y +-CONFIG_BLK_DEV_SR_VENDOR=y + CONFIG_CHR_DEV_SG=y + CONFIG_CHR_DEV_SCH=m + CONFIG_SCSI_CONSTANTS=y +diff --git a/arch/ia64/configs/zx1_defconfig b/arch/ia64/configs/zx1_defconfig +index b504c8e2fd52b..7fd4176ea0f6d 100644 +--- a/arch/ia64/configs/zx1_defconfig ++++ b/arch/ia64/configs/zx1_defconfig +@@ -36,7 +36,6 @@ CONFIG_BLK_DEV_SD=y + CONFIG_CHR_DEV_ST=y + CONFIG_CHR_DEV_OSST=y + CONFIG_BLK_DEV_SR=y +-CONFIG_BLK_DEV_SR_VENDOR=y + CONFIG_CHR_DEV_SG=y + CONFIG_SCSI_CONSTANTS=y + CONFIG_SCSI_LOGGING=y +diff --git a/arch/m68k/configs/amiga_defconfig b/arch/m68k/configs/amiga_defconfig +index 93a3c3c0238ce..bd55d9ba7049c 100644 +--- a/arch/m68k/configs/amiga_defconfig ++++ b/arch/m68k/configs/amiga_defconfig +@@ -341,7 +341,6 @@ CONFIG_BLK_DEV_SD=y + CONFIG_CHR_DEV_ST=m + CONFIG_CHR_DEV_OSST=m + CONFIG_BLK_DEV_SR=y +-CONFIG_BLK_DEV_SR_VENDOR=y + CONFIG_CHR_DEV_SG=m + CONFIG_SCSI_CONSTANTS=y + CONFIG_SCSI_SAS_ATTRS=m +diff --git a/arch/m68k/configs/apollo_defconfig b/arch/m68k/configs/apollo_defconfig +index e3d0efd6397d0..83789fd6780df 100644 +--- a/arch/m68k/configs/apollo_defconfig ++++ b/arch/m68k/configs/apollo_defconfig +@@ -328,7 +328,6 @@ CONFIG_BLK_DEV_SD=y + CONFIG_CHR_DEV_ST=m + CONFIG_CHR_DEV_OSST=m + CONFIG_BLK_DEV_SR=y +-CONFIG_BLK_DEV_SR_VENDOR=y + CONFIG_CHR_DEV_SG=m + CONFIG_SCSI_CONSTANTS=y + CONFIG_SCSI_SAS_ATTRS=m +diff --git a/arch/m68k/configs/atari_defconfig b/arch/m68k/configs/atari_defconfig +index 75ac0c76e8849..db0c0fa6075b9 100644 +--- a/arch/m68k/configs/atari_defconfig ++++ b/arch/m68k/configs/atari_defconfig +@@ -336,7 +336,6 @@ CONFIG_BLK_DEV_SD=y + CONFIG_CHR_DEV_ST=m + CONFIG_CHR_DEV_OSST=m + CONFIG_BLK_DEV_SR=y +-CONFIG_BLK_DEV_SR_VENDOR=y + CONFIG_CHR_DEV_SG=m + CONFIG_SCSI_CONSTANTS=y + CONFIG_SCSI_SAS_ATTRS=m +diff --git a/arch/m68k/configs/bvme6000_defconfig b/arch/m68k/configs/bvme6000_defconfig +index c6e492700188c..6a64904a5a4c6 100644 +--- a/arch/m68k/configs/bvme6000_defconfig ++++ b/arch/m68k/configs/bvme6000_defconfig +@@ -326,7 +326,6 @@ CONFIG_BLK_DEV_SD=y + CONFIG_CHR_DEV_ST=m + CONFIG_CHR_DEV_OSST=m + CONFIG_BLK_DEV_SR=y +-CONFIG_BLK_DEV_SR_VENDOR=y + CONFIG_CHR_DEV_SG=m + CONFIG_SCSI_CONSTANTS=y + CONFIG_SCSI_SAS_ATTRS=m +diff --git a/arch/m68k/configs/hp300_defconfig b/arch/m68k/configs/hp300_defconfig +index b00d1c477432d..dcfa9a3d1a0b6 100644 +--- a/arch/m68k/configs/hp300_defconfig ++++ b/arch/m68k/configs/hp300_defconfig +@@ -328,7 +328,6 @@ CONFIG_BLK_DEV_SD=y + CONFIG_CHR_DEV_ST=m + CONFIG_CHR_DEV_OSST=m + CONFIG_BLK_DEV_SR=y +-CONFIG_BLK_DEV_SR_VENDOR=y + CONFIG_CHR_DEV_SG=m + CONFIG_SCSI_CONSTANTS=y + CONFIG_SCSI_SAS_ATTRS=m +diff --git a/arch/m68k/configs/mac_defconfig b/arch/m68k/configs/mac_defconfig +index 85cac3770d898..916dbe2d61c3e 100644 +--- a/arch/m68k/configs/mac_defconfig ++++ b/arch/m68k/configs/mac_defconfig +@@ -335,7 +335,6 @@ CONFIG_BLK_DEV_SD=y + CONFIG_CHR_DEV_ST=m + CONFIG_CHR_DEV_OSST=m + CONFIG_BLK_DEV_SR=y +-CONFIG_BLK_DEV_SR_VENDOR=y + CONFIG_CHR_DEV_SG=m + CONFIG_SCSI_CONSTANTS=y + CONFIG_SCSI_SAS_ATTRS=m +diff --git a/arch/m68k/configs/multi_defconfig b/arch/m68k/configs/multi_defconfig +index b3a5d1e99d277..2f5c020895749 100644 +--- a/arch/m68k/configs/multi_defconfig ++++ b/arch/m68k/configs/multi_defconfig +@@ -358,7 +358,6 @@ CONFIG_BLK_DEV_SD=y + CONFIG_CHR_DEV_ST=m + CONFIG_CHR_DEV_OSST=m + CONFIG_BLK_DEV_SR=y +-CONFIG_BLK_DEV_SR_VENDOR=y + CONFIG_CHR_DEV_SG=m + CONFIG_SCSI_CONSTANTS=y + CONFIG_SCSI_SAS_ATTRS=m +diff --git a/arch/m68k/configs/mvme147_defconfig b/arch/m68k/configs/mvme147_defconfig +index 0ca22608453fd..40240c32418ec 100644 +--- a/arch/m68k/configs/mvme147_defconfig ++++ b/arch/m68k/configs/mvme147_defconfig +@@ -325,7 +325,6 @@ CONFIG_BLK_DEV_SD=y + CONFIG_CHR_DEV_ST=m + CONFIG_CHR_DEV_OSST=m + CONFIG_BLK_DEV_SR=y +-CONFIG_BLK_DEV_SR_VENDOR=y + CONFIG_CHR_DEV_SG=m + CONFIG_SCSI_CONSTANTS=y + CONFIG_SCSI_SAS_ATTRS=m +diff --git a/arch/m68k/configs/mvme16x_defconfig b/arch/m68k/configs/mvme16x_defconfig +index 8e3d10d12d9ca..34b7038f7de71 100644 +--- a/arch/m68k/configs/mvme16x_defconfig ++++ b/arch/m68k/configs/mvme16x_defconfig +@@ -326,7 +326,6 @@ CONFIG_BLK_DEV_SD=y + CONFIG_CHR_DEV_ST=m + CONFIG_CHR_DEV_OSST=m + CONFIG_BLK_DEV_SR=y +-CONFIG_BLK_DEV_SR_VENDOR=y + CONFIG_CHR_DEV_SG=m + CONFIG_SCSI_CONSTANTS=y + CONFIG_SCSI_SAS_ATTRS=m +diff --git a/arch/m68k/configs/q40_defconfig b/arch/m68k/configs/q40_defconfig +index ff7e653ec7fac..6375a7c86471d 100644 +--- a/arch/m68k/configs/q40_defconfig ++++ b/arch/m68k/configs/q40_defconfig +@@ -333,7 +333,6 @@ CONFIG_BLK_DEV_SD=y + CONFIG_CHR_DEV_ST=m + CONFIG_CHR_DEV_OSST=m + CONFIG_BLK_DEV_SR=y +-CONFIG_BLK_DEV_SR_VENDOR=y + CONFIG_CHR_DEV_SG=m + CONFIG_SCSI_CONSTANTS=y + CONFIG_SCSI_SAS_ATTRS=m +diff --git a/arch/m68k/configs/sun3_defconfig b/arch/m68k/configs/sun3_defconfig +index 612cf46f6d0cb..0c38799e9a674 100644 +--- a/arch/m68k/configs/sun3_defconfig ++++ b/arch/m68k/configs/sun3_defconfig +@@ -323,7 +323,6 @@ CONFIG_BLK_DEV_SD=y + CONFIG_CHR_DEV_ST=m + CONFIG_CHR_DEV_OSST=m + CONFIG_BLK_DEV_SR=y +-CONFIG_BLK_DEV_SR_VENDOR=y + CONFIG_CHR_DEV_SG=m + CONFIG_SCSI_CONSTANTS=y + CONFIG_SCSI_SAS_ATTRS=m +diff --git a/arch/m68k/configs/sun3x_defconfig b/arch/m68k/configs/sun3x_defconfig +index a6a7bb6dc3fd5..8180ef6b69839 100644 +--- a/arch/m68k/configs/sun3x_defconfig ++++ b/arch/m68k/configs/sun3x_defconfig +@@ -323,7 +323,6 @@ CONFIG_BLK_DEV_SD=y + CONFIG_CHR_DEV_ST=m + CONFIG_CHR_DEV_OSST=m + CONFIG_BLK_DEV_SR=y +-CONFIG_BLK_DEV_SR_VENDOR=y + CONFIG_CHR_DEV_SG=m + CONFIG_SCSI_CONSTANTS=y + CONFIG_SCSI_SAS_ATTRS=m +diff --git a/arch/mips/configs/bigsur_defconfig b/arch/mips/configs/bigsur_defconfig +index 5e73fe755be6c..bd6654299a9c5 100644 +--- a/arch/mips/configs/bigsur_defconfig ++++ b/arch/mips/configs/bigsur_defconfig +@@ -123,7 +123,6 @@ CONFIG_BLK_DEV_TC86C001=m + CONFIG_BLK_DEV_SD=y + CONFIG_CHR_DEV_ST=y + CONFIG_BLK_DEV_SR=y +-CONFIG_BLK_DEV_SR_VENDOR=y + CONFIG_CHR_DEV_SG=m + CONFIG_CHR_DEV_SCH=m + CONFIG_ATA=y +diff --git a/arch/mips/configs/fuloong2e_defconfig b/arch/mips/configs/fuloong2e_defconfig +index 499f51498ecbf..8f3e08d8607bb 100644 +--- a/arch/mips/configs/fuloong2e_defconfig ++++ b/arch/mips/configs/fuloong2e_defconfig +@@ -111,7 +111,6 @@ CONFIG_CDROM_PKTCDVD=m + CONFIG_ATA_OVER_ETH=m + CONFIG_BLK_DEV_SD=y + CONFIG_BLK_DEV_SR=y +-CONFIG_BLK_DEV_SR_VENDOR=y + CONFIG_CHR_DEV_SG=y + CONFIG_SCSI_CONSTANTS=y + # CONFIG_SCSI_LOWLEVEL is not set +diff --git a/arch/mips/configs/ip27_defconfig b/arch/mips/configs/ip27_defconfig +index 91a9c13e2c820..9855addcd7d5c 100644 +--- a/arch/mips/configs/ip27_defconfig ++++ b/arch/mips/configs/ip27_defconfig +@@ -107,7 +107,6 @@ CONFIG_SCSI=y + CONFIG_BLK_DEV_SD=y + CONFIG_CHR_DEV_ST=y + CONFIG_BLK_DEV_SR=m +-CONFIG_BLK_DEV_SR_VENDOR=y + CONFIG_CHR_DEV_SG=m + CONFIG_CHR_DEV_SCH=m + CONFIG_SCSI_CONSTANTS=y +diff --git a/arch/mips/configs/ip32_defconfig b/arch/mips/configs/ip32_defconfig +index ebff297328aed..a5f6be4b949b1 100644 +--- a/arch/mips/configs/ip32_defconfig ++++ b/arch/mips/configs/ip32_defconfig +@@ -54,7 +54,6 @@ CONFIG_RAID_ATTRS=y + CONFIG_SCSI=y + CONFIG_BLK_DEV_SD=y + CONFIG_BLK_DEV_SR=y +-CONFIG_BLK_DEV_SR_VENDOR=y + CONFIG_CHR_DEV_SG=m + CONFIG_SCSI_MULTI_LUN=y + CONFIG_SCSI_CONSTANTS=y +diff --git a/arch/mips/configs/jazz_defconfig b/arch/mips/configs/jazz_defconfig +index 9ad1c94376c8d..aa101c27ed258 100644 +--- a/arch/mips/configs/jazz_defconfig ++++ b/arch/mips/configs/jazz_defconfig +@@ -206,7 +206,6 @@ CONFIG_SCSI=y + CONFIG_BLK_DEV_SD=y + CONFIG_CHR_DEV_ST=m + CONFIG_BLK_DEV_SR=m +-CONFIG_BLK_DEV_SR_VENDOR=y + CONFIG_SCSI_CONSTANTS=y + CONFIG_SCSI_SCAN_ASYNC=y + CONFIG_SCSI_FC_ATTRS=y +diff --git a/arch/mips/configs/malta_defconfig b/arch/mips/configs/malta_defconfig +index 81058295d35f5..4338c2189c0f8 100644 +--- a/arch/mips/configs/malta_defconfig ++++ b/arch/mips/configs/malta_defconfig +@@ -245,7 +245,6 @@ CONFIG_BLK_DEV_SD=y + CONFIG_CHR_DEV_ST=m + CONFIG_CHR_DEV_OSST=m + CONFIG_BLK_DEV_SR=y +-CONFIG_BLK_DEV_SR_VENDOR=y + CONFIG_CHR_DEV_SG=m + CONFIG_SCSI_CONSTANTS=y + CONFIG_SCSI_LOGGING=y +diff --git a/arch/mips/configs/malta_kvm_defconfig b/arch/mips/configs/malta_kvm_defconfig +index 5c10cddc39d36..224718f453930 100644 +--- a/arch/mips/configs/malta_kvm_defconfig ++++ b/arch/mips/configs/malta_kvm_defconfig +@@ -252,7 +252,6 @@ CONFIG_BLK_DEV_SD=y + CONFIG_CHR_DEV_ST=m + CONFIG_CHR_DEV_OSST=m + CONFIG_BLK_DEV_SR=y +-CONFIG_BLK_DEV_SR_VENDOR=y + CONFIG_CHR_DEV_SG=m + CONFIG_SCSI_MULTI_LUN=y + CONFIG_SCSI_CONSTANTS=y +diff --git a/arch/mips/configs/malta_kvm_guest_defconfig b/arch/mips/configs/malta_kvm_guest_defconfig +index bb694f5065f14..03cf2abe2d651 100644 +--- a/arch/mips/configs/malta_kvm_guest_defconfig ++++ b/arch/mips/configs/malta_kvm_guest_defconfig +@@ -254,7 +254,6 @@ CONFIG_BLK_DEV_SD=y + CONFIG_CHR_DEV_ST=m + CONFIG_CHR_DEV_OSST=m + CONFIG_BLK_DEV_SR=y +-CONFIG_BLK_DEV_SR_VENDOR=y + CONFIG_CHR_DEV_SG=m + CONFIG_SCSI_MULTI_LUN=y + CONFIG_SCSI_CONSTANTS=y +diff --git a/arch/mips/configs/maltaup_xpa_defconfig b/arch/mips/configs/maltaup_xpa_defconfig +index 99a19cf5f9ba8..f64074aa06b62 100644 +--- a/arch/mips/configs/maltaup_xpa_defconfig ++++ b/arch/mips/configs/maltaup_xpa_defconfig +@@ -250,7 +250,6 @@ CONFIG_BLK_DEV_SD=y + CONFIG_CHR_DEV_ST=m + CONFIG_CHR_DEV_OSST=m + CONFIG_BLK_DEV_SR=y +-CONFIG_BLK_DEV_SR_VENDOR=y + CONFIG_CHR_DEV_SG=m + CONFIG_SCSI_CONSTANTS=y + CONFIG_SCSI_LOGGING=y +diff --git a/arch/mips/configs/rm200_defconfig b/arch/mips/configs/rm200_defconfig +index 1a3e1fec4e86f..194df200daada 100644 +--- a/arch/mips/configs/rm200_defconfig ++++ b/arch/mips/configs/rm200_defconfig +@@ -218,7 +218,6 @@ CONFIG_SCSI=y + CONFIG_BLK_DEV_SD=y + CONFIG_CHR_DEV_ST=m + CONFIG_BLK_DEV_SR=m +-CONFIG_BLK_DEV_SR_VENDOR=y + CONFIG_SCSI_CONSTANTS=y + CONFIG_SCSI_SCAN_ASYNC=y + CONFIG_SCSI_FC_ATTRS=y +diff --git a/arch/powerpc/configs/85xx-hw.config b/arch/powerpc/configs/85xx-hw.config +index c03d0fb166658..9144e4cbc42e9 100644 +--- a/arch/powerpc/configs/85xx-hw.config ++++ b/arch/powerpc/configs/85xx-hw.config +@@ -2,7 +2,6 @@ CONFIG_AQUANTIA_PHY=y + CONFIG_AT803X_PHY=y + CONFIG_ATA=y + CONFIG_BLK_DEV_SD=y +-CONFIG_BLK_DEV_SR_VENDOR=y + CONFIG_BLK_DEV_SR=y + CONFIG_BROADCOM_PHY=y + CONFIG_C293_PCIE=y +diff --git a/arch/powerpc/configs/amigaone_defconfig b/arch/powerpc/configs/amigaone_defconfig +index 12f397d403c67..8ddab7c240d97 100644 +--- a/arch/powerpc/configs/amigaone_defconfig ++++ b/arch/powerpc/configs/amigaone_defconfig +@@ -48,7 +48,6 @@ CONFIG_BLK_DEV_RAM=y + CONFIG_BLK_DEV_SD=y + CONFIG_CHR_DEV_ST=y + CONFIG_BLK_DEV_SR=y +-CONFIG_BLK_DEV_SR_VENDOR=y + CONFIG_CHR_DEV_SG=y + CONFIG_SCSI_CONSTANTS=y + CONFIG_SCSI_SYM53C8XX_2=y +diff --git a/arch/powerpc/configs/chrp32_defconfig b/arch/powerpc/configs/chrp32_defconfig +index a203b1cf67d3d..796d34734b91a 100644 +--- a/arch/powerpc/configs/chrp32_defconfig ++++ b/arch/powerpc/configs/chrp32_defconfig +@@ -46,7 +46,6 @@ CONFIG_BLK_DEV_RAM=y + CONFIG_BLK_DEV_SD=y + CONFIG_CHR_DEV_ST=y + CONFIG_BLK_DEV_SR=y +-CONFIG_BLK_DEV_SR_VENDOR=y + CONFIG_CHR_DEV_SG=y + CONFIG_SCSI_CONSTANTS=y + CONFIG_SCSI_SYM53C8XX_2=y +diff --git a/arch/powerpc/configs/g5_defconfig b/arch/powerpc/configs/g5_defconfig +index 67c39f4acede1..0123e3b009013 100644 +--- a/arch/powerpc/configs/g5_defconfig ++++ b/arch/powerpc/configs/g5_defconfig +@@ -63,7 +63,6 @@ CONFIG_CDROM_PKTCDVD=m + CONFIG_BLK_DEV_SD=y + CONFIG_CHR_DEV_ST=y + CONFIG_BLK_DEV_SR=y +-CONFIG_BLK_DEV_SR_VENDOR=y + CONFIG_CHR_DEV_SG=y + CONFIG_SCSI_CONSTANTS=y + CONFIG_SCSI_SPI_ATTRS=y +diff --git a/arch/powerpc/configs/maple_defconfig b/arch/powerpc/configs/maple_defconfig +index 59e47ec853366..9df11592880d1 100644 +--- a/arch/powerpc/configs/maple_defconfig ++++ b/arch/powerpc/configs/maple_defconfig +@@ -42,7 +42,6 @@ CONFIG_BLK_DEV_RAM_SIZE=8192 + # CONFIG_SCSI_PROC_FS is not set + CONFIG_BLK_DEV_SD=y + CONFIG_BLK_DEV_SR=y +-CONFIG_BLK_DEV_SR_VENDOR=y + CONFIG_CHR_DEV_SG=y + CONFIG_SCSI_IPR=y + CONFIG_ATA=y +diff --git a/arch/powerpc/configs/pasemi_defconfig b/arch/powerpc/configs/pasemi_defconfig +index 6daa56f8895cb..4504380c7a922 100644 +--- a/arch/powerpc/configs/pasemi_defconfig ++++ b/arch/powerpc/configs/pasemi_defconfig +@@ -61,7 +61,6 @@ CONFIG_BLK_DEV_SD=y + CONFIG_CHR_DEV_ST=y + CONFIG_CHR_DEV_OSST=y + CONFIG_BLK_DEV_SR=y +-CONFIG_BLK_DEV_SR_VENDOR=y + CONFIG_CHR_DEV_SG=y + CONFIG_CHR_DEV_SCH=y + CONFIG_SCSI_CONSTANTS=y +diff --git a/arch/powerpc/configs/pmac32_defconfig b/arch/powerpc/configs/pmac32_defconfig +index 62948d198d7f9..212a68b65d9fe 100644 +--- a/arch/powerpc/configs/pmac32_defconfig ++++ b/arch/powerpc/configs/pmac32_defconfig +@@ -121,7 +121,6 @@ CONFIG_BLK_DEV_RAM=y + CONFIG_BLK_DEV_SD=y + CONFIG_CHR_DEV_ST=y + CONFIG_BLK_DEV_SR=y +-CONFIG_BLK_DEV_SR_VENDOR=y + CONFIG_CHR_DEV_SG=y + CONFIG_SCSI_CONSTANTS=y + CONFIG_SCSI_FC_ATTRS=y +diff --git a/arch/powerpc/configs/powernv_defconfig b/arch/powerpc/configs/powernv_defconfig +index 6ab34e60495f4..5a533c9f6b3d9 100644 +--- a/arch/powerpc/configs/powernv_defconfig ++++ b/arch/powerpc/configs/powernv_defconfig +@@ -109,7 +109,6 @@ CONFIG_BLK_DEV_NVME=y + CONFIG_BLK_DEV_SD=y + CONFIG_CHR_DEV_ST=m + CONFIG_BLK_DEV_SR=m +-CONFIG_BLK_DEV_SR_VENDOR=y + CONFIG_CHR_DEV_SG=m + CONFIG_SCSI_CONSTANTS=y + CONFIG_SCSI_SCAN_ASYNC=y +diff --git a/arch/powerpc/configs/ppc64_defconfig b/arch/powerpc/configs/ppc64_defconfig +index 5033e630afead..d9fdf05599c98 100644 +--- a/arch/powerpc/configs/ppc64_defconfig ++++ b/arch/powerpc/configs/ppc64_defconfig +@@ -93,7 +93,6 @@ CONFIG_VIRTIO_BLK=m + CONFIG_BLK_DEV_SD=y + CONFIG_CHR_DEV_ST=m + CONFIG_BLK_DEV_SR=y +-CONFIG_BLK_DEV_SR_VENDOR=y + CONFIG_CHR_DEV_SG=y + CONFIG_SCSI_CONSTANTS=y + CONFIG_SCSI_FC_ATTRS=y +diff --git a/arch/powerpc/configs/ppc64e_defconfig b/arch/powerpc/configs/ppc64e_defconfig +index 41d85cb3c9a2f..a5e36faef391a 100644 +--- a/arch/powerpc/configs/ppc64e_defconfig ++++ b/arch/powerpc/configs/ppc64e_defconfig +@@ -61,7 +61,6 @@ CONFIG_BLK_DEV_RAM_SIZE=65536 + CONFIG_BLK_DEV_SD=y + CONFIG_CHR_DEV_ST=y + CONFIG_BLK_DEV_SR=y +-CONFIG_BLK_DEV_SR_VENDOR=y + CONFIG_CHR_DEV_SG=y + CONFIG_SCSI_CONSTANTS=y + CONFIG_SCSI_FC_ATTRS=y +diff --git a/arch/powerpc/configs/ppc6xx_defconfig b/arch/powerpc/configs/ppc6xx_defconfig +index 7ee736f207740..7032d4244ec5f 100644 +--- a/arch/powerpc/configs/ppc6xx_defconfig ++++ b/arch/powerpc/configs/ppc6xx_defconfig +@@ -374,7 +374,6 @@ CONFIG_BLK_DEV_SD=y + CONFIG_CHR_DEV_ST=m + CONFIG_CHR_DEV_OSST=m + CONFIG_BLK_DEV_SR=m +-CONFIG_BLK_DEV_SR_VENDOR=y + CONFIG_CHR_DEV_SG=y + CONFIG_CHR_DEV_SCH=m + CONFIG_SCSI_ENCLOSURE=m +diff --git a/arch/powerpc/configs/pseries_defconfig b/arch/powerpc/configs/pseries_defconfig +index 0dd5cf7b566de..780552be29f9f 100644 +--- a/arch/powerpc/configs/pseries_defconfig ++++ b/arch/powerpc/configs/pseries_defconfig +@@ -97,7 +97,6 @@ CONFIG_VIRTIO_BLK=m + CONFIG_BLK_DEV_SD=y + CONFIG_CHR_DEV_ST=m + CONFIG_BLK_DEV_SR=y +-CONFIG_BLK_DEV_SR_VENDOR=y + CONFIG_CHR_DEV_SG=y + CONFIG_SCSI_CONSTANTS=y + CONFIG_SCSI_FC_ATTRS=y +diff --git a/arch/powerpc/configs/skiroot_defconfig b/arch/powerpc/configs/skiroot_defconfig +index ffeaed63675b1..82611dea62bdb 100644 +--- a/arch/powerpc/configs/skiroot_defconfig ++++ b/arch/powerpc/configs/skiroot_defconfig +@@ -77,7 +77,6 @@ CONFIG_EEPROM_AT24=y + # CONFIG_CXL is not set + CONFIG_BLK_DEV_SD=m + CONFIG_BLK_DEV_SR=m +-CONFIG_BLK_DEV_SR_VENDOR=y + CONFIG_CHR_DEV_SG=m + CONFIG_SCSI_CONSTANTS=y + CONFIG_SCSI_SCAN_ASYNC=y +diff --git a/arch/sh/configs/sh03_defconfig b/arch/sh/configs/sh03_defconfig +index 2156223405a16..ecc736504a04f 100644 +--- a/arch/sh/configs/sh03_defconfig ++++ b/arch/sh/configs/sh03_defconfig +@@ -47,7 +47,6 @@ CONFIG_BLK_DEV_IDETAPE=m + CONFIG_SCSI=m + CONFIG_BLK_DEV_SD=m + CONFIG_BLK_DEV_SR=m +-CONFIG_BLK_DEV_SR_VENDOR=y + CONFIG_CHR_DEV_SG=m + CONFIG_NETDEVICES=y + CONFIG_NET_ETHERNET=y +diff --git a/arch/sparc/configs/sparc64_defconfig b/arch/sparc/configs/sparc64_defconfig +index 4d4e1cc6402fa..fc45ec682e7a7 100644 +--- a/arch/sparc/configs/sparc64_defconfig ++++ b/arch/sparc/configs/sparc64_defconfig +@@ -74,7 +74,6 @@ CONFIG_RAID_ATTRS=m + CONFIG_SCSI=y + CONFIG_BLK_DEV_SD=y + CONFIG_BLK_DEV_SR=m +-CONFIG_BLK_DEV_SR_VENDOR=y + CONFIG_CHR_DEV_SG=m + CONFIG_SCSI_MULTI_LUN=y + CONFIG_SCSI_CONSTANTS=y +diff --git a/arch/x86/configs/i386_defconfig b/arch/x86/configs/i386_defconfig +index 0eb9f92f37179..ce75be940567e 100644 +--- a/arch/x86/configs/i386_defconfig ++++ b/arch/x86/configs/i386_defconfig +@@ -149,7 +149,6 @@ CONFIG_CONNECTOR=y + CONFIG_BLK_DEV_LOOP=y + CONFIG_BLK_DEV_SD=y + CONFIG_BLK_DEV_SR=y +-CONFIG_BLK_DEV_SR_VENDOR=y + CONFIG_CHR_DEV_SG=y + CONFIG_SCSI_CONSTANTS=y + CONFIG_SCSI_SPI_ATTRS=y +diff --git a/arch/x86/configs/x86_64_defconfig b/arch/x86/configs/x86_64_defconfig +index e32fc1f274d85..45b0f4d84d83b 100644 +--- a/arch/x86/configs/x86_64_defconfig ++++ b/arch/x86/configs/x86_64_defconfig +@@ -148,7 +148,6 @@ CONFIG_CONNECTOR=y + CONFIG_BLK_DEV_LOOP=y + CONFIG_BLK_DEV_SD=y + CONFIG_BLK_DEV_SR=y +-CONFIG_BLK_DEV_SR_VENDOR=y + CONFIG_CHR_DEV_SG=y + CONFIG_SCSI_CONSTANTS=y + CONFIG_SCSI_SPI_ATTRS=y +diff --git a/drivers/scsi/Kconfig b/drivers/scsi/Kconfig +index a8ac480276323..7cb6e2b9e180a 100644 +--- a/drivers/scsi/Kconfig ++++ b/drivers/scsi/Kconfig +@@ -144,15 +144,6 @@ config BLK_DEV_SR + . + The module will be called sr_mod. + +-config BLK_DEV_SR_VENDOR +- bool "Enable vendor-specific extensions (for SCSI CDROM)" +- depends on BLK_DEV_SR +- help +- This enables the usage of vendor specific SCSI commands. This is +- required to support multisession CDs with old NEC/TOSHIBA cdrom +- drives (and HP Writers). If you have such a drive and get the first +- session only, try saying Y here; everybody else says N. +- + config CHR_DEV_SG + tristate "SCSI generic support" + depends on SCSI +diff --git a/drivers/scsi/sr_vendor.c b/drivers/scsi/sr_vendor.c +index e3b0ce25162ba..b9db2ec6d0361 100644 +--- a/drivers/scsi/sr_vendor.c ++++ b/drivers/scsi/sr_vendor.c +@@ -66,9 +66,6 @@ + + void sr_vendor_init(Scsi_CD *cd) + { +-#ifndef CONFIG_BLK_DEV_SR_VENDOR +- cd->vendor = VENDOR_SCSI3; +-#else + const char *vendor = cd->device->vendor; + const char *model = cd->device->model; + +@@ -100,7 +97,6 @@ void sr_vendor_init(Scsi_CD *cd) + cd->vendor = VENDOR_TOSHIBA; + + } +-#endif + } + + +@@ -114,10 +110,8 @@ int sr_set_blocklength(Scsi_CD *cd, int blocklength) + struct ccs_modesel_head *modesel; + int rc, density = 0; + +-#ifdef CONFIG_BLK_DEV_SR_VENDOR + if (cd->vendor == VENDOR_TOSHIBA) + density = (blocklength > 2048) ? 0x81 : 0x83; +-#endif + + buffer = kmalloc(512, GFP_KERNEL | GFP_DMA); + if (!buffer) +@@ -205,7 +199,6 @@ int sr_cd_check(struct cdrom_device_info *cdi) + } + break; + +-#ifdef CONFIG_BLK_DEV_SR_VENDOR + case VENDOR_NEC:{ + unsigned long min, sec, frame; + cgc.cmd[0] = 0xde; +@@ -298,7 +291,6 @@ int sr_cd_check(struct cdrom_device_info *cdi) + sector = buffer[11] + (buffer[10] << 8) + + (buffer[9] << 16) + (buffer[8] << 24); + break; +-#endif /* CONFIG_BLK_DEV_SR_VENDOR */ + + default: + /* should not happen */ +-- +2.25.1 + diff --git a/queue-4.19/series b/queue-4.19/series index 9167bb13553..095d5500b6f 100644 --- a/queue-4.19/series +++ b/queue-4.19/series @@ -42,3 +42,18 @@ of-of_mdio-correct-loop-scanning-logic.patch revert-usb-ohci-platform-fix-a-warning-when-hibernat.patch revert-usb-xhci-plat-set-pm-runtime-as-active-on-res.patch revert-usb-ehci-platform-set-pm-runtime-as-active-on.patch +net-sfp-add-support-for-module-quirks.patch +net-sfp-add-some-quirks-for-gpon-modules.patch +efi-arm-defer-probe-of-pcie-backed-efifb-on-dt-syste.patch +hid-quirks-remove-ite-8595-entry-from-hid_have_speci.patch +arm-at91-pm-add-quirk-for-sam9x60-s-ulp1.patch +scsi-sr-remove-references-to-blk_dev_sr_vendor-leave.patch +alsa-usb-audio-create-a-registration-quirk-for-kings.patch +doc-dt-bindings-usb-dwc3-update-entries-for-disablin.patch +mmc-sdhci-do-not-enable-card-detect-interrupt-for-gp.patch +alsa-usb-audio-rewrite-registration-quirk-handling.patch +acpi-video-use-native-backlight-on-acer-aspire-5783z.patch +alsa-usb-audio-add-registration-quirk-for-kingston-h.patch +input-mms114-add-extra-compatible-for-mms345l.patch +acpi-video-use-native-backlight-on-acer-travelmate-5.patch +alsa-usb-audio-add-registration-quirk-for-kingston-h.patch-7751