sgjava Posted December 6, 2020 Posted December 6, 2020 I added a missing memory region from /dev/gpiomem and tested it. gpiomem { compatible = "samsung,exynos-gpiomem"; status = "okay"; reg = <0x13400000 0x1000 0x14010000 0x1000 0x03860000 0x1000>; }; I didn't see where to make PR on github.
Werner Posted December 6, 2020 Posted December 6, 2020 https://github.com/armbian/build/tree/master/patch/kernel To create the patch itself easiest way is most likely to use CREATE_PATCHES argument with the build script. It will hold after the kernel sources is fully patched and gives you a chance to add the missing stuff into the dts. Once you release the hold a diff is created.
sgjava Posted December 6, 2020 Author Posted December 6, 2020 @WernerPlease forgive me, but is there instructions somewhere to do this? I've never tried to build Armbian before.
Werner Posted December 6, 2020 Posted December 6, 2020 Sure thing. Have a look at our documentation https://docs.armbian.com/Developer-Guide_Build-Preparation/
sgjava Posted December 8, 2020 Author Posted December 8, 2020 @WernerI'm not sure where to make changes. The DTS files are in: ./cache/sources/u-boot-odroidxu/odroidxu4-v2017.05/arch/arm/dts/exynos5422-odroidxu4.dts ./cache/sources/linux-odroidxu4/odroid-5.4.y/arch/arm/boot/dts/exynos5422-odroidxu4.dts DTBs are in: ./cache/sources/u-boot-odroidxu/odroidxu4-v2017.05/arch/arm/dts/exynos5422-odroidxu4.dtb ./cache/sources/linux-odroidxu4/odroid-5.4.y/debian/tmp/usr/lib/linux-image-current-odroidxu4/exynos5422-odroidxu4.dtb ./cache/sources/linux-odroidxu4/odroid-5.4.y/debian/dtbtmp/boot/dtb-5.4.81-odroidxu4/exynos5422-odroidxu4.dtb ./cache/sources/linux-odroidxu4/odroid-5.4.y/arch/arm/boot/dts/exynos5422-odroidxu4.dtb So if I were a gambling man I'd change ./cache/sources/linux-odroidxu4/odroid-5.4.y/arch/arm/boot/dts/exynos5422-odroidxu4.dts before ./compile.sh CREATE_PATCHES="yes"?
Werner Posted December 9, 2020 Posted December 9, 2020 Hmm, there shouldn't be dtb files in the kernel sources before building...
sgjava Posted December 9, 2020 Author Posted December 9, 2020 Yeah, I see it prompts once you add the CREATE_PATCHES="yes" It prompts twice. The only problem is the dts files do not contain the gpiomem section for some reason, but the downloaded image does. I'll figure it out eventually. Then where to put the PR
Werner Posted December 9, 2020 Posted December 9, 2020 1 minute ago, sgjava said: It prompts twice Yes. Once before U-Boot is compiled and once before kernel is built. 2 minutes ago, sgjava said: Then where to put the PR I think this needs to go here: https://github.com/armbian/build/tree/master/patch/kernel/odroidxu4-current
sgjava Posted December 9, 2020 Author Posted December 9, 2020 So I make change before kernel is built? Or is dts part of uboot (since it's in /boot :)) process?
Werner Posted December 9, 2020 Posted December 9, 2020 5 minutes ago, sgjava said: So I make change before kernel is built? Yes. You start the build process as usual but with CREATE_PATCHES set. It will apply all patches to the kernel source and once it breaks simply open another terminal and go to cache/sources/linux-mainline/yoursource.... and edit the device tree for the board. When finished continue the building and the script will create a patch file from the diff it finds in the device tree file. It will also tell you where it put the patch. 5 minutes ago, sgjava said: Or is dts part of uboot U-Boot is a different story. The dtbs in /boot are used by the Linux kernel.
sgjava Posted December 10, 2020 Author Posted December 10, 2020 OK, almost there. Looks like I had to mod an include and it generated build/output/patch/kernel-odroidxu4-current.patch, but if I look at https://github.com/armbian/build/tree/master/patch/kernel/odroidxu4-current I see patches with what looks like kernel version suffixes. Should I rename this file. I'm at the last mile!
Werner Posted December 10, 2020 Posted December 10, 2020 Yeah, it is wise to rename your patch to something meaningful As an example in this folder you have tons of patches that are applied for all sunxi devices: https://github.com/armbian/build/tree/master/patch/kernel/sunxi-current
sgjava Posted December 10, 2020 Author Posted December 10, 2020 @WernerOK hopefully https://github.com/armbian/build/pull/2438 is correct or I'm sure @Igorwill be by to smack me around
Igor Posted December 10, 2020 Posted December 10, 2020 1 hour ago, sgjava said: @WernerOK hopefully https://github.com/armbian/build/pull/2438 is correct or I'm sure @Igorwill be by to smack me around Correct in the term of adding a patch! No smacking this time
sgjava Posted December 10, 2020 Author Posted December 10, 2020 @IgorSo I'm thinking about documenting the steps since I didn't see a detailed description in the docs (maybe I missed it). Also, going to try to add pin descriptions for gpio device, so gpioinfo is fully populated. Is this info in the device tree as well?
TRS-80 Posted December 10, 2020 Posted December 10, 2020 31 minutes ago, sgjava said: So I'm thinking about documenting the steps since I didn't see a detailed description in the docs (maybe I missed it). No, you did not miss it. It's "on my list" as well, however I mention this not to dissuade you but rather let you know the thought occurred to me as well. As it's likely still fresh in your mind (and I am busy elsewhere) go ahead and have at it if you feel like it. I can always add to / polish it up later (if that's even needed). Cheers!
sgjava Posted December 10, 2020 Author Posted December 10, 2020 @TRS-80OK, I'll do a readme.md and post to my github, so you can scarf that. You need to configure gpg and other junk I wasn't expecting. On the plus side I still have my Ubuntu VM console history!
TRS-80 Posted December 10, 2020 Posted December 10, 2020 Better I think would be to commit directly to Armbian docs, I think. That way takes a little setup, but once done makes it much easier to add little things here and there later on as you come across them. Up to you though of course.
sgjava Posted December 11, 2020 Author Posted December 11, 2020 I'll do that after write doc I build the readm.md. I'm just using the markdown editor in Eclipse. I don't have to put it on github.
Werner Posted December 11, 2020 Posted December 11, 2020 Your help making the documentation better for others is highly appreciated
sgjava Posted December 11, 2020 Author Posted December 11, 2020 I'm going to try github command line, so you don't have to fork, etc. on the web UI. Hopefully I can do it all command line.
sgjava Posted December 13, 2020 Author Posted December 13, 2020 @Wernercheck out https://github.com/sgjava/patchbian I just submitted another PR, so I'd have it down exactly. I'll add this to the official docs when I have some more time. For now this is a fresh core dump of the process. Let me know if there's any improvements. I was done all cli without using GitHub web UI.
Recommended Posts