On 2021/3/26 12:39, Tony W Wang-oc wrote:
On 26/03/2021 11:29, Hanjun Guo wrote:
On 2021/3/25 18:10, LeoLiu-oc wrote:
Some ACPI devices need to issue dma requests to access the reserved memory area.BIOS uses the device scope type ACPI_NAMESPACE_DEVICE in RMRR to report these ACPI devices. This patch add support for detecting ACPI devices in RMRR and in order to distinguish it from PCI device, some interface functions are modified.
What kind of devices need this feature, I know LSI 3408 raid card needs this, do you have other devices and it's not PCI device?
This patch was submitted to mainline kernel but not accepted by upstream maintainer whose reason is "As I explained in the previous reply, RMRRs were added as work around for certain legacy device and we have been working hard to fix those legacy devices so that RMRR are no longer needed. Any new use case of RMRR is not encouraged".
I agree, it's the bug of the device itself:)
VT-D 1.3/2.5/3.0 Spec have this case's specification, We think this Intel driver should support this case too.
https://lkml.org/lkml/2020/10/10/56 Signed-off-by: LeoLiu-ocLeoLiu-oc@zhaoxin.com
drivers/iommu/dmar.c | 75 +++++++++++++++++++++---------------- drivers/iommu/intel-iommu.c | 24 +++++++++++- include/linux/dmar.h | 11 +++++- 3 files changed, 75 insertions(+), 35 deletions(-)
I'm not against to accept this patch for openEuler kernel if you have the solid use cases.
We run this on zhaoxin X86 paltform.
There are some MCUS on our platforms that read and write data to the system memory.
During this process, the MCU is invisible to the host kernel. And the MCU needs to report through ACPI_NAMESPACE_DEVICE in RMRR.
OK.
Let me have a detail review for if it will break other platform, if not, we can merge it in openEuler kernel.
Thanks Hanjun