大家好,最近在调试一块am437x的板子,遇到如下问题:
我需要将这两个脚设置为GPIO,如下:
在设备树里将原来的配置注释掉,重新配置为GPIO:
/*
clkout2_pin: clkout2_pin {
pinctrl-single,pins = <
0x274 (PIN_OUTPUT_PULLUP | MUX_MODE3)
>;
};
pinctrl-single,pins = <
0x274 (PIN_OUTPUT_PULLUP | MUX_MODE3)
>;
};
clkout1_pin: clkout1_pin {
pinctrl-single,pins = <
0x270 (PIN_OUTPUT_PULLUP | MUX_MODE3)
>;
};
*/
0x270 ( PIN_INPUT_PULLUP | MUX_MODE9 ) /* (D24) xdma_event_intr0.gpio5[28] */
0x274 ( PIN_INPUT_PULLUP | MUX_MODE9 ) /* (C24) xdma_event_intr1.gpio5[29] */
但内核跑起来后,这两个脚仍然会输出时钟信号,是不是我还有哪里没有修改到呢?
Denny%20Yang99373:
看看其他的地方有没有配?或者你的修改有没有编译进去?
user4953334:
回复 Denny%20Yang99373:
其他地方我也有查过,都没有了,
编译是肯定编译进去了,因为我还有用到其他的io脚,其他的配置都生效了,就这两个脚不行。
Eggsy Pang:
试一下这个
clkout1_pin: clkout1_pin {
pinctrl-single,pins = <
0x274 (PIN_OUTPUT_PULLUP | MUX_MODE3)
0x270 (PIN_OUTPUT_PULLUP | MUX_MODE3)>;};
…..
&gpio0{ pinctrl-names = "default"; pinctrl-0 = <&clkout1_pin>; status = "okay"; ti,no-reset-on-init;
};