From: Jakub Kicinski <kuba@kernel.org>
To: "Lucien.Jheng" <lucienx123@gmail.com>
Cc: linux-clk@vger.kernel.org, andrew@lunn.ch, hkallweit1@gmail.com,
linux@armlinux.org.uk, davem@davemloft.net, edumazet@google.com,
pabeni@redhat.com, daniel@makrotopia.org, ericwouds@gmail.com,
netdev@vger.kernel.org, linux-kernel@vger.kernel.org,
joseph.lin@airoha.com, wenshin.chung@airoha.com,
lucien.jheng@airoha.com
Subject: Re: [PATCH v6 net-next PATCH 1/1] net: phy: air_en8811h: Add clk provider for CKO pin
Date: Tue, 25 Mar 2025 15:52:14 -0700 [thread overview]
Message-ID: <20250325155214.44a65306@kernel.org> (raw)
In-Reply-To: <20250324142759.35141-1-lucienx123@gmail.com>
On Mon, 24 Mar 2025 22:27:59 +0800 Lucien.Jheng wrote:
> EN8811H outputs 25MHz or 50MHz clocks on CKO, selected by GPIO3.
> CKO clock operates continuously from power-up through md32 loading.
> Implement clk provider driver so we can disable the clock output in case
> it isn't needed, which also helps to reduce EMF noise
>
> Signed-off-by: Lucien.Jheng <lucienx123@gmail.com>
This was posted after merge window started, so let me give you some
extra nit picks and please repost after April 7th.
> +static int en8811h_clk_enable(struct clk_hw *hw)
> +{
> + struct en8811h_priv *priv = clk_hw_to_en8811h_priv(hw);
> + struct phy_device *phydev = priv->phydev;
> +
> + return air_buckpbus_reg_modify(phydev, EN8811H_CLK_CGM,
> + EN8811H_CLK_CGM_CKO, EN8811H_CLK_CGM_CKO);
misaligned, continuation should align to opening bracket
> +static int en8811h_clk_is_enabled(struct clk_hw *hw)
> +{
> + struct en8811h_priv *priv = clk_hw_to_en8811h_priv(hw);
> + struct phy_device *phydev = priv->phydev;
> + int ret = 0;
unnecessary init
> + u32 pbus_value;
> +
> + ret = air_buckpbus_reg_read(phydev, EN8811H_CLK_CGM, &pbus_value);
> + if (ret < 0)
> + return ret;
> +
> + return (pbus_value & EN8811H_CLK_CGM_CKO);
> +}
> +
> +static const struct clk_ops en8811h_clk_ops = {
> + .recalc_rate = en8811h_clk_recalc_rate,
> + .enable = en8811h_clk_enable,
> + .disable = en8811h_clk_disable,
these are not tab-aligned
> + .is_enabled = en8811h_clk_is_enabled,
this one is
> +};
> +
> +static int en8811h_clk_provider_setup(struct device *dev,
> + struct clk_hw *hw)
no need to wrap this line
> +{
> + struct clk_init_data init;
> + int ret;
> +
> + if (!IS_ENABLED(CONFIG_COMMON_CLK))
> + return 0;
> +
> + init.name = devm_kasprintf(dev, GFP_KERNEL, "%s-cko",
> + fwnode_get_name(dev_fwnode(dev)));
double space
--
pw-bot: cr
prev parent reply other threads:[~2025-03-25 22:52 UTC|newest]
Thread overview: 2+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-03-24 14:27 [PATCH v6 net-next PATCH 1/1] net: phy: air_en8811h: Add clk provider for CKO pin Lucien.Jheng
2025-03-25 22:52 ` Jakub Kicinski [this message]
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20250325155214.44a65306@kernel.org \
--to=kuba@kernel.org \
--cc=andrew@lunn.ch \
--cc=daniel@makrotopia.org \
--cc=davem@davemloft.net \
--cc=edumazet@google.com \
--cc=ericwouds@gmail.com \
--cc=hkallweit1@gmail.com \
--cc=joseph.lin@airoha.com \
--cc=linux-clk@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux@armlinux.org.uk \
--cc=lucien.jheng@airoha.com \
--cc=lucienx123@gmail.com \
--cc=netdev@vger.kernel.org \
--cc=pabeni@redhat.com \
--cc=wenshin.chung@airoha.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.