Patch Detail
get:
Show a patch.
patch:
Update a patch.
put:
Update a patch.
GET /api/patches/2215398/?format=api
{ "id": 2215398, "url": "http://patchwork.ozlabs.org/api/patches/2215398/?format=api", "web_url": "http://patchwork.ozlabs.org/project/linux-i2c/patch/20260324-i2c-mux-v9-3-5292b0608243@gmail.com/", "project": { "id": 35, "url": "http://patchwork.ozlabs.org/api/projects/35/?format=api", "name": "Linux I2C development", "link_name": "linux-i2c", "list_id": "linux-i2c.vger.kernel.org", "list_email": "linux-i2c@vger.kernel.org", "web_url": "", "scm_url": "", "webscm_url": "", "list_archive_url": "", "list_archive_url_format": "", "commit_url_format": "" }, "msgid": "<20260324-i2c-mux-v9-3-5292b0608243@gmail.com>", "list_archive_url": null, "date": "2026-03-24T13:54:17", "name": "[v9,3/5] i2c: davinci: calculate bus freq from Hz instead of kHz", "commit_ref": null, "pull_url": null, "state": "new", "archived": false, "hash": "edce8b6fa207934d24a066ef83e26c0aad21c84e", "submitter": { "id": 46679, "url": "http://patchwork.ozlabs.org/api/people/46679/?format=api", "name": "Marcus Folkesson", "email": "marcus.folkesson@gmail.com" }, "delegate": null, "mbox": "http://patchwork.ozlabs.org/project/linux-i2c/patch/20260324-i2c-mux-v9-3-5292b0608243@gmail.com/mbox/", "series": [ { "id": 497295, "url": "http://patchwork.ozlabs.org/api/series/497295/?format=api", "web_url": "http://patchwork.ozlabs.org/project/linux-i2c/list/?series=497295", "date": "2026-03-24T13:54:14", "name": "I2C Mux per channel bus speed", "version": 9, "mbox": "http://patchwork.ozlabs.org/series/497295/mbox/" } ], "comments": "http://patchwork.ozlabs.org/api/patches/2215398/comments/", "check": "pending", "checks": "http://patchwork.ozlabs.org/api/patches/2215398/checks/", "tags": {}, "related": [], "headers": { "Return-Path": "\n <linux-i2c+bounces-16698-incoming=patchwork.ozlabs.org@vger.kernel.org>", "X-Original-To": [ "incoming@patchwork.ozlabs.org", "linux-i2c@vger.kernel.org" ], "Delivered-To": "patchwork-incoming@legolas.ozlabs.org", "Authentication-Results": [ "legolas.ozlabs.org;\n\tdkim=pass (2048-bit key;\n unprotected) header.d=gmail.com header.i=@gmail.com header.a=rsa-sha256\n header.s=20251104 header.b=qEYr0Kz4;\n\tdkim-atps=neutral", "legolas.ozlabs.org;\n spf=pass (sender SPF authorized) smtp.mailfrom=vger.kernel.org\n (client-ip=172.232.135.74; helo=sto.lore.kernel.org;\n envelope-from=linux-i2c+bounces-16698-incoming=patchwork.ozlabs.org@vger.kernel.org;\n receiver=patchwork.ozlabs.org)", "smtp.subspace.kernel.org;\n\tdkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com\n header.b=\"qEYr0Kz4\"", "smtp.subspace.kernel.org;\n arc=none smtp.client-ip=209.85.167.51", "smtp.subspace.kernel.org;\n dmarc=pass (p=none dis=none) header.from=gmail.com", "smtp.subspace.kernel.org;\n spf=pass smtp.mailfrom=gmail.com" ], "Received": [ "from sto.lore.kernel.org (sto.lore.kernel.org [172.232.135.74])\n\t(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)\n\t key-exchange x25519 server-signature ECDSA (secp384r1) server-digest SHA384)\n\t(No client certificate requested)\n\tby legolas.ozlabs.org (Postfix) with ESMTPS id 4fgBPk5bK1z1y1g\n\tfor <incoming@patchwork.ozlabs.org>; Wed, 25 Mar 2026 00:55:22 +1100 (AEDT)", "from smtp.subspace.kernel.org (conduit.subspace.kernel.org\n [100.90.174.1])\n\tby sto.lore.kernel.org (Postfix) with ESMTP id 454053019CB4\n\tfor <incoming@patchwork.ozlabs.org>; Tue, 24 Mar 2026 13:55:08 +0000 (UTC)", "from localhost.localdomain (localhost.localdomain [127.0.0.1])\n\tby smtp.subspace.kernel.org (Postfix) with ESMTP id 432493FE64A;\n\tTue, 24 Mar 2026 13:54:52 +0000 (UTC)", "from mail-lf1-f51.google.com (mail-lf1-f51.google.com\n [209.85.167.51])\n\t(using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits))\n\t(No client certificate requested)\n\tby smtp.subspace.kernel.org (Postfix) with ESMTPS id CC35A3FE37D\n\tfor <linux-i2c@vger.kernel.org>; Tue, 24 Mar 2026 13:54:48 +0000 (UTC)", "by mail-lf1-f51.google.com with SMTP id\n 2adb3069b0e04-5a299cba953so510585e87.2\n for <linux-i2c@vger.kernel.org>; Tue, 24 Mar 2026 06:54:48 -0700 (PDT)", "from [192.168.1.135] (83-233-6-197.cust.bredband2.com.\n [83.233.6.197])\n by smtp.gmail.com with ESMTPSA id\n 2adb3069b0e04-5a285207454sm3162823e87.48.2026.03.24.06.54.43\n (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);\n Tue, 24 Mar 2026 06:54:44 -0700 (PDT)" ], "ARC-Seal": "i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116;\n\tt=1774360491; cv=none;\n b=WyMp0DszwPhS7KVIF1oDgA/TUr3pgrIBnwnmGmNpD/vSWvmaSTcCSxxOteAjUn1xyGAGerQrI+bXVh+F/B6BHMZfuMkeGiSJ1OUzOdFRNqTjSeNMRKqgxmZqc8GaMmW/shHAzZof1ICX0/Klt2c48jxQUDoJdZww25YJzEJn1IY=", "ARC-Message-Signature": "i=1; a=rsa-sha256; d=subspace.kernel.org;\n\ts=arc-20240116; t=1774360491; c=relaxed/simple;\n\tbh=vsSIa0c3XvGrZdSaP0ssvqDlYgrE1wL3DrKCmY5NXO8=;\n\th=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References:\n\t In-Reply-To:To:Cc;\n b=ZDGvOZUiE9lp1Haa6hsE+pKnDZFh08+g6KBzQAvyyMjW1PNkT0DhY1XlLrRoG5fOdZ8D8RgyZAEpHJBc9/YpVpxS5v5Rr1PoO8pwJUXcN/RcwEbJM7Ya84wS6cmnXA3B9n7VphSgIB9BNy82kpPE5Rhjt4mHPIeWRluk1KjjueI=", "ARC-Authentication-Results": "i=1; smtp.subspace.kernel.org;\n dmarc=pass (p=none dis=none) header.from=gmail.com;\n spf=pass smtp.mailfrom=gmail.com;\n dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com\n header.b=qEYr0Kz4; arc=none smtp.client-ip=209.85.167.51", "DKIM-Signature": "v=1; a=rsa-sha256; c=relaxed/relaxed;\n d=gmail.com; s=20251104; t=1774360487; x=1774965287;\n darn=vger.kernel.org;\n h=cc:to:in-reply-to:references:message-id:content-transfer-encoding\n :mime-version:subject:date:from:from:to:cc:subject:date:message-id\n :reply-to;\n bh=O5AwS+cqy4cAKKPRWlRgkDDFxDwgSl6qxYrDkjeel6k=;\n b=qEYr0Kz45Jt6+EmVunKic3gvgcM0gnjO0UzeVRDg/IZEYYMoo81TS90uJ/b5UqHCFN\n ZU1+rvvJSQKrcn+R+a0jYkB5NRo/N7ALlb3DPEmYLSxHDyrB6QsBVR34vK9qMufbN/hm\n TtBTWSwrybiBs9MN/aolXjpbj+sfv8loveeMTbL77vtbq3tyf8GRYBb/OoJMSiGYvmHG\n FMfnf/G8pDZinDSqCTxyDHETQ+jX02h/69MWHl+ACSeHr4VRzwL20ovFGajkQvvSmqU2\n mTGlln4Sg0PLMDUHkl3YTNLjZ4eVAsYAcxubCDEARUwSMeXohrWQf7ousuJCrU+E4AlM\n CeBA==", "X-Google-DKIM-Signature": "v=1; a=rsa-sha256; c=relaxed/relaxed;\n d=1e100.net; s=20251104; t=1774360487; x=1774965287;\n h=cc:to:in-reply-to:references:message-id:content-transfer-encoding\n :mime-version:subject:date:from:x-gm-gg:x-gm-message-state:from:to\n :cc:subject:date:message-id:reply-to;\n bh=O5AwS+cqy4cAKKPRWlRgkDDFxDwgSl6qxYrDkjeel6k=;\n b=JOcCRdyxDJlHN8bPuSeUiMhARWkxSXolzG1dDablhitvcW7SPhDsFcYVp25g1I4ph7\n 1vGrR+RDGer04bxR1mSqSkx4lJIyURWQKJl6KCwJYh0W6tcpnQfjfNq98AfOiNXtHJP6\n R3UxvEJ+MHMEnvwBExJRDXd3CrPvHZEEwe7CQCd39xM33JqSbMs/NQ9iZmKk2jNo/aUO\n OmybQ8EnN2qNWYSs3GhKJhD1Ug6a8CRx/R20g/h8VwuTBjkToOjFXSXLRpHNXaHekmRt\n +UeHBr2Tp9zQeijNMgdZcefcELK4JnM7Mr49AG5rydBb21ChfgRtU/dtT0SJsHpqloej\n H4jg==", "X-Gm-Message-State": "AOJu0YxxNSdwQoG56hL3L5usHw6g1uMrFQvSjtO4BPuAFersUpjTFQls\n\tNBFow/zCvD5jqSYBtOSh2SK2VjpyKuFZzHwOaWultT4gVe2/n5dfT9cN", "X-Gm-Gg": "ATEYQzzE2tRQLwPR4A1mA5wcPJumV05GrBzDURnsBAWbd7D/DKxXyFSxuiDl0Fwfb+e\n\tcrUfb48UhjLgYtuzdOFk3mkYI9KZRiKZtI3uh72Z4FZDnIXljHdJ6MkwQAhyL+TD4gLwXG6KaHX\n\t4rAvPeeGjf2KMP3tXjlA9qiBVff2ehWv3FBsyxJtgqznrJ31A0743A3ARy2XBw5rUNy5OiwXgNV\n\tc6EZ0Eld9hNQ18SmbktsP2qrjPIOzTlZmzutMmxZbiSwYdwMNrk7xkC09JrUmBrJWGxIXLK5C2v\n\tk1xoDik6HX/yITw92tFk0OfbAMY840T8lCz/HU+UTDisy8rclYKZuCaSXgsKdH9ULGmPhDHiun0\n\tNCpt6Bdtk2+WRW0dcTTyB+tXPDWqNlzoJ/0ZS6+3o772luy6lYyrdxCXR+060JaYImnn3c+EqbD\n\tNOSw9JKhj+/T6ZOIiEgyVVh+5El7ZgapbhhlpK4T2BUSJFTk9DF29WjqrkMmk2TYpkKJKk/WaML\n\tuXYj54=", "X-Received": "by 2002:ac2:46e8:0:b0:5a2:86bf:39aa with SMTP id\n 2adb3069b0e04-5a286bf39admr3361995e87.2.1774360486576;\n Tue, 24 Mar 2026 06:54:46 -0700 (PDT)", "From": "Marcus Folkesson <marcus.folkesson@gmail.com>", "Date": "Tue, 24 Mar 2026 14:54:17 +0100", "Subject": "[PATCH v9 3/5] i2c: davinci: calculate bus freq from Hz instead of\n kHz", "Precedence": "bulk", "X-Mailing-List": "linux-i2c@vger.kernel.org", "List-Id": "<linux-i2c.vger.kernel.org>", "List-Subscribe": "<mailto:linux-i2c+subscribe@vger.kernel.org>", "List-Unsubscribe": "<mailto:linux-i2c+unsubscribe@vger.kernel.org>", "MIME-Version": "1.0", "Content-Type": "text/plain; charset=\"utf-8\"", "Content-Transfer-Encoding": "7bit", "Message-Id": "<20260324-i2c-mux-v9-3-5292b0608243@gmail.com>", "References": "<20260324-i2c-mux-v9-0-5292b0608243@gmail.com>", "In-Reply-To": "<20260324-i2c-mux-v9-0-5292b0608243@gmail.com>", "To": "Wolfram Sang <wsa+renesas@sang-engineering.com>,\n Peter Rosin <peda@axentia.se>,\n Michael Hennerich <michael.hennerich@analog.com>,\n Bartosz Golaszewski <brgl@bgdev.pl>, Andi Shyti <andi.shyti@kernel.org>,\n Andy Shevchenko <andriy.shevchenko@intel.com>,\n Bartosz Golaszewski <brgl@kernel.org>", "Cc": "linux-i2c@vger.kernel.org, linux-kernel@vger.kernel.org,\n linux-arm-kernel@lists.infradead.org,\n Marcus Folkesson <marcus.folkesson@gmail.com>,\n Bartosz Golaszewski <brgl@kernel.org>", "X-Mailer": "b4 0.14.3", "X-Developer-Signature": "v=1; a=openpgp-sha256; l=3233;\n i=marcus.folkesson@gmail.com; h=from:subject:message-id;\n bh=vsSIa0c3XvGrZdSaP0ssvqDlYgrE1wL3DrKCmY5NXO8=;\n b=owEBbQKS/ZANAwAKAYiATm9ZXVIyAcsmYgBpwpeXnuFJFWzexXqw09JiHF2NlDfub0tdgNkAy\n JmNB8DycneJAjMEAAEKAB0WIQQFUaLotmy1TWTBLGWIgE5vWV1SMgUCacKXlwAKCRCIgE5vWV1S\n MozOEACOJ2bpbAAilgam5B/hfpEicuTdw7nYs4wdBsggK24iT7bbb1s1mO1+BGuTP51q6MKlptY\n SpQQzE26PEk5T9v/sEa1on45fHW3qPqwi8leQ30vBk4+lJlfWXJCXuZ7lwvx3/5dC1jNXM+psTr\n Ii/NhpwlYN20GV3NWfLDKRi0f7Yn66t1kcPmLiQ/fpVqlN118+xXwBkdVzqYKdPMbkrBuzXqh8V\n MAx5HBdeqGVR9y/gMmWKclBLWBZ0fT4D9mHGI8a2NcMzJDgvBUN9Da100swKoWerXTXC4E1BXwA\n 3GbOt3pVW9Gg/JhhF2aSlOz2kW4Oz2T6TQsRk5UfDmAHIrNkeEdwLfv9EHHkCfFXuPbMAsjRgim\n FAn3jDtVCbZHB/n4iiPCChGPo7QkqXdAfk2MlQC6OSKGNtvfLOG3IV5MOKmzevxYcFgqBgpKBiR\n e4S+JVQ9sofJTt4b0jFxpraujpKmAnUoe9JTtqNEo9fMWAxZZywZtp224UzpWWZv0It9rNfsgGv\n MLoafcSTorixc3gva745S5KlCMoWgA7y2kXehEdwBhpNk9x53P9clEVLXBbOy8Vo7aVlPEPDTbY\n zCNMSk7iOwhcmJV1SYdwM84btVVf1bBPdbMENP/+2dUOn69Zt4MjL4Xl7o9pmyrjRWYYlJpilQq\n /Nj5lSnT6J0B6Pg==", "X-Developer-Key": "i=marcus.folkesson@gmail.com; a=openpgp;\n fpr=AB91D46C7E0F6E6FB2AB640EC0FE25D598F6C127" }, "content": "The bus frequency is unnecessarily converted between Hz and kHz in\nseveral places.\nThis is probably an old legacy from the old times (pre-devicetrees)\nwhen the davinci_i2c_platform_data took the bus_freq in kHz.\n\nStick to Hz.\n\nReviewed-by: Bartosz Golaszewski <bartosz.golaszewski@linaro.org>\nSigned-off-by: Marcus Folkesson <marcus.folkesson@gmail.com>\n---\n drivers/i2c/busses/i2c-davinci.c | 20 +++++++++-----------\n 1 file changed, 9 insertions(+), 11 deletions(-)", "diff": "diff --git a/drivers/i2c/busses/i2c-davinci.c b/drivers/i2c/busses/i2c-davinci.c\nindex a773ba082321..549fb22cdf4f 100644\n--- a/drivers/i2c/busses/i2c-davinci.c\n+++ b/drivers/i2c/busses/i2c-davinci.c\n@@ -117,8 +117,6 @@\n /* timeout for pm runtime autosuspend */\n #define DAVINCI_I2C_PM_TIMEOUT\t1000\t/* ms */\n \n-#define DAVINCI_I2C_DEFAULT_BUS_FREQ\t100\n-\n struct davinci_i2c_dev {\n \tstruct device *dev;\n \tvoid __iomem\t\t*base;\n@@ -134,8 +132,8 @@ struct davinci_i2c_dev {\n #ifdef CONFIG_CPU_FREQ\n \tstruct notifier_block\tfreq_transition;\n #endif\n-\t/* standard bus frequency (kHz) */\n-\tunsigned int\t\tbus_freq;\n+\t/* standard bus frequency */\n+\tunsigned int\t\tbus_freq_hz;\n \t/* Chip has a ICPFUNC register */\n \tbool\t\t\thas_pfunc;\n };\n@@ -209,16 +207,16 @@ static void i2c_davinci_calc_clk_dividers(struct davinci_i2c_dev *dev)\n \tif (device_is_compatible(dev->dev, \"ti,keystone-i2c\"))\n \t\td = 6;\n \n-\tclk = ((input_clock / (psc + 1)) / (dev->bus_freq * 1000));\n+\tclk = (input_clock / (psc + 1)) / (dev->bus_freq_hz);\n \t/* Avoid driving the bus too fast because of rounding errors above */\n-\tif (input_clock / (psc + 1) / clk > dev->bus_freq * 1000)\n+\tif (input_clock / (psc + 1) / clk > dev->bus_freq_hz)\n \t\tclk++;\n \t/*\n \t * According to I2C-BUS Spec 2.1, in FAST-MODE LOW period should be at\n \t * least 1.3uS, which is not the case with 50% duty cycle. Driving HIGH\n \t * to LOW ratio as 1 to 2 is more safe.\n \t */\n-\tif (dev->bus_freq > 100)\n+\tif (bus_freq_hz > I2C_MAX_STANDARD_MODE_FREQ)\n \t\tclkl = (clk << 1) / 3;\n \telse\n \t\tclkl = (clk >> 1);\n@@ -242,7 +240,7 @@ static void i2c_davinci_calc_clk_dividers(struct davinci_i2c_dev *dev)\n \tdavinci_i2c_write_reg(dev, DAVINCI_I2C_CLKH_REG, clkh);\n \tdavinci_i2c_write_reg(dev, DAVINCI_I2C_CLKL_REG, clkl);\n \n-\tdev_dbg(dev->dev, \"input_clock = %d, CLK = %d\\n\", input_clock, clk);\n+\tdev_dbg(dev->dev, \"input_clock = %u, CLK = %u\\n\", input_clock, clk);\n }\n \n /*\n@@ -269,7 +267,7 @@ static int i2c_davinci_init(struct davinci_i2c_dev *dev)\n \t\tdavinci_i2c_read_reg(dev, DAVINCI_I2C_CLKL_REG));\n \tdev_dbg(dev->dev, \"CLKH = %d\\n\",\n \t\tdavinci_i2c_read_reg(dev, DAVINCI_I2C_CLKH_REG));\n-\tdev_dbg(dev->dev, \"bus_freq = %dkHz\\n\", dev->bus_freq);\n+\tdev_dbg(dev->dev, \"bus_freq_hz = %dHz\\n\", dev->bus_freq_hz);\n \n \n \t/* Take the I2C module out of reset: */\n@@ -760,9 +758,9 @@ static int davinci_i2c_probe(struct platform_device *pdev)\n \n \tr = device_property_read_u32(&pdev->dev, \"clock-frequency\", &prop);\n \tif (r)\n-\t\tprop = DAVINCI_I2C_DEFAULT_BUS_FREQ;\n+\t\tprop = I2C_MAX_STANDARD_MODE_FREQ;\n \n-\tdev->bus_freq = prop / 1000;\n+\tdev->bus_freq_hz = prop;\n \n \tdev->has_pfunc = device_property_present(&pdev->dev, \"ti,has-pfunc\");\n \n", "prefixes": [ "v9", "3/5" ] }