From patchwork Wed Feb 12 16:32:26 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Andy Shevchenko X-Patchwork-Id: 13972196 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from bombadil.infradead.org (bombadil.infradead.org [198.137.202.133]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id BA41EC021A7 for ; Wed, 12 Feb 2025 17:10:57 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20210309; h=Sender:List-Subscribe:List-Help :List-Post:List-Archive:List-Unsubscribe:List-Id:Content-Transfer-Encoding: MIME-Version:References:In-Reply-To:Message-ID:Date:Subject:Cc:To:From: Reply-To:Content-Type:Content-ID:Content-Description:Resent-Date:Resent-From: Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:List-Owner; bh=uPghIJ6cL7pP85XJ6Sy2Pd5BpvYfGOTZK412wRzCiEM=; b=L72CBgXEj/SYWPCFfdrEiborrN nAuGDliyuoRy9kziNA4rB3rgQC1B2/G9jGbIgdesNGteSCxUmiCtFcy0dSpHdgYG8IjjqH4UGf3Yq 6MxGIpRmb4eMETU/IjiB0eTRTyIYqCGm/dhClZdn+1xd5/jxL7rElPTxKMwH/kzG5ldsCMcMzzLfT w1gsNeCBp94G5cZzdz/TUmYGN4xJzcbctdpvOVIwqrg7W7MoEili5F+Mf4GnP82nji9HUcyQQqP9f waJLxzjA0MMC8VrRpB0ItmcXavZhJtQOJXe/vTVz/7+bQaNmrzHQx9nClD/OVk0L9LNaORGGkLryR VHRQZ+Bw==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.98 #2 (Red Hat Linux)) id 1tiGGG-00000008Eb5-3GTw; Wed, 12 Feb 2025 17:10:56 +0000 Received: from mgamail.intel.com ([198.175.65.13]) by bombadil.infradead.org with esmtps (Exim 4.98 #2 (Red Hat Linux)) id 1tiFgh-000000086HB-0KVp; Wed, 12 Feb 2025 16:34:12 +0000 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1739378051; x=1770914051; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version:content-transfer-encoding; bh=oGp2bSSFfKzAg37Gu5Gmi9/S21sWW7TvcVISpEG/3cs=; b=RzEZ6Heyr4jNsIYnnu/3kFJ0TDw8HLu1tdCuq4M+gQgXB7ddddtx04di 2ZdEbudxjlriN9dxD0fAPw7Ez06hWdeoGWaLkyKws4ryT2XK4GwjLfYDY sKiKxox+wVciHHktmG+QtyuW1OMOF7iZNPX1tCPlbvCmPCf9mw4yRmGgA ORrfzxVDPx9YHaZUQkKgw05IAUhhLHixuDKzlSQqrYMDDYcFL6QjI4Ku/ ZrqN6IHi7l0FNM+E1Mxih/kXCpSaAR0BCMVdeZRcn1XcK+qVopjUKn2Gl sh9eaV5yWE4KgYAByzxErJIMV9IWtj+d9+cFLhiHaMRqEbAXadBxSMbPp A==; X-CSE-ConnectionGUID: 9PrMFS+BQQmWeOHRORlk4Q== X-CSE-MsgGUID: Y8l0QmXUQDyav83oLpcv9w== X-IronPort-AV: E=McAfee;i="6700,10204,11343"; a="51032373" X-IronPort-AV: E=Sophos;i="6.13,280,1732608000"; d="scan'208";a="51032373" Received: from orviesa004.jf.intel.com ([10.64.159.144]) by orvoesa105.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 12 Feb 2025 08:34:08 -0800 X-CSE-ConnectionGUID: sL7QU6DURcK9HnFMaJ3MFw== X-CSE-MsgGUID: QXIAKTKjSJyFZbLr1csgZw== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="6.13,280,1732608000"; d="scan'208";a="117879145" Received: from black.fi.intel.com ([10.237.72.28]) by orviesa004.jf.intel.com with ESMTP; 12 Feb 2025 08:34:02 -0800 Received: by black.fi.intel.com (Postfix, from userid 1003) id 9D9B210F; Wed, 12 Feb 2025 18:34:01 +0200 (EET) From: Andy Shevchenko To: Andy Shevchenko , Andi Shyti , Wolfram Sang , linux-i2c@vger.kernel.org, linux-kernel@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-mediatek@lists.infradead.org, linux-renesas-soc@vger.kernel.org Cc: Krzysztof Adamski , Florian Fainelli , Ray Jui , Scott Branden , Broadcom internal kernel review list , Stefan Roese , Matthias Brugger , AngeloGioacchino Del Regno , Gregory CLEMENT , Fabrizio Castro Subject: [PATCH v1 1/8] i2c: Introduce i2c_10bit_addr_from_msg() Date: Wed, 12 Feb 2025 18:32:26 +0200 Message-ID: <20250212163359.2407327-2-andriy.shevchenko@linux.intel.com> X-Mailer: git-send-email 2.45.1.3035.g276e886db78b In-Reply-To: <20250212163359.2407327-1-andriy.shevchenko@linux.intel.com> References: <20250212163359.2407327-1-andriy.shevchenko@linux.intel.com> MIME-Version: 1.0 X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20250212_083411_165447_EE9192D1 X-CRM114-Status: GOOD ( 10.61 ) X-BeenThere: linux-mediatek@lists.infradead.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: "Linux-mediatek" Errors-To: linux-mediatek-bounces+linux-mediatek=archiver.kernel.org@lists.infradead.org There are already a lot of drivers that have been using i2c_8bit_addr_from_msg() for 7-bit addresses, now it's time to have the similar for 10-bit addresses. Signed-off-by: Andy Shevchenko Reviewed-by: Fabrizio Castro Reviewed-by: Andi Shyti --- include/linux/i2c.h | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/include/linux/i2c.h b/include/linux/i2c.h index 997e80649889..4d281ff5582b 100644 --- a/include/linux/i2c.h +++ b/include/linux/i2c.h @@ -952,6 +952,16 @@ static inline u8 i2c_8bit_addr_from_msg(const struct i2c_msg *msg) return (msg->addr << 1) | (msg->flags & I2C_M_RD); } +static inline u8 i2c_10bit_addr_from_msg(const struct i2c_msg *msg) +{ + /* + * 10-bit address + * addr_1: 5'b11110 | addr[9:8] | (R/nW) + * addr_2: addr[7:0] + */ + return 0xf0 | ((msg->addr & GENMASK(9, 8)) >> 7) | (msg->flags & I2C_M_RD); +} + u8 *i2c_get_dma_safe_msg_buf(struct i2c_msg *msg, unsigned int threshold); void i2c_put_dma_safe_msg_buf(u8 *buf, struct i2c_msg *msg, bool xferred); From patchwork Wed Feb 12 16:32:27 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Andy Shevchenko X-Patchwork-Id: 13972192 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from bombadil.infradead.org (bombadil.infradead.org [198.137.202.133]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id 7A0F4C021A4 for ; Wed, 12 Feb 2025 17:10:53 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20210309; h=Sender:List-Subscribe:List-Help :List-Post:List-Archive:List-Unsubscribe:List-Id:Content-Transfer-Encoding: MIME-Version:References:In-Reply-To:Message-ID:Date:Subject:Cc:To:From: Reply-To:Content-Type:Content-ID:Content-Description:Resent-Date:Resent-From: Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:List-Owner; bh=EKEe+oyK7NwEIVSAMcW9Afi9HIBfzodNOT64RP3a+hY=; b=cGji9VKRRY+qO/1vySEMcf9Voo YCyLlamteue1lrRegPMIjgybgprbEattycQfUQ2PeGscAzgVuJJK1g1lXVb9NpX1M8bjQxeLkWvCI MVsMJ48U5LEix3NxO3Ow9kkroEEGkkgmeAGfvWjod8D/Z5cbvW6u3JiHjtZP/zudSU88g5pLoVkHY T+u/8qjYxxzBRfTXzcnchN140ihbTrxnoYuIhOnSm2UcYfMCGu/8G9IFhEQ7Sk/eNv5KHmQ5xpkF9 NCJYUAnRq6xnsRlGLiPKfURJkcLSUMYLYxAYk7q0f26QvHAdBDu33sTXE3gNjrRX7L32uYsLgRE7C affyph3w==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.98 #2 (Red Hat Linux)) id 1tiGGC-00000008EUz-1qvp; Wed, 12 Feb 2025 17:10:52 +0000 Received: from mgamail.intel.com ([198.175.65.13]) by bombadil.infradead.org with esmtps (Exim 4.98 #2 (Red Hat Linux)) id 1tiFge-000000086HB-26Sa; Wed, 12 Feb 2025 16:34:09 +0000 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1739378049; x=1770914049; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version:content-transfer-encoding; bh=2DuNQD3CiVM6sMHqctlFn9JOuTyVK4PWMPLxN9OjiMU=; b=Xmb3aIq7iqZaTVUDcbchT9/SLHsSpXDFK5Ikp1ysUMCxFKqM0u8IqDvn 4ru03VNicuLUH487SXe4CDrPNyWdn1rfplHbA+FbN+0r+B0DPemWE6T2y 9jjTwXElgy0js+iIZcmJdpTXaERJD5bC4JYzqsYgdGKjMaROeoSWkA3OH 4XzmB4jbZ9oyQVY2JXBquKlqdvbwHVqqhrs4NpWAsWiIIl1c9ys0WXUsM p4l0udmzz9eXsLsBAWGK56Nxa4kJgkrggpIbIKLaHQ5HaLvBO392ONRqw 2gtT0pYK+WcNQx94riAB68tXLdNWlhXxfkyPZ+zOiX3/Et5lc/7rP6HCW Q==; X-CSE-ConnectionGUID: JBgqeCjnTtiEBsPXQvXJiw== X-CSE-MsgGUID: 9103m6xPTrK8yNAinVobyg== X-IronPort-AV: E=McAfee;i="6700,10204,11343"; a="51032345" X-IronPort-AV: E=Sophos;i="6.13,280,1732608000"; d="scan'208";a="51032345" Received: from orviesa004.jf.intel.com ([10.64.159.144]) by orvoesa105.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 12 Feb 2025 08:34:08 -0800 X-CSE-ConnectionGUID: KXHlTlg2SpWG16syJE4uWQ== X-CSE-MsgGUID: 5M5XTvAcTKCeP3lw6CTN9g== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="6.13,280,1732608000"; d="scan'208";a="117879144" Received: from black.fi.intel.com ([10.237.72.28]) by orviesa004.jf.intel.com with ESMTP; 12 Feb 2025 08:34:02 -0800 Received: by black.fi.intel.com (Postfix, from userid 1003) id B28651FD; Wed, 12 Feb 2025 18:34:01 +0200 (EET) From: Andy Shevchenko To: Andy Shevchenko , Andi Shyti , Wolfram Sang , linux-i2c@vger.kernel.org, linux-kernel@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-mediatek@lists.infradead.org, linux-renesas-soc@vger.kernel.org Cc: Krzysztof Adamski , Florian Fainelli , Ray Jui , Scott Branden , Broadcom internal kernel review list , Stefan Roese , Matthias Brugger , AngeloGioacchino Del Regno , Gregory CLEMENT , Fabrizio Castro Subject: [PATCH v1 2/8] i2c: axxia: Use i2c_10bit_addr_from_msg() helper Date: Wed, 12 Feb 2025 18:32:27 +0200 Message-ID: <20250212163359.2407327-3-andriy.shevchenko@linux.intel.com> X-Mailer: git-send-email 2.45.1.3035.g276e886db78b In-Reply-To: <20250212163359.2407327-1-andriy.shevchenko@linux.intel.com> References: <20250212163359.2407327-1-andriy.shevchenko@linux.intel.com> MIME-Version: 1.0 X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20250212_083408_582971_537C89D4 X-CRM114-Status: GOOD ( 13.00 ) X-BeenThere: linux-mediatek@lists.infradead.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: "Linux-mediatek" Errors-To: linux-mediatek-bounces+linux-mediatek=archiver.kernel.org@lists.infradead.org Use i2c_10bit_addr_from_msg() helper instead of local copy. No functional change intended. Signed-off-by: Andy Shevchenko --- drivers/i2c/busses/i2c-axxia.c | 19 ++----------------- 1 file changed, 2 insertions(+), 17 deletions(-) diff --git a/drivers/i2c/busses/i2c-axxia.c b/drivers/i2c/busses/i2c-axxia.c index 741ee4636759..bee56e33531b 100644 --- a/drivers/i2c/busses/i2c-axxia.c +++ b/drivers/i2c/busses/i2c-axxia.c @@ -255,11 +255,6 @@ static int i2c_m_rd(const struct i2c_msg *msg) return (msg->flags & I2C_M_RD) != 0; } -static int i2c_m_ten(const struct i2c_msg *msg) -{ - return (msg->flags & I2C_M_TEN) != 0; -} - static int i2c_m_recv_len(const struct i2c_msg *msg) { return (msg->flags & I2C_M_RECV_LEN) != 0; @@ -439,20 +434,10 @@ static void axxia_i2c_set_addr(struct axxia_i2c_dev *idev, struct i2c_msg *msg) { u32 addr_1, addr_2; - if (i2c_m_ten(msg)) { - /* 10-bit address - * addr_1: 5'b11110 | addr[9:8] | (R/nW) - * addr_2: addr[7:0] - */ - addr_1 = 0xF0 | ((msg->addr >> 7) & 0x06); - if (i2c_m_rd(msg)) - addr_1 |= 1; /* Set the R/nW bit of the address */ + if (msg->flags & I2C_M_TEN) { + addr_1 = i2c_10bit_addr_from_msg(msg); addr_2 = msg->addr & 0xFF; } else { - /* 7-bit address - * addr_1: addr[6:0] | (R/nW) - * addr_2: dont care - */ addr_1 = i2c_8bit_addr_from_msg(msg); addr_2 = 0; } From patchwork Wed Feb 12 16:32:28 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Andy Shevchenko X-Patchwork-Id: 13972195 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from bombadil.infradead.org (bombadil.infradead.org [198.137.202.133]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id A8A45C021A4 for ; Wed, 12 Feb 2025 17:10:56 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20210309; h=Sender:List-Subscribe:List-Help :List-Post:List-Archive:List-Unsubscribe:List-Id:Content-Transfer-Encoding: MIME-Version:References:In-Reply-To:Message-ID:Date:Subject:Cc:To:From: Reply-To:Content-Type:Content-ID:Content-Description:Resent-Date:Resent-From: Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:List-Owner; bh=uGwqRrngO2Foo2goMrz72HuW0nDLR4AAI41xs9dL7gU=; b=rgnfzo1qyQ7WJAwHtrtJO6T/Wq Djo/myIwMxbaIBM3KkwiSWObxDKmDBOs4qJ1Ln0yQ1CW/imaJhqGE9U2guBz9RGM96pe3iecDjqc7 UE56H+5amf6EKAaf3e7VoOsjPfLNbcBWQKPqZVfxA+T0OT5AJLCJxMyXR4P3KxCxffUOIOD8QONBU 8b4UwJMPyQayDV9NMckBrzpGTUF0QzWJ2sC8DyvTwiMHVquP5V9YTP27gbTPldUvX4AIeCAd/l/o6 53ebKfHrCQ2w++XTzfyv6eTQDd+pILCAnVpy83D60capSd8iMc57fm9syMQIjUkPUvd9fU2gDG9LD YX8ijzkw==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.98 #2 (Red Hat Linux)) id 1tiGGF-00000008EZU-2X9J; Wed, 12 Feb 2025 17:10:55 +0000 Received: from mgamail.intel.com ([198.175.65.13]) by bombadil.infradead.org with esmtps (Exim 4.98 #2 (Red Hat Linux)) id 1tiFgf-000000086Hu-3mNt; Wed, 12 Feb 2025 16:34:11 +0000 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1739378050; x=1770914050; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version:content-transfer-encoding; bh=cFAmhZLC1N9cY0krqeopnZfqHOnQfFAHi/9obr5Jw5o=; b=YnijgBndOLCFzg4f8Ux1HmfjEAZ/rtKMZhJELxQoMf/njunv/OZJvxtq tGmbWTO/wYsy66dD3OfL61oFhb2l1FoD2QUtlfXTN/fYlcd90OgAFv0hN H1G8dGDjyuDCknJOv2WGh1zJ13bByqoxLZMZy2SR8tUiXY6L0FKCRnzeo E1/fG0QWF1d30dhqV0UJcXt2/3f0dKh+4hPvHTYUIaaIe39u6g2Rx3w0p Rn66e4G960OcNEKGFy21JbtmG+8pFX2uLLqIscN/7ivCKiWKJz7T8gXCY PzK0wo7uLR2E5OINMigT0ptqVyrsQ13hxNdOum1VLRmCcS6m6lVMVa086 g==; X-CSE-ConnectionGUID: 6Jt1oqM1TxSWR6iXFnzDXg== X-CSE-MsgGUID: Q1AZTA+/TqS81p1S6DWcYw== X-IronPort-AV: E=McAfee;i="6700,10204,11343"; a="51032356" X-IronPort-AV: E=Sophos;i="6.13,280,1732608000"; d="scan'208";a="51032356" Received: from orviesa004.jf.intel.com ([10.64.159.144]) by orvoesa105.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 12 Feb 2025 08:34:08 -0800 X-CSE-ConnectionGUID: bkY3AmBeToa/2bmPgYXaGw== X-CSE-MsgGUID: q1C7xXqvRNyam24tlM4+2Q== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="6.13,280,1732608000"; d="scan'208";a="117879146" Received: from black.fi.intel.com ([10.237.72.28]) by orviesa004.jf.intel.com with ESMTP; 12 Feb 2025 08:34:02 -0800 Received: by black.fi.intel.com (Postfix, from userid 1003) id C33142CA; Wed, 12 Feb 2025 18:34:01 +0200 (EET) From: Andy Shevchenko To: Andy Shevchenko , Andi Shyti , Wolfram Sang , linux-i2c@vger.kernel.org, linux-kernel@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-mediatek@lists.infradead.org, linux-renesas-soc@vger.kernel.org Cc: Krzysztof Adamski , Florian Fainelli , Ray Jui , Scott Branden , Broadcom internal kernel review list , Stefan Roese , Matthias Brugger , AngeloGioacchino Del Regno , Gregory CLEMENT , Fabrizio Castro Subject: [PATCH v1 3/8] i2c: bcm-kona: Use i2c_10bit_addr_from_msg() helper Date: Wed, 12 Feb 2025 18:32:28 +0200 Message-ID: <20250212163359.2407327-4-andriy.shevchenko@linux.intel.com> X-Mailer: git-send-email 2.45.1.3035.g276e886db78b In-Reply-To: <20250212163359.2407327-1-andriy.shevchenko@linux.intel.com> References: <20250212163359.2407327-1-andriy.shevchenko@linux.intel.com> MIME-Version: 1.0 X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20250212_083409_978614_D2279D6E X-CRM114-Status: GOOD ( 11.90 ) X-BeenThere: linux-mediatek@lists.infradead.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: "Linux-mediatek" Errors-To: linux-mediatek-bounces+linux-mediatek=archiver.kernel.org@lists.infradead.org Use i2c_10bit_addr_from_msg() helper instead of local copy. No functional change intended. Signed-off-by: Andy Shevchenko --- drivers/i2c/busses/i2c-bcm-kona.c | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/drivers/i2c/busses/i2c-bcm-kona.c b/drivers/i2c/busses/i2c-bcm-kona.c index 340fe1305dd9..f8826e2d3ec2 100644 --- a/drivers/i2c/busses/i2c-bcm-kona.c +++ b/drivers/i2c/busses/i2c-bcm-kona.c @@ -470,14 +470,14 @@ static int bcm_kona_i2c_do_addr(struct bcm_kona_i2c_dev *dev, unsigned char addr; if (msg->flags & I2C_M_TEN) { + addr = i2c_10bit_addr_from_msg(msg); + /* First byte is 11110XX0 where XX is upper 2 bits */ - addr = 0xF0 | ((msg->addr & 0x300) >> 7); - if (bcm_kona_i2c_write_byte(dev, addr, 0) < 0) + if (bcm_kona_i2c_write_byte(dev, addr & ~I2C_M_RD, 0) < 0) return -EREMOTEIO; /* Second byte is the remaining 8 bits */ - addr = msg->addr & 0xFF; - if (bcm_kona_i2c_write_byte(dev, addr, 0) < 0) + if (bcm_kona_i2c_write_byte(dev, msg->addr & 0xFF, 0) < 0) return -EREMOTEIO; if (msg->flags & I2C_M_RD) { @@ -486,7 +486,6 @@ static int bcm_kona_i2c_do_addr(struct bcm_kona_i2c_dev *dev, return -EREMOTEIO; /* Then re-send the first byte with the read bit set */ - addr = 0xF0 | ((msg->addr & 0x300) >> 7) | 0x01; if (bcm_kona_i2c_write_byte(dev, addr, 0) < 0) return -EREMOTEIO; } From patchwork Wed Feb 12 16:32:29 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Andy Shevchenko X-Patchwork-Id: 13972194 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from bombadil.infradead.org (bombadil.infradead.org [198.137.202.133]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id 34D99C021A0 for ; Wed, 12 Feb 2025 17:10:54 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20210309; h=Sender:List-Subscribe:List-Help :List-Post:List-Archive:List-Unsubscribe:List-Id:Content-Transfer-Encoding: MIME-Version:References:In-Reply-To:Message-ID:Date:Subject:Cc:To:From: Reply-To:Content-Type:Content-ID:Content-Description:Resent-Date:Resent-From: Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:List-Owner; bh=ywv536guZWyP/Lc9tX7tX/h7w5n/JNLArjRwgvxbIig=; b=CPPCaUfd3UnrvLQEGoMG2UdVYQ KXhWexDkEif1g9s95IgHK/W5hjBTBVxQVfeLckB4iPwJY0aYKag16ladSPceB6dDJyzDwYW/Fk8nS PrZOuIt/qE5zJy+6Z/O5mzZ1x+uPKy9jxjE/UZnc9phY7f0z9QG5NEVxkdv3flglfH8LlSqLlMuv3 CyfAjBvehS0t0D5nWQWqdK/MxuUm9Kj6D7IOvyrLq/6d6JOVAkV4GQRnehuHz4dPPPek215xhouuu lAeW4x7wT0p4h544bF4M1k8kxBlAhj0YP8d3xTWUwpOXtcNQSHeCNW2JpUnj5KKSaf/6npL7JU5/D lLsxe4EQ==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.98 #2 (Red Hat Linux)) id 1tiGGD-00000008EVj-1YDG; Wed, 12 Feb 2025 17:10:53 +0000 Received: from mgamail.intel.com ([198.175.65.21]) by bombadil.infradead.org with esmtps (Exim 4.98 #2 (Red Hat Linux)) id 1tiFge-000000086HD-3QFt; Wed, 12 Feb 2025 16:34:10 +0000 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1739378049; x=1770914049; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version:content-transfer-encoding; bh=lw0AQ9Rpd28XddSfg/O8nWXU4S88r7p5CG7C4eayPmU=; b=PlQacMNz8fboZxzi8oU4IKGff+SxvqjsWSx9GVMAhhYkJcK03Ua/oFRN c/ZF5GxHO66cQpXoTmBpptnMSUu0hESmYRprdZx2gb+oSeE+p/Hd11wOR bBTJO3mvMRTAfo3auYItCHw90hdoJNNa5vZARQBkzj6W6CNBRx/kT/qfg rMRlHjNL9Gl4mnwJQiSWacGYPKLrrOnBAkeSe6XHZuRzy81O26BjK4Nhw k4Q1GfMaL8RaGuxU4an+cZ+0IuWxCBCAYd3Fz8AsUIJ2sq5nWMchQa/Zb c6yYRbVz4/ceP9ni3VdBu3uDzN3iq6DEFRe0griq9nyR681yD4+cD+eCy Q==; X-CSE-ConnectionGUID: TkpBu8/ARjGgv0nYRYkgYw== X-CSE-MsgGUID: 25TpQSvAQr2HzyHCgV8JwQ== X-IronPort-AV: E=McAfee;i="6700,10204,11343"; a="39969203" X-IronPort-AV: E=Sophos;i="6.13,280,1732608000"; d="scan'208";a="39969203" Received: from fmviesa001.fm.intel.com ([10.60.135.141]) by orvoesa113.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 12 Feb 2025 08:34:08 -0800 X-CSE-ConnectionGUID: pHECftlpSbC3O2TFvy+LFw== X-CSE-MsgGUID: RnMIYfAdRvS/SfwDNyDA1g== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="6.12,224,1728975600"; d="scan'208";a="143815131" Received: from black.fi.intel.com ([10.237.72.28]) by fmviesa001.fm.intel.com with ESMTP; 12 Feb 2025 08:34:03 -0800 Received: by black.fi.intel.com (Postfix, from userid 1003) id D3A3431C; Wed, 12 Feb 2025 18:34:01 +0200 (EET) From: Andy Shevchenko To: Andy Shevchenko , Andi Shyti , Wolfram Sang , linux-i2c@vger.kernel.org, linux-kernel@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-mediatek@lists.infradead.org, linux-renesas-soc@vger.kernel.org Cc: Krzysztof Adamski , Florian Fainelli , Ray Jui , Scott Branden , Broadcom internal kernel review list , Stefan Roese , Matthias Brugger , AngeloGioacchino Del Regno , Gregory CLEMENT , Fabrizio Castro Subject: [PATCH v1 4/8] i2c: eg20t: Use i2c_10bit_addr_from_msg() helper Date: Wed, 12 Feb 2025 18:32:29 +0200 Message-ID: <20250212163359.2407327-5-andriy.shevchenko@linux.intel.com> X-Mailer: git-send-email 2.45.1.3035.g276e886db78b In-Reply-To: <20250212163359.2407327-1-andriy.shevchenko@linux.intel.com> References: <20250212163359.2407327-1-andriy.shevchenko@linux.intel.com> MIME-Version: 1.0 X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20250212_083408_892714_23D991C9 X-CRM114-Status: GOOD ( 11.46 ) X-BeenThere: linux-mediatek@lists.infradead.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: "Linux-mediatek" Errors-To: linux-mediatek-bounces+linux-mediatek=archiver.kernel.org@lists.infradead.org Use i2c_10bit_addr_from_msg() helper instead of local copy. No functional change intended. Signed-off-by: Andy Shevchenko --- drivers/i2c/busses/i2c-eg20t.c | 28 +++++----------------------- 1 file changed, 5 insertions(+), 23 deletions(-) diff --git a/drivers/i2c/busses/i2c-eg20t.c b/drivers/i2c/busses/i2c-eg20t.c index 4914bfbee2a9..20151408bf9c 100644 --- a/drivers/i2c/busses/i2c-eg20t.c +++ b/drivers/i2c/busses/i2c-eg20t.c @@ -48,8 +48,6 @@ #define BUS_IDLE_TIMEOUT 20 #define PCH_I2CCTL_I2CMEN 0x0080 -#define TEN_BIT_ADDR_DEFAULT 0xF000 -#define TEN_BIT_ADDR_MASK 0xF0 #define PCH_START 0x0020 #define PCH_RESTART 0x0004 #define PCH_ESR_START 0x0001 @@ -58,7 +56,6 @@ #define PCH_ACK 0x0008 #define PCH_GETACK 0x0001 #define CLR_REG 0x0 -#define I2C_RD 0x1 #define I2CMCF_BIT 0x0080 #define I2CMIF_BIT 0x0002 #define I2CMAL_BIT 0x0010 @@ -76,8 +73,6 @@ #define I2CMBB_BIT 0x0020 #define BUFFER_MODE_MASK (I2CBMFI_BIT | I2CBMAL_BIT | I2CBMNA_BIT | \ I2CBMTO_BIT | I2CBMIS_BIT) -#define I2C_ADDR_MSK 0xFF -#define I2C_MSB_2B_MSK 0x300 #define FAST_MODE_CLK 400 #define FAST_MODE_EN 0x0001 #define SUB_ADDR_LEN_MAX 4 @@ -371,16 +366,12 @@ static s32 pch_i2c_writebytes(struct i2c_adapter *i2c_adap, struct i2c_algo_pch_data *adap = i2c_adap->algo_data; u8 *buf; u32 length; - u32 addr; - u32 addr_2_msb; - u32 addr_8_lsb; s32 wrcount; s32 rtn; void __iomem *p = adap->pch_base_address; length = msgs->len; buf = msgs->buf; - addr = msgs->addr; /* enable master tx */ pch_setbit(adap->pch_base_address, PCH_I2CCTL, I2C_TX_MODE); @@ -394,8 +385,7 @@ static s32 pch_i2c_writebytes(struct i2c_adapter *i2c_adap, } if (msgs->flags & I2C_M_TEN) { - addr_2_msb = ((addr & I2C_MSB_2B_MSK) >> 7) & 0x06; - iowrite32(addr_2_msb | TEN_BIT_ADDR_MASK, p + PCH_I2CDR); + iowrite32(i2c_10bit_addr_from_msg(msgs), p + PCH_I2CDR); if (first) pch_i2c_start(adap); @@ -403,8 +393,7 @@ static s32 pch_i2c_writebytes(struct i2c_adapter *i2c_adap, if (rtn) return rtn; - addr_8_lsb = (addr & I2C_ADDR_MSK); - iowrite32(addr_8_lsb, p + PCH_I2CDR); + iowrite32(msgs->addr & 0xff, p + PCH_I2CDR); } else { /* set 7 bit slave address and R/W bit as 0 */ iowrite32(i2c_8bit_addr_from_msg(msgs), p + PCH_I2CDR); @@ -490,15 +479,11 @@ static s32 pch_i2c_readbytes(struct i2c_adapter *i2c_adap, struct i2c_msg *msgs, u8 *buf; u32 count; u32 length; - u32 addr; - u32 addr_2_msb; - u32 addr_8_lsb; void __iomem *p = adap->pch_base_address; s32 rtn; length = msgs->len; buf = msgs->buf; - addr = msgs->addr; /* enable master reception */ pch_clrbit(adap->pch_base_address, PCH_I2CCTL, I2C_TX_MODE); @@ -509,8 +494,7 @@ static s32 pch_i2c_readbytes(struct i2c_adapter *i2c_adap, struct i2c_msg *msgs, } if (msgs->flags & I2C_M_TEN) { - addr_2_msb = ((addr & I2C_MSB_2B_MSK) >> 7); - iowrite32(addr_2_msb | TEN_BIT_ADDR_MASK, p + PCH_I2CDR); + iowrite32(i2c_10bit_addr_from_msg(msgs) & ~I2C_M_RD, p + PCH_I2CDR); if (first) pch_i2c_start(adap); @@ -518,8 +502,7 @@ static s32 pch_i2c_readbytes(struct i2c_adapter *i2c_adap, struct i2c_msg *msgs, if (rtn) return rtn; - addr_8_lsb = (addr & I2C_ADDR_MSK); - iowrite32(addr_8_lsb, p + PCH_I2CDR); + iowrite32(msgs->addr & 0xff, p + PCH_I2CDR); pch_i2c_restart(adap); @@ -527,8 +510,7 @@ static s32 pch_i2c_readbytes(struct i2c_adapter *i2c_adap, struct i2c_msg *msgs, if (rtn) return rtn; - addr_2_msb |= I2C_RD; - iowrite32(addr_2_msb | TEN_BIT_ADDR_MASK, p + PCH_I2CDR); + iowrite32(i2c_10bit_addr_from_msg(msgs), p + PCH_I2CDR); } else { /* 7 address bits + R/W bit */ iowrite32(i2c_8bit_addr_from_msg(msgs), p + PCH_I2CDR); From patchwork Wed Feb 12 16:32:30 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Andy Shevchenko X-Patchwork-Id: 13972199 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from bombadil.infradead.org (bombadil.infradead.org [198.137.202.133]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id D38B1C021A5 for ; Wed, 12 Feb 2025 17:11:03 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20210309; h=Sender:List-Subscribe:List-Help :List-Post:List-Archive:List-Unsubscribe:List-Id:Content-Transfer-Encoding: MIME-Version:References:In-Reply-To:Message-ID:Date:Subject:Cc:To:From: Reply-To:Content-Type:Content-ID:Content-Description:Resent-Date:Resent-From: Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:List-Owner; bh=aTJ3OgERgaCDW+LQkBlZMWmTLghyw5QjbL4bGzZjkyM=; b=RzKqT9CrC+W12PFVtx4otca+yZ zLuRTSUmZaUkcCNm6Tl1PkETz0ysMWD2k3wFrL/H5FmhHgfqTKa4syE06ATTEtNymfxzk9nVctVCm u4Hwc8HyqvFhtHLDtt8ujMb5V5hHMWe6X0dZWYNN9N3wBN2BjdFvK9MprYQl4YsJQ+HfdR7kObx/0 LN3hQXHAcSnw5yTpNuhKfHLs5BjJ9Nn4unhcB3i88K6a9PGcizDwHryD9V2XZ1TPrYbjR+Ht9Q6ZF 8llzPmGX8JO6F+syGujiGtZHn1NyJlpp2nGP942fq/SysfWkzNvimKKrcHj0iHYIZoLwbNpiKBQNr rKwVyneg==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.98 #2 (Red Hat Linux)) id 1tiGGL-00000008Ejz-3ghA; Wed, 12 Feb 2025 17:11:01 +0000 Received: from mgamail.intel.com ([198.175.65.13]) by bombadil.infradead.org with esmtps (Exim 4.98 #2 (Red Hat Linux)) id 1tiFgi-000000086HB-499y; Wed, 12 Feb 2025 16:34:14 +0000 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1739378053; x=1770914053; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version:content-transfer-encoding; bh=6LcH/n/8RKz7Qn8xIS3YjC1iiVGNtYLVAm7DIZYYkeY=; b=SHpoqde6Nm+tECA6jCwZdx08DLm/BXl9wko974GOVBt18ej6zv0U4iyd 7jbRkbC32yv/1hBDRZ7f9tHm+zBK3ViVY6YSc6OLfSxJ1r4VE3Zm8qq39 PRI54Z+pqKE8K1e1jL7t6Rfgj1iQ1foheifnT03tGq7fcidbpj2z55un2 y7u8vAs15CAgayrAJdscEApZf89UFBl6boNOSSGD19lFv2Le9d/M3e1NY vYbIzkNlHKDrIiJ+SZV9LQnz5dMLLLg79PS4B+WNAh9GQfQczgPS0p4Iy LnF7kXmPo6pZKmXSf8QPfJCw+R5xB10nnsvkYtkr5wCeNlM0d+QkrSgWg g==; X-CSE-ConnectionGUID: V+jBqZOgTyyLJxEQIZLhbg== X-CSE-MsgGUID: F9AzBJnyQ+SD+TgYJQglLQ== X-IronPort-AV: E=McAfee;i="6700,10204,11343"; a="51032404" X-IronPort-AV: E=Sophos;i="6.13,280,1732608000"; d="scan'208";a="51032404" Received: from orviesa004.jf.intel.com ([10.64.159.144]) by orvoesa105.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 12 Feb 2025 08:34:13 -0800 X-CSE-ConnectionGUID: ywYT84jHTgqIZemsslPwlQ== X-CSE-MsgGUID: 1fXgybwmTnmsx5GqXBiEuA== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="6.13,280,1732608000"; d="scan'208";a="117879160" Received: from black.fi.intel.com ([10.237.72.28]) by orviesa004.jf.intel.com with ESMTP; 12 Feb 2025 08:34:08 -0800 Received: by black.fi.intel.com (Postfix, from userid 1003) id E0A00322; Wed, 12 Feb 2025 18:34:01 +0200 (EET) From: Andy Shevchenko To: Andy Shevchenko , Andi Shyti , Wolfram Sang , linux-i2c@vger.kernel.org, linux-kernel@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-mediatek@lists.infradead.org, linux-renesas-soc@vger.kernel.org Cc: Krzysztof Adamski , Florian Fainelli , Ray Jui , Scott Branden , Broadcom internal kernel review list , Stefan Roese , Matthias Brugger , AngeloGioacchino Del Regno , Gregory CLEMENT , Fabrizio Castro Subject: [PATCH v1 5/8] i2c: kempld: Use i2c_10bit_addr_from_msg() helper Date: Wed, 12 Feb 2025 18:32:30 +0200 Message-ID: <20250212163359.2407327-6-andriy.shevchenko@linux.intel.com> X-Mailer: git-send-email 2.45.1.3035.g276e886db78b In-Reply-To: <20250212163359.2407327-1-andriy.shevchenko@linux.intel.com> References: <20250212163359.2407327-1-andriy.shevchenko@linux.intel.com> MIME-Version: 1.0 X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20250212_083413_089742_8A95E63C X-CRM114-Status: GOOD ( 10.65 ) X-BeenThere: linux-mediatek@lists.infradead.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: "Linux-mediatek" Errors-To: linux-mediatek-bounces+linux-mediatek=archiver.kernel.org@lists.infradead.org Use i2c_10bit_addr_from_msg() helper instead of local copy. No functional change intended. Signed-off-by: Andy Shevchenko --- drivers/i2c/busses/i2c-kempld.c | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/drivers/i2c/busses/i2c-kempld.c b/drivers/i2c/busses/i2c-kempld.c index 212196af68ba..7508cc7a33a6 100644 --- a/drivers/i2c/busses/i2c-kempld.c +++ b/drivers/i2c/busses/i2c-kempld.c @@ -115,9 +115,7 @@ static int kempld_i2c_process(struct kempld_i2c_data *i2c) if (i2c->state == STATE_ADDR) { /* 10 bit address? */ if (i2c->msg->flags & I2C_M_TEN) { - addr = 0xf0 | ((i2c->msg->addr >> 7) & 0x6); - /* Set read bit if necessary */ - addr |= (i2c->msg->flags & I2C_M_RD) ? 1 : 0; + addr = i2c_10bit_addr_from_msg(msg); i2c->state = STATE_ADDR10; } else { addr = i2c_8bit_addr_from_msg(i2c->msg); From patchwork Wed Feb 12 16:32:31 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Andy Shevchenko X-Patchwork-Id: 13972198 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from bombadil.infradead.org (bombadil.infradead.org [198.137.202.133]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id 4ADA1C021A4 for ; Wed, 12 Feb 2025 17:11:00 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20210309; h=Sender:List-Subscribe:List-Help :List-Post:List-Archive:List-Unsubscribe:List-Id:Content-Transfer-Encoding: MIME-Version:References:In-Reply-To:Message-ID:Date:Subject:Cc:To:From: Reply-To:Content-Type:Content-ID:Content-Description:Resent-Date:Resent-From: Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:List-Owner; bh=vV0p5iPcqkCpfpPYXywN3UKal1pFBhYVTMWN4O+ykYE=; b=Qrx2zEvYEOFLBZ3vAGqG1l5Krt SbXI00uXpOmR6ipx0DDMiHBP5JG62DPN1EJsEWeSEzwiQ575qQUdn7EpDT7QeNMXpLAZ8+rSbpqyM C279xrKDXmjZ4klgjiPjkMH+RgoLAwS8SrzjP1ebCfc9UXN+Ldj+TNvtk2ObnYn3hCvDDa6ktRIoK /fFxXgv6ghGOCLNDeZSb0+U2Rv9ZcS3pGEX5zW1994Mx3AO+RBKYRKEqrV+MptvMEQmk3eKLs5oZI eVtHnZwuPXBjtnNT54ZyN+NImAHyE7tkoiuQ5xZEvB2xucDGVxVTIsv+ltHy8mvcU94Nov4Q8k1Lo 6gAteVIg==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.98 #2 (Red Hat Linux)) id 1tiGGJ-00000008EfY-0u3u; Wed, 12 Feb 2025 17:10:59 +0000 Received: from mgamail.intel.com ([198.175.65.13]) by bombadil.infradead.org with esmtps (Exim 4.98 #2 (Red Hat Linux)) id 1tiFgi-000000086Hu-3ZX4; Wed, 12 Feb 2025 16:34:14 +0000 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1739378053; x=1770914053; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version:content-transfer-encoding; bh=R5mEhGWTo6M3w0F741dBYLgdNEX23+SYVxfBs3QbmrM=; b=R0IZX30lJn8LAjiaOSWEmlUvPrOTJpR1LRYdoe41TPMc4w1YPMoQqrMB pRzTxbMP5nMjPjTMH+uFbIir0683KT8+eYvUaq53xkYtSBX4Tnp4vH4BO qtcKTcm9kRcx/zZ/KgltjkoWFYSl/AFuZeJsEUdc6bT2gq7nDk50T/o1N xgxD5CipYe9vhYjphEuj06NlUCsRTnIJlk/IPLhUexgmJCGl/ovx6GjiH gUGIJMrbBdlwEWaL/azt4BtrlypQERTnWZjcaYmkLGSPfrIHQk2OJ7ulE jGWNmCStt8jE93tQnkcWPlluCIyfdF4txmtbOcYmC9LPFnLUfvS64lAZu g==; X-CSE-ConnectionGUID: n9SzTDMbTAiUCpeJr2xywQ== X-CSE-MsgGUID: W80sE5YvQ12MVxmT0d42dA== X-IronPort-AV: E=McAfee;i="6700,10204,11343"; a="51032387" X-IronPort-AV: E=Sophos;i="6.13,280,1732608000"; d="scan'208";a="51032387" Received: from orviesa004.jf.intel.com ([10.64.159.144]) by orvoesa105.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 12 Feb 2025 08:34:13 -0800 X-CSE-ConnectionGUID: jWJsVpz+S6CetFgqQaumcw== X-CSE-MsgGUID: jyAYbCBiTU+yhgP+2k/P+Q== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="6.13,280,1732608000"; d="scan'208";a="117879159" Received: from black.fi.intel.com ([10.237.72.28]) by orviesa004.jf.intel.com with ESMTP; 12 Feb 2025 08:34:08 -0800 Received: by black.fi.intel.com (Postfix, from userid 1003) id ED65B4AE; Wed, 12 Feb 2025 18:34:01 +0200 (EET) From: Andy Shevchenko To: Andy Shevchenko , Andi Shyti , Wolfram Sang , linux-i2c@vger.kernel.org, linux-kernel@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-mediatek@lists.infradead.org, linux-renesas-soc@vger.kernel.org Cc: Krzysztof Adamski , Florian Fainelli , Ray Jui , Scott Branden , Broadcom internal kernel review list , Stefan Roese , Matthias Brugger , AngeloGioacchino Del Regno , Gregory CLEMENT , Fabrizio Castro Subject: [PATCH v1 6/8] i2c: mt7621: Use i2c_10bit_addr_from_msg() helper Date: Wed, 12 Feb 2025 18:32:31 +0200 Message-ID: <20250212163359.2407327-7-andriy.shevchenko@linux.intel.com> X-Mailer: git-send-email 2.45.1.3035.g276e886db78b In-Reply-To: <20250212163359.2407327-1-andriy.shevchenko@linux.intel.com> References: <20250212163359.2407327-1-andriy.shevchenko@linux.intel.com> MIME-Version: 1.0 X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20250212_083412_937100_A2729BF9 X-CRM114-Status: UNSURE ( 9.83 ) X-CRM114-Notice: Please train this message. X-BeenThere: linux-mediatek@lists.infradead.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: "Linux-mediatek" Errors-To: linux-mediatek-bounces+linux-mediatek=archiver.kernel.org@lists.infradead.org Use i2c_10bit_addr_from_msg() helper instead of local copy. No functional change intended. Signed-off-by: Andy Shevchenko --- drivers/i2c/busses/i2c-mt7621.c | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/drivers/i2c/busses/i2c-mt7621.c b/drivers/i2c/busses/i2c-mt7621.c index 2103f21f9ddd..125dc91fb329 100644 --- a/drivers/i2c/busses/i2c-mt7621.c +++ b/drivers/i2c/busses/i2c-mt7621.c @@ -164,10 +164,8 @@ static int mtk_i2c_xfer(struct i2c_adapter *adap, struct i2c_msg *msgs, /* write address */ if (pmsg->flags & I2C_M_TEN) { /* 10 bits address */ - addr = 0xf0 | ((pmsg->addr >> 7) & 0x06); + addr = i2c_10bit_addr_from_msg(pmsg); addr |= (pmsg->addr & 0xff) << 8; - if (pmsg->flags & I2C_M_RD) - addr |= 1; iowrite32(addr, i2c->base + REG_SM0D0_REG); ret = mtk_i2c_cmd(i2c, SM0CTL1_WRITE, 2); if (ret) From patchwork Wed Feb 12 16:32:32 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Andy Shevchenko X-Patchwork-Id: 13972197 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from bombadil.infradead.org (bombadil.infradead.org [198.137.202.133]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id DE784C021A0 for ; Wed, 12 Feb 2025 17:10:58 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20210309; h=Sender:List-Subscribe:List-Help :List-Post:List-Archive:List-Unsubscribe:List-Id:Content-Transfer-Encoding: MIME-Version:References:In-Reply-To:Message-ID:Date:Subject:Cc:To:From: Reply-To:Content-Type:Content-ID:Content-Description:Resent-Date:Resent-From: Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:List-Owner; bh=HWPoxo/vKE0IwtZvkWF9/6Ri+UdXVfkqqMLUhRwcLFk=; b=U0CNJ3d01my7SjYaZLec083IJV IXS9ihfP7l+cNbgqiVxmM3ImG1fLBFHqJCEVWLXe/mhBJgiCXBhSU0GLT5/7pc3KCcW5p3bh23h23 zBG1cyAMceIp3SKjx/TgcR2bC1EWwSJUpOQnJvSVzZKO+LGMxIBACYhO/aWL2yhVz9kLpA4I3DMxn 5DF5/MHacGOcn0a779/sMGEEGSyarMpenQsbWC3zCTUVBUg7bX9RFrWEh5cvTii4Mc6XiLBjoLf27 t7NfcEzsPzvJzV9ub0XIj22YglD4YpP5tiMhInYNKXlYtifUwxfMr+KEY+D0e4MqnK+5LYjaez1Dd tAUTPXlg==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.98 #2 (Red Hat Linux)) id 1tiGGH-00000008EdJ-44lt; Wed, 12 Feb 2025 17:10:57 +0000 Received: from mgamail.intel.com ([198.175.65.21]) by bombadil.infradead.org with esmtps (Exim 4.98 #2 (Red Hat Linux)) id 1tiFgi-000000086HD-3BQi; Wed, 12 Feb 2025 16:34:13 +0000 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1739378053; x=1770914053; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version:content-transfer-encoding; bh=Hb3P1Z7fp3eHA+WMWeBY9ywHmJku1uAyrgRk9oKvYTM=; b=WvQ3xSrLoRgCIjKaddw+4sttPrCnbDo9BHBDedjKoZS+dsamdP3B9w7j fL7rTrRrvdXiV6y7Perg9WVJYOd4vg0bVj+qD1sv+kwlHs59iN+NK7uJj BWCyAaCczqFFY+WCiife5IlUcCcoYQavLj6wL2e6zuuuAQbIo8rzNSc0n 7qc7uj/Gya3UJnvQeOfge0BpoQn9fL1htmINNhaOxVdR9kYP/LNmJyt1y zBpGavrppk2ntppoPJeXYKMClY344f83fcT1GDvN/I+0q/g/ylX09bphY ziF1/0e8bS3CX3kCZ/Q/gQAT+9lmvjmQPbLyNzfmrBL9Gd63g2u2Gv3zd g==; X-CSE-ConnectionGUID: kRfpZEUaTcuK4BMS7dweUQ== X-CSE-MsgGUID: 9xfceJ/tQ8i5Hfrbl3oXSQ== X-IronPort-AV: E=McAfee;i="6700,10204,11343"; a="39969221" X-IronPort-AV: E=Sophos;i="6.13,280,1732608000"; d="scan'208";a="39969221" Received: from fmviesa001.fm.intel.com ([10.60.135.141]) by orvoesa113.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 12 Feb 2025 08:34:12 -0800 X-CSE-ConnectionGUID: 8OZBwWCSShK6pBCksmcUPA== X-CSE-MsgGUID: 14jO9aJVT/CiG7rJ6BlqOw== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="6.12,224,1728975600"; d="scan'208";a="143815135" Received: from black.fi.intel.com ([10.237.72.28]) by fmviesa001.fm.intel.com with ESMTP; 12 Feb 2025 08:34:08 -0800 Received: by black.fi.intel.com (Postfix, from userid 1003) id 043304B0; Wed, 12 Feb 2025 18:34:01 +0200 (EET) From: Andy Shevchenko To: Andy Shevchenko , Andi Shyti , Wolfram Sang , linux-i2c@vger.kernel.org, linux-kernel@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-mediatek@lists.infradead.org, linux-renesas-soc@vger.kernel.org Cc: Krzysztof Adamski , Florian Fainelli , Ray Jui , Scott Branden , Broadcom internal kernel review list , Stefan Roese , Matthias Brugger , AngeloGioacchino Del Regno , Gregory CLEMENT , Fabrizio Castro Subject: [PATCH v1 7/8] i2c: mv64xxx: Use i2c_*bit_addr_from_msg() helpers Date: Wed, 12 Feb 2025 18:32:32 +0200 Message-ID: <20250212163359.2407327-8-andriy.shevchenko@linux.intel.com> X-Mailer: git-send-email 2.45.1.3035.g276e886db78b In-Reply-To: <20250212163359.2407327-1-andriy.shevchenko@linux.intel.com> References: <20250212163359.2407327-1-andriy.shevchenko@linux.intel.com> MIME-Version: 1.0 X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20250212_083412_865440_D715F303 X-CRM114-Status: GOOD ( 12.43 ) X-BeenThere: linux-mediatek@lists.infradead.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: "Linux-mediatek" Errors-To: linux-mediatek-bounces+linux-mediatek=archiver.kernel.org@lists.infradead.org Use i2c_*bit_addr_from_msg() helpers instead of local copy. No functional change intended. Signed-off-by: Andy Shevchenko --- drivers/i2c/busses/i2c-mv64xxx.c | 10 ++-------- 1 file changed, 2 insertions(+), 8 deletions(-) diff --git a/drivers/i2c/busses/i2c-mv64xxx.c b/drivers/i2c/busses/i2c-mv64xxx.c index 874309580c33..3f83c68947cc 100644 --- a/drivers/i2c/busses/i2c-mv64xxx.c +++ b/drivers/i2c/busses/i2c-mv64xxx.c @@ -27,7 +27,6 @@ #include #include -#define MV64XXX_I2C_ADDR_ADDR(val) ((val & 0x7f) << 1) #define MV64XXX_I2C_BAUD_DIV_N(val) (val & 0x7) #define MV64XXX_I2C_BAUD_DIV_M(val) ((val & 0xf) << 3) @@ -176,22 +175,17 @@ static void mv64xxx_i2c_prepare_for_io(struct mv64xxx_i2c_data *drv_data, struct i2c_msg *msg) { - u32 dir = 0; - drv_data->cntl_bits = MV64XXX_I2C_REG_CONTROL_ACK | MV64XXX_I2C_REG_CONTROL_TWSIEN; if (!drv_data->atomic) drv_data->cntl_bits |= MV64XXX_I2C_REG_CONTROL_INTEN; - if (msg->flags & I2C_M_RD) - dir = 1; - if (msg->flags & I2C_M_TEN) { - drv_data->addr1 = 0xf0 | (((u32)msg->addr & 0x300) >> 7) | dir; + drv_data->addr1 = i2c_10bit_addr_from_msg(msg); drv_data->addr2 = (u32)msg->addr & 0xff; } else { - drv_data->addr1 = MV64XXX_I2C_ADDR_ADDR((u32)msg->addr) | dir; + drv_data->addr1 = i2c_8bit_addr_from_msg(msg); drv_data->addr2 = 0; } } From patchwork Wed Feb 12 16:32:33 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Andy Shevchenko X-Patchwork-Id: 13972200 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from bombadil.infradead.org (bombadil.infradead.org [198.137.202.133]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id B9F2EC021A7 for ; Wed, 12 Feb 2025 17:11:04 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20210309; h=Sender:List-Subscribe:List-Help :List-Post:List-Archive:List-Unsubscribe:List-Id:Content-Transfer-Encoding: MIME-Version:References:In-Reply-To:Message-ID:Date:Subject:Cc:To:From: Reply-To:Content-Type:Content-ID:Content-Description:Resent-Date:Resent-From: Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:List-Owner; bh=6ObtcrTuelHoaZzgReqhFbeEfbfvzB90jJfxNART9a8=; b=TbkPJ/+qo3Ml+MR+TFdGf4Lxh2 yL3cTClVT9fZdD8aGsuLlkLDOGyLCTcUDly0PGeDE0s60pa9zBZUUWCAgNJj9fVMCmhvQ/f+pb24D XuOhENM4lWfDuzxziXoC5SDhQhXiS/LAzMEjPj0in6JrgIiNIEGFZDTI2por+t25pUFVWpyKiRxhz KuK/hLtTxs05XvHQ1paSn4bzd2uIk9j2Fv19tjSr9a48GhGW2EruESGH44ZnuNaHtMiq1BnAuH92D lkypt37lEUUUKDamGqHn2eNasp0vc0dpJT/Msh1g5Y3yV+Lk6+G7cN1TEB0/hdTvoCzWcF84kxVDC vVHWDJCQ==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.98 #2 (Red Hat Linux)) id 1tiGGN-00000008EmA-1wbQ; Wed, 12 Feb 2025 17:11:03 +0000 Received: from mgamail.intel.com ([198.175.65.14]) by bombadil.infradead.org with esmtps (Exim 4.98 #2 (Red Hat Linux)) id 1tiFgi-000000086Js-45aX; Wed, 12 Feb 2025 16:34:14 +0000 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1739378053; x=1770914053; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version:content-transfer-encoding; bh=34yUH4FReh//Shi3Q14PxOJohJbKhtrPmtlmxuM90Cw=; b=PKrKXApIfURcRxczAdbn2gpl5u4kqBFaHD1QWbhaQ5raWU+neENjWBiz B2ca++sF25532JVJtsClSL7IGvflW8GeJQOOZd7fKBMq3hSj2jZicggYj Xqgp1FxrokPb1tF6JjseWn5mAnvyqM4k49pEqbJSGZPrqT0Ae7c1AWpNb rjzcgBukKqYktY+kcT266PmXH8EzGWg1JYqOoXLDXQCi4Bu6DDEJjcqyT BX447KgRKlwjps82h2+YVz8Se5tKhnYNNOZmz51VbL5vsFeVD0a/rpmGp ULpdkLueY2YllTClHZkfES5wWkw7+OTAXNyM5Oz4dBBaaiqDwt3P0R1ED Q==; X-CSE-ConnectionGUID: h18MuCyBSvWAo95qzc932w== X-CSE-MsgGUID: lx1iR6j9RVCahd2BDc/VfA== X-IronPort-AV: E=McAfee;i="6700,10204,11343"; a="43811888" X-IronPort-AV: E=Sophos;i="6.13,280,1732608000"; d="scan'208";a="43811888" Received: from fmviesa001.fm.intel.com ([10.60.135.141]) by orvoesa106.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 12 Feb 2025 08:34:12 -0800 X-CSE-ConnectionGUID: +vdWh79iQG6OMwT6nXvM4w== X-CSE-MsgGUID: MwpZszTMTVaYHbh6HJ9xRg== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="6.12,224,1728975600"; d="scan'208";a="143815136" Received: from black.fi.intel.com ([10.237.72.28]) by fmviesa001.fm.intel.com with ESMTP; 12 Feb 2025 08:34:08 -0800 Received: by black.fi.intel.com (Postfix, from userid 1003) id 0F81F4D1; Wed, 12 Feb 2025 18:34:02 +0200 (EET) From: Andy Shevchenko To: Andy Shevchenko , Andi Shyti , Wolfram Sang , linux-i2c@vger.kernel.org, linux-kernel@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-mediatek@lists.infradead.org, linux-renesas-soc@vger.kernel.org Cc: Krzysztof Adamski , Florian Fainelli , Ray Jui , Scott Branden , Broadcom internal kernel review list , Stefan Roese , Matthias Brugger , AngeloGioacchino Del Regno , Gregory CLEMENT , Fabrizio Castro Subject: [PATCH v1 8/8] i2c: rzv2m: Use i2c_10bit_addr_from_msg() helper Date: Wed, 12 Feb 2025 18:32:33 +0200 Message-ID: <20250212163359.2407327-9-andriy.shevchenko@linux.intel.com> X-Mailer: git-send-email 2.45.1.3035.g276e886db78b In-Reply-To: <20250212163359.2407327-1-andriy.shevchenko@linux.intel.com> References: <20250212163359.2407327-1-andriy.shevchenko@linux.intel.com> MIME-Version: 1.0 X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20250212_083413_055863_ACFEDA34 X-CRM114-Status: GOOD ( 10.21 ) X-BeenThere: linux-mediatek@lists.infradead.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: "Linux-mediatek" Errors-To: linux-mediatek-bounces+linux-mediatek=archiver.kernel.org@lists.infradead.org Use i2c_10bit_addr_from_msg() helper instead of local copy. No functional change intended. Signed-off-by: Andy Shevchenko Reviewed-by: Fabrizio Castro --- drivers/i2c/busses/i2c-rzv2m.c | 10 +++------- 1 file changed, 3 insertions(+), 7 deletions(-) diff --git a/drivers/i2c/busses/i2c-rzv2m.c b/drivers/i2c/busses/i2c-rzv2m.c index 02b76e24a476..55c5ce3b0f97 100644 --- a/drivers/i2c/busses/i2c-rzv2m.c +++ b/drivers/i2c/busses/i2c-rzv2m.c @@ -287,13 +287,9 @@ static int rzv2m_i2c_send_address(struct rzv2m_i2c_priv *priv, int ret; if (msg->flags & I2C_M_TEN) { - /* - * 10-bit address - * addr_1: 5'b11110 | addr[9:8] | (R/nW) - * addr_2: addr[7:0] - */ - addr = 0xf0 | ((msg->addr & GENMASK(9, 8)) >> 7); - addr |= !!(msg->flags & I2C_M_RD); + /* 10-bit address */ + addr = i2c_10bit_addr_from_msg(msg); + /* Send 1st address(extend code) */ ret = rzv2m_i2c_write_with_ack(priv, addr); if (ret)