From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from gabe.freedesktop.org (gabe.freedesktop.org [131.252.210.177]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id E1EE6105F7B1 for ; Fri, 13 Mar 2026 15:11:33 +0000 (UTC) Received: from gabe.freedesktop.org (localhost [127.0.0.1]) by gabe.freedesktop.org (Postfix) with ESMTP id 5337810E178; Fri, 13 Mar 2026 15:11:33 +0000 (UTC) Authentication-Results: gabe.freedesktop.org; dkim=pass (1024-bit key; unprotected) header.d=collabora.com header.i=adrian.larumbe@collabora.com header.b="Mv7vOoaE"; dkim-atps=neutral Received: from sender4-pp-f112.zoho.com (sender4-pp-f112.zoho.com [136.143.188.112]) by gabe.freedesktop.org (Postfix) with ESMTPS id B585410E178 for ; Fri, 13 Mar 2026 15:11:29 +0000 (UTC) ARC-Seal: i=1; a=rsa-sha256; t=1773414680; cv=none; d=zohomail.com; s=zohoarc; b=UV3yL518arnR0/TjctHYyB0rzN/vQblVHEmQ1s1j0n09hdcsqPhORPAr43cFUZ4DSusB6EiWv14VRqh4ErSwmU6ZHqUTogoUEWCtjgkTmOYbjhTNttojjgqECb73QNwZtMJh20LsfE2RhUI2egmr4d3A9ZwtMyUMsQZ8SCTGuX4= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1773414680; h=Content-Type:Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:MIME-Version:Message-ID:References:Subject:Subject:To:To:Message-Id:Reply-To; bh=SdVZB9xAx6kDE71K2UbMTmPRTxksVaVSVA3Iu9cKNPk=; b=QaH/pWzQskk9ajUlqyjqrz36awrtv3pmNqIYIo/owLPHN7+pnbTAAgIlbh2FooLV5Nr8KnCSFKm3CwfD7fIrn2l9ixKzF8ysghPtDeNnTAPpgHxmiyyYIevieV6BYXRr+UxERbW6Cbh7VuYo1rutZynhAnrgVHWvARTSRwJKvyQ= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass header.i=collabora.com; spf=pass smtp.mailfrom=adrian.larumbe@collabora.com; dmarc=pass header.from= DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; t=1773414680; s=zohomail; d=collabora.com; i=adrian.larumbe@collabora.com; h=From:From:To:To:Cc:Cc:Subject:Subject:Date:Date:Message-ID:In-Reply-To:References:MIME-Version:Content-Type:Content-Transfer-Encoding:Message-Id:Reply-To; bh=SdVZB9xAx6kDE71K2UbMTmPRTxksVaVSVA3Iu9cKNPk=; b=Mv7vOoaEkTKPFo6XUHzvZnHNHqjfnpUX8ErMTabRCH/TTGSCDE8IfYTKnx76+24P u/QzDS7GtpEOrSk3JQSDn2JWVXTi/V2ON/4CQ5szdxPTUuWkv4E8w2QNAgSJBmpf/Jk El5gup6wYr2yPgOLxvmFHbh4xhzwv1bcpiz5cHAs= Received: by mx.zohomail.com with SMTPS id 1773414678777968.1023471391474; Fri, 13 Mar 2026 08:11:18 -0700 (PDT) From: =?UTF-8?q?Adri=C3=A1n=20Larumbe?= To: linux-kernel@vger.kernel.org Cc: dri-devel@lists.freedesktop.org, Steven Price , Boris Brezillon , Janne Grunau , kernel@collabora.com, =?UTF-8?q?Adri=C3=A1n=20Larumbe?= , Liviu Dudau , Maarten Lankhorst , Maxime Ripard , Thomas Zimmermann , David Airlie , Simona Vetter Subject: [PATCH v5 09/11] drm/panthor: Handle remap case for repeated mappings Date: Fri, 13 Mar 2026 15:09:46 +0000 Message-ID: <20260313150956.1618635-10-adrian.larumbe@collabora.com> X-Mailer: git-send-email 2.53.0 In-Reply-To: <20260313150956.1618635-1-adrian.larumbe@collabora.com> References: <20260313150956.1618635-1-adrian.larumbe@collabora.com> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 X-BeenThere: dri-devel@lists.freedesktop.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Direct Rendering Infrastructure - Development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" V2hlbiBhIEdQVVZBIHJlbWFwIGlzIHRyaWdnZXJlZCBhcyBhIGNvbnNlcXVlbmNlIG9mIGEgVk0g b3BlcmF0aW9uCmluc2Vyc2VjdGluZyB3aXRoIGV4aXN0aW5nIFZBcywgd2hlbiBtYXBwaW5nIHRo ZSBzcGxpdCBWQXMgb25lIG11c3QgdGFrZQppbnRvIGFjY291bnQgd2hldGhlciB0aGV5IHdlcmUg cmVwZWF0LW1hcHBlZC4KClNpZ25lZC1vZmYtYnk6IEFkcmnDoW4gTGFydW1iZSA8YWRyaWFuLmxh cnVtYmVAY29sbGFib3JhLmNvbT4KLS0tCiBkcml2ZXJzL2dwdS9kcm0vcGFudGhvci9wYW50aG9y X21tdS5jIHwgNjMgKysrKysrKysrKysrKysrKystLS0tLS0tLS0tCiAxIGZpbGUgY2hhbmdlZCwg MzkgaW5zZXJ0aW9ucygrKSwgMjQgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvZHJpdmVycy9n cHUvZHJtL3BhbnRob3IvcGFudGhvcl9tbXUuYyBiL2RyaXZlcnMvZ3B1L2RybS9wYW50aG9yL3Bh bnRob3JfbW11LmMKaW5kZXggYTM1NzA2M2JiOWY2Li5iYTMyMmUyMDI5YjkgMTAwNjQ0Ci0tLSBh L2RyaXZlcnMvZ3B1L2RybS9wYW50aG9yL3BhbnRob3JfbW11LmMKKysrIGIvZHJpdmVycy9ncHUv ZHJtL3BhbnRob3IvcGFudGhvcl9tbXUuYwpAQCAtMjEyNCw0MSArMjEyNCw1MiBAQCBzdGF0aWMg dm9pZCBwYW50aG9yX3ZtYV9pbml0KHN0cnVjdCBwYW50aG9yX3ZtYSAqdm1hLCB1MzIgZmxhZ3Mp CiAJIERSTV9QQU5USE9SX1ZNX0JJTkRfT1BfTUFQX05PRVhFQyB8IFwKIAkgRFJNX1BBTlRIT1Jf Vk1fQklORF9PUF9NQVBfVU5DQUNIRUQpCiAKLXN0YXRpYyBpbnQgcGFudGhvcl9ncHV2YV9zbV9z dGVwX21hcChzdHJ1Y3QgZHJtX2dwdXZhX29wICpvcCwgdm9pZCAqcHJpdikKK3N0YXRpYyBpbnQK K3BhbnRob3Jfdm1fbWFwX3JhbmdlKHN0cnVjdCBwYW50aG9yX3ZtICp2bSwgYm9vbCByZXBlYXQs IHN0cnVjdCBzZ190YWJsZSAqc2d0LAorCQkgICAgIHU2NCBhZGRyLCB1NjQgb2Zmc2V0LCB1NjQg c2l6ZSwgdTMyIHJlcGVhdF9yYW5nZSwgaW50IHByb3QpCiB7Ci0Jc3RydWN0IHBhbnRob3Jfdm0g KnZtID0gcHJpdjsKLQlzdHJ1Y3QgcGFudGhvcl92bV9vcF9jdHggKm9wX2N0eCA9IHZtLT5vcF9j dHg7Ci0Jc3RydWN0IHBhbnRob3Jfdm1hICp2bWEgPSBwYW50aG9yX3ZtX29wX2N0eF9nZXRfdm1h KG9wX2N0eCk7CiAJaW50IHJldDsKIAotCWlmICghdm1hKQotCQlyZXR1cm4gLUVJTlZBTDsKLQot CXBhbnRob3Jfdm1hX2luaXQodm1hLCBvcF9jdHgtPmZsYWdzICYgUEFOVEhPUl9WTV9NQVBfRkxB R1MpOworCWlmICghc2l6ZSkKKwkJcmV0dXJuIDA7CiAKLQlpZiAob3BfY3R4LT5mbGFncyAmIERS TV9QQU5USE9SX1ZNX0JJTkRfT1BfTUFQX1JFUEVBVCkgewotCQl1NjQgcmVwZWF0X2NvdW50ID0g b3AtPm1hcC52YS5yYW5nZTsKKwlpZiAocmVwZWF0KSB7CisJCXU2NCByZXBlYXRfY291bnQgPSBz aXplOwogCi0JCWRvX2RpdihyZXBlYXRfY291bnQsIG9wLT5tYXAuZ2VtLnJlcGVhdF9yYW5nZSk7 CisJCWRvX2RpdihyZXBlYXRfY291bnQsIHJlcGVhdF9yYW5nZSk7CiAKIAkJaWYgKGRybV9XQVJO X09OKCZ2bS0+cHRkZXYtPmJhc2UsICFyZXBlYXRfY291bnQpKQogCQkJcmV0dXJuIC1FSU5WQUw7 CiAKLQkJcmV0ID0gcGFudGhvcl92bV9yZXBlYXRlZF9tYXBfcGFnZXModm0sIG9wLT5tYXAudmEu YWRkciwKLQkJCQkJCSAgICBmbGFnc190b19wcm90KHZtYS0+ZmxhZ3MpLAotCQkJCQkJICAgIG9w X2N0eC0+bWFwLnNndCwKLQkJCQkJCSAgICBvcC0+bWFwLmdlbS5vZmZzZXQsCi0JCQkJCQkgICAg b3AtPm1hcC5nZW0ucmVwZWF0X3JhbmdlLAorCQlyZXQgPSBwYW50aG9yX3ZtX3JlcGVhdGVkX21h cF9wYWdlcyh2bSwgYWRkciwgcHJvdCwgc2d0LAorCQkJCQkJICAgIG9mZnNldCwgcmVwZWF0X3Jh bmdlLAogCQkJCQkJICAgIHJlcGVhdF9jb3VudCk7CiAJCWlmICghcmV0KQogCQkJdm0tPmJhc2Uu ZmxhZ3MgfD0gRFJNX0dQVVZNX0hBU19SRVBFQVRfTUFQUzsKIAl9IGVsc2UgewotCQlyZXQgPSBw YW50aG9yX3ZtX21hcF9wYWdlcyh2bSwgb3AtPm1hcC52YS5hZGRyLAotCQkJCQkgICBmbGFnc190 b19wcm90KHZtYS0+ZmxhZ3MpLAotCQkJCQkgICBvcF9jdHgtPm1hcC5zZ3QsIG9wLT5tYXAuZ2Vt Lm9mZnNldCwKLQkJCQkJICAgb3AtPm1hcC52YS5yYW5nZSk7CisJCXJldCA9IHBhbnRob3Jfdm1f bWFwX3BhZ2VzKHZtLCBhZGRyLCBwcm90LCBzZ3QsCisJCQkJCSAgIG9mZnNldCwgc2l6ZSk7CiAJ fQogCisJcmV0dXJuIHJldDsKK30KKworc3RhdGljIGludCBwYW50aG9yX2dwdXZhX3NtX3N0ZXBf bWFwKHN0cnVjdCBkcm1fZ3B1dmFfb3AgKm9wLCB2b2lkICpwcml2KQoreworCXN0cnVjdCBwYW50 aG9yX3ZtICp2bSA9IHByaXY7CisJc3RydWN0IHBhbnRob3Jfdm1fb3BfY3R4ICpvcF9jdHggPSB2 bS0+b3BfY3R4OworCXN0cnVjdCBwYW50aG9yX3ZtYSAqdm1hID0gcGFudGhvcl92bV9vcF9jdHhf Z2V0X3ZtYShvcF9jdHgpOworCWludCByZXQ7CisKKwlpZiAoIXZtYSkKKwkJcmV0dXJuIC1FSU5W QUw7CisKKwlwYW50aG9yX3ZtYV9pbml0KHZtYSwgb3BfY3R4LT5mbGFncyAmIFBBTlRIT1JfVk1f TUFQX0ZMQUdTKTsKKworCXJldCA9IHBhbnRob3Jfdm1fbWFwX3JhbmdlKHZtLCBvcF9jdHgtPmZs YWdzICYgRFJNX1BBTlRIT1JfVk1fQklORF9PUF9NQVBfUkVQRUFULAorCQkJCSAgIG9wX2N0eC0+ bWFwLnNndCwgb3AtPm1hcC52YS5hZGRyLCBvcC0+bWFwLmdlbS5vZmZzZXQsCisJCQkJICAgb3At Pm1hcC52YS5yYW5nZSwgb3AtPm1hcC5nZW0ucmVwZWF0X3JhbmdlLAorCQkJCSAgIGZsYWdzX3Rv X3Byb3Qodm1hLT5mbGFncykpOwogCWlmIChyZXQpIHsKIAkJcGFudGhvcl92bV9vcF9jdHhfcmV0 dXJuX3ZtYShvcF9jdHgsIHZtYSk7CiAJCXJldHVybiByZXQ7CkBAIC0yMjYyLDggKzIyNzMsMTAg QEAgc3RhdGljIGludCBwYW50aG9yX2dwdXZhX3NtX3N0ZXBfcmVtYXAoc3RydWN0IGRybV9ncHV2 YV9vcCAqb3AsCiAJCXU2NCBvZmZzZXQgPSBvcC0+cmVtYXAucHJldi0+Z2VtLm9mZnNldCArIHVu bWFwX3N0YXJ0IC0gb3AtPnJlbWFwLnByZXYtPnZhLmFkZHI7CiAJCXU2NCBzaXplID0gb3AtPnJl bWFwLnByZXYtPnZhLmFkZHIgKyBvcC0+cmVtYXAucHJldi0+dmEucmFuZ2UgLSB1bm1hcF9zdGFy dDsKIAotCQlyZXQgPSBwYW50aG9yX3ZtX21hcF9wYWdlcyh2bSwgdW5tYXBfc3RhcnQsIGZsYWdz X3RvX3Byb3QodW5tYXBfdm1hLT5mbGFncyksCi0JCQkJCSAgIGJvLT5iYXNlLnNndCwgb2Zmc2V0 LCBzaXplKTsKKwkJcmV0ID0gcGFudGhvcl92bV9tYXBfcmFuZ2Uodm0sIG9wLT5yZW1hcC5wcmV2 LT5mbGFncyAmIERSTV9HUFVWQV9SRVBFQVQsCisJCQkJCSAgIGJvLT5iYXNlLnNndCwgb3AtPnJl bWFwLnByZXYtPnZhLmFkZHIsIG9mZnNldCwKKwkJCQkJICAgc2l6ZSwgb3AtPnJlbWFwLnByZXYt PmdlbS5yZXBlYXRfcmFuZ2UsCisJCQkJCSAgIGZsYWdzX3RvX3Byb3QodW5tYXBfdm1hLT5mbGFn cykpOwogCQlpZiAocmV0KQogCQkJcmV0dXJuIHJldDsKIApAQCAtMjI3Niw4ICsyMjg5LDEwIEBA IHN0YXRpYyBpbnQgcGFudGhvcl9ncHV2YV9zbV9zdGVwX3JlbWFwKHN0cnVjdCBkcm1fZ3B1dmFf b3AgKm9wLAogCQl1NjQgYWRkciA9IG9wLT5yZW1hcC5uZXh0LT52YS5hZGRyOwogCQl1NjQgc2l6 ZSA9IHVubWFwX3N0YXJ0ICsgdW5tYXBfcmFuZ2UgLSBvcC0+cmVtYXAubmV4dC0+dmEuYWRkcjsK IAotCQlyZXQgPSBwYW50aG9yX3ZtX21hcF9wYWdlcyh2bSwgYWRkciwgZmxhZ3NfdG9fcHJvdCh1 bm1hcF92bWEtPmZsYWdzKSwKLQkJCQkJICAgYm8tPmJhc2Uuc2d0LCBvcC0+cmVtYXAubmV4dC0+ Z2VtLm9mZnNldCwgc2l6ZSk7CisJCXJldCA9IHBhbnRob3Jfdm1fbWFwX3JhbmdlKHZtLCBvcC0+ cmVtYXAubmV4dC0+ZmxhZ3MgJiBEUk1fR1BVVkFfUkVQRUFULAorCQkJCQkgICBiby0+YmFzZS5z Z3QsIGFkZHIsIG9wLT5yZW1hcC5uZXh0LT5nZW0ub2Zmc2V0LAorCQkJCQkgICBzaXplLCBvcC0+ cmVtYXAubmV4dC0+Z2VtLnJlcGVhdF9yYW5nZSwKKwkJCQkJICAgZmxhZ3NfdG9fcHJvdCh1bm1h cF92bWEtPmZsYWdzKSk7CiAJCWlmIChyZXQpCiAJCQlyZXR1cm4gcmV0OwogCi0tIAoyLjUzLjAK Cg==