diff --git a/drivers/firewire/core-card.c b/drivers/firewire/core-card.c index 32cf6b3344cd..bf2e7f55b83e 100644 --- a/drivers/firewire/core-card.c +++ b/drivers/firewire/core-card.c @@ -425,7 +425,7 @@ static void bm_work(struct work_struct *work) */ card->bm_generation = generation; - if (card->gap_count == 0) { + if (card->gap_count == GAP_COUNT_MISMATCHED) { /* * If self IDs have inconsistent gap counts, do a * bus reset ASAP. The config rom read might never diff --git a/drivers/firewire/core-topology.c b/drivers/firewire/core-topology.c index 74a6aa7d8cc9..5f8fb1201d80 100644 --- a/drivers/firewire/core-topology.c +++ b/drivers/firewire/core-topology.c @@ -241,7 +241,7 @@ static struct fw_node *build_tree(struct fw_card *card, const u32 *sid, int self // If PHYs report different gap counts, set an invalid count which will force a gap // count reconfiguration and a reset. if (phy_packet_self_id_zero_get_gap_count(self_id_sequence[0]) != gap_count) - gap_count = 0; + gap_count = GAP_COUNT_MISMATCHED; update_hop_count(node); diff --git a/drivers/firewire/core.h b/drivers/firewire/core.h index 083e39034c37..79eb57fd5812 100644 --- a/drivers/firewire/core.h +++ b/drivers/firewire/core.h @@ -27,6 +27,9 @@ struct fw_packet; /* -card */ +// This is the arbitrary value we use to indicate a mismatched gap count. +#define GAP_COUNT_MISMATCHED 0 + extern __printf(2, 3) void fw_err(const struct fw_card *card, const char *fmt, ...); extern __printf(2, 3)