Hi all,
Am 07.01.2019 um 18:11 schrieb H. Nikolaus Schaller hns@goldelico.com:
Hi Levi,
Am 07.01.2019 um 17:49 schrieb levi levi2015@cobaltlake.co.uk:
On Mon, 7 Jan 2019 17:02:27 +0100 "H. Nikolaus Schaller" hns@goldelico.com wrote:
Nevertheless the description of -@ "Enable generation of symbols" is not very helpful. Why would one enable that? What happens if not? What are "symbols" etc. Questions over questions...
I think it's referring the symbols as in debug symbols, the kind of thing you need to build in in order to get anything sensible out of gdb, assuming it's even possible to debug this.
But a bit of internet searching got me to this commit: https://github.com/RobertCNelson/dtc/commit/dd6a0533e846e8d5e690a618fa35cc15...
That says: "This is sufficient to implement a dynamic DT object loader."
Whether you actually want that I don't know, and I couldn't tell you how to pass the right option to dtc within the wrapped up tools. But you did ask the question...
Ok, this description in the commit gives another hint to my current theory that the Raspi boot loader needs this information to load the DT and modify it before starting the kernel...
To answer the real question if compiling with -@ makes the DTB bootable on RasPI can only be found by trying :)
With that I can easily compile the bcm2837.dts with -@ option. But only after finishing the current work which is rebasing letux to v5.0-rc1 and debugging my wrongly resolved merge conflicts.
Well, my dtc wrapper did not find all required #includes, but I found out that I can simply do "DTC_FLAGS=-@ make-linux" which is passed down to the kernel Makefile and DTC.
With that I now get a __symbols__ section in the DTB. But there is no __overrides__. Strange, how that is generated from the github tree. Maybe it is explicitly in some .dtsi there?
Anyways, the 5.0-rc1 kernel still only boots with the .dtb built from the github tree... (without explict -@ option!).
I have also checked for the uart aliases and now with 5.0-rc1 they are there for the serial0/1 - but they appear to be swapped. I have tried to swap them in arch/arm/boot/dts/bcm283x.dtsi, but this makes also no change in boot log or boot success.
So it is stilly a mystery what makes the device trees so different.
I have attached both versions (reverse compiled from .dtb), if someone wants to look into them. Sometimes 10 eyes see more than two...
BR, Nikolaus