/linux-6.3-rc2/drivers/net/ethernet/microchip/sparx5/ |
A D | sparx5_main.c | 391 sparx5, in sparx5_init_switchcore() 396 sparx5, in sparx5_init_switchcore() 481 sparx5->coreclock, sparx5->target_ct); in sparx5_init_coreclock() 501 sparx5, in sparx5_init_coreclock() 508 sparx5, in sparx5_init_coreclock() 513 sparx5, in sparx5_init_coreclock() 518 sparx5, in sparx5_init_coreclock() 546 static int sparx5_qlim_set(struct sparx5 *sparx5) in sparx5_qlim_set() argument 594 static int sparx5_start(struct sparx5 *sparx5) in sparx5_start() argument 745 struct sparx5 *sparx5; in mchp_sparx5_probe() local [all …]
|
A D | sparx5_mactable.c | 59 static void sparx5_mact_select(struct sparx5 *sparx5, in sparx5_mact_select() argument 121 struct sparx5 *sparx5 = port->sparx5; in sparx5_mc_unsync() local 129 struct sparx5 *sparx5 = port->sparx5; in sparx5_mc_sync() local 134 static int sparx5_mact_get(struct sparx5 *sparx5, in sparx5_mact_get() argument 159 bool sparx5_mact_getnext(struct sparx5 *sparx5, in sparx5_mact_getnext() argument 189 int sparx5_mact_find(struct sparx5 *sparx5, in sparx5_mact_find() argument 218 int sparx5_mact_forget(struct sparx5 *sparx5, in sparx5_mact_forget() argument 289 int sparx5_add_mact_entry(struct sparx5 *sparx5, in sparx5_add_mact_entry() argument 336 int sparx5_del_mact_entry(struct sparx5 *sparx5, in sparx5_del_mact_entry() argument 423 struct sparx5 *sparx5 = container_of(del_work, struct sparx5, in sparx5_mact_pull_work() local [all …]
|
A D | sparx5_sdlb.c | 23 int sparx5_sdlb_clk_hz_get(struct sparx5 *sparx5) in sparx5_sdlb_clk_hz_get() argument 59 static void sparx5_sdlb_group_disable(struct sparx5 *sparx5, u32 group) in sparx5_sdlb_group_disable() argument 66 static void sparx5_sdlb_group_enable(struct sparx5 *sparx5, u32 group) in sparx5_sdlb_group_enable() argument 73 static u32 sparx5_sdlb_group_get_first(struct sparx5 *sparx5, u32 group) in sparx5_sdlb_group_get_first() argument 82 static u32 sparx5_sdlb_group_get_next(struct sparx5 *sparx5, u32 group, in sparx5_sdlb_group_get_next() argument 92 static bool sparx5_sdlb_group_is_first(struct sparx5 *sparx5, u32 group, in sparx5_sdlb_group_is_first() argument 98 static bool sparx5_sdlb_group_is_last(struct sparx5 *sparx5, u32 group, in sparx5_sdlb_group_is_last() argument 104 static bool sparx5_sdlb_group_is_empty(struct sparx5 *sparx5, u32 group) in sparx5_sdlb_group_is_empty() argument 113 static u32 sparx5_sdlb_group_get_last(struct sparx5 *sparx5, u32 group) in sparx5_sdlb_group_get_last() argument 258 int sparx5_sdlb_group_add(struct sparx5 *sparx5, u32 group, u32 idx) in sparx5_sdlb_group_add() argument [all …]
|
A D | sparx5_ptp.c | 27 static u64 sparx5_ptp_get_1ppm(struct sparx5 *sparx5) in sparx5_ptp_get_1ppm() argument 79 struct sparx5 *sparx5 = port->sparx5; in sparx5_ptp_hwtstamp_set() local 142 struct sparx5 *sparx5 = port->sparx5; in sparx5_ptp_hwtstamp_get() local 225 struct sparx5 *sparx5 = port->sparx5; in sparx5_ptp_txtstamp_request() local 264 struct sparx5 *sparx5 = port->sparx5; in sparx5_ptp_txtstamp_release() local 307 struct sparx5 *sparx5 = args; in sparx5_ptp_irq_handler() local 396 struct sparx5 *sparx5 = phc->sparx5; in sparx5_ptp_adjfine() local 444 struct sparx5 *sparx5 = phc->sparx5; in sparx5_ptp_settime64() local 482 struct sparx5 *sparx5 = phc->sparx5; in sparx5_ptp_gettime64() local 519 struct sparx5 *sparx5 = phc->sparx5; in sparx5_ptp_adjtime() local [all …]
|
A D | sparx5_psfp.c | 55 u32 sparx5_psfp_isdx_get_sf(struct sparx5 *sparx5, u32 isdx) in sparx5_psfp_isdx_get_sf() argument 61 u32 sparx5_psfp_isdx_get_fm(struct sparx5 *sparx5, u32 isdx) in sparx5_psfp_isdx_get_fm() argument 67 u32 sparx5_psfp_sf_get_sg(struct sparx5 *sparx5, u32 sfid) in sparx5_psfp_sf_get_sg() argument 88 static int sparx5_psfp_sgid_get_status(struct sparx5 *sparx5) in sparx5_psfp_sgid_get_status() argument 187 static int sparx5_sdlb_conf_set(struct sparx5 *sparx5, in sparx5_sdlb_conf_set() argument 217 int sparx5_psfp_sf_del(struct sparx5 *sparx5, u32 id) in sparx5_psfp_sf_del() argument 226 int sparx5_psfp_sg_add(struct sparx5 *sparx5, u32 uidx, in sparx5_psfp_sg_add() argument 251 int sparx5_psfp_sg_del(struct sparx5 *sparx5, u32 id) in sparx5_psfp_sg_del() argument 266 int sparx5_psfp_fm_add(struct sparx5 *sparx5, u32 uidx, in sparx5_psfp_fm_add() argument 295 int sparx5_psfp_fm_del(struct sparx5 *sparx5, u32 id) in sparx5_psfp_fm_del() argument [all …]
|
A D | sparx5_main.h | 169 struct sparx5 *sparx5; member 208 struct sparx5 *sparx5; member 318 int sparx5_fdma_start(struct sparx5 *sparx5); 319 int sparx5_fdma_stop(struct sparx5 *sparx5); 329 int sparx5_mact_find(struct sparx5 *sparx5, 331 int sparx5_mact_forget(struct sparx5 *sparx5, 343 void sparx5_mact_init(struct sparx5 *sparx5); 363 int sparx_stats_init(struct sparx5 *sparx5); 367 int sparx5_dcb_init(struct sparx5 *sparx5); 388 int sparx5_ptp_init(struct sparx5 *sparx5); [all …]
|
A D | sparx5_vlan.c | 10 static int sparx5_vlant_set_mask(struct sparx5 *sparx5, u16 vid) in sparx5_vlant_set_mask() argument 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() 51 sparx5, in sparx5_vlan_port_setup() 58 struct sparx5 *sparx5 = port->sparx5; in sparx5_vlan_vid_add() local 89 struct sparx5 *sparx5 = port->sparx5; in sparx5_vlan_vid_del() local 120 struct sparx5 *sparx5 = port->sparx5; in sparx5_pgid_update_mask() local 155 void sparx5_update_fwd(struct sparx5 *sparx5) in sparx5_update_fwd() argument 199 void sparx5_vlan_port_apply(struct sparx5 *sparx5, in sparx5_vlan_port_apply() argument [all …]
|
A D | sparx5_fdma.c | 128 sparx5, in sparx5_fdma_rx_activate() 261 struct sparx5 *sparx5 = container_of(rx, struct sparx5, rx); in sparx5_fdma_napi_callback() local 464 struct sparx5 *sparx5 = args; in sparx5_fdma_handler() local 513 sparx5, in sparx5_fdma_injection_mode() 519 sparx5, in sparx5_fdma_injection_mode() 528 sparx5, in sparx5_fdma_injection_mode() 536 sparx5, in sparx5_fdma_injection_mode() 547 int sparx5_fdma_start(struct sparx5 *sparx5) in sparx5_fdma_start() argument 585 int sparx5_fdma_stop(struct sparx5 *sparx5) in sparx5_fdma_stop() argument 591 sparx5_fdma_rx_deactivate(sparx5, &sparx5->rx); in sparx5_fdma_stop() [all …]
|
A D | sparx5_qos.c | 24 void sparx5_new_base_time(struct sparx5 *sparx5, const u32 cycle_time, in sparx5_new_base_time() argument 94 static u32 sparx5_lg_get_first(struct sparx5 *sparx5, u32 layer, u32 group) in sparx5_lg_get_first() argument 102 static u32 sparx5_lg_get_next(struct sparx5 *sparx5, u32 layer, u32 group, in sparx5_lg_get_next() argument 112 static u32 sparx5_lg_get_last(struct sparx5 *sparx5, u32 layer, u32 group) in sparx5_lg_get_last() argument 127 static bool sparx5_lg_is_last(struct sparx5 *sparx5, u32 layer, u32 group, in sparx5_lg_is_last() argument 153 static void sparx5_lg_enable(struct sparx5 *sparx5, u32 layer, u32 group, in sparx5_lg_enable() argument 159 static void sparx5_lg_disable(struct sparx5 *sparx5, u32 layer, u32 group) in sparx5_lg_disable() argument 164 static int sparx5_lg_get_group_by_index(struct sparx5 *sparx5, u32 layer, in sparx5_lg_get_group_by_index() argument 330 struct sparx5 *sparx5 = port->sparx5; in sparx5_shaper_conf_set() local 386 static int sparx5_leak_groups_init(struct sparx5 *sparx5) in sparx5_leak_groups_init() argument [all …]
|
A D | sparx5_vcap_impl.c | 427 struct sparx5 *sparx5 = port->sparx5; in sparx5_vcap_is0_get_port_keysets() local 481 struct sparx5 *sparx5 = port->sparx5; in sparx5_vcap_is2_get_port_keysets() local 610 struct sparx5 *sparx5 = port->sparx5; in sparx5_vcap_es0_get_port_keysets() local 635 struct sparx5 *sparx5 = port->sparx5; in sparx5_vcap_es2_get_port_keysets() local 1110 struct sparx5 *sparx5 = port->sparx5; in sparx5_vcap_cache_write() local 1300 struct sparx5 *sparx5 = port->sparx5; in sparx5_vcap_cache_read() local 1327 struct sparx5 *sparx5 = port->sparx5; in sparx5_vcap_range_init() local 1395 struct sparx5 *sparx5 = port->sparx5; in sparx5_vcap_update() local 1479 struct sparx5 *sparx5 = port->sparx5; in sparx5_vcap_move() local 1773 int sparx5_vcap_init(struct sparx5 *sparx5) in sparx5_vcap_init() argument [all …]
|
A D | sparx5_port.c | 160 int sparx5_get_port_status(struct sparx5 *sparx5, in sparx5_get_port_status() argument 681 int sparx5_serdes_set(struct sparx5 *sparx5, in sparx5_serdes_set() argument 921 int sparx5_port_pcs_set(struct sparx5 *sparx5, in sparx5_port_pcs_set() argument 970 int sparx5_port_config(struct sparx5 *sparx5, in sparx5_port_config() argument 1013 int sparx5_port_init(struct sparx5 *sparx5, in sparx5_port_init() argument 1145 struct sparx5 *sparx5 = port->sparx5; in sparx5_port_enable() local 1170 struct sparx5 *sparx5 = port->sparx5; in sparx5_port_qos_pcp_rewr_set() local 1225 struct sparx5 *sparx5 = port->sparx5; in sparx5_port_qos_pcp_set() local 1261 struct sparx5 *sparx5 = port->sparx5; in sparx5_port_qos_dscp_rewr_set() local 1292 struct sparx5 *sparx5 = port->sparx5; in sparx5_port_qos_dscp_set() local [all …]
|
A D | sparx5_switchdev.c | 19 struct sparx5 *sparx5; member 58 struct sparx5 *sparx5 = port->sparx5; in sparx5_attr_stp_state_set() local 98 struct sparx5 *sparx5 = port->sparx5; in sparx5_port_attr_mrouter_set() local 169 struct sparx5 *sparx5 = port->sparx5; in sparx5_port_bridge_join() local 208 struct sparx5 *sparx5 = port->sparx5; in sparx5_port_bridge_leave() local 253 struct sparx5 *sparx5 = port->sparx5; in sparx5_port_add_addr() local 306 struct sparx5 *sparx5; in sparx5_switchdev_bridge_fdb_event_work() local 313 sparx5 = switchdev_work->sparx5; in sparx5_switchdev_bridge_fdb_event_work() 316 sparx5 = switchdev_work->sparx5; in sparx5_switchdev_bridge_fdb_event_work() 416 struct sparx5 *sparx5 = in sparx5_handle_port_vlan_add() local [all …]
|
A D | sparx5_packet.c | 23 void sparx5_xtr_flush(struct sparx5 *sparx5, u8 grp) in sparx5_xtr_flush() argument 55 static void sparx5_xtr_grp(struct sparx5 *sparx5, u8 grp, bool byte_swap) in sparx5_xtr_grp() argument 162 static int sparx5_inject(struct sparx5 *sparx5, in sparx5_inject() argument 229 struct sparx5 *sparx5 = port->sparx5; in sparx5_port_xmit_impl() local 259 sparx5->tx.packets++; in sparx5_port_xmit_impl() 269 sparx5->tx.dropped++; in sparx5_port_xmit_impl() 292 port->sparx5, in sparx5_injection_timeout() 299 int sparx5_manual_injection_mode(struct sparx5 *sparx5) in sparx5_manual_injection_mode() argument 324 sparx5, in sparx5_manual_injection_mode() 330 sparx5, in sparx5_manual_injection_mode() [all …]
|
A D | sparx5_netdev.c | 161 struct sparx5 *sparx5 = port->sparx5; in sparx5_set_rx_mode() local 183 struct sparx5 *sparx5 = port->sparx5; in sparx5_set_mac_address() local 205 struct sparx5 *sparx5 = sparx5_port->sparx5; in sparx5_get_port_parent_id() local 217 struct sparx5 *sparx5 = sparx5_port->sparx5; in sparx5_port_ioctl() local 250 struct net_device *sparx5_create_netdev(struct sparx5 *sparx5, u32 portno) in sparx5_create_netdev() argument 266 spx5_port->sparx5 = sparx5; in sparx5_create_netdev() 277 int sparx5_register_netdevs(struct sparx5 *sparx5) in sparx5_register_netdevs() argument 286 dev_err(sparx5->dev, in sparx5_register_netdevs() 296 void sparx5_destroy_netdevs(struct sparx5 *sparx5) in sparx5_destroy_netdevs() argument 315 void sparx5_unregister_netdevs(struct sparx5 *sparx5) in sparx5_unregister_netdevs() argument [all …]
|
A D | sparx5_ethtool.c | 815 struct sparx5 *sparx5 = port->sparx5; in sparx5_get_eth_phy_stats() local 840 struct sparx5 *sparx5 = port->sparx5; in sparx5_get_eth_mac_stats() local 908 struct sparx5 *sparx5 = port->sparx5; in sparx5_get_eth_mac_ctrl_stats() local 940 struct sparx5 *sparx5 = port->sparx5; in sparx5_get_eth_rmon_stats() local 998 struct sparx5 *sparx5 = port->sparx5; in sparx5_get_sset_count() local 1008 struct sparx5 *sparx5 = port->sparx5; in sparx5_get_sset_strings() local 1023 struct sparx5 *sparx5 = port->sparx5; in sparx5_get_sset_data() local 1053 struct sparx5 *sparx5 = port->sparx5; in sparx5_get_stats64() local 1190 struct sparx5 *sparx5 = port->sparx5; in sparx5_get_ts_info() local 1233 int sparx_stats_init(struct sparx5 *sparx5) in sparx_stats_init() argument [all …]
|
A D | sparx5_calendar.c | 53 static u32 sparx5_target_bandwidth(struct sparx5 *sparx5) in sparx5_target_bandwidth() argument 160 int sparx5_config_auto_calendar(struct sparx5 *sparx5) in sparx5_config_auto_calendar() argument 224 sparx5, in sparx5_config_auto_calendar() 230 sparx5, in sparx5_config_auto_calendar() 281 static int sparx5_dsm_calendar_calc(struct sparx5 *sparx5, u32 taxi, in sparx5_dsm_calendar_calc() argument 477 static int sparx5_dsm_calendar_check(struct sparx5 *sparx5, in sparx5_dsm_calendar_check() argument 540 sparx5, in sparx5_dsm_calendar_update() 545 sparx5, in sparx5_dsm_calendar_update() 549 sparx5, in sparx5_dsm_calendar_update() 553 sparx5, in sparx5_dsm_calendar_update() [all …]
|
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() 33 ANA_AC_SDLB_INH_CTRL_PUP_TOKENS_MAX, sparx5, in sparx5_policer_service_conf_set() 37 sparx5, ANA_AC_SDLB_THRES(idx, 0)); in sparx5_policer_service_conf_set() 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, pol); in sparx5_policer_conf_set()
|
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 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 287 static void sparx5_vcap_es0_port_keys(struct sparx5 *sparx5, in sparx5_vcap_es0_port_keys() argument 299 value = spx5_rd(sparx5, REW_ES0_CTRL); in sparx5_vcap_es0_port_keys() 325 static void sparx5_vcap_es2_port_keys(struct sparx5 *sparx5, in sparx5_vcap_es2_port_keys() argument 405 static void sparx5_vcap_es2_port_stickies(struct sparx5 *sparx5, in sparx5_vcap_es2_port_stickies() argument 444 struct sparx5 *sparx5 = port->sparx5; in sparx5_port_info() local [all …]
|
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->vcap_ctrl, ndev, in sparx5_tc_matchall_destroy()
|
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, 103 int sparx5_port_fwd_urg(struct sparx5 *sparx5, u32 speed);
|
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
|
A D | sparx5_tc_flower.c | 380 vctrl = port->sparx5->vcap_ctrl; in sparx5_tc_select_protocol_keyset() 743 static int sparx5_tc_flower_psfp_setup(struct sparx5 *sparx5, in sparx5_tc_flower_psfp_setup() argument 1014 struct sparx5 *sparx5 = port->sparx5; in sparx5_tc_flower_replace() local 1022 vctrl = port->sparx5->vcap_ctrl; in sparx5_tc_flower_replace() 1153 static void sparx5_tc_free_psfp_resources(struct sparx5 *sparx5, in sparx5_tc_free_psfp_resources() argument 1183 if (sparx5_psfp_sf_del(sparx5, sfid) < 0) in sparx5_tc_free_psfp_resources() 1187 sparx5_isdx_conf_set(sparx5, isdx, 0, 0); in sparx5_tc_free_psfp_resources() 1195 struct sparx5 *sparx5 = port->sparx5; in sparx5_tc_free_rule_resources() local 1217 vctrl = port->sparx5->vcap_ctrl; in sparx5_tc_flower_destroy() 1253 vctrl = port->sparx5->vcap_ctrl; in sparx5_tc_flower_stats() [all …]
|
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()
|
/linux-6.3-rc2/arch/arm64/boot/dts/microchip/ |
A D | sparx5.dtsi | 8 #include <dt-bindings/clock/microchip,sparx5.h> 11 compatible = "microchip,sparx5"; 84 compatible = "microchip,sparx5-dpll"; 175 compatible = "microchip,sparx5-spi"; 208 compatible = "microchip,sparx5-pinctrl"; 301 compatible = "microchip,sparx5-sgpio"; 331 compatible = "microchip,sparx5-sgpio"; 361 compatible = "microchip,sparx5-sgpio"; 417 compatible = "microchip,sparx5-temp"; 462 compatible = "microchip,sparx5-serdes"; [all …]
|
/linux-6.3-rc2/Documentation/devicetree/bindings/arm/ |
A D | microchip,sparx5.yaml | 4 $id: http://devicetree.org/schemas/arm/microchip,sparx5.yaml# 31 - const: microchip,sparx5-pcb125 32 - const: microchip,sparx5 38 - const: microchip,sparx5-pcb134 39 - const: microchip,sparx5 45 - const: microchip,sparx5-pcb135 46 - const: microchip,sparx5
|