Cover Letter Detail
Show a cover letter.
GET /api/covers/807136/?format=api
{ "id": 807136, "url": "http://patchwork.ozlabs.org/api/covers/807136/?format=api", "web_url": "http://patchwork.ozlabs.org/project/linux-i2c/cover/1504018610-10822-1-git-send-email-ulf.hansson@linaro.org/", "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": "<1504018610-10822-1-git-send-email-ulf.hansson@linaro.org>", "list_archive_url": null, "date": "2017-08-29T14:56:42", "name": "[v3,0/8] PM / ACPI / i2c: Deploy runtime PM centric path for system sleep", "submitter": { "id": 21036, "url": "http://patchwork.ozlabs.org/api/people/21036/?format=api", "name": "Ulf Hansson", "email": "ulf.hansson@linaro.org" }, "mbox": "http://patchwork.ozlabs.org/project/linux-i2c/cover/1504018610-10822-1-git-send-email-ulf.hansson@linaro.org/mbox/", "series": [ { "id": 387, "url": "http://patchwork.ozlabs.org/api/series/387/?format=api", "web_url": "http://patchwork.ozlabs.org/project/linux-i2c/list/?series=387", "date": "2017-08-29T14:56:42", "name": "PM / ACPI / i2c: Deploy runtime PM centric path for system sleep", "version": 3, "mbox": "http://patchwork.ozlabs.org/series/387/mbox/" } ], "comments": "http://patchwork.ozlabs.org/api/covers/807136/comments/", "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=linaro.org header.i=@linaro.org\n\theader.b=\"SRjkI5vg\"; dkim-atps=neutral" ], "Received": [ "from vger.kernel.org (vger.kernel.org [209.132.180.67])\n\tby ozlabs.org (Postfix) with ESMTP id 3xhWv86dB7z9sR9\n\tfor <incoming@patchwork.ozlabs.org>;\n\tWed, 30 Aug 2017 00:57:08 +1000 (AEST)", "(majordomo@vger.kernel.org) by vger.kernel.org via listexpand\n\tid S1754659AbdH2O5E (ORCPT <rfc822;incoming@patchwork.ozlabs.org>);\n\tTue, 29 Aug 2017 10:57:04 -0400", "from mail-lf0-f50.google.com ([209.85.215.50]:36068 \"EHLO\n\tmail-lf0-f50.google.com\" rhost-flags-OK-OK-OK-OK) by vger.kernel.org\n\twith ESMTP id S1754583AbdH2O5B (ORCPT\n\t<rfc822; linux-i2c@vger.kernel.org>); Tue, 29 Aug 2017 10:57:01 -0400", "by mail-lf0-f50.google.com with SMTP id z12so14368637lfd.3\n\tfor <linux-i2c@vger.kernel.org>; Tue, 29 Aug 2017 07:57:00 -0700 (PDT)", "from localhost.localdomain (h-158-174-22-67.NA.cust.bahnhof.se.\n\t[158.174.22.67]) by smtp.gmail.com with ESMTPSA id\n\ty23sm652454ljd.19.2017.08.29.07.56.58\n\t(version=TLS1_2 cipher=ECDHE-RSA-AES128-SHA bits=128/128);\n\tTue, 29 Aug 2017 07:56:59 -0700 (PDT)" ], "DKIM-Signature": "v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google;\n\th=from:to:cc:subject:date:message-id;\n\tbh=X8SYAw+I0xQAOB6bxbbt67cXTs9Hlryvu3HmsEkfoy0=;\n\tb=SRjkI5vgff3mykLJ48/eT+6DQUmO9W47okZ0+YHY0hhphpZV4oRGyD0VwKm3F3xhHt\n\tQ5f00QopgQbMpzhMzTiwBoCMDKwoVmEOvUwXXRApY6HodjHT8lnfTNemFpBJx1XXGFE5\n\tZmoVo6BYkLOZ1cKrOYHNA7KGZGml+B0rpLLcE=", "X-Google-DKIM-Signature": "v=1; a=rsa-sha256; c=relaxed/relaxed;\n\td=1e100.net; s=20161025;\n\th=x-gm-message-state:from:to:cc:subject:date:message-id;\n\tbh=X8SYAw+I0xQAOB6bxbbt67cXTs9Hlryvu3HmsEkfoy0=;\n\tb=WB5AA/TI3u8tYrojnyi+EQrb4yx76YyUQcjCgIrxvPBC62I3ZKJHijMNWRTqF9YBRC\n\tY7fbIRxzr4oIelj77F05TZg+hftf8mJjQ5voxN28IZpTmwj2ksnZw9HxhwG6Ef6QDZSY\n\tIWYDuUCKFHkwEUlwW0fVv5CnRNtVJtX1NoimX9EH0qyj4Xf37lmz21nUZk+YscZTrqUb\n\tTNxzgyjHzG/8uCYAcF7vth9nnySHoMSYdPRwDVpurEGZx7xSrss6URsj+scjGcwOc34f\n\tg/4mWgeMkgq/PmbT0JjuUuop2WriLiiifNbzpK60jBK4fy/slJz5GRPaY6fwI6JWWZaC\n\t+B2g==", "X-Gm-Message-State": "AHYfb5gij1KK/q/e1dboSRH8pSnEoaGnIT+afsKyipN4cZewfxVVEJTK\n\tvgAgPwOZn1FQQns6", "X-Received": "by 10.25.147.13 with SMTP id v13mr207854lfd.165.1504018619757;\n\tTue, 29 Aug 2017 07:56:59 -0700 (PDT)", "From": "Ulf Hansson <ulf.hansson@linaro.org>", "To": "Wolfram Sang <wsa@the-dreams.de>,\n\t\"Rafael J . Wysocki\" <rjw@rjwysocki.net>,\n\tLen Brown <lenb@kernel.org>, linux-acpi@vger.kernel.org,\n\tlinux-pm@vger.kernel.org", "Cc": "Kevin Hilman <khilman@kernel.org>,\n\tJarkko Nikula <jarkko.nikula@linux.intel.com>,\n\tAndy Shevchenko <andriy.shevchenko@linux.intel.com>,\n\tMika Westerberg <mika.westerberg@linux.intel.com>,\n\tJisheng Zhang <jszhang@marvell.com>,\n\tJohn Stultz <john.stultz@linaro.org>, Guodong Xu <guodong.xu@linaro.org>,\n\tSumit Semwal <sumit.semwal@linaro.org>,\n\tHaojian Zhuang <haojian.zhuang@linaro.org>,\n\tJohannes Stezenbach <js@sig21.net>,\n\tlinux-arm-kernel@lists.infradead.org, linux-i2c@vger.kernel.org,\n\tUlf Hansson <ulf.hansson@linaro.org>", "Subject": "[PATCH v3 0/8] PM / ACPI / i2c: Deploy runtime PM centric path for\n\tsystem sleep", "Date": "Tue, 29 Aug 2017 16:56:42 +0200", "Message-Id": "<1504018610-10822-1-git-send-email-ulf.hansson@linaro.org>", "X-Mailer": "git-send-email 2.7.4", "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": "The i2c designware platform driver, drivers/i2c/busses/i2c-designware-platdrv.c,\nisn't well optimized for system sleep.\n\nWhat makes this driver particularly interesting is because it's a cross-SoC\ndriver, which sometimes means there is an ACPI PM domain attached to the i2c\ndevice and sometimes not. The driver is being used on both x86 and ARM.\n\nIn principle, to optimize the system sleep support in i2c driver, this series\nenables the proven runtime PM centric path for the i2c driver. However, to do\nthat the ACPI PM domain also have to collaborate and understand this behaviour.\nFrom earlier versions, Rafael has also pointed out that also the PM core needs\nto be involved.\n\nTherefore a number of changes, patch 1 to patch 6, makes the needed changes to\nthe PM core and the ACPI PM domain. In patch7 and patch 8, the i2c driver gets\noptimized and is converted to the runtime PM centric path for system sleep.\n\nIt shall be noted, the behaviour of the ACPI PM domain should remain intact,\nstill taking benefit of using the direct_complete path during system sleep,\nexcept for those drivers that uses the runtime PM centric path.\n\nThis series has been tested on an ARM64 Hikey board, which isn't having the\ni2c device attached to the ACPI PM domain. This means that the ACPI changes\nneeds to be tested on some relevant Intel SoCs and it's greatly appreciated\nis someone could help out with this, so is of course review comments.\n\nSome news in v3:\n\t- The fix for the i2c driver [1], is now present in Linus' tree from tag\n\tv4.13-rc7 - and so does Rafael's tree.\n\t- To simplify for testers, I have published a branch [3] based upon\n\tRafael's pm tree and linux-next branch.\n\t- Rephrased some part of the coverletter to clarify the intent of this\n\tseries.\n\t- Addressed review comments from v2.\n\nSome news in v2:\n\t- The v1 contained a fix for the i2c driver, this has been sent\n\tseparately [1] and picked up for fixes by Wolfram for v4.13-rcs. However\n\tthe fix has not yet reached Linus' tree. The changes on i2c driver\n\tare based upon that change.\n\t- To simplify for testers, I have published a branch [2] based upon\n\tRafael's pm tree and linux-next branch, which also includes the above\n\tpatch.\n\t- Rephrased the coverletter to clarify the intent of this series.\n\t- Addressed review comments from v1.\n\n[1]\nhttp://patchwork.ozlabs.org/patch/799803/\n\n[2]\ngit://git.kernel.org/pub/scm/linux/kernel/git/ulfh/mmc.git acpi_pm_i2c_rpm_path_v2\n\n[3]\ngit://git.kernel.org/pub/scm/linux/kernel/git/ulfh/mmc.git acpi_pm_i2c_rpm_path_v3\n\nKind regards\nUlf Hansson\n\n\nUlf Hansson (8):\n PM / Sleep: Make the runtime PM centric path known to the PM core\n PM / ACPI: Restore acpi_subsys_complete()\n PM / Sleep: Remove pm_complete_with_resume_check()\n PM / ACPI: Split code validating need for runtime resume in\n ->prepare()\n PM / ACPI: Split acpi_lpss_suspend_late|resume_early()\n PM / ACPI: Enable the runtime PM centric approach for system sleep\n i2c: designware: Don't resume device in the ->complete() callback\n i2c: designware: Deploy the runtime PM centric path for system sleep\n\n drivers/acpi/acpi_lpss.c | 79 ++++++++++++++------\n drivers/acpi/device_pm.c | 111 ++++++++++++++++++++++------\n drivers/base/power/generic_ops.c | 23 ------\n drivers/base/power/main.c | 49 ++++++++++--\n drivers/base/power/runtime.c | 1 +\n drivers/i2c/busses/i2c-designware-platdrv.c | 34 ++-------\n include/linux/pm.h | 8 +-\n 7 files changed, 204 insertions(+), 101 deletions(-)" }