devicetree.vger.kernel.org archive mirror
 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: 46+ 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
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
     [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
     [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 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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).