I have a question regarding AM335X pin muxing. We wanted to mux pins for I2C for the custom board that we are making. We found form the linux board file of the evm that SCL (clock of I2C which is an output) was configured as input with pull up enabled whereas it is a clock and it is output
static struct pinmux_config i2c1_pin_mux[] = {
{"spi0_d1.i2c1_sda", OMAP_MUX_MODE2 | AM33XX_SLEWCTRL_SLOW |
AM33XX_PULL_ENBL | AM33XX_INPUT_EN},
{"spi0_cs0.i2c1_scl", OMAP_MUX_MODE2 | AM33XX_SLEWCTRL_SLOW |
AM33XX_PULL_ENBL | AM33XX_INPUT_EN},
{NULL, 0},
};
The LCD pins were however muxed properly as output as below (only one pin shown)
"lcd_data3.lcd_data3", OMAP_MUX_MODE0 | AM33XX_PIN_OUTPUT
| AM33XX_PULL_DISA},
My question is why is the I2C configured as input even though it is an output. If it is an exception are there other pins with such exception