Lines Matching defs:port
27 struct hsr_port *port;
40 port = hsr_port_get_rcu(skb->dev);
41 if (!port)
43 hsr = port->hsr;
45 if (hsr_addr_is_self(port->hsr, eth_hdr(skb)->h_source)) {
57 if (!(port->dev->features & NETIF_F_HW_HSR_TAG_RM) &&
69 hsr_forward_skb(skb, port);
126 struct hsr_port *port,
137 if (!port->hsr->fwd_offloaded) {
150 res = netdev_rx_handler_register(dev, hsr_handle_frame, port);
160 if (!port->hsr->fwd_offloaded)
169 struct hsr_port *port, *master;
178 port = hsr_port_get_hsr(hsr, type);
179 if (port)
180 return -EBUSY; /* This port already exists */
182 port = kzalloc(sizeof(*port), GFP_KERNEL);
183 if (!port)
186 port->hsr = hsr;
187 port->dev = dev;
188 port->type = type;
191 res = hsr_portdev_setup(hsr, dev, port, extack);
196 list_add_tail_rcu(&port->port_list, &hsr->ports);
206 kfree(port);
210 void hsr_del_port(struct hsr_port *port)
215 hsr = port->hsr;
217 list_del_rcu(&port->port_list);
219 if (port != master) {
222 netdev_rx_handler_unregister(port->dev);
223 dev_set_promiscuity(port->dev, -1);
224 netdev_upper_dev_unlink(port->dev, master->dev);
229 kfree(port);