device tree overlay does not load while booting up

root@arm:~# /opt/scripts/tools/version.sh
git:/opt/scripts/:[ef2c5982e3788e07d9ec4a3d23089dc5e5a3f9cd]
eeprom:[A335BNLT00C05315BBBK054D]
model:[TI_AM335x_BeagleBone_Black]
bootloader:[microSD-(push-button)]:[/dev/mmcblk0]:[U-Boot 2018.03-dirty]
bootloader:[eMMC-(default)]:[/dev/mmcblk1]:[U-Boot 2015.01-00001-gb2412df]
kernel:[4.4.127-bone22]
device-tree-override:[loadxfdt=load mmc 0:1 ${fdtaddr} /boot/dtbs/${uname_r}/${fdtfile}]
uboot_overlay_options:[enable_uboot_overlays=1]
uboot_overlay_options:[uboot_overlay_addr0=/lib/firmware/BB-I2C2-ADXL-00A0.dtbo ]
pkg:[bb-cape-overlays]:[4.4.20171207.0-0rcnee1~stretch+20171207]

OVERLAY FILE
https://pastebin.com/CsicZ046

compiled overlay as
dtc -I dts -O dtb -o BB-I2C2-ADXL-00A0.dtbo -b 0 -@ BB-I2C2-ADXL-00A0.dts

kconfig file changes
https://pastebin.com/e4hqXgmJ

DRIVER FILE
adxl34x-i2c.c

https://pastebin.com/ef8Uh06D

adxl34x.c

https://pastebin.com/agcF9muC

uEnv.txt

##This will work with: Angstrom’s 2013.06.20 u-boot.

loadaddr=0x82000000
fdtaddr=0x88000000
rdaddr=0x88080000

initrd_high=0xffffffff
fdt_high=0xffffffff

#for single partitions:
mmcroot=/dev/mmcblk0p1

loadximage=load mmc 0:1 ${loadaddr} /boot/vmlinuz-${uname_r}
loadxfdt=load mmc 0:1 ${fdtaddr} /boot/dtbs/${uname_r}/${fdtfile}
loadxrd=load mmc 0:1 ${rdaddr} /boot/initrd.img-${uname_r}; setenv rdsize ${filesize}
loaduEnvtxt=load mmc 0:1 ${loadaddr} /boot/uEnv.txt ; env import -t ${loadaddr} ${filesize};
loadall=run loaduEnvtxt; run loadximage; run loadxfdt;
enable_uboot_overlays=1
uboot_overlay_addr0=/lib/firmware/BB-I2C2-ADXL-00A0.dtbo
mmcargs=setenv bootargs console=tty0 console=${console} ${optargs} ${cape_disable} ${cape_enable} root=${mmcroot} rootfstype=${mmcrootfstype} ${cmdline}

uenvcmd=run loadall; run mmcargs; bootz ${loadaddr} - ${fdtaddr}

KERNEL LOGS
https://pastebin.com/VtWbGNsm

I had this impression that cat slots will not work, because it was removed from kernel, but if my dtbo is working but its working ny compatible string match via of_ mechanism.
My objective was to strip down the i2c driver to bare minimum and make it load at boot time using device tree overlay.
I do not see my driver loaded after doing lsmod. Nor the probe print I have put in adxl34x.c probe.

Where am I wrong here? What did I miss.
I am only following this
http://eewiki.net/display/linuxonarm/BeagleBone+Black

cat /boot/uEnv.txt

#Docs: http://elinux.org/Beagleboard:U-boot_partitioning_layout_2.0

uname_r=4.4.127-bone22
#uuid=
#dtb=

##BeagleBone Black/Green dtb’s for v4.1.x (BeagleBone White just works…)

##BeagleBone Black: HDMI (Audio/Video) disabled:
#dtb=am335x-boneblack-emmc-overlay.dtb

##BeagleBone Black: eMMC disabled:
#dtb=am335x-boneblack-hdmi-overlay.dtb

##BeagleBone Black: HDMI Audio/eMMC disabled:
#dtb=am335x-boneblack-nhdmi-overlay.dtb

##BeagleBone Black: HDMI (Audio/Video)/eMMC disabled:
#dtb=am335x-boneblack-overlay.dtb

