From patchwork Fri Feb 23 13:28:16 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Yang Xiwen via B4 Relay X-Patchwork-Id: 13569090 X-Patchwork-Delegate: kuba@kernel.org Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (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 F0B837EEF7; Fri, 23 Feb 2024 13:28:28 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1708694909; cv=none; b=hfdDI0T0cKLLQurBTtye1D/3Gr4Y+7O1sNSAc0Eh9hUIeIWcfwSW/PNO7lmw2k5oDH/Lbzr24pjpqQ7bUhDwxEkSsbdn/AwqHay39gMVt0k4aaRuWfmSPggnJ1mbJ1vyQqoqQ75bVcgmodiej+aDdcFIF1Tk0lS64RkGgAYpDQU= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1708694909; c=relaxed/simple; bh=jPvfA4fCiMz71iIgn/ZKZZv+zI2oDR0duOAnRqgl5k0=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=dLw7PG/O8pla8894+u0g1ShEJv8QiUVKIDpPR0jysAe2wDdGP6aSlXjtblSLqshpJykMDX6oeQ63Vt4GpaOFWwLyKYLZwCGuqnNzQmtnqbTBKmEr+OugryvTqHdMcpmfmKwdjHCmTX1oSRUEmjQVAm55sVYwUfs4+L5FU433b5I= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=iPpHt3uf; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="iPpHt3uf" Received: by smtp.kernel.org (Postfix) with ESMTPS id 8EBC1C43390; Fri, 23 Feb 2024 13:28:28 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1708694908; bh=jPvfA4fCiMz71iIgn/ZKZZv+zI2oDR0duOAnRqgl5k0=; h=From:Date:Subject:References:In-Reply-To:To:Cc:Reply-To:From; b=iPpHt3ufxV+fTr7UQnXkcJ3aHJs6f+/wyLsQnpC9aTIbByvYzc29IB83QY0rQVdK0 ojhKKclCNkR5fnv8WpvWMO1H1wkZkvvimtII0uDcvjn1a3aWrojnTs5G93c8tKd9x/ vFGjcW5qcaDlhCgSd1pdaqGqIoEJvivmFH3zvJnUzQCYx4HLjL9Nd6ByEB2OHne4Ky 5ND5jWv5Or5bMHiCQRgyaZZVHh/HfZ00OZ4hhqjG79T1IsA3nSEhV5QtbzIKO2C4K3 /wNJ9ciVFruga43J3QOsw67jqgY7wKaXB+/xY5DeoSYRXCVsebsRUz/7v2DzX2pjrB 6nsvIQEMNjrRg== Received: from aws-us-west-2-korg-lkml-1.web.codeaurora.org (localhost.localdomain [127.0.0.1]) by smtp.lore.kernel.org (Postfix) with ESMTP id 72D99C54E41; Fri, 23 Feb 2024 13:28:28 +0000 (UTC) From: Yang Xiwen via B4 Relay Date: Fri, 23 Feb 2024 21:28:16 +0800 Subject: [PATCH net-next v5 1/7] dt-bindings: net: hisilicon-femac-mdio: convert to YAML Precedence: bulk X-Mailing-List: netdev@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Message-Id: <20240223-net-v5-1-43b22d39c013@outlook.com> References: <20240223-net-v5-0-43b22d39c013@outlook.com> In-Reply-To: <20240223-net-v5-0-43b22d39c013@outlook.com> To: Yisen Zhuang , Salil Mehta , "David S. Miller" , Eric Dumazet , Jakub Kicinski , Paolo Abeni , Rob Herring , Krzysztof Kozlowski , Conor Dooley , Andrew Lunn , Heiner Kallweit , Russell King Cc: netdev@vger.kernel.org, linux-kernel@vger.kernel.org, devicetree@vger.kernel.org, Yang Xiwen X-Mailer: b4 0.12.4 X-Developer-Signature: v=1; a=ed25519-sha256; t=1708694896; l=2450; i=forbidden405@outlook.com; s=20230724; h=from:subject:message-id; bh=J7K5LXcWUGxtur5Z9g90nuEgkuP8UoU2HOmGiUfxnWU=; b=2elWyDB1l81ckj1MUDjHGcaDAVl57/FpK4J2WPJV+HGVNM+eRIrd0UocZ1tRhzxdz0MTtyQAH 19C09bN1BtMANsFGeJZiwfqOt3p2aQIEJw6hnS15ftrFBsgq2KiV+Eu X-Developer-Key: i=forbidden405@outlook.com; a=ed25519; pk=qOD5jhp891/Xzc+H/PZ8LWVSWE3O/XCQnAg+5vdU2IU= X-Endpoint-Received: by B4 Relay for forbidden405@outlook.com/20230724 with auth_id=67 X-Original-From: Yang Xiwen Reply-To: X-Patchwork-Delegate: kuba@kernel.org From: Yang Xiwen convert the old text binding to modern YAML based binding. No semantic change. Signed-off-by: Yang Xiwen Reviewed-by: Krzysztof Kozlowski --- .../bindings/net/hisilicon,hisi-femac-mdio.yaml | 44 ++++++++++++++++++++++ .../bindings/net/hisilicon-femac-mdio.txt | 22 ----------- 2 files changed, 44 insertions(+), 22 deletions(-) diff --git a/Documentation/devicetree/bindings/net/hisilicon,hisi-femac-mdio.yaml b/Documentation/devicetree/bindings/net/hisilicon,hisi-femac-mdio.yaml new file mode 100644 index 000000000000..36def9d5eecd --- /dev/null +++ b/Documentation/devicetree/bindings/net/hisilicon,hisi-femac-mdio.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/hisilicon,hisi-femac-mdio.yaml# +$schema: http://devicetree.org/meta-schemas/core.yaml# + +title: HiSilicon FEMAC MDIO bus + +maintainers: + - Yang Xiwen + +allOf: + - $ref: mdio.yaml# + +properties: + compatible: + const: hisilicon,hisi-femac-mdio + + reg: + maxItems: 1 + + clocks: + maxItems: 1 + +required: + - compatible + - reg + - clocks + +unevaluatedProperties: false + +examples: + - | + mdio@10091100 { + compatible = "hisilicon,hisi-femac-mdio"; + reg = <0x10091100 0x20>; + clocks = <&clk_mdio>; + #address-cells = <1>; + #size-cells = <0>; + + phy@1 { + reg = <1>; + }; + }; diff --git a/Documentation/devicetree/bindings/net/hisilicon-femac-mdio.txt b/Documentation/devicetree/bindings/net/hisilicon-femac-mdio.txt deleted file mode 100644 index 23a39a309d17..000000000000 --- a/Documentation/devicetree/bindings/net/hisilicon-femac-mdio.txt +++ /dev/null @@ -1,22 +0,0 @@ -Hisilicon Fast Ethernet MDIO Controller interface - -Required properties: -- compatible: should be "hisilicon,hisi-femac-mdio". -- reg: address and length of the register set for the device. -- clocks: A phandle to the reference clock for this device. - -- PHY subnode: inherits from phy binding [1] -[1] Documentation/devicetree/bindings/net/phy.txt - -Example: -mdio: mdio@10091100 { - compatible = "hisilicon,hisi-femac-mdio"; - reg = <0x10091100 0x10>; - clocks = <&crg HI3516CV300_MDIO_CLK>; - #address-cells = <1>; - #size-cells = <0>; - - phy0: phy@1 { - reg = <1>; - }; -}; From patchwork Fri Feb 23 13:28:17 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Yang Xiwen via B4 Relay X-Patchwork-Id: 13569089 X-Patchwork-Delegate: kuba@kernel.org Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (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 F0BBD7EEF9; Fri, 23 Feb 2024 13:28:28 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1708694909; cv=none; b=G5m3xwlSuozfmiWyEhPUzHZeYysfYOd7gs3eaEI73Wk79lV0kHGcCOOKLZbIcQJELMr01FxGTGNbOHBAfOFvAN+4E3jiYhha9e5LYX0yuWPPr48v3xkIWNu90tA5AZ43gKNImiX8hM45phGMXwWMuIotOfPnTwS2sCyPVeMU1wY= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1708694909; c=relaxed/simple; bh=pKcNTK6Z5tI0bFy5+Tq7Gks61H4UMrpzQSq2t9t4RXM=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=MaSN0BMvJbFPUIuoTfcxLfxlUFou6MZIpk5Zft3vXwykNT9LI5b1zoU6HkiD47D4fBxPtic9A0QgnBAt7bVimze0qr0Q57wo6ocdtY5pRfiKCTZ31IHltMA1QCQ6DSeZ5UPXL70hpE9Wmx0YSYzwdl/yvTsAX9I6TYXgnO4XRTU= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=u4rQ22jH; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="u4rQ22jH" Received: by smtp.kernel.org (Postfix) with ESMTPS id 9598FC43399; Fri, 23 Feb 2024 13:28:28 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1708694908; bh=pKcNTK6Z5tI0bFy5+Tq7Gks61H4UMrpzQSq2t9t4RXM=; h=From:Date:Subject:References:In-Reply-To:To:Cc:Reply-To:From; b=u4rQ22jH7vAS1bu9N0AEiUri752pKDqizrCuzOrI9l/w/dRmMAwbI54YV/LBYP/Pi gGQLDBRpTWFKJTmXaBmImn0i2l4GSWHBCGDn3YovyUohCb+G+IRbAULfx9SpBJNDw+ xYG0wpCA7zF/pSZC8EFZmafcE8mLzxyY54GOfQ6R16AxrLZ1rodC6FuyYQ0mvvycGo qZl1BPkHwjYNgvpGUBNPJzYEYgowYZi3ta2U9rgrlPWJCrTBZl05VCiEqxEMKMzxZp aPVL8ivAyGvP37eChdFsZbXjE7xGfEioRYeHwCzDQTO6jfnX/IIySQJXF1SGec2qXG AIU75G3YZsJ7w== Received: from aws-us-west-2-korg-lkml-1.web.codeaurora.org (localhost.localdomain [127.0.0.1]) by smtp.lore.kernel.org (Postfix) with ESMTP id 7DF40C54E4C; Fri, 23 Feb 2024 13:28:28 +0000 (UTC) From: Yang Xiwen via B4 Relay Date: Fri, 23 Feb 2024 21:28:17 +0800 Subject: [PATCH net-next v5 2/7] dt-bindings: net: hisilicon,hisi-femac-mdio: remove clocks Precedence: bulk X-Mailing-List: netdev@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Message-Id: <20240223-net-v5-2-43b22d39c013@outlook.com> References: <20240223-net-v5-0-43b22d39c013@outlook.com> In-Reply-To: <20240223-net-v5-0-43b22d39c013@outlook.com> To: Yisen Zhuang , Salil Mehta , "David S. Miller" , Eric Dumazet , Jakub Kicinski , Paolo Abeni , Rob Herring , Krzysztof Kozlowski , Conor Dooley , Andrew Lunn , Heiner Kallweit , Russell King Cc: netdev@vger.kernel.org, linux-kernel@vger.kernel.org, devicetree@vger.kernel.org, Yang Xiwen X-Mailer: b4 0.12.4 X-Developer-Signature: v=1; a=ed25519-sha256; t=1708694896; l=1050; i=forbidden405@outlook.com; s=20230724; h=from:subject:message-id; bh=WNDjoyByLxxs8bx1Sb+vpJXUIZZVY7VH/gcmrFa/1O0=; b=T+lHIqiFV8xSDm+DEj4YrnNc7Fw0mujhLx7dvbgq4044z4hs+wh3c2n96QQ33hqr7MfKPP+FZ LeOYo3y+456CW94jNl6PmGsPSs5FARGaJW7jCNJB/OtlCnp/BZmqgko X-Developer-Key: i=forbidden405@outlook.com; a=ed25519; pk=qOD5jhp891/Xzc+H/PZ8LWVSWE3O/XCQnAg+5vdU2IU= X-Endpoint-Received: by B4 Relay for forbidden405@outlook.com/20230724 with auth_id=67 X-Original-From: Yang Xiwen Reply-To: X-Patchwork-Delegate: kuba@kernel.org From: Yang Xiwen This integrated MDIO bus does have a dedicated clock. Remove it. The old binding is wrong. Signed-off-by: Yang Xiwen Acked-by: Krzysztof Kozlowski --- Documentation/devicetree/bindings/net/hisilicon,hisi-femac-mdio.yaml | 5 ----- 1 file changed, 5 deletions(-) diff --git a/Documentation/devicetree/bindings/net/hisilicon,hisi-femac-mdio.yaml b/Documentation/devicetree/bindings/net/hisilicon,hisi-femac-mdio.yaml index 36def9d5eecd..dea1bcc27381 100644 --- a/Documentation/devicetree/bindings/net/hisilicon,hisi-femac-mdio.yaml +++ b/Documentation/devicetree/bindings/net/hisilicon,hisi-femac-mdio.yaml @@ -19,13 +19,9 @@ properties: reg: maxItems: 1 - clocks: - maxItems: 1 - required: - compatible - reg - - clocks unevaluatedProperties: false @@ -34,7 +30,6 @@ examples: mdio@10091100 { compatible = "hisilicon,hisi-femac-mdio"; reg = <0x10091100 0x20>; - clocks = <&clk_mdio>; #address-cells = <1>; #size-cells = <0>; From patchwork Fri Feb 23 13:28:18 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Yang Xiwen via B4 Relay X-Patchwork-Id: 13569091 X-Patchwork-Delegate: kuba@kernel.org Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (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 F0B157EEF6; Fri, 23 Feb 2024 13:28:28 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1708694909; cv=none; b=JKTDJGN1IUKIMPqhlvcLAYejfnyRpO0Mt/IFfUN3rPCJ5FaJfM7SgwdZrzOXL4rgUSCwa6e889CQNWje7hCcRsCFsYcDCqQDDKzvTTnmB571dPPQUw/QVd9//puOoEYzLSKTWPgy/LDfe1MRbOQT8w9XEgIwas9oPV4BCHgtzLA= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1708694909; c=relaxed/simple; bh=vu47BKfN+xFcRDfbkn3C1v8zrm2ugq1RBZELrpt63GU=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=cT1kew1nBqjsBC2dUf+MLUqEbQR0iAc7qBS3S6Xg1BLmtmAZLtDgubJRqbGbLenmMWGSlZMJpJGOPZK3waLfTGmpkX1NsBJud++vwBU8GpHZi7lfN86bCS+tlHQmSL9l7U+9n9hr+yPidAb1FtQiUA46H8V4OMeU5mD9A8+n/tE= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=HfQhkwhT; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="HfQhkwhT" Received: by smtp.kernel.org (Postfix) with ESMTPS id A2215C433B2; Fri, 23 Feb 2024 13:28:28 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1708694908; bh=vu47BKfN+xFcRDfbkn3C1v8zrm2ugq1RBZELrpt63GU=; h=From:Date:Subject:References:In-Reply-To:To:Cc:Reply-To:From; b=HfQhkwhTOUySZBg/c/PvXZAlUx4PH05CjTf/r1ndpFBILffuylF1hKkVJkqjCi0US y8+TpEbW2udnUp+xQM9FhRYQbN73HSk/SlgWGKIpn4BZDzYWG3hj/HMu9HzPwmNwJ0 KTzJ7+4J9+zhnzWQsSCqJyCaUjtXckFyUEPSZxr5i9zSM0R/atvaYKjai3gQLy8EdM ziFrVYzQXOjrJ7UF7+lMMmZka/aOwOcgMObcjoAcBWM2JNrHObhT4fWGmMLc81nkCo eK/q2AaAZD+wJDparsQR3Axz16wOVcDKJHbmr1DBmDuf9adPUoE+Ah4eyp753bbJTN eJHvGSbcLNupw== Received: from aws-us-west-2-korg-lkml-1.web.codeaurora.org (localhost.localdomain [127.0.0.1]) by smtp.lore.kernel.org (Postfix) with ESMTP id 8C333C54798; Fri, 23 Feb 2024 13:28:28 +0000 (UTC) From: Yang Xiwen via B4 Relay Date: Fri, 23 Feb 2024 21:28:18 +0800 Subject: [PATCH net-next v5 3/7] net: mdio: hisi-femac: remove clock Precedence: bulk X-Mailing-List: netdev@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Message-Id: <20240223-net-v5-3-43b22d39c013@outlook.com> References: <20240223-net-v5-0-43b22d39c013@outlook.com> In-Reply-To: <20240223-net-v5-0-43b22d39c013@outlook.com> To: Yisen Zhuang , Salil Mehta , "David S. Miller" , Eric Dumazet , Jakub Kicinski , Paolo Abeni , Rob Herring , Krzysztof Kozlowski , Conor Dooley , Andrew Lunn , Heiner Kallweit , Russell King Cc: netdev@vger.kernel.org, linux-kernel@vger.kernel.org, devicetree@vger.kernel.org, Yang Xiwen X-Mailer: b4 0.12.4 X-Developer-Signature: v=1; a=ed25519-sha256; t=1708694896; l=1802; i=forbidden405@outlook.com; s=20230724; h=from:subject:message-id; bh=kdWAr70dNlF5sryokQxZlrJGOk8Z9nw7ekwi0I/9miA=; b=hUCPn8YKnVGxbiN/uWX3GewS3/JP2RKNXDm4Yg42EdhJqi8ihx78WmvVsew+vBs8R8I8TFCwH HAeMbQRJzSQDFKSw1107eHRm7VXsPoTUSKFlHb/3fEsrWgi2eKdrZZr X-Developer-Key: i=forbidden405@outlook.com; a=ed25519; pk=qOD5jhp891/Xzc+H/PZ8LWVSWE3O/XCQnAg+5vdU2IU= X-Endpoint-Received: by B4 Relay for forbidden405@outlook.com/20230724 with auth_id=67 X-Original-From: Yang Xiwen Reply-To: X-Patchwork-Delegate: kuba@kernel.org From: Yang Xiwen This integrated MDIO bus does not have a dedicated clock, remove it. Signed-off-by: Yang Xiwen --- drivers/net/mdio/mdio-hisi-femac.c | 18 +----------------- 1 file changed, 1 insertion(+), 17 deletions(-) diff --git a/drivers/net/mdio/mdio-hisi-femac.c b/drivers/net/mdio/mdio-hisi-femac.c index 6703f626ee83..faf4688eb1ab 100644 --- a/drivers/net/mdio/mdio-hisi-femac.c +++ b/drivers/net/mdio/mdio-hisi-femac.c @@ -5,7 +5,6 @@ * Copyright (c) 2016 HiSilicon Technologies Co., Ltd. */ -#include #include #include #include @@ -21,7 +20,6 @@ #define BIT_WR_DATA_OFFSET 16 struct hisi_femac_mdio_data { - struct clk *clk; void __iomem *membase; }; @@ -93,26 +91,14 @@ static int hisi_femac_mdio_probe(struct platform_device *pdev) goto err_out_free_mdiobus; } - data->clk = devm_clk_get(&pdev->dev, NULL); - if (IS_ERR(data->clk)) { - ret = PTR_ERR(data->clk); - goto err_out_free_mdiobus; - } - - ret = clk_prepare_enable(data->clk); - if (ret) - goto err_out_free_mdiobus; - ret = of_mdiobus_register(bus, np); if (ret) - goto err_out_disable_clk; + goto err_out_free_mdiobus; platform_set_drvdata(pdev, bus); return 0; -err_out_disable_clk: - clk_disable_unprepare(data->clk); err_out_free_mdiobus: mdiobus_free(bus); return ret; @@ -121,10 +107,8 @@ static int hisi_femac_mdio_probe(struct platform_device *pdev) static void hisi_femac_mdio_remove(struct platform_device *pdev) { struct mii_bus *bus = platform_get_drvdata(pdev); - struct hisi_femac_mdio_data *data = bus->priv; mdiobus_unregister(bus); - clk_disable_unprepare(data->clk); mdiobus_free(bus); } From patchwork Fri Feb 23 13:28:19 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Yang Xiwen via B4 Relay X-Patchwork-Id: 13569093 X-Patchwork-Delegate: kuba@kernel.org Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (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 230827EF07; Fri, 23 Feb 2024 13:28:28 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1708694909; cv=none; b=Io/rKKX4/jAAsmD80Da9lQZO7eMavYZjQpUsicQ7VyD2t5c+MBSexoExpOjnNub1Em5ZHJE+2j7yYRt8cUh9C5ySXCw5KvwL1/+jxOXuMjO6ZHwvDBxgjduOipwvYQEt2mcjDnS9mKF7lZINS3M4AZ+sZTvufM47SeJ3PypAtmM= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1708694909; c=relaxed/simple; bh=q5PGMNCy5OeIZklkcuyegUf5HBFFBndhdfq9OggdzzY=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=S67l3G1+caRbZQ8ZTqJASYggh3EwpBWRIU31CLv2ZvqtoX2oWo7N9YON3owmmxHXnS4Clr4UdX+rYKsMKQ7w1ezrxNSE4fjXxJ7avQtDR4YWJ16KZCjeVs62hu3XHggsPCWGNYQIzpPuGkDN0jOgqQ9Nt35P70O6VGiHs2tzR2c= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=Nkr+jyOl; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="Nkr+jyOl" Received: by smtp.kernel.org (Postfix) with ESMTPS id AEE01C43609; Fri, 23 Feb 2024 13:28:28 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1708694908; bh=q5PGMNCy5OeIZklkcuyegUf5HBFFBndhdfq9OggdzzY=; h=From:Date:Subject:References:In-Reply-To:To:Cc:Reply-To:From; b=Nkr+jyOlHif45JDG32fH9fMC3nka4OFJ72Tis/ZtwWnIBxUrVX6rwy2XujT/xKk9W u9+SkVFucXACkCrd5Ef1PP1bbIu2djmtr/jqYDTNZp2CdEQdb6VnsW3+86Ld+NzrF0 PbetL3at0qWmMU1JMRKyCFWorZTHmEjK5yYm5osDJMQoR21Dnc0U9nTmt+RezwdTGJ tjxE/+ZoNC20N9u4hz1mFdFw9gIngwEHqweJjCE+pfiHiALetyiifVWpqh5MKDJRos ojH6vFeOFeIDCpRDSMEBxxN9QrwuxnTJBEMi8M8BJOhdkjvaEaT6TjVDSlv9h0FdwK gqh+fxr9GyvcA== Received: from aws-us-west-2-korg-lkml-1.web.codeaurora.org (localhost.localdomain [127.0.0.1]) by smtp.lore.kernel.org (Postfix) with ESMTP id 990C8C5478C; Fri, 23 Feb 2024 13:28:28 +0000 (UTC) From: Yang Xiwen via B4 Relay Date: Fri, 23 Feb 2024 21:28:19 +0800 Subject: [PATCH net-next v5 4/7] dt-bindings: net: remove outdated hisilicon-femac Precedence: bulk X-Mailing-List: netdev@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Message-Id: <20240223-net-v5-4-43b22d39c013@outlook.com> References: <20240223-net-v5-0-43b22d39c013@outlook.com> In-Reply-To: <20240223-net-v5-0-43b22d39c013@outlook.com> To: Yisen Zhuang , Salil Mehta , "David S. Miller" , Eric Dumazet , Jakub Kicinski , Paolo Abeni , Rob Herring , Krzysztof Kozlowski , Conor Dooley , Andrew Lunn , Heiner Kallweit , Russell King Cc: netdev@vger.kernel.org, linux-kernel@vger.kernel.org, devicetree@vger.kernel.org, Yang Xiwen X-Mailer: b4 0.12.4 X-Developer-Signature: v=1; a=ed25519-sha256; t=1708694896; l=2357; i=forbidden405@outlook.com; s=20230724; h=from:subject:message-id; bh=8ICAnSLBv8dPhcTYWVHR0AJKAQbZebLk5c3PYvX8hqQ=; b=8Wn412/pznuc46HbMSFGNBybDfRK9u5s/eofvPrfTIzONTyFWH0HeVOlfYYCBmQbeH9Grxev9 Kvhy4LOUkEmC1odAftzPqOCiAcyWm/i2vPJ5kvJIG1dMWh73dkWgCKC X-Developer-Key: i=forbidden405@outlook.com; a=ed25519; pk=qOD5jhp891/Xzc+H/PZ8LWVSWE3O/XCQnAg+5vdU2IU= X-Endpoint-Received: by B4 Relay for forbidden405@outlook.com/20230724 with auth_id=67 X-Original-From: Yang Xiwen Reply-To: X-Patchwork-Delegate: kuba@kernel.org From: Yang Xiwen The user documented(Hi3516) is not found in current kernel anymore. And it seems this SoC has been EOL for a long time. While at it, Remove this binding entirely due to recent driver changes. Signed-off-by: Yang Xiwen --- .../devicetree/bindings/net/hisilicon-femac.txt | 41 ---------------------- 1 file changed, 41 deletions(-) diff --git a/Documentation/devicetree/bindings/net/hisilicon-femac.txt b/Documentation/devicetree/bindings/net/hisilicon-femac.txt deleted file mode 100644 index 5f96976f3cea..000000000000 --- a/Documentation/devicetree/bindings/net/hisilicon-femac.txt +++ /dev/null @@ -1,41 +0,0 @@ -Hisilicon Fast Ethernet MAC controller - -Required properties: -- compatible: should contain one of the following version strings: - * "hisilicon,hisi-femac-v1" - * "hisilicon,hisi-femac-v2" - and the soc string "hisilicon,hi3516cv300-femac". -- reg: specifies base physical address(s) and size of the device registers. - The first region is the MAC core register base and size. - The second region is the global MAC control register. -- interrupts: should contain the MAC interrupt. -- clocks: A phandle to the MAC main clock. -- resets: should contain the phandle to the MAC reset signal(required) and - the PHY reset signal(optional). -- reset-names: should contain the reset signal name "mac"(required) - and "phy"(optional). -- phy-mode: see ethernet.txt [1]. -- phy-handle: see ethernet.txt [1]. -- hisilicon,phy-reset-delays-us: triplet of delays if PHY reset signal given. - The 1st cell is reset pre-delay in micro seconds. - The 2nd cell is reset pulse in micro seconds. - The 3rd cell is reset post-delay in micro seconds. - -The MAC address will be determined using the optional properties -defined in ethernet.txt[1]. - -[1] Documentation/devicetree/bindings/net/ethernet.txt - -Example: - hisi_femac: ethernet@10090000 { - compatible = "hisilicon,hi3516cv300-femac","hisilicon,hisi-femac-v2"; - reg = <0x10090000 0x1000>,<0x10091300 0x200>; - interrupts = <12>; - clocks = <&crg HI3518EV200_ETH_CLK>; - resets = <&crg 0xec 0>,<&crg 0xec 3>; - reset-names = "mac","phy"; - mac-address = [00 00 00 00 00 00]; - phy-mode = "mii"; - phy-handle = <&phy0>; - hisilicon,phy-reset-delays-us = <10000 20000 20000>; - }; From patchwork Fri Feb 23 13:28:20 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Yang Xiwen via B4 Relay X-Patchwork-Id: 13569092 X-Patchwork-Delegate: kuba@kernel.org Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (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 2BE787F460; Fri, 23 Feb 2024 13:28:28 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1708694909; cv=none; b=hcatRDjRNReDJQ/bSYdMoiZyxwbkmvTo4wSVQ1Bhps51SfPOelbf6mf5fUQFXAMRTN6oYMBCJBVDf4DNdU6RhegXXCfNJi9uDZrh5uXJHdw1I+o6otb54ZvQ3V+WZazMItci4EjnVPCybMzv132v7Ks/4i/7gbarVu0DQA0+rvU= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1708694909; c=relaxed/simple; bh=oJuSPJD8GR/wjJbE+mVqeaijIrE2Zu4CuUFl6OFH/pQ=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=YjZLY+jqEhHrIJHmAJQL0PVZpHGbU09pFYPpgnz/ILQfeLJSgEzJ2aeLqiaKHBbgM7XU/X5xPEq+z8Ecev3bLuXYPxO+EFoAuoHvKbH35YP6gpGsZ9m7QpMUl9uKB6vW5LbzBsSQRw5WFadQIqF549Xkd4NUjMuYjeEx5zxDk4U= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=j31xawSj; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="j31xawSj" Received: by smtp.kernel.org (Postfix) with ESMTPS id C19BBC4166C; Fri, 23 Feb 2024 13:28:28 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1708694908; bh=oJuSPJD8GR/wjJbE+mVqeaijIrE2Zu4CuUFl6OFH/pQ=; h=From:Date:Subject:References:In-Reply-To:To:Cc:Reply-To:From; b=j31xawSj5kF506lb2tUaavA0lAWC9CsVB+c0SRfSQfgU/HnDwgjC6Ez5W6yiqhxA/ 7aLwnpoNKOPVATHoNkg4YS1ZyeLREOD2DLD7UfoSz0z16fzQoqkfegjlrAr3WZoVsZ UiMP+mhGTRTNJoTHzLegCDlBZ74XHPgMae6isfrL5+XsHNOwUm6yxeM49IW6uCtxCs KjUEbE1tEOl/dKuEyII/dIt4nfVWxhYzy2sQBHR2XmwhVoSntqmDJzEXqifthfPCC5 B1BRrz421IboliTRdNBKnmRMeGK9ufHVAGZaZCirJTWL7Fu1cGFrDRVo8xMc1dpYUW LkZ6+XPfmvHUw== Received: from aws-us-west-2-korg-lkml-1.web.codeaurora.org (localhost.localdomain [127.0.0.1]) by smtp.lore.kernel.org (Postfix) with ESMTP id AD2E2C54E4F; Fri, 23 Feb 2024 13:28:28 +0000 (UTC) From: Yang Xiwen via B4 Relay Date: Fri, 23 Feb 2024 21:28:20 +0800 Subject: [PATCH net-next v5 5/7] dt-bindings: net: add hisilicon,hisi-femac Precedence: bulk X-Mailing-List: netdev@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Message-Id: <20240223-net-v5-5-43b22d39c013@outlook.com> References: <20240223-net-v5-0-43b22d39c013@outlook.com> In-Reply-To: <20240223-net-v5-0-43b22d39c013@outlook.com> To: Yisen Zhuang , Salil Mehta , "David S. Miller" , Eric Dumazet , Jakub Kicinski , Paolo Abeni , Rob Herring , Krzysztof Kozlowski , Conor Dooley , Andrew Lunn , Heiner Kallweit , Russell King Cc: netdev@vger.kernel.org, linux-kernel@vger.kernel.org, devicetree@vger.kernel.org, Yang Xiwen X-Mailer: b4 0.12.4 X-Developer-Signature: v=1; a=ed25519-sha256; t=1708694896; l=3843; i=forbidden405@outlook.com; s=20230724; h=from:subject:message-id; bh=s74McZo3tz0CRQGXU249Pq+NWVbKcQ+gU6lSPVvGiGw=; b=C/Jxx6VzW7in2k+7wNuuXLjxORu4pAhGuCV1heg8ZvhjlSKfoNpN1NqxEFFuKrjlYid4ThfUv YRVbuXlJLMUC+OE/YJ7R5G8kdX5rT31hneCmFoY4DjEHcDDxPT56CEo X-Developer-Key: i=forbidden405@outlook.com; a=ed25519; pk=qOD5jhp891/Xzc+H/PZ8LWVSWE3O/XCQnAg+5vdU2IU= X-Endpoint-Received: by B4 Relay for forbidden405@outlook.com/20230724 with auth_id=67 X-Original-From: Yang Xiwen Reply-To: X-Patchwork-Delegate: kuba@kernel.org From: Yang Xiwen Compared to previous txt based binding doc, the following changes are made according to the TRM: - Remove unmaintained Hi3516 SoC, add Hi3798MV200 - add MDIO subnode, because MDIO bus is integrated - add ahb bus clock, phy clock and reset Also remove "hisi-femac-v1/2" binding. The difference between versions is unknown and not documented anywhere. Nor is it used in driver. Remove it until it's needed in the future. Signed-off-by: Yang Xiwen --- .../bindings/net/hisilicon,hisi-femac.yaml | 116 +++++++++++++++++++++ 1 file changed, 116 insertions(+) diff --git a/Documentation/devicetree/bindings/net/hisilicon,hisi-femac.yaml b/Documentation/devicetree/bindings/net/hisilicon,hisi-femac.yaml new file mode 100644 index 000000000000..56d7c8a26d0c --- /dev/null +++ b/Documentation/devicetree/bindings/net/hisilicon,hisi-femac.yaml @@ -0,0 +1,116 @@ +# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause +%YAML 1.2 +--- +$id: http://devicetree.org/schemas/net/hisilicon,hisi-femac.yaml# +$schema: http://devicetree.org/meta-schemas/core.yaml# + +title: Hisilicon Fast Ethernet MAC controller + +maintainers: + - Yang Xiwen + +allOf: + - $ref: ethernet-controller.yaml + +properties: + compatible: + items: + - enum: + - hisilicon,hi3798mv200-femac + - const: hisilicon,hisi-femac + + reg: + items: + - description: The first region is the MAC core register base and size. + - description: The second region is the global MAC control register. + + ranges: + maxItems: 1 + + '#address-cells': + const: 1 + + '#size-cells': + const: 1 + + interrupts: + maxItems: 1 + + clocks: + maxItems: 3 + + clock-names: + items: + - const: mac + - const: macif + - const: phy + + resets: + maxItems: 2 + + reset-names: + items: + - const: mac + - const: phy + + hisilicon,phy-reset-delays-us: + items: + - description: The 1st cell is reset pre-delay in micro seconds. + - description: The 2nd cell is reset pulse in micro seconds. + - description: The 3rd cell is reset post-delay in micro seconds. + +patternProperties: + '^mdio@[0-9a-f]+$': + $ref: hisilicon,hisi-femac-mdio.yaml# + +required: + - compatible + - reg + - interrupts + - clocks + - clock-names + - resets + - reset-names + - phy-connection-type + - phy-handle + - hisilicon,phy-reset-delays-us + +unevaluatedProperties: false + +examples: + - | + #include + + ethernet@9c30000 { + compatible = "hisilicon,hi3798mv200-femac", "hisilicon,hisi-femac"; + reg = <0x9c30000 0x1000>, <0x9c31300 0x200>; + ranges = <0x0 0x9c30000 0x10000>; + #address-cells = <1>; + #size-cells = <1>; + interrupts = ; + clocks = <&clk_femac>, + <&clk_femacif>, + <&clk_fephy>; + clock-names = "mac", "macif", "phy"; + resets = <&crg 0xd0 3>, <&crg 0x388 4>; + reset-names = "mac", "phy"; + phy-handle = <&fephy>; + phy-connection-type = "mii"; + // To be filled by bootloader + mac-address = [00 00 00 00 00 00]; + hisilicon,phy-reset-delays-us = <10000 10000 500000>; + status = "okay"; + + mdio@1100 { + compatible = "hisilicon,hisi-femac-mdio"; + reg = <0x1100 0x20>; + #address-cells = <1>; + #size-cells = <0>; + status = "okay"; + + ethernet-phy@1 { + reg = <1>; + #phy-cells = <0>; + }; + }; + }; From patchwork Fri Feb 23 13:28:21 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Yang Xiwen via B4 Relay X-Patchwork-Id: 13569094 X-Patchwork-Delegate: kuba@kernel.org Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (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 437F97F46F; Fri, 23 Feb 2024 13:28:29 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1708694909; cv=none; b=c8WcNXvxshG+pazlwJjNDaKgHgbrwpHyfVIQKM83E2OwFdeUkxSJokt9gD2zVrnQciQbSk1ZnVEt8LyetqwQ8jUkSDENqbgEBEHAmSAdhtv0v8k5blqpXiZvFAhPaR4uK3n1K+dcMm8KoyFU/xGErsIM8poBNTH5Usq5Rsvb0kI= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1708694909; c=relaxed/simple; bh=GBaheOhdznjtGRKp6u9ZnNvUhBZp5GtwDt/jdqgbVr4=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=mJ8qSypWz2Ph2BMXXeCBElGTTtiE1MTj6zfbKYSRx/21lwV31GRjAeSs5oSl12bVjHAvTIhbegMJaNiR4h4T9rSm7+bMzTyTLzYIx06fwZ+wkopKnlCbi+5hhSHG8mG0DPhj7UpU/HOf40cBGoMUSDrbDj/UgILFOTshtTeZSp4= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=eAabbtwI; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="eAabbtwI" Received: by smtp.kernel.org (Postfix) with ESMTPS id CD469C4167D; Fri, 23 Feb 2024 13:28:28 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1708694908; bh=GBaheOhdznjtGRKp6u9ZnNvUhBZp5GtwDt/jdqgbVr4=; h=From:Date:Subject:References:In-Reply-To:To:Cc:Reply-To:From; b=eAabbtwIPLNckHAfLZmp51vJNKtWnLUpgZZvlKeJ8JxDw8gfpA3HUMsJMIuh8/NLv I+E9ie97ecdlA/J3NeMP+0R9XKUZTpDPfGfKgyUzfo0mTfXM0pCX0vtIRjTF3FzLOM fRgHXo1KoucqiME89acZjDZlsuIj9nW1OVWXPV+0hIUx9m2fss4L0wlDHro/DXceVP RLxLzBL781a7APPOVqqDszW2/RHIk4MSBOKsieOf5gfQ4xQGteV9bRZ++VoOS1Dw7z 6JeNtYsC9gUAEhRe0nNACHxBnsXIt3LS59w3+qOIsjSq7jHz/tQKKhjekcBcm2GyXq Z6oOv3CT6CAfQ== Received: from aws-us-west-2-korg-lkml-1.web.codeaurora.org (localhost.localdomain [127.0.0.1]) by smtp.lore.kernel.org (Postfix) with ESMTP id BB566C54E41; Fri, 23 Feb 2024 13:28:28 +0000 (UTC) From: Yang Xiwen via B4 Relay Date: Fri, 23 Feb 2024 21:28:21 +0800 Subject: [PATCH net-next v5 6/7] net: hisilicon: add support for hisi_femac core on Hi3798MV200 Precedence: bulk X-Mailing-List: netdev@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Message-Id: <20240223-net-v5-6-43b22d39c013@outlook.com> References: <20240223-net-v5-0-43b22d39c013@outlook.com> In-Reply-To: <20240223-net-v5-0-43b22d39c013@outlook.com> To: Yisen Zhuang , Salil Mehta , "David S. Miller" , Eric Dumazet , Jakub Kicinski , Paolo Abeni , Rob Herring , Krzysztof Kozlowski , Conor Dooley , Andrew Lunn , Heiner Kallweit , Russell King Cc: netdev@vger.kernel.org, linux-kernel@vger.kernel.org, devicetree@vger.kernel.org, Yang Xiwen X-Mailer: b4 0.12.4 X-Developer-Signature: v=1; a=ed25519-sha256; t=1708694896; l=7210; i=forbidden405@outlook.com; s=20230724; h=from:subject:message-id; bh=/txku2bb14pGE8xgSS0aeGHZMyxLoNFPUgd/T9v5WGE=; b=0sL2q/RatS4l9C7mpNZE30BV/o0TnToQxmNmIqzT3Z2LmKcQ0shxbJqbUslOGUqTOgQh7R5rv 3SwLD9ZOYLnDmWeH1RUTJLy2JGTK46XR3TPj+zZH6o1Kg0Ost1gLagM X-Developer-Key: i=forbidden405@outlook.com; a=ed25519; pk=qOD5jhp891/Xzc+H/PZ8LWVSWE3O/XCQnAg+5vdU2IU= X-Endpoint-Received: by B4 Relay for forbidden405@outlook.com/20230724 with auth_id=67 X-Original-From: Yang Xiwen Reply-To: X-Patchwork-Delegate: kuba@kernel.org From: Yang Xiwen Register the sub MDIO bus if it is found. Also implement the internal PHY reset procedure as needed. Note it's unable to put the MDIO bus node outside of MAC controller (i.e. at the same level in the parent bus node). Because we need to control all clocks and resets in FEMAC driver due to the phy reset procedure. So the clocks can't be assigned to MDIO bus device, which is an essential resource for the MDIO bus to work. No backward compatibility is maintained since the only existing user(Hi3516DV300) has not received any updates from HiSilicon for about 8 years already. And till today, no mainline dts for this SoC is found. It seems unlikely that there are still existing mainline Hi3516DV300 users. The effort to maintain the old binding seems gain a little. Signed-off-by: Yang Xiwen --- drivers/net/ethernet/hisilicon/hisi_femac.c | 74 +++++++++++++++++++++++------ 1 file changed, 60 insertions(+), 14 deletions(-) diff --git a/drivers/net/ethernet/hisilicon/hisi_femac.c b/drivers/net/ethernet/hisilicon/hisi_femac.c index 2406263c9dd3..eab91e011d11 100644 --- a/drivers/net/ethernet/hisilicon/hisi_femac.c +++ b/drivers/net/ethernet/hisilicon/hisi_femac.c @@ -10,8 +10,10 @@ #include #include #include +#include #include #include +#include #include #include @@ -97,6 +99,13 @@ enum phy_reset_delays { DELAYS_NUM, }; +enum clk_type { + CLK_MAC, + CLK_MACIF, + CLK_PHY, + CLK_NUM, +}; + struct hisi_femac_queue { struct sk_buff **skb; dma_addr_t *dma_phys; @@ -108,7 +117,7 @@ struct hisi_femac_queue { struct hisi_femac_priv { void __iomem *port_base; void __iomem *glb_base; - struct clk *clk; + struct clk_bulk_data *clks; struct reset_control *mac_rst; struct reset_control *phy_rst; u32 phy_reset_delays[DELAYS_NUM]; @@ -116,6 +125,7 @@ struct hisi_femac_priv { struct device *dev; struct net_device *ndev; + struct platform_device *mdio_pdev; struct hisi_femac_queue txq; struct hisi_femac_queue rxq; @@ -693,6 +703,7 @@ static const struct net_device_ops hisi_femac_netdev_ops = { static void hisi_femac_core_reset(struct hisi_femac_priv *priv) { reset_control_assert(priv->mac_rst); + usleep_range(200, 300); reset_control_deassert(priv->mac_rst); } @@ -712,6 +723,10 @@ static void hisi_femac_sleep_us(u32 time_us) static void hisi_femac_phy_reset(struct hisi_femac_priv *priv) { + /* MAC clock must be disabled before PHY reset + */ + clk_disable(priv->clks[CLK_MAC].clk); + clk_disable(priv->clks[CLK_MACIF].clk); /* To make sure PHY hardware reset success, * we must keep PHY in deassert state first and * then complete the hardware reset operation @@ -727,6 +742,9 @@ static void hisi_femac_phy_reset(struct hisi_femac_priv *priv) reset_control_deassert(priv->phy_rst); /* delay some time to ensure later MDIO access */ hisi_femac_sleep_us(priv->phy_reset_delays[POST_DELAY]); + + clk_enable(priv->clks[CLK_MAC].clk); + clk_enable(priv->clks[CLK_MACIF].clk); } static void hisi_femac_port_init(struct hisi_femac_priv *priv) @@ -768,11 +786,12 @@ static void hisi_femac_port_init(struct hisi_femac_priv *priv) static int hisi_femac_drv_probe(struct platform_device *pdev) { struct device *dev = &pdev->dev; - struct device_node *node = dev->of_node; + struct device_node *node = dev->of_node, *mdio_np; struct net_device *ndev; struct hisi_femac_priv *priv; struct phy_device *phy; int ret; + bool mdio_registered = false; ndev = alloc_etherdev(sizeof(*priv)); if (!ndev) @@ -797,17 +816,16 @@ static int hisi_femac_drv_probe(struct platform_device *pdev) goto out_free_netdev; } - priv->clk = devm_clk_get(&pdev->dev, NULL); - if (IS_ERR(priv->clk)) { - dev_err(dev, "failed to get clk\n"); - ret = -ENODEV; + ret = devm_clk_bulk_get_all(&pdev->dev, &priv->clks); + if (ret < 0 || ret != CLK_NUM) { + dev_err(dev, "failed to get clk bulk: %d\n", ret); goto out_free_netdev; } - ret = clk_prepare_enable(priv->clk); + ret = clk_bulk_prepare_enable(CLK_NUM, priv->clks); if (ret) { - dev_err(dev, "failed to enable clk %d\n", ret); - goto out_free_netdev; + dev_err(dev, "failed to enable clk bulk: %d\n", ret); + goto out_disable_clk; } priv->mac_rst = devm_reset_control_get(dev, "mac"); @@ -830,11 +848,29 @@ static int hisi_femac_drv_probe(struct platform_device *pdev) hisi_femac_phy_reset(priv); } + // Register the optional MDIO bus + for_each_available_child_of_node(node, mdio_np) { + if (of_node_name_prefix(mdio_np, "mdio")) { + priv->mdio_pdev = of_platform_device_create(mdio_np, NULL, dev); + of_node_put(mdio_np); + if (!priv->mdio_pdev) { + dev_err(dev, "failed to register MDIO bus device\n"); + ret = -ENODEV; + goto out_disable_clk; + } + mdio_registered = true; + break; + } + } + + if (!mdio_registered) + dev_warn(dev, "MDIO subnode not found. This is usually a bug.\n"); + phy = of_phy_get_and_connect(ndev, node, hisi_femac_adjust_link); if (!phy) { dev_err(dev, "connect to PHY failed!\n"); ret = -ENODEV; - goto out_disable_clk; + goto out_unregister_mdio_bus; } phy_attached_print(phy, "phy_id=0x%.8lx, phy_mode=%s\n", @@ -885,8 +921,10 @@ static int hisi_femac_drv_probe(struct platform_device *pdev) out_disconnect_phy: netif_napi_del(&priv->napi); phy_disconnect(phy); +out_unregister_mdio_bus: + platform_device_unregister(priv->mdio_pdev); out_disable_clk: - clk_disable_unprepare(priv->clk); + clk_bulk_disable_unprepare(CLK_NUM, priv->clks); out_free_netdev: free_netdev(ndev); @@ -902,7 +940,8 @@ static void hisi_femac_drv_remove(struct platform_device *pdev) unregister_netdev(ndev); phy_disconnect(ndev->phydev); - clk_disable_unprepare(priv->clk); + platform_device_unregister(priv->mdio_pdev); + clk_bulk_disable_unprepare(CLK_NUM, priv->clks); free_netdev(ndev); } @@ -919,7 +958,7 @@ static int hisi_femac_drv_suspend(struct platform_device *pdev, netif_device_detach(ndev); } - clk_disable_unprepare(priv->clk); + clk_bulk_disable_unprepare(CLK_NUM, priv->clks); return 0; } @@ -928,8 +967,14 @@ static int hisi_femac_drv_resume(struct platform_device *pdev) { struct net_device *ndev = platform_get_drvdata(pdev); struct hisi_femac_priv *priv = netdev_priv(ndev); + int ret; + + ret = clk_bulk_prepare_enable(CLK_NUM, priv->clks); + if (ret) { + dev_err(&pdev->dev, "failed to enable clk bulk: %d\n", ret); + return ret; + } - clk_prepare_enable(priv->clk); if (priv->phy_rst) hisi_femac_phy_reset(priv); @@ -948,6 +993,7 @@ static const struct of_device_id hisi_femac_match[] = { {.compatible = "hisilicon,hisi-femac-v1",}, {.compatible = "hisilicon,hisi-femac-v2",}, {.compatible = "hisilicon,hi3516cv300-femac",}, + {.compatible = "hisilicon,hi3798mv200-femac",}, {}, }; From patchwork Fri Feb 23 13:28:22 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Yang Xiwen via B4 Relay X-Patchwork-Id: 13569095 X-Patchwork-Delegate: kuba@kernel.org Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (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 58A9A7F48D; Fri, 23 Feb 2024 13:28:29 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1708694909; cv=none; b=brW75pxGXDF207Q8AEPX7mi+PFbwBhXPh33XYUwDEqT8bVHjA3AZQkf+Vx/Fo+icGE8uQ2q6gpbbV2dZv/z8lfmu0iBisF2kW963GuK13f4CzviUKybRVC42wt4FTbAMZz5LIOqwtgUdZrP+uwKHEv5EopaJEQEVsFhmcJb4mbk= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1708694909; c=relaxed/simple; bh=OcmgXpcRM8kSwibnYWY2jGXTBaTcyrBdkKpBfGjwCpA=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=mlEKqgti3EwQnyMXRc6OTM54JTUslQtAyoxBUEh8MqQe9kSFIz2mtuV2S6lpv1Wt4pDY/PPHdH5/vqoSP1FINKlMBe3/OzyZeMEJiwZNDkbYQ0ShhuGJXPFB6caRqikG/2hq7qssuOLbN5KR31Xo4aV+kQ2ICk/ERVxUNmWHxcY= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=DbXiv5If; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="DbXiv5If" Received: by smtp.kernel.org (Postfix) with ESMTPS id D8DB3C3277A; Fri, 23 Feb 2024 13:28:28 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1708694908; bh=OcmgXpcRM8kSwibnYWY2jGXTBaTcyrBdkKpBfGjwCpA=; h=From:Date:Subject:References:In-Reply-To:To:Cc:Reply-To:From; b=DbXiv5IflUQwSulHSPUIsrLM6b5xxJTprJWdi+BS3lCzOZZQnOkp/sG7fDeis9liv HbVpVl9l6eyYuGrKkkLM5vJCz7Too9nzAiTuiyfv2KGEj6ZR0GV/Kpbdfo3aDb1wYw L0WDOu7+2cpe6DAMUN9Kk0zuM0qjb64OlHf0TbTNXN3aI87/XWTQ87NuyZtpo4GBjj mhf4DvcYUsqsPuYLJsSxjjS4o8u8r5mzNADE9qOkK67FwSbo90Jcfu21r6+i/45Vtc KXM2Bab4tzvBL3y46Y9+Nkay91klgfeW+RlkjhJiN9KtNqeu/Hu2DRDphlCwMBD4oG UxKIpkI5s7+TA== Received: from aws-us-west-2-korg-lkml-1.web.codeaurora.org (localhost.localdomain [127.0.0.1]) by smtp.lore.kernel.org (Postfix) with ESMTP id C6B41C54798; Fri, 23 Feb 2024 13:28:28 +0000 (UTC) From: Yang Xiwen via B4 Relay Date: Fri, 23 Feb 2024 21:28:22 +0800 Subject: [PATCH net-next v5 7/7] net: hisi_femac: remove unused compatible strings Precedence: bulk X-Mailing-List: netdev@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Message-Id: <20240223-net-v5-7-43b22d39c013@outlook.com> References: <20240223-net-v5-0-43b22d39c013@outlook.com> In-Reply-To: <20240223-net-v5-0-43b22d39c013@outlook.com> To: Yisen Zhuang , Salil Mehta , "David S. Miller" , Eric Dumazet , Jakub Kicinski , Paolo Abeni , Rob Herring , Krzysztof Kozlowski , Conor Dooley , Andrew Lunn , Heiner Kallweit , Russell King Cc: netdev@vger.kernel.org, linux-kernel@vger.kernel.org, devicetree@vger.kernel.org, Yang Xiwen X-Mailer: b4 0.12.4 X-Developer-Signature: v=1; a=ed25519-sha256; t=1708694896; l=1155; i=forbidden405@outlook.com; s=20230724; h=from:subject:message-id; bh=sYmI7rY8FFj5xi4CE0Px8R4wNFWcF8TjujWAa/SwbJA=; b=y5AFthUDMAKc4WCobsL6nAa0m+n8a/ePnE5/DJblwDSUz4juexa2ujqNi+54+2fmxtaOl8KyF 7CGgey2Rt/FDIhmZB+d//6McD0Ts6Bkjyw6lP6d5dCOBSgArlbZ58v+ X-Developer-Key: i=forbidden405@outlook.com; a=ed25519; pk=qOD5jhp891/Xzc+H/PZ8LWVSWE3O/XCQnAg+5vdU2IU= X-Endpoint-Received: by B4 Relay for forbidden405@outlook.com/20230724 with auth_id=67 X-Original-From: Yang Xiwen Reply-To: X-Patchwork-Delegate: kuba@kernel.org From: Yang Xiwen The only documented SoC Hi3516DV300 does not receive any updates from 8 years ago. With the recent driver changes, it unlikely works for this SoC anymore. Remove the binding for this SoC. Also it's hard to get the version number and it's unknown how the version can be used. Remove them until it's really needed. Signed-off-by: Yang Xiwen --- drivers/net/ethernet/hisilicon/hisi_femac.c | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/drivers/net/ethernet/hisilicon/hisi_femac.c b/drivers/net/ethernet/hisilicon/hisi_femac.c index eab91e011d11..9466ca9da2bb 100644 --- a/drivers/net/ethernet/hisilicon/hisi_femac.c +++ b/drivers/net/ethernet/hisilicon/hisi_femac.c @@ -990,9 +990,7 @@ static int hisi_femac_drv_resume(struct platform_device *pdev) #endif static const struct of_device_id hisi_femac_match[] = { - {.compatible = "hisilicon,hisi-femac-v1",}, - {.compatible = "hisilicon,hisi-femac-v2",}, - {.compatible = "hisilicon,hi3516cv300-femac",}, + {.compatible = "hisilicon,hisi-femac",}, {.compatible = "hisilicon,hi3798mv200-femac",}, {}, };