Search code examples
debianbeagleboneblackgpiobeagleboard

Enable all GPIO pins on BeagleBone, including the eMMC pins


I'm running Debian Jessie IOT image on a BeagleBone Green. I like to use the maximum of GPIOs, which is according to the documentation should give me 65 GPIOs. GPIOs on BeagleBone Green

All work except the pins that are shared with the eMMC: P8_3-6, P8_20-25

So this works:

config-pin -a P8_7 in+

This does not work:

config-pin -a P8_22 in+

bash: /sys/devices/platform/ocp/ocp*P8_22_pinmux/state: No such file or directory 
Cannot write pinmux file: /sys/devices/platform/ocp/ocp*P8_22_pinmux/state

Some information.....

root@beaglebone:~# cat /sys/devices/platform/bone_capemgr/slots
0: PF----  -1
1: PF----  -1
2: PF----  -1
3: PF----  -1
4: P-O-L-   0 Override Board Name,00A0,Override Manuf,cape-universala

cape-universala should export all pins in dmesg is....

 [    4.002843] pinctrl-single 44e10800.pinmux: pin 44e10814.0 already requested by 481d8000.mmc; cannot claim for ocp:P8_22_pinmux
 [    4.014528] pinctrl-single 44e10800.pinmux: pin-5 (ocp:P8_22_pinmux) status -22
 [    4.021901] pinctrl-single 44e10800.pinmux: could not request pin 5 (44e10814.0) from group pinmux_P8_22_default_pin  on device pinctrl-single
 [    4.034756] bone-pinmux-helper ocp:P8_22_pinmux: Error applying setting, reverse things back
 [    4.089416] pinctrl-single 44e10800.pinmux: pin 44e10814.0 already requested by 481d8000.mmc; cannot claim for ocp:P8_22_pinmux
 [    4.101069] pinctrl-single 44e10800.pinmux: pin-5 (ocp:P8_22_pinmux) status -22

I can't seem to disable the eMMC, this is /boot/uEnv.txt

  cmdline=coherent_pool=1M net.ifnames=0 quiet cape_enable=bone_capemgr.enable_partno=cape-universala cape_disable=bone_capemgr.disable_partno=BB-BONE-EMMC-2G

I am booting the BeagleBone from an sd-card, so the eMMC don't have to be used.

what's wrong?


Solution

  • I turns out I was looking to hard... This is how to use all of the available GPIO pins:

      root@beaglebone:~# more /boot/uEnv.txt | grep -v '#'
      uname_r=4.4.91-ti-r133
      dtb=am335x-boneblack-overlay.dtb
      cmdline=coherent_pool=1M net.ifnames=0 quiet
    

    that's it!