Failed to start Cape Manager Service.

During boot I am getting a “Failed to start Cape Manager Service.” failure

I have a custom cape that gets loaded via /uEnv.txt along with BB_SPIDEV0, both show up in slots

my problem is that the disable for HDMI does not work as the pinmux still shows the hdmi pins as assigned.

OS Version
uname -r 4.1.38-bone-rt-r24

systemctl status capemgr.service -l

● capemgr.service - Cape Manager Service
Loaded: loaded (/lib/systemd/system/capemgr.service; enabled)
Active: failed (Result: exit-code) since Wed 2017-02-08 14:48:51 CST; 2min 44s ago
Process: 313 ExecStart=/bin/sh /opt/scripts/boot/capemgr.sh (code=exited, status=1/FAILURE)
Main PID: 313 (code=exited, status=1/FAILURE)

I have tried several different versions of the disable_partno I have found.
========= /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
optargs=quiet capemgr.disable_partno=BB-BONELT-HDMI,BB-BONELT-HDMIN
dtb=am335x-boneblack-emmc-overlay.dtb
cape_enable=bone_capemgr.enable_partno=BB-GPIO-1553,BB-SPIDEV0

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;

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};

See:

http://elinux.org/Beagleboard:BeagleBone_Debian_Image_Migration#Disabling_eMMC_or_HDMI

Regards,

I still get: [FAILED] Failed to start Cape Manager Service.

I did edit /uEnv.txt and /biit/uenv.txt while mounted:
mount /dev/mmcblk0p1 /mnt/card
did not look to matter.

? should it be bone_campmgr.partno or capemgr.enable_partno

I have seen/tried both

root@arm:~# locate am335x-boneblack-emmc-overlay.dtb
/boot/dtbs/4.1.38-bone-rt-r24/am335x-boneblack-emmc-overlay.dtb
/lib/firmware/am335x-boneblack-emmc-overlay.dtb

results of /cat/cmdline:
console=tty0 console=ttyO0,115200n8 bone_capemgr.enable_partno=BB-GPIO-1553,BB-SPIDEV0 root=/dev/mmcblk0p1 rootfstype=ext4 rootwait

the two capes do get enabled

0: PF---- -1
1: PF---- -1
2: PF---- -1
3: PF---- -1
4: P-O-L- 1 Override Board Name,00A0,Override Manuf,BB-GPIO-1553
5: P-O-L- 0 Override Board Name,00A0,Override Manuf,BB-SPIDEV0

root@arm:~# dmesg | grep cape
[ 0.000000] Kernel command line: console=tty0 console=ttyO0,115200n8 bone_capemgr.enable_partno=BB-GPIO-1553,BB-SPIDEV0 root=/dev/mmcblk0p1 rootfstype=ext4 rootwait
[ 1.892654] bone_capemgr bone_capemgr: Baseboard: ‘A335BNLT,00C0,5014BBBK0EE3’
[ 1.899969] bone_capemgr bone_capemgr: compatible-baseboard=ti,beaglebone-black - #slots=4
[ 1.935425] bone_capemgr bone_capemgr: slot #0: No cape found
[ 1.968423] bone_capemgr bone_capemgr: slot #1: No cape found
[ 2.001423] bone_capemgr bone_capemgr: slot #2: No cape found
[ 2.034423] bone_capemgr bone_capemgr: slot #3: No cape found
[ 2.040226] bone_capemgr bone_capemgr: enabled_partno PARTNO ‘BB-GPIO-1553’ VER ‘N/A’ PR ‘0’
[ 2.048738] bone_capemgr bone_capemgr: slot #4: override
[ 2.054098] bone_capemgr bone_capemgr: Using override eeprom data at slot 4
[ 2.061117] bone_capemgr bone_capemgr: slot #4: ‘Override Board Name,00A0,Override Manuf,BB-GPIO-1553’
[ 2.070576] bone_capemgr bone_capemgr: enabled_partno PARTNO ‘BB-SPIDEV0’ VER ‘N/A’ PR ‘0’
[ 2.078913] bone_capemgr bone_capemgr: slot #5: override
[ 2.084269] bone_capemgr bone_capemgr: Using override eeprom data at slot 5
[ 2.091288] bone_capemgr bone_capemgr: slot #5: ‘Override Board Name,00A0,Override Manuf,BB-SPIDEV0’
[ 2.100868] bone_capemgr bone_capemgr: initialized OK.
[ 3.120033] bone_capemgr bone_capemgr: slot #5: dtbo ‘BB-SPIDEV0-00A0.dtbo’ loaded; overlay id #0
[ 3.121768] bone_capemgr bone_capemgr: slot #4: dtbo ‘BB-GPIO-1553-00A0.dtbo’ loaded; overlay id #1
[ 13.125011] bone_capemgr bone_capemgr: part_number ‘BB-SPIDEV0’, version ‘N/A’
[ 13.168836] bone_capemgr bone_capemgr: slot #6: override
[ 13.185280] bone_capemgr bone_capemgr: Using override eeprom data at slot 6
[ 13.208576] bone_capemgr bone_capemgr: slot #6: ‘Override Board Name,00A0,Override Manuf,BB-SPIDEV0’
[ 13.241111] bone_capemgr bone_capemgr: slot #6: BB-SPIDEV0 conflict P9.17 (#5:BB-SPIDEV0)
[ 13.281946] bone_capemgr bone_capemgr: slot #6: Failed verification

