您尚未登录。

楼主 # 2024-08-30 12:47:00

microxp
会员
注册时间: 2021-04-27
已发帖子: 76
积分: 124

linux 6怎么操作全志的GPIO呢?

原来操作文件的方式已经被废弃了,现在的设备树文件该怎么写?
我看网上有的是用onewire驱动来实现的,除了1wire,有没有什么其他的驱动可以用?

    onewire@0 {
                compatible = "w1-gpio";
                pinctrl-names = "default";
                pinctrl-0 = <&w1_pins>;
                gpios = <&pio 8 15 0>; /* PI15 */
                status = "okay";
            };

没用过这种方式,能不能在6.0内核下使用古老的操作文件的方式来控制管脚

最近编辑记录 microxp (2024-08-30 20:50:56)

离线

#1 2024-08-30 17:29:37

海石生风
会员
所在地: 深圳
注册时间: 2019-07-02
已发帖子: 660
积分: 793
个人网站

Re: linux 6怎么操作全志的GPIO呢?

内核都已经废弃gpio sysfs了,为什么还要用?libgpiod不好用?

sysfs实际上是一个调试或配置工具,后者才对编程友好。

离线

楼主 #2 2024-08-30 20:20:54

microxp
会员
注册时间: 2021-04-27
已发帖子: 76
积分: 124

Re: linux 6怎么操作全志的GPIO呢?

海石生风 说:

内核都已经废弃gpio sysfs了,为什么还要用?libgpiod不好用?

sysfs实际上是一个调试或配置工具,后者才对编程友好。

主要是不会用.libgpiod感觉还是个半成品,根本不成熟,首先文档非常少,还在整天改来改去,我在ubuntu22.4上默认装的是libgpiod1.6,但是官网上的api说明已经是libgpiod3了?,3的例子在1.6上面根本运行不起来,基础的几个函数全改了,然后下载了源码准备手动安,发现22.04根本装不上3,要装3得升级从c++到c的一堆基础库,全部得手动编译升级…这像是个成熟的东西么,为了装个库难度快赶上重装系统了,根本没法折腾

最近编辑记录 microxp (2024-08-30 20:27:54)

离线

#3 2024-08-30 22:52:37

海石生风
会员
所在地: 深圳
注册时间: 2019-07-02
已发帖子: 660
积分: 793
个人网站

Re: linux 6怎么操作全志的GPIO呢?

你Linux用得少吧,哪个开源项目不都是这样,版本号:官网Release版本 > ArchLinux软件仓库版本 > Ubuntu软件仓储版本

ubuntu软件包一般都比较老旧,你在ubuntu上安装或编译最新版本很容易掉进依赖地狱。

另外,我看了下:官方最新版没有到3,最新的是2.1.3,ArchLinux这边是2.1.2;官方文档最新版是2.1.2

最近编辑记录 海石生风 (2024-08-30 23:13:54)

离线

页脚

工信部备案:粤ICP备20025096号 Powered by FluxBB

感谢为中文互联网持续输出优质内容的各位老铁们。 QQ: 516333132, 微信(wechat): whycan_cn (哇酷网/挖坑网/填坑网) service@whycan.cn