svn commit: r265066 - stable/10/sys/boot/fdt
Ian Lepore
ian at FreeBSD.org
Tue Apr 29 00:13:26 UTC 2014
Author: ian
Date: Tue Apr 29 00:13:25 2014
New Revision: 265066
URL: http://svnweb.freebsd.org/changeset/base/265066
Log:
MFC r262326 (white space) and r262327 (fdt_addr).
This change was supposed to be whitespace only, but a functional change
snuck in, as follows:
Look for both fdtaddr and fdt_addr env var names. Grepping the u-boot
source shows that board vendors seem to be about evenly split on this.
The added lines were:
/* Board vendors use both fdtaddr and fdt_addr names. Grrrr. */
if (s == NULL)
s = ub_env_get("fdt_addr");
Modified:
stable/10/sys/boot/fdt/fdt_loader_cmd.c
Modified: stable/10/sys/boot/fdt/fdt_loader_cmd.c
==============================================================================
--- stable/10/sys/boot/fdt/fdt_loader_cmd.c Tue Apr 29 00:09:48 2014 (r265065)
+++ stable/10/sys/boot/fdt/fdt_loader_cmd.c Tue Apr 29 00:13:25 2014 (r265066)
@@ -250,39 +250,42 @@ fdt_load_dtb_addr(struct fdt_header *hea
static int
fdt_setup_fdtp()
{
- struct preloaded_file *bfp;
- struct fdt_header *hdr;
- const char *s;
- char *p;
- vm_offset_t va;
-
- if ((bfp = file_findfile(NULL, "dtb")) != NULL) {
- printf("Using DTB from loaded file.\n");
- return fdt_load_dtb(bfp->f_addr);
- }
-
- if (fdt_to_load != NULL) {
- printf("Using DTB from memory address 0x%08X.\n",
- (unsigned int)fdt_to_load);
- return fdt_load_dtb_addr(fdt_to_load);
- }
-
- s = ub_env_get("fdtaddr");
- if (s != NULL && *s != '\0') {
- hdr = (struct fdt_header *)strtoul(s, &p, 16);
- if (*p == '\0') {
- printf("Using DTB provided by U-Boot.\n");
- return fdt_load_dtb_addr(hdr);
- }
- }
-
- if ((va = fdt_find_static_dtb()) != 0) {
- printf("Using DTB compiled into kernel.\n");
- return (fdt_load_dtb(va));
- }
-
- command_errmsg = "no device tree blob found!";
- return (1);
+ struct preloaded_file *bfp;
+ struct fdt_header *hdr;
+ const char *s;
+ char *p;
+ vm_offset_t va;
+
+ if ((bfp = file_findfile(NULL, "dtb")) != NULL) {
+ printf("Using DTB from loaded file.\n");
+ return fdt_load_dtb(bfp->f_addr);
+ }
+
+ if (fdt_to_load != NULL) {
+ printf("Using DTB from memory address 0x%08X.\n",
+ (unsigned int)fdt_to_load);
+ return fdt_load_dtb_addr(fdt_to_load);
+ }
+
+ /* Board vendors use both fdtaddr and fdt_addr names. Grrrr. */
+ s = ub_env_get("fdtaddr");
+ if (s == NULL)
+ s = ub_env_get("fdt_addr");
+ if (s != NULL && *s != '\0') {
+ hdr = (struct fdt_header *)strtoul(s, &p, 16);
+ if (*p == '\0') {
+ printf("Using DTB provided by U-Boot.\n");
+ return fdt_load_dtb_addr(hdr);
+ }
+ }
+
+ if ((va = fdt_find_static_dtb()) != 0) {
+ printf("Using DTB compiled into kernel.\n");
+ return (fdt_load_dtb(va));
+ }
+
+ command_errmsg = "no device tree blob found!";
+ return (1);
}
#define fdt_strtovect(str, cellbuf, lim, cellsize) _fdt_strtovect((str), \
More information about the svn-src-all
mailing list