20251110给荣品RD-RK3588开发板跑Rockchip的原厂Android13系统时熟悉散热风扇

20251110给荣品RD-RK3588开发板跑Rockchip的原厂Android13系统时熟悉散热风扇

2025/11/10 20:49

缘起:需要通过模拟PWM模式控制散热风扇的风力大小!

首先要先学会如何打开/关闭【启/停】风扇。

看原理图,风扇的控制GPIO引脚为GPIO4A7。

也就是:32*4+8*0+7=135

【精简的LOG:操作步骤】

rk3588_t:/ # cd /sys/class/gpio/

rk3588_t:/sys/class/gpio # ll
rk3588_t:/sys/class/gpio # echo 135 > export
rk3588_t:/sys/class/gpio # ll
rk3588_t:/sys/class/gpio # cd gpio135
rk3588_t:/sys/class/gpio/gpio135 # ll
rk3588_t:/sys/class/gpio/gpio135 # cat direction
in
rk3588_t:/sys/class/gpio/gpio135 # cat value
0
rk3588_t:/sys/class/gpio/gpio135 #
rk3588_t:/sys/class/gpio/gpio135 # echo out > direction
rk3588_t:/sys/class/gpio/gpio135 # echo 1 > value
rk3588_t:/sys/class/gpio/gpio135 # echo 0 > value
rk3588_t:/sys/class/gpio/gpio135 # echo 1 > value

rk3588_t:/sys/class/gpio/gpio135 #

Microsoft Windows [版本 10.0.19045.6216]

(c) Microsoft Corporation。保留所有权利。

C:\Users\QQ>adb shell

adb server version (40) doesn't match this client (41); killing...

* daemon started successfully

rk3588_t:/ $ su

rk3588_t:/ #

rk3588_t:/ # ll

total 88

drwxr-xr-x 2 root root 4096 2025-11-07 05:56 acct

drwxr-xr-x 27 root root 560 2021-01-01 12:07 apex

lrw-r--r-- 1 root root 11 2025-11-07 05:56 bin -> /system/bin

lrw-r--r-- 1 root root 50 2025-11-07 05:56 bugreports -> /data/user_de/0/com.android.shell/files/bugreports

drwxrwx--- 6 system cache 4096 2021-01-01 12:07 cache

drwxr-xr-x 3 root root 0 1970-01-01 00:00 config

lrw-r--r-- 1 root root 17 2025-11-07 05:56 d -> /sys/kernel/debug

drwxrwx--x 50 system system 4096 2025-11-07 05:56 data

drwx------ 8 root system 160 2021-01-01 12:07 data_mirror

drwxr-xr-x 2 root root 4096 2025-11-07 05:56 debug_ramdisk

drwxr-xr-x 26 root root 3500 2025-11-07 05:56 dev

lrw-r--r-- 1 root root 11 2025-11-07 05:56 etc -> /system/etc

lrwxr-x--- 1 root shell 16 2025-11-07 05:56 init -> /system/bin/init

-rwxr-x--- 1 root shell 463 2025-11-07 05:56 init.environ.rc

drwxr-xr-x 11 root root 260 2021-01-01 12:07 linkerconfig

drwx------ 2 root root 16384 2025-11-07 05:56 lost+found

drwxr-xr-x 13 root root 4096 2021-01-01 12:07 metadata

drwxr-xr-x 16 root system 340 2021-01-01 12:07 mnt

drwxr-xr-x 5 root root 4096 2025-11-07 05:56 odm

drwxr-xr-x 4 root root 4096 2025-11-07 05:56 odm_dlkm

drwxr-xr-x 2 root root 4096 2025-11-07 05:56 oem

drwxr-xr-x 2 root root 4096 2025-11-07 05:56 postinstall

dr-xr-xr-x 403 root root 0 2021-01-01 12:07 proc

drwxr-xr-x 9 root root 4096 2025-11-07 05:56 product

lrw-r--r-- 1 root root 21 2025-11-07 05:56 sdcard -> /storage/self/primary

drwxr-xr-x 2 root root 4096 2025-11-07 05:56 second_stage_resources

drwx--x--- 4 shell everybody 80 2021-01-01 12:07 storage

dr-xr-xr-x 15 root root 0 2021-01-01 12:07 sys

drwxr-xr-x 13 root root 4096 2025-11-07 05:56 system

drwxr-xr-x 4 root root 4096 2025-11-07 05:56 system_dlkm

drwxr-xr-x 9 root root 4096 2025-11-07 05:56 system_ext

