当前位置: 首页 > news >正文

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文件中

20240621将需要自启动的部分放到RK3588平台的Buildroot系统的rcS文件中 2024/6/21 17:15 开发板:飞凌OK3588-C SDK:Rockchip原厂的Buildroot 缘起:在凌OK3588-C的LINUX R4系统启动的时候,需要拉高GPIO4_B5、GPIO3_B7和GPIO3_D0。…...

掌握数据魔方:Xinstall引领ASA全链路数据归因新纪元

一、引言 在数字化时代,数据是App推广和运营的核心驱动力。然而,如何准确获取、分析并应用这些数据,却成为了许多开发者和营销人员面临的痛点。Xinstall作为一款专业的App全渠道统计服务商,致力于提供精准、高效的数据解决方案&a…...

IIS代理配置-反向代理

前后端分离项目,前端在开发中使用proxy代理解决跨域问题,打包之后无效。 未配置前无法访问 部署环境为windows IIS,要在iis设置反向代理 安装代理模块 需要在iis中实现代理,需要安装Application Request Routing Cache和URL重…...

Flutter调用本地web

前言: 在目前Flutter 环境中,使用在线 webview 是一种很常见的行为 而在 app 环境中,离线使用则更有必要 1.环境准备 将依赖导入 2.引入前端代码 前端代码有两种情况 一种是使用打包工具 build 而来的前端代码 另一种情况是直接使用 HTML 文件 …...

AI大模型部署Ubuntu服务器攻略

一、下载Ollama 在线安装: 在linux中输入命令curl -fsSL https://ollama.com/install.sh | sh 由于在linux下载ollama需要经过外网,网络会不稳定,很容易造成连接超时的问题。 离线安装: 步骤一: 下载Ollama离线版本…...

vlan、vxlan、vpc学习

