From patchwork Tue Feb 9 13:53:41 2016 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Robert Richter X-Patchwork-Id: 61529 Delivered-To: patch@linaro.org Received: by 10.112.43.199 with SMTP id y7csp2056960lbl; Tue, 9 Feb 2016 05:56:19 -0800 (PST) X-Received: by 10.66.220.230 with SMTP id pz6mr5469554pac.91.1455026179362; Tue, 09 Feb 2016 05:56:19 -0800 (PST) Return-Path: Received: from bombadil.infradead.org (bombadil.infradead.org. [2001:1868:205::9]) by mx.google.com with ESMTPS id d3si54222982pas.116.2016.02.09.05.56.19 for (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Tue, 09 Feb 2016 05:56:19 -0800 (PST) Received-SPF: pass (google.com: domain of linux-arm-kernel-bounces+patch=linaro.org@lists.infradead.org designates 2001:1868:205::9 as permitted sender) client-ip=2001:1868:205::9; Authentication-Results: mx.google.com; spf=pass (google.com: domain of linux-arm-kernel-bounces+patch=linaro.org@lists.infradead.org designates 2001:1868:205::9 as permitted sender) smtp.mailfrom=linux-arm-kernel-bounces+patch=linaro.org@lists.infradead.org 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 1aT8l0-00050b-Me; Tue, 09 Feb 2016 13:55:06 +0000 Received: from mail-bn1on0669.outbound.protection.outlook.com ([2a01:111:f400:fc10::669] helo=na01-bn1-obe.outbound.protection.outlook.com) by bombadil.infradead.org with esmtps (Exim 4.80.1 #2 (Red Hat Linux)) id 1aT8kn-0004gt-D9 for linux-arm-kernel@lists.infradead.org; Tue, 09 Feb 2016 13:54:54 +0000 Authentication-Results: linaro.org; dkim=none (message not signed) header.d=none;linaro.org; dmarc=none action=none header.from=caviumnetworks.com; Received: from rric.localdomain (92.224.192.127) by CY1PR0701MB1614.namprd07.prod.outlook.com (10.163.20.151) with Microsoft SMTP Server (TLS) id 15.1.403.16; Tue, 9 Feb 2016 13:54:30 +0000 From: Robert Richter To: Ard Biesheuvel , Will Deacon , Matt Fleming , Rob Herring , Frank Rowand , Grant Likely Subject: [PATCH v4 1/6] of/fdt: make generic early_init_dt_add_memory_arch() a weak alias Date: Tue, 9 Feb 2016 14:53:41 +0100 Message-ID: <1455026026-11571-2-git-send-email-rrichter@caviumnetworks.com> X-Mailer: git-send-email 2.7.0.rc3 In-Reply-To: <1455026026-11571-1-git-send-email-rrichter@caviumnetworks.com> References: <1455026026-11571-1-git-send-email-rrichter@caviumnetworks.com> MIME-Version: 1.0 X-Originating-IP: [92.224.192.127] X-ClientProxiedBy: AM2PR09CA0006.eurprd09.prod.outlook.com (25.161.22.144) To CY1PR0701MB1614.namprd07.prod.outlook.com (25.163.20.151) X-Microsoft-Exchange-Diagnostics: 1; CY1PR0701MB1614; 2:jM9IdvtE0X7z3usgnvzXB7GVZfY3d2d/yWi4jYkGaJGPHPkP9+jmYeIbF/DPdL9v30818+AMsW3AW8jY1YA+xXuxf6FgDy19VX72kZTz6NHnuVUTTIYDmg66VmwvDK7GkkfAtRiMoDoucPaXKYsWxQ==; 3:xViCDVTwyrzcTMQ7KaB+KXCiuvXd7qAjbhmyzLFCxZuY2IRbz2RCLtz4HHzasN2y8K6LvoWFV+o/PQYYJDulLLM9G34Abxf9RBgxxKCJLjTbQkuun3xCZIb6LAeDzS7k; 25:DIiCY5W4sgfEj4zDhBAByXZJdXaYTsriGy4X1UgD94rfHCc7AfRtuin8CzGu4UH22fUlptRgQrU6y9AeQ2bKsC/joWot7p5uS6vM2oD/KoMAT9JJu0FyWPM4vLJ/GZx0I/IHK0u3nrR68PYjDWYCdmseOlnY2OfeiuzgV6Hnsiz1FK2XTstBJWxdPfD2jAESUO5dex9hCLe2j1cSwkmzeSthTAjACkucQCNkM5+jY+q+EJ0Z/hJiaKwouBG2Hq7ZeqwTHwpwOblhds/aXu9zRogG2rbMb7MFZ8SeomGTobl3EoEe+XZrCAdYZp8xSgQY X-Microsoft-Antispam: UriScan:;BCL:0;PCL:0;RULEID:;SRVR:CY1PR0701MB1614; X-MS-Office365-Filtering-Correlation-Id: 53b31e28-9f09-49e8-eeba-08d331588a5e X-Microsoft-Exchange-Diagnostics: 1; CY1PR0701MB1614; 20:XeXCkN3QCu4BmeA7S+7B4Q90eR/vxNKx/jUK+YgIukOEosZgP4lbe9vLZ9jx/nQG1MvrNZ56j8eBzA8dteEImcpKVBtYLPS5S/FTsy6TVUgJZdk1ka/QkVEcEzPmsX4AtEsr0pGTzZgJ4GTSPIUHe61xfQFLfhjZOR+uOSIT5qazOjBYaeXmik6vxfFldBk2lqtieJQWSAvAgEMxRas6eOPBejXpV50S/+D8R0FnkAmGQz0kqc7h/8cql2jo7fOCFqawy67Uj/5LKqdP6eS3u3fqKhknwC0QpnvVb9BvQ0sOx1uV+DFwJipcP96nswlTBITTnC1pPr9zQ6Pz/+MKhcvg6z5ZikMlia/a+cHroR2d9aed2IfIJ7Ipy+6wnKL2Ztbp6Ai5caSrfr2aNh9SBlNPPEB/kgFmJY8hvfyJsLr6vJlhFCg6tNuUiGsckP7Y7tZGsIDiT/GL15zpJ67X49bOhaqy4nYLiofDGBBfRPpKgetKEzpzUGkGHQAtT26kYIp9Cltbk99nhLNwZ6dm8J1G4Yzr4NvcwE5hW0e6I2sBDi45od0Fzk7afnNhttEfEMTla7WGXqtSVyUcN6LL9ZPbyzDQocSyw3KMp+1/EYI= X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:; X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0; RULEID:(601004)(2401047)(8121501046)(5005006)(3002001)(10201501046); SRVR:CY1PR0701MB1614; BCL:0; PCL:0; RULEID:; SRVR:CY1PR0701MB1614; X-Microsoft-Exchange-Diagnostics: 1; CY1PR0701MB1614; 4:NPpEwdSrzvTd6DEeQsT2kA3iXWT5rZVgp9CZButBUIYTdMtEF692O6peN883htSQ8M4WH+a/x9po2tsvWm01QIHSnWaaTdBuOG+j+wK8Ta18HB+huYuy8SkU1kYY6+7psf5ZAoCUbO7tFXa/sMwbaUs8X8CNqSmMHpN3CjVVBNyw8D8qvk0YMeHxg7DOzrWBpVoWXOnQ6rELTnKPIign4bc5yM5YKYWuAd+nkmcTArgEabNtBh5wtWTWjBf20kjWvDrNBcdr6GB0E9HTRlG+hkwegiG4RK68iaQquw4qsnnQ5pHwoZnCsIzEFc9b+8HKTJfJFJKUuF18vJCa26UzA12+9x9We1VzIuSJBNSXeYwncn1u3vysemonU11z6dzG X-Forefront-PRVS: 08476BC6EF X-Forefront-Antispam-Report: SFV:NSPM; SFS:(10009020)(6009001)(40100003)(229853001)(48376002)(33646002)(5001770100001)(5001960100002)(5003940100001)(36756003)(122386002)(76176999)(50986999)(42186005)(50466002)(92566002)(50226001)(2950100001)(4326007)(2906002)(189998001)(5008740100001)(5004730100002)(19580395003)(77096005)(66066001)(19580405001)(1096002)(47776003)(6116002)(87976001)(586003)(3846002)(41533002); DIR:OUT; SFP:1101; SCL:1; SRVR:CY1PR0701MB1614; H:rric.localdomain; FPR:; SPF:None; MLV:sfv; LANG:en; X-Microsoft-Exchange-Diagnostics: 1; CY1PR0701MB1614; 23:vYhUcWhwP77IsvVWmr/AAEqnLtREeM7POkHpYsahuhNB1gZfOgorsSIwDzImzjp1cq3HL3zlHWanbciVlLycHyfbUQPSLJWU9ZBZeDM7hOyhnyCRXXxyMpP76IgQrI16/kXYDJFi+87hVqorby4Z+zPukZQFQI+4lyMy9XmWL96CIanAdRJrOau1KjzJpCvSZnKZW7PqPiOpaNKL39C33/KQcZDH755pprMZ3OlwsDkq9IEkrr5jQApAkbScPd78cPzxpAXo8CSSGguft5vqWrLbiNNvas0c+XYF6sTE3M0paup1+cVOe+e/8Zs2oKCUDv0KUp7sUwEo1KDHRsuQPSE9kzcW02pnxwbwT2vlBTWOYQ5jqY0VFgnKkofPpJZ7WNsAbFtaLr0J9H7aNduvahzIwxiOnEam6NO7E1m3pqOCJT12GgD8w13xjuMGAZGr6h5dFtEPv+zbiQL+lMW/q81npowFokoUj2wRgwhMq1rOtRnMsZANduU7Gvjm5GzQ87Y3YhKufJaCi2tIabTSKBK8DrxUaQ7VDQ0iXSIz7R0n21WIAsbQWADheewp9dUbXAU0m06O4mIpQS8sV7+euGHFatqYrQ/9dYnpg2LdIdDbl3FQXDfTJwrtvG+etg2Usso8HfGWrG+bceZkc31qN4jFhxkpFUO/6hURHvzsH/bdXU2TuM0fMPvtp6UyPd7zkZhFH5l3b1b/JxxdO4WiiNKN6bQWUBBnbRctrMfWDnpcR3TNwi2mLL5QeZW6q9l96ipRZuvoYwDG7BM7DybWyrR8KT5hrhf/VHoIKSul+YKa9cAC5b92aoeTjZZN+U09zxVbHGXLeSf51NkVAkJM/hakZmLrdwkl+VE17u0iH12Pp1o90iBcku+G+ptEGmWZVaHVTy1PPaz+ZtVP6W2lW96+0x1+4FLmW1TO0y3fvtU= X-Microsoft-Exchange-Diagnostics: 1; CY1PR0701MB1614; 5:33M7xFd6xa1CHLZ6W58R4Aye1deE+3I3FxAtk+UBxYROJ5KaXJ2fWJl9f+JKTfmxWmmppeTpqkgjIUwRIuuTjkg07LYtawaaQAx/Es5HhAjqCLs/lVdUl0xnxX5aTTFGZ3zq24ufY9XLXrXhR3+aew==; 24:H04SI85tEFERClPVTcEjMUyE7mjkUI2MtMMJYzR6Kae/Po5FzDhhDU1eEzlRwvgW1icFmuo8MhLeJ7BBcTfOrkBbXZC5+bOb8ShvF45ZDTY= SpamDiagnosticOutput: 1:23 SpamDiagnosticMetadata: NSPM X-OriginatorOrg: caviumnetworks.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 09 Feb 2016 13:54:30.5855 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-Transport-CrossTenantHeadersStamped: CY1PR0701MB1614 X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20160209_055453_637570_8C67F700 X-CRM114-Status: UNSURE ( 8.15 ) X-CRM114-Notice: Please train this message. X-Spam-Score: -1.9 (-) X-Spam-Report: SpamAssassin version 3.4.0 on bombadil.infradead.org summary: Content analysis details: (-1.9 points) pts rule name description ---- ---------------------- -------------------------------------------------- -0.0 RCVD_IN_DNSWL_NONE RBL: Sender listed at http://www.dnswl.org/, no trust [2a01:111:f400:fc10:0:0:0:669 listed in] [list.dnswl.org] -0.0 SPF_HELO_PASS SPF: HELO matches SPF record -1.9 BAYES_00 BODY: Bayes spam probability is 0 to 1% [score: 0.0000] 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: Mark Rutland , devicetree@vger.kernel.org, linux-efi@vger.kernel.org, Catalin Marinas , linux-kernel@vger.kernel.org, Leif Lindholm , Robert Richter , Mark Salter , Ganapatrao Kulkarni , linux-arm-kernel@lists.infradead.org Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+patch=linaro.org@lists.infradead.org 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 Message-Id: <1442881288-13962-2-git-send-email-ard.biesheuvel@linaro.org> Signed-off-by: Robert Richter --- drivers/of/fdt.c | 7 +++++-- include/linux/of_fdt.h | 1 + 2 files changed, 6 insertions(+), 2 deletions(-) -- 2.7.0.rc3 _______________________________________________ linux-arm-kernel mailing list linux-arm-kernel@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-arm-kernel diff --git a/drivers/of/fdt.c b/drivers/of/fdt.c index 655f79db7899..cba8281ab5fd 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 df9ef3801812..463a06ba87ac 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);