Patch Detail
get:
Show a patch.
patch:
Update a patch.
put:
Update a patch.
GET /api/patches/819205/?format=api
{ "id": 819205, "url": "http://patchwork.ozlabs.org/api/patches/819205/?format=api", "web_url": "http://patchwork.ozlabs.org/project/linux-i2c/patch/1506523943-8632-3-git-send-email-kamlakant.patel@cavium.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": "<1506523943-8632-3-git-send-email-kamlakant.patel@cavium.com>", "list_archive_url": null, "date": "2017-09-27T14:52:22", "name": "[2/3] i2c: xlp9xx: Get clock frequency with clk API", "commit_ref": null, "pull_url": null, "state": "superseded", "archived": false, "hash": "a54c832421b4ea70af4696066617aa79ff86820a", "submitter": { "id": 72456, "url": "http://patchwork.ozlabs.org/api/people/72456/?format=api", "name": "Kamlakant Patel", "email": "kamlakant.patel@cavium.com" }, "delegate": null, "mbox": "http://patchwork.ozlabs.org/project/linux-i2c/patch/1506523943-8632-3-git-send-email-kamlakant.patel@cavium.com/mbox/", "series": [ { "id": 5383, "url": "http://patchwork.ozlabs.org/api/series/5383/?format=api", "web_url": "http://patchwork.ozlabs.org/project/linux-i2c/list/?series=5383", "date": "2017-09-27T14:52:20", "name": "i2c-xlp9xx: update i2c driver to handle I2C_M_RECV_LEN flag", "version": 1, "mbox": "http://patchwork.ozlabs.org/series/5383/mbox/" } ], "comments": "http://patchwork.ozlabs.org/api/patches/819205/comments/", "check": "pending", "checks": "http://patchwork.ozlabs.org/api/patches/819205/checks/", "tags": {}, "related": [], "headers": { "Return-Path": "<linux-i2c-owner@vger.kernel.org>", "X-Original-To": "incoming@patchwork.ozlabs.org", "Delivered-To": "patchwork-incoming@bilbo.ozlabs.org", "Authentication-Results": [ "ozlabs.org;\n\tspf=none (mailfrom) smtp.mailfrom=vger.kernel.org\n\t(client-ip=209.132.180.67; helo=vger.kernel.org;\n\tenvelope-from=linux-i2c-owner@vger.kernel.org;\n\treceiver=<UNKNOWN>)", "ozlabs.org; dkim=pass (1024-bit key;\n\tunprotected) header.d=CAVIUMNETWORKS.onmicrosoft.com\n\theader.i=@CAVIUMNETWORKS.onmicrosoft.com header.b=\"emxR1Zhl\"; \n\tdkim-atps=neutral", "spf=none (sender IP is )\n\tsmtp.mailfrom=Kamlakant.Patel@cavium.com; " ], "Received": [ "from vger.kernel.org (vger.kernel.org [209.132.180.67])\n\tby ozlabs.org (Postfix) with ESMTP id 3y2LQZ6qYxz9tXs\n\tfor <incoming@patchwork.ozlabs.org>;\n\tThu, 28 Sep 2017 00:52:38 +1000 (AEST)", "(majordomo@vger.kernel.org) by vger.kernel.org via listexpand\n\tid S1751293AbdI0Owh (ORCPT <rfc822;incoming@patchwork.ozlabs.org>);\n\tWed, 27 Sep 2017 10:52:37 -0400", "from mail-sn1nam01on0064.outbound.protection.outlook.com\n\t([104.47.32.64]:21856\n\t\"EHLO NAM01-SN1-obe.outbound.protection.outlook.com\"\n\trhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP\n\tid S1751856AbdI0Owf (ORCPT <rfc822;linux-i2c@vger.kernel.org>);\n\tWed, 27 Sep 2017 10:52:35 -0400", "from kamlakant--T110-II.caveonetworks.com (111.93.218.67) by\n\tBN4PR07MB2129.namprd07.prod.outlook.com (10.164.63.11) with Microsoft\n\tSMTP Server (version=TLS1_2,\n\tcipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P256) id\n\t15.20.77.7; Wed, 27 Sep 2017 14:52:31 +0000" ], "DKIM-Signature": "v=1; a=rsa-sha256; c=relaxed/relaxed;\n\td=CAVIUMNETWORKS.onmicrosoft.com; s=selector1-cavium-com;\n\th=From:Date:Subject:Message-ID:Content-Type:MIME-Version;\n\tbh=8eDkXi/BKtdGUvPcaNxdsOIejENPCda1Boz8xJrwBTo=;\n\tb=emxR1ZhlMTb3Hvd2MhvLp/Fy/EpP/8WK5BPPagtLAF/24GC40y6AJy+tOqc4CIhUDUDCk/NL79/KGJz/HCrJBg3DROqqlPuNI3HY64RpJ8AXg1NeVsTC1t8jxaHGWwWQotZpHAO4XllhOK/xUC5oSDOb+jpGeJbqoQhWeQrgEVw=", "From": "Kamlakant Patel <kamlakant.patel@cavium.com>", "To": "linux-i2c@vger.kernel.org, linux-acpi@vger.kernel.org", "Cc": "Jayachandran C <jnair@caviumnetworks.com>,\n\tWolfram Sang <wsa@the-dreams.de>,\n\tMika Westerberg <mika.westerberg@linux.intel.com>,\n\tKamlakant Patel <kamlakant.patel@cavium.com>", "Subject": "[PATCH 2/3] i2c: xlp9xx: Get clock frequency with clk API", "Date": "Wed, 27 Sep 2017 20:22:22 +0530", "Message-Id": "<1506523943-8632-3-git-send-email-kamlakant.patel@cavium.com>", "X-Mailer": "git-send-email 2.7.4", "In-Reply-To": "<1506523943-8632-1-git-send-email-kamlakant.patel@cavium.com>", "References": "<1506523943-8632-1-git-send-email-kamlakant.patel@cavium.com>", "MIME-Version": "1.0", "Content-Type": "text/plain", "X-Originating-IP": "[111.93.218.67]", "X-ClientProxiedBy": "BMXPR01CA0043.INDPRD01.PROD.OUTLOOK.COM (10.174.214.29) To\n\tBN4PR07MB2129.namprd07.prod.outlook.com (10.164.63.11)", "X-MS-PublicTrafficType": "Email", "X-MS-Office365-Filtering-Correlation-Id": "2fb33e8c-8371-42a2-94f3-08d505b76267", "X-Microsoft-Antispam": "UriScan:; BCL:0; PCL:0;\n\tRULEID:(22001)(2017030254152)(2017052603199)(201703131423075)(201703031133081)(201702281549075);\n\tSRVR:BN4PR07MB2129; ", "X-Microsoft-Exchange-Diagnostics": [ "1; BN4PR07MB2129;\n\t3:vlZCfrae/Mt3UY7Es8dTj2DS58LSx5vjb9n5aqA9grbUviMBGDCFhtGYIMVAbheMenUuJSDw7tt5dOjGzTFGGA5fkw4SHPNuq7lbnas5NHJPE2Vv+NBEl9XpI5XK+48bYYNpWjlb6m8jXxR9DYNqHw1skSPVEHMgMwT8X1Zb7GckluPk3PiH1y42SUUMih3zT0VSYKAtuO02jiuxSAHINf1YyPj/h0sWFpGYueFj9JoBsmKCC8/Wb1m6eNRpsyce;\n\t25:1f8c90QaMPbxqdwfe3bsJbfkUBF36ns8uPIybCzM0eTBM0YyrdJkCEeotS28+Q5e9udRqqVc8MTe3psIfdvY3iQRK91LbDWwOfHOIh8dU7b54iW/ycYm/HUqkGQQMmqMZ63ZuVZ+qSV55hIupwNivhTEadCuhgmTrnBE5zjDQRs9gbQIXna0W+842fIHn6DpYZrM5nmgNz1pXPXwP8qYYHjn+oPtLXEXqzBoLBY/ZgNOryrL9eo3xrQgKuxGrOyDWDqeTf+dVETLDC8MESFwvqUQdSYuzxWU4EBdFhZWtg/N6s+H58Bx5EFIWJgCPvDJXGty3GYYuaDDY70VJcGROw==;\n\t31:cKXthY5LQgTvjdMAnxzDmNzI4qlgcjf32WslhntV65RZXZ9JEpqaoBxVWKwnnFVH7v0FExGmP79KlFZIAsInkEBfpc0b+grEqc+fkgGBO2EPj7zcNhpYNShDVowIicvqZxIj65pekfFhHmbx/VegVLQhj6o9IumoggT6qZk/lzeJU22x2WPK10l9BO7vBWRM0d/PYX8jltMy5q4uvczLMD3mUY/htbTzcHmB5gekCMA=", "1; BN4PR07MB2129;\n\t20:vGAbYDrLjETDzQld+91vPhhyONY+qxCKB6vhKdj8pqaUl3hKLYzusc5uL99U0HUQO0R8ZQPYy9IkdSy8XBq1O577wdMqgUdpYgTNinUrp3v1zIXYCzHYow6iKY5nOi9rJf5de/sOMuKrHTFVyj48GLWxttJY6Ju1UclRKAdghkG1MdqQCKV9gZy+IxyyRhvlDn4SFAZsv6S6sPlR1reyEIhauFQbRA+Jt2caBntV9bNkOxcuSulxLO16GW5dL6tw//9AsUBO66cShLi0N4Y/mzmjk0wBfLo5aCb+zMvwrC4dhdbO8uXAgd8ZvSyU0cZNfHmFpCesYu4/TV0Zio/kDZ+82uYNM3bInXG9TULb48Sl0C+DpxWUeo46adYhv//8fQd6WlU/2r7lwzNl4DMZu8kEgvoncA6VB+hfGyZQgc5Bmm+pWWwDx1BfEarfvx6DnMaBELTlT60FRsPFnDsgAguHmNkDSfkwrlIlEMdpeY9G/MhtW94z1iA6oGjv+85M;\n\t4:HBYsyFlAFz92MeuHTNcc6g5sszrroeqyeM9uwZRYttNVJ0zs0F48GRa6YkjVyWouuTsxVBqW/0dVRA1itwLwnSS5IH1/Z2aNFdCfjj1/ufStD04309BKi1KlFAwPiaKbLUMk9efKT+zFoMnyT81JtMsWlgA5U/AZxOtWEvPVWts2M4mQ5gaqffEHjzVSt8ZT9Wuy3EQOsUOoYGbcw7B/ObavF7pF54L5/xEHZ5rfL2X0rRlhg/X8m8vkgp+b1QF1", "1; BN4PR07MB2129;\n\t23:3mJ+GsDJUeGZjOAqmgaIuBWJtzZwmF1/otHiZIlYtv3WISuXfLIRnWWWEVNckdqXfaAczp87nXVaI5FxTcesZNqY4fxQo/CrFKHvh/mcmnK7FWyjra5BJ5k9cOJexe5D69+1W2aoTrvIzVCEqg5aZTI2+hJkiHjv5nwzRdssIKQZU0JWN11FHoRewb5io2+ddNkEiJLlRq4UENp3d9fIAV/E4Rg+yrsIaJ8Ymc9zoJM51L52fcT3h13FtbFfPtcO89mGwltyxDLzpbFlt+tQv3Szev3lBoMja2Jf8pe4fCV0ehVYeKZ2CYqxZ/kwtv0u7Q9BvP3VQ7inMpmS//K77+Uf/Nq1guWyAk0GcpOfBfloSjP9peoVRy2Am4eaKJjVSVxZsEI9z+IVoDq11oJsgbIc/7+i9KDf0G/K7VwQzmO2ErnxUCisQeO2lal700lmmGxB1g9USkfDiZ9aamCCHTBPcR7k8fRZMn/QtiyKRmju+InPyli20XHJqyWuT16/AfUVt8nsyk7MIixGxe1YeW4oI1qSOwNHtF7Mh+OaBzuVdLyloq0HSOoMjBLgQTXO/khI8c4iJOUz/C2r5IQPiFdVuvqjygMiNf/NulWMmy0eXYklxQPx9kIeq89PtVURdlP7YwcpCX++Ap1HG18U6o34lcDQmeYYNVXxHBmZ2uNT3qH5soaGycagyHaVlmHSSfX3VEO0pJhlbaT6Tu75E90BdgANqUJnYHMJ+pX8X1mBePwjJc6xtJsL4qsqM6/3Z/qaYqKqW6V6EgxFhaxn9CNIrYB6aU+7YzCxTNDFAvP/rKUzRms9WpM0oSN3HoySwYv1qeK6ympOg0TLjYWg2b370N8QHrjRrmcYJN4e+itfhcwY+Z1XIfxrA+G/5KZw7jXIPa5IOtiSj7CsZKaX4/jWUY66ZqwRNP6ZLp/L+Misqh2gXfId3RNUhQc/YJXr0J2uKJWpw6BZj6EhFVwkU8oEpYSQ3IopWIdvE0R5XB1D+FvVsx7HgmfwwmIMJrmFlbrvjVwZ1nxoV4JC/98rCLFZPUKOxnH8gztP+bNPphWjlKdPY/8XTfsrfRibPKr3GdbijSTQ/aK7xbXZwt4R/ayLMji220yenABdI3sLlJy7SDuf3lv6DE1UNovpavSVgBs0GtJPnPrVt56F//P6unHteDBfxeA4B+jhbG/dihNHwtWiZjyro6EoVimvTuWb", "1; BN4PR07MB2129;\n\t6:GrLOlCjIeLJfnR3rs95E02j0Wt1g4hX/abZ1zL2mq5IZgEX492g+7n0VRSeKcy14PA5thyUJ3My2q2oxZiJk1M0Fs2b7B9Zj6LVBVFQl9A8eUVmUjH3J5gZfxYCzJxCf64fCfOLq/E5CwZUhdbNaOTTMk3jlqaFDV9cL1Qxih7xn3mqnKnC2zJpNwnLo+wuihf0z+qNcXTBfsNQpX5fTM0eRF75TMtPg8CJvTeCzmY0FuE6zL42vknjo6RfuqwDngmgPyuem6uPpE25RkpGSd5n23OSSdVaqawtKu0DxdooS0W0CHuALsCvYt/+KpgbCLXjEZYtbZk64ifZutpW8sA==;\n\t5:9j7ezTd1z5awMVTlQmuA8aNVssPjKp2fZg8p8BKHOSxxBclN3fR3yFuFxsYaY3up5J435VDatd7J+tL3U4iltzb0/t5BXCbSBZNQHWzif2SYDOVstykj1KF9K1ntaQRxTh0/PJtDBtrlUbscyPRFRA==;\n\t24:Z55aEhgginrLXUDpadSc4yevAtb2vafQnlXons/r5E6K8mUWeFIZ2eqwa4n5D419CQxlsdaDOlxInoWX+rtqmKXJSLUobX5lSA/8hUsEP/0=;\n\t7:0ZeAZKg2K5+J1y7bs+yTtxcSBJZQVkpAgYUKZ1IjoEdZXlKIAQDJ+/8k91ONAlrlR7d0orb06qFXpvelYvrseYclrLOrjUMm6PEgoL7nrkreETyyTGuMF2VRJobPy6AiIkSDrDpC77I7OPH/t2w1tpbA/NecOkI526otW9Pp00zwi9zXGB85EipdkK8AnCwETOJb+jckmiPtiKEQjcGKR9lDfTHMub864ar2RmaaQZc=" ], "X-MS-TrafficTypeDiagnostic": "BN4PR07MB2129:", "X-Exchange-Antispam-Report-Test": "UriScan:;", "X-Microsoft-Antispam-PRVS": "<BN4PR07MB2129999EF4771579E877424A88780@BN4PR07MB2129.namprd07.prod.outlook.com>", "X-Exchange-Antispam-Report-CFA-Test": "BCL:0; PCL:0;\n\tRULEID:(100000700101)(100105000095)(100000701101)(100105300095)(100000702101)(100105100095)(6040450)(2401047)(8121501046)(5005006)(10201501046)(93006095)(93001095)(100000703101)(100105400095)(3002001)(6041248)(20161123558100)(20161123555025)(20161123562025)(20161123564025)(20161123560025)(201703131423075)(201702281528075)(201703061421075)(201703061406153)(6072148)(201708071742011)(100000704101)(100105200095)(100000705101)(100105500095);\n\tSRVR:BN4PR07MB2129; BCL:0; PCL:0;\n\tRULEID:(100000800101)(100110000095)(100000801101)(100110300095)(100000802101)(100110100095)(100000803101)(100110400095)(100000804101)(100110200095)(100000805101)(100110500095);\n\tSRVR:BN4PR07MB2129; ", "X-Forefront-PRVS": "04433051BF", "X-Forefront-Antispam-Report": "SFV:NSPM;\n\tSFS:(10009020)(6009001)(346002)(376002)(199003)(189002)(2950100002)(47776003)(33646002)(48376002)(8936002)(66066001)(68736007)(305945005)(76176999)(50986999)(69596002)(5009440100003)(54906003)(53936002)(105586002)(106356001)(50226002)(101416001)(25786009)(53416004)(6512007)(50466002)(16526017)(6506006)(81156014)(81166006)(8676002)(3846002)(6486002)(6116002)(16586007)(6666003)(5660300001)(4326008)(5003940100001)(107886003)(36756003)(316002)(97736004)(72206003)(7736002)(189998001)(478600001)(2906002)(86362001)(575784001);\n\tDIR:OUT; SFP:1101; SCL:1; SRVR:BN4PR07MB2129;\n\tH:kamlakant--T110-II.caveonetworks.com; FPR:; SPF:None;\n\tPTR:InfoNoRecords; A:1; MX:1; LANG:en; ", "Received-SPF": "None (protection.outlook.com: cavium.com does not designate\n\tpermitted sender hosts)", "SpamDiagnosticOutput": "1:99", "SpamDiagnosticMetadata": "NSPM", "X-OriginatorOrg": "cavium.com", "X-MS-Exchange-CrossTenant-OriginalArrivalTime": "27 Sep 2017 14:52:31.2308\n\t(UTC)", "X-MS-Exchange-CrossTenant-FromEntityHeader": "Hosted", "X-MS-Exchange-CrossTenant-Id": "711e4ccf-2e9b-4bcf-a551-4094005b6194", "X-MS-Exchange-Transport-CrossTenantHeadersStamped": "BN4PR07MB2129", "Sender": "linux-i2c-owner@vger.kernel.org", "Precedence": "bulk", "List-ID": "<linux-i2c.vger.kernel.org>", "X-Mailing-List": "linux-i2c@vger.kernel.org" }, "content": "From: Jayachandran C <jnair@caviumnetworks.com>\n\nGet the input clock frequency to the controller from the linux clk\nAPI, if it is available. This allows us to pass in the block input\nfrequency either from ACPI (using APD) or from device tree.\n\nThe old hardcoded frequency is used as default for backwards compatibility.\n\nSigned-off-by: Jayachandran C <jnair@caviumnetworks.com>\nSigned-off-by: Kamlakant Patel <kamlakant.patel@cavium.com>\n---\n drivers/i2c/busses/i2c-xlp9xx.c | 14 +++++++++++++-\n 1 file changed, 13 insertions(+), 1 deletion(-)", "diff": "diff --git a/drivers/i2c/busses/i2c-xlp9xx.c b/drivers/i2c/busses/i2c-xlp9xx.c\nindex 6b106e9..f0bef2d 100644\n--- a/drivers/i2c/busses/i2c-xlp9xx.c\n+++ b/drivers/i2c/busses/i2c-xlp9xx.c\n@@ -7,6 +7,7 @@\n */\n \n #include <linux/acpi.h>\n+#include <linux/clk.h>\n #include <linux/completion.h>\n #include <linux/i2c.h>\n #include <linux/init.h>\n@@ -84,6 +85,7 @@ struct xlp9xx_i2c_dev {\n \tu32 __iomem *base;\n \tu32 msg_buf_remaining;\n \tu32 msg_len;\n+\tu32 ip_clk_hz;\n \tu32 clk_hz;\n \tu32 msg_err;\n \tu8 *msg_buf;\n@@ -213,7 +215,7 @@ static int xlp9xx_i2c_init(struct xlp9xx_i2c_dev *priv)\n \t * The controller uses 5 * SCL clock internally.\n \t * So prescale value should be divided by 5.\n \t */\n-\tprescale = DIV_ROUND_UP(XLP9XX_I2C_IP_CLK_FREQ, priv->clk_hz);\n+\tprescale = DIV_ROUND_UP(priv->ip_clk_hz, priv->clk_hz);\n \tprescale = ((prescale - 8) / 5) - 1;\n \txlp9xx_write_i2c_reg(priv, XLP9XX_I2C_CTRL, XLP9XX_I2C_CTRL_RST);\n \txlp9xx_write_i2c_reg(priv, XLP9XX_I2C_CTRL, XLP9XX_I2C_CTRL_EN |\n@@ -342,9 +344,19 @@ static const struct i2c_algorithm xlp9xx_i2c_algo = {\n static int xlp9xx_i2c_get_frequency(struct platform_device *pdev,\n \t\t\t\t struct xlp9xx_i2c_dev *priv)\n {\n+\tstruct clk *clk;\n \tu32 freq;\n \tint err;\n \n+\tclk = devm_clk_get(&pdev->dev, NULL);\n+\tif (IS_ERR(clk)) {\n+\t\tpriv->ip_clk_hz = XLP9XX_I2C_IP_CLK_FREQ;\n+\t\tdev_dbg(&pdev->dev, \"using default input frequency %u\\n\",\n+\t\t\tpriv->ip_clk_hz);\n+\t} else {\n+\t\tpriv->ip_clk_hz = clk_get_rate(clk);\n+\t}\n+\n \terr = device_property_read_u32(&pdev->dev, \"clock-frequency\", &freq);\n \tif (err) {\n \t\tfreq = XLP9XX_I2C_DEFAULT_FREQ;\n", "prefixes": [ "2/3" ] }