From: David Daney <ddaney@caviumnetworks.com>
To: Alex Dubov <oakad@yahoo.com>
Cc: Andrew Morton <akpm@linux-foundation.org>,
netdev@vger.kernel.org, bugzilla-daemon@bugzilla.kernel.org,
bugme-daemon@bugzilla.kernel.org,
Grant Likely <grant.likely@secretlab.ca>,
Andy Fleming <afleming@freescale.com>
Subject: Re: [Bugme-new] [Bug 33042] New: Marvell 88E1145 phy configured incorrectly in fiber mode
Date: Tue, 12 Apr 2011 09:34:14 -0700 [thread overview]
Message-ID: <4DA47F06.7020803@caviumnetworks.com> (raw)
In-Reply-To: <392488.26736.qm@web37606.mail.mud.yahoo.com>
On 04/11/2011 08:45 PM, Alex Dubov wrote:
>>
>> How does your u-boot configure the part? Does it
>> write any of the
>> configuration registers, or is it just the default
>> configuration set via
>> the strapping pins?
>
> U-boot configures this phy just like any other phy - by running a set of
> register assignments from phy_info_M88E1145.
>
> Unfortunately, I don't have a datasheet for this phy
I would guess that the people who designed your board have it.
You do seem to have the uboot code though, so you know which registers
are being set. Given this, you can fiddle around with the Linux driver
until it works. Then send a patch.
To me it looks like you need to set register 22 (Page Select) to the
value of 1 to access the register sets associated with fiber. I don't
have any hardware with this PHY connected to fiber, so I can't really
test it.
David Daney
> and kernel does
> quite a few things differently, so simply copying stuff from u-boot
> does not work well (in kernel, phy initialization is broken into 3
> functions, if I'm not mistaken).
>
> Otherwise, my problem seems to be identical to the one reported some
> time ago against 88E1111 phy (which resulted in the addition of
> "marvell_read_status" in the first place). The problem was, as it seems
> to be now, that phy is always configured in "copper" mode, instead of
> driver checking for the correct "fiber" mode bits.
>
>
>>
>> In any event, you will probably have to read the
>> configuration before
>> the drivers/net/phy/marvel.c changes them. Then
>> compare that to what
>> the driver is trying to set. Then you will either
>> have to override the
>> configuration with the device tree "marvell,reg-init"
>> property, or if
>> you are not using the device tree, add a 88e1145 specific
>> flag that you
>> set when calling phy_connect().
>>
>> David Daney
>>
next prev parent reply other threads:[~2011-04-12 16:34 UTC|newest]
Thread overview: 9+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <bug-33042-10286@https.bugzilla.kernel.org/>
2011-04-11 21:02 ` [Bugme-new] [Bug 33042] New: Marvell 88E1145 phy configured incorrectly in fiber mode Andrew Morton
2011-04-11 21:18 ` David Daney
2011-04-12 3:45 ` Alex Dubov
2011-04-12 16:34 ` David Daney [this message]
2011-04-13 18:01 ` Andy Fleming
2011-04-14 7:59 ` Alex Dubov
2011-04-15 20:57 ` Andy Fleming
2011-04-18 5:44 ` Alex Dubov
2011-04-18 6:43 ` Alex Dubov
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=4DA47F06.7020803@caviumnetworks.com \
--to=ddaney@caviumnetworks.com \
--cc=afleming@freescale.com \
--cc=akpm@linux-foundation.org \
--cc=bugme-daemon@bugzilla.kernel.org \
--cc=bugzilla-daemon@bugzilla.kernel.org \
--cc=grant.likely@secretlab.ca \
--cc=netdev@vger.kernel.org \
--cc=oakad@yahoo.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.