Касательно настройки pinmux, вот в этом
файлике, который можно найти и в вашем ядре, объявлены макросы для всех типовых функций пинов.
Формат там простой <mux_reg conf_reg input_reg mux_mode input_val>, то есть это первый источник информации, ищете указанный mux reg в manual, смотрите на значения, понимаете что оно делает. Но на самом деле имя каждого макроса уже содержит всю информацию.
Теперь, как найти нужный пин, так как в вышеуказанном файлике номера пинов не используются, надо найти каноническое имя пина в мануале и по этому имени и требуемой функции выбрать уже нужный макрос.
Например, возьмем MX6SL_PAD_AUD_MCLK__AUDIO_CLK_OUT. Этот макрос переводит пин AUD_MCLK в режим AUDIO_CLK_OUT
Далее, этот макрос используется в описании iomux, например вот в этом
файле есть такая секция в iomux:
pinctrl_audmux: audmuxgrp {
100 fsl,pins = <
101 MX6QDL_PAD_CSI0_DAT7__AUD3_RXD 0x130b0
102 MX6QDL_PAD_CSI0_DAT4__AUD3_TXC 0x130b0
103 MX6QDL_PAD_CSI0_DAT5__AUD3_TXD 0x110b0
104 MX6QDL_PAD_CSI0_DAT6__AUD3_TXFS 0x130b0
105 >;
106 };
Очевидно, что оно включает I2S на пинах CSI0_DAT7 и тд. Что же касается цифр после макроса (0x130b0), это режим пина - гистерезис, pullup/pulldown и тп., опять же вся инфа в мануале на чип
И вообще, вся вышенаписанная мудрость находится
тут, как использовать - грепается в ядре