From patchwork Fri Jun 9 10:18:02 2017 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Arnd Bergmann X-Patchwork-Id: 103456 Delivered-To: patch@linaro.org Received: by 10.140.91.77 with SMTP id y71csp135373qgd; Fri, 9 Jun 2017 03:19:26 -0700 (PDT) X-Received: by 10.84.176.131 with SMTP id v3mr40838530plb.138.1497003566080; Fri, 09 Jun 2017 03:19:26 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1497003566; cv=none; d=google.com; s=arc-20160816; b=ZMy3ptZW6CFxBSguSOHVzBd2FTWYxzgmvKlT8pJbi3SNivxtOyMaMVAdL9Iwlc9ZOa jr4KHxFK/GSihPVm/TtTxWAtEMUsVn6OcHnn+bilP7Jo73Bg/lme/RNdGXTQxbPV4df7 YhhSDcCJM6mgfwXXxmXNbdp1CqwagFozIdnF8Ch+gew1gxUqCChlUNmNnQJqskz43b11 ytbJJ5gfhVwIDDk5e6Er4o+M0H8tP3umlnP3ZyREQPbdzUicVg8XsfgPdzeRkfj9alZv Lyovz7ehm/uTomKUo2JeylV6rx5AuLuPWJLTzt+Ne1rrexUtUxeBqvCFU2UO+75I8/ah lGTQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:message-id:date:subject:cc:to:from :arc-authentication-results; bh=72FicSQjHJ4LfuqIEwzMDX7Kik4ySQRFCZmpbuhSKc8=; b=TQhMx16000cpOpueeT77JGX8WxTWEZUsutGAhFrb1ME/PGy9AiDQ4GnSuLWtMS7/R3 BKOahq2HyQKRbgbdUWRjRdkDApmWYkylC2a0CPtZP9qug8LmWPYm1phD+it2amxqm4PS n1I8F04k9RnsxJKugOCr4BjwvEFB53DH5ZBqHaYfkyOCzugw7d0elO/gPlehQeaobNfM /AGNbzAO/wOQB836YYu7SBHnfHUkVmqKC+IgCgNliKQNZ9TjmSD1DA1uYpjY6fHa3Vsy /JGtEZYUf/4WVzHDoQWJNumsDHUc7rKeH3bUa3qyFw3LZCyl2rc7mOpSE9ISDB2WWiQu /QhQ== ARC-Authentication-Results: i=1; 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 Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id q22si6600755pgn.201.2017.06.09.03.19.25; Fri, 09 Jun 2017 03:19:26 -0700 (PDT) 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 S1751666AbdFIKTD (ORCPT + 25 others); Fri, 9 Jun 2017 06:19:03 -0400 Received: from mout.kundenserver.de ([212.227.126.133]:61637 "EHLO mout.kundenserver.de" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751623AbdFIKTA (ORCPT ); Fri, 9 Jun 2017 06:19:00 -0400 Received: from wuerfel.lan ([78.42.17.5]) by mrelayeu.kundenserver.de (mreue005 [212.227.15.129]) with ESMTPA (Nemesis) id 0M1CQ8-1e7wk443WS-00tAeQ; Fri, 09 Jun 2017 12:18:25 +0200 From: Arnd Bergmann To: Nicolas Ferre , Alexandre Belloni Cc: Arnd Bergmann , =?utf-8?b?U3plbXrFkSBBbmRyw6Fz?= , linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org Subject: [PATCH] ARM: at91: fix at91_suspend_entering_slow_clock link error Date: Fri, 9 Jun 2017 12:18:02 +0200 Message-Id: <20170609101821.2776168-1-arnd@arndb.de> X-Mailer: git-send-email 2.9.0 X-Provags-ID: V03:K0:NYzGrZXuOD5tKF9zNchOYZL7RyIvTuYGAogPOfKl/66YqEpfFEV Z4G5Z/H3kfCTd/rwgrgeim1hzhuhIlWurRvQGnEcAyLInYzF9Ftm31kpfIAozxcF7WmqDqK /7V3vNrNVMNk6l+r2uUsHf0yB8KxuCuw1BhJnUWYLb7OPRuCQFDxtM1s/fpjU80fmyH9xsm zl0yAMYlxVfBX5vkRfnDA== X-UI-Out-Filterresults: notjunk:1; V01:K0:RRa4P9oIgd4=:QUjdYagaaysgTn9etl3ajE hdtI447Rxxqdy8Vu2H7hlPwZt6OxFO6NZxssCwLcOwXDkJj+BQIZyEZhjEmlg1/Q/XwoIvLnT aTdRVGIb4z1mIzMpKkaqEoZ7UjxwTI7SUb+kaEdK0VCQ7WMWneHe7dssXoyPogzoa+lr9Uszd JQMwtufnu8iWeMD7eII5Vo9mBB0tQRntK7whypw8BCVZdRC0Bydsc7GhIbfXbYgfLBLlqxlgq RVxQMh/0NWgU1r9k6zU60G1U90MT8uTD1nDSMWaxythCo0MjZvDrSmZPY7/cA7RKcqVw6AdNZ LjrrV+MlIxaJW2hMN7O57bX2/0kqcFcUHsXq3NYnH3v074ih5RZiFzlFNHyLSOG1S9jaP73TS KMcSnp28c0zGMaXxPssbMMX0JxrwLxrEEntoV2ExtGRNZEyVOhtvD1+u6982beThzL6vqGuNH OQoN8Ls7/HuK6xXsCLkVVClpUH+SF1tQ6Xg51TRROHGrQL4rHpWWh1yBOFYeUnL+z3ndQFSHk XD3QMgj9Xb5Sml44r/ZGPLdN5E9+ogzHKUXd+Y1M9ArmaldBSxmutp+BE+ElX5xjpxuch+O13 L54ihmediGlBfPzgo7E5zSV2/UG8r1jxwZBljQBDKf15rjHzsrda8XFTIPLN2hd3G1MpTsXYj NzUaghx9vBWy0h/qE7yBQSvORNtgpcXDMM4uLBrir3Vusa+8AuR2EYasqlnBD5X1YTLg= Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org When CONFIG_ARCH_AT91 is enabled, but none of the specific SoC support is in use, some at91 specific drivers fail to link: drivers/tty/serial/atmel_serial.o: In function `atmel_serial_suspend': atmel_serial.c:(.text.atmel_serial_suspend+0x1e): undefined reference to `at91_suspend_entering_slow_clock' drivers/usb/host/ohci-at91.o: In function `ohci_hcd_at91_drv_suspend': ohci-at91.c:(.text.ohci_hcd_at91_drv_suspend+0x12): undefined reference to `at91_suspend_entering_slow_clock' drivers/usb/gadget/udc/at91_udc.o: In function `at91udc_suspend': at91_udc.c:(.text.at91udc_suspend+0x26): undefined reference to `at91_suspend_entering_slow_clock' This changes the at91_suspend_entering_slow_clock hack once more, adding an alternative inline implementation that is used exactly in those cases that don't provide the normal implementation. Fixes: c1892c2379d2 ("ARM: at91: handle CONFIG_PM for armv7m configurations") Signed-off-by: Arnd Bergmann --- arch/arm/mach-at91/samv7.c | 9 --------- include/linux/platform_data/atmel.h | 7 +++++++ 2 files changed, 7 insertions(+), 9 deletions(-) -- 2.9.0 diff --git a/arch/arm/mach-at91/samv7.c b/arch/arm/mach-at91/samv7.c index 910f0c68db62..11386f190c83 100644 --- a/arch/arm/mach-at91/samv7.c +++ b/arch/arm/mach-at91/samv7.c @@ -15,15 +15,6 @@ #include #include "generic.h" -#ifdef CONFIG_PM -/* This function has to be defined for various drivers that are using it */ -int at91_suspend_entering_slow_clock(void) -{ - return 0; -} -EXPORT_SYMBOL(at91_suspend_entering_slow_clock); -#endif - static const char *const samv7_dt_board_compat[] __initconst = { "atmel,samv7", NULL diff --git a/include/linux/platform_data/atmel.h b/include/linux/platform_data/atmel.h index 3c8825b67298..7b6dce7d6d33 100644 --- a/include/linux/platform_data/atmel.h +++ b/include/linux/platform_data/atmel.h @@ -52,6 +52,13 @@ struct atmel_uart_data { }; /* FIXME: this needs a better location, but gets stuff building again */ +#ifdef CONFIG_ATMEL_PM extern int at91_suspend_entering_slow_clock(void); +#else +static inline int at91_suspend_entering_slow_clock(void) +{ + return 0; +} +#endif #endif /* __ATMEL_H__ */