/kernel/linux/linux-6.6/drivers/net/ethernet/microchip/sparx5/ |
H A D | sparx5_mactable.c | 44 static int sparx5_mact_get_status(struct sparx5 *sparx5) in sparx5_mact_get_status() argument 46 return spx5_rd(sparx5, LRN_COMMON_ACCESS_CTRL); in sparx5_mact_get_status() 49 static int sparx5_mact_wait_for_completion(struct sparx5 *sparx5) in sparx5_mact_wait_for_completion() argument 54 sparx5, val, in sparx5_mact_wait_for_completion() 59 static void sparx5_mact_select(struct sparx5 *sparx5, in sparx5_mact_select() argument 76 spx5_wr(mach, sparx5, LRN_MAC_ACCESS_CFG_0); in sparx5_mact_select() 77 spx5_wr(macl, sparx5, LRN_MAC_ACCESS_CFG_ in sparx5_mact_select() 80 sparx5_mact_learn(struct sparx5 *sparx5, int pgid, const unsigned char mac[ETH_ALEN], u16 vid) sparx5_mact_learn() argument 121 struct sparx5 *sparx5 = port->sparx5; sparx5_mc_unsync() local 129 struct sparx5 *sparx5 = port->sparx5; sparx5_mc_sync() local 134 sparx5_mact_get(struct sparx5 *sparx5, unsigned char mac[ETH_ALEN], u16 *vid, u32 *pcfg2) sparx5_mact_get() argument 159 sparx5_mact_getnext(struct sparx5 *sparx5, unsigned char mac[ETH_ALEN], u16 *vid, u32 *pcfg2) sparx5_mact_getnext() argument 189 sparx5_mact_find(struct sparx5 *sparx5, const unsigned char mac[ETH_ALEN], u16 vid, u32 *pcfg2) sparx5_mact_find() argument 218 sparx5_mact_forget(struct sparx5 *sparx5, const unsigned char mac[ETH_ALEN], u16 vid) sparx5_mact_forget() argument 239 alloc_mact_entry(struct sparx5 *sparx5, const unsigned char *mac, u16 vid, u16 port_index) alloc_mact_entry() argument 256 find_mact_entry(struct sparx5 *sparx5, const unsigned char *mac, u16 vid, u16 port_index) find_mact_entry() argument 289 sparx5_add_mact_entry(struct sparx5 *sparx5, struct net_device *dev, u16 portno, const unsigned char *addr, u16 vid) sparx5_add_mact_entry() argument 336 sparx5_del_mact_entry(struct sparx5 *sparx5, const unsigned char *addr, u16 vid) sparx5_del_mact_entry() argument 361 sparx5_mact_handle_entry(struct sparx5 *sparx5, unsigned char mac[ETH_ALEN], u16 vid, u32 cfg2) sparx5_mact_handle_entry() argument 423 struct sparx5 *sparx5 = container_of(del_work, struct sparx5, sparx5_mact_pull_work() local 478 sparx5_set_ageing(struct sparx5 *sparx5, int msecs) sparx5_set_ageing() argument 486 sparx5, sparx5_set_ageing() local 490 sparx5_mact_init(struct sparx5 *sparx5) sparx5_mact_init() argument [all...] |
H A D | sparx5_ptp.c | 27 static u64 sparx5_ptp_get_1ppm(struct sparx5 *sparx5) in sparx5_ptp_get_1ppm() argument 37 switch (sparx5->coreclock) { in sparx5_ptp_get_1ppm() 55 static u64 sparx5_ptp_get_nominal_value(struct sparx5 *sparx5) in sparx5_ptp_get_nominal_value() argument 59 switch (sparx5->coreclock) { in sparx5_ptp_get_nominal_value() 81 struct sparx5 *sparx5 = port->sparx5; in sparx5_ptp_hwtstamp_set() local 89 if (test_bit(port->portno, sparx5 in sparx5_ptp_hwtstamp_set() 141 struct sparx5 *sparx5 = port->sparx5; sparx5_ptp_hwtstamp_get() local 223 struct sparx5 *sparx5 = port->sparx5; sparx5_ptp_txtstamp_request() local 262 struct sparx5 *sparx5 = port->sparx5; sparx5_ptp_txtstamp_release() local 272 sparx5_get_hwtimestamp(struct sparx5 *sparx5, struct timespec64 *ts, u32 nsec) sparx5_get_hwtimestamp() argument 305 struct sparx5 *sparx5 = args; sparx5_ptp_irq_handler() local 394 struct sparx5 *sparx5 = phc->sparx5; sparx5_ptp_adjfine() local 442 struct sparx5 *sparx5 = phc->sparx5; sparx5_ptp_settime64() local 480 struct sparx5 *sparx5 = phc->sparx5; sparx5_ptp_gettime64() local 517 struct sparx5 *sparx5 = phc->sparx5; sparx5_ptp_adjtime() local 534 sparx5, PTP_PTP_TOD_NSEC(TOD_ACC_PIN)); sparx5_ptp_adjtime() local 572 sparx5_ptp_phc_init(struct sparx5 *sparx5, int index, struct ptp_clock_info *clock_info) sparx5_ptp_phc_init() argument 592 sparx5_ptp_init(struct sparx5 *sparx5) sparx5_ptp_init() argument 644 sparx5_ptp_deinit(struct sparx5 *sparx5) sparx5_ptp_deinit() argument 661 sparx5_ptp_rxtstamp(struct sparx5 *sparx5, struct sk_buff *skb, u64 timestamp) sparx5_ptp_rxtstamp() argument [all...] |
H A D | sparx5_main.c | 217 static int sparx5_create_targets(struct sparx5 *sparx5) in sparx5_create_targets() argument 234 iores[idx] = platform_get_resource(sparx5->pdev, IORESOURCE_MEM, in sparx5_create_targets() 237 dev_err(sparx5->dev, "Invalid resource\n"); in sparx5_create_targets() 240 iomem[idx] = devm_ioremap(sparx5->dev, in sparx5_create_targets() 244 dev_err(sparx5->dev, "Unable to get switch registers: %s\n", in sparx5_create_targets() 253 sparx5->regs[iomap->id] = begin[iomap->range] + iomap->offset; in sparx5_create_targets() 258 static int sparx5_create_port(struct sparx5 *sparx5, in sparx5_create_port() argument 266 ndev = sparx5_create_netdev(sparx5, confi in sparx5_create_port() 386 sparx5_init_switchcore(struct sparx5 *sparx5) sparx5_init_switchcore() argument 419 sparx5_init_coreclock(struct sparx5 *sparx5) sparx5_init_coreclock() argument 537 sparx5, sparx5_init_coreclock() local 542 sparx5, sparx5_init_coreclock() local 548 sparx5_qlim_set(struct sparx5 *sparx5) sparx5_qlim_set() argument 574 sparx5_board_init(struct sparx5 *sparx5) sparx5_board_init() argument 596 sparx5_start(struct sparx5 *sparx5) sparx5_start() argument 735 sparx5_cleanup_ports(struct sparx5 *sparx5) sparx5_cleanup_ports() argument 747 struct sparx5 *sparx5; mchp_sparx5_probe() local 917 struct sparx5 *sparx5 = platform_get_drvdata(pdev); mchp_sparx5_remove() local [all...] |
H A D | sparx5_sdlb.c | 23 int sparx5_sdlb_clk_hz_get(struct sparx5 *sparx5) in sparx5_sdlb_clk_hz_get() argument 28 clk_per_100ps = HSCH_SYS_CLK_PER_100PS_GET(spx5_rd(sparx5, in sparx5_sdlb_clk_hz_get() 37 static int sparx5_sdlb_pup_interval_get(struct sparx5 *sparx5, u32 max_token, in sparx5_sdlb_pup_interval_get() argument 42 clk_hz = sparx5_sdlb_clk_hz_get(sparx5); in sparx5_sdlb_pup_interval_get() 47 int sparx5_sdlb_pup_token_get(struct sparx5 *sparx5, u32 pup_interval, u64 rate) in sparx5_sdlb_pup_token_get() argument 54 clk_hz = sparx5_sdlb_clk_hz_get(sparx5); in sparx5_sdlb_pup_token_get() 59 static void sparx5_sdlb_group_disable(struct sparx5 *sparx argument 66 sparx5_sdlb_group_enable(struct sparx5 *sparx5, u32 group) sparx5_sdlb_group_enable() argument 73 sparx5_sdlb_group_get_first(struct sparx5 *sparx5, u32 group) sparx5_sdlb_group_get_first() argument 82 sparx5_sdlb_group_get_next(struct sparx5 *sparx5, u32 group, u32 lb) sparx5_sdlb_group_get_next() argument 92 sparx5_sdlb_group_is_first(struct sparx5 *sparx5, u32 group, u32 lb) sparx5_sdlb_group_is_first() argument 98 sparx5_sdlb_group_is_last(struct sparx5 *sparx5, u32 group, u32 lb) sparx5_sdlb_group_is_last() argument 104 sparx5_sdlb_group_is_empty(struct sparx5 *sparx5, u32 group) sparx5_sdlb_group_is_empty() argument 113 sparx5_sdlb_group_get_last(struct sparx5 *sparx5, u32 group) sparx5_sdlb_group_get_last() argument 128 sparx5_sdlb_group_is_singular(struct sparx5 *sparx5, u32 group) sparx5_sdlb_group_is_singular() argument 137 sparx5_sdlb_group_get_adjacent(struct sparx5 *sparx5, u32 group, u32 idx, u32 *prev, u32 *next, u32 *first) sparx5_sdlb_group_get_adjacent() argument 162 sparx5_sdlb_group_get_count(struct sparx5 *sparx5, u32 group) sparx5_sdlb_group_get_count() argument 179 sparx5_sdlb_group_get_by_rate(struct sparx5 *sparx5, u32 rate, u32 burst) sparx5_sdlb_group_get_by_rate() argument 206 sparx5_sdlb_group_get_by_index(struct sparx5 *sparx5, u32 idx, u32 *group) sparx5_sdlb_group_get_by_index() argument 234 sparx5_sdlb_group_link(struct sparx5 *sparx5, u32 group, u32 idx, u32 first, u32 next, bool empty) sparx5_sdlb_group_link() argument 258 sparx5_sdlb_group_add(struct sparx5 *sparx5, u32 group, u32 idx) sparx5_sdlb_group_add() argument 273 sparx5_sdlb_group_del(struct sparx5 *sparx5, u32 group, u32 idx) sparx5_sdlb_group_del() argument 303 sparx5_sdlb_group_init(struct sparx5 *sparx5, u64 max_rate, u32 min_burst, u32 frame_size, u32 idx) sparx5_sdlb_group_init() argument 331 sparx5, ANA_AC_SDLB_FRM_RATE_TOKENS(idx)); sparx5_sdlb_group_init() local 333 spx5_wr(ANA_AC_SDLB_LBGRP_MISC_THRES_SHIFT_SET(thres_shift), sparx5, sparx5_sdlb_group_init() local [all...] |
H A D | sparx5_main.h | 100 struct sparx5; 169 struct sparx5 *sparx5; member 209 struct sparx5 *sparx5; member 234 struct sparx5 { struct 303 int sparx5_register_notifier_blocks(struct sparx5 *sparx5); 304 void sparx5_unregister_notifier_blocks(struct sparx5 *sparx5); 371 sparx5_dcb_init(struct sparx5 *sparx5) sparx5_dcb_init() argument 615 spx5_rd(struct sparx5 *sparx5, int id, int tinst, int tcnt, int gbase, int ginst, int gcnt, int gwidth, int raddr, int rinst, int rcnt, int rwidth) spx5_rd() argument 631 spx5_wr(u32 val, struct sparx5 *sparx5, int id, int tinst, int tcnt, int gbase, int ginst, int gcnt, int gwidth, int raddr, int rinst, int rcnt, int rwidth) spx5_wr() argument 651 spx5_rmw(u32 val, u32 mask, struct sparx5 *sparx5, int id, int tinst, int tcnt, int gbase, int ginst, int gcnt, int gwidth, int raddr, int rinst, int rcnt, int rwidth) spx5_rmw() argument 679 spx5_inst_get(struct sparx5 *sparx5, int id, int tinst) spx5_inst_get() argument 684 spx5_reg_get(struct sparx5 *sparx5, int id, int tinst, int tcnt, int gbase, int ginst, int gcnt, int gwidth, int raddr, int rinst, int rcnt, int rwidth) spx5_reg_get() argument [all...] |
H A D | sparx5_vlan.c | 10 static int sparx5_vlant_set_mask(struct sparx5 *sparx5, u16 vid) in sparx5_vlant_set_mask() argument 15 bitmap_to_arr32(mask, sparx5->vlan_mask[vid], SPX5_PORTS); in sparx5_vlant_set_mask() 18 spx5_wr(mask[0], sparx5, ANA_L3_VLAN_MASK_CFG(vid)); in sparx5_vlant_set_mask() 19 spx5_wr(mask[1], sparx5, ANA_L3_VLAN_MASK_CFG1(vid)); in sparx5_vlant_set_mask() 20 spx5_wr(mask[2], sparx5, ANA_L3_VLAN_MASK_CFG2(vid)); in sparx5_vlant_set_mask() 25 void sparx5_vlan_init(struct sparx5 *sparx5) in sparx5_vlan_init() argument 31 sparx5, in sparx5_vlan_init() 38 sparx5, in sparx5_vlan_init() local 42 sparx5_vlan_port_setup(struct sparx5 *sparx5, int portno) sparx5_vlan_port_setup() argument 51 sparx5, sparx5_vlan_port_setup() local 58 struct sparx5 *sparx5 = port->sparx5; sparx5_vlan_vid_add() local 89 struct sparx5 *sparx5 = port->sparx5; sparx5_vlan_vid_del() local 120 struct sparx5 *sparx5 = port->sparx5; sparx5_pgid_update_mask() local 155 sparx5_update_fwd(struct sparx5 *sparx5) sparx5_update_fwd() argument 199 sparx5_vlan_port_apply(struct sparx5 *sparx5, struct sparx5_port *port) sparx5_vlan_port_apply() argument [all...] |
H A D | sparx5_psfp.c | 55 u32 sparx5_psfp_isdx_get_sf(struct sparx5 *sparx5, u32 isdx) in sparx5_psfp_isdx_get_sf() argument 57 return ANA_L2_TSN_CFG_TSN_SFID_GET(spx5_rd(sparx5, in sparx5_psfp_isdx_get_sf() 61 u32 sparx5_psfp_isdx_get_fm(struct sparx5 *sparx5, u32 isdx) in sparx5_psfp_isdx_get_fm() argument 63 return ANA_L2_DLB_CFG_DLB_IDX_GET(spx5_rd(sparx5, in sparx5_psfp_isdx_get_fm() 67 u32 sparx5_psfp_sf_get_sg(struct sparx5 *sparx5, u32 sfid) in sparx5_psfp_sf_get_sg() argument 69 return ANA_AC_TSN_SF_CFG_TSN_SGID_GET(spx5_rd(sparx5, in sparx5_psfp_sf_get_sg() 73 void sparx5_isdx_conf_set(struct sparx5 *sparx argument 76 sparx5, ANA_L2_TSN_CFG(isdx)); sparx5_isdx_conf_set() local 79 sparx5, ANA_L2_DLB_CFG(isdx)); sparx5_isdx_conf_set() local 88 sparx5_psfp_sgid_get_status(struct sparx5 *sparx5) sparx5_psfp_sgid_get_status() argument 93 sparx5_psfp_sgid_wait_for_completion(struct sparx5 *sparx5) sparx5_psfp_sgid_wait_for_completion() argument 103 sparx5_psfp_sg_config_change(struct sparx5 *sparx5, u32 id) sparx5_psfp_sg_config_change() argument 105 spx5_wr(ANA_AC_SG_ACCESS_CTRL_SGID_SET(id), sparx5, sparx5_psfp_sg_config_change() local 110 sparx5, ANA_AC_SG_ACCESS_CTRL); sparx5_psfp_sg_config_change() local 117 sparx5_psfp_sf_set(struct sparx5 *sparx5, u32 id, const struct sparx5_psfp_sf *sf) sparx5_psfp_sf_set() argument 128 sparx5, ANA_AC_TSN_SF_CFG(id)); sparx5_psfp_sf_set() local 131 sparx5_psfp_sg_set(struct sparx5 *sparx5, u32 id, const struct sparx5_psfp_sg *sg) sparx5_psfp_sg_set() argument 143 spx5_wr(ANA_AC_SG_ACCESS_CTRL_SGID_SET(id), sparx5, sparx5_psfp_sg_set() local 187 sparx5_sdlb_conf_set(struct sparx5 *sparx5, struct sparx5_psfp_fm *fm) sparx5_sdlb_conf_set() argument 203 sparx5_psfp_sf_add(struct sparx5 *sparx5, const struct sparx5_psfp_sf *sf, u32 *id) sparx5_psfp_sf_add() argument 217 sparx5_psfp_sf_del(struct sparx5 *sparx5, u32 id) sparx5_psfp_sf_del() argument 226 sparx5_psfp_sg_add(struct sparx5 *sparx5, u32 uidx, struct sparx5_psfp_sg *sg, u32 *id) sparx5_psfp_sg_add() argument 251 sparx5_psfp_sg_del(struct sparx5 *sparx5, u32 id) sparx5_psfp_sg_del() argument 266 sparx5_psfp_fm_add(struct sparx5 *sparx5, u32 uidx, struct sparx5_psfp_fm *fm, u32 *id) sparx5_psfp_fm_add() argument 295 sparx5_psfp_fm_del(struct sparx5 *sparx5, u32 id) sparx5_psfp_fm_del() argument 316 sparx5_psfp_init(struct sparx5 *sparx5) sparx5_psfp_init() argument [all...] |
H A D | sparx5_qos.c | 24 void sparx5_new_base_time(struct sparx5 *sparx5, const u32 cycle_time, in sparx5_new_base_time() argument 35 sparx5_ptp_gettime64(&sparx5->phc[SPARX5_PHC_PORT].info, &ts); in sparx5_new_base_time() 79 static u32 sparx5_lg_get_leak_time(struct sparx5 *sparx5, u32 layer, u32 group) in sparx5_lg_get_leak_time() argument 83 value = spx5_rd(sparx5, HSCH_HSCH_TIMER_CFG(layer, group)); in sparx5_lg_get_leak_time() 87 static void sparx5_lg_set_leak_time(struct sparx5 *sparx5, u32 layer, u32 group, in sparx5_lg_set_leak_time() argument 90 spx5_wr(HSCH_HSCH_TIMER_CFG_LEAK_TIME_SET(leak_time), sparx5, in sparx5_lg_set_leak_time() local 94 static u32 sparx5_lg_get_first(struct sparx5 *sparx argument 102 sparx5_lg_get_next(struct sparx5 *sparx5, u32 layer, u32 group, u32 idx) sparx5_lg_get_next() argument 112 sparx5_lg_get_last(struct sparx5 *sparx5, u32 layer, u32 group) sparx5_lg_get_last() argument 127 sparx5_lg_is_last(struct sparx5 *sparx5, u32 layer, u32 group, u32 idx) sparx5_lg_is_last() argument 133 sparx5_lg_is_first(struct sparx5 *sparx5, u32 layer, u32 group, u32 idx) sparx5_lg_is_first() argument 139 sparx5_lg_is_empty(struct sparx5 *sparx5, u32 layer, u32 group) sparx5_lg_is_empty() argument 144 sparx5_lg_is_singular(struct sparx5 *sparx5, u32 layer, u32 group) sparx5_lg_is_singular() argument 153 sparx5_lg_enable(struct sparx5 *sparx5, u32 layer, u32 group, u32 leak_time) sparx5_lg_enable() argument 159 sparx5_lg_disable(struct sparx5 *sparx5, u32 layer, u32 group) sparx5_lg_disable() argument 164 sparx5_lg_get_group_by_index(struct sparx5 *sparx5, u32 layer, u32 idx, u32 *group) sparx5_lg_get_group_by_index() argument 210 sparx5_lg_get_adjacent(struct sparx5 *sparx5, u32 layer, u32 group, u32 idx, u32 *prev, u32 *next, u32 *first) sparx5_lg_get_adjacent() argument 236 sparx5_lg_conf_set(struct sparx5 *sparx5, u32 layer, u32 group, u32 se_first, u32 idx, u32 idx_next, bool empty) sparx5_lg_conf_set() argument 252 spx5_wr(HSCH_SE_CONNECT_SE_LEAK_LINK_SET(idx_next), sparx5, sparx5_lg_conf_set() local 257 HSCH_HSCH_LEAK_CFG_LEAK_FIRST, sparx5, sparx5_lg_conf_set() local 266 sparx5_lg_del(struct sparx5 *sparx5, u32 layer, u32 group, u32 idx) sparx5_lg_del() argument 294 sparx5_lg_add(struct sparx5 *sparx5, u32 layer, u32 new_group, u32 idx) sparx5_lg_add() argument 330 struct sparx5 *sparx5 = port->sparx5; sparx5_shaper_conf_set() local 339 HSCH_HSCH_CFG_CFG_HSCH_LAYER, sparx5, HSCH_HSCH_CFG_CFG); sparx5_shaper_conf_set() local 386 sparx5_leak_groups_init(struct sparx5 *sparx5) sparx5_leak_groups_init() argument 441 sparx5_qos_init(struct sparx5 *sparx5) sparx5_qos_init() argument [all...] |
H A D | sparx5_fdma.c | 113 static void sparx5_fdma_rx_activate(struct sparx5 *sparx5, struct sparx5_rx *rx) in sparx5_fdma_rx_activate() argument 116 spx5_wr(((u64)rx->dma) & GENMASK(31, 0), sparx5, in sparx5_fdma_rx_activate() 118 spx5_wr(((u64)rx->dma) >> 32, sparx5, FDMA_DCB_LLP1(rx->channel_id)); in sparx5_fdma_rx_activate() 124 sparx5, FDMA_CH_CFG(rx->channel_id)); in sparx5_fdma_rx_activate() 128 sparx5, in sparx5_fdma_rx_activate() 133 sparx5, FDMA_PORT_CTRL(0)); in sparx5_fdma_rx_activate() 138 sparx5, FDMA_INTR_DB_ENA); in sparx5_fdma_rx_activate() 141 spx5_wr(BIT(rx->channel_id), sparx5, FDMA_CH_ACTIVATE); in sparx5_fdma_rx_activate() 144 static void sparx5_fdma_rx_deactivate(struct sparx5 *sparx argument 159 sparx5_fdma_tx_activate(struct sparx5 *sparx5, struct sparx5_tx *tx) sparx5_fdma_tx_activate() argument 180 sparx5_fdma_tx_deactivate(struct sparx5 *sparx5, struct sparx5_tx *tx) sparx5_fdma_tx_deactivate() argument 187 sparx5_fdma_rx_reload(struct sparx5 *sparx5, struct sparx5_rx *rx) sparx5_fdma_rx_reload() argument 193 sparx5_fdma_tx_reload(struct sparx5 *sparx5, struct sparx5_tx *tx) sparx5_fdma_tx_reload() argument 205 sparx5_fdma_rx_get_frame(struct sparx5 *sparx5, struct sparx5_rx *rx) sparx5_fdma_rx_get_frame() argument 261 struct sparx5 *sparx5 = container_of(rx, struct sparx5, rx); sparx5_fdma_napi_callback() local 309 sparx5_fdma_xmit(struct sparx5 *sparx5, u32 *ifh, struct sk_buff *skb) sparx5_fdma_xmit() argument 344 sparx5_fdma_rx_alloc(struct sparx5 *sparx5) sparx5_fdma_rx_alloc() argument 391 sparx5_fdma_tx_alloc(struct sparx5 *sparx5) sparx5_fdma_tx_alloc() argument 439 sparx5_fdma_rx_init(struct sparx5 *sparx5, struct sparx5_rx *rx, int channel) sparx5_fdma_rx_init() argument 456 sparx5_fdma_tx_init(struct sparx5 *sparx5, struct sparx5_tx *tx, int channel) sparx5_fdma_tx_init() argument 464 struct sparx5 *sparx5 = args; sparx5_fdma_handler() local 487 sparx5_fdma_injection_mode(struct sparx5 *sparx5) sparx5_fdma_injection_mode() argument 497 sparx5, QS_XTR_GRP_CFG(XTR_QUEUE)); sparx5_fdma_injection_mode() local 500 sparx5, QS_INJ_GRP_CFG(INJ_QUEUE)); sparx5_fdma_injection_mode() local 528 sparx5, sparx5_fdma_injection_mode() local 547 sparx5_fdma_start(struct sparx5 *sparx5) sparx5_fdma_start() argument 562 sparx5, CPU_PROC_CTRL); sparx5_fdma_start() local 580 sparx5_fdma_port_ctrl(struct sparx5 *sparx5) sparx5_fdma_port_ctrl() argument 585 sparx5_fdma_stop(struct sparx5 *sparx5) sparx5_fdma_stop() argument [all...] |
H A D | sparx5_vcap_impl.c | 168 static void sparx5_vcap_type_err(struct sparx5 *sparx5, in sparx5_vcap_type_err() argument 177 static void sparx5_vcap_wait_super_update(struct sparx5 *sparx5) in sparx5_vcap_wait_super_update() argument 183 false, sparx5, VCAP_SUPER_CTRL); in sparx5_vcap_wait_super_update() 187 static void sparx5_vcap_wait_es0_update(struct sparx5 *sparx5) in sparx5_vcap_wait_es0_update() argument 193 false, sparx5, VCAP_ES0_CTRL); in sparx5_vcap_wait_es0_update() 197 static void sparx5_vcap_wait_es2_update(struct sparx5 *sparx5) in sparx5_vcap_wait_es2_update() argument 207 _sparx5_vcap_range_init(struct sparx5 *sparx5, struct vcap_admin *admin, u32 addr, u32 count) _sparx5_vcap_range_init() argument 218 sparx5, VCAP_SUPER_CFG); _sparx5_vcap_range_init() local 232 sparx5, VCAP_ES0_CFG); _sparx5_vcap_range_init() local 246 sparx5, VCAP_ES2_CFG); _sparx5_vcap_range_init() local 264 sparx5_vcap_block_init(struct sparx5 *sparx5, struct vcap_admin *admin) sparx5_vcap_block_init() argument 427 struct sparx5 *sparx5 = port->sparx5; sparx5_vcap_is0_get_port_keysets() local 481 struct sparx5 *sparx5 = port->sparx5; sparx5_vcap_is2_get_port_keysets() local 610 struct sparx5 *sparx5 = port->sparx5; sparx5_vcap_es0_get_port_keysets() local 635 struct sparx5 *sparx5 = port->sparx5; sparx5_vcap_es2_get_port_keysets() local 918 sparx5_vcap_is0_cache_write(struct sparx5 *sparx5, struct vcap_admin *admin, enum vcap_selection sel, u32 start, u32 count) sparx5_vcap_is0_cache_write() argument 959 sparx5_vcap_is2_cache_write(struct sparx5 *sparx5, struct vcap_admin *admin, enum vcap_selection sel, u32 start, u32 count) sparx5_vcap_is2_cache_write() argument 1008 sparx5_es0_write_esdx_counter(struct sparx5 *sparx5, struct vcap_admin *admin, u32 id) sparx5_es0_write_esdx_counter() argument 1012 spx5_wr(XQS_STAT_CFG_STAT_VIEW_SET(id), sparx5, XQS_STAT_CFG); sparx5_es0_write_esdx_counter() local 1019 sparx5_vcap_es0_cache_write(struct sparx5 *sparx5, struct vcap_admin *admin, enum vcap_selection sel, u32 start, u32 count) sparx5_vcap_es0_cache_write() argument 1060 sparx5_vcap_es2_cache_write(struct sparx5 *sparx5, struct vcap_admin *admin, enum vcap_selection sel, u32 start, u32 count) sparx5_vcap_es2_cache_write() argument 1110 struct sparx5 *sparx5 = port->sparx5; sparx5_vcap_cache_write() local 1131 sparx5_vcap_is0_cache_read(struct sparx5 *sparx5, struct vcap_admin *admin, enum vcap_selection sel, u32 start, u32 count) sparx5_vcap_is0_cache_read() argument 1166 sparx5_vcap_is2_cache_read(struct sparx5 *sparx5, struct vcap_admin *admin, enum vcap_selection sel, u32 start, u32 count) sparx5_vcap_is2_cache_read() argument 1207 sparx5_es0_read_esdx_counter(struct sparx5 *sparx5, struct vcap_admin *admin, u32 id) sparx5_es0_read_esdx_counter() argument 1213 spx5_wr(XQS_STAT_CFG_STAT_VIEW_SET(id), sparx5, XQS_STAT_CFG); sparx5_es0_read_esdx_counter() local 1221 sparx5_vcap_es0_cache_read(struct sparx5 *sparx5, struct vcap_admin *admin, enum vcap_selection sel, u32 start, u32 count) sparx5_vcap_es0_cache_read() argument 1256 sparx5_vcap_es2_cache_read(struct sparx5 *sparx5, struct vcap_admin *admin, enum vcap_selection sel, u32 start, u32 count) sparx5_vcap_es2_cache_read() argument 1300 struct sparx5 *sparx5 = port->sparx5; sparx5_vcap_cache_read() local 1327 struct sparx5 *sparx5 = port->sparx5; sparx5_vcap_range_init() local 1332 sparx5_vcap_super_update(struct sparx5 *sparx5, enum vcap_command cmd, enum vcap_selection sel, u32 addr) sparx5_vcap_super_update() argument 1351 sparx5_vcap_es0_update(struct sparx5 *sparx5, enum vcap_command cmd, enum vcap_selection sel, u32 addr) sparx5_vcap_es0_update() argument 1370 sparx5_vcap_es2_update(struct sparx5 *sparx5, enum vcap_command cmd, enum vcap_selection sel, u32 addr) sparx5_vcap_es2_update() argument 1395 struct sparx5 *sparx5 = port->sparx5; sparx5_vcap_update() local 1414 sparx5_vcap_super_move(struct sparx5 *sparx5, u32 addr, enum vcap_command cmd, u16 mv_num_pos, u16 mv_size) sparx5_vcap_super_move() argument 1434 sparx5_vcap_es0_move(struct sparx5 *sparx5, u32 addr, enum vcap_command cmd, u16 mv_num_pos, u16 mv_size) sparx5_vcap_es0_move() argument 1454 sparx5_vcap_es2_move(struct sparx5 *sparx5, u32 addr, enum vcap_command cmd, u16 mv_num_pos, u16 mv_size) sparx5_vcap_es2_move() argument 1479 struct sparx5 *sparx5 = port->sparx5; sparx5_vcap_move() local 1539 struct sparx5 *sparx5 = port->sparx5; sparx5_vcap_is0_set_port_keyset() local 1548 sparx5, sparx5_vcap_is0_set_port_keyset() local 1555 sparx5, sparx5_vcap_is0_set_port_keyset() local 1562 sparx5, sparx5_vcap_is0_set_port_keyset() local 1628 struct sparx5 *sparx5 = port->sparx5; sparx5_vcap_is2_set_port_keyset() local 1637 sparx5, sparx5_vcap_is2_set_port_keyset() local 1644 sparx5, sparx5_vcap_is2_set_port_keyset() local 1648 sparx5, sparx5_vcap_is2_set_port_keyset() local 1655 sparx5, sparx5_vcap_is2_set_port_keyset() local 1660 sparx5, sparx5_vcap_is2_set_port_keyset() local 1667 sparx5, sparx5_vcap_is2_set_port_keyset() local 1721 struct sparx5 *sparx5 = port->sparx5; sparx5_vcap_es2_set_port_keyset() local 1730 sparx5, sparx5_vcap_es2_set_port_keyset() local 1737 sparx5, sparx5_vcap_es2_set_port_keyset() local 1744 sparx5, sparx5_vcap_es2_set_port_keyset() local 1793 sparx5_vcap_is0_port_key_selection(struct sparx5 *sparx5, struct vcap_admin *admin) sparx5_vcap_is0_port_key_selection() argument 1819 sparx5_vcap_is2_port_key_selection(struct sparx5 *sparx5, struct vcap_admin *admin) sparx5_vcap_is2_port_key_selection() argument 1846 sparx5_vcap_es0_port_key_selection(struct sparx5 *sparx5, struct vcap_admin *admin) sparx5_vcap_es0_port_key_selection() argument 1862 sparx5_vcap_es2_port_key_selection(struct sparx5 *sparx5, struct vcap_admin *admin) sparx5_vcap_es2_port_key_selection() argument 1878 sparx5_vcap_port_key_selection(struct sparx5 *sparx5, struct vcap_admin *admin) sparx5_vcap_port_key_selection() argument 1901 sparx5_vcap_port_key_deselection(struct sparx5 *sparx5, struct vcap_admin *admin) sparx5_vcap_port_key_deselection() argument 1953 sparx5_vcap_admin_alloc(struct sparx5 *sparx5, struct vcap_control *ctrl, const struct sparx5_vcap_inst *cfg) sparx5_vcap_admin_alloc() argument 1987 sparx5_vcap_block_alloc(struct sparx5 *sparx5, struct vcap_admin *admin, const struct sparx5_vcap_inst *cfg) sparx5_vcap_block_alloc() argument 2002 spx5_wr(VCAP_SUPER_IDX_CORE_IDX_SET(idx), sparx5, sparx5_vcap_block_alloc() local 2018 spx5_wr(VCAP_ES0_IDX_CORE_IDX_SET(idx), sparx5, sparx5_vcap_block_alloc() local 2030 spx5_wr(VCAP_ES2_IDX_CORE_IDX_SET(idx), sparx5, sparx5_vcap_block_alloc() local 2043 sparx5_vcap_init(struct sparx5 *sparx5) sparx5_vcap_init() argument 2096 sparx5_vcap_destroy(struct sparx5 *sparx5) sparx5_vcap_destroy() argument [all...] |
H A D | sparx5_port.c | 78 static int sparx5_get_dev2g5_status(struct sparx5 *sparx5, in sparx5_get_dev2g5_status() argument 87 value = spx5_rd(sparx5, DEV2G5_PCS1G_STICKY(portno)); in sparx5_get_dev2g5_status() 90 spx5_wr(value, sparx5, DEV2G5_PCS1G_STICKY(portno)); in sparx5_get_dev2g5_status() 93 value = spx5_rd(sparx5, DEV2G5_PCS1G_LINK_STATUS(portno)); in sparx5_get_dev2g5_status() 105 value = spx5_rd(sparx5, DEV2G5_PCS1G_ANEG_STATUS(portno)); in sparx5_get_dev2g5_status() 113 value = spx5_rd(sparx5, DEV2G5_PCS1G_ANEG_CFG(portno)); in sparx5_get_dev2g5_status() 121 static int sparx5_get_sfi_status(struct sparx5 *sparx5, in sparx5_get_sfi_status() argument 137 inst = spx5_inst_get(sparx5, de in sparx5_get_sfi_status() 160 sparx5_get_port_status(struct sparx5 *sparx5, struct sparx5_port *port, struct sparx5_port_status *status) sparx5_get_port_status() argument 212 sparx5_port_verify_speed(struct sparx5 *sparx5, struct sparx5_port *port, struct sparx5_port_config *conf) sparx5_port_verify_speed() argument 264 sparx5_dev_change(struct sparx5 *sparx5, struct sparx5_port *port, struct sparx5_port_config *conf) sparx5_dev_change() argument 272 sparx5_port_flush_poll(struct sparx5 *sparx5, u32 portno) sparx5_port_flush_poll() argument 316 sparx5_port_disable(struct sparx5 *sparx5, struct sparx5_port *port, bool high_spd_dev) sparx5_port_disable() argument 382 sparx5, sparx5_port_disable() local 426 sparx5, sparx5_port_disable() local 457 sparx5_port_fifo_sz(struct sparx5 *sparx5, u32 portno, u32 speed) sparx5_port_fifo_sz() argument 516 sparx5_port_mux_set(struct sparx5 *sparx5, struct sparx5_port *port, struct sparx5_port_config *conf) sparx5_port_mux_set() argument 531 sparx5, sparx5_port_mux_set() local 542 sparx5, sparx5_port_mux_set() local 552 sparx5_port_max_tags_set(struct sparx5 *sparx5, struct sparx5_port *port) sparx5_port_max_tags_set() argument 600 sparx5_port_fwd_urg(struct sparx5 *sparx5, u32 speed) sparx5_port_fwd_urg() argument 635 sparx5_port_fc_setup(struct sparx5 *sparx5, struct sparx5_port *port, struct sparx5_port_config *conf) sparx5_port_fc_setup() argument 655 sparx5, sparx5_port_fc_setup() local 661 sparx5, sparx5_port_fc_setup() local 667 sparx5, sparx5_port_fc_setup() local 681 sparx5_serdes_set(struct sparx5 *sparx5, struct sparx5_port *port, struct sparx5_port_config *conf) sparx5_serdes_set() argument 727 sparx5_port_pcs_low_set(struct sparx5 *sparx5, struct sparx5_port *port, struct sparx5_port_config *conf) sparx5_port_pcs_low_set() argument 752 sparx5, sparx5_port_pcs_low_set() local 781 sparx5, sparx5_port_pcs_low_set() local 787 sparx5_port_pcs_high_set(struct sparx5 *sparx5, struct sparx5_port *port, struct sparx5_port_config *conf) sparx5_port_pcs_high_set() argument 844 sparx5_dev_switch(struct sparx5 *sparx5, int port, bool hsd) sparx5_dev_switch() argument 867 sparx5_port_config_low_set(struct sparx5 *sparx5, struct sparx5_port *port, struct sparx5_port_config *conf) sparx5_port_config_low_set() argument 893 sparx5, sparx5_port_config_low_set() local 899 sparx5, sparx5_port_config_low_set() local 921 sparx5_port_pcs_set(struct sparx5 *sparx5, struct sparx5_port *port, struct sparx5_port_config *conf) sparx5_port_pcs_set() argument 955 sparx5, sparx5_port_pcs_set() local 961 sparx5, sparx5_port_pcs_set() local 970 sparx5_port_config(struct sparx5 *sparx5, struct sparx5_port *port, struct sparx5_port_config *conf) sparx5_port_config() argument 994 sparx5, sparx5_port_config() local 1003 sparx5, sparx5_port_config() local 1013 sparx5_port_init(struct sparx5 *sparx5, struct sparx5_port *port, struct sparx5_port_config *conf) sparx5_port_init() argument 1063 sparx5, sparx5_port_init() local 1068 sparx5, sparx5_port_init() local 1145 struct sparx5 *sparx5 = port->sparx5; sparx5_port_enable() local 1150 sparx5, sparx5_port_enable() local 1170 struct sparx5 *sparx5 = port->sparx5; sparx5_port_qos_pcp_rewr_set() local 1202 REW_PCP_MAP_DE1_PCP_DE1, sparx5, sparx5_port_qos_pcp_rewr_set() local 1210 REW_PCP_MAP_DE0_PCP_DE0, sparx5, sparx5_port_qos_pcp_rewr_set() local 1225 struct sparx5 *sparx5 = port->sparx5; sparx5_port_qos_pcp_set() local 1234 sparx5, ANA_CL_QOS_CFG(port->portno)); sparx5_port_qos_pcp_set() local 1261 struct sparx5 *sparx5 = port->sparx5; sparx5_port_qos_dscp_rewr_set() local 1273 REW_DSCP_MAP_DSCP_UPDATE_ENA, sparx5, sparx5_port_qos_dscp_rewr_set() local 1282 ANA_CL_QOS_MAP_CFG_DSCP_REWR_VAL, sparx5, sparx5_port_qos_dscp_rewr_set() local 1292 struct sparx5 *sparx5 = port->sparx5; sparx5_port_qos_dscp_set() local 1303 ANA_CL_QOS_CFG_DSCP_KEEP_ENA, sparx5, sparx5_port_qos_dscp_set() local 1330 struct sparx5 *sparx5 = port->sparx5; sparx5_port_qos_default_set() local 1337 sparx5, ANA_CL_QOS_CFG(port->portno)); sparx5_port_qos_default_set() local 1344 sparx5, ANA_CL_VLAN_CTRL(port->portno)); sparx5_port_qos_default_set() local [all...] |
H A D | sparx5_switchdev.c | 19 struct sparx5 *sparx5; member 58 struct sparx5 *sparx5 = port->sparx5; in sparx5_attr_stp_state_set() local 60 if (!test_bit(port->portno, sparx5->bridge_mask)) { in sparx5_attr_stp_state_set() 68 set_bit(port->portno, sparx5->bridge_fwd_mask); in sparx5_attr_stp_state_set() 71 set_bit(port->portno, sparx5->bridge_lrn_mask); in sparx5_attr_stp_state_set() 76 clear_bit(port->portno, sparx5->bridge_fwd_mask); in sparx5_attr_stp_state_set() 77 clear_bit(port->portno, sparx5 in sparx5_attr_stp_state_set() 98 struct sparx5 *sparx5 = port->sparx5; sparx5_port_attr_mrouter_set() local 169 struct sparx5 *sparx5 = port->sparx5; sparx5_port_bridge_join() local 208 struct sparx5 *sparx5 = port->sparx5; sparx5_port_bridge_leave() local 253 struct sparx5 *sparx5 = port->sparx5; sparx5_port_add_addr() local 306 struct sparx5 *sparx5; sparx5_switchdev_bridge_fdb_event_work() local 416 struct sparx5 *sparx5 = sparx5_handle_port_vlan_add() local 434 sparx5_alloc_mdb_entry(struct sparx5 *sparx5, const unsigned char *addr, u16 vid, struct sparx5_mdb_entry **entry_out) sparx5_alloc_mdb_entry() argument 465 sparx5_free_mdb_entry(struct sparx5 *sparx5, const unsigned char *addr, u16 vid) sparx5_free_mdb_entry() argument 487 sparx5_mdb_get_entry(struct sparx5 *sparx5, const unsigned char *addr, u16 vid) sparx5_mdb_get_entry() argument 653 struct sparx5 *sparx5 = sparx5_handle_port_vlan_del() local [all...] |
H A D | sparx5_packet.c | 23 void sparx5_xtr_flush(struct sparx5 *sparx5, u8 grp) in sparx5_xtr_flush() argument 26 spx5_wr(QS_XTR_FLUSH_FLUSH_SET(BIT(grp)), sparx5, QS_XTR_FLUSH); in sparx5_xtr_flush() 32 spx5_wr(0, sparx5, QS_XTR_FLUSH); in sparx5_xtr_flush() 55 static void sparx5_xtr_grp(struct sparx5 *sparx5, u8 grp, bool byte_swap) in sparx5_xtr_grp() argument 68 ifh[i] = spx5_rd(sparx5, QS_XTR_RD(grp)); in sparx5_xtr_grp() 75 sparx5->ports[fi.src_port] : NULL; in sparx5_xtr_grp() 77 dev_err(sparx5->dev, "Data on inactive port %d\n", fi.src_port); in sparx5_xtr_grp() 78 sparx5_xtr_flush(sparx5, gr in sparx5_xtr_grp() 162 sparx5_inject(struct sparx5 *sparx5, u32 *ifh, struct sk_buff *skb, struct net_device *ndev) sparx5_inject() argument 229 struct sparx5 *sparx5 = port->sparx5; sparx5_port_xmit_impl() local 301 sparx5_manual_injection_mode(struct sparx5 *sparx5) sparx5_manual_injection_mode() argument 310 sparx5, QS_XTR_GRP_CFG(XTR_QUEUE)); sparx5_manual_injection_mode() local 313 sparx5, QS_INJ_GRP_CFG(INJ_QUEUE)); sparx5_manual_injection_mode() local [all...] |
H A D | sparx5_netdev.c | 116 err = sparx5_serdes_set(port->sparx5, port, &port->conf); in sparx5_port_open() 149 err = sparx5_serdes_set(port->sparx5, port, &port->conf); in sparx5_port_stop() 161 struct sparx5 *sparx5 = port->sparx5; in sparx5_set_rx_mode() local 163 if (!test_bit(port->portno, sparx5->bridge_mask)) in sparx5_set_rx_mode() 183 struct sparx5 *sparx5 = port->sparx5; in sparx5_set_mac_address() local 190 sparx5_mact_forget(sparx5, de in sparx5_set_mac_address() 205 struct sparx5 *sparx5 = sparx5_port->sparx5; sparx5_get_port_parent_id() local 217 struct sparx5 *sparx5 = sparx5_port->sparx5; sparx5_port_hwtstamp_get() local 232 struct sparx5 *sparx5 = sparx5_port->sparx5; sparx5_port_hwtstamp_set() local 261 sparx5_create_netdev(struct sparx5 *sparx5, u32 portno) sparx5_create_netdev() argument 288 sparx5_register_netdevs(struct sparx5 *sparx5) sparx5_register_netdevs() argument 307 sparx5_destroy_netdevs(struct sparx5 *sparx5) sparx5_destroy_netdevs() argument 326 sparx5_unregister_netdevs(struct sparx5 *sparx5) sparx5_unregister_netdevs() argument [all...] |
H A D | sparx5_calendar.c | 53 static u32 sparx5_target_bandwidth(struct sparx5 *sparx5) in sparx5_target_bandwidth() argument 55 switch (sparx5->target_ct) { in sparx5_target_bandwidth() 129 static enum sparx5_cal_bw sparx5_get_port_cal_speed(struct sparx5 *sparx5, in sparx5_get_port_cal_speed() argument 153 port = sparx5->ports[portno]; in sparx5_get_port_cal_speed() 160 int sparx5_config_auto_calendar(struct sparx5 *sparx5) in sparx5_config_auto_calendar() argument 170 max_core_bw = sparx5_clk_to_bandwidth(sparx5->coreclock); in sparx5_config_auto_calendar() 172 dev_err(sparx5 in sparx5_config_auto_calendar() 281 sparx5_dsm_calendar_calc(struct sparx5 *sparx5, u32 taxi, struct sparx5_calendar_data *data) sparx5_dsm_calendar_calc() argument 477 sparx5_dsm_calendar_check(struct sparx5 *sparx5, struct sparx5_calendar_data *data) sparx5_dsm_calendar_check() argument 533 sparx5_dsm_calendar_update(struct sparx5 *sparx5, u32 taxi, struct sparx5_calendar_data *data) sparx5_dsm_calendar_update() argument 545 sparx5, sparx5_dsm_calendar_update() local 566 sparx5_config_dsm_calendar(struct sparx5 *sparx5) sparx5_config_dsm_calendar() argument [all...] |
H A D | sparx5_ethtool.c | 201 static void sparx5_get_queue_sys_stats(struct sparx5 *sparx5, int portno) in sparx5_get_queue_sys_stats() argument 208 portstats = &sparx5->stats[portno * sparx5->num_stats]; in sparx5_get_queue_sys_stats() 209 mutex_lock(&sparx5->queue_stats_lock); in sparx5_get_queue_sys_stats() 210 spx5_wr(XQS_STAT_CFG_STAT_VIEW_SET(portno), sparx5, XQS_STAT_CFG); in sparx5_get_queue_sys_stats() local 214 sparx5_update_counter(stats, spx5_rd(sparx5, XQS_CNT(addr))); in sparx5_get_queue_sys_stats() 218 sparx5_update_counter(stats, spx5_rd(sparx5, XQS_CNT(addr))); in sparx5_get_queue_sys_stats() 222 sparx5_update_counter(stats, spx5_rd(sparx5, XQS_CNT(addr))); in sparx5_get_queue_sys_stats() 224 spx5_rd(sparx5, XQS_CN in sparx5_get_queue_sys_stats() 230 sparx5_get_ana_ac_stats_stats(struct sparx5 *sparx5, int portno) sparx5_get_ana_ac_stats_stats() argument 505 sparx5_get_device_stats(struct sparx5 *sparx5, int portno) sparx5_get_device_stats() argument 788 sparx5_get_asm_stats(struct sparx5 *sparx5, int portno) sparx5_get_asm_stats() argument 815 struct sparx5 *sparx5 = port->sparx5; sparx5_get_eth_phy_stats() local 840 struct sparx5 *sparx5 = port->sparx5; sparx5_get_eth_mac_stats() local 908 struct sparx5 *sparx5 = port->sparx5; sparx5_get_eth_mac_ctrl_stats() local 940 struct sparx5 *sparx5 = port->sparx5; sparx5_get_eth_rmon_stats() local 998 struct sparx5 *sparx5 = port->sparx5; sparx5_get_sset_count() local 1008 struct sparx5 *sparx5 = port->sparx5; sparx5_get_sset_strings() local 1023 struct sparx5 *sparx5 = port->sparx5; sparx5_get_sset_data() local 1053 struct sparx5 *sparx5 = port->sparx5; sparx5_get_stats64() local 1112 sparx5_update_port_stats(struct sparx5 *sparx5, int portno) sparx5_update_port_stats() argument 1122 sparx5_update_stats(struct sparx5 *sparx5) sparx5_update_stats() argument 1134 struct sparx5 *sparx5 = container_of(dwork, sparx5_check_stats_work() local 1160 sparx5_config_stats(struct sparx5 *sparx5) sparx5_config_stats() argument 1169 sparx5_config_port_stats(struct sparx5 *sparx5, int portno) sparx5_config_port_stats() argument 1183 sparx5, ANA_AC_PORT_STAT_CFG(portno, SPX5_PORT_POLICER_DROPS)); sparx5_config_port_stats() local 1190 struct sparx5 *sparx5 = port->sparx5; sparx5_get_ts_info() local 1233 sparx_stats_init(struct sparx5 *sparx5) sparx_stats_init() argument [all...] |
H A D | sparx5_police.c | 10 static int sparx5_policer_service_conf_set(struct sparx5 *sparx5, in sparx5_policer_service_conf_set() argument 23 pup_tokens = sparx5_sdlb_pup_token_get(sparx5, g->pup_interval, rate); in sparx5_policer_service_conf_set() 25 sparx5_sdlb_pup_token_get(sparx5, g->pup_interval, g->max_rate); in sparx5_policer_service_conf_set() 29 spx5_wr(ANA_AC_SDLB_PUP_TOKENS_PUP_TOKENS_SET(pup_tokens), sparx5, in sparx5_policer_service_conf_set() local 33 ANA_AC_SDLB_INH_CTRL_PUP_TOKENS_MAX, sparx5, in sparx5_policer_service_conf_set() local 37 sparx5, ANA_AC_SDLB_THRES(idx, 0)); in sparx5_policer_service_conf_set() local 42 int sparx5_policer_conf_set(struct sparx5 *sparx5, struct sparx5_policer *pol) in sparx5_policer_conf_set() argument 47 return sparx5_policer_service_conf_set(sparx5, po in sparx5_policer_conf_set() [all...] |
H A D | sparx5_vcap_debugfs.c | 76 static void sparx5_vcap_is0_port_keys(struct sparx5 *sparx5, in sparx5_vcap_is0_port_keys() argument 90 value = spx5_rd(sparx5, in sparx5_vcap_is0_port_keys() 119 static void sparx5_vcap_is2_port_keys(struct sparx5 *sparx5, in sparx5_vcap_is2_port_keys() argument 133 value = spx5_rd(sparx5, ANA_ACL_VCAP_S2_CFG(port->portno)); in sparx5_vcap_is2_port_keys() 141 value = spx5_rd(sparx5, in sparx5_vcap_is2_port_keys() 232 static void sparx5_vcap_is2_port_stickies(struct sparx5 *sparx5, in sparx5_vcap_is2_port_stickies() argument 243 value = spx5_rd(sparx5, ANA_ACL_SEC_LOOKUP_STICK in sparx5_vcap_is2_port_stickies() 287 sparx5_vcap_es0_port_keys(struct sparx5 *sparx5, struct vcap_admin *admin, struct sparx5_port *port, struct vcap_output_print *out) sparx5_vcap_es0_port_keys() argument 325 sparx5_vcap_es2_port_keys(struct sparx5 *sparx5, struct vcap_admin *admin, struct sparx5_port *port, struct vcap_output_print *out) sparx5_vcap_es2_port_keys() argument 405 sparx5_vcap_es2_port_stickies(struct sparx5 *sparx5, struct vcap_admin *admin, struct vcap_output_print *out) sparx5_vcap_es2_port_stickies() argument 444 struct sparx5 *sparx5 = port->sparx5; sparx5_port_info() local [all...] |
H A D | sparx5_tc_matchall.c | 20 struct sparx5 *sparx5; in sparx5_tc_matchall_replace() local 30 sparx5 = port->sparx5; in sparx5_tc_matchall_replace() 33 err = vcap_enable_lookups(sparx5->vcap_ctrl, ndev, in sparx5_tc_matchall_replace() 70 struct sparx5 *sparx5; in sparx5_tc_matchall_destroy() local 73 sparx5 = port->sparx5; in sparx5_tc_matchall_destroy() 75 err = vcap_enable_lookups(sparx5 in sparx5_tc_matchall_destroy() [all...] |
H A D | sparx5_port.h | 73 int sparx5_port_init(struct sparx5 *sparx5, 77 int sparx5_port_config(struct sparx5 *sparx5, 81 int sparx5_port_pcs_set(struct sparx5 *sparx5, 85 int sparx5_serdes_set(struct sparx5 *sparx5, 98 int sparx5_get_port_status(struct sparx5 *sparx5, [all...] |
H A D | Makefile | 6 obj-$(CONFIG_SPARX5_SWITCH) += sparx5-switch.o 8 sparx5-switch-y := sparx5_main.o sparx5_packet.o \ 15 sparx5-switch-$(CONFIG_SPARX5_DCB) += sparx5_dcb.o 16 sparx5-switch-$(CONFIG_DEBUG_FS) += sparx5_vcap_debugfs.o
|
H A D | sparx5_tc_flower.c | 388 vctrl = port->sparx5->vcap_ctrl; in sparx5_tc_select_protocol_keyset() 751 static int sparx5_tc_flower_psfp_setup(struct sparx5 *sparx5, in sparx5_tc_flower_psfp_setup() argument 777 ret = sparx5_psfp_sg_add(sparx5, sg_idx, sg, &psfp_sgid); in sparx5_tc_flower_psfp_setup() 783 ret = sparx5_psfp_fm_add(sparx5, pol_idx, fm, &psfp_fmid); in sparx5_tc_flower_psfp_setup() 792 ret = sparx5_psfp_sf_add(sparx5, sf, &psfp_sfid); in sparx5_tc_flower_psfp_setup() 797 sparx5_isdx_conf_set(sparx5, psfp_sfid, psfp_sfid, psfp_fmid); in sparx5_tc_flower_psfp_setup() 1089 struct sparx5 *sparx5 = port->sparx5; in sparx5_tc_flower_replace() local 1230 sparx5_tc_free_psfp_resources(struct sparx5 *sparx5, struct vcap_rule *vrule) sparx5_tc_free_psfp_resources() argument 1272 struct sparx5 *sparx5 = port->sparx5; sparx5_tc_free_rule_resources() local [all...] |
H A D | sparx5_pgid.c | 4 void sparx5_pgid_init(struct sparx5 *spx5) in sparx5_pgid_init() 18 int sparx5_pgid_alloc_mcast(struct sparx5 *spx5, u16 *idx) in sparx5_pgid_alloc_mcast() 36 int sparx5_pgid_free(struct sparx5 *spx5, u16 idx) in sparx5_pgid_free()
|
H A D | sparx5_qos.h | 62 int sparx5_qos_init(struct sparx5 *sparx5);
|
H A D | sparx5_phylink.c | 63 err = sparx5_port_config(port->sparx5, port, &conf); in sparx5_phylink_mac_link_up() 86 sparx5_get_port_status(port->sparx5, port, &status); in sparx5_pcs_get_state() 123 ret = sparx5_port_pcs_set(port->sparx5, port, &conf); in sparx5_pcs_config()
|