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.c5
1 files changed, 2 insertions, 3 deletions
diff --git a/drivers/firewire/fw-topology.c b/drivers/firewire/fw-topology.c
index bc8a3487c83a..018c6b8afba6 100644
--- a/drivers/firewire/fw-topology.c
+++ b/drivers/firewire/fw-topology.c
@@ -465,14 +465,13 @@ static void
465update_topology_map(struct fw_card *card, u32 *self_ids, int self_id_count) 465update_topology_map(struct fw_card *card, u32 *self_ids, int self_id_count)
466{ 466{
467 int node_count; 467 int node_count;
468 u32 crc;
469 468
470 card->topology_map[1]++; 469 card->topology_map[1]++;
471 node_count = (card->root_node->node_id & 0x3f) + 1; 470 node_count = (card->root_node->node_id & 0x3f) + 1;
472 card->topology_map[2] = (node_count << 16) | self_id_count; 471 card->topology_map[2] = (node_count << 16) | self_id_count;
473 crc = crc16_itu_t(card->topology_map + 1, self_id_count + 2); 472 card->topology_map[0] = (self_id_count + 2) << 16;
474 card->topology_map[0] = ((self_id_count + 2) << 16) | crc;
475 memcpy(&card->topology_map[3], self_ids, self_id_count * 4); 473 memcpy(&card->topology_map[3], self_ids, self_id_count * 4);
474 fw_compute_block_crc(card->topology_map);
476} 475}
477 476
478void 477void