Lines Matching +full:lan966x +full:- +full:serdes

1 /* SPDX-License-Identifier: GPL-2.0+ */
46 #define PGID_CPU (PGID_AGGR - 6)
47 #define PGID_UC (PGID_AGGR - 5)
48 #define PGID_BC (PGID_AGGR - 4)
49 #define PGID_MC (PGID_AGGR - 3)
50 #define PGID_MCIPV4 (PGID_AGGR - 2)
51 #define PGID_MCIPV6 (PGID_AGGR - 1)
53 /* Non-reserved PGIDs, used for general purpose */
87 #define SE_IDX_QUEUE 0 /* 0-79 : Queue scheduler elements */
88 #define SE_IDX_PORT 80 /* 80-89 : Port schedular elements */
123 struct lan966x *lan966x; member
165 struct lan966x *lan966x; member
192 struct lan966x *lan966x; member
204 ((struct lan966x_skb_cb *)((skb)->cb))
206 struct lan966x { struct
297 struct lan966x *lan966x; member
311 struct phy *serdes; member
336 bool lan966x_hw_offload(struct lan966x *lan966x, u32 port, struct sk_buff *skb);
343 int lan966x_stats_init(struct lan966x *lan966x);
353 int lan966x_mac_ip_learn(struct lan966x *lan966x,
358 int lan966x_mac_learn(struct lan966x *lan966x, int port,
362 int lan966x_mac_forget(struct lan966x *lan966x,
366 int lan966x_mac_cpu_learn(struct lan966x *lan966x, const char *addr, u16 vid);
367 int lan966x_mac_cpu_forget(struct lan966x *lan966x, const char *addr, u16 vid);
368 void lan966x_mac_init(struct lan966x *lan966x);
369 void lan966x_mac_set_ageing(struct lan966x *lan966x,
371 int lan966x_mac_del_entry(struct lan966x *lan966x,
374 int lan966x_mac_add_entry(struct lan966x *lan966x,
378 void lan966x_mac_lag_replace_port_entry(struct lan966x *lan966x,
381 void lan966x_mac_lag_remove_port_entry(struct lan966x *lan966x,
383 void lan966x_mac_purge_entries(struct lan966x *lan966x);
384 irqreturn_t lan966x_mac_irq_handler(struct lan966x *lan966x);
386 void lan966x_vlan_init(struct lan966x *lan966x);
388 bool lan966x_vlan_cpu_member_cpu_vlan_mask(struct lan966x *lan966x, u16 vid);
400 void lan966x_vlan_cpu_add_vlan(struct lan966x *lan966x, u16 vid);
401 void lan966x_vlan_cpu_del_vlan(struct lan966x *lan966x, u16 vid);
403 void lan966x_fdb_write_entries(struct lan966x *lan966x, u16 vid);
404 void lan966x_fdb_erase_entries(struct lan966x *lan966x, u16 vid);
405 int lan966x_fdb_init(struct lan966x *lan966x);
406 void lan966x_fdb_deinit(struct lan966x *lan966x);
407 void lan966x_fdb_flush_workqueue(struct lan966x *lan966x);
413 void lan966x_mdb_init(struct lan966x *lan966x);
414 void lan966x_mdb_deinit(struct lan966x *lan966x);
419 void lan966x_mdb_erase_entries(struct lan966x *lan966x, u16 vid);
420 void lan966x_mdb_write_entries(struct lan966x *lan966x, u16 vid);
421 void lan966x_mdb_clear_entries(struct lan966x *lan966x);
422 void lan966x_mdb_restore_entries(struct lan966x *lan966x);
424 int lan966x_ptp_init(struct lan966x *lan966x);
425 void lan966x_ptp_deinit(struct lan966x *lan966x);
428 void lan966x_ptp_rxtstamp(struct lan966x *lan966x, struct sk_buff *skb,
440 int lan966x_fdma_change_mtu(struct lan966x *lan966x);
441 void lan966x_fdma_netdev_init(struct lan966x *lan966x, struct net_device *dev);
442 void lan966x_fdma_netdev_deinit(struct lan966x *lan966x, struct net_device *dev);
443 int lan966x_fdma_init(struct lan966x *lan966x);
444 void lan966x_fdma_deinit(struct lan966x *lan966x);
461 u32 lan966x_lag_get_mask(struct lan966x *lan966x, struct net_device *bond);
472 void lan966x_update_fwd_mask(struct lan966x *lan966x);
480 void lan966x_taprio_init(struct lan966x *lan966x);
481 void lan966x_taprio_deinit(struct lan966x *lan966x);
545 static inline u32 lan_rd(struct lan966x *lan966x, int id, int tinst, int tcnt, in lan_rd() argument
549 return readl(lan_addr(lan966x->regs, id, tinst, tcnt, gbase, ginst, in lan_rd()
553 static inline void lan_wr(u32 val, struct lan966x *lan966x, in lan_wr() argument
558 writel(val, lan_addr(lan966x->regs, id, tinst, tcnt, in lan_wr()
563 static inline void lan_rmw(u32 val, u32 mask, struct lan966x *lan966x, in lan_rmw() argument
570 nval = readl(lan_addr(lan966x->regs, id, tinst, tcnt, gbase, ginst, in lan_rmw()
573 writel(nval, lan_addr(lan966x->regs, id, tinst, tcnt, gbase, ginst, in lan_rmw()