ocelot.h (ab3f97a9610a8d90dc9934517e82c3272d4e98a0) | ocelot.h (6505b68056558357dc979d11921ed45cfd68ed69) |
---|---|
1/* SPDX-License-Identifier: (GPL-2.0 OR MIT) */ 2/* Copyright (c) 2017 Microsemi Corporation 3 */ 4 5#ifndef _SOC_MSCC_OCELOT_H 6#define _SOC_MSCC_OCELOT_H 7 8#include <linux/ptp_clock_kernel.h> --- 501 unchanged lines hidden (view full) --- 510 DEV_MAC_TAGS_CFG, 511 DEV_MAC_ADV_CHK_CFG, 512 DEV_MAC_IFG_CFG, 513 DEV_MAC_HDX_CFG, 514 DEV_MAC_DBG_CFG, 515 DEV_MAC_FC_MAC_LOW_CFG, 516 DEV_MAC_FC_MAC_HIGH_CFG, 517 DEV_MAC_STICKY, | 1/* SPDX-License-Identifier: (GPL-2.0 OR MIT) */ 2/* Copyright (c) 2017 Microsemi Corporation 3 */ 4 5#ifndef _SOC_MSCC_OCELOT_H 6#define _SOC_MSCC_OCELOT_H 7 8#include <linux/ptp_clock_kernel.h> --- 501 unchanged lines hidden (view full) --- 510 DEV_MAC_TAGS_CFG, 511 DEV_MAC_ADV_CHK_CFG, 512 DEV_MAC_IFG_CFG, 513 DEV_MAC_HDX_CFG, 514 DEV_MAC_DBG_CFG, 515 DEV_MAC_FC_MAC_LOW_CFG, 516 DEV_MAC_FC_MAC_HIGH_CFG, 517 DEV_MAC_STICKY, |
518 DEV_MM_ENABLE_CONFIG, 519 DEV_MM_VERIF_CONFIG, 520 DEV_MM_STATUS, |
|
518 PCS1G_CFG, 519 PCS1G_MODE_CFG, 520 PCS1G_SD_CFG, 521 PCS1G_ANEG_CFG, 522 PCS1G_ANEG_NP_CFG, 523 PCS1G_LB_CFG, 524 PCS1G_DBG_CFG, 525 PCS1G_CDET_CFG, --- 208 unchanged lines hidden (view full) --- 734 struct list_head list; 735}; 736 737struct ocelot_mirror { 738 refcount_t refcount; 739 int to; 740}; 741 | 521 PCS1G_CFG, 522 PCS1G_MODE_CFG, 523 PCS1G_SD_CFG, 524 PCS1G_ANEG_CFG, 525 PCS1G_ANEG_NP_CFG, 526 PCS1G_LB_CFG, 527 PCS1G_DBG_CFG, 528 PCS1G_CDET_CFG, --- 208 unchanged lines hidden (view full) --- 737 struct list_head list; 738}; 739 740struct ocelot_mirror { 741 refcount_t refcount; 742 int to; 743}; 744 |
745struct ocelot_mm_state { 746 struct mutex lock; 747 enum ethtool_mm_verify_status verify_status; 748 bool tx_active; 749}; 750 |
|
742struct ocelot_port; 743 744struct ocelot_port { 745 struct ocelot *ocelot; 746 747 struct regmap *target; 748 749 struct net_device *bond; --- 109 unchanged lines hidden (view full) --- 859 /* Protects the 2-step TX timestamp ID logic */ 860 spinlock_t ts_id_lock; 861 /* Protects the PTP interface state */ 862 struct mutex ptp_lock; 863 /* Protects the PTP clock */ 864 spinlock_t ptp_clock_lock; 865 struct ptp_pin_desc ptp_pins[OCELOT_PTP_PINS_NUM]; 866 | 751struct ocelot_port; 752 753struct ocelot_port { 754 struct ocelot *ocelot; 755 756 struct regmap *target; 757 758 struct net_device *bond; --- 109 unchanged lines hidden (view full) --- 868 /* Protects the 2-step TX timestamp ID logic */ 869 spinlock_t ts_id_lock; 870 /* Protects the PTP interface state */ 871 struct mutex ptp_lock; 872 /* Protects the PTP clock */ 873 spinlock_t ptp_clock_lock; 874 struct ptp_pin_desc ptp_pins[OCELOT_PTP_PINS_NUM]; 875 |
876 struct ocelot_mm_state *mm; 877 |
|
867 struct ocelot_fdma *fdma; 868}; 869 870struct ocelot_policer { 871 u32 rate; /* kilobit per second */ 872 u32 burst; /* bytes */ 873}; 874 --- 242 unchanged lines hidden (view full) --- 1117 1118int ocelot_migrate_mdbs(struct ocelot *ocelot, unsigned long from_mask, 1119 unsigned long to_mask); 1120 1121int ocelot_vcap_policer_add(struct ocelot *ocelot, u32 pol_ix, 1122 struct ocelot_policer *pol); 1123int ocelot_vcap_policer_del(struct ocelot *ocelot, u32 pol_ix); 1124 | 878 struct ocelot_fdma *fdma; 879}; 880 881struct ocelot_policer { 882 u32 rate; /* kilobit per second */ 883 u32 burst; /* bytes */ 884}; 885 --- 242 unchanged lines hidden (view full) --- 1128 1129int ocelot_migrate_mdbs(struct ocelot *ocelot, unsigned long from_mask, 1130 unsigned long to_mask); 1131 1132int ocelot_vcap_policer_add(struct ocelot *ocelot, u32 pol_ix, 1133 struct ocelot_policer *pol); 1134int ocelot_vcap_policer_del(struct ocelot *ocelot, u32 pol_ix); 1135 |
1136void ocelot_port_mm_irq(struct ocelot *ocelot, int port); 1137int ocelot_port_set_mm(struct ocelot *ocelot, int port, 1138 struct ethtool_mm_cfg *cfg, 1139 struct netlink_ext_ack *extack); 1140int ocelot_port_get_mm(struct ocelot *ocelot, int port, 1141 struct ethtool_mm_state *state); 1142 |
|
1125#if IS_ENABLED(CONFIG_BRIDGE_MRP) 1126int ocelot_mrp_add(struct ocelot *ocelot, int port, 1127 const struct switchdev_obj_mrp *mrp); 1128int ocelot_mrp_del(struct ocelot *ocelot, int port, 1129 const struct switchdev_obj_mrp *mrp); 1130int ocelot_mrp_add_ring_role(struct ocelot *ocelot, int port, 1131 const struct switchdev_obj_ring_role_mrp *mrp); 1132int ocelot_mrp_del_ring_role(struct ocelot *ocelot, int port, --- 30 unchanged lines hidden --- | 1143#if IS_ENABLED(CONFIG_BRIDGE_MRP) 1144int ocelot_mrp_add(struct ocelot *ocelot, int port, 1145 const struct switchdev_obj_mrp *mrp); 1146int ocelot_mrp_del(struct ocelot *ocelot, int port, 1147 const struct switchdev_obj_mrp *mrp); 1148int ocelot_mrp_add_ring_role(struct ocelot *ocelot, int port, 1149 const struct switchdev_obj_ring_role_mrp *mrp); 1150int ocelot_mrp_del_ring_role(struct ocelot *ocelot, int port, --- 30 unchanged lines hidden --- |