From patchwork Fri Dec 1 15:01:30 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: =?utf-8?q?Heiko_St=C3=BCbner?= X-Patchwork-Id: 172514 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:a59:bcd1:0:b0:403:3b70:6f57 with SMTP id r17csp1181781vqy; Fri, 1 Dec 2023 07:02:08 -0800 (PST) X-Google-Smtp-Source: AGHT+IGwryGvzJ46utHW9YaWhcWu6wQdWvRe7z/MZYCKJnPVCJEcDiOKSZg7fiHazB/86/7athJ/ X-Received: by 2002:a9d:68c3:0:b0:6d8:20b3:d5b7 with SMTP id i3-20020a9d68c3000000b006d820b3d5b7mr3144605oto.7.1701442928342; Fri, 01 Dec 2023 07:02:08 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1701442928; cv=none; d=google.com; s=arc-20160816; b=E+Y8bBpNcfTPAAHXXZ73iYdX895m6ckUf4UMOsjpqaOy1sPyQa1zySHL0OXpu71/yR WLThYEnW+NXz5UyCfJhjcWkUiVq7BEHCTCcE9d80ORoqYCuaMdynSKLBNMwm+MeQRvkd 9DzkPYvdbwLSl83VeVIzJd7XUYhaot1KsByZB/CmMJ+HDjzIKYVnaus2/Bm1VNu+HRGL pAv90SCvmL1gns6qHR/vgvNlMPztZVzZqbrHs695ziCmlOUCym4p3+V8ANSkoidZcQYw 8tCWnSOEezawBYIDlBjnwLHrKBT3NKSwucVG5WRnQuhEWCRc08QUeq8vfBu6Ptru25ww cl+Q== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:mime-version :references:in-reply-to:message-id:date:subject:cc:to:from; bh=7tt13NUjSkh0VAgrNiIDQ3CLWDwXpRLUTpixXVJUhzk=; fh=sFSLDUmuJYY2JlgyzfaSoPOTudHNb2Ag+XKlsmzXB60=; b=kZQGjNQFMg2HMUJEPjmKI9poxIpiEVg8QAiobAkydkxASXnO4rEe8JJ0NFhBRxxpOi W35Zl4EpfLaXSXiNRL5KpUR2/0egQEVAfFLt4ec+Yo2cnKIJ2b+BVhwomdDY6hpl+cfk 3g+XpBFGQ3K/E+pLE6yar3+3hMEjxLqiBbGWzIIQ787kd585eYHrvXAvljpuvKFiiDDu f2eE38uxMLqqshT3earuBoCoH/LnyiAaiTzSTWk8D02C+LIe1c1VcIzNJ46PceYYp+UX DlTPB247e52Dk8XqG9ME10NikzVXdv1ou+s2uN9nYhXhRbPQfTYlHKbs898MABfmQk1+ IDUg== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.35 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=sntech.de Received: from groat.vger.email (groat.vger.email. [23.128.96.35]) by mx.google.com with ESMTPS id x2-20020a05683000c200b006d7fc029594si1303795oto.272.2023.12.01.07.02.06 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 01 Dec 2023 07:02:08 -0800 (PST) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.35 as permitted sender) client-ip=23.128.96.35; Authentication-Results: mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.35 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=sntech.de Received: from out1.vger.email (depot.vger.email [IPv6:2620:137:e000::3:0]) by groat.vger.email (Postfix) with ESMTP id A6471826AC4F; Fri, 1 Dec 2023 07:02:04 -0800 (PST) X-Virus-Status: Clean X-Virus-Scanned: clamav-milter 0.103.11 at groat.vger.email Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1379289AbjLAPBv (ORCPT + 99 others); Fri, 1 Dec 2023 10:01:51 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:43108 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1379266AbjLAPBr (ORCPT ); Fri, 1 Dec 2023 10:01:47 -0500 Received: from gloria.sntech.de (gloria.sntech.de [185.11.138.130]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id EDD4810F9; Fri, 1 Dec 2023 07:01:51 -0800 (PST) Received: from i53875b61.versanet.de ([83.135.91.97] helo=phil.lan) by gloria.sntech.de with esmtpsa (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.94.2) (envelope-from ) id 1r951T-0000eX-8V; Fri, 01 Dec 2023 16:01:43 +0100 From: Heiko Stuebner To: andrew@lunn.ch, hkallweit1@gmail.com Cc: linux@armlinux.org.uk, davem@davemloft.net, edumazet@google.com, kuba@kernel.org, pabeni@redhat.com, netdev@vger.kernel.org, linux-kernel@vger.kernel.org, quentin.schulz@theobroma-systems.com, heiko@sntech.de, Heiko Stuebner Subject: [PATCH 1/2] net: phy: micrel: use devm_clk_get_optional_enabled for the rmii-ref clock Date: Fri, 1 Dec 2023 16:01:30 +0100 Message-Id: <20231201150131.326766-2-heiko@sntech.de> X-Mailer: git-send-email 2.39.2 In-Reply-To: <20231201150131.326766-1-heiko@sntech.de> References: <20231201150131.326766-1-heiko@sntech.de> MIME-Version: 1.0 X-Spam-Status: No, score=-0.8 required=5.0 tests=HEADER_FROM_DIFFERENT_DOMAINS, MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS,T_SCC_BODY_TEXT_LINE autolearn=unavailable autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on groat.vger.email Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org X-Greylist: Sender passed SPF test, not delayed by milter-greylist-4.6.4 (groat.vger.email [0.0.0.0]); Fri, 01 Dec 2023 07:02:04 -0800 (PST) X-getmail-retrieved-from-mailbox: INBOX X-GMAIL-THRID: 1784092220286724595 X-GMAIL-MSGID: 1784092220286724595 From: Heiko Stuebner While the external clock input will most likely be enabled, it's not guaranteed and clk_get_rate in some suppliers will even just return valid results when the clock is running. So use devm_clk_get_optional_enabled to retrieve and enable the clock in one go. Signed-off-by: Heiko Stuebner Reviewed-by: Florian Fainelli Reviewed-by: Andrew Lunn --- drivers/net/phy/micrel.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/net/phy/micrel.c b/drivers/net/phy/micrel.c index 08e3915001c3..ec6a39dc9053 100644 --- a/drivers/net/phy/micrel.c +++ b/drivers/net/phy/micrel.c @@ -2001,7 +2001,7 @@ static int kszphy_probe(struct phy_device *phydev) kszphy_parse_led_mode(phydev); - clk = devm_clk_get(&phydev->mdio.dev, "rmii-ref"); + clk = devm_clk_get_optional_enabled(&phydev->mdio.dev, "rmii-ref"); /* NOTE: clk may be NULL if building without CONFIG_HAVE_CLK */ if (!IS_ERR_OR_NULL(clk)) { unsigned long rate = clk_get_rate(clk); From patchwork Fri Dec 1 15:01:31 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: =?utf-8?q?Heiko_St=C3=BCbner?= X-Patchwork-Id: 172513 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:a59:bcd1:0:b0:403:3b70:6f57 with SMTP id r17csp1181659vqy; Fri, 1 Dec 2023 07:02:02 -0800 (PST) X-Google-Smtp-Source: AGHT+IHmJsy8HVAM3P4fRLqDQm0F8JbK1xhin0OK4SLnMIBx7sdKPH3TdQE77C8NRZ4fkb7VT/Zp X-Received: by 2002:a05:6871:a98b:b0:1f9:fa19:75e3 with SMTP id wo11-20020a056871a98b00b001f9fa1975e3mr26278751oab.50.1701442922620; Fri, 01 Dec 2023 07:02:02 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1701442922; cv=none; d=google.com; s=arc-20160816; b=MMGACTcful2HLKnUergbksD4lu0P+08Okpcyp1v59ECXnTwRZ4GtNp2ViaXpuoz1Hb sTIgAW43JyuSwxogCkAf9FUFR7CJYcOQJOZpo27YjKyyqI8B6ZiHSEMkYZfQzPr5MTWQ r5++3hVo4ohZgQNyGXPCmoXn84kBfYGSx4yIs48hTpTNFylC+lC0w1iQjpf6zQBsT0H9 3DoROCZSMAVMMHYGhzXM/WeZpuEoDVaQFv00gm1Gxo1v8OKKGv+Q++7c0OAK3HPuMS6+ qQ5mGZyqFx+Ny+BFBRGYclEg8maxNTEplDhYyKzlOO23jDlzSGqBZc9PtTsJi+6PRfua zpFQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:mime-version :references:in-reply-to:message-id:date:subject:cc:to:from; bh=KChfwHJ+HzVs2nNRqhVZHL4xHgqEo48W++AIOEtox1o=; fh=sFSLDUmuJYY2JlgyzfaSoPOTudHNb2Ag+XKlsmzXB60=; b=zRyFWd4YJgtJLz+ET9mwI++nVROUxDf9Dcyy8HBPEVj7+WSTiA90rO9Fte1/E1Ugai /xTnIdAsgz5eZYsVJMWEFELLIIZ5IPCGvwfN7dFtQwqhgGf/nJlUGQx/d7oHoGyPGj+d LGc558plpA1/vLR+TfpFhmMLRvzbNxuCOBKuKc/1nKPH6awjaBXnhUO1kpHjJjjtoK76 SZtIxLIFFTZUiest8t9pIqg+MxpVoxGEu3L66ceFzFttN5JR+0Snh2veFq9SXtbcg7ev PwtP780JnMWVrqpQt3v914y5S7fBkfZCsWqb2hQzspYYi1nVOh5Dey8l4++jCmUNRQri d2hg== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::3:7 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=sntech.de Received: from snail.vger.email (snail.vger.email. [2620:137:e000::3:7]) by mx.google.com with ESMTPS id ov9-20020a056870cb8900b001fafc32e81asi164091oab.0.2023.12.01.07.02.01 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 01 Dec 2023 07:02:02 -0800 (PST) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::3:7 as permitted sender) client-ip=2620:137:e000::3:7; Authentication-Results: mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::3:7 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=sntech.de Received: from out1.vger.email (depot.vger.email [IPv6:2620:137:e000::3:0]) by snail.vger.email (Postfix) with ESMTP id 65A7C81121CE; Fri, 1 Dec 2023 07:02:00 -0800 (PST) X-Virus-Status: Clean X-Virus-Scanned: clamav-milter 0.103.11 at snail.vger.email Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1379283AbjLAPBt (ORCPT + 99 others); Fri, 1 Dec 2023 10:01:49 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:43088 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1379265AbjLAPBr (ORCPT ); Fri, 1 Dec 2023 10:01:47 -0500 Received: from gloria.sntech.de (gloria.sntech.de [185.11.138.130]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 04ED9193; Fri, 1 Dec 2023 07:01:51 -0800 (PST) Received: from i53875b61.versanet.de ([83.135.91.97] helo=phil.lan) by gloria.sntech.de with esmtpsa (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.94.2) (envelope-from ) id 1r951T-0000eX-PW; Fri, 01 Dec 2023 16:01:43 +0100 From: Heiko Stuebner To: andrew@lunn.ch, hkallweit1@gmail.com Cc: linux@armlinux.org.uk, davem@davemloft.net, edumazet@google.com, kuba@kernel.org, pabeni@redhat.com, netdev@vger.kernel.org, linux-kernel@vger.kernel.org, quentin.schulz@theobroma-systems.com, heiko@sntech.de, Heiko Stuebner Subject: [PATCH 2/2] net: phy: micrel: allow usage of generic ethernet-phy clock Date: Fri, 1 Dec 2023 16:01:31 +0100 Message-Id: <20231201150131.326766-3-heiko@sntech.de> X-Mailer: git-send-email 2.39.2 In-Reply-To: <20231201150131.326766-1-heiko@sntech.de> References: <20231201150131.326766-1-heiko@sntech.de> MIME-Version: 1.0 X-Spam-Status: No, score=-1.9 required=5.0 tests=BAYES_00,SPF_PASS, T_SCC_BODY_TEXT_LINE,T_SPF_HELO_TEMPERROR 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-Greylist: Sender passed SPF test, not delayed by milter-greylist-4.6.4 (snail.vger.email [0.0.0.0]); Fri, 01 Dec 2023 07:02:00 -0800 (PST) X-getmail-retrieved-from-mailbox: INBOX X-GMAIL-THRID: 1784092214126108432 X-GMAIL-MSGID: 1784092214126108432 From: Heiko Stuebner The generic ethernet-phy binding allows describing an external clock since commit 350b7a258f20 ("dt-bindings: net: phy: Document support for external PHY clk") for cases where the phy is not supplied by an oscillator but instead by a clock from the host system. And the old named "rmii-ref" clock from 2014 is only specified for phys of the KSZ8021, KSZ8031, KSZ8081, KSZ8091 types. So allow retrieving and enabling the optional generic clock on phys that do not provide a rmii-ref clock. Signed-off-by: Heiko Stuebner Reviewed-by: Florian Fainelli Reviewed-by: Andrew Lunn --- drivers/net/phy/micrel.c | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/drivers/net/phy/micrel.c b/drivers/net/phy/micrel.c index ec6a39dc9053..9490849437c0 100644 --- a/drivers/net/phy/micrel.c +++ b/drivers/net/phy/micrel.c @@ -2021,6 +2021,11 @@ static int kszphy_probe(struct phy_device *phydev) rate); return -EINVAL; } + } else if (!clk) { + /* unnamed clock from the generic ethernet-phy binding */ + clk = devm_clk_get_optional_enabled(&phydev->mdio.dev, NULL); + if (IS_ERR(clk)) + return PTR_ERR(clk); } if (ksz8041_fiber_mode(phydev))