[PATCH] iommu/arm-smmu-qcom: create qcom_smmu_impl for ACPI boot

Bjorn Andersson bjorn.andersson at linaro.org
Thu Mar 25 17:02:56 GMT 2021


On Thu 25 Mar 09:59 CDT 2021, Will Deacon wrote:

> [+ Lorenzo]
> 
> On Mon, Mar 01, 2021 at 03:40:21PM +0800, Shawn Guo wrote:
> > Though qcom_adreno_smmu_impl is not used by ACPI boot right now,
> > qcom_smmu_impl is already required at least to boot up Lenovo Flex 5G
> > laptop.  Let's check asl_compiler_id in IORT header to ensure we are
> > running a QCOM SMMU and create qcom_smmu_impl for it.
> > 
> > !np is used to check ACPI boot, because fwnode of SMMU device is
> > a static allocation and thus has_acpi_companion() doesn't work here.
> > 
> > Signed-off-by: Shawn Guo <shawn.guo at linaro.org>
> > ---
> >  drivers/iommu/arm/arm-smmu/arm-smmu-qcom.c | 33 ++++++++++++++++++++++
> >  1 file changed, 33 insertions(+)
> 
> I don't know what a "asl_compiler_id" is, but it doesn't sound like it
> has an awful lot to do with the SMMU.
> 

I would prefer that we somehow relate this to the particular board,
rather than all Qualcomm-related ACPI tables. E.g. by relying on the
SMMU devices having a _HID of QCOM0409.

Shawn, any reason for this wouldn't be possible?

> Lorenzo -- any idea what we should be doing here instead? Probably not
> using ACPI?
> 

The 8cx (aka sc8180x) platform comes with Qualcomm's usual SMMU
stream-mapping quirks and this is one of the patches needed to bring
enough ACPI support to run the Debian installer that Shawn has been
working on. After the installer we currently only boot this using DT -
which already enables the quirk.

Regards,
Bjorn



More information about the linux-arm-kernel mailing list