summaryrefslogtreecommitdiff
path: root/drivers/firewire/fw-topology.c
diff options
context:
space:
mode:
authorKristian Høgsberg <krh@redhat.com>2007-01-26 08:38:45 +0300
committerStefan Richter <stefanr@s5r6.in-berlin.de>2007-03-10 00:02:48 +0300
commit931c4834c8d1e1bf0dcc256b89449a01711f970d (patch)
tree2d1b26b4418a034528acc98d38e179b57e2b3a56 /drivers/firewire/fw-topology.c
parent9fc82689bf2920e9b3a8cc1766bcb6ad6454a7c4 (diff)
downloadlinux-931c4834c8d1e1bf0dcc256b89449a01711f970d.tar.xz
firewire: Implement compliant bus management.
Signed-off-by: Kristian Høgsberg <krh@redhat.com> Signed-off-by: Stefan Richter <stefanr@s5r6.in-berlin.de>
Diffstat (limited to 'drivers/firewire/fw-topology.c')
-rw-r--r--drivers/firewire/fw-topology.c7
1 files changed, 3 insertions, 4 deletions
diff --git a/drivers/firewire/fw-topology.c b/drivers/firewire/fw-topology.c
index fc8f1e7d3b07..27c6cb9c8367 100644
--- a/drivers/firewire/fw-topology.c
+++ b/drivers/firewire/fw-topology.c
@@ -476,12 +476,13 @@ fw_core_handle_bus_reset(struct fw_card *card,
* changed, either nodes were added or removed. In that case we
* reset the IRM reset counter. */
if (card->self_id_count != self_id_count)
- card->irm_retries = 0;
+ card->bm_retries = 0;
card->node_id = node_id;
card->self_id_count = self_id_count;
card->generation = generation;
memcpy(card->self_ids, self_ids, self_id_count * 4);
+ card->reset_jiffies = jiffies;
local_node = build_tree(card);
@@ -497,9 +498,7 @@ fw_core_handle_bus_reset(struct fw_card *card,
update_tree(card, local_node);
}
- /* If we're not the root node, we may have to do some IRM work. */
- if (card->local_node != card->root_node)
- schedule_delayed_work(&card->work, 0);
+ schedule_delayed_work(&card->work, 0);
spin_unlock_irqrestore(&card->lock, flags);
}