From: Sean Anderson <sean.anderson@seco.com>
To: Kishon Vijay Abraham I <kishon@ti.com>,
Vinod Koul <vkoul@kernel.org>,
linux-phy@lists.infradead.org
Cc: Jonathan Corbet <corbet@lwn.net>,
linux-kernel@vger.kernel.org, linux-doc@vger.kernel.org
Subject: Re: [PATCH] doc: phy: Document typical order of API calls
Date: Tue, 18 Oct 2022 14:01:56 -0400 [thread overview]
Message-ID: <e002248f-7070-3f89-04f2-e7f694fad5cc@seco.com> (raw)
In-Reply-To: <20221018175841.1906611-1-sean.anderson@seco.com>
Hi Vinod,
When sending this patch, I noticed that Kishon's email bounced. Is he
still maintaining this subsystem? He hasn't been very active for the
past year.
--Sean
On 10/18/22 1:58 PM, Sean Anderson wrote:
> Document the typical order of API calls to used by new drivers and
> controllers. Many existing controllers follow this order, but some do
> not. This is especially true for controllers designed to work with one
> particular PHY driver, which may not need a call to (for example)
> phy_init.
>
> Signed-off-by: Sean Anderson <sean.anderson@seco.com>
> ---
>
> Documentation/driver-api/phy/phy.rst | 25 ++++++++++++++++++++++++-
> 1 file changed, 24 insertions(+), 1 deletion(-)
>
> diff --git a/Documentation/driver-api/phy/phy.rst b/Documentation/driver-api/phy/phy.rst
> index 8fc1ce0bb905..8e8b3e8f9523 100644
> --- a/Documentation/driver-api/phy/phy.rst
> +++ b/Documentation/driver-api/phy/phy.rst
> @@ -94,7 +94,8 @@ Inorder to dereference the private data (in phy_ops), the phy provider driver
> can use phy_set_drvdata() after creating the PHY and use phy_get_drvdata() in
> phy_ops to get back the private data.
>
> -4. Getting a reference to the PHY
> +Getting a reference to the PHY
> +==============================
>
> Before the controller can make use of the PHY, it has to get a reference to
> it. This framework provides the following APIs to get a reference to the PHY.
> @@ -130,6 +131,28 @@ the phy_init() and phy_exit() calls, and phy_power_on() and
> phy_power_off() calls are all NOP when applied to a NULL phy. The NULL
> phy is useful in devices for handling optional phy devices.
>
> +Order of API calls
> +==================
> +
> +The general order of calls should be::
> +
> + [devm_][of_]phy_get()
> + phy_init()
> + phy_power_on()
> + [phy_set_mode[_ext]()]
> + ...
> + phy_power_off()
> + phy_exit()
> + [[of_]phy_put()]
> +
> +Some PHY drivers may not implement :c:func:`phy_init` or :c:func:`phy_power_on`,
> +but controllers should always call these functions to be compatible with other
> +PHYs. Some PHYs may require :c:func:`phy_set_mode <phy_set_mode_ext>`, while
> +others may use a default mode (typically configured via devicetree or other
> +firmware). For compatibility, you should always call this function if you know
> +what mode you will be using. Generally, this function should be called after
> +:c:func:`phy_power_on`, although some PHY drivers may allow it at any time.
> +
> Releasing a reference to the PHY
> ================================
>
>
--
linux-phy mailing list
linux-phy@lists.infradead.org
https://lists.infradead.org/mailman/listinfo/linux-phy
next prev parent reply other threads:[~2022-10-18 18:02 UTC|newest]
Thread overview: 5+ messages / expand[flat|nested] mbox.gz Atom feed top
2022-10-18 17:58 [PATCH] doc: phy: Document typical order of API calls Sean Anderson
2022-10-18 18:01 ` Sean Anderson [this message]
2022-10-19 5:28 ` Vinod Koul
2022-10-20 2:56 ` Bagas Sanjaya
2022-11-05 14:45 ` Vinod Koul
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=e002248f-7070-3f89-04f2-e7f694fad5cc@seco.com \
--to=sean.anderson@seco.com \
--cc=corbet@lwn.net \
--cc=kishon@ti.com \
--cc=linux-doc@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-phy@lists.infradead.org \
--cc=vkoul@kernel.org \
/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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).