pinmux-pins still show HDMI

pin 40 (44e108a0.0): hdmi (GPIO UNCLAIMED) function nxp_hdmi_bonelt_pins group nxp_hdmi_bonelt_pins
thru 59

My /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
#optargs=quiet capemgr.disable_partno=BB-BONELT-HDMI,BB-BONELT-HDMIN
#dtb=am335x-boneblack-emmc-overlay.dtb
#cape_enable=bone_capemgr.enable_partno=BB-GPIO-1553,BB-SPIDEV0

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;

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};

My /boot/uEnv.txt
uname_r=4.1.38-bone-rt-r24
dtb=am335x-boneblack-emmc-overlay.dtb
##cape_enable=bone_capemgr.enable_partno=BB-SPIDEV0
#cape_disable=bone_capemgr.disable_partno=BB-BONELT-HDMI,BB-BONELT-HDMIN
cape_enable=bone_capemgr.enable_partno=BB-GPIO-1553,BB-SPIDEV0
##cape_enable=bone_capemgr.enable_partno=BB-GPIO-1553CAPE,BB-SPI0-HI6138
##cmdline=bone_capemgr.disable_partno=BB-SPIDEV0,BB-BONELT-HDMI,BB-BONELT-HDMIN bone_capemgr.enable_partno=BB-GPIO-1553,BB-SPI0-HI6138
##works cmdline=bone_capemgr.disable_partno=BB-BONELT-HDMI,BB-BONELT-HDMIN bone_capemgr.enable_partno=BB-GPIO-1553,BB-SPIDEV0

BB-SPIDEV0 uses P9.17, dtb=am335x-boneblack-emmc-overlay.dtb doesn't
touch P9.17, thus "YOUR" BB-GPIO-1553 is taking P9.17..

You need to fix that..

Regards,

Out BB-GPIO-1553 does not use P9.17. If I remove the enable for SPIDEV0 from uEnv.txt, the capemgr error goes away, SPIDEV0 looks to load but does not work.

