View: 1142|Reply: 0

The device tree header verification error was encountered during uboot startup

[Copy link]

1

threads

1

posts

19

credits

Novice

Rank: 1

credits
19
Published in 2021-11-2 11:08:53 | Show all floors |Read mode
hello everyone! I have a problem when using orangepi3.
The following errors are reported during uboot startup.
  1. ** File not Found /boot/dts/sunxi/sunxi-orangepi-3.dts**
  2.         libfdt fdt_check_header:FDT_ERR_BADMAGIC
Copy code

I checked the uboot source code and found this error in the function fdt_check_header
  1. int fdt_check_header(const void *fdt)
  2. {
  3.         if (fdt_magic(fdt) == FDT_MAGIC) {
  4.                 /* Complete tree */
  5.                 if (fdt_version(fdt) < FDT_FIRST_SUPPORTED_VERSION)
  6.                         return -FDT_ERR_BADVERSION;
  7.                 if (fdt_last_comp_version(fdt) > FDT_LAST_SUPPORTED_VERSION)
  8.                         return -FDT_ERR_BADVERSION;
  9.         } else if (fdt_magic(fdt) == FDT_SW_MAGIC) {
  10.                 /* Unfinished sequential-write blob */
  11.                 if (fdt_size_dt_struct(fdt) == 0)
  12.                         return -FDT_ERR_BADSTATE;
  13.         } else {
  14.                 return -FDT_ERR_BADMAGIC;
  15.         }

  16.         return 0;
  17. }
Copy code

But in uboot init_sequence_f exe reserve_fdt also have the verification of the device tree header,and the verification has passed.
Enter uboot and use the command fdt print to print the device tree correctly,but in uboot autoboot_command  run_command_list cmd_list an error occurred in the device tree header checked.resulting in failure to enter the kernel correctly.
Have you ever encountered this problem? Or can you give me some advice? Thanks!
You need to log in before you can reply login | Register

Points Rule

Quick reply Top Return list