Disable HDMI for gettin 20 more GPIOs - Angstrom Image 2013-06-06

Hi all,
In my post “GPIO on HDMI Pins - need tutorial” I got a great help from the group members here, so I’ll help those who have trouble with disabling the HDMI chip on the newest Angstrom image.

The idea is to get 20 additional GPIOs by disabling the HDMI chip without the need of writing a device tree or removing that chip physically (I’m kidding).
The solution is to add an additional argument to the file “uEnv.txt” that is on the boot partition of the eMMC. To access that file the partition must be mounted first by:

mount /dev/mmcblk0p1 /mnt/card
By typing cat /mnt/card/uEnv.txt you get:

optargs=quiet drm.debug=7

Adding “capemgr.disable_partno=BB-BONELT-HDMI” to the line will disable the HDMI chip at boot time.
The file content is now: optargs=quiet drm.debug=7 capemgr.disable_partno=BB-BONELT-HDMI

after that, reboot the bone.

With the former Angstrom Images that works fine. But with the newest one, automaticly BB-BONELT-HDMIN will be loaded after BB-BONELT-HDMI has been disabled**.**
This can be watched by: cd /sys/bus/platform/devices/bone_capemgr* and cat slots

0: 54:PF—
1: 55:PF—
2: 56:PF—
3: 57:PF—
4: ff:P-O-L 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-L Bone-Black-HDMIN,00A0,Texas Instrument,BB-BONELT-HDMIN

Now an additional slot appears: slot 6. HDMIN stands for “HDMI, No audio”. This SDT will automaticly loaded when the “normal” SDT fails! (since 2013-06-06)
P-O-L: SDT Loaded
P-O–: SDT Unloaded

The fix is very, very simple (but it has taken some time for me to find out - I never thought that it is sooo simple):

optargs=quiet drm.debug=7 capemgr.disable_partno=BB-BONELT-HDMI,BB-BONELT-HDMIN in uEnv.txt will do the job.

cd /sys/bus/platform/devices/bone_capemgr* and cat slots shows now:

0: 54:PF—
1: 55:PF—
2: 56:PF—
3: 57:PF—
4: ff:P-O-L 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

That’ s all :slight_smile:

+1

Oh, I forgot to mention, that this will work on more than just Angstrom. As I am pretty sure that Angstrom/Debian/Ubuntu use the same uboot Can not speak for other distro’s but it is possible.

In either case, this works on Debian as well.
login as: root
root@192.168.xxx.xxx’s password:
Linux arm 3.8.13-bone21 #1 SMP Sat Jun 15 19:36:33 MST 2013 armv7l

The programs included with the Debian GNU/Linux system are free software;
the exact distribution terms for each program are described in the
individual files in /usr/share/doc/*/copyright.

Debian GNU/Linux comes with ABSOLUTELY NO WARRANTY, to the extent
permitted by applicable law.
Last login: Sat Jan 1 00:00:48 2000 from 192.168.xxx.xxx
root@arm:~# cat /sys/bus/platform/devices/bone_capemgr.9/slots
0: 54:PF—
1: 55:PF—
2: 56:PF—
3: 57:PF—
4: ff:P-O-L 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

This work good and all, but when i try to boot the BBB while all the HDMI pins that i use as GPIO are pulldown to ground, the BBB fails boot.
it is just kind of lame that i have to unplug all those pins, boot up then plug all the pins in.
or am i just doing something wrong.

Hi,