From patchwork Thu Feb 13 14:07:15 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Andy Shevchenko X-Patchwork-Id: 864926 Received: from mgamail.intel.com (mgamail.intel.com [198.175.65.18]) (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 7B0B320A5FC; Thu, 13 Feb 2025 14:10:59 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=198.175.65.18 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1739455861; cv=none; b=ONj6Jp/Nwh69Xwn0WfRaT6MQqw3DdzzG54fczHb5fbu6HonCE9at5IOh4YP41Yk9QOo0PuvV80Ou9itQ5hfsRyMgkgob9e00VgvMg6rxG3vikk/oYnZL8sOPLh1IuK4R6syi4usRYnQmhJUZmEtyGAbo9j6kwkrIEe04WS/d5xQ= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1739455861; c=relaxed/simple; bh=Yp4FrWXW4JaF+mT3WDe29SXBFmsQXNetyMj2cbrB3Lc=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=tNvIdlW890n/w8SQTwNXRbFXlCStiEXo/tjFme6XMmNr9zqOVYXaqhsICp2xU0lHU5tEUbCD3NwAUNPRgt4qUgkXkj1uNbW7aBZxUiFTamHcZ7HpkQXANb9C8KhK0r0Z9bi3MzIdxGxkrjwRECQ5AExrOZv6+xhgo5se3ps7OsA= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linux.intel.com; spf=none smtp.mailfrom=linux.intel.com; dkim=pass (2048-bit key) header.d=intel.com header.i=@intel.com header.b=QmQMcXe+; arc=none smtp.client-ip=198.175.65.18 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linux.intel.com Authentication-Results: smtp.subspace.kernel.org; spf=none smtp.mailfrom=linux.intel.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=intel.com header.i=@intel.com header.b="QmQMcXe+" DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1739455860; x=1770991860; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version:content-transfer-encoding; bh=Yp4FrWXW4JaF+mT3WDe29SXBFmsQXNetyMj2cbrB3Lc=; b=QmQMcXe+0Jw/YQFAgK6i+OYyk3rAG6SnYoFN28hZJnIaKoW5S5xwL+5x OYtYCB5YmdklzjItgXlmwYnix2TTUWwW45fjPIofwLaUlaqQHC6pVSqgJ KCHHUbk9wBcim5B8DKay17A9GcApIbQ2xsgQQ98Nh/F2T0Kt76TcnoxCA XOcTTpcU/M5JLhwCAUGR4Gwhm8NZ51efx5sjPB3QxKVYKAoPA3uOWT6/n kEg7CdBVvIAlvAQrZi+8K9svHf2QYtBUGfB5IbsOKAznVmBQvlxM1bIiO fuYuXhxQEqR733460I3NFyujQnlF1N8OlU7pLBqn/cMTXFnpne84W7pZC A==; X-CSE-ConnectionGUID: 0TjNgBOVSO6tvN/kGGrCNw== X-CSE-MsgGUID: ogAOugOcREmAS1fxZHCsMg== X-IronPort-AV: E=McAfee;i="6700,10204,11314"; a="40273362" X-IronPort-AV: E=Sophos;i="6.12,310,1728975600"; d="scan'208";a="40273362" Received: from fmviesa009.fm.intel.com ([10.60.135.149]) by orvoesa110.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 13 Feb 2025 06:10:55 -0800 X-CSE-ConnectionGUID: N12ApcrZTLmSWu4H86qDJw== X-CSE-MsgGUID: 59+8kRuIQtSBaiDwgv5slQ== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="6.13,282,1732608000"; d="scan'208";a="113815328" Received: from black.fi.intel.com ([10.237.72.28]) by fmviesa009.fm.intel.com with ESMTP; 13 Feb 2025 06:10:48 -0800 Received: by black.fi.intel.com (Postfix, from userid 1003) id 31DD11F5; Thu, 13 Feb 2025 16:10:47 +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 , Kamal Dasu , Stefan Roese , Matthias Brugger , AngeloGioacchino Del Regno , Gregory CLEMENT , Fabrizio Castro Subject: [PATCH v2 01/10] i2c: Introduce i2c_10bit_addr_*_from_msg() helpers Date: Thu, 13 Feb 2025 16:07:15 +0200 Message-ID: <20250213141045.2716943-2-andriy.shevchenko@linux.intel.com> X-Mailer: git-send-email 2.45.1.3035.g276e886db78b In-Reply-To: <20250213141045.2716943-1-andriy.shevchenko@linux.intel.com> References: <20250213141045.2716943-1-andriy.shevchenko@linux.intel.com> Precedence: bulk X-Mailing-List: linux-i2c@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 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 --- include/linux/i2c.h | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/include/linux/i2c.h b/include/linux/i2c.h index 997e80649889..e23b373b6b57 100644 --- a/include/linux/i2c.h +++ b/include/linux/i2c.h @@ -952,6 +952,20 @@ static inline u8 i2c_8bit_addr_from_msg(const struct i2c_msg *msg) return (msg->addr << 1) | (msg->flags & I2C_M_RD); } +/* + * 10-bit address + * addr_1: 5'b11110 | addr[9:8] | (R/nW) + * addr_2: addr[7:0] + */ +static inline u8 i2c_10bit_addr_hi_from_msg(const struct i2c_msg *msg) +{ + return 0xf0 | ((msg->addr & GENMASK(9, 8)) >> 7) | (msg->flags & I2C_M_RD); +} +static inline u8 i2c_10bit_addr_lo_from_msg(const struct i2c_msg *msg) +{ + return msg->addr & GENMASK(7, 0); +} + 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 Thu Feb 13 14:07:16 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Andy Shevchenko X-Patchwork-Id: 864927 Received: from mgamail.intel.com (mgamail.intel.com [198.175.65.18]) (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 3CC9C281360; Thu, 13 Feb 2025 14:10:57 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=198.175.65.18 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1739455859; cv=none; b=Pv/mO6es6oMMY2ubEBGPqSMDOxiY0OvnhEaee764+AL1pNBLnNM5YiACcJAyec7GKigaxRRo2EdgKQ/CNXyX2foKv27JwGbqfv0gUSVPyxnCe9uU+Lp9WrqIxE/synZfamhnPRuaHWExXuprwigwlTNzGAJ9tDjydeIVKwW5hYs= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1739455859; c=relaxed/simple; bh=5ayFkGzSgHATsYNHDJUcvnqqtd8yZvVr8eovxy/IOis=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=qzMyiNk0sKTOlxknmoijFvtP5k1aSMksAODlwBGpYTvrNoJn0PH6Hq8cwmDDpJFPXq/yd4dlnvbQlcBHucle/m61x+uB0nUs+mN60nngNG99vdzGJ3RMOdGQGd2BmUOQN9KEdIe5nPDrXp//wg/Hyu43OvnRLjqa5K55ifFzFRg= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linux.intel.com; spf=none smtp.mailfrom=linux.intel.com; dkim=pass (2048-bit key) header.d=intel.com header.i=@intel.com header.b=J4/EjmP5; arc=none smtp.client-ip=198.175.65.18 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linux.intel.com Authentication-Results: smtp.subspace.kernel.org; spf=none smtp.mailfrom=linux.intel.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=intel.com header.i=@intel.com header.b="J4/EjmP5" DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1739455858; x=1770991858; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version:content-transfer-encoding; bh=5ayFkGzSgHATsYNHDJUcvnqqtd8yZvVr8eovxy/IOis=; b=J4/EjmP5SkXJv7eI02UhKNJE7bYA572rPUtn3QhgDMZzqHM3w4qllpSA uui4wE9b/0f5YYyNSFG2lfnn/qx1ivIg/62ZUpnIzMIvA4tnftVbra7yc s1PJ2I/RynbdwmOWX9n0plOqDxRbXuRzWp+026P9RmhfIKcoY1iv+KOH/ qjiGjFKfHNnlaLo2WHf7miaQWFh4gu+uzIyGIttUD6F82V7k9S2ILEVje 3h8anOTivm082BBI4ee42A8akiBZznbuCs4Nv959RNyBRYd/tsQnG+tLy zpdZ4NlSC2UHHg6vRDZmVCsO197ATXZ9P3M8+60k9JvnZW2PXvBGRP4wW A==; X-CSE-ConnectionGUID: 8uhHfO2aSCi8uOhY4m0rdw== X-CSE-MsgGUID: cNT+s3ddRJeMns6Ia+gPbQ== X-IronPort-AV: E=McAfee;i="6700,10204,11314"; a="40273338" X-IronPort-AV: E=Sophos;i="6.12,310,1728975600"; d="scan'208";a="40273338" Received: from fmviesa009.fm.intel.com ([10.60.135.149]) by orvoesa110.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 13 Feb 2025 06:10:54 -0800 X-CSE-ConnectionGUID: Fg6w4WWGQwiWwz3xKH3QUQ== X-CSE-MsgGUID: jHiuxOpcTsq10u94SUHpXg== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="6.13,282,1732608000"; d="scan'208";a="113815325" Received: from black.fi.intel.com ([10.237.72.28]) by fmviesa009.fm.intel.com with ESMTP; 13 Feb 2025 06:10:48 -0800 Received: by black.fi.intel.com (Postfix, from userid 1003) id 431BF2CA; Thu, 13 Feb 2025 16:10:47 +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 , Kamal Dasu , Stefan Roese , Matthias Brugger , AngeloGioacchino Del Regno , Gregory CLEMENT , Fabrizio Castro Subject: [PATCH v2 02/10] i2c: axxia: Use i2c_10bit_addr_*_from_msg() helpers Date: Thu, 13 Feb 2025 16:07:16 +0200 Message-ID: <20250213141045.2716943-3-andriy.shevchenko@linux.intel.com> X-Mailer: git-send-email 2.45.1.3035.g276e886db78b In-Reply-To: <20250213141045.2716943-1-andriy.shevchenko@linux.intel.com> References: <20250213141045.2716943-1-andriy.shevchenko@linux.intel.com> Precedence: bulk X-Mailing-List: linux-i2c@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Use i2c_10bit_addr_*_from_msg() helpers instead of local copy. No functional change intended. Signed-off-by: Andy Shevchenko --- drivers/i2c/busses/i2c-axxia.c | 21 +++------------------ 1 file changed, 3 insertions(+), 18 deletions(-) diff --git a/drivers/i2c/busses/i2c-axxia.c b/drivers/i2c/busses/i2c-axxia.c index 48916cf45ff7..50030256cd85 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 */ - addr_2 = msg->addr & 0xFF; + if (msg->flags & I2C_M_TEN) { + addr_1 = i2c_10bit_addr_hi_from_msg(msg); + addr_2 = i2c_10bit_addr_lo_from_msg(msg); } 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 Thu Feb 13 14:07:17 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Andy Shevchenko X-Patchwork-Id: 865653 Received: from mgamail.intel.com (mgamail.intel.com [198.175.65.18]) (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 9FBF9281369; Thu, 13 Feb 2025 14:10:57 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=198.175.65.18 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1739455859; cv=none; b=Qw/ca+xxKNCE1OxLO5KPj3hjlq3vX2Aa/FGjAtxnEqnpg2lNyrnja4Vj5Sj2XpvwouHtG6y8uEMEau2hY4Csm7Z+sf2e6xUzzegL4XFRZP03MZo4eMa+uLIFEy/692GrAUFk+e6xxw5EMFWE0FeI4iH0Pnncj8eAbIX1NM7HY9U= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1739455859; c=relaxed/simple; bh=w5OIcmlLWZ5owUnVqwY4hOy9GeQY3Ik9w5ZZ4hRMggA=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=RpzCsq0zdTpVpioi/NAWQpoqwDD6UirOBnppdevjB4QzUcH37KYMIBLXwSoPmOmyHhkVASAumF2Zj0U4L4C7TkFwi6GZZFyWo5ZTo570ixM+1mgSWtAG2iJfFWyvELCxfyi5+2kBj2RBs26W81Uk/scDfNBKTCvv/M36sGFWGT4= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linux.intel.com; spf=none smtp.mailfrom=linux.intel.com; dkim=pass (2048-bit key) header.d=intel.com header.i=@intel.com header.b=GnWMFkAn; arc=none smtp.client-ip=198.175.65.18 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linux.intel.com Authentication-Results: smtp.subspace.kernel.org; spf=none smtp.mailfrom=linux.intel.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=intel.com header.i=@intel.com header.b="GnWMFkAn" DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1739455858; x=1770991858; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version:content-transfer-encoding; bh=w5OIcmlLWZ5owUnVqwY4hOy9GeQY3Ik9w5ZZ4hRMggA=; b=GnWMFkAngEVEJINZz+btJN/Ibr8Co5ynejvvDrXgGvjvj+f7xf/qIPXV f7bhgUgx8m3i4k/68RWT2rRjukqfyHu72AXrk60zOld68mtdY8z/ORS/X 3ZvmJBpVFETKpkSSlKY27HFNVVAr/hfdsDfHoai8zEjiYk/cqppKYrt/b Ja+z3pkfJ45Dttl4ev8HgqisCLPntJ9z4seiw/j2sbHcx10P98FSwSiyB wV4VDLidOu/4HbZGNFxvAiDM7loJ0eU9oQtQ1PrQgUbnUbsD/i1R+l70+ bHKV4qQfFRqoboXUqYEIIcNHrrUKEAw3zB8F54QKzhvY+k9pgn+Grtv5r g==; X-CSE-ConnectionGUID: 9RFSUT42Sq6LA1MmjZ1xQA== X-CSE-MsgGUID: P95A80TkSmeD5y1pK2zeQA== X-IronPort-AV: E=McAfee;i="6700,10204,11314"; a="40273349" X-IronPort-AV: E=Sophos;i="6.12,310,1728975600"; d="scan'208";a="40273349" Received: from fmviesa009.fm.intel.com ([10.60.135.149]) by orvoesa110.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 13 Feb 2025 06:10:54 -0800 X-CSE-ConnectionGUID: RpVy3KmLSyCp1ahol+ineA== X-CSE-MsgGUID: DCwuJTz5RTSR209KgyRuBg== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="6.13,282,1732608000"; d="scan'208";a="113815327" Received: from black.fi.intel.com ([10.237.72.28]) by fmviesa009.fm.intel.com with ESMTP; 13 Feb 2025 06:10:48 -0800 Received: by black.fi.intel.com (Postfix, from userid 1003) id 54C1E31C; Thu, 13 Feb 2025 16:10:47 +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 , Kamal Dasu , Stefan Roese , Matthias Brugger , AngeloGioacchino Del Regno , Gregory CLEMENT , Fabrizio Castro Subject: [PATCH v2 03/10] i2c: bcm-kona: Use i2c_10bit_addr_*_from_msg() helpers Date: Thu, 13 Feb 2025 16:07:17 +0200 Message-ID: <20250213141045.2716943-4-andriy.shevchenko@linux.intel.com> X-Mailer: git-send-email 2.45.1.3035.g276e886db78b In-Reply-To: <20250213141045.2716943-1-andriy.shevchenko@linux.intel.com> References: <20250213141045.2716943-1-andriy.shevchenko@linux.intel.com> Precedence: bulk X-Mailing-List: linux-i2c@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Use i2c_10bit_addr_*_from_msg() helpers instead of local copy. No functional change intended. Signed-off-by: Andy Shevchenko --- drivers/i2c/busses/i2c-bcm-kona.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/drivers/i2c/busses/i2c-bcm-kona.c b/drivers/i2c/busses/i2c-bcm-kona.c index 340fe1305dd9..9d8838bbd938 100644 --- a/drivers/i2c/busses/i2c-bcm-kona.c +++ b/drivers/i2c/busses/i2c-bcm-kona.c @@ -471,12 +471,12 @@ static int bcm_kona_i2c_do_addr(struct bcm_kona_i2c_dev *dev, if (msg->flags & I2C_M_TEN) { /* First byte is 11110XX0 where XX is upper 2 bits */ - addr = 0xF0 | ((msg->addr & 0x300) >> 7); + addr = i2c_10bit_addr_hi_from_msg(msg) & ~I2C_M_RD; if (bcm_kona_i2c_write_byte(dev, addr, 0) < 0) return -EREMOTEIO; /* Second byte is the remaining 8 bits */ - addr = msg->addr & 0xFF; + addr = i2c_10bit_addr_lo_from_msg(msg); if (bcm_kona_i2c_write_byte(dev, addr, 0) < 0) return -EREMOTEIO; @@ -486,7 +486,7 @@ 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; + addr = i2c_10bit_addr_hi_from_msg(msg); if (bcm_kona_i2c_write_byte(dev, addr, 0) < 0) return -EREMOTEIO; } From patchwork Thu Feb 13 14:07:18 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Andy Shevchenko X-Patchwork-Id: 865654 Received: from mgamail.intel.com (mgamail.intel.com [198.175.65.16]) (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 852C9281344; Thu, 13 Feb 2025 14:10:53 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=198.175.65.16 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1739455855; cv=none; b=maxbeGFJEKFM/1mLuasDLGMbmsa2Ih8wciN3iRHnzmF4MXm9pjKVajamp0NbvRWi2CNxNyQqoCVF6ZwbgYe/ouh9gabjcVUUO1XB2injDwVZSDW/q5uEIN2OlEtbR3ntU+QYVEJQ/rBAnVe63diMlaXm8epSYqGdKcYjkDgWbDw= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1739455855; c=relaxed/simple; bh=ctb+xk7MY+w2rTHBydALLPpKRzkmBYWDd9xLRSlOFgk=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=kskDPIQDUmUnmoAHhilzDiO8piAcPSb7/4qItARgrKmKFe29Cjf7G+ExOL2H46lmGyd2FZ/gPNF2SPMY+xO1UJWth5LN93DGu5EDvaUhNuGqGsBRenChc5X4fCicMTW/W+TGYwPydjsj9he2VZsD7721ytuk0ILhNDVlPGa8+WQ= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linux.intel.com; spf=none smtp.mailfrom=linux.intel.com; dkim=pass (2048-bit key) header.d=intel.com header.i=@intel.com header.b=TDaKGdhh; arc=none smtp.client-ip=198.175.65.16 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linux.intel.com Authentication-Results: smtp.subspace.kernel.org; spf=none smtp.mailfrom=linux.intel.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=intel.com header.i=@intel.com header.b="TDaKGdhh" DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1739455854; x=1770991854; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version:content-transfer-encoding; bh=ctb+xk7MY+w2rTHBydALLPpKRzkmBYWDd9xLRSlOFgk=; b=TDaKGdhh0E/Zl0vJORBN+rZDZDaeuXuoYguQ7fcvMzIfwyWwA8o0vFqR 3F6GXx8oLfXbd7lf1VLvtQYWfpUPHJoINrhA4jTHGm6b4Xay2A3lKxfPb IuJvyKtnfC1gfr5XHB8e1y/vzDUAfrXbbXWXyM1woESRlsn0dJDeJueiC e/T04HqxNaXK0UsK0IJFetMYCPyVzBr+LX6Ub+dbUpr56raxahAXGT2Bh jHWfjjhoEeDa+uxyrsfUfiU0+bE7M3xZzCxLcOytKz4B70Irf28JkQN68 RRJbNyVqGFHdXr9xbICFOl30aFwLeC5RuMeX4/M+Fjmt+nCeBZLfataZe A==; X-CSE-ConnectionGUID: TlqD/77cTVyAnGTFIEGIUQ== X-CSE-MsgGUID: W7I08v6eSQmo/yy8hx9v7Q== X-IronPort-AV: E=McAfee;i="6700,10204,11344"; a="40280879" X-IronPort-AV: E=Sophos;i="6.13,282,1732608000"; d="scan'208";a="40280879" Received: from fmviesa010.fm.intel.com ([10.60.135.150]) by orvoesa108.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 13 Feb 2025 06:10:53 -0800 X-CSE-ConnectionGUID: PFagJQ/uTyy19AXdvQFGPQ== X-CSE-MsgGUID: xtLFa7DZSjSggc3zBYFKzQ== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="6.13,282,1732608000"; d="scan'208";a="113682998" Received: from black.fi.intel.com ([10.237.72.28]) by fmviesa010.fm.intel.com with ESMTP; 13 Feb 2025 06:10:48 -0800 Received: by black.fi.intel.com (Postfix, from userid 1003) id 623E1322; Thu, 13 Feb 2025 16:10:47 +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 , Kamal Dasu , Stefan Roese , Matthias Brugger , AngeloGioacchino Del Regno , Gregory CLEMENT , Fabrizio Castro Subject: [PATCH v2 04/10] i2c: brcmstb: Use i2c_10bit_addr_*_from_msg() helpers Date: Thu, 13 Feb 2025 16:07:18 +0200 Message-ID: <20250213141045.2716943-5-andriy.shevchenko@linux.intel.com> X-Mailer: git-send-email 2.45.1.3035.g276e886db78b In-Reply-To: <20250213141045.2716943-1-andriy.shevchenko@linux.intel.com> References: <20250213141045.2716943-1-andriy.shevchenko@linux.intel.com> Precedence: bulk X-Mailing-List: linux-i2c@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Use i2c_10bit_addr_*_from_msg() helpers instead of local copy. No functional change intended. Signed-off-by: Andy Shevchenko --- drivers/i2c/busses/i2c-brcmstb.c | 11 +++++------ 1 file changed, 5 insertions(+), 6 deletions(-) diff --git a/drivers/i2c/busses/i2c-brcmstb.c b/drivers/i2c/busses/i2c-brcmstb.c index 00f1a046e985..5fa30e8926c5 100644 --- a/drivers/i2c/busses/i2c-brcmstb.c +++ b/drivers/i2c/busses/i2c-brcmstb.c @@ -414,23 +414,22 @@ static int brcmstb_i2c_do_addr(struct brcmstb_i2c_dev *dev, if (msg->flags & I2C_M_TEN) { /* First byte is 11110XX0 where XX is upper 2 bits */ - addr = 0xF0 | ((msg->addr & 0x300) >> 7); + addr = i2c_10bit_addr_hi_from_msg(msg) & ~I2C_M_RD; bsc_writel(dev, addr, chip_address); /* Second byte is the remaining 8 bits */ - addr = msg->addr & 0xFF; + addr = i2c_10bit_addr_lo_from_msg(msg); if (brcmstb_i2c_write_data_byte(dev, &addr, 0) < 0) return -EREMOTEIO; if (msg->flags & I2C_M_RD) { /* For read, send restart without stop condition */ - brcmstb_set_i2c_start_stop(dev, COND_RESTART - | COND_NOSTOP); + brcmstb_set_i2c_start_stop(dev, COND_RESTART | COND_NOSTOP); + /* Then re-send the first byte with the read bit set */ - addr = 0xF0 | ((msg->addr & 0x300) >> 7) | 0x01; + addr = i2c_10bit_addr_hi_from_msg(msg); if (brcmstb_i2c_write_data_byte(dev, &addr, 0) < 0) return -EREMOTEIO; - } } else { addr = i2c_8bit_addr_from_msg(msg); From patchwork Thu Feb 13 14:07:19 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Andy Shevchenko X-Patchwork-Id: 864925 Received: from mgamail.intel.com (mgamail.intel.com [198.175.65.19]) (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 5C9932222BB; Thu, 13 Feb 2025 14:11:01 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=198.175.65.19 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1739455863; cv=none; b=NjgVC0bAlHyj84uirl9RpFGWK7NzkVOJqbEOvkoSIiu7lWnzVUtLj4rWFCqaVe+VRGWdRtU9w/R8FO/xEm2aWY24lvbVqM4qp1yp6duBDgFMW6ZodJI7laPuRG4WJySvGE7rDvTDRE56LuVpVtLL7iB/ICsfLNU9jFmHusFC6/o= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1739455863; c=relaxed/simple; bh=ybN5Nygx8hZ29vGg+klw6Hx6uz4qirA/yKTm+8272bo=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=J9goqkP2RJEc7Gec91GpRN6bA/03Wdz/ZntuXdv4+qJVzDpF5BLP0kkFjnltXsQYhqKHP/vSJJG34ZOLME/2LWoQ55JFj8dbpVbf/zDTqsomBp9OO2M4d4q+GXTnFuiyIA/rpUX+R0iLVca18PmiGXrfBD9yeGNRnw8Expo4vro= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linux.intel.com; spf=none smtp.mailfrom=linux.intel.com; dkim=pass (2048-bit key) header.d=intel.com header.i=@intel.com header.b=aNMqMZwV; arc=none smtp.client-ip=198.175.65.19 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linux.intel.com Authentication-Results: smtp.subspace.kernel.org; spf=none smtp.mailfrom=linux.intel.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=intel.com header.i=@intel.com header.b="aNMqMZwV" DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1739455862; x=1770991862; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version:content-transfer-encoding; bh=ybN5Nygx8hZ29vGg+klw6Hx6uz4qirA/yKTm+8272bo=; b=aNMqMZwVlMV6V7OBTn9YiXo0UVPw1jS902+QiLm/Gf6MhMEkgMrnzShJ mezlkF+a/VJ8FF5udJ4Y03CQVqSHxdzAsJgxs91GxUcy8J5WTmvdi0Ezk 7kJcx04UuoCq3C7kChNtPd1yC1GGePp+ZxYwgt5pr5AahV0cOdDwlbucV UNdC3/iQ19h0tLLJbsfnuI8tl7IrGMHqJpow7BXFw6a3GpdZfRQH30Toq erEk7hccchK+ufSqDsMywruJX6HvUhWph9YaQTgjSCd++DBrsJu5vWQeK TqX2B1jcSsMl6yNBpLDXIkP+RmXwygend64qseI+BASGA7DTgqdQgr7HQ w==; X-CSE-ConnectionGUID: 6XaxE0fxTNi+prpXnJLglw== X-CSE-MsgGUID: cNm5Yk11RI2gE61BoQADSw== X-IronPort-AV: E=McAfee;i="6700,10204,11344"; a="40022169" X-IronPort-AV: E=Sophos;i="6.13,282,1732608000"; d="scan'208";a="40022169" Received: from fmviesa005.fm.intel.com ([10.60.135.145]) by orvoesa111.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 13 Feb 2025 06:10:59 -0800 X-CSE-ConnectionGUID: BwV8tZeoSYuucBgwq9XW7g== X-CSE-MsgGUID: zwLfW2AwRTybHJ9Kyd0XPQ== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="6.12,224,1728975600"; d="scan'208";a="117777628" Received: from black.fi.intel.com ([10.237.72.28]) by fmviesa005.fm.intel.com with ESMTP; 13 Feb 2025 06:10:54 -0800 Received: by black.fi.intel.com (Postfix, from userid 1003) id 6F5333BA; Thu, 13 Feb 2025 16:10:47 +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 , Kamal Dasu , Stefan Roese , Matthias Brugger , AngeloGioacchino Del Regno , Gregory CLEMENT , Fabrizio Castro Subject: [PATCH v2 05/10] i2c: eg20t: Use i2c_10bit_addr_*_from_msg() helpers Date: Thu, 13 Feb 2025 16:07:19 +0200 Message-ID: <20250213141045.2716943-6-andriy.shevchenko@linux.intel.com> X-Mailer: git-send-email 2.45.1.3035.g276e886db78b In-Reply-To: <20250213141045.2716943-1-andriy.shevchenko@linux.intel.com> References: <20250213141045.2716943-1-andriy.shevchenko@linux.intel.com> Precedence: bulk X-Mailing-List: linux-i2c@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Use i2c_10bit_addr_*_from_msg() helpers 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..efdaddf99f9e 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_hi_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(i2c_10bit_addr_lo_from_msg(msgs), 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_hi_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(i2c_10bit_addr_lo_from_msg(msgs), 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_hi_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 Thu Feb 13 14:07:20 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Andy Shevchenko X-Patchwork-Id: 865652 Received: from mgamail.intel.com (mgamail.intel.com [198.175.65.19]) (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 72994281340; Thu, 13 Feb 2025 14:10:59 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=198.175.65.19 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1739455861; cv=none; b=J6yj4c0I8pjoVIYqyKUCvAE8zhtdPYyfgJq9Zkla6rOBlBBMRDrbf3HGaZyLqrB4b06fTxiBtuleucqEp9e74E9MZr3VYZeL+Da/dtkoVfUE7nGbjUhY+oElUrh8KfQM/6YWbwPZnBSjeDdKSIKFKdeQR/Nno5g+dZV6w5oYINs= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1739455861; c=relaxed/simple; bh=LW/jlQRmBR0/tm3s8iRoswrCxeV0lv1udBQdBgsISMA=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=nBn4uBlnTc9UHg+Pn39evWkm/O+deQRkSwQyM5d6kkOBbjVsKCtqH3g8MT/sMxuRxAGkn7E183l2y61QY6Fudt9EyLi/LdJlioX9a1DxsoLMa47IuPyQqKjy6yuEHoRPMnxQ7XjP5s2nXzWwrnSgnWwhZXm+sp6dSM8ef548Sxg= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linux.intel.com; spf=none smtp.mailfrom=linux.intel.com; dkim=pass (2048-bit key) header.d=intel.com header.i=@intel.com header.b=UueNSAIn; arc=none smtp.client-ip=198.175.65.19 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linux.intel.com Authentication-Results: smtp.subspace.kernel.org; spf=none smtp.mailfrom=linux.intel.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=intel.com header.i=@intel.com header.b="UueNSAIn" DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1739455860; x=1770991860; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version:content-transfer-encoding; bh=LW/jlQRmBR0/tm3s8iRoswrCxeV0lv1udBQdBgsISMA=; b=UueNSAInowIuXD7SvqcEsI15mGk0vIOFYymU2wY+rBp3RIKhxWH/hsl/ yfNXF+sPAYF5ntM/jqNBjIk4iE+2PmDj0x5OV3xO3tj0MkAIC3Iv7F1tW g7iKvq+Dj8ihQgQfwo/144pMt4tqkM1NPCHj9xab7ClwAO2Ljrezq4EU0 3ZNDBMNwNTVctGAcopP7SpMzuGd33k4jQvfBHRYDMR2Gw1SIy7mE8g0g0 YuqbYQt52GgaKNXQoNX2qOFOvvngv4ItDnbxpqqdmsRJ2XWrlwhYFTQtO DyrHiEd/1PTxvjv4XRO631mOOml/RcVLJuS7sUQclb+MztI8vFSmvMKtV g==; X-CSE-ConnectionGUID: V81/pENHS4WVwAdwYWYkcw== X-CSE-MsgGUID: vQeRlaOTS1uhHBXfCsDtCQ== X-IronPort-AV: E=McAfee;i="6700,10204,11344"; a="40022154" X-IronPort-AV: E=Sophos;i="6.13,282,1732608000"; d="scan'208";a="40022154" Received: from fmviesa005.fm.intel.com ([10.60.135.145]) by orvoesa111.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 13 Feb 2025 06:10:59 -0800 X-CSE-ConnectionGUID: 1FUUSg7TR163ZoOY/IYeZw== X-CSE-MsgGUID: DbFEjdE7RMe9DivjowJdUQ== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="6.12,224,1728975600"; d="scan'208";a="117777627" Received: from black.fi.intel.com ([10.237.72.28]) by fmviesa005.fm.intel.com with ESMTP; 13 Feb 2025 06:10:54 -0800 Received: by black.fi.intel.com (Postfix, from userid 1003) id 7CED648C; Thu, 13 Feb 2025 16:10:47 +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 , Kamal Dasu , Stefan Roese , Matthias Brugger , AngeloGioacchino Del Regno , Gregory CLEMENT , Fabrizio Castro Subject: [PATCH v2 06/10] i2c: kempld: Use i2c_10bit_addr_*_from_msg() helpers Date: Thu, 13 Feb 2025 16:07:20 +0200 Message-ID: <20250213141045.2716943-7-andriy.shevchenko@linux.intel.com> X-Mailer: git-send-email 2.45.1.3035.g276e886db78b In-Reply-To: <20250213141045.2716943-1-andriy.shevchenko@linux.intel.com> References: <20250213141045.2716943-1-andriy.shevchenko@linux.intel.com> Precedence: bulk X-Mailing-List: linux-i2c@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Use i2c_10bit_addr_*_from_msg() helpers instead of local copy. No functional change intended. Signed-off-by: Andy Shevchenko --- drivers/i2c/busses/i2c-kempld.c | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/drivers/i2c/busses/i2c-kempld.c b/drivers/i2c/busses/i2c-kempld.c index 212196af68ba..9b4c7cba62b6 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_hi_from_msg(msg); i2c->state = STATE_ADDR10; } else { addr = i2c_8bit_addr_from_msg(i2c->msg); @@ -132,10 +130,12 @@ static int kempld_i2c_process(struct kempld_i2c_data *i2c) /* Second part of 10 bit addressing */ if (i2c->state == STATE_ADDR10) { - kempld_write8(pld, KEMPLD_I2C_DATA, i2c->msg->addr & 0xff); + addr = i2c_10bit_addr_lo_from_msg(msg); + i2c->state = STATE_START; + + kempld_write8(pld, KEMPLD_I2C_DATA, addr); kempld_write8(pld, KEMPLD_I2C_CMD, I2C_CMD_WRITE); - i2c->state = STATE_START; return 0; } From patchwork Thu Feb 13 14:07:21 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Andy Shevchenko X-Patchwork-Id: 865651 Received: from mgamail.intel.com (mgamail.intel.com [198.175.65.17]) (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 C730E221541; Thu, 13 Feb 2025 14:10:59 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=198.175.65.17 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1739455861; cv=none; b=TnRryiPURsRQirMx2moH4Qau4kjp9PvK5X52CyxWXJBRoAfi01xwCQK4hHN2aQWI2vM/MFz3sQdIHKstWqTQ6Ysa0OXyK3Q+NyRtTH5MHJcwjCpoOkZD05sFjEEqSQQ3I+UHR3ffpXZYD9lBpyR3YtEWs06oZ5EPC+dDZJN4ncQ= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1739455861; c=relaxed/simple; bh=1jajp4kJf0AGawBV2YpqEpiYtshZwSib+DRflhjaZMg=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=C8TX4kvW+v0hydtU6O4IX4hrSlyLrWca4RqInhGE6BT3I6NBADLOx7sKgU8EAJ4IxNNSyu3qB8SZtFdCFxUnuJrecNPf3guxVzTM8y3F0C0tJnUBUmIdXAt4/O3NW1P0g6UMfTdWvTB1wbHEPW21dfsfMKCYmjsU4GLtgQu/RAc= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linux.intel.com; spf=none smtp.mailfrom=linux.intel.com; dkim=pass (2048-bit key) header.d=intel.com header.i=@intel.com header.b=fuXLthHC; arc=none smtp.client-ip=198.175.65.17 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linux.intel.com Authentication-Results: smtp.subspace.kernel.org; spf=none smtp.mailfrom=linux.intel.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=intel.com header.i=@intel.com header.b="fuXLthHC" DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1739455860; x=1770991860; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version:content-transfer-encoding; bh=1jajp4kJf0AGawBV2YpqEpiYtshZwSib+DRflhjaZMg=; b=fuXLthHCTEtfTDb14CCwhwcAIlKfMm+VRmnuKmOI75zM+QAYFjbl2Bj9 Ola2HvdMlkp2Oex+VMZQ+ucSR2LZt4JdyH3goaM1ais6QuqCxRqHdLFj9 zjgb8xpP1m6VVJT7CIUeOu3YGsLqeR5XNEUmCCdiXpwjka5oKXUW5hJGj 4Q90G8Hd+Rii+nDODObWskfrUr/Drmw064rvLzjzZGfGTZzfk7bSacMx+ 1y0qJgFSxkjd9loS1zfrdJA6yaEfMBh5JOpK894tKcyxFb+UcFj9czLq4 KOGHEBSEu2CGmNBxx1QGg0IKJALZmTg0I31iqryw7mCvz6xRlKqKvYE+e Q==; X-CSE-ConnectionGUID: hLm4HMEaTFSqJoJCelrdxQ== X-CSE-MsgGUID: ysooSF+kTiSu4FmlGnzoMQ== X-IronPort-AV: E=McAfee;i="6700,10204,11344"; a="40190567" X-IronPort-AV: E=Sophos;i="6.13,282,1732608000"; d="scan'208";a="40190567" Received: from orviesa004.jf.intel.com ([10.64.159.144]) by orvoesa109.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 13 Feb 2025 06:10:59 -0800 X-CSE-ConnectionGUID: +puV+GHOQzSmmh3V0YhlCg== X-CSE-MsgGUID: f8x//h/JTNyLD4hu3lbJmQ== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="6.13,282,1732608000"; d="scan'208";a="118162152" Received: from black.fi.intel.com ([10.237.72.28]) by orviesa004.jf.intel.com with ESMTP; 13 Feb 2025 06:10:54 -0800 Received: by black.fi.intel.com (Postfix, from userid 1003) id 8995F4AE; Thu, 13 Feb 2025 16:10:47 +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 , Kamal Dasu , Stefan Roese , Matthias Brugger , AngeloGioacchino Del Regno , Gregory CLEMENT , Fabrizio Castro Subject: [PATCH v2 07/10] i2c: mt7621: Use i2c_10bit_addr_*_from_msg() helpers Date: Thu, 13 Feb 2025 16:07:21 +0200 Message-ID: <20250213141045.2716943-8-andriy.shevchenko@linux.intel.com> X-Mailer: git-send-email 2.45.1.3035.g276e886db78b In-Reply-To: <20250213141045.2716943-1-andriy.shevchenko@linux.intel.com> References: <20250213141045.2716943-1-andriy.shevchenko@linux.intel.com> Precedence: bulk X-Mailing-List: linux-i2c@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Use i2c_10bit_addr_*_from_msg() helpers instead of local copy. No functional change intended. Signed-off-by: Andy Shevchenko --- drivers/i2c/busses/i2c-mt7621.c | 20 ++++++++------------ 1 file changed, 8 insertions(+), 12 deletions(-) diff --git a/drivers/i2c/busses/i2c-mt7621.c b/drivers/i2c/busses/i2c-mt7621.c index 2103f21f9ddd..0a288c998419 100644 --- a/drivers/i2c/busses/i2c-mt7621.c +++ b/drivers/i2c/busses/i2c-mt7621.c @@ -164,22 +164,18 @@ 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 |= (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) - goto err_timeout; + addr = i2c_10bit_addr_hi_from_msg(pmsg); + addr |= i2c_10bit_addr_lo_from_msg(pmsg) << 8; + len = 2; } else { /* 7 bits address */ addr = i2c_8bit_addr_from_msg(pmsg); - iowrite32(addr, i2c->base + REG_SM0D0_REG); - ret = mtk_i2c_cmd(i2c, SM0CTL1_WRITE, 1); - if (ret) - goto err_timeout; + len = 1; } + iowrite32(addr, i2c->base + REG_SM0D0_REG); + ret = mtk_i2c_cmd(i2c, SM0CTL1_WRITE, len); + if (ret) + goto err_timeout; /* check address ACK */ if (!(pmsg->flags & I2C_M_IGNORE_NAK)) { From patchwork Thu Feb 13 14:07:22 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Andy Shevchenko X-Patchwork-Id: 865649 Received: from mgamail.intel.com (mgamail.intel.com [198.175.65.17]) (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 EB2CA221574; Thu, 13 Feb 2025 14:11:01 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=198.175.65.17 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1739455863; cv=none; b=DMFB4gkTvNMthWPUB6QfcHDD9AoZ69PynpLOxW3SFg8n60x+llBl8POrS0ydRG+L4kjfMkfRJShjks5GaFZOUohGybqwYljXGZ6UUR1/W/mljXcF9l181gr3CnPT+E8QE9dmh+TCA0JE4ZOJqGPjBT103xYL2ZhpsA989NtBABU= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1739455863; c=relaxed/simple; bh=NuQBePCeibtx8uP9iufq1Kz+enaMxX19L9oTrmUixUQ=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=Zmyb0rzJzr372HlQc4O4T+zAvQ8FjSK+UZtwuzSoXYn3oooDQ/3CEmXrb9YLHvTUi63T29lAOqXOsjEQhYrTNO/2IO4oGevmdqUd+zlyDLGqpDShWM14gKIGImbLf7IYgUzLUoeH+EEEDKUGIyj6vwB+Gc+bt0kF5T61FgaUSZo= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linux.intel.com; spf=none smtp.mailfrom=linux.intel.com; dkim=pass (2048-bit key) header.d=intel.com header.i=@intel.com header.b=NDMWqf1G; arc=none smtp.client-ip=198.175.65.17 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linux.intel.com Authentication-Results: smtp.subspace.kernel.org; spf=none smtp.mailfrom=linux.intel.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=intel.com header.i=@intel.com header.b="NDMWqf1G" DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1739455863; x=1770991863; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version:content-transfer-encoding; bh=NuQBePCeibtx8uP9iufq1Kz+enaMxX19L9oTrmUixUQ=; b=NDMWqf1GA6jhoSv3oz8CQutkTGfZRxNdH3CluOHLOFuf5ibf7pFwk+59 wswEr7fwWBVbMOWGjJiDcf+eOS0kBO+yu2NcZ9bPjgdOOEruS8BWPdJgK AR8NSkK8BvA6fYM4gD16p+JkJgW6M0K7FsxkchgsPiWh2T3mwOHJm5INf x7ZPXyAA096qbv3c3Jc0yYDzscxEhv9913XP3Lv/GTB9gt5pOBSbsFfFd 6a9zp6nKgY8PLonTxoTfPeHFxeIjgjqJosRb5BThB9SYZ6wqilqxdoHby HQf0yEwP+NDM9yepRoUGDvXr6U1Z6OetiSJpLSSp088gbEZytqNb1Prad w==; X-CSE-ConnectionGUID: dF5Sdw5eRraNFwDQp15qMA== X-CSE-MsgGUID: athNnS14QxK/uSUYIO8XHg== X-IronPort-AV: E=McAfee;i="6700,10204,11344"; a="40190588" X-IronPort-AV: E=Sophos;i="6.13,282,1732608000"; d="scan'208";a="40190588" Received: from orviesa004.jf.intel.com ([10.64.159.144]) by orvoesa109.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 13 Feb 2025 06:11:00 -0800 X-CSE-ConnectionGUID: Ozai6iqES8u4+I7UPbMlLg== X-CSE-MsgGUID: wXVa540yT0SgcbkKIN8gyg== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="6.13,282,1732608000"; d="scan'208";a="118162153" Received: from black.fi.intel.com ([10.237.72.28]) by orviesa004.jf.intel.com with ESMTP; 13 Feb 2025 06:10:54 -0800 Received: by black.fi.intel.com (Postfix, from userid 1003) id 940F74B0; Thu, 13 Feb 2025 16:10:47 +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 , Kamal Dasu , Stefan Roese , Matthias Brugger , AngeloGioacchino Del Regno , Gregory CLEMENT , Fabrizio Castro Subject: [PATCH v2 08/10] i2c: rzv2m: Use i2c_10bit_addr_*_from_msg() helpers Date: Thu, 13 Feb 2025 16:07:22 +0200 Message-ID: <20250213141045.2716943-9-andriy.shevchenko@linux.intel.com> X-Mailer: git-send-email 2.45.1.3035.g276e886db78b In-Reply-To: <20250213141045.2716943-1-andriy.shevchenko@linux.intel.com> References: <20250213141045.2716943-1-andriy.shevchenko@linux.intel.com> Precedence: bulk X-Mailing-List: linux-i2c@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Use i2c_10bit_addr_*_from_msg() helpers instead of local copy. No functional change intended. Signed-off-by: Andy Shevchenko --- drivers/i2c/busses/i2c-rzv2m.c | 15 +++++---------- 1 file changed, 5 insertions(+), 10 deletions(-) diff --git a/drivers/i2c/busses/i2c-rzv2m.c b/drivers/i2c/busses/i2c-rzv2m.c index 02b76e24a476..53762cc56d28 100644 --- a/drivers/i2c/busses/i2c-rzv2m.c +++ b/drivers/i2c/busses/i2c-rzv2m.c @@ -287,20 +287,15 @@ 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); - /* Send 1st address(extend code) */ + /* 10-bit address: Send 1st address(extend code) */ + addr = i2c_10bit_addr_hi_from_msg(msg); ret = rzv2m_i2c_write_with_ack(priv, addr); if (ret) return ret; - /* Send 2nd address */ - ret = rzv2m_i2c_write_with_ack(priv, msg->addr & 0xff); + /* 10-bit address: Send 2nd address */ + addr = i2c_10bit_addr_lo_from_msg(msg); + ret = rzv2m_i2c_write_with_ack(priv, addr); } else { /* 7-bit address */ addr = i2c_8bit_addr_from_msg(msg); From patchwork Thu Feb 13 14:07:23 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Andy Shevchenko X-Patchwork-Id: 864924 Received: from mgamail.intel.com (mgamail.intel.com [198.175.65.19]) (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 BF3252222CF; Thu, 13 Feb 2025 14:11:01 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=198.175.65.19 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1739455863; cv=none; b=A6+3BiPUc20TgAJ3oe9Oz77h8V8CTyFAx/9c8Ie3V4gfIJDXhM8z67j+e2n0X9RTMfslK74g9OqIuiqprBie5DT9igG17Q3nhpD4oJXP3fUZyquhCImbglIbCBUBRQrR8egLWcxF+H4EUgqPztMnGruL3LEfW/9z3dEs1S5BZ5s= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1739455863; c=relaxed/simple; bh=lv1tv82hXtQIfwGuvcKrMPsoiMB8uNGpqj8IbWXXAh0=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=FVcKeztoGQ2PpxjVdjGLo9VybsQu4cHMWChpJwDsc5lMW2+aEz/ZuExX1Jr5oJbmk3l8ifykTNnggQb2Shod5RkPugqg6rwwMFH0XTM8oMwG/IfeBOo/9Tp3BeqfwPjVGU762RjDyQ0qEsJvetqbQ7oqaeEt+1WXFM2kbjZB7/8= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linux.intel.com; spf=none smtp.mailfrom=linux.intel.com; dkim=pass (2048-bit key) header.d=intel.com header.i=@intel.com header.b=lxeu3qN7; arc=none smtp.client-ip=198.175.65.19 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linux.intel.com Authentication-Results: smtp.subspace.kernel.org; spf=none smtp.mailfrom=linux.intel.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=intel.com header.i=@intel.com header.b="lxeu3qN7" DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1739455862; x=1770991862; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version:content-transfer-encoding; bh=lv1tv82hXtQIfwGuvcKrMPsoiMB8uNGpqj8IbWXXAh0=; b=lxeu3qN7+kP72Xz4ley2I6YzHvJfNS9/0N6OWfI+CQyMJLLrvb0GjLQe B69PiAmOoKoPE9NJBbSjFPO8IWivftoZDCh+Hgak8NOI8wPTaTYll7fEs gIiwQr0Paw+YCLg3rFAPzulZILUqheURygK36KtOk0smDc/rWfYhBmxZq 8kSU5uaiSccN+StOXouVYnIzQEPl5TMjl1qHwSQRl5O/8fYAXC4l0KeFT w1OycDcuRwSKEdYR+SEFsicqEWheYEC+OIlwIh5xQ0+0CjPuyhZiaFV/q h9PlkwsviLGUiNBMJ23yR9Ekaz1AVg8BDWlb+T/zqwk3Y/i7sIwxMCWD8 g==; X-CSE-ConnectionGUID: Lv5oarnbTpK0V4BqwnCnjA== X-CSE-MsgGUID: sykKI9hqT5CTEj8XZdL/Ig== X-IronPort-AV: E=McAfee;i="6700,10204,11344"; a="40022185" X-IronPort-AV: E=Sophos;i="6.13,282,1732608000"; d="scan'208";a="40022185" Received: from fmviesa005.fm.intel.com ([10.60.135.145]) by orvoesa111.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 13 Feb 2025 06:10:59 -0800 X-CSE-ConnectionGUID: n3V6PYqWS0S8C5PXMH2KjA== X-CSE-MsgGUID: g0HtOaHJSpCzdWcGox5aEQ== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="6.12,224,1728975600"; d="scan'208";a="117777629" Received: from black.fi.intel.com ([10.237.72.28]) by fmviesa005.fm.intel.com with ESMTP; 13 Feb 2025 06:10:54 -0800 Received: by black.fi.intel.com (Postfix, from userid 1003) id 9E6334D1; Thu, 13 Feb 2025 16:10:47 +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 , Kamal Dasu , Stefan Roese , Matthias Brugger , AngeloGioacchino Del Regno , Gregory CLEMENT , Fabrizio Castro Subject: [PATCH v2 09/10] i2c: ibm_iic: Use i2c_*bit_addr*_from_msg() helpers Date: Thu, 13 Feb 2025 16:07:23 +0200 Message-ID: <20250213141045.2716943-10-andriy.shevchenko@linux.intel.com> X-Mailer: git-send-email 2.45.1.3035.g276e886db78b In-Reply-To: <20250213141045.2716943-1-andriy.shevchenko@linux.intel.com> References: <20250213141045.2716943-1-andriy.shevchenko@linux.intel.com> Precedence: bulk X-Mailing-List: linux-i2c@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Use i2c_*bit_addr*_from_msg() helpers instead of local copy. No functional change intended. Signed-off-by: Andy Shevchenko --- drivers/i2c/busses/i2c-ibm_iic.c | 14 ++++++-------- 1 file changed, 6 insertions(+), 8 deletions(-) diff --git a/drivers/i2c/busses/i2c-ibm_iic.c b/drivers/i2c/busses/i2c-ibm_iic.c index c76c4116ddc7..6bf45d752ff9 100644 --- a/drivers/i2c/busses/i2c-ibm_iic.c +++ b/drivers/i2c/busses/i2c-ibm_iic.c @@ -512,19 +512,17 @@ static int iic_xfer_bytes(struct ibm_iic_private* dev, struct i2c_msg* pm, static inline void iic_address(struct ibm_iic_private* dev, struct i2c_msg* msg) { volatile struct iic_regs __iomem *iic = dev->vaddr; - u16 addr = msg->addr; DBG2("%d: iic_address, 0x%03x (%d-bit)\n", dev->idx, - addr, msg->flags & I2C_M_TEN ? 10 : 7); + msg->addr, msg->flags & I2C_M_TEN ? 10 : 7); - if (msg->flags & I2C_M_TEN){ + if (msg->flags & I2C_M_TEN) { out_8(&iic->cntl, CNTL_AMD); - out_8(&iic->lmadr, addr); - out_8(&iic->hmadr, 0xf0 | ((addr >> 7) & 0x06)); - } - else { + out_8(&iic->lmadr, i2c_10bit_addr_lo_from_msg(msg)); + out_8(&iic->hmadr, i2c_10bit_addr_hi_from_msg(msg) & ~I2C_M_RD); + } else { out_8(&iic->cntl, 0); - out_8(&iic->lmadr, addr << 1); + out_8(&iic->lmadr, i2c_8bit_addr_from_msg(msg) & ~I2C_M_RD); } } From patchwork Thu Feb 13 14:07:24 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Andy Shevchenko X-Patchwork-Id: 865650 Received: from mgamail.intel.com (mgamail.intel.com [198.175.65.17]) (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 906192222C3; Thu, 13 Feb 2025 14:11:01 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=198.175.65.17 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1739455863; cv=none; b=aq05Z7LFtjjusQuimTJGk3NF1Dtd5jfqPRg0C8eBOyq7AoPKaCLOROUaAO4eOB8lSsQGquEScymMdMW/yS7hADBsIUMgjwl4eTLCR0P2AP021GkuuVyGFXLuOoDge2LkTyqWVqAyQ+oYzzJ9gMaRy+6t8jFXHAw4+HIf4/uRC88= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1739455863; c=relaxed/simple; bh=VA1tfbqQVZF5jK+NE8+kVijBTK5o1VLx6VaYd48u/1E=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=L7wl33gyi3CA4BCui6qp/RfW/ERPJ/9G7XHBzZ/T73WmqxfPZnurgI+yH2D+XcXnHA6OavaAUc7jr3nimSSb58fpdqxWBE7KPKeiOqQqQUnoDcaZMUhLwS0LtKNPtNFwZbxQamW1mNcM+tptx+CFPITLWLDwayMl0urYREuTe68= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linux.intel.com; spf=none smtp.mailfrom=linux.intel.com; dkim=pass (2048-bit key) header.d=intel.com header.i=@intel.com header.b=iq7PF/fN; arc=none smtp.client-ip=198.175.65.17 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linux.intel.com Authentication-Results: smtp.subspace.kernel.org; spf=none smtp.mailfrom=linux.intel.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=intel.com header.i=@intel.com header.b="iq7PF/fN" DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1739455862; x=1770991862; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version:content-transfer-encoding; bh=VA1tfbqQVZF5jK+NE8+kVijBTK5o1VLx6VaYd48u/1E=; b=iq7PF/fNiJev5id6TGOsi3z9Tr3zWGRtOE0QiaFvQqRL4tJzbmf7TuLQ lp973ENHqhQjfwdsjV3SdeXjbC6TwSGFxsMqlQfLjAV3AZ+E7A2nt0fmP 8zyCSJL8UoKzXuX1zTURBbLhRaco/lHKhNMQ1kmHuubZsMfWP07+rx2sa YETfjmuS4Ut9/yq7QHk1j24+ZAATmQw1D3fpCiE8enzKRKQHa6orYazB8 2iGVXtaQdUIM60etNv1GW8t/BABshPbbE1/kgCGurCDExTw7zFSKFSDx/ O7jcFKYVsuVEPyEQkxDz4BIvgkCbRVfxZ9nn2bor4mJ9WHz+er5BLuguI w==; X-CSE-ConnectionGUID: EiLCZZXcQPO/oadTK7BGmg== X-CSE-MsgGUID: d8tf/KtPSA2PizGLX2ARTQ== X-IronPort-AV: E=McAfee;i="6700,10204,11344"; a="40190582" X-IronPort-AV: E=Sophos;i="6.13,282,1732608000"; d="scan'208";a="40190582" Received: from orviesa004.jf.intel.com ([10.64.159.144]) by orvoesa109.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 13 Feb 2025 06:10:59 -0800 X-CSE-ConnectionGUID: CC5XQBZoRu+4nrrfc8HM9A== X-CSE-MsgGUID: /UI5GoifQOepe8vvQPR4ww== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="6.13,282,1732608000"; d="scan'208";a="118162151" Received: from black.fi.intel.com ([10.237.72.28]) by orviesa004.jf.intel.com with ESMTP; 13 Feb 2025 06:10:54 -0800 Received: by black.fi.intel.com (Postfix, from userid 1003) id A899058B; Thu, 13 Feb 2025 16:10:47 +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 , Kamal Dasu , Stefan Roese , Matthias Brugger , AngeloGioacchino Del Regno , Gregory CLEMENT , Fabrizio Castro Subject: [PATCH v2 10/10] i2c: mv64xxx: Use i2c_*bit_addr*_from_msg() helpers Date: Thu, 13 Feb 2025 16:07:24 +0200 Message-ID: <20250213141045.2716943-11-andriy.shevchenko@linux.intel.com> X-Mailer: git-send-email 2.45.1.3035.g276e886db78b In-Reply-To: <20250213141045.2716943-1-andriy.shevchenko@linux.intel.com> References: <20250213141045.2716943-1-andriy.shevchenko@linux.intel.com> Precedence: bulk X-Mailing-List: linux-i2c@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 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 | 12 +++--------- 1 file changed, 3 insertions(+), 9 deletions(-) diff --git a/drivers/i2c/busses/i2c-mv64xxx.c b/drivers/i2c/busses/i2c-mv64xxx.c index 874309580c33..8fc26a511320 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->addr2 = (u32)msg->addr & 0xff; + drv_data->addr1 = i2c_10bit_addr_hi_from_msg(msg); + drv_data->addr2 = i2c_10bit_addr_lo_from_msg(msg); } 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; } }