drwxr-xr-x 10 root root 4096 2025-11-07 05:56 vendor

drwxr-xr-x 5 root root 4096 2025-11-07 05:56 vendor_dlkm

rk3588_t:/ # cd /sys/class/gpio/

rk3588_t:/sys/class/gpio # ll

total 0

--w------- 1 root root 4096 2025-11-07 05:57 export

lrwxrwxrwx 1 root root 0 2025-11-07 05:57 gpiochip0 -> ../../devices/platform/pinctrl/fd8a0000.gpio/gpio/gpiochip0

lrwxrwxrwx 1 root root 0 2025-11-07 05:57 gpiochip128 -> ../../devices/platform/pinctrl/fec50000.gpio/gpio/gpiochip128

lrwxrwxrwx 1 root root 0 2025-11-07 05:57 gpiochip32 -> ../../devices/platform/pinctrl/fec20000.gpio/gpio/gpiochip32

lrwxrwxrwx 1 root root 0 2025-11-07 05:57 gpiochip509 -> ../../devices/platform/feb20000.spi/spi_master/spi2/spi2.0/rk806-pinctrl.1.auto/gpio/gpiochip509

lrwxrwxrwx 1 root root 0 2025-11-07 05:57 gpiochip64 -> ../../devices/platform/pinctrl/fec30000.gpio/gpio/gpiochip64

lrwxrwxrwx 1 root root 0 2025-11-07 05:57 gpiochip96 -> ../../devices/platform/pinctrl/fec40000.gpio/gpio/gpiochip96

--w------- 1 root root 4096 2025-11-07 05:57 unexport

rk3588_t:/sys/class/gpio # echo 135 > export

rk3588_t:/sys/class/gpio # ll

total 0

--w------- 1 root root 4096 2025-11-07 05:57 export

lrwxrwxrwx 1 root root 0 2025-11-07 05:57 gpio135 -> ../../devices/platform/pinctrl/fec50000.gpio/gpiochip4/gpio/gpio135

lrwxrwxrwx 1 root root 0 2025-11-07 05:57 gpiochip0 -> ../../devices/platform/pinctrl/fd8a0000.gpio/gpio/gpiochip0

lrwxrwxrwx 1 root root 0 2025-11-07 05:57 gpiochip128 -> ../../devices/platform/pinctrl/fec50000.gpio/gpio/gpiochip128

lrwxrwxrwx 1 root root 0 2025-11-07 05:57 gpiochip32 -> ../../devices/platform/pinctrl/fec20000.gpio/gpio/gpiochip32

lrwxrwxrwx 1 root root 0 2025-11-07 05:57 gpiochip509 -> ../../devices/platform/feb20000.spi/spi_master/spi2/spi2.0/rk806-pinctrl.1.auto/gpio/gpiochip509

lrwxrwxrwx 1 root root 0 2025-11-07 05:57 gpiochip64 -> ../../devices/platform/pinctrl/fec30000.gpio/gpio/gpiochip64

lrwxrwxrwx 1 root root 0 2025-11-07 05:57 gpiochip96 -> ../../devices/platform/pinctrl/fec40000.gpio/gpio/gpiochip96

--w------- 1 root root 4096 2025-11-07 05:57 unexport

rk3588_t:/sys/class/gpio # cd gp

gpio135/ gpiochip0/ gpiochip128/ gpiochip32/ gpiochip509/ gpiochip64/ gpiochip96/

rk3588_t:/sys/class/gpio # cd gpio135

rk3588_t:/sys/class/gpio/gpio135 # ll

total 0

-rw-r--r-- 1 root root 4096 2025-11-07 05:58 active_low

lrwxrwxrwx 1 root root 0 2025-11-07 05:58 device -> ../../../gpiochip4

-rw-r--r-- 1 root root 4096 2025-11-07 05:58 direction

-rw-r--r-- 1 root root 4096 2025-11-07 05:58 edge

drwxr-xr-x 2 root root 0 2025-11-07 05:58 power

lrwxrwxrwx 1 root root 0 2025-11-07 05:58 subsystem -> ../../../../../../../class/gpio

-rw-r--r-- 1 root root 4096 2025-11-07 05:58 uevent

-rw-r--r-- 1 root root 4096 2025-11-07 05:58 value

rk3588_t:/sys/class/gpio/gpio135 # cat direction

in

rk3588_t:/sys/class/gpio/gpio135 # cat value

0

