From: Jerry Van Baren <gerald.vanbaren@ge.com>
To: u-boot@lists.denx.de
Subject: [U-Boot] [PATCH] tsec: Wait for auto-negotiation to complete without link
Date: Fri, 06 Feb 2009 08:32:14 -0500 [thread overview]
Message-ID: <498C3BDE.3020102@ge.com> (raw)
In-Reply-To: <1233851271.6434.2066.camel@localhost.localdomain>
Peter Tyser wrote:
> On Wed, 2009-02-04 at 17:07 -0600, Andy Fleming wrote:
>> On Wed, Feb 4, 2009 at 3:26 PM, Wolfgang Denk <wd@denx.de> wrote:
>>> Dear Andy Fleming,
>>>
>>> In message <2acbd3e40902041320l3bce93c1p989c4c33ca8e7ae@mail.gmail.com> you wrote:
>>>> Hmmm....I made that change for a reason. Waiting for autonegotiation
>>>> to finish on a tsec with no link was quite tiresome. If you've hooked
>>>> up the 4th tsec, and try to boot, you end up waiting for *three* tsecs
>>>> to timeout. If dhcp fails because the link isn't up you can always
>>>> try again, or add a delay before dhcp starts so that the link is up.
>>> Why that? Don't you always enable only the interface you are trying to
>>> use?
>> The problem is that you don't always know which interface you have
>> hooked up. So u-boot tries the one set in ethact, and then the next,
>> etc. With the old method, the penalty for being wrong was quite high.
>> I hadn't run into an issue with the link not being up. Why don't we
>> look up the spec, and find out the maximum time we'd have to wait for
>> that to happen. That way we get the best of both worlds. My sense is
>> that the link comes up fast, but autonegotiation potentially takes a
>> while.
2 seconds minimum, it is written in the autonegotiation spec. If you
add the spec-required minimum times for each step of the dance, it is 2
seconds. It could take longer, but I've never seen anything but 2 seconds.
> My understanding was that link was was never achieved until
> autonegotiation was finished. How could link be up before
> autonegotiation was complete?
>
> With the original code I always saw 1 of 2 situations with a variety of
> Broadcom PHYs:
> 1. Autonegotiation completed and link was detected
> 2. Autonegotiation was in process and link was not detected
>
> I never saw the case that the code referenced:
> 3. Autonegotiation was in process and link was detected
>
> Do others see #3?
>
> Thanks,
> Peter
I never tried #3 personally, but my understanding of the link and
autonegotiation dance is that #3 is not possible.
You may see what appears to be #3 *if* your PHY is strapped to start
autonegotiation on application of power (typically true) and *if* you
don't do a software reset on the PHY as part of your power up sequence
(see also my previous email on this thread). This really isn't #3, it is...
4. Strap the PHY to autonegotiate on application of power and use the
results from that rather than resetting the PHY and re-starting
auto-negotiation in software.
Best regards,
gvb
next prev parent reply other threads:[~2009-02-06 13:32 UTC|newest]
Thread overview: 23+ messages / expand[flat|nested] mbox.gz Atom feed top
2009-02-04 21:14 [U-Boot] [PATCH] tsec: Wait for auto-negotiation to complete without link Peter Tyser
2009-02-04 21:20 ` Andy Fleming
2009-02-04 21:26 ` Wolfgang Denk
2009-02-04 21:45 ` Peter Tyser
2009-02-04 23:07 ` Andy Fleming
2009-02-05 16:27 ` Peter Tyser
2009-02-06 13:32 ` Jerry Van Baren [this message]
2009-02-06 18:49 ` Andy Fleming
2009-02-06 19:30 ` Jerry Van Baren
2009-02-10 0:56 ` Andy Fleming
2009-02-10 13:59 ` Jerry Van Baren
2009-02-10 17:31 ` Scott Wood
2009-02-25 20:30 ` Peter Tyser
2009-02-04 21:49 ` Scott Wood
2009-02-04 21:58 ` Wolfgang Denk
2009-02-04 22:00 ` Scott Wood
2009-02-04 22:19 ` Wolfgang Denk
2009-02-06 13:16 ` Jerry Van Baren
2009-02-06 17:16 ` Ben Warren
2009-07-19 20:14 ` Peter Tyser
2009-08-04 22:50 ` Peter Tyser
2009-08-21 17:04 ` Peter Tyser
2009-08-21 17:35 ` Ben Warren
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=498C3BDE.3020102@ge.com \
--to=gerald.vanbaren@ge.com \
--cc=u-boot@lists.denx.de \
/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