I face this problem of not being able to make overlay work at boot time.I checked these threads,
and I added optargs=capemgr.enable_partno=BB-I2C2-ADXL in uEnv.txt
This is my uboot version
U-Boot 2017.09-dirty (Oct 14 2017 - 21:00:59 +0530)
I am booting with this kernl image
and I am trying to add an overlay at boot time for adxl345.
1)go to /boot/uEnv.txt add following two lines
root@arm:~# cat /boot/uEnv.txt
cmdline=coherent_pool=1M quiet cape_universal=enable optargs=capemgr.enable_partno=BB-I2C2-ADXL
I compiled overlay file(BB-I2C2-ADXL-00A0.dts) and put it into lib/firmware
Standalone this works
echo “BB-I2C2-ADXL” > slots
I can see my driver probing it.
But adding this functionality in eEnv.txt does not take effect.
This is my kernel log while boot up,
this is dmesg
What I am missing?
Just use u-boot overlays:
I removed other entried in uEnv.txt and changed it to
Now I can see my driver probing.
One thing happened. I tried to see slots
cat: slots: No such file or directory
slots file itself is not present now.
Correct, when using U-Boot overlays, the slots file is removed, as it’ll only cause issues. Aka, don’t mix and match uboot and kernel overlays.
Thanks for the clarification.
One suggestion I need.
What is the best way to keep up with these changes, because these information is so volatile that it may be redundant in few weeks.
Should I go with the source of overlay files and understand from the implementation point of view rather than trying to just make it work somehow.
Which source files or functions would be best to start?
I just need a direction from where I can start.
Well the decision was made back in March of 2017 to completely scrap
kernel overlays and move to u-boot overlays.
An announcement was made to this mailing list.