Cape manager issue: can't load dtb overlays Ubuntu

This is my dmesg:

[ 1.159567] bone-capemgr bone_capemgr.9: Baseboard: ‘A335BNLT,000C,3114BBBK0245’
[ 1.167358] bone-capemgr bone_capemgr.9: compatible-baseboard=ti,beaglebone-black
[ 1.206265] bone-capemgr bone_capemgr.9: slot #0: No cape found
[ 1.243371] bone-capemgr bone_capemgr.9: slot #1: No cape found
[ 1.280479] bone-capemgr bone_capemgr.9: slot #2: No cape found
[ 1.317590] bone-capemgr bone_capemgr.9: slot #3: No cape found
[ 1.323831] bone-capemgr bone_capemgr.9: slot #4: specific override
[ 1.330430] bone-capemgr bone_capemgr.9: bone: Using override eeprom data at slot 4
[ 1.338474] bone-capemgr bone_capemgr.9: slot #4: ‘Bone-LT-eMMC-2G,00A0,Texas Instrument,BB-BONE-EMMC-2G’
[ 1.348586] bone-capemgr bone_capemgr.9: slot #5: specific override
[ 1.355180] bone-capemgr bone_capemgr.9: bone: Using override eeprom data at slot 5
[ 1.363224] bone-capemgr bone_capemgr.9: slot #5: ‘Bone-Black-HDMI,00A0,Texas Instrument,BB-BONELT-HDMI’
[ 1.373527] bone-capemgr bone_capemgr.9: loader: before slot-4 BB-BONE-EMMC-2G:00A0 (prio 1)
[ 1.382412] bone-capemgr bone_capemgr.9: loader: check slot-4 BB-BONE-EMMC-2G:00A0 (prio 1)
[ 1.391209] bone-capemgr bone_capemgr.9: initialized OK.
[ 1.396806] bone-capemgr bone_capemgr.9: loader: before slot-5 BB-BONELT-HDMI:00A0 (prio 1)
[ 1.405576] bone-capemgr bone_capemgr.9: loader: check slot-5 BB-BONELT-HDMI:00A0 (prio 1)
[ 1.415533] OneNAND driver initializing
[ 1.420367] usbcore: registered new interface driver cdc_ether
[ 1.426577] usbcore: registered new interface driver rndis_host
[ 1.432877] bone-capemgr bone_capemgr.9: loader: after slot-4 BB-BONE-EMMC-2G:00A0 (prio 1)
[ 1.441663] bone-capemgr bone_capemgr.9: loader: after slot-5 BB-BONELT-HDMI:00A0 (prio 1)
[ 1.450432] usbcore: registered new interface driver cdc_ncm

This is what slots look like:

ubuntu@ubuntu-armhf:~$ cat $SLOTS
0: 54:PF—
1: 55:PF—
2: 56:PF—
3: 57:PF—

Where did 4 and 5 go???

Why do I get a failure to resolve device tree if I attempt to load an overlay?

ubuntu@ubuntu-armhf:~$ uname -a
Linux ubuntu-armhf 3.8.13-bone20 #1 SMP Wed May 29 10:49:26 UTC 2013 armv7l armv7l armv7l GNU/Linux

uEnv.txt:

ubuntu@ubuntu-armhf:/boot/uboot$ cat uEnv.txt
optargs=fixrtc
cape_enable=capemgr.enable_partno=BB-BONE-PRU-01
loadfdt=ext4load mmc ${mmcdev}:2 ${fdtaddr} /boot/dtbs/${fdtfile}
loaduimage=mw.l 4804c134 fe1fffff; if ext4load mmc 0:2 ${loadaddr} /boot/zImage; then mw.l 4804c194 01200000; echo Booting from external microSD…; setenv mmcdev 0; else setenv mmcdev 1; if test $mmc0 = 1; then setenv mmcroot /dev/mmcblk1p2 rw; fi; ext4load mmc 1:2 ${loadaddr} /boot/zImage && mw.l 4804c194 00c00000; echo Booting from internal eMMC…; fi
mmcboot=run mmcargs; bootz ${loadaddr} - ${fdtaddr}
uenvcmd=i2c mw 0x24 1 0x3e; run findfdt; if test $board_name = A335BNLT; then setenv mmcdev 1; mmc dev ${mmcdev}; if mmc rescan; then setenv mmc1 1; else setenv mmc1 0; fi; fi; setenv mmcdev 0; mmc dev ${mmcdev}; if mmc rescan; then setenv mmc0 1; else setenv mmc0 0; fi; run loaduimage && run loadfdt && run mmcboot

This is using a boot off sd card. When using the shipped eprom debian system(3.8.13 bone48, the slots file looks correct and I can load overlays. So I am guessing it is something in the 3.8.13-bone20 image. Is there a stable Ubuntu using a kernel that supports cape manager? I’d really like to do PWM off the GPIO pins.

There always was an image:

http://elinux.org/BeagleBoardUbuntu

You just chose the wrong initial image when you searched google..

Regards,

Unfortunately I need to run ubuntu 12.04 or 13.04 for my other projects.(ROS Hydro) Do you know of a Image that has those requirements?

Nope, not from me, i don't have the resources to support every known
variant, besdies 13.04 is end of life.

I have 14.04 + 14.10, with the kernel you need.. It's up to you to fix
"ROS Hydro"...

Otherwise, good luck!

Regards,

Hey Thanks - I’ll give 14.04 a try. 13.04 loads the capes, but doesn’t unload them, and I get segfaults when I try to run some of the Forest Project exercises. “You gotta suffer if you wanna sing the blues.”

Just map "unload" to "reboot" and it'll work everytime..

Hint... unloading is not supported..

Regards,

hmm echo -8 > $SLOTS only works for certain kernels?

It's not "100%" reliable across "every" cape/peripheral. Patches are
welcome to fix it, but it would best to work on something else.

Regards,