查看: 31|回复: 3

RK3588S设备树问题

[复制链接]

2

主题

2

回帖

219

积分

中级会员

Rank: 3Rank: 3

积分
219
发表于 前天 12:27 | 显示全部楼层 |阅读模式
(为了高效,请按如下格式提问)

硬件主板型号:ROC-RK3588S-PC
固件名称/系统版本:ROC-RK3588S-PC_Ubuntu20.04-Xfce-r31136_v1.4.0c_240905
自编的或固件下载地址:Firefly | 让科技更简单,让生活更智能
Log日志: (可以导出,用TXT附件上传)

问题描述及复现步骤:我想将MIPI接口中的
GPIO4_B0 I2C_SDA_TP1 (GPIO4_B0)[pull up resistance 2.2K]
GPIO4_B1 I2C_SCL_TP1 (GPIO4_B1)[pull up resistance 2.2K]
GPIO4_A6 LCD1_Power EN Output(GPIO4_A6)
GPIO4_A4 TP1_INT Input(GPIO4_A4)[pull up resistance 4.7K]
GPIO4_A3 BL1_EN Output(GPIO4_A3)
GPIO4_B6 LCD1_BL_PWM[pWM13_M1)Output [GPIO4_B6]
GPIO4_A0 LCD1_Reset Output(GPIO4_A0)
GPIO1_D0 SPI1_MISO_M2 (GPIO1_D0)设置为可以控制普通的GPIO作为输出;



SDA/GP1_A2  I2C_SDA_TP0 (GPIO1_A2) [pull up resistance 2.2K]
SCL/GP1_A3  I2C_SCL_TP0(GPIO1_A3)[pull up resistance 2.2K]
GPIO1_B3 LCD0_Power EN Output(GPIO1_B3)~
GPIO1_A7 TP0_INT_Input(GPIO1_A7)[pull up resistance 10K]
GPIO3_D4 BL0_EN Output(GPIO3_D4)
GPIO1_D6  LCD0_BL_PWM[pWM14_M2)Output(GPIO1_D6)
GPIO1_A1 LCD0_Reset Output(GPIO1_A1)~
GPIO1_B2 TP0_Reset_L Output(GPIO1_B2)

作为普通GPIO作为输入监测GPIO电平,我下载了设备树源码并修改了roc-rk3588s-pc-mipi101-BSD1218-A101KL68-v10.dtsi禁用了里面的相关复用,也修改了

// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
/dts-v1/;
#include "roc-rk3588s-pc-mipi101-BSD1218-A101KL68-v10.dtsi"

/ {
        model = "Firefly ROC-RK3588S-PC V10 MIPI(Linux)";
        compatible = "rockchip,roc-rk3588s-pc", "rockchip,rk3588";

        /*
         * 所有指定引脚配置为 GPIO 输入(自动 export 为 input)
         */
        gpio_input_hog {
                compatible = "gpio-hog";
                pinctrl-names = "default";
                pinctrl-0 = <&gpio_input_pins>;
                gpios = <
                        1  1 GPIO_ACTIVE_HIGH  /* GPIO1_A1 → gpio33 */
                        1  2 GPIO_ACTIVE_HIGH  /* GPIO1_A2 → gpio34 */
                        1  3 GPIO_ACTIVE_HIGH  /* GPIO1_A3 → gpio35 */
                        1  7 GPIO_ACTIVE_HIGH  /* GPIO1_A7 → gpio39 */
                        1 10 GPIO_ACTIVE_HIGH  /* GPIO1_B2 → gpio42 */
                        1 11 GPIO_ACTIVE_HIGH  /* GPIO1_B3 → gpio43 */
                        1 30 GPIO_ACTIVE_HIGH  /* GPIO1_D6 → gpio62 */
                        3 28 GPIO_ACTIVE_HIGH  /* GPIO3_D4 → gpio124 */
                >;
                input;
                status = "okay";
        };

        /*
         * 其他 8 个 GPIO 输出下拉引脚(保持不变)
         */
        gpio_output_hog {
                compatible = "gpio-hog";
                pinctrl-names = "default";
                pinctrl-0 = <&your_gpio_output_pinctrl>;
                gpios = <
                        4 8  GPIO_ACTIVE_HIGH  /* GPIO4_B0 */
                        4 9  GPIO_ACTIVE_HIGH  /* GPIO4_B1 */
                        4 6  GPIO_ACTIVE_HIGH  /* GPIO4_A6 */
                        4 4  GPIO_ACTIVE_HIGH  /* GPIO4_A4 */
                        4 3  GPIO_ACTIVE_HIGH  /* GPIO4_A3 */
                        4 14 GPIO_ACTIVE_HIGH  /* GPIO4_B6 */
                        4 0  GPIO_ACTIVE_HIGH  /* GPIO4_A0 */
                        1 24 GPIO_ACTIVE_HIGH  /* GPIO1_D0 */
                >;
                output-low;
                status = "okay";
        };
};

