From: Lukasz Majewski <lukma@denx.de>
To: u-boot@lists.denx.de
Subject: [U-Boot] [PATCH] net: phy: marvell: Add functions to read PHY's extended registers
Date: Thu, 26 Oct 2017 17:15:52 +0200 [thread overview]
Message-ID: <20171026171552.31c240f3@jawa> (raw)
In-Reply-To: <20171026171519.531d8051@jawa>
On Thu, 26 Oct 2017 17:15:19 +0200
Lukasz Majewski <lukma@denx.de> wrote:
> On Thu, 26 Oct 2017 15:05:18 +0000
> York Sun <york.sun@nxp.com> wrote:
>
> > On 09/29/2017 07:48 AM, Lukasz Majewski wrote:
> > > This commit allows extended Marvell registers to be read with:
> > >
> > > foo > mdio rx FEC 3.10
> > > Reading from bus FEC
> > > PHY at address 0:
> > > 3.16 - 0x1063
> > > foo > mdio wx FEC 3.10 0x1011
> > >
> > > The above code changes the way ETH connector LEDs blink.
> > >
> > > Signed-off-by: Lukasz Majewski <lukma@denx.de>
> > > ---
> > > drivers/net/phy/marvell.c | 27 +++++++++++++++++++++++++++
> > > 1 file changed, 27 insertions(+)
> > >
> > > diff --git a/drivers/net/phy/marvell.c b/drivers/net/phy/marvell.c
> > > index b7f300e..a167c34 100644
> > > --- a/drivers/net/phy/marvell.c
> > > +++ b/drivers/net/phy/marvell.c
> > > @@ -104,6 +104,31 @@
> > > #define MIIM_88E151x_MODE_SGMII 1
> > > #define MIIM_88E151x_RESET_OFFS 15
> > >
> > > +static int m88e1xxx_phy_extread(struct phy_device *phydev, int
> > > addr,
> > > + int devaddr, int regnum)
> > > +{
> > > + int oldpage = phy_read(phydev, MDIO_DEVAD_NONE,
> > > MII_MARVELL_PHY_PAGE);
> > > + int val;
> > > +
> > > + phy_write(phydev, MDIO_DEVAD_NONE, MII_MARVELL_PHY_PAGE,
> > > devaddr);
> > > + val = phy_read(phydev, MDIO_DEVAD_NONE, regnum);
> > > + phy_write(phydev, MDIO_DEVAD_NONE, MII_MARVELL_PHY_PAGE,
> > > oldpage); +
> > > + return val;
> > > +}
> > > +
> > > +static int m88e1xxx_phy_extwrite(struct phy_device *phydev, int
> > > addr,
> > > + int devaddr, int regnum, u16
> > > val) +{
> > > + int oldpage = phy_read(phydev, MDIO_DEVAD_NONE,
> > > MII_MARVELL_PHY_PAGE); +
> > > + phy_write(phydev, MDIO_DEVAD_NONE, MII_MARVELL_PHY_PAGE,
> > > devaddr);
> > > + phy_write(phydev, MDIO_DEVAD_NONE, regnum, val);
> > > + phy_write(phydev, MDIO_DEVAD_NONE, MII_MARVELL_PHY_PAGE,
> > > oldpage); +
> > > + return 0;
> > > +}
> > > +
> > > /* Marvell 88E1011S */
> > > static int m88e1011s_config(struct phy_device *phydev)
> > > {
> > > @@ -669,6 +694,8 @@ static struct phy_driver M88E1510_driver = {
> > > .config = &m88e1510_config,
> > > .startup = &m88e1011s_startup,
> > > .shutdown = &genphy_shutdown,
> > > + .readext = &m88e1xxx_phy_extread,
> > > + .writeext = &m88e1xxx_phy_extwrite,
> > > };
> > >
> > > /*
> > >
> >
> >
> > I guess this feature is usable. You only enable it for M88E1510. Can
> > the same be applied to other Marvell PHYs?
>
> It should work...
>
> However, in this patch I've only enabled one - which I could test.....
>
> I can enable more if you can help me with debugging.
s/debugging/testing
>
> >
> > York
>
>
>
>
> Best regards,
>
> Lukasz Majewski
>
> --
>
> DENX Software Engineering GmbH, Managing Director: Wolfgang Denk
> HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
> Phone: (+49)-8142-66989-10 Fax: (+49)-8142-66989-80 Email: wd at denx.de
Best regards,
Lukasz Majewski
--
DENX Software Engineering GmbH, Managing Director: Wolfgang Denk
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
Phone: (+49)-8142-66989-10 Fax: (+49)-8142-66989-80 Email: wd at denx.de
next prev parent reply other threads:[~2017-10-26 15:15 UTC|newest]
Thread overview: 7+ messages / expand[flat|nested] mbox.gz Atom feed top
2017-09-29 14:47 [U-Boot] [PATCH] net: phy: marvell: Add functions to read PHY's extended registers Lukasz Majewski
2017-10-26 14:18 ` Lukasz Majewski
2017-10-26 15:05 ` York Sun
2017-10-26 15:15 ` Lukasz Majewski
2017-10-26 15:15 ` Lukasz Majewski [this message]
2017-10-26 15:45 ` York Sun
2017-10-26 21:02 ` Lukasz Majewski
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=20171026171552.31c240f3@jawa \
--to=lukma@denx.de \
--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 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.