[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <4ef6512d-701f-4fe8-8173-5f659dab0d32@arm.com>
Date: Thu, 22 Aug 2019 15:30:24 +0100
From: Robin Murphy <robin.murphy@....com>
To: Will Deacon <will@...nel.org>,
Gregory CLEMENT <gregory.clement@...tlin.com>
Cc: devicetree@...r.kernel.org, Jason Cooper <jason@...edaemon.net>,
Andrew Lunn <andrew@...n.ch>,
Antoine Tenart <antoine.tenart@...tlin.com>,
Catalin Marinas <catalin.marinas@....com>,
Will Deacon <will.deacon@....com>,
linux-kernel@...r.kernel.org,
Maxime Chevallier <maxime.chevallier@...tlin.com>,
Nadav Haklai <nadavh@...vell.com>,
iommu@...ts.linux-foundation.org, Rob Herring <robh+dt@...nel.org>,
Thomas Petazzoni <thomas.petazzoni@...tlin.com>,
Miquèl Raynal <miquel.raynal@...tlin.com>,
Hanna Hawa <hannah@...vell.com>,
linux-arm-kernel@...ts.infradead.org,
Sebastian Hesselbarth <sebastian.hesselbarth@...il.com>
Subject: Re: [PATCH v2 1/4] iommu/arm-smmu: Introduce wrapper for writeq/readq
On 20/08/2019 13:08, Will Deacon wrote:
> Hi Gregory, Hanna,
>
> On Thu, Jul 11, 2019 at 05:02:39PM +0200, Gregory CLEMENT wrote:
>> From: Hanna Hawa <hannah@...vell.com>
>>
>> This patch introduces the smmu_writeq_relaxed/smmu_readq_relaxed
>> helpers, as preparation to add specific Marvell work-around for
>> accessing 64 bits width registers of ARM SMMU.
>>
>> Signed-off-by: Hanna Hawa <hannah@...vell.com>
>> Signed-off-by: Gregory CLEMENT <gregory.clement@...tlin.com>
>> ---
>> drivers/iommu/arm-smmu.c | 36 +++++++++++++++++++++++++++---------
>> 1 file changed, 27 insertions(+), 9 deletions(-)
>
> Sorry for the delay in replying to this -- Robin's been reworking the driver
> so that implementation quirks can be specified more cleanly. Please can you
> take a look at:
>
> https://git.kernel.org/pub/scm/linux/kernel/git/will/linux.git/log/?h=for-joerg/arm-smmu/refactoring
>
> and try to respin your patches on top of that?
Right, the arm_smmu_impl design was specifically anticipating this quirk
as well - it should just be a case of a cfg_probe hook to hide the
features which can't work, plus {read,write}_reg64 hooks to override any
remaining 64-bit accesses with the explicit hi_lo_* variants, munged
together (either statically or dynamically) with the standard MMU-500 hooks.
Robin.
Powered by blists - more mailing lists