/* 禁用可能冲突的外设 */
&i2c4  { status = "disabled"; };
&i2c6  { status = "disabled"; };
&i2c7  { status = "disabled"; };
&pwm13 { status = "disabled"; };
&pwm14 { status = "disabled"; };
&spi1  { status = "disabled"; };

/* pinctrl 配置 */
&pinctrl {
        /*
         * 所有输入引脚:配置为 GPIO 模式,无上下拉
         * (可根据硬件需求改为 &pcfg_pull_up 或自定义)
         */
        gpio_input_pins: gpio-input-pins {
                rockchip,pins =
                        <1  1 RK_FUNC_GPIO &pcfg_pull_none>,  /* GPIO1_A1 */
                        <1  2 RK_FUNC_GPIO &pcfg_pull_none>,  /* GPIO1_A2 */
                        <1  3 RK_FUNC_GPIO &pcfg_pull_none>,  /* GPIO1_A3 */
                        <1  7 RK_FUNC_GPIO &pcfg_pull_none>,  /* GPIO1_A7 */
                        <1 10 RK_FUNC_GPIO &pcfg_pull_none>,  /* GPIO1_B2 */
                        <1 11 RK_FUNC_GPIO &pcfg_pull_none>,  /* GPIO1_B3 */
                        <1 30 RK_FUNC_GPIO &pcfg_pull_none>,  /* GPIO1_D6 */
                        <3 28 RK_FUNC_GPIO &pcfg_pull_none>;  /* GPIO3_D4 */
        };

        /*
         * 输出引脚:带下拉
         */
        your_gpio_output_pinctrl: your-gpio-output-pinctrl {
                rockchip,pins =
                        <4  8 RK_FUNC_GPIO &pcfg_pull_down>,  /* GPIO4_B0 */
                        <4  9 RK_FUNC_GPIO &pcfg_pull_down>,  /* GPIO4_B1 */
                        <4  6 RK_FUNC_GPIO &pcfg_pull_down>,  /* GPIO4_A6 */
                        <4  4 RK_FUNC_GPIO &pcfg_pull_down>,  /* GPIO4_A4 */
                        <4  3 RK_FUNC_GPIO &pcfg_pull_down>,  /* GPIO4_A3 */
                        <4 14 RK_FUNC_GPIO &pcfg_pull_down>,  /* GPIO4_B6 */
                        <4  0 RK_FUNC_GPIO &pcfg_pull_down>,  /* GPIO4_A0 */
                        <1 24 RK_FUNC_GPIO &pcfg_pull_down>;  /* GPIO1_D0 */
        };
};

但是还有一些GPIO被占用比如GPIO1_A1 LCD0_Reset Output(GPIO1_A1)~
GPIO1_B3 LCD0_Power EN Output(GPIO1_B3)~
GPIO4_A6 LCD1_Power EN Output(GPIO4_A6)
GPIO4_A0 LCD1_Reset Output(GPIO4_A0)这些我应该修改哪些设备树,还有就是我是通过编译好修改后的设备树用U盘替换板子/boot/中对应的设备树的方法不知道有没有问题
回复

使用道具 举报

69

主题

13

回帖

487

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
487
发表于 前天 13:42 | 显示全部楼层
可以看下这个设备树修改文档https://wiki.t-firefly.com/zh_CN ... nux_dts_manual.html
回复 支持 反对

使用道具 举报

2

主题

2

回帖

219

积分

中级会员

Rank: 3Rank: 3

积分
219
 楼主| 发表于 前天 13:49 | 显示全部楼层
风火轮用户arhuy 发表于 2025-10-30 13:42
可以看下这个设备树修改文档https://wiki.t-firefly.com/zh_CN/ROC-RK3588S-PC/linux_dts_manual.html ...

我就是看着这个一步一找的普通的spi,i2c直接在外面disable就行,GPIO1_B3 LCD0_Power EN Output(GPIO1_B3)~GPIO1_A1 LCD0_Reset Output(GPIO1_A1)~GPIO4_A3 BL1_EN Output(GPIO4_A3)GPIO4_A6 LCD1_Power EN Output(GPIO4_A6)怎么也就是不行
回复 支持 反对

使用道具 举报

2

主题

2

回帖

219

积分

中级会员

Rank: 3Rank: 3

积分
219
 楼主| 发表于 前天 17:00 | 显示全部楼层
/*
&lcd_rst {
        status = "okay";
        gpio = <&gpio1 RK_PA1 GPIO_ACTIVE_HIGH>;
};

&lcd_en {
        status = "okay";
        gpio = <&gpio1 RK_PB3 GPIO_ACTIVE_HIGH>;
};
*/
这明明被注释了但是还是被这个占用
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|风火轮WIKI|手机版|小黑屋|深圳风火轮团队 ( 粤ICP备17095099号 )

GMT+8, 2025-11-1 09:35 , Processed in 0.085029 second(s), 25 queries .

快速回复 返回顶部 返回列表
 
【客服1】 商务合作 15289193
【客服2】 业务洽谈 13257599
【客服3】 售前咨询 510313198
【邮箱】
smartfire@smartfire.cn