* [U-Boot] [PATCH v2] Aquantia: Print information about system interface and firmware version
@ 2018-11-06 12:16 Valentin-catalin Neacsu
2019-01-22 21:51 ` Joe Hershberger
` (2 more replies)
0 siblings, 3 replies; 5+ messages in thread
From: Valentin-catalin Neacsu @ 2018-11-06 12:16 UTC (permalink / raw)
To: u-boot
Print information about Aquantia firmware loaded on the phy.
Signed-off-by: Valentin Catalin Neacsu <valentin-catalin.neacsu@nxp.com>
---
V2:
- Fix typo in title. (Clement Peron)
drivers/net/phy/aquantia.c | 21 +++++++++++++++++++++
1 file changed, 21 insertions(+)
diff --git a/drivers/net/phy/aquantia.c b/drivers/net/phy/aquantia.c
index 553069f3dc..2609664c69 100644
--- a/drivers/net/phy/aquantia.c
+++ b/drivers/net/phy/aquantia.c
@@ -22,6 +22,11 @@
#define AQUANTIA_SYSTEM_INTERFACE_SR 0xe812
#define AQUANTIA_VENDOR_PROVISIONING_REG 0xC441
+#define AQUANTIA_FIRMWARE_ID 0x20
+#define AQUANTIA_RESERVED_STATUS 0xc885
+#define AQUANTIA_FIRMWARE_MAJOR_MASK 0xff00
+#define AQUANTIA_FIRMWARE_MINOR_MASK 0xff
+#define AQUANTIA_FIRMWARE_BUILD_MASK 0xf0
#define AQUANTIA_USX_AUTONEG_CONTROL_ENA 0x0008
#define AQUANTIA_SI_IN_USE_MASK 0x0078
@@ -30,6 +35,7 @@
int aquantia_config(struct phy_device *phydev)
{
u32 val = phy_read(phydev, MDIO_MMD_PMAPMD, MII_BMCR);
+ u32 reg_val1 = 0;
if (phydev->interface == PHY_INTERFACE_MODE_SGMII) {
/* 1000BASE-T mode */
@@ -56,6 +62,11 @@ int aquantia_config(struct phy_device *phydev)
phy_write(phydev, MDIO_MMD_PHYXS,
AQUANTIA_VENDOR_PROVISIONING_REG,
AQUANTIA_USX_AUTONEG_CONTROL_ENA);
+ printf("%s: system interface USXGMII\n",
+ phydev->dev->name);
+ } else {
+ printf("%s: system interface XFI\n",
+ phydev->dev->name);
}
} else if (phydev->interface == PHY_INTERFACE_MODE_SGMII_2500) {
@@ -73,6 +84,16 @@ int aquantia_config(struct phy_device *phydev)
val = (val & ~AQUNTIA_SPEED_MSB_MASK) | AQUNTIA_SPEED_LSB_MASK;
phy_write(phydev, MDIO_MMD_PMAPMD, MII_BMCR, val);
}
+
+ val = phy_read(phydev, MDIO_MMD_VEND1, AQUANTIA_RESERVED_STATUS);
+ reg_val1 = phy_read(phydev, MDIO_MMD_VEND1, AQUANTIA_FIRMWARE_ID);
+
+ printf("%s: %s Firmware Version %x.%x.%x\n", phydev->dev->name,
+ phydev->drv->name,
+ (reg_val1 & AQUANTIA_FIRMWARE_MAJOR_MASK) >> 8,
+ reg_val1 & AQUANTIA_FIRMWARE_MINOR_MASK,
+ (val & AQUANTIA_FIRMWARE_BUILD_MASK) >> 4);
+
return 0;
}
--
2.17.1
^ permalink raw reply related [flat|nested] 5+ messages in thread
* [U-Boot] [PATCH v2] Aquantia: Print information about system interface and firmware version
2018-11-06 12:16 [U-Boot] [PATCH v2] Aquantia: Print information about system interface and firmware version Valentin-catalin Neacsu
@ 2019-01-22 21:51 ` Joe Hershberger
2019-01-22 23:14 ` Joe Hershberger
2019-01-24 17:39 ` [U-Boot] net: phy: aquantia: Print information on config Joe Hershberger
2 siblings, 0 replies; 5+ messages in thread
From: Joe Hershberger @ 2019-01-22 21:51 UTC (permalink / raw)
To: u-boot
On Tue, Nov 6, 2018 at 6:17 AM Valentin-catalin Neacsu
<valentin-catalin.neacsu@nxp.com> wrote:
>
> Print information about Aquantia firmware loaded on the phy.
>
> Signed-off-by: Valentin Catalin Neacsu <valentin-catalin.neacsu@nxp.com>
Acked-by: Joe Hershberger <joe.hershberger@ni.com>
^ permalink raw reply [flat|nested] 5+ messages in thread
* [U-Boot] [PATCH v2] Aquantia: Print information about system interface and firmware version
2018-11-06 12:16 [U-Boot] [PATCH v2] Aquantia: Print information about system interface and firmware version Valentin-catalin Neacsu
2019-01-22 21:51 ` Joe Hershberger
@ 2019-01-22 23:14 ` Joe Hershberger
2019-01-22 23:29 ` Joe Hershberger
2019-01-24 17:39 ` [U-Boot] net: phy: aquantia: Print information on config Joe Hershberger
2 siblings, 1 reply; 5+ messages in thread
From: Joe Hershberger @ 2019-01-22 23:14 UTC (permalink / raw)
To: u-boot
On Tue, Nov 6, 2018 at 6:17 AM Valentin-catalin Neacsu
<valentin-catalin.neacsu@nxp.com> wrote:
>
> Print information about Aquantia firmware loaded on the phy.
>
> Signed-off-by: Valentin Catalin Neacsu <valentin-catalin.neacsu@nxp.com>
> ---
> V2:
> - Fix typo in title. (Clement Peron)
>
> drivers/net/phy/aquantia.c | 21 +++++++++++++++++++++
> 1 file changed, 21 insertions(+)
>
> diff --git a/drivers/net/phy/aquantia.c b/drivers/net/phy/aquantia.c
> index 553069f3dc..2609664c69 100644
> --- a/drivers/net/phy/aquantia.c
> +++ b/drivers/net/phy/aquantia.c
> @@ -22,6 +22,11 @@
>
> #define AQUANTIA_SYSTEM_INTERFACE_SR 0xe812
> #define AQUANTIA_VENDOR_PROVISIONING_REG 0xC441
> +#define AQUANTIA_FIRMWARE_ID 0x20
> +#define AQUANTIA_RESERVED_STATUS 0xc885
> +#define AQUANTIA_FIRMWARE_MAJOR_MASK 0xff00
> +#define AQUANTIA_FIRMWARE_MINOR_MASK 0xff
> +#define AQUANTIA_FIRMWARE_BUILD_MASK 0xf0
>
> #define AQUANTIA_USX_AUTONEG_CONTROL_ENA 0x0008
> #define AQUANTIA_SI_IN_USE_MASK 0x0078
> @@ -30,6 +35,7 @@
> int aquantia_config(struct phy_device *phydev)
> {
> u32 val = phy_read(phydev, MDIO_MMD_PMAPMD, MII_BMCR);
> + u32 reg_val1 = 0;
>
> if (phydev->interface == PHY_INTERFACE_MODE_SGMII) {
> /* 1000BASE-T mode */
> @@ -56,6 +62,11 @@ int aquantia_config(struct phy_device *phydev)
> phy_write(phydev, MDIO_MMD_PHYXS,
> AQUANTIA_VENDOR_PROVISIONING_REG,
> AQUANTIA_USX_AUTONEG_CONTROL_ENA);
Is this still needed? This hunk doesn't apply any more.
Thanks,
-Joe
> + printf("%s: system interface USXGMII\n",
> + phydev->dev->name);
> + } else {
> + printf("%s: system interface XFI\n",
> + phydev->dev->name);
> }
>
> } else if (phydev->interface == PHY_INTERFACE_MODE_SGMII_2500) {
> @@ -73,6 +84,16 @@ int aquantia_config(struct phy_device *phydev)
> val = (val & ~AQUNTIA_SPEED_MSB_MASK) | AQUNTIA_SPEED_LSB_MASK;
> phy_write(phydev, MDIO_MMD_PMAPMD, MII_BMCR, val);
> }
> +
> + val = phy_read(phydev, MDIO_MMD_VEND1, AQUANTIA_RESERVED_STATUS);
> + reg_val1 = phy_read(phydev, MDIO_MMD_VEND1, AQUANTIA_FIRMWARE_ID);
> +
> + printf("%s: %s Firmware Version %x.%x.%x\n", phydev->dev->name,
> + phydev->drv->name,
> + (reg_val1 & AQUANTIA_FIRMWARE_MAJOR_MASK) >> 8,
> + reg_val1 & AQUANTIA_FIRMWARE_MINOR_MASK,
> + (val & AQUANTIA_FIRMWARE_BUILD_MASK) >> 4);
> +
> return 0;
> }
>
> --
> 2.17.1
>
> _______________________________________________
> U-Boot mailing list
> U-Boot at lists.denx.de
> https://lists.denx.de/listinfo/u-boot
^ permalink raw reply [flat|nested] 5+ messages in thread
* [U-Boot] [PATCH v2] Aquantia: Print information about system interface and firmware version
2019-01-22 23:14 ` Joe Hershberger
@ 2019-01-22 23:29 ` Joe Hershberger
0 siblings, 0 replies; 5+ messages in thread
From: Joe Hershberger @ 2019-01-22 23:29 UTC (permalink / raw)
To: u-boot
On Tue, Jan 22, 2019 at 5:14 PM Joe Hershberger
<joe.hershberger@gmail.com> wrote:
>
> On Tue, Nov 6, 2018 at 6:17 AM Valentin-catalin Neacsu
> <valentin-catalin.neacsu@nxp.com> wrote:
> >
> > Print information about Aquantia firmware loaded on the phy.
> >
> > Signed-off-by: Valentin Catalin Neacsu <valentin-catalin.neacsu@nxp.com>
> > ---
> > V2:
> > - Fix typo in title. (Clement Peron)
> >
> > drivers/net/phy/aquantia.c | 21 +++++++++++++++++++++
> > 1 file changed, 21 insertions(+)
> >
> > diff --git a/drivers/net/phy/aquantia.c b/drivers/net/phy/aquantia.c
> > index 553069f3dc..2609664c69 100644
> > --- a/drivers/net/phy/aquantia.c
> > +++ b/drivers/net/phy/aquantia.c
> > @@ -22,6 +22,11 @@
> >
> > #define AQUANTIA_SYSTEM_INTERFACE_SR 0xe812
> > #define AQUANTIA_VENDOR_PROVISIONING_REG 0xC441
> > +#define AQUANTIA_FIRMWARE_ID 0x20
> > +#define AQUANTIA_RESERVED_STATUS 0xc885
> > +#define AQUANTIA_FIRMWARE_MAJOR_MASK 0xff00
> > +#define AQUANTIA_FIRMWARE_MINOR_MASK 0xff
> > +#define AQUANTIA_FIRMWARE_BUILD_MASK 0xf0
> >
> > #define AQUANTIA_USX_AUTONEG_CONTROL_ENA 0x0008
> > #define AQUANTIA_SI_IN_USE_MASK 0x0078
> > @@ -30,6 +35,7 @@
> > int aquantia_config(struct phy_device *phydev)
> > {
> > u32 val = phy_read(phydev, MDIO_MMD_PMAPMD, MII_BMCR);
> > + u32 reg_val1 = 0;
> >
> > if (phydev->interface == PHY_INTERFACE_MODE_SGMII) {
> > /* 1000BASE-T mode */
> > @@ -56,6 +62,11 @@ int aquantia_config(struct phy_device *phydev)
> > phy_write(phydev, MDIO_MMD_PHYXS,
> > AQUANTIA_VENDOR_PROVISIONING_REG,
> > AQUANTIA_USX_AUTONEG_CONTROL_ENA);
>
> Is this still needed? This hunk doesn't apply any more.
I fixed up the conflict and will take it as is.
> Thanks,
> -Joe
>
> > + printf("%s: system interface USXGMII\n",
> > + phydev->dev->name);
> > + } else {
> > + printf("%s: system interface XFI\n",
> > + phydev->dev->name);
> > }
> >
> > } else if (phydev->interface == PHY_INTERFACE_MODE_SGMII_2500) {
> > @@ -73,6 +84,16 @@ int aquantia_config(struct phy_device *phydev)
> > val = (val & ~AQUNTIA_SPEED_MSB_MASK) | AQUNTIA_SPEED_LSB_MASK;
> > phy_write(phydev, MDIO_MMD_PMAPMD, MII_BMCR, val);
> > }
> > +
> > + val = phy_read(phydev, MDIO_MMD_VEND1, AQUANTIA_RESERVED_STATUS);
> > + reg_val1 = phy_read(phydev, MDIO_MMD_VEND1, AQUANTIA_FIRMWARE_ID);
> > +
> > + printf("%s: %s Firmware Version %x.%x.%x\n", phydev->dev->name,
> > + phydev->drv->name,
> > + (reg_val1 & AQUANTIA_FIRMWARE_MAJOR_MASK) >> 8,
> > + reg_val1 & AQUANTIA_FIRMWARE_MINOR_MASK,
> > + (val & AQUANTIA_FIRMWARE_BUILD_MASK) >> 4);
> > +
> > return 0;
> > }
> >
> > --
> > 2.17.1
> >
> > _______________________________________________
> > U-Boot mailing list
> > U-Boot at lists.denx.de
> > https://lists.denx.de/listinfo/u-boot
^ permalink raw reply [flat|nested] 5+ messages in thread
* [U-Boot] net: phy: aquantia: Print information on config
2018-11-06 12:16 [U-Boot] [PATCH v2] Aquantia: Print information about system interface and firmware version Valentin-catalin Neacsu
2019-01-22 21:51 ` Joe Hershberger
2019-01-22 23:14 ` Joe Hershberger
@ 2019-01-24 17:39 ` Joe Hershberger
2 siblings, 0 replies; 5+ messages in thread
From: Joe Hershberger @ 2019-01-24 17:39 UTC (permalink / raw)
To: u-boot
Hi Valentin-catalin,
https://patchwork.ozlabs.org/patch/993651/ was applied to http://git.denx.de/?p=u-boot/u-boot-net.git
Thanks!
-Joe
^ permalink raw reply [flat|nested] 5+ messages in thread
end of thread, other threads:[~2019-01-24 17:39 UTC | newest]
Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2018-11-06 12:16 [U-Boot] [PATCH v2] Aquantia: Print information about system interface and firmware version Valentin-catalin Neacsu
2019-01-22 21:51 ` Joe Hershberger
2019-01-22 23:14 ` Joe Hershberger
2019-01-22 23:29 ` Joe Hershberger
2019-01-24 17:39 ` [U-Boot] net: phy: aquantia: Print information on config Joe Hershberger
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.