20240621将需要自启动的部分放到RK3588平台的Buildroot系统的rcS文件中

本文主要是介绍20240621将需要自启动的部分放到RK3588平台的Buildroot系统的rcS文件中,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

20240621将需要自启动的部分放到RK3588平台的Buildroot系统的rcS文件中
2024/6/21 17:15


开发板:飞凌OK3588-C
SDK:Rockchip原厂的Buildroot

缘起:在凌OK3588-C的LINUX R4系统启动的时候,需要拉高GPIO4_B5、GPIO3_B7和GPIO3_D0。

LVDS12V_EN    GPIO4_B5    32*4+8*1+5=141
FG_3V3_EN     GPIO3_B7    32*3+8*1+7=111
FBGA_1V2_EN   GPIO3_D0    32*3+8*3+0=120

echo 141 > /sys/class/gpio/export
echo out > /sys/class/gpio/gpio141/direction
echo 1 > /sys/class/gpio/gpio141/value

echo 111 > /sys/class/gpio/export
echo out > /sys/class/gpio/gpio111/direction
echo 1 > /sys/class/gpio/gpio111/value

echo 120 > /sys/class/gpio/export
echo out > /sys/class/gpio/gpio120/direction
echo 1 > /sys/class/gpio/gpio120/value


通过grep找到rcS:
viewpro@viewpro-ThinkBook-16-G5-IRH:~$ 
viewpro@viewpro-ThinkBook-16-G5-IRH:~$ cd repo_RK3588_Buildroot20240508/
viewpro@viewpro-ThinkBook-16-G5-IRH:~/repo_RK3588_Buildroot20240508$ 
viewpro@viewpro-ThinkBook-16-G5-IRH:~/repo_RK3588_Buildroot20240508$ ll
total 68
drwxrwxr-x 15 viewpro viewpro  4096 5月  20 16:29 ./
drwxr-xr-x 37 viewpro viewpro 12288 6月  21 11:30 ../
drwxrwxr-x  4 viewpro viewpro  4096 5月  20 16:26 app/
drwxrwxr-x 17 viewpro viewpro  4096 5月  20 16:48 buildroot/
lrwxrwxrwx  1 viewpro viewpro    39 5月  20 16:26 build.sh -> device/rockchip/common/scripts/build.sh*
drwxrwxr-x  9 viewpro viewpro  4096 5月  20 16:26 debian/
drwxrwxr-x  3 viewpro viewpro  4096 5月  20 16:26 device/
drwxrwxr-x  6 viewpro viewpro  4096 5月  20 16:26 docs/
lrwxrwxrwx  1 viewpro viewpro    27 5月  20 16:26 envsetup.sh -> buildroot/build/envsetup.sh*
drwxrwxr-x 27 viewpro viewpro  4096 5月  20 16:27 external/
drwxrwxr-x 26 viewpro viewpro  4096 5月  20 16:26 kernel/
lrwxrwxrwx  1 viewpro viewpro    31 5月  20 16:26 Makefile -> device/rockchip/common/Makefile
drwxrwxr-x  3 viewpro viewpro  4096 5月  20 16:26 prebuilts/
drwxrwxr-x  9 viewpro viewpro  4096 5月  20 16:27 rkbin/
lrwxrwxrwx  1 viewpro viewpro    41 5月  20 16:26 rkflash.sh -> device/rockchip/common/scripts/rkflash.sh*
drwxrwxr-x  5 viewpro viewpro  4096 5月  20 16:27 tools/
drwxrwxr-x 24 viewpro viewpro  4096 5月  20 16:27 u-boot/
drwxrwxr-x  5 viewpro viewpro  4096 5月  20 16:27 uefi/
drwxrwxr-x  9 viewpro viewpro  4096 5月  20 16:27 yocto/
viewpro@viewpro-ThinkBook-16-G5-IRH:~/repo_RK3588_Buildroot20240508$ 
viewpro@viewpro-ThinkBook-16-G5-IRH:~/repo_RK3588_Buildroot20240508$ 
viewpro@viewpro-ThinkBook-16-G5-IRH:~/repo_RK3588_Buildroot20240508$ find . -name rcS
./buildroot/package/initscripts/init.d/rcS

