Received: by 2002:ab2:3350:0:b0:1f4:6588:b3a7 with SMTP id o16csp2078182lqe; Tue, 9 Apr 2024 08:58:51 -0700 (PDT) X-Forwarded-Encrypted: i=3; AJvYcCWS1lq6aaaRp6o4s58Wn7VB1UoXkOzFfN+USdcfoWrJO04HagTI71IrhdxZWsRGHlYuYD2KNxm7wIoB2jseclsI5VeyP6x9RuCDagd0sQ== X-Google-Smtp-Source: AGHT+IFGVLuQRluc7/5EldUWo+uVLtFEKpQUAUUUyqHXXlUHbMaAsslGjjoAsnTvNO5EUHX/Ix2A X-Received: by 2002:a19:ca07:0:b0:516:d25c:ed9e with SMTP id a7-20020a19ca07000000b00516d25ced9emr8366034lfg.13.1712678331766; Tue, 09 Apr 2024 08:58:51 -0700 (PDT) ARC-Seal: i=2; a=rsa-sha256; t=1712678331; cv=pass; d=google.com; s=arc-20160816; b=FfcAuVLlIxV3GvTX289ncA2XPn9NlQV8veomyNcu7CAIugMshenVOueIrxC+Xp6Ihs GcSwgu2feRi4BmRrSVlIjFjvoTAk97+KbpPhjf773Tze1UzMbWh5UNxGqeqQDPLpw9Lk GWZuxXDw43VOy8KewMEPR3vZnng4RbxUCrcwbT0EajxaThZ+uCzBWNBkw7Rq5tUYAkzS KCDxvKXzDsu/4R1gyTKQkQQdKinh2X0XJLqRGiMq4HZs/aNbSQsgu4JpOxM0nPwYpwKp 2UklYSC76Y94lXHNal7fxM3cTF5iZZAEqCVPLNrko7bS4p72jeYaC5QMT8jTDTnH2bxh zCnA== ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:list-unsubscribe:list-subscribe:list-id:precedence :subject:date:from:dkim-signature; bh=QLcp3+Va9cwx+JRBSgkLkETkMLQZVOvTAFT/4LP/EV8=; fh=57ylmEJf4L+ab5JW9VDoPKBjQbUSU1WR6XAwF32mgs8=; b=LO0ZicMEmprBN6q8YYDw0XG632+mAwXOocKgJQP3mSZhL0ongiqZKGVKahTJFH/XwP sgY0Z98Wq7Ss0B5PtiQyieAPwGUJQtWdZI9Z+pd+8h2d1c3U5+XQr0i+psS1WQl8M2lc DK7R3yr/01xF7WT3oaXmrMzjBqs40LUDdqhN4h1E/iMypiKr7Z+zozSBjvK4PrrYg1eH E9oYlycCk4eEAbO9YsZuAdCuDbI4ryImInocnfVi3Zp8dWc1k3nxdKxwNehsKr2mZSPN HnCATWICLrrHHp+JGk++X0voDD/s/I3s9dusLSZ/hdJl+c0PSznPPyvhpXGSm7MxyGGI xOBQ==; dara=google.com ARC-Authentication-Results: i=2; mx.google.com; dkim=pass header.i=@bootlin.com header.s=gm1 header.b=cAtXxPcx; arc=pass (i=1 spf=pass spfdomain=bootlin.com dkim=pass dkdomain=bootlin.com dmarc=pass fromdomain=bootlin.com); spf=pass (google.com: domain of linux-kernel+bounces-137168-linux.lists.archive=gmail.com@vger.kernel.org designates 2604:1380:4601:e00::3 as permitted sender) smtp.mailfrom="linux-kernel+bounces-137168-linux.lists.archive=gmail.com@vger.kernel.org"; dmarc=pass (p=REJECT sp=REJECT dis=NONE) header.from=bootlin.com Return-Path: Received: from am.mirrors.kernel.org (am.mirrors.kernel.org. [2604:1380:4601:e00::3]) by mx.google.com with ESMTPS id du3-20020a17090772c300b00a4747d80d6esi5004259ejc.649.2024.04.09.08.58.51 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 09 Apr 2024 08:58:51 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel+bounces-137168-linux.lists.archive=gmail.com@vger.kernel.org designates 2604:1380:4601:e00::3 as permitted sender) client-ip=2604:1380:4601:e00::3; Authentication-Results: mx.google.com; dkim=pass header.i=@bootlin.com header.s=gm1 header.b=cAtXxPcx; arc=pass (i=1 spf=pass spfdomain=bootlin.com dkim=pass dkdomain=bootlin.com dmarc=pass fromdomain=bootlin.com); spf=pass (google.com: domain of linux-kernel+bounces-137168-linux.lists.archive=gmail.com@vger.kernel.org designates 2604:1380:4601:e00::3 as permitted sender) smtp.mailfrom="linux-kernel+bounces-137168-linux.lists.archive=gmail.com@vger.kernel.org"; dmarc=pass (p=REJECT sp=REJECT dis=NONE) header.from=bootlin.com 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 12DA41F299DF for ; Tue, 9 Apr 2024 15:08:17 +0000 (UTC) Received: from localhost.localdomain (localhost.localdomain [127.0.0.1]) by smtp.subspace.kernel.org (Postfix) with ESMTP id E5A731311B5; Tue, 9 Apr 2024 15:04:37 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=bootlin.com header.i=@bootlin.com header.b="cAtXxPcx" Received: from relay6-d.mail.gandi.net (relay6-d.mail.gandi.net [217.70.183.198]) (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 BBCEF137C23; Tue, 9 Apr 2024 15:04:33 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=217.70.183.198 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1712675076; cv=none; b=QtLj+oM3Z+Cw9KG1blGDNSWWLrPNKSJip7XZ2UUXmJWU0o7IGqQ7mo5abRNNgDpotkyuUU8pvmCTyRUE/3CtnNE4Yn9ie3ERU0+5Yz+cQrG1JMiV91eZf83Tqt7nDrlaNnfwGIToIPSywrb4FLcB2cO08q/6TsTINO+1/8cwp5M= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1712675076; c=relaxed/simple; bh=FrzzIw0YtfKARrmwVKjGaGKrYFiA6koxlrMYcoMB5rE=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=E1ipX5UmExyvyF3gVMnQYA0sWRr8CinWwBqnCYsOLPwqGRmRLko/XIRGc8IvtbMkuAsLz1UXcn9fZl0klwfSKwVIH0RkzUYW6zIgIKqglsMEchzLDV48+XuIqHkOZ6S5VS4F8ik9KpZT1eF0S8/wjn4odZb9PSftO9epDRsW0nw= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=bootlin.com; spf=pass smtp.mailfrom=bootlin.com; dkim=pass (2048-bit key) header.d=bootlin.com header.i=@bootlin.com header.b=cAtXxPcx; arc=none smtp.client-ip=217.70.183.198 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=bootlin.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=bootlin.com Received: by mail.gandi.net (Postfix) with ESMTPSA id DFB9CC0003; Tue, 9 Apr 2024 15:04:30 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=bootlin.com; s=gm1; t=1712675072; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=QLcp3+Va9cwx+JRBSgkLkETkMLQZVOvTAFT/4LP/EV8=; b=cAtXxPcxVAvU0XcxurgPyIBKq8ezUHUYIn8j7RKZB/yzQj0/2gag3Q7jxtDptdvhTbWC7H A7QHqDhNwREIXd+sg02/4rCUWJsgyWqAS42CeGoU+lcSfNOG2r8YqgGs7MVWfMTVCygo2k HSidhpdXc9C1Jt7kxSy1RHjlLNNzBAc867vSaQTF7FcKMzcnRLImQ/CN1G0lEp78Rjr7P8 2CSfLu7Tv689ds6tONVStI+0UBXRIzJe7O0TEF4P+K5FX3GhZiyvHXHWuQ0q8e0YUMZTid e+wXDi23r+QyKl39nIfYwWW356PgzxCYXzOXrf9S5KKgw8u3wrDRjmsg9TvxvQ== From: Kory Maincent Date: Tue, 09 Apr 2024 17:04:01 +0200 Subject: [PATCH net-next v7 11/17] dt-bindings: net: pse-pd: Add another way of describing several PSE PIs Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: 8bit Message-Id: <20240409-feature_poe-v7-11-11e38efd4dee@bootlin.com> References: <20240409-feature_poe-v7-0-11e38efd4dee@bootlin.com> In-Reply-To: <20240409-feature_poe-v7-0-11e38efd4dee@bootlin.com> To: "David S. Miller" , Eric Dumazet , Jakub Kicinski , Paolo Abeni , Jonathan Corbet , Luis Chamberlain , Russ Weight , Greg Kroah-Hartman , "Rafael J. Wysocki" , Rob Herring , Krzysztof Kozlowski , Conor Dooley , Oleksij Rempel , Mark Brown , Frank Rowand , Andrew Lunn , Heiner Kallweit , Russell King Cc: Thomas Petazzoni , netdev@vger.kernel.org, linux-kernel@vger.kernel.org, linux-doc@vger.kernel.org, devicetree@vger.kernel.org, Dent Project , kernel@pengutronix.de, Maxime Chevallier , Kory Maincent X-Mailer: b4 0.14-dev X-GND-Sasl: kory.maincent@bootlin.com From: Kory Maincent (Dent Project) PSE PI setup may encompass multiple PSE controllers or auxiliary circuits that collectively manage power delivery to one Ethernet port. Such configurations might support a range of PoE standards and require the capability to dynamically configure power delivery based on the operational mode (e.g., PoE2 versus PoE4) or specific requirements of connected devices. In these instances, a dedicated PSE PI node becomes essential for accurately documenting the system architecture. This node would serve to detail the interactions between different PSE controllers, the support for various PoE modes, and any additional logic required to coordinate power delivery across the network infrastructure. The old usage of "#pse-cells" is unsuficient as it carries only the PSE PI index information. Signed-off-by: Kory Maincent --- Changes in v3: - New patch Changes in v4: - Remove $def - Fix pairset-names item list - Upgrade few properties description - Update the commit message Changes in v5: - Fix yamllint error. - Replace underscore by dash in properties names. - Add polarity-supported property. Changes in v6: - Reorder the pairset pinout table documentation to shrink the lines size. - Remove pairset and polarity as required fields. - Add vpwr-supply regulator supply. Changes in v7: - Fix weird characters issue. - Fix documentation nit. --- .../bindings/net/pse-pd/pse-controller.yaml | 101 ++++++++++++++++++++- 1 file changed, 98 insertions(+), 3 deletions(-) diff --git a/Documentation/devicetree/bindings/net/pse-pd/pse-controller.yaml b/Documentation/devicetree/bindings/net/pse-pd/pse-controller.yaml index 2d382faca0e6..f5c37e05731d 100644 --- a/Documentation/devicetree/bindings/net/pse-pd/pse-controller.yaml +++ b/Documentation/devicetree/bindings/net/pse-pd/pse-controller.yaml @@ -13,6 +13,7 @@ description: Binding for the Power Sourcing Equipment (PSE) as defined in the maintainers: - Oleksij Rempel + - Kory Maincent properties: $nodename: @@ -22,11 +23,105 @@ properties: description: Used to uniquely identify a PSE instance within an IC. Will be 0 on PSE nodes with only a single output and at least 1 on nodes - controlling several outputs. + controlling several outputs which are not described in the pse-pis + subnode. This property is deprecated, please use pse-pis instead. enum: [0, 1] -required: - - "#pse-cells" + pse-pis: + type: object + description: + Overview of the PSE PIs provided by the controller. + + properties: + "#address-cells": + const: 1 + + "#size-cells": + const: 0 + + required: + - "#address-cells" + - "#size-cells" + + patternProperties: + "^pse-pi@[0-9a-f]+$": + type: object + description: + PSE PI for power delivery via pairsets, compliant with IEEE + 802.3-2022, Section 145.2.4. Each pairset comprises a positive and + a negative VPSE pair, adhering to the pinout configurations + detailed in the standard. + See Documentation/networking/pse-pd/pse-pi.rst for details. + + properties: + reg: + description: + Address describing the PSE PI index. + maxItems: 1 + + "#pse-cells": + const: 0 + + pairset-names: + $ref: /schemas/types.yaml#/definitions/string-array + description: + Names of the pairsets as per IEEE 802.3-2022, Section 145.2.4. + Each name should correspond to a phandle in the 'pairset' + property pointing to the power supply for that pairset. + minItems: 1 + maxItems: 2 + items: + enum: + - alternative-a + - alternative-b + + pairsets: + $ref: /schemas/types.yaml#/definitions/phandle-array + description: + List of phandles, each pointing to the power supply for the + corresponding pairset named in 'pairset-names'. This property + aligns with IEEE 802.3-2022, Section 33.2.3 and 145.2.4. + PSE Pinout Alternatives (as per IEEE 802.3-2022 Table 145\u20133) + |-----------|---------------|---------------|---------------|---------------| + | Conductor | Alternative A | Alternative A | Alternative B | Alternative B | + | | (MDI-X) | (MDI) | (X) | (S) | + |-----------|---------------|---------------|---------------|---------------| + | 1 | Negative VPSE | Positive VPSE | - | - | + | 2 | Negative VPSE | Positive VPSE | - | - | + | 3 | Positive VPSE | Negative VPSE | - | - | + | 4 | - | - | Negative VPSE | Positive VPSE | + | 5 | - | - | Negative VPSE | Positive VPSE | + | 6 | Positive VPSE | Negative VPSE | - | - | + | 7 | - | - | Positive VPSE | Negative VPSE | + | 8 | - | - | Positive VPSE | Negative VPSE | + minItems: 1 + maxItems: 2 + + polarity-supported: + $ref: /schemas/types.yaml#/definitions/string-array + description: + Polarity configuration supported by the PSE PI pairsets. + minItems: 1 + maxItems: 4 + items: + enum: + - MDI-X + - MDI + - X + - S + + vpwr-supply: + description: Regulator power supply for the PSE PI. + + required: + - reg + - "#pse-cells" + +oneOf: + - required: + - "#pse-cells" + - required: + - pse-pis additionalProperties: true -- 2.34.1