diff options
| author | David S. Miller <davem@davemloft.net> | 2015-08-31 14:48:03 -0700 |
|---|---|---|
| committer | David S. Miller <davem@davemloft.net> | 2015-08-31 14:48:03 -0700 |
| commit | 684511ac2eeb015b7a9a46c575543566e1b1fb7c (patch) | |
| tree | e755ec8c049139469d67a5f239002ec68c743113 /include/linux/phy_fixed.h | |
| parent | 6ea3c9d5b042edf14eac1e21af21c41f81f3491e (diff) | |
| parent | bc0f4a87fc7e45642455682f281de2131cde9695 (diff) | |
| download | linux-next-684511ac2eeb015b7a9a46c575543566e1b1fb7c.tar.gz linux-next-684511ac2eeb015b7a9a46c575543566e1b1fb7c.zip | |
Merge branch 'dsa-port-config'
Andrew Lunn says:
====================
DSA port configuration and status
This patchset allows various switch port settings to be configured and
port status to be sampled. Some of these patches have been posted
before.
The first three patches provide infrastructure for configuring a
switch ports link speed and duplex from a fixed_link phy.
Patch four then uses this infrastructure to allow the CPU and DSA
ports of a switch to be configured using a fixed-link property in the
device tree.
Patches five and six allow a phy-mode property to be specified in the
device tree, and allow this to be used for configuring RGMII delays.
Patches seven through nine allow link status, for example that of an
SFP module, to be read from a gpio.
Changes since v1:
Rewrite 9/9 so that it hopefully does not regression on
868a4215be9a6d80 ("net: phy: fixed_phy: handle link-down case")
====================
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'include/linux/phy_fixed.h')
| -rw-r--r-- | include/linux/phy_fixed.h | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/include/linux/phy_fixed.h b/include/linux/phy_fixed.h index fe5732d53eda..2400d2ea4f34 100644 --- a/include/linux/phy_fixed.h +++ b/include/linux/phy_fixed.h @@ -13,9 +13,11 @@ struct device_node; #if IS_ENABLED(CONFIG_FIXED_PHY) extern int fixed_phy_add(unsigned int irq, int phy_id, - struct fixed_phy_status *status); + struct fixed_phy_status *status, + int link_gpio); extern struct phy_device *fixed_phy_register(unsigned int irq, struct fixed_phy_status *status, + int link_gpio, struct device_node *np); extern void fixed_phy_del(int phy_addr); extern int fixed_phy_set_link_update(struct phy_device *phydev, @@ -26,12 +28,14 @@ extern int fixed_phy_update_state(struct phy_device *phydev, const struct fixed_phy_status *changed); #else static inline int fixed_phy_add(unsigned int irq, int phy_id, - struct fixed_phy_status *status) + struct fixed_phy_status *status, + int link_gpio) { return -ENODEV; } static inline struct phy_device *fixed_phy_register(unsigned int irq, struct fixed_phy_status *status, + int gpio_link, struct device_node *np) { return ERR_PTR(-ENODEV); |