./yocto/meta-openembedded/meta-oe/recipes-core/toybox/toybox-inittab/rcS
./yocto/poky/meta/recipes-core/sysvinit/sysvinit/rcS
./yocto/poky/meta/recipes-core/busybox/files/rcS

viewpro@viewpro-ThinkBook-16-G5-IRH:~/repo_RK3588_Buildroot20240508$ top


虽然最有可能的是:./buildroot/package/initscripts/init.d/rcS
但是为了保险起见,给yocto的三个文件也加入了相同的程序块/代码块。
【当然最后一行不同,以便区分!】


刷机之后确认的LOG:
root@rk3588-buildroot:/# 
root@rk3588-buildroot:/# cd /etc/init.d/
root@rk3588-buildroot:/etc/init.d# ls -l

total 108
-rwxr-xr-x 1 root root  427 Jun 21  2024 S00mountall.sh
-rwxr-xr-x 1 root root 1012 Jun 21  2024 S01syslogd
-rwxr-xr-x 1 root root 1004 Jun 21  2024 S02klogd
-rwxr-xr-x 1 root root 2804 Jun 21  2024 S02sysctl
-rwxr-xr-x 1 root root  369 Jun 21  2024 S05async-commit.sh
-rwxr-xr-x 1 root root 1594 Jun 21  2024 S10udev
-rwxr-xr-x 1 root root  620 Jun 21  2024 S13irqbalance
-rwxr-xr-x 1 root root 1684 Jun 21  2024 S20urandom
-rwxr-xr-x 1 root root 1619 Jun 21  2024 S30dbus
-rwxr-xr-x 1 root root  358 Jun 21  2024 S36wifibt-init.sh
-rwxr-xr-x 1 root root 1001 Jun 21  2024 S40bluetoothd
-rwxr-xr-x 1 root root  438 Jun 21  2024 S40network
-rwxr-xr-x 1 root root  457 May 20  2024 S40rkaiq_3A
-rwxr-xr-x 1 root root  652 Jun 21  2024 S41dhcpcd
-rwxr-xr-x 1 root root  917 Jun 21  2024 S49ntp
-rwxr-xr-x 1 root root  914 Jun 21  2024 S49weston
-rwxr-xr-x 1 root root 1354 Jun 21  2024 S50dropbear
-rwxr-xr-x 1 root root  592 Jun 21  2024 S50pulseaudio
-rwxr-xr-x 1 root root  386 Jun 21  2024 S50usbdevice.sh
-rwxr-xr-x 1 root root  427 Jun 21  2024 S80dnsmasq
-rwxr-xr-x 1 root root  546 Jun 21  2024 S99-auto-reboot
-rwxr-xr-x 1 root root  293 Jun 21  2024 S99chromium-wayland.sh
-rwxr-xr-x 1 root root  447 Jun 21  2024 S99input-event-daemon
-rwxr-xr-x 1 root root 1950 Jun 21  2024 fuse3
-rw-r--r-- 1 root root  471 Jun 21  2024 ninfod.sh
-rwxr-xr-x 1 root root  423 Jun 21  2024 rcK
-rwxr-xr-x 1 root root  785 Jun 21  2024 rcS

root@rk3588-buildroot:/etc/init.d# 
root@rk3588-buildroot:/etc/init.d# cat rcS
#!/bin/sh


# Start all init scripts in /etc/init.d
# executing them in numerical order.
#
for i in /etc/init.d/S??* ;do

     # Ignore dangling symlinks (if any).
     [ ! -f "$i" ] && continue

     case "$i" in
    *.sh)
        # Source shell script for speed.
        (
        trap - INT QUIT TSTP
        set start
        . $i
        )
        ;;
    *)
        # No sh extension, so fork subprocess.
        $i start
        ;;
    esac
done


echo 141 > /sys/class/gpio/export
echo out > /sys/class/gpio/gpio141/direction
echo 1 > /sys/class/gpio/gpio141/value

