
On 20 Aug 2015 22:09, Stephen Warren swarren@wwwdotorg.org wrote:
Hopefully the process was to copy the Linux Tegra30 DT verbatim?
No, the T20 one is far from verbatim neither. So I just did the adjustments analogous by comparing the T20 and T30 Linux DTs.
That's far more likely to yield a correct DT than copying the Tegra20 DT to Tegra30 and then patching it until it works.
I guess U-Boot has anyway about zero functionality dependency on that part of the device trees.
If this DT doesn't exactly match the Linux kernel, this needs to be fixed.
Well, then any Tegra device tree currently in U-Boot needs serious fixing. I usually tend to at least not make the mess any worse.
diff --git a/arch/arm/mach-tegra/tegra30/Makefile b/arch/arm/mach-tegra/tegra30/Makefile
-obj-$(CONFIG_SPL_BUILD) += cpu.o +ifdef CONFIG_SPL_BUILD +obj-y += cpu.o
I don't think there's any need to edit the cpu.o line. While you can move it into the ifdef like that, I don't see a need.
I can sure revert this then.
diff --git a/arch/arm/mach-tegra/tegra30/display.c b/arch/arm/mach-tegra/tegra30/display.c
I didn't review this file in detail; I'll leave that to Thierry since he knows the display HW.
However, one question: Is this file a complete cut/paste of tegra20/display.c, or does it just replace some parts of it? Hopefully this patch doesn't simply duplicate the whole driver?
Yes, for now this is an exact one-to-one copy but I lack the detailed knowledge about Tegra graphics to know whether this is much sane.
On first sight to me the current split between hardware agnostic (e.g. driver/video/tegra.c) and hardware specific (e.g. mach-tegra/<SoC>/display.c) seems rather arbitrary. Downstream [1] I actually took a more radical approach and if that is rather accepted I'm happy to rework this patch set in that direction as well. But then actually completely merging tegra.c and display.c might even make more sense. I'm open to suggestions really.
[1] http://git.toradex.com/cgit/u-boot-toradex.git/commit/?h=2015.04-toradex-nex...