From patchwork Wed May 7 20:19:20 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Chris Morgan X-Patchwork-Id: 1725 Received: from mail-ot1-f50.google.com (mail-ot1-f50.google.com [209.85.210.50]) (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 545D228EA51 for ; Wed, 7 May 2025 20:22:28 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.210.50 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1746649350; cv=none; b=Nja0wt1g6Yc8HXPtlZpbR6+VF2w4L0M0IujoIk+v2695V56dGggZo3lM0KXr0c2hykEuLrg9nyBrWvbFcW2DE8Rda6HBvTN9o0CqMX/HCV+LkJxgG9pHpuLPsLALXGhcawODpxwz95jwoZMGdYgJKw/5hjToA5vTjqJauk8CV0I= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1746649350; c=relaxed/simple; bh=xsgJ2zKW1s6unCASARfB210Gumqt0eW6xXNMAN+uJvs=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=HnRfhxOqsAPz7kul/WCGm99HHBMHkAgXzOL21mKs6WBPqTdWSzv/IEYtu2tnUfZrrZ2QCmqrfGIhR3EwhCN2Upz1r2lrTddPqhkbARwxEjtWam3x66SF5Cn3fZFTIZmZetuSIV+oQK3YMQy/OSceov/6Apm4OiwEt+5j93Paq20= 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=Ww0iGp5V; arc=none smtp.client-ip=209.85.210.50 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 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="Ww0iGp5V" Received: by mail-ot1-f50.google.com with SMTP id 46e09a7af769-72c47631b4cso135747a34.1 for ; Wed, 07 May 2025 13:22:28 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1746649348; x=1747254148; 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; bh=2wCsPI37yI3kW2PZlC399eWtWxNv3NVwnKhYRGNZB4g=; b=Ww0iGp5Ve0Z00g+E41JJz9uqWVJzN20FLprb+ZD1ZOLMyfPKOYVDIdLpoR7hhNgvl9 yas2nGT3tbqFaTYIbDJhGJpeVBw6x1VzUjymB+y2YDYZTy33+oD7jV4kqTeqy5SFYQgT mIrYEg+76IB0BMvwVRWKAK+0fV3RKtTuCiAi8Rz7pU6sEgn1KYlIghVQJcPY+TlKD/O0 411Y5e3DsrSHUL7pOfmWZSriBLgvzvAyJXDqraqrkV8+6Qf3TtnDcSlcCVjLl+d9t74/ 3McZ7LoDRsy0Y3v2JvivkgfYC4XDIt1MWT39ZhqvHeJZjW6FW5jJOj5U70WwXzt7CyiX 32YQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1746649348; x=1747254148; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=2wCsPI37yI3kW2PZlC399eWtWxNv3NVwnKhYRGNZB4g=; b=v6EkUp0vZrrQ3ypQNbcaXo4IbboiyWYKwXDMsdvkGFIbegdnsZmABGY/TaItNIHZ1C fDRh5m59bGRNBaCfG61z1APk98vFTOQthOQ9mdkRqRmCtE1NC6831b3KQWNbYQSr0guB ya/cAfUWSXwh3/nJaveUCW4Oa8OpRwLxQMv5ZLBsWqQAX5XSMJ1OSw2u5LsLMg14K8XG MJ5Qu1kMd4POlY4yV1TiWb805AVVxcFPGCgpZy0pcjVWVp7nf0HtZtIR0bxAy2/24UeK f35I+nLa0YIDjK4I5hi5mes/0e2wlMW/t/SGvJqJ8w4n5YGzjFjqgdBCfHgWUPoLYq1a P7Ug== X-Gm-Message-State: AOJu0YwSM5qJ8INHsp9jyeqC4wtGhF9aSantyxpmD3NZ622bdYkzQe+B wvh0lr7wksB3ayDKN+wu+yxd3IG/smdDcQ3xuMXP3myPPWjFuStnAiB56Q== X-Gm-Gg: ASbGncssJIxNEHjBC7gVag44urMtYjpuODq3wWhRd3yJw2tDLhDtK869uPYwsWyE2vX 9aBKleOJgErRMEz8nskrfnwCvpB96zZU3zZx2xuOtaniA6NcYdN442bZA22GD8LM42LW6KRlIXX qLT2UWV4Blm0hik3SPtk0z+Zv0ok/u0v9W2ZZEDsOi4cOFNvvZ7eTBfRC76X4zMwMPlB5T95JKK wsXcLQsy7ArPb6muceFaQ+xVcHHWoLF9hY0kTx8bhE4MinluUzaM1LpszIt89PoNHuA9WIHXOIR bYrQpvaHzUDW/sQscOiy+C5ClEAES1ehErTMAZXYXVis5ZegGiH0vCxf7nOA X-Google-Smtp-Source: AGHT+IFytOVfXojJmCR6jJHFmx4KGJn78CqT1+wKBNfjDiJd69/px5acPIOn7PhMAV+YoSaRnITWVQ== X-Received: by 2002:a05:6830:370f:b0:72b:9fb2:2abd with SMTP id 46e09a7af769-7321c97d487mr523435a34.20.1746649348140; Wed, 07 May 2025 13:22:28 -0700 (PDT) Received: from localhost.localdomain ([2600:1700:fb0:1bcf:e46c:46ba:cecd:a52c]) by smtp.gmail.com with ESMTPSA id 46e09a7af769-732109df2dcsm725945a34.9.2025.05.07.13.22.27 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 07 May 2025 13:22:27 -0700 (PDT) From: Chris Morgan To: linux-sunxi@lists.linux.dev Cc: devicetree@vger.kernel.org, dri-devel@lists.freedesktop.org, ryan@testtoast.com, macromorgan@hotmail.com, p.zabel@pengutronix.de, tzimmermann@suse.de, maarten.lankhorst@linux.intel.com, simona@ffwll.ch, airlied@gmail.com, mripard@kernel.org, samuel@sholland.org, jernej.skrabec@gmail.com, wens@csie.org, conor+dt@kernel.org, krzk+dt@kernel.org, robh@kernel.org Subject: [PATCH V9 01/24] dt-bindings: clock: sun50i-h616-ccu: Add LVDS reset Date: Wed, 7 May 2025 15:19:20 -0500 Message-ID: <20250507201943.330111-2-macroalpha82@gmail.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20250507201943.330111-1-macroalpha82@gmail.com> References: <20250507201943.330111-1-macroalpha82@gmail.com> Precedence: bulk X-Mailing-List: linux-sunxi@lists.linux.dev List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Status: O From: Chris Morgan Add the required LVDS reset binding for the LCD TCON. Signed-off-by: Chris Morgan Signed-off-by: Ryan Walklin --- include/dt-bindings/reset/sun50i-h616-ccu.h | 1 + 1 file changed, 1 insertion(+) diff --git a/include/dt-bindings/reset/sun50i-h616-ccu.h b/include/dt-bindings/reset/sun50i-h616-ccu.h index 81b1eba2a7f7..ba626f7015b5 100644 --- a/include/dt-bindings/reset/sun50i-h616-ccu.h +++ b/include/dt-bindings/reset/sun50i-h616-ccu.h @@ -69,5 +69,6 @@ #define RST_BUS_GPADC 60 #define RST_BUS_TCON_LCD0 61 #define RST_BUS_TCON_LCD1 62 +#define RST_BUS_LVDS 63 #endif /* _DT_BINDINGS_RESET_SUN50I_H616_H_ */ From patchwork Wed May 7 20:19:21 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Chris Morgan X-Patchwork-Id: 1724 Received: from mail-ot1-f41.google.com (mail-ot1-f41.google.com [209.85.210.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 0A52928EA53 for ; Wed, 7 May 2025 20:22:29 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.210.41 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1746649351; cv=none; b=GTVxlUQkDdgqOy1eirywyAhytzhkNoojT6IE6lX2tZxxN+FvYuvJ9fH6h55iAFinp0U9dO6f95WmOb7XM++H3ak0eZg2jHc9+hU1k7zVXEzjTNup5gGxwe/hxdx6BnfV7EjmvO7jmFvF11JZzJnrDGLEedl1gE5AMzef5OUwuk0= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1746649351; c=relaxed/simple; bh=4hIfE/LE0Bo5hgDg8MWhBMifz2o9TEh1kLGyL38EbdI=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=VpsdkRflZNDqWthd80gdO1rLT9KHOF4r0RRvQye5ohuVNKpiLL+5RBCT/qcSOi4pBT/ATyHfvzcPIhw0ojoQNth+OmLlvMLY435yuyXaz1e+eOT+1lWsVFjEGVydZ0YpEpF3POigrI/w+Czvhn+zF7JCLZaNmm6IgPYNxs0rH68= 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=jQ14ev4Y; arc=none smtp.client-ip=209.85.210.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 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="jQ14ev4Y" Received: by mail-ot1-f41.google.com with SMTP id 46e09a7af769-72c47631b4cso135754a34.1 for ; Wed, 07 May 2025 13:22:29 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1746649349; x=1747254149; 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; bh=uejrNc06iTAs+YLZjBRvSkO6o5dbouRkykrkJDTloTk=; b=jQ14ev4Yu/HZOiziQLmMH92Z0c3xw2P+8c7+vRm2RtRI8LAcGBMJRbj6O36ooRfmqP CSNRNgk1Mk3lUXNt70QfyK3Tdq4yqmWw/ZeRo4rWqzlXPOFFc+Njm01Hn0Vk/vEgHd+e yTYUq432tH+emBIX7u8bQpiltHqZ7/KmKtKtYTHUPGiU8/SZxsOPcKJ3DRrKmpKB2UvD qICQ0AMPShqZGSHZ3W8giV7XvLrRIcRvRx6CuNPKt0SifgMSN2418u+xOnom+wT70mZN eHV/6tfABQZtMI0a8ItN+nUTnUEEjinwYoKAOIeyjLzIJg0GnlyGKtHNosoCdtjd6+l6 HZsA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1746649349; x=1747254149; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=uejrNc06iTAs+YLZjBRvSkO6o5dbouRkykrkJDTloTk=; b=keGePZvNlgGHPDUttTIo9G9NPKm+IG9Nt9N5H27CW56WpMfUIJL+N6XrbDpHYLu613 prdO+8/2Rq6Q4kJkgoaqfm6QcuFk3pFpgyPmrtY/wLG6tmapEkDSljRGorziK8hUA1jt 0x+yDA5eV6TLfo65SmGVzOsUE7Q49izpIdLxEWXmbtEON8PjGuE4r9fKKTM2oDGz0WGA npfdd2npjuYYj+sdSZJ50VnU6Gbcssqfr9fN87O8PjP8kbjcuMk+DMKXmZf6K2/1ULVF khTgAnXTnfyCDd5OqmzYddTzGwolGa1Q5vJhfPGz4qM083d3HS1of7RwzRlfI1y8Disg OADw== X-Gm-Message-State: AOJu0Yy9hWyd/t6Pc2CSBB8kqEUrdGyB0i0tWa1XES4LuMJ65DrnArF6 +10dZzBLjLuCCxVwxK+lB8XHt6sHhv5hHj2B2zSAGMltTsClAMKTD3o3lw== X-Gm-Gg: ASbGnctbS7jfFF7tNLgM5ilEC+l2fGtSZyOy+27NHAVIBGV4qngORS4xMMr3hr2TDYd QZwMAbetU1g8hr7kJVPdDGCFkqThoB2isWdCYU24WxUk7UkNdoRe4mVdkbP3jjN0Bl2IPMb4ll4 uIRMuTua8VhRBPck8UnBa2/5ZNK6DLvfoBZkKHfP++al1UADJ8QXHFqQo/c/VfR/tgWMbqxi+gu eTO/UvHqY7eFTqhrudE60O47gecdB5pGt3wiRKq/GJHuTYhO875k9XVBAcOHBsq2A2ouYQcDwNU xj0RzaB6TxACQ9JZ46U3vyDj7Nt21rL0pmSF+aB8YSd5HKVKu9nAcda1m11QeElxFGATUQc= X-Google-Smtp-Source: AGHT+IFJzZAXCyZXw0QWeomPprmm2P68wLAv+/7r9VxtEI/Sd4+CGxIKlA//Tnd+huAraTUCYejlBQ== X-Received: by 2002:a05:6830:3749:b0:731:cac7:3634 with SMTP id 46e09a7af769-7321c341618mr506386a34.3.1746649348955; Wed, 07 May 2025 13:22:28 -0700 (PDT) Received: from localhost.localdomain ([2600:1700:fb0:1bcf:e46c:46ba:cecd:a52c]) by smtp.gmail.com with ESMTPSA id 46e09a7af769-732109df2dcsm725945a34.9.2025.05.07.13.22.28 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 07 May 2025 13:22:28 -0700 (PDT) From: Chris Morgan To: linux-sunxi@lists.linux.dev Cc: devicetree@vger.kernel.org, dri-devel@lists.freedesktop.org, ryan@testtoast.com, macromorgan@hotmail.com, p.zabel@pengutronix.de, tzimmermann@suse.de, maarten.lankhorst@linux.intel.com, simona@ffwll.ch, airlied@gmail.com, mripard@kernel.org, samuel@sholland.org, jernej.skrabec@gmail.com, wens@csie.org, conor+dt@kernel.org, krzk+dt@kernel.org, robh@kernel.org Subject: [PATCH V9 02/24] clk: sunxi-ng: h616: Add LVDS reset for LCD TCON Date: Wed, 7 May 2025 15:19:21 -0500 Message-ID: <20250507201943.330111-3-macroalpha82@gmail.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20250507201943.330111-1-macroalpha82@gmail.com> References: <20250507201943.330111-1-macroalpha82@gmail.com> Precedence: bulk X-Mailing-List: linux-sunxi@lists.linux.dev List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Status: O From: Chris Morgan Add the required LVDS reset for the LCD TCON. Note that while this reset is exposed for the T507, H616, and H700 only the H700 has an LCD controller. Signed-off-by: Chris Morgan Signed-off-by: Ryan Walklin --- drivers/clk/sunxi-ng/ccu-sun50i-h616.c | 1 + 1 file changed, 1 insertion(+) diff --git a/drivers/clk/sunxi-ng/ccu-sun50i-h616.c b/drivers/clk/sunxi-ng/ccu-sun50i-h616.c index daa462c7d477..955c614830fa 100644 --- a/drivers/clk/sunxi-ng/ccu-sun50i-h616.c +++ b/drivers/clk/sunxi-ng/ccu-sun50i-h616.c @@ -1094,6 +1094,7 @@ static const struct ccu_reset_map sun50i_h616_ccu_resets[] = { [RST_BUS_TCON_LCD1] = { 0xb7c, BIT(17) }, [RST_BUS_TCON_TV0] = { 0xb9c, BIT(16) }, [RST_BUS_TCON_TV1] = { 0xb9c, BIT(17) }, + [RST_BUS_LVDS] = { 0xbac, BIT(16) }, [RST_BUS_TVE_TOP] = { 0xbbc, BIT(16) }, [RST_BUS_TVE0] = { 0xbbc, BIT(17) }, [RST_BUS_HDCP] = { 0xc4c, BIT(16) }, From patchwork Wed May 7 20:19:22 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Chris Morgan X-Patchwork-Id: 1723 Received: from mail-ot1-f42.google.com (mail-ot1-f42.google.com [209.85.210.42]) (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 E299228EA65 for ; Wed, 7 May 2025 20:22:30 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.210.42 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1746649352; cv=none; b=c6W0xJvItsQ0cDnMTKtbGnaTFxLx0niP2BwOuI3K8EndUQ6/hQy32uLFz6EG6DOuraJKndL17cXo77zozj5gXgCSeNlOkG9T48u6VnBtOT7+9OCklLiD3p6PSCG/P+NtUBaXMoL7g45yFAoA+ShZzid4eLqqzbTeZVC/3g+NHYE= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1746649352; c=relaxed/simple; bh=z6YGDBNE8YgbZgk9UzAsRXUoYUKPhdQT2mguQ51KJJg=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=eCojk7Q5FKdOKD8WeVcTUkIPzbIKEqpFl/sDeJjlzo9K/Rwvk+2txSyqrTSgyupbUhldstjuhcjwPcvG90MP8N/JUI+w7/5fgSFuMZAUvFInQ+hg9G3iaYlWit6ZuNa8vvsbX3s6HraKVEKHaujx+V1qLGeo8IiXeV0MeiP+YjQ= 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=Qf2qwWOE; arc=none smtp.client-ip=209.85.210.42 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 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="Qf2qwWOE" Received: by mail-ot1-f42.google.com with SMTP id 46e09a7af769-72b82c8230aso95623a34.2 for ; Wed, 07 May 2025 13:22:30 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1746649350; x=1747254150; 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; bh=FChX4HbPHcFH7SwQoDWiPJgt7H0MHAmRjwqAvXfJeEI=; b=Qf2qwWOEeg/cNR7ysokMbHhCp0ltkq2BHNfaxvF9PpX7MO2mxw1w+Lx/4XjzuHv83N pQkR8qimUzfN6AsLxlZlzdI3VElvcZC/cV+gaoUSikTmb8Nmwgib4vChRHDG2NOKf8kd ToD33ebZ8G6CX6oz5juDB8iOvx2yQco7mGsRHN1JrxGgw4aeiU2vYXZTdkgdP0xOqd7l zLZIs4u+bXD172PHObCIsGQ1Hwaky7zXs3FGch9U+ActuAljdbTSUgI6iY6HZnEcLuVy ov9iCGKm4UyRQGZqSGh454b39OISOXxdq4HuZNXcuddQlrLuoPu2BaXNxrkaU7SGQwq6 +Egw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1746649350; x=1747254150; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=FChX4HbPHcFH7SwQoDWiPJgt7H0MHAmRjwqAvXfJeEI=; b=gG2FP8zjrh8f8JWWAw/Ue96ZDnxE5gTY/ldO628a2dDMgRKQaYFGj1uQxAa2vhA7P0 kI/G8Ea9t9JJpxWgqsFIPypZ+rhCm5auFUa+4Y9Q638I50cxYlh9wJ9x8y4q+2XgjU1X 9w8mQlR5vQ+tIMz2CRm8zye/2yHT6jdzRFHBy/tYsMCfhgS+3+2zUx8azLeOi1WFV4Ui gkSy14WbfeDJfvFM+E+JqyteuWKX7kCHIv9YvqmuoD/Jso21T2JT8BQxB807A/wy3fdC zD9JzR2hd1lgZjS6SG8JXkFRk08r8gC7ECA8kDtZrjjg+vGAaNLOEGBUiSdwZ0YCQ9YQ zstA== X-Gm-Message-State: AOJu0YzlLlL3OvhN9LWNUV2oY4H45V/6fmHmdCePZ17fFsqxzr4Mar/X BQI/zciCnbtJPDFQGQap1lyXbQBlV03SVeYKQ21NfPtjS6XXQPASJhOzvA== X-Gm-Gg: ASbGncvjRhajRvkQvgRmtYe0a2ICLoHfV/+zCL9qPBehiAU2CO/xcMK1TfagkgQ4mVO PyzuJqOpalWYhMJRa/xW3Wtui1nvLZMHC05tGkb9lfhfiOGY2JqZwSkxODLjsqGDLANn5S4sLkJ sWSxv/h85ceSKNBH1bxbpiebvIOD9lDZa+pmlKjcaLlE6uKwXWhV86MzduEH5kTRO9cznLSIzKd zMk+Ygv8HDcS4Oy7MEYwM67iaiutZhiFBYNXgvu0nKv6xa5PSgy7uDAQ2wQl7pubfbNyXwzoZgR dfOBqor/6277Rlx43JnjIdOl4SCyArJa7nHZ5sAQV+Oavg7CcHGe+KpPoW5r X-Google-Smtp-Source: AGHT+IFHBAXmHLkelyUfdZjf+2qzqyoKvotWVNCidxvDTgJcSnrDbNQLo/zYKfzVjmSsgQ4b1Qq5eA== X-Received: by 2002:a05:6830:6611:b0:72c:320b:f827 with SMTP id 46e09a7af769-73210a70846mr3115892a34.6.1746649349730; Wed, 07 May 2025 13:22:29 -0700 (PDT) Received: from localhost.localdomain ([2600:1700:fb0:1bcf:e46c:46ba:cecd:a52c]) by smtp.gmail.com with ESMTPSA id 46e09a7af769-732109df2dcsm725945a34.9.2025.05.07.13.22.29 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 07 May 2025 13:22:29 -0700 (PDT) From: Chris Morgan To: linux-sunxi@lists.linux.dev Cc: devicetree@vger.kernel.org, dri-devel@lists.freedesktop.org, ryan@testtoast.com, macromorgan@hotmail.com, p.zabel@pengutronix.de, tzimmermann@suse.de, maarten.lankhorst@linux.intel.com, simona@ffwll.ch, airlied@gmail.com, mripard@kernel.org, samuel@sholland.org, jernej.skrabec@gmail.com, wens@csie.org, conor+dt@kernel.org, krzk+dt@kernel.org, robh@kernel.org, Andre Przywara Subject: [PATCH V9 03/24] drm: sun4i: de2/de3: add mixer version enum Date: Wed, 7 May 2025 15:19:22 -0500 Message-ID: <20250507201943.330111-4-macroalpha82@gmail.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20250507201943.330111-1-macroalpha82@gmail.com> References: <20250507201943.330111-1-macroalpha82@gmail.com> Precedence: bulk X-Mailing-List: linux-sunxi@lists.linux.dev List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Status: O From: Chris Morgan The Allwinner DE2 and DE3 display engine mixers are currently identified by a simple boolean flag. This will not scale to support additional DE variants. Convert the boolean flag to an enum. Signed-off-by: Jernej Skrabec Signed-off-by: Ryan Walklin Signed-off-by: Chris Morgan Reviewed-by: Andre Przywara --- Changelog v5..v6: - Update struct comment regarding change from is_de3 flag to de_type --- drivers/gpu/drm/sun4i/sun8i_csc.c | 4 ++-- drivers/gpu/drm/sun4i/sun8i_mixer.c | 14 ++++++++++++-- drivers/gpu/drm/sun4i/sun8i_mixer.h | 4 ++-- drivers/gpu/drm/sun4i/sun8i_ui_scaler.c | 2 +- drivers/gpu/drm/sun4i/sun8i_vi_layer.c | 8 ++++---- drivers/gpu/drm/sun4i/sun8i_vi_scaler.c | 4 ++-- 6 files changed, 23 insertions(+), 13 deletions(-) diff --git a/drivers/gpu/drm/sun4i/sun8i_csc.c b/drivers/gpu/drm/sun4i/sun8i_csc.c index 58480d8e4f70..6f4a2e9c6fca 100644 --- a/drivers/gpu/drm/sun4i/sun8i_csc.c +++ b/drivers/gpu/drm/sun4i/sun8i_csc.c @@ -212,7 +212,7 @@ void sun8i_csc_set_ccsc_coefficients(struct sun8i_mixer *mixer, int layer, { u32 base; - if (mixer->cfg->is_de3) { + if (mixer->cfg->de_type == sun8i_mixer_de3) { sun8i_de3_ccsc_set_coefficients(mixer->engine.regs, layer, mode, encoding, range); return; @@ -228,7 +228,7 @@ void sun8i_csc_enable_ccsc(struct sun8i_mixer *mixer, int layer, bool enable) { u32 base; - if (mixer->cfg->is_de3) { + if (mixer->cfg->de_type == sun8i_mixer_de3) { sun8i_de3_ccsc_enable(mixer->engine.regs, layer, enable); return; } diff --git a/drivers/gpu/drm/sun4i/sun8i_mixer.c b/drivers/gpu/drm/sun4i/sun8i_mixer.c index 8b41d33baa30..2252bef19597 100644 --- a/drivers/gpu/drm/sun4i/sun8i_mixer.c +++ b/drivers/gpu/drm/sun4i/sun8i_mixer.c @@ -537,7 +537,7 @@ static int sun8i_mixer_bind(struct device *dev, struct device *master, base = sun8i_blender_base(mixer); /* Reset registers and disable unused sub-engines */ - if (mixer->cfg->is_de3) { + if (mixer->cfg->de_type == sun8i_mixer_de3) { for (i = 0; i < DE3_MIXER_UNIT_SIZE; i += 4) regmap_write(mixer->engine.regs, i, 0); @@ -628,6 +628,7 @@ static void sun8i_mixer_remove(struct platform_device *pdev) static const struct sun8i_mixer_cfg sun8i_a83t_mixer0_cfg = { .ccsc = CCSC_MIXER0_LAYOUT, + .de_type = sun8i_mixer_de2, .scaler_mask = 0xf, .scanline_yuv = 2048, .ui_num = 3, @@ -636,6 +637,7 @@ static const struct sun8i_mixer_cfg sun8i_a83t_mixer0_cfg = { static const struct sun8i_mixer_cfg sun8i_a83t_mixer1_cfg = { .ccsc = CCSC_MIXER1_LAYOUT, + .de_type = sun8i_mixer_de2, .scaler_mask = 0x3, .scanline_yuv = 2048, .ui_num = 1, @@ -644,6 +646,7 @@ static const struct sun8i_mixer_cfg sun8i_a83t_mixer1_cfg = { static const struct sun8i_mixer_cfg sun8i_h3_mixer0_cfg = { .ccsc = CCSC_MIXER0_LAYOUT, + .de_type = sun8i_mixer_de2, .mod_rate = 432000000, .scaler_mask = 0xf, .scanline_yuv = 2048, @@ -653,6 +656,7 @@ static const struct sun8i_mixer_cfg sun8i_h3_mixer0_cfg = { static const struct sun8i_mixer_cfg sun8i_r40_mixer0_cfg = { .ccsc = CCSC_MIXER0_LAYOUT, + .de_type = sun8i_mixer_de2, .mod_rate = 297000000, .scaler_mask = 0xf, .scanline_yuv = 2048, @@ -662,6 +666,7 @@ static const struct sun8i_mixer_cfg sun8i_r40_mixer0_cfg = { static const struct sun8i_mixer_cfg sun8i_r40_mixer1_cfg = { .ccsc = CCSC_MIXER1_LAYOUT, + .de_type = sun8i_mixer_de2, .mod_rate = 297000000, .scaler_mask = 0x3, .scanline_yuv = 2048, @@ -670,6 +675,7 @@ static const struct sun8i_mixer_cfg sun8i_r40_mixer1_cfg = { }; static const struct sun8i_mixer_cfg sun8i_v3s_mixer_cfg = { + .de_type = sun8i_mixer_de2, .vi_num = 2, .ui_num = 1, .scaler_mask = 0x3, @@ -680,6 +686,7 @@ static const struct sun8i_mixer_cfg sun8i_v3s_mixer_cfg = { static const struct sun8i_mixer_cfg sun20i_d1_mixer0_cfg = { .ccsc = CCSC_D1_MIXER0_LAYOUT, + .de_type = sun8i_mixer_de2, .mod_rate = 297000000, .scaler_mask = 0x3, .scanline_yuv = 2048, @@ -689,6 +696,7 @@ static const struct sun8i_mixer_cfg sun20i_d1_mixer0_cfg = { static const struct sun8i_mixer_cfg sun20i_d1_mixer1_cfg = { .ccsc = CCSC_MIXER1_LAYOUT, + .de_type = sun8i_mixer_de2, .mod_rate = 297000000, .scaler_mask = 0x1, .scanline_yuv = 1024, @@ -698,6 +706,7 @@ static const struct sun8i_mixer_cfg sun20i_d1_mixer1_cfg = { static const struct sun8i_mixer_cfg sun50i_a64_mixer0_cfg = { .ccsc = CCSC_MIXER0_LAYOUT, + .de_type = sun8i_mixer_de2, .mod_rate = 297000000, .scaler_mask = 0xf, .scanline_yuv = 4096, @@ -707,6 +716,7 @@ static const struct sun8i_mixer_cfg sun50i_a64_mixer0_cfg = { static const struct sun8i_mixer_cfg sun50i_a64_mixer1_cfg = { .ccsc = CCSC_MIXER1_LAYOUT, + .de_type = sun8i_mixer_de2, .mod_rate = 297000000, .scaler_mask = 0x3, .scanline_yuv = 2048, @@ -716,7 +726,7 @@ static const struct sun8i_mixer_cfg sun50i_a64_mixer1_cfg = { static const struct sun8i_mixer_cfg sun50i_h6_mixer0_cfg = { .ccsc = CCSC_MIXER0_LAYOUT, - .is_de3 = true, + .de_type = sun8i_mixer_de3, .mod_rate = 600000000, .scaler_mask = 0xf, .scanline_yuv = 4096, diff --git a/drivers/gpu/drm/sun4i/sun8i_mixer.h b/drivers/gpu/drm/sun4i/sun8i_mixer.h index d7898c9c9cc0..7fe5ce20082a 100644 --- a/drivers/gpu/drm/sun4i/sun8i_mixer.h +++ b/drivers/gpu/drm/sun4i/sun8i_mixer.h @@ -162,7 +162,7 @@ enum { * @ccsc: select set of CCSC base addresses from the enumeration above. * @mod_rate: module clock rate that needs to be set in order to have * a functional block. - * @is_de3: true, if this is next gen display engine 3.0, false otherwise. + * @de_type: sun8i_mixer_type enum representing the display engine generation. * @scaline_yuv: size of a scanline for VI scaler for YUV formats. */ struct sun8i_mixer_cfg { @@ -214,7 +214,7 @@ engine_to_sun8i_mixer(struct sunxi_engine *engine) static inline u32 sun8i_blender_base(struct sun8i_mixer *mixer) { - return mixer->cfg->is_de3 ? DE3_BLD_BASE : DE2_BLD_BASE; + return mixer->cfg->de_type == sun8i_mixer_de3 ? DE3_BLD_BASE : DE2_BLD_BASE; } static inline u32 diff --git a/drivers/gpu/drm/sun4i/sun8i_ui_scaler.c b/drivers/gpu/drm/sun4i/sun8i_ui_scaler.c index ae0806bccac7..504ffa0971a4 100644 --- a/drivers/gpu/drm/sun4i/sun8i_ui_scaler.c +++ b/drivers/gpu/drm/sun4i/sun8i_ui_scaler.c @@ -93,7 +93,7 @@ static u32 sun8i_ui_scaler_base(struct sun8i_mixer *mixer, int channel) { int vi_num = mixer->cfg->vi_num; - if (mixer->cfg->is_de3) + if (mixer->cfg->de_type == sun8i_mixer_de3) return DE3_VI_SCALER_UNIT_BASE + DE3_VI_SCALER_UNIT_SIZE * vi_num + DE3_UI_SCALER_UNIT_SIZE * (channel - vi_num); diff --git a/drivers/gpu/drm/sun4i/sun8i_vi_layer.c b/drivers/gpu/drm/sun4i/sun8i_vi_layer.c index 9c09d9c08496..a7a3a75ffd63 100644 --- a/drivers/gpu/drm/sun4i/sun8i_vi_layer.c +++ b/drivers/gpu/drm/sun4i/sun8i_vi_layer.c @@ -25,7 +25,7 @@ static void sun8i_vi_layer_update_alpha(struct sun8i_mixer *mixer, int channel, ch_base = sun8i_channel_base(mixer, channel); - if (mixer->cfg->is_de3) { + if (mixer->cfg->de_type >= sun8i_mixer_de3) { mask = SUN50I_MIXER_CHAN_VI_LAYER_ATTR_ALPHA_MASK | SUN50I_MIXER_CHAN_VI_LAYER_ATTR_ALPHA_MODE_MASK; val = SUN50I_MIXER_CHAN_VI_LAYER_ATTR_ALPHA @@ -483,7 +483,7 @@ struct sun8i_layer *sun8i_vi_layer_init_one(struct drm_device *drm, if (!layer) return ERR_PTR(-ENOMEM); - if (mixer->cfg->is_de3) { + if (mixer->cfg->de_type >= sun8i_mixer_de3) { formats = sun8i_vi_layer_de3_formats; format_count = ARRAY_SIZE(sun8i_vi_layer_de3_formats); } else { @@ -507,7 +507,7 @@ struct sun8i_layer *sun8i_vi_layer_init_one(struct drm_device *drm, plane_cnt = mixer->cfg->ui_num + mixer->cfg->vi_num; - if (mixer->cfg->vi_num == 1 || mixer->cfg->is_de3) { + if (mixer->cfg->vi_num == 1 || mixer->cfg->de_type >= sun8i_mixer_de3) { ret = drm_plane_create_alpha_property(&layer->plane); if (ret) { dev_err(drm->dev, "Couldn't add alpha property\n"); @@ -524,7 +524,7 @@ struct sun8i_layer *sun8i_vi_layer_init_one(struct drm_device *drm, supported_encodings = BIT(DRM_COLOR_YCBCR_BT601) | BIT(DRM_COLOR_YCBCR_BT709); - if (mixer->cfg->is_de3) + if (mixer->cfg->de_type >= sun8i_mixer_de3) supported_encodings |= BIT(DRM_COLOR_YCBCR_BT2020); supported_ranges = BIT(DRM_COLOR_YCBCR_LIMITED_RANGE) | diff --git a/drivers/gpu/drm/sun4i/sun8i_vi_scaler.c b/drivers/gpu/drm/sun4i/sun8i_vi_scaler.c index 7ba75011adf9..ad87ab395803 100644 --- a/drivers/gpu/drm/sun4i/sun8i_vi_scaler.c +++ b/drivers/gpu/drm/sun4i/sun8i_vi_scaler.c @@ -835,7 +835,7 @@ static const u32 bicubic4coefftab32[480] = { static u32 sun8i_vi_scaler_base(struct sun8i_mixer *mixer, int channel) { - if (mixer->cfg->is_de3) + if (mixer->cfg->de_type == sun8i_mixer_de3) return DE3_VI_SCALER_UNIT_BASE + DE3_VI_SCALER_UNIT_SIZE * channel; else @@ -956,7 +956,7 @@ void sun8i_vi_scaler_setup(struct sun8i_mixer *mixer, int layer, cvphase = vphase; } - if (mixer->cfg->is_de3) { + if (mixer->cfg->de_type >= sun8i_mixer_de3) { u32 val; if (format->hsub == 1 && format->vsub == 1) From patchwork Wed May 7 20:19:23 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Chris Morgan X-Patchwork-Id: 1722 Received: from mail-ot1-f48.google.com (mail-ot1-f48.google.com [209.85.210.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 BCD7128EA68 for ; Wed, 7 May 2025 20:22:31 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.210.48 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1746649353; cv=none; b=rGn1vMUrvm9t+UINFU4DW4DpDUyWZsCftECi7y3jWeaYXv87+ztFuWYLXldkivk+axeVFn5d2W+0nj8t1Ruoa9GBStA1SlnC/RuXYXtAopP5QcAmo/sYQSp9kROty9yZUm1SboZZJ4lNHh51EMTSdtS/U78jvQQEEiqEsZMcynY= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1746649353; c=relaxed/simple; bh=aE+44eaEhFoEmPEBWxm3CnBBIL5z0Mws6Wyjwk7GFfA=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=O096PO0GRXIey6yrNwMmF3pQyglPW2l1el9kQZOQIPAr+Dd+cm9bMSmX9kJvN07qet9O3b0eTcUqXAst0SuPeaTOsKYCW3zwYfcsQ/U4yJ7bZul98v8cTmJenthVlm+wgk05JDvGgWiQuk7/ClEcjItG6HabvftBB32JuN6VpS0= 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=LRL7TQIR; arc=none smtp.client-ip=209.85.210.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 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="LRL7TQIR" Received: by mail-ot1-f48.google.com with SMTP id 46e09a7af769-7311a8bb581so159563a34.0 for ; Wed, 07 May 2025 13:22:31 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1746649350; x=1747254150; 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; bh=6ECm4vsoW+32S8jcl8nf2NLWmke5G4xraIMQjtb0TqM=; b=LRL7TQIRRcfCjpVimtTbS6grUecqC8/izZH/QZ9A8UGYoC7ITMvUn1JUm1C4MR4mM8 E8egrxmK0WrdC1vg4iO0BkLjMPBUbp9JxkjF2qFQSJ9WnRIfMBrUgOgS9JxhqrJre5Le WnFJlzmpKb904xT6npm9al28TNkxmOoGk3mdnieQc8S0ngWNCMuh0/SC8828YA336Yw6 Q6F+Ttj/KPRgLlr96R10iLI9s6eN6PqLWze8brv6/J9Qt/4nCdhVNJuzVkJmZ5itKdee 9cKp7xn36ghTeUpOsZPsfOVVCCPro4D6qx9Sy/T1Neu2kcJTEhyKDi7vY4fCssyNgEAI pBKg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1746649350; x=1747254150; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=6ECm4vsoW+32S8jcl8nf2NLWmke5G4xraIMQjtb0TqM=; b=kS3vvNBxA5O9cKqGOB2NApMdNkAF+uYI/e9CuoYgbFzNepeZzvmt3HgVSyq/OUxEXV 9JHI27kqHTHqB8ppk0UNGBn/l5gskKuz+cBnNiuNzT3HYJtz8D1K5AFAMg6OeLPTWjJy Vl/fN+HI/rG1hyhjozn6eiPCAhSiBOXRmUe01f0W8fkFpYmxkOPg5V+9I3TUgn8V2HVD VQ6ErPEw38SCDjLmthQRxdo7chToowQEoKgKv8ei5OhYXMHHHTp/FA5wlDuDb5RmAuuQ 8fXL6JIzeoV/gZRzKdUElRfW9Z5HoCi+j97KGBg81CKixM+rh76UJZf+uGXMng8dsIpT GoSw== X-Gm-Message-State: AOJu0YyVagUq++iBzn31ByEbzf7ekH8IXvsgd5B7EUwAMZuM5XwpJAWg I6YNhdSU9PXUa4V6dZcpe5LgGrm8he+cIo+tN+/2nQwAfngwG2sa2NwQqw== X-Gm-Gg: ASbGnctHJjHhYQflhf9KoVjJgb9nFeDh6u3uyyXEl4bhEYUlyo1aIUTs86ETHjgtFzb LD1xWbI8mTwE5L5h0TZT3+Qmk3B5fTHYRkoYhwWhBTDjJ0pkKNuzB7KzC2gNsbvo2A8uibOg4T9 t3uzcdaDXi0vndYi5MgYAYbsdEaqLqUi2UcQMXnWx+WgYCVPLRN9TYQEjtHCEat8Na4KM5+/dyr LYV3jHVtdsLpCsVFxBkzLTbE0iA74+6VYBH5XUn/fpNs4gbZHZHY+x6okW8WEX2tZJEblK4dEoA IAQV3C5ovpsQMZIP6J96Nr+6xNA5mF9R5qsJAAXU7hOIW3v0kThsP1t2T42cnVKJuVW8W7E= X-Google-Smtp-Source: AGHT+IFNYiTe2ivxn2BpZru44Mz+Cbpuh5GShVyQbiTzaZin9SYSI0N+J6lKKB11hGqcKOTRI24Jlw== X-Received: by 2002:a05:6830:3c8c:b0:72b:9bac:c044 with SMTP id 46e09a7af769-7321b9dc5dcmr559263a34.0.1746649350502; Wed, 07 May 2025 13:22:30 -0700 (PDT) Received: from localhost.localdomain ([2600:1700:fb0:1bcf:e46c:46ba:cecd:a52c]) by smtp.gmail.com with ESMTPSA id 46e09a7af769-732109df2dcsm725945a34.9.2025.05.07.13.22.29 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 07 May 2025 13:22:30 -0700 (PDT) From: Chris Morgan To: linux-sunxi@lists.linux.dev Cc: devicetree@vger.kernel.org, dri-devel@lists.freedesktop.org, ryan@testtoast.com, macromorgan@hotmail.com, p.zabel@pengutronix.de, tzimmermann@suse.de, maarten.lankhorst@linux.intel.com, simona@ffwll.ch, airlied@gmail.com, mripard@kernel.org, samuel@sholland.org, jernej.skrabec@gmail.com, wens@csie.org, conor+dt@kernel.org, krzk+dt@kernel.org, robh@kernel.org, Andre Przywara Subject: [PATCH V9 04/24] drm: sun4i: de2/de3: refactor mixer initialisation Date: Wed, 7 May 2025 15:19:23 -0500 Message-ID: <20250507201943.330111-5-macroalpha82@gmail.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20250507201943.330111-1-macroalpha82@gmail.com> References: <20250507201943.330111-1-macroalpha82@gmail.com> Precedence: bulk X-Mailing-List: linux-sunxi@lists.linux.dev List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Status: O From: Chris Morgan Now that the DE variant can be selected by enum, take the oppportunity to factor out some common initialisation code to a separate function. Signed-off-by: Jernej Skrabec Signed-off-by: Ryan Walklin Signed-off-by: Chris Morgan Reviewed-by: Andre Przywara --- Changelog v1..v2: - Combine base register allocation and initialisation in sun8i_mixer_init - Whitespace fix Changelog v4..v5: - Remove trailing whitespace Changelog v7..v8: - Remove CSC configuration changes (logically better placed with future YUV support) making this the first patch in the series. --- drivers/gpu/drm/sun4i/sun8i_mixer.c | 64 +++++++++++++++-------------- 1 file changed, 34 insertions(+), 30 deletions(-) diff --git a/drivers/gpu/drm/sun4i/sun8i_mixer.c b/drivers/gpu/drm/sun4i/sun8i_mixer.c index 2252bef19597..41815b42d6d2 100644 --- a/drivers/gpu/drm/sun4i/sun8i_mixer.c +++ b/drivers/gpu/drm/sun4i/sun8i_mixer.c @@ -425,6 +425,38 @@ static int sun8i_mixer_of_get_id(struct device_node *node) return of_ep.id; } +static void sun8i_mixer_init(struct sun8i_mixer *mixer) +{ + unsigned int base = sun8i_blender_base(mixer); + int plane_cnt, i; + + /* Enable the mixer */ + regmap_write(mixer->engine.regs, SUN8I_MIXER_GLOBAL_CTL, + SUN8I_MIXER_GLOBAL_CTL_RT_EN); + + /* Set background color to black */ + regmap_write(mixer->engine.regs, SUN8I_MIXER_BLEND_BKCOLOR(base), + SUN8I_MIXER_BLEND_COLOR_BLACK); + + /* + * Set fill color of bottom plane to black. Generally not needed + * except when VI plane is at bottom (zpos = 0) and enabled. + */ + regmap_write(mixer->engine.regs, SUN8I_MIXER_BLEND_PIPE_CTL(base), + SUN8I_MIXER_BLEND_PIPE_CTL_FC_EN(0)); + regmap_write(mixer->engine.regs, SUN8I_MIXER_BLEND_ATTR_FCOLOR(base, 0), + SUN8I_MIXER_BLEND_COLOR_BLACK); + + plane_cnt = mixer->cfg->vi_num + mixer->cfg->ui_num; + for (i = 0; i < plane_cnt; i++) + regmap_write(mixer->engine.regs, + SUN8I_MIXER_BLEND_MODE(base, i), + SUN8I_MIXER_BLEND_MODE_DEF); + + regmap_update_bits(mixer->engine.regs, SUN8I_MIXER_BLEND_PIPE_CTL(base), + SUN8I_MIXER_BLEND_PIPE_CTL_EN_MSK, 0); +} + static int sun8i_mixer_bind(struct device *dev, struct device *master, void *data) { @@ -433,8 +465,6 @@ static int sun8i_mixer_bind(struct device *dev, struct device *master, struct sun4i_drv *drv = drm->dev_private; struct sun8i_mixer *mixer; void __iomem *regs; - unsigned int base; - int plane_cnt; int i, ret; /* @@ -534,8 +564,6 @@ static int sun8i_mixer_bind(struct device *dev, struct device *master, list_add_tail(&mixer->engine.list, &drv->engine_list); - base = sun8i_blender_base(mixer); - /* Reset registers and disable unused sub-engines */ if (mixer->cfg->de_type == sun8i_mixer_de3) { for (i = 0; i < DE3_MIXER_UNIT_SIZE; i += 4) @@ -551,7 +579,7 @@ static int sun8i_mixer_bind(struct device *dev, struct device *master, regmap_write(mixer->engine.regs, SUN50I_MIXER_FMT_EN, 0); regmap_write(mixer->engine.regs, SUN50I_MIXER_CDC0_EN, 0); regmap_write(mixer->engine.regs, SUN50I_MIXER_CDC1_EN, 0); - } else { + } else if (mixer->cfg->de_type == sun8i_mixer_de2) { for (i = 0; i < DE2_MIXER_UNIT_SIZE; i += 4) regmap_write(mixer->engine.regs, i, 0); @@ -564,31 +592,7 @@ static int sun8i_mixer_bind(struct device *dev, struct device *master, regmap_write(mixer->engine.regs, SUN8I_MIXER_DCSC_EN, 0); } - /* Enable the mixer */ - regmap_write(mixer->engine.regs, SUN8I_MIXER_GLOBAL_CTL, - SUN8I_MIXER_GLOBAL_CTL_RT_EN); - - /* Set background color to black */ - regmap_write(mixer->engine.regs, SUN8I_MIXER_BLEND_BKCOLOR(base), - SUN8I_MIXER_BLEND_COLOR_BLACK); - - /* - * Set fill color of bottom plane to black. Generally not needed - * except when VI plane is at bottom (zpos = 0) and enabled. - */ - regmap_write(mixer->engine.regs, SUN8I_MIXER_BLEND_PIPE_CTL(base), - SUN8I_MIXER_BLEND_PIPE_CTL_FC_EN(0)); - regmap_write(mixer->engine.regs, SUN8I_MIXER_BLEND_ATTR_FCOLOR(base, 0), - SUN8I_MIXER_BLEND_COLOR_BLACK); - - plane_cnt = mixer->cfg->vi_num + mixer->cfg->ui_num; - for (i = 0; i < plane_cnt; i++) - regmap_write(mixer->engine.regs, - SUN8I_MIXER_BLEND_MODE(base, i), - SUN8I_MIXER_BLEND_MODE_DEF); - - regmap_update_bits(mixer->engine.regs, SUN8I_MIXER_BLEND_PIPE_CTL(base), - SUN8I_MIXER_BLEND_PIPE_CTL_EN_MSK, 0); + sun8i_mixer_init(mixer); return 0; From patchwork Wed May 7 20:19:24 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Chris Morgan X-Patchwork-Id: 1721 Received: from mail-ot1-f49.google.com (mail-ot1-f49.google.com [209.85.210.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 9F6F328EA6A for ; Wed, 7 May 2025 20:22:32 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.210.49 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1746649354; cv=none; b=ACHaQIoBCxpI+1ThPPasKawhpCQTHdXql278CzZc4+ZFh1NUjxpZ8tfh4F/ogT7Ns8wHrhWNjyW2mMp4XdRVfbpUstWQX9v3+XvJCc/0MWbsgPQ0k1TlGl+giuDdEv5a70yVPRX3DwsXABXnEcI3UoaUpMXq0K5u7w4l9erjznI= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1746649354; c=relaxed/simple; bh=y44t91H76ffOAexooq+mJGs7u/Q9UpjMnTFzLrl8Be4=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=eL08++WLyGBbYUh72YRm+HaoaSixBNExObdLfNTp/P8mhn468i/CtbKrQRx15J3Q4G+4SbeT7I1fywG5azGB+sM+cGW5LIDwARtm0pkL65eQ8it5zXFD7sA1kLKIuNAUtRekCSLIr6nL7OtdOafwFa3YedpSa/osRf5Pac9iskY= 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=YNQzIIU2; arc=none smtp.client-ip=209.85.210.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 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="YNQzIIU2" Received: by mail-ot1-f49.google.com with SMTP id 46e09a7af769-72b82c8230aso95632a34.2 for ; Wed, 07 May 2025 13:22:32 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1746649351; x=1747254151; 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; bh=d6UX68KruPGnR61q1oninfcr4e5yK5hNeU8tagVAmo0=; b=YNQzIIU238D0kDBkziN07jqTQsIy9IZIoUoGkV0afxR4sxtNk9wlK64B6mf8bjseTs 8ukhgklx3pGaD015IYwVNAdsEyBv7rp4mKKDqmDs6vicTYx7xNn2NbTJ6WQ/OwkkqqAH iBeYajc0432mwDRvklp0VL4QxdFIg0Hp3lIKV085gJ+rAUMhmwXwgLZpkTd6/Opvy7y0 6tvn2mCXeDN9uH/l+STnChWn71+W3Smi/c0uFTHmsqDaUkhlA8Lss5E6yk61hBqwpbI3 aBxoOlj27NTycmNqM26M/IOFSTLH1AUMOBJEhrD4MrI7iXqMw6YGFXga0AAcVdxxJINP /pXQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1746649351; x=1747254151; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=d6UX68KruPGnR61q1oninfcr4e5yK5hNeU8tagVAmo0=; b=bz3G7+qJGHkrTYh+7GxNLeKmA5alE3dGimQPOPRtB6oda8u2ze6exLaRCVNzDj1clW 0IK3UePOKsN/E5Jjllqkf+YgMBfjEOCYlCp+b2RuobxIZEKLy2PIxsHHc+vXxx0RKGBa cHPtTyZm35SJcWkBsFdyx3u5wNVP5jGzBntddodZG0CPNghm0103Fhrb7T8u9+WB+tDT 2z2enHDToD+pGnV3xvjnwK+4NMmTveDLo0NJXzhgaKj2Gg4QEfPDw1AeCzLWw4OraRjU ey87XUWopRJMWfjJFt/ExXD2oeLQy6fOvab8Qp2oJImCwRRpfSFoLqgH5P/7pIyL+14Q E8oQ== X-Gm-Message-State: AOJu0YyMzQl/W1sJJC+MPPEYz8+zfE+vlXGcQoCNJnVbo8VnOgrYMwZK VHQes4DL8sf+EQKNnDfW3Sn/He1eIsCamlzi3IFxiUMJZcBqvtd3zk0XYA== X-Gm-Gg: ASbGncuLxng4DJ9j6bLAtF2up97aejdjcI020kwZ3Wc1Y7DFUZzrZBGSgItI923xBSA D+lnQqPL0ic4SgOw3MtO4RXELIUHz3ZRD/L6dPSIMEpbxaRVXq+eP8KCd2Hpqi9rYdqUuZmZpnE foXTLXXFTYrXrbEcVQVxAOPd3ubtpl5E763mM/cjh9QLZGEEjJTMPznoSRhUAw8GZvovHtO5eQ6 ZqbOglLmE3HTcZUYMcsznXqHuWkItqr9k388sAGA/TAIhH7WLzqG4MjEJg1/gq2h2whY5K3Tica afIpx6tZVViLRb1JDpFuInW/RcNrJ3LGT72N1JnIqHETrHvMGX6Dc1MVdki3daHn+LCydts= X-Google-Smtp-Source: AGHT+IGPGpn615U0r/Oli0xmd+gPDn6qmrBYBvqajhJLToKFTwGprcGZAZPK+hG5gePgwhRtCLZmSw== X-Received: by 2002:a05:6830:6216:b0:72c:3235:3b99 with SMTP id 46e09a7af769-73210b11cb2mr3068146a34.19.1746649351312; Wed, 07 May 2025 13:22:31 -0700 (PDT) Received: from localhost.localdomain ([2600:1700:fb0:1bcf:e46c:46ba:cecd:a52c]) by smtp.gmail.com with ESMTPSA id 46e09a7af769-732109df2dcsm725945a34.9.2025.05.07.13.22.30 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 07 May 2025 13:22:30 -0700 (PDT) From: Chris Morgan To: linux-sunxi@lists.linux.dev Cc: devicetree@vger.kernel.org, dri-devel@lists.freedesktop.org, ryan@testtoast.com, macromorgan@hotmail.com, p.zabel@pengutronix.de, tzimmermann@suse.de, maarten.lankhorst@linux.intel.com, simona@ffwll.ch, airlied@gmail.com, mripard@kernel.org, samuel@sholland.org, jernej.skrabec@gmail.com, wens@csie.org, conor+dt@kernel.org, krzk+dt@kernel.org, robh@kernel.org Subject: [PATCH V9 05/24] drm: sun4i: de2/de3: add generic blender register reference function Date: Wed, 7 May 2025 15:19:24 -0500 Message-ID: <20250507201943.330111-6-macroalpha82@gmail.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20250507201943.330111-1-macroalpha82@gmail.com> References: <20250507201943.330111-1-macroalpha82@gmail.com> Precedence: bulk X-Mailing-List: linux-sunxi@lists.linux.dev List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Status: O From: Chris Morgan The DE2 and DE3 engines have a blender register range within the mixer engine register map, whereas the DE33 separates this out into a separate display group. Prepare for this by adding a function to look the blender reference up, with a subsequent patch to add a conditional based on the DE type. Signed-off-by: Jernej Skrabec Signed-off-by: Ryan Walklin Signed-off-by: Chris Morgan --- drivers/gpu/drm/sun4i/sun8i_mixer.h | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/drivers/gpu/drm/sun4i/sun8i_mixer.h b/drivers/gpu/drm/sun4i/sun8i_mixer.h index 7fe5ce20082a..43c413052a22 100644 --- a/drivers/gpu/drm/sun4i/sun8i_mixer.h +++ b/drivers/gpu/drm/sun4i/sun8i_mixer.h @@ -217,6 +217,12 @@ sun8i_blender_base(struct sun8i_mixer *mixer) return mixer->cfg->de_type == sun8i_mixer_de3 ? DE3_BLD_BASE : DE2_BLD_BASE; } +static inline struct regmap * +sun8i_blender_regmap(struct sun8i_mixer *mixer) +{ + return mixer->engine.regs; +} + static inline u32 sun8i_channel_base(struct sun8i_mixer *mixer, int channel) { From patchwork Wed May 7 20:19:25 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Chris Morgan X-Patchwork-Id: 1720 Received: from mail-ot1-f44.google.com (mail-ot1-f44.google.com [209.85.210.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 4352F28EA6E for ; Wed, 7 May 2025 20:22:32 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.210.44 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1746649354; cv=none; b=nQXBJbJM6fmKUChtXr5y28JldWPNVcuNEFdYknT2zClKDNI5jAmQx35VGS6M8P9h4X4gSvjpmRz+Z6VrZodieO/yR68+JKe9QgTD6UHwcfAr/rlC90NtxWv1slOtjKwAHZUfbiAJTzLYVZqe3s9MR3LYfyklkwdxDmdpIlC7kLs= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1746649354; c=relaxed/simple; bh=BlmSnoOY3tKTiO4SXZtvva25RFRLmIX7O7FRNzv3BXE=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=GQG/Oj0Dreb7COgDLjbx1070Ow0Q50sVbBiHoKPfdi87gbGi+saxwkPoxkVzJOnCEBsiDVecyqRhcAIweH90rh6POWaQNhSCMO+FUAYFZWXPyrak9G966j5XBBAZas8e6ZGWMGUiA2P2lJggFaajmDn5Y99sWm+tDqa6+vNNTKE= 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=grs8GElj; arc=none smtp.client-ip=209.85.210.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 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="grs8GElj" Received: by mail-ot1-f44.google.com with SMTP id 46e09a7af769-72ec926e828so81609a34.0 for ; Wed, 07 May 2025 13:22:32 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1746649352; x=1747254152; 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; bh=XsqJzhzjIRfRwRwW5KEnr0pgS3P/C94H76I0ToCRaW4=; b=grs8GEljOOB67ufpudRinBGRlMxkSpOI457zGlhpBaj1TCW8Cs+9RgiOUTraUeQNHC VmN/McuQM5vN0mXEBQuoIOOUDC4N2V1qr4oSR7ed8PSvAk9u5F4pU4ttOtYY6x/6YQR6 sxRHiyuNb+/lROj1v2vIDGkq1Srgyo7KMzHNkitYydC+KZCRPAKHnXQFEFssLunlGkgf VjcHtVkR3pkRng1x9HO8GKJjLA7acqAmAiS2trvs8cIVIzCql5KiE5iFDAmBhSDRoCdc FIo53tgtMgQuDTTEBk6gvEKP3BuJtOCUtFT5LA0TVVKqNXCwe/0LOc7C2INVygYsUUN3 vCQg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1746649352; x=1747254152; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=XsqJzhzjIRfRwRwW5KEnr0pgS3P/C94H76I0ToCRaW4=; b=nSNYals1YseAY6VrF0eQJ/oEFhy6geLjL/dq7IS5jFkNPRm//X9/s4mmCPxxy5+YfY p2Mll3KxPTUXV+jAQsubNHo7MhsW5qjc4RD0/oDsNByvFlNhiGAAST/mgqz1t1s3kzlM aWFWAoltqXj5fNeWgZvj9I8hq2tpumoMl02EpuJJrM33wTgdiEz9+K55THAuf7hq/oSX X/dtW0IqIXtHnFiecaslSP4z+WWaI3/AYakxZBdxGS/aHKCrvAT78QnTH0hbeu4RqHGF +gcJ1ubqET60HhZmnckvHEALfN407z1WFWdULOmkw1ZCiAXbmE/N2c2GhilAFuEE79v4 8fqQ== X-Gm-Message-State: AOJu0YxKva/J3KeITxY47Q+DGX64I+EMvM12OqY7m4xsn/Ov6vhZyaV4 EnRT5dgWgVwZXb5g+zjvZPpOp1wx0j5xZpV+jTABjL+jowzokH3wSo/Kxg== X-Gm-Gg: ASbGnctyEc8TN9uNgyPPNCdG6zIpQZQlUSxKr5yVJmv7uylrrCl4oOIbdAh7+ihiuhk gPo3Pa0jQWXyDK8G+svhOaLhcgtOe4i3C3AE65SdwALbK7Exlt0lklqR3I5p9JscU/m/bt3YvVc wly/eSGqsX0cn2yOQX97rDOwl+lS3rYt/Zk+P3QoLhurWM16ELStpYPzhpuPDXmGOuVJot7EVzI YZd4/W1vSmNsbd55m+qCt5PbBcllItQCe1FKqFUWq7B6/gQ6CxzB0GmpcMoDN49AOWw8jR2/p3K AFmCjgOAm1KiEaYY7Icz2OelxwwTlctU+hD+uBw1uzfSLQQ9PyePU3n9kkx3 X-Google-Smtp-Source: AGHT+IH0b4pWiXsfnl+3ontb+86FWlxJwlvMz27qu3StKobB4XT4I8UbfNQlyyevzUiCEMXzW1/HAw== X-Received: by 2002:a05:6830:d09:b0:72b:9d5e:941c with SMTP id 46e09a7af769-73210aab7f5mr3018363a34.13.1746649352147; Wed, 07 May 2025 13:22:32 -0700 (PDT) Received: from localhost.localdomain ([2600:1700:fb0:1bcf:e46c:46ba:cecd:a52c]) by smtp.gmail.com with ESMTPSA id 46e09a7af769-732109df2dcsm725945a34.9.2025.05.07.13.22.31 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 07 May 2025 13:22:31 -0700 (PDT) From: Chris Morgan To: linux-sunxi@lists.linux.dev Cc: devicetree@vger.kernel.org, dri-devel@lists.freedesktop.org, ryan@testtoast.com, macromorgan@hotmail.com, p.zabel@pengutronix.de, tzimmermann@suse.de, maarten.lankhorst@linux.intel.com, simona@ffwll.ch, airlied@gmail.com, mripard@kernel.org, samuel@sholland.org, jernej.skrabec@gmail.com, wens@csie.org, conor+dt@kernel.org, krzk+dt@kernel.org, robh@kernel.org Subject: [PATCH V9 06/24] drm: sun4i: de2/de3: use generic register reference function for layer configuration Date: Wed, 7 May 2025 15:19:25 -0500 Message-ID: <20250507201943.330111-7-macroalpha82@gmail.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20250507201943.330111-1-macroalpha82@gmail.com> References: <20250507201943.330111-1-macroalpha82@gmail.com> Precedence: bulk X-Mailing-List: linux-sunxi@lists.linux.dev List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Status: O From: Chris Morgan Use the new blender register lookup function where required in the layer commit and update code. Signed-off-by: Jernej Skrabec Signed-off-by: Ryan Walklin Signed-off-by: Chris Morgan --- Changelog v2..v3: - Refactor for 6.11 layer init/modesetting changes --- drivers/gpu/drm/sun4i/sun8i_mixer.c | 5 +++-- drivers/gpu/drm/sun4i/sun8i_ui_layer.c | 7 +++++-- drivers/gpu/drm/sun4i/sun8i_vi_layer.c | 6 ++++-- 3 files changed, 12 insertions(+), 6 deletions(-) diff --git a/drivers/gpu/drm/sun4i/sun8i_mixer.c b/drivers/gpu/drm/sun4i/sun8i_mixer.c index 41815b42d6d2..cc4da11e2c10 100644 --- a/drivers/gpu/drm/sun4i/sun8i_mixer.c +++ b/drivers/gpu/drm/sun4i/sun8i_mixer.c @@ -274,6 +274,7 @@ static void sun8i_mixer_commit(struct sunxi_engine *engine, { struct sun8i_mixer *mixer = engine_to_sun8i_mixer(engine); u32 bld_base = sun8i_blender_base(mixer); + struct regmap *bld_regs = sun8i_blender_regmap(mixer); struct drm_plane_state *plane_state; struct drm_plane *plane; u32 route = 0, pipe_en = 0; @@ -313,8 +314,8 @@ static void sun8i_mixer_commit(struct sunxi_engine *engine, pipe_en |= SUN8I_MIXER_BLEND_PIPE_CTL_EN(zpos); } - regmap_write(mixer->engine.regs, SUN8I_MIXER_BLEND_ROUTE(bld_base), route); - regmap_write(mixer->engine.regs, SUN8I_MIXER_BLEND_PIPE_CTL(bld_base), + regmap_write(bld_regs, SUN8I_MIXER_BLEND_ROUTE(bld_base), route); + regmap_write(bld_regs, SUN8I_MIXER_BLEND_PIPE_CTL(bld_base), pipe_en | SUN8I_MIXER_BLEND_PIPE_CTL_FC_EN(0)); regmap_write(engine->regs, SUN8I_MIXER_GLOBAL_DBUFF, diff --git a/drivers/gpu/drm/sun4i/sun8i_ui_layer.c b/drivers/gpu/drm/sun4i/sun8i_ui_layer.c index b90e5edef4e8..7a21d32ff1e4 100644 --- a/drivers/gpu/drm/sun4i/sun8i_ui_layer.c +++ b/drivers/gpu/drm/sun4i/sun8i_ui_layer.c @@ -23,6 +23,7 @@ #include "sun8i_mixer.h" #include "sun8i_ui_layer.h" #include "sun8i_ui_scaler.h" +#include "sun8i_vi_scaler.h" static void sun8i_ui_layer_update_alpha(struct sun8i_mixer *mixer, int channel, int overlay, struct drm_plane *plane) @@ -51,6 +52,7 @@ static int sun8i_ui_layer_update_coord(struct sun8i_mixer *mixer, int channel, { struct drm_plane_state *state = plane->state; u32 src_w, src_h, dst_w, dst_h; + struct regmap *bld_regs; u32 bld_base, ch_base; u32 outsize, insize; u32 hphase, vphase; @@ -59,6 +61,7 @@ static int sun8i_ui_layer_update_coord(struct sun8i_mixer *mixer, int channel, channel, overlay); bld_base = sun8i_blender_base(mixer); + bld_regs = sun8i_blender_regmap(mixer); ch_base = sun8i_channel_base(mixer, channel); src_w = drm_rect_width(&state->src) >> 16; @@ -103,10 +106,10 @@ static int sun8i_ui_layer_update_coord(struct sun8i_mixer *mixer, int channel, DRM_DEBUG_DRIVER("Layer destination coordinates X: %d Y: %d\n", state->dst.x1, state->dst.y1); DRM_DEBUG_DRIVER("Layer destination size W: %d H: %d\n", dst_w, dst_h); - regmap_write(mixer->engine.regs, + regmap_write(bld_regs, SUN8I_MIXER_BLEND_ATTR_COORD(bld_base, zpos), SUN8I_MIXER_COORD(state->dst.x1, state->dst.y1)); - regmap_write(mixer->engine.regs, + regmap_write(bld_regs, SUN8I_MIXER_BLEND_ATTR_INSIZE(bld_base, zpos), outsize); diff --git a/drivers/gpu/drm/sun4i/sun8i_vi_layer.c b/drivers/gpu/drm/sun4i/sun8i_vi_layer.c index a7a3a75ffd63..3d81d23d0195 100644 --- a/drivers/gpu/drm/sun4i/sun8i_vi_layer.c +++ b/drivers/gpu/drm/sun4i/sun8i_vi_layer.c @@ -55,6 +55,7 @@ static int sun8i_vi_layer_update_coord(struct sun8i_mixer *mixer, int channel, struct drm_plane_state *state = plane->state; const struct drm_format_info *format = state->fb->format; u32 src_w, src_h, dst_w, dst_h; + struct regmap *bld_regs; u32 bld_base, ch_base; u32 outsize, insize; u32 hphase, vphase; @@ -66,6 +67,7 @@ static int sun8i_vi_layer_update_coord(struct sun8i_mixer *mixer, int channel, channel, overlay); bld_base = sun8i_blender_base(mixer); + bld_regs = sun8i_blender_regmap(mixer); ch_base = sun8i_channel_base(mixer, channel); src_w = drm_rect_width(&state->src) >> 16; @@ -183,10 +185,10 @@ static int sun8i_vi_layer_update_coord(struct sun8i_mixer *mixer, int channel, DRM_DEBUG_DRIVER("Layer destination coordinates X: %d Y: %d\n", state->dst.x1, state->dst.y1); DRM_DEBUG_DRIVER("Layer destination size W: %d H: %d\n", dst_w, dst_h); - regmap_write(mixer->engine.regs, + regmap_write(bld_regs, SUN8I_MIXER_BLEND_ATTR_COORD(bld_base, zpos), SUN8I_MIXER_COORD(state->dst.x1, state->dst.y1)); - regmap_write(mixer->engine.regs, + regmap_write(bld_regs, SUN8I_MIXER_BLEND_ATTR_INSIZE(bld_base, zpos), outsize); From patchwork Wed May 7 20:19:26 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Chris Morgan X-Patchwork-Id: 1719 Received: from mail-ot1-f45.google.com (mail-ot1-f45.google.com [209.85.210.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 0D27E28EA7E for ; Wed, 7 May 2025 20:22:33 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.210.45 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1746649355; cv=none; b=gHKC4a41iBxuKQWZeMZqNqH5J4zkdhA6tuPk0U9Hlrv+6gweQRPLtp9Wsdk9XNOZqYxO37jkiMBxeVd5DKqJGS/DiIAzrOo+gk95QwFSnluXsPqqSmffgxgLGHl7uxU9c7pKhLjrKs5+CgEkPcdtkK3MQLtM7Yuqcls2BL4Zp1Q= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1746649355; c=relaxed/simple; bh=HHC+IGGOoswomMAN4+ZC+pED0MP376pXx7EjCzIFbBU=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=PFD2bHw2QDPh5Z2bzCeHVqL1wenn7rKR8u9BJSI8hw+I72QGguBme03pi6hat9bcc16lBMvPL3MenD6oVgMQl9Q/G3AqG6fm2SPsSYGCdysrzwClqdjs1PGCcUn9Pqa8W9Eto2oAt/FYFFKjK2TjrmI1jBhSU1EWvvs1u/S3NJI= 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=ORekTXV7; arc=none smtp.client-ip=209.85.210.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 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="ORekTXV7" Received: by mail-ot1-f45.google.com with SMTP id 46e09a7af769-72b0626c785so153191a34.2 for ; Wed, 07 May 2025 13:22:33 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1746649353; x=1747254153; 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; bh=mxQUx7fKiHIH0j8UlXMnlb4egqRRUOvhz4vjyisGI3o=; b=ORekTXV7HBhHlgYmoH84POlNCf1yRk0+aQZf4UDTEBS3uNs9G7apEguyUY7thBgWXT xyNC35nEgcUWnvudXnyCcEc0q743LXW4zIhxD0xRscnE9aW+r7ADM0zBjGpvYZC+QI8U j8B2uzkfBbAN21gGv3PfqnVJuOzYf0QIpHjKe/9uZPorqTXmFC2CWpxvs3y6dej1FidF bws6VaPPrqSTZJlHiyiXUFHJ5A9dPOTWMw2x2K/uhzfXo8dZ7hxgtBwPVfG4F0oUAuCg qIYZ8d/eDK/YLSVBosqxQ2oPm9lN+y3rxOQmVUkRvWYV+G+d7dFFk5D/VIcDXXxA68HV oCqg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1746649353; x=1747254153; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=mxQUx7fKiHIH0j8UlXMnlb4egqRRUOvhz4vjyisGI3o=; b=Io9+a91YbFPdz6iLUAc8YWd2+odZOsMhCWROqoYJ50fbED2ewFw1d3myhpMf7N+l0X iUfCePgdbT7RIpLEy4IYYWSYKXVKlYRUczNgpOosEX7fK4g06TKEeAoF2OdgyrfcgTX2 ijtuU9xlW01dqc1VbQmRG3CICyw6TBcUNPMCC2oZof/mbSEfsM9cdi04UHi6jJSTLbTF ztMh6x+sQH3np0GSI1Vp/uAmTrFzREq37GRJFnL5A+oKZqmMxaFQMEiCFfSpMw37IkI5 4rsIEImFaxqH3Av3aTG4e6ExPuBF+yrQFBcSO87BgTiuRhmfWgFhe+cDDZ4pdxYM7Dy2 umdw== X-Gm-Message-State: AOJu0Yz9xPX8XYq4kKehp9OGN45LFL8qGv83K5Rtp65tOjmrDkrGjVEo hgwMM7PMhGADkn8UER7EE1JQvw5guGZ/mAY4HZSRpkfMdEUd1vNRbbYIDw== X-Gm-Gg: ASbGncsKvKnqF+kfx26ZjHp8LyCYI8n6oonn3kjhH9u7wqk9Uupa09vfCi0Zu7GXrw+ YLcQjj9epX1yISN8K8bAuN20+fR0MI4WkOxlo7seZAyxCUldk7dbADUJM4p9Zq2+yiqA4h03BNV t8TPOuuPLth+wQ3Q6Sxf5CY3vS6AxZxLzu8O3MKjHFCwzQ28BkFoGLnu6oImskM9BWL3+g3d2no fWY6PHfEZh2sPVYCDdt6/pfbI8WiKrnhQpiXW8q5t1DVFUksBwQK/uwO0qPrMnJkDXFgFAQ5dk/ I3cp4qinE66ueo2I6u/4sShervO0KmiCTW6GSdzMQfd3PPo/AnqW5E9sqnFegRIJwNJzl24= X-Google-Smtp-Source: AGHT+IEMEct8naOkTFIeGyQPkn5Ud20cBlIEl2qRYyNEjMLi4um0W9nrFDNK/o4EsMHn/xzNU9D3pg== X-Received: by 2002:a05:6830:3489:b0:727:28a:1ca5 with SMTP id 46e09a7af769-7321c56f3cbmr461230a34.16.1746649352889; Wed, 07 May 2025 13:22:32 -0700 (PDT) Received: from localhost.localdomain ([2600:1700:fb0:1bcf:e46c:46ba:cecd:a52c]) by smtp.gmail.com with ESMTPSA id 46e09a7af769-732109df2dcsm725945a34.9.2025.05.07.13.22.32 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 07 May 2025 13:22:32 -0700 (PDT) From: Chris Morgan To: linux-sunxi@lists.linux.dev Cc: devicetree@vger.kernel.org, dri-devel@lists.freedesktop.org, ryan@testtoast.com, macromorgan@hotmail.com, p.zabel@pengutronix.de, tzimmermann@suse.de, maarten.lankhorst@linux.intel.com, simona@ffwll.ch, airlied@gmail.com, mripard@kernel.org, samuel@sholland.org, jernej.skrabec@gmail.com, wens@csie.org, conor+dt@kernel.org, krzk+dt@kernel.org, robh@kernel.org Subject: [PATCH V9 07/24] dt-bindings: allwinner: add H616 DE33 bus binding Date: Wed, 7 May 2025 15:19:26 -0500 Message-ID: <20250507201943.330111-8-macroalpha82@gmail.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20250507201943.330111-1-macroalpha82@gmail.com> References: <20250507201943.330111-1-macroalpha82@gmail.com> Precedence: bulk X-Mailing-List: linux-sunxi@lists.linux.dev List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Status: O From: Chris Morgan The Allwinner H616 and variants have a new display engine revision (DE33). Add a display engine bus binding for the DE33. Note that the DE33 requires 3 register blocks instead of 1. To keep things simple remove the maxItems value for registers for the child nodes and instead rely on the bindings for the child nodes such as allwinner,sun8i-a83t-de2-mixer.yaml to enforce the max values. Signed-off-by: Ryan Walklin Signed-off-by: Chris Morgan --- Changelog v1..v2: - Correct DE2 bus enum to reflect fallback devices accurately. Changelog v2..v3: - Separate content into three patches for three separate subsystems Changelog v5..v6: - Increase reg maxItems to 3. Changelog v8..v9: - Remove maxItems from child nodes completely and rely on bindings for child nodes to enforce maxItems. - Remove reviewed and acked tags due to changes made. --- .../devicetree/bindings/bus/allwinner,sun50i-a64-de2.yaml | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/Documentation/devicetree/bindings/bus/allwinner,sun50i-a64-de2.yaml b/Documentation/devicetree/bindings/bus/allwinner,sun50i-a64-de2.yaml index 9845a187bdf6..9d9418c40b95 100644 --- a/Documentation/devicetree/bindings/bus/allwinner,sun50i-a64-de2.yaml +++ b/Documentation/devicetree/bindings/bus/allwinner,sun50i-a64-de2.yaml @@ -24,7 +24,9 @@ properties: oneOf: - const: allwinner,sun50i-a64-de2 - items: - - const: allwinner,sun50i-h6-de3 + - enum: + - allwinner,sun50i-h6-de3 + - allwinner,sun50i-h616-de33 - const: allwinner,sun50i-a64-de2 reg: @@ -47,9 +49,6 @@ patternProperties: "^[a-zA-Z][a-zA-Z0-9,+\\-._]{0,63}@[0-9a-fA-F]+$": type: object additionalProperties: true - properties: - reg: - maxItems: 1 required: - reg From patchwork Wed May 7 20:19:27 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Chris Morgan X-Patchwork-Id: 1717 Received: from mail-ot1-f51.google.com (mail-ot1-f51.google.com [209.85.210.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 DF17C28EA75 for ; Wed, 7 May 2025 20:22:34 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.210.51 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1746649357; cv=none; b=DOKNqKzotnZrr6kL78jHfdpchIyirxzATUsJqh9E2Xk7ZM3C1mX4hA9qCKxa8SIkfoRuh67TAw6DPtHeZ7/uF6aS/eFIo6rpSGQ+e3GNo+0uvleZ2XPxYB8v74069Y+pvDG6T7tfpKTvdDlz5DByDx4jfz9S3Mkb/O/dG2N6rHc= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1746649357; c=relaxed/simple; bh=LsuYS6qoBFINp6ctEKngWvXGFkd5+/qi3wP3l2WCm08=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=ctB4o1fwINXJ8A5rjVIS4QNOQ6gQxHaJ4IcKTQhWinl2croHn1dn2NwbPwg704/BLpVvwWpOo28eaqraLVy+0MH8o7f2vF3gs1MbjOxeMfwHOIYu4U6BO47j6lnNU1yS390cs64LIy9s/HaQYe5a0K16eC7woneMvM4Htg1xEgQ= 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=XpXd9AXS; arc=none smtp.client-ip=209.85.210.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 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="XpXd9AXS" Received: by mail-ot1-f51.google.com with SMTP id 46e09a7af769-72bd5f25ea6so77331a34.1 for ; Wed, 07 May 2025 13:22:34 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1746649354; x=1747254154; 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; bh=521t/CeHAKMYn/pwM/BkFVrSOh7CwyL/JsWX9K+z/SM=; b=XpXd9AXS7RptO55AOsNvIf0Z9Uwyjwg6MKseP6Wci+111oYWA/d0qHeUTupu9FFJA5 DQ065CkVkl+tSpRlu5tSxlIFDgDwdZHJ8zlzIknIhdVvLiJVIkwS4ql4/Inoa/BUQAuI qHnifrws2ZNKuXDG+HsXjSHKQRJVChNkE04yey6uiUrxV/ZvSOcYk5QOnmACtp1zxokd k9M/PgotuAnVaQV8FLwJqUe/88rg31bRPRqEA358K9PMPfcUsZUhAw+zeFZAy/aHwMZE c9qXCIsbU1FlPbdVjp9zQLMopHJy2k3x62u3hBpU4DJ05zUQ5xtiNZQfJYRYVLahd0kh ic+A== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1746649354; x=1747254154; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=521t/CeHAKMYn/pwM/BkFVrSOh7CwyL/JsWX9K+z/SM=; b=cgBL6UyWzibMcrvLUnC4r75dYZDWIkdRUrwJAfhBvIWeLakJFfM2EhDoQ5l4azLprC jawPT6CWCv6pb20AzYZ2T+8/UuPKcR3T6CKzkVCjBvJqZ18lT0I/bWECYvLO69+JpEZv EcdWxzKco0XTlTzbUOzDVmMENHwxGEaMWRqLJXmJ7wF/nLMy52UOmEVIz0rdc4RR/Oe/ +uoTdbwxoa8onc9eU/z99EbFfAmz2mcuf7HY/f2ObmXuJIYR60y31IZPl6HRhTY/w1L0 YAgvaqojGeCo/qXfQbGd/z5schN0uV/yTy2udPQwNd0aicl3dLgEbPQzZYUFv8ARuzju 2V5A== X-Gm-Message-State: AOJu0YyNvNR4ysaA6tY3xXRQjBXN248eNe+jQ1satoM4easrOI7Ybshq toS2jIAcWuXW7VBY2s76tUd0Y7eTTZkrLpuk3DiRw3h8XjNGN2NjsYg0oQ== X-Gm-Gg: ASbGncuxemJDY2BkAAzz34FsMTblQDFqkyIMExmli79z1t4Qc2j+hBlLCGbAYvefTQb O9armPitddz2GdTZ1iYjJh/ir8yFbcDKXSo0ZkHfaxWeOxgu2DjRmDDpr0Y67ptDl6Yea0wPgqp jVeM4bBUsQrd3q1dgOh7TO6rl1rTcutjFxqjR5aMeb9Ore6qvfB9ZTT95zPjKZypzSf4rW72U3t NZdcH621F5Q84yHhuKMSOjeBdiZxKiRxp1BofMxenx81FDqgMBZauQsAlrx8hyL0A8baxXVd1HZ 3EqRcz/v32PNj1nB9MdfiUKGcipfTlqEuCmsuJ75GjGwzOB4CSwGCDujPk+i X-Google-Smtp-Source: AGHT+IEgovUo3fqEdnkhJw+bsJ52pKIQ7trPCxR4KR+DeBMftR4N+JrGDxjm3mhsjvknZyqu+0Tatg== X-Received: by 2002:a05:6830:6204:b0:72b:a3f3:deb6 with SMTP id 46e09a7af769-73210a692famr3145427a34.4.1746649353725; Wed, 07 May 2025 13:22:33 -0700 (PDT) Received: from localhost.localdomain ([2600:1700:fb0:1bcf:e46c:46ba:cecd:a52c]) by smtp.gmail.com with ESMTPSA id 46e09a7af769-732109df2dcsm725945a34.9.2025.05.07.13.22.33 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 07 May 2025 13:22:33 -0700 (PDT) From: Chris Morgan To: linux-sunxi@lists.linux.dev Cc: devicetree@vger.kernel.org, dri-devel@lists.freedesktop.org, ryan@testtoast.com, macromorgan@hotmail.com, p.zabel@pengutronix.de, tzimmermann@suse.de, maarten.lankhorst@linux.intel.com, simona@ffwll.ch, airlied@gmail.com, mripard@kernel.org, samuel@sholland.org, jernej.skrabec@gmail.com, wens@csie.org, conor+dt@kernel.org, krzk+dt@kernel.org, robh@kernel.org, Conor Dooley Subject: [PATCH V9 08/24] dt-bindings: allwinner: add H616 DE33 clock binding Date: Wed, 7 May 2025 15:19:27 -0500 Message-ID: <20250507201943.330111-9-macroalpha82@gmail.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20250507201943.330111-1-macroalpha82@gmail.com> References: <20250507201943.330111-1-macroalpha82@gmail.com> Precedence: bulk X-Mailing-List: linux-sunxi@lists.linux.dev List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Status: O From: Chris Morgan The Allwinner H616 and variants have a new display engine revision (DE33). Add a clock binding for the DE33. Signed-off-by: Ryan Walklin Signed-off-by: Chris Morgan Acked-by: Conor Dooley Reviewed-by: Chen-Yu Tsai --- Changelog v2..v3: - Separate content into three patches for three separate subsystems --- .../devicetree/bindings/clock/allwinner,sun8i-a83t-de2-clk.yaml | 1 + 1 file changed, 1 insertion(+) diff --git a/Documentation/devicetree/bindings/clock/allwinner,sun8i-a83t-de2-clk.yaml b/Documentation/devicetree/bindings/clock/allwinner,sun8i-a83t-de2-clk.yaml index 70369bd633e4..7fcd55d468d4 100644 --- a/Documentation/devicetree/bindings/clock/allwinner,sun8i-a83t-de2-clk.yaml +++ b/Documentation/devicetree/bindings/clock/allwinner,sun8i-a83t-de2-clk.yaml @@ -25,6 +25,7 @@ properties: - const: allwinner,sun50i-a64-de2-clk - const: allwinner,sun50i-h5-de2-clk - const: allwinner,sun50i-h6-de3-clk + - const: allwinner,sun50i-h616-de33-clk - items: - const: allwinner,sun8i-r40-de2-clk - const: allwinner,sun8i-h3-de2-clk From patchwork Wed May 7 20:19:28 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Chris Morgan X-Patchwork-Id: 1718 Received: from mail-ot1-f52.google.com (mail-ot1-f52.google.com [209.85.210.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 8F60A28EA78 for ; Wed, 7 May 2025 20:22:35 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.210.52 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1746649357; cv=none; b=VBvMdz4zC11ZZBHGiEVUjb3mWPIl8s/7wv58D+VVgQhe52REfTHo5Y/sHyEcFPS0c5C9Z4NGGvE535tac9F7Y8uPY7xTWfSNgTiMsSe0Bq2ZQnSbZBjchlfNK3ZNbPXxapw8Dg43Ld6MoGtqpUZAjpVqNMMscaQoEKba3CnoMdQ= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1746649357; c=relaxed/simple; bh=7vLz3rjjqDY4MqwZRIg3tRY0XIdpWv8QPgzT+83NvjM=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=am7y7dvbdwjKx8ADJzb5PtiiO4Nfmz4ahU5mBrBskbsSMhhexW4/w2jRCVV4P7OyYQOju3uqfSifzLSy2vWquIjGZpXCuPjph9eacYM7ZjgcCGefUHgJPzOJkN1BBDRJKz4MJuE+xpFV9AW4awrmgI4/CeHKxwJ4MauffAF/kOE= 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=WEJwLnKq; arc=none smtp.client-ip=209.85.210.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 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="WEJwLnKq" Received: by mail-ot1-f52.google.com with SMTP id 46e09a7af769-72b7a53ceb6so197421a34.0 for ; Wed, 07 May 2025 13:22:35 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1746649354; x=1747254154; 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; bh=seKIm/ljynfx7Gt5G3g1qPbmhqkI57NM8oBXOLDsPF8=; b=WEJwLnKqUWhhmcvT2e4Y1ng+sphj/D4qKZunwnUJr3Hw+i2lMAqIzs4dj06DBjsHE2 sBMJpxvuV30Ke3JSpEgW5OAqtcKNkj6UaHjnumOskB6ygLkEJkf4MiWgQD1hmlx/EyUl jic/ZdQvMI3HmpgbQWPxla0OdRuzdK2DJEceeVPf9ziM5LHkdQG1G2UFADMcQMGwqHpR L5HOvvQcNr8LdmxS98+X1CNtgw9pg/fHfSNZ0Wd9EPPSTswhau/iEAN9s0kD0uXhLb18 1jg/Q1YN1NP2i1nJqzAO+ht7+Q4datEUG70vXhXNo9Ti/F2KNPyzLeCBs4TYHu3//gXw xHOg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1746649354; x=1747254154; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=seKIm/ljynfx7Gt5G3g1qPbmhqkI57NM8oBXOLDsPF8=; b=lABtdKKqRkiPx2Za0IKhq6wTK+JRZAHwRDaXnS+3/FLODyH3/uGF+e+l5Tr2kqkbpz 3n42iP/PDzWWsEOgIqTMHBC1KW1IFZdqVZzuJNM2kfipRwoVgN6jgsZYzdKoY1Xg5xlJ CSt3mwHrhXvwJqyXZx0zqslyia45JiLvdaaKmKK4IvLpadJhXCjLD2NBzoYVAskX0deg 8qF2Amk42L60WKMCw8ZZCNe13jwOk9PF9M23rTSonrJMtUWJFgl/+V/zlBAHUMJ0JF2g dufT1O8qMeI98DRSOeJr1r2Z+ynU1SSY3ASrn/75ee7J7xdBDItqfPd1WrSseOrazFUT Nggw== X-Gm-Message-State: AOJu0Yx0NdXomcdLtre4VnOteObYkAz40p4SF3CS12quw+Uz2sHfEvKH gmbetCk/bygV4olIcaLaR7gJJbcpalA0YO+HCtqr4k80HPwjmVYtUoTwHg== X-Gm-Gg: ASbGncsRMRizf4eerVHfcx31Hf8Kk/Z4SSKz89+4Y3wKHoNSRh7A/Cu3Px9TSnS/+La 91o+ICFd6JBdpup9pckof4ZDYYhVIRhgE+b/f8yAe7PwC7fntJELDX+euD5yXzKs68gKA47btgx JCsam3G8kSkesy4D45a8IoEYGeLFnbYZIb0aPlvqRtoHJU5trpTpM6IUDRzY0fFYRhR8Yni/V98 SR1M7qlFN7N61Xla5l+M19AN4yo5I+S3c34jOxRjJcEzxoWP7xnJxe9acZKnxEvHtReyPAAR1Uc Ere7RuIOcinv4N+soHJ8ecAuuy7tY9Epb2Q533OAVwl33Hs0oSg3N4gkJKWheMG5ZiiyRR0= X-Google-Smtp-Source: AGHT+IHALZ6h0iSHrJndLa4ejWvNDTzp2WRFgVlLimexXrna9Pc67+SeUmi8bDDRLkq9QHonddAS4w== X-Received: by 2002:a05:6830:33f8:b0:72a:b2a:476 with SMTP id 46e09a7af769-7321b364c5dmr525759a34.3.1746649354490; Wed, 07 May 2025 13:22:34 -0700 (PDT) Received: from localhost.localdomain ([2600:1700:fb0:1bcf:e46c:46ba:cecd:a52c]) by smtp.gmail.com with ESMTPSA id 46e09a7af769-732109df2dcsm725945a34.9.2025.05.07.13.22.33 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 07 May 2025 13:22:34 -0700 (PDT) From: Chris Morgan To: linux-sunxi@lists.linux.dev Cc: devicetree@vger.kernel.org, dri-devel@lists.freedesktop.org, ryan@testtoast.com, macromorgan@hotmail.com, p.zabel@pengutronix.de, tzimmermann@suse.de, maarten.lankhorst@linux.intel.com, simona@ffwll.ch, airlied@gmail.com, mripard@kernel.org, samuel@sholland.org, jernej.skrabec@gmail.com, wens@csie.org, conor+dt@kernel.org, krzk+dt@kernel.org, robh@kernel.org Subject: [PATCH V9 09/24] dt-bindings: allwinner: add H616 DE33 mixer binding Date: Wed, 7 May 2025 15:19:28 -0500 Message-ID: <20250507201943.330111-10-macroalpha82@gmail.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20250507201943.330111-1-macroalpha82@gmail.com> References: <20250507201943.330111-1-macroalpha82@gmail.com> Precedence: bulk X-Mailing-List: linux-sunxi@lists.linux.dev List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Status: O From: Chris Morgan The Allwinner H616 and variants have a new display engine revision (DE33). The mixer configuration registers are significantly different to the DE3 and DE2 revisions, being split into separate top and display blocks, therefore a fallback for the mixer compatible is not provided. Add a display engine mixer binding for the DE33. Signed-off-by: Ryan Walklin Signed-off-by: Chris Morgan --- Changelog v2..v3: - Separate content into three patches for three separate subsystems Changelog v5..v6: - Increase reg maxItems to 3 and add conditional for h616-de33 Changelog v8..v9: - Correct conditional logic for reg items as it was not working for me when using dtbs_check - Add reg-names property and description for the registers used by the DE33 mixer - Removed Acked and Reviewed tags so that change can be re-reviewed. --- .../allwinner,sun8i-a83t-de2-mixer.yaml | 34 +++++++++++++++++-- 1 file changed, 32 insertions(+), 2 deletions(-) diff --git a/Documentation/devicetree/bindings/display/allwinner,sun8i-a83t-de2-mixer.yaml b/Documentation/devicetree/bindings/display/allwinner,sun8i-a83t-de2-mixer.yaml index b75c1ec686ad..cbd18fd83e52 100644 --- a/Documentation/devicetree/bindings/display/allwinner,sun8i-a83t-de2-mixer.yaml +++ b/Documentation/devicetree/bindings/display/allwinner,sun8i-a83t-de2-mixer.yaml @@ -24,9 +24,11 @@ properties: - allwinner,sun50i-a64-de2-mixer-0 - allwinner,sun50i-a64-de2-mixer-1 - allwinner,sun50i-h6-de3-mixer-0 + - allwinner,sun50i-h616-de33-mixer-0 - reg: - maxItems: 1 + reg: true + + reg-names: true clocks: items: @@ -61,6 +63,34 @@ properties: required: - port@1 +allOf: + - if: + properties: + compatible: + contains: + enum: + - allwinner,sun50i-h616-de33-mixer-0 + then: + properties: + reg: + description: | + Registers for controlling individual layers of the display + engine (layers), global control (top), and display blending + control (display). Names are from Allwinner BSP kernel. + maxItems: 3 + reg-names: + items: + - const: layers + - const: top + - const: display + required: + - reg-names + + else: + properties: + reg: + maxItems: 1 + required: - compatible - reg From patchwork Wed May 7 20:19:29 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Chris Morgan X-Patchwork-Id: 1716 Received: from mail-ot1-f52.google.com (mail-ot1-f52.google.com [209.85.210.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 4E47C28ECD0 for ; Wed, 7 May 2025 20:22:36 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.210.52 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1746649358; cv=none; b=fosbUezzPg7rsbwYKYOHCNq1khaaka5/JAJ5Slkw9M7UNN9LoEAuNh2SdaooV4M1wu7wEchQMjI2+tA4ROnqlpsq6Spjzgses9BrTL/7m2A8Sfjppk+5ti3YKhxYsedn1LrjSdn6x6qaT2GkfoL23wrJ7zE/j158RuxKg4vScv0= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1746649358; c=relaxed/simple; bh=bHTfZ0+5iSv4Kdxevbh3ZYWMCmAEtkigQQWfvBsIAVo=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=Uh6Q5f97lT64oIVJ8uzPLj5IkVS07HVXwXTE6/kbpnwvG//I0AV5naG+dN4voaaX5qgd+iqn691E+k3el8XWx6nE9yprpswsLjuXoSbPm+CzJ84vLwSHK0mJaQvycJk4e08FNuBSNq0fJgcCkv3qIfmqBVbLSRwqRKI3WhrTqhA= 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=dAa4WDRO; arc=none smtp.client-ip=209.85.210.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 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="dAa4WDRO" Received: by mail-ot1-f52.google.com with SMTP id 46e09a7af769-730580b0de8so793955a34.1 for ; Wed, 07 May 2025 13:22:36 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1746649355; x=1747254155; 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; bh=QHElNaXE3LEW3PDqEvXaDUnvuob14iBVgPt+yqm3W/M=; b=dAa4WDROJIJqSJyN0ZeJt9YlCuwWCt82PTqSYeRcQL89+JhIKvVp0OaxXT5xQQIV2s XbQxFYOWt1xnIDF51v5CCWGW2Bb3cDYQRHukTjvu+J29LuDmmhj9GPRRUB6CttcVZfBO bYNoi1NKBFnZ6ZuH1mGmBstdY4JA4QtjZBJ4WJh+Q2ouv44KtcRUOvxpBLdrwl3EBJV0 WdvWnick+mZXIxrExbzLH3XrlBs4TjjG1nP5BGYHMOU61+k7VPkT2JuDTfTODtfl1L10 tvIq4l6uTt06pUTfC0qkOji4kw7y9/+GNDHcTFs/jEOLst3PaphFM8rjLHp5d5Jtblyh ti6Q== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1746649355; x=1747254155; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=QHElNaXE3LEW3PDqEvXaDUnvuob14iBVgPt+yqm3W/M=; b=P13C8PNbUg8V8izeFMrMqezDiZKzOvuQaGDVhZC/H9z3r7eK+/Uy5PSggR75oeGMZy UTJomA6Emlz5o2fecyI/gM7E7X1/1v/fJdlyGQB2tn7Evh5+YwSZZJVhVVYjCgZNrCZE emKRjogzZmFwh8K0JEQ/NvsUwKkxgQ4rQ3kqvGP9E9PIMTQAGha9BESPWkiauspOv6YP 9qBjkwr1ggedH094fFRv5MsznNYj4nfXVayR5R3Q1T6fsOnPi2L+uSUbPdvDpmKEdiLM dDU8YHMLug5RZioj1RL9oUzryF5bds1SRO2yz9vhEEDSEP3khw54xJUpPEvrGInngjKU aVLA== X-Gm-Message-State: AOJu0YwQUq50RzIQ0AZwuda0Ly5wZb7zY8NHhfYJJ3cfSPyuuSCCrxfA xS0m5mc2qPXP6ofaDeJkn0h5CES0ubBTne4NzbypWldMLLo2TYSDbOBXiw== X-Gm-Gg: ASbGncvMkgZ3CfY9t21nCepUwZdLb8z8fBzRH0deOX4bUWCoCdz+ymND/j1LcYlrDny Ju9q40sq19QhVkA0JgxJouFc6/f5Zaf+bhFLYzEXeGy+utk4GxzvjWRKgzsqc690d+sZnlNn2i6 vaOQp7OKgqT4g3Wn0H5E4VQe1+5/YFSO1J5EwTwzyXrG1Ud6MHHL9BevGNHMvIZiWA6ojgsVZla AKwFQdqjVtrdTIim08kSG0opZ63+DAiRuMvdqxQ97o2wXg7kj9s/ekLBMPFD8FGjwrd4RSnUxJC svfNfObQ8Udgw3Ft8imecdmuUHsJA3tSOPXgLjrNk0DscuLemalEY2IhFnok X-Google-Smtp-Source: AGHT+IE6odboNkW58fCeUX14Z/mIvgc1rzNqO9suS76MYTky2niUs9LOJQzjbW6M5IVh5uu++8EYIQ== X-Received: by 2002:a9d:7995:0:b0:72a:48d1:7fca with SMTP id 46e09a7af769-7321b395cf5mr517632a34.4.1746649355188; Wed, 07 May 2025 13:22:35 -0700 (PDT) Received: from localhost.localdomain ([2600:1700:fb0:1bcf:e46c:46ba:cecd:a52c]) by smtp.gmail.com with ESMTPSA id 46e09a7af769-732109df2dcsm725945a34.9.2025.05.07.13.22.34 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 07 May 2025 13:22:34 -0700 (PDT) From: Chris Morgan To: linux-sunxi@lists.linux.dev Cc: devicetree@vger.kernel.org, dri-devel@lists.freedesktop.org, ryan@testtoast.com, macromorgan@hotmail.com, p.zabel@pengutronix.de, tzimmermann@suse.de, maarten.lankhorst@linux.intel.com, simona@ffwll.ch, airlied@gmail.com, mripard@kernel.org, samuel@sholland.org, jernej.skrabec@gmail.com, wens@csie.org, conor+dt@kernel.org, krzk+dt@kernel.org, robh@kernel.org Subject: [PATCH V9 10/24] clk: sunxi-ng: ccu: add Display Engine 3.3 (DE33) support Date: Wed, 7 May 2025 15:19:29 -0500 Message-ID: <20250507201943.330111-11-macroalpha82@gmail.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20250507201943.330111-1-macroalpha82@gmail.com> References: <20250507201943.330111-1-macroalpha82@gmail.com> Precedence: bulk X-Mailing-List: linux-sunxi@lists.linux.dev List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Status: O From: Chris Morgan The DE33 is a newer version of the Allwinner Display Engine IP block, found in the H616, H618, H700 and T507 SoCs. DE2 and DE3 are already supported by the mainline driver. The DE33 in the H616 has mixer0 and writeback units. The clocks and resets required are identical to the H3 and H5 respectively, so use those existing structs for the H616 description. There are two additional 32-bit registers (at offsets 0x24 and 0x28) which require clearing and setting respectively to bring up the hardware. The function of these registers is currently unknown, and the values are taken from the out-of-tree driver. Add the required clock description struct and compatible string to the DE2 driver. Signed-off-by: Ryan Walklin Signed-off-by: Chris Morgan --- Changelog v2..v3: - Lowercase hex value Changelog v2..v3: - Correct #include for writel() Changelog v4..v5: - Whitespace fix --- drivers/clk/sunxi-ng/ccu-sun8i-de2.c | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) diff --git a/drivers/clk/sunxi-ng/ccu-sun8i-de2.c b/drivers/clk/sunxi-ng/ccu-sun8i-de2.c index f2aa71206bc2..a6cd0f988859 100644 --- a/drivers/clk/sunxi-ng/ccu-sun8i-de2.c +++ b/drivers/clk/sunxi-ng/ccu-sun8i-de2.c @@ -5,6 +5,7 @@ #include #include +#include #include #include #include @@ -239,6 +240,16 @@ static const struct sunxi_ccu_desc sun50i_h5_de2_clk_desc = { .num_resets = ARRAY_SIZE(sun50i_h5_de2_resets), }; +static const struct sunxi_ccu_desc sun50i_h616_de33_clk_desc = { + .ccu_clks = sun8i_de2_ccu_clks, + .num_ccu_clks = ARRAY_SIZE(sun8i_de2_ccu_clks), + + .hw_clks = &sun8i_h3_de2_hw_clks, + + .resets = sun50i_h5_de2_resets, + .num_resets = ARRAY_SIZE(sun50i_h5_de2_resets), +}; + static int sunxi_de2_clk_probe(struct platform_device *pdev) { struct clk *bus_clk, *mod_clk; @@ -291,6 +302,16 @@ static int sunxi_de2_clk_probe(struct platform_device *pdev) goto err_disable_mod_clk; } + /* + * The DE33 requires these additional (unknown) registers set + * during initialisation. + */ + if (of_device_is_compatible(pdev->dev.of_node, + "allwinner,sun50i-h616-de33-clk")) { + writel(0, reg + 0x24); + writel(0x0000a980, reg + 0x28); + } + ret = devm_sunxi_ccu_probe(&pdev->dev, reg, ccu_desc); if (ret) goto err_assert_reset; @@ -335,6 +356,10 @@ static const struct of_device_id sunxi_de2_clk_ids[] = { .compatible = "allwinner,sun50i-h6-de3-clk", .data = &sun50i_h5_de2_clk_desc, }, + { + .compatible = "allwinner,sun50i-h616-de33-clk", + .data = &sun50i_h616_de33_clk_desc, + }, { } }; MODULE_DEVICE_TABLE(of, sunxi_de2_clk_ids); From patchwork Wed May 7 20:19:30 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Chris Morgan X-Patchwork-Id: 1715 Received: from mail-ot1-f44.google.com (mail-ot1-f44.google.com [209.85.210.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 331A428ECDB for ; Wed, 7 May 2025 20:22:36 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.210.44 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1746649358; cv=none; b=aFDMWpzANRgYQgFZQx03SCqTNVWD2kU9o7vii9Px5mhLMoHcBzyAzfnjaroLMg6Ld+vgc2iX+WfiwfLdVtoEsEeT4ez9/1kFfvJs9iu7SID+POBVhrjXumr3qtb8dELD/rv1KQqutQX9aXqBRuU2O7niM4ZxSgGiypt/f6eS6FY= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1746649358; c=relaxed/simple; bh=xZdWHwn2SDZzrrTSxjZSjGuC6r+bWBY2bDoC212fjrI=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=kyadIWW+uz6uAZzFA/PEHtbNW3Pk/ZUeNy2RB2VzP4vNfjsMqFZfpJgwMDnQsWDBR3EZC5KzC/vAv5r6PRZm2XQY9vmViPbkfVQgFC7DqV6N1OZ++JS/0P8ni1ELmNFaOmZPqUoia+2MWoSrKhcf11NE+ISwRPquqRTomdGIcUA= 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=c3sTve+n; arc=none smtp.client-ip=209.85.210.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 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="c3sTve+n" Received: by mail-ot1-f44.google.com with SMTP id 46e09a7af769-72bc3987a05so188849a34.1 for ; Wed, 07 May 2025 13:22:36 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1746649356; x=1747254156; 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; bh=DOnjdA/K9t8YFoMyvpC9mBKsBSMkiqJxTGJB4LzuHbI=; b=c3sTve+nx2v0VcPYgtOGUAKuCrM2IDNBlZJNg4ZcEBVyYA+Zx+63cYodv4GGKkm5xh s1IW/CCvli/Nzuxu4T7ulw6IdE99kXfqtt48r9FeOC2BjwxaI7M5d0c599EVqtQYoGKw jesqN3C8NAGqHVOAWWwAL/QFHk/ZHwuT0cc8qP6U4eqVHh1e20Hh5thQc1nz3x0yajSJ egIp7AD//nfszIKs2lJHBtwyD922MqnjrPeZlP2uOLNm0KLpyBP5ZbZ2davvH06PVGNN Bn2LnCwaGCuRVvU4zloe4LZkw3Jdclnx8TwfMN+BQ1sRuNzpEHH0t3DJtiqC8vhunAVV T0ww== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1746649356; x=1747254156; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=DOnjdA/K9t8YFoMyvpC9mBKsBSMkiqJxTGJB4LzuHbI=; b=tRur6laNOkGIljeeeWereE7VqswslG7mwNpNhPuqy7p+HARF+daRUFLtNIGnYX3iv/ 2WQHXd28gtCworEFsedJxJv+M0yBnTdSIA8jVDB1chzw+VSnhYuQMCfxOpb56XmSxWQ5 EEmyXY7+pvRWRNEtiW5mcsPYR9JSbz845o9yEPEh0ZqXumAEBgqbIkc7Y0k6CIU2sAZV xcPcBxJXY/94FXAARbAxv37W0vviBSWohnP8rCbRdU3K8FwlQkBjIlWDC26G1BOIiPkm XfJqUCm6GCyUPQ8HHTb/arU4XZY1Db7XBfX4mNFGh0hqAgZ8pDSZ/VNLawItb77l+v97 Nk6Q== X-Gm-Message-State: AOJu0YxKliJs/DM+Mbeq27U26Vz7RhsN6F3OIH70ILgtVZlWcKxFgabT UVwUetU6DCU6ZYEzZzZtUcjHvkasL02b3OJgZVyr3qDhHt3Ue4KkkIhGvA== X-Gm-Gg: ASbGnctNZnrXREkOMnAgc4+HQv61NbLPpPpTWsQCtk2W+hG6YmnjfoSpVz20r0/A9na Vqshysk3ju1cTpT1EuMeMTCPAaFIsApwmG3tD0zqHyaN1uS9MM57RKFXhgOXdsnySJ5GnDeie9F ioZ1T2NSyii7LziNDg+v2lsdu3VPqDCNBb7W533+U/vwFKpf1qOJbSFD1OZS6YqgfUoGHeNYh5v YiHSWvlHu/qemH3VmNBT212aTQd1XATcP0sax7Hzj/yflnrZJRQjS7MSqvDEvFCyXI94pzntXac SJZcydMRNFYA0ZA440Dn3DsJE2aoSLdzowuk5wqaV/pI84K2Lj78XdhC9i4t X-Google-Smtp-Source: AGHT+IGhdN7iQduVHwjpHb/fdju1Q9acMOat+8tQez4g/T+ucKmAnspCZWL5Wcod8/fm0yG7hchEvA== X-Received: by 2002:a05:6830:33f8:b0:72a:b2a:476 with SMTP id 46e09a7af769-7321b364c5dmr525805a34.3.1746649355944; Wed, 07 May 2025 13:22:35 -0700 (PDT) Received: from localhost.localdomain ([2600:1700:fb0:1bcf:e46c:46ba:cecd:a52c]) by smtp.gmail.com with ESMTPSA id 46e09a7af769-732109df2dcsm725945a34.9.2025.05.07.13.22.35 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 07 May 2025 13:22:35 -0700 (PDT) From: Chris Morgan To: linux-sunxi@lists.linux.dev Cc: devicetree@vger.kernel.org, dri-devel@lists.freedesktop.org, ryan@testtoast.com, macromorgan@hotmail.com, p.zabel@pengutronix.de, tzimmermann@suse.de, maarten.lankhorst@linux.intel.com, simona@ffwll.ch, airlied@gmail.com, mripard@kernel.org, samuel@sholland.org, jernej.skrabec@gmail.com, wens@csie.org, conor+dt@kernel.org, krzk+dt@kernel.org, robh@kernel.org Subject: [PATCH V9 11/24] drm: sun4i: de33: vi_scaler: add Display Engine 3.3 (DE33) support Date: Wed, 7 May 2025 15:19:30 -0500 Message-ID: <20250507201943.330111-12-macroalpha82@gmail.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20250507201943.330111-1-macroalpha82@gmail.com> References: <20250507201943.330111-1-macroalpha82@gmail.com> Precedence: bulk X-Mailing-List: linux-sunxi@lists.linux.dev List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Status: O From: Chris Morgan The vi_scaler appears to be used in preference to the ui_scaler module for hardware video scaling in the DE33. Enable support for this scaler. Signed-off-by: Jernej Skrabec Signed-off-by: Ryan Walklin Signed-off-by: Chris Morgan --- drivers/gpu/drm/sun4i/sun8i_ui_layer.c | 20 ++++++++++++++++---- drivers/gpu/drm/sun4i/sun8i_vi_scaler.c | 4 +++- 2 files changed, 19 insertions(+), 5 deletions(-) diff --git a/drivers/gpu/drm/sun4i/sun8i_ui_layer.c b/drivers/gpu/drm/sun4i/sun8i_ui_layer.c index 7a21d32ff1e4..3eefdb710dee 100644 --- a/drivers/gpu/drm/sun4i/sun8i_ui_layer.c +++ b/drivers/gpu/drm/sun4i/sun8i_ui_layer.c @@ -94,12 +94,24 @@ static int sun8i_ui_layer_update_coord(struct sun8i_mixer *mixer, int channel, hscale = state->src_w / state->crtc_w; vscale = state->src_h / state->crtc_h; - sun8i_ui_scaler_setup(mixer, channel, src_w, src_h, dst_w, - dst_h, hscale, vscale, hphase, vphase); - sun8i_ui_scaler_enable(mixer, channel, true); + if (mixer->cfg->de_type == sun8i_mixer_de33) { + sun8i_vi_scaler_setup(mixer, channel, src_w, src_h, + dst_w, dst_h, hscale, vscale, + hphase, vphase, + state->fb->format); + sun8i_vi_scaler_enable(mixer, channel, true); + } else { + sun8i_ui_scaler_setup(mixer, channel, src_w, src_h, + dst_w, dst_h, hscale, vscale, + hphase, vphase); + sun8i_ui_scaler_enable(mixer, channel, true); + } } else { DRM_DEBUG_DRIVER("HW scaling is not needed\n"); - sun8i_ui_scaler_enable(mixer, channel, false); + if (mixer->cfg->de_type == sun8i_mixer_de33) + sun8i_vi_scaler_enable(mixer, channel, false); + else + sun8i_ui_scaler_enable(mixer, channel, false); } /* Set base coordinates */ diff --git a/drivers/gpu/drm/sun4i/sun8i_vi_scaler.c b/drivers/gpu/drm/sun4i/sun8i_vi_scaler.c index ad87ab395803..6839fd5ab602 100644 --- a/drivers/gpu/drm/sun4i/sun8i_vi_scaler.c +++ b/drivers/gpu/drm/sun4i/sun8i_vi_scaler.c @@ -835,7 +835,9 @@ static const u32 bicubic4coefftab32[480] = { static u32 sun8i_vi_scaler_base(struct sun8i_mixer *mixer, int channel) { - if (mixer->cfg->de_type == sun8i_mixer_de3) + if (mixer->cfg->de_type == sun8i_mixer_de33) + return sun8i_channel_base(mixer, channel) + 0x3000; + else if (mixer->cfg->de_type == sun8i_mixer_de3) return DE3_VI_SCALER_UNIT_BASE + DE3_VI_SCALER_UNIT_SIZE * channel; else From patchwork Wed May 7 20:19:31 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Chris Morgan X-Patchwork-Id: 1712 Received: from mail-ot1-f48.google.com (mail-ot1-f48.google.com [209.85.210.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 D99F828ECE2 for ; Wed, 7 May 2025 20:22:37 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.210.48 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1746649360; cv=none; b=MJNokzbVlVAGnPaZ+WUDHmauhTDO7t13OPfVAC1w7uaDCY/NQKkyjcgVNS/9NUQvU1J6vnHH5iGFu00VX5AF1dGOs5TytgiOEukThA4FuCEVHfsh05V+L63is8IDIlF9E9eO9xikgZcbsaxPg6fT5D+sQyNTwwhN7kFOLDMAgwU= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1746649360; c=relaxed/simple; bh=vguqYpM1TJU6KCu/mF7T2NJsq4W7j/9QCPw1aPrPrYU=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=u/wZoatAsLXHh8kWZt328OzA7p9Ej6cvHx7hJe4SaARKLh+H97cAfBVsbEOvSeQTiu1COgo8TUXJFYyQe42dyMkJPoASYFQHCsaHCkrz5+qtBgI66HBcV2v9kld9zzuUB5SWu2hc1M8Aghd5+5hhlqHGW8aNyAq1qZU7/34VVjw= 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=SIkXs88x; arc=none smtp.client-ip=209.85.210.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 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="SIkXs88x" Received: by mail-ot1-f48.google.com with SMTP id 46e09a7af769-72bc3987a05so188859a34.1 for ; Wed, 07 May 2025 13:22:37 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1746649357; x=1747254157; 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; bh=WCkxYQTZiYOyR+Z0HyhRX8imCTrNH9/mom0p6oL3w8k=; b=SIkXs88xDednel+SJclEKfnaw3OY3x0EXcnAgwPjzugfzssyUvScMbNC1CKJX1oryV KWapU7gGQqi0Fk1lXZnhlmWtTLprmB6L7n+yFIJRHgeu8CGJ5Vskpphx1KFBo4O/Mu3U d/OKdJJ+WF3/oilwXjGKgUceD/Od//lGhJ+oUY/mIdv0u6mcn6ozBtcPECkC2xuZPj7O AuiRyRQSqPb5tnRU9rJ7ic5djnkHF6ydkvj9bD/l+V70oXHBcGe4CQr3kJPyYIPNCTDH ygEsrYiZXcz/uuyr/f5iIz1zrJRzP+VCiLOZKsxqny176RVq4pe013x3Yl1DT6F1Ysod whmg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1746649357; x=1747254157; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=WCkxYQTZiYOyR+Z0HyhRX8imCTrNH9/mom0p6oL3w8k=; b=YmEDV9H28RpoTfOgyr85G0o50E56EcbDjc2rNjf/s7ZQnGAjMrcXnsalXEGRHdiBuT XhQ0Gku7C63OFRdJKSQ1DfWuiwKFoh1hkTN17/fh0Mcbt2BaEKlzzBuvx5ymsJ5yW60d fN+EEsQCr6DKp/QyZxtZtQyehGwQUlUusYocj0U9AiAFD5MPAEgSJTy5meNZww1r9exJ 7NtTSW0Yz03aubI88tH5wSZpyqkJK5nwbGdsuiAudYyr8UA4gxa+g/sUSfl3HonYOjkt BUALLBo8GnK9PlrsW7TO/7tb5kNVxMeS3dHuUCNLmejByhJrChbKB9tJBNk2U54+IODE leSQ== X-Gm-Message-State: AOJu0YyJvaVZX7haYfs7T0aXyzqPdNfOVP+udyAJ3/goI0kYB35WO6tn J2iKGi5epfYxy5+IwsOyNgD51ziNC6UuB+FX1ELQRn55XH8fZLi230okMQ== X-Gm-Gg: ASbGncs23+Cn37HK1kfnqEOIcUoVb9GQruvJKjzCwsgch+6QuO67IIZ5pxL0cmE/WT+ tI0m1soqgXfYGg1eFzQwRyjXzTxIL3TdGbliaiEwSMxgToJeih9FC0TWKXa5c0Uer7MtVvAS1oC 9Sqpa/VR2V1ZnQ9rDi7WgAszUEmSvgYWdXjh/i68USWhT+py4R76BvCQPXlNi1GIsnMAvPO7ux2 6jw6qNlocM1hkIU+3CBGt1HNFmHsTHEUowRjSqx0LKN0r0n8Yr2AyqcakusOiYfpFlGm0SFp0aD uYfXW96luuzHCDLlBauSFTfE2YBHMSdAUDHQhtjG9ckKp1YcXF2vcJTb+bWi X-Google-Smtp-Source: AGHT+IElR4v949rR98S0bxVcO3Egf8iD4lcNd7WMdH1G5d8Bv2kECZyE6C7Z0k635JuRG4DtwT5IpQ== X-Received: by 2002:a05:6830:398a:b0:727:2731:d5e5 with SMTP id 46e09a7af769-7321b4e9c70mr691398a34.12.1746649356702; Wed, 07 May 2025 13:22:36 -0700 (PDT) Received: from localhost.localdomain ([2600:1700:fb0:1bcf:e46c:46ba:cecd:a52c]) by smtp.gmail.com with ESMTPSA id 46e09a7af769-732109df2dcsm725945a34.9.2025.05.07.13.22.36 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 07 May 2025 13:22:36 -0700 (PDT) From: Chris Morgan To: linux-sunxi@lists.linux.dev Cc: devicetree@vger.kernel.org, dri-devel@lists.freedesktop.org, ryan@testtoast.com, macromorgan@hotmail.com, p.zabel@pengutronix.de, tzimmermann@suse.de, maarten.lankhorst@linux.intel.com, simona@ffwll.ch, airlied@gmail.com, mripard@kernel.org, samuel@sholland.org, jernej.skrabec@gmail.com, wens@csie.org, conor+dt@kernel.org, krzk+dt@kernel.org, robh@kernel.org Subject: [PATCH V9 12/24] drm: sun4i: de33: mixer: add Display Engine 3.3 (DE33) support Date: Wed, 7 May 2025 15:19:31 -0500 Message-ID: <20250507201943.330111-13-macroalpha82@gmail.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20250507201943.330111-1-macroalpha82@gmail.com> References: <20250507201943.330111-1-macroalpha82@gmail.com> Precedence: bulk X-Mailing-List: linux-sunxi@lists.linux.dev List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Status: O From: Chris Morgan The DE33 is a newer version of the Allwinner Display Engine IP block, found in the H616, H618, H700 and T507 SoCs. DE2 and DE3 are already supported by the mainline driver. Notable features (from the H616 datasheet and implemented): - 4096 x 2048 (4K) output support Other features (implemented but not in this patchset): - AFBC ARM Frame Buffer Compression support - YUV pipeline support The DE2 and DE3 engines have a blender register range within the mixer engine register map, whereas the DE33 separates this out into a separate display group, and adds a top register map. The DE33 also appears to remove the global double buffer control register, present in the DE2 and DE3. Extend the mixer to support the DE33. Signed-off-by: Jernej Skrabec Signed-off-by: Ryan Walklin Signed-off-by: Chris Morgan --- Changelog v4..v5: - Whitespace fixes - Correct strict mode warnings from checkpatch.pl Changelog v7..v8: - Add top/disp regmaps to mixer for DE33 - Remove YUV-specific code - Remove use of global double buffer - Remove unneeded if/then parentheses and fix an alignment issue as suggested by checkpatch.pl Changelog v8..v9: - Change devm_platform_ioremap_resource() for the 2nd and 3rd register set to devm_platform_ioremap_resource_byname() since we now are enforcing reg-names in the device tree. --- drivers/gpu/drm/sun4i/sun8i_mixer.c | 82 +++++++++++++++++++++++++---- drivers/gpu/drm/sun4i/sun8i_mixer.h | 22 ++++++-- 2 files changed, 90 insertions(+), 14 deletions(-) diff --git a/drivers/gpu/drm/sun4i/sun8i_mixer.c b/drivers/gpu/drm/sun4i/sun8i_mixer.c index cc4da11e2c10..0d4695132dae 100644 --- a/drivers/gpu/drm/sun4i/sun8i_mixer.c +++ b/drivers/gpu/drm/sun4i/sun8i_mixer.c @@ -318,8 +318,9 @@ static void sun8i_mixer_commit(struct sunxi_engine *engine, regmap_write(bld_regs, SUN8I_MIXER_BLEND_PIPE_CTL(bld_base), pipe_en | SUN8I_MIXER_BLEND_PIPE_CTL_FC_EN(0)); - regmap_write(engine->regs, SUN8I_MIXER_GLOBAL_DBUFF, - SUN8I_MIXER_GLOBAL_DBUFF_ENABLE); + if (mixer->cfg->de_type != sun8i_mixer_de33) + regmap_write(engine->regs, SUN8I_MIXER_GLOBAL_DBUFF, + SUN8I_MIXER_GLOBAL_DBUFF_ENABLE); } static struct drm_plane **sun8i_layers_init(struct drm_device *drm, @@ -368,25 +369,31 @@ static void sun8i_mixer_mode_set(struct sunxi_engine *engine, const struct drm_display_mode *mode) { struct sun8i_mixer *mixer = engine_to_sun8i_mixer(engine); + struct regmap *bld_regs; u32 bld_base, size, val; bool interlaced; bld_base = sun8i_blender_base(mixer); + bld_regs = sun8i_blender_regmap(mixer); interlaced = !!(mode->flags & DRM_MODE_FLAG_INTERLACE); size = SUN8I_MIXER_SIZE(mode->hdisplay, mode->vdisplay); DRM_DEBUG_DRIVER("Updating global size W: %u H: %u\n", mode->hdisplay, mode->vdisplay); - regmap_write(engine->regs, SUN8I_MIXER_GLOBAL_SIZE, size); - regmap_write(engine->regs, SUN8I_MIXER_BLEND_OUTSIZE(bld_base), size); + if (mixer->cfg->de_type == sun8i_mixer_de33) + regmap_write(mixer->top_regs, SUN50I_MIXER_GLOBAL_SIZE, size); + else + regmap_write(mixer->engine.regs, SUN8I_MIXER_GLOBAL_SIZE, size); + + regmap_write(bld_regs, SUN8I_MIXER_BLEND_OUTSIZE(bld_base), size); if (interlaced) val = SUN8I_MIXER_BLEND_OUTCTL_INTERLACED; else val = 0; - regmap_update_bits(engine->regs, SUN8I_MIXER_BLEND_OUTCTL(bld_base), + regmap_update_bits(bld_regs, SUN8I_MIXER_BLEND_OUTCTL(bld_base), SUN8I_MIXER_BLEND_OUTCTL_INTERLACED, val); DRM_DEBUG_DRIVER("Switching display mixer interlaced mode %s\n", @@ -400,12 +407,29 @@ static const struct sunxi_engine_ops sun8i_engine_ops = { }; static const struct regmap_config sun8i_mixer_regmap_config = { + .name = "layers", .reg_bits = 32, .val_bits = 32, .reg_stride = 4, .max_register = 0xffffc, /* guessed */ }; +static const struct regmap_config sun8i_top_regmap_config = { + .name = "top", + .reg_bits = 32, + .val_bits = 32, + .reg_stride = 4, + .max_register = 0x3c, +}; + +static const struct regmap_config sun8i_disp_regmap_config = { + .name = "display", + .reg_bits = 32, + .val_bits = 32, + .reg_stride = 4, + .max_register = 0x20000, +}; + static int sun8i_mixer_of_get_id(struct device_node *node) { struct device_node *ep, *remote; @@ -428,33 +452,45 @@ static int sun8i_mixer_of_get_id(struct device_node *node) static void sun8i_mixer_init(struct sun8i_mixer *mixer) { + struct regmap *top_regs, *disp_regs; unsigned int base = sun8i_blender_base(mixer); int plane_cnt, i; + if (mixer->cfg->de_type == sun8i_mixer_de33) { + top_regs = mixer->top_regs; + disp_regs = mixer->disp_regs; + } else { + top_regs = mixer->engine.regs; + disp_regs = mixer->engine.regs; + } + /* Enable the mixer */ - regmap_write(mixer->engine.regs, SUN8I_MIXER_GLOBAL_CTL, + regmap_write(top_regs, SUN8I_MIXER_GLOBAL_CTL, SUN8I_MIXER_GLOBAL_CTL_RT_EN); + if (mixer->cfg->de_type == sun8i_mixer_de33) + regmap_write(top_regs, SUN50I_MIXER_GLOBAL_CLK, 1); + /* Set background color to black */ - regmap_write(mixer->engine.regs, SUN8I_MIXER_BLEND_BKCOLOR(base), + regmap_write(disp_regs, SUN8I_MIXER_BLEND_BKCOLOR(base), SUN8I_MIXER_BLEND_COLOR_BLACK); /* * Set fill color of bottom plane to black. Generally not needed * except when VI plane is at bottom (zpos = 0) and enabled. */ - regmap_write(mixer->engine.regs, SUN8I_MIXER_BLEND_PIPE_CTL(base), + regmap_write(disp_regs, SUN8I_MIXER_BLEND_PIPE_CTL(base), SUN8I_MIXER_BLEND_PIPE_CTL_FC_EN(0)); - regmap_write(mixer->engine.regs, SUN8I_MIXER_BLEND_ATTR_FCOLOR(base, 0), + regmap_write(disp_regs, SUN8I_MIXER_BLEND_ATTR_FCOLOR(base, 0), SUN8I_MIXER_BLEND_COLOR_BLACK); plane_cnt = mixer->cfg->vi_num + mixer->cfg->ui_num; for (i = 0; i < plane_cnt; i++) - regmap_write(mixer->engine.regs, + regmap_write(disp_regs, SUN8I_MIXER_BLEND_MODE(base, i), SUN8I_MIXER_BLEND_MODE_DEF); - regmap_update_bits(mixer->engine.regs, SUN8I_MIXER_BLEND_PIPE_CTL(base), + regmap_update_bits(disp_regs, SUN8I_MIXER_BLEND_PIPE_CTL(base), SUN8I_MIXER_BLEND_PIPE_CTL_EN_MSK, 0); } @@ -526,6 +562,30 @@ static int sun8i_mixer_bind(struct device *dev, struct device *master, return PTR_ERR(mixer->engine.regs); } + if (mixer->cfg->de_type == sun8i_mixer_de33) { + regs = devm_platform_ioremap_resource_byname(pdev, "top"); + if (IS_ERR(regs)) + return PTR_ERR(regs); + + mixer->top_regs = devm_regmap_init_mmio(dev, regs, + &sun8i_top_regmap_config); + if (IS_ERR(mixer->top_regs)) { + dev_err(dev, "Couldn't create the top regmap\n"); + return PTR_ERR(mixer->top_regs); + } + + regs = devm_platform_ioremap_resource_byname(pdev, "display"); + if (IS_ERR(regs)) + return PTR_ERR(regs); + + mixer->disp_regs = devm_regmap_init_mmio(dev, regs, + &sun8i_disp_regmap_config); + if (IS_ERR(mixer->disp_regs)) { + dev_err(dev, "Couldn't create the disp regmap\n"); + return PTR_ERR(mixer->disp_regs); + } + } + mixer->reset = devm_reset_control_get(dev, NULL); if (IS_ERR(mixer->reset)) { dev_err(dev, "Couldn't get our reset line\n"); diff --git a/drivers/gpu/drm/sun4i/sun8i_mixer.h b/drivers/gpu/drm/sun4i/sun8i_mixer.h index 43c413052a22..d87d197610e1 100644 --- a/drivers/gpu/drm/sun4i/sun8i_mixer.h +++ b/drivers/gpu/drm/sun4i/sun8i_mixer.h @@ -21,6 +21,9 @@ #define SUN8I_MIXER_GLOBAL_DBUFF 0x8 #define SUN8I_MIXER_GLOBAL_SIZE 0xc +#define SUN50I_MIXER_GLOBAL_SIZE 0x8 +#define SUN50I_MIXER_GLOBAL_CLK 0xc + #define SUN8I_MIXER_GLOBAL_CTL_RT_EN BIT(0) #define SUN8I_MIXER_GLOBAL_DBUFF_ENABLE BIT(0) @@ -151,6 +154,12 @@ enum { CCSC_D1_MIXER0_LAYOUT, }; +enum sun8i_mixer_type { + sun8i_mixer_de2, + sun8i_mixer_de3, + sun8i_mixer_de33, +}; + /** * struct sun8i_mixer_cfg - mixer HW configuration * @vi_num: number of VI channels @@ -171,8 +180,9 @@ struct sun8i_mixer_cfg { int scaler_mask; int ccsc; unsigned long mod_rate; - unsigned int is_de3 : 1; + unsigned int de_type; unsigned int scanline_yuv; + unsigned int map[6]; }; struct sun8i_mixer { @@ -184,6 +194,9 @@ struct sun8i_mixer { struct clk *bus_clk; struct clk *mod_clk; + + struct regmap *top_regs; + struct regmap *disp_regs; }; enum { @@ -220,13 +233,16 @@ sun8i_blender_base(struct sun8i_mixer *mixer) static inline struct regmap * sun8i_blender_regmap(struct sun8i_mixer *mixer) { - return mixer->engine.regs; + return mixer->cfg->de_type == sun8i_mixer_de33 ? + mixer->disp_regs : mixer->engine.regs; } static inline u32 sun8i_channel_base(struct sun8i_mixer *mixer, int channel) { - if (mixer->cfg->is_de3) + if (mixer->cfg->de_type == sun8i_mixer_de33) + return mixer->cfg->map[channel] * 0x20000 + DE2_CH_SIZE; + else if (mixer->cfg->de_type == sun8i_mixer_de3) return DE3_CH_BASE + channel * DE3_CH_SIZE; else return DE2_CH_BASE + channel * DE2_CH_SIZE; From patchwork Wed May 7 20:19:32 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Chris Morgan X-Patchwork-Id: 1714 Received: from mail-ot1-f52.google.com (mail-ot1-f52.google.com [209.85.210.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 9B3D328ECF4 for ; Wed, 7 May 2025 20:22:38 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.210.52 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1746649360; cv=none; b=GHzixQSvaQTiHl9aTGV8B15GCVlrn76v05FiHWDp0YnV2F9pUhZd8df6K4kECAYtw3UIfK+DU2gOSowIZD1USV65ZPqyrkfAyOVym1bSFKCMzU81G32rZMYCjuA3afQhHC4+nBjSPbrSW3lVVyMX6JL7pL8GOliICjOKklVIqp8= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1746649360; c=relaxed/simple; bh=3jBDFCQbAgO97/OKa/61A175wN0Waxqcr5J2XffU1Cw=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=n2Bl/jnTra/eUT9z9zgY9zCGDHfW1l4Yw0ugqi0FdLp38jiL18rK6uRaL58RJidRg1E91YByu4pYSdpRVhGtDhL7oUkWVwq1vV8ObAsbTTyRAxA87SwKGFsZ2/+d4DlpsXkccSUOTVL2EIV71UF6D3EH1ZuvoMHsYQFps89/M+o= 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=fbRR1HAU; arc=none smtp.client-ip=209.85.210.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 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="fbRR1HAU" Received: by mail-ot1-f52.google.com with SMTP id 46e09a7af769-72ecb4d9a10so146867a34.3 for ; Wed, 07 May 2025 13:22:38 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1746649357; x=1747254157; 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; bh=9sbHd8gUlvuYnzn7gA8PnML99Gdixf1hIAz0N6qS0P4=; b=fbRR1HAUHEvNC8aNgBy0BhLyOHpAFOCIyr36okW3Kf43opQPyc5Z3+CvMMQYpF2chY y4Km0cxGwryPC3+ZgkjFKjWKpp9TroRmXuW8NcxqrlZw/7YFPIC64Vw9gRys3bpyj6WX 7XnG6y6+ykgSwlbHW37cxnP0P+RUaeQjZPMJGIfOCpJ4YbDDXRQ0+SPv2uG/TrpLhlRY xsxgzN6YlUGPyH75r5Xx8RAfUyMD7YiN0saXgLOiKg47CZ1yWAg1CkiA6WbRpBqH/Y64 rkXcDaSTpWSh/JCtfp4uLfx9ZlNLheubN/MeYWNwJqTieakU2feiTXjGrHlAYy7Lx4so RLUg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1746649357; x=1747254157; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=9sbHd8gUlvuYnzn7gA8PnML99Gdixf1hIAz0N6qS0P4=; b=S9NaW+bnodSqoiXHWyrTkdhsbpnfk/arRvsldJA4x2iMAPgioZQnFVKyHZlFL7mjtA VNjvrD0qeXL+vTDDFzHc6ES1mIRS4WRoUKn6+gNqMemYC6lEqH7+fnvxyWrb5AmZuHCX 8oLqDnowtGN3NcGcBVvQJ6c1hxuDcFM0xZulKzGfMwrVTwLhxy6L6Ap5r8RY6DkDyO1L fYnbvppFWONWutaoOnT8KxHkmaw9DRNRM+V1kHiObB8uGoEjd7ZQAYVzZmIKheeuCWll aukUaujP/ZBObviePXSd+mOvZIa8NaFbcPmi7xnllwVY+juGI5O7yb3dsyFja/ThG/gr DdzQ== X-Gm-Message-State: AOJu0Yytg3S9W1dtQdmITb9VrIk1Dorh6nvKl272VOXQgcAruPf4oGUt Yr3GdWUV9MQyu9NFYOSQrQw2hDnl5JLga07OWOJKXqmYYxLnUk2znbyStA== X-Gm-Gg: ASbGncsyUDUKP4+TVMdtlqClTtwjiQ+jVAyThPiY7lVHW1UmEuvY3arnpppsSWCOvc8 i+fPbIjtOMPhBCyobFqBsUqSl9hOxrBxMKmZj8MBLbOM6z46xK8myZekBIMoijve5PHH9kyWG1m eKN39qS2zwJtSDvLpDDLUGqVXkmc3dJNMjOrVL7cSJlFdiq8D/FDuM6wsgZDhTWYFNDhTkojQwz g8Lt0GargXsn2EcqrdWNoVUdzJJApL99aHE57isyLBpzXi5qUiPOaDMwfkX++868e1SiQvz/M9s BbMIEEYrQdiJREKPh4+UNmMQdceuy9/TvaCUsNn/8/pS6M2t4usOJXv6eWDQ X-Google-Smtp-Source: AGHT+IGe5N0nyCvS6qJkMbvSVFVtMjpTu1pefglJ9Uyewgv0lTh7SnRx1w9QVAtXhBd2yib+n33BeA== X-Received: by 2002:a05:6830:368d:b0:72b:9506:8db1 with SMTP id 46e09a7af769-73210a6952cmr3059070a34.4.1746649357459; Wed, 07 May 2025 13:22:37 -0700 (PDT) Received: from localhost.localdomain ([2600:1700:fb0:1bcf:e46c:46ba:cecd:a52c]) by smtp.gmail.com with ESMTPSA id 46e09a7af769-732109df2dcsm725945a34.9.2025.05.07.13.22.36 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 07 May 2025 13:22:37 -0700 (PDT) From: Chris Morgan To: linux-sunxi@lists.linux.dev Cc: devicetree@vger.kernel.org, dri-devel@lists.freedesktop.org, ryan@testtoast.com, macromorgan@hotmail.com, p.zabel@pengutronix.de, tzimmermann@suse.de, maarten.lankhorst@linux.intel.com, simona@ffwll.ch, airlied@gmail.com, mripard@kernel.org, samuel@sholland.org, jernej.skrabec@gmail.com, wens@csie.org, conor+dt@kernel.org, krzk+dt@kernel.org, robh@kernel.org Subject: [PATCH V9 13/24] drm: sun4i: de33: mixer: add mixer configuration for the H616 Date: Wed, 7 May 2025 15:19:32 -0500 Message-ID: <20250507201943.330111-14-macroalpha82@gmail.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20250507201943.330111-1-macroalpha82@gmail.com> References: <20250507201943.330111-1-macroalpha82@gmail.com> Precedence: bulk X-Mailing-List: linux-sunxi@lists.linux.dev List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Status: O From: Chris Morgan The H616 (and related SoC packages sharing the same die) carry the new DE33 display engine. Add the mixer configuration and a compatible string for the H616 to the mixer. Signed-off-by: Jernej Skrabec Signed-off-by: Ryan Walklin Signed-off-by: Chris Morgan --- Changelog v7..v8: - Separate DE33 support and H616 enablement in the mixer. --- drivers/gpu/drm/sun4i/sun8i_mixer.c | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/drivers/gpu/drm/sun4i/sun8i_mixer.c b/drivers/gpu/drm/sun4i/sun8i_mixer.c index 0d4695132dae..f774b693634d 100644 --- a/drivers/gpu/drm/sun4i/sun8i_mixer.c +++ b/drivers/gpu/drm/sun4i/sun8i_mixer.c @@ -799,6 +799,17 @@ static const struct sun8i_mixer_cfg sun50i_h6_mixer0_cfg = { .vi_num = 1, }; +static const struct sun8i_mixer_cfg sun50i_h616_mixer0_cfg = { + .ccsc = CCSC_MIXER0_LAYOUT, + .de_type = sun8i_mixer_de33, + .mod_rate = 600000000, + .scaler_mask = 0xf, + .scanline_yuv = 4096, + .ui_num = 3, + .vi_num = 1, + .map = {0, 6, 7, 8}, +}; + static const struct of_device_id sun8i_mixer_of_table[] = { { .compatible = "allwinner,sun8i-a83t-de2-mixer-0", @@ -844,6 +855,10 @@ static const struct of_device_id sun8i_mixer_of_table[] = { .compatible = "allwinner,sun50i-h6-de3-mixer-0", .data = &sun50i_h6_mixer0_cfg, }, + { + .compatible = "allwinner,sun50i-h616-de33-mixer-0", + .data = &sun50i_h616_mixer0_cfg, + }, { } }; MODULE_DEVICE_TABLE(of, sun8i_mixer_of_table); From patchwork Wed May 7 20:19:33 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Chris Morgan X-Patchwork-Id: 1713 Received: from mail-ot1-f43.google.com (mail-ot1-f43.google.com [209.85.210.43]) (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 4BBCB28ECDB for ; Wed, 7 May 2025 20:22:39 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.210.43 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1746649360; cv=none; b=fN2TNGhzU79G4G7yyhJsRtWeYv9AfCPS4F5YZF+ham700dNCCZoWlSBY2pif3Bs+hKM+j4RWEgAlmuLPhidhmWNYczTbG8tPpF3bTyhIWMmnpZfDG+96bbyw7KHuLCSIUA7Gc5DWlIwPardnpqLtRrXyu6zPTCYDY8lqxRvrT/Q= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1746649360; c=relaxed/simple; bh=PMsn3/Ay9JxV3iOA8EPMcvBM4yoVvPyA5PJfG6KjXOc=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=HLYqUGx16S5wK0w0+KNyw0i5TsAFu7+HLvi46Lbw1n8K0LQQmIWy3KSfFgx4JxYLFQInsMxpDWBeI6OCnzxG5tO3hN/wlCH0waURKrmPdT6lApQU2jWCVUy2DTIyLT1fYBOZfIU+sbQiREsbFiEcMVYUfmJ+gDs0KCVOE+LfM5o= 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=WMsoz5v9; arc=none smtp.client-ip=209.85.210.43 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 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="WMsoz5v9" Received: by mail-ot1-f43.google.com with SMTP id 46e09a7af769-72c7336ed99so69121a34.0 for ; Wed, 07 May 2025 13:22:39 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1746649358; x=1747254158; 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; bh=8mIGvJTufAsSoppe4rs7rmEWLnBgi1PHvYLOO81jKxw=; b=WMsoz5v9acPaCPoK1s8Q/Wp83lHtKvAxXhevLJ8l1FI1H4ZRSe2UQq+CbmL0rmicNc 8cLT/M+rvE2s/syTKHnuTCdeZ8XNn40682/ZRVYHKAKj7PU5+ADUIGqGuElsPT23S2OU 1AaZf8Ws+/Tm7PfoMPauUGW/2hDVEM5axzhixydAdnDQX7GOgEV85JdURj6jsJjxat8R pYbwEQbkagEeaRqoCjFtLtwWGAdadgn/yQn2FEzKPjoKYo2/M1zOPQ41qPDZnffcVwoN m77ygiq+C9Sh0VnGKwYKrV4WZ4tHNf5BbT+6wWNzVHuI3gLJLQI4ccPltAMEhpNUBYkQ hJ7w== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1746649358; x=1747254158; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=8mIGvJTufAsSoppe4rs7rmEWLnBgi1PHvYLOO81jKxw=; b=YnzuY/uBxPgk0tsB/zi0GZAQtypHWvXl0xvoETjgRUYQugu9nI3cuHi89HbrC6sHnY sNUpLXJwfUCxR/e9CKvetmCBYhj9K8wuP4ZmXcpBwAd3T89ojJLrWJqgiNK9gLSKKdGz dUSNCKeKMUQDkYhL2yWX0zIYqoM5sGg5PuDBh0XqE9An1qerLXlIOBlBnCn2kqy6OZtQ sgNpri6smQ65E1U7HN3K/vSGYSfCTtb2wgEDgdBRIgCXjGuhGBvmDnlcpuSrmu/KRrDj qBBZOhVYSn+yiTvX4hfek8D2JNoNqEvC6NkaQm5LJ8Zzys/Kv07IuPw51K1bI+wjN925 7ESw== X-Gm-Message-State: AOJu0Yw+jjh48eCBmCh8Kp6xWclkA4s/s4z9mkIoI8wN1GYYb6vrzEN8 ZcsmUscoTqdZhHQUzkxebwk4X0R3BQ7VAAsaF8bhCz42Q9lwQ/z5hV5KbQ== X-Gm-Gg: ASbGncsghQIZGyMQNKnDjBB3k1dMFZrMCh0KbVMOnc221M81J77DX2Ph7AHciX5Tmkl fXq57j5z05vAv7TZ+dUak21DoIIx85StJiAImsasLy3Igk97y6gOiDDK/dsMSxe5WB7MTpiylc1 XuSracwT8gQSsC7Xxyufde64BwzdcivATqRui/0cSlX6kRVrfELZoT4oJIjIxSDRCKIxqnzrbdj bs9XQ0amszltMaOH6tDcrHt+fzkySNHdXWQMKA14GHW6FTAfsxiNDkl1R+mtKXvdttCEdy0boqc U4kysTFqgVVKh031Fwt0hrP72Ep0k6OvhkYvhu6JnHuD7CEsH9ywZA03dUr/ X-Google-Smtp-Source: AGHT+IHcSoKFAVM889xXWDRRESTkmKZwmdTzBlBWvS9Mz85bqYtY6rkC9bb+3ND5pNYa+fTL+SOn3Q== X-Received: by 2002:a05:6830:d83:b0:72b:8a8b:e032 with SMTP id 46e09a7af769-73210a6eae5mr3335106a34.2.1746649358256; Wed, 07 May 2025 13:22:38 -0700 (PDT) Received: from localhost.localdomain ([2600:1700:fb0:1bcf:e46c:46ba:cecd:a52c]) by smtp.gmail.com with ESMTPSA id 46e09a7af769-732109df2dcsm725945a34.9.2025.05.07.13.22.37 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 07 May 2025 13:22:37 -0700 (PDT) From: Chris Morgan To: linux-sunxi@lists.linux.dev Cc: devicetree@vger.kernel.org, dri-devel@lists.freedesktop.org, ryan@testtoast.com, macromorgan@hotmail.com, p.zabel@pengutronix.de, tzimmermann@suse.de, maarten.lankhorst@linux.intel.com, simona@ffwll.ch, airlied@gmail.com, mripard@kernel.org, samuel@sholland.org, jernej.skrabec@gmail.com, wens@csie.org, conor+dt@kernel.org, krzk+dt@kernel.org, robh@kernel.org Subject: [PATCH V9 14/24] dt-bindings: allwinner: Add TCON_TOP and TCON_LCD clock/reset defines Date: Wed, 7 May 2025 15:19:33 -0500 Message-ID: <20250507201943.330111-15-macroalpha82@gmail.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20250507201943.330111-1-macroalpha82@gmail.com> References: <20250507201943.330111-1-macroalpha82@gmail.com> Precedence: bulk X-Mailing-List: linux-sunxi@lists.linux.dev List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Status: O From: Chris Morgan The Allwinner H700 exposes RGB and LVDS pins as well as a HDMI connector. This requires additional clocks for the TCON_TOP and clock and resets for the TCON_LCD LCD controllers to be defined as per the T507 datasheet (which shares the same die). Signed-off-by: Ryan Walklin Signed-off-by: Chris Morgan --- include/dt-bindings/clock/sun8i-tcon-top.h | 2 ++ 1 file changed, 2 insertions(+) diff --git a/include/dt-bindings/clock/sun8i-tcon-top.h b/include/dt-bindings/clock/sun8i-tcon-top.h index 25164d767835..2a12d047d2e1 100644 --- a/include/dt-bindings/clock/sun8i-tcon-top.h +++ b/include/dt-bindings/clock/sun8i-tcon-top.h @@ -7,5 +7,7 @@ #define CLK_TCON_TOP_TV0 0 #define CLK_TCON_TOP_TV1 1 #define CLK_TCON_TOP_DSI 2 +#define CLK_TCON_TOP_LCD0 3 +#define CLK_TCON_TOP_LCD1 4 #endif /* _DT_BINDINGS_CLOCK_SUN8I_TCON_TOP_H_ */ From patchwork Wed May 7 20:19:34 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Chris Morgan X-Patchwork-Id: 1711 Received: from mail-ot1-f51.google.com (mail-ot1-f51.google.com [209.85.210.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 1091528ECFF for ; Wed, 7 May 2025 20:22:39 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.210.51 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1746649361; cv=none; b=q2Owv8O6g8oK3rrxpoGMP05Fyszsn04hW55NNnLvZDU5vOE7cipoJPpNQyFSW7vd0ECzxOGWMjqvIU5Aaxqu2JIObSc4S1XVJLK5M1J86pTBdq9oaUflO9VlR8MUpZWaQ3ZhdwHMEgFwUbR6sc74rLXZcl2M4gofCzv+js3/kjU= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1746649361; c=relaxed/simple; bh=2yDnuvqnsMKb5v7FhJuaXMCece+lX8rcJxBH6QMUn9Q=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=cpV9HJHjHuVzLR5sw5ksP2aRs1AAerVL2jtJ9rxlhc7LtPhm/2q+VA0Gm5U5P9atxlfJJHfb06wQAbSZyVcU5Vmem6tAisaoHSVOGoZdkTHx6DrHv+PAVRk7lnXNvvY9mPUoLIQngPkvmk18YBSMxEL9iOfdTMzEzpAItDGlAVQ= 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=QUTwJT4g; arc=none smtp.client-ip=209.85.210.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 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="QUTwJT4g" Received: by mail-ot1-f51.google.com with SMTP id 46e09a7af769-72ec4634414so161089a34.1 for ; Wed, 07 May 2025 13:22:39 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1746649359; x=1747254159; 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; bh=id9bhPaJz6moPdglTk4FYXKc5tAiLx4T44z9LJHeLkM=; b=QUTwJT4gFRZFN1t4zNVNdJ032zmrQ32MQ4a1V7QLo2Dz1uAQB3xYowSAtu+tw+RA76 +nZNcxqvSlpAMgioTulPW8l4jMPTRmDRB6cgnDU+/dlVlqcx9zJtDm+XMdab1ifQ1EQO Wcqie4wDXBn0djllnhWMfvHcXEKAM25uWhRo5e5p5nV3xIgmExBC2C3gF/DgP0Ei+yc2 VtZmUt5swxCY5AxNzb/FsxUa+uKfJjwtoP35dnbS6aImIy+1igPD0vy4tunqZwd3R/4B zhdaKEZz/syKdtKsJe9CA2+Y5nhKqCu00Jeihk7uycPCjh9Q2aTfuIboi9vBSRvWQpBV sDYA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1746649359; x=1747254159; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=id9bhPaJz6moPdglTk4FYXKc5tAiLx4T44z9LJHeLkM=; b=jxLxYhHTjn1MzgE+3F8YwqNe4RwaZ60iDHcpWlxu6RGncLwdaqP6YQb4EjfcfJ1ofI 8kJXFsg1i7r0Qv9AWejw60XRafx0D/alb6GfjmTqqrYsKUshm94/5vuEyXPaoNT6WYcs /Dh/iHhunE1UUauH48tihcDAaZuikgj5nyP6M4NOlNd9udZwMWVJHmAbhuDsp4OCskKx 1onrZEz+f8ntf2q2hXXESXEi57L7aYYouCmKjMAc62VJp98P2YjVgluhQ/nai2GQxY2z +arf0t/m+TqP3+su/LcSqItWfP0oKDA/QZFfeyys2loXQxq5veChKAiVfCTIvLw0Bn57 W15Q== X-Gm-Message-State: AOJu0YyBflIKi2/BeA6Uwk4G0DcfBc/a3v2RX3A5R79miJzhCd9vgXB0 ci8aUAAymnq9rZ3UkvrVhPRMV2/Vf9Ae+6sICvg0hwoRNIlCrL/VDj0Ucg== X-Gm-Gg: ASbGnctO4M67INRLJ5Aiet0hpHoI3TeoozisjIpq8apsaEHCfnyPWxmgqUM/cUcRnTX hH/ozV57CJFViYpknOEOVghLBiSDwTW8cxVLVcSmDuJ0PESlKyLWKnH2vgcfFRHsHQ2VGmz0VNG eI2/1l4Pv1Nm1oiKE8lghyxuHELB79mNvLUWjEGuArDae/J+SxsjlA5faeHfNB3dSIU71B98qtv EUjZC4r2i+B4suQAUMvZ44eW1kbDfS1RMBui6MJWwEh/Xq3Jm6QnlOb20LgmjDz3Kn85oDUJC0H fmha91b7d644tamIHwckKQfAvMSZX08pfPXZEL5Tr282bHsuRlqC61cpPVK1 X-Google-Smtp-Source: AGHT+IFO2FSa+xQWdLmtuKlKo0tEBUduiG8HDfdozWd6lG/VFdAHRJZVwS50QY1s0aePXNuu0vX5ng== X-Received: by 2002:a05:6830:418e:b0:72a:48d4:290b with SMTP id 46e09a7af769-73210b239a5mr3495379a34.26.1746649358947; Wed, 07 May 2025 13:22:38 -0700 (PDT) Received: from localhost.localdomain ([2600:1700:fb0:1bcf:e46c:46ba:cecd:a52c]) by smtp.gmail.com with ESMTPSA id 46e09a7af769-732109df2dcsm725945a34.9.2025.05.07.13.22.38 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 07 May 2025 13:22:38 -0700 (PDT) From: Chris Morgan To: linux-sunxi@lists.linux.dev Cc: devicetree@vger.kernel.org, dri-devel@lists.freedesktop.org, ryan@testtoast.com, macromorgan@hotmail.com, p.zabel@pengutronix.de, tzimmermann@suse.de, maarten.lankhorst@linux.intel.com, simona@ffwll.ch, airlied@gmail.com, mripard@kernel.org, samuel@sholland.org, jernej.skrabec@gmail.com, wens@csie.org, conor+dt@kernel.org, krzk+dt@kernel.org, robh@kernel.org Subject: [PATCH V9 15/24] dt-bindings: display: sun4i: Add compatible strings for H616 DE Date: Wed, 7 May 2025 15:19:34 -0500 Message-ID: <20250507201943.330111-16-macroalpha82@gmail.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20250507201943.330111-1-macroalpha82@gmail.com> References: <20250507201943.330111-1-macroalpha82@gmail.com> Precedence: bulk X-Mailing-List: linux-sunxi@lists.linux.dev List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Status: O From: Chris Morgan Add compatible strings for allwinner,sun50i-h616-display-engine. The device is functionally identical to the allwinner,sun50i-h6-display-engine. Signed-off-by: Chris Morgan --- .../allwinner,sun4i-a10-display-engine.yaml | 39 +++++++++++-------- 1 file changed, 22 insertions(+), 17 deletions(-) diff --git a/Documentation/devicetree/bindings/display/allwinner,sun4i-a10-display-engine.yaml b/Documentation/devicetree/bindings/display/allwinner,sun4i-a10-display-engine.yaml index e6088f379f70..81a173b41534 100644 --- a/Documentation/devicetree/bindings/display/allwinner,sun4i-a10-display-engine.yaml +++ b/Documentation/devicetree/bindings/display/allwinner,sun4i-a10-display-engine.yaml @@ -48,23 +48,28 @@ description: | properties: compatible: - enum: - - allwinner,sun4i-a10-display-engine - - allwinner,sun5i-a10s-display-engine - - allwinner,sun5i-a13-display-engine - - allwinner,sun6i-a31-display-engine - - allwinner,sun6i-a31s-display-engine - - allwinner,sun7i-a20-display-engine - - allwinner,sun8i-a23-display-engine - - allwinner,sun8i-a33-display-engine - - allwinner,sun8i-a83t-display-engine - - allwinner,sun8i-h3-display-engine - - allwinner,sun8i-r40-display-engine - - allwinner,sun8i-v3s-display-engine - - allwinner,sun9i-a80-display-engine - - allwinner,sun20i-d1-display-engine - - allwinner,sun50i-a64-display-engine - - allwinner,sun50i-h6-display-engine + oneOf: + - enum: + - allwinner,sun4i-a10-display-engine + - allwinner,sun5i-a10s-display-engine + - allwinner,sun5i-a13-display-engine + - allwinner,sun6i-a31-display-engine + - allwinner,sun6i-a31s-display-engine + - allwinner,sun7i-a20-display-engine + - allwinner,sun8i-a23-display-engine + - allwinner,sun8i-a33-display-engine + - allwinner,sun8i-a83t-display-engine + - allwinner,sun8i-h3-display-engine + - allwinner,sun8i-r40-display-engine + - allwinner,sun8i-v3s-display-engine + - allwinner,sun9i-a80-display-engine + - allwinner,sun20i-d1-display-engine + - allwinner,sun50i-a64-display-engine + - allwinner,sun50i-h6-display-engine + - items: + - enum: + - allwinner,sun50i-h616-display-engine + - const: allwinner,sun50i-h6-display-engine allwinner,pipelines: $ref: /schemas/types.yaml#/definitions/phandle-array From patchwork Wed May 7 20:19:35 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Chris Morgan X-Patchwork-Id: 1709 Received: from mail-ot1-f44.google.com (mail-ot1-f44.google.com [209.85.210.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 B9B1D28ECC6 for ; Wed, 7 May 2025 20:22:40 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.210.44 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1746649363; cv=none; b=K7xCWMhTU9UZQQmnkOzYfUrsnYCb0FJo3Y5D7WY64GermpUbgHKhuz7sn2ct9ufH0cOW9Fv2iIGbgc2hIlZ8Lp8sm6p4+kLZMZRpIJEROarwp+Rf4bSjSP0vPNcIFpeAj6uGKlTp6LmZXmgmE2IB/FoWkqGfmbJIbJeniJNFYy8= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1746649363; c=relaxed/simple; bh=CZWjxue5DhLhHRyqfTbQekPw1Iq5iA8TiEXNw3OsltA=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=VkjxCgvMJowYGJPEZthIl3t28Vh7mBZyy0CiPGRaJPWnPCP+YuOSisJe8Hf9tebjesZj2ettAvni0c2myDwhcfWiJumeSAME2ZzEgy8cc8mFkCGd++5EfWL5sm3uZiDBG1BnGK9kwNL+1bhWCRLpa6LiLERCd73fVHC0vNffR9Y= 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=XhVpuGir; arc=none smtp.client-ip=209.85.210.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 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="XhVpuGir" Received: by mail-ot1-f44.google.com with SMTP id 46e09a7af769-72ecc0eeb8bso101417a34.0 for ; Wed, 07 May 2025 13:22:40 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1746649360; x=1747254160; 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; bh=RPj3FTwSrOy9EqQq/nrdWdKgDoZV00cUqzATiabesYI=; b=XhVpuGirg1sN/xKJjzbvyFCuY+RVc9RyseGL4TvyTleMJyQROxxNVcIzAhUlYyEhTV ovg+wEMXl3HD4Z7P6bk1lHswlYc9N6BWfypSr80/uFt9DGZghypzrx0YKR5GmupXcieL BVQhihBYyq1chE48Gi7YbCRiwSHXf1X7LuP/hjOAa7w6lZyHYLUJXVSHjd/Git1ZN/5w Sqe68JDvooykcOxm95NIF8TYPvgUPDxHCWybff8gw0o8Xto57fzqGn9yGna2NvGTUwzx mmXAijWSQN2AkKO5kiBTMSHIlldPGw4EfLYC+DYQoW8p/ko5VBYzVB6MfOenYKBoaWWa zTHg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1746649360; x=1747254160; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=RPj3FTwSrOy9EqQq/nrdWdKgDoZV00cUqzATiabesYI=; b=q3brOAsqeAQNcvR94/RpwW5uRT+UwQ+DjAne7asHozjkQHn9j+my6nbqAZKV91Eg37 zWOJhTbMyd7mp9ye4b1E7/Pe5GwyDp9xqfqyM+xZYoDzhPgGebiLalJmbeADzJicvfDf DWAfyb8m9ozxciid3STayuVKGBmPppvCpM71Jv+uSAzzoHcY3enxs2KpHNrPb5AdhC8e qrmtejzL8ZONoTkIKhNWfuyArxW5HFxkhT3TdQ3vrK7AhlxrhHrpMzHBeBU0tbI8FxNU pFb9BqXVO2GvWZ2EQlOwsV+07rdSx8C1rlS3V90p0ajzyHPXbhefB3TqhHGXaZ190pER hFDA== X-Gm-Message-State: AOJu0Yzmc7Tk1EUAo1W9hQf8S8wQ4Ds8q6dbOWnQSfUid2yewrx0xdx/ d7zf28MnPKuWLfupL+hhKj9aQFOw356n+m+YNNfQ5IX/PnxrC5YquwvMPA== X-Gm-Gg: ASbGncvTpP323jHQ5lGg87TX4exl/RaQzky3fJHKH9JqgcJnoEGWPLpdQAykGZjpFTZ 9vCdmsLgDpJrl7PHne0ffJ157I1gGoMRROrPdJyEf4WOE3Nz+ZSTVr7NyBtyuIIlzHWNUXUlUIZ PVia9ADrhlFZ9EpMlhKNqbDkfFl+Gh0KW15PWCi7GjgyulrIiJTuBM283DWknnE8I/7zwocHsEX +WrwFO7eZk0DPv1RCkaLYJzJPbQB8PQBdS9DLsRo0nFnvNRQ90IzTgHaqLnnCBxjmSSfT8cN+L7 e1HZH5lCaciuf9140sRyNte2nJxyhTs6rCdW9t90M8ybHJdKQJBSHIv0Lv0j X-Google-Smtp-Source: AGHT+IEQwmN+1OPKx+ExT0H0gstwaIAT4meGGbZXVI6b4Kwtw9G6/+vEj9eQFHV8s+c0s/9Df/IAFQ== X-Received: by 2002:a05:6830:6202:b0:72b:7cc8:422 with SMTP id 46e09a7af769-73210b15634mr3494887a34.20.1746649359658; Wed, 07 May 2025 13:22:39 -0700 (PDT) Received: from localhost.localdomain ([2600:1700:fb0:1bcf:e46c:46ba:cecd:a52c]) by smtp.gmail.com with ESMTPSA id 46e09a7af769-732109df2dcsm725945a34.9.2025.05.07.13.22.39 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 07 May 2025 13:22:39 -0700 (PDT) From: Chris Morgan To: linux-sunxi@lists.linux.dev Cc: devicetree@vger.kernel.org, dri-devel@lists.freedesktop.org, ryan@testtoast.com, macromorgan@hotmail.com, p.zabel@pengutronix.de, tzimmermann@suse.de, maarten.lankhorst@linux.intel.com, simona@ffwll.ch, airlied@gmail.com, mripard@kernel.org, samuel@sholland.org, jernej.skrabec@gmail.com, wens@csie.org, conor+dt@kernel.org, krzk+dt@kernel.org, robh@kernel.org Subject: [PATCH V9 16/24] dt-bindings: display: sun4i: Add compatible strings for H616 TCON TOP Date: Wed, 7 May 2025 15:19:35 -0500 Message-ID: <20250507201943.330111-17-macroalpha82@gmail.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20250507201943.330111-1-macroalpha82@gmail.com> References: <20250507201943.330111-1-macroalpha82@gmail.com> Precedence: bulk X-Mailing-List: linux-sunxi@lists.linux.dev List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Status: O From: Chris Morgan Add compatible string for allwinner,sun50i-h616-tcon-top with a fallback string of allwinner,sun50i-h6-tcon-top. Signed-off-by: Chris Morgan --- .../display/allwinner,sun8i-r40-tcon-top.yaml | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) diff --git a/Documentation/devicetree/bindings/display/allwinner,sun8i-r40-tcon-top.yaml b/Documentation/devicetree/bindings/display/allwinner,sun8i-r40-tcon-top.yaml index 7d849c4095a3..80f1e49f5b7a 100644 --- a/Documentation/devicetree/bindings/display/allwinner,sun8i-r40-tcon-top.yaml +++ b/Documentation/devicetree/bindings/display/allwinner,sun8i-r40-tcon-top.yaml @@ -39,10 +39,15 @@ properties: const: 1 compatible: - enum: - - allwinner,sun8i-r40-tcon-top - - allwinner,sun20i-d1-tcon-top - - allwinner,sun50i-h6-tcon-top + oneOf: + - enum: + - allwinner,sun8i-r40-tcon-top + - allwinner,sun20i-d1-tcon-top + - allwinner,sun50i-h6-tcon-top + - items: + - enum: + - allwinner,sun50i-h616-tcon-top + - const: allwinner,sun50i-h6-tcon-top reg: maxItems: 1 From patchwork Wed May 7 20:19:36 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Chris Morgan X-Patchwork-Id: 1710 Received: from mail-ot1-f50.google.com (mail-ot1-f50.google.com [209.85.210.50]) (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 6C30528ECE2 for ; Wed, 7 May 2025 20:22:41 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.210.50 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1746649362; cv=none; b=Mvy9KBCgKlqXKM8zzwPq12MAip2p0PZuS2KeoAEilzBuyYKQK0oe6X/vBffu53jGptN7UXzAHkgS/ucZadRLHmDS66txG4oXseQlgvDw9V3wa83l8hLw+gQWVYMyLPVgsC/QkedwWU71zlcR4nN73NefYg2E3ib9xgc+UfNwKzY= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1746649362; c=relaxed/simple; bh=WJi6HvyjJdNcHB0v4nqr7RZCPhse/6XW11/HE1nhANg=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=GQ4i59oJoLXCYXuNIjM8ua51Tu/Y5DKUFRVysi0BZrSbtzzfAIJoQtx287WhPNA1b1y0d/YtYRl2UDSxCSBlpn1+fs13AZaRqp1fSM4h+Xxifb+F0crzinaGjB4/af95+G5x6svInABgsj8svITvxtBTmyC2U0O4Bwmn6D6E+dg= 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=EAgYA5ro; arc=none smtp.client-ip=209.85.210.50 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 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="EAgYA5ro" Received: by mail-ot1-f50.google.com with SMTP id 46e09a7af769-72c47631b4cso135859a34.1 for ; Wed, 07 May 2025 13:22:41 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1746649360; x=1747254160; 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; bh=CStNfNX+Qe9CAKa9kWGR0bBTgEey43qr4WYZEcf8hj0=; b=EAgYA5roohaoF8a5f176gG5A68gue/pZPxN/29j75K/lTOIXnsC7ppgxOaznYSR1oz vZSCCK6tOdJvdgy3HRuM3V0R6Dby9S+K+TJbryqGaXhLD+jTetqsqcLTa83Inh8DJYi3 fNCYuNkMuqoz/2Xc5fbMjQBRrQa0OC47Tm1LT520NP27XhEb21FiACqSv7bufabOhPML E29ub6GPpOvsH5sC5VXgskr9Zcpwf8ACCvvp3ZdZTWB0N1BXGVXPV22HOLk5af8OdSfq mQ6rOEWcYWEb0iclclPnyhHUKBTYlrXRWT4epHmdngMM2X92E2hSvV//ooIZ+2oZ52zm o+Jw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1746649360; x=1747254160; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=CStNfNX+Qe9CAKa9kWGR0bBTgEey43qr4WYZEcf8hj0=; b=lGyxu74Gt5ndj9HvqdYzCp9Kzefcp3KiNQB4624WsGHV7uxxvF05AZm42O2gkIQUme CNvmqcON6Jj4icwV0d7siMWNXFFzgYWL3Qyf0WnH248nRrW3bV8QXQb5B3p8tzwM0OEP 9NSYlkImDopTlnbY8V9Ijm9IlgZeGloui/O1PZDQKT19d0Uuei1aPiKlH2r651CZFSpQ IMazBG4ZSKR3/Do5W988PfrsJd4eJm1A7zxz4WsZyQC+vCyo7CvwCZ56nWcCbZPu9uX1 Tmg7e+JIpgtRleTILoJ/TMjWA59uxgVxcowl9Sk42i8YUwfpYBvppM2ffzvQoFpBRL8q jS5g== X-Gm-Message-State: AOJu0YyFvldCWUSW5ubCRMQ5871lygPSEadgckOWP3dIBjYMY56ttSiT AVQJXNvI/NffrV/CN1o9r8iUxo8aPAFCMwhNgWt+Art6XjGlU3bApbGs7w== X-Gm-Gg: ASbGncvTkxJlsnDmtZLISB/jNGMu9DGRxm+LCJoOhBa2m4Z0E46mIMjrgdQunORkFSg d7pX1z4kW+68QhwuFGZsseUhdMmvrj8/97o3u8uxqIO+upRShKW1y03FHjWO1I5oXSnvhMktHvs JQWZ4ofQfGPGky4C9aFbPzzxsEkva8BntsnBWgz62QPZWNoKLRv7Y6irrRO1OQpJjg2ISW99pqs x0QOPDPt91xs3kC/9t+5CNVPnEOAPzyccBx+klWwjCOrnf0JUaBaRqw3YSb4FuI82yuQgeNFVyd degGMKVHyjSRK2odhTlCStg5eYA842q9kJpgJxv0+Cd++ZqQBFnQfr70ISRS X-Google-Smtp-Source: AGHT+IHU/L1zNpnFPbQN5H7v31jrky1fO0rvKzweVlqImDkjzQ6zRsRlAWp/aFFj145iJs3SabcqmA== X-Received: by 2002:a05:6830:4410:b0:72b:9cc7:25c4 with SMTP id 46e09a7af769-7321c9bc300mr462737a34.22.1746649360382; Wed, 07 May 2025 13:22:40 -0700 (PDT) Received: from localhost.localdomain ([2600:1700:fb0:1bcf:e46c:46ba:cecd:a52c]) by smtp.gmail.com with ESMTPSA id 46e09a7af769-732109df2dcsm725945a34.9.2025.05.07.13.22.39 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 07 May 2025 13:22:40 -0700 (PDT) From: Chris Morgan To: linux-sunxi@lists.linux.dev Cc: devicetree@vger.kernel.org, dri-devel@lists.freedesktop.org, ryan@testtoast.com, macromorgan@hotmail.com, p.zabel@pengutronix.de, tzimmermann@suse.de, maarten.lankhorst@linux.intel.com, simona@ffwll.ch, airlied@gmail.com, mripard@kernel.org, samuel@sholland.org, jernej.skrabec@gmail.com, wens@csie.org, conor+dt@kernel.org, krzk+dt@kernel.org, robh@kernel.org Subject: [PATCH V9 17/24] dt-bindings: sram: sunxi-sram: Add H616 SRAM C compatible Date: Wed, 7 May 2025 15:19:36 -0500 Message-ID: <20250507201943.330111-18-macroalpha82@gmail.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20250507201943.330111-1-macroalpha82@gmail.com> References: <20250507201943.330111-1-macroalpha82@gmail.com> Precedence: bulk X-Mailing-List: linux-sunxi@lists.linux.dev List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Status: O From: Chris Morgan Add a compatible string for the H616 SRAM C region which is functionally similar to the A64 SRAM C region. Signed-off-by: Chris Morgan --- .../bindings/sram/allwinner,sun4i-a10-system-control.yaml | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/Documentation/devicetree/bindings/sram/allwinner,sun4i-a10-system-control.yaml b/Documentation/devicetree/bindings/sram/allwinner,sun4i-a10-system-control.yaml index a7236f7db4ec..976d3320c803 100644 --- a/Documentation/devicetree/bindings/sram/allwinner,sun4i-a10-system-control.yaml +++ b/Documentation/devicetree/bindings/sram/allwinner,sun4i-a10-system-control.yaml @@ -102,7 +102,9 @@ patternProperties: - allwinner,sun7i-a20-sram-d - const: allwinner,sun4i-a10-sram-d - items: - - const: allwinner,sun50i-h6-sram-c + - enum: + - allwinner,sun50i-h6-sram-c + - allwinner,sun50i-h616-sram-c - const: allwinner,sun50i-a64-sram-c required: From patchwork Wed May 7 20:19:37 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Chris Morgan X-Patchwork-Id: 1708 Received: from mail-ot1-f46.google.com (mail-ot1-f46.google.com [209.85.210.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 4B23228ECFF for ; Wed, 7 May 2025 20:22:42 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.210.46 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1746649363; cv=none; b=CcidtldIoAXfnn3N6ACew5lopTkW7dinWkPWkFhVHYIVBe4JMnHUs9B7vJfRRSHzNrC8wjXfHKBV+GGqGntwrB1MxT7IPZ3pyDJuD26466YA4EZANqEGnNoei/eA8qjQGP9uupJRScp7faKbB6Opi8XWVAc+EMF48m59NnP4h8E= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1746649363; c=relaxed/simple; bh=bdDxkirV7/X304PhJ/J3+teqYXZovdfE+ye6RKbN0xg=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=OmR1FcCSn1bhE4U4vzqQwjpcLsSYtqUXvlzAmkpoqZUwfbNGZahOZSVTL+Yj1OaVBgA+okfHWf7YJ2/VDEi9cLPrSc3lb0JgHz0BAdZd67tc7l2OQ4KhUxl6AXd9MZtPAHGZnusaXhLclXu32i399kygIW+OVEKSalEoFd964UE= 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=cCazeMsm; arc=none smtp.client-ip=209.85.210.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 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="cCazeMsm" Received: by mail-ot1-f46.google.com with SMTP id 46e09a7af769-72c0b4a038fso168429a34.0 for ; Wed, 07 May 2025 13:22:42 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1746649361; x=1747254161; 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; bh=l94voh9nFi8NC+FZhT6bHJgs5D7hhrZlzdK4jTqxAoo=; b=cCazeMsm7xHWnLfuXwtFMGM16Uiz1Sa7Rf161knY3EwLScyyX7c1KKVYuA38ZHgG10 +rDSsd1mEH5EA/S7wUYKYYCSDo4XVSC0O5yKK9tO4TdyrGm20t4ZSAXfqiZRxzE474zG I4JsW51g2psJ1RQM5mcR6hIULKBSVQ6o+WDibCjxWdE4S+MEsnAToUxrSTpBhqv+dLS/ Ydn6EDQMD403Xk36ThCwMq6xcxbMKlg59I+3+25tiTE/h++Ok+FvLOQP6TVMY4hQEYLe gWYswl9DptjPOMbVj4WU3oiUPKbaXyiTlb4yB7Uy/GOntbijokS8BtsB3G9NV0+/qXoL 7wCw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1746649361; x=1747254161; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=l94voh9nFi8NC+FZhT6bHJgs5D7hhrZlzdK4jTqxAoo=; b=sPtgxWRpHIl1lXK/tJPRZUQt4u7/xC/kOBBgM7KVVva9DNoLYciaynS3Y9EtLi/I96 K2sRWHUgMDTmcJXn9tPTmudMB20RGsT6jsPiBZRj2ZkHzbloCFeNIQ12AIZHFz/nDsOp zjNOL32VODEiqGGTfSne25TQeMPa1YGG/ydE/xl2yTt+8XxQMI9/yStTcRZ7hDDfeQHQ LSbhPSxey6OF/xwn/qhv7zm4JaTjmnc3p4Jfjs8JGdhKPXGp2Jbi2QZJit57Xm6Pu7ib sFYyPfwRl3VwGBB4B50X9Y5FhXDksFoLuaBgpk8nBEVkNY6VWQYPsUVs6pGLQBwTaoxM bHIw== X-Gm-Message-State: AOJu0YxARlJz3fWSUZsiVF4NYATR77cTrUkg5a89DgSA4k3IJRSaQCjQ +qeeJD7XZMJdKPtnKS65AGflrzfkhGDbP2NbtbS/rjXtxjL8wfuYGS32Ng== X-Gm-Gg: ASbGncuaZKQw+fgG3KrioxB+WdiruaG2PXJAkxICmxd92orFy6NSJlBNgUsqIkeiYSp qQdwSXWVk8MLxOjhwlVZ+fBJWAhtvfvKOsE14lROh5VSvIQFyKcSJNyZirzYAssnYVeckeGslOg AIJmMx9nMW38aNGfuyCh9gpp3pkU8bCoMl4anTVWGGVYh7fatY35obHl+S8rJHju4FXpOZlZTBJ tKW5sK2SEXEcNgHO8fUQ2BniPgulgXOlVsdEqURdZRvWOFZCJkdtiDfhPjofObqT3jUjj/B75WQ 92/eO1G1+Qln3m86AXh85zuf9NMVh9gH+z7HBNkm6hAQNfzAr13tR9OWWofK X-Google-Smtp-Source: AGHT+IEVQSwtup8hGlcNXSdOKoaKgaTojdmH8y9v80kzgTfNqzsMyv7A4MwSEPxNN6DhO6wxF1WRAg== X-Received: by 2002:a05:6830:418e:b0:72a:48d4:290b with SMTP id 46e09a7af769-73210b239a5mr3495482a34.26.1746649361106; Wed, 07 May 2025 13:22:41 -0700 (PDT) Received: from localhost.localdomain ([2600:1700:fb0:1bcf:e46c:46ba:cecd:a52c]) by smtp.gmail.com with ESMTPSA id 46e09a7af769-732109df2dcsm725945a34.9.2025.05.07.13.22.40 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 07 May 2025 13:22:40 -0700 (PDT) From: Chris Morgan To: linux-sunxi@lists.linux.dev Cc: devicetree@vger.kernel.org, dri-devel@lists.freedesktop.org, ryan@testtoast.com, macromorgan@hotmail.com, p.zabel@pengutronix.de, tzimmermann@suse.de, maarten.lankhorst@linux.intel.com, simona@ffwll.ch, airlied@gmail.com, mripard@kernel.org, samuel@sholland.org, jernej.skrabec@gmail.com, wens@csie.org, conor+dt@kernel.org, krzk+dt@kernel.org, robh@kernel.org Subject: [PATCH V9 18/24] dt-bindings: display: Add R40 and H616 display engine compatibles Date: Wed, 7 May 2025 15:19:37 -0500 Message-ID: <20250507201943.330111-19-macroalpha82@gmail.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20250507201943.330111-1-macroalpha82@gmail.com> References: <20250507201943.330111-1-macroalpha82@gmail.com> Precedence: bulk X-Mailing-List: linux-sunxi@lists.linux.dev List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Status: O From: Chris Morgan Add display engine compatible for the R40 LCD controller, and for the H616 TV and LCD controller which is functionally identical to the R40. Signed-off-by: Chris Morgan --- .../bindings/display/allwinner,sun4i-a10-tcon.yaml | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/Documentation/devicetree/bindings/display/allwinner,sun4i-a10-tcon.yaml b/Documentation/devicetree/bindings/display/allwinner,sun4i-a10-tcon.yaml index 724d93b9193b..caed517c68de 100644 --- a/Documentation/devicetree/bindings/display/allwinner,sun4i-a10-tcon.yaml +++ b/Documentation/devicetree/bindings/display/allwinner,sun4i-a10-tcon.yaml @@ -29,6 +29,7 @@ properties: - const: allwinner,sun8i-a33-tcon - const: allwinner,sun8i-a83t-tcon-lcd - const: allwinner,sun8i-a83t-tcon-tv + - const: allwinner,sun8i-r40-tcon-lcd - const: allwinner,sun8i-r40-tcon-tv - const: allwinner,sun8i-v3s-tcon - const: allwinner,sun9i-a80-tcon-lcd @@ -53,9 +54,15 @@ properties: - allwinner,sun50i-a64-tcon-tv - const: allwinner,sun8i-a83t-tcon-tv + - items: + - enum: + - allwinner,sun50i-h616-tcon-lcd + - const: allwinner,sun8i-r40-tcon-lcd + - items: - enum: - allwinner,sun50i-h6-tcon-tv + - allwinner,sun50i-h616-tcon-tv - const: allwinner,sun8i-r40-tcon-tv reg: @@ -231,6 +238,7 @@ allOf: contains: enum: - allwinner,sun8i-a83t-tcon-lcd + - allwinner,sun8i-r40-tcon-lcd - allwinner,sun8i-v3s-tcon - allwinner,sun9i-a80-tcon-lcd - allwinner,sun20i-d1-tcon-lcd @@ -280,6 +288,7 @@ allOf: - allwinner,sun9i-a80-tcon-lcd - allwinner,sun4i-a10-tcon - allwinner,sun8i-a83t-tcon-lcd + - allwinner,sun8i-r40-tcon-lcd - allwinner,sun20i-d1-tcon-lcd then: @@ -297,6 +306,7 @@ allOf: - allwinner,sun8i-a23-tcon - allwinner,sun8i-a33-tcon - allwinner,sun8i-a83t-tcon-lcd + - allwinner,sun8i-r40-tcon-lcd - allwinner,sun20i-d1-tcon-lcd then: From patchwork Wed May 7 20:19:38 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Chris Morgan X-Patchwork-Id: 1707 Received: from mail-ot1-f42.google.com (mail-ot1-f42.google.com [209.85.210.42]) (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 0657D28D83A for ; Wed, 7 May 2025 20:22:42 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.210.42 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1746649364; cv=none; b=J3A3lL7lIlqwZqQaPeQNdkeJpMgrcdhKv86cLa3BORbbN0SK4cD7SmULrB4JzUT8VfPJ6la9SxnK3a0ia73uQ7D4n3z/qEt1E0Y2FUZEF9q8EqGngCf31/sd7s1cjtyMwZg+ml+bGpow3d3IFKYxm3p+ph+Tzct27RciOjbDHU4= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1746649364; c=relaxed/simple; bh=105MDarhqJaX0H3J6r3L38bq+RTGOwx1haSXsEHBquQ=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=g6MyHDz9fXG44ae0T7NJYklRYUN1+Eyugpl1EiDK1uMK9fI+ZI/28MKMyjmJeNAt3x/SkF6c96vSGLVKmVLu7uvc1VANqkk+6lcmL2fGok/H7T0pF2F0z8G21/WyM6ju1TZc1FNI6UXi64u6YBZjTy6oC5JpSiRsLJJG+4hR5UQ= 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=ZpwNiIOs; arc=none smtp.client-ip=209.85.210.42 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 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="ZpwNiIOs" Received: by mail-ot1-f42.google.com with SMTP id 46e09a7af769-7301c227512so140073a34.2 for ; Wed, 07 May 2025 13:22:42 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1746649362; x=1747254162; 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; bh=NyxyGKOhdeBoSewax9mMg22YYljQWuA4ui8yO4vMooE=; b=ZpwNiIOsVtcBlVK+4J3Cs7K2MLx1H/uHPLLDRpZbfg3YOpUyYtG1AsgWunRaYAgixL +eGFIK7P0qLnqiJwNOaMFjDQ9qA/heezyfmX62hdkjl1rGBUct0+N1qpHrBYsq/aDyZb NMxrtpd64AKhuU3fEQEIZ7owf8rafRDLVLmNWRvFOLZ0Q+8lwE/Q/LYC3zTKNGRiuh2H muxF2wXpuoZKfOaqCTyrKw5+m5BpmJykZfB9LL8DU2c3eKh60fhFuVVPgkIVMUapheZ2 +wOQXuQ03qPNj0yrL/IylFcNZTMgR4nLYG2hKxMjlehGfzN3IAnMwUm77LGqH7GtzeCq H8IA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1746649362; x=1747254162; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=NyxyGKOhdeBoSewax9mMg22YYljQWuA4ui8yO4vMooE=; b=B+ZHCQpRvwpTAiwFLGNuWbFbLq65pgGyayO75uooLLaHDx3xtfCvzxH1hiVwxCs0Nu D4dWinUCKzZd4jsADfwx/LBWZAChAa1E1sbG7qOpPqE3A6Z3hcgFWiy6xOQ/YNOINt7A CtpxEhXyISzGDiSAohAaZoJBcO2I3etQTSMcdQ5cDbPNp2nDGbB6iL7GtFZGqYavN8Me CGHPutbep2WFRilPvB1knofL/+kx08LQKgQZamEUMGFSLrv4KY5/yyaDiQNYgJak+nXt iBiNf9/LIwBOlHZRH5qhLtBnN8AcySLiLY8cQZpTB9gySueDhrHtDp33NVu4yIf4urBr u4EA== X-Gm-Message-State: AOJu0YzQF+InYFEtfnNK73I0VzUQBodtIk23HEjxFYqOqcFfLqAItKmV Wm5/M4N1dT1PrAvhg1sFDxNiCgAtWE/85sfdXRj+oXeepR3TBlF+mZytTw== X-Gm-Gg: ASbGncsTnNMxy1DmqudKqUAS8yqMlnA6bkyDetN/o9h2NZa77RzP70BoKxfIi8X0xv+ LX51prBFe3K+E7Dx0TRhWeOLhkkEv0RBnYFvLtGqgjXb9ndqPLUZkPNEzhSffP39gfF/dVSTDjF uUyHj8ddaeHHeQEfhoSBHy55m49Nb7Yg6Y6BXyzS+4AXV3t1DUxeUyyQEwymJspkqMEOj+J96nf R44TYSbvM50kNgV2YbPLd8Q2JOHG7DQLUw/eUO/VUAyJjpfusYltSXDljjxne/Bd4Y6gVQUYktM r+F7xvsosC60X9R3Lc2CkExeNSG6oZ4QvbKdr6HFhVS7xNFxRWRTg4siSh7HzKl2Tq2V74U= X-Google-Smtp-Source: AGHT+IHjxCL4ilnBbhzBiVvVv0rtl3RMnbLX5YjwRMZiBzGEtkE2X44D+/p+uvnENdOwMRWrcTLoQA== X-Received: by 2002:a05:6830:90b:b0:72a:d54:a780 with SMTP id 46e09a7af769-73210afb31dmr2552776a34.17.1746649361838; Wed, 07 May 2025 13:22:41 -0700 (PDT) Received: from localhost.localdomain ([2600:1700:fb0:1bcf:e46c:46ba:cecd:a52c]) by smtp.gmail.com with ESMTPSA id 46e09a7af769-732109df2dcsm725945a34.9.2025.05.07.13.22.41 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 07 May 2025 13:22:41 -0700 (PDT) From: Chris Morgan To: linux-sunxi@lists.linux.dev Cc: devicetree@vger.kernel.org, dri-devel@lists.freedesktop.org, ryan@testtoast.com, macromorgan@hotmail.com, p.zabel@pengutronix.de, tzimmermann@suse.de, maarten.lankhorst@linux.intel.com, simona@ffwll.ch, airlied@gmail.com, mripard@kernel.org, samuel@sholland.org, jernej.skrabec@gmail.com, wens@csie.org, conor+dt@kernel.org, krzk+dt@kernel.org, robh@kernel.org Subject: [PATCH V9 19/24] drm/sun4i: tcon: Add support for R40 LCD Date: Wed, 7 May 2025 15:19:38 -0500 Message-ID: <20250507201943.330111-20-macroalpha82@gmail.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20250507201943.330111-1-macroalpha82@gmail.com> References: <20250507201943.330111-1-macroalpha82@gmail.com> Precedence: bulk X-Mailing-List: linux-sunxi@lists.linux.dev List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Status: O From: Chris Morgan The Allwinner H616 and related SOCs have an LCD timing controller (TCON) which is compatible with the R40 SOC's controller and existing sun4i driver. The H616 does not expose this controller but the H700 and T507 (based on the same die) do. The controller supports LVDS and RGB output. Add quirks and compatible string to cover these SOCs. Signed-off-by: Jernej Skrabec Signed-off-by: Ryan Walklin Signed-off-by: Chris Morgan --- drivers/gpu/drm/sun4i/sun4i_tcon.c | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/drivers/gpu/drm/sun4i/sun4i_tcon.c b/drivers/gpu/drm/sun4i/sun4i_tcon.c index 960e83c8291d..8cc8488483ec 100644 --- a/drivers/gpu/drm/sun4i/sun4i_tcon.c +++ b/drivers/gpu/drm/sun4i/sun4i_tcon.c @@ -1514,6 +1514,14 @@ static const struct sun4i_tcon_quirks sun8i_a83t_tv_quirks = { .has_channel_1 = true, }; +static const struct sun4i_tcon_quirks sun8i_r40_lcd_quirks = { + .supports_lvds = true, + .has_channel_0 = true, + .set_mux = sun8i_r40_tcon_tv_set_mux, + .dclk_min_div = 1, + .setup_lvds_phy = sun6i_tcon_setup_lvds_phy, +}; + static const struct sun4i_tcon_quirks sun8i_r40_tv_quirks = { .has_channel_1 = true, .polarity_in_ch0 = true, @@ -1555,6 +1563,7 @@ const struct of_device_id sun4i_tcon_of_table[] = { { .compatible = "allwinner,sun8i-a33-tcon", .data = &sun8i_a33_quirks }, { .compatible = "allwinner,sun8i-a83t-tcon-lcd", .data = &sun8i_a83t_lcd_quirks }, { .compatible = "allwinner,sun8i-a83t-tcon-tv", .data = &sun8i_a83t_tv_quirks }, + { .compatible = "allwinner,sun8i-r40-tcon-lcd", .data = &sun8i_r40_lcd_quirks }, { .compatible = "allwinner,sun8i-r40-tcon-tv", .data = &sun8i_r40_tv_quirks }, { .compatible = "allwinner,sun8i-v3s-tcon", .data = &sun8i_v3s_quirks }, { .compatible = "allwinner,sun9i-a80-tcon-lcd", .data = &sun9i_a80_tcon_lcd_quirks }, From patchwork Wed May 7 20:19:39 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Chris Morgan X-Patchwork-Id: 1705 Received: from mail-ot1-f53.google.com (mail-ot1-f53.google.com [209.85.210.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 CE76228F506 for ; Wed, 7 May 2025 20:22:43 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.210.53 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1746649366; cv=none; b=aO2fX88D3NpupD8boLO5gCpbLc/6d331QgKzl3znRQl92exnygwsXH6cQ9p11+WL+C+YfLQn64siREMqB6mxpIUcB50cAUuu628Ybi+wikEEZ7IZKi8QBcFmcVXVAypvcrn9mc1t2TkCx4FDb8xWtSSiC0iR+wdtVxLwqZeXoEc= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1746649366; c=relaxed/simple; bh=IAr6kTxXJCgUz2ugWDrBl/lZUdq4SDIyDLw5leirmvg=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=lqV4LhKXwHGPUcXDBTNULCb/aLxsuhAZIm5NiAjk8pXZu/SEM6YJV4j61broOwUtmQdjU4MJtNHe4tGGwGpcXI0mSBEae9d4fZVS1Y35NyoAFZxz6tykURQ5qEbBXz5CnFO264Ysxy73z7RQvVGeuBMrCViG5MS3YX3BqluQezs= 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=QMR9XVFH; arc=none smtp.client-ip=209.85.210.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 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="QMR9XVFH" Received: by mail-ot1-f53.google.com with SMTP id 46e09a7af769-72bc3987a05so188931a34.1 for ; Wed, 07 May 2025 13:22:43 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1746649362; x=1747254162; 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; bh=f9qj4UpUWDjLwg05OrZxsWUBu7HdjL4SGnQbRsqq/XY=; b=QMR9XVFHXjD26Sq/yk5FNuJzUc95DbxRu/kMQe5KzWYSjglJ01qZWpIxZScQ1h6stQ tFWB142l/xDKzpbnREcthGXWI7yw661XNSR8e22e+HX/CEcXGc77GLmirhcHKx0Ek+Ah uvbKamfn5kIPVrsQz195VTIiEs411Dj6qklK0600D33MdGXwozXyKuVqInRDtl8hFu1x ckKwKxZtsITCCKukNhSmrox03MgKt8VpZ56cWAHkh/Z3yecHcJMJtEz14TBjcGVVic14 6o9l3a5jeY/AYXCGz5Tq/ee23dDiN4z9H/hFqyw85M2fShFIeUCv2dW53oFmDRIFxnPK Ok5A== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1746649362; x=1747254162; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=f9qj4UpUWDjLwg05OrZxsWUBu7HdjL4SGnQbRsqq/XY=; b=xKEWM3xpSI8nCP7wgCg119LfuxIL+awdxZmYLFyky78J3amxc4r7ZBxuWR+E6TRP9V h1p9mQaDWqFlPfSFQ4ISxNQdzxm6sklIUNm8F4YrlmCBiy8UHgbDRYOcQ5QrY3tcxFE8 u+wu1agPSY2O9tOn9D365pB04bxgQZATXWcCZeHCGsxzT0AOvH7GKAvy2HUu50AgweYI S4+FngFVTNDtoDiEFimgQZvW4ZyHpicgTSJyZkx7p39m8ho6sdlrEkxzEqNjysYi5Xin okw6m8IQh246YO955CIyfZPZlHkqY4smQHOT3rX261a2a/527Ttczvg7X4BILW882n0X MFMQ== X-Gm-Message-State: AOJu0YyB22TXeiGLvJTp6FisccCrb6hdx5cWp6BjYxzyKrXCMFaQYQeO 3s1264gKwmkcqP/O5C8g94pnHI/N0PqghiW5IxUA5HjgtVniBlWyDbM3yg== X-Gm-Gg: ASbGncvDxoDnrorATjiO1bUx+gMAX0ueEBAekABe2kSsb4ZKR8cqJhzK6q79R+vdMuo vSQLZRZE0VE1mTu2v/mdZXI/TycLDNlYbvC/FblV6pd/vi7ohz6fXggOWXSDfujv1dAQ2hzEHPg bj7G6h87QG+S6c6wI4Ry/xaDrCSxx2p+lX9hoc3eARX3I9rssEtAWnY9IZG7JoJQ5tLdCRh76Pl yaXpnfbRwhRjl1kAkA3fGoie+BBZ/C2Tf1lczpBtg6PxXymTl6YvIRt2hoiyomIIw7JzM6BKJBV SRaKmOu8hVqRIUbUSqNGeIHBQFjfkJ6yPKRYkHp2H3R10p6KaxlpY3NeBuGiS0Sk4XcUD7k= X-Google-Smtp-Source: AGHT+IH2oJBKfv/nX9XV+zQRIfTXfUhPN5oWVBe/V5dWv4ffki8mMMLkvqKCrOJpZoakFoKnhSq/+g== X-Received: by 2002:a05:6830:46:b0:72c:4023:aa19 with SMTP id 46e09a7af769-7321b400a55mr605713a34.7.1746649362625; Wed, 07 May 2025 13:22:42 -0700 (PDT) Received: from localhost.localdomain ([2600:1700:fb0:1bcf:e46c:46ba:cecd:a52c]) by smtp.gmail.com with ESMTPSA id 46e09a7af769-732109df2dcsm725945a34.9.2025.05.07.13.22.41 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 07 May 2025 13:22:42 -0700 (PDT) From: Chris Morgan To: linux-sunxi@lists.linux.dev Cc: devicetree@vger.kernel.org, dri-devel@lists.freedesktop.org, ryan@testtoast.com, macromorgan@hotmail.com, p.zabel@pengutronix.de, tzimmermann@suse.de, maarten.lankhorst@linux.intel.com, simona@ffwll.ch, airlied@gmail.com, mripard@kernel.org, samuel@sholland.org, jernej.skrabec@gmail.com, wens@csie.org, conor+dt@kernel.org, krzk+dt@kernel.org, robh@kernel.org Subject: [PATCH V9 20/24] arm64: dts: allwinner: h616: add display engine, bus and mixer nodes Date: Wed, 7 May 2025 15:19:39 -0500 Message-ID: <20250507201943.330111-21-macroalpha82@gmail.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20250507201943.330111-1-macroalpha82@gmail.com> References: <20250507201943.330111-1-macroalpha82@gmail.com> Precedence: bulk X-Mailing-List: linux-sunxi@lists.linux.dev List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Status: O From: Chris Morgan The Allwinner H616 and variants (H618, H700 and T507) have a new display engine variant (DE33). Support has been added to the existing DE2/DE3 sun4i driver in a previous patch series (x). The variant is selected via the appropriate mixer device tree compatible string. Add the respective device-tree nodes for the DE, bus, clock and mixer to the H616 DTSI, and the matching SRAM section for the DE. Signed-off-by: Jernej Skrabec Signed-off-by: Ryan Walklin Signed-off-by: Chris Morgan --- .../arm64/boot/dts/allwinner/sun50i-h616.dtsi | 59 +++++++++++++++++++ 1 file changed, 59 insertions(+) diff --git a/arch/arm64/boot/dts/allwinner/sun50i-h616.dtsi b/arch/arm64/boot/dts/allwinner/sun50i-h616.dtsi index cdce3dcb8ec0..542d129da9c3 100644 --- a/arch/arm64/boot/dts/allwinner/sun50i-h616.dtsi +++ b/arch/arm64/boot/dts/allwinner/sun50i-h616.dtsi @@ -94,6 +94,13 @@ l2_cache: l2-cache { }; }; + de: display-engine { + compatible = "allwinner,sun50i-h616-display-engine", + "allwinner,sun50i-h6-display-engine"; + allwinner,pipelines = <&mixer0>; + status = "disabled"; + }; + reserved-memory { #address-cells = <2>; #size-cells = <2>; @@ -150,6 +157,52 @@ soc { #size-cells = <1>; ranges = <0x0 0x0 0x0 0x40000000>; + bus: bus@1000000 { + compatible = "allwinner,sun50i-h616-de33", + "allwinner,sun50i-a64-de2"; + reg = <0x1000000 0x400000>; + allwinner,sram = <&de33_sram 1>; + #address-cells = <1>; + #size-cells = <1>; + ranges = <0 0x1000000 0x400000>; + + display_clocks: clock@8000 { + compatible = "allwinner,sun50i-h616-de33-clk"; + reg = <0x8000 0x100>; + clocks = <&ccu CLK_BUS_DE>, <&ccu CLK_DE>; + clock-names = "bus", "mod"; + resets = <&ccu RST_BUS_DE>; + #clock-cells = <1>; + #reset-cells = <1>; + }; + + mixer0: mixer@100000 { + compatible = "allwinner,sun50i-h616-de33-mixer-0"; + reg = <0x100000 0x100000>, + <0x8100 0x40>, + <0x280000 0x20000>; + reg-names = "layers", "top", "display"; + clocks = <&display_clocks CLK_BUS_MIXER0>, + <&display_clocks CLK_MIXER0>; + clock-names = "bus", "mod"; + resets = <&display_clocks RST_MIXER0>; + iommus = <&iommu 0>; + + ports { + #address-cells = <1>; + #size-cells = <0>; + + mixer0_out: port@1 { + reg = <1>; + + mixer0_out_tcon_top_mixer0: endpoint { + remote-endpoint = <&tcon_top_mixer0_in_mixer0>; + }; + }; + }; + }; + }; + crypto: crypto@1904000 { compatible = "allwinner,sun50i-h616-crypto"; reg = <0x01904000 0x800>; @@ -173,6 +226,12 @@ sram_c: sram@28000 { #address-cells = <1>; #size-cells = <1>; ranges = <0 0x00028000 0x30000>; + + de33_sram: sram-section@0 { + compatible = "allwinner,sun50i-h616-sram-c", + "allwinner,sun50i-a64-sram-c"; + reg = <0x0000 0x1e000>; + }; }; }; From patchwork Wed May 7 20:19:40 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Chris Morgan X-Patchwork-Id: 1706 Received: from mail-ot1-f46.google.com (mail-ot1-f46.google.com [209.85.210.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 8E9A628ECFF for ; Wed, 7 May 2025 20:22:44 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.210.46 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1746649366; cv=none; b=LxJOcWvvPL2JwhM97EzITsZ+soicgNzMt4KPKHd+865qKhJBYlyJNSTA2jH8xApKwv1m3iLsAZbee9XCgoUt3oB2j/yS6xXrcRXpdLzhNNQiqUZhHDghWk+P8NX0mnBkAdeK2CuwL9mzb+6bzfYeceNUsDvWKsfDAc0r/oKmbXo= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1746649366; c=relaxed/simple; bh=jNxw4qfsxNuQ4Z+Xll2+D80lh0Nv01Lue2RSitNK3+w=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=rhYzPkWiqG4+XS9onHjbFOUEQQBLWyjJeVUsvaA/bmCLSJ2xoKCYHPA2DO+qIBtUTKBiQXf79K3pj1nhk9ipuKGjIwZN9Q1P6p35LtMuGmOwWdLijm0oFaFzSs0sJhb+Aq95DvD9/rYYEcyE6A8o3J3tp3sPfdHV/74WFy8WRgM= 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=gNlswzsj; arc=none smtp.client-ip=209.85.210.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 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="gNlswzsj" Received: by mail-ot1-f46.google.com with SMTP id 46e09a7af769-7300069c447so136090a34.2 for ; Wed, 07 May 2025 13:22:44 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1746649363; x=1747254163; 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; bh=5O5IKDOodRu44GGCb4BG8zpMxyESHszk53bt91Bq6Fc=; b=gNlswzsjiQep0MFCiDaLWJpK+3ZcArc51xBBHwaveLxcuWGHREBb7ZNeAPHc0Ot9Hp +sHoPsnfYHvmKowzqZt3JcTdaHkalbyF5rkHtUbLP6mnFuQvRFWCqjN2OEUNSD7oXkYP sa9OJ3gRJVNN5WIIPjP4gddUFPVhd//sDniXv59wPOVUugK8Vdn40hEfM7GScxunm4Z9 JU14V5ZK8FYaXnkw6EGmGtm7ekn9nARiKGJ3Rh1hmVxXzMWePTJTz8Br3W/iC4BXGZZt mamW/696ZuvTYB/aYlq34bumCWY8s62EDd6IYrnVTv9oaXHeeJ8yOQhhfmGE9twevc39 i9mw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1746649363; x=1747254163; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=5O5IKDOodRu44GGCb4BG8zpMxyESHszk53bt91Bq6Fc=; b=NZvy7xIbljPEJJGSzhVogTaU7rrd17Lo6TyETYZi0M0iqcWm5JpAC/TavQp5LfUDIz XbzHuD0IEga/LPmfo4ajHQRHQ1pKpvqMehD8gjtSf8YHv5lpRw+m3nUk1NUJK8cF+TEx a6kdzmYRuwjAzwKKdcGysdHi+cDlMvlxCL++16TBSb+3CzxIsUC7yoMk/c8HYOJkjhsK bWFO9ZgPhemE0EKJsRTlCyFiyBAGVAECPv0w4Ok5ugz//mK392fYJPpyisBOA5ida6Hx 8n5AZqGs5aVAn6RLibXB98PipZQY+FEt2KmfKBtuEvwQslVIiiVLzbMTXoeR6DvND/s3 m8pA== X-Gm-Message-State: AOJu0YxY3Q+knYwa62i7ycLge5D5cqDvb7qwot4qTR22+i2mByjWBTzo rDiSDPnmhk30H7KdjT8ueDA0An99vpOyHeCsnKjs1X3uylHUygIMOqWE3g== X-Gm-Gg: ASbGncusREE11uqf4LKX/0FoLgzfkHpTdolk+UbjpCe8B1Ft78cE3UgbNfq88wW1doE P2mmpchY+VNPRUUr6vUhr+fENb1HHlYx86h7F5yAVbUWEpFo0FTJrHvM6Fw9RCWo5j5AiHlna4M cTcG4JF/cOzb+rGW5Wjwi+FksQY1uIpNBQUq3BF1c2QH1I1G6rCWdyOIhJg2jLALsveaWCmgfb/ YpcMEK2y/vnCBsrVS70NHPaQGGJFYkOCaPnf4dkgnhdZv6oITJX/n14oVbIHb9uupGkpw31hmal BoCtkbPYu/qXtDVvN+817A+cRQzLLniOxXAE46zqGHXymspX6Gp1842KITg9 X-Google-Smtp-Source: AGHT+IEOq3je+wdHKClXriTnH/qW1I0Dd/fwjIaZZ5wgaKePHeaYweMEfsDSEKSVXN1KtPnla+IiCg== X-Received: by 2002:a05:6830:280e:b0:72b:cdcd:628b with SMTP id 46e09a7af769-7321c900e1fmr477585a34.20.1746649363335; Wed, 07 May 2025 13:22:43 -0700 (PDT) Received: from localhost.localdomain ([2600:1700:fb0:1bcf:e46c:46ba:cecd:a52c]) by smtp.gmail.com with ESMTPSA id 46e09a7af769-732109df2dcsm725945a34.9.2025.05.07.13.22.42 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 07 May 2025 13:22:43 -0700 (PDT) From: Chris Morgan To: linux-sunxi@lists.linux.dev Cc: devicetree@vger.kernel.org, dri-devel@lists.freedesktop.org, ryan@testtoast.com, macromorgan@hotmail.com, p.zabel@pengutronix.de, tzimmermann@suse.de, maarten.lankhorst@linux.intel.com, simona@ffwll.ch, airlied@gmail.com, mripard@kernel.org, samuel@sholland.org, jernej.skrabec@gmail.com, wens@csie.org, conor+dt@kernel.org, krzk+dt@kernel.org, robh@kernel.org Subject: [PATCH V9 21/24] arm64: dts: allwinner: h616: Add TCON nodes to H616 DTSI Date: Wed, 7 May 2025 15:19:40 -0500 Message-ID: <20250507201943.330111-22-macroalpha82@gmail.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20250507201943.330111-1-macroalpha82@gmail.com> References: <20250507201943.330111-1-macroalpha82@gmail.com> Precedence: bulk X-Mailing-List: linux-sunxi@lists.linux.dev List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Status: O From: Chris Morgan The Allwinner H616 has a display pipeline similar to other Allwinner devices, specifically the A10, but using a newer display engine revision (DE33). Not all output pins are exposed on all package variants, for example only the H700 and T507 have LCD pins exposed, but all variants support HDMI output. However on the die these are connected to a display engine via a TCON TOP and one or more timing controllers (TCONs). HDMI output support is not provided in this series (but will be in a subsequent patch) so for now note this within the relevant node to prevent a DT compiler error. Add TCON nodes for the TOP, and the LCD and TV timing controllers. The timing controllers are compatible with the existing R40 driver. Signed-off-by: Jernej Skrabec Signed-off-by: Ryan Walklin Signed-off-by: Chris Morgan --- .../arm64/boot/dts/allwinner/sun50i-h616.dtsi | 139 ++++++++++++++++++ 1 file changed, 139 insertions(+) diff --git a/arch/arm64/boot/dts/allwinner/sun50i-h616.dtsi b/arch/arm64/boot/dts/allwinner/sun50i-h616.dtsi index 542d129da9c3..129ce78ae5f3 100644 --- a/arch/arm64/boot/dts/allwinner/sun50i-h616.dtsi +++ b/arch/arm64/boot/dts/allwinner/sun50i-h616.dtsi @@ -7,9 +7,12 @@ #include #include #include +#include +#include #include #include #include +#include / { interrupt-parent = <&gic>; @@ -912,6 +915,142 @@ ohci3: usb@5311400 { status = "disabled"; }; + tcon_top: tcon-top@6510000 { + compatible = "allwinner,sun50i-h616-tcon-top", + "allwinner,sun50i-h6-tcon-top"; + reg = <0x06510000 0x1000>; + clocks = <&ccu CLK_BUS_TCON_TOP>, + <&ccu CLK_TCON_TV0>; + clock-names = "bus", "tcon-tv0"; + clock-output-names = "tcon-top-tv0"; + #clock-cells = <1>; + resets = <&ccu RST_BUS_TCON_TOP>; + + ports { + #address-cells = <1>; + #size-cells = <0>; + + tcon_top_mixer0_in: port@0 { + #address-cells = <1>; + #size-cells = <0>; + reg = <0>; + + tcon_top_mixer0_in_mixer0: endpoint@0 { + reg = <0>; + remote-endpoint = <&mixer0_out_tcon_top_mixer0>; + }; + }; + + tcon_top_mixer0_out: port@1 { + #address-cells = <1>; + #size-cells = <0>; + reg = <1>; + + tcon_top_mixer0_out_tcon_lcd0: endpoint@0 { + reg = <0>; + remote-endpoint = <&tcon_lcd0_in_tcon_top_mixer0>; + }; + + tcon_top_mixer0_out_tcon_tv0: endpoint@2 { + reg = <2>; + remote-endpoint = <&tcon_tv0_in_tcon_top_mixer0>; + }; + }; + + tcon_top_hdmi_in: port@4 { + #address-cells = <1>; + #size-cells = <0>; + reg = <4>; + + tcon_top_hdmi_in_tcon_tv0: endpoint@0 { + reg = <0>; + remote-endpoint = <&tcon_tv0_out_tcon_top>; + }; + }; + + tcon_top_hdmi_out: port@5 { + reg = <5>; + + tcon_top_hdmi_out_hdmi: endpoint { + /* placeholder for HDMI - remote-endpoint = <&hdmi_in_tcon_top>;*/ + }; + }; + }; + }; + + tcon_lcd0: lcd-controller@6511000 { + compatible = "allwinner,sun50i-h616-tcon-lcd", + "allwinner,sun8i-r40-tcon-lcd"; + reg = <0x06511000 0x1000>; + interrupts = ; + clocks = <&ccu CLK_BUS_TCON_LCD0>, <&ccu CLK_TCON_LCD0>; + clock-names = "ahb", "tcon-ch0"; + clock-output-names = "tcon-data-clock"; + #clock-cells = <0>; + resets = <&ccu RST_BUS_TCON_LCD0>, <&ccu RST_BUS_LVDS>; + reset-names = "lcd", "lvds"; + status = "disabled"; + + ports { + #address-cells = <1>; + #size-cells = <0>; + + tcon_lcd0_in: port@0 { + reg = <0>; + #address-cells = <1>; + #size-cells = <0>; + + tcon_lcd0_in_tcon_top_mixer0: endpoint { + remote-endpoint = <&tcon_top_mixer0_out_tcon_lcd0>; + }; + }; + + tcon_lcd0_out: port@1 { + reg = <1>; + #address-cells = <1>; + #size-cells = <0>; + }; + }; + }; + + tcon_tv0: lcd-controller@6515000 { + compatible = "allwinner,sun50i-h616-tcon-tv", + "allwinner,sun8i-r40-tcon-tv"; + reg = <0x06515000 0x1000>; + interrupts = ; + clocks = <&ccu CLK_BUS_TCON_TV0>, + <&tcon_top CLK_TCON_TOP_TV0>; + clock-names = "ahb", "tcon-ch1"; + #clock-cells = <0>; + resets = <&ccu RST_BUS_TCON_TV0>; + reset-names = "lcd"; + status = "disabled"; + + ports { + #address-cells = <1>; + #size-cells = <0>; + + tcon_tv0_in: port@0 { + reg = <0>; + + tcon_tv0_in_tcon_top_mixer0: endpoint { + remote-endpoint = <&tcon_top_mixer0_out_tcon_tv0>; + }; + }; + + tcon_tv0_out: port@1 { + #address-cells = <1>; + #size-cells = <0>; + reg = <1>; + + tcon_tv0_out_tcon_top: endpoint@1 { + reg = <1>; + remote-endpoint = <&tcon_top_hdmi_in_tcon_tv0>; + }; + }; + }; + }; + rtc: rtc@7000000 { compatible = "allwinner,sun50i-h616-rtc"; reg = <0x07000000 0x400>; From patchwork Wed May 7 20:19:41 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Chris Morgan X-Patchwork-Id: 1702 Received: from mail-ot1-f44.google.com (mail-ot1-f44.google.com [209.85.210.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 4288328F50C for ; Wed, 7 May 2025 20:22:44 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.210.44 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1746649368; cv=none; b=BCAWq1Q7ceMMaRjfgZccbUUAl6+NML0aQS/X/W8JbR9OZ8TscSFSgf1b+KqZlALmQK3gi+sN3GN0dDACcYdvaXCm+xKPKB98gILkB7kJu/LLCYsv06GlgEQDxhPwJ3n1gkf+HTdtC8G2T0nc6qQJHRAvkC0+1Xn7m8PwJ6ZbFGM= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1746649368; c=relaxed/simple; bh=9DaiIhuT05anulPNoShPYKhxsY4puRsUVmB+KkjMsF8=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=aLLYEFt41jPgAn05tt2s4b44KRDhfLokOkcmdV+lUrI+XPhNqpysfYc73ZEjecA3Q7jCIKtnM7kdNUcU2c2ckcoTB8VnzdYEY57dSub33ftJDVZtqoYHUP14cwOifUY14anfftGQONt5p1RJnCP7QKBlawiJlZkJVgNAZugCx5U= 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=MdVhOhZB; arc=none smtp.client-ip=209.85.210.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 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="MdVhOhZB" Received: by mail-ot1-f44.google.com with SMTP id 46e09a7af769-731e277a6b0so189148a34.1 for ; Wed, 07 May 2025 13:22:44 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1746649364; x=1747254164; 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; bh=dceCEKVUOKGa77JloXxMoEjB3aM9WeA8fBzF7lUwBv4=; b=MdVhOhZBX2Ne4I6oyh3dBXlrTbENctI6tB2zBmbNV1MfJnAnv7EWYXJHldDopUuH/i RDmW/0TqxQAF2G8tUeLgWAERAryuKE+JmJICoDzvZTLZlAJhb/IxIze10btAOmeSkbnp qQIwwfUmDeGek3sDTsD2dSFiys93gZoPTn5jQ8Pdf3i7WM7pzfQYwkY54Q06ySbb5seG 87yYZvPX2Fj78WeCyFel6Rjli17TerfKEIh4J0sa2A5z8d1M4xrP1Uwrdtnam0puHRfq zp7lthxSt8hconV7dnU6XuZvBJcleRxJxX03k+Ye1tlBzhBaqUE1CJZfTH1fbh2udBD4 1ThA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1746649364; x=1747254164; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=dceCEKVUOKGa77JloXxMoEjB3aM9WeA8fBzF7lUwBv4=; b=dx+FPBkeD5sRu98fDppWaoU9vUg7niRvoOqVK7+JORK6rPLgi0Kfq++fUsrqilCzs6 ww5vgXjwLzkPFtLYA9ZtyosQ52PrvNvo/iUTKuJCiSsR0QEtnW1aC5dDqsym92daTEHZ rzXm8FlzrGcV2jMc+ywydHnUUvvGxo+VH+606FLF0cFw3g1/Ze/lVnpwvPDPecfA1vNv tq6Q3w/hZxLqfKxiBcGxNPBtxul5ZJ8X4+p4SAVuXkdld28RelhVxzqZx3ke6si7ZBIG wGvw8mnRB+/qD27FBu39qH4ABzqK75YyM94vHRcd8GiiFg62qb1ivzaI2+NkjLj8DQwL Oj5Q== X-Gm-Message-State: AOJu0YxU0hdeUOk8Us3EdHbzDJ9PzPBNeWa2qFmpRcGh+L1oXaXAEV7Z X0lKyGyo/B98D2RjU0ehi8vAt4GJkijkIpKp0xMJq428prQcfPIqU773Ow== X-Gm-Gg: ASbGnctLrj/VIp/kzNwLlPoPsgSYiJpmWNNe8CJ83Q5OBVXPyIecK5CzeJZTd8EPJff euH74bv61G+V80SRNO0GmtJ7EA710Y9/vjIjc9ljx2ze05/8SVt4pLL9sGliXZQgFBjK1wmUb4i lKkiJSfdPYG1QzjfMOPeGCo2SQFZ5cNOJPLPg1Ge59uA/BvY+q1F9O4z3j1P+42fvHxaH4AiQdb oe4ZNNWLzLQFM7WhgTfAyPP/ZJadk5nnsr/Z925T6kZGsd8eRCca16xDfT6loQ3CeBOMQhMw8J6 eic/zHQ6CUMCDRIo1T9lVBYQQ6pOd+neXoEbqo1KBw0xxDFs7UrdgWQuCQzU X-Google-Smtp-Source: AGHT+IHzDb7Qz5DZFiGSa6Z3lnHv+87ODFBjRHAjTiD7jtWVu9q1Y73F4kwu/+T85cIKLmYaJUt5FA== X-Received: by 2002:a05:6830:25d4:b0:727:2f79:ce33 with SMTP id 46e09a7af769-7321c949800mr404858a34.28.1746649364088; Wed, 07 May 2025 13:22:44 -0700 (PDT) Received: from localhost.localdomain ([2600:1700:fb0:1bcf:e46c:46ba:cecd:a52c]) by smtp.gmail.com with ESMTPSA id 46e09a7af769-732109df2dcsm725945a34.9.2025.05.07.13.22.43 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 07 May 2025 13:22:43 -0700 (PDT) From: Chris Morgan To: linux-sunxi@lists.linux.dev Cc: devicetree@vger.kernel.org, dri-devel@lists.freedesktop.org, ryan@testtoast.com, macromorgan@hotmail.com, p.zabel@pengutronix.de, tzimmermann@suse.de, maarten.lankhorst@linux.intel.com, simona@ffwll.ch, airlied@gmail.com, mripard@kernel.org, samuel@sholland.org, jernej.skrabec@gmail.com, wens@csie.org, conor+dt@kernel.org, krzk+dt@kernel.org, robh@kernel.org Subject: [PATCH V9 22/24] arm64: dts: allwinner: h616: add LCD and LVDS pins Date: Wed, 7 May 2025 15:19:41 -0500 Message-ID: <20250507201943.330111-23-macroalpha82@gmail.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20250507201943.330111-1-macroalpha82@gmail.com> References: <20250507201943.330111-1-macroalpha82@gmail.com> Precedence: bulk X-Mailing-List: linux-sunxi@lists.linux.dev List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Status: O From: Chris Morgan The Allwinner H616 (and its H618, H700 and T507 package variants with the same die) have 28 video output pins for RGB/SPI and LVDS display. These are in GPIO Bank D and are multiplexed. In RGB mode, pins PD0-PD23 are for 24-bit RGB pixel output, pins PD24-PD27 are for clock, DE, HSYNC and VSYNC. In LVDS mode, pins PD0-PD9 are for LVDS0 and LVDS1, and can be configured by the H616 display engine for either one high-resolution (dual link) or two low resolution displays. Add device tree nodes for the LCD, LVDS0, and LVDS1 pins. Signed-off-by: Jernej Skrabec Signed-off-by: Ryan Walklin Signed-off-by: Chris Morgan --- .../arm64/boot/dts/allwinner/sun50i-h616.dtsi | 26 +++++++++++++++++++ 1 file changed, 26 insertions(+) diff --git a/arch/arm64/boot/dts/allwinner/sun50i-h616.dtsi b/arch/arm64/boot/dts/allwinner/sun50i-h616.dtsi index 129ce78ae5f3..3d8b412afb88 100644 --- a/arch/arm64/boot/dts/allwinner/sun50i-h616.dtsi +++ b/arch/arm64/boot/dts/allwinner/sun50i-h616.dtsi @@ -325,6 +325,32 @@ ir_rx_pin: ir-rx-pin { function = "ir_rx"; }; + /omit-if-no-ref/ + lcd0_rgb888_pins: lcd0-rgb888-pins { + pins = "PD0", "PD1", "PD2", "PD3", + "PD4", "PD5", "PD6", "PD7", + "PD8", "PD9", "PD10", "PD11", + "PD12", "PD13", "PD14", "PD15", + "PD16", "PD17", "PD18", "PD19", + "PD20", "PD21", "PD22", "PD23", + "PD24", "PD25", "PD26", "PD27"; + function = "lcd0"; + }; + + /omit-if-no-ref/ + lvds0_pins: lvds0-pins { + pins = "PD0", "PD1", "PD2", "PD3", "PD4", + "PD5", "PD6", "PD7", "PD8", "PD9"; + function = "lvds0"; + }; + + /omit-if-no-ref/ + lvds1_pins: lvds1-pins { + pins = "PD10", "PD11", "PD12", "PD13", "PD14", + "PD15", "PD16", "PD17", "PD18", "PD19"; + function = "lvds1"; + }; + mmc0_pins: mmc0-pins { pins = "PF0", "PF1", "PF2", "PF3", "PF4", "PF5"; From patchwork Wed May 7 20:19:42 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Chris Morgan X-Patchwork-Id: 1704 Received: from mail-ot1-f50.google.com (mail-ot1-f50.google.com [209.85.210.50]) (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 1050028F51A for ; Wed, 7 May 2025 20:22:45 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.210.50 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1746649367; cv=none; b=Zi1x38TvaR5eQbkf7zrXk3oHZIgEkmdb6UDfei3JBCzZoi25dEtu9SlObfMOF0RNffQGa9xoAlQ4ZY7hvMZDy7H3owiN8HZ2Te5Z2X7du7MpGN3CDvawvt1uHMbo+2T5yv9syE2l7UWk3RIBHqpNWsd9rmM3wCkLdanxulpc35E= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1746649367; c=relaxed/simple; bh=wXQ7W7ZWxl7n7ZHArkFcw/VRY6p8yLTzSjGvpRdnACk=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=jYOhbeCLTGNTWIUUcDoejoSaVdeHBAcZTFSVZxY9diSPAYh5HVzmYzyDf7hCBxlYS1lBW3+JBSFcgDd5gzTFPhmY7WKxyZ2kp8YYTV9Ciq1O3G6fU0FSPC2aER9LhwXU7vc2ZMXR4cD9X4Djc9w5feyKniFdQXkwOiWU2C4Q1i0= 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=SiklqKRr; arc=none smtp.client-ip=209.85.210.50 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 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="SiklqKRr" Received: by mail-ot1-f50.google.com with SMTP id 46e09a7af769-72c173211feso67570a34.1 for ; Wed, 07 May 2025 13:22:45 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1746649365; x=1747254165; 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; bh=SjhJjaIvcnDBaUHu5Cl0khV6aJlrP78s/O1dFNpl7CI=; b=SiklqKRrZXHwxmEwyIkvTNfhfsaLv3Nkwffq5beY4R9NOSXOBkIo3/uq7/SKUMIqSI 3HhZHpEwDelGSjgn+z6GXmXbHb7FvVRqUAh9M67MhCBk9QVvYgKnOh/ElnpgmwS2dFWh tGgmHhrycdYE27bQTLQEEzLNb3E2UCRQoIqxqDil3Ha8c4/ExoQo1CiuT364uJKlj3uX PZXEsQiLNFeufJqs1oS4AQriH5LfMCXQ4NxSxU21VmDtWPNjBvTCO2emAYoAbZTM1a1D zjezjU/kaL5UT2794p8gTN1lI1Z9fuW94ivXTMlTkorSpr5JJz6QqDshwVNFMRqcMd+U mOmQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1746649365; x=1747254165; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=SjhJjaIvcnDBaUHu5Cl0khV6aJlrP78s/O1dFNpl7CI=; b=FzdNQKqHw8e5PWnUkMH5NLH5Q1dcxUSLVwAI1jABr27ILSqCVciMpDtOhegh7ajGag 3YzgiuORfWSbuOq9SPHUNqTdE7i9Edp/QZLCPElR0lHCMUfTm8Cf0mdtBMOhEvCv5KrI R4trqUyPbYPmPFzRj33RAaYS37tBAp7wasKsK4LtCnwiW+NlHffFyngehJq6Gc4cRULk EdruNlZIWdRzE6d43G3i5crnsHxUSXWaHHR6XZKW4XvdavHSJXIUFEYF3U9d9IMmlc+t 15NRfgM2PB8GOhEs1o+Lt7etG+2Qei+mdqfMMMguO2ktAjKd1+2J0IvrupUrDAKxcIrn sg8Q== X-Gm-Message-State: AOJu0YxvPU5SpADPwXGGIK24ZlWWCKDYPGVr43ZdoKF2S/FNdUE7CIPG KO1iY6na2FpAG91uMz/0P6oBk+MG9m0mtAbYl8To8AJG15a/QL/tBpYQcw== X-Gm-Gg: ASbGncs3qubqGhD455q9jVwLuZ7oRwB0LZJrmUSpVTf5MrsLZI01vh5F9JTDVImkK/X 7HOfgp2eWSgQwfNWMxHApg5xKgZLyc4dLGKlO35FvmbO4x/MeKwDO/zm+YloI/6q1ghLxHPxg4X hKpYPHjhCVddXpAGkqnLMggCr2QDQ+CRl7JrnR6DvYHk3hxpeU+Ux5fjKVsWkTf60XcGcSx6vT+ hTHAJGPkGXuFc7Z5kBzkWXiSQxIIEsE+phBDqD7MNf9mL/M9CCa4joabWn26f41sGECu0D6nqxm hqt0PHKF0ZKDSWv9kdZjd5j8wdMTaOii2U1P0FOHR9LS8ksyyruqLI4+xv+M X-Google-Smtp-Source: AGHT+IG4VEv+ll1E+etIO/RyZfeFwZQSA+7FeaHNtj2wtpn38UfCsWG5LnoVjjBVpMiy/mgpRspIwg== X-Received: by 2002:a05:6830:3985:b0:727:423c:95d5 with SMTP id 46e09a7af769-73210a6eba3mr3371615a34.3.1746649364822; Wed, 07 May 2025 13:22:44 -0700 (PDT) Received: from localhost.localdomain ([2600:1700:fb0:1bcf:e46c:46ba:cecd:a52c]) by smtp.gmail.com with ESMTPSA id 46e09a7af769-732109df2dcsm725945a34.9.2025.05.07.13.22.44 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 07 May 2025 13:22:44 -0700 (PDT) From: Chris Morgan To: linux-sunxi@lists.linux.dev Cc: devicetree@vger.kernel.org, dri-devel@lists.freedesktop.org, ryan@testtoast.com, macromorgan@hotmail.com, p.zabel@pengutronix.de, tzimmermann@suse.de, maarten.lankhorst@linux.intel.com, simona@ffwll.ch, airlied@gmail.com, mripard@kernel.org, samuel@sholland.org, jernej.skrabec@gmail.com, wens@csie.org, conor+dt@kernel.org, krzk+dt@kernel.org, robh@kernel.org Subject: [PATCH V9 23/24] arm64: dts: allwinner: rg35xx: Add GPIO backlight control Date: Wed, 7 May 2025 15:19:42 -0500 Message-ID: <20250507201943.330111-24-macroalpha82@gmail.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20250507201943.330111-1-macroalpha82@gmail.com> References: <20250507201943.330111-1-macroalpha82@gmail.com> Precedence: bulk X-Mailing-List: linux-sunxi@lists.linux.dev List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Status: O From: Chris Morgan The LCD backlight for this device can be exposed as a simple GPIO- controlled device. It would be more accurately modelled using PWM to enable brightness control, however the PWM driver design for the H616 is not yet upstreamed. Add a GPIO backlight node to the DTS. Signed-off-by: Ryan Walklin Signed-off-by: Chris Morgan --- .../boot/dts/allwinner/sun50i-h700-anbernic-rg35xx-2024.dts | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/arch/arm64/boot/dts/allwinner/sun50i-h700-anbernic-rg35xx-2024.dts b/arch/arm64/boot/dts/allwinner/sun50i-h700-anbernic-rg35xx-2024.dts index 7e17ca07892d..95f2ae04bd95 100644 --- a/arch/arm64/boot/dts/allwinner/sun50i-h700-anbernic-rg35xx-2024.dts +++ b/arch/arm64/boot/dts/allwinner/sun50i-h700-anbernic-rg35xx-2024.dts @@ -21,6 +21,12 @@ aliases { serial0 = &uart0; }; + backlight: backlight { + compatible = "gpio-backlight"; + gpios = <&pio 3 28 GPIO_ACTIVE_HIGH>; // PD28 + default-on; + }; + battery: battery { compatible = "simple-battery"; constant-charge-current-max-microamp = <1024000>; From patchwork Wed May 7 20:19:43 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Chris Morgan X-Patchwork-Id: 1703 Received: from mail-ot1-f54.google.com (mail-ot1-f54.google.com [209.85.210.54]) (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 C515128F522 for ; Wed, 7 May 2025 20:22:46 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.210.54 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1746649368; cv=none; b=VXX0rCHk3YgvlMNMTJJVgC+TitqP6/b6QgGrJNgA7+Pd8eUel7tbPPfoxKazznipS45bQ1CoyhCyPjaAsyD3yC1pjP/RP9AUdLSuk85KL4YGSNuyEWUOnoKmKhr0JTSy/ol5DwRmrAmiPLWD1ybcJOFr8MGvEGbCmZWavyXeDsA= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1746649368; c=relaxed/simple; bh=QCzpVPQHNchf1q6nV+Jbu/0f+gEBfuqV3eX09A3d8fM=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=fFCTZoQBl9g0pr+BmMSrWgyGGtDpBLpJzin4wtEBoDdJNGVjvmz1LKjcMq15aeIMmY4LOiu73A94REGbb6BvtAt9bakKsoTFrpb68H2wVcT6suoAL+UHIhUirJ+OQxpQdBwAaHfnFgXAXA44tYb8DKJbAm4zktlaSJzDdUkdGZI= 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=FHhnIJJw; arc=none smtp.client-ip=209.85.210.54 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 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="FHhnIJJw" Received: by mail-ot1-f54.google.com with SMTP id 46e09a7af769-7301c227512so140121a34.2 for ; Wed, 07 May 2025 13:22:46 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1746649365; x=1747254165; 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; bh=1hb5ufZpV43bt8teP3h3YtOVqm0V+W6AkapWdcxcadM=; b=FHhnIJJw3PbPZo18MrYcvgE9pIpgF6Grm2tcp4vFZ7sFtRcUJ7LYSqqobJ1FDVJc4E m0BwrgTzYLRqCYNok/MS+83a3MpGM1NXNJJj1klaDrDGeR77lPS15nbQSc9Tflh/YFnB kNvTF0Grt7xgrAF0dA3ZPrd0kDEdwGzXP8Chvuwv1hblaG/bIOaBFcYLUOXVCq8vU1s3 ngcAQkxa29D4fv+Qe4MsmeyB1UuDpZ68eAokWb2hro6jcAqkGTbBxYGd0CY/QvUclaph XmMhD5qW1Ck/liPUit7W7gNr5Ts14/cWF/fVet9D7EUtqUwOPawRiu9Ttikl3uBrgIOY F0lw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1746649365; x=1747254165; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=1hb5ufZpV43bt8teP3h3YtOVqm0V+W6AkapWdcxcadM=; b=YOZ6eM7JnJ/s/OrMy9N5DQt63SYVMUVXkJjkpKf9qhAY3RR5v9oe1GyWN+zJw+xFHc 4HPuIhrJ0T9wqvn70w3mNQNc44077cC8USn6qvqNue92Czmvr76/4s7vw1PES0RtFCHc Nw0aDHwoAtLoIiP8k/rXMphdU6+B3C4XM4UohB6dDxSGGUJB0LEMeM8eHiHCdBVtkl+B 9VH1dnc3V4CKqEZQV4G3WEMagXzIu59fxvlMeqyS+FiYlkViPKBlcViwwCznLd86pSNz 2nIfTUFo/kUO0pUK9ra0dl478cz1JIlByuhQJX/7TU+DcHOUZSph67sZeZZl1W+TfTFq ZcQA== X-Gm-Message-State: AOJu0YwDD/0RtN44gPrw2d/dnwVfvcQp6XFJ7Y73jj2E36QlU1LcwvP8 sLz1IJCpr7nKFGhLqAO6o9+MkIRpqK3BNyHhN1q6H2f4OUmMh8RptwLw8w== X-Gm-Gg: ASbGncshCr0xuHTp2xdxFyflOyPjJsmCqZ0fQZ2UinbBPbfWR01Ke6CiheQfwsNJTQb LYqhGZsCUfOlbrJ1D7lsmD31e1UsTo7ToiP3TV0N+04v9OAu/xv8dcPj9BdneZcYeB8WW2n7pue y6DAbOxFzeP+YpuWHuGDhm8zkbzN+JJEsQvb34dOlxZ77XbDmcNUj7CFvVQlrzNaTV8d9Kt6Y6G /7XKlf6GbpGZ51I07TGuY/lbKhkjZPMgISRkpOGcET8EaJQxrYt7XyRG/3lR3h7kmtxELhuWcfp 1FeyYMQ85WPEylR4hGjPA6uEypGjYwshWPcP5r+SPV2ObxWXeNKNWryq7Fd8 X-Google-Smtp-Source: AGHT+IEc2bzedU/Bbbz0Jce68RPz4itDPGQFZVpr2AL3l0c19gcdR7gdkcuLajDbJPMrYebzAIA4IQ== X-Received: by 2002:a05:6830:6181:b0:72b:8a8b:e02c with SMTP id 46e09a7af769-73210a69ba6mr3020411a34.2.1746649365602; Wed, 07 May 2025 13:22:45 -0700 (PDT) Received: from localhost.localdomain ([2600:1700:fb0:1bcf:e46c:46ba:cecd:a52c]) by smtp.gmail.com with ESMTPSA id 46e09a7af769-732109df2dcsm725945a34.9.2025.05.07.13.22.44 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 07 May 2025 13:22:45 -0700 (PDT) From: Chris Morgan To: linux-sunxi@lists.linux.dev Cc: devicetree@vger.kernel.org, dri-devel@lists.freedesktop.org, ryan@testtoast.com, macromorgan@hotmail.com, p.zabel@pengutronix.de, tzimmermann@suse.de, maarten.lankhorst@linux.intel.com, simona@ffwll.ch, airlied@gmail.com, mripard@kernel.org, samuel@sholland.org, jernej.skrabec@gmail.com, wens@csie.org, conor+dt@kernel.org, krzk+dt@kernel.org, robh@kernel.org Subject: [PATCH V9 24/24] arm64: dts: allwinner: rg35xx: Enable LCD output Date: Wed, 7 May 2025 15:19:43 -0500 Message-ID: <20250507201943.330111-25-macroalpha82@gmail.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20250507201943.330111-1-macroalpha82@gmail.com> References: <20250507201943.330111-1-macroalpha82@gmail.com> Precedence: bulk X-Mailing-List: linux-sunxi@lists.linux.dev List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Status: O From: Chris Morgan The RG35XX has a 640x480 RGB/SPI LCD panel, supported by the SoC display pipeline and an NV3052C controller. The H616 SOC's GPIO bank D contains the muxed display pins for RGB and LVDS output support. Enable the display engine and LCD timing controller, configure the panel, and add a fixed 3.3v GPIO-controlled regulator for the panel, and a VCC supply for the display pins as per the other GPIO banks. Signed-off-by: Ryan Walklin Signed-off-by: Chris Morgan --- .../sun50i-h700-anbernic-rg35xx-2024.dts | 59 +++++++++++++++++++ 1 file changed, 59 insertions(+) diff --git a/arch/arm64/boot/dts/allwinner/sun50i-h700-anbernic-rg35xx-2024.dts b/arch/arm64/boot/dts/allwinner/sun50i-h700-anbernic-rg35xx-2024.dts index 95f2ae04bd95..260c2d55a86e 100644 --- a/arch/arm64/boot/dts/allwinner/sun50i-h700-anbernic-rg35xx-2024.dts +++ b/arch/arm64/boot/dts/allwinner/sun50i-h700-anbernic-rg35xx-2024.dts @@ -187,6 +187,49 @@ reg_vcc5v: regulator-vcc5v { /* USB-C power input */ regulator-min-microvolt = <5000000>; regulator-max-microvolt = <5000000>; }; + + reg_lcd: regulator-gpio-lcd-vdd { + compatible = "regulator-fixed"; + regulator-min-microvolt = <3300000>; + regulator-max-microvolt = <3300000>; + regulator-name = "vdd-lcd"; + gpio = <&pio 8 15 GPIO_ACTIVE_HIGH>; // PI15 + enable-active-high; + }; + + spi_lcd: spi { + compatible = "spi-gpio"; + #address-cells = <1>; + #size-cells = <0>; + + sck-gpios = <&pio 8 9 GPIO_ACTIVE_HIGH>; // PI9 + mosi-gpios = <&pio 8 10 GPIO_ACTIVE_HIGH>; // PI10 + cs-gpios = <&pio 8 8 GPIO_ACTIVE_HIGH>; // PI8 + num-chipselects = <1>; + + panel: panel@0 { + compatible = "anbernic,rg35xx-plus-panel"; + + reg = <0>; + + spi-max-frequency = <3125000>; + spi-3wire; + + reset-gpios = <&pio 8 14 GPIO_ACTIVE_LOW>; // PI14 + + backlight = <&backlight>; + power-supply = <®_lcd>; + + pinctrl-0 = <&lcd0_rgb888_pins>; + pinctrl-names = "default"; + + port { + panel_in_rgb: endpoint { + remote-endpoint = <&tcon_lcd0_out_lcd>; + }; + }; + }; + }; }; &codec { @@ -199,6 +242,10 @@ &cpu0 { cpu-supply = <®_dcdc1>; }; +&de { + status = "okay"; +}; + &ehci0 { status = "okay"; }; @@ -218,6 +265,7 @@ &ohci0 { &pio { vcc-pa-supply = <®_cldo3>; vcc-pc-supply = <®_cldo3>; + vcc-pd-supply = <®_cldo3>; vcc-pe-supply = <®_cldo3>; vcc-pf-supply = <®_cldo3>; vcc-pg-supply = <®_aldo4>; @@ -377,3 +425,14 @@ &usbotg { &usbphy { status = "okay"; }; + +&tcon_lcd0 { + status = "okay"; +}; + +&tcon_lcd0_out { + tcon_lcd0_out_lcd: endpoint@1 { + reg = <1>; + remote-endpoint = <&panel_in_rgb>; + }; +};