echo 111 > /sys/class/gpio/export
echo out > /sys/class/gpio/gpio111/direction
echo 1 > /sys/class/gpio/gpio111/value

echo 120 > /sys/class/gpio/export
echo out > /sys/class/gpio/gpio120/direction
echo 1 > /sys/class/gpio/gpio120/value

echo "wenyuanbo1"

root@rk3588-buildroot:/etc/init.d# 
root@rk3588-buildroot:/etc/init.d# 


root@rk3588-buildroot:/etc/init.d# 
root@rk3588-buildroot:/etc/init.d# cd /sys/class/gpio/
root@rk3588-buildroot:/sys/class/gpio# 
root@rk3588-buildroot:/sys/class/gpio# 
root@rk3588-buildroot:/sys/class/gpio# ls -l
total 0
--w------- 1 root root 4096 Jan  1 00:00 export
lrwxrwxrwx 1 root root    0 Jan  1 00:00 gpio111 -> ../../devices/platform/pinctrl/fec40000.gpio/gpiochip3/gpio/gpio111
lrwxrwxrwx 1 root root    0 Jan  1 00:00 gpio120 -> ../../devices/platform/pinctrl/fec40000.gpio/gpiochip3/gpio/gpio120
lrwxrwxrwx 1 root root    0 Jan  1 00:00 gpio141 -> ../../devices/platform/pinctrl/fec50000.gpio/gpiochip4/gpio/gpio141

lrwxrwxrwx 1 root root    0 Jan  1 00:00 gpiochip0 -> ../../devices/platform/pinctrl/fd8a0000.gpio/gpio/gpiochip0
lrwxrwxrwx 1 root root    0 Jan  1 00:00 gpiochip128 -> ../../devices/platform/pinctrl/fec50000.gpio/gpio/gpiochip128
lrwxrwxrwx 1 root root    0 Jan  1 00:00 gpiochip32 -> ../../devices/platform/pinctrl/fec20000.gpio/gpio/gpiochip32
lrwxrwxrwx 1 root root    0 Jan  1 00:00 gpiochip509 -> ../../devices/platform/feb20000.spi/spi_master/spi2/spi2.0/rk806-pinctrl.0.auto/gpio/gpiochip509
lrwxrwxrwx 1 root root    0 Jan  1 00:00 gpiochip64 -> ../../devices/platform/pinctrl/fec30000.gpio/gpio/gpiochip64
lrwxrwxrwx 1 root root    0 Jan  1 00:00 gpiochip96 -> ../../devices/platform/pinctrl/fec40000.gpio/gpio/gpiochip96
--w------- 1 root root 4096 Jan  1 00:00 unexport
root@rk3588-buildroot:/sys/class/gpio# 

这篇关于20240621将需要自启动的部分放到RK3588平台的Buildroot系统的rcS文件中的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1082006

相关文章

什么是cron? Linux系统下Cron定时任务使用指南

《什么是cron?Linux系统下Cron定时任务使用指南》在日常的Linux系统管理和维护中,定时执行任务是非常常见的需求,你可能需要每天执行备份任务、清理系统日志或运行特定的脚本,而不想每天... 在管理 linux 服务器的过程中,总有一些任务需要我们定期或重复执行。就比如备份任务,通常会选在服务器资

TP-LINK/水星和hasivo交换机怎么选? 三款网管交换机系统功能对比

《TP-LINK/水星和hasivo交换机怎么选?三款网管交换机系统功能对比》今天选了三款都是”8+1″的2.5G网管交换机,分别是TP-LINK水星和hasivo交换机,该怎么选呢?这些交换机功... TP-LINK、水星和hasivo这三台交换机都是”8+1″的2.5G网管交换机,我手里的China编程has

基于Qt实现系统主题感知功能

《基于Qt实现系统主题感知功能》在现代桌面应用程序开发中,系统主题感知是一项重要的功能,它使得应用程序能够根据用户的系统主题设置(如深色模式或浅色模式)自动调整其外观,Qt作为一个跨平台的C++图形用... 目录【正文开始】一、使用效果二、系统主题感知助手类(SystemThemeHelper)三、实现细节

