|
修改设备树文件.dts如下:
#include "am437x-gp-evm.dts"
#include <dt-bindings/sound/sii9022-audio.h>
&am43xx_pinmux {
gpio1_pins: gpio1_pins {
pinctrl-single,pins = <
0x040 (PIN_OUTPUT_PULLUP | MUX_MODE7) /* gpio1_16 */
0x044 (PIN_OUTPUT_PULLUP | MUX_MODE7) /* gpio1_17 */
0x048 (PIN_OUTPUT_PULLUP | MUX_MODE7) /* gpio1_18 */
0x04C (PIN_OUTPUT_PULLUP | MUX_MODE7) /* gpio1_19 */
0x050 (PIN_OUTPUT_PULLUP | MUX_MODE7) /* gpio1_20 */
0x054 (PIN_OUTPUT_PULLUP | MUX_MODE7) /* gpio1_21 */
0x058 (PIN_OUTPUT_PULLUP | MUX_MODE7) /* gpio1_22 */
0x05C (PIN_OUTPUT_PULLUP | MUX_MODE7) /* gpio1_23 */
>;
};
gpio4_pins: gpio4_pins {
pinctrl-single,pins = <
0x1b0 (PIN_OUTPUT_PULLUP | MUX_MODE7) /* gpio4_0 */
0x1b4 (PIN_OUTPUT_PULLUP | MUX_MODE7) /* gpio4_1 */
0x1b8 (PIN_OUTPUT_PULLUP | MUX_MODE7) /* gpio4_2 */
0x1bc (PIN_OUTPUT_PULLUP | MUX_MODE7) /* gpio4_3 */
0x1c0 (PIN_OUTPUT_PULLUP | MUX_MODE7) /* gpio4_4 */
0x1c4 (PIN_OUTPUT_PULLUP | MUX_MODE7) /* gpio4_5 */
0x1c8 (PIN_OUTPUT_PULLUP | MUX_MODE7) /* gpio4_6 */
0x1cc (PIN_OUTPUT_PULLUP | MUX_MODE7) /* gpio4_7 */
0x1d0 (PIN_OUTPUT_PULLUP | MUX_MODE7) /* gpio4_8 */
0x1d4 (PIN_OUTPUT_PULLUP | MUX_MODE7) /* gpio4_9 */
0x1d8 (PIN_OUTPUT_PULLUP | MUX_MODE7) /* gpio4_10 */
0x1dc (PIN_OUTPUT_PULLUP | MUX_MODE7) /* gpio4_11 */
0x1e0 (PIN_OUTPUT_PULLUP | MUX_MODE7) /* gpio4_12 */
0x1e4 (PIN_OUTPUT_PULLUP | MUX_MODE7) /* gpio4_13 */
0x1e8 (PIN_OUTPUT_PULLUP | MUX_MODE7) /* gpio4_14 */
0x1ec (PIN_OUTPUT_PULLUP | MUX_MODE7) /* gpio4_15 */
0x1f0 (PIN_OUTPUT_PULLUP | MUX_MODE7) /* gpio4_16 */
0x1f4 (PIN_OUTPUT_PULLUP | MUX_MODE7) /* gpio4_17 */
0x1f8 (PIN_OUTPUT_PULLUP | MUX_MODE7) /* gpio4_18 */
0x1fc (PIN_OUTPUT_PULLUP | MUX_MODE7) /* gpio4_19 */
0x200 (PIN_OUTPUT_PULLUP | MUX_MODE7) /* gpio4_20 */
0x204 (PIN_OUTPUT_PULLUP | MUX_MODE7) /* gpio4_21 */
0x210 (PIN_OUTPUT_PULLUP | MUX_MODE7) /* gpio4_24 */
0x214 (PIN_OUTPUT_PULLUP | MUX_MODE7) /* gpio4_25 */
0x218 (PIN_OUTPUT_PULLUP | MUX_MODE7) /* gpio4_26 */
0x21c (PIN_OUTPUT_PULLUP | MUX_MODE7) /* gpio4_27 */
>;
};
};
&gpio1 {
pinctrl-names = "default", "sleep";
pinctrl-0 = <&gpio1_pins>;
status = "okay";
};
&gpio4 {
pinctrl-names = "default", "sleep";
pinctrl-0 = <&gpio4_pins>;
status = "okay";
};
重新编译内核及设备树
实际使用过程中,发现管脚gpio1[16]无法配置,配置命令行如下:
echo 48 > export
报错,设备忙,写入失败
配置gpio1[17]成功:
echo 49 > export
cd gpio49
echo "out" > direction
echo 1 > value
echo 0 > value
发现无法改变对应管脚的输出状态,请问问题出在哪里谢谢。
|
|