Lines Matching refs:hsr

70 	hsr_for_each_port(master->hsr, port)  in hsr_check_carrier()
89 struct hsr_priv *hsr; in hsr_check_announce() local
91 hsr = netdev_priv(hsr_dev); in hsr_check_announce()
95 hsr->announce_count = 0; in hsr_check_announce()
96 hsr->announce_timer.expires = jiffies + in hsr_check_announce()
98 add_timer(&hsr->announce_timer); in hsr_check_announce()
103 del_timer(&hsr->announce_timer); in hsr_check_announce()
106 void hsr_check_carrier_and_operstate(struct hsr_priv *hsr) in hsr_check_carrier_and_operstate() argument
112 master = hsr_port_get_hsr(hsr, HSR_PT_MASTER); in hsr_check_carrier_and_operstate()
122 int hsr_get_max_mtu(struct hsr_priv *hsr) in hsr_get_max_mtu() argument
129 hsr_for_each_port(hsr, port) in hsr_get_max_mtu()
142 struct hsr_priv *hsr; in hsr_dev_change_mtu() local
145 hsr = netdev_priv(dev); in hsr_dev_change_mtu()
146 master = hsr_port_get_hsr(hsr, HSR_PT_MASTER); in hsr_dev_change_mtu()
148 if (new_mtu > hsr_get_max_mtu(hsr)) { in hsr_dev_change_mtu()
161 struct hsr_priv *hsr; in hsr_dev_open() local
165 hsr = netdev_priv(dev); in hsr_dev_open()
169 hsr_for_each_port(hsr, port) { in hsr_dev_open()
202 static netdev_features_t hsr_features_recompute(struct hsr_priv *hsr, in hsr_features_recompute() argument
218 hsr_for_each_port(hsr, port) in hsr_features_recompute()
229 struct hsr_priv *hsr = netdev_priv(dev); in hsr_fix_features() local
231 return hsr_features_recompute(hsr, features); in hsr_fix_features()
237 struct hsr_priv *hsr = netdev_priv(dev); in hsr_dev_xmit() local
240 master = hsr_port_get_hsr(hsr, HSR_PT_MASTER); in hsr_dev_xmit()
289 master->hsr->sup_multicast_addr, in send_hsr_supervision_frame()
299 spin_lock_irqsave(&master->hsr->seqnr_lock, irqflags); in send_hsr_supervision_frame()
300 hsr_stag->sequence_nr = htons(master->hsr->sequence_nr); in send_hsr_supervision_frame()
301 master->hsr->sequence_nr++; in send_hsr_supervision_frame()
302 spin_unlock_irqrestore(&master->hsr->seqnr_lock, irqflags); in send_hsr_supervision_frame()
324 struct hsr_priv *hsr; in hsr_announce() local
327 hsr = (struct hsr_priv *) data; in hsr_announce()
330 master = hsr_port_get_hsr(hsr, HSR_PT_MASTER); in hsr_announce()
332 if (hsr->announce_count < 3) { in hsr_announce()
334 hsr->announce_count++; in hsr_announce()
339 if (hsr->announce_count < 3) in hsr_announce()
340 hsr->announce_timer.expires = jiffies + in hsr_announce()
343 hsr->announce_timer.expires = jiffies + in hsr_announce()
347 add_timer(&hsr->announce_timer); in hsr_announce()
358 struct hsr_priv *hsr; in hsr_dev_destroy() local
361 hsr = netdev_priv(hsr_dev); in hsr_dev_destroy()
364 hsr_for_each_port(hsr, port) in hsr_dev_destroy()
368 del_timer_sync(&hsr->prune_timer); in hsr_dev_destroy()
369 del_timer_sync(&hsr->announce_timer); in hsr_dev_destroy()
433 struct hsr_priv *hsr; in hsr_dev_finalize() local
437 hsr = netdev_priv(hsr_dev); in hsr_dev_finalize()
438 INIT_LIST_HEAD(&hsr->ports); in hsr_dev_finalize()
439 INIT_LIST_HEAD(&hsr->node_db); in hsr_dev_finalize()
440 INIT_LIST_HEAD(&hsr->self_node_db); in hsr_dev_finalize()
445 res = hsr_create_self_node(&hsr->self_node_db, hsr_dev->dev_addr, in hsr_dev_finalize()
450 spin_lock_init(&hsr->seqnr_lock); in hsr_dev_finalize()
452 hsr->sequence_nr = HSR_SEQNR_START; in hsr_dev_finalize()
454 init_timer(&hsr->announce_timer); in hsr_dev_finalize()
455 hsr->announce_timer.function = hsr_announce; in hsr_dev_finalize()
456 hsr->announce_timer.data = (unsigned long) hsr; in hsr_dev_finalize()
458 init_timer(&hsr->prune_timer); in hsr_dev_finalize()
459 hsr->prune_timer.function = hsr_prune_nodes; in hsr_dev_finalize()
460 hsr->prune_timer.data = (unsigned long) hsr; in hsr_dev_finalize()
462 ether_addr_copy(hsr->sup_multicast_addr, def_multicast_addr); in hsr_dev_finalize()
463 hsr->sup_multicast_addr[ETH_ALEN - 1] = multicast_spec; in hsr_dev_finalize()
478 res = hsr_add_port(hsr, hsr_dev, HSR_PT_MASTER); in hsr_dev_finalize()
486 res = hsr_add_port(hsr, slave[0], HSR_PT_SLAVE_A); in hsr_dev_finalize()
489 res = hsr_add_port(hsr, slave[1], HSR_PT_SLAVE_B); in hsr_dev_finalize()
493 hsr->prune_timer.expires = jiffies + msecs_to_jiffies(PRUNE_PERIOD); in hsr_dev_finalize()
494 add_timer(&hsr->prune_timer); in hsr_dev_finalize()
499 hsr_for_each_port(hsr, port) in hsr_dev_finalize()