From: Maxime Ripard <maxime.ripard@free-electrons.com>
To: u-boot@lists.denx.de
Subject: [U-Boot] [PATCH RESEND 0/9] sunxi: chip: Enable the DIP auto-detection
Date: Wed, 9 Nov 2016 15:10:18 +0100 [thread overview]
Message-ID: <20161109141018.hk6dpposylg7yvp4@lukather> (raw)
In-Reply-To: <20161109034418.GL6637@bill-the-cat>
Hi Tom,
On Tue, Nov 08, 2016 at 10:44:18PM -0500, Tom Rini wrote:
> On Tue, Nov 08, 2016 at 11:19:20AM +0100, Maxime Ripard wrote:
>
> [snip]
> > I think the biggest drawback at the moment is that we maintain a list of
> > DIPs and the actions needed directly into the C code, which will make it
> > quite hard to customise for end users and tedious to maintain in the long
> > term. I couldn't really get my head around a better solution, so feel free
> > to suggest alternative approaches.
>
> A thought I had after reading over 8/9 in the series was, could we try
> something like:
> - In C, loop over everything in w1 and set environment variables based
> on each thing we find.
> - In a CONFIG_PREBOOT load a U-Boot shell script in that will look for
> the right env variables to be set for a given DIP and then do whatever
> is needed to load in the overlay.
>
> Does that make sense?
I thought about an environment-based solution too, but I was pretty
worried about its scalability. But I guesse that's also the easiest
thing to modify by end-users.
However, we have basically, three things to do (so far)
1) Modify the U-Boot environment before the display is initialized
2) Modify the kernel command line
3) Apply an overlay
I think CONFIG_PREBOOT is too late for 1, because the display is
already initialized, and too early for 2 and 3, because the command
line and DT will probably be set / loaded at bootcmd time.
I think we can decouple 1 and 2 from 3, since doing 2 too early is not
an issue, because we might have boards that require to load some
overlay but wouldn't need to make environment modifications (like an
MMC DIP), or the other way around (even though I fail to see a use
case for that at the moment).
So we're left with basically two things:
- Do a bunch of modifications in the environment early
- And apply the overlay very late (basically right before booting
the kernel)
So we could do something like having an environment script called
dip-<vid>-<pid>-setup called when a DIP is detected (if it exists),
and keep the DT overlay logic in its current form.
What do you think?
Maxime
--
Maxime Ripard, Free Electrons
Embedded Linux and Kernel engineering
http://free-electrons.com
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 801 bytes
Desc: not available
URL: <http://lists.denx.de/pipermail/u-boot/attachments/20161109/11bba8a8/attachment.sig>
next prev parent reply other threads:[~2016-11-09 14:10 UTC|newest]
Thread overview: 34+ messages / expand[flat|nested] mbox.gz Atom feed top
2016-11-08 10:19 [U-Boot] [PATCH RESEND 0/9] sunxi: chip: Enable the DIP auto-detection Maxime Ripard
2016-11-08 10:19 ` [U-Boot] [PATCH RESEND 1/9] fdtdec: Fix alias retrieval Maxime Ripard
2016-11-08 10:19 ` [U-Boot] [PATCH RESEND 2/9] sunxi: chip: Add 1-wire node Maxime Ripard
2016-11-08 10:19 ` [U-Boot] [PATCH RESEND 3/9] w1: Add 1-Wire uclass Maxime Ripard
2016-11-08 10:19 ` [U-Boot] [PATCH RESEND 4/9] w1: Add 1-Wire gpio driver Maxime Ripard
2016-11-10 13:35 ` Michal Simek
2016-11-11 20:53 ` Maxime Ripard
2016-11-08 10:19 ` [U-Boot] [PATCH RESEND 5/9] EEPROM: Add an EEPROM uclass Maxime Ripard
2016-11-11 16:17 ` Simon Glass
2016-11-11 19:13 ` Moritz Fischer
2016-11-14 13:39 ` Maxime Ripard
2016-11-08 10:19 ` [U-Boot] [PATCH RESEND 6/9] eeprom: Add DS2431 support Maxime Ripard
2016-11-11 19:16 ` Moritz Fischer
2016-11-14 13:42 ` Maxime Ripard
2016-11-14 15:14 ` Tom Rini
2016-11-14 20:12 ` Maxime Ripard
2016-11-14 20:44 ` Simon Glass
2016-11-14 21:09 ` Maxime Ripard
2016-11-14 21:17 ` Simon Glass
2016-11-14 20:44 ` Simon Glass
2016-11-08 10:19 ` [U-Boot] [PATCH RESEND 7/9] video: Allow board hook before video init Maxime Ripard
2016-11-11 16:17 ` Simon Glass
2016-11-14 20:24 ` Maxime Ripard
2016-11-14 20:44 ` Simon Glass
2016-11-22 12:41 ` Maxime Ripard
2016-11-24 2:21 ` Simon Glass
2016-12-06 17:39 ` Maxime Ripard
2016-12-08 22:22 ` Simon Glass
2016-11-08 10:19 ` [U-Boot] [PATCH RESEND 8/9] sunxi: Add CHIP's DIP support Maxime Ripard
2016-11-08 10:19 ` [U-Boot] [PATCH RESEND 9/9] config: chip: Enable " Maxime Ripard
2016-11-09 3:44 ` [U-Boot] [PATCH RESEND 0/9] sunxi: chip: Enable the DIP auto-detection Tom Rini
2016-11-09 14:10 ` Maxime Ripard [this message]
2016-11-11 16:33 ` Tom Rini
2016-11-14 11:14 ` Hans de Goede
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=20161109141018.hk6dpposylg7yvp4@lukather \
--to=maxime.ripard@free-electrons.com \
--cc=u-boot@lists.denx.de \
/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.