##BeagleBone Black: wl1835
#dtb=am335x-boneblack-wl1835mod.dtb

##BeagleBone Green: eMMC disabled
#dtb=am335x-bonegreen-overlay.dtb

###U-Boot Overlays###
###Documentation: http://elinux.org/Beagleboard:BeagleBone_Debian_Image_Migration#U-Boot_Overlays
###Master Enable
enable_uboot_overlays=1
###Overide capes with eeprom
uboot_overlay_addr0=/lib/firmware/BB-I2C2-ADXL-00A0.dtbo
#uboot_overlay_addr1=/lib/firmware/.dtbo
#uboot_overlay_addr2=/lib/firmware/.dtbo
#uboot_overlay_addr3=/lib/firmware/.dtbo
###Custom Cape
#dtb_overlay=/lib/firmware/.dtbo
###Disable auto loading of virtual capes (emmc/video/wireless)
#disable_uboot_overlay_emmc=1
#disable_uboot_overlay_video=1
#disable_uboot_overlay_audio=1
#disable_uboot_overlay_wireless=1
###Cape Universal Enable
#enable_uboot_cape_universal=1
###U-Boot fdt tweaks…
#uboot_fdt_buffer=0x60000
###U-Boot Overlays###

cmdline=coherent_pool=1M net.ifnames=0 quiet cape_universal=enable

#In the event of edid real failures, uncomment this next line:
#cmdline=coherent_pool=1M net.ifnames=0 quiet cape_universal=enable video=HDMI-A-1:1024x768@60e

##Example v3.8.x
#cape_disable=capemgr.disable_partno=
#cape_enable=capemgr.enable_partno=

Used below uEnv.txt instead and overlay is added while booting

##Example v4.1.x
#cape_disable=bone_capemgr.disable_partno=
#cape_enable=bone_capemgr.enable_partno=

##enable Generic eMMC Flasher:
##make sure, these tools are installed: dosfstools rsync
#cmdline=init=/opt/scripts/tools/eMMC/init-eMMC-flasher-v3.sh

root@arm:~# /opt/scripts/tools/version.sh
git:/opt/scripts/:[ef2c5982e3788e07d9ec4a3d23089dc5e5a3f9cd]
eeprom:[A335BNLT00C05315BBBK054D]
model:[TI_AM335x_BeagleBone_Black]
bootloader:[microSD-(push-button)]:[/dev/mmcblk0]:[U-Boot 2018.03-dirty]
bootloader:[eMMC-(default)]:[/dev/mmcblk1]:[U-Boot 2015.01-00001-gb2412df]

eMMC bootloader is too old, nuke that..

kernel:[4.4.127-bone22]
device-tree-override:[loadxfdt=load mmc 0:1 ${fdtaddr}
/boot/dtbs/${uname_r}/${fdtfile}]
uboot_overlay_options:[enable_uboot_overlays=1]
uboot_overlay_options:[uboot_overlay_addr0=/lib/firmware/BB-I2C2-ADXL-00A0.dtbo
]
pkg:[bb-cape-overlays]:[4.4.20171207.0-0rcnee1~stretch+20171207]

OVERLAY FILE
/* * Copyright (C) 2013 CircuitCo * * Virtual cape for I2C2 on connector p - Pastebin.com

compiled overlay as
dtc -I dts -O dtb -o BB-I2C2-ADXL-00A0.dtbo -b 0 -@ BB-I2C2-ADXL-00A0.dts

kconfig file changes
config INPUT_ADXL34X tristate "Analog Devices ADXL34x Three-Axis Digital Accel - Pastebin.com

DRIVER FILE
adxl34x-i2c.c
/* * ADLX345/346 Three-Axis Digital Accelerometers (I2C Interface) * * Ent - Pastebin.com

adxl34x.c
/* * ADXL345/346 Three-Axis Digital Accelerometers * * Enter bugs at http: - Pastebin.com

uEnv.txt

Nuke this file, it disables the u-boot overlay path..

Regards,

Hi Robert,

Yes I have removed this uEnv.txt and used another one that is here,

https://pastebin.com/9zHdiHd0

Now I am able to load overlay at boot and my driver also gets loaded.
Just one thing I only see error logs in kernel boot up.