From patchwork Sun Feb 12 12:16:29 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Janne Grunau X-Patchwork-Id: 55907 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:adf:eb09:0:0:0:0:0 with SMTP id s9csp1886547wrn; Sun, 12 Feb 2023 04:43:23 -0800 (PST) X-Google-Smtp-Source: AK7set914rqWcwdGtCD/jOzsrxjp4+IDM4pR2I+i18zYCkoW5vJH0DqBlNLoHrOqDcPh8WYJ6mk+ X-Received: by 2002:a17:90a:e7c1:b0:22c:1217:b0d9 with SMTP id kb1-20020a17090ae7c100b0022c1217b0d9mr24050794pjb.15.1676205802735; Sun, 12 Feb 2023 04:43:22 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1676205802; cv=none; d=google.com; s=arc-20160816; b=R17M6V1S7z1a11XaJSluI1+o50znFu1YBdS5r4r9NAprvWCdHpQXkZTLFalLLyZSIE d/0O/hVtTUFZbI/8Eb883m1azRFV68xqVcY9YZp87pxCPeRUXW3RiHLQoN+qDvdBtoVv MLoEbWjsV1XsRsOOT1OjyU7O5SrQqiEGzJGMfpGMq1RqvB17QDsccZTs9+SKdYdbswR+ kuLLlDY1xFuxXHnPHqCp+zCcSA5sWc5xSk71Kq7f938r+1yc/qliVBYasKp0R9UtdpGO sOgXVwJGQvP49ck5K8JTqkbXrXbXNnVt0nstxeu+5xByzi2axGrEd2wP44oesYipZDx8 uw1w== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:cc:to:in-reply-to:references:message-id :content-transfer-encoding:mime-version:subject:date:from; bh=RN7pt1EdKYeNAOvQmPmwqMsv7RLfPXf5M4RoLgR/fZM=; b=zuyIUihP1kg19v3QXsb1AGbTFqtjYc/E4I5ckxJemeNT2vNxhY0hpsHWmIv3DtSYHt gEWxZHtHVr8/15X7IqYuBj6WMMFMKGYLrVHBYifsYaScLIsnhI6Ihknwdr8Wy+Pr71V/ YiPUZNa6PxZZA8RlWeK/YrLCRXj49iUQDLSbVW5vcyjWcJApIIrtvjgDWnVCmB8hTuel CayVqgt/NshQZlXNcer3eue8L5QkUWkJlo6AggRgj2XWG4QaGQb2iX+EGRiul0/FhTOc Y1qp5SZXrcyKSppkzUsMc0q6ITUQmg2ysBUtrEPjHyc4GpuSLRt3/LF/g+AVcYvrTkAg E/iA== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id mh15-20020a17090b4acf00b002307e5c5f74si9115952pjb.185.2023.02.12.04.43.10; Sun, 12 Feb 2023 04:43:22 -0800 (PST) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) client-ip=2620:137:e000::1:20; Authentication-Results: mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S229729AbjBLMQo (ORCPT + 99 others); Sun, 12 Feb 2023 07:16:44 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:60166 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S229532AbjBLMQf (ORCPT ); Sun, 12 Feb 2023 07:16:35 -0500 Received: from soltyk.jannau.net (soltyk.jannau.net [144.76.91.90]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id DA4D9EFBF; Sun, 12 Feb 2023 04:16:33 -0800 (PST) Received: from robin.home.jannau.net (p579ad32f.dip0.t-ipconnect.de [87.154.211.47]) by soltyk.jannau.net (Postfix) with ESMTPSA id 9C93B26F76C; Sun, 12 Feb 2023 13:16:31 +0100 (CET) From: Janne Grunau Date: Sun, 12 Feb 2023 13:16:29 +0100 Subject: [PATCH v2 1/4] dt-bindings: net: Add network-class schema for mac-address properties MIME-Version: 1.0 Message-Id: <20230203-dt-bindings-network-class-v2-1-499686795073@jannau.net> References: <20230203-dt-bindings-network-class-v2-0-499686795073@jannau.net> In-Reply-To: <20230203-dt-bindings-network-class-v2-0-499686795073@jannau.net> To: "David S. Miller" , Eric Dumazet , Jakub Kicinski , Paolo Abeni , Rob Herring , Krzysztof Kozlowski , Mailing List , Kalle Valo , van Spriel , =?utf-8?b?SsOpcsO0bWUgUG91aWxsZXI=?= , Dinh Nguyen , Ley Foon Tan , Chee Nouk Phoon Cc: netdev@vger.kernel.org, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, linux-wireless@vger.kernel.org, Janne Grunau X-Mailer: b4 0.12.1 X-Developer-Signature: v=1; a=openpgp-sha256; l=4501; i=j@jannau.net; h=from:subject:message-id; bh=8HRhQ9UDUyunqEi/R8RirwwIC4gcDZhwkLZD91gnvCY=; b=owGbwMvMwCG2UNrmdq9+ahrjabUkhuQXN+ZNdPuo4jAjVC+vj0Phyu2gGx+v9zVPY4tYrfkz9 M9cH/uGjlIWBjEOBlkxRZYk7ZcdDKtrFGNqH4TBzGFlAhnCwMUpABNpF2b4n94SrMX/dfqZXJ+w v5NifxzVUI4zvSv926d3aje3mcRpU4Z/eqeCfRq8dPYu2vikp9tEy2/ZeQmBhgPH39+9ZvZf/Jg KBwA= X-Developer-Key: i=j@jannau.net; a=openpgp; fpr=8B336A6BE4E5695E89B8532B81E806F586338419 X-Spam-Status: No, score=-1.9 required=5.0 tests=BAYES_00,SPF_HELO_NONE, SPF_NONE autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org X-getmail-retrieved-from-mailbox: =?utf-8?q?INBOX?= X-GMAIL-THRID: =?utf-8?q?1757629175746080597?= X-GMAIL-MSGID: =?utf-8?q?1757629175746080597?= The ethernet-controller schema specifies "mac-address" and "local-mac-address" but other network devices such as wireless network adapters use mac addresses as well. The Devicetree Specification, Release v0.3 specifies in section 4.3.1 a generic "Network Class Binding" with "address-bits", "mac-address", "local-mac-address" and "max-frame-size". This schema specifies the "address-bits" property and moves the remaining properties over from the ethernet-controller.yaml schema. The "max-frame-size" property is used to describe the maximal payload size despite its name. Keep the description from ethernet-controller specifying this property as MTU. The contradictory description in the Devicetree Specification is ignored. Signed-off-by: Janne Grunau --- Changed in v2: - restrict address-size to 48 bits for strict mac address size validation - move max-frame-size as well --- .../bindings/net/ethernet-controller.yaml | 25 +----------- .../devicetree/bindings/net/network-class.yaml | 44 ++++++++++++++++++++++ 2 files changed, 45 insertions(+), 24 deletions(-) diff --git a/Documentation/devicetree/bindings/net/ethernet-controller.yaml b/Documentation/devicetree/bindings/net/ethernet-controller.yaml index 00be387984ac..1ad66af55d77 100644 --- a/Documentation/devicetree/bindings/net/ethernet-controller.yaml +++ b/Documentation/devicetree/bindings/net/ethernet-controller.yaml @@ -17,30 +17,6 @@ properties: $ref: /schemas/types.yaml#/definitions/string description: Human readable label on a port of a box. - local-mac-address: - description: - Specifies the MAC address that was assigned to the network device. - $ref: /schemas/types.yaml#/definitions/uint8-array - minItems: 6 - maxItems: 6 - - mac-address: - description: - Specifies the MAC address that was last used by the boot - program; should be used in cases where the MAC address assigned - to the device by the boot program is different from the - local-mac-address property. - $ref: /schemas/types.yaml#/definitions/uint8-array - minItems: 6 - maxItems: 6 - - max-frame-size: - $ref: /schemas/types.yaml#/definitions/uint32 - description: - Maximum transfer unit (IEEE defined MTU), rather than the - maximum frame size (there\'s contradiction in the Devicetree - Specification). - max-speed: $ref: /schemas/types.yaml#/definitions/uint32 description: @@ -226,6 +202,7 @@ dependencies: pcs-handle-names: [pcs-handle] allOf: + - $ref: /schemas/net/network-class.yaml# - if: properties: phy-mode: diff --git a/Documentation/devicetree/bindings/net/network-class.yaml b/Documentation/devicetree/bindings/net/network-class.yaml new file mode 100644 index 000000000000..6c42c783cb03 --- /dev/null +++ b/Documentation/devicetree/bindings/net/network-class.yaml @@ -0,0 +1,44 @@ +# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause +%YAML 1.2 +--- +$id: http://devicetree.org/schemas/net/network-class.yaml# +$schema: http://devicetree.org/meta-schemas/core.yaml# + +title: Network Class Common Properties + +maintainers: + - Devicetree Specification Mailing List + +properties: + address-bits: + description: + Specifies number of address bits required to address the device described + by this node. This property specifies number of bits in MAC address. + default: 48 + const: 48 + + local-mac-address: + description: + Specifies MAC address that was assigned to the network device described by + the node containing this property. + $ref: /schemas/types.yaml#/definitions/uint8-array + minItems: 6 + maxItems: 6 + + mac-address: + description: + Specifies the MAC address that was last used by the boot program. This + property should be used in cases where the MAC address assigned to the + device by the boot program is different from the + local-mac-address property. This property shall be used only if the value + differs from local-mac-address property value. + $ref: /schemas/types.yaml#/definitions/uint8-array + minItems: 6 + maxItems: 6 + + max-frame-size: + $ref: /schemas/types.yaml#/definitions/uint32 + description: + Maximum transfer unit (IEEE defined MTU). + +additionalProperties: true