root@arm:~# dmesg | grep cape
[ 0.000000] Kernel command line: console=tty0 console=ttyO0,115200n8 bone_capemgr.enable_partno=BB-GPIO-1553 root=/dev/mmcblk0p1 rootfstype=ext4 rootwait
[ 1.896200] bone_capemgr bone_capemgr: Baseboard: ‘A335BNLT,00C0,5014BBBK0EE3’
[ 1.903513] bone_capemgr bone_capemgr: compatible-baseboard=ti,beaglebone-black - #slots=4
[ 1.939459] bone_capemgr bone_capemgr: slot #0: No cape found
[ 1.972456] bone_capemgr bone_capemgr: slot #1: No cape found
[ 2.005457] bone_capemgr bone_capemgr: slot #2: No cape found
[ 2.038456] bone_capemgr bone_capemgr: slot #3: No cape found
[ 2.044260] bone_capemgr bone_capemgr: enabled_partno PARTNO ‘BB-GPIO-1553’ VER ‘N/A’ PR ‘0’
[ 2.052770] bone_capemgr bone_capemgr: slot #4: override
[ 2.058131] bone_capemgr bone_capemgr: Using override eeprom data at slot 4
[ 2.065151] bone_capemgr bone_capemgr: slot #4: ‘Override Board Name,00A0,Override Manuf,BB-GPIO-1553’
[ 2.074844] bone_capemgr bone_capemgr: initialized OK.
[ 3.085095] bone_capemgr bone_capemgr: slot #4: dtbo ‘BB-GPIO-1553-00A0.dtbo’ loaded; overlay id #0
[ 16.968989] bone_capemgr bone_capemgr: part_number ‘BB-SPIDEV0’, version ‘N/A’
[ 17.012698] bone_capemgr bone_capemgr: slot #5: override
[ 17.035299] bone_capemgr bone_capemgr: Using override eeprom data at slot 5
[ 17.065605] bone_capemgr bone_capemgr: slot #5: ‘Override Board Name,00A0,Override Manuf,BB-SPIDEV0’
[ 17.135972] bone_capemgr bone_capemgr: slot #5: dtbo ‘BB-SPIDEV0-00A0.dtbo’ loaded; overlay id #1

Nor does it show up in pinmux:

pin 83 (44e1094c.0): 4a101000.mdio (GPIO UNCLAIMED) function davinci_mdio_default group davinci_mdio_default
pin 84 (44e10950.0): (MUX UNCLAIMED) (GPIO UNCLAIMED)
pin 85 (44e10954.0): (MUX UNCLAIMED) (GPIO UNCLAIMED)
pin 86 (44e10958.0): (MUX UNCLAIMED) (GPIO UNCLAIMED)
pin 87 (44e1095c.0): (MUX UNCLAIMED) (GPIO UNCLAIMED)
pin 88 (44e10960.0): 48060000.mmc (GPIO UNCLAIMED) function pinmux_mmc1_pins group pinmux_mmc1_pins

Did you actually try /dev/spidev*?

ps, you really should upgrade from: 4.1.38-bone-rt-r24 -> 4.4.x-bone-rt-ry

As there was a lot of fixes in 4.4.x

Regards,

Yes, I am developing a 1553 Cape that uses SPI. Have a Demo that works.
The demo says it initialized spi but no data is transferred.

I will up grade the kernel,
I will retry it to verify SPI

I am booting from the SD card, my uEnv.txt are on it. does something in the eMMC get run first??

BTW I am a newbie to Linuc/Beaglebone not to embedded Realtime.

Thanks for the help.

Why 4.4x vs some of the newer ones like 4.9.5 If I have to rebuild why not go to newer?
Or is 4.4 stable?

I retried leaving out SPIDEV0 and I do not get SPI 0.
When I add SPIDEV0 I get the metioned error.

Also, I am building 4.4.47-bone-rt- is there a recommented u-boot version to use?

Hello kevin,

I am using 4.1.38-bone-rt-r24,too for 1553 Driver code and I should use this kernel for Driver. Did you achieve disablining HDMI?

9 Şubat 2017 Perşembe 01:32:33 UTC+3 tarihinde kevin...@wintec-inc.com yazdı:

Hello Kevin,
I am using 4.1.33-bone-rt-r24 kernel for 1553 Drive,too . I should disable HDMI pin. Did you achive disabling HDMI pin ?

9 Şubat 2017 Perşembe 01:32:33 UTC+3 tarihinde kevin...@wintec-inc.com yazdı: