mirror of
https://github.com/torvalds/linux.git
synced 2026-03-13 23:46:14 +01:00
net: phy: simplify phy_get_internal_delay()
Simplify the arguments passed to phy_get_internal_delay() - the "dev" argument is always &phydev->mdio.dev, and as the phydev is passed in, there's no need to also pass in the struct device, especially when this function is the only reason for the caller to have a local "dev" variable. Remove the redundant "dev" argument, and update the callers. Signed-off-by: Russell King (Oracle) <rmk+kernel@armlinux.org.uk> Reviewed-by: Andrew Lunn <andrew@lunn.ch> Reviewed-by: Jacob Keller <jacob.e.keller@intel.com> Link: https://patch.msgid.link/E1uPLwB-003VzR-4C@rmk-PC.armlinux.org.uk Signed-off-by: Jakub Kicinski <kuba@kernel.org>
This commit is contained in:
parent
00ee253725
commit
c4688ff47f
6 changed files with 14 additions and 22 deletions
|
|
@ -516,7 +516,6 @@ static int dp83822_config_init_leds(struct phy_device *phydev)
|
|||
static int dp83822_config_init(struct phy_device *phydev)
|
||||
{
|
||||
struct dp83822_private *dp83822 = phydev->priv;
|
||||
struct device *dev = &phydev->mdio.dev;
|
||||
int rgmii_delay = 0;
|
||||
s32 rx_int_delay;
|
||||
s32 tx_int_delay;
|
||||
|
|
@ -549,15 +548,13 @@ static int dp83822_config_init(struct phy_device *phydev)
|
|||
return err;
|
||||
|
||||
if (phy_interface_is_rgmii(phydev)) {
|
||||
rx_int_delay = phy_get_internal_delay(phydev, dev, NULL, 0,
|
||||
true);
|
||||
rx_int_delay = phy_get_internal_delay(phydev, NULL, 0, true);
|
||||
|
||||
/* Set DP83822_RX_CLK_SHIFT to enable rx clk internal delay */
|
||||
if (rx_int_delay > 0)
|
||||
rgmii_delay |= DP83822_RX_CLK_SHIFT;
|
||||
|
||||
tx_int_delay = phy_get_internal_delay(phydev, dev, NULL, 0,
|
||||
false);
|
||||
tx_int_delay = phy_get_internal_delay(phydev, NULL, 0, false);
|
||||
|
||||
/* Set DP83822_TX_CLK_SHIFT to disable tx clk internal delay */
|
||||
if (tx_int_delay <= 0)
|
||||
|
|
|
|||
|
|
@ -540,9 +540,8 @@ static const int dp83869_internal_delay[] = {250, 500, 750, 1000, 1250, 1500,
|
|||
|
||||
static int dp83869_of_init(struct phy_device *phydev)
|
||||
{
|
||||
struct device_node *of_node = phydev->mdio.dev.of_node;
|
||||
struct dp83869_private *dp83869 = phydev->priv;
|
||||
struct device *dev = &phydev->mdio.dev;
|
||||
struct device_node *of_node = dev->of_node;
|
||||
int delay_size = ARRAY_SIZE(dp83869_internal_delay);
|
||||
int ret;
|
||||
|
||||
|
|
@ -597,13 +596,13 @@ static int dp83869_of_init(struct phy_device *phydev)
|
|||
&dp83869->tx_fifo_depth))
|
||||
dp83869->tx_fifo_depth = DP83869_PHYCR_FIFO_DEPTH_4_B_NIB;
|
||||
|
||||
dp83869->rx_int_delay = phy_get_internal_delay(phydev, dev,
|
||||
dp83869->rx_int_delay = phy_get_internal_delay(phydev,
|
||||
&dp83869_internal_delay[0],
|
||||
delay_size, true);
|
||||
if (dp83869->rx_int_delay < 0)
|
||||
dp83869->rx_int_delay = DP83869_CLK_DELAY_DEF;
|
||||
|
||||
dp83869->tx_int_delay = phy_get_internal_delay(phydev, dev,
|
||||
dp83869->tx_int_delay = phy_get_internal_delay(phydev,
|
||||
&dp83869_internal_delay[0],
|
||||
delay_size, false);
|
||||
if (dp83869->tx_int_delay < 0)
|
||||
|
|
|
|||
|
|
@ -174,7 +174,6 @@ static const int xway_internal_delay[] = {0, 500, 1000, 1500, 2000, 2500,
|
|||
|
||||
static int xway_gphy_rgmii_init(struct phy_device *phydev)
|
||||
{
|
||||
struct device *dev = &phydev->mdio.dev;
|
||||
unsigned int delay_size = ARRAY_SIZE(xway_internal_delay);
|
||||
s32 int_delay;
|
||||
int val = 0;
|
||||
|
|
@ -207,8 +206,7 @@ static int xway_gphy_rgmii_init(struct phy_device *phydev)
|
|||
|
||||
if (phydev->interface == PHY_INTERFACE_MODE_RGMII_ID ||
|
||||
phydev->interface == PHY_INTERFACE_MODE_RGMII_RXID) {
|
||||
int_delay = phy_get_internal_delay(phydev, dev,
|
||||
xway_internal_delay,
|
||||
int_delay = phy_get_internal_delay(phydev, xway_internal_delay,
|
||||
delay_size, true);
|
||||
|
||||
/* if rx-internal-delay-ps is missing, use default of 2.0 ns */
|
||||
|
|
@ -220,8 +218,7 @@ static int xway_gphy_rgmii_init(struct phy_device *phydev)
|
|||
|
||||
if (phydev->interface == PHY_INTERFACE_MODE_RGMII_ID ||
|
||||
phydev->interface == PHY_INTERFACE_MODE_RGMII_TXID) {
|
||||
int_delay = phy_get_internal_delay(phydev, dev,
|
||||
xway_internal_delay,
|
||||
int_delay = phy_get_internal_delay(phydev, xway_internal_delay,
|
||||
delay_size, false);
|
||||
|
||||
/* if tx-internal-delay-ps is missing, use default of 2.0 ns */
|
||||
|
|
|
|||
|
|
@ -530,7 +530,6 @@ static int vsc85xx_update_rgmii_cntl(struct phy_device *phydev, u32 rgmii_cntl,
|
|||
u16 rgmii_rx_delay_pos = ffs(rgmii_rx_delay_mask) - 1;
|
||||
u16 rgmii_tx_delay_pos = ffs(rgmii_tx_delay_mask) - 1;
|
||||
int delay_size = ARRAY_SIZE(vsc85xx_internal_delay);
|
||||
struct device *dev = &phydev->mdio.dev;
|
||||
u16 reg_val = 0;
|
||||
u16 mask = 0;
|
||||
s32 rx_delay;
|
||||
|
|
@ -549,7 +548,7 @@ static int vsc85xx_update_rgmii_cntl(struct phy_device *phydev, u32 rgmii_cntl,
|
|||
if (phy_interface_is_rgmii(phydev))
|
||||
mask |= rgmii_rx_delay_mask | rgmii_tx_delay_mask;
|
||||
|
||||
rx_delay = phy_get_internal_delay(phydev, dev, vsc85xx_internal_delay,
|
||||
rx_delay = phy_get_internal_delay(phydev, vsc85xx_internal_delay,
|
||||
delay_size, true);
|
||||
if (rx_delay < 0) {
|
||||
if (phydev->interface == PHY_INTERFACE_MODE_RGMII_RXID ||
|
||||
|
|
@ -559,7 +558,7 @@ static int vsc85xx_update_rgmii_cntl(struct phy_device *phydev, u32 rgmii_cntl,
|
|||
rx_delay = RGMII_CLK_DELAY_0_2_NS;
|
||||
}
|
||||
|
||||
tx_delay = phy_get_internal_delay(phydev, dev, vsc85xx_internal_delay,
|
||||
tx_delay = phy_get_internal_delay(phydev, vsc85xx_internal_delay,
|
||||
delay_size, false);
|
||||
if (tx_delay < 0) {
|
||||
if (phydev->interface == PHY_INTERFACE_MODE_RGMII_TXID ||
|
||||
|
|
|
|||
|
|
@ -2906,7 +2906,6 @@ static int phy_get_u32_property(struct device *dev, const char *name, u32 *val)
|
|||
/**
|
||||
* phy_get_internal_delay - returns the index of the internal delay
|
||||
* @phydev: phy_device struct
|
||||
* @dev: pointer to the devices device struct
|
||||
* @delay_values: array of delays the PHY supports
|
||||
* @size: the size of the delay array
|
||||
* @is_rx: boolean to indicate to get the rx internal delay
|
||||
|
|
@ -2919,9 +2918,10 @@ static int phy_get_u32_property(struct device *dev, const char *name, u32 *val)
|
|||
* array then size = 0 and the value of the delay property is returned.
|
||||
* Return -EINVAL if the delay is invalid or cannot be found.
|
||||
*/
|
||||
s32 phy_get_internal_delay(struct phy_device *phydev, struct device *dev,
|
||||
const int *delay_values, int size, bool is_rx)
|
||||
s32 phy_get_internal_delay(struct phy_device *phydev, const int *delay_values,
|
||||
int size, bool is_rx)
|
||||
{
|
||||
struct device *dev = &phydev->mdio.dev;
|
||||
int i, ret;
|
||||
u32 delay;
|
||||
|
||||
|
|
|
|||
|
|
@ -1994,8 +1994,8 @@ bool phy_validate_pause(struct phy_device *phydev,
|
|||
struct ethtool_pauseparam *pp);
|
||||
void phy_get_pause(struct phy_device *phydev, bool *tx_pause, bool *rx_pause);
|
||||
|
||||
s32 phy_get_internal_delay(struct phy_device *phydev, struct device *dev,
|
||||
const int *delay_values, int size, bool is_rx);
|
||||
s32 phy_get_internal_delay(struct phy_device *phydev, const int *delay_values,
|
||||
int size, bool is_rx);
|
||||
|
||||
int phy_get_tx_amplitude_gain(struct phy_device *phydev, struct device *dev,
|
||||
enum ethtool_link_mode_bit_indices linkmode,
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue