From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mail-qk1-f179.google.com (mail-qk1-f179.google.com [209.85.222.179]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 195413CC7DC for ; Sat, 18 Jul 2026 14:32:35 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.222.179 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1784385158; cv=none; b=LaCvehoCCbl7/yZ/YVyJoeiQtqKLyjjV35+vcouqJwnM2tHxOfg+vfu+QOFGirguVowgD7d2WSgqpyjPlS+ut9RUsxAsfQXIbgki/rkG+XcRST1sD97Iu2x4gxrk0HFtExzNgwJaIpQUWme0pBXuBKG41FTwdWPxRNTL93vBAUo= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1784385158; c=relaxed/simple; bh=qT89Wi3RAN9CgJ0A7GdoQ7adS5M+Uxt5TfxmdTXEZ+Q=; h=Date:From:To:Cc:Subject:Message-ID:References:MIME-Version: Content-Type:Content-Disposition:In-Reply-To; b=ibarOVXZXSSpgd4FVu2UUNKhBb/6RGQcQRRnkqnZGaJsZuq10LrDbCSerrdM0hJ94zHyMvCoRGREXizMG96G2dCBXl637wUX0c4PL6DJSHMfRTzElVHUucisbAuqq7RxaGJ+cQ86fYxR6Im6mRvvellqLWLWUd+4UsXYLyf+XLk= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dmarc=none (p=none dis=none) header.from=ziepe.ca; spf=pass smtp.mailfrom=ziepe.ca; dkim=pass (2048-bit key) header.d=ziepe.ca header.i=@ziepe.ca header.b=Sagd4BG+; arc=none smtp.client-ip=209.85.222.179 Authentication-Results: smtp.subspace.kernel.org; dmarc=none (p=none dis=none) header.from=ziepe.ca Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=ziepe.ca Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=ziepe.ca header.i=@ziepe.ca header.b="Sagd4BG+" Received: by mail-qk1-f179.google.com with SMTP id af79cd13be357-92e622cc874so643208885a.0 for ; Sat, 18 Jul 2026 07:32:35 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ziepe.ca; s=google; t=1784385154; x=1784989954; darn=vger.kernel.org; h=in-reply-to:content-disposition:content-type:mime-version :references:message-id:subject:cc:to:from:date:from:to:cc:subject :date:message-id:reply-to:content-type; bh=qT89Wi3RAN9CgJ0A7GdoQ7adS5M+Uxt5TfxmdTXEZ+Q=; b=Sagd4BG+iDuB7VIM0ibTD9d9fZoRv8htP11S1+sYfLu2zkycWEfEgdzfmyEAfrt3p3 /k8Q6Ly/wnIuKWPdPS06tJrHkm2cV0hIgByBWt3A87DudI4W5g1Zb0qbPMntxl1KeNwQ K45c6AYsyJCaQdSwr0DEnMYS7QZxFjGJMk9+EhnfyIXOVEI0c05lgv+W7go4zIpAheeu TE1mFdgtA+Pbd4Zq3DGGEnM4+O2CysrxBJeD65wTY/ZLaXCQPA6Aw754xr6lmXyhxIJ6 5D1OWHNB6hjNl2TiQK98JlsYxkJSBYnYv1ILgPrAAqYi1+zUNBubu4IowrWA3cWiWswN wclw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1784385154; x=1784989954; h=in-reply-to:content-disposition:content-type:mime-version :references:message-id:subject:cc:to:from:date:x-gm-gg :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to :content-type; bh=qT89Wi3RAN9CgJ0A7GdoQ7adS5M+Uxt5TfxmdTXEZ+Q=; b=HZj9fW2jG2/YyJyyHYKEdtAQ3iKOEkkJSLbuJLQ95154ftbbi1G6gsPWPjR2oSqk/B /Y66iFpmm//j/TEpFQQaP5BOiBYhbD7JZtMgh0L9vxsHnS2dMIE+xpyGwqqVNc1chM+h fQZblXy6s0nfmXvWumHBVDjMaV3uOfqrsif1rfhjNmopr5ISD1/NYMDGanu40sMvYNs0 BWvLw6EJyuS9wOHclbu1yJs9TFInDViPC/blJnmrwAC4khOxopJ5/PrRzSNdfPGyvAP4 4bdeVnSJX4NmAjaf2V9/P9t/7wJV50EbSQC99VhPeWdBJ8bCS0XwV/y0+xf8VW4WyPLH uO/g== X-Forwarded-Encrypted: i=1; AHgh+Robc3t0d3nWlzdV0qm07n+LzbY1yGIFHkZvjNhpK1sLB5cAj7Uv7CyIpOCYH+lVrdSIcTlEI3Hpmb7y2fo=@vger.kernel.org X-Gm-Message-State: AOJu0Yy6jbmQt/DZKfBpB7pYbjFy6KrSM0cHzDQJ2DgILnpobXD545bK gYUbOJA5sVAlrp9DJJ+dw+oj6eF+K2z/d8wTXMs6U4xwapR2Y1chnAEstQ7sojEJI6Q= X-Gm-Gg: AfdE7ckiKFo7o8pkjuV876VUqO4sgAweuQuvAHvKl9R1HXitLD2k23dFLqyL9z1Y8lH UEVJsXdc9cfbufRBMpbFHwqSJAa/OVQKREvD/PORw1/ruHdGZKMep+K9BFkzyhZHgCqpvEYw22O w/sp4TSZXlijIrqeR/X1L/8Ye5tWMNRqVyaHry62Yh5nvQ+tUdPUkb7PZUI4nVJk987Fi54TyQi 9fRx8cTfTjzppw1GE1liYQsknrTPWfmjXpM4Uenz9fr+Q6D5yNezMlHJZdoRJElrP1Ebq8pV6Gf o00Bhgn0gUQPrkW7dtN37tIS1eYmM77lqMIKLBhih+jQYHSu8VAUHkKNEZVg+/u6Wbjr/1LjPOM +EoRE0uth5XjF75uX9CduZHi61aTBV3CK4kXzCgggXfVFXcGtFeQG3sqGHxD4 X-Received: by 2002:a05:620a:4706:b0:915:6a2b:6265 with SMTP id af79cd13be357-930b41e282amr722435385a.44.1784385154410; Sat, 18 Jul 2026 07:32:34 -0700 (PDT) Received: from ziepe.ca ([159.2.72.92]) by smtp.gmail.com with ESMTPSA id af79cd13be357-930b542d1e5sm425204385a.23.2026.07.18.07.32.33 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sat, 18 Jul 2026 07:32:33 -0700 (PDT) Received: from jgg by wakko with local (Exim 4.97) (envelope-from ) id 1wl65h-00000006T6V-0EUE; Sat, 18 Jul 2026 11:32:33 -0300 Date: Sat, 18 Jul 2026 11:32:33 -0300 From: Jason Gunthorpe To: Daniel Drake Cc: "Joerg Roedel (AMD)" , Will Deacon , Robin Murphy , Rob Herring , Krzysztof Kozlowski , Conor Dooley , Florian Fainelli , Broadcom internal kernel review list , iommu@lists.linux.dev, linux-kernel@vger.kernel.org, devicetree@vger.kernel.org, linux-rpi-kernel@lists.infradead.org, linux-arm-kernel@lists.infradead.org, nick.hollinghurst@raspberrypi.com Subject: Re: [PATCH 5/6] iommu: Add Broadcom BCM2712 IOMMU driver Message-ID: <20260718143233.GE701389@ziepe.ca> References: <20260712-bcm2712-iommu-submit-v1-0-80e10cdde2ea@reactivated.net> <20260712-bcm2712-iommu-submit-v1-5-80e10cdde2ea@reactivated.net> <20260712221125.GD1835788@ziepe.ca> <57f5675c-8bcd-4022-978b-9f7933bb0032@reactivated.net> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <57f5675c-8bcd-4022-978b-9f7933bb0032@reactivated.net> On Sat, Jul 18, 2026 at 09:39:48AM +0100, Daniel Drake wrote: > I don't think I can use that because this setup uses an IOVA aperture at > base 0xA00000000, whereas generic_pt assumes it is managing a 0-indexed > virtual address space. So the driver has to intercept every incoming IOVA > and translate for the aperture, see how map_pages calls: When you say aperture here you mean we place an IOPTE at VA 0 but the dma_addr_t for that has to be adjusted to 0xA00000000 ? I wonder if DT can do this with dma-ranges or something, we have many other conditions where the dma_addr_t and the internal physical have offsets.. > I was wondering about making iommupt understand apertures and > translate accordingly, but I imagine you would want to keep that > kind of thing out of the generic fast path? We already have pt_full_va_prefix() which isn't strictly an offset but it it probably matches what this HW does. You can implement it in the broadcom format and return the prefix value. So long as the vasz fits within those trailing 0s. That's basically free and has no runtime cost on other formats. Jason