cxgb3: Use generic XENPAK LASI register definitions
Signed-off-by: Ben Hutchings <bhutchings@solarflare.com> Acked-by: Divy Le Ray <divy@chelsio.com> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
parent
aa22437e87
commit
64318334bf
@ -1007,7 +1007,8 @@ static int ael2005_reset(struct cphy *phy, int wait)
|
|||||||
int err;
|
int err;
|
||||||
unsigned int lasi_ctrl;
|
unsigned int lasi_ctrl;
|
||||||
|
|
||||||
err = t3_mdio_read(phy, MDIO_MMD_PMAPMD, LASI_CTRL, &lasi_ctrl);
|
err = t3_mdio_read(phy, MDIO_MMD_PMAPMD, MDIO_PMA_LASI_CTRL,
|
||||||
|
&lasi_ctrl);
|
||||||
if (err)
|
if (err)
|
||||||
return err;
|
return err;
|
||||||
|
|
||||||
|
@ -521,16 +521,6 @@ enum {
|
|||||||
MAC_RXFIFO_SIZE = 32768
|
MAC_RXFIFO_SIZE = 32768
|
||||||
};
|
};
|
||||||
|
|
||||||
/* LASI control and status registers */
|
|
||||||
enum {
|
|
||||||
RX_ALARM_CTRL = 0x9000,
|
|
||||||
TX_ALARM_CTRL = 0x9001,
|
|
||||||
LASI_CTRL = 0x9002,
|
|
||||||
RX_ALARM_STAT = 0x9003,
|
|
||||||
TX_ALARM_STAT = 0x9004,
|
|
||||||
LASI_STAT = 0x9005
|
|
||||||
};
|
|
||||||
|
|
||||||
/* PHY loopback direction */
|
/* PHY loopback direction */
|
||||||
enum {
|
enum {
|
||||||
PHY_LOOPBACK_TX = 1,
|
PHY_LOOPBACK_TX = 1,
|
||||||
|
@ -472,29 +472,31 @@ int t3_set_phy_speed_duplex(struct cphy *phy, int speed, int duplex)
|
|||||||
|
|
||||||
int t3_phy_lasi_intr_enable(struct cphy *phy)
|
int t3_phy_lasi_intr_enable(struct cphy *phy)
|
||||||
{
|
{
|
||||||
return t3_mdio_write(phy, MDIO_MMD_PMAPMD, LASI_CTRL, 1);
|
return t3_mdio_write(phy, MDIO_MMD_PMAPMD, MDIO_PMA_LASI_CTRL,
|
||||||
|
MDIO_PMA_LASI_LSALARM);
|
||||||
}
|
}
|
||||||
|
|
||||||
int t3_phy_lasi_intr_disable(struct cphy *phy)
|
int t3_phy_lasi_intr_disable(struct cphy *phy)
|
||||||
{
|
{
|
||||||
return t3_mdio_write(phy, MDIO_MMD_PMAPMD, LASI_CTRL, 0);
|
return t3_mdio_write(phy, MDIO_MMD_PMAPMD, MDIO_PMA_LASI_CTRL, 0);
|
||||||
}
|
}
|
||||||
|
|
||||||
int t3_phy_lasi_intr_clear(struct cphy *phy)
|
int t3_phy_lasi_intr_clear(struct cphy *phy)
|
||||||
{
|
{
|
||||||
u32 val;
|
u32 val;
|
||||||
|
|
||||||
return t3_mdio_read(phy, MDIO_MMD_PMAPMD, LASI_STAT, &val);
|
return t3_mdio_read(phy, MDIO_MMD_PMAPMD, MDIO_PMA_LASI_STAT, &val);
|
||||||
}
|
}
|
||||||
|
|
||||||
int t3_phy_lasi_intr_handler(struct cphy *phy)
|
int t3_phy_lasi_intr_handler(struct cphy *phy)
|
||||||
{
|
{
|
||||||
unsigned int status;
|
unsigned int status;
|
||||||
int err = t3_mdio_read(phy, MDIO_MMD_PMAPMD, LASI_STAT, &status);
|
int err = t3_mdio_read(phy, MDIO_MMD_PMAPMD, MDIO_PMA_LASI_STAT,
|
||||||
|
&status);
|
||||||
|
|
||||||
if (err)
|
if (err)
|
||||||
return err;
|
return err;
|
||||||
return (status & 1) ? cphy_cause_link_change : 0;
|
return (status & MDIO_PMA_LASI_LSALARM) ? cphy_cause_link_change : 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
static const struct adapter_info t3_adap_info[] = {
|
static const struct adapter_info t3_adap_info[] = {
|
||||||
|
Loading…
Reference in New Issue
Block a user