您好,我从kernel设备树配置GPIO 的pinmux没有生效。如下是我的配置代码:
//padctl_aon
pinmux@c7a2000 {
pinctrl-names = "default";
pinctrl-0 = <&pinmux_default_c7a2000>;
pinmux_default_c7a2000: common_c7a2000 {
tca9546_0_rst_pdd7 {
nvidia,pins = "soc_gpio25_pdd7";
nvidia,function = "rsvd0";
nvidia,pull = <TEGRA_PIN_PULL_UP>;
nvidia,tristate = <TEGRA_PIN_DISABLE>;
nvidia,enable-input = <TEGRA_PIN_DISABLE>;
nvidia,e-io-od = <TEGRA_PIN_DISABLE>;
nvidia,e-lpbk = <TEGRA_PIN_DISABLE>;
};
tca9546_1_rst_pdd5 {
nvidia,pins = "soc_gpio23_pdd5";
nvidia,function = "rsvd1";
nvidia,pull = <TEGRA_PIN_PULL_UP>;
nvidia,tristate = <TEGRA_PIN_DISABLE>;
nvidia,enable-input = <TEGRA_PIN_DISABLE>;
nvidia,e-io-od = <TEGRA_PIN_DISABLE>;
nvidia,e-lpbk = <TEGRA_PIN_DISABLE>;
};
};
};
root@tegra:/home/robot# cat /sys/kernel/debug/pinctrl/pinctrl-maps
Pinctrl maps:
device c7a2000.pinmux
state default
type MUX_GROUP (2)
controlling device c7a2000.pinmux
group soc_gpio23_pdd5
function rsvd1
device c7a2000.pinmux
state default
type CONFIGS_GROUP (4)
controlling device c7a2000.pinmux
group soc_gpio23_pdd5
config pull=2
config tristate=0
config enable-input=0
device c7a2000.pinmux
state default
type MUX_GROUP (2)
controlling device c7a2000.pinmux
group soc_gpio25_pdd7
function rsvd0
device c7a2000.pinmux
state default
type CONFIGS_GROUP (4)
controlling device c7a2000.pinmux
group soc_gpio25_pdd7
config pull=2
config tristate=0
config enable-input=0
但是无论我的配置是什么,linux操作GPIO的电平都没有变化.