All of lore.kernel.org
 help / color / mirror / Atom feed
From: Stephen Boyd <sboyd-sgV2jX0FEOL9JmXXK+q4OQ@public.gmane.org>
To: Arnd Bergmann <arnd-r2nGTMty4D4@public.gmane.org>
Cc: Bjorn Andersson
	<bjorn.andersson-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org>,
	Andy Gross <andy.gross-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org>,
	Rob Herring <robh+dt-DgEjT+Ai2ygdnm+yROfE0A@public.gmane.org>,
	Jeremy McNicoll
	<jmcnicol-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>,
	git-LJ92rlH3Dns@public.gmane.org,
	Jeremy McNicoll
	<jeremymc-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>,
	linux-arm-msm
	<linux-arm-msm-u79uwXL29TY76Z2rM5mHXA@public.gmane.org>,
	linux-soc-u79uwXL29TY76Z2rM5mHXA@public.gmane.org,
	"devicetree-u79uwXL29TY76Z2rM5mHXA@public.gmane.org"
	<devicetree-u79uwXL29TY76Z2rM5mHXA@public.gmane.org>
Subject: Re: [RFC V2 PATCH 10/12] arm64: dts: msm8994 issolate non standard bootloader/LK entries
Date: Fri, 21 Oct 2016 17:07:33 -0700	[thread overview]
Message-ID: <20161022000733.GO26139@codeaurora.org> (raw)
In-Reply-To: <3979420.yzJRfAtfpN@wuerfel>

On 10/21, Arnd Bergmann wrote:
> On Friday, October 21, 2016 1:04:09 PM CEST Stephen Boyd wrote:
> > I'm pushing the bootloader team to do the deep scan of the dtb to
> > match up board compatible and pmic compatible strings so that we
> > don't have to keep these numbers around. Basically put what
> > dtbtool is doing into the bootloader so we don't have to post
> > process the dtb anymore. We're currently discussing how to
> > implement it and how to move the internal codebase to the new
> > scheme.
> > 
> > At least for 96boards I think we can update the lk bootloaders on
> > there to adopt this code. For other platforms like nexus though I
> > don't see a way we can update those bootloaders, and those
> > bootloaders require these properties exist in the dtbs, so we
> > should just throw the numbers into the dts files there and be
> > done with post processing. For bootloaders that require the QCDT
> > header, we'll have to keep running dtbtool there to generate the
> > header. Having the ids in the dts file or not doesn't really
> > matter there.
> 
> I think part of the problem here is the way that the bootloader
> expects multiple dtbs to be appended to the kernel binary, and
> then pick one of them based on its contents. That doesn't really
> change at all when changing the parser from looking at nonstandard
> properties to looking at the compatible strings.
> 
> It still breaks the last-resort workaround for broken bootloaders
> that we have in the form of appending the DT to the kernel
> with CONFIG_ARM_APPENDED_DTB.

That can be "fixed" by having the bootloader use the single
appended DTB regardless of the properties existing or not. That's
a few lines of code to count the number of appended blobs and
then special case there being one.

> 
> I think a better long-term strategy would be to make the bootloader
> load the dtb separately from the kernel and finding the right file
> using some information outside of the dtb.

Can you please explain why that's a better long term strategy? So
far I've had a hard time selling this internally so I could use
the help to come up with a laundry list of reasons why this is a
better design than what we have today.

> Ideally this is done
> by storing all files on a file system that can also be mounted
> to /boot, but there are probably other options that work equally well.
> 

