Message ID | 20240220-v6-8-topic-rk3568-vicap-v1-4-2680a1fa640b@wolfvision.net (mailing list archive) |
---|---|
State | New |
Headers |
Received: from am.mirrors.kernel.org ([147.75.80.249]) by linuxtv.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.96) (envelope-from <linux-media+bounces-5471-patchwork=linuxtv.org@vger.kernel.org>) id 1rcMd1-00088C-16 for patchwork@linuxtv.org; Tue, 20 Feb 2024 09:41:32 +0000 Received: from smtp.subspace.kernel.org (wormhole.subspace.kernel.org [52.25.139.140]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by am.mirrors.kernel.org (Postfix) with ESMTPS id 276D91F2910D for <patchwork@linuxtv.org>; Tue, 20 Feb 2024 09:41:29 +0000 (UTC) Received: from localhost.localdomain (localhost.localdomain [127.0.0.1]) by smtp.subspace.kernel.org (Postfix) with ESMTP id D2B6A627FD; Tue, 20 Feb 2024 09:40:09 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; dkim=pass (1024-bit key) header.d=wolfvision.net header.i=@wolfvision.net header.b="Kdm6PZhc" X-Original-To: linux-media@vger.kernel.org Received: from EUR05-VI1-obe.outbound.protection.outlook.com (mail-vi1eur05on2128.outbound.protection.outlook.com [40.107.21.128]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 46A94612FE; Tue, 20 Feb 2024 09:40:07 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=40.107.21.128 ARC-Seal: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1708422009; cv=fail; b=Sygyn4hGL11feC4CrA712oEHjug2EwAX2ZpXh211jc/zXK1lTziefkIKyHKZZlbN42YFq+3GBgQcJrSiFVnBwiJhkJTRupENXktuOuUqczcJUvVySz0gg6IgJqtbR4TQE9nSRbadtTfHq0yxFW2ZuywIsJgM65kVvD7wevjOCdU= ARC-Message-Signature: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1708422009; c=relaxed/simple; bh=jWA7+1kclrLwuXbXKGFkLLKFi93J2hK6Hr0O4t3lISw=; h=From:Date:Subject:Content-Type:Message-Id:References:In-Reply-To: To:Cc:MIME-Version; b=WWq5y1al0SwgYtn/HItIs8Bu+UCYIQijwxywpNt1NOTd227tV0oKx4L7vJYZSt7vhx9GUTBNQIBS6H1Vixp2MpzUzyEi9Hot0FiOzNKKDgenN7fbVT/5slY7GP2lok1N3Xm3dWzd/ffhS9dsvm9++9DyQER2Z6uFfXjTBu3BvqE= ARC-Authentication-Results: i=2; smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=wolfvision.net; spf=pass smtp.mailfrom=wolfvision.net; dkim=pass (1024-bit key) header.d=wolfvision.net header.i=@wolfvision.net header.b=Kdm6PZhc; arc=fail smtp.client-ip=40.107.21.128 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=wolfvision.net Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=wolfvision.net ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=iA2sJtgfQI8aDB2GuP0zXn+/PRCUYWws5mDWImRrH1pvczRE2nxQkWVBI/AqAf7YgtmPLIDb35v1fBJokIW7OhKBNlldDK/kuVkEQI9rAXo8kXf2y//dLh9ghBIYlEngASiwPzcDGOJW1Iz18UruSpMGnvoR/BNsDqI6GbBbjNFbfISEz4K40I5VhAudqCd1KBGrrvOhZ783aJYBuwsI55IK8ZsjYFnc9G4Ok9YbjiWfPEif2+8M8dB6yhw0kPkygmfSu0cixSEVYWaH9TRousbIVuvy1ZL4vMRPO0ihONGDZeMg++olkkDzw9PexcXqGowVSe6GivaJ8CYmXWsrJg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=F696bODurRIsEO6Q36YUfWm9oNEtoOkg4rcuinT2Fz8=; b=Bp1HFslE1fs7iLntaLXryIQNGc2FFHeSTNhQk+pTFbvCr5Z6W+bbS9ZjIxd8YFo42ycJztp0k1zeRypHhZceab16QBdXUGQ6WIP4lZof8M78eoXl98/GVbDsiuGWBJQDDj72nfs0Wg2gKlqD4mzmAN5UDti4jeRwuI0Esr8RnZYdbJav88Rls2uJh4RUR/Mtnhss494v5yh8p4CTk/phVsFIwbBQGfW5X+GN8lWqrVlAsM85MV3fHr1ztoU0FqWDcF9/UhuH4bZxPLoHQYHOSe9sqbrh8lUQaPBvoRfgG18PkUe5hXoyRa6AmOpvYGd/y3XTzMy7NSBxuKeAP94gzg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=wolfvision.net; dmarc=pass action=none header.from=wolfvision.net; dkim=pass header.d=wolfvision.net; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=wolfvision.net; s=selector2; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=F696bODurRIsEO6Q36YUfWm9oNEtoOkg4rcuinT2Fz8=; b=Kdm6PZhc0zpSJPhkodLeTNxBByHOEjJKza/GqZqKcnx5YbscZZ0E9LOiIOV+e3TlDAU7fU6UOkrj3canXyPBaoPgVhh4zJnH1bczor6JKGJ92dZcNqJnErpuSwb74xx37BXQNl4th3x3/SqkmkoJeTxdyhmKcOyqgAW3MR14/ys= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=wolfvision.net; Received: from DU0PR08MB9155.eurprd08.prod.outlook.com (2603:10a6:10:416::5) by DB9PR08MB6763.eurprd08.prod.outlook.com (2603:10a6:10:2af::15) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7292.39; Tue, 20 Feb 2024 09:40:04 +0000 Received: from DU0PR08MB9155.eurprd08.prod.outlook.com ([fe80::7409:db60:8209:c9f4]) by DU0PR08MB9155.eurprd08.prod.outlook.com ([fe80::7409:db60:8209:c9f4%6]) with mapi id 15.20.7270.043; Tue, 20 Feb 2024 09:40:04 +0000 From: Michael Riesch <michael.riesch@wolfvision.net> Date: Tue, 20 Feb 2024 10:39:14 +0100 Subject: [PATCH 04/14] media: dt-bindings: media: rockchip,px30-vip: allow for different variants Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: 7bit Message-Id: <20240220-v6-8-topic-rk3568-vicap-v1-4-2680a1fa640b@wolfvision.net> References: <20240220-v6-8-topic-rk3568-vicap-v1-0-2680a1fa640b@wolfvision.net> In-Reply-To: <20240220-v6-8-topic-rk3568-vicap-v1-0-2680a1fa640b@wolfvision.net> To: Mehdi Djait <mehdi.djait.k@gmail.com>, =?utf-8?q?Th=C3=A9o_Lebrun?= <theo.lebrun@bootlin.com>, Thomas Petazzoni <thomas.petazzoni@bootlin.com>, Laurent Pinchart <laurent.pinchart@ideasonboard.com>, Mauro Carvalho Chehab <mchehab@kernel.org>, Rob Herring <robh+dt@kernel.org>, Krzysztof Kozlowski <krzysztof.kozlowski+dt@linaro.org>, Conor Dooley <conor+dt@kernel.org>, Heiko Stuebner <heiko@sntech.de>, Sakari Ailus <sakari.ailus@linux.intel.com> Cc: linux-media@vger.kernel.org, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-rockchip@lists.infradead.org, Michael Riesch <michael.riesch@wolfvision.net> X-Mailer: b4 0.12.2 X-Developer-Signature: v=1; a=ed25519-sha256; t=1708421995; l=2113; i=michael.riesch@wolfvision.net; s=20230803; h=from:subject:message-id; bh=jWA7+1kclrLwuXbXKGFkLLKFi93J2hK6Hr0O4t3lISw=; b=setF7uIuzfkyWPxSgTb17x1Ut1ppOeeQRvYd/dEzfgjiUVbWx7Ig2bJ7qkpw9rX7BTRzACZvY iag8MLtvClqCn8ezWW03BgUhErjT2l4srYICmbMUvvfqor7p9eaioYf X-Developer-Key: i=michael.riesch@wolfvision.net; a=ed25519; pk=9ral3sulLe95bLcbaiNXTgUTRiBayRBEFZ5OVIEHp+0= X-ClientProxiedBy: VI1PR04CA0128.eurprd04.prod.outlook.com (2603:10a6:803:f0::26) To DU0PR08MB9155.eurprd08.prod.outlook.com (2603:10a6:10:416::5) Precedence: bulk X-Mailing-List: linux-media@vger.kernel.org List-Id: <linux-media.vger.kernel.org> List-Subscribe: <mailto:linux-media+subscribe@vger.kernel.org> List-Unsubscribe: <mailto:linux-media+unsubscribe@vger.kernel.org> MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: DU0PR08MB9155:EE_|DB9PR08MB6763:EE_ X-MS-Office365-Filtering-Correlation-Id: 567bdf4d-b39b-455f-eb06-08dc31f7ea78 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: IEXsw5tLrOCdShCRKN0OC9hNG9LxlRbVaNO8tbnU9pFFKNoUkgES4cL3OQAo8y1/t/HrmhSQ71WG1m+p8UGxZnXaazoCDbsfkfGt2T8X9J7izd4C0BwpG51/z8eesgHQpYmWD+byqTbs8C+HZT6cb03rTLv7lrfU5AqU3HZUslYQgzoPg0jdkbQiER9WZNKzH2WXdgwccSma+r6GpUwVdN+urb8gez3120khxk/K5Wfu7ibOrI2Ewq3sv+/r2LbosTjiKBLveUrA3ZisaXCq120t38qliXWydzNdgxYI3noBQk9pGD1sWHLv1IB6KEmFt4q9Gofr84jyqvYRPezAp6KnXvU5kA/viAYoQLS6sTtoVFtbuSywsRXg9WpY6D7AHRrIPpYmL998LJvvi6PJrgJv4FBFvdaoCheFa4MTglZXc2lYnTotvkJmI2AOf/cxOQlJ3knnqMr3IcB5cJjKS8oBmEQB+tuLQzgmpoLzQ97Xd8lhRapALSBuedmx1pTbf8ZSTFqlN3ZaQaXxOmVGNpWuozQy2jt2C8kNraOVVd8r3GegFa1fXx5c6ANdX8/EXUIziBRNq06iECfj8goBGLRyqJaqphz01nZ3+G2KFEl+O3XQReR3t4Wggu3lxuAIhotlCPDqygjsuPixk2BRKg== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU0PR08MB9155.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(921011)(38350700005);DIR:OUT;SFP:1102; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?q?MI2eSl3oInaErGlOKYXg48nDeCbZ?= =?utf-8?q?hjwDNpN6VEtvZo2kEX+aAko71DyTx4Cb0tm96ZHTUIfdwE90TE4qeA5fHTvShWRCH?= =?utf-8?q?DxAruEQolp8LzIfZNEdLG7IllV/m74Rz6ucTvQnLhx/5mO7np/cXpXFo444wtlUOw?= =?utf-8?q?JMLFdAhIFqJmJ5w7oMo3m8WJ6Ib6MwK0fkownxOVFEeI5ahuUcTcjqCUDTU8E2VrD?= =?utf-8?q?CDZs7SQbZX8qWomsKf0PZ9LzVnfDB7ytcAf6wb4jMFZsE/I4tcdnVIg5+jdoLhnRf?= =?utf-8?q?wspFRQ9p3x43Q9VlJdV0aNtcE4R46u24+hLFWEGZm8vWeIWlaVXskoxEjmNVx1nY+?= =?utf-8?q?KYNId/T9Q276C2JeWmFMq36wgd/NFIJsZRnYRgfEr7ENf+dBrecIfzRFfqEToliDQ?= =?utf-8?q?mhR8Sia7kfYimAyEFfbpjKHiR8BYMT5ZmWBi1sJ9j/07AIKdVNj3WbH1zgOdo8VNG?= =?utf-8?q?oSp7eoHR1WAJDuxCPjzPiYnWhnkL/x2w92OWQg7sHDMUIZTrCcN2iZ0Jmopx9O8Oj?= =?utf-8?q?gZeSRJkuxGeQwAy69QoAeDRtrgxj8JD66Soy8uWgXWnL3dxrzvlFekx2Mf1eu1+vA?= =?utf-8?q?XflH+gGRCc9qmdgHU2uOtdHgujix0eXtcrygwI1p2+RG7d/XaZJCUwz3IkA8fPmAC?= =?utf-8?q?vvieP2hE5UB5bEoptWAUaz7sMWzuK4MTjpyZx1a3oxk6Qwst5oPf/64xLz9qXOjBA?= =?utf-8?q?O7rcDAZeG5L/v4SIaQ9pCafy5v5p6EMYqBAdkkmpufHQ71J6+ZDZJt15PmLNuuCpN?= =?utf-8?q?FzhkQWv1tSwW7gbkiIHzoTgJ75QB/gqeJ0uXvpPB18PGq0GVuNlEUtWZbkntDDZHl?= =?utf-8?q?LccJ85BeplLXBqAwQ8B/JrRWljjpzXCLOUVv0jtlVFWVcbWpDTyZmffgcqHwGct47?= =?utf-8?q?5vmosbNhoZg7wHnhkS8DKZ85HQh1OjDYZYALfCPtDNR6ohMal4KSvCUwgOmd5oU0F?= =?utf-8?q?/EOYYYFIUpXW85df4Fvmg2at6V+8wfazKc2qTS/YvMpsW8Ao9VQ4HjcjrxPMvVb33?= =?utf-8?q?L5Xz5iPB+EonUt7Pu+5FTwhl9u5Bh8bXzhcXkDkvjv+j8O4dSUkFre5VhoDb+6wLK?= =?utf-8?q?eWVFfHt4kXzd8Po+ROGbrSDjO7NHow7SRM+WbYPb8WEqYZHgAcy6WxB9WONJeqkwj?= =?utf-8?q?ExjfaQAH6+LP0YyJ/aGn6l0BcyryXALZGWrRCMQXcmopWEWdrJNbzYFMCS9i9uw5J?= =?utf-8?q?XUdZqzWfR3XrId6uUCz/L3ybTKANq5w8hkI6lI/bFybodo00Jq7GVlZCCIDKsL0ib?= =?utf-8?q?YYCP0Gf8KiZChK/YjZaOCZaz89DxVDuJBc981FCzwDM/bLHqYB6Nf8pZ0s2+iwVjr?= =?utf-8?q?LMBdhBkaq+pRKSQyLVMZ/mfeaZRSz1vSMcDV31nhNNcTC8TR3RQJbfXa4TOHw6cPs?= =?utf-8?q?WUQqx4lks226HCqQGq9UXbnVvo5LsQV120GGzP+IFS9lGMIkKpvs+diqB/ds8dlBc?= =?utf-8?q?8f4Vv31RTGLRMbohDYwAsIdEyg81N62VwsZR9ZPwDbsLbU0qsE4UnzlPTwrInKooY?= =?utf-8?q?VzigTdwcXp+xpoOIr5URZK+EbvERZIN7MA=3D=3D?= X-OriginatorOrg: wolfvision.net X-MS-Exchange-CrossTenant-Network-Message-Id: 567bdf4d-b39b-455f-eb06-08dc31f7ea78 X-MS-Exchange-CrossTenant-AuthSource: DU0PR08MB9155.eurprd08.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 20 Feb 2024 09:40:04.1094 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: e94ec9da-9183-471e-83b3-51baa8eb804f X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: Vu5ZFPPsNjbahvXDAx943VHUxAe/by6S56F1nvdjV4ZRPy53M8ZPt7mfxMVvIE4H9qXut8OPIHnuRnN56J2CFrc+6ackZFliRIuKYYUVyGU= X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB9PR08MB6763 X-LSpam-Score: -3.0 (---) X-LSpam-Report: No, score=-3.0 required=5.0 tests=ARC_SIGNED=0.001,ARC_VALID=-0.1,DKIM_SIGNED=0.1,DKIM_VALID=-0.1,DKIM_VALID_AU=-0.1,DMARC_PASS=-0.001,HEADER_FROM_DIFFERENT_DOMAINS=0.5,MAILING_LIST_MULTI=-1,RCVD_IN_DNSWL_MED=-2.3,SPF_HELO_NONE=0.001,SPF_PASS=-0.001 autolearn=ham autolearn_force=no |
Series |
media: rockchip: cif: add support for rk3568 vicap
|
|
Commit Message
Michael Riesch
Feb. 20, 2024, 9:39 a.m. UTC
Move the documentation of clocks and resets to a allOf: structure in order
to allow for different variants of the IP block.
Signed-off-by: Michael Riesch <michael.riesch@wolfvision.net>
---
.../bindings/media/rockchip,px30-vip.yaml | 58 ++++++++++++++--------
1 file changed, 37 insertions(+), 21 deletions(-)
Comments
Hey, On Tue, Feb 20, 2024 at 10:39:14AM +0100, Michael Riesch wrote: > Move the documentation of clocks and resets to a allOf: structure in order > to allow for different variants of the IP block. > > Signed-off-by: Michael Riesch <michael.riesch@wolfvision.net> > --- > .../bindings/media/rockchip,px30-vip.yaml | 58 ++++++++++++++-------- > 1 file changed, 37 insertions(+), 21 deletions(-) > > diff --git a/Documentation/devicetree/bindings/media/rockchip,px30-vip.yaml b/Documentation/devicetree/bindings/media/rockchip,px30-vip.yaml > index 675a1ea47210..7168f166798c 100644 > --- a/Documentation/devicetree/bindings/media/rockchip,px30-vip.yaml > +++ b/Documentation/devicetree/bindings/media/rockchip,px30-vip.yaml > @@ -24,32 +24,16 @@ properties: > interrupts: > maxItems: 1 > > - clocks: > - items: > - - description: ACLK > - - description: HCLK > - - description: PCLK > - > - clock-names: > - items: > - - const: aclk > - - const: hclk > - - const: pclk > + clocks: true > + > + clock-names: true This is, unfortunately, not how we like multiple soc support to be handled. Instead, the widest constraints are added at the top level and constrained by the allOf. If none of the names etc are shared, at least the widest constraints for minItems and maxItems should be able to be here. That said, this patch should be squashed with the patch that actually adds the other device to the binding. Cheers, Conor. > > iommus: > maxItems: 1 > > - resets: > - items: > - - description: AXI > - - description: AHB > - - description: PCLK IN > + resets: true > > - reset-names: > - items: > - - const: axi > - - const: ahb > - - const: pclkin > + reset-names: true > > power-domains: > maxItems: 1 > @@ -85,6 +69,38 @@ required: > - clocks > - ports > > +allOf: > + - if: > + properties: > + compatible: > + contains: > + const: rockchip,px30-vip > + then: > + properties: > + clocks: > + items: > + - description: ACLK > + - description: HCLK > + - description: PCLK > + > + clock-names: > + items: > + - const: aclk > + - const: hclk > + - const: pclk > + > + resets: > + items: > + - description: AXI > + - description: AHB > + - description: PCLK IN > + > + reset-names: > + items: > + - const: axi > + - const: ahb > + - const: pclkin > + > additionalProperties: false > > examples: > > -- > 2.30.2 >
Hi Conor, On 2/20/24 19:58, Conor Dooley wrote: > Hey, > > On Tue, Feb 20, 2024 at 10:39:14AM +0100, Michael Riesch wrote: >> Move the documentation of clocks and resets to a allOf: structure in order >> to allow for different variants of the IP block. >> >> Signed-off-by: Michael Riesch <michael.riesch@wolfvision.net> >> --- >> .../bindings/media/rockchip,px30-vip.yaml | 58 ++++++++++++++-------- >> 1 file changed, 37 insertions(+), 21 deletions(-) >> >> diff --git a/Documentation/devicetree/bindings/media/rockchip,px30-vip.yaml b/Documentation/devicetree/bindings/media/rockchip,px30-vip.yaml >> index 675a1ea47210..7168f166798c 100644 >> --- a/Documentation/devicetree/bindings/media/rockchip,px30-vip.yaml >> +++ b/Documentation/devicetree/bindings/media/rockchip,px30-vip.yaml >> @@ -24,32 +24,16 @@ properties: >> interrupts: >> maxItems: 1 >> >> - clocks: >> - items: >> - - description: ACLK >> - - description: HCLK >> - - description: PCLK >> - >> - clock-names: >> - items: >> - - const: aclk >> - - const: hclk >> - - const: pclk >> + clocks: true >> + >> + clock-names: true > > This is, unfortunately, not how we like multiple soc support to be > handled. Instead, the widest constraints are added at the top level > and constrained by the allOf. If none of the names etc are shared, at > least the widest constraints for minItems and maxItems should be able to > be here. Just to make sure I got it right: clocks: minItems: 3 maxItems: 4 items: - const: aclk - const: hclk ... allOf: ... - if: properties: compatible: contains: const: rockchip,rk3568-vicap then: properties: clocks: - const: aclk - const: hclk - const: dclk - const: iclk Is this the desired way? > That said, this patch should be squashed with the patch that actually > adds the other device to the binding. That can be arranged. Best regards, Michael > > Cheers, > Conor. > >> >> iommus: >> maxItems: 1 >> >> - resets: >> - items: >> - - description: AXI >> - - description: AHB >> - - description: PCLK IN >> + resets: true >> >> - reset-names: >> - items: >> - - const: axi >> - - const: ahb >> - - const: pclkin >> + reset-names: true >> >> power-domains: >> maxItems: 1 >> @@ -85,6 +69,38 @@ required: >> - clocks >> - ports >> >> +allOf: >> + - if: >> + properties: >> + compatible: >> + contains: >> + const: rockchip,px30-vip >> + then: >> + properties: >> + clocks: >> + items: >> + - description: ACLK >> + - description: HCLK >> + - description: PCLK >> + >> + clock-names: >> + items: >> + - const: aclk >> + - const: hclk >> + - const: pclk >> + >> + resets: >> + items: >> + - description: AXI >> + - description: AHB >> + - description: PCLK IN >> + >> + reset-names: >> + items: >> + - const: axi >> + - const: ahb >> + - const: pclkin >> + >> additionalProperties: false >> >> examples: >> >> -- >> 2.30.2 >>
On Fri, Feb 23, 2024 at 08:03:20AM +0100, Michael Riesch wrote: > Hi Conor, > > On 2/20/24 19:58, Conor Dooley wrote: > > Hey, > > > > On Tue, Feb 20, 2024 at 10:39:14AM +0100, Michael Riesch wrote: > >> Move the documentation of clocks and resets to a allOf: structure in order > >> to allow for different variants of the IP block. > >> > >> Signed-off-by: Michael Riesch <michael.riesch@wolfvision.net> > >> --- > >> .../bindings/media/rockchip,px30-vip.yaml | 58 ++++++++++++++-------- > >> 1 file changed, 37 insertions(+), 21 deletions(-) > >> > >> diff --git a/Documentation/devicetree/bindings/media/rockchip,px30-vip.yaml b/Documentation/devicetree/bindings/media/rockchip,px30-vip.yaml > >> index 675a1ea47210..7168f166798c 100644 > >> --- a/Documentation/devicetree/bindings/media/rockchip,px30-vip.yaml > >> +++ b/Documentation/devicetree/bindings/media/rockchip,px30-vip.yaml > >> @@ -24,32 +24,16 @@ properties: > >> interrupts: > >> maxItems: 1 > >> > >> - clocks: > >> - items: > >> - - description: ACLK > >> - - description: HCLK > >> - - description: PCLK > >> - > >> - clock-names: > >> - items: > >> - - const: aclk > >> - - const: hclk > >> - - const: pclk > >> + clocks: true > >> + > >> + clock-names: true > > > > This is, unfortunately, not how we like multiple soc support to be > > handled. Instead, the widest constraints are added at the top level > > and constrained by the allOf. If none of the names etc are shared, at > > least the widest constraints for minItems and maxItems should be able to > > be here. > > Just to make sure I got it right: > > clocks: > minItems: 3 > maxItems: 4 > items: > - const: aclk > - const: hclk If the names themselves are all different, I wouldn't bother with this, and just constrain the numbers at the top level. Otherwise ye, on the right track here.
diff --git a/Documentation/devicetree/bindings/media/rockchip,px30-vip.yaml b/Documentation/devicetree/bindings/media/rockchip,px30-vip.yaml index 675a1ea47210..7168f166798c 100644 --- a/Documentation/devicetree/bindings/media/rockchip,px30-vip.yaml +++ b/Documentation/devicetree/bindings/media/rockchip,px30-vip.yaml @@ -24,32 +24,16 @@ properties: interrupts: maxItems: 1 - clocks: - items: - - description: ACLK - - description: HCLK - - description: PCLK - - clock-names: - items: - - const: aclk - - const: hclk - - const: pclk + clocks: true + + clock-names: true iommus: maxItems: 1 - resets: - items: - - description: AXI - - description: AHB - - description: PCLK IN + resets: true - reset-names: - items: - - const: axi - - const: ahb - - const: pclkin + reset-names: true power-domains: maxItems: 1 @@ -85,6 +69,38 @@ required: - clocks - ports +allOf: + - if: + properties: + compatible: + contains: + const: rockchip,px30-vip + then: + properties: + clocks: + items: + - description: ACLK + - description: HCLK + - description: PCLK + + clock-names: + items: + - const: aclk + - const: hclk + - const: pclk + + resets: + items: + - description: AXI + - description: AHB + - description: PCLK IN + + reset-names: + items: + - const: axi + - const: ahb + - const: pclkin + additionalProperties: false examples: