lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite for Android: free password hash cracker in your pocket
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date:   Fri, 1 Sep 2017 10:13:40 +0000
From:   Bharat Bhushan <bharat.bhushan@....com>
To:     Bharat Bhushan <bharat.bhushan@....com>,
        Marc Zyngier <marc.zyngier@....com>,
        "robh+dt@...nel.org" <robh+dt@...nel.org>,
        "Mark Rutland" <mark.rutland@....com>,
        "will.deacon@....com" <will.deacon@....com>,
        "oss@...error.net" <oss@...error.net>, Gang Liu <gang.liu@....com>,
        "devicetree@...r.kernel.org" <devicetree@...r.kernel.org>,
        "linux-arm-kernel@...ts.infradead.org" 
        <linux-arm-kernel@...ts.infradead.org>,
        "linux-kernel@...r.kernel.org" <linux-kernel@...r.kernel.org>,
        "catalin.marinas@....com" <catalin.marinas@....com>
Subject: RE: [PATCH] RM64: dts: ls208xa: Add iommu-map property for pci



> -----Original Message-----
> From: linux-kernel-owner@...r.kernel.org [mailto:linux-kernel-
> owner@...r.kernel.org] On Behalf Of Bharat Bhushan
> Sent: Thursday, August 31, 2017 4:53 PM
> To: Marc Zyngier <marc.zyngier@....com>; robh+dt@...nel.org; Mark
> Rutland <mark.rutland@....com>; will.deacon@....com;
> oss@...error.net; Gang Liu <gang.liu@....com>;
> devicetree@...r.kernel.org; linux-arm-kernel@...ts.infradead.org; linux-
> kernel@...r.kernel.org; catalin.marinas@....com
> Subject: RE: [PATCH] RM64: dts: ls208xa: Add iommu-map property for pci
> 
> 
> 
> > -----Original Message-----
> > From: Marc Zyngier [mailto:marc.zyngier@....com]
> > Sent: Thursday, August 31, 2017 4:20 PM
> > To: Bharat Bhushan <bharat.bhushan@....com>; robh+dt@...nel.org;
> Mark
> > Rutland <mark.rutland@....com>; will.deacon@....com;
> oss@...error.net;
> > Gang Liu <gang.liu@....com>; devicetree@...r.kernel.org;
> > linux-arm-kernel@...ts.infradead.org; linux- kernel@...r.kernel.org;
> > catalin.marinas@....com
> > Subject: Re: [PATCH] RM64: dts: ls208xa: Add iommu-map property for
> > pci
> >
> > [Fixing Mark's address...]
> >
> > On 31/08/17 11:41, Bharat Bhushan wrote:
> > >
> > >> -----Original Message-----
> > >> From: Marc Zyngier [mailto:marc.zyngier@....com]
> > >> Sent: Thursday, August 31, 2017 3:02 PM
> > >> To: Bharat Bhushan <bharat.bhushan@....com>; robh+dt@...nel.org;
> > >> ark.rutland@....com; will.deacon@....com; oss@...error.net; Gang
> > Liu
> > >> <gang.liu@....com>; devicetree@...r.kernel.org; linux-arm-
> > >> kernel@...ts.infradead.org; linux-kernel@...r.kernel.org;
> > >> catalin.marinas@....com
> > >> Subject: Re: [PATCH] RM64: dts: ls208xa: Add iommu-map property for
> > >> pci
> > >>
> > >> On 31/08/17 10:23, Bharat Bhushan wrote:
> > >>> This patch adds iommu-map property for PCIe, which enables SMMU
> > >>> for these devices on LS208xA devices.
> > >>>
> > >>> Signed-off-by: Bharat Bhushan <Bharat.Bhushan@....com>
> > >>> ---
> > >>>  arch/arm64/boot/dts/freescale/fsl-ls208xa.dtsi | 4 ++++
> > >>>  1 file changed, 4 insertions(+)
> > >>>
> > >>> diff --git a/arch/arm64/boot/dts/freescale/fsl-ls208xa.dtsi
> > >>> b/arch/arm64/boot/dts/freescale/fsl-ls208xa.dtsi
> > >>> index 94cdd30..67cf605 100644
> > >>> --- a/arch/arm64/boot/dts/freescale/fsl-ls208xa.dtsi
> > >>> +++ b/arch/arm64/boot/dts/freescale/fsl-ls208xa.dtsi
> > >>> @@ -606,6 +606,7 @@
> > >>>  			num-lanes = <4>;
> > >>>  			bus-range = <0x0 0xff>;
> > >>>  			msi-parent = <&its>;
> > >>> +			iommu-map = <0 &smmu 0 1>;	/* This is fixed-up by
> > >> u-boot */
> > >>
> > >> What does this do when your version of u-boot doesn't fill this in for
> you?
> > >
> > > Good question, frankly I have not thought of this case before.
> > > But if we pass length = 0 in above property then no fixup happen
> > > with happen with older u-boot. In this case of_iommu_configure()
> > > will return NULL iommu-ops and it switch to swio-tlb. Will that work?
> > I really don't like this. You rely on having invalid data in the DT,
> > and that seems just wrong.
> >
> > Why can't u-boot just generate that property, and we leave the DT alone?
> 
> We do not have smmu phandle allowing uboot to generate this.
> 
> > Or even better, you provide the right information for the few boards
> > that are based on this SoC, not relying on u-boot for anything that is
> > in the kernel tree?
> 
> On our platforms we have a h/w table which converts RID->Device-Id. I will
> check what will happen if that table is not initialized, can RID be equal to
> device-id is that case.
> If that will be allowed than we can give right information that will work with
> u-boot not updating this property.

U-boot uses a stream-id allocator and programs the h/w mapping table (rid to sid mapping table). Also it updates iommu-map property accordingly.
But If u-boot does not update iommu-map than we cannot have a valid full proof solution as stream-id allocation can change in u-boot. 

So the other option of u-boot generating this entry seems correct solution. This requires u-boot to know iommu-phandle, something similar to "msi-parent" used for "msi-map"
Device-tree binding need change to add iommu-phandle/iommu-parent for this. 

Thanks
-Bharat

> 
> Will revert after confirming this.
> 
> Thanks
> -Bharat
> >
> > Thanks,
> >
> > M.
> > --
> > Jazz is not dead. It just smells funny...

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