From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1751022AbdHaLb7 (ORCPT ); Thu, 31 Aug 2017 07:31:59 -0400 Received: from usa-sjc-mx-foss1.foss.arm.com ([217.140.101.70]:54682 "EHLO foss.arm.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1750790AbdHaLb5 (ORCPT ); Thu, 31 Aug 2017 07:31:57 -0400 Date: Thu, 31 Aug 2017 12:30:39 +0100 From: Mark Rutland To: Marc Zyngier Cc: Bharat Bhushan , "robh+dt@kernel.org" , "will.deacon@arm.com" , "oss@buserror.net" , Gang Liu , "devicetree@vger.kernel.org" , "linux-arm-kernel@lists.infradead.org" , "linux-kernel@vger.kernel.org" , "catalin.marinas@arm.com" Subject: Re: [PATCH] RM64: dts: ls208xa: Add iommu-map property for pci Message-ID: <20170831113039.GF15031@leverpostej> References: <1504171424-15536-1-git-send-email-Bharat.Bhushan@nxp.com> <06c57ca4-edaa-df26-b1d9-1906141c5065@arm.com> <10be1849-8071-64fc-5ee2-b6e429c64b9e@arm.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <10be1849-8071-64fc-5ee2-b6e429c64b9e@arm.com> User-Agent: Mutt/1.5.21 (2010-09-15) Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Thu, Aug 31, 2017 at 11:49:37AM +0100, Marc Zyngier wrote: > [Fixing Mark's address...] Thanks! > On 31/08/17 11:41, Bharat Bhushan wrote: > > > >> -----Original Message----- > >> From: Marc Zyngier [mailto:marc.zyngier@arm.com] > >> Sent: Thursday, August 31, 2017 3:02 PM > >> To: Bharat Bhushan ; robh+dt@kernel.org; > >> ark.rutland@arm.com; will.deacon@arm.com; oss@buserror.net; Gang Liu > >> ; devicetree@vger.kernel.org; linux-arm- > >> kernel@lists.infradead.org; linux-kernel@vger.kernel.org; > >> catalin.marinas@arm.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 > >>> --- > >>> 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. Indeed. Either the property should be valid (and correctly representing the HW), or it shouldn't be present. Relying on kernel implementation details is *not* OK. Thanks, Mark.