From patchwork Fri Jan 29 11:39:12 2016 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Arnd Bergmann X-Patchwork-Id: 101042 Delivered-To: patch@linaro.org Received: by 10.112.130.2 with SMTP id oa2csp1058434lbb; Fri, 29 Jan 2016 03:41:11 -0800 (PST) X-Received: by 10.66.147.136 with SMTP id tk8mr12594233pab.157.1454067659999; Fri, 29 Jan 2016 03:40:59 -0800 (PST) Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id s207si23582096pfs.86.2016.01.29.03.40.59; Fri, 29 Jan 2016 03:40:59 -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 S932220AbcA2Lk4 (ORCPT + 30 others); Fri, 29 Jan 2016 06:40:56 -0500 Received: from mout.kundenserver.de ([212.227.126.134]:56818 "EHLO mout.kundenserver.de" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1755599AbcA2Lky (ORCPT ); Fri, 29 Jan 2016 06:40:54 -0500 Received: from wuerfel.lan. ([78.42.132.4]) by mrelayeu.kundenserver.de (mreue005) with ESMTPA (Nemesis) id 0MXkkl-1acZHw2sFD-00WlpR; Fri, 29 Jan 2016 12:40:19 +0100 From: Arnd Bergmann To: David Miller Cc: linux-arm-kernel@lists.infradead.org, Arnd Bergmann , netdev@vger.kernel.org, Michael Chan , linux-kernel@vger.kernel.org Subject: [PATCH v2 4/7] net: bgmac: clarify CONFIG_BCMA dependency Date: Fri, 29 Jan 2016 12:39:12 +0100 Message-Id: <1454067557-3546883-5-git-send-email-arnd@arndb.de> X-Mailer: git-send-email 2.7.0 In-Reply-To: <1454067557-3546883-1-git-send-email-arnd@arndb.de> References: <1454067557-3546883-1-git-send-email-arnd@arndb.de> X-Provags-ID: V03:K0:fb6fcI0whP2LKlRCygwt1WsCW3OfeODkbbASiTxS34joo1cd7fm /LhFrpp1BLi9OREvCTyeY5ZuJVAzz3OtsBeKYWNNkjDCGjEmayfoVEdyBbykF61rKEE5XbU 6aPXBgq2lV3+7eGDAq7KoVIv9IlIpGrApFf/1FHDtCk6i3fLzyrkewTByJwR9XPbdjan5Da AgUSwl4cPG3bfa3qZN+iQ== X-UI-Out-Filterresults: notjunk:1; V01:K0:BI5XqvzUYBU=:8eKnRmYGhhCt3LSzx4kzdN dlVyAAXJglyZ8thERKBw9exCSwBj4cyLl9E9OzKazSAxtfqVLRGrwxYjWzytsaBUUb8pOmKlY mtuhTrNtV1+I4xpfqREkrsqB4iCZVS8cJCL7TdZxzEHGoscjwoLFiximCRYyWVKyHFYZqlEB/ 85YED9I+LWI3id+yOFQa1EqBL4QkMAoh62TCTZpF6jw6l48geUB5vbJufbW90WItxNNHE8YEy xSqAPFoMuo3osbwtgtKU+VxxaHEs34tG04RgDhaOpdkRgUYnv6GY88uveShUMfHFCTHiFtsq+ rqQEWoYWDxmRNJkyZ+MOROacfz/8t1QSsacw1EDDV5DaAExqZHQ1ZWuhZa5pXxF8MZdHzdvl4 fKeW+Rud9RPe9WrgOyzcmKozyC7ZEOkRQ2vSYAhfAMcXaYC5SLbEb/SUYVph9/aLTmkV6To4p 0dqHtWLVao0S8JwQo00lE7H5VKVc23aGKYKXkuuvwvWcxfaRxNpQcWukrKxU3a7eFvJkUz6Rw TS2YaosWfpV1jQu9LXfVXNVadBwT/60zKVLn57RK4cPVJXRCqiKpmz93ROZMlZOxpUPDlqV5A YXBwcKU75uRJAA0prpspIXnCuCusb9Uid5YQ/s5GzWD4xJV4Zv7fRna/EvX0kaflZ5pEpEtCJ ROKR7jTcQHyxKEVfweuQC/C4UJu9VUNue4kbfJNxbyajTOu/1lmwXc0e82Mwhf6RmC+E= Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org The bgmac driver depends on BCMA_HOST_SOC, which is only used when CONFIG_BCMA is enabled. However, it is a bool option and can be set when CONFIG_BCMA=m, and then bgmac can be built-in, leading to an obvious link error: drivers/built-in.o: In function `bgmac_init': :(.init.text+0x7f2c): undefined reference to `__bcma_driver_register' drivers/built-in.o: In function `bgmac_exit': :(.exit.text+0x110a): undefined reference to `bcma_driver_unregister' To avoid this case, we need to depend on both BCMA and BCMA_SOC, as this patch does. I'm also trying to make the dependency more readable by splitting it into three lines, and adding a COMPILE_TEST alternative so we can test-build it in all configurations that support BCMA. The added dependency on FIXED_PHY addresses a related issue where we cannot call fixed_phy_register() when CONFIG_FIXED_PHY=m and CONFIG_BGMAC=y. Signed-off-by: Arnd Bergmann --- drivers/net/ethernet/broadcom/Kconfig | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) -- 2.7.0 diff --git a/drivers/net/ethernet/broadcom/Kconfig b/drivers/net/ethernet/broadcom/Kconfig index 8550df189ceb..19f7cd02e085 100644 --- a/drivers/net/ethernet/broadcom/Kconfig +++ b/drivers/net/ethernet/broadcom/Kconfig @@ -151,8 +151,11 @@ config BNX2X_VXLAN config BGMAC tristate "BCMA bus GBit core support" - depends on BCMA_HOST_SOC && HAS_DMA && (BCM47XX || ARCH_BCM_5301X) + depends on BCMA && BCMA_HOST_SOC + depends on HAS_DMA + depends on BCM47XX || ARCH_BCM_5301X || COMPILE_TEST select PHYLIB + select FIXED_PHY ---help--- This driver supports GBit MAC and BCM4706 GBit MAC cores on BCMA bus. They can be found on BCM47xx SoCs and provide gigabit ethernet.