文章目录 前言VLAN (Virtual Local Area Network)定义工作原理优点应用场景限制 VXLAN (Virtual eXtensible Local Area Network)工作原理优点应用场景与VLAN的区别 VPC (Virtual Private Cloud)定义特点优势应用场景与VLAN/VXLAN的关联 总结 前言 VLAN(Virtual Lo…...

低代码开发:加速工业数智化转型发展

引言 在当今全球经济一体化和信息化的深度融合的大环境下,工业数智化转型已经成为推动制造业高质量发展的关键因素。这一转型不仅涉及生产过程的智能化、网络化,还涉及到企业管理、市场服务等全方位的数字化升级,其最终目标是为了实现更高效能…...

python“__main__“的解读

Tutorial Gross tutorial 有些模块包含了仅供脚本使用的代码,比如解析命令行参数或从标准输入获取数据。 如果这样的模块被从不同的模块中导入,例如为了单元测试,脚本代码也会无意中执行。 这就是 if name ‘main’ 代码块的用武之地。除非…...

Linux Debian12使用podman安装pikachu靶场环境

一、pikachu简介 Pikachu是一个带有漏洞的Web应用系统,在这里包含了常见的web安全漏洞。 二、安装podman环境 Linux Debian系统如果没有安装podman容器环境,可以参考这篇文章先安装podman环境, Linux Debian11使用国内源安装Podman环境 三…...

跑通并使用Yolo v5的源代码并进行训练—目标检测

跑通并使用Yolo v5的源代码并进行训练 摘要:yolo作为目标检测计算机视觉领域的核心网络模型,虽然到24年已经出到了v10的版本,但也很有必要对之前的核心版本v5版本进行进一步的学习。在学习yolo v5的时候因为缺少论文所以要从源代码入手来体验…...

需求虽小但是问题很多,浅谈JavaScript导出excel文件

最近我在进行一些前端小开发,遇到了一个小需求:我想要将数据导出到 Excel 文件,并希望能够封装成一个函数来实现。这个函数需要接收一个二维数组作为参数,数组的第一行是表头。在导出的过程中,要能够确保避免出现中文乱…...

phar反序列化及绕过

目录 一、什么是phar phar://伪协议格式: 二、phar结构 1.stub phar:文件标识。 格式为 xxx; *2、manifest:压缩文件属性等信息,以序列化存 3、contents:压缩文件的内容。 4、signature:签名&#…...

汽车IVI中控开发入门及进阶(三十):视频图像滚动问题分析(imx6+TVP5150+Camera)

前言: DA主控SOC采用imx6,TVP5150作为camera摄像头视频的解码decode芯片,imx6采用linux系统。 关于imx6,请参阅:汽车IVI中控开发入门及进阶(二十九):i.MX6-CSDN博客 Contributor III:...

给PDF添加书签的通解-姜萍同款《偏微分方程》改造手记

背景 网上找了一本姜萍同款的《偏微分方程》,埃文斯,英文版,可惜没有书签,洋洋七百多页,没有书签,怎么读?用福昕编辑器自然能手工一个个加上,可是劳神费力,非程序员所为…...

在寻找电子名片在线制作免费生成?5个软件帮助你快速制作电子名片

在寻找电子名片在线制作免费生成?5个软件帮助你快速制作电子名片 当你需要快速制作电子名片时,有几款免费在线工具可以帮助你实现这个目标。这些工具提供了丰富的设计模板和元素,让你可以轻松地创建个性化、专业水平的电子名片。 1.一键logo…...

Github 2024-06-16 php开源项目日报 Top10

根据Github Trendings的统计,今日(2024-06-16统计)共有10个项目上榜。根据开发语言中项目的数量,汇总情况如下: 开发语言项目数量PHP项目10Livewire: Laravel中构建动态UI组件的全栈框架 创建周期:1818 天开发语言:PHP协议类型:MIT LicenseStar数量:21388 个Fork数量:1…...

docker将容器打包提交为镜像,再打包成tar包

将容器打包成镜像可以通过以下步骤来实现。这里以 Docker 为例,假设你已经安装了 Docker 并且有一个正在运行的容器。 1. 找到正在运行的容器 首先,你需要找到你想要打包成镜像的容器的 ID 或者名字。可以使用以下命令查看所有正在运行的容器&#xff…...

洛阳水利乙级资质企业在水利科技创新中的作用

洛阳水利乙级资质企业在水利科技创新中扮演着重要的角色,其贡献主要体现在以下几个方面: 一、技术引进与研发 引进先进技术:洛阳水利乙级资质企业积极引进国内外先进的水利工程技术和管理经验,结合本地实际情况,形成独…...

Redis-事务-基本操作-在执行阶段出错不会回滚

文章目录 1、Redis事务控制命令2、Redis事务错误处理3、Redis事务错误处理,在执行阶段出错不会回滚 1、Redis事务控制命令 127.0.0.1:6379> keys * (empty array) 127.0.0.1:6379> multi OK 127.0.0.1:6379(TX)> set a1 v1 QUEUED 127.0.0.1:6379(TX)>…...

aws的alb,多个域名绑定多个网站实践

例如首次创建的alb负载均衡只有www.xxx.com 需要添加 负载 test2.xxx.com aws的Route 53产品解析到负载均衡 www.xxx.com 添加CNAME,到负载均衡的dns字段axx test2.xxx.com 添加CNAME,到负载均衡的dns字段axx 主要介绍目标组和规则 创建alb就不介…...

19c补丁后oracle属主变化,导致不能识别磁盘组

补丁后服务器重启,数据库再次无法启动 ORA01017: invalid username/password; logon denied Oracle 19c 在打上 19.23 或以上补丁版本后,存在与用户组权限相关的问题。具体表现为,Oracle 实例的运行用户(oracle)和集…...

pam_env.so模块配置解析

在PAM(Pluggable Authentication Modules)配置中, /etc/pam.d/su 文件相关配置含义如下: 配置解析 auth required pam_env.so1. 字段分解 字段值说明模块类型auth认证类模块,负责验证用户身份&am…...

《用户共鸣指数(E)驱动品牌大模型种草:如何抢占大模型搜索结果情感高地》

在注意力分散、内容高度同质化的时代,情感连接已成为品牌破圈的关键通道。我们在服务大量品牌客户的过程中发现,消费者对内容的“有感”程度,正日益成为影响品牌传播效率与转化率的核心变量。在生成式AI驱动的内容生成与推荐环境中&#xff0…...

如何在看板中有效管理突发紧急任务

在看板中有效管理突发紧急任务需要:设立专门的紧急任务通道、重新调整任务优先级、保持适度的WIP(Work-in-Progress)弹性、优化任务处理流程、提高团队应对突发情况的敏捷性。其中,设立专门的紧急任务通道尤为重要,这能…...

srs linux

下载编译运行 git clone https:///ossrs/srs.git ./configure --h265on make 编译完成后即可启动SRS # 启动 ./objs/srs -c conf/srs.conf # 查看日志 tail -n 30 -f ./objs/srs.log 开放端口 默认RTMP接收推流端口是1935,SRS管理页面端口是8080,可…...

华为OD机试-食堂供餐-二分法

import java.util.Arrays; import java.util.Scanner;public class DemoTest3 {public static void main(String[] args) {Scanner in new Scanner(System.in);// 注意 hasNext 和 hasNextLine 的区别while (in.hasNextLine()) { // 注意 while 处理多个 caseint a in.nextIn…...

鸿蒙中用HarmonyOS SDK应用服务 HarmonyOS5开发一个生活电费的缴纳和查询小程序

一、项目初始化与配置 1. 创建项目 ohpm init harmony/utility-payment-app 2. 配置权限 // module.json5 {"requestPermissions": [{"name": "ohos.permission.INTERNET"},{"name": "ohos.permission.GET_NETWORK_INFO"…...

C++ 求圆面积的程序(Program to find area of a circle)

给定半径r,求圆的面积。圆的面积应精确到小数点后5位。 例子: 输入:r 5 输出:78.53982 解释:由于面积 PI * r * r 3.14159265358979323846 * 5 * 5 78.53982,因为我们只保留小数点后 5 位数字。 输…...

tree 树组件大数据卡顿问题优化

问题背景 项目中有用到树组件用来做文件目录,但是由于这个树组件的节点越来越多,导致页面在滚动这个树组件的时候浏览器就很容易卡死。这种问题基本上都是因为dom节点太多,导致的浏览器卡顿,这里很明显就需要用到虚拟列表的技术&…...

重启Eureka集群中的节点,对已经注册的服务有什么影响

先看答案,如果正确地操作,重启Eureka集群中的节点,对已经注册的服务影响非常小,甚至可以做到无感知。 但如果操作不当,可能会引发短暂的服务发现问题。 下面我们从Eureka的核心工作原理来详细分析这个问题。 Eureka的…...