Re: [PATCH] scripts/dtc: Update to upstream version v1.6.0-51-g183df9e9c2b9

From: Rob Herring
Date: Fri Feb 12 2021 - 16:02:16 EST


On Fri, Feb 12, 2021 at 9:17 AM Guenter Roeck <linux@xxxxxxxxxxxx> wrote:
>
> On Fri, Feb 12, 2021 at 08:16:04AM -0600, Rob Herring wrote:
> > On Thu, Feb 11, 2021 at 9:31 PM Guenter Roeck <linux@xxxxxxxxxxxx> wrote:
> > >
> > > Hi Rob,
> > >
> > > On Wed, Feb 03, 2021 at 03:26:03PM -0600, Rob Herring wrote:
> > > > This adds the following commits from upstream:
> > > >
> > > > 183df9e9c2b9 gitignore: Ignore the swp files
> > > > 0db6d09584e1 gitignore: Add cscope files
> > > > 307afa1a7be8 Update Jon Loeliger's email
> > > > ca16a723fa9d fdtdump: Fix gcc11 warning
> > > > 64990a272e8f srcpos: increase MAX_SRCFILE_DEPTH
> > > > 163f0469bf2e dtc: Allow overlays to have .dtbo extension
> > > > 3b01518e688d Set last_comp_version correctly in new dtb and fix potential version issues in fdt_open_into
> > > > f7e5737f26aa tests: Fix overlay_overlay_nosugar test case
> > > > 7cd5d5fe43d5 libfdt: Tweak description of assume-aligned load helpers
> > > > a7c404099349 libfdt: Internally perform potentially unaligned loads
> > > > bab85e48a6f4 meson: increase default timeout for tests
> > > > f8b46098824d meson: do not assume python is installed, skip tests
> > > > 30a56bce4f0b meson: fix -Wall warning
> > > > 5e735860c478 libfdt: Check for 8-byte address alignment in fdt_ro_probe_()
> > > > 67849a327927 build-sys: add meson build
> > > > 05874d08212d pylibfdt: allow build out of tree
> > > > 3bc3a6b9fe0c dtc: Fix signedness comparisons warnings: Wrap (-1)
> > > > e1147b159e92 dtc: Fix signedness comparisons warnings: change types
> > > > 04cf1fdc0fcf convert-dtsv0: Fix signedness comparisons warning
> > > > b30013edb878 libfdt: Fix kernel-doc comments
> > > >
> > > > Signed-off-by: Rob Herring <robh@xxxxxxxxxx>
> > >
> > > This patch causes my little-endian microblaze qemu emulations to fail
> > > silently (no console output) in next-20210211. Reverting this patch
> > > together with "scripts: dtc: Build fdtoverlay tool" fixes the problem.
> >
> > My guess would be something in libfdt. Maybe 7cd5d5fe43d5 or
> > a7c404099349, though that should return to historical behavior.
> >
> > Can you give me the qemu command line and kernel cfg?
> >
> I copied everything you should need to build a kernel (including toolchain)
> to http://server.roeck-us.net/qemu/microblazeel/
>
> [ wow, I really need to update that compiler ]

I can't seem to get BE/LE nor reverted or not working. It's always
dying in microblaze_cache_init() based on the last print. It's your
config, but gcc 10.1.0 off of kernel.org.

There is at least one possible problem here that the FDT may only be 4
byte aligned. The assumption is 8 bytes to not have misaligned
accesses (and only for 64-bit accesses if 4 byte aligned). That's an
issue with the qemu image loading depending on the sizes and
combination of images loaded. That doesn't explain your failure
though. As the initrd is a multiple of 8 bytes, you should be fine.

Rob