tee: /sys/class/gpio/export: 无效的参数

tee: /sys/class/gpio/export: 无效的参数

Hello @xiangpengDeng

请把问题描述清楚点,具体的操作是什么?不然没办法很好的解决你的问题。

按照VIM3的引脚表在终端输入
$ echo 465 | sudo tee /sys/class/gpio/export
没有问题
输入 $ echo 506 | sudo tee /sys/class/gpio/export 会报tee: /sys/class/gpio/export: 无效的参数
并且没有文件产生
$ echo 426 | sudo tee /sys/class/gpio/export
$ echo out | sudo tee /sys/class/gpio/gpio426/direction
$ echo 1 | sudo tee /sys/class/gpio/gpio426/value # Set GPIO output high
可以生效,但是GPIO不能输出高电平

@numbqq
按照VIM3的引脚表在终端输入
$ echo 465 | sudo tee /sys/class/gpio/export
没有问题
输入 $ echo 506 | sudo tee /sys/class/gpio/export 会报tee: /sys/class/gpio/export: 无效的参数
并且没有文件产生
$ echo 426 | sudo tee /sys/class/gpio/export
$ echo out | sudo tee /sys/class/gpio/gpio426/direction
$ echo 1 | sudo tee /sys/class/gpio/gpio426/value # Set GPIO output high
可以生效,但是GPIO不能输出高电平

Hello @xiangpengDeng

你用的是哪个固件?

@ivan.li 帮忙确认下这个问题。

@numbqq
系统用的是 VIM3_Ubuntu-gnome-focal_Linux-4.9_arm64_EMMC_V1.0.9-211217.img

@ivan.li 是固件的问题吗?重新安装系统?

@xiangpengDeng 这边确认一些问题,稍后给你提供解决方案。

@xiangpengDeng

这个引脚默认是被占用的。你可以修改设备树,解决这个问题(方法如下)
文件路径:arch/arm64/boot/dts/amlogic/kvim3_linux.dts
修改内容:(注释下面两行)

//      pinctrl-0 = <&spdifout>;
//      pinctrl-1 = <&spdifout_a_mute>;

这个引脚是开漏输出,所以控制输出高电平时引脚既不输出高电平,也不输出低电平,为高阻态。

好的 ,谢谢 稍后我根据您的回复修改下,谢谢 @ivan.li