From: Florian Fainelli <f.fainelli@gmail.com>
To: Niklas Cassel <niklas.cassel@axis.com>,
peppe.cavallaro@st.com, alexandre.torgue@st.com,
Joao.Pinto@synopsys.com
Cc: netdev@vger.kernel.org, linux-kernel@vger.kernel.org,
Niklas Cassel <niklass@axis.com>
Subject: Re: [PATCH net-next] stmmac: call stmmac_init_phy from stmmac_dvr_probe
Date: Mon, 20 Mar 2017 10:43:48 -0700 [thread overview]
Message-ID: <257f3b05-805d-fd59-5435-89ede6b0fe4b@gmail.com> (raw)
In-Reply-To: <20170320172915.8313-1-niklass@axis.com>
On 03/20/2017 10:29 AM, Niklas Cassel wrote:
> From: Niklas Cassel <niklas.cassel@axis.com>
>
> It is usually possible to do
> ethtool -s autoneg on
> so that you trigger an autoneg before calling
> ip link set dev eth0 up
This is completely driver specific and there is no guarantee for this to
work universally across all device drivers because when your interface
is brought down, the most sensible thing to expect in return is that
your PHY is powered down (unless your interface participates in
Wake-on-LAN).
>
> However, stmmac returns -EBUSY if !netif_running.
> The only reason for this appears to be that stmmac_init_phy
> is called from stmmac_open instead of from stmmac_dvr_probe.
>
> Move stmmac_init_phy to stmmac_dvr_probe so that ethool
> works as soon as register_netdev has been called.
> stmmac_check_ether_addr was also moved to probe,
> so that the ordering doesn't change.
Are you sure this is a good idea? There are many drivers that moved the
PHY probe into ndo_open() for mainly two things:
- phy_connect() starts the PHY state machine and starting the state
machine without a network device running is kind of wasting cycles
- if the interface is probed, but not used, you are keeping the Ethernet
link running without being able to service packets, which is at best a
waste of power
--
Florian
next prev parent reply other threads:[~2017-03-20 17:43 UTC|newest]
Thread overview: 9+ messages / expand[flat|nested] mbox.gz Atom feed top
2017-03-20 17:29 Niklas Cassel
2017-03-20 17:42 ` Joao Pinto
2017-03-20 17:44 ` Niklas Cassel
2017-03-20 17:46 ` Joao Pinto
2017-03-20 17:43 ` Florian Fainelli [this message]
2017-03-20 18:34 ` Niklas Cassel
2017-03-20 22:07 ` Florian Fainelli
2017-03-21 9:04 ` Niklas Cassel
2017-03-21 16:32 ` Florian Fainelli
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=257f3b05-805d-fd59-5435-89ede6b0fe4b@gmail.com \
--to=f.fainelli@gmail.com \
--cc=Joao.Pinto@synopsys.com \
--cc=alexandre.torgue@st.com \
--cc=linux-kernel@vger.kernel.org \
--cc=netdev@vger.kernel.org \
--cc=niklas.cassel@axis.com \
--cc=niklass@axis.com \
--cc=peppe.cavallaro@st.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
all inboxes | Powered by JetHome®