Add quirk patch to fix X-Gene 1 console on HP m400/Mustang (RHBZ 1531140)

This commit is contained in:
Peter Robinson 2018-04-21 15:34:26 +01:00
parent 5c3e312120
commit fa3b85b25c
2 changed files with 58 additions and 8 deletions

View File

@ -0,0 +1,44 @@
From patchwork Fri Apr 20 03:29:47 2018
Content-Type: text/plain; charset="utf-8"
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit
Subject: ACPI / scan: Fix regression related to X-Gene UARTs
From: Mark Salter <msalter@redhat.com>
X-Patchwork-Id: 10351797
Message-Id: <20180420032947.23023-1-msalter@redhat.com>
To: =?UTF-8?q?Fr=C3=A9d=C3=A9ric=20Danis?= <frederic.danis.oss@gmail.com>
Cc: "Rafael J . Wysocki" <rjw@rjwysocki.net>,
linux-acpi@vger.kernel.org, linux-kernel@vger.kernel.org
Date: Thu, 19 Apr 2018 23:29:47 -0400
Commit e361d1f85855 ("ACPI / scan: Fix enumeration for special UART
devices") caused a regression with some X-Gene based platforms (Mustang
and M400) with invalid DSDT. The DSDT makes it appear that the UART
device is also a slave device attached to itself. With the above commit
the UART won't be enumerated by ACPI scan (slave serial devices shouldn't
be). So check for X-Gene UART device and skip slace device check on it.
Signed-off-by: Mark Salter <msalter@redhat.com>
---
drivers/acpi/scan.c | 8 ++++++++
1 file changed, 8 insertions(+)
diff --git a/drivers/acpi/scan.c b/drivers/acpi/scan.c
index cc234e6a6297..1dcdd0122862 100644
--- a/drivers/acpi/scan.c
+++ b/drivers/acpi/scan.c
@@ -1551,6 +1551,14 @@ static bool acpi_device_enumeration_by_parent(struct acpi_device *device)
fwnode_property_present(&device->fwnode, "baud")))
return true;
+ /*
+ * Firmware on some arm64 X-Gene platforms will make the UART
+ * device appear as both a UART and a slave of that UART. Just
+ * bail out here for X-Gene UARTs.
+ */
+ if (!strcmp(acpi_device_hid(device), "APMC0D08"))
+ return false;
+
INIT_LIST_HEAD(&resource_list);
acpi_dev_get_resources(device, &resource_list,
acpi_check_serial_bus_slave,

View File

@ -580,25 +580,26 @@ Patch302: ARM-tegra-usb-no-reset.patch
# https://patchwork.kernel.org/patch/9820417/
Patch303: qcom-msm89xx-fixes.patch
# https://patchwork.kernel.org/patch/10351797/
Patch304: ACPI-scan-Fix-regression-related-to-X-Gene-UARTs.patch
# https://patchwork.kernel.org/patch/10173115/
Patch304: arm-dts-imx6qdl-udoo-Disable-usbh1-to-avoid-kernel-hang.patch
Patch305: arm-dts-imx6qdl-udoo-Disable-usbh1-to-avoid-kernel-hang.patch
# http://patches.linaro.org/patch/131764/
Patch305: wcn36xx-Fix-firmware-crash-due-to-corrupted-buffer-address.patch
Patch306: wcn36xx-Fix-firmware-crash-due-to-corrupted-buffer-address.patch
# https://patchwork.kernel.org/patch/10245303/
Patch306: wcn36xx-reduce-verbosity-of-drivers-messages.patch
Patch307: wcn36xx-reduce-verbosity-of-drivers-messages.patch
# https://www.spinics.net/lists/arm-kernel/msg632925.html
Patch307: arm-crypto-sunxi-ss-Add-MODULE_ALIAS-to-sun4i-ss.patch
Patch308: arm-crypto-sunxi-ss-Add-MODULE_ALIAS-to-sun4i-ss.patch
# https://marc.info/?l=linux-kernel&m=152328880417846&w=2
Patch308: arm64-thunderx-crypto-zip-fixes.patch
Patch309: arm64-thunderx-crypto-zip-fixes.patch
# https://www.spinics.net/lists/linux-crypto/msg32725.html
Patch309: crypto-testmgr-Allow-different-compression-results.patch
Patch310: arm-tegra-fix-nouveau-crash.patch
Patch310: crypto-testmgr-Allow-different-compression-results.patch
# https://www.spinics.net/lists/arm-kernel/msg630629.html
Patch311: arm-sunxi-nvmem-fixH3.patch
@ -608,6 +609,8 @@ Patch312: clk-ti-fix-flag-space-conflict-with-clkctrl-clocks.patch
Patch313: arm-dts-Add-am335x-pocketbeagle.patch
Patch314: arm-tegra-fix-nouveau-crash.patch
# Upstream 4.17 back port
Patch319: of-i2c-fix-module-aliases.patch
@ -1900,6 +1903,9 @@ fi
#
#
%changelog
* Sun Apr 22 2018 Peter Robinson <pbrobinson@fedoraproject.org>
- Add quirk patch to fix X-Gene 1 console on HP m400/Mustang (RHBZ 1531140)
* Thu Apr 19 2018 Jeremy Cline <jeremy@jcline.org> - 4.16.3-300
- Linux v4.16.3