From patchwork Tue Aug 29 07:01:45 2017 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Sumit Garg X-Patchwork-Id: 806988 X-Patchwork-Delegate: yorksun@freescale.com Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Authentication-Results: ozlabs.org; spf=none (mailfrom) smtp.mailfrom=lists.denx.de (client-ip=81.169.180.215; helo=lists.denx.de; envelope-from=u-boot-bounces@lists.denx.de; receiver=) Received: from lists.denx.de (dione.denx.de [81.169.180.215]) by ozlabs.org (Postfix) with ESMTP id 3xhKvv4yy3z9t33 for ; Tue, 29 Aug 2017 17:27:06 +1000 (AEST) Received: by lists.denx.de (Postfix, from userid 105) id C7283C21D7B; Tue, 29 Aug 2017 07:09:33 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on lists.denx.de X-Spam-Level: X-Spam-Status: No, score=-0.0 required=5.0 tests=BAD_ENC_HEADER, RCVD_IN_DNSWL_NONE, RCVD_IN_MSPIKE_H4, RCVD_IN_MSPIKE_WL, SPF_HELO_PASS autolearn=unavailable autolearn_force=no version=3.4.0 Received: from lists.denx.de (localhost [IPv6:::1]) by lists.denx.de (Postfix) with ESMTP id 84E4FC21F0E; Tue, 29 Aug 2017 07:09:26 +0000 (UTC) Received: by lists.denx.de (Postfix, from userid 105) id 9217EC21DE3; Tue, 29 Aug 2017 07:01:55 +0000 (UTC) Received: from NAM01-SN1-obe.outbound.protection.outlook.com (mail-sn1nam01on0054.outbound.protection.outlook.com [104.47.32.54]) by lists.denx.de (Postfix) with ESMTPS id 12C3CC21D93 for ; Tue, 29 Aug 2017 07:01:54 +0000 (UTC) Received: from BN3PR03CA0079.namprd03.prod.outlook.com (10.167.1.167) by BLUPR03MB549.namprd03.prod.outlook.com (10.141.76.17) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P256) id 15.20.13.10; Tue, 29 Aug 2017 07:01:52 +0000 Received: from BL2FFO11FD009.protection.gbl (2a01:111:f400:7c09::103) by BN3PR03CA0079.outlook.office365.com (2a01:111:e400:7a4d::39) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P256) id 15.1.1385.9 via Frontend Transport; Tue, 29 Aug 2017 07:01:52 +0000 Authentication-Results: spf=fail (sender IP is 192.88.168.50) smtp.mailfrom=nxp.com; nxp.com; dkim=none (message not signed) header.d=none;nxp.com; dmarc=fail action=none header.from=nxp.com; Received-SPF: Fail (protection.outlook.com: domain of nxp.com does not designate 192.88.168.50 as permitted sender) receiver=protection.outlook.com; client-ip=192.88.168.50; helo=tx30smr01.am.freescale.net; Received: from tx30smr01.am.freescale.net (192.88.168.50) by BL2FFO11FD009.mail.protection.outlook.com (10.173.161.15) with Microsoft SMTP Server (version=TLS1_0, cipher=TLS_RSA_WITH_AES_256_CBC_SHA) id 15.1.1341.15 via Frontend Transport; Tue, 29 Aug 2017 07:01:51 +0000 Received: from vinitha-OptiPlex-790.ap.freescale.net (vinitha-OptiPlex-790.ap.freescale.net [10.232.134.143]) by tx30smr01.am.freescale.net (8.14.3/8.14.0) with ESMTP id v7T71mMw006227; Tue, 29 Aug 2017 00:01:48 -0700 From: Sumit Garg To: Date: Tue, 29 Aug 2017 12:31:45 +0530 Message-ID: <1503990107-28658-1-git-send-email-sumit.garg@nxp.com> X-Mailer: git-send-email 2.7.4 X-EOPAttributedMessage: 0 X-Matching-Connectors: 131484637118818174; (91ab9b29-cfa4-454e-5278-08d120cd25b8); () X-Forefront-Antispam-Report: CIP:192.88.168.50; IPV:NLI; CTRY:US; EFV:NLI; SFV:NSPM; SFS:(10009020)(6009001)(336005)(39380400002)(39860400002)(2980300002)(1109001)(1110001)(339900001)(189002)(199003)(5003940100001)(54906002)(305945005)(86362001)(77096006)(6666003)(356003)(189998001)(6916009)(626005)(33646002)(47776003)(68736007)(105606002)(2351001)(498600001)(4326008)(106466001)(85426001)(5660300001)(110136004)(48376002)(50986999)(8936002)(50466002)(97736004)(8656003)(2906002)(50226002)(53936002)(104016004)(81166006)(8676002)(81156014)(36756003); DIR:OUT; SFP:1101; SCL:1; SRVR:BLUPR03MB549; H:tx30smr01.am.freescale.net; FPR:; SPF:Fail; PTR:InfoDomainNonexistent; MX:1; A:1; LANG:en; X-Microsoft-Exchange-Diagnostics: 1; BL2FFO11FD009; 1:YxOsk0XrT9627BJ80BPdgbH14uIzvk0/y4Z4le4CP55QCp7CLmoia1OWMYsSp7XlJUiKThlHAu/TARVt4oCnaFK1jSfhQmGUXUwjINBAiGIKIcfmGW/P33cgOo/HHKRU MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: 26e1673e-648f-4173-061d-08d4eeabd358 X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0; RULEID:(300000500095)(300135000095)(300000501095)(300135300095)(22001)(300000502095)(300135100095)(300000503095)(300135400095)(2017052603199)(201703131430075)(201703131517081)(300000504095)(300135200095)(300000505095)(300135600095)(300000506095)(300135500095); SRVR:BLUPR03MB549; X-Microsoft-Exchange-Diagnostics: 1; BLUPR03MB549; 3:IbCQ/Rwzu8CMrpCsjck56VY0pv3ghr9YT9vhEUnXj184ey8GLwN20Wrs9/9gkYBNhIrK+JvYKxx8n+/XAzqLPbUJPVlNSA3XQmNvPFBz35ki4fu8dMM4OXTceVeeopQXCxVOhqn35lvpabf30wW9/XKwkikZsSoXEgI+k+n2nhlwqEYflHeXF2BXrirh3VjabQ8gj2QcnuhLFtq258uRpfxOZEVYqTPVP/kDvf13Qbe6npY5N4ERC1Jho1CuYO7Hn7FRHxUhj4Q7A1lYGUHbV/cvNvZLbMD6ujd9UaZeOtBaQFkzQ6CQDz+fPrA+Inh12jzrtU5OuDoS48mvJ8lKk77nDzMIJy5y1tuS/ukhsyM=; 25:l4T8Kadn+7GBhGzFSENLjuUuLQdoEzQw6QyK3mgKD0Nu6+9rZNCPG5MW7ez2+DGa9i+zaTycxkLHhBNEvG+CopDpvTvMCct1iaBGD+0LWdKChnrOtfMTlN/cqKAz8XEBJ2TuNagDhZzri6jIe6XjX7Yd3tZe/8vr65F+uXQ3OYcgbkPVnMCjz91jNlb0yFgopcBc7FUe4i53ECRIGRrZpORMhy2gvYxijS+YPHGbArN/12WWlBGOIT8dO1fSxLO3+NXMnSGYGU2FhE+qkYG+rd4aBKTZl0+wLIREy1pn7v5CaGF/S0UTy86WFATLI0hJYtlNLDcgWVD6nZaD+72+xQ== X-MS-TrafficTypeDiagnostic: BLUPR03MB549: X-Microsoft-Exchange-Diagnostics: 1; BLUPR03MB549; 31:UtBesRjlEqLofwCxrmLqqh+C3tFCxjkeOdD4Osn/ic8U0O3GmpHE7znyLsvh0u3TLBtpHopXJgMnidqqP1JlslphhE23c92wch0gnDBXlmz8d2xDFg3dce/T4TJL/afsMx8g3GPikQ1HSWZ4RRUeHSfh5qazkGWiNiFlEF/NC66jukeTrLvzbBLAzBBw9B7FWatRFYwdOtTppqF9z9lPWxB29Iacj1g15g423UnIbsg=; 4:l1LQpEajNxwzIi3CrFQacW6eyW2UslyHC7Z13qxv7svx3YrY6yig+itPmHojg6mSbSYKPGbJB9G6m/e1Y0J4WXBZRhtznS0iA45BBSGrGZSaouFkT8Ki8e8dipLWEias0Vmmu2THcDluFUrpDJEKHc/AQSdO0MBDPebZf0G7GmyaGKN+QTtfLoHPbE0MuNVSVL2UfhqOuXBFdFy3FibTq9p94SopWh5k5Kq4DHhJeuN5YvgJccsVqoRNrVxeLDy81FPYzc+WimZFVtuLlY5kM6RWJHM9nsg3AsNQLt0HN4I= X-Exchange-Antispam-Report-Test: UriScan:(185117386973197); X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0; RULEID:(100000700101)(100105000095)(100000701101)(100105300095)(100000702101)(100105100095)(6095135)(601004)(2401047)(13016025)(13018025)(8121501046)(5005006)(93006095)(93001095)(10201501046)(100000703101)(100105400095)(3002001)(6055026)(6096035)(20161123561025)(20161123563025)(20161123556025)(20161123565025)(201703131430075)(201703131448075)(201703131433075)(201703161259150)(201703151042153)(20161123559100)(201708071742011)(100000704101)(100105200095)(100000705101)(100105500095); SRVR:BLUPR03MB549; BCL:0; PCL:0; RULEID:(100000800101)(100110000095)(100000801101)(100110300095)(100000802101)(100110100095)(100000803101)(100110400095)(400006)(100000804101)(100110200095)(100000805101)(100110500095); SRVR:BLUPR03MB549; X-Forefront-PRVS: 0414DF926F X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; BLUPR03MB549; 23:/XVnxtOQwVdQpj5GcpX6iXIZzeTJt9ASmiLEl+YIAb?= hwSwyO4+ns04ozThxzGyqoc0h/w36SOqDe5drnv52jJH6rtx1WHJr0HJBqAwGQ1YmqkqRwDyMDod8jCJ8iRG0F/JCJn4HwyiGgqvseRwuqevEBzKwh3S9hmzorBbjRKyM1hwCouegaIGk2szZ6vh25QM/BLItMlv7I6a/gx/d1gN1nSHN5z7b7JNgydHFrrKY9LMs45XPFcCJDsUX1lw/ss1dW7TIfR2qUwh8Mti+qwdJ2Q47ocJHPNe9w2uO3mF2777aUF5ooSXokFN6fniIo02VqEbEE8Sl9wzOLc8UIGpF64XLXXGb2FMXHznx1oazjEr8GOEWzfVNSA2mcCXshTyV2RoTkJRmRn1BVE6Js0vJPQfwLDPGObwXmH4UOmxooVUOfqeByh7nJXDfeRa39lhzHyYfU8vTczQ34lUa7yQlXyOZBGsDkxJbDImBo3M9aluCf0O7/ZcK0SY8+oolKDvfOGoS2Z+MiLkVvh5BXX8GgeRVrqBIq8harrXq0/PGJNFnhg4YayU2FuUROIgNjBC1JKw3cVcS/x+mmtKKF7L5t1lwD9GsYkKlSJvwqjOkRujTerycgWYgyAoqn9k3TFmWOORGlKCAOxw1Iuv35n/5sjC4S+n6oCSTqAuAdiZhCAoB1555vOuKr9YETZL13VMFzgWSkDj/mulvtluzYAAc0+kQgXGSPcI7HJbxx6MqZjO3shx1SmO6qh5HBr+7B4a/fkIWY22MpSuDGPpCY5wC0U73Tk/oMDUI2OlkU35O0AF1mRoESKlCfnHgLb1YjvMFz9ATm3VvWLqYMs0Lea6Ee26uPsQGuR0Dz70pAyJ4KAnIPxuyak+uC0b7rlzf0NVx1aZ8MGrFfJ/5B1kgpYl/lbXOLkGACAERNNtacHqEbvWWKjh7IhLJreGBy5IZZnLfVL0wKZPKSyK+kpqVFYycD+bs7efPWkmpZQoiECEFthr/3qYBUEncPsFBtruM3O/KcFuzeQcVyTVxFjFDVfrMwDQM7rkxnWPcuMFvBS4ZTYGoXY4oev4fgeC07l2sD X-Microsoft-Exchange-Diagnostics: 1; BLUPR03MB549; 6:oDgpTBu5PFWIrexdy/N/1fzNIP3OzsCYqdt+Jh9wjlNZp8yFT9dsdsd1pCrNvJb82nhZsjINgESCouoYnyUeL1Lx34xDrUH56fwpa+lVKBXo4jOohwX+2m+z4+oEXuhg4isZvPP+TcaI/o0cshlz1kTEpycX30ZmtfM21fK0d3Ag2ICnkt99/vit7R2PO9ES97rvVSGPtWzep5jZLWAaT+UAcVvUraYb5Zs1qw7bXm8OKT29IRfaE47HL2jCcvsghIrPbiBmGrAOZZPMfydbGseVuTdlHldCyPvpTpRbjW6/oztsB8yYPGEHqrYaIQj9EzW4sYMxm3LeoTTQ71YV1Q==; 5:XWRnewuZtMwMUGRIxABFYiEWCMdxZtK35cPTGBD4yW7n4Uh6gTrxbeFz6Zs7zYgruvz2XSGThrkukDWF8csz+Q0pBsVWprANs0qDRFfgslJPtLzCe/2Lh8m+UcEuhFjIbtDCyjsLdx5qpAipArVKNQ==; 24:PaYj3oEtzt/D3JYDMO59yaRVZ2aiiAjBrEpwdLZhinIz1xq+eIayLyuvDWKh1nbiC2nCJOyfGK4HtQemuUjUTcHj/2HutTEL+3/zz/7JuUU=; 7:uQkJJtl2fsRqITQMvjxVvENcy1Mun7xKKB0nyfu8NzCri+aMtXb4CBQkTAqjCLScnpGNAPNl2IP3yS6pASrvSs5dq6bG+F/w7MwTsKfKzWhuBlg9zU3Amz7Jo9S/QDsuph1hYa+2u+8phx4WwKtxVZBN+nchRzv2jF9q8QpV3/u2hbHQzgKqTO4Jx30QjPV0G/w+v40aCH8W+FJcCOgJxLrqiKi4Y8v86V02mdfc6ZA= SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-MS-Exchange-CrossTenant-OriginalArrivalTime: 29 Aug 2017 07:01:51.6790 (UTC) X-MS-Exchange-CrossTenant-Id: 5afe0b00-7697-4969-b663-5eab37d5f47e X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=5afe0b00-7697-4969-b663-5eab37d5f47e; Ip=[192.88.168.50]; Helo=[tx30smr01.am.freescale.net] X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: BLUPR03MB549 Cc: ruchika.gupta@nxp.com Subject: [U-Boot] [PATCH 1/3] armv8: fsl-layerscape: SPL size reduction X-BeenThere: u-boot@lists.denx.de X-Mailman-Version: 2.1.18 Precedence: list List-Id: U-Boot discussion List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: u-boot-bounces@lists.denx.de Sender: "U-Boot" Using changes in this patch we were able to reduce approx 4k size of u-boot-spl.bin image. Following is breif description of changes to reduce SPL size: 1. Compile-off mp.c and libfdt.c in case of SPL build. 2. Keep MMU and DCACHE specific variable and functions under CONFIG_SYS_DCACHE_OFF macro. 3. Compile-off IFC specific funtion call "init_early_memctl_regs" in case of SPL build. Signed-off-by: Sumit Garg --- Dependent on ls1088 base SD boot target. Also dependent on ls1088 QPSI secure boot target. arch/arm/cpu/armv8/fsl-layerscape/Makefile | 2 ++ arch/arm/cpu/armv8/fsl-layerscape/cpu.c | 6 ++++++ arch/arm/cpu/armv8/fsl-layerscape/soc.c | 2 ++ 3 files changed, 10 insertions(+) diff --git a/arch/arm/cpu/armv8/fsl-layerscape/Makefile b/arch/arm/cpu/armv8/fsl-layerscape/Makefile index 115c3fc..0cb6d4e 100644 --- a/arch/arm/cpu/armv8/fsl-layerscape/Makefile +++ b/arch/arm/cpu/armv8/fsl-layerscape/Makefile @@ -7,8 +7,10 @@ obj-y += cpu.o obj-y += lowlevel.o obj-y += soc.o +ifndef CONFIG_SPL_BUILD obj-$(CONFIG_MP) += mp.o obj-$(CONFIG_OF_LIBFDT) += fdt.o +endif obj-$(CONFIG_SPL) += spl.o obj-$(CONFIG_$(SPL_)FSL_LS_PPA) += ppa.o diff --git a/arch/arm/cpu/armv8/fsl-layerscape/cpu.c b/arch/arm/cpu/armv8/fsl-layerscape/cpu.c index 3c9a5ed..3ce51af 100644 --- a/arch/arm/cpu/armv8/fsl-layerscape/cpu.c +++ b/arch/arm/cpu/armv8/fsl-layerscape/cpu.c @@ -32,7 +32,9 @@ DECLARE_GLOBAL_DATA_PTR; +#ifndef CONFIG_SYS_DCACHE_OFF struct mm_region *mem_map = early_map; +#endif void cpu_name(char *name) { @@ -824,6 +826,7 @@ void efi_add_known_memory(void) } #endif +#ifndef CONFIG_SYS_DCACHE_OFF /* * Before DDR size is known, early MMU table have DDR mapped as device memory * to avoid speculative access. To relocate U-Boot to DDR, "normal memory" @@ -888,14 +891,17 @@ void update_early_mmu_table(void) } } } +#endif __weak int dram_init(void) { fsl_initdram(); +#ifndef CONFIG_SYS_DCACHE_OFF #if !defined(CONFIG_SPL) || defined(CONFIG_SPL_BUILD) /* This will break-before-make MMU for DDR */ update_early_mmu_table(); #endif +#endif return 0; } diff --git a/arch/arm/cpu/armv8/fsl-layerscape/soc.c b/arch/arm/cpu/armv8/fsl-layerscape/soc.c index 2075c96..7c26953 100644 --- a/arch/arm/cpu/armv8/fsl-layerscape/soc.c +++ b/arch/arm/cpu/armv8/fsl-layerscape/soc.c @@ -329,7 +329,9 @@ void bypass_smmu(void) void fsl_lsch3_early_init_f(void) { erratum_rcw_src(); +#ifndef CONFIG_SPL_BUILD init_early_memctl_regs(); /* tighten IFC timing */ +#endif #ifdef CONFIG_SYS_FSL_ERRATUM_A009203 erratum_a009203(); #endif