Lines Matching refs:swdev
40 struct prestera_switchdev *swdev;
102 list_for_each_entry(bridge, &sw->swdev->bridge_list, head)
434 prestera_bridge_create(struct prestera_switchdev *swdev, struct net_device *dev)
441 if (vlan_enabled && swdev->bridge_8021q_exists) {
451 swdev->bridge_8021q_exists = true;
453 err = prestera_hw_bridge_create(swdev->sw, &bridge_id);
463 bridge->swdev = swdev;
470 list_add(&bridge->head, &swdev->bridge_list);
477 struct prestera_switchdev *swdev = bridge->swdev;
482 swdev->bridge_8021q_exists = false;
484 prestera_hw_bridge_delete(swdev->sw, bridge->bridge_id);
498 struct prestera_bridge *prestera_bridge_by_dev(struct prestera_switchdev *swdev,
503 list_for_each_entry(bridge, &swdev->bridge_list, head)
543 prestera_bridge_port_by_dev(struct prestera_switchdev *swdev,
552 bridge = prestera_bridge_by_dev(swdev, br_dev);
652 struct prestera_switchdev *swdev = port->sw->swdev;
657 bridge = prestera_bridge_by_dev(swdev, br_dev);
659 bridge = prestera_bridge_create(swdev, br_dev);
740 struct prestera_switchdev *swdev = port->sw->swdev;
744 bridge = prestera_bridge_by_dev(swdev, br_dev);
774 br_port = prestera_bridge_port_by_dev(port->sw->swdev, dev);
804 bridge = prestera_bridge_by_dev(sw->swdev, dev);
841 br_port = prestera_bridge_port_by_dev(port->sw->swdev, dev);
1226 br_port = prestera_bridge_port_by_dev(sw->swdev, port->dev);
1480 br_port = prestera_bridge_port_by_dev(sw->swdev, port->dev);
1661 br_port = prestera_bridge_port_by_dev(sw->swdev, port->dev);
1842 static int prestera_switchdev_handler_init(struct prestera_switchdev *swdev)
1846 swdev->swdev_nb.notifier_call = prestera_switchdev_event;
1847 err = register_switchdev_notifier(&swdev->swdev_nb);
1851 swdev->swdev_nb_blk.notifier_call = prestera_switchdev_blk_event;
1852 err = register_switchdev_blocking_notifier(&swdev->swdev_nb_blk);
1859 unregister_switchdev_notifier(&swdev->swdev_nb);
1865 static void prestera_switchdev_handler_fini(struct prestera_switchdev *swdev)
1867 unregister_switchdev_blocking_notifier(&swdev->swdev_nb_blk);
1868 unregister_switchdev_notifier(&swdev->swdev_nb);
1873 struct prestera_switchdev *swdev;
1876 swdev = kzalloc(sizeof(*swdev), GFP_KERNEL);
1877 if (!swdev)
1880 sw->swdev = swdev;
1881 swdev->sw = sw;
1883 INIT_LIST_HEAD(&swdev->bridge_list);
1891 err = prestera_switchdev_handler_init(swdev);
1905 kfree(swdev);
1912 struct prestera_switchdev *swdev = sw->swdev;
1915 prestera_switchdev_handler_fini(swdev);
1917 kfree(swdev);