Cape Bacon & device tree issue on a BBB with 3.8.13 kernel

Hello,

I would like to add a Cape Bacon on a BBB rev A6 but I can’t load & use the specific device tree for this cape.

I’m using Debian 7.9 for BBB on uSDCard.

root@beaglebone:~# uname -a

Linux beaglebone 3.8.13-bone79 #1 SMP Tue Oct 13 20:44:55 UTC 2015 armv7l GNU/Linux

I’ve disabled HDMI & eMMC to prevent any I/O conflict since Cape Bacon uses gpio4, gpio5…

My serial EEPROM on the Cape Bacon is empty (i.e. filled with 0xFF values), I don’t know why.

Slots seem to be ok.

root@beaglebone:~# cat /sys/devices/bone_capemgr.9/slots

0: 54:PF—

1: 55:PF—

2: 56:PF—

3: 57:PF—

4: ff:P-O-- Bone-LT-eMMC-2G,00A0,Texas Instrument,BB-BONE-EMMC-2G

5: ff:P-O-- Bone-Black-HDMI,00A0,Texas Instrument,BB-BONELT-HDMI

6: ff:P-O-- Bone-Black-HDMIN,00A0,Texas Instrument,BB-BONELT-HDMIN

7: ff:P-O-L Override Board Name,00A0,Override Manuf,BB-BONE-BACONE

The BB-BONE-BACONE-00A0.dtbo seems to be loaded

dmesg | grep cape

[ 0.000000] Kernel command line: console=tty0 console=ttyO0,115200n8 capemgr.disable_partno=BB-BONELT-HDMI,BB-BONELT-HDMIN,BB-BONE-EMMC-2G root=/dev/mmcblk0p1 rootfstype=ext4 rootwait coherent_pool=1M quiet init=/lib/systemd/systemd cape_universal=enable

[ 0.875286] bone-capemgr bone_capemgr.9: Baseboard: ‘A335BNLT,00A6,4913BBBK0700’

[ 0.875326] bone-capemgr bone_capemgr.9: compatible-baseboard=ti,beaglebone-black

[ 0.875372] bone-capemgr bone_capemgr.9: Skipping disabled cape with part# BB-BONE-EMMC-2G

[ 0.875419] bone-capemgr bone_capemgr.9: Skipping disabled cape with part# BB-BONELT-HDMI

[ 0.875504] bone-capemgr bone_capemgr.9: Skipping disabled cape with part# BB-BONELT-HDMIN

[ 0.906506] bone-capemgr bone_capemgr.9: slot #0: No cape found

[ 0.943614] bone-capemgr bone_capemgr.9: slot #1: No cape found

[ 0.980722] bone-capemgr bone_capemgr.9: slot #2: No cape found

[ 1.017831] bone-capemgr bone_capemgr.9: slot #3: No cape found

[ 1.024099] bone-capemgr bone_capemgr.9: slot #4: specific override

[ 1.024137] bone-capemgr bone_capemgr.9: bone: Using override eeprom data at slot 4

[ 1.024164] bone-capemgr bone_capemgr.9: slot #4: ‘Bone-LT-eMMC-2G,00A0,Texas Instrument,BB-BONE-EMMC-2G’

[ 1.024298] bone-capemgr bone_capemgr.9: slot #5: specific override

[ 1.024329] bone-capemgr bone_capemgr.9: bone: Using override eeprom data at slot 5

[ 1.024354] bone-capemgr bone_capemgr.9: slot #5: ‘Bone-Black-HDMI,00A0,Texas Instrument,BB-BONELT-HDMI’

[ 1.024492] bone-capemgr bone_capemgr.9: slot #6: specific override

[ 1.024522] bone-capemgr bone_capemgr.9: bone: Using override eeprom data at slot 6

[ 1.024547] bone-capemgr bone_capemgr.9: slot #6: ‘Bone-Black-HDMIN,00A0,Texas Instrument,BB-BONELT-HDMIN’

[ 1.024818] bone-capemgr bone_capemgr.9: Skipping loading of disabled cape with part# BB-BONE-EMMC-2G

[ 1.024842] bone-capemgr bone_capemgr.9: Skipping loading of disabled cape with part# BB-BONELT-HDMI

[ 1.024862] bone-capemgr bone_capemgr.9: Skipping loading of disabled cape with part# BB-BONELT-HDMIN

[ 1.024880] bone-capemgr bone_capemgr.9: initialized OK.

[ 10.532360] bone-capemgr bone_capemgr.9: part_number ‘BB-BONE-BACONE’, version ‘N/A’

[ 10.532424] bone-capemgr bone_capemgr.9: slot #7: generic override

[ 10.532436] bone-capemgr bone_capemgr.9: bone: Using override eeprom data at slot 7

[ 10.532448] bone-capemgr bone_capemgr.9: slot #7: ‘Override Board Name,00A0,Override Manuf,BB-BONE-BACONE’

[ 10.532536] bone-capemgr bone_capemgr.9: slot #7: Requesting part number/version based 'BB-BONE-BACONE-00A0.dtbo

[ 10.532547] bone-capemgr bone_capemgr.9: slot #7: Requesting firmware ‘BB-BONE-BACONE-00A0.dtbo’ for board-name ‘Override Board Name’, version ‘00A0’

[ 10.532569] bone-capemgr bone_capemgr.9: slot #7: dtbo ‘BB-BONE-BACONE-00A0.dtbo’ loaded; converting to live tree

[ 10.532983] bone-capemgr bone_capemgr.9: slot #7: #7 overlays

[ 10.621483] bone-capemgr bone_capemgr.9: slot #7: Applied #7 overlays.

Everything looks fine but the device tree is not loaded

All suggestions are welcome !

Many thanks,
Regards

YA

Are you sure?

"bone-capemgr bone_capemgr.9: slot #7: Applied #7 overlays."

Looks loaded to me..

What are you expecting?

Regards,

Hello Robert,

Many thanks for your prompt reply.

I would like to set the gpio4 & gpio5 (normally used for eMMC) as an output but the logic level remains 0 even after echo 1 > value.

Regards,
YA

So what do those pins have to do with the bacon cape?

https://github.com/beagleboard/devicetree-source/blob/master/arch/arm/boot/dts/BB-BONE-BACONE-00A0.dts

Did you define them??

Regards,

Sorry I would like to say gpio0_5 (P9.17) and gpio0_4 (P9.18).

“P9.17”, /* shift: gpio0_5 LATCH /
“P9.18”, /
shift: gpio0_4 SERIAL */

These pins remain at 0 logic level.
YA

gpio0_4, gpio0_5, not gpio4/gpio5 that's another bank..

should be already exported..

Regards

You are right, I’ve done a mess with the I/O, Cape Bacon is now up and running !

Many thanks for your help and for your amazing contribution to Linux for BBB.

Kind regards,
YA

Many thanks for your help and for your amazing contribution to Linux for BBB.

Maybe nitpicking, and a point that perhaps Robert does not care to toot his own horn over . . . But Robert contributes to Linux for far more than just the BBB. In the context of beagle hardware, probably 5-6 boards alone . . .Overall, I’d guess at 20-30 unique boards, but possibly more . . .

Hi Williams,

I totally agree with you, thanks for your comment.

Cheers,
YA