From patchwork Thu Jun 19 20:32:12 2014 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Nicolas Pitre X-Patchwork-Id: 32248 Return-Path: X-Original-To: linaro@patches.linaro.org Delivered-To: linaro@patches.linaro.org Received: from mail-yk0-f198.google.com (mail-yk0-f198.google.com [209.85.160.198]) by ip-10-151-82-157.ec2.internal (Postfix) with ESMTPS id DE69C21309 for ; Thu, 19 Jun 2014 20:32:29 +0000 (UTC) Received: by mail-yk0-f198.google.com with SMTP id 9sf5959773ykp.5 for ; Thu, 19 Jun 2014 13:32:29 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:delivered-to:date:from:to:cc:subject:in-reply-to :message-id:references:user-agent:mime-version:sender:precedence :list-id:x-original-sender:x-original-authentication-results :mailing-list:list-post:list-help:list-archive:list-unsubscribe :content-type; bh=0105xjEpsz3w4Rjc1XgDKPkvYA7MuykaUKgGJYPiTbI=; b=K7+j6EhamqP7BppYLi7l3E6NiWujpUrFBy15HLMnYVUyzVhNHlWilawRPS6rDJIppY lTxzZYXvF9EqW3g9RT3f7DgJkeeZqyzWBn8xSsrDNUZPGFYeoWRvj1VZ+4YwDoPUKntj NtHmFiaGhzzOF6apEp8b2hWsUfHsJVcz7itQL6HbR5OWrRrJ94IirI0FWsEwlGdhK3AB +0rhW3Ij0qbJ9GIU05iO6ojwutvKgi5cJNkg20HV9ZJUruWpuOYV6C994vIW/Z9nlGq0 G+q6dnGe1EifXsenZb0Xcu2vzAPR2IG9sNoc73Men2DWdD5IdQMSB7ys1oVtvcOUX3k6 G7hg== X-Gm-Message-State: ALoCoQmxn2qw8haFyLDYe5GbeBjwnw26UH6ETth10eI0dWOvni3qRIlWWBMKs8LpTTb+JPMQLoE6 X-Received: by 10.58.69.49 with SMTP id b17mr3450334veu.26.1403209949556; Thu, 19 Jun 2014 13:32:29 -0700 (PDT) X-BeenThere: patchwork-forward@linaro.org Received: by 10.140.17.19 with SMTP id 19ls680067qgc.69.gmail; Thu, 19 Jun 2014 13:32:29 -0700 (PDT) X-Received: by 10.58.112.65 with SMTP id io1mr90632veb.61.1403209949464; Thu, 19 Jun 2014 13:32:29 -0700 (PDT) Received: from mail-vc0-f171.google.com (mail-vc0-f171.google.com [209.85.220.171]) by mx.google.com with ESMTPS id wt9si2694447vdc.20.2014.06.19.13.32.29 for (version=TLSv1 cipher=ECDHE-RSA-RC4-SHA bits=128/128); Thu, 19 Jun 2014 13:32:29 -0700 (PDT) Received-SPF: pass (google.com: domain of patch+caf_=patchwork-forward=linaro.org@linaro.org designates 209.85.220.171 as permitted sender) client-ip=209.85.220.171; Received: by mail-vc0-f171.google.com with SMTP id id10so2710150vcb.16 for ; Thu, 19 Jun 2014 13:32:29 -0700 (PDT) X-Received: by 10.58.210.68 with SMTP id ms4mr5669389vec.6.1403209949377; Thu, 19 Jun 2014 13:32:29 -0700 (PDT) X-Forwarded-To: patchwork-forward@linaro.org X-Forwarded-For: patch@linaro.org patchwork-forward@linaro.org Delivered-To: patch@linaro.org Received: by 10.221.54.6 with SMTP id vs6csp389289vcb; Thu, 19 Jun 2014 13:32:28 -0700 (PDT) X-Received: by 10.66.180.141 with SMTP id do13mr8399768pac.93.1403209948448; Thu, 19 Jun 2014 13:32:28 -0700 (PDT) Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id rl10si6993496pbc.161.2014.06.19.13.32.27; Thu, 19 Jun 2014 13:32:27 -0700 (PDT) Received-SPF: none (google.com: linux-kernel-owner@vger.kernel.org does not designate permitted sender hosts) client-ip=209.132.180.67; Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S934608AbaFSUcT (ORCPT + 6 others); Thu, 19 Jun 2014 16:32:19 -0400 Received: from mail-qg0-f48.google.com ([209.85.192.48]:35142 "EHLO mail-qg0-f48.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S932071AbaFSUcP (ORCPT ); Thu, 19 Jun 2014 16:32:15 -0400 Received: by mail-qg0-f48.google.com with SMTP id q108so2596212qgd.7 for ; Thu, 19 Jun 2014 13:32:14 -0700 (PDT) X-Received: by 10.224.160.142 with SMTP id n14mr11012615qax.32.1403209934318; Thu, 19 Jun 2014 13:32:14 -0700 (PDT) Received: from xanadu.home (modemcable177.143-130-66.mc.videotron.ca. [66.130.143.177]) by mx.google.com with ESMTPSA id r3sm10125667qal.8.2014.06.19.13.32.13 for (version=TLSv1 cipher=ECDHE-RSA-RC4-SHA bits=128/128); Thu, 19 Jun 2014 13:32:13 -0700 (PDT) Date: Thu, 19 Jun 2014 16:32:12 -0400 (EDT) From: Nicolas Pitre To: Kevin Hilman cc: Stephen Boyd , Taras Kondratiuk , Thomas Petazzoni , Russell King , Jason Cooper , Victor Kamensky , LKML , Ben Dooks , Olof Johansson , Linaro Networking , linux-arm-kernel Subject: Re: [PATCH] ARM: zImage: ensure header in LE format for BE8 kernels In-Reply-To: <7hk38cycuh.fsf@paris.lan> Message-ID: References: <1397147232-28516-1-git-send-email-taras.kondratiuk@linaro.org> <53A1D701.8060404@codeaurora.org> <53A1D8FE.6030404@codeaurora.org> <7hk38cycuh.fsf@paris.lan> User-Agent: Alpine 2.11 (LFD 23 2013-08-11) MIME-Version: 1.0 Sender: linux-kernel-owner@vger.kernel.org Precedence: list List-ID: X-Mailing-List: linux-kernel@vger.kernel.org X-Removed-Original-Auth: Dkim didn't pass. X-Original-Sender: nicolas.pitre@linaro.org X-Original-Authentication-Results: mx.google.com; spf=pass (google.com: domain of patch+caf_=patchwork-forward=linaro.org@linaro.org designates 209.85.220.171 as permitted sender) smtp.mail=patch+caf_=patchwork-forward=linaro.org@linaro.org Mailing-list: list patchwork-forward@linaro.org; contact patchwork-forward+owners@linaro.org X-Google-Group-Id: 836684582541 List-Post: , List-Help: , List-Archive: List-Unsubscribe: , On Thu, 19 Jun 2014, Kevin Hilman wrote: > I think this should probably be officialized since we've taken away the > ability for magic-number checking tools (like 'file') to distinguish > between big- and little-endian zImages. > > For now, I've updated my tools to check for 'setend be' in ARM and > Thumb2 mode, but if this does get officialized, I'll gladly move over to > it. Would you ACK this patch? ----- >8 ARM: zImage: identify kernel endianness With patch #8067/1 applied, it is no longer possible to determine the endianness of a compiled kernel image. This normally shouldn't matter to the boot environment, except for those cases where the selection of a ramdisk or root filesystem with a matching endianness has to be automated. Let's add a flag to the zImage header indicating the actual endianness. Four bytes from offset 0x30 can be interpreted as follows: 04 03 02 01 big endian kernel 01 02 03 04 little endian kernel Anything else should be interpreted as "unknown", in which case it is most likely that patch #8067/1 was not applied either and the zImage magic number at offset 0x24 could be used instead to determine endianness. No zImage before this patch ever produced 0x01020304 nor 0x04030201 at offset 0x30 so there is no confusion possible. Signed-off-by: Nicolas Pitre Acked-by: Kevin Hilman --- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/ diff --git a/arch/arm/boot/compressed/head.S b/arch/arm/boot/compressed/head.S index c95feab6ce..413fd94b53 100644 --- a/arch/arm/boot/compressed/head.S +++ b/arch/arm/boot/compressed/head.S @@ -128,6 +128,7 @@ start: .word _magic_sig @ Magic numbers to help the loader .word _magic_start @ absolute load/run zImage address .word _magic_end @ zImage end address + .word 0x04030201 @ endianness flag THUMB( .thumb ) 1: