Received: by 2002:a05:6358:3188:b0:123:57c1:9b43 with SMTP id q8csp397587rwd; Thu, 8 Jun 2023 02:12:35 -0700 (PDT) X-Google-Smtp-Source: ACHHUZ4ZX5gpd2ffTfc5pcX+eIBUbdkfte9UZVh1jFo76xwmv27zckn0qv4sypdnuNQCM4Vl9a1N X-Received: by 2002:a67:ee45:0:b0:43b:3553:f53 with SMTP id g5-20020a67ee45000000b0043b35530f53mr1596453vsp.29.1686215555040; Thu, 08 Jun 2023 02:12:35 -0700 (PDT) ARC-Seal: i=2; a=rsa-sha256; t=1686215554; cv=pass; d=google.com; s=arc-20160816; b=IIn5TNK8QyZFgEm4RsVXY2hDAYJJE3j4BJqUtjyopsE+WTaeOHXpZfkmHYEx8VdvwZ QoZtU0XbOcIX0QVFMPAKQgM1DNI82QC4287df9+NiD1AfiwvKNhOiy+HUmKT183rfNgr 5+ygIad5KfNaF4yZVF4o1NX56MbnJzIBKJagNm6lciWs753giBuqZOZ7wKGhHgf05cKx yGr9Q9gg6tqczLNnOzvn9NjknF2GBHR569yu7Ft7rwxop4bcVsjl7d8TjzfFQ1am6tS+ xJKFemCUwdGHDAbt5lnckR6tOlTDM748rc0vD/Hpo/ip6Yc6x/CrDeKeuTNxD2KJglfx AglA== ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:mime-version :message-id:date:subject:cc:to:from:dkim-signature; bh=jRIQWFTIeB/XgsQIfptGbRQO6fe2GDJT4KCiB2W54zM=; b=s4IhZTLYRMQKS+t769mDBMUtDkBoY9lAiEWJebvejNW1HJgV1QphimznpBOWLPjJJg 4/gFb6/D76xcFVTuCKmCEjE7zlWxUzUZkLM0knyLh6wED+sAff9h7rtvyXjMt7Z4RuHv VlRxWIURs5D7SWJlO39EhmK9op4OWM50M4sNVBkPsXFpD8RbajlMiDB1mUBegE0ybFY1 R2I2YuW4kd4gIt+fJZcboyd0sKYQsQf+35VPbgdlx5VlgBJq7768W0qH33TAJ9wFf0zZ VvouSzVuHM0u10hJZPiCjHKpJNuLdC2/6pSZ4m12hcqlN4jmV7+lZZTpT3t/5iI2+8+P 3TjQ== ARC-Authentication-Results: i=2; mx.google.com; dkim=pass header.i=@amd.com header.s=selector1 header.b=2NRnQ9iT; arc=pass (i=1); 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; dmarc=pass (p=QUARANTINE sp=QUARANTINE dis=NONE) header.from=amd.com Return-Path: Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id a71-20020a63904a000000b0053f327d0321si729032pge.323.2023.06.08.02.12.22; Thu, 08 Jun 2023 02:12:34 -0700 (PDT) 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; dkim=pass header.i=@amd.com header.s=selector1 header.b=2NRnQ9iT; arc=pass (i=1); 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; dmarc=pass (p=QUARANTINE sp=QUARANTINE dis=NONE) header.from=amd.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S235242AbjFHIZN (ORCPT + 99 others); Thu, 8 Jun 2023 04:25:13 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:60962 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S230499AbjFHIZL (ORCPT ); Thu, 8 Jun 2023 04:25:11 -0400 Received: from NAM11-DM6-obe.outbound.protection.outlook.com (mail-dm6nam11on2042.outbound.protection.outlook.com [40.107.223.42]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id B943DE43; Thu, 8 Jun 2023 01:25:09 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=fKV4Zq6IRg49ADghmgA8H4czqDMRn7B4cgRzcdI2rnfS5q3F8g5vi2PJUlN/B7KS7M0FIv6KPSW0x3ID/n6RdkYxIlVDjc6YMEvjXabs4gaRwt4dw/ksi9KqJ/l5gq2q8w5h2t3AhBTeEVq0wEgz41pkxFHP1Z+erexe7eKVMHjIs18wwt8/REy9TttVJo/h4CkTX8bO4X5yACuX+SDoda/BDmiX+W3ez9Jmz8aY+qPEruyO6C2+y3Ru59xPjQFG6JVGW3s0E2GZW67DEbwnO0JEOGyb1Il33w4UafA3CS79VI5sg4bIzOiiJ+B5d1rqdTC+odn2uQrA9TCBbPF1AA== 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=jRIQWFTIeB/XgsQIfptGbRQO6fe2GDJT4KCiB2W54zM=; b=d8B0NDGqEGpW0AnFHIZynyxnb8qbvV9oUx56BceO6y+s+bBq5EWOxXYa+U3Vwb87BtBcXDCzQdr2p1Xv3Tgslb/slWNn+TpMhXzhCsukqojAFFiB6nYfNHVgTCKgoGNhgeYvJSTU+qvQ26tRg4OoM1DQZKXEnmFZ7sAM+IEedfFEvKqUCjto5FmsTCWpzEKKh3aCMO+YXUaw5ra/xfHhCohGARmKrTZCLFzVjYUZLXNs0nBlII+bd9LUxDkMGcSPfLiPQj89mj8cVyxMWNfZfkReESYkLDRYFdoN91SYQuTIJyUk7Q9TyJs32Xa0ixj0j/ZR2CFkdFbRgXhy8tvB5A== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=temperror (sender ip is 165.204.84.17) smtp.rcpttodomain=davemloft.net smtp.mailfrom=amd.com; dmarc=temperror action=none header.from=amd.com; dkim=none (message not signed); arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=jRIQWFTIeB/XgsQIfptGbRQO6fe2GDJT4KCiB2W54zM=; b=2NRnQ9iT6vHFMF7me57jZnAd4XKCUDyKf4aJlFGXcgbu4LuBuh0YWLc/tDm+GUfSU5UQdXS/EvARoh4AtBNwW4A5oQ7aYJnzj3D1pbTJX+SpwjMbySe/wfqjJIqLoHoOoEtPEvKzoMemzt4MLZ8IWHQXBiwJm0PE25e9BYNX3OQ= Received: from MW3PR05CA0017.namprd05.prod.outlook.com (2603:10b6:303:2b::22) by CY8PR12MB7123.namprd12.prod.outlook.com (2603:10b6:930:60::18) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.33; Thu, 8 Jun 2023 08:25:07 +0000 Received: from CO1PEPF000044EE.namprd05.prod.outlook.com (2603:10b6:303:2b:cafe::bb) by MW3PR05CA0017.outlook.office365.com (2603:10b6:303:2b::22) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6477.19 via Frontend Transport; Thu, 8 Jun 2023 08:25:06 +0000 X-MS-Exchange-Authentication-Results: spf=temperror (sender IP is 165.204.84.17) smtp.mailfrom=amd.com; dkim=none (message not signed) header.d=none;dmarc=temperror action=none header.from=amd.com; Received-SPF: TempError (protection.outlook.com: error in processing during lookup of amd.com: DNS Timeout) Received: from SATLEXMB03.amd.com (165.204.84.17) by CO1PEPF000044EE.mail.protection.outlook.com (10.167.241.68) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.20.6477.13 via Frontend Transport; Thu, 8 Jun 2023 08:25:05 +0000 Received: from SATLEXMB07.amd.com (10.181.41.45) by SATLEXMB03.amd.com (10.181.40.144) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2375.34; Thu, 8 Jun 2023 03:25:03 -0500 Received: from SATLEXMB03.amd.com (10.181.40.144) by SATLEXMB07.amd.com (10.181.41.45) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2375.34; Thu, 8 Jun 2023 01:25:02 -0700 Received: from xhdsneeli40.xilinx.com (10.180.168.240) by SATLEXMB03.amd.com (10.181.40.144) with Microsoft SMTP Server id 15.1.2375.34 via Frontend Transport; Thu, 8 Jun 2023 03:24:58 -0500 From: Sarath Babu Naidu Gaddam To: , , , , , CC: , , , , , , , , , Subject: [PATCH net-next V8] dt-bindings: net: xlnx,axi-ethernet: convert bindings document to yaml Date: Thu, 8 Jun 2023 13:54:58 +0530 Message-ID: <20230608082458.280208-1-sarath.babu.naidu.gaddam@amd.com> X-Mailer: git-send-email 2.25.1 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Content-Type: text/plain X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: CO1PEPF000044EE:EE_|CY8PR12MB7123:EE_ X-MS-Office365-Filtering-Correlation-Id: b3eca0d6-9365-4233-92e1-08db67f9dced X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: Qx7tHeV7NQn6fklZvbbnmVSr5FPPdcO07g+o5W7t0xwtwJDNMuNfZvE/jMi+fdFLZeLFykqHW2w/ohO2bzNoERfkjeJHs6ajjmTtNBBauozWSh4RrWchiAF2l1m7tdlbEx68/UBWb7eutVfD7O9g/aMaub1tDUOIY4INQmo2DTQjLEs7l6v7G/Yx9Md99w0iNE2lF6CkO/w9D1gd+9y0oiLF/Tfor4OXZK98RFVUZAZQQiTX3nKXajrrqp7QZtNh9VsbJEAaH+97g7Dwnc3fiVCSvMFKRdRNTeWwxJ/tmSxOYSlVHP7+DeBwBHKMdeb7w0WWQvW4gahcs4JijInMfYXCbO7mX5KQBRoDmAsILQbjTGYevBlCyK9WonZtScWsUyOlk2xAqn1OsMGLy6wYWl2OaK4c57/lIj+cMK3MyzT01WsOclIqMxz3L5GbmyUBaXTYge3IrVkfISFDk6CO9+5pdQ4TMC/Vv3DvE/XS+8M6qXj7EskFMTN7buYbkoMO4sdKzgcUBuERJ6wHTbPC6uDdkkMRvXQ0OCnjoWMzNFIwfh2D1H1Ae2QGqBTKzCKpUXZdrpGLVxD4TYfldh73Z2SEmvNMgX0cmlNPN/6sVZ/WNOxsYlEDXOgI4DMRuUC15s/AkRacNyd28feB9bOqhtRX9J1UmKO2hbTNefFrw7PdYFbDGNO82heIAzGxz9oEVDOsKHetRCpobPbawQ/LTY0iJvy49SLDL4CAgfBGaolgWgrHX/u3t+0EmNDq0r2bkfTDgSYMZBWfPPBxPQ+6FgGNMn6b4sD+0X73PRbjUCM= X-Forefront-Antispam-Report: CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB03.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230028)(4636009)(376002)(346002)(136003)(396003)(39860400002)(451199021)(36840700001)(46966006)(40470700004)(30864003)(2616005)(1076003)(41300700001)(336012)(63370400001)(426003)(36860700001)(47076005)(26005)(186003)(63350400001)(83380400001)(966005)(40460700003)(40480700001)(478600001)(110136005)(54906003)(81166007)(356005)(4326008)(82740400003)(316002)(82310400005)(70206006)(70586007)(8676002)(7416002)(8936002)(2906002)(5660300002)(86362001)(36756003)(103116003)(36900700001);DIR:OUT;SFP:1101; X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 08 Jun 2023 08:25:05.2569 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: b3eca0d6-9365-4233-92e1-08db67f9dced X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB03.amd.com] X-MS-Exchange-CrossTenant-AuthSource: CO1PEPF000044EE.namprd05.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: CY8PR12MB7123 X-Spam-Status: No, score=1.9 required=5.0 tests=AC_FROM_MANY_DOTS,BAYES_00, DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,FORGED_SPF_HELO, RCVD_IN_DNSWL_NONE,RCVD_IN_MSPIKE_H2,SPF_HELO_PASS,SPF_NONE, T_SCC_BODY_TEXT_LINE autolearn=no autolearn_force=no version=3.4.6 X-Spam-Level: * 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 From: Radhey Shyam Pandey Convert the bindings document for Xilinx AXI Ethernet Subsystem from txt to yaml. No changes to existing binding description. Signed-off-by: Radhey Shyam Pandey Signed-off-by: Sarath Babu Naidu Gaddam --- Changes in V8: 1) Added enum to phy-mode and removed minItems. 2) Added maxItems to pcs-handle. 4) Added second example which has axistream-connected. 5) Removed the 'if' check for axistream-connected. This was added due to interrupt property confusion. interrupts = <2 0 1> means three interrupts. DMA Tx, Rx and Ethernet code interrupts. Changes in V7: 1) Addressed below review comments. a) phy-mode: lists. b) Update axistream-connected description. c) Moved $ref: /schemas/net/ethernet-controller.yaml# to allOf. d) Add type to mdio. Changes in V6: 1) Addressed below review comments. a)add a $ref to ethernet-controller.yaml for pcs-handle. b)Drop unused labels(axi_ethernetlite_0_mdio). c)Not relevant to the binding(interrupt-parent). Changes in V5: 1) Removed .txt file which was missed in V4 Changes in V4: 1)Changed the interrupts property and add allOf:if:then for it. Changes in V3: 1) Moved RFC to PATCH. 2) Addressed below review comments a) Indentation. b) maxItems:3 does not match your description. c) Filename matching compatibles. Changes in V2: 1) remove .txt and change the name of file to xlnx,axiethernet.yaml. 2) Fix DT check warning('device_type' does not match any of the regexes: 'pinctrl-[0-9]+' From schema: Documentation/devicetree/bindings/net /xilinx_axienet.yaml). --- .../bindings/net/xilinx_axienet.txt | 101 ---------- .../bindings/net/xlnx,axi-ethernet.yaml | 183 ++++++++++++++++++ MAINTAINERS | 1 + 3 files changed, 184 insertions(+), 101 deletions(-) delete mode 100644 Documentation/devicetree/bindings/net/xilinx_axienet.txt create mode 100644 Documentation/devicetree/bindings/net/xlnx,axi-ethernet.yaml diff --git a/Documentation/devicetree/bindings/net/xilinx_axienet.txt b/Documentation/devicetree/bindings/net/xilinx_axienet.txt deleted file mode 100644 index 80e505a2fda1..000000000000 --- a/Documentation/devicetree/bindings/net/xilinx_axienet.txt +++ /dev/null @@ -1,101 +0,0 @@ -XILINX AXI ETHERNET Device Tree Bindings --------------------------------------------------------- - -Also called AXI 1G/2.5G Ethernet Subsystem, the xilinx axi ethernet IP core -provides connectivity to an external ethernet PHY supporting different -interfaces: MII, GMII, RGMII, SGMII, 1000BaseX. It also includes two -segments of memory for buffering TX and RX, as well as the capability of -offloading TX/RX checksum calculation off the processor. - -Management configuration is done through the AXI interface, while payload is -sent and received through means of an AXI DMA controller. This driver -includes the DMA driver code, so this driver is incompatible with AXI DMA -driver. - -For more details about mdio please refer phy.txt file in the same directory. - -Required properties: -- compatible : Must be one of "xlnx,axi-ethernet-1.00.a", - "xlnx,axi-ethernet-1.01.a", "xlnx,axi-ethernet-2.01.a" -- reg : Address and length of the IO space, as well as the address - and length of the AXI DMA controller IO space, unless - axistream-connected is specified, in which case the reg - attribute of the node referenced by it is used. -- interrupts : Should be a list of 2 or 3 interrupts: TX DMA, RX DMA, - and optionally Ethernet core. If axistream-connected is - specified, the TX/RX DMA interrupts should be on that node - instead, and only the Ethernet core interrupt is optionally - specified here. -- phy-handle : Should point to the external phy device if exists. Pointing - this to the PCS/PMA PHY is deprecated and should be avoided. - See ethernet.txt file in the same directory. -- xlnx,rxmem : Set to allocated memory buffer for Rx/Tx in the hardware - -Optional properties: -- phy-mode : See ethernet.txt -- xlnx,phy-type : Deprecated, do not use, but still accepted in preference - to phy-mode. -- xlnx,txcsum : 0 or empty for disabling TX checksum offload, - 1 to enable partial TX checksum offload, - 2 to enable full TX checksum offload -- xlnx,rxcsum : Same values as xlnx,txcsum but for RX checksum offload -- xlnx,switch-x-sgmii : Boolean to indicate the Ethernet core is configured to - support both 1000BaseX and SGMII modes. If set, the phy-mode - should be set to match the mode selected on core reset (i.e. - by the basex_or_sgmii core input line). -- clock-names: Tuple listing input clock names. Possible clocks: - s_axi_lite_clk: Clock for AXI register slave interface - axis_clk: AXI4-Stream clock for TXD RXD TXC and RXS interfaces - ref_clk: Ethernet reference clock, used by signal delay - primitives and transceivers - mgt_clk: MGT reference clock (used by optional internal - PCS/PMA PHY) - - Note that if s_axi_lite_clk is not specified by name, the - first clock of any name is used for this. If that is also not - specified, the clock rate is auto-detected from the CPU clock - (but only on platforms where this is possible). New device - trees should specify all applicable clocks by name - the - fallbacks to an unnamed clock or to CPU clock are only for - backward compatibility. -- clocks: Phandles to input clocks matching clock-names. Refer to common - clock bindings. -- axistream-connected: Reference to another node which contains the resources - for the AXI DMA controller used by this device. - If this is specified, the DMA-related resources from that - device (DMA registers and DMA TX/RX interrupts) rather - than this one will be used. - - mdio : Child node for MDIO bus. Must be defined if PHY access is - required through the core's MDIO interface (i.e. always, - unless the PHY is accessed through a different bus). - Non-standard MDIO bus frequency is supported via - "clock-frequency", see mdio.yaml. - - - pcs-handle: Phandle to the internal PCS/PMA PHY in SGMII or 1000Base-X - modes, where "pcs-handle" should be used to point - to the PCS/PMA PHY, and "phy-handle" should point to an - external PHY if exists. - -Example: - axi_ethernet_eth: ethernet@40c00000 { - compatible = "xlnx,axi-ethernet-1.00.a"; - device_type = "network"; - interrupt-parent = <µblaze_0_axi_intc>; - interrupts = <2 0 1>; - clock-names = "s_axi_lite_clk", "axis_clk", "ref_clk", "mgt_clk"; - clocks = <&axi_clk>, <&axi_clk>, <&pl_enet_ref_clk>, <&mgt_clk>; - phy-mode = "mii"; - reg = <0x40c00000 0x40000 0x50c00000 0x40000>; - xlnx,rxcsum = <0x2>; - xlnx,rxmem = <0x800>; - xlnx,txcsum = <0x2>; - phy-handle = <&phy0>; - axi_ethernetlite_0_mdio: mdio { - #address-cells = <1>; - #size-cells = <0>; - phy0: phy@0 { - device_type = "ethernet-phy"; - reg = <1>; - }; - }; - }; diff --git a/Documentation/devicetree/bindings/net/xlnx,axi-ethernet.yaml b/Documentation/devicetree/bindings/net/xlnx,axi-ethernet.yaml new file mode 100644 index 000000000000..1d33d80af11c --- /dev/null +++ b/Documentation/devicetree/bindings/net/xlnx,axi-ethernet.yaml @@ -0,0 +1,183 @@ +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) +%YAML 1.2 +--- +$id: http://devicetree.org/schemas/net/xlnx,axi-ethernet.yaml# +$schema: http://devicetree.org/meta-schemas/core.yaml# + +title: AXI 1G/2.5G Ethernet Subsystem + +description: | + Also called AXI 1G/2.5G Ethernet Subsystem, the xilinx axi ethernet IP core + provides connectivity to an external ethernet PHY supporting different + interfaces: MII, GMII, RGMII, SGMII, 1000BaseX. It also includes two + segments of memory for buffering TX and RX, as well as the capability of + offloading TX/RX checksum calculation off the processor. + + Management configuration is done through the AXI interface, while payload is + sent and received through means of an AXI DMA controller. This driver + includes the DMA driver code, so this driver is incompatible with AXI DMA + driver. + +maintainers: + - Radhey Shyam Pandey + +properties: + compatible: + enum: + - xlnx,axi-ethernet-1.00.a + - xlnx,axi-ethernet-1.01.a + - xlnx,axi-ethernet-2.01.a + + reg: + description: + Address and length of the IO space, as well as the address + and length of the AXI DMA controller IO space, unless + axistream-connected is specified, in which case the reg + attribute of the node referenced by it is used. + maxItems: 2 + + interrupts: + items: + - description: Ethernet core interrupt + - description: Tx DMA interrupt + - description: Rx DMA interrupt + description: + Ethernet core interrupt is optional. If axistream-connected property is + present DMA node should contains TX/RX DMA interrupts else DMA interrupt + resources are mentioned on ethernet node. + minItems: 1 + + phy-handle: true + + xlnx,rxmem: + description: + Set to allocated memory buffer for Rx/Tx in the hardware. + $ref: /schemas/types.yaml#/definitions/uint32 + + phy-mode: + enum: + - mii + - gmii + - rgmii + - sgmii + - 1000BaseX + + xlnx,phy-type: + description: + Do not use, but still accepted in preference to phy-mode. + deprecated: true + $ref: /schemas/types.yaml#/definitions/uint32 + + xlnx,txcsum: + description: + TX checksum offload. 0 or empty for disabling TX checksum offload, + 1 to enable partial TX checksum offload and 2 to enable full TX + checksum offload. + $ref: /schemas/types.yaml#/definitions/uint32 + enum: [0, 1, 2] + + xlnx,rxcsum: + description: + RX checksum offload. 0 or empty for disabling RX checksum offload, + 1 to enable partial RX checksum offload and 2 to enable full RX + checksum offload. + $ref: /schemas/types.yaml#/definitions/uint32 + enum: [0, 1, 2] + + xlnx,switch-x-sgmii: + type: boolean + description: + Indicate the Ethernet core is configured to support both 1000BaseX and + SGMII modes. If set, the phy-mode should be set to match the mode + selected on core reset (i.e. by the basex_or_sgmii core input line). + + clocks: + items: + - description: Clock for AXI register slave interface. + - description: AXI4-Stream clock for TXD RXD TXC and RXS interfaces. + - description: Ethernet reference clock, used by signal delay primitives + and transceivers. + - description: MGT reference clock (used by optional internal PCS/PMA PHY) + + clock-names: + items: + - const: s_axi_lite_clk + - const: axis_clk + - const: ref_clk + - const: mgt_clk + + axistream-connected: + $ref: /schemas/types.yaml#/definitions/phandle + description: Phandle of AXI DMA controller which contains the resources + used by this device. If this is specified, the DMA-related resources + from that device (DMA registers and DMA TX/RX interrupts) rather than + this one will be used. + + mdio: + type: object + + pcs-handle: + description: Phandle to the internal PCS/PMA PHY in SGMII or 1000Base-X + modes, where "pcs-handle" should be used to point to the PCS/PMA PHY, + and "phy-handle" should point to an external PHY if exists. + maxItems: 1 + +required: + - compatible + - interrupts + - reg + - xlnx,rxmem + - phy-handle + +allOf: + - $ref: /schemas/net/ethernet-controller.yaml# + +additionalProperties: false + +examples: + - | + axi_ethernet_eth: ethernet@40c00000 { + compatible = "xlnx,axi-ethernet-1.00.a"; + interrupts = <2 0 1>; + clock-names = "s_axi_lite_clk", "axis_clk", "ref_clk", "mgt_clk"; + clocks = <&axi_clk>, <&axi_clk>, <&pl_enet_ref_clk>, <&mgt_clk>; + phy-mode = "mii"; + reg = <0x40c00000 0x40000>,<0x50c00000 0x40000>; + xlnx,rxcsum = <0x2>; + xlnx,rxmem = <0x800>; + xlnx,txcsum = <0x2>; + phy-handle = <&phy0>; + + mdio { + #address-cells = <1>; + #size-cells = <0>; + phy0: ethernet-phy@1 { + device_type = "ethernet-phy"; + reg = <1>; + }; + }; + }; + + - | + axi_ethernet_eth1: ethernet@40000000 { + compatible = "xlnx,axi-ethernet-1.00.a"; + interrupts = <0>; + clock-names = "s_axi_lite_clk", "axis_clk", "ref_clk", "mgt_clk"; + clocks = <&axi_clk>, <&axi_clk>, <&pl_enet_ref_clk>, <&mgt_clk>; + phy-mode = "mii"; + reg = <0x00 0x40000000 0x00 0x40000>; + xlnx,rxcsum = <0x2>; + xlnx,rxmem = <0x800>; + xlnx,txcsum = <0x2>; + phy-handle = <&phy1>; + axistream-connected = <&dma>; + + mdio { + #address-cells = <1>; + #size-cells = <0>; + phy1: ethernet-phy@1 { + device_type = "ethernet-phy"; + reg = <1>; + }; + }; + }; diff --git a/MAINTAINERS b/MAINTAINERS index 2cf9eb43ed8f..0bf527552dc9 100644 --- a/MAINTAINERS +++ b/MAINTAINERS @@ -22895,6 +22895,7 @@ F: drivers/iio/adc/xilinx-ams.c XILINX AXI ETHERNET DRIVER M: Radhey Shyam Pandey S: Maintained +F: Documentation/devicetree/bindings/net/xlnx,axi-ethernet.yaml F: drivers/net/ethernet/xilinx/xilinx_axienet* XILINX CAN DRIVER -- 2.25.1