oldgalileo has quit [Remote host closed the connection]
oldgalileo has joined #tegra
oldgalileo has quit [Remote host closed the connection]
oldgalileo has joined #tegra
marvin24 has quit [Ping timeout: 245 seconds]
marvin24 has joined #tegra
oldgalileo has quit [Remote host closed the connection]
oldgalileo has joined #tegra
oldgalileo has quit [Remote host closed the connection]
oldgalileo has joined #tegra
oldgalileo has quit [Remote host closed the connection]
oldgalileo has joined #tegra
milkylainen has joined #tegra
<milkylainen>
Question. If I want to move the "hardware" directory containing the dts trees from the Tegra kernel tree, what includes do I have to change to fix the path?
<milkylainen>
I found the scripts/Kbuild.include, but I'm not making much sense from it.
<milkylainen>
An instruction how to build a single dtb would also be nice.
<cyndis>
why do you want to move it? the build system should automatically build the DTBs from hardware/ while building the kernel
<cyndis>
Kbuild.include or arch/arm64/boot/dts/Makefile are probably good places to hack around if you really want to change the path
<milkylainen>
cyndis: Yup. But couldn't make it work.
<milkylainen>
cyndis: Kernel should be pretty self contained. Make dtbs or a single dtb should not be a chore, nor require some build environment?
<cyndis>
well, technically DTS's are not a part of the kernel, I'd say it's more a historical quirk that in upstream that is the case
<cyndis>
downstream there are other users of DTS's as well in places where the linux kernel is not present so it makes some sense for them to be separate
<milkylainen>
That's fine, but if I move the directory, for whatever build requirement reasons, how do I get it to build? I'm tinkering with the same Makefile and Kbuild.include you mentioned. So so far so good.. But to no avail so far.
<pgwipeout[m]>
You could always just run dtc standalone without the build env. I've never tried with preprocessing requirements though.
<cyndis>
you could try changing NV_BUILD_KERNEL_DTS_ROOT in Makefile.kernel
<milkylainen>
cyndis: did, didn't work. I suspect some trickery with ../../ goes haywire if the path is not correct.
<cyndis>
yeah, may be. other paths have probably never been tested
<milkylainen>
pgwipeout[m]: I could. But a chore finding out where everything is located. It's easier just repointing the top level.. :)
<milkylainen>
cyndis: mm. :\
<milkylainen>
It seems it finds the files, but some translation for rules get broken. I get a lot of:
<milkylainen>
arch/arm64/boot/dts/Makefile:132: target 'arch/arm64/boot/dts/_ddot_' given more than once in the same rule
<milkylainen>
Hrrm. Can't make it work even at the expected directory offset?
<milkylainen>
make V=1 ARCH=arm64 CROSS_COMPILE=aarch64-linux-gnu- dtbs should be fine in a pristine unpacked tree? right? defconfig done obviously.
oldgalileo has quit [Remote host closed the connection]
oldgalileo has joined #tegra
<pgwipeout[m]>
Honestly I don't even think you need the cross compiler to make the dtbs
<milkylainen>
Probably right.
<milkylainen>
Either way, couldn't make a pristine tree build dtbs. I get the same error as when moving the hardware tree.
<milkylainen>
pgwipeout[m]: Maybe need the cross cc? Tried with the host cc.. gcc: error: unrecognized command-line option ‘-mlittle-endian’
<milkylainen>
Kernel tree seems to build an empty.o? Empty kernel module? Or something?
<pgwipeout[m]>
Odd. Oh well.
<pgwipeout[m]>
Yeah the path to build the dtbs from a pristine tree should just be running make defconfig (whichever one is yours) then make dtbs.
<pgwipeout[m]>
Kernel only builds the dtbs for the configured arch and manufacturer(in case of arm64)
<pgwipeout[m]>
s/Kernel only builds the dtbs for the configured arch and manufacturer(in case of arm64)/Kernel only builds the dtbs for the configured arch and manufacturer/
<milkylainen>
cyndis: and the gpu can't be added as a separate driver blob?
<milkylainen>
cyndis: nice.
<cyndis>
not at this time
<milkylainen>
:\ . Nice with a vanilla UEFI setup anyway.
<cyndis>
well, if you add a PCI-E gpu, that will probably work :) but the "desktop driver" doesn't support the iGPU
<milkylainen>
:)
<milkylainen>
Ok. So next peculiar behavior. Shouldn't I be able to build a single dtb by specifying its name?
<milkylainen>
Right now, the "dtbs" target work fine. And running a specific <dtbname>.dtb after dtbs result in "nothing be done for", ie already made. But running it before results in a b0rk.
<milkylainen>
I am guessing the copy rule doesn't get run unless the "dtbs" target is called.
oldgalileo has quit [Remote host closed the connection]
oldgalileo has joined #tegra
oldgalileo has quit [Remote host closed the connection]
oldgalileo has joined #tegra
gouchi has joined #tegra
oldgalileo has quit [Remote host closed the connection]
oldgalileo has joined #tegra
oldgalileo has quit [Remote host closed the connection]
oldgalileo has joined #tegra
oldgalileo has quit [Remote host closed the connection]
oldgalileo has joined #tegra
loki_val has joined #tegra
crabbedhaloablut has quit [Ping timeout: 276 seconds]
gouchi has quit [Remote host closed the connection]
oldgalileo has quit [Remote host closed the connection]