summaryrefslogtreecommitdiff
path: root/include/soc
diff options
context:
space:
mode:
authorColin Foster <colin.foster@in-advantage.com>2023-03-17 11:54:11 -0700
committerDavid S. Miller <davem@davemloft.net>2023-03-20 09:08:48 +0000
commitdfca93ed51a7cf8bfda876705816a5e55381ac4a (patch)
tree6bef022dda248192576aceb57ce33ab61a17b425 /include/soc
parent69f7f89c0db52c5a3fe1bc9ba69d8248b5ee0bca (diff)
downloadlwn-dfca93ed51a7cf8bfda876705816a5e55381ac4a.tar.gz
lwn-dfca93ed51a7cf8bfda876705816a5e55381ac4a.zip
net: mscc: ocelot: expose serdes configuration function
During chip initialization, ports that use SGMII / QSGMII to interface to external phys need to be configured on the VSC7513 and VSC7514. Expose this configuration routine, so it can be used by DSA drivers. Signed-off-by: Colin Foster <colin.foster@in-advantage.com> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'include/soc')
-rw-r--r--include/soc/mscc/ocelot.h4
1 files changed, 4 insertions, 0 deletions
diff --git a/include/soc/mscc/ocelot.h b/include/soc/mscc/ocelot.h
index 87ade87d3540..d757b5e26d26 100644
--- a/include/soc/mscc/ocelot.h
+++ b/include/soc/mscc/ocelot.h
@@ -644,6 +644,7 @@ enum ocelot_tag_prefix {
};
struct ocelot;
+struct device_node;
struct ocelot_ops {
struct net_device *(*port_to_netdev)(struct ocelot *ocelot, int port);
@@ -1111,6 +1112,9 @@ int ocelot_sb_occ_tc_port_bind_get(struct ocelot *ocelot, int port,
enum devlink_sb_pool_type pool_type,
u32 *p_cur, u32 *p_max);
+int ocelot_port_configure_serdes(struct ocelot *ocelot, int port,
+ struct device_node *portnp);
+
void ocelot_phylink_mac_config(struct ocelot *ocelot, int port,
unsigned int link_an_mode,
const struct phylink_link_state *state);