From nobody Thu Oct 2 17:03:32 2025 Received: from fout-a2-smtp.messagingengine.com (fout-a2-smtp.messagingengine.com [103.168.172.145]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 0DA2B2EC0BA for ; Sat, 13 Sep 2025 10:57:42 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=103.168.172.145 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1757761065; cv=none; b=ItaFxMzuSWI2eT8FFug36xAAYVEPI0nc06wMyCPlQG5O/QBrAkUajB60ZZUrq0KUD0pwh1JBfIhg++4C9KmUhlH9gPiHDIw9CCrguzARtoGViuEiqysTd6UTz5IE2M46PhFKKLjZxwbzyJ+wafJ0wlj4GHbtIVHGAIti35bwCdE= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1757761065; c=relaxed/simple; bh=SI4gSrLroLcxiPO6+TUPS+OVtyIiXAbmou7cIOpggBI=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=ErNxAdUYjImlMdFpxbBSFuWTH0SDN9qvmLvDPncGBZRt8Jbl/sI9pUXr0XyBvGo3kDGdsGDcc5GF8TmROJbhjvcFc8+laGIC4Etv//CryAINpWBDBssEfOzGDCHaVlqYZsOcQFMvz7zoqgskqpkkfja56mQFEERzlKz32olMH44= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=sakamocchi.jp; spf=pass smtp.mailfrom=sakamocchi.jp; dkim=pass (2048-bit key) header.d=sakamocchi.jp header.i=@sakamocchi.jp header.b=VfXUHIf+; dkim=pass (2048-bit key) header.d=messagingengine.com header.i=@messagingengine.com header.b=mPpig+Vk; arc=none smtp.client-ip=103.168.172.145 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=sakamocchi.jp Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=sakamocchi.jp Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=sakamocchi.jp header.i=@sakamocchi.jp header.b="VfXUHIf+"; dkim=pass (2048-bit key) header.d=messagingengine.com header.i=@messagingengine.com header.b="mPpig+Vk" Received: from phl-compute-03.internal (phl-compute-03.internal [10.202.2.43]) by mailfout.phl.internal (Postfix) with ESMTP id 35F1BEC01E7; Sat, 13 Sep 2025 06:57:42 -0400 (EDT) Received: from phl-mailfrontend-01 ([10.202.2.162]) by phl-compute-03.internal (MEProxy); Sat, 13 Sep 2025 06:57:42 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=sakamocchi.jp; h=cc:cc:content-transfer-encoding:content-type:date:date:from :from:in-reply-to:in-reply-to:message-id:mime-version:references :reply-to:subject:subject:to:to; s=fm1; t=1757761062; x= 1757847462; bh=/rTl3ZLV4TDqbR0iApij3yZEA1dATqWt7hFVGfCHOY0=; b=V fXUHIf++HTrtPc4dVzqII4XxBnKw/qYBaJC2t3OXjx7AKavEB+8uTnAfDPUHNn8o S2DX0H9a7Qd8NC3i1Y32TXZCRbhKF5g0Jvm/lRwIG3MSL3Ztg3El6TZCbtXqXUH2 InMeyrMexf66OOYoNvijV0f+vCqjCFA34LdDARmhBlE2dhKaaiOmDlKR3TipHgFp mJbbqNPiY0besh4fiJ1t2uWugpMaLWZY3GfZk4CFegP4M/8GJxPdFYZW5BqXoAk/ +NRd/OO8z1T99Iz56vxk0jktD8LNq15ONdaA4slDoBH0sJTGTqeUf9IbPbjg6TAM Dr6IV1EObJ1SaaAb8wUCg== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= messagingengine.com; h=cc:cc:content-transfer-encoding :content-type:date:date:feedback-id:feedback-id:from:from :in-reply-to:in-reply-to:message-id:mime-version:references :reply-to:subject:subject:to:to:x-me-proxy:x-me-sender :x-me-sender:x-sasl-enc; s=fm1; t=1757761062; x=1757847462; bh=/ rTl3ZLV4TDqbR0iApij3yZEA1dATqWt7hFVGfCHOY0=; b=mPpig+VkQJ+x1tEuA vISC8Ozrnzh6gP6j5LOTtQb+9wboo1MF3U3CtLjXXU0GmknKPT8BfZgxaEAOhSiN I/yR4bxdf3W6p+24NtEW3a8PqzZd/jKXDOUd4M1ZbG7DWGQi0gUe+r/OJKiy6Kua Xqn8yjzaShcrglyK9DhNrX20e05dUls0BBUpeovffxcaFeqM5u2wIzG7nsFtkT7/ c8+a6EgzBlkHMmW9k6fO8hnqfEv5gvBb1E5xi83zk3cwKHRXUU0wPz7cvIzyWuNl 0kR2yMn+on01Szlv8pBCDysF14DhZVqR81zH2Pdhy1zKv2kCz9WreGL764+aQYhA 9GeUg== X-ME-Sender: X-ME-Received: X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgeeffedrtdeggdefudejgecutefuodetggdotefrod ftvfcurfhrohhfihhlvgemucfhrghsthforghilhdpuffrtefokffrpgfnqfghnecuuegr ihhlohhuthemuceftddtnecunecujfgurhephffvvefufffkofgjfhgggfestdekredtre dttdenucfhrhhomhepvfgrkhgrshhhihcuufgrkhgrmhhothhouceoohdqthgrkhgrshhh ihesshgrkhgrmhhotggthhhirdhjpheqnecuggftrfgrthhtvghrnhepvdejgfejuedvgf duudekleevtefgtdevhfdtffefiefgveeuteffiedvffekvddtnecuvehluhhsthgvrhfu ihiivgeptdenucfrrghrrghmpehmrghilhhfrhhomhepohdqthgrkhgrshhhihesshgrkh grmhhotggthhhirdhjphdpnhgspghrtghpthhtohepvddpmhhouggvpehsmhhtphhouhht pdhrtghpthhtoheplhhinhhugidufeelgedquggvvhgvlheslhhishhtshdrshhouhhrtg gvfhhorhhgvgdrnhgvthdprhgtphhtthhopehlihhnuhigqdhkvghrnhgvlhesvhhgvghr rdhkvghrnhgvlhdrohhrgh X-ME-Proxy: Feedback-ID: ie8e14432:Fastmail Received: by mail.messagingengine.com (Postfix) with ESMTPA; Sat, 13 Sep 2025 06:57:41 -0400 (EDT) From: Takashi Sakamoto To: linux1394-devel@lists.sourceforge.net Cc: linux-kernel@vger.kernel.org Subject: [PATCH 1/2] firewire: core: use macro expression for gap count mismatch Date: Sat, 13 Sep 2025 19:57:36 +0900 Message-ID: <20250913105737.778038-2-o-takashi@sakamocchi.jp> X-Mailer: git-send-email 2.48.1 In-Reply-To: <20250913105737.778038-1-o-takashi@sakamocchi.jp> References: <20250913105737.778038-1-o-takashi@sakamocchi.jp> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" The gap_count field is assigned to zero when mismatch is detected. In such case, the macro expression is preferable since it is easy to understand the situation. This commit applies the idea. Signed-off-by: Takashi Sakamoto --- drivers/firewire/core-card.c | 2 +- drivers/firewire/core-topology.c | 2 +- drivers/firewire/core.h | 3 +++ 3 files changed, 5 insertions(+), 2 deletions(-) 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 =3D generation; =20 - if (card->gap_count =3D=3D 0) { + if (card->gap_count =3D=3D 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-topol= ogy.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]) !=3D gap_= count) - gap_count =3D 0; + gap_count =3D GAP_COUNT_MISMATCHED; =20 update_hop_count(node); =20 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; =20 /* -card */ =20 +// 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) --=20 2.48.1 From nobody Thu Oct 2 17:03:32 2025 Received: from fout-a2-smtp.messagingengine.com (fout-a2-smtp.messagingengine.com [103.168.172.145]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 7EF242EC54D for ; Sat, 13 Sep 2025 10:57:44 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=103.168.172.145 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1757761066; cv=none; b=UZ++z5/7bFIAi4422345+zTZaiAgORIR23eHF9Y1MuSEIYFwh5OSS3oOUVlQQG7asYjzMyRDnfLT3uJQXhDQcj3B4rl1SPYkHs6YdNb9IC0+YMPWDYVkKMgmGiWDbvLHE+BCqGhWAEoUY+TOKTcleDKA+welCVHW4Ac8FT5VfcE= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1757761066; c=relaxed/simple; bh=N3K2z0lFSmLL2EDPTJw7HX4T0OR1Jvhhsdq1KQtG1sc=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=KYKwvLgADCXahUMyhe+CufAz55nZvcobTmgJoCbDeLFc2w/nAJ+Czr7It2rfRY1Kwh5NhSsPlDqg3BLjx2Wq5IG4BkrE8R35IGuMMQ0woFwKZDZj8TQEP+UWQvBx7UMDTT99pFTeREqSr6GBI+IIbLQB//fI/uPUQRocXTMrhXs= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=sakamocchi.jp; spf=pass smtp.mailfrom=sakamocchi.jp; dkim=pass (2048-bit key) header.d=sakamocchi.jp header.i=@sakamocchi.jp header.b=UCW+UtA8; dkim=pass (2048-bit key) header.d=messagingengine.com header.i=@messagingengine.com header.b=O80pICcH; arc=none smtp.client-ip=103.168.172.145 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=sakamocchi.jp Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=sakamocchi.jp Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=sakamocchi.jp header.i=@sakamocchi.jp header.b="UCW+UtA8"; dkim=pass (2048-bit key) header.d=messagingengine.com header.i=@messagingengine.com header.b="O80pICcH" Received: from phl-compute-11.internal (phl-compute-11.internal [10.202.2.51]) by mailfout.phl.internal (Postfix) with ESMTP id 84BD1EC018B; Sat, 13 Sep 2025 06:57:43 -0400 (EDT) Received: from phl-mailfrontend-01 ([10.202.2.162]) by phl-compute-11.internal (MEProxy); Sat, 13 Sep 2025 06:57:43 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=sakamocchi.jp; h=cc:cc:content-transfer-encoding:content-type:date:date:from :from:in-reply-to:in-reply-to:message-id:mime-version:references :reply-to:subject:subject:to:to; s=fm1; t=1757761063; x= 1757847463; bh=6WxZ6ngxHySIOsCplz04PSONOpKSebdtsflfhWY8CVQ=; b=U CW+UtA8Xau9Z2ohr/uEdv08MoqPh216jo8/PsX2WG771BNanrUQyolIcqq4UT2uY tgCZKkHUtNRqYwRHh0B8S42aFTKIyWROgpweXmirLe3Pq/7+qcenxph75AZax+Da sZH15T0Qv53bZeAs6GpKSI1epH+/IurECD9rIHEkYEEUcDpQn/1tXj6epYSKOgYN hTrUdH4TE0+lk00plKG61AUVK6yd2HUPo85DEtNh5oPX/uwbA5NodmVv5WCsww4k yMPHErdU4dsdPOsyEsE2udSRsYkKhi/VZEaibyG1AkAX1ruEUUCJmZYhwRtIoMJ+ gS7mzdVOxOrXbA3Ht4wtg== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= messagingengine.com; h=cc:cc:content-transfer-encoding :content-type:date:date:feedback-id:feedback-id:from:from :in-reply-to:in-reply-to:message-id:mime-version:references :reply-to:subject:subject:to:to:x-me-proxy:x-me-sender :x-me-sender:x-sasl-enc; s=fm1; t=1757761063; x=1757847463; bh=6 WxZ6ngxHySIOsCplz04PSONOpKSebdtsflfhWY8CVQ=; b=O80pICcHt4K9ooklN UWLQ5UqJJC+/lDvu2CFyttdXJaKV5eLopND92uFmOuYq1jyxiQzdpKb6rr8CI4CW YpZyrhOYmSAuRBLKHfH3fMhEbQAM3npEdcku5e68gcqWFDPSfYIwWDIvl1QJRhyj y1AwhuwMTQ2QD/3jI2e0Scr9pHr97/gFqYos75dw2KY79l6bs5EZioHSrgn6stWr Mr0QeeapTIwz3aBclOZ7z0NRwoI+XK5AADfnkSCxI+6+KCqTtnyuOmSgamHK9CcZ SRzxbd+SExvEmHXtDAxyBkhSHZb0AI/bca/IzQhxWkH1nB9rO/tpKmYADJO65q25 DMbqg== X-ME-Sender: X-ME-Received: X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgeeffedrtdeggdefudejgecutefuodetggdotefrod ftvfcurfhrohhfihhlvgemucfhrghsthforghilhdpuffrtefokffrpgfnqfghnecuuegr ihhlohhuthemuceftddtnecunecujfgurhephffvvefufffkofgjfhgggfestdekredtre dttdenucfhrhhomhepvfgrkhgrshhhihcuufgrkhgrmhhothhouceoohdqthgrkhgrshhh ihesshgrkhgrmhhotggthhhirdhjpheqnecuggftrfgrthhtvghrnhepvdejgfejuedvgf duudekleevtefgtdevhfdtffefiefgveeuteffiedvffekvddtnecuvehluhhsthgvrhfu ihiivgeptdenucfrrghrrghmpehmrghilhhfrhhomhepohdqthgrkhgrshhhihesshgrkh grmhhotggthhhirdhjphdpnhgspghrtghpthhtohepvddpmhhouggvpehsmhhtphhouhht pdhrtghpthhtoheplhhinhhugidufeelgedquggvvhgvlheslhhishhtshdrshhouhhrtg gvfhhorhhgvgdrnhgvthdprhgtphhtthhopehlihhnuhigqdhkvghrnhgvlhesvhhgvghr rdhkvghrnhgvlhdrohhrgh X-ME-Proxy: Feedback-ID: ie8e14432:Fastmail Received: by mail.messagingengine.com (Postfix) with ESMTPA; Sat, 13 Sep 2025 06:57:42 -0400 (EDT) From: Takashi Sakamoto To: linux1394-devel@lists.sourceforge.net Cc: linux-kernel@vger.kernel.org Subject: [PATCH 2/2] firewire: core: use macro expression for not-registered state of BUS_MANAGER_ID Date: Sat, 13 Sep 2025 19:57:37 +0900 Message-ID: <20250913105737.778038-3-o-takashi@sakamocchi.jp> X-Mailer: git-send-email 2.48.1 In-Reply-To: <20250913105737.778038-1-o-takashi@sakamocchi.jp> References: <20250913105737.778038-1-o-takashi@sakamocchi.jp> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" The value of BUS_MANAGER_ID register has 0x3f when no node_id is registered. Current implementation uses hard-coded numeric literal but in the case the macro expression is preferable since it is easy to distinguish the state from node ID mask. This commit applies the idea. Signed-off-by: Takashi Sakamoto --- drivers/firewire/core-card.c | 12 ++++++++---- drivers/firewire/core.h | 3 +++ 2 files changed, 11 insertions(+), 4 deletions(-) diff --git a/drivers/firewire/core-card.c b/drivers/firewire/core-card.c index bf2e7f55b83e..adb90161c4c6 100644 --- a/drivers/firewire/core-card.c +++ b/drivers/firewire/core-card.c @@ -327,7 +327,7 @@ static void bm_work(struct work_struct *work) * next generation. */ __be32 data[2] =3D { - cpu_to_be32(0x3f), + cpu_to_be32(BUS_MANAGER_ID_NOT_REGISTERED), cpu_to_be32(local_id), }; struct fw_device *irm_device =3D fw_node_get_device(card->irm_node); @@ -372,10 +372,14 @@ static void bm_work(struct work_struct *work) if (rcode =3D=3D RCODE_COMPLETE) { int bm_id =3D be32_to_cpu(data[0]); =20 - if (generation =3D=3D card->generation) - card->bm_node_id =3D bm_id =3D=3D 0x3f ? local_id : 0xffc0 | bm_id; + if (generation =3D=3D card->generation) { + if (bm_id !=3D BUS_MANAGER_ID_NOT_REGISTERED) + card->bm_node_id =3D 0xffc0 & bm_id; + else + card->bm_node_id =3D local_id; + } =20 - if (bm_id !=3D 0x3f) { + if (bm_id !=3D BUS_MANAGER_ID_NOT_REGISTERED) { spin_unlock_irq(&card->lock); =20 // Somebody else is BM. Only act as IRM. diff --git a/drivers/firewire/core.h b/drivers/firewire/core.h index 79eb57fd5812..9e68ebf0673d 100644 --- a/drivers/firewire/core.h +++ b/drivers/firewire/core.h @@ -170,6 +170,9 @@ static inline void fw_iso_context_init_work(struct fw_i= so_context *ctx, work_fun =20 /* -topology */ =20 +// The initial value of BUS_MANAGER_ID register, to express nothing regist= ered. +#define BUS_MANAGER_ID_NOT_REGISTERED 0x3f + enum { FW_NODE_CREATED, FW_NODE_UPDATED, --=20 2.48.1