Some bootloaders *cough* LK *cough* aren't always able to read
filesystems. All they can do is read raw data from partitions.
That's probably why nobody has thought about reading files from
some place like /boot (which doesn't even exist in android)
because these bootloaders don't have filesystem support.

If the bootloader supports filesystems, then it would work to
encode the qcom,{msm-id,board-id,pmic-id} properties into some
long filename and then have the bootloader pick the right file
based on that. Fuzzy matching would be interesting, but it should
still work.

-- 
Qualcomm Innovation Center, Inc. is a member of Code Aurora Forum,
a Linux Foundation Collaborative Project
--
To unsubscribe from this list: send the line "unsubscribe devicetree" in
the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

  parent reply	other threads:[~2016-10-22  0:07 UTC|newest]

Thread overview: 47+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-10-02  2:38 [RFC V2 PATCH 00/12] msm8992/msm8994: Google Nexus 5X/6P initial board support Jeremy McNicoll
2016-10-02  2:38 ` [RFC V2 PATCH 01/12] msm8994 clocks: global clock support Global clock support for the msm8994 SOC Jeremy McNicoll
2016-10-09  1:28   ` Rob Herring
2016-10-21  8:31     ` Jeremy McNicoll
2016-10-02  2:38 ` [RFC V2 PATCH 02/12] arm64: configs: enable 8994/8992 GCC by default Jeremy McNicoll
2016-10-02  2:38 ` [RFC V2 PATCH 03/12] msm8994 clocks: fix mapping Jeremy McNicoll
     [not found]   ` <1475375919-618-4-git-send-email-jmcnicol-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>
2016-10-09  1:28     ` Rob Herring
2016-10-10 22:04       ` Jeremy McNicoll
     [not found]         ` <228eb3b0-6c4e-230a-1750-0f97ec5c024f-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>
2016-10-10 22:47           ` Jeremy McNicoll
     [not found] ` <1475375919-618-1-git-send-email-jmcnicol-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>
2016-10-02  2:38   ` [RFC V2 PATCH 04/12] dt-bindings: qcom: Add msm8992 bindings Jeremy McNicoll
2016-10-08 22:41     ` Rob Herring
     [not found]     ` <1475375919-618-5-git-send-email-jmcnicol-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>
2016-10-09  1:28       ` Rob Herring
2016-10-11  0:52         ` [RFC V3 PATCH] dt-bindings: qcom: Add msm899(2/4) bindings Jeremy McNicoll
     [not found]           ` <1476147156-4474-1-git-send-email-jeremymc-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>
2016-10-11 16:42             ` Bjorn Andersson
2016-10-11 21:25               ` Jeremy McNicoll
     [not found]                 ` <ab018442-c929-e328-11a3-6e7fd21e56b8-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>
2016-10-12  0:32                   ` [RFC V4 " Jeremy McNicoll
2016-10-19  1:13                 ` [RFC V3 " Stephen Boyd
2016-10-02  2:38   ` [RFC V2 PATCH 07/12] arm64: dts: msm8992 default serial config Jeremy McNicoll
2016-10-02  2:38 ` [RFC V2 PATCH 05/12] msm8992: defconfig updates to support initrd Jeremy McNicoll
2016-10-09  1:28   ` Rob Herring
2016-10-11  5:19     ` [RFC V3 PATCH] " Jeremy McNicoll
2016-10-11  5:20     ` [RFC V2 PATCH 05/12] " Jeremy McNicoll
2016-10-02  2:38 ` [RFC V2 PATCH 06/12] arm64: dts: msm8992 issolate non standard bootloader/LK entries Jeremy McNicoll
2016-10-02  2:38 ` [RFC V2 PATCH 08/12] arm64: dts: msm8994 SoC and Huawei Angler (Nexus 6P) support Jeremy McNicoll
2016-10-02  2:38 ` [RFC V2 PATCH 09/12] arm64: dts: move Huawei Angler (Nexus 6P) to qcom directory Jeremy McNicoll
     [not found]   ` <1475375919-618-10-git-send-email-jmcnicol-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>
2016-10-09  1:28     ` Rob Herring
2016-10-10 22:21       ` Jeremy McNicoll
     [not found]         ` <4611eab0-84b3-3c6f-2df0-87fe21afc8df-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>
2016-10-12  0:32           ` Rob Herring
2016-10-02  2:38 ` [RFC V2 PATCH 10/12] arm64: dts: msm8994 issolate non standard bootloader/LK entries Jeremy McNicoll
     [not found]   ` <1475375919-618-11-git-send-email-jmcnicol-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>
2016-10-12  0:41     ` Rob Herring
     [not found]       ` <CAL_Jsq+ew7p6OYPzdTDmB9LAoGOOKasioYzmU=R+jLza2hWQFw-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2016-10-12 10:39         ` Arnd Bergmann
2016-10-12 12:11           ` Rob Herring
2016-10-13  0:59           ` Jeremy McNicoll
     [not found]             ` <17447be1-4357-0eca-a242-69576d3e2799-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>
2016-10-19 14:56               ` Arnd Bergmann
2016-10-19 21:46                 ` Andy Gross
     [not found]                   ` <20161019214643.GC3145-3KkwrOJo9xYlRp7syxWybdHuzzzSOjJt@public.gmane.org>
2016-10-20  1:07                     ` Rob Herring
     [not found]                       ` <CAL_Jsq+wjnEByg2vgx-P+bLJaQm+s=UX7nj=KwviagnQDG_3hQ-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2016-10-20  3:17                         ` Andy Gross
     [not found]                           ` <20161020031712.GD3145-3KkwrOJo9xYlRp7syxWybdHuzzzSOjJt@public.gmane.org>
2016-10-21 19:44                             ` Bjorn Andersson
2016-10-21 20:04                               ` Stephen Boyd
2016-10-21 20:25                                 ` Arnd Bergmann
2016-10-21 21:52                                   ` Bjorn Andersson
2016-10-22  0:07                                   ` Stephen Boyd [this message]
     [not found]                                     ` <20161022000733.GO26139-sgV2jX0FEOL9JmXXK+q4OQ@public.gmane.org>
2016-10-22  1:14                                       ` Bjorn Andersson
2016-10-21 22:42                                 ` Bjorn Andersson
2016-10-22  0:36                                   ` Stephen Boyd
2016-10-02  2:38 ` [RFC V2 PATCH 11/12] arm64: msm8994 / Nexus 6P remove defconfig Jeremy McNicoll
2016-10-02  2:38 ` [RFC V2 PATCH 12/12] arm64: dts: msm8994 default serial config Jeremy McNicoll

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20161022000733.GO26139@codeaurora.org \
    --to=sboyd-sgv2jx0feol9jmxxk+q4oq@public.gmane.org \
    --cc=andy.gross-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org \
    --cc=arnd-r2nGTMty4D4@public.gmane.org \
    --cc=bjorn.andersson-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org \
    --cc=devicetree-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
    --cc=git-LJ92rlH3Dns@public.gmane.org \
    --cc=jeremymc-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org \
    --cc=jmcnicol-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org \
    --cc=linux-arm-msm-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
    --cc=linux-soc-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
    --cc=robh+dt-DgEjT+Ai2ygdnm+yROfE0A@public.gmane.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.