> It would be great if someone can point me out to the values.
I don't have the manual for the chip you have, so I'm looking in the IMX6SDLRM manual, which is similar, but different.
When trying to find stuff in a Reference Manual with over 5000 pages, "Search" is your friend.
So search for "EPDC_DATA07" or "GPIO1_IO14" in the Reference Manual and you'll soon end up looking at relevant tables.
Then you're looking to get to the right section of the IOMUX Controller chapter, and find the register referenced above.
In my manual, for a register like "IOMUXC_SW_PAD_CTL_PAD_EIM_RW", 0x110b0 would mean:
- 0x1****: Hysteresys
- 0x*1***: PUS=00 (100k pulldown), PUE=0, PKE=1 (KEEP enabled, PULL not)
- 0x**0**: ODE=0, not open-drain
- 0x***b0: Medium Speed, 40 ohm, slow slew
It is disappointing that they're using "magic hex numbers" rather than using proper definitions for these bitfields.
This is what those definitions look like in Linux.2.6.35 for the i.MX53:
#define MX53_GPIO_PAD_CTRL (PAD_CTL_PKE | PAD_CTL_PUE | \
PAD_CTL_DSE_HIGH | PAD_CTL_PUS_22K_UP)
#define TX53_SDHC_PAD_CTRL (PAD_CTL_HYS | PAD_CTL_DSE_HIGH | \
PAD_CTL_SRE_FAST | PAD_CTL_PUS_100K_DOWN)
/* I2C */
NEW_PAD_CTRL(MX53_PAD_EIM_D28__I2C1_SDA, MX53_GPIO_PAD_CTRL),
NEW_PAD_CTRL(MX53_PAD_EIM_D21__I2C1_SCL, MX53_GPIO_PAD_CTRL),
/* CSPI (LCD) */
NEW_PAD_CTRL(MX53_PAD_SD1_CMD__CSPI_MOSI, TX53_SDHC_PAD_CTRL),
NEW_PAD_CTRL(MX53_PAD_SD1_CLK__CSPI_SCLK, TX53_SDHC_PAD_CTRL),
It is easy to make this understandable in "C". Maybe the "magic numbers" are one of the disadvantages of the Device Tree. It may be too primitive as a "language" to allow a clear description of the hardware.
Tom