Google Groups

Re: GPIO use


samsou...@gmail.com Mar 26, 2012 8:14 PM
Posted in group: pandaboard
I am having the same problem. I changed the files as you mentioned but what do I do from here? How do I get the file compiled and installed?

On Wednesday, March 14, 2012 2:14:40 PM UTC-5, qua...@gmail.com wrote:
Mux probably means "Pins Multiplexing"

see: http://elinux.org/BeagleBoardPinMux

Details of OMAP35x PinMux can be found in OMAP35x Applications Processor TRM (spruf98u.pdf) in section 7.4.4.3 Pad Multiplexing Register Fields (page 782)


I created initalization part for GPIO. When I tried to show GPIO status via "cat /sys/kernel/debug/gpio" I saw this:

GPIOs 32-63, gpio:

gpio-32 (pandaboard_exp_menu ) in hi

gpio-33 (pandaboard_exp_volup) in hi

gpio-36 (pandaboard_exp_power) in hi

gpio-37 (pandaboard_exp_voldw) in lo

gpio-38 (pandaboard_exp_back ) in lo


I was not able to control gpio-37 and gpio-38 (low state).

If you have some similar problem with addressing of GPIO you must add some snipped to board-omap4panda.c file.


find (board-omap4panda.c):

#ifdef CONFIG_OMAP_MUX

static struct omap_board_mux board_mux[] __initdata = {


and append code like this:


/** GPIO Expansion board */

// AD12 - GPIO 36 - HOME

OMAP4_MUX(GPMC_AD12, OMAP_PIN_INPUT | OMAP_MUX_MODE3),

// AD08 - GPIO 32 - MENU

OMAP4_MUX(GPMC_AD8, OMAP_PIN_INPUT | OMAP_MUX_MODE3),

// AD14 - GPIO 38 - BACK

OMAP4_MUX(GPMC_AD14, OMAP_PIN_INPUT | OMAP_MUX_MODE3),

// AD09 - GPIO 33 - VOLUME_UP

OMAP4_MUX(GPMC_AD9, OMAP_PIN_INPUT | OMAP_MUX_MODE3),

// AD13 - GPIO 37 - VOLUME_DOWN

OMAP4_MUX(GPMC_AD13, OMAP_PIN_INPUT | OMAP_MUX_MODE3),


Note: This snipped is from my configuration for chipsee expansion board.