From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1755013AbcAZGVq (ORCPT ); Tue, 26 Jan 2016 01:21:46 -0500 Received: from mailout1.samsung.com ([203.254.224.24]:58005 "EHLO mailout1.samsung.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752838AbcAZGVn convert rfc822-to-8bit (ORCPT ); Tue, 26 Jan 2016 01:21:43 -0500 X-AuditID: cbfee68e-f793c6d00000136c-f1-56a710755bb0 MIME-version: 1.0 Content-type: text/plain; charset=UTF-8 Content-transfer-encoding: 8BIT Message-id: <56A71075.7070606@samsung.com> Date: Tue, 26 Jan 2016 15:21:41 +0900 From: Inki Dae User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:31.0) Gecko/20100101 Thunderbird/31.6.0 To: Arnd Bergmann Cc: Joonyoung Shim , Seung-Woo Kim , Kyungmin Park , dri-devel@lists.freedesktop.org, linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org, linux-samsung-soc@vger.kernel.org Subject: Re: [PATCH] drm/exynos: fix building without CONFIG_PM_SLEEP References: <9569056.LBRz4v8fSj@wuerfel> In-reply-to: <9569056.LBRz4v8fSj@wuerfel> X-Brightmail-Tracker: H4sIAAAAAAAAA+NgFtrPIsWRmVeSWpSXmKPExsWyRsSkULdUYHmYwbW/YhZ/Jx1jt7jy9T2b xYt7F1kszja9YbfY9Pgaq8XlXXPYLGac38dkMWPySzYHDo/fvyYxetzvPs7ksXlJvUffllWM Hp83yQWwRnHZpKTmZJalFunbJXBlbJ3qVtAoWNF3YytzA2MnXxcjJ4eEgInEp6PP2CFsMYkL 99azdTFycQgJrGCUOHX3MiNM0YfJ51kgErMYJRa//MQEkuAVEJT4MfkeC4jNLKAuMWneImYI W0SitfkkO4StLbFs4WtmiOYHjBKvp6xnhWjWklh16AuYzSKgKjH3zzQ2EJsNyJ644j6QzcEh KhAh0X2iEiQsIqAoMfXFM7A5zAL9TBJ3Z8wHqxcWcJXY3rsQbI6QgIZE17XjYHFOAU2JK1/X soM0SAjcYpe4OW8hM8QyAYlvkw+xgCyQEJCV2HSAGeJLSYmDK26wTGAUn4Xkt1lIfpuF5LdZ SH5bwMiyilE0tSC5oDgpvchIrzgxt7g0L10vOT93EyMwXk//e9a3g/HmAetDjAIcjEo8vBsK loUJsSaWFVfmHmI0BbpoIrOUaHI+MCnklcQbGpsZWZiamBobmVuaKYnzJkj9DBYSSE8sSc1O TS1ILYovKs1JLT7EyMTBKdXAyJWwszBa7ZSK48KaZbUb0sSm5VueLnvx44x6NqeLyr09Mz46 GAX/CajZUc64/7KnXuYyi+/xkh+98tn+yDqfZDXIZ5U5VJ+0etcj13bh0/nid9YKzL373fGt QXXGY+MecV8e102Zhpxhgt1Pfx88XMuwcmfOXYtcBtY1y+V7d31VLTj0TveBEktxRqKhFnNR cSIAKKB4utICAAA= X-Brightmail-Tracker: H4sIAAAAAAAAA+NgFvrEIsWRmVeSWpSXmKPExsVy+t9jQd1SgeVhBq37BC3+TjrGbnHl63s2 ixf3LrJYnG16w26x6fE1VovLu+awWcw4v4/JYsbkl2wOHB6/f01i9LjffZzJY/OSeo++LasY PT5vkgtgjWpgtMlITUxJLVJIzUvOT8nMS7dV8g6Od443NTMw1DW0tDBXUshLzE21VXLxCdB1 y8wBukVJoSwxpxQoFJBYXKykb4dpQmiIm64FTGOErm9IEFyPkQEaSFjDmLHwXEzBUYGKVVeu MzYwnuXtYuTkkBAwkfgw+TwLhC0mceHeerYuRi4OIYFZjBKLX35iAknwCghK/Jh8D6iIg4NZ QF7iyKVskDCzgLrEpHmLmCHqHzBKvJ6ynhWiXkti1aEvYDaLgKrE3D/T2EBsNiB74or7bCBz RAUiJLpPVIKERQQUJaa+eAY2h1mgn0ni7oz5YPXCAq4S23sXgs0REtCQ6Lp2HCzOKaApceXr WvYJjEBXIpw3C+G8WUjOW8DIvIpRIrUguaA4KT3XMC+1XK84Mbe4NC9dLzk/dxMjOL6fSe1g PLjL/RCjAAejEg8vR/GyMCHWxLLiytxDjBIczEoivEq8y8OEeFMSK6tSi/Lji0pzUosPMZoC /TeRWUo0OR+YevJK4g2NTcyMLI3MDS2MjM2VxHlrL0WGCQmkJ5akZqemFqQWwfQxcXBKNTCW ZOs8D5v+6IqY2YvnCTv3HPaqZd326KZJ0qvrbz4VrWg8UvhE8CPfzkeRexcHHmLKcu5eck3H hd+20qlsTu7ZCws/Jxlmzhax2HhReruKsezUSb9/xy1ssnu/NPb8/R0Hf++8EJlxadI1vm7m XxufbehpOddxtyP6TsS0uXPvzCrN5X6SOf9BoRJLcUaioRZzUXEiAPm8g00FAwAA DLP-Filter: Pass X-MTR: 20000000000000000@CPGS X-CFilter-Loop: Reflected Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Hi Arnd, Sorry for late. 2015년 11월 18일 00:08에 Arnd Bergmann 이(가) 쓴 글: > The runtime PM operations use the suspend/resume functions > even when CONFIG_PM_SLEEP is not set, but this now fails > for the exynos DRM driver: > > exynos_mixer.c:1289:61: error: 'exynos_mixer_resume' undeclared here (not in a function) > SET_RUNTIME_PM_OPS(exynos_mixer_suspend, exynos_mixer_resume, NULL) > > This removes the #ifdef and instead marks the functions as > __maybe_unused, which does the right thing in all cases and > also looks nicer. > > Signed-off-by: Arnd Bergmann > Fixes: ("drm/exynos: add pm_runtime to Mixer") > > diff --git a/drivers/gpu/drm/exynos/exynos_mixer.c b/drivers/gpu/drm/exynos/exynos_mixer.c > index 7498c6e76a53..fcaf71df77c1 100644 > --- a/drivers/gpu/drm/exynos/exynos_mixer.c > +++ b/drivers/gpu/drm/exynos/exynos_mixer.c > @@ -1230,8 +1230,7 @@ static int mixer_remove(struct platform_device *pdev) > return 0; > } > > -#ifdef CONFIG_PM_SLEEP How about just changing it to CONFIG_PM for consistency of other kms drivers? Actually, I had modified it to PM since original auther, Gustavo Padovan, posted runtime pm support. However, it seems missing this one. Thanks, Inki Dae > -static int exynos_mixer_suspend(struct device *dev) > +static int __maybe_unused exynos_mixer_suspend(struct device *dev) > { > struct mixer_context *ctx = dev_get_drvdata(dev); > struct mixer_resources *res = &ctx->mixer_res; > @@ -1247,7 +1246,7 @@ static int exynos_mixer_suspend(struct device *dev) > return 0; > } > > -static int exynos_mixer_resume(struct device *dev) > +static int __maybe_unused exynos_mixer_resume(struct device *dev) > { > struct mixer_context *ctx = dev_get_drvdata(dev); > struct mixer_resources *res = &ctx->mixer_res; > @@ -1283,7 +1282,6 @@ static int exynos_mixer_resume(struct device *dev) > > return 0; > } > -#endif > > static const struct dev_pm_ops exynos_mixer_pm_ops = { > SET_RUNTIME_PM_OPS(exynos_mixer_suspend, exynos_mixer_resume, NULL) > >