From: Wolfgang Grandegger <wg@grandegger.com>
To: u-boot@lists.denx.de
Subject: [U-Boot-Users] Ideas on U-Boot configuration with FDT
Date: Fri, 18 May 2007 11:09:30 +0200 [thread overview]
Message-ID: <464D6D4A.4000200@grandegger.com> (raw)
Hello,
here are my ideas on what is basically necessary to use FDT for U-Boot
configuration. I tried to keep it simple:
- If CFG_FDT_ADDR is defined in the boards configuration file, the
global variable "fdt", already used by the FDT command, will be set
at compile time to that address:
#ifdef CFG_FDT_ADDR
struct fdt_header *fdt = CFG_FDT_ADDR;
else
struct fdt_header *fdt = NULL;
#endif
- In the early boot phase, before relocation, the FDT is checked and an
error message printed in case it's not found or invalid:
CPU: MPC5200 v1.0, Core v1.1 at 396 MHz
Bus 132 MHz, IPB 66 MHz, PCI 33 MHz
FDT: FDT_ERR_BADMAGIC (or OK, or version number?)
At this level also the compatibility of the FDT tree could be checked
using fdt_boardcheck().
- After relocation, the blob is copied into memory via fdt_open_into()
to a defined place and "fdt" is updated accordingly. Not sure, what
location in RAM to use, but it should fit into the existing scheme.
Any recommendations?
- When U-Boot is up, "fdt" points to a valid FDT, e.g. "fdt addr" is not
necessary.
- I think the basic mechanism should also work _without_ FDT commands
(cmd_fdt.c, getting ride of quit some code).
- bootm should then automatically use the address of "fdt" to boot the
kernel.
Some more comments. I realized rather heavy consistency checks on almost
any public FDT function via fdt_check_header. I actually would prefer to
have one extended check function at the beginning, which also ensures
the compatibility with the board and reduce the other checks to just
verify the magic number.
Other related issues? Do we also need to maintain a checksum of the
blob? At least it's on Jerry's to-do list.
What do you think? I'm going to show a first patch soon.
Wolfgang.
next reply other threads:[~2007-05-18 9:09 UTC|newest]
Thread overview: 32+ messages / expand[flat|nested] mbox.gz Atom feed top
2007-05-18 9:09 Wolfgang Grandegger [this message]
2007-05-18 14:27 ` [U-Boot-Users] Ideas on U-Boot configuration with FDT Timur Tabi
2007-05-18 14:44 ` Wolfgang Grandegger
2007-05-18 14:48 ` Timur Tabi
2007-05-18 15:01 ` Wolfgang Grandegger
2007-05-18 15:01 ` Timur Tabi
2007-05-18 15:20 ` Wolfgang Grandegger
2007-05-18 15:19 ` Timur Tabi
2007-05-18 19:04 ` Wolfgang Denk
2007-05-18 15:29 ` Jerry Van Baren
2007-05-18 15:35 ` Timur Tabi
2007-05-18 16:05 ` Jerry Van Baren
2007-05-18 16:12 ` Timur Tabi
2007-05-18 16:30 ` Jerry Van Baren
2007-05-20 8:36 ` Wolfgang Grandegger
2007-05-20 9:33 ` Wolfgang Denk
2007-05-20 12:39 ` Jerry Van Baren
2007-05-20 13:05 ` Wolfgang Grandegger
2007-05-21 15:19 ` Timur Tabi
2007-05-21 16:58 ` Wolfgang Grandegger
2007-05-21 17:02 ` Timur Tabi
2007-05-21 17:18 ` Jerry Van Baren
2007-05-21 18:31 ` Timur Tabi
2007-05-21 19:38 ` Wolfgang Denk
2007-05-21 17:26 ` Wolfgang Grandegger
2007-05-21 19:34 ` Wolfgang Denk
2007-05-21 19:39 ` Timur Tabi
2007-05-21 15:23 ` Timur Tabi
2007-05-21 17:08 ` Wolfgang Grandegger
2007-05-18 19:16 ` Wolfgang Denk
2007-05-18 19:26 ` Jon Loeliger
2007-05-18 19:11 ` Wolfgang Denk
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=464D6D4A.4000200@grandegger.com \
--to=wg@grandegger.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox