BB-BONE-LCD4-01 won't load on Linux 4.1

Hi!

I’m using https://github.com/RobertCNelson/bb.org-overlays’s
BB-BONE-LCD4-01 overlay.
On 3.8 from Debian 7.9 it works perfectly fine but on 4.1 from Debian
8.2 it won’t load.

root@beaglebone:~# echo "BB-BONE-LCD4-01" >
/sys/devices/platform/bone_capemgr/slots
-bash: echo: write error: No such file or directory
/lib/firmware/BB-BONE-LCD4-01-00A1.dtbo *is* present.

dmesg also does not help:
[ 32.040385] bone_capemgr bone_capemgr: part_number
'BB-BONE-LCD4-01', version 'N/A'
[ 32.040435] bone_capemgr bone_capemgr: slot #5: override
[ 32.040456] bone_capemgr bone_capemgr: Using override eeprom data at slot 5
[ 32.040478] bone_capemgr bone_capemgr: slot #5: 'Override Board
Name,00A0,Override Manuf,BB-BONE-LCD4-01'

Before I dive into kernel internals, is this a known regression?

Hi!

I'm using https://github.com/RobertCNelson/bb.org-overlays’s

Please only use:

my personal one is not always in sync, (just pull/pushed out to rsync,
but shouldn't affect you)

BB-BONE-LCD4-01 overlay.
On 3.8 from Debian 7.9 it works perfectly fine but on 4.1 from Debian
8.2 it won't load.

root@beaglebone:~# echo "BB-BONE-LCD4-01" >
/sys/devices/platform/bone_capemgr/slots
-bash: echo: write error: No such file or directory
/lib/firmware/BB-BONE-LCD4-01-00A1.dtbo *is* present.

dmesg also does not help:
[ 32.040385] bone_capemgr bone_capemgr: part_number
'BB-BONE-LCD4-01', version 'N/A'
[ 32.040435] bone_capemgr bone_capemgr: slot #5: override
[ 32.040456] bone_capemgr bone_capemgr: Using override eeprom data at slot 5
[ 32.040478] bone_capemgr bone_capemgr: slot #5: 'Override Board
Name,00A0,Override Manuf,BB-BONE-LCD4-01'

dmesg | grep bone ?

Coulpe known issues,

cat /proc/cmdline | grep quiet

(doesn't work without quiet)

Did you disable hdmi?

The readme: bb.org-overlays/readme.md at master · beagleboard/bb.org-overlays · GitHub

dtb=am335x-boneblack-emmc-overlay.dtb

Regards,

Robert,

thanks for your quick reply!

Hi!

I'm using https://github.com/RobertCNelson/bb.org-overlays’s

Please only use:

GitHub - beagleboard/bb.org-overlays: Device Tree Overlays for bb.org boards

noted.

my personal one is not always in sync, (just pull/pushed out to rsync,
but shouldn't affect you)

BB-BONE-LCD4-01 overlay.
On 3.8 from Debian 7.9 it works perfectly fine but on 4.1 from Debian
8.2 it won't load.

root@beaglebone:~# echo "BB-BONE-LCD4-01" >
/sys/devices/platform/bone_capemgr/slots
-bash: echo: write error: No such file or directory
/lib/firmware/BB-BONE-LCD4-01-00A1.dtbo *is* present.

dmesg also does not help:
[ 32.040385] bone_capemgr bone_capemgr: part_number
'BB-BONE-LCD4-01', version 'N/A'
[ 32.040435] bone_capemgr bone_capemgr: slot #5: override
[ 32.040456] bone_capemgr bone_capemgr: Using override eeprom data at slot 5
[ 32.040478] bone_capemgr bone_capemgr: slot #5: 'Override Board
Name,00A0,Override Manuf,BB-BONE-LCD4-01'

dmesg | grep bone ?

No grep. I did a dmesg -c and then ran the echo command.

Coulpe known issues,

cat /proc/cmdline | grep quiet

(doesn't work without quiet)

root@beaglebone:~# cat /proc/cmdline
console=tty0 console=ttyO0,115200n8
bone_capemgr.enable_partno=BB-BONE-LCD4-01 root=/dev/mmcblk0p2
rootfstype=ext4 rootwait coherent_pool=1M quiet cape_universal=enable

So, "quiet" has to be present? Ok, it is.

Did you disable hdmi?

The readme: bb.org-overlays/readme.md at master · beagleboard/bb.org-overlays · GitHub

dtb=am335x-boneblack-emmc-overlay.dtb

Yes.

See:
root@beaglebone:~# cat /sys/devices/platform/bone_capemgr/slots
0: PF---- -1
1: PF---- -1
2: PF---- -1
3: PF---- -1

Robert,

thanks for your quick reply!

Hi!

I'm using https://github.com/RobertCNelson/bb.org-overlays’s

Please only use:

GitHub - beagleboard/bb.org-overlays: Device Tree Overlays for bb.org boards

noted.

my personal one is not always in sync, (just pull/pushed out to rsync,
but shouldn't affect you)

BB-BONE-LCD4-01 overlay.
On 3.8 from Debian 7.9 it works perfectly fine but on 4.1 from Debian
8.2 it won't load.

root@beaglebone:~# echo "BB-BONE-LCD4-01" >
/sys/devices/platform/bone_capemgr/slots
-bash: echo: write error: No such file or directory
/lib/firmware/BB-BONE-LCD4-01-00A1.dtbo *is* present.

dmesg also does not help:
[ 32.040385] bone_capemgr bone_capemgr: part_number
'BB-BONE-LCD4-01', version 'N/A'
[ 32.040435] bone_capemgr bone_capemgr: slot #5: override
[ 32.040456] bone_capemgr bone_capemgr: Using override eeprom data at slot 5
[ 32.040478] bone_capemgr bone_capemgr: slot #5: 'Override Board
Name,00A0,Override Manuf,BB-BONE-LCD4-01'

dmesg | grep bone ?

No grep. I did a dmesg -c and then ran the echo command.

can you dump your full dmesg to pastebin.com

dmesg | pastebinit

Coulpe known issues,

cat /proc/cmdline | grep quiet

(doesn't work without quiet)

root@beaglebone:~# cat /proc/cmdline
console=tty0 console=ttyO0,115200n8
bone_capemgr.enable_partno=BB-BONE-LCD4-01 root=/dev/mmcblk0p2
rootfstype=ext4 rootwait coherent_pool=1M quiet cape_universal=enable

So, "quiet" has to be present? Ok, it is.

Yeap looks fine.. most LCD4's have eeprom, so you don't need the enable_partno..

The "cape_universal=enable" could get in the way

Did you disable hdmi?

The readme: bb.org-overlays/readme.md at master · beagleboard/bb.org-overlays · GitHub

dtb=am335x-boneblack-emmc-overlay.dtb

Yes.

See:
root@beaglebone:~# cat /sys/devices/platform/bone_capemgr/slots
0: PF---- -1
1: PF---- -1
2: PF---- -1
3: PF---- -1

Sadily, in 4.1.x, we don't have a good way to show it's disable, so as
long as you have:

dtb=am335x-boneblack-emmc-overlay.dtb

in /boot/uEnv.txt

that part is good..

Regards,

There you go:
http://paste.debian.net/352277/

And the same after trying to load the cape by hand:
root@beaglebone:~# echo "BB-BONE-LCD4-01" >
/sys/devices/platform/bone_capemgr/slots
-bash: echo: write error: No such file or directory

http://paste.debian.net/352278/