rk3588_t:/sys/class/gpio/gpio135 #
rk3588_t:/sys/class/gpio/gpio135 # echo out > direction
rk3588_t:/sys/class/gpio/gpio135 # echo 1 > value
rk3588_t:/sys/class/gpio/gpio135 # echo 0 > value
rk3588_t:/sys/class/gpio/gpio135 # echo 1 > value

rk3588_t:/sys/class/gpio/gpio135 #

请问 RD-RK3588-MID控制 风扇的 部分是 PWM输出的吗?

温度 越高?PWM的占空比越高?[破涕为笑][疑问]

https://doc.rpdzkj.cn/#/zh_cn/瑞芯微系列/rk3566-rk3568/8.接口使用?id=风扇

https://doc.rpdzkj.cn/#/zh_cn/瑞芯微系列/rk3588-rk3588s/7.接口使用?id=风扇

不是的,只是在达到对应温度后,拉高或者拉低引脚风扇引脚启动

https://doc.rpdzkj.cn/#/zh_cn/瑞芯微系列/rk3588-rk3588s/7.接口使用

风扇

风扇是根据温度的增长而打开的,当温度达到设定的温度时,风扇就会自动打开,风扇低于设定温度时,就会在设定延迟时间后关闭

fan_gpio_control {

compatible = "fan_gpio_control";

gpio-pin = <&gpio1 RK_PC2 GPIO_ACTIVE_HIGH>;

thermal-zone = "cpu-thermal";

threshold-temp = <60000>; //60C

running-time = <10000>; //10s

status = "okay";

};

我想知道 默认 GPIO1C2是否具有 PWM输出?

普通GPIO口是否可以 模拟 PWM输出?

以便 【根据SOC的温度】调整占空比 控制风扇的风扇?

看RD-RK3588原理图,是可以配置成pwm功能来使用

【DTS】

Y:\new_disk_4t\wyb\RD-RK3588\orig_RD-rk3588_Android13\kernel-5.10\arch\arm64\boot\dts\rockchip\rk3588\rd-rk3588.dts

fan_gpio_control {

compatible = "fan_gpio_control";

gpio-pin = <&gpio4 RK_PA7 GPIO_ACTIVE_HIGH>;

temperature-device = "soc-thermal";

temp-on = <60000>;

time = <10000>;

status = "okay";

};

【驱动程序】

jinhualong@jinhualong-LEGION-REN7000K-26IRX:~/new_disk_4t/wyb/RD-RK3588/orig_RD-rk3588_Android13/kernel-5.10$ grep rp_fan . -R

grep: ./arch/arm64/boot/Image: 匹配到二进制文件

./drivers/rongpin/Makefile:obj-$(CONFIG_RP_FAN) += rp_fan_power.o

./drivers/rongpin/rp_fan_power.c: //Create proc/rp_fan

./drivers/rongpin/rp_fan_power.c: root_entry_fan = proc_mkdir("rp_fan", NULL);

jinhualong@jinhualong-LEGION-REN7000K-26IRX:~/new_disk_4t/wyb/RD-RK3588/orig_RD-rk3588_Android13/kernel-5.10$

相关推荐
南棱笑笑生4 天前
20251106在荣品RD-RK3588开发板的Android13系统下配置单5GHz的softAP模式以提高网速
5g·rockchip
南棱笑笑生4 天前
20251106给荣品RD-RK3588-MID开发板跑Rockchip的原厂Android13系统时禁止锁屏+永不休眠
linux·运维·服务器·rockchip
南棱笑笑生5 天前
20251105在荣品RD-RK3588-MID开发板的Android13系统的导航栏左右两边增加音量+-按钮
rockchip
南棱笑笑生9 天前
20251029在AIO-3576Q38开发板的Android14下使用iperf3测试WIFI模块AP6256的网速【87.8 Mbits/sec】
rockchip
南棱笑笑生11 天前
20251030在AIO-3576Q38开发板的Android14下确认TF卡
rockchip
南棱笑笑生12 天前
20251028在Ubuntu20.04.6上编译AIO-3576Q38开发板的Buildroot系统
大数据·linux·服务器·rockchip
南棱笑笑生12 天前
20251029让AIO-3576Q38开发板适配Rockchip的原厂Android14之后配置为禁止锁屏
rockchip
南棱笑笑生13 天前
20251028在荣品RD-RK3588-MID开发板的Android13系统下解决关机的时候最近打开的应用不关的问题
开发语言·python·rockchip
南棱笑笑生13 天前
20251028解决编译AIO-3576Q38开发板的Android14刷机之后进MASKROM模式的问题
rockchip