CentOS系统使用yum命令报错问题及解决

《CentOS系统使用yum命令报错问题及解决》文章主要讲述了在CentOS系统中使用yum命令时遇到的错误,并提供了个人解决方法,希望对大家有所帮助,并鼓励大家支持脚本之家... 目录Centos系统使用yum命令报错找到文件替换源文件为总结CentOS系统使用yum命令报错http://www.cppc

流媒体平台/视频监控/安防视频汇聚EasyCVR播放暂停后视频画面黑屏是什么原因?

视频智能分析/视频监控/安防监控综合管理系统EasyCVR视频汇聚融合平台,是TSINGSEE青犀视频垂直深耕音视频流媒体技术、AI智能技术领域的杰出成果。该平台以其强大的视频处理、汇聚与融合能力,在构建全栈视频监控系统中展现出了独特的优势。视频监控管理系统EasyCVR平台内置了强大的视频解码、转码、压缩等技术,能够处理多种视频流格式,并以多种格式(RTMP、RTSP、HTTP-FLV、WebS

不懂推荐算法也能设计推荐系统

本文以商业化应用推荐为例,告诉我们不懂推荐算法的产品,也能从产品侧出发, 设计出一款不错的推荐系统。 相信很多新手产品,看到算法二字,多是懵圈的。 什么排序算法、最短路径等都是相对传统的算法(注:传统是指科班出身的产品都会接触过)。但对于推荐算法,多数产品对着网上搜到的资源,都会无从下手。特别当某些推荐算法 和 “AI”扯上关系后,更是加大了理解的难度。 但,不了解推荐算法,就无法做推荐系

关于数据埋点,你需要了解这些基本知识

产品汪每天都在和数据打交道,你知道数据来自哪里吗? 移动app端内的用户行为数据大多来自埋点,了解一些埋点知识,能和数据分析师、技术侃大山,参与到前期的数据采集,更重要是让最终的埋点数据能为我所用,否则可怜巴巴等上几个月是常有的事。   埋点类型 根据埋点方式,可以区分为: 手动埋点半自动埋点全自动埋点 秉承“任何事物都有两面性”的道理:自动程度高的,能解决通用统计,便于统一化管理,但个性化定

基于人工智能的图像分类系统

目录 引言项目背景环境准备 硬件要求软件安装与配置系统设计 系统架构关键技术代码示例 数据预处理模型训练模型预测应用场景结论 1. 引言 图像分类是计算机视觉中的一个重要任务,目标是自动识别图像中的对象类别。通过卷积神经网络(CNN)等深度学习技术,我们可以构建高效的图像分类系统,广泛应用于自动驾驶、医疗影像诊断、监控分析等领域。本文将介绍如何构建一个基于人工智能的图像分类系统,包括环境

水位雨量在线监测系统概述及应用介绍

在当今社会,随着科技的飞速发展,各种智能监测系统已成为保障公共安全、促进资源管理和环境保护的重要工具。其中,水位雨量在线监测系统作为自然灾害预警、水资源管理及水利工程运行的关键技术,其重要性不言而喻。 一、水位雨量在线监测系统的基本原理 水位雨量在线监测系统主要由数据采集单元、数据传输网络、数据处理中心及用户终端四大部分构成,形成了一个完整的闭环系统。 数据采集单元:这是系统的“眼睛”,

综合安防管理平台LntonAIServer视频监控汇聚抖动检测算法优势

LntonAIServer视频质量诊断功能中的抖动检测是一个专门针对视频稳定性进行分析的功能。抖动通常是指视频帧之间的不必要运动,这种运动可能是由于摄像机的移动、传输中的错误或编解码问题导致的。抖动检测对于确保视频内容的平滑性和观看体验至关重要。 优势 1. 提高图像质量 - 清晰度提升:减少抖动,提高图像的清晰度和细节表现力,使得监控画面更加真实可信。 - 细节增强:在低光条件下,抖