From patchwork Mon Aug 3 16:10:39 2026 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: =?utf-8?q?Jernej_=C5=A0krabec?= X-Patchwork-Id: 2924 Return-Path: X-Original-To: noreply@patchwork.local Delivered-To: noreply@patchwork.local Received: from tor.lore.kernel.org (tor.lore.kernel.org [172.105.105.114]) by mxe881.netcup.net (Postfix) with ESMTPS id 3C7511C206B for ; Mon, 3 Aug 2026 18:37:07 +0200 (CEST) Authentication-Results: mxe881; dkim=pass header.d=gmail.com; spf=pass (sender IP is 172.105.105.114) smtp.mailfrom=linux-sunxi+bounces-24970-noreply=patchwork.local@lists.linux.dev smtp.helo=tor.lore.kernel.org Received-SPF: pass (mxe881: domain of lists.linux.dev designates 172.105.105.114 as permitted sender) client-ip=172.105.105.114; envelope-from=linux-sunxi+bounces-24970-noreply=patchwork.local@lists.linux.dev; helo=tor.lore.kernel.org; Received: from smtp.subspace.kernel.org (conduit.subspace.kernel.org [100.90.174.1]) by tor.lore.kernel.org (Postfix) with ESMTP id 86FA331F1505 for ; Mon, 3 Aug 2026 16:11:53 +0000 (UTC) Received: from localhost.localdomain (localhost.localdomain [127.0.0.1]) by smtp.subspace.kernel.org (Postfix) with ESMTP id AF20A381B04; Mon, 3 Aug 2026 16:11:21 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="VPEZatLM" X-Original-To: linux-sunxi@lists.linux.dev Received: from mail-wm1-f48.google.com (mail-wm1-f48.google.com [209.85.128.48]) (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 3841137AA61 for ; Mon, 3 Aug 2026 16:11:15 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.128.48 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1785773481; cv=none; b=qMTpl/XhCJ6QMhRyt9uI2bYo32P6V0XW09VLJZ+vBwYgANrHt1yYbaMdYBOjlEJUSauBmZ+hfntPUGUGJirawSw5kgc58Sj/WJBGggmH5MnFAedYyNSO+9VYd4X4eVjwbXPFLXM+rg2pExUXQ2qz23FS8I1iJdl02LNd7HgCJGg= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1785773481; c=relaxed/simple; bh=/eRwdE1Z4FBwCr+OJddXQexYanXlJrAc8dO/AUYg5cQ=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=UXF8dDw4DzpjBPVpa3zaCJKnlcVKOWcRHu9onghqJZXYb2nan7c6c3v1x6OUGDDmcqTPfo2/Cj1rGAiGYXNMLMzZiPX6jUrpLlahBxNWJsSBy1bbZ7xW1b1fnXhURnfq407OlruF4sLGysanoSx07XTyP/4KHhEaUDJm3AosJbA= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com; spf=pass smtp.mailfrom=gmail.com; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b=VPEZatLM; arc=none smtp.client-ip=209.85.128.48 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=gmail.com Received: by mail-wm1-f48.google.com with SMTP id 5b1f17b1804b1-4955de8797cso13815155e9.3 for ; Mon, 03 Aug 2026 09:11:14 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20251104; t=1785773473; x=1786378273; darn=lists.linux.dev; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to:content-type; bh=/c4A3W/yWJ8G63KpRNdKLfab7NwGTF+mRH1tOy5r8yk=; b=VPEZatLMADcFtxa3BngVNVF7Du5YPLe44A80zNMUt/2XJSAqKCkMonYlwmpWTU8p8J GFquUKHGcbcT01nhBQnHSLLNF9Ja7k+9oqrVh7V6MspqExfpwXlkTDgiqqijXILO4IHe P5oZW+AEZkvsz0uX99vEEgBJ+1mpdR29JLm1A8roNYe4o/eIqiwpxl02nP4jKIl8TX9N lsjOS803uSbe0maqqlO+NgNvecpdEKOueCCAbwiB3MZ9ld8JSeI7kZJ2jg/13Pe3Ygav xsfHFLiDltxZQWLrc8LKaR1ujE1CXrn2gMspXCM+ibbiZfasYf5bw+/PgBL02YvFyorP xTZA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1785773473; x=1786378273; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-gg:x-gm-message-state:from :to:cc:subject:date:message-id:reply-to:content-type; bh=/c4A3W/yWJ8G63KpRNdKLfab7NwGTF+mRH1tOy5r8yk=; b=dSQIGyQLty6Tw727m8oLoI4ptTaggQGM4cp6319C+Gcu7vYEW8OPAtu+vUoRL4Qh0o z/c35NvbHhYwpA85Ojn9q8EGdPMNCD1dPdrmVa08fWvPr3pWZW9XRswSZPiOCrkclafx 73QTr6pALP+IgB+/HpmGTp3NuCwtn4PmBB6wFJRAzRwS8Weso0e42RUPTvLKaQDumub7 ENisEN+xsAS06NufUXUSNjYIMiiJqFygTbTGguTi3sBLQUTKsv8DufnSkYUlpiNUcsRY geJKGQjNfKc1lkCyBAVU/b43IcFeYwsuCWkDY0SLl7XMmSvMnj3rQQWgLFujuSKz/qJ7 9BKA== X-Forwarded-Encrypted: i=1; AHgh+RrPZMdMXAWI1xZWuzDGMFE28j93rkARNZn7OoNAVvFxZRwC822QoCkJJfnekNKInMyahpfGJtKYXZyByQ==@lists.linux.dev X-Gm-Message-State: AOJu0YyAKKWfygA78PbTrpyl5ttczhLnuTDAkhgoEdbjx1Q6j0e5uU+B Qvw2e467CfRKh5Gg28iNLXNbMveLUy4H4uaeKBy69O/awDB0PDHAS16D X-Gm-Gg: AR+sD112DZPilsOvxrc6mQL9m/pCr4PSg8YtrKliANHF4vdhIpOe6Jb3Ki9LtYQDOrr 8XWClvoTOL4DrSg0ZKNIbyJbTosjK0ooe0hhatg1nXU2LPr41mWVcDCl/tU9o/iM4DCfj05gHqr 7XN19EOgKv1oGQK+J3P6UebYE4gaNW8NyLqJil5oPevXM0nrGx+Miii6l+RtplH6yVw8nKxxueT BPa8axBFHdTNP1sXuUu/yPKQjqv96/cS+jNYk9WxzOfWvHRhmF/fxFbH5bpk4dw9RwZ/0rErqNc r1ozO+slv4HwNZDV06YW2ZUceU+7b4XHG8V2MjRJhEN7oc2sXZG6KkmQh0hjlx0XOxyvZ/F+CFd TeVwDUNfFcW0R+fJrcwcmBYgq4FAehzgTpspg0B6zxaJHyzOtyfBPA72RnySTeF/V36qSbL1YNm cnWCmxfK9rzKBGildrcxfDpy1kjqmr9Pht5rK2QMSGpZZL4vWNi18V2uiHd6aK1zg5n/sl31oA3 2Ap58UdqQI4RXjH7vsJPquf4PkProYYh83TRjJPBpi8yJrD2GE/Xs3iBfSVj9hFmzFul9TRV5E4 7QndhdO/fSIZvz5bOOzs4JQUxTtlWzTOVE3O7+NETapOtvn1rhdEcwCJpFHGv4U3UcEGbD0YDxe gddUqT8SOY5fvIVumm2jyJpV9O8HLEi7qJ/woIU4Zt5DPPSohxgszhQB1ck5jCc7qMHr4LzaIQL Ocrg== X-Received: by 2002:a05:600c:4454:b0:493:bd2a:93bb with SMTP id 5b1f17b1804b1-4980c64b6cdmr249435305e9.3.1785773472786; Mon, 03 Aug 2026 09:11:12 -0700 (PDT) Received: from jernej-laptop (APN-122-100-117-gprs.simobil.net. [46.122.100.117]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-49949fc2da2sm3363735e9.3.2026.08.03.09.11.10 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 03 Aug 2026 09:11:11 -0700 (PDT) From: Jernej Skrabec To: wens@kernel.org Cc: maarten.lankhorst@linux.intel.com, mripard@kernel.org, tzimmermann@suse.de, airlied@gmail.com, simona@ffwll.ch, samuel@sholland.org, dri-devel@lists.freedesktop.org, linux-arm-kernel@lists.infradead.org, linux-sunxi@lists.linux.dev, linux-kernel@vger.kernel.org, Jernej Skrabec Subject: [PATCH 01/13] drm/sun4i: Fix V3s YUV scanline size Date: Mon, 3 Aug 2026 18:10:39 +0200 Message-ID: <75ad4947981f2dc33fd42c05ae0b0cedda7647bd.1785772659.git.jernej.skrabec@gmail.com> X-Mailer: git-send-email 2.55.0 In-Reply-To: References: Precedence: bulk X-Mailing-List: linux-sunxi@lists.linux.dev List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-MORS-Enabled: yes X-MORS-DOMAIN: patchwork.local X-MORS-HOSTING: hosting172546 X-MORS-USER: hosting172546 X-getmail-retrieved-from-mailbox: =?utf-8?q?INBOX?= The VI scaler line buffer on V3s can hold 1024 pixels for subsampled formats, not 2048 as currently claimed. Since coarse horizontal scaling is engaged only once the source width exceeds that limit, YUV layers wider than 1024 pixels are passed to the scaler unchanged and the output is corrupted. Use the value from the vendor driver. Fixes: 2586de70c15c ("drm/sun4i: Add VI scaler line size quirk for DE2/DE3") Signed-off-by: Jernej Skrabec Acked-by: Chen-Yu Tsai --- drivers/gpu/drm/sun4i/sun8i_mixer.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/gpu/drm/sun4i/sun8i_mixer.c b/drivers/gpu/drm/sun4i/sun8i_mixer.c index 4e4226295010..b6cd7352e76c 100644 --- a/drivers/gpu/drm/sun4i/sun8i_mixer.c +++ b/drivers/gpu/drm/sun4i/sun8i_mixer.c @@ -785,7 +785,7 @@ static const struct sun8i_mixer_cfg sun8i_v3s_mixer_cfg = { .de_type = SUN8I_MIXER_DE2, .vi_scaler_num = 2, .scaler_mask = 0x3, - .scanline_yuv = 2048, + .scanline_yuv = 1024, }, .de_type = SUN8I_MIXER_DE2, .mod_rate = 150000000, From patchwork Mon Aug 3 16:10:40 2026 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: =?utf-8?q?Jernej_=C5=A0krabec?= X-Patchwork-Id: 2930 Return-Path: X-Original-To: noreply@patchwork.local Delivered-To: noreply@patchwork.local Received: from sea.lore.kernel.org (sea.lore.kernel.org [172.234.253.10]) by mxe881.netcup.net (Postfix) with ESMTPS id 0561E1C08F6 for ; Mon, 3 Aug 2026 19:30:14 +0200 (CEST) Authentication-Results: mxe881; dkim=pass header.d=gmail.com; spf=pass (sender IP is 172.234.253.10) smtp.mailfrom=linux-sunxi+bounces-24969-noreply=patchwork.local@lists.linux.dev smtp.helo=sea.lore.kernel.org Received-SPF: pass (mxe881: domain of lists.linux.dev designates 172.234.253.10 as permitted sender) client-ip=172.234.253.10; envelope-from=linux-sunxi+bounces-24969-noreply=patchwork.local@lists.linux.dev; helo=sea.lore.kernel.org; Received: from smtp.subspace.kernel.org (conduit.subspace.kernel.org [100.90.174.1]) by sea.lore.kernel.org (Postfix) with ESMTP id AC51E33CABCF for ; Mon, 3 Aug 2026 16:11:42 +0000 (UTC) Received: from localhost.localdomain (localhost.localdomain [127.0.0.1]) by smtp.subspace.kernel.org (Postfix) with ESMTP id 3573B38239D; Mon, 3 Aug 2026 16:11:19 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="s0NxufR8" X-Original-To: linux-sunxi@lists.linux.dev Received: from mail-wm1-f44.google.com (mail-wm1-f44.google.com [209.85.128.44]) (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 9049C380FEB for ; Mon, 3 Aug 2026 16:11:17 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.128.44 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1785773479; cv=none; b=NdjY6IVvFV8EaOwCyBC6sQ+2KUhyFFaSiSQeLzxXiczF0xFhaNtYAyMlcXYusSbsXx2vPpnKuLy5+4jTIxed6/Tu6d0jenm3stQcDhl9L87KNXC/ft9ysAGo7kle+RvcTdY3mkKwZMTchZ0dEn2ZRpDAG6eBXDir+rBg4u18NW0= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1785773479; c=relaxed/simple; bh=PWwlgog84rReNxIXHZ44trRlgx66npQPNSF2KxN5bIs=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=T12uUWYEg0YtJGsazc7yvVbPLwXhVU7El2nKE/mcrGdlWaq7mJ7SWPvV+sJS+gx42CZi0xsv3crn+YBAWUN+eQ5AcDmN2f3N0Q0iaZIk0q8uv5I4O60MVn31KTG1SOI5uGFHm408ug+hZKjJrX4eZaH/Tf7CcDzgojIpmlR/52Q= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com; spf=pass smtp.mailfrom=gmail.com; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b=s0NxufR8; arc=none smtp.client-ip=209.85.128.44 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=gmail.com Received: by mail-wm1-f44.google.com with SMTP id 5b1f17b1804b1-49545ba3d4eso10750535e9.3 for ; Mon, 03 Aug 2026 09:11:17 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20251104; t=1785773476; x=1786378276; darn=lists.linux.dev; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to:content-type; bh=O7t2IG/bjYzTOtWYdkDb/FYlzP9IlRZpnBpyzw8LyRI=; b=s0NxufR8L5JB0aDaaNqFoJILgQ3soQDSP4FjAf7ROm0wQJHvOHum2xa5OZBiWCflH1 1h+PzRB5pGfyf55AC7RfXQQyujTRsC6Zg8BO2XbDsT8NZW/8qpfDqL1ipS22Ff9XzXHI OMsp8sOv2ZKcrf43/C8vm4i8dlIY6fmDnt28IFOfX8JzUJO0VIndh6VeEW9KRybsoQrE bGfE7T6ZRdZqd5GQw7Di2fgslwlfPFYTPT0eWQ4AzaDgyrhtxqnkRo2nW1cV8VvDHpOw yf3BPAErdjhY0Vf2hxuUMeur31Eh18dYaIniW1sqqfXvfTwmgq5KJM0DjE/va5zq/Ls+ t7Mg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1785773476; x=1786378276; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-gg:x-gm-message-state:from :to:cc:subject:date:message-id:reply-to:content-type; bh=O7t2IG/bjYzTOtWYdkDb/FYlzP9IlRZpnBpyzw8LyRI=; b=ACJphu82Ygvj+vStgJHhiairZa1Gskmk3i2vSsRtQWk0vM+3x+sp1yiXElyNIIyuBg VoyCfe2TliGbEEsowaZVxawUq2S20S53Fzg4x5U3eIdgDD+pkEMN/33/Y5Co2s6eVZ1L u8IMZi7BDb352nASCvU2rBiyiwIz/5za0HaUhuurMRFuiEz2Yw+S8MA7fpaAu86UyM+0 Yg0cxAniVicrxqpC39aqpV+B2c7jNzl+TB/yv05bMDXsAN/liYEb/40+Uy0pSl9/KSGt PI66b8mxb8R21Nes7031w5XdlJel/65F3QnaS0Sww5DX9wYUR1zdhddtn+ua4KTWvVo+ Dg7w== X-Forwarded-Encrypted: i=1; AHgh+RqZV45YiQ/dV7AC4C4vFSYG4qhWBvZFF4qDOtO6bfTODrBevD54ZZKRI/PgeK5e4U91LV+KZsQDWZc8gg==@lists.linux.dev X-Gm-Message-State: AOJu0YyuLDibvv8RMhnpkaaYlJpp7o9YonvvKLeOnVjxOwupynsLEMvq FfoK07UsWhUixiMDwVBErlgwmQdQ+EtedCQbEdGdZsuDvwJM8IMVFHhl X-Gm-Gg: AR+sD10r8FolG1/TIRhOuq3j2q0z7uDepWqqcyPxlcejR2bipjyLEWLN+i200EZ76HB NM75+hJaGl1+99JtWNh/WA0kCaHIKAbcDlUc4kITcBWTxxxQgAx2FOlNT+EcRpqtVV31Qk8fxwX 3MPd+p8vBkABQa/pamfUa0bQw+DZIccoSY0tArY7egWv+FGFNedt5jD1WUjta25DztINk2BjNoy V77nZsjOG0nR+lIJU5qKwmtny782zN9Hm6xQECVUUl2oQ0QmJTxdMf+lSD8YL8t2U997z+XS6R5 Fk/gmBh1sR3LFTJ85w7NrNsaSLXGHxs6L7Gi9AHQcdQP3Gq8h5QKnJTLZiHfGTaAjPQtqqWptAR L6GTPhPKjlKTjPJ82ptPV+pLsevcQCXHH80G3bcsGRHd0f7WGQtPgJzyD+6AETJ0Ugr20ukBTty NYQrr37Lr8ZGy46UOQfxjsL2+AfSUzSRfkRrvU6zZoA+dI7pDhW/f9hVuaQKnlIhfss1k8I59v3 MCmhTQ9g1Uiv2CW4c3gR4aFpR8DJpmtaIlvTNBdyQHl1NLF0lkOvNdxaGgaqxydgdLN3z83sgEo PBFRxEd4nbhFLhFtuiyHzD+vaxjMO4I/+1zeRjEM9TYIJVmnGmSf1l7emZRvKLCLx1wUsGWS9zY fUC+LW3USJIqb47AA9wNHzAjrzr5ZgVrNLAyu+a+1en1Op6sRKikOska7Zpae6VJTPVakF3ng6B LxNw== X-Received: by 2002:a05:600c:6d03:b0:495:7a23:1eee with SMTP id 5b1f17b1804b1-4980c674f32mr180465495e9.12.1785773475697; Mon, 03 Aug 2026 09:11:15 -0700 (PDT) Received: from jernej-laptop (APN-122-100-117-gprs.simobil.net. [46.122.100.117]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-49949fc2da2sm3363735e9.3.2026.08.03.09.11.13 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 03 Aug 2026 09:11:15 -0700 (PDT) From: Jernej Skrabec To: wens@kernel.org Cc: maarten.lankhorst@linux.intel.com, mripard@kernel.org, tzimmermann@suse.de, airlied@gmail.com, simona@ffwll.ch, samuel@sholland.org, dri-devel@lists.freedesktop.org, linux-arm-kernel@lists.infradead.org, linux-sunxi@lists.linux.dev, linux-kernel@vger.kernel.org, Jernej Skrabec Subject: [PATCH 02/13] drm/sun4i: vi scaler: Fix coefficient selection Date: Mon, 3 Aug 2026 18:10:40 +0200 Message-ID: <263a4a41442a3c8b072b170256b72658f1b90802.1785772659.git.jernej.skrabec@gmail.com> X-Mailer: git-send-email 2.55.0 In-Reply-To: References: Precedence: bulk X-Mailing-List: linux-sunxi@lists.linux.dev List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-Rspamd-Server: rspamd-worker-8404 X-Spamd-Result: default: False [-0.66 / 15.00]; BAYES_HAM(-5.50)[100.00%]; RBL_SENDERSCORE(2.00)[172.234.253.10:from]; SUSPICIOUS_RECIPS(1.50)[]; DMARC_POLICY_SOFTFAIL(1.00)[gmail.com : SPF not aligned (relaxed), No valid DKIM,none]; R_MISSING_CHARSET(0.50)[]; MAILLIST(-0.15)[generic]; BAD_REP_POLICIES(0.10)[]; MIME_GOOD(-0.10)[text/plain]; HAS_LIST_UNSUB(-0.01)[]; TAGGED_RCPT(0.00)[]; PRECEDENCE_BULK(0.00)[]; RCPT_COUNT_TWELVE(0.00)[12]; TO_DN_SOME(0.00)[]; DBL_BLOCKED_OPENRESOLVER(0.00)[sea.lore.kernel.org:rdns,sea.lore.kernel.org:helo]; FORGED_SENDER_MAILLIST(0.00)[]; FREEMAIL_CC(0.00)[linux.intel.com,kernel.org,suse.de,gmail.com,ffwll.ch,sholland.org,lists.freedesktop.org,lists.infradead.org,lists.linux.dev,vger.kernel.org]; R_SPF_ALLOW(0.00)[+ip4:172.234.253.10]; ARC_ALLOW(0.00)[subspace.kernel.org:s=arc-20240116:i=1]; FREEMAIL_FROM(0.00)[gmail.com]; RCVD_TLS_LAST(0.00)[]; MIME_TRACE(0.00)[0:+]; FORGED_RECIPIENTS_MAILLIST(0.00)[]; FROM_HAS_DN(0.00)[]; MID_RHS_MATCH_FROM(0.00)[]; ASN(0.00)[asn:63949, ipnet:172.234.224.0/19, country:SG]; TAGGED_FROM(0.00)[bounces-24969-noreply=patchwork.local]; RCVD_COUNT_FIVE(0.00)[6]; FROM_NEQ_ENVFROM(0.00)[jernejskrabec@gmail.com,linux-sunxi@lists.linux.dev]; RCVD_VIA_SMTP_AUTH(0.00)[] X-Rspamd-Queue-Id: 0561E1C08F6 X-MORS-Enabled: yes X-MORS-DOMAIN: patchwork.local X-MORS-HOSTING: hosting172546 X-MORS-USER: hosting172546 X-getmail-retrieved-from-mailbox: =?utf-8?q?INBOX?= Currently, vertical coefficients are selected based on horizontal scaling, which is wrong. Additionally, chroma coefficients should be selected based on format subsampling. Fix all that. Fixes: b862a648de3b ("drm/sun4i: Add support for HW scaling to DE2") Signed-off-by: Jernej Skrabec Reviewed-by: Chen-Yu Tsai --- drivers/gpu/drm/sun4i/sun8i_vi_scaler.c | 18 ++++++++++++------ 1 file changed, 12 insertions(+), 6 deletions(-) diff --git a/drivers/gpu/drm/sun4i/sun8i_vi_scaler.c b/drivers/gpu/drm/sun4i/sun8i_vi_scaler.c index 3dec4eeb1ba2..d4412a62c2f0 100644 --- a/drivers/gpu/drm/sun4i/sun8i_vi_scaler.c +++ b/drivers/gpu/drm/sun4i/sun8i_vi_scaler.c @@ -894,20 +894,26 @@ static void sun8i_vi_scaler_set_coeff(struct regmap *map, u32 base, lan3coefftab32_left[offset + i]); regmap_write(map, SUN8I_SCALER_VSU_YHCOEFF1(base, i), lan3coefftab32_right[offset + i]); + } + offset = sun8i_vi_scaler_coef_index(vstep) * + SUN8I_VI_SCALER_COEFF_COUNT; + for (i = 0; i < SUN8I_VI_SCALER_COEFF_COUNT; i++) + regmap_write(map, SUN8I_SCALER_VSU_YVCOEFF(base, i), + lan2coefftab32[offset + i]); + + offset = sun8i_vi_scaler_coef_index(hstep / format->hsub) * + SUN8I_VI_SCALER_COEFF_COUNT; + for (i = 0; i < SUN8I_VI_SCALER_COEFF_COUNT; i++) { regmap_write(map, SUN8I_SCALER_VSU_CHCOEFF0(base, i), ch_left[offset + i]); regmap_write(map, SUN8I_SCALER_VSU_CHCOEFF1(base, i), ch_right[offset + i]); } - - offset = sun8i_vi_scaler_coef_index(hstep) * + offset = sun8i_vi_scaler_coef_index(vstep / format->vsub) * SUN8I_VI_SCALER_COEFF_COUNT; - for (i = 0; i < SUN8I_VI_SCALER_COEFF_COUNT; i++) { - regmap_write(map, SUN8I_SCALER_VSU_YVCOEFF(base, i), - lan2coefftab32[offset + i]); + for (i = 0; i < SUN8I_VI_SCALER_COEFF_COUNT; i++) regmap_write(map, SUN8I_SCALER_VSU_CVCOEFF(base, i), cy[offset + i]); - } } void sun8i_vi_scaler_enable(struct sun8i_layer *layer, bool enable) From patchwork Mon Aug 3 16:10:41 2026 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: =?utf-8?q?Jernej_=C5=A0krabec?= X-Patchwork-Id: 2923 Return-Path: X-Original-To: noreply@patchwork.local Delivered-To: noreply@patchwork.local Received: from tor.lore.kernel.org (tor.lore.kernel.org [172.105.105.114]) by mxe881.netcup.net (Postfix) with ESMTPS id CE3051C206B for ; Mon, 3 Aug 2026 18:36:58 +0200 (CEST) Authentication-Results: mxe881; dkim=pass header.d=gmail.com; spf=pass (sender IP is 172.105.105.114) smtp.mailfrom=linux-sunxi+bounces-24971-noreply=patchwork.local@lists.linux.dev smtp.helo=tor.lore.kernel.org Received-SPF: pass (mxe881: domain of lists.linux.dev designates 172.105.105.114 as permitted sender) client-ip=172.105.105.114; envelope-from=linux-sunxi+bounces-24971-noreply=patchwork.local@lists.linux.dev; helo=tor.lore.kernel.org; Received: from smtp.subspace.kernel.org (conduit.subspace.kernel.org [100.90.174.1]) by tor.lore.kernel.org (Postfix) with ESMTP id A2ABF31F328A for ; Mon, 3 Aug 2026 16:11:58 +0000 (UTC) Received: from localhost.localdomain (localhost.localdomain [127.0.0.1]) by smtp.subspace.kernel.org (Postfix) with ESMTP id B70AA411A0B; Mon, 3 Aug 2026 16:11:22 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="P0cvcY7h" X-Original-To: linux-sunxi@lists.linux.dev Received: from mail-wm1-f51.google.com (mail-wm1-f51.google.com [209.85.128.51]) (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 686ED3812ED for ; Mon, 3 Aug 2026 16:11:20 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.128.51 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1785773482; cv=none; b=cmOlkenR9wOk0Ef0XwgGOWDKvBQdX6O8IESJsZxht4ptCA7YJ3w+BEK4+KJ3Fe97JUEKhS5dfMoOBW05zYShgd8UWIXTa8uNQpWwj1UMg68TBn67J93lB3oQeoBnRKTgq3L33e8Ek9fre6kK97LnX9PsJGg/4/ALDIl1rWE3JGI= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1785773482; c=relaxed/simple; bh=80mgdYTJk4Rz9CLE9ia/R7HWxlTEEHYwqY28O878r2M=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=EjiGa6laJTpS8DARRfuczHtcTLTA+28ofSbEYNWdCEeXjAWItB47dcpXB1jJ9U+9unu0TMQz4WRbGn23xGL5XtxdOJp4MG6TVArVpFymVyHddG7ZGfWp83YOsLr0zCwREJgxkQEN1xb2UAexb09Gz7Y1uYTLG1xF/GJT8U8zDhA= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com; spf=pass smtp.mailfrom=gmail.com; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b=P0cvcY7h; arc=none smtp.client-ip=209.85.128.51 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=gmail.com Received: by mail-wm1-f51.google.com with SMTP id 5b1f17b1804b1-496b7622a83so15115395e9.2 for ; Mon, 03 Aug 2026 09:11:20 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20251104; t=1785773478; x=1786378278; darn=lists.linux.dev; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to:content-type; bh=R8mU3xQ3VaqFI9TKErwKoPI9PJbEs0xdMOgJUVHqdkY=; b=P0cvcY7hs6HVWwFKC9WPAgiSwofFkvLdkM1H7JpHsZS+OvBzAae+CbguvwvZWRm/I8 qYlhU5vHAz33vyk9LpA0h4RHWarcHC2Hujwn9TYrCds4+OH+LmhYAI+56ibsPTUoAN1o hKzXAgrFWt1/Tgae4dg1s9S6C4JOU6Wih3t3lLKhkxgNnlrMbd11dyF8CVA+VKicPMqK RrpzQC7Vwfw5wFWM4LvgRhLm5i+NRjNE0sYh3VdYgOwBZHfaQIq3xwM2OVV9AY1nv03r HcIydBjZScQwcDaXGBImnjWcEg8H8auniWNMxkY99MS0chwS7werFOCts+LPeHp1lRcQ fE7A== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1785773478; x=1786378278; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-gg:x-gm-message-state:from :to:cc:subject:date:message-id:reply-to:content-type; bh=R8mU3xQ3VaqFI9TKErwKoPI9PJbEs0xdMOgJUVHqdkY=; b=XZsUyStAF3PCPKD/9cx1FIA/b8g59EyyUCMSzJ1pCPXzXwu/fLob9/n10hH4Fb38++ esKf91jVMoZ8h3YJLrzUhO08N4MCsEi7OGCRznSlRbLbrMbfIBlz1iO3JiRzo3w2NZTp GA+3eA13aynIzrdQvxMRXfaSiWkhCii7Hux2IdF0xLO0KBBlUsctN/xSrJV6zDYd/bnq QsU72R0YTWndaPnh/1HVuh127TWxrtF6X/ID2lXNLi0Sdo892MdV6rxV9w/qBNOVtaI4 6L5jyTwzVK1psenaGPtDT43SRsSBB10jEbTyo0zqUvGcA6Vsjzn6s9Ew8Jd3yPlRx1X6 96Hg== X-Forwarded-Encrypted: i=1; AHgh+RrPsCRGyqGfiF1afHNaM1PCNbBf/H8Gs3PQx/PVls42uJaKnUEL0GajLQzA/JW+yMwcZaOlCjOEDXVu4g==@lists.linux.dev X-Gm-Message-State: AOJu0YxldDFiMGtVxpD9qSQU/YnRpfiCKpKavzcf5oki5q7jyFgXB9zD 2AaBRtHFKahjBCp9QvUtniEMrROZXR/3HUGukZtYVtHPOIa8BYrWqxKBdQbGTg== X-Gm-Gg: AR+sD12HE2aHPLsoKULxeI5zPFGr+08WTj3DDAOZaFTMra0RfqipoZYxZpvKmbaGoFt 4iraL1oUcBuWTomAZp9FfSmCtJ13O9FLPce86DSuLszIqV4eiT8DqeFZEcYw3CAuCpM9VsADAZ1 yDb5x/IZrbsa1eU9YcljUVITgLUsSh9ttLOYngSsVvkS9Dj04JE+Q9OSE5adNQnprfNjt0s+ygx b3VE+czC1YbfWcalOl0XwLIexSUACKZLK30y9G0B0QhyvWqYOsAW64FsMr0ik4Jgotgby//Twxu XlhrXjSveC/AsuROy1z8JuyiuMkiI5KSGymUUPHGC72MTh4cp+cMqxEn088wBAvMciBSLrLHjRQ OcTt3rz6uP/toSPyinn2wFYFs6PP3CdK85N6hhXZU3Jvqc8jeil9UMc92/l/RHIUxHB/Swwq4U3 HeghywjKHgUpgLYWR5U7T6mP/heYrEfnZlZnMVEWMPqFSzJFzMc4VNcSoDRQM/nP5ryjF32cER/ Ge81Wo4XsxxoVRu/vwprl8iqt2geoqM2ZAiCBdtJCufa/KaNMQ7V0lRGaajmTdpezzVfKre8Fzg THSI7i254Jz6Bm/sMFtP5xNntUJ7B9rLiIY+0L4qNM11xdZdE6TQoLDLQwrw6FKkiaJu2OPpJSC MbhgaW57isSDXQWGGjqIlgrua+DeMBkgTeCAnOvGJjg6Gkby+q4+eRGJ2vqirnI0TtbG6kAvVw1 y2oQ== X-Received: by 2002:a05:600c:8b43:b0:496:c93d:35d9 with SMTP id 5b1f17b1804b1-4980c66b45emr202147415e9.6.1785773478485; Mon, 03 Aug 2026 09:11:18 -0700 (PDT) Received: from jernej-laptop (APN-122-100-117-gprs.simobil.net. [46.122.100.117]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-49949fc2da2sm3363735e9.3.2026.08.03.09.11.16 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 03 Aug 2026 09:11:18 -0700 (PDT) From: Jernej Skrabec To: wens@kernel.org Cc: maarten.lankhorst@linux.intel.com, mripard@kernel.org, tzimmermann@suse.de, airlied@gmail.com, simona@ffwll.ch, samuel@sholland.org, dri-devel@lists.freedesktop.org, linux-arm-kernel@lists.infradead.org, linux-sunxi@lists.linux.dev, linux-kernel@vger.kernel.org, Jernej Skrabec Subject: [PATCH 03/13] drm/sun4i: vi scaler: Restore opaque alpha in video modes Date: Mon, 3 Aug 2026 18:10:41 +0200 Message-ID: X-Mailer: git-send-email 2.55.0 In-Reply-To: References: Precedence: bulk X-Mailing-List: linux-sunxi@lists.linux.dev List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-MORS-Enabled: yes X-MORS-DOMAIN: patchwork.local X-MORS-HOSTING: hosting172546 X-MORS-USER: hosting172546 X-getmail-retrieved-from-mailbox: =?utf-8?q?INBOX?= The DE3 mixer initialization clears the entire mixer register space. This also clears VSU_GLOBAL_ALPHA, despite its hardware reset value being 0xff. The VI scaler uses Video Normal mode for subsampled YUV formats. In this mode, VSU_GLOBAL_ALPHA provides the scaler output alpha. Leaving the register at zero causes the scaler to produce fully transparent output. Set VSU_GLOBAL_ALPHA to 0xff whenever configuring a DE3 or newer VI scaler. The register is ignored in UI scaling mode. Fixes: c50519e6db4d ("drm/sun4i: Add basic support for DE3") Signed-off-by: Jernej Skrabec Acked-by: Chen-Yu Tsai --- drivers/gpu/drm/sun4i/sun8i_vi_scaler.c | 2 ++ drivers/gpu/drm/sun4i/sun8i_vi_scaler.h | 1 + 2 files changed, 3 insertions(+) diff --git a/drivers/gpu/drm/sun4i/sun8i_vi_scaler.c b/drivers/gpu/drm/sun4i/sun8i_vi_scaler.c index d4412a62c2f0..a5cc99981006 100644 --- a/drivers/gpu/drm/sun4i/sun8i_vi_scaler.c +++ b/drivers/gpu/drm/sun4i/sun8i_vi_scaler.c @@ -975,6 +975,8 @@ void sun8i_vi_scaler_setup(struct sun8i_layer *layer, regmap_write(layer->regs, SUN50I_SCALER_VSU_SCALE_MODE(base), val); + regmap_write(layer->regs, + SUN50I_SCALER_VSU_GLB_ALPHA(base), 0xff); } regmap_write(layer->regs, diff --git a/drivers/gpu/drm/sun4i/sun8i_vi_scaler.h b/drivers/gpu/drm/sun4i/sun8i_vi_scaler.h index 245fe2f431c3..d89c0cbe188d 100644 --- a/drivers/gpu/drm/sun4i/sun8i_vi_scaler.h +++ b/drivers/gpu/drm/sun4i/sun8i_vi_scaler.h @@ -36,6 +36,7 @@ #define SUN50I_SCALER_VSU_EDSCL_CTRL(base) ((base) + 0x28) #define SUN50I_SCALER_VSU_ANGLE_THR(base) ((base) + 0x2c) #define SUN8I_SCALER_VSU_OUTSIZE(base) ((base) + 0x40) +#define SUN50I_SCALER_VSU_GLB_ALPHA(base) ((base) + 0x44) #define SUN8I_SCALER_VSU_YINSIZE(base) ((base) + 0x80) #define SUN8I_SCALER_VSU_YHSTEP(base) ((base) + 0x88) #define SUN8I_SCALER_VSU_YVSTEP(base) ((base) + 0x8c) From patchwork Mon Aug 3 16:10:42 2026 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: =?utf-8?q?Jernej_=C5=A0krabec?= X-Patchwork-Id: 2928 Return-Path: X-Original-To: noreply@patchwork.local Delivered-To: noreply@patchwork.local Received: from sea.lore.kernel.org (sea.lore.kernel.org [172.234.253.10]) by mxe881.netcup.net (Postfix) with ESMTPS id 536371C023D for ; Mon, 3 Aug 2026 18:59:42 +0200 (CEST) Authentication-Results: mxe881; dkim=pass header.d=gmail.com; spf=pass (sender IP is 172.234.253.10) smtp.mailfrom=linux-sunxi+bounces-24972-noreply=patchwork.local@lists.linux.dev smtp.helo=sea.lore.kernel.org Received-SPF: pass (mxe881: domain of lists.linux.dev designates 172.234.253.10 as permitted sender) client-ip=172.234.253.10; envelope-from=linux-sunxi+bounces-24972-noreply=patchwork.local@lists.linux.dev; helo=sea.lore.kernel.org; Received: from smtp.subspace.kernel.org (conduit.subspace.kernel.org [100.90.174.1]) by sea.lore.kernel.org (Postfix) with ESMTP id 8364333E75B6 for ; Mon, 3 Aug 2026 16:12:03 +0000 (UTC) Received: from localhost.localdomain (localhost.localdomain [127.0.0.1]) by smtp.subspace.kernel.org (Postfix) with ESMTP id 59C7D415F3A; Mon, 3 Aug 2026 16:11:26 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="OVaSNeYq" X-Original-To: linux-sunxi@lists.linux.dev Received: from mail-wm1-f44.google.com (mail-wm1-f44.google.com [209.85.128.44]) (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 2DC9F369236 for ; Mon, 3 Aug 2026 16:11:22 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.128.44 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1785773486; cv=none; b=cDbeB/qERUO+YqUndZODRinz8PSRzzw8ZwuttAogtPhG1OcvTbyB1tUmIGQ+rt7d6DQAD0XXmUpJnbvSTAGT8bDgW9im5QZIO66k9UqzjFqQGrI2JuVY19dSsbTFXakXmpm6JjETpfczTkaLWYzq+fqkC9cUaeiHYuQh08GaxRg= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1785773486; c=relaxed/simple; bh=fTzsF9nNJWce3JZtECoiuvBAAOYdzetgdaAQeWxNuE8=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=TWM3kDJdmHdpRR/3ElB2sJ7xVYoblN+4GldtlmvNal2AHVMOJyFSMOYHBFmGvthn782nDeO6yN8xf8cOVTzJCTXwy4Lefkvd+kIjUr50UYlz+TM2Z7Pdt4osNsxK96FZE6LEsiQzkeiQE1jT7axPHtD2/IwSfW1qZJZtVbCJRZE= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com; spf=pass smtp.mailfrom=gmail.com; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b=OVaSNeYq; arc=none smtp.client-ip=209.85.128.44 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=gmail.com Received: by mail-wm1-f44.google.com with SMTP id 5b1f17b1804b1-49553515a8bso36277505e9.1 for ; Mon, 03 Aug 2026 09:11:22 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20251104; t=1785773481; x=1786378281; darn=lists.linux.dev; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to:content-type; bh=65tLrBmDcrjX0P/kWTBoZe536eu486JrEmAUPZ6dfSY=; b=OVaSNeYqpIva4rz+O/wy9PWQ5oMHW4CFqS1lcdi0IAjklFjRO5Vq2szv2dmgkrejtx JhI+xhwobOc/bf1PKqectIA+f/qQ92b+x1xfsilDp5SkZ6T2iES66AghLHi/NBhu4ejq xmFEz06OC5EVKFmkGMG1sk2rJgJScYS8+YZ/OazgrXIf1KekTmku05p214Uo5FK7mVcb gT/xnBDHEF6yNaMqaDuHKbO8lo97TpiaWACg4V6L0PlF+uEf3t9rYelLmnS26Zs3mWQZ DQF9OyJtcJYu8yxbxTpVIU6eNs9BvpcZu1s+iSu/FDYxYCFAfBKNBWk4VZONV2ndcn8t LCBA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1785773481; x=1786378281; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-gg:x-gm-message-state:from :to:cc:subject:date:message-id:reply-to:content-type; bh=65tLrBmDcrjX0P/kWTBoZe536eu486JrEmAUPZ6dfSY=; b=grsxuYWBrMebcg61K9SRFVs/1OqnJYD2Lqa78txLaT2ySXA30iu+Ssvlnfv5lTtoqr zdWzV7lCl5wb3khOCefywK0ZGPtLVyZwiwfmad/vuYo0ZGa3XtVncMm68whKJHPP3Cyw QaU7oSqN9zcT784vsnWfyHkLEdkzV0hEQTxrmrKRd4dkraBrT0ucE2JqFetH2oYruGmv laVyp1yVacTW5aSgNgOzdPNHD4HKelOfaVz1wVBuQoeT6K/26bEJPwF0XSaqwhE9xXDU wiovjumsERozhLGvomYvaGPa9GQ/FU2TBEvealoDok9WbV9en5YrlRV9WXiv64d8FuWy nmpQ== X-Forwarded-Encrypted: i=1; AHgh+RpR3LWiOMxMaZaqo56+nSeReENC0p78pgISh+tapinqNJB5YUH37bqUh9TvK2GBC2dbDeTFk/tRbnecUg==@lists.linux.dev X-Gm-Message-State: AOJu0YwrSJpPkmRp06GKE5He0BXhAXj5axFrvYlgGGROuehyyOOO/0py fyuZx+SF5PVBMU2llGgU8aE2Vf5f6iNERa+b8yhJw5G1z61gOsdPmqZc X-Gm-Gg: AR+sD12Wb+n7xTdnz0Brc8hWPO4J+7Jn/EpmipF6k8fMXYQlpXz5uzC8kWDluCkPPaL NzNoT16Fdrl+4xkrWK7XRVftZwEPjgc5/bZ3wPSD9TOJnXtJkpZ0kQpDOLWo6MLUPFu0fd60BGQ Dv99wwpkjL3asRqu+nW9stCodSf6+9xGbraC8jVThMNExNmIngRdIDblXz8Y4aXWMbZ86WdeeTs 0OaG5HJW6WL5t/dJ/scXhI3tMBiQcnfZfRbJESOXq4bHa6rtV6SlwASWopl465fJhQnra4w682v gUB5eJFk2649eWbBWC01PDI0bMUZeTeORR4AbsmV2znNeeIt54wPv03KYtR43WZKYP7HoIKSOEA tgpgfwDInl249vOoF0h/+2LPd8rflaH4ZqTR4D5KAml0qpz2sS2gROSkGkEa9k2AnU7P0oB4AWt YxBCfOb0Qokp1JbVBlaT0XsDlIXMCRczZbR3ftyFqmIuCwSYRY/wq0rL+c9bYLMDgXN60PXpVK9 oTDBkooN8UCV4qBbdtmOvlS9sU8n5DpmtD/pOa7DIJzs4QL4H4kb1NbJAi7tfRHohYd5C9CUrjz UP6b80Zm1UOawJTmaXKWNfZOBPJkm+wJvCyxzei0tcaSGHCfvWUferDZZc3umwgbHTQQ8JMrwxG Chx5GwUSNGDiofwmIqONXN7IoQHMmnc42MFH6pA7p0jP9uQ2WOrsICugP1Cv/w3DeXKZ8zGImtz DCnA== X-Received: by 2002:a05:600c:19cf:b0:495:7a04:b006 with SMTP id 5b1f17b1804b1-4980c66b572mr227085475e9.8.1785773480944; Mon, 03 Aug 2026 09:11:20 -0700 (PDT) Received: from jernej-laptop (APN-122-100-117-gprs.simobil.net. [46.122.100.117]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-49949fc2da2sm3363735e9.3.2026.08.03.09.11.18 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 03 Aug 2026 09:11:20 -0700 (PDT) From: Jernej Skrabec To: wens@kernel.org Cc: maarten.lankhorst@linux.intel.com, mripard@kernel.org, tzimmermann@suse.de, airlied@gmail.com, simona@ffwll.ch, samuel@sholland.org, dri-devel@lists.freedesktop.org, linux-arm-kernel@lists.infradead.org, linux-sunxi@lists.linux.dev, linux-kernel@vger.kernel.org, Jernej Skrabec Subject: [PATCH 04/13] drm/sun4i: tcon-top: Keep mixer routes distinct Date: Mon, 3 Aug 2026 18:10:42 +0200 Message-ID: <52eb247169b268054302afa71e598add0b04748d.1785772659.git.jernej.skrabec@gmail.com> X-Mailer: git-send-email 2.55.0 In-Reply-To: References: Precedence: bulk X-Mailing-List: linux-sunxi@lists.linux.dev List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-MORS-Enabled: yes X-MORS-DOMAIN: patchwork.local X-MORS-HOSTING: hosting172546 X-MORS-USER: hosting172546 X-getmail-retrieved-from-mailbox: =?utf-8?q?INBOX?= Both mixer selectors reset to TCON 0. Selecting the same TCON for both mixers causes black or corrupted output. When a route would collide, park the other mixer on another described TCON, or an unused selector if none exists. Since the TCON index is now used as a shift, also reject negative values. Tested on Orange Pi 3 with TCON_LCD0 and TCON_TV0. Link: https://lore.kernel.org/linux-sunxi/Zn8GVkpwXwhaUFno@titan/ Link: https://lore.kernel.org/linux-sunxi/20241108-tcon_fix-v1-1-616218cc0d5f@jookia.org/ Fixes: 05db311a792d ("drm/sun4i: tcon-top: Add helpers for mux switching") Signed-off-by: Jernej Skrabec Reviewed-by: Chen-Yu Tsai --- drivers/gpu/drm/sun4i/sun8i_tcon_top.c | 71 +++++++++++++++++++++----- drivers/gpu/drm/sun4i/sun8i_tcon_top.h | 6 +++ 2 files changed, 65 insertions(+), 12 deletions(-) diff --git a/drivers/gpu/drm/sun4i/sun8i_tcon_top.c b/drivers/gpu/drm/sun4i/sun8i_tcon_top.c index 8adda578c51b..9cbd655518b2 100644 --- a/drivers/gpu/drm/sun4i/sun8i_tcon_top.c +++ b/drivers/gpu/drm/sun4i/sun8i_tcon_top.c @@ -25,6 +25,49 @@ static bool sun8i_tcon_top_node_is_tcon_top(struct device_node *node) return !!of_match_node(sun8i_tcon_top_of_table, node); } +static unsigned int sun8i_tcon_top_get_tcon_map(struct device_node *node) +{ + static const u32 out_ports[] = { + TCON_TOP_MIXER0_OUT_PORT, + TCON_TOP_MIXER1_OUT_PORT, + }; + unsigned int i, map = 0; + + for (i = 0; i < ARRAY_SIZE(out_ports); i++) { + struct device_node *port; + + port = of_graph_get_port_by_id(node, out_ports[i]); + if (!port) + continue; + + for_each_of_graph_port_endpoint(port, ep) { + struct of_endpoint endpoint; + + if (of_graph_parse_endpoint(ep, &endpoint)) + continue; + + if (endpoint.id < TCON_TOP_PORT_TCON_NUM) + map |= BIT(endpoint.id); + } + + of_node_put(port); + } + + return map; +} + +static unsigned int sun8i_tcon_top_park_index(struct sun8i_tcon_top *tcon_top, + int tcon) +{ + unsigned int candidates; + + candidates = tcon_top->tcon_map & ~BIT(tcon); + if (!candidates) + candidates = GENMASK(TCON_TOP_PORT_TCON_NUM - 1, 0) & ~BIT(tcon); + + return ffs(candidates) - 1; +} + int sun8i_tcon_top_set_hdmi_src(struct device *dev, int tcon) { struct sun8i_tcon_top *tcon_top = dev_get_drvdata(dev); @@ -57,6 +100,7 @@ EXPORT_SYMBOL(sun8i_tcon_top_set_hdmi_src); int sun8i_tcon_top_de_config(struct device *dev, int mixer, int tcon) { struct sun8i_tcon_top *tcon_top = dev_get_drvdata(dev); + u32 mixer_msk, other_msk; unsigned long flags; u32 reg; @@ -70,21 +114,27 @@ int sun8i_tcon_top_de_config(struct device *dev, int mixer, int tcon) return -EINVAL; } - if (tcon > 3) { - dev_err(dev, "TCON index is too high!\n"); + if (tcon < 0 || tcon >= TCON_TOP_PORT_TCON_NUM) { + dev_err(dev, "TCON index is invalid!\n"); return -EINVAL; } + mixer_msk = mixer ? TCON_TOP_PORT_DE1_MSK : TCON_TOP_PORT_DE0_MSK; + other_msk = mixer ? TCON_TOP_PORT_DE0_MSK : TCON_TOP_PORT_DE1_MSK; + spin_lock_irqsave(&tcon_top->reg_lock, flags); reg = readl(tcon_top->regs + TCON_TOP_PORT_SEL_REG); - if (mixer == 0) { - reg &= ~TCON_TOP_PORT_DE0_MSK; - reg |= FIELD_PREP(TCON_TOP_PORT_DE0_MSK, tcon); - } else { - reg &= ~TCON_TOP_PORT_DE1_MSK; - reg |= FIELD_PREP(TCON_TOP_PORT_DE1_MSK, tcon); + + reg &= ~mixer_msk; + reg |= field_prep(mixer_msk, tcon); + + if (field_get(other_msk, reg) == tcon) { + reg &= ~other_msk; + reg |= field_prep(other_msk, + sun8i_tcon_top_park_index(tcon_top, tcon)); } + writel(reg, tcon_top->regs + TCON_TOP_PORT_SEL_REG); spin_unlock_irqrestore(&tcon_top->reg_lock, flags); @@ -143,6 +193,7 @@ static int sun8i_tcon_top_bind(struct device *dev, struct device *master, return -ENOMEM; clk_data->num = CLK_NUM; tcon_top->clk_data = clk_data; + tcon_top->tcon_map = sun8i_tcon_top_get_tcon_map(dev->of_node); spin_lock_init(&tcon_top->reg_lock); @@ -175,10 +226,6 @@ static int sun8i_tcon_top_bind(struct device *dev, struct device *master, goto err_assert_reset; } - /* - * At least on H6, some registers have some bits set by default - * which may cause issues. Clear them here. - */ writel(0, regs + TCON_TOP_PORT_SEL_REG); writel(0, regs + TCON_TOP_GATE_SRC_REG); diff --git a/drivers/gpu/drm/sun4i/sun8i_tcon_top.h b/drivers/gpu/drm/sun4i/sun8i_tcon_top.h index 0390584a330e..2b887470a49f 100644 --- a/drivers/gpu/drm/sun4i/sun8i_tcon_top.h +++ b/drivers/gpu/drm/sun4i/sun8i_tcon_top.h @@ -14,6 +14,10 @@ #define TCON_TOP_PORT_SEL_REG 0x1C #define TCON_TOP_PORT_DE0_MSK GENMASK(1, 0) #define TCON_TOP_PORT_DE1_MSK GENMASK(5, 4) +#define TCON_TOP_PORT_TCON_NUM 4 + +#define TCON_TOP_MIXER0_OUT_PORT 1 +#define TCON_TOP_MIXER1_OUT_PORT 3 #define TCON_TOP_GATE_SRC_REG 0x20 #define TCON_TOP_HDMI_SRC_MSK GENMASK(29, 28) @@ -29,6 +33,8 @@ struct sun8i_tcon_top { void __iomem *regs; struct reset_control *rst; + unsigned int tcon_map; + /* * spinlock is used to synchronize access to same * register where multiple clock gates can be set. From patchwork Mon Aug 3 16:10:43 2026 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: =?utf-8?q?Jernej_=C5=A0krabec?= X-Patchwork-Id: 2918 Return-Path: X-Original-To: noreply@patchwork.local Delivered-To: noreply@patchwork.local Received: from sto.lore.kernel.org (sto.lore.kernel.org [172.232.135.74]) by mxe881.netcup.net (Postfix) with ESMTPS id 67D261C0586 for ; Mon, 3 Aug 2026 18:14:49 +0200 (CEST) Authentication-Results: mxe881; dkim=pass header.d=gmail.com; spf=pass (sender IP is 172.232.135.74) smtp.mailfrom=linux-sunxi+bounces-24973-noreply=patchwork.local@lists.linux.dev smtp.helo=sto.lore.kernel.org Received-SPF: pass (mxe881: domain of lists.linux.dev designates 172.232.135.74 as permitted sender) client-ip=172.232.135.74; envelope-from=linux-sunxi+bounces-24973-noreply=patchwork.local@lists.linux.dev; helo=sto.lore.kernel.org; Received: from smtp.subspace.kernel.org (conduit.subspace.kernel.org [100.90.174.1]) by sto.lore.kernel.org (Postfix) with ESMTP id 444D03069CCC for ; Mon, 3 Aug 2026 16:12:11 +0000 (UTC) Received: from localhost.localdomain (localhost.localdomain [127.0.0.1]) by smtp.subspace.kernel.org (Postfix) with ESMTP id A95C7411F94; Mon, 3 Aug 2026 16:11:28 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="irEyw8yH" X-Original-To: linux-sunxi@lists.linux.dev Received: from mail-wm1-f52.google.com (mail-wm1-f52.google.com [209.85.128.52]) (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 CFD6D416846 for ; Mon, 3 Aug 2026 16:11:26 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.128.52 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1785773488; cv=none; b=PiG2nEIF1t1i1ivSH2QZxKQE9IH5SWuCHpUI2KqdF0Ttj9qb9BMmFk49QCZR62HcbAtvQwAVYTdCPcT4bG5M8yye+ICIWFPrXRNCk0R4cL/I0nGY3Z4QGczFj+FxHluSVax2In7aBgWN1eM5c2DkM2RuEXXWLzWzyU01eqWuoWo= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1785773488; c=relaxed/simple; bh=FPl35JURbDRAcszB3SP4dKcJ8OqIqWJgXQ6A351ijhw=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=qlp6gccDqDQz3c/RLipiUIIfjBwCY6KDfK99H2903yMOFHhRMsHxyMbiDbHYGlwlYbzeVyf0gyLpUU8XEKqo3TpVW4Bv+qQp/Ul9EPmZunwUZWzInVrmPHlVgOhr7zkzR14oWCmzAi+x3DyiTzUBV7MOQK+WfBOuUumWWj5FS8o= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com; spf=pass smtp.mailfrom=gmail.com; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b=irEyw8yH; arc=none smtp.client-ip=209.85.128.52 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=gmail.com Received: by mail-wm1-f52.google.com with SMTP id 5b1f17b1804b1-49556f97a9dso14920535e9.1 for ; Mon, 03 Aug 2026 09:11:26 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20251104; t=1785773485; x=1786378285; darn=lists.linux.dev; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to:content-type; bh=JovHwWPJVIJjedVl1fvW+GGr92iYs5PPothHhlNSmKk=; b=irEyw8yHsBOX9vzRzSUol+Xk/L6JQ8eYdoyitiJIsTZPo3MIhhjjxz/TfUP50RxIIN 8ooW3Dm/mWm4znrBgu4H9sM0V15lJKoghXwxlwuwUv2b+08vw2L46WZCfmMvyFRd2NIP MSlzn0Ygz0xQC8fgXYeMAZY9PVwtWf8MjWv/fYR6McExha94jepsEdJfK0wFS+tSfJaM zQMRxAv4ZTy1r6NuKXSSFN+Qb8Otnx5FSheiPpOtrgZPyPuMxjCFwKpHqozC8g5hPwjY NIH8Y7atIkQCJV0c09KiHOv+kWaGCorMNtMAkRRIISbA2bgieDvEwyVSZT1mPoXPlUGC RJcg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1785773485; x=1786378285; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-gg:x-gm-message-state:from :to:cc:subject:date:message-id:reply-to:content-type; bh=JovHwWPJVIJjedVl1fvW+GGr92iYs5PPothHhlNSmKk=; b=N4V1+dJM5TlXRHjbMUA+32lyOFssxH07Y+lcINwPIXRssIH/H9PMYFZ+e/F+ve2RDC gwLNqrXVZjfByVl/q7whZtiadesjsVQLI/WBrf7+DMgDirkC6jLDkSom8wC95s//BR8G QSP3xnLBs83yJWqOhkRRFZ9qEmxUr4gkYR9GW/9t7Km4jIi7xZatfpkxo7E4TQz9GsrI eiy9kpLt89EP+dmAhBrSdZ407A9L+/g2y/voCMicWSWJ4PEkbPtYW39Ug/aIh+TP/sVH J7Uefxvs+dTeus6uxazAwfq93WQwgXz641seXoA8eZ7sixQGUu4loPVjvWERBU7aaQar KlVg== X-Forwarded-Encrypted: i=1; AHgh+RoLlsetuAI4lPtHfGHjs2yCTwy91+L4KROYUHj4qHgLw9D6P4btm8yc6vSEK0RK9WPCl80AandJIjOhqw==@lists.linux.dev X-Gm-Message-State: AOJu0Yyvslid/vXiYQa9HRBLTSoA1JplbVt76bdFEVY7DviITwBt5LjZ i0+MOdn9x7VyvIUksJP9ywXSLLQn5fHI0wUOQKlhmtonY9jGmGFwKm5c X-Gm-Gg: AR+sD12+zleB/4GGVbruhmhrkgpaL5bwbUFZraQWEVy9oJ6Z2yKSDhb4qRWhs/d0/UV VAM69k94PuUfGMzfTEM3Rxa3WnyfwdTlcYREiuXeZkt4lUAhp1eIq9NbI7va6+Hb2rgG/I3mvRJ 5v8pemIxPPpp1hSO2+meq4xaCzpdcJH0IVRJqoIuDm0fY3sA5+kJqE9zF3zJJTIFC+Z7eg/tNoL ei7mwsNFXnyY3swK5LeQJ/Z2WeoDscOMuq3s6sw9azxYlI35oFa9kNWEjapYWdepYJOvIwaGsyI ixupDzZUzbQ7AhKtZjZ9zdE3s8eneVoskGl24fi03ANM9KIDPwmGK2jRphKw5Jbry65g8SjpGbe mKgiCVCtcnlmYAV+leQNvLhlRua3RT4ZM7waou1a/vt/xwhg752S1cnGTy7Sh85kUmWs7m7cjON DxClAik38FSmmIOdYwPFZYvC+mioBzLpxHxPae4i+88+Puoy9dobkFai/qWdWvo1Ttj8yZ4khZk MH94TZZoSOwssP60CXI8XOAWKmlV2HIzgrk4chVu3KpQZHdRxcLOEa0kRvkvu3GZC9FwEhwqsjZ cK48jZh47VUaur7efnAAkJVtigf3Fj06cDgaI3u+Ew9832y3bINvPQxe5NuBkBdKYy2ovdvr3dy uu6z/bngvnyo1Gw9hsB6Ot7gik1YrvShRYOffl51aSvsN8QIpImwedfbiu5MGJrlQ8hqarCFspz i0GAYfpr9zrSF8 X-Received: by 2002:a05:600c:4504:b0:493:c194:4e7a with SMTP id 5b1f17b1804b1-4980c66c9a8mr228536025e9.3.1785773484651; Mon, 03 Aug 2026 09:11:24 -0700 (PDT) Received: from jernej-laptop (APN-122-100-117-gprs.simobil.net. [46.122.100.117]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-49949fc2da2sm3363735e9.3.2026.08.03.09.11.21 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 03 Aug 2026 09:11:24 -0700 (PDT) From: Jernej Skrabec To: wens@kernel.org Cc: maarten.lankhorst@linux.intel.com, mripard@kernel.org, tzimmermann@suse.de, airlied@gmail.com, simona@ffwll.ch, samuel@sholland.org, dri-devel@lists.freedesktop.org, linux-arm-kernel@lists.infradead.org, linux-sunxi@lists.linux.dev, linux-kernel@vger.kernel.org, Jernej Skrabec Subject: [PATCH 05/13] drm/sun4i: tcon: Set output mux for DSI and LVDS Date: Mon, 3 Aug 2026 18:10:43 +0200 Message-ID: <7e9dad9eed2e91a79c4e1202caa8fed7c2427531.1785772659.git.jernej.skrabec@gmail.com> X-Mailer: git-send-email 2.55.0 In-Reply-To: References: Precedence: bulk X-Mailing-List: linux-sunxi@lists.linux.dev List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-MORS-Enabled: yes X-MORS-DOMAIN: patchwork.local X-MORS-HOSTING: hosting172546 X-MORS-USER: hosting172546 X-getmail-retrieved-from-mailbox: =?utf-8?q?INBOX?= DSI and LVDS skip output mux setup, so TCON TOP cannot route the selected mixer. Configure them like other channel 0 outputs. In practice this matters for D1, where channel 0 TCONs are fed through TCON TOP. The remaining set_mux implementations only handle TMDS and return an error for other encoder types, as before. Fixes: b9b52d2f4aaf ("drm/sun4i: Add support for D1 TCONs") Signed-off-by: Jernej Skrabec Acked-by: Chen-Yu Tsai --- drivers/gpu/drm/sun4i/sun4i_tcon.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/drivers/gpu/drm/sun4i/sun4i_tcon.c b/drivers/gpu/drm/sun4i/sun4i_tcon.c index 960e83c8291d..ea7c90fef316 100644 --- a/drivers/gpu/drm/sun4i/sun4i_tcon.c +++ b/drivers/gpu/drm/sun4i/sun4i_tcon.c @@ -717,9 +717,11 @@ void sun4i_tcon_mode_set(struct sun4i_tcon *tcon, case DRM_MODE_ENCODER_DSI: /* DSI is tied to special case of CPU interface */ sun4i_tcon0_mode_set_cpu(tcon, encoder, mode); + sun4i_tcon_set_mux(tcon, 0, encoder); break; case DRM_MODE_ENCODER_LVDS: sun4i_tcon0_mode_set_lvds(tcon, encoder, mode); + sun4i_tcon_set_mux(tcon, 0, encoder); break; case DRM_MODE_ENCODER_NONE: sun4i_tcon0_mode_set_rgb(tcon, encoder, mode); From patchwork Mon Aug 3 16:10:44 2026 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: =?utf-8?q?Jernej_=C5=A0krabec?= X-Patchwork-Id: 2925 Return-Path: X-Original-To: noreply@patchwork.local Delivered-To: noreply@patchwork.local Received: from tor.lore.kernel.org (tor.lore.kernel.org [172.105.105.114]) by mxe881.netcup.net (Postfix) with ESMTPS id 2F3271C2223 for ; Mon, 3 Aug 2026 18:45:56 +0200 (CEST) Authentication-Results: mxe881; dkim=pass header.d=gmail.com; spf=pass (sender IP is 172.105.105.114) smtp.mailfrom=linux-sunxi+bounces-24975-noreply=patchwork.local@lists.linux.dev smtp.helo=tor.lore.kernel.org Received-SPF: pass (mxe881: domain of lists.linux.dev designates 172.105.105.114 as permitted sender) client-ip=172.105.105.114; envelope-from=linux-sunxi+bounces-24975-noreply=patchwork.local@lists.linux.dev; helo=tor.lore.kernel.org; Received: from smtp.subspace.kernel.org (conduit.subspace.kernel.org [100.90.174.1]) by tor.lore.kernel.org (Postfix) with ESMTP id 84BED31CAC78 for ; Mon, 3 Aug 2026 16:12:34 +0000 (UTC) Received: from localhost.localdomain (localhost.localdomain [127.0.0.1]) by smtp.subspace.kernel.org (Postfix) with ESMTP id 4C08137A83B; Mon, 3 Aug 2026 16:11:34 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="VM9yuT9/" X-Original-To: linux-sunxi@lists.linux.dev Received: from mail-wm1-f45.google.com (mail-wm1-f45.google.com [209.85.128.45]) (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 1647637755A for ; Mon, 3 Aug 2026 16:11:28 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.128.45 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1785773494; cv=none; b=V9ysoh0Gf8DD1ohHvXp1v3qd+uIWqnQ8yJ2i+BemvD8RQygovAF/TNbJux0rblZDulaWOI5H8xtG95FGTz+3b9txOWosh3bNsERhniNMLq0cteg+jxniFMalTh9IH6KOCTYMPeYjFkvx+yYAkgSzJw6FzCJut/lCWpRhYHOmxKQ= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1785773494; c=relaxed/simple; bh=tMAQFxPXIx7PAQxYZjLH9+dSz17NuOukCvxxyeC2GsQ=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=fzs3VT0b1rbBwP53ixH6EVnSvFLaSsQaM6t7TxO8+OeeTJy2TEPLM+0X8Cu2NBXm/VuW39HJu84VorXCkI4LY4+20pNZwkuw0cFhGmIrrw8GYEUFUDKZOWDgZnyByDRuXzOIHc9aG0ErlRAjIwa0x1I0eBMvgY8XzD5onBasTYw= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com; spf=pass smtp.mailfrom=gmail.com; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b=VM9yuT9/; arc=none smtp.client-ip=209.85.128.45 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=gmail.com Received: by mail-wm1-f45.google.com with SMTP id 5b1f17b1804b1-4953e04ef16so23378315e9.2 for ; Mon, 03 Aug 2026 09:11:28 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20251104; t=1785773487; x=1786378287; darn=lists.linux.dev; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to:content-type; bh=WnZE5eYLucvHUcpEznH4hSEo3d2Mtfchio0f8Z2eXVU=; b=VM9yuT9/O3hhtF4QxHzCSVVBiqB3csLhD/x1V/NgUldNB/6acazBG7qdka6R998Nun r3goBBKMhWoNNs2lkRRU+rh/X81aVibHBzpLPRBjjvJx9bSuANyxOm3x7TvVKjDnP8b2 E5On0xhdY0k3D+1rYSuzAy8jVIy+fODqZ1LQ8nFDUY316j6bUU7n6BRe6Mwz5hTan2XF bO6KNIrLNaVi7dJ8+eCQiM3haqVsrNTwSsBMEfdQh+QbAkyCPGRBaOOprl/j7c5xgVx0 XUv3WIlLYjRfYxB3xluoPYpk8+6CxZDfFVKQvt7JltlYcBQcZq3jKlfjgcQf2k8InqYI pZDQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1785773487; x=1786378287; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-gg:x-gm-message-state:from :to:cc:subject:date:message-id:reply-to:content-type; bh=WnZE5eYLucvHUcpEznH4hSEo3d2Mtfchio0f8Z2eXVU=; b=M3KPREw+TQ6O1ahfX+WCTuByd68MGRVkpfLQcALqjNbBycGkcmn2y0DUZXC9DhClsJ O5o41Uv4Mh3xk+Vrs+tCaU9F1Nsg34X7cDyyaDqxspnk+P/r0AusXP45OE3W3p3DeCPQ VOcu0V/voEdiD9Bf65XtfM56XW8GF5/LM5GT6tN4Mn/9Wb0LOeGch1Y0Nk35O+CpDcCW aS3+JbP2f4y8R461uV65YPAx/iT3xWsLphcsSP77HpQiFbr8hnrhpraRKf6+UXCrfn3S +L5frnJYEeV9bXtc0uiYjR5rz8DrNKHpi4DSBovSynkkUJlWxqgXKdBsoVTn7xTE40rO nzFA== X-Forwarded-Encrypted: i=1; AHgh+RpoDzhvDXMlYEAUWJBPNJnLLxqsuC1u8G9Si6EGP7kQNRlzFYGvGre4dhTses5P1MSsORb1/GCx92xF8w==@lists.linux.dev X-Gm-Message-State: AOJu0YwkMoDIKLmkOb4GPFkA4Kxkz65p9THKKEzFNbk3P/FrIaCSbJJ+ 68kd3KR7VyHzIYtDDg6DZlidoKRyRmEYMJIRGd4E8BjN8gUYAn4H2TaR X-Gm-Gg: AR+sD13Vec6c7pVS3qKDrbNgB0USsGtC98AHZoZgW42xJOI06W6ITBA017f5BixEsiJ HW1s/mpcVIeOp1CKpRLEdR89vP+5lY1e/vXKCSSGJO+Ct4H+siBDOgw7pAcZRlt+PF38tOwUHfP xMY697tij2o8dF8/Kv+9ogh3If2SqsNGnmjipZQN4OLlV9obwwySSnqP9V6ctgdss8VDfsybVBK tIBiTfLbSnzhLJ39mjNHPd5gpglVWCzsSZzU5YT/lia69NWEqHDbKPus3OkswkgWTs3ok2K+BM8 NQBShXQXEydK9KTk5BoE4x8w50ZjRsF/HIi0yWg/8qq1AIepB0bHKD5sSQirpG+pr3XMCxhlyBX 3TGgA8hBIAWRCXNDnVVAAyz+tZOlEUZK6f/TGn2xMasH+8gTOmA3HWPdkpgukcnm0D73lWlJHCr rNv7a1/ktS8Tw9LZQ9QvhJLvvZBYKMwwxgiYiChf3B+yfPZcsic7QqPfj5e4nzfxrDlDiccH+RS J1A8jyrlsh9gcc8Eph+nmNe0x5S81lQgN8WTyxdWqpk74i8WDwCokYKXvI4eZYMwkCv+5OTDXzV 6GRLGOHDQwDrY4PweHZPtHKsbqySfUcBqqMlfLBfX1kR4//6oSZE34o+sdaNiwXN2bDnKslBClR LU/UFaI/Bj8FER7zWgVefAO1r2q0jHI2qjOpU/VJpujE2Japn6Emtl+prgfuTcU8Gi9lKBXuCim 0Wo6DOPT+rLHl2lg== X-Received: by 2002:a05:600c:4f87:b0:490:c6c2:52 with SMTP id 5b1f17b1804b1-4980c66c7d9mr217127655e9.3.1785773487184; Mon, 03 Aug 2026 09:11:27 -0700 (PDT) Received: from jernej-laptop (APN-122-100-117-gprs.simobil.net. [46.122.100.117]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-49949fc2da2sm3363735e9.3.2026.08.03.09.11.24 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 03 Aug 2026 09:11:26 -0700 (PDT) From: Jernej Skrabec To: wens@kernel.org Cc: maarten.lankhorst@linux.intel.com, mripard@kernel.org, tzimmermann@suse.de, airlied@gmail.com, simona@ffwll.ch, samuel@sholland.org, dri-devel@lists.freedesktop.org, linux-arm-kernel@lists.infradead.org, linux-sunxi@lists.linux.dev, linux-kernel@vger.kernel.org, Jernej Skrabec Subject: [PATCH 06/13] drm/sun4i: tcon: Drop TCON TOP device reference Date: Mon, 3 Aug 2026 18:10:44 +0200 Message-ID: <871a3108086c15a483eef23301984c8d2254dfa7.1785772659.git.jernej.skrabec@gmail.com> X-Mailer: git-send-email 2.55.0 In-Reply-To: References: Precedence: bulk X-Mailing-List: linux-sunxi@lists.linux.dev List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-MORS-Enabled: yes X-MORS-DOMAIN: patchwork.local X-MORS-HOSTING: hosting172546 X-MORS-USER: hosting172546 X-getmail-retrieved-from-mailbox: =?utf-8?q?INBOX?= of_find_device_by_node() takes a device reference. Drop it after mux configuration succeeds. Fixes: 0305189afb32 ("drm/sun4i: tcon: Add support for R40 TCON") Signed-off-by: Jernej Skrabec Acked-by: Chen-Yu Tsai --- drivers/gpu/drm/sun4i/sun4i_tcon.c | 19 +++++++++---------- 1 file changed, 9 insertions(+), 10 deletions(-) diff --git a/drivers/gpu/drm/sun4i/sun4i_tcon.c b/drivers/gpu/drm/sun4i/sun4i_tcon.c index ea7c90fef316..de2d66623f7a 100644 --- a/drivers/gpu/drm/sun4i/sun4i_tcon.c +++ b/drivers/gpu/drm/sun4i/sun4i_tcon.c @@ -1409,7 +1409,7 @@ static int sun8i_r40_tcon_tv_set_mux(struct sun4i_tcon *tcon, { struct device_node *port, *remote; struct platform_device *pdev; - int id, ret; + int id, ret = 0; /* find TCON TOP platform device and TCON id */ @@ -1432,21 +1432,20 @@ static int sun8i_r40_tcon_tv_set_mux(struct sun4i_tcon *tcon, if (IS_ENABLED(CONFIG_DRM_SUN8I_TCON_TOP) && encoder->encoder_type == DRM_MODE_ENCODER_TMDS) { ret = sun8i_tcon_top_set_hdmi_src(&pdev->dev, id); - if (ret) { - put_device(&pdev->dev); - return ret; - } + if (ret) + goto out_put_device; } if (IS_ENABLED(CONFIG_DRM_SUN8I_TCON_TOP)) { ret = sun8i_tcon_top_de_config(&pdev->dev, tcon->id, id); - if (ret) { - put_device(&pdev->dev); - return ret; - } + if (ret) + goto out_put_device; } - return 0; +out_put_device: + put_device(&pdev->dev); + + return ret; } static const struct sun4i_tcon_quirks sun4i_a10_quirks = { From patchwork Mon Aug 3 16:10:45 2026 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: =?utf-8?q?Jernej_=C5=A0krabec?= X-Patchwork-Id: 2926 Return-Path: X-Original-To: noreply@patchwork.local Delivered-To: noreply@patchwork.local Received: from tor.lore.kernel.org (tor.lore.kernel.org [172.105.105.114]) by mxe881.netcup.net (Postfix) with ESMTPS id 43C171C2257 for ; Mon, 3 Aug 2026 18:45:56 +0200 (CEST) Authentication-Results: mxe881; dkim=pass header.d=gmail.com; spf=pass (sender IP is 172.105.105.114) smtp.mailfrom=linux-sunxi+bounces-24974-noreply=patchwork.local@lists.linux.dev smtp.helo=tor.lore.kernel.org Received-SPF: pass (mxe881: domain of lists.linux.dev designates 172.105.105.114 as permitted sender) client-ip=172.105.105.114; envelope-from=linux-sunxi+bounces-24974-noreply=patchwork.local@lists.linux.dev; helo=tor.lore.kernel.org; Received: from smtp.subspace.kernel.org (conduit.subspace.kernel.org [100.90.174.1]) by tor.lore.kernel.org (Postfix) with ESMTP id 8863D31DD2C3 for ; Mon, 3 Aug 2026 16:12:33 +0000 (UTC) Received: from localhost.localdomain (localhost.localdomain [127.0.0.1]) by smtp.subspace.kernel.org (Postfix) with ESMTP id E947D41A91E; Mon, 3 Aug 2026 16:11:33 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="k/0Yxf7i" X-Original-To: linux-sunxi@lists.linux.dev Received: from mail-wm1-f49.google.com (mail-wm1-f49.google.com [209.85.128.49]) (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 2CA0D35E94E for ; Mon, 3 Aug 2026 16:11:31 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.128.49 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1785773493; cv=none; b=hpOTbi6VuNqkNwv21ADI2Ca1Bh90MK9oSQtyUI2MncPEYfiCOqQH+i3Usn4A+Z23aAEOXlJ476zmLey2MXoENQ/wHg2JE5TiVJFHkqIuVwlirw8vWUYmRHKPqXFhOPFTsbWbLrwLA1YwE6bC8iv6rmkBSAbBo5T8XaRVPUXggDQ= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1785773493; c=relaxed/simple; bh=+QALvQiHMlQRwY0nMxJePPGFDWDjCRk+5uGBf54egKk=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=C7743CDa9z/nreIMfMMAJ1wKE2p4kHcNSi7Jq0Q0PuT3+phym7RPTbcxTwPvVrP38A7mPkiZgd+kae5VNDrDMZ2tcyJQObtvTZb6LabXpirJSKAGWAVw59qn5zm0+H8UH5vATnHdRi8IgaSgpDtt260XmaoT0q5ZE2cyf3Msk/s= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com; spf=pass smtp.mailfrom=gmail.com; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b=k/0Yxf7i; arc=none smtp.client-ip=209.85.128.49 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=gmail.com Received: by mail-wm1-f49.google.com with SMTP id 5b1f17b1804b1-49548e01d02so13157875e9.0 for ; Mon, 03 Aug 2026 09:11:31 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20251104; t=1785773490; x=1786378290; darn=lists.linux.dev; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to:content-type; bh=l/erqd8k66TTCAw8PMmbwYLxInnN4rdx5bNv3CpPzY8=; b=k/0Yxf7iI8Imbn6oyEnSR/1IoVcZvgqSo1yHn3reYc1XmHNJtV3zMzka5kvZdF7Vzg m7swlY+Bp6WYPX8EmWjUcNGqteYOln8jvyW2bDIfzsJwSyspFDKFJ1ijqyhYrrtW8epj MuYtXivotvj3zhf27H6Y0jVHqsAk3AcNnvNzKMk15mz7+ZAX/EiCmSV+9pWky783ACNW luR7eJFN7UYER5f7Gqm2E6/0/VbJb6lo92noyxeWZ2ElhVuO0uzC6MPLPQU2WqbQqKP7 DAnKK4TsCWzoi6xfrPII92tCgW3SzYWvAI7kXHMJNU6aE9adTIg+Fp/d5qUbmqLcWlvS ULvw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1785773490; x=1786378290; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-gg:x-gm-message-state:from :to:cc:subject:date:message-id:reply-to:content-type; bh=l/erqd8k66TTCAw8PMmbwYLxInnN4rdx5bNv3CpPzY8=; b=a8aWA0fU+QcHUvV0zKEFlUgnrb5NgYq2AutQ8V4h2HcV08rFimYhYMjFRemgS/3BSB Ek/lMpBpmY1WRmWrtFHCdMC+Ft+EoF6Q0o4pkXSA+47EAOLAq4sZeV4UIJiGY23D0c4h TJCjArz4ThLLdooeAlsZtus7ScNnpjbcepWNNl/qR/VP5m9rYCLADA/i/7ulTDwhikds Ka41w3MjiG/Uq5Y5BOWljTIx8pCMJ/bW7kGiE2nwhAsr6nUUqJF9CNcdtxLofVFTlxq1 RJZMEo+xj4gb0bFVhdngY9uHjhbM+rkoUqPySQAiAgR2uqSyIXUymMwlarco2LNv39Fo cChA== X-Forwarded-Encrypted: i=1; AHgh+RoODHDrfBWj48yhMyYa6s3/K8dGtzgv8ZVEfBUACeUG3VRPkoW39y9VOqDOjmh90P8RJSIlwvbmck/FiA==@lists.linux.dev X-Gm-Message-State: AOJu0YxF5lRy9oKDHU2N6TrIJPDQPwkkZ5bg1HyBgP1v+Ib6MfG/kFVg FG3JlF1lJOz3g1yA9AXG7osi6/Z/LkMScdB6wkEwjOE86PLb62eiie6d X-Gm-Gg: AR+sD10yF0MVSWR96tYv+YUWOreA4JsBOvEdQp1PJRrQbB+qKqk3dv6XDSD6++gUEov ebbQCJcJkF/BmBZt46OWnFEH9gABSNaFmJ7G429QoKict6Ya6//CZdn2oVQ74/bttTnPJYonkjd 7mfrohg3t6BDXVM8/odeEorGhVg3v7IWcq/NJR5jozsamPwj3/iTBghNFOW0nVHrPgwlxuXK0ip g9EBwP+C/ST9QnbCLNJvTc4oT42zOG1KUIUKLhSQAPK/XfFXFQq6ZAYdvmBXNrkj0lR1+AQHlNL GWiGN0LJ9i0XmYwRgyAGfgRax++NmiGOFrh6G+io12y5ID1hPvSYzzaak9+sIRLQCCzlGjt9GCZ cdstsr0gf5REyQa4CADkAgi+lC+fdr1YsGThwttn94ODp7FHtsO/x8ZORoz0NKV4H4CxTUMUO+5 rSAP4Xlkx3BkPFQLm9aXhHGFdpyFuoUtbMcW+ei1mzGc3lOi6CvkuZOSwvu01ny+rxkRQPR18a7 xBZACATyRHVkqGJ/iYPDveWe2N0Xkf65jdWzIvOiBD2g/g6vNWMKRrmAR/bp1R/02HKWbXfj54I tybx2Q7Jr1FpL1ymUoDpgDBP6LeXgZ55kCBn7EWtlUyzwRA37s7GHMDvomiUXOMo8HvxWrNVQYA 2wOyEL9h1S5GnDjWdX44LmMcZL62hiF1StPitAWTmEuhS4/xwe49rSvXrilMzcnCHDDkCkOFgFB r4IA== X-Received: by 2002:a05:600c:3f0d:b0:495:4cb6:71cc with SMTP id 5b1f17b1804b1-4980c66b530mr267029485e9.5.1785773490118; Mon, 03 Aug 2026 09:11:30 -0700 (PDT) Received: from jernej-laptop (APN-122-100-117-gprs.simobil.net. [46.122.100.117]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-49949fc2da2sm3363735e9.3.2026.08.03.09.11.27 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 03 Aug 2026 09:11:29 -0700 (PDT) From: Jernej Skrabec To: wens@kernel.org Cc: maarten.lankhorst@linux.intel.com, mripard@kernel.org, tzimmermann@suse.de, airlied@gmail.com, simona@ffwll.ch, samuel@sholland.org, dri-devel@lists.freedesktop.org, linux-arm-kernel@lists.infradead.org, linux-sunxi@lists.linux.dev, linux-kernel@vger.kernel.org, Jernej Skrabec Subject: [PATCH 07/13] drm/sun4i: hdmi: Don't leak sync polarity bits into packet control Date: Mon, 3 Aug 2026 18:10:45 +0200 Message-ID: <51ba0918ce016a4b45313d5df1b6ce31b8c8731e.1785772659.git.jernej.skrabec@gmail.com> X-Mailer: git-send-email 2.55.0 In-Reply-To: References: Precedence: bulk X-Mailing-List: linux-sunxi@lists.linux.dev List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-Rspamd-Server: rspamd-worker-8404 X-Spamd-Result: default: False [-0.66 / 15.00]; BAYES_HAM(-5.50)[100.00%]; RBL_SENDERSCORE(2.00)[172.105.105.114:from]; SUSPICIOUS_RECIPS(1.50)[]; DMARC_POLICY_SOFTFAIL(1.00)[gmail.com : SPF not aligned (relaxed), No valid DKIM,none]; R_MISSING_CHARSET(0.50)[]; MAILLIST(-0.15)[generic]; BAD_REP_POLICIES(0.10)[]; MIME_GOOD(-0.10)[text/plain]; HAS_LIST_UNSUB(-0.01)[]; TAGGED_RCPT(0.00)[]; PRECEDENCE_BULK(0.00)[]; RCPT_COUNT_TWELVE(0.00)[12]; TO_DN_SOME(0.00)[]; DBL_BLOCKED_OPENRESOLVER(0.00)[tor.lore.kernel.org:rdns,tor.lore.kernel.org:helo]; FORGED_SENDER_MAILLIST(0.00)[]; FREEMAIL_CC(0.00)[linux.intel.com,kernel.org,suse.de,gmail.com,ffwll.ch,sholland.org,lists.freedesktop.org,lists.infradead.org,lists.linux.dev,vger.kernel.org]; R_SPF_ALLOW(0.00)[+ip4:172.105.105.114]; ARC_ALLOW(0.00)[subspace.kernel.org:s=arc-20240116:i=1]; FREEMAIL_FROM(0.00)[gmail.com]; RCVD_TLS_LAST(0.00)[]; MIME_TRACE(0.00)[0:+]; FORGED_RECIPIENTS_MAILLIST(0.00)[]; FROM_HAS_DN(0.00)[]; MID_RHS_MATCH_FROM(0.00)[]; ASN(0.00)[asn:63949, ipnet:172.105.96.0/20, country:SG]; TAGGED_FROM(0.00)[bounces-24974-noreply=patchwork.local]; RCVD_COUNT_FIVE(0.00)[6]; FROM_NEQ_ENVFROM(0.00)[jernejskrabec@gmail.com,linux-sunxi@lists.linux.dev]; RCVD_VIA_SMTP_AUTH(0.00)[] X-Rspamd-Queue-Id: 43C171C2257 X-MORS-Enabled: yes X-MORS-DOMAIN: patchwork.local X-MORS-HOSTING: hosting172546 X-MORS-USER: hosting172546 X-getmail-retrieved-from-mailbox: =?utf-8?q?INBOX?= sun4i_hdmi_enable() keeps using the same variable after it programmed the video timing polarity register with it. The leftover TX_CLK, HSYNC and VSYNC bits are then ORed into the packet control register, where each nibble selects the packet type sent in one slot. As a result, slot 0 selects packet type 3 instead of the AVI infoframe whenever the mode has positive HSYNC polarity, and the TX_CLK bits set nibbles which the driver never programs. Assign the packet types instead of ORing them into the stale value. Fixes: 9ca6bc246035 ("drm/sun4i: hdmi: Move mode_set into enable") Signed-off-by: Jernej Skrabec Acked-by: Chen-Yu Tsai --- drivers/gpu/drm/sun4i/sun4i_hdmi_enc.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/gpu/drm/sun4i/sun4i_hdmi_enc.c b/drivers/gpu/drm/sun4i/sun4i_hdmi_enc.c index 74c7c3720ba8..a27d394d0570 100644 --- a/drivers/gpu/drm/sun4i/sun4i_hdmi_enc.c +++ b/drivers/gpu/drm/sun4i/sun4i_hdmi_enc.c @@ -161,7 +161,7 @@ static void sun4i_hdmi_enable(struct drm_encoder *encoder, drm_atomic_helper_connector_hdmi_update_infoframes(connector, state); - val |= SUN4I_HDMI_PKT_CTRL_TYPE(0, SUN4I_HDMI_PKT_AVI); + val = SUN4I_HDMI_PKT_CTRL_TYPE(0, SUN4I_HDMI_PKT_AVI); val |= SUN4I_HDMI_PKT_CTRL_TYPE(1, SUN4I_HDMI_PKT_END); writel(val, hdmi->base + SUN4I_HDMI_PKT_CTRL_REG(0)); From patchwork Mon Aug 3 16:10:46 2026 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: =?utf-8?q?Jernej_=C5=A0krabec?= X-Patchwork-Id: 2929 Return-Path: X-Original-To: noreply@patchwork.local Delivered-To: noreply@patchwork.local Received: from sea.lore.kernel.org (sea.lore.kernel.org [172.234.253.10]) by mxe881.netcup.net (Postfix) with ESMTPS id 6B29D1C023D for ; Mon, 3 Aug 2026 19:01:47 +0200 (CEST) Authentication-Results: mxe881; dkim=pass header.d=gmail.com; spf=pass (sender IP is 172.234.253.10) smtp.mailfrom=linux-sunxi+bounces-24976-noreply=patchwork.local@lists.linux.dev smtp.helo=sea.lore.kernel.org Received-SPF: pass (mxe881: domain of lists.linux.dev designates 172.234.253.10 as permitted sender) client-ip=172.234.253.10; envelope-from=linux-sunxi+bounces-24976-noreply=patchwork.local@lists.linux.dev; helo=sea.lore.kernel.org; Received: from smtp.subspace.kernel.org (conduit.subspace.kernel.org [100.90.174.1]) by sea.lore.kernel.org (Postfix) with ESMTP id E035A3404718 for ; Mon, 3 Aug 2026 16:12:34 +0000 (UTC) Received: from localhost.localdomain (localhost.localdomain [127.0.0.1]) by smtp.subspace.kernel.org (Postfix) with ESMTP id 18D5537A82C; Mon, 3 Aug 2026 16:11:36 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="rWyUybG5" X-Original-To: linux-sunxi@lists.linux.dev Received: from mail-wm1-f41.google.com (mail-wm1-f41.google.com [209.85.128.41]) (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 6C077417BC3 for ; Mon, 3 Aug 2026 16:11:34 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.128.41 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1785773496; cv=none; b=gYmGiE1rYmnjTbNRAwRpO9pp9zi7sAB10yFH8+wvpfjWy4oHVrXdtZakidxDw8zuLOL/N6/RFVnbA8Y9wbk8o7G/9rC9Rup/vNRQ48omdRDg1qTgqqlvbKXUynEC+hSqGWS3UmcIAtl03ID/nNKDfSYBcYTL8kP+GoJFozItL3g= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1785773496; c=relaxed/simple; bh=tfv0vYDy2N9RvqMA4TSJVpdsIFekT4UQuZsb9p/jgHg=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=GnR1pd5wQs9wLN5QWTrBUa0C1fUwY1Eag6V2ym7VYAVmXCtkTAnpYphwZLRqH70sIGPf0nq4uyHbXn0MFpxOPpTI3gTYYeqtXyYqXg7VVE3NIgsdK7TRoRSYk0JkyLWukP5sVMhaHu6msvPUWD/ZFwY89zE5D0FfAyC4u/6R4Co= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com; spf=pass smtp.mailfrom=gmail.com; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b=rWyUybG5; arc=none smtp.client-ip=209.85.128.41 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=gmail.com Received: by mail-wm1-f41.google.com with SMTP id 5b1f17b1804b1-4954df200ddso15187555e9.0 for ; Mon, 03 Aug 2026 09:11:34 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20251104; t=1785773493; x=1786378293; darn=lists.linux.dev; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to:content-type; bh=2K51/FwVv7xc1HWMtJnTlI6NfH3sfU8zC/PFmRYZpYI=; b=rWyUybG5BiH5OLGHo5JGYqTimgJYNDmNcmfYrNrdK8mUQy/jBzrKPJbUznwVuar+B9 3UHujnUSyKARvv9jomjkbtfSUV0Ba43d4DTKoXtvF/0lowNMgOt2uhFi/tK0PR3sHWWB MGSu8To38i0RWRfsqFMgI9yT7DFb8nzY702FsDNF59qZE/dp7Oj1G8sakhd3D+yfOquv KqsgsNbfBq7mo7szNoWZq30FU7IwsDWfXLkzDdhRkWVqoDSjtqtv/7s2AMEvD8AkZeGG 1S6Wwsf1mbEgcqcWgx2exZcT4OzYNYcHkJ4hurXdZYaMNuOgpmylJLrqHhAqRdS9RQIr ezog== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1785773493; x=1786378293; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-gg:x-gm-message-state:from :to:cc:subject:date:message-id:reply-to:content-type; bh=2K51/FwVv7xc1HWMtJnTlI6NfH3sfU8zC/PFmRYZpYI=; b=jTbr+n64Kl9jntzsnejspwW/MpD8cDdgIRzy21klmFqmri/XrHoDgSmRJYKSoqXFJl CfUvchJBDEQW0DiitBNKrGenZ8ncRPChPb8Awi0q1U4DJveM5I8WEA2QwLpAMYoYRpM2 X95QSxLospAfnFXqjFGXghL+JFNM4tjwxv7qG/wY8g7bTlFFHsUOrc7Z1LdCVKCzfVTl P+4xvvITip5T4IcJoPSWBG6DaAsGsy7mN87DwayTfKtVDY3kguLlI14MzU1usISZ9e0l 0UqKPBa5dZjy7AMSo7rqRyXJrYa4CHhA2h9xcz2Z7G6qHfCBRSN/0NE2xuYmBrxyJaGA Emew== X-Forwarded-Encrypted: i=1; AHgh+RpUigNS4BZoAuw3KabFX/kEkg0T2D4aAdLlbP2F2+VaG8LdRA0NKMfTVTGrTy+NNHrt8oY3UuqdiQbVTg==@lists.linux.dev X-Gm-Message-State: AOJu0YyHDhsPXKnrWAd+4XEA3E0QKsIVEkvrJS4QZEjzDe6u6cTyUbA4 uqCiRcX/Cd2C1xSg7gRDa3W8Ujy77qWEKfok7A0l/VOlNsdqvEPU2+Ih X-Gm-Gg: AR+sD133+bjQEgLEMbR6sDM57vbngiDMCbol9lPOE39u52mYdP5Q7Vim8m2qiSdxvIb hQUufPkufsyuhsS4iff3j+UiQ6nF1wB3VF6CNfN3qAul27wU6twkQqkyvWTjo89ku5XLeA3sGlk ufBbHMjuluV1rOyApv4lAVX/3e1TEkywzEijU9B2e0dLABIuGr05tI/AsZlpfgzynPo5/Sbo9df frgRBWybmprDKyAsNm3LeLUtk8cGA7FGFQo7Xz759kODOwcL+hFQ2xD4GieCsVS6rwp7tPYpO7Y TeocJmkrh7NH8TxnCQes9Y9/AhrekUmdciZPdBPZOuIKf5BkcwZE/NCbOUiaVuqUMlDSapsOt2b K7Hx+c81775MXWq5iyX2YIYXqGFdAiHDeJs+Ha4Tuu4dwev0LJdzcpb0mEkGK7QyQZ+rhp4o32q PjELSqqDgf4ocHqm18TXZpwD4aXraLfL5BC8t7gM13uHUX/OuNMgCODb1R1ztJ79O+VOfDEJgB8 jqxlmIJbQUM0ch3UcPolL5OE87zej4YoKos5rmXdltjBXRO/cfIjhuPiJV4WI0chof7Xph6JO/D wwv4aBVKnHueiIj8ZQZuI7ZCpSwMFNzxM4budfSAOzA0ZHox7zZ4DwJard9ioZtkeQpCyvJS4EW xsDn4s24FgKYEiuGjJJkrTVBsWqbxuWTBGcWmk4PEdCdglr306JredSkfjPwxp41nKYtvq/acyE dhdQ== X-Received: by 2002:a05:600c:4444:b0:493:f5bf:4dc6 with SMTP id 5b1f17b1804b1-4980c645e1amr227533685e9.7.1785773492549; Mon, 03 Aug 2026 09:11:32 -0700 (PDT) Received: from jernej-laptop (APN-122-100-117-gprs.simobil.net. [46.122.100.117]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-49949fc2da2sm3363735e9.3.2026.08.03.09.11.30 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 03 Aug 2026 09:11:32 -0700 (PDT) From: Jernej Skrabec To: wens@kernel.org Cc: maarten.lankhorst@linux.intel.com, mripard@kernel.org, tzimmermann@suse.de, airlied@gmail.com, simona@ffwll.ch, samuel@sholland.org, dri-devel@lists.freedesktop.org, linux-arm-kernel@lists.infradead.org, linux-sunxi@lists.linux.dev, linux-kernel@vger.kernel.org, Jernej Skrabec Subject: [PATCH 08/13] drm/sun4i: crtc: Propagate layer initialization error Date: Mon, 3 Aug 2026 18:10:46 +0200 Message-ID: X-Mailer: git-send-email 2.55.0 In-Reply-To: References: Precedence: bulk X-Mailing-List: linux-sunxi@lists.linux.dev List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-MORS-Enabled: yes X-MORS-DOMAIN: patchwork.local X-MORS-HOSTING: hosting172546 X-MORS-USER: hosting172546 X-getmail-retrieved-from-mailbox: =?utf-8?q?INBOX?= sun4i_crtc_init() returns plain NULL when layer initialization fails, while all its other error paths return an error pointer. The only caller, sun4i_tcon_bind(), checks the result with IS_ERR() and happily continues with tcon->crtc set to NULL. sun4i_rgb_init() and sun4i_lvds_init() then dereference it in drm_crtc_mask(), which oopses. Return the error pointer instead. Fixes: dcd215801b02 ("drm/sun4i: Drop primary layer pointer from sun4i_drv") Signed-off-by: Jernej Skrabec Acked-by: Chen-Yu Tsai --- drivers/gpu/drm/sun4i/sun4i_crtc.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/gpu/drm/sun4i/sun4i_crtc.c b/drivers/gpu/drm/sun4i/sun4i_crtc.c index c2f7f69baf75..3fa1f4fda0f0 100644 --- a/drivers/gpu/drm/sun4i/sun4i_crtc.c +++ b/drivers/gpu/drm/sun4i/sun4i_crtc.c @@ -208,7 +208,7 @@ struct sun4i_crtc *sun4i_crtc_init(struct drm_device *drm, planes = sunxi_engine_layers_init(drm, engine); if (IS_ERR(planes)) { dev_err(drm->dev, "Couldn't create the planes\n"); - return NULL; + return ERR_CAST(planes); } /* find primary and cursor planes for drm_crtc_init_with_planes */ From patchwork Mon Aug 3 16:10:47 2026 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: =?utf-8?q?Jernej_=C5=A0krabec?= X-Patchwork-Id: 2931 Return-Path: X-Original-To: noreply@patchwork.local Delivered-To: noreply@patchwork.local Received: from sea.lore.kernel.org (sea.lore.kernel.org [172.234.253.10]) by mxe881.netcup.net (Postfix) with ESMTPS id 686FF1C08F6 for ; Mon, 3 Aug 2026 19:31:05 +0200 (CEST) Authentication-Results: mxe881; dkim=pass header.d=gmail.com; spf=pass (sender IP is 172.234.253.10) smtp.mailfrom=linux-sunxi+bounces-24977-noreply=patchwork.local@lists.linux.dev smtp.helo=sea.lore.kernel.org Received-SPF: pass (mxe881: domain of lists.linux.dev designates 172.234.253.10 as permitted sender) client-ip=172.234.253.10; envelope-from=linux-sunxi+bounces-24977-noreply=patchwork.local@lists.linux.dev; helo=sea.lore.kernel.org; Received: from smtp.subspace.kernel.org (conduit.subspace.kernel.org [100.90.174.1]) by sea.lore.kernel.org (Postfix) with ESMTP id 9AE693178520 for ; Mon, 3 Aug 2026 16:12:45 +0000 (UTC) Received: from localhost.localdomain (localhost.localdomain [127.0.0.1]) by smtp.subspace.kernel.org (Postfix) with ESMTP id 60FDA41D104; Mon, 3 Aug 2026 16:11:38 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="Yt4DuGba" X-Original-To: linux-sunxi@lists.linux.dev Received: from mail-wm1-f46.google.com (mail-wm1-f46.google.com [209.85.128.46]) (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 B1770419FBB for ; Mon, 3 Aug 2026 16:11:36 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.128.46 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1785773498; cv=none; b=WOA8fKmGQntg5FOEkPEntSUzeCzO33Y2lu2chx+OJiScIqu9teEPdtJtl3/+FfboL7qEp8M2Sa7RSxwYfUpLrcXxqPy9von7j275UrbZhKKcACZW0g07nJnocu9fimw/+MFkTdT8NBnwILM6xIGwewJ8zSBDPMFeEUsZrspHghA= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1785773498; c=relaxed/simple; bh=E/V2va673I5SwbBWXJYlP+dI9gNQdHSoB8iXM8ofRmo=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=NCuPw2afEErVcTDGjvimsc8Qb6Q0RobHt+mvq58ksLaf1tLRjISWt+m+kfWkFWrJQGTnIEgrRwmHF4BBTg6TGGI+NpPIyGLv/1zioc+4JEQQeyv1o0cTEkVz60lYRxWgzPJolVkdc9iPLiicW5tXhn0V+PoscsdOPohFxVgOJzA= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com; spf=pass smtp.mailfrom=gmail.com; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b=Yt4DuGba; arc=none smtp.client-ip=209.85.128.46 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=gmail.com Received: by mail-wm1-f46.google.com with SMTP id 5b1f17b1804b1-4954afac04bso27145545e9.0 for ; Mon, 03 Aug 2026 09:11:36 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20251104; t=1785773495; x=1786378295; darn=lists.linux.dev; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to:content-type; bh=dQSiWGawSQuy9JjtPPgjfFND1Bm19QyKn7xZ0H2UpZ0=; b=Yt4DuGbayzU/dHNt1SA4DK8+vtXTS2WIYZGDDNrflWbKzUs7cTy8704ZMj0a9DIavZ QW6ViMHbP/XhZdtg0aDpe4Uoi3HdMp9U6QrWRlYjsub1NCvRv0HURSNGgnuAzkT0CxOm gL8jg4C8RK5h2Cgdd7oFVSwV5NrRmD8lPPqJfG3/jVAxvirH0G6uJaP1D3LiBIrppLtD sd/i9Bj1AZPNtcHZJmOxbgJCNvawzApHkuwuQOjxrOKyRUh31IqSeOz3ZFcog+KMMDGd 92q1ZC+Kezh4FK5QJ0lR3S3CeYsg7+jKhhXlmpd2lqlO4ckx1GNh4zoUnwlUj/nhXZY1 boSQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1785773495; x=1786378295; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-gg:x-gm-message-state:from :to:cc:subject:date:message-id:reply-to:content-type; bh=dQSiWGawSQuy9JjtPPgjfFND1Bm19QyKn7xZ0H2UpZ0=; b=h12WCL+OxLP4oaQrObQfyyxQD5c6oKzD7WtX2zcEGF0YXTFB4atY+WVJLr3NLEDy52 TNptnpz4FiuEHSM47a/B/GLpGM+H5NMBxTbTU8vY33sgbCBhADlQi4RVYEJM35Ft5oot Yix1WVBL4Xpty1+hHnTEEIKAf1Ix4Zn15a4LFgUKgIQMI2IFDv5AgP2hKQTBHV7OPQse WasJK0ae5UmCn1Vx819pM2oPGsBJ0ai+Xw069cpmMxUWQ+aGLeJ6ysq+FSUog53GwHvE +0OCLWOOsToCoIQdyp23QlgTMfzAso0aZo99+VNtYWbQ0TTdYmkpa0gHK3Z3r004tKl4 JlVw== X-Forwarded-Encrypted: i=1; AHgh+Rq4HyAHpABCb8YbmFEqmbk4Yc4k6z8NRoNMLu0ltwxjkbByC89dTMtYYVevufHeuolqjWacFqzJsQqy8g==@lists.linux.dev X-Gm-Message-State: AOJu0Yzt7unNem1JCiAGyu3+JyFgxwdf7NCrUogN3YgNe+tqLhCTiK2g zeG5s6kf70UG4h8OmCWnjMr0ixJwmKP/A0/T6DjEtkNJ1XuNFN0TrUCu X-Gm-Gg: AR+sD11/JTTTiYDtySRI/JGaAMUCbmVvCGtD3j/RdbimKH5OWRdmIzKjt6Pp5o/wrqP +cSv74CLaTnmYQt2VGwgn7Mgtmg3bmjG2qJbCm/kF5JgS3FTARaS3/t3rRgjG/BNijldwtdrUB9 i/vLtFPjnluRJk5NeifkzocIlw/6FGnaqkKe2uESWHcCCk6JCb09lgQPJ4la+RZUpnkH+xFfELl mmHFks/202gu6Of7dB4kHOQyn8Ep0S3oxW9RdH+AuMBhoiUMVXQoFCdWx2fwKW6Cwb3zeSTRZ8S Pl94iAh49M9x/rAtRR7BWbGSbGqwNjSyDHZin25/fBUXxeNLMeL0JWkQ4XuGBaZHt8NZq6chdqh XDLluIUr0vjBqLtyW3v9w0ub9CsA6nTfLTFgeZyOCsEps+zwwKeoozRyKaaTWLYbEqLBJzTH6xT 04eDDrbOeDDGNxMX7p1nuC2gB8p9FJsCY27PZmBOSOVa1a/Aexe2IeXbKHmLpMiDmoZ631d+JDL 2ujFCkYSU4bFur3wZQG3f9XZnazdCrlr3A6tRDQC2cYIkFSGqzS4bqqkFdrdiRNpdpsgxaIYor4 NnhtTbvqLRooNXBe5ybR2+DwtY4QHlnCR4KX4mWo5RInqQ6bzthzU+lNCcqwW5NnEz/CIJlVAc2 DKy5ZnTuYnBW1bGUwg3IVsC5IqZY5wRnMdpkwInxUUEXLj1rTRSOWqf28OCp85oG0u8soBF0jXS CPiw== X-Received: by 2002:a05:600c:354a:b0:495:4e89:3f30 with SMTP id 5b1f17b1804b1-4980c673874mr224712255e9.15.1785773494475; Mon, 03 Aug 2026 09:11:34 -0700 (PDT) Received: from jernej-laptop (APN-122-100-117-gprs.simobil.net. [46.122.100.117]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-49949fc2da2sm3363735e9.3.2026.08.03.09.11.32 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 03 Aug 2026 09:11:34 -0700 (PDT) From: Jernej Skrabec To: wens@kernel.org Cc: maarten.lankhorst@linux.intel.com, mripard@kernel.org, tzimmermann@suse.de, airlied@gmail.com, simona@ffwll.ch, samuel@sholland.org, dri-devel@lists.freedesktop.org, linux-arm-kernel@lists.infradead.org, linux-sunxi@lists.linux.dev, linux-kernel@vger.kernel.org, Jernej Skrabec Subject: [PATCH 09/13] drm/sun4i: tcon: Drop remote endpoint reference Date: Mon, 3 Aug 2026 18:10:47 +0200 Message-ID: <3f5ec952ad80cb51efebf2fe230df50259041a23.1785772659.git.jernej.skrabec@gmail.com> X-Mailer: git-send-email 2.55.0 In-Reply-To: References: Precedence: bulk X-Mailing-List: linux-sunxi@lists.linux.dev List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-MORS-Enabled: yes X-MORS-DOMAIN: patchwork.local X-MORS-HOSTING: hosting172546 X-MORS-USER: hosting172546 X-getmail-retrieved-from-mailbox: =?utf-8?q?INBOX?= sun4i_tcon_of_get_id_from_port() never drops the reference taken by of_graph_get_remote_endpoint(). The function is not only called during bind, but also on every mode set through sun8i_r40_tcon_tv_set_mux(), so the leak accumulates. Fixes: e8d5bbf7f4c4 ("drm/sun4i: tcon: get TCON ID and matching engine with remote endpoint ID") Signed-off-by: Jernej Skrabec --- drivers/gpu/drm/sun4i/sun4i_tcon.c | 1 + 1 file changed, 1 insertion(+) diff --git a/drivers/gpu/drm/sun4i/sun4i_tcon.c b/drivers/gpu/drm/sun4i/sun4i_tcon.c index de2d66623f7a..67047e3b657f 100644 --- a/drivers/gpu/drm/sun4i/sun4i_tcon.c +++ b/drivers/gpu/drm/sun4i/sun4i_tcon.c @@ -972,6 +972,7 @@ static int sun4i_tcon_of_get_id_from_port(struct device_node *port) continue; ret = of_property_read_u32(remote, "reg", ®); + of_node_put(remote); if (ret) continue; From patchwork Mon Aug 3 16:10:48 2026 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: =?utf-8?q?Jernej_=C5=A0krabec?= X-Patchwork-Id: 2922 Return-Path: X-Original-To: noreply@patchwork.local Delivered-To: noreply@patchwork.local Received: from tor.lore.kernel.org (tor.lore.kernel.org [172.105.105.114]) by mxe881.netcup.net (Postfix) with ESMTPS id 19DA11C094C for ; Mon, 3 Aug 2026 18:35:43 +0200 (CEST) Authentication-Results: mxe881; dkim=pass header.d=gmail.com; spf=pass (sender IP is 172.105.105.114) smtp.mailfrom=linux-sunxi+bounces-24978-noreply=patchwork.local@lists.linux.dev smtp.helo=tor.lore.kernel.org Received-SPF: pass (mxe881: domain of lists.linux.dev designates 172.105.105.114 as permitted sender) client-ip=172.105.105.114; envelope-from=linux-sunxi+bounces-24978-noreply=patchwork.local@lists.linux.dev; helo=tor.lore.kernel.org; Received: from smtp.subspace.kernel.org (conduit.subspace.kernel.org [100.90.174.1]) by tor.lore.kernel.org (Postfix) with ESMTP id 551B2321AF4B for ; Mon, 3 Aug 2026 16:13:06 +0000 (UTC) Received: from localhost.localdomain (localhost.localdomain [127.0.0.1]) by smtp.subspace.kernel.org (Postfix) with ESMTP id 8EB7F41D620; Mon, 3 Aug 2026 16:11:43 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="p25rom45" X-Original-To: linux-sunxi@lists.linux.dev Received: from mail-wm1-f53.google.com (mail-wm1-f53.google.com [209.85.128.53]) (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 1B74641CB54 for ; Mon, 3 Aug 2026 16:11:37 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.128.53 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1785773503; cv=none; b=YjDRFo1zBhdIuCh9G/u74r81YBjNbGBWzbvkxOorWR5GjrqdwkF1mPZ0kXADGfXEq5VPmPjM/7obxreL2I3Fugq36o6tUNZsmYl+amBWwdEYpu8uZrXyjcAsK7xhqnPjznY/sTYIqVYvHy2Tz22LEttOIb6t5um4dBvtyoMkk+c= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1785773503; c=relaxed/simple; bh=gvyoux8vKAY8xTz8Xgc+NXDdABzVbfVGAT7Su4RCXP0=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=mFMqz1NtA9ynvExfThzKvc2qKZWv9wn5P1f1nimEetlMm6jliPO6Qv284mzP+6L01BZGy15dHgR2oTBcvHRSE7kYLEusJcrBvgQO/w4VFw/vJboltJiiuVouAyRJAbq3qFcevOTKcghtX+QlrVz4xq3BD0bbqQZh3i1/XMMmd64= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com; spf=pass smtp.mailfrom=gmail.com; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b=p25rom45; arc=none smtp.client-ip=209.85.128.53 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=gmail.com Received: by mail-wm1-f53.google.com with SMTP id 5b1f17b1804b1-4954afac04bso27145845e9.0 for ; Mon, 03 Aug 2026 09:11:37 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20251104; t=1785773496; x=1786378296; darn=lists.linux.dev; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to:content-type; bh=B5EYEilaxvTpzeLrRhoCx5eknHZ5V8aHsBlGVEU3TBs=; b=p25rom45vpdxbdbSCv5YS0lzp/IoE1KZXNDx/eAOhHDYR1KC6NglFFGp2Oc3CUP53e xneQB4sXnz1hnR9RnlFmRco2fu1RX6b9DFOP6UFoe6Zaevr8DwtMpNPum6V4gtJ0T3i5 GPfNIs2VVXUEN0olRAxQhvlMf6n8hxmQswncjTA/p/rmMZdr/OcUfNCp7sx2LSv86aYm aVin9bpRyE+c8eBVEuifUdghF0MToMeWeD/BG12hFNp+AbvBu0XqUGZOet3idKUxLJN9 SkZiKVDESQm5+/68VBTsl1dFqIJkGBC8i0RPL/Dz4eZRNrVbCJmyZVC0JyUJtVQY+BhX Q/Zg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1785773496; x=1786378296; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-gg:x-gm-message-state:from :to:cc:subject:date:message-id:reply-to:content-type; bh=B5EYEilaxvTpzeLrRhoCx5eknHZ5V8aHsBlGVEU3TBs=; b=aXhuYnWE1kA9IPSqlC6+fk+0wKVOGy6Fn8GRMfk/10FkLHwBhiqpGzJ1OlhHawWT7P GoRlvKZVQfZVqJ14DQ8Rhj+A2T0WbWrUeq+KjIMPu14ArOqVpoga/NBg8VqFmCT8+Ccy 0fzVFRR3gQbVZ/Z8E16fYXvQindH1WhF9q1wLdgoTSCeJMaWyOKl6VLuOAoJQcgQekF+ XQMJY1GrTbCgWWIoc3PbtmU0I31Bj+/ygWQq4Ci+LMyRvDvrMkKhnDLwJvJd4EDgnr1p u7y1O5sy3IID9M1cakgSuxDuy4bBR+Ouq1TPXC/J4sO4sSqR/Qik8Y+nKKJUPewt7Zdw 6/oQ== X-Forwarded-Encrypted: i=1; AHgh+RpTYdRETGxbU0IIh30LnjgMAGB9LHH/37/SeBJoBmik19bpcXwbnr68/JK5u1KTdVISs+JDLwEMX+EYQQ==@lists.linux.dev X-Gm-Message-State: AOJu0Yxslud4mKvd1PXSdmR/sjA3urf14PfkSLueg5joxYjp/woP1reN UOBg0aPfiEMDWjDunOeKRA2y7QSHeC00yoKcNZEpROAcH3VZfGk8ps+V X-Gm-Gg: AR+sD10C5L8VWQB5uo4zZAaNRkGpoXHxM9PToxwkskX4jiVqUqyX5EhYcIFNSvFEOk0 SKrhTUOZqdH0px6+yuqnsJ3ulO1dMg5U5QRohuvs+Mgt5mh503d9ImAEyYYrlBkkjTRgWAnM2S0 FW4JoRCWE6w8i4Uvw0CH/lbsnuklsAGjb6nBvWXHUK81VYKACUi6AFM5+A0fdwLjWEQDXpW/jAR OPe6x8YviLyc5xmWWr8Re9R9HqZO5Nn1rK4WFgaz+cqkMz/AJ6vLZ0ZHo0hNu0SXmQo2BHHgV15 +zkwxgX2x+p9vgf3Op6Niwx2dJRbwW9jWGwrL0Bt/d6sHnfAg5VHzHyl9FkSQp46awaecXpWwUW eGwq1Y3AlBMQ2Wb9j1LidCGgTGSV80Mf4Me/4IY80uw3/J3y/JlwJA33p1eG6PnsP0f/l+Mdo8q ZpEH0zJi4ZR6z7zPsTHqs3BmxuVK/c0P+TRQrqgh+Iv+w1IiLXav3XziqlvSlZCDUAj48GO7Bp1 usznIoOySsaxNT/n1fPIBxmygfA6cAeOokT5n7lfSm58mYx1PtQrqqinQ8zYFGBtgeqQ7bDaG9w 0+OC8Kv8PpDuaTgy4fiy37U+abQ7wWTNqA4nj0YhDZWI3tVVPr6ZVWUeLzgr6xrwYpAC0vChJqk LY0dkd8ub8yvUeLofbMSvkiAHpYW5Z6AUDYZRuhU18bveiFJ+/g7+PS3WSG3PJkZxQ99UVROrJx zyXYkVQfcjfDSx X-Received: by 2002:a05:600c:470d:b0:498:490:3bbe with SMTP id 5b1f17b1804b1-4980c679d1fmr255703765e9.16.1785773496293; Mon, 03 Aug 2026 09:11:36 -0700 (PDT) Received: from jernej-laptop (APN-122-100-117-gprs.simobil.net. [46.122.100.117]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-49949fc2da2sm3363735e9.3.2026.08.03.09.11.34 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 03 Aug 2026 09:11:35 -0700 (PDT) From: Jernej Skrabec To: wens@kernel.org Cc: maarten.lankhorst@linux.intel.com, mripard@kernel.org, tzimmermann@suse.de, airlied@gmail.com, simona@ffwll.ch, samuel@sholland.org, dri-devel@lists.freedesktop.org, linux-arm-kernel@lists.infradead.org, linux-sunxi@lists.linux.dev, linux-kernel@vger.kernel.org, Jernej Skrabec Subject: [PATCH 10/13] drm/sun4i: dw-hdmi: Drop TCON TOP port reference Date: Mon, 3 Aug 2026 18:10:48 +0200 Message-ID: <43ffcc17f7c3f94c1d7bd1ee89134c766e84df35.1785772659.git.jernej.skrabec@gmail.com> X-Mailer: git-send-email 2.55.0 In-Reply-To: References: Precedence: bulk X-Mailing-List: linux-sunxi@lists.linux.dev List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-MORS-Enabled: yes X-MORS-DOMAIN: patchwork.local X-MORS-HOSTING: hosting172546 X-MORS-USER: hosting172546 X-getmail-retrieved-from-mailbox: =?utf-8?q?INBOX?= When the HDMI controller is fed by TCON TOP, the port node used to enumerate the possible CRTCs is never released. Fixes: 57e23de02f48 ("drm/sun4i: DW HDMI: Expand algorithm for possible crtcs") Signed-off-by: Jernej Skrabec Acked-by: Chen-Yu Tsai --- drivers/gpu/drm/sun4i/sun8i_dw_hdmi.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/drivers/gpu/drm/sun4i/sun8i_dw_hdmi.c b/drivers/gpu/drm/sun4i/sun8i_dw_hdmi.c index 96532709c2a7..51cdfa1ae3bf 100644 --- a/drivers/gpu/drm/sun4i/sun8i_dw_hdmi.c +++ b/drivers/gpu/drm/sun4i/sun8i_dw_hdmi.c @@ -83,6 +83,8 @@ static u32 sun8i_dw_hdmi_find_possible_crtcs(struct drm_device *drm, of_node_put(remote_port); } } + + of_node_put(port); } else { crtcs = drm_of_find_possible_crtcs(drm, node); } From patchwork Mon Aug 3 16:10:49 2026 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: =?utf-8?q?Jernej_=C5=A0krabec?= X-Patchwork-Id: 2927 Return-Path: X-Original-To: noreply@patchwork.local Delivered-To: noreply@patchwork.local Received: from tor.lore.kernel.org (tor.lore.kernel.org [172.105.105.114]) by mxe881.netcup.net (Postfix) with ESMTPS id 87F9F1C2223 for ; Mon, 3 Aug 2026 18:46:39 +0200 (CEST) Authentication-Results: mxe881; dkim=pass header.d=gmail.com; spf=pass (sender IP is 172.105.105.114) smtp.mailfrom=linux-sunxi+bounces-24979-noreply=patchwork.local@lists.linux.dev smtp.helo=tor.lore.kernel.org Received-SPF: pass (mxe881: domain of lists.linux.dev designates 172.105.105.114 as permitted sender) client-ip=172.105.105.114; envelope-from=linux-sunxi+bounces-24979-noreply=patchwork.local@lists.linux.dev; helo=tor.lore.kernel.org; Received: from smtp.subspace.kernel.org (conduit.subspace.kernel.org [100.90.174.1]) by tor.lore.kernel.org (Postfix) with ESMTP id CB84A30CFEEB for ; Mon, 3 Aug 2026 16:13:23 +0000 (UTC) Received: from localhost.localdomain (localhost.localdomain [127.0.0.1]) by smtp.subspace.kernel.org (Postfix) with ESMTP id 391A3368296; Mon, 3 Aug 2026 16:11:46 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="DLMDVoWn" X-Original-To: linux-sunxi@lists.linux.dev Received: from mail-wm1-f41.google.com (mail-wm1-f41.google.com [209.85.128.41]) (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 83DAA41D218 for ; Mon, 3 Aug 2026 16:11:40 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.128.41 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1785773506; cv=none; b=KbM7igD1of9VW3ePpnE1OtvMhBdMukbtu6CDRnsHO9tyI2xALLTVayf+5vj212Wrbrmjtm5YoBk29pLnYXblRuSAEKtlHpjWRiWztNiz8ePwHqi9OUnVfWl+yIk5U9TD3giHNbJWFYXnxM2dfq+u7d5zeXMO5rVn5yFFME1Wr4o= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1785773506; c=relaxed/simple; bh=1914/fw+Fxj6W05SQ59nfIkVyGTvPvadr1OiGkJKAaE=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=M8cWRIpTnnRqTep4579n8xiifmUSNe9IvYrsyKUjpXh7Llt11qTJ9ZtOGw7ImV3+iNZ6EibDqVa4vF09a3miTRhBZPsnloK3+Yw6K8ZYlT8gNr6OdrI86fXFL9k9PnrQ63EatAeeSIr/y0YGzi+0w7IRG9WAhZ73Op9WXPqDT2c= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com; spf=pass smtp.mailfrom=gmail.com; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b=DLMDVoWn; arc=none smtp.client-ip=209.85.128.41 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=gmail.com Received: by mail-wm1-f41.google.com with SMTP id 5b1f17b1804b1-49800c6a846so20196825e9.3 for ; Mon, 03 Aug 2026 09:11:40 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20251104; t=1785773498; x=1786378298; darn=lists.linux.dev; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to:content-type; bh=hC6MJ8bwLjjZgLx3/Q1ZtCKaKlgeak/LeNvekOVJvKg=; b=DLMDVoWn4ZF0f+DlNR7B7WYd+BIwtEv+X5kbOS9XVz3TZk5POCreBFk0cpM+Nld/KO oGccB2KKKqhvhn2Ei10tAjWBXCsJ0knVocnO0A10Ulmty/mtc3XsY9QpgTIjMxP3vXcC vHvvroaaegg1wIl5meh05AbxUQCr4IY2KJHCvtTdf27advS+HsBQho3EmRIW+KAFFoKf sy46h+i01btliypY0RVUzE6ndH6gKQaPCKyw1g01K9FRn3ydzKMD3dVknnbCH7dUQvDS Hq+1DPefR8I5LpupFWO6ycw6XnKdmeerQU4ZnMe5pAwPe9AFvlzlZSEVkscRXbHEL3ht KyLg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1785773498; x=1786378298; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-gg:x-gm-message-state:from :to:cc:subject:date:message-id:reply-to:content-type; bh=hC6MJ8bwLjjZgLx3/Q1ZtCKaKlgeak/LeNvekOVJvKg=; b=es9fKPPcAkuK+mlny0uk29kjgl27AD74/JcLeXQyCS2ge4OrgYr1+F0b1aILTF/0cU E/8TJBxBlWXmiQwN2AnlSmQv1HTffFJ6zVk67vTYb6FgtymYIOwgmJXCbo+kPCphDSvn 5nEsLIXz1iWW7Ad51tvUUlBg/LB7zN6hVuIHsX9j3LJ+dP5JBmwOTrBSQ3D+WeMM72a8 pgcvk4jmniFpulcMMx1YWzh2sRfBjhaABytP3WTEF+6edLhTGXa+phe2UA81H776MApU 0m2ZfL4E0WzhVr/nIoZjCmfHsMGJ90T0hY7A0ZavvuByqK/1A5n9qKz2AHDpMpowab7i ipvA== X-Forwarded-Encrypted: i=1; AHgh+RqSUVHgESbN6TNE76OAotnuzN0tdPwuvZNq+jqkzBd1tH/x+xd9gAfj2qGd3B9khTcXplqi80bJ0+TtIw==@lists.linux.dev X-Gm-Message-State: AOJu0Ywi4AtcFvu+dsM5JtEw8aQFHlYDwbBeQDsY5toMS0rAG7/QzGV5 ap5Uq6onLwjnGqRVNhp+ZXxLUDjuTEcxXS7SwdyM1SRWSZk2d6eW8FJL X-Gm-Gg: AR+sD11FL7J/YbLNnVhCj6wpUUy5Q+5SKjmkGSXi0tu0fZRI2dCaD8rCI+0H7Ve9K62 qrjlMaq11afEEBjCcD4VCh0ZXPz3Gw+/5yASieED3eRSDGH+cQ15Q0R0r8Ea8QC+8cVBcpMFXU+ cjOD0n0Z1GjqvptzHF5HTZkJLJuhruvsseTkMpHuKSyZTreQdGIKtkcWJk+nf3wcRCG6sGVNRPG kUdsFs+Nd2TSc+25u69RMzx7lCLP7ShmE9mb3tOkwCi5Okpv51IdfrmKCYQNcFcy9BFOCtaXSq+ XrhSXkYoncNmGgAKTnzK2xH2D1EJxrx78NTh09HS1rUn5FyCTv+SB0Dj/VvV/po7uZDP20aiLjW 2jEe8BEySdEQe6yBXdx1DTKMfxGG9WGacd2zBTfy/OsmZvCJGfmPESzu0OLcbkb8oMRqJtaQ/Dq lCFDjlQfGQljA4wjTnoEKxYaRrC8q1atxq3w+N0iIg8hDKMag/uVLryzL5UbmEo88NASee8qg6Y zIH4EgtsdMaxZXo/L4toBtk/jFErwaZ2XgDdd/5PuZ71FHdG74EJM0jVDlv6schXwPdXmjVS6pP BnKID3Gn5SDrMVSkjsrnxlI7E9kOXZ6BOqSmIzy5y3iSaCPSIuMGXzd+BigWmMZpseO2kR/J5LV gi5UkcrPLyCJL7W1ljgZQtd/ug8ywzIfH3gmwI7VUb1kUudqjpCDLg+mHjqfxKAF0ZAZlyZI3nj Nxdw== X-Received: by 2002:a05:600c:4e8c:b0:492:3e69:a86f with SMTP id 5b1f17b1804b1-4980c66c82dmr193167225e9.1.1785773498389; Mon, 03 Aug 2026 09:11:38 -0700 (PDT) Received: from jernej-laptop (APN-122-100-117-gprs.simobil.net. [46.122.100.117]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-49949fc2da2sm3363735e9.3.2026.08.03.09.11.36 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 03 Aug 2026 09:11:38 -0700 (PDT) From: Jernej Skrabec To: wens@kernel.org Cc: maarten.lankhorst@linux.intel.com, mripard@kernel.org, tzimmermann@suse.de, airlied@gmail.com, simona@ffwll.ch, samuel@sholland.org, dri-devel@lists.freedesktop.org, linux-arm-kernel@lists.infradead.org, linux-sunxi@lists.linux.dev, linux-kernel@vger.kernel.org, Jernej Skrabec Subject: [PATCH 11/13] drm/sun4i: Drop node references while building component list Date: Mon, 3 Aug 2026 18:10:49 +0200 Message-ID: <759c74e3a22b97ca066ef7910ca4b91b852011e6.1785772659.git.jernej.skrabec@gmail.com> X-Mailer: git-send-email 2.55.0 In-Reply-To: References: Precedence: bulk X-Mailing-List: linux-sunxi@lists.linux.dev List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-MORS-Enabled: yes X-MORS-DOMAIN: patchwork.local X-MORS-HOSTING: hosting172546 X-MORS-USER: hosting172546 X-getmail-retrieved-from-mailbox: =?utf-8?q?INBOX?= Two references are leaked every time the display pipeline is walked: the output port node in sun4i_drv_traverse_endpoints(), which was never released since the driver was introduced, and each node taken out of the endpoint fifo in sun4i_drv_probe(), which stopped being released when the fifo was introduced. The latter is still safe to drop right after processing, since drm_of_component_match_add() takes its own reference. Fixes: 9026e0d122ac ("drm: Add Allwinner A10 Display Engine support") Fixes: 8b11aaface2b ("drm/sun4i: Implement endpoint parsing using kfifo") Signed-off-by: Jernej Skrabec Acked-by: Chen-Yu Tsai --- drivers/gpu/drm/sun4i/sun4i_drv.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/drivers/gpu/drm/sun4i/sun4i_drv.c b/drivers/gpu/drm/sun4i/sun4i_drv.c index 8a409eee1dca..e9baca360160 100644 --- a/drivers/gpu/drm/sun4i/sun4i_drv.c +++ b/drivers/gpu/drm/sun4i/sun4i_drv.c @@ -289,6 +289,8 @@ static void sun4i_drv_traverse_endpoints(struct endpoint_list *list, kfifo_put(&list->fifo, remote); } + + of_node_put(port); } static int sun4i_drv_add_endpoints(struct device *dev, @@ -394,6 +396,7 @@ static int sun4i_drv_probe(struct platform_device *pdev) /* process this endpoint */ ret = sun4i_drv_add_endpoints(&pdev->dev, &list, &match, endpoint); + of_node_put(endpoint); /* sun4i_drv_add_endpoints can fail to allocate memory */ if (ret < 0) From patchwork Mon Aug 3 16:10:50 2026 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: =?utf-8?q?Jernej_=C5=A0krabec?= X-Patchwork-Id: 2932 Return-Path: X-Original-To: noreply@patchwork.local Delivered-To: noreply@patchwork.local Received: from sea.lore.kernel.org (sea.lore.kernel.org [172.234.253.10]) by mxe881.netcup.net (Postfix) with ESMTPS id 7CD6E1C08F6 for ; Mon, 3 Aug 2026 19:31:44 +0200 (CEST) Authentication-Results: mxe881; dkim=pass header.d=gmail.com; spf=pass (sender IP is 172.234.253.10) smtp.mailfrom=linux-sunxi+bounces-24980-noreply=patchwork.local@lists.linux.dev smtp.helo=sea.lore.kernel.org Received-SPF: pass (mxe881: domain of lists.linux.dev designates 172.234.253.10 as permitted sender) client-ip=172.234.253.10; envelope-from=linux-sunxi+bounces-24980-noreply=patchwork.local@lists.linux.dev; helo=sea.lore.kernel.org; Received: from smtp.subspace.kernel.org (conduit.subspace.kernel.org [100.90.174.1]) by sea.lore.kernel.org (Postfix) with ESMTP id 5980D3433C52 for ; Mon, 3 Aug 2026 16:13:35 +0000 (UTC) Received: from localhost.localdomain (localhost.localdomain [127.0.0.1]) by smtp.subspace.kernel.org (Postfix) with ESMTP id C6B39420463; Mon, 3 Aug 2026 16:11:49 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="GfUTPn4f" X-Original-To: linux-sunxi@lists.linux.dev Received: from mail-wm1-f44.google.com (mail-wm1-f44.google.com [209.85.128.44]) (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 1EE3937E5D4 for ; Mon, 3 Aug 2026 16:11:43 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.128.44 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1785773509; cv=none; b=ZplhUnnsQCZQ7j+NMVPUAoINiiiiM6jMS5w3ID9g836o/F/DNiYvFYzvLo+47548WPolirzBjFLLXngoL+SQn99PvUgVsgFZ/ZviLrLYDVNolKR1NDPv7oT6Rvp3YHH7LgQqQ+o5ZjP9Fj99Jv95QbmYJcXAr/apygBX1lYU5Mg= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1785773509; c=relaxed/simple; bh=QyiUpZCH56C+FxNuk6usldixE9OetGP6tDy41SiyBE4=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=udRAqzFREe0qfz/vMKYBxJcCUY6D0FujFoYJieyGdEBr7CU0f5zfBmNoRCSUdz2Srd33roiB99jSEwFJj9pJATwM4IQkv1QjPEwxuBQWsdfixCxjkHA1eaYKGWDfNwYYEQ6jc/Q7tkWS9z3yeV8xs+vw3rvJUcl3Q7kdeRWuQbU= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com; spf=pass smtp.mailfrom=gmail.com; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b=GfUTPn4f; arc=none smtp.client-ip=209.85.128.44 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=gmail.com Received: by mail-wm1-f44.google.com with SMTP id 5b1f17b1804b1-4980fe6b3beso491815e9.0 for ; Mon, 03 Aug 2026 09:11:42 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20251104; t=1785773501; x=1786378301; darn=lists.linux.dev; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to:content-type; bh=QwcCW5bnIxEMSTfDGEDmQeCwaEieT0mPnUwcX4qTD6M=; b=GfUTPn4fcpHm2vb+uvJMuRxzyLGxtwgiaxbEfiuc2I/5aOqJEijwa7kaV+RwbV3rv+ 1gUrYzkD86OHp/1dxHc0k/WKyVsvpBds/tt9exZ0JlYLRYXCIR/jaGb+lxf/FV8FHnzp UkC5rFIVqDheZ+HsyrFpBm2ZLt/yYvnaBMVInPwjhxg/NVJu1q5xHpgzLyCZtASzJO0/ gIf4FWfSMB/+CHFhgxPN55tSbdz+DA+fn4r6KoO62RNG8FW9mlnTO8hK34HMbL/CHa7d 22XOfR5dHgbpznu9GtwBUqorVQUaKjO9hvEBUIILVVwarRrIIME5ACxB1EGsABZt7uhI 3jJA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1785773501; x=1786378301; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-gg:x-gm-message-state:from :to:cc:subject:date:message-id:reply-to:content-type; bh=QwcCW5bnIxEMSTfDGEDmQeCwaEieT0mPnUwcX4qTD6M=; b=rE7LyBXFsD2cOfmZ+wLmVdHRAC6JZ9pSmwqwx2DsEYKqVPziUWV1HAQerHW93Rw5KJ CGyVR4nUKATVS8DMfg0E1uhLEWkLHtUs28p6AXRCxH6iAcldym3AKzqZ2KpvppsmTKMB v++cu3IsIGbpUoYLmMwlNNTaZ3Y1qUlOPHXZB6vdVWWZOHcqB4rO7XQT+yS04b+VxkqF HQsoPnEZfrJ0abteCqC3EzfqJFHiamp737qvpV9d2gH1zjkVCGuL9jiqeXx0Yl9IBVQ0 Wx5YWH1Mof7aIl61DOaQy5MLcMtSMRctMD/oCxgZLVDlxkT7IetK5+i9e4iv8dAan7FI SgBg== X-Forwarded-Encrypted: i=1; AHgh+Rru9QymL+GXr46a1IoE1sanEavwwpJ1uJr/wH+pGxuz7OmEc/bupkQF6rFW8ukVShoYxWp1itrtAlcD1w==@lists.linux.dev X-Gm-Message-State: AOJu0Ywp4/FcAJ8sCi89WacJQJgjnqISbR7lUbf99erAO9770LdjQOlt RPWC3psWH2Qaf5303iR6yAsThSRG/ZQohV88UL7k0eFU8uGknODMVITO X-Gm-Gg: AR+sD12JV+0/APbmIyC1L0NzKXbOF+ss0cZpWvdSJUqhb2oapnNo0nbzyJtQasLM+A+ YJQZscevfgJSAuYP6BwdqFiUP13q+7QAe7MlMTfWnX93ca8o6yBkG0ftsy3V+PYIwS+oy7USGdo ntWo6PA/v078YN96UpbOxGTFmpmGI0uJMD0pfAG8YI+jr32ey5k3Oyuc0ef6IdXaXir0rkXmGAV xNtZ3RPgQQxAIBg7CW/3s51+pTK32JflsD02KdqjCxoaaUUY/x0pdm3vDAPBIEgJ54bT4QK3JJ3 l974qVmFar/XzNowIsZovevCuvUDHJDjCgkwF/Nr9EaSeSxJs/N53Jf6yapm/rwR/u9TvtCjHjX aXKkdS3nrBs0fG0nLQ52bSUESukf1UiemgTdA9j1cNwjHpFBDboCtzEsNRAyDmAqj0Okmf8LCXb uTzzQ+OOb7XPAqYT/uxxxYKR8E5+RuDIGRiaVNeGi84ZWg9nRxKCptn7xChCMlFkxdl2qVbJOmr RhDEAUVoSUXPf4ye7hq4/x8Q4Q4B9+WLy1xbWrXsgTHZcwOTaj3f1sBpN8d+Avh4lRgsL95zBMf zZ+WAqVInWBFhajL7X8wQ4yoXW3ujizPKMrPZpOb/djXmH5m+EeUakseGbt8Jlcgwvgv9qGFISJ b+L+tRmzNhy6SP715BH57jwGHmC80w6fKbN2tX2/7Cb+V6EaDBQLJEPc3ZO49S0azIrQ14RigMq exPA== X-Received: by 2002:a05:600c:8010:b0:495:4f84:7280 with SMTP id 5b1f17b1804b1-4994a0f6838mr3426715e9.4.1785773501354; Mon, 03 Aug 2026 09:11:41 -0700 (PDT) Received: from jernej-laptop (APN-122-100-117-gprs.simobil.net. [46.122.100.117]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-49949fc2da2sm3363735e9.3.2026.08.03.09.11.38 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 03 Aug 2026 09:11:41 -0700 (PDT) From: Jernej Skrabec To: wens@kernel.org Cc: maarten.lankhorst@linux.intel.com, mripard@kernel.org, tzimmermann@suse.de, airlied@gmail.com, simona@ffwll.ch, samuel@sholland.org, dri-devel@lists.freedesktop.org, linux-arm-kernel@lists.infradead.org, linux-sunxi@lists.linux.dev, linux-kernel@vger.kernel.org, Jernej Skrabec Subject: [PATCH 12/13] drm/sun4i: hdmi-phy: Fix H6 8-bit MPLL config at 594 MHz Date: Mon, 3 Aug 2026 18:10:50 +0200 Message-ID: X-Mailer: git-send-email 2.55.0 In-Reply-To: References: Precedence: bulk X-Mailing-List: linux-sunxi@lists.linux.dev List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-Rspamd-Server: rspamd-worker-8404 X-Spamd-Result: default: False [-0.66 / 15.00]; BAYES_HAM(-5.50)[100.00%]; RBL_SENDERSCORE(2.00)[172.234.253.10:from]; SUSPICIOUS_RECIPS(1.50)[]; DMARC_POLICY_SOFTFAIL(1.00)[gmail.com : SPF not aligned (relaxed), No valid DKIM,none]; R_MISSING_CHARSET(0.50)[]; MAILLIST(-0.15)[generic]; BAD_REP_POLICIES(0.10)[]; MIME_GOOD(-0.10)[text/plain]; HAS_LIST_UNSUB(-0.01)[]; TAGGED_RCPT(0.00)[]; PRECEDENCE_BULK(0.00)[]; RCPT_COUNT_TWELVE(0.00)[12]; TO_DN_SOME(0.00)[]; DBL_BLOCKED_OPENRESOLVER(0.00)[0.0.0.60:email,sea.lore.kernel.org:rdns,sea.lore.kernel.org:helo]; FORGED_SENDER_MAILLIST(0.00)[]; FREEMAIL_CC(0.00)[linux.intel.com,kernel.org,suse.de,gmail.com,ffwll.ch,sholland.org,lists.freedesktop.org,lists.infradead.org,lists.linux.dev,vger.kernel.org]; R_SPF_ALLOW(0.00)[+ip4:172.234.253.10]; ARC_ALLOW(0.00)[subspace.kernel.org:s=arc-20240116:i=1]; FREEMAIL_FROM(0.00)[gmail.com]; RCVD_TLS_LAST(0.00)[]; MIME_TRACE(0.00)[0:+]; FORGED_RECIPIENTS_MAILLIST(0.00)[]; FROM_HAS_DN(0.00)[]; MID_RHS_MATCH_FROM(0.00)[]; ASN(0.00)[asn:63949, ipnet:172.234.224.0/19, country:SG]; TAGGED_FROM(0.00)[bounces-24980-noreply=patchwork.local]; RCVD_COUNT_FIVE(0.00)[6]; FROM_NEQ_ENVFROM(0.00)[jernejskrabec@gmail.com,linux-sunxi@lists.linux.dev]; RCVD_VIA_SMTP_AUTH(0.00)[] X-Rspamd-Queue-Id: 7CD6E1C08F6 X-MORS-Enabled: yes X-MORS-DOMAIN: patchwork.local X-MORS-HOSTING: hosting172546 X-MORS-USER: hosting172546 X-getmail-retrieved-from-mailbox: =?utf-8?q?INBOX?= The 8-bit entry of the last MPLL row (594 MHz) doesn't lock reliably on H6. 4K@60 RGB/YUV444, which is the mode that reaches this entry, doesn't come up. Align the value with the vendor driver. Other entries are left alone, they are used by lower pixel clocks which work fine. Tested with 4K@60 on a LG TV. Fixes: 0fb4b858b102 ("drm/sun4i: Add support for H6 HDMI PHY") Signed-off-by: Jernej Skrabec --- drivers/gpu/drm/sun4i/sun8i_hdmi_phy.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/gpu/drm/sun4i/sun8i_hdmi_phy.c b/drivers/gpu/drm/sun4i/sun8i_hdmi_phy.c index 4fa69c463dc4..489ea94693ff 100644 --- a/drivers/gpu/drm/sun4i/sun8i_hdmi_phy.c +++ b/drivers/gpu/drm/sun4i/sun8i_hdmi_phy.c @@ -91,7 +91,7 @@ static const struct dw_hdmi_mpll_config sun50i_h6_mpll_cfg[] = { }, }, { 594000000, { - { 0x1a40, 0x0003 }, + { 0x1a7c, 0x0003 }, { 0x3b4c, 0x0003 }, { 0x5a64, 0x0003 }, }, From patchwork Mon Aug 3 16:10:51 2026 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: =?utf-8?q?Jernej_=C5=A0krabec?= X-Patchwork-Id: 2919 Return-Path: X-Original-To: noreply@patchwork.local Delivered-To: noreply@patchwork.local Received: from sto.lore.kernel.org (sto.lore.kernel.org [172.232.135.74]) by mxe881.netcup.net (Postfix) with ESMTPS id C40151C0586 for ; Mon, 3 Aug 2026 18:17:13 +0200 (CEST) Authentication-Results: mxe881; dkim=pass header.d=gmail.com; spf=pass (sender IP is 172.232.135.74) smtp.mailfrom=linux-sunxi+bounces-24981-noreply=patchwork.local@lists.linux.dev smtp.helo=sto.lore.kernel.org Received-SPF: pass (mxe881: domain of lists.linux.dev designates 172.232.135.74 as permitted sender) client-ip=172.232.135.74; envelope-from=linux-sunxi+bounces-24981-noreply=patchwork.local@lists.linux.dev; helo=sto.lore.kernel.org; Received: from smtp.subspace.kernel.org (conduit.subspace.kernel.org [100.90.174.1]) by sto.lore.kernel.org (Postfix) with ESMTP id C5765302FA94 for ; Mon, 3 Aug 2026 16:13:41 +0000 (UTC) Received: from localhost.localdomain (localhost.localdomain [127.0.0.1]) by smtp.subspace.kernel.org (Postfix) with ESMTP id 6D94D37E310; Mon, 3 Aug 2026 16:11:51 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="TIsba+Dt" X-Original-To: linux-sunxi@lists.linux.dev Received: from mail-wm1-f52.google.com (mail-wm1-f52.google.com [209.85.128.52]) (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 E2A6241DEF4 for ; Mon, 3 Aug 2026 16:11:44 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.128.52 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1785773511; cv=none; b=GXU9ZM6zk4kBJKSuP0Pn/1MBETszq3jltPX3uT8TVosBBW/b2X3HX9trr0CWtKGCzb+YimbAMWiAzw0BWv7AjTATQR3HytZQpX5yIkuqIeHST1bx4DqGurMbx7N3/2p9Nef0Tc3xWFtnO/FxEC6isVXHmS08V4+ckjQLL/j/kW4= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1785773511; c=relaxed/simple; bh=uVZLO+rGfusiXjjseIm7VDcp7b7csm52zv3SxTvUs2I=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=tykVj1xefMttUNnaBumJHAPPkNay3F0CD7+9gtIcFReAyMchVwO2jgFFvLNUHIUK1oe3j9luT1K8G64Lr9waayMdaB0Ae5VmLRAp++HeN7gb4dOwTu21QGjOwXYei60cADnNYbkwetd1VUeI7aj6LAMK/oeve2KK0a6UfOuE360= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com; spf=pass smtp.mailfrom=gmail.com; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b=TIsba+Dt; arc=none smtp.client-ip=209.85.128.52 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=gmail.com Received: by mail-wm1-f52.google.com with SMTP id 5b1f17b1804b1-4980dc26022so14729925e9.1 for ; Mon, 03 Aug 2026 09:11:44 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20251104; t=1785773503; x=1786378303; darn=lists.linux.dev; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to:content-type; bh=K3+RPMRTD2bspWZ1EZegXMowVkzRDKKmin7c2HjnpVI=; b=TIsba+DtTsfu1CTJc5V+19mcFfRruGJk/3s/TL7h4/RDZrYwYyesXt8+VjPHXfOZFF dIcAnFGYoGbTFFBfTQGBy8se2Zie8VrxSx7Ein2CV8LkWAEEk+ZVc3jbSjT64Iejcv68 SGzUZLsGD3h3B4HYpKBdY1nTiKa+kV0Vake0WTt+y6Olo9ONZW0x+bIRCrSOfxlzWZ8L M2YMaSTKJhUeuwuy9bl5yN8VIo7q2pwSrBiuCyIoEleILWK2dZQxPWmpW7//ZJvyHTKb m9gEuQT2PGMxcwBrkPeW5l4XjlMYfPxNpsqy8HzM2k+5+skIuhmG8qwhkfc8LmNxxsDY zq0Q== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1785773503; x=1786378303; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-gg:x-gm-message-state:from :to:cc:subject:date:message-id:reply-to:content-type; bh=K3+RPMRTD2bspWZ1EZegXMowVkzRDKKmin7c2HjnpVI=; b=kMkIcgqWzzXB88YhUJO4xgl0xsnFYpOI7xohKJJunNU7Lbc/l7GH6k3C4UeQae8xBJ eloC9xV64+TSswxC6xLqU1lzt+x56Uzl4kWR9KUYCpTPWw+ibnYs0NtycwJXCBdQOA6a j7hBE7hfHSsV29uwhIZ7YL2AjvO0chx4p/F5xyiLZcgqRCj18baySAIdjPTShUaFwUlq AzOIDG1kh286Sgv2bxE7o6AO0d6nHU3FgkDwmTRqmDtno/6HQki0oXuGG2F+x2cVXB3r nV+HWngxVvIibK/3r6Z1D+vKdZ4r0xPpM/uicoNSFYD3FFcEMGsv54OfDSGv0GeJLPuc qnGQ== X-Forwarded-Encrypted: i=1; AHgh+Rpkc9qewx07kIrU3QbIud2Md1smrAdNDz4D4iBIOjpH2DBmnFHse/zjF4f2sehFZVMYy8Jd61ymeAoI/w==@lists.linux.dev X-Gm-Message-State: AOJu0YzsYARWNN/sRJeZ8TtYYz+brTueTGoB0sJVSsAHsT/ZMc44AhCg nVHa26S8m8BAymsPi/P8+4xUmzWXda7KV7vCIRebhy1E6XpjR3Sfj4vS X-Gm-Gg: AR+sD12o6jt3oBvSZKYiEyRU0nwNX4e2+PgKKgbquyNDPQr/jlB1LH7o1Op8tPkHLIn xAPdXBiDdsbvmR9xHenW2B2tJ6ZOZy+jCNsYdus8rPbM+SUo6TyZFlrA8WZ4yqIB6sueKuNOqnu DbwDggKqnLdBH9jfIF/ZAWDuHwTL/z1AbVXxTP2TD+BFYL498oEBlB573prHEt0IyqOflwvzrvM roPf+puRot+39tgYRmnNJocbTgZzjSs0WeJNodNpCkCgcW4T+MM+QiBzuZCsTLRgg7fHBxofio5 fY+8fDEs5r23aw5l4j7GmBlwfudWVbRwzqn0LWd3Gc3A4l4FZGhLaB4cZZwluxl4tKC2riC93je 0nJmIyTNY+EldxhAZIiZ1QxEKmVSEn0PT5LmiMC3PHnswHRPOiodLLLS27DBKn2Euwtg3Y2RPFC vtEaZhgN4iu4w/T3pL0HLoU1Wnedix97LNraOjha5+L7FuNuD9IGEtvoKgC0WohuQClew5p2Wt6 8w80BoaaEh0L9VdX/hWTQCEDDC5WL+eHEQOy0Yo0Jj5PwF+OZVTZ2WZuph6boJVY+KV6XjOWVs6 spb7vHWFRJ9ArMQMSp2Ho1I62U9CmRfzXhkM+zRROpMG1OzVDZAfRYMW451emRPM4t//shcyVNe 25OTqogwqvwJmeEzVpb0iKoeFQk5PdD28YyECjBdonn6RPAFa5bHpf4+dVbrrojNEIPGwa6nUpV CJRg== X-Received: by 2002:a05:600c:c4ac:b0:493:a623:d090 with SMTP id 5b1f17b1804b1-4980dda1993mr193930475e9.10.1785773503133; Mon, 03 Aug 2026 09:11:43 -0700 (PDT) Received: from jernej-laptop (APN-122-100-117-gprs.simobil.net. [46.122.100.117]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-49949fc2da2sm3363735e9.3.2026.08.03.09.11.41 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 03 Aug 2026 09:11:42 -0700 (PDT) From: Jernej Skrabec To: wens@kernel.org Cc: maarten.lankhorst@linux.intel.com, mripard@kernel.org, tzimmermann@suse.de, airlied@gmail.com, simona@ffwll.ch, samuel@sholland.org, dri-devel@lists.freedesktop.org, linux-arm-kernel@lists.infradead.org, linux-sunxi@lists.linux.dev, linux-kernel@vger.kernel.org, Jernej Skrabec Subject: [PATCH 13/13] drm/sun4i: Align VI buffer addresses for subsampled formats Date: Mon, 3 Aug 2026 18:10:51 +0200 Message-ID: <3980ea1aeb3f7fe8b4700e36560deeba3d050664.1785772659.git.jernej.skrabec@gmail.com> X-Mailer: git-send-email 2.55.0 In-Reply-To: References: Precedence: bulk X-Mailing-List: linux-sunxi@lists.linux.dev List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-MORS-Enabled: yes X-MORS-DOMAIN: patchwork.local X-MORS-HOSTING: hosting172546 X-MORS-USER: hosting172546 X-getmail-retrieved-from-mailbox: =?utf-8?q?INBOX?= This is a partial revert of commit 79ac1c945ab8 ("drm/sun4i: layers: Use drm_fb_dma_get_gem_addr() to get display memory"). Chroma must start at the beginning of a subsampling block, for example chroma start address for NV12 must be aligned to 2 pixels. drm_fb_dma_get_gem_addr() offsets luma by the exact source coordinates and chroma by the coordinates divided by the subsampling factor, so for odd offsets both planes no longer describe the same pixel, which the Display Engine scaler can't handle. Align source coordinates down for all planes instead. Remaining shift of one pixel is already compensated with scaler phase shift in sun8i_vi_layer_update_coord(). Fixes: 79ac1c945ab8 ("drm/sun4i: layers: Use drm_fb_dma_get_gem_addr() to get display memory") Signed-off-by: Jernej Skrabec --- drivers/gpu/drm/sun4i/sun8i_vi_layer.c | 20 ++++++++++++++++++-- 1 file changed, 18 insertions(+), 2 deletions(-) diff --git a/drivers/gpu/drm/sun4i/sun8i_vi_layer.c b/drivers/gpu/drm/sun4i/sun8i_vi_layer.c index 09f668c8af24..ad036cb9d88e 100644 --- a/drivers/gpu/drm/sun4i/sun8i_vi_layer.c +++ b/drivers/gpu/drm/sun4i/sun8i_vi_layer.c @@ -197,15 +197,31 @@ static void sun8i_vi_layer_update_buffer(struct sun8i_layer *layer, struct drm_plane_state *state = plane->state; struct drm_framebuffer *fb = state->fb; const struct drm_format_info *format = fb->format; + struct drm_gem_dma_object *gem; + u32 dx, dy, src_x, src_y; dma_addr_t dma_addr; u32 ch_base; int i; ch_base = sun8i_channel_base(layer); + /* Adjust x and y to be divisible by subsampling factor */ + src_x = (state->src.x1 >> 16) & ~(format->hsub - 1); + src_y = (state->src.y1 >> 16) & ~(format->vsub - 1); + for (i = 0; i < format->num_planes; i++) { - /* Get the start of the displayed memory */ - dma_addr = drm_fb_dma_get_gem_addr(fb, state, i); + gem = drm_fb_dma_get_gem_obj(fb, i); + dma_addr = gem->dma_addr + fb->offsets[i]; + + dx = src_x; + dy = src_y; + if (i > 0) { + dx /= format->hsub; + dy /= format->vsub; + } + + dma_addr += dx * format->cpp[i]; + dma_addr += dy * fb->pitches[i]; /* Set the line width */ DRM_DEBUG_DRIVER("Layer %d. line width: %d bytes\n",