From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-4.0 required=3.0 tests=DKIMWL_WL_HIGH,DKIM_SIGNED, DKIM_VALID,MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS,URIBL_BLOCKED, USER_AGENT_GIT autolearn=no autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 7BDCEC43331 for ; Fri, 27 Mar 2020 10:59:29 +0000 (UTC) Received: from bombadil.infradead.org (bombadil.infradead.org [198.137.202.133]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id 3F54F20748 for ; Fri, 27 Mar 2020 10:59:29 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=pass (2048-bit key) header.d=lists.infradead.org header.i=@lists.infradead.org header.b="H01tGb5i"; dkim=fail reason="signature verification failed" (1024-bit key) header.d=kernel.org header.i=@kernel.org header.b="eXsrgFV/" DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 3F54F20748 Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=kernel.org Authentication-Results: mail.kernel.org; spf=none smtp.mailfrom=linux-arm-kernel-bounces+infradead-linux-arm-kernel=archiver.kernel.org@lists.infradead.org DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20170209; h=Sender: Content-Transfer-Encoding:Content-Type:MIME-Version:Cc:List-Subscribe: List-Help:List-Post:List-Archive:List-Unsubscribe:List-Id:Message-Id:Date: Subject:To:From:Reply-To:Content-ID:Content-Description:Resent-Date: Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:In-Reply-To: References:List-Owner; bh=gvbX3cY6h0THlUAyjdZeT+vsvRsG3z0kptqakF+rmgc=; b=H01 tGb5is1ofa/nAEJR91m/IdcyD6EI8uDF7LVEYlXz9lSTENC72ZxnkjWObmYUM5lVCn1xaq5GCOyby enE70K7HTQ/YdioOile0UqDqFE/wFT9NckwAsDyGhPxI553DYXZEiz4d6uvtDpG8nb3o14KleJK0z 0KhKXENcgIhCjEanGA4jYAS4+5ecXve3tQg9lPYkrO5db9k93/Z/ILxjg0pfnvxnTQoRHZ/YjwBVI i+Lpl2XrdGaKDH+CdxqKMlpqlRzIPgmFrxTiz7xiRAF2OlCf6/ec6QhqJTdkFai8gCLf5dsyo/IVT ir5hmGAlvp5NwpGJyxxYNUFtuJl0Hyw==; Received: from localhost ([127.0.0.1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.92.3 #3 (Red Hat Linux)) id 1jHmhx-0006TO-OI; Fri, 27 Mar 2020 10:59:25 +0000 Received: from mail.kernel.org ([198.145.29.99]) by bombadil.infradead.org with esmtps (Exim 4.92.3 #3 (Red Hat Linux)) id 1jHmhv-0006Ss-9I for linux-arm-kernel@lists.infradead.org; Fri, 27 Mar 2020 10:59:24 +0000 Received: from e123331-lin.home (amontpellier-657-1-18-247.w109-210.abo.wanadoo.fr [109.210.65.247]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPSA id 94EFB20705; Fri, 27 Mar 2020 10:59:20 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=default; t=1585306762; bh=90UfxI5OVQUnvcKw/oB6o3ZeklCir3nEiRKTl6IJlks=; h=From:To:Cc:Subject:Date:From; b=eXsrgFV/FedQh+Ab0iPY74W5JQKaPYaoZNLPZ9g2ELiuM4S84AsWvChXP+xKj/wNg wIHTZHzCq7Q99xQVoBEt88aEiNRBeqckbDuMkHFPhH/cH9Fitk63iNCSd1Ko6lnn2p hmYn0zRfSs2Y8zxZY6VQjwYex5qzecAKKrahmmoQ= From: Ard Biesheuvel To: linux-arm-kernel@lists.infradead.org Subject: [PATCH 0/5] ARM: simplify handover from UEFI to decompressor Date: Fri, 27 Mar 2020 11:59:01 +0100 Message-Id: <20200327105906.2665-1-ardb@kernel.org> X-Mailer: git-send-email 2.17.1 X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20200327_035923_348200_40A2B7DC X-CRM114-Status: UNSURE ( 9.49 ) X-CRM114-Notice: Please train this message. X-BeenThere: linux-arm-kernel@lists.infradead.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: linux-efi@vger.kernel.org, Geert Uytterhoeven , Nicolas Pitre , Linus Walleij , Russell King , Ard Biesheuvel MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+infradead-linux-arm-kernel=archiver.kernel.org@lists.infradead.org The EFI stub in the ARM kernel runs in the context of the firmware, which means it runs with the caches and MMU on. Currently, we relocate the zImage so it appears in the first 128 MiB, disable the MMU and caches and invoke the decompressor via its ordinary entry point. However, since we can pass the base of DRAM directly, there is no need to relocate the zImage, which also means there is no need to disable and re-enable the caches and create new page tables etc. This simplification is implemented by patch #5. Patches #1 - #4 are prerequisite changes to permit the decompressor to execute from the offset chosen by the UEFI firmware. Note that this applies onto linux-next with Geert's patch 'ARM: boot: Obtain start of physical memory from DTB' applied [0] Cc: Geert Uytterhoeven Cc: Nicolas Pitre Cc: Linus Walleij Cc: Russell King [0] https://lore.kernel.org/linux-arm-kernel/20200320144348.12865-1-geert+renesas@glider.be/ Ard Biesheuvel (5): ARM: decompressor: move headroom variable out of LC0 ARM: decompressor: split off _edata and stack base into separate object ARM: decompressor: defer loading of the contents of the LC0 structure ARM: decompressor: move GOT into .data for EFI enabled builds ARM: decompressor: run decompressor in place if loaded via UEFI arch/arm/boot/compressed/head.S | 84 +++++++------------- arch/arm/boot/compressed/vmlinux.lds.S | 5 ++ drivers/firmware/efi/libstub/arm32-stub.c | 41 ++-------- 3 files changed, 38 insertions(+), 92 deletions(-) -- 2.17.1 _______________________________________________ linux-arm-kernel mailing list linux-arm-kernel@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-arm-kernel