From patchwork Sat Feb 20 01:13:10 2016 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: David Daney X-Patchwork-Id: 8365411 Return-Path: X-Original-To: patchwork-linux-arm@patchwork.kernel.org Delivered-To: patchwork-parsemail@patchwork2.web.kernel.org Received: from mail.kernel.org (mail.kernel.org [198.145.29.136]) by patchwork2.web.kernel.org (Postfix) with ESMTP id 928D4C0553 for ; Sat, 20 Feb 2016 01:16:56 +0000 (UTC) Received: from mail.kernel.org (localhost [127.0.0.1]) by mail.kernel.org (Postfix) with ESMTP id 905DA20588 for ; Sat, 20 Feb 2016 01:16:55 +0000 (UTC) Received: from bombadil.infradead.org (bombadil.infradead.org [198.137.202.9]) (using TLSv1.2 with cipher AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id 766E32049E for ; Sat, 20 Feb 2016 01:16:54 +0000 (UTC) Received: from localhost ([127.0.0.1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.80.1 #2 (Red Hat Linux)) id 1aWw7Z-00024S-4K; Sat, 20 Feb 2016 01:14:05 +0000 Received: from mail-pf0-x230.google.com ([2607:f8b0:400e:c00::230]) by bombadil.infradead.org with esmtps (Exim 4.80.1 #2 (Red Hat Linux)) id 1aWw7L-0001o4-ML for linux-arm-kernel@lists.infradead.org; Sat, 20 Feb 2016 01:13:52 +0000 Received: by mail-pf0-x230.google.com with SMTP id x65so59897419pfb.1 for ; Fri, 19 Feb 2016 17:13:31 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=from:to:cc:subject:date:message-id:in-reply-to:references; bh=EhmRr8E61ReQyTyvzBE2Vh07uvVP58myEWiV03+r5nY=; b=ogr4zDOQWW5OVUpxta7tVYIy2vTvjdO9KswJUiJ7Vfwmymiu8/UTdzKWdhmigLJLDe 02QvIBFt0uBWFzfy7d//UExAX9V8yM5Ks86RBrcl521BsIcXYzhybEU0UeH1iYeVB7uq LifJd1FbjvBg2ITcmVdn8/i+B601nwWznZ2PrXiCRmwXrlTidmLBhND52ZU2UlL9WAo0 ewBat4BfYHlcxVZjSJBW9UQ7YwDZsskdFN+xKEfzGApQb7CqIBNftaZECtZWL64Ouojh tCW/Ajqu8P0h+Rz1A+c7syqQdiBQP740/RTNYUjo19LiiKWmEiIn4LSTMco704kov8C0 wXrQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references; bh=EhmRr8E61ReQyTyvzBE2Vh07uvVP58myEWiV03+r5nY=; b=i0orm6LIsFxxluHhkgKTp3dQsbFlFmQ6pE4ngGkCxeQJZe00bepimv8Dpm0EDhRdPb U3SNbhlU/9OqZN3mgwEo4n6dzV5GcDJbKvgPjgb/9xQrj3ynVzc1tw+Sd5dzWqxCSVp1 R2dKgGcF490myeh/nwB+763D88UJykxmzKcgJ8C0MTly7WmRX9XazlRFkry6TVZPEd1p rDYdVT3vGk/vBTLtMzyPyZVTT0Ck2KYQkdjP6xJN64+hDoxiqBaoQRQmiGEQXl6Qgyss C43F8gUYLcqheT8RZA73FCLTV/xYt9wfzESAzMR9cNyXQIiB0vLdyJGTQ0qfa7UobWBd FZzw== X-Gm-Message-State: AG10YOTrT5T05odWnPB1J1Ndtw5AIfzAKcpSYCTfdtSH5s7SBzCu94eHS7ES9Qq9idmOZA== X-Received: by 10.98.89.4 with SMTP id n4mr21716470pfb.81.1455930811122; Fri, 19 Feb 2016 17:13:31 -0800 (PST) Received: from dl.caveonetworks.com ([64.2.3.194]) by smtp.gmail.com with ESMTPSA id 74sm20366675pfs.33.2016.02.19.17.13.27 (version=TLS1 cipher=AES128-SHA bits=128/128); Fri, 19 Feb 2016 17:13:27 -0800 (PST) Received: from dl.caveonetworks.com (localhost.localdomain [127.0.0.1]) by dl.caveonetworks.com (8.14.5/8.14.5) with ESMTP id u1K1DQfk005418; Fri, 19 Feb 2016 17:13:26 -0800 Received: (from ddaney@localhost) by dl.caveonetworks.com (8.14.5/8.14.5/Submit) id u1K1DQhI005417; Fri, 19 Feb 2016 17:13:26 -0800 From: David Daney To: Will Deacon , linux-arm-kernel@lists.infradead.org, Rob Herring , Pawel Moll , Mark Rutland , Ian Campbell , Kumar Gala , devicetree@vger.kernel.org, Ard Biesheuvel , Frank Rowand , Grant Likely , Catalin Marinas , Matt Fleming , linux-efi@vger.kernel.org, Ganapatrao Kulkarni , Robert Richter Subject: [PATCH v11 01/10] of/fdt: make generic early_init_dt_add_memory_arch() a weak alias Date: Fri, 19 Feb 2016 17:13:10 -0800 Message-Id: <1455930799-5371-2-git-send-email-ddaney.cavm@gmail.com> X-Mailer: git-send-email 1.7.11.7 In-Reply-To: <1455930799-5371-1-git-send-email-ddaney.cavm@gmail.com> References: <1455930799-5371-1-git-send-email-ddaney.cavm@gmail.com> X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20160219_171351_790751_1EF5D0C7 X-CRM114-Status: GOOD ( 13.19 ) X-Spam-Score: -2.7 (--) X-BeenThere: linux-arm-kernel@lists.infradead.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: linux-kernel@vger.kernel.org, David Daney MIME-Version: 1.0 Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+patchwork-linux-arm=patchwork.kernel.org@lists.infradead.org X-Spam-Status: No, score=-4.1 required=5.0 tests=BAYES_00, DKIM_ADSP_CUSTOM_MED, DKIM_SIGNED, FREEMAIL_FROM, RCVD_IN_DNSWL_MED, RP_MATCHES_RCVD, T_DKIM_INVALID, UNPARSEABLE_RELAY autolearn=unavailable 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 From: Ard Biesheuvel The function early_init_dt_add_memory_arch() is defined as __weak so that archs can override it. However, in this override implementation, it may still be useful to invoke the generic implementation, so instead, rename the generic version to early_init_dt_add_memory() and turn the original definition into a weak alias. This way, the generic version can still be called even in the presence of an arch specific override. Signed-off-by: Ard Biesheuvel Signed-off-by: Robert Richter Signed-off-by: David Daney --- drivers/of/fdt.c | 7 +++++-- include/linux/of_fdt.h | 1 + 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/drivers/of/fdt.c b/drivers/of/fdt.c index 655f79d..cba8281 100644 --- a/drivers/of/fdt.c +++ b/drivers/of/fdt.c @@ -980,7 +980,7 @@ int __init early_init_dt_scan_chosen(unsigned long node, const char *uname, #define MAX_MEMBLOCK_ADDR ((phys_addr_t)~0) #endif -void __init __weak early_init_dt_add_memory_arch(u64 base, u64 size) +void __init early_init_dt_add_memory(u64 base, u64 size) { const u64 phys_offset = __pa(PAGE_OFFSET); @@ -1038,7 +1038,7 @@ void * __init __weak early_init_dt_alloc_memory_arch(u64 size, u64 align) return __va(memblock_alloc(size, align)); } #else -void __init __weak early_init_dt_add_memory_arch(u64 base, u64 size) +void __init early_init_dt_add_memory(u64 base, u64 size) { WARN_ON(1); } @@ -1058,6 +1058,9 @@ void * __init __weak early_init_dt_alloc_memory_arch(u64 size, u64 align) } #endif +__weak __alias(early_init_dt_add_memory) +void early_init_dt_add_memory_arch(u64 base, u64 size); + bool __init early_init_dt_verify(void *params) { if (!params) diff --git a/include/linux/of_fdt.h b/include/linux/of_fdt.h index df9ef38..463a06b 100644 --- a/include/linux/of_fdt.h +++ b/include/linux/of_fdt.h @@ -65,6 +65,7 @@ extern int early_init_dt_scan_memory(unsigned long node, const char *uname, int depth, void *data); extern void early_init_fdt_scan_reserved_mem(void); extern void early_init_fdt_reserve_self(void); +extern void early_init_dt_add_memory(u64 base, u64 size); extern void early_init_dt_add_memory_arch(u64 base, u64 size); extern int early_init_dt_reserve_memory_arch(phys_addr_t base, phys_addr_t size, bool no_map);