[PATCH 0/1][B][D][E][Unstable] intel-lpss driver conflicts with write-combining MTRR region
AceLan Kao
acelan.kao at canonical.com
Fri Sep 27 08:07:44 UTC 2019
BugLink: https://bugs.launchpad.net/bugs/1845584
[Impact]
The memory region intel-lpss-pci uses has been declared as
write-combining
[ 0.001728] 5 base 4000000000 mask 6000000000 write-combining
This leads to the system hangs up during booting up.
This is a BIOS issue, but there are some platforms on the market and
users are struggling on booting up the machines. So, we may have to
fix this in the kernel.
[Fix]
Tuowen Zhao(ztuowen at gmail.com)[1] provides a diff patch for intel-lpss
driver to claim to use un-cacheable memory while calling
__devm_ioremap(), and it works well. But it haven't been accepted by
maintainer yet.
To avoid the potential impact on other machines, I add a quirk to list
the machines which has the write-combining area in MTRR which overlaps
with the address that intel-lpss uses, only the machines in the list
pass DEVM_IOREMAP_UC to __devm_ioremap().
[Test]
Verified on Dell XPS 13 7390 2-in-1
[Regression Potential]
Low, without this patch, the machine even can't boot. And the quirk only
for specific machines, so the modification won't affect other machines.
1. https://bugzilla.kernel.org/show_bug.cgi?id=203485#c23
AceLan Kao (1):
mfd: intel-lpss: add quirk for Dell XPS 13 7390 2-in-1
drivers/mfd/intel-lpss.c | 20 ++++++++++++++++++--
include/linux/io.h | 2 ++
lib/devres.c | 20 ++++++++++++++++++++
3 files changed, 40 insertions(+), 2 deletions(-)
--
2.17.1
More information about the kernel-team
mailing list