From patchwork Wed Mar 2 15:24:04 2016 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Arnd Bergmann X-Patchwork-Id: 102628 Delivered-To: patch@linaro.org Received: by 10.112.199.169 with SMTP id jl9csp2443551lbc; Wed, 2 Mar 2016 07:25:31 -0800 (PST) X-Received: by 10.98.33.28 with SMTP id h28mr35548154pfh.54.1456932331339; Wed, 02 Mar 2016 07:25:31 -0800 (PST) Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id s73si10324089pfs.11.2016.03.02.07.25.31; Wed, 02 Mar 2016 07:25:31 -0800 (PST) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1754982AbcCBPZ1 (ORCPT + 30 others); Wed, 2 Mar 2016 10:25:27 -0500 Received: from mout.kundenserver.de ([212.227.126.130]:49364 "EHLO mout.kundenserver.de" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752989AbcCBPZX (ORCPT ); Wed, 2 Mar 2016 10:25:23 -0500 Received: from wuerfel.lan. ([78.42.132.4]) by mrelayeu.kundenserver.de (mreue005) with ESMTPA (Nemesis) id 0LckK3-1a8z183yv1-00k7Gh; Wed, 02 Mar 2016 16:24:46 +0100 From: Arnd Bergmann To: Greg Kroah-Hartman Cc: linux-arm-kernel@lists.infradead.org, Felipe Balbi , Alan Stern , linux-usb@vger.kernel.org, Arnd Bergmann , Mathias Nyman , Matthias Brugger , linux-mediatek@lists.infradead.org, linux-kernel@vger.kernel.org Subject: [PATCH 2/6] usb: xhci-mtk: use __maybe_unused to hide pm functions Date: Wed, 2 Mar 2016 16:24:04 +0100 Message-Id: <1456932255-71725-3-git-send-email-arnd@arndb.de> X-Mailer: git-send-email 2.7.0 In-Reply-To: <1456932255-71725-1-git-send-email-arnd@arndb.de> References: <1456932255-71725-1-git-send-email-arnd@arndb.de> X-Provags-ID: V03:K0:WOQMNubjm2QiLxgVapVtgQBWZr86oyekUak4cRaHzroSFZQ36Ca ZLH+9e8aO/vc6AjXc7nFGdZYSNHP4Q9dH1D/7d0Qe3LM9qQ1xzO2vBtKdEyXHxK0jlcKqNV nZYPI21o/TNSAcR8wLdY6cMbAKbSZ47L6Y2CsVJk5bzf+/noFX15LJ1SpjU0nCwzVU7ufJ1 WF80sIElatFSjCipSz4NQ== X-UI-Out-Filterresults: notjunk:1; V01:K0:ICRVgl+XYFU=:je0jeCtJHj12zTh/rdpggt l8Vv7sqPvLZNBPmHSbcstbqRnQZy5R7Hicd2rQXtM9x74jEriJ0WXApf3zdrlgu8F0vfeBNav bAKYecu7Ulk2Vad1ZjB8Of5XQnJdKewmYcT+0DIBJhTvN3yNzH/zelCy0by3SzuYdf+JK1+eO Lem9NNrp31CtVKdB9TaRTNZmbotIiuwakviDEIe5URVMhG/qMtjj3yVNTSXcjKUDCk+/LXm/G UYfvXe0tXXjbkIDBqIHcV7HaALwz3QxkGYJ2e9y+8xnCSgMfRjB9Jywz4eil4F7lml2C8wUFF gcDW9BAEROuVp1PSoqUmg0oQqOV6JQy97/1NoLhw9jU1RsDMJ3tE7xWMzVRkk5ZdkQOSWqsKQ LeaxIlU5BOO+0q+Q4YEryFYA0OxEpBxAMxXEcaXiH8wy2INl1y5JuyImLpx8voPHctFOiziiF bb8hzqg8tqcJqDSNm//K+D7kSdykAMfAuVw0BVFkhgNXs0KG1G8WkGqUungkTMCs1lWQg8Wa1 uH1iHbLfCLmBcqJrhr+6OQ9D/34TVOQx35z7tg6eEQYhNfybHgpiv4rBA+3uC1NsaJW4eofmK Z/zV8/ufRJhzfaac8Us7w6AjsFLkVY0RZq4lOWD0P34t4s1d+SXRTUUvdS1qzBe/GW3duPcB6 vkwobT52BR6KLWCRJMea8LqPKMU9I+KMGCTxM4tt9q0MrFip9cI34XVt0B/cnnLMjSlA= Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org The mediatek XHCI glue driver uses SET_SYSTEM_SLEEP_PM_OPS() to conditionally set the correct suspend/resume options, and also puts both the dev_pm_ops and the functions inside of an #ifdef testing for CONFIG_PM_SLEEP, but those functions then call other code that becomes unused: drivers/usb/host/xhci-mtk.c:135:12: error: 'xhci_mtk_host_disable' defined but not used [-Werror=unused-function] drivers/usb/host/xhci-mtk.c:313:13: error: 'usb_wakeup_enable' defined but not used [-Werror=unused-function] drivers/usb/host/xhci-mtk.c:321:13: error: 'usb_wakeup_disable' defined but not used [-Werror=unused-function] This replaces the #ifdef with __maybe_unused annotations so the compiler knows it can silently drop them instead of warning. For the DEV_PM_OPS definition, we can use an IS_ENABLED() check to avoid defining the structure when CONFIG_PM is not set without the #ifdef. Signed-off-by: Arnd Bergmann --- drivers/usb/host/xhci-mtk.c | 10 +++------- 1 file changed, 3 insertions(+), 7 deletions(-) -- 2.7.0 diff --git a/drivers/usb/host/xhci-mtk.c b/drivers/usb/host/xhci-mtk.c index 9532f5aef71b..79959f17c38c 100644 --- a/drivers/usb/host/xhci-mtk.c +++ b/drivers/usb/host/xhci-mtk.c @@ -695,7 +695,6 @@ static int xhci_mtk_remove(struct platform_device *dev) return 0; } -#ifdef CONFIG_PM_SLEEP /* * if ip sleep fails, and all clocks are disabled, access register will hang * AHB bus, so stop polling roothubs to avoid regs access on bus suspend. @@ -703,7 +702,7 @@ static int xhci_mtk_remove(struct platform_device *dev) * to wake up system immediately after system suspend complete if ip sleep * fails, it is what we wanted. */ -static int xhci_mtk_suspend(struct device *dev) +static int __maybe_unused xhci_mtk_suspend(struct device *dev) { struct xhci_hcd_mtk *mtk = dev_get_drvdata(dev); struct usb_hcd *hcd = mtk->hcd; @@ -722,7 +721,7 @@ static int xhci_mtk_suspend(struct device *dev) return 0; } -static int xhci_mtk_resume(struct device *dev) +static int __maybe_unused xhci_mtk_resume(struct device *dev) { struct xhci_hcd_mtk *mtk = dev_get_drvdata(dev); struct usb_hcd *hcd = mtk->hcd; @@ -744,10 +743,7 @@ static int xhci_mtk_resume(struct device *dev) static const struct dev_pm_ops xhci_mtk_pm_ops = { SET_SYSTEM_SLEEP_PM_OPS(xhci_mtk_suspend, xhci_mtk_resume) }; -#define DEV_PM_OPS (&xhci_mtk_pm_ops) -#else -#define DEV_PM_OPS NULL -#endif /* CONFIG_PM */ +#define DEV_PM_OPS IS_ENABLED(CONFIG_PM) ? &xhci_mtk_pm_ops : NULL #ifdef CONFIG_OF static const struct of_device_id mtk_xhci_of_match[] = { From patchwork Wed Mar 2 15:24:06 2016 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Arnd Bergmann X-Patchwork-Id: 102627 Delivered-To: patch@linaro.org Received: by 10.112.199.169 with SMTP id jl9csp2443645lbc; Wed, 2 Mar 2016 07:25:41 -0800 (PST) X-Received: by 10.98.42.207 with SMTP id q198mr39867443pfq.103.1456932341485; Wed, 02 Mar 2016 07:25:41 -0800 (PST) Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id qx12si35739960pab.169.2016.03.02.07.25.40; Wed, 02 Mar 2016 07:25:41 -0800 (PST) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1755043AbcCBPZd (ORCPT + 30 others); Wed, 2 Mar 2016 10:25:33 -0500 Received: from mout.kundenserver.de ([212.227.126.133]:53011 "EHLO mout.kundenserver.de" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752702AbcCBPZa (ORCPT ); Wed, 2 Mar 2016 10:25:30 -0500 Received: from wuerfel.lan. ([78.42.132.4]) by mrelayeu.kundenserver.de (mreue005) with ESMTPA (Nemesis) id 0Lmyuu-1Zyncj3IxY-00h37c; Wed, 02 Mar 2016 16:24:57 +0100 From: Arnd Bergmann To: Greg Kroah-Hartman Cc: linux-arm-kernel@lists.infradead.org, Felipe Balbi , Alan Stern , linux-usb@vger.kernel.org, Arnd Bergmann , linux-kernel@vger.kernel.org Subject: [PATCH 4/6] usb: ehci-atmel: use __maybe_unused to hide pm functions Date: Wed, 2 Mar 2016 16:24:06 +0100 Message-Id: <1456932255-71725-5-git-send-email-arnd@arndb.de> X-Mailer: git-send-email 2.7.0 In-Reply-To: <1456932255-71725-1-git-send-email-arnd@arndb.de> References: <1456932255-71725-1-git-send-email-arnd@arndb.de> X-Provags-ID: V03:K0:gA9CN4XiZlE2R4HSVYPdVMKs94ba2bZbcVHSiPtJsHWxm/mLcdB n1OF9RTLsLFQdnAUQ2sELCldJlLJSYdcpzN+JC6Y/tjewsPjMZmhimVVjbGx35ic1kBsWnK d2+hrUlzD4fQP39pf0i5x0JzDN99ZsznQ94x915PdNOe9y6cjJQ90dMyr+gKYU/oD9LImDs cwUIZxecpZsnm9ZEGPhOA== X-UI-Out-Filterresults: notjunk:1; V01:K0:grY2XBchSvM=:pSx+aGLXaut6kyaVSYOMIR 2LYZlw+k4cqCfn4SMNm2OFPXUDrgHw2RrZJ7YD0e6k5+v2tkoZ94XqWy+r58bBADfE/FqnewI Q4vxLBgl3O20HU4qAZw9N67zauG7DfU4maXFo2ziYhGUukhZvnIVRlCsnlt9XGz8c+yAP4hFa nBxbLzyPTAgZEG0CYjdgR9s2+nt2eScArP4DMqDBKQHBzCRtWiSrE+Qyb7hZvNORU1iZGBnp3 kA9Tpwn9C9J66Fpyr4nf/65bme6bG49hm/r9CFLLU5fri2PX0NwOcits+C9SxrX1jJPYxtLGE t5w9jfvgR8qrBGwxYqYef9wkOhBJckm6RbVy7u3agWj+inT6V4MQBrK2Z6NqZTcdkTFVsG3bV rUS9yfEbmTF/KDc4EaGPDwyr5Cp0fmxzL8zWrUul/1/klYEv9ZktO8LvBDrn7Sa2lt22eRhZp +39zoQut7a6NpRfqUjcK0pMIHyC8d/AwX/t5kCfRUFm90ncmQy1kDJryEkFPSwYPUCAohLrt1 JhDx3yWAOUiE9DqQu6c+WD0MyMpdcqN642BUP1znIIkI70lTWjhdMNut1I/eusv18dGMHBoYo 6KRTy3l7UeIoYJFZdPWHXvv8hvo1vQEcaW/VILLaHMgiKNUcQoQ7TrMRcLjRzOMTFIxxNsejA rcClZJDgwbdS3PHkmzAxr/2K3oMer0jkVpy+cax9+JhAdco+x/BnTyTUlG0ZTvoRXdD4= Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org The ehci-atmel driver uses #ifdef to check for CONFIG_PM, but then uses SIMPLE_DEV_PM_OPS, which leaves the references out when CONFIG_PM_SLEEP is not defined, so we get a warning with PM=y && PM_SLEEP=n: drivers/usb/host/ehci-atmel.c:189:12: error: 'ehci_atmel_drv_suspend' defined but not used [-Werror=unused-function] drivers/usb/host/ehci-atmel.c:203:12: error: 'ehci_atmel_drv_resume' defined but not used [-Werror=unused-function] This removes the incorrect #ifdef and instead uses a __maybe_unused annotation to let the compiler know it can silently drop the function definition. Signed-off-by: Arnd Bergmann --- drivers/usb/host/ehci-atmel.c | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) -- 2.7.0 diff --git a/drivers/usb/host/ehci-atmel.c b/drivers/usb/host/ehci-atmel.c index be0964a801e8..7440722bfbf0 100644 --- a/drivers/usb/host/ehci-atmel.c +++ b/drivers/usb/host/ehci-atmel.c @@ -185,8 +185,7 @@ static int ehci_atmel_drv_remove(struct platform_device *pdev) return 0; } -#ifdef CONFIG_PM -static int ehci_atmel_drv_suspend(struct device *dev) +static int __maybe_unused ehci_atmel_drv_suspend(struct device *dev) { struct usb_hcd *hcd = dev_get_drvdata(dev); struct atmel_ehci_priv *atmel_ehci = hcd_to_atmel_ehci_priv(hcd); @@ -200,7 +199,7 @@ static int ehci_atmel_drv_suspend(struct device *dev) return 0; } -static int ehci_atmel_drv_resume(struct device *dev) +static int __maybe_unused ehci_atmel_drv_resume(struct device *dev) { struct usb_hcd *hcd = dev_get_drvdata(dev); struct atmel_ehci_priv *atmel_ehci = hcd_to_atmel_ehci_priv(hcd); @@ -208,7 +207,6 @@ static int ehci_atmel_drv_resume(struct device *dev) atmel_start_clock(atmel_ehci); return ehci_resume(hcd, false); } -#endif #ifdef CONFIG_OF static const struct of_device_id atmel_ehci_dt_ids[] = { From patchwork Wed Mar 2 15:24:08 2016 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Arnd Bergmann X-Patchwork-Id: 102625 Delivered-To: patch@linaro.org Received: by 10.112.199.169 with SMTP id jl9csp2444090lbc; Wed, 2 Mar 2016 07:26:34 -0800 (PST) X-Received: by 10.66.139.137 with SMTP id qy9mr39221235pab.57.1456932394450; Wed, 02 Mar 2016 07:26:34 -0800 (PST) Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id kx15si3126221pab.43.2016.03.02.07.26.34; Wed, 02 Mar 2016 07:26:34 -0800 (PST) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1755210AbcCBPZy (ORCPT + 30 others); Wed, 2 Mar 2016 10:25:54 -0500 Received: from mout.kundenserver.de ([212.227.126.133]:55829 "EHLO mout.kundenserver.de" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752172AbcCBPZt (ORCPT ); Wed, 2 Mar 2016 10:25:49 -0500 Received: from wuerfel.lan. ([78.42.132.4]) by mrelayeu.kundenserver.de (mreue005) with ESMTPA (Nemesis) id 0Ld1hk-1aAuaK07AO-00iBiy; Wed, 02 Mar 2016 16:25:16 +0100 From: Arnd Bergmann To: Greg Kroah-Hartman , Kishon Vijay Abraham I Cc: linux-arm-kernel@lists.infradead.org, Felipe Balbi , Alan Stern , linux-usb@vger.kernel.org, Arnd Bergmann , linux-kernel@vger.kernel.org Subject: [PATCH 6/6] phy: twl4030: use __maybe_unused to hide pm functions Date: Wed, 2 Mar 2016 16:24:08 +0100 Message-Id: <1456932255-71725-7-git-send-email-arnd@arndb.de> X-Mailer: git-send-email 2.7.0 In-Reply-To: <1456932255-71725-1-git-send-email-arnd@arndb.de> References: <1456932255-71725-1-git-send-email-arnd@arndb.de> X-Provags-ID: V03:K0:ThVZXRKgeAQwIVngmSWLGlbV1+vUcGoBta+xYy5Rwz2TBqYeXT1 Am4MnMhPQik5pykO9cemt2pZG4n1/myXv8i+xd4LBfDYVCxKvnD38liP3yLhEavjEe0vsSD Jk9/WsXr11Fp1M0SOlSPDVap6T4d2TyWP78nUtJKmbBk3RbhCNsO9tf9qGslk1vOZz478kQ +F7UTGDvknCIIg3qls9mA== X-UI-Out-Filterresults: notjunk:1; V01:K0:211z2nRG9IU=:0tXHYPDt5y9mLiZ31n2/Zh qlvNB9ej3p+Xtw7tZaplNT4esUfVldMKoByf4DuBxdiVywuf6MdosWIhFEWXwmE5C8cEQmyCE DaD7j0obPO84WbX0QrrxZp/h+wLj2ldtCEbbWrmWxKjo7ukd00/jFZ0PMg70f5k6C8+r/jILV AMTMLS765w9AgrPD0mb8ki559hIbW1s8pZLgOrzm4GCssEwDYwf/ekStorWZ5FdFb5cgJBgtQ VgDh4Oora37vc3LQANc0CoPL9QDrlibVlTTvDTZlOxnFY42wqKrqq8ARXsqFYYvYN2JdqarUQ oT2C5QIUQj2yillTPfxHx/Tq/kX+rrvFFVCqOmM8SBGRuuznhqsl6sAWQDt4jk6iumq3i644c KUd4wQKiRZbt7gJakW61xwHHzqhs61fVB+0cghnv5yPOFznu30pjG6205yyY0Y8fE5u+bZzl2 +80vP9F/3Ax1chewT8qhFMcTKbm7JKmYRYVwkSa62Ze+DhuRl2d2MeeZsm37d1D5sJ6JvoWft sVbnVJmWPlj2M3pfASOpqL0kqd38zszb/u4ohb2Bn9b+QwXkguNEoqO1I9lnjo/nVKc9hNdy+ I+KQTUO5ruU1Xx2L1vJ1noL4KXzPbSBcfchIH0BDgSX9IXRLD+7bcqMGp0kA8beTmUDT+L4o9 IXfeSDF06HRVaiq5Cs496ZY4wkZbD27F8TAAxBsK1ruiahJno6HvuIrfIlUVdhdZLn7Y= Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org The twl4030 USB PHY driver uses UNIVERSAL_DEV_PM_OPS to access its suspend/resume functions, which causes a warning about unused symbols when CONFIG_PM is disabled: drivers/phy/phy-twl4030-usb.c:394:12: error: 'twl4030_usb_runtime_suspend' defined but not used [-Werror=unused-function] drivers/phy/phy-twl4030-usb.c:408:12: error: 'twl4030_usb_runtime_resume' defined but not used [-Werror=unused-function] This adds __maybe_unused annotations to let the compiler know it can silently drop the function definition. Signed-off-by: Arnd Bergmann --- drivers/phy/phy-twl4030-usb.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) -- 2.7.0 diff --git a/drivers/phy/phy-twl4030-usb.c b/drivers/phy/phy-twl4030-usb.c index 840f3eae428b..6b6af6cba454 100644 --- a/drivers/phy/phy-twl4030-usb.c +++ b/drivers/phy/phy-twl4030-usb.c @@ -391,7 +391,7 @@ static void __twl4030_phy_power(struct twl4030_usb *twl, int on) WARN_ON(twl4030_usb_write_verify(twl, PHY_PWR_CTRL, pwr) < 0); } -static int twl4030_usb_runtime_suspend(struct device *dev) +static int __maybe_unused twl4030_usb_runtime_suspend(struct device *dev) { struct twl4030_usb *twl = dev_get_drvdata(dev); @@ -405,7 +405,7 @@ static int twl4030_usb_runtime_suspend(struct device *dev) return 0; } -static int twl4030_usb_runtime_resume(struct device *dev) +static int __maybe_unused twl4030_usb_runtime_resume(struct device *dev) { struct twl4030_usb *twl = dev_get_drvdata(dev); int res;