From patchwork Mon Aug 27 14:31:56 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Hans de Goede X-Patchwork-Id: 10577151 Return-Path: Received: from mail.wl.linuxfoundation.org (pdx-wl-mail.web.codeaurora.org [172.30.200.125]) by pdx-korg-patchwork-2.web.codeaurora.org (Postfix) with ESMTP id A623D14BD for ; Mon, 27 Aug 2018 14:32:06 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 8F1AA29958 for ; Mon, 27 Aug 2018 14:32:06 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id 80F5829C8A; Mon, 27 Aug 2018 14:32:06 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on pdx-wl-mail.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-7.9 required=2.0 tests=BAYES_00,MAILING_LIST_MULTI, RCVD_IN_DNSWL_HI autolearn=ham version=3.3.1 Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 2866029958 for ; Mon, 27 Aug 2018 14:32:06 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1727014AbeH0SS5 (ORCPT ); Mon, 27 Aug 2018 14:18:57 -0400 Received: from mx3-rdu2.redhat.com ([66.187.233.73]:58046 "EHLO mx1.redhat.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1726953AbeH0SS5 (ORCPT ); Mon, 27 Aug 2018 14:18:57 -0400 Received: from smtp.corp.redhat.com (int-mx05.intmail.prod.int.rdu2.redhat.com [10.11.54.5]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mx1.redhat.com (Postfix) with ESMTPS id 66FB04023827; Mon, 27 Aug 2018 14:32:04 +0000 (UTC) Received: from shalem.localdomain.com (ovpn-117-88.ams2.redhat.com [10.36.117.88]) by smtp.corp.redhat.com (Postfix) with ESMTP id 30E8F7D4D6; Mon, 27 Aug 2018 14:32:02 +0000 (UTC) From: Hans de Goede To: "David S . Miller" , Heiner Kallweit , Michael Turquette , Stephen Boyd , Andy Shevchenko , Irina Tirdea Cc: Hans de Goede , netdev@vger.kernel.org, Johannes Stezenbach , Carlo Caione , linux-clk@vger.kernel.org Subject: [PATCH 0/4] clk-pmc-atom + r8169: Add ether_clk handling to fix suspend issues Date: Mon, 27 Aug 2018 16:31:56 +0200 Message-Id: <20180827143200.8597-1-hdegoede@redhat.com> X-Scanned-By: MIMEDefang 2.79 on 10.11.54.5 X-Greylist: Sender IP whitelisted, not delayed by milter-greylist-4.5.16 (mx1.redhat.com [10.11.55.6]); Mon, 27 Aug 2018 14:32:04 +0000 (UTC) X-Greylist: inspected by milter-greylist-4.5.16 (mx1.redhat.com [10.11.55.6]); Mon, 27 Aug 2018 14:32:04 +0000 (UTC) for IP:'10.11.54.5' DOMAIN:'int-mx05.intmail.prod.int.rdu2.redhat.com' HELO:'smtp.corp.redhat.com' FROM:'hdegoede@redhat.com' RCPT:'' Sender: linux-clk-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-clk@vger.kernel.org X-Virus-Scanned: ClamAV using ClamSMTP Hi All, This series has as goal to revert commit d31fd43c0f9a ("clk: x86: Do not gate clocks enabled by the firmware"), because that commit causes almost all Cherry Trail devices to not use the S0i3 powerstate when suspending, leading to them quickly draining their battery when suspended. This commit was added to fix issues with the r8169 NIC on some Bay Trail devices, where the pmc_plt_clk_4 was used as clk for the r8169 chip. This series fixes this properly, so that we can undo the trouble some commit. The first patch adds an "ether_clk" alias to the clk-pmc-atom driver so that the r8169 can pass "ether_clk" as generic id to clk_get instead of having to add x86 specific code to the r8169 driver. The second patch makes the r8169 driver do a clk_get for "ether_clk" (ignoring -ENOENT errors so this is optional) and if that succeeds then it enables the clock. The third patch effectively revert the troublesome commit. This series has been tested on a HP Stream x360 - 11-p000nd, which uses a Bay Trail SoC with a r8169 ethernet chip and I can confirm that the pmc_plt_clk_4 gets properly enabled, so this series should not cause any regressions wrt devices needing pmc_plt_clk_4 enabled (which is not the case on the Stream x360). To avoid regressions we need to have patches 1 and 2 merged before 3, so it is probably best if this entire series gets merged through a single tree. Given that clk-pmc-atom.c has not seen any changes for over a year I suggest that all 3 patches are merged through the netdev tree, with an ack from the clk maintainers. Assuming that is ok with the clk maintainers of course. Note there is a fourth patch in this series, this patch is necessary to reach S0i3 state on Bay Trail devices wich have a r8169 ethernet chip, since I do not have access to hardware where the r8169 actually needs the pmc_plt_clk_4 I have not been able to test this, hence it is marked as RFC for now. Carlos can you test the 4th patch (when you have time) and let us know if it works? Regards, Hans Reviewed-by: Andy Shevchenko Reported-by: Johannes Stezenbach