From patchwork Thu Mar 17 09:20:20 2016 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Arnd Bergmann X-Patchwork-Id: 8608501 X-Patchwork-Delegate: kvalo@adurom.com Return-Path: X-Original-To: patchwork-linux-wireless@patchwork.kernel.org Delivered-To: patchwork-parsemail@patchwork1.web.kernel.org Received: from mail.kernel.org (mail.kernel.org [198.145.29.136]) by patchwork1.web.kernel.org (Postfix) with ESMTP id AC3169F44D for ; Thu, 17 Mar 2016 09:20:54 +0000 (UTC) Received: from mail.kernel.org (localhost [127.0.0.1]) by mail.kernel.org (Postfix) with ESMTP id C2C10202EC for ; Thu, 17 Mar 2016 09:20:53 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.kernel.org (Postfix) with ESMTP id 62A9F20306 for ; Thu, 17 Mar 2016 09:20:50 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S934775AbcCQJUs (ORCPT ); Thu, 17 Mar 2016 05:20:48 -0400 Received: from mout.kundenserver.de ([212.227.126.131]:49494 "EHLO mout.kundenserver.de" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S933251AbcCQJUn (ORCPT ); Thu, 17 Mar 2016 05:20:43 -0400 Received: from wuerfel.lan. ([78.42.132.4]) by mrelayeu.kundenserver.de (mreue001) with ESMTPA (Nemesis) id 0MOXED-1amEsA228j-005mCp; Thu, 17 Mar 2016 10:20:35 +0100 From: Arnd Bergmann To: =?UTF-8?q?Rafa=C5=82=20Mi=C5=82ecki?= Cc: Arnd Bergmann , Kalle Valo , Hauke Mehrtens , linux-wireless@vger.kernel.org, linux-kernel@vger.kernel.org Subject: [PATCH 1/2] bcma: fix building without OF_IRQ Date: Thu, 17 Mar 2016 10:20:20 +0100 Message-Id: <1458206432-3039552-1-git-send-email-arnd@arndb.de> X-Mailer: git-send-email 2.7.0 X-Provags-ID: V03:K0:ld0aLEoFrw7Dg8w4lZthRfL79SNJu23Pn5rLuEX0Pn0VkJkTnze wzEDMF0XYCtG/nm4k0y4segCMgnLZHMkbUmDJGkkOODVNnz0Ac2Ai01R1quxUS7cRiaaMTZ 5AUg9L/ZO8o2rnRSUkzMFa3za3BivTIgpbunPO4AGFzPOMB67Zim6NF0nbArKrUhnDetQDF 2n8GkWyNgc2u288hxgx/Q== X-UI-Out-Filterresults: notjunk:1; V01:K0:v7e4NHZHfLM=:OVD/zeAJZtwF5APOHiw3Gg XXYu8Gbdr4y99fZ0enl3woaC4Evy3qDBJAQqRAUUnZIfiTYSHac4ZlCsp4paukGOZCfa+JRyI ghEnyORiw84ZO3F+BcE7j0rfxAKbRF0hL1nIvFB4Q93XGNvo5hkl85Uts9og8jyX358nY4U+m xlddtbOLdpD8jS2lAM8MwmKRnv8Z9PY5anVFoXRnkWTasK28SLh+ZpEBC/j8yR+w1mbTk04Uc 8jIZiEAJd0PQ9ADuNXEBwLeHqBSWF3Dz0QD+SHoqK/sjTj2SpsNRE5YgBKwM5Fi1U2y47vAlf y5YRC5NKwPodN18teRrkdxchSsKx5PEh60k0/xvXbxF5DHjvPykjDfUmLbxijB8FldioUWVwf ollt3e/Z740LhKzlo2Q/6c9xaB9uVThlu614CIy5y8zQit7wVZ1ZuNYsWZFHXhOAOBOZG0OQB KyXpIVySY2BB6m0pJmJCzIWGpw0kEKkgvi6BTHtiK5xw9AMwgCSR7JJsavut68va6FoYwGpE6 mejxmYchvCNxdkWcTAjGkYkzokuMpzA1DVFThnapDlLaNqjAFrcKX7Y0zvpapBhmO4JkLnpDV /zA9f9SzGVrNqX+rWVAfXWLiONQB3n4cCO9z6iRlYCcjQel0T5ApO1pI6AaoLRKeQKWCxSrg0 gL9l5Ldp5mKmHzq1L+1e2WGCIMNqCXyx/tcHYB7E08AHoVfbCoQ9o065tGmOPoLu2/3I= Sender: linux-wireless-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-wireless@vger.kernel.org X-Spam-Status: No, score=-6.9 required=5.0 tests=BAYES_00, RCVD_IN_DNSWL_HI, RP_MATCHES_RCVD, UNPARSEABLE_RELAY autolearn=ham version=3.3.1 X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on mail.kernel.org X-Virus-Scanned: ClamAV using ClamSMTP The bcma driver core can be built with or without DT support, but it fails to build when CONFIG_OF=y and CONFIG_OF_IRQ=n, which can happen on platforms that do not support IRQ domains. ERROR: "irq_create_of_mapping" [drivers/bcma/bcma.ko] undefined! ERROR: "of_irq_parse_raw" [drivers/bcma/bcma.ko] undefined! ERROR: "of_irq_parse_one" [drivers/bcma/bcma.ko] undefined! This adds another compile-time check for OF_IRQ, but also gets rid of now unneeded #ifdef checks: Using the simpler IS_ENABLED() check for OF_IRQ also covers the case of not having CONFIG_OF enabled. The check for CONFIG_OF_ADDRESS was added to allow building on architectures without OF_ADDRESS, but that has been addressed already in b1d06b60e90c ("of: Provide static inline function for of_translate_address if needed"). Signed-off-by: Arnd Bergmann --- drivers/bcma/main.c | 17 ++++------------- 1 file changed, 4 insertions(+), 13 deletions(-) diff --git a/drivers/bcma/main.c b/drivers/bcma/main.c index 786be8fed39e..1f635471f318 100644 --- a/drivers/bcma/main.c +++ b/drivers/bcma/main.c @@ -136,7 +136,6 @@ static bool bcma_is_core_needed_early(u16 core_id) return false; } -#if defined(CONFIG_OF) && defined(CONFIG_OF_ADDRESS) static struct device_node *bcma_of_find_child_device(struct platform_device *parent, struct bcma_device *core) { @@ -184,7 +183,7 @@ static unsigned int bcma_of_get_irq(struct platform_device *parent, struct of_phandle_args out_irq; int ret; - if (!parent || !parent->dev.of_node) + if (!IS_ENABLED(CONFIG_OF_IRQ) || !parent || !parent->dev.of_node) return 0; ret = bcma_of_irq_parse(parent, core, &out_irq, num); @@ -202,23 +201,15 @@ static void bcma_of_fill_device(struct platform_device *parent, { struct device_node *node; + if (!IS_ENABLED(CONFIG_OF_IRQ)) + return; + node = bcma_of_find_child_device(parent, core); if (node) core->dev.of_node = node; core->irq = bcma_of_get_irq(parent, core, 0); } -#else -static void bcma_of_fill_device(struct platform_device *parent, - struct bcma_device *core) -{ -} -static inline unsigned int bcma_of_get_irq(struct platform_device *parent, - struct bcma_device *core, int num) -{ - return 0; -} -#endif /* CONFIG_OF */ unsigned int bcma_core_irq(struct bcma_device *core, int num) {