/Linux-v4.19/drivers/net/phy/ |
D | phy.c | 70 void phy_print_status(struct phy_device *phydev) in phy_print_status() argument 72 if (phydev->link) { in phy_print_status() 73 netdev_info(phydev->attached_dev, in phy_print_status() 75 phy_speed_to_str(phydev->speed), in phy_print_status() 76 phy_duplex_to_str(phydev->duplex), in phy_print_status() 77 phydev->pause ? "rx/tx" : "off"); in phy_print_status() 79 netdev_info(phydev->attached_dev, "Link is Down\n"); in phy_print_status() 93 static int phy_clear_interrupt(struct phy_device *phydev) in phy_clear_interrupt() argument 95 if (phydev->drv->ack_interrupt) in phy_clear_interrupt() 96 return phydev->drv->ack_interrupt(phydev); in phy_clear_interrupt() [all …]
|
D | vitesse.c | 87 static int vsc824x_add_skew(struct phy_device *phydev) in vsc824x_add_skew() argument 92 extcon = phy_read(phydev, MII_VSC8244_EXT_CON1); in vsc824x_add_skew() 103 err = phy_write(phydev, MII_VSC8244_EXT_CON1, extcon); in vsc824x_add_skew() 108 static int vsc824x_config_init(struct phy_device *phydev) in vsc824x_config_init() argument 112 err = phy_write(phydev, MII_VSC8244_AUX_CONSTAT, in vsc824x_config_init() 117 if (phydev->interface == PHY_INTERFACE_MODE_RGMII_ID) in vsc824x_config_init() 118 err = vsc824x_add_skew(phydev); in vsc824x_config_init() 125 static int vsc73xx_read_page(struct phy_device *phydev) in vsc73xx_read_page() argument 127 return __phy_read(phydev, VSC73XX_EXT_PAGE_ACCESS); in vsc73xx_read_page() 130 static int vsc73xx_write_page(struct phy_device *phydev, int page) in vsc73xx_write_page() argument [all …]
|
D | bcm7xxx.c | 65 static void r_rc_cal_reset(struct phy_device *phydev) in r_rc_cal_reset() argument 68 bcm_phy_write_exp_sel(phydev, 0x00b0, 0x0010); in r_rc_cal_reset() 71 bcm_phy_write_exp_sel(phydev, 0x00b0, 0x0000); in r_rc_cal_reset() 74 static int bcm7xxx_28nm_b0_afe_config_init(struct phy_device *phydev) in bcm7xxx_28nm_b0_afe_config_init() argument 79 bcm_phy_write_misc(phydev, PLL_PLLCTRL_1, 0x0048); in bcm7xxx_28nm_b0_afe_config_init() 82 bcm_phy_write_misc(phydev, PLL_PLLCTRL_2, 0x021b); in bcm7xxx_28nm_b0_afe_config_init() 87 bcm_phy_write_misc(phydev, PLL_PLLCTRL_4, 0x0e20); in bcm7xxx_28nm_b0_afe_config_init() 90 bcm_phy_write_misc(phydev, DSP_TAP10, 0x690b); in bcm7xxx_28nm_b0_afe_config_init() 93 phy_write(phydev, MII_BRCM_CORE_BASE1E, 0xd); in bcm7xxx_28nm_b0_afe_config_init() 95 r_rc_cal_reset(phydev); in bcm7xxx_28nm_b0_afe_config_init() [all …]
|
D | phy_device.c | 45 void phy_device_free(struct phy_device *phydev) in phy_device_free() argument 47 put_device(&phydev->mdio.dev); in phy_device_free() 53 struct phy_device *phydev; in phy_mdio_device_free() local 55 phydev = container_of(mdiodev, struct phy_device, mdio); in phy_mdio_device_free() 56 phy_device_free(phydev); in phy_mdio_device_free() 66 struct phy_device *phydev; in phy_mdio_device_remove() local 68 phydev = container_of(mdiodev, struct phy_device, mdio); in phy_mdio_device_remove() 69 phy_device_remove(phydev); in phy_mdio_device_remove() 79 static bool mdio_bus_phy_may_suspend(struct phy_device *phydev) in mdio_bus_phy_may_suspend() argument 81 struct device_driver *drv = phydev->mdio.dev.driver; in mdio_bus_phy_may_suspend() [all …]
|
D | marvell.c | 192 static int marvell_read_page(struct phy_device *phydev) in marvell_read_page() argument 194 return __phy_read(phydev, MII_MARVELL_PHY_PAGE); in marvell_read_page() 197 static int marvell_write_page(struct phy_device *phydev, int page) in marvell_write_page() argument 199 return __phy_write(phydev, MII_MARVELL_PHY_PAGE, page); in marvell_write_page() 202 static int marvell_set_page(struct phy_device *phydev, int page) in marvell_set_page() argument 204 return phy_write(phydev, MII_MARVELL_PHY_PAGE, page); in marvell_set_page() 207 static int marvell_ack_interrupt(struct phy_device *phydev) in marvell_ack_interrupt() argument 212 err = phy_read(phydev, MII_M1011_IEVENT); in marvell_ack_interrupt() 220 static int marvell_config_intr(struct phy_device *phydev) in marvell_config_intr() argument 224 if (phydev->interrupts == PHY_INTERRUPT_ENABLED) in marvell_config_intr() [all …]
|
D | broadcom.c | 23 #define BRCM_PHY_MODEL(phydev) \ argument 24 ((phydev)->drv->phy_id & (phydev)->drv->phy_id_mask) 26 #define BRCM_PHY_REV(phydev) \ argument 27 ((phydev)->drv->phy_id & ~((phydev)->drv->phy_id_mask)) 33 static int bcm54210e_config_init(struct phy_device *phydev) in bcm54210e_config_init() argument 37 val = bcm54xx_auxctl_read(phydev, MII_BCM54XX_AUXCTL_SHDWSEL_MISC); in bcm54210e_config_init() 40 bcm54xx_auxctl_write(phydev, MII_BCM54XX_AUXCTL_SHDWSEL_MISC, val); in bcm54210e_config_init() 42 val = bcm_phy_read_shadow(phydev, BCM54810_SHD_CLK_CTL); in bcm54210e_config_init() 44 bcm_phy_write_shadow(phydev, BCM54810_SHD_CLK_CTL, val); in bcm54210e_config_init() 46 if (phydev->dev_flags & PHY_BRCM_EN_MASTER_MODE) { in bcm54210e_config_init() [all …]
|
D | lxt.c | 64 static int lxt970_ack_interrupt(struct phy_device *phydev) in lxt970_ack_interrupt() argument 68 err = phy_read(phydev, MII_BMSR); in lxt970_ack_interrupt() 73 err = phy_read(phydev, MII_LXT970_ISR); in lxt970_ack_interrupt() 81 static int lxt970_config_intr(struct phy_device *phydev) in lxt970_config_intr() argument 83 if (phydev->interrupts == PHY_INTERRUPT_ENABLED) in lxt970_config_intr() 84 return phy_write(phydev, MII_LXT970_IER, MII_LXT970_IER_IEN); in lxt970_config_intr() 86 return phy_write(phydev, MII_LXT970_IER, 0); in lxt970_config_intr() 89 static int lxt970_config_init(struct phy_device *phydev) in lxt970_config_init() argument 91 return phy_write(phydev, MII_LXT970_CONFIG, 0); in lxt970_config_init() 95 static int lxt971_ack_interrupt(struct phy_device *phydev) in lxt971_ack_interrupt() argument [all …]
|
D | marvell10g.c | 60 static int mv3310_modify(struct phy_device *phydev, int devad, u16 reg, in mv3310_modify() argument 65 old = phy_read_mmd(phydev, devad, reg); in mv3310_modify() 73 ret = phy_write_mmd(phydev, devad, reg, val); in mv3310_modify() 93 struct phy_device *phydev = dev_get_drvdata(dev); in mv3310_hwmon_read() local 102 temp = phy_read_mmd(phydev, MDIO_MMD_VEND2, MV_V2_TEMP); in mv3310_hwmon_read() 150 static int mv3310_hwmon_config(struct phy_device *phydev, bool enable) in mv3310_hwmon_config() argument 155 ret = phy_write_mmd(phydev, MDIO_MMD_VEND2, MV_V2_TEMP, in mv3310_hwmon_config() 161 ret = mv3310_modify(phydev, MDIO_MMD_VEND2, MV_V2_TEMP_CTRL, in mv3310_hwmon_config() 169 struct phy_device *phydev = data; in mv3310_hwmon_disable() local 171 mv3310_hwmon_config(phydev, false); in mv3310_hwmon_disable() [all …]
|
D | microchip.c | 36 static int lan88xx_read_page(struct phy_device *phydev) in lan88xx_read_page() argument 38 return __phy_read(phydev, LAN88XX_EXT_PAGE_ACCESS); in lan88xx_read_page() 41 static int lan88xx_write_page(struct phy_device *phydev, int page) in lan88xx_write_page() argument 43 return __phy_write(phydev, LAN88XX_EXT_PAGE_ACCESS, page); in lan88xx_write_page() 46 static int lan88xx_phy_config_intr(struct phy_device *phydev) in lan88xx_phy_config_intr() argument 50 if (phydev->interrupts == PHY_INTERRUPT_ENABLED) { in lan88xx_phy_config_intr() 52 rc = phy_write(phydev, LAN88XX_INT_MASK, 0x7FFF); in lan88xx_phy_config_intr() 53 rc = phy_read(phydev, LAN88XX_INT_STS); in lan88xx_phy_config_intr() 54 rc = phy_write(phydev, LAN88XX_INT_MASK, in lan88xx_phy_config_intr() 58 rc = phy_write(phydev, LAN88XX_INT_MASK, 0); in lan88xx_phy_config_intr() [all …]
|
D | at803x.c | 85 static int at803x_debug_reg_read(struct phy_device *phydev, u16 reg) in at803x_debug_reg_read() argument 89 ret = phy_write(phydev, AT803X_DEBUG_ADDR, reg); in at803x_debug_reg_read() 93 return phy_read(phydev, AT803X_DEBUG_DATA); in at803x_debug_reg_read() 96 static int at803x_debug_reg_mask(struct phy_device *phydev, u16 reg, in at803x_debug_reg_mask() argument 102 ret = at803x_debug_reg_read(phydev, reg); in at803x_debug_reg_mask() 110 return phy_write(phydev, AT803X_DEBUG_DATA, val); in at803x_debug_reg_mask() 113 static inline int at803x_enable_rx_delay(struct phy_device *phydev) in at803x_enable_rx_delay() argument 115 return at803x_debug_reg_mask(phydev, AT803X_DEBUG_REG_0, 0, in at803x_enable_rx_delay() 119 static inline int at803x_enable_tx_delay(struct phy_device *phydev) in at803x_enable_tx_delay() argument 121 return at803x_debug_reg_mask(phydev, AT803X_DEBUG_REG_5, 0, in at803x_enable_tx_delay() [all …]
|
D | mscc.c | 126 static int vsc85xx_phy_page_set(struct phy_device *phydev, u16 page) in vsc85xx_phy_page_set() argument 130 rc = phy_write(phydev, MSCC_EXT_PAGE_ACCESS, page); in vsc85xx_phy_page_set() 134 static int vsc85xx_led_cntl_set(struct phy_device *phydev, in vsc85xx_led_cntl_set() argument 141 mutex_lock(&phydev->lock); in vsc85xx_led_cntl_set() 142 reg_val = phy_read(phydev, MSCC_PHY_LED_MODE_SEL); in vsc85xx_led_cntl_set() 151 rc = phy_write(phydev, MSCC_PHY_LED_MODE_SEL, reg_val); in vsc85xx_led_cntl_set() 152 mutex_unlock(&phydev->lock); in vsc85xx_led_cntl_set() 157 static int vsc85xx_mdix_get(struct phy_device *phydev, u8 *mdix) in vsc85xx_mdix_get() argument 161 reg_val = phy_read(phydev, MSCC_PHY_DEV_AUX_CNTL); in vsc85xx_mdix_get() 170 static int vsc85xx_mdix_set(struct phy_device *phydev, u8 mdix) in vsc85xx_mdix_set() argument [all …]
|
D | phy-c45.c | 14 int genphy_c45_pma_setup_forced(struct phy_device *phydev) in genphy_c45_pma_setup_forced() argument 19 if (phydev->duplex != DUPLEX_FULL) in genphy_c45_pma_setup_forced() 22 ctrl1 = phy_read_mmd(phydev, MDIO_MMD_PMAPMD, MDIO_CTRL1); in genphy_c45_pma_setup_forced() 26 ctrl2 = phy_read_mmd(phydev, MDIO_MMD_PMAPMD, MDIO_CTRL2); in genphy_c45_pma_setup_forced() 37 switch (phydev->speed) { in genphy_c45_pma_setup_forced() 59 ret = phy_write_mmd(phydev, MDIO_MMD_PMAPMD, MDIO_CTRL1, ctrl1); in genphy_c45_pma_setup_forced() 63 return phy_write_mmd(phydev, MDIO_MMD_PMAPMD, MDIO_CTRL2, ctrl2); in genphy_c45_pma_setup_forced() 76 int genphy_c45_an_disable_aneg(struct phy_device *phydev) in genphy_c45_an_disable_aneg() argument 80 val = phy_read_mmd(phydev, MDIO_MMD_AN, MDIO_CTRL1); in genphy_c45_an_disable_aneg() 86 return phy_write_mmd(phydev, MDIO_MMD_AN, MDIO_CTRL1, val); in genphy_c45_an_disable_aneg() [all …]
|
D | micrel.c | 135 static int kszphy_extended_write(struct phy_device *phydev, in kszphy_extended_write() argument 138 phy_write(phydev, MII_KSZPHY_EXTREG, KSZPHY_EXTREG_WRITE | regnum); in kszphy_extended_write() 139 return phy_write(phydev, MII_KSZPHY_EXTREG_WRITE, val); in kszphy_extended_write() 142 static int kszphy_extended_read(struct phy_device *phydev, in kszphy_extended_read() argument 145 phy_write(phydev, MII_KSZPHY_EXTREG, regnum); in kszphy_extended_read() 146 return phy_read(phydev, MII_KSZPHY_EXTREG_READ); in kszphy_extended_read() 149 static int kszphy_ack_interrupt(struct phy_device *phydev) in kszphy_ack_interrupt() argument 154 rc = phy_read(phydev, MII_KSZPHY_INTCS); in kszphy_ack_interrupt() 159 static int kszphy_config_intr(struct phy_device *phydev) in kszphy_config_intr() argument 161 const struct kszphy_type *type = phydev->drv->driver_data; in kszphy_config_intr() [all …]
|
D | phy-core.c | 200 void phy_resolve_aneg_linkmode(struct phy_device *phydev) in phy_resolve_aneg_linkmode() argument 202 u32 common = phydev->lp_advertising & phydev->advertising; in phy_resolve_aneg_linkmode() 205 phydev->speed = SPEED_10000; in phy_resolve_aneg_linkmode() 206 phydev->duplex = DUPLEX_FULL; in phy_resolve_aneg_linkmode() 208 phydev->speed = SPEED_1000; in phy_resolve_aneg_linkmode() 209 phydev->duplex = DUPLEX_FULL; in phy_resolve_aneg_linkmode() 211 phydev->speed = SPEED_1000; in phy_resolve_aneg_linkmode() 212 phydev->duplex = DUPLEX_HALF; in phy_resolve_aneg_linkmode() 214 phydev->speed = SPEED_100; in phy_resolve_aneg_linkmode() 215 phydev->duplex = DUPLEX_FULL; in phy_resolve_aneg_linkmode() [all …]
|
D | realtek.c | 47 static int rtl821x_read_page(struct phy_device *phydev) in rtl821x_read_page() argument 49 return __phy_read(phydev, RTL821x_PAGE_SELECT); in rtl821x_read_page() 52 static int rtl821x_write_page(struct phy_device *phydev, int page) in rtl821x_write_page() argument 54 return __phy_write(phydev, RTL821x_PAGE_SELECT, page); in rtl821x_write_page() 57 static int rtl8201_ack_interrupt(struct phy_device *phydev) in rtl8201_ack_interrupt() argument 61 err = phy_read(phydev, RTL8201F_ISR); in rtl8201_ack_interrupt() 66 static int rtl821x_ack_interrupt(struct phy_device *phydev) in rtl821x_ack_interrupt() argument 70 err = phy_read(phydev, RTL821x_INSR); in rtl821x_ack_interrupt() 75 static int rtl8211f_ack_interrupt(struct phy_device *phydev) in rtl8211f_ack_interrupt() argument 79 err = phy_read_paged(phydev, 0xa43, RTL8211F_INSR); in rtl8211f_ack_interrupt() [all …]
|
D | icplus.c | 48 static int ip175c_config_init(struct phy_device *phydev) in ip175c_config_init() argument 56 err = mdiobus_write(phydev->mdio.bus, 30, 0, 0x175c); in ip175c_config_init() 61 err = mdiobus_read(phydev->mdio.bus, 30, 0); in ip175c_config_init() 67 err = mdiobus_write(phydev->mdio.bus, 29, 31, 0x175c); in ip175c_config_init() 72 err = mdiobus_write(phydev->mdio.bus, 29, 22, 0x420); in ip175c_config_init() 78 err = mdiobus_write(phydev->mdio.bus, i, in ip175c_config_init() 85 err = mdiobus_read(phydev->mdio.bus, i, MII_BMCR); in ip175c_config_init() 92 if (phydev->mdio.addr != 4) { in ip175c_config_init() 93 phydev->state = PHY_RUNNING; in ip175c_config_init() 94 phydev->speed = SPEED_100; in ip175c_config_init() [all …]
|
D | bcm-phy-lib.c | 25 int bcm_phy_write_exp(struct phy_device *phydev, u16 reg, u16 val) in bcm_phy_write_exp() argument 29 rc = phy_write(phydev, MII_BCM54XX_EXP_SEL, reg); in bcm_phy_write_exp() 33 return phy_write(phydev, MII_BCM54XX_EXP_DATA, val); in bcm_phy_write_exp() 37 int bcm_phy_read_exp(struct phy_device *phydev, u16 reg) in bcm_phy_read_exp() argument 41 val = phy_write(phydev, MII_BCM54XX_EXP_SEL, reg); in bcm_phy_read_exp() 45 val = phy_read(phydev, MII_BCM54XX_EXP_DATA); in bcm_phy_read_exp() 48 phy_write(phydev, MII_BCM54XX_EXP_SEL, 0); in bcm_phy_read_exp() 54 int bcm54xx_auxctl_read(struct phy_device *phydev, u16 regnum) in bcm54xx_auxctl_read() argument 59 phy_write(phydev, MII_BCM54XX_AUX_CTL, MII_BCM54XX_AUXCTL_SHDWSEL_MASK | in bcm54xx_auxctl_read() 61 return phy_read(phydev, MII_BCM54XX_AUX_CTL); in bcm54xx_auxctl_read() [all …]
|
D | national.c | 59 static u8 ns_exp_read(struct phy_device *phydev, u16 reg) in ns_exp_read() argument 61 phy_write(phydev, NS_EXP_MEM_ADD, reg); in ns_exp_read() 62 return phy_read(phydev, NS_EXP_MEM_DATA); in ns_exp_read() 65 static void ns_exp_write(struct phy_device *phydev, u16 reg, u8 data) in ns_exp_write() argument 67 phy_write(phydev, NS_EXP_MEM_ADD, reg); in ns_exp_write() 68 phy_write(phydev, NS_EXP_MEM_DATA, data); in ns_exp_write() 71 static int ns_config_intr(struct phy_device *phydev) in ns_config_intr() argument 75 if (phydev->interrupts == PHY_INTERRUPT_ENABLED) in ns_config_intr() 76 err = phy_write(phydev, DP83865_INT_MASK, in ns_config_intr() 79 err = phy_write(phydev, DP83865_INT_MASK, 0); in ns_config_intr() [all …]
|
D | dp83tc811.c | 78 static int dp83811_ack_interrupt(struct phy_device *phydev) in dp83811_ack_interrupt() argument 82 err = phy_read(phydev, MII_DP83811_INT_STAT1); in dp83811_ack_interrupt() 86 err = phy_read(phydev, MII_DP83811_INT_STAT2); in dp83811_ack_interrupt() 90 err = phy_read(phydev, MII_DP83811_INT_STAT3); in dp83811_ack_interrupt() 97 static int dp83811_set_wol(struct phy_device *phydev, in dp83811_set_wol() argument 100 struct net_device *ndev = phydev->attached_dev; in dp83811_set_wol() 113 phy_write_mmd(phydev, DP83811_DEVADDR, MII_DP83811_WOL_DA1, in dp83811_set_wol() 115 phy_write_mmd(phydev, DP83811_DEVADDR, MII_DP83811_WOL_DA2, in dp83811_set_wol() 117 phy_write_mmd(phydev, DP83811_DEVADDR, MII_DP83811_WOL_DA3, in dp83811_set_wol() 120 value = phy_read_mmd(phydev, DP83811_DEVADDR, in dp83811_set_wol() [all …]
|
D | rockchip.c | 47 static int rockchip_init_tstmode(struct phy_device *phydev) in rockchip_init_tstmode() argument 52 ret = phy_write(phydev, SMI_ADDR_TSTCNTL, TSTMODE_ENABLE); in rockchip_init_tstmode() 56 ret = phy_write(phydev, SMI_ADDR_TSTCNTL, TSTMODE_DISABLE); in rockchip_init_tstmode() 60 return phy_write(phydev, SMI_ADDR_TSTCNTL, TSTMODE_ENABLE); in rockchip_init_tstmode() 63 static int rockchip_close_tstmode(struct phy_device *phydev) in rockchip_close_tstmode() argument 66 return phy_write(phydev, SMI_ADDR_TSTCNTL, TSTMODE_DISABLE); in rockchip_close_tstmode() 69 static int rockchip_integrated_phy_analog_init(struct phy_device *phydev) in rockchip_integrated_phy_analog_init() argument 73 ret = rockchip_init_tstmode(phydev); in rockchip_integrated_phy_analog_init() 81 ret = phy_write(phydev, SMI_ADDR_TSTWRITE, 0xB); in rockchip_integrated_phy_analog_init() 84 ret = phy_write(phydev, SMI_ADDR_TSTCNTL, TSTCNTL_WR | WR_ADDR_A7CFG); in rockchip_integrated_phy_analog_init() [all …]
|
D | dp83867.c | 100 static int dp83867_ack_interrupt(struct phy_device *phydev) in dp83867_ack_interrupt() argument 102 int err = phy_read(phydev, MII_DP83867_ISR); in dp83867_ack_interrupt() 110 static int dp83867_config_intr(struct phy_device *phydev) in dp83867_config_intr() argument 114 if (phydev->interrupts == PHY_INTERRUPT_ENABLED) { in dp83867_config_intr() 115 micr_status = phy_read(phydev, MII_DP83867_MICR); in dp83867_config_intr() 127 return phy_write(phydev, MII_DP83867_MICR, micr_status); in dp83867_config_intr() 131 return phy_write(phydev, MII_DP83867_MICR, micr_status); in dp83867_config_intr() 134 static int dp83867_config_port_mirroring(struct phy_device *phydev) in dp83867_config_port_mirroring() argument 137 (struct dp83867_private *)phydev->priv; in dp83867_config_port_mirroring() 140 val = phy_read_mmd(phydev, DP83867_DEVADDR, DP83867_CFG4); in dp83867_config_port_mirroring() [all …]
|
D | bcm87xx.c | 37 static int bcm87xx_of_reg_init(struct phy_device *phydev) in bcm87xx_of_reg_init() argument 43 if (!phydev->mdio.dev.of_node) in bcm87xx_of_reg_init() 46 paddr = of_get_property(phydev->mdio.dev.of_node, in bcm87xx_of_reg_init() 64 val = phy_read(phydev, regnum); in bcm87xx_of_reg_init() 73 ret = phy_write(phydev, regnum, val); in bcm87xx_of_reg_init() 81 static int bcm87xx_of_reg_init(struct phy_device *phydev) in bcm87xx_of_reg_init() argument 87 static int bcm87xx_config_init(struct phy_device *phydev) in bcm87xx_config_init() argument 89 phydev->supported = SUPPORTED_10000baseR_FEC; in bcm87xx_config_init() 90 phydev->advertising = ADVERTISED_10000baseR_FEC; in bcm87xx_config_init() 91 phydev->state = PHY_NOLINK; in bcm87xx_config_init() [all …]
|
D | meson-gxl.c | 58 static int meson_gxl_open_banks(struct phy_device *phydev) in meson_gxl_open_banks() argument 65 ret = phy_write(phydev, TSTCNTL, 0); in meson_gxl_open_banks() 68 ret = phy_write(phydev, TSTCNTL, TSTCNTL_TEST_MODE); in meson_gxl_open_banks() 71 ret = phy_write(phydev, TSTCNTL, 0); in meson_gxl_open_banks() 74 return phy_write(phydev, TSTCNTL, TSTCNTL_TEST_MODE); in meson_gxl_open_banks() 77 static void meson_gxl_close_banks(struct phy_device *phydev) in meson_gxl_close_banks() argument 79 phy_write(phydev, TSTCNTL, 0); in meson_gxl_close_banks() 82 static int meson_gxl_read_reg(struct phy_device *phydev, in meson_gxl_read_reg() argument 87 ret = meson_gxl_open_banks(phydev); in meson_gxl_read_reg() 91 ret = phy_write(phydev, TSTCNTL, TSTCNTL_READ | in meson_gxl_read_reg() [all …]
|
D | dp83822.c | 82 static int dp83822_ack_interrupt(struct phy_device *phydev) in dp83822_ack_interrupt() argument 86 err = phy_read(phydev, MII_DP83822_MISR1); in dp83822_ack_interrupt() 90 err = phy_read(phydev, MII_DP83822_MISR2); in dp83822_ack_interrupt() 97 static int dp83822_set_wol(struct phy_device *phydev, in dp83822_set_wol() argument 100 struct net_device *ndev = phydev->attached_dev; in dp83822_set_wol() 113 phy_write_mmd(phydev, DP83822_DEVADDR, MII_DP83822_WOL_DA1, in dp83822_set_wol() 115 phy_write_mmd(phydev, DP83822_DEVADDR, MII_DP83822_WOL_DA2, in dp83822_set_wol() 117 phy_write_mmd(phydev, DP83822_DEVADDR, MII_DP83822_WOL_DA3, in dp83822_set_wol() 120 value = phy_read_mmd(phydev, DP83822_DEVADDR, in dp83822_set_wol() 128 phy_write_mmd(phydev, DP83822_DEVADDR, in dp83822_set_wol() [all …]
|
/Linux-v4.19/include/linux/ |
D | phy.h | 519 int (*soft_reset)(struct phy_device *phydev); 525 int (*config_init)(struct phy_device *phydev); 531 int (*probe)(struct phy_device *phydev); 534 int (*suspend)(struct phy_device *phydev); 535 int (*resume)(struct phy_device *phydev); 543 int (*config_aneg)(struct phy_device *phydev); 546 int (*aneg_done)(struct phy_device *phydev); 549 int (*read_status)(struct phy_device *phydev); 552 int (*ack_interrupt)(struct phy_device *phydev); 555 int (*config_intr)(struct phy_device *phydev); [all …]
|