From nobody Sat Feb 7 06:14:33 2026 Received: from bali.collaboradmins.com (bali.collaboradmins.com [148.251.105.195]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 59E011E487 for ; Fri, 23 Jan 2026 21:23:52 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=148.251.105.195 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1769203433; cv=none; b=myY5yAKpT+97EEoZMU1vg1AVvYu00GzZjhs42+sKCYLNuWrFIpghpHN+LImPr4/iDwi4XDhhso5YQuCgzl3wIzX9lCqz3lfRBe+AHeBDdW8hxR7UBzaAUmO4N4kxIl6nxfh2yAWHjdf7IRgJAtFfkAMrq5vRQX3potf4jI3yMAI= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1769203433; c=relaxed/simple; bh=5vEB8La44c65tSqwIyVz7t+cLWCUK5V0O5nicgmnpOY=; h=From:To:Cc:Subject:Date:Message-ID:MIME-Version; b=pJTmdhUkIPnX/9qSKFcGProCO6n4/1Flv+5nC7IvMl3qN+N00PQls+G6bOYf10HIXkvMiPDlI87oUq3l3UGFbssdDp39ad6lquV60YqAHL5G/NHH5T3sd2YDkTx7c2Mq7zHd0n+jEF0+rE0dl74j/pM2xSirScia5WGyVKEqmhE= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=collabora.com; spf=pass smtp.mailfrom=collabora.com; dkim=pass (2048-bit key) header.d=collabora.com header.i=@collabora.com header.b=ftHaiD7G; arc=none smtp.client-ip=148.251.105.195 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=collabora.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=collabora.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=collabora.com header.i=@collabora.com header.b="ftHaiD7G" DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=collabora.com; s=mail; t=1769203430; bh=5vEB8La44c65tSqwIyVz7t+cLWCUK5V0O5nicgmnpOY=; h=From:To:Cc:Subject:Date:From; b=ftHaiD7G11je8jAJXxhw7MKYwyXNiLL/j3buQSvck3S8mvSrLYe4R/SXgHYf0nYKg 5JQ/I7hV5o0SNBQlPRF4QKPNAvehJIvdRgmE1H2K3H7XII1EEIN51Jj/5OD5WcfQ5k ukI56fldWUtJGosxBYW9EQUxMCvLPJA+kYTWRSIFFtlBcaJ+gLde1m/V13P83KEEVu eUQHRkJQrsBP6i9Q8m9NvRZGbqueZTKy+NCD9/zj4tE9qopda1FaEcbQ5LGlbYBUsq hVGOASEVROXYRUP8K7yzXYhdvn71jPqIGTNQix0LGCrJn/qe6JoSmDutbg1tVkfXyJ H6RIs5DthJj6g== Received: from debian-rockchip-rock5b-rk3588.. (unknown [90.168.160.154]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (No client certificate requested) (Authenticated sender: nanokatze) by bali.collaboradmins.com (Postfix) with ESMTPSA id BB69B17E0E3D; Fri, 23 Jan 2026 22:23:49 +0100 (CET) From: Caterina Shablia To: Maarten Lankhorst , Maxime Ripard , Thomas Zimmermann , David Airlie , Simona Vetter Cc: kernel@collabora.com, Caterina Shablia , "Boris Brezillon" , "Steven Price" , "Liviu Dudau" , dri-devel@lists.freedesktop.org, linux-kernel@vger.kernel.org Subject: [PATCH v1] drm: add ARM interleaved 64k modifier Date: Fri, 23 Jan 2026 21:23:25 +0000 Message-ID: <20260123212327.83064-1-caterina.shablia@collabora.com> X-Mailer: git-send-email 2.47.3 Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" This modifier is intended to be used by panvk to implement sparse partially-resident images with better map and unmap performance, and no worse access performance, compared to implementing them in terms of U-interleaved. With this modifier, the arrangement of texel blocks is very similar to block U-interleaved. Tiles are laid out linearly. Tiles are always 64k bytes in size and are 1:1-sided rectangles when texel block is 1 byte or a multiple of 4 bytes, and 2:1-sided otherwise. Only power of two byte texel blocks can be used with this modifier. Within a single tile, texels are arranged according to U-interleaving. Unlike block U-interleaved, the layout depends solely on texel block size and doesn't change depending on whether the image format is compressed or not. The hardware features corresponding to this modifier are available starting with v10 (second gen Valhall.) The corresponding panvk MR can be found at: https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/38986 Signed-off-by: Caterina Shablia --- include/uapi/drm/drm_fourcc.h | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/include/uapi/drm/drm_fourcc.h b/include/uapi/drm/drm_fourcc.h index e527b24bd824..0da2c880e08c 100644 --- a/include/uapi/drm/drm_fourcc.h +++ b/include/uapi/drm/drm_fourcc.h @@ -1422,6 +1422,16 @@ drm_fourcc_canonicalize_nvidia_format_mod(__u64 modi= fier) #define DRM_FORMAT_MOD_ARM_16X16_BLOCK_U_INTERLEAVED \ DRM_FORMAT_MOD_ARM_CODE(DRM_FORMAT_MOD_ARM_TYPE_MISC, 1ULL) =20 +/* + * ARM 64k interleaved modifier + * + * This is used by ARM Mali v10+ GPUs. It's basically the same as 16x16 bl= ock + * U-interleaved, but within 64k-byte 1:1 or 2:1 -sided tiles. Tiles thems= elves + * are laid out linearly. + */ +#define DRM_FORMAT_MOD_ARM_INTERLEAVED_64K \ + DRM_FORMAT_MOD_ARM_CODE(DRM_FORMAT_MOD_ARM_TYPE_MISC, 2ULL) + /* * Allwinner tiled modifier * base-commit: f08f665f8cda9520d98ee24545d306a92f386616 --=20 2.47.3