aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/firewire/fw-topology.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/firewire/fw-topology.c')
-rw-r--r--drivers/firewire/fw-topology.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/drivers/firewire/fw-topology.c b/drivers/firewire/fw-topology.c
index d2c7a3d7e1cb..ebdec4c6c689 100644
--- a/drivers/firewire/fw-topology.c
+++ b/drivers/firewire/fw-topology.c
@@ -108,6 +108,7 @@ static struct fw_node *fw_node_create(u32 sid, int port_count, int color)
108 node->node_id = LOCAL_BUS | SELF_ID_PHY_ID(sid); 108 node->node_id = LOCAL_BUS | SELF_ID_PHY_ID(sid);
109 node->link_on = SELF_ID_LINK_ON(sid); 109 node->link_on = SELF_ID_LINK_ON(sid);
110 node->phy_speed = SELF_ID_PHY_SPEED(sid); 110 node->phy_speed = SELF_ID_PHY_SPEED(sid);
111 node->initiated_reset = SELF_ID_PHY_INITIATOR(sid);
111 node->port_count = port_count; 112 node->port_count = port_count;
112 113
113 atomic_set(&node->ref_count, 1); 114 atomic_set(&node->ref_count, 1);
@@ -431,6 +432,8 @@ update_tree(struct fw_card *card, struct fw_node *root)
431 event = FW_NODE_LINK_OFF; 432 event = FW_NODE_LINK_OFF;
432 else if (!node0->link_on && node1->link_on) 433 else if (!node0->link_on && node1->link_on)
433 event = FW_NODE_LINK_ON; 434 event = FW_NODE_LINK_ON;
435 else if (node1->initiated_reset && node1->link_on)
436 event = FW_NODE_INITIATED_RESET;
434 else 437 else
435 event = FW_NODE_UPDATED; 438 event = FW_NODE_UPDATED;
436 439