On Mon, Mar 08, 2021 at 10:04:15AM -0700, Rob Herring wrote: > On Sat, Mar 6, 2021 at 3:59 PM Thomas Bogendoerfer > <tsbogend@xxxxxxxxxxxxxxxx> wrote: > > > > On Sat, Mar 06, 2021 at 02:35:21PM -0700, Rob Herring wrote: > > > On Sat, Mar 6, 2021 at 1:45 AM Thomas Bogendoerfer > > > <tsbogend@xxxxxxxxxxxxxxxx> wrote: > > > > > > > > On Wed, Mar 03, 2021 at 02:37:55PM -0600, Rob Herring wrote: > > > > > On Wed, Mar 3, 2021 at 1:33 PM Paul Cercueil <paul@xxxxxxxxxxxxxxx> wrote: > > > > > > > > > > > > Since 5.12-rc1, the Device Tree blob must now be properly aligned. > > > > > > > > > > I had checked the other built-in cases as microblaze broke too, but > > > > > missed some of the many ways MIPS can have a dtb. Appended and > > > > > built-in DTBs were supposed to be temporary. :( > > > > > > > > and a fdt can also be provided by firmware. And according to spec > > > > there is no aligmnet requirement. So this whole change will break > > > > then. What was the reason for the whole churn ? > > Actually, that is wrong. The spec defines the alignment (from > flattened format appendix): I was talking about the "Unified Hosting Interface" from MIPS/Imagination. As the spec talks about device tree blob all firmware developer knew about the fdt alignment rules. > > the access macros are using *(unsigned long long *), which isn't > > even nice for 32bit CPUs... > > Where are those? nowhere, I've missread the code in libfdt_env.h > > > As part of this, a dtb alignment check was added. So worst case, we > > > could disable that if need be. > > > > yeah, or override fdt32/64_to_cpu, if I understood the code correctly. > > No, fdt32/64_to_cpu don't dereference the pointer. you are right, brainfart on my side. Thomas. -- Crap can work. Given enough thrust pigs will fly, but it's not necessarily a good idea. [ RFC1925, 2.3 ]