Lines Matching full:sw
30 struct prestera_switch *sw; member
97 prestera_bridge_find(const struct prestera_switch *sw, in prestera_bridge_find() argument
102 list_for_each_entry(bridge, &sw->swdev->bridge_list, head) in prestera_bridge_find()
123 prestera_bridge_port_find(struct prestera_switch *sw, in prestera_bridge_port_find() argument
132 bridge = prestera_bridge_find(sw, br_dev); in prestera_bridge_port_find()
288 return prestera_hw_lag_fdb_add(port->sw, prestera_port_lag_id(port), in prestera_fdb_add()
298 return prestera_hw_lag_fdb_del(port->sw, prestera_port_lag_id(port), in prestera_fdb_del()
308 return prestera_hw_fdb_flush_lag_vlan(port->sw, prestera_port_lag_id(port), in prestera_fdb_flush_port_vlan()
317 return prestera_hw_fdb_flush_lag(port->sw, prestera_port_lag_id(port), in prestera_fdb_flush_port()
408 prestera_hw_fdb_flush_vlan(port->sw, vid, fdb_flush_mode); in prestera_port_vlan_bridge_leave()
453 err = prestera_hw_bridge_create(swdev->sw, &bridge_id); in prestera_bridge_create()
484 prestera_hw_bridge_delete(swdev->sw, bridge->bridge_id); in prestera_bridge_destroy()
652 struct prestera_switchdev *swdev = port->sw->swdev; in prestera_bridge_port_join()
740 struct prestera_switchdev *swdev = port->sw->swdev; in prestera_bridge_port_leave()
774 br_port = prestera_bridge_port_by_dev(port->sw->swdev, dev); in prestera_port_attr_br_flags_set()
788 struct prestera_switch *sw = port->sw; in prestera_port_attr_br_ageing_set() local
794 return prestera_hw_switch_ageing_set(sw, ageing_time_ms); in prestera_port_attr_br_ageing_set()
801 struct prestera_switch *sw = port->sw; in prestera_port_attr_br_vlan_set() local
804 bridge = prestera_bridge_by_dev(sw->swdev, dev); in prestera_port_attr_br_vlan_set()
841 br_port = prestera_bridge_port_by_dev(port->sw->swdev, dev); in prestera_port_attr_stp_state_set()
879 struct prestera_switch *sw; in prestera_br_port_lag_mdb_mc_enable_sync() local
887 sw = pr_port->sw; in prestera_br_port_lag_mdb_mc_enable_sync()
888 err = prestera_lag_id(sw, br_port->dev, &lag_id); in prestera_br_port_lag_mdb_mc_enable_sync()
892 list_for_each_entry(pr_port, &sw->port_list, list) { in prestera_br_port_lag_mdb_mc_enable_sync()
1094 struct prestera_switch *sw = port->sw; in prestera_port_attr_br_mc_disabled_set() local
1097 br_dev = prestera_bridge_find(sw, orig_dev); in prestera_port_attr_br_mc_disabled_set()
1134 br_port = prestera_bridge_port_find(port->sw, orig_dev); in prestera_port_attr_mrouter_set()
1220 struct prestera_switch *sw = port->sw; in prestera_port_fdb_set() local
1226 br_port = prestera_bridge_port_by_dev(sw->swdev, port->dev); in prestera_port_fdb_set()
1474 struct prestera_switch *sw = port->sw; in prestera_port_vlans_add() local
1480 br_port = prestera_bridge_port_by_dev(sw->swdev, port->dev); in prestera_port_vlans_add()
1494 prestera_br_mdb_entry_create(struct prestera_switch *sw, in prestera_br_mdb_entry_create() argument
1505 mdb_entry = prestera_mdb_entry_create(sw, addr, vid); in prestera_br_mdb_entry_create()
1560 prestera_br_mdb_entry_get(struct prestera_switch *sw, in prestera_br_mdb_entry_get() argument
1570 return prestera_br_mdb_entry_create(sw, br_dev, addr, vid); in prestera_br_mdb_entry_get()
1579 struct prestera_switch *sw; in prestera_mdb_port_addr_obj_add() local
1583 sw = prestera_switch_get(mdb->obj.orig_dev); in prestera_mdb_port_addr_obj_add()
1586 br_port = prestera_bridge_port_find(sw, mdb->obj.orig_dev); in prestera_mdb_port_addr_obj_add()
1596 br_mdb = prestera_br_mdb_entry_get(sw, br_dev, &mdb->addr[0], in prestera_mdb_port_addr_obj_add()
1599 br_mdb = prestera_br_mdb_entry_get(sw, br_dev, &mdb->addr[0], in prestera_mdb_port_addr_obj_add()
1656 struct prestera_switch *sw = port->sw; in prestera_port_vlans_del() local
1661 br_port = prestera_bridge_port_by_dev(sw->swdev, port->dev); in prestera_port_vlans_del()
1683 br_port = prestera_bridge_port_find(port->sw, mdb->obj.orig_dev); in prestera_mdb_port_addr_obj_del()
1769 static void prestera_fdb_event(struct prestera_switch *sw, in prestera_fdb_event() argument
1779 port = prestera_find_port(sw, evt->fdb_evt.dest.port_id); in prestera_fdb_event()
1784 lag = prestera_lag_by_id(sw, evt->fdb_evt.dest.lag_id); in prestera_fdb_event()
1815 static int prestera_fdb_init(struct prestera_switch *sw) in prestera_fdb_init() argument
1819 err = prestera_hw_event_handler_register(sw, PRESTERA_EVENT_TYPE_FDB, in prestera_fdb_init()
1824 err = prestera_hw_switch_ageing_set(sw, PRESTERA_DEFAULT_AGEING_TIME_MS); in prestera_fdb_init()
1831 prestera_hw_event_handler_unregister(sw, PRESTERA_EVENT_TYPE_FDB, in prestera_fdb_init()
1836 static void prestera_fdb_fini(struct prestera_switch *sw) in prestera_fdb_fini() argument
1838 prestera_hw_event_handler_unregister(sw, PRESTERA_EVENT_TYPE_FDB, in prestera_fdb_fini()
1871 int prestera_switchdev_init(struct prestera_switch *sw) in prestera_switchdev_init() argument
1880 sw->swdev = swdev; in prestera_switchdev_init()
1881 swdev->sw = sw; in prestera_switchdev_init()
1895 err = prestera_fdb_init(sw); in prestera_switchdev_init()
1910 void prestera_switchdev_fini(struct prestera_switch *sw) in prestera_switchdev_fini() argument
1912 struct prestera_switchdev *swdev = sw->swdev; in prestera_switchdev_fini()
1914 prestera_fdb_fini(sw); in prestera_switchdev_fini()