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# 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mfbz.cn/a/731376.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

内江科技杂志内江科技杂志社内江科技编辑部2024年第13期目录

科教兴国 内江市科技局“五个强化”助力“五经普”工作有序推进 本刊通讯员; 1 内江市多措并举融入成渝中线科创走廊建设 本刊通讯员; 2 科学管理《内江科技》投稿:cnqikantg126.com 数字化社会公共图书馆的服务效能提升策略研究 闫永凤;臧萌;王亚博;王…

Midjourney v6 快速入门指南

Midjourney V6快速入门教程来了,这是Midjourney的AI图像生成器的又一次令人印象深刻的升级。最显著的是,V6在逼真渲染和图像中的文字功能方面取得了重大进展。 在这篇文章中,我们将探讨如何开始使用Midjourney V6,并提供一些示例…

使用 Java 构建和消费 RESTful 服务的基本方法

REST(Representational State Transfer)是一种架构风格,它基于Web标准和HTTP协议,常用于构建网络服务。使用Java构建和消费RESTful服务需要掌握一些基本概念和技术。 一、RESTful服务的基本概念 1. REST架构风格 REST架构风格的…

四,SSM整合-前后端分离(实现分页+前后端校验)

分页与校验 实现功能07-分页显示列表需求分析/图解思路分析代码实现完成测试 实现功能08-带条件查询分页显示列表需求分析/图解思路分析代码实现 实现功能09-添加家居表单前端校验需求分析/图解思路分析代码实现 实现功能10-添加家居表单后端校验需求分析/图解思路分析代码实现…

精准测试与传统的手工测试

大部分测试从业人员都经历了手工测试到自动化测试递进,测试技术及思路都发生了日新月异的变化,有些中厂及大厂都有一套强大且复杂的自动化测试用例时刻保障产品的稳定性及正确性。 所谓精准测试,就是借助一定的技术手段、通过算法的辅助对传…

虚拟机拖拽文档造成缓存过大

查看文件夹大小:du -h --max-depth1 缓存位置:~/.cache/vmware/drag_and_drop 删除:rm -fr ~/.cache/vmware/drag_and_drop 释放了3GB

解决Few-shot问题的两大方法:元学习与微调

基于元学习(Meta-Learning)的方法: Few-shot问题或称为Few-shot学习是希望能通过少量的标注数据实现对图像的分类,是元学习(Meta-Learning)的一种。 Few-shot学习,不是为了学习、识别训练集上的数据,泛化…

深入理解前端缓存

前端缓存是所有前端程序员在成长历程中必须要面临的问题,它会让我们的项目得到非常大的优化提升,同样也会带来一些其它方面的困扰。大部分前端程序员也了解一些缓存相关的知识,比如:强缓存、协商缓存、cookie等,但是我…

后端程序员的Linux命令指南

后端程序员的终极命令指南:考考自己是不是真正掌握Linux的使用 欢迎各位穿着格子衬衫,常年抱着键盘睡觉的后端小伙伴们👋👋👋!今天,考考你们是不是掌握以下让你们在日后在服务器上叱咤风云的命令…

vscode颜色没有显示出来颜色预览效果,安装插件解决

1、先上一张图,看看之前没有安装插件的Html颜色的色块 2、安装插件Color Highlight 这样颜色对应的效果就出来了。

O2OA的数据库数据库配置-使用不同用户访问Oracle时报错-表或视图不存在

在使用Oracle数据库时,多个O2OA服务器同一个Oracle实例中使用不同的用户启动时,可能会遇到数据库访问的错误。本篇阐述此类问题以及解决方案。 一、先决条件: 1、O2OA已经下载并且解压到指定的目录; 2、Oracle数据库已经完成安…

同时使用磁吸充电器和Lightning时,iPhone充电速度会变快吗?

在智能手机的世界里,续航能力一直是用户关注的焦点。苹果公司以其创新的MagSafe技术和传统的Lightning接口,为iPhone用户提供了多样化的充电解决方案。 然而,当这两种技术同时使用时,它们能否带来更快的充电速度?本文…

“用友审批+民生付款”,YonSuite让企业发薪更准时

随着现代企业经营模式的不断创新和市场竞争的加剧,企业薪资管理和发放的效率、准确性和及时性已成为企业管理的重要一环。然而,在实际操作中,许多企业面临着薪资管理复杂、发放流程繁琐、数据不准确等难点和痛点。为了解决这些问题&#xff0…

【Java】已解决java.net.UnknownHostException异常

文章目录 一、分析问题背景二、可能出错的原因三、错误代码示例四、正确代码示例五、注意事项 已解决java.net.UnknownHostException异常 在Java的网络编程中,java.net.UnknownHostException是一个常见的异常,它通常表明在尝试解析主机名时出现了问题。…

全网首测!文生软件平台码上飞CodeFlying,效果炸裂!

前言: 提到AIGC,在大家的印象中应该就是让AI自己生成文字,图片等内容吧。随着今年Sora,Suno的爆火,将AIGC的应用场景又拉到了一个新的高度,为人们带来了更多的遐想。在未来,或许可以用AI来生成…

人声分离的5个方法分享,从入门到精通,伴奏提取手拿把捏!

人声分离通常是音乐制作、混音和卡拉OK中常用的重要技术之一。它的核心是将乐器伴奏从原始音轨中分离出来,使得用户可以单独处理或重混音频,创造出清晰干净的伴奏轨道。若缺乏强大的音频剪辑软件或专业人声分离工具,这一过程往往会比较困难。…

车辆轨迹预测系列 (二):常见数据集介绍

车辆轨迹预测系列 (二):常见数据集介绍 文章目录 车辆轨迹预测系列 (二):常见数据集介绍1、NuScenes (2020):1、下载2、说明 2、Waymo Open Dataset (2020):1、介绍2、概述3、下载4、教程5、参考 3、Lyft Level 5 (2020)&#xff…

智慧办公新篇章:可视化技术引领园区管理革命

随着科技的飞速发展,办公方式也在经历着前所未有的变革。在这个信息爆炸的时代,如何高效、智能地管理办公空间,成为了每个企业和园区管理者面临的重要课题。 智慧办公园区作为未来办公的新趋势,以其高效、便捷、智能的特点&#x…

鸿蒙NEXT实战开发: 依据前端对http请求进行二次简单封装

一、为什么要对http请求进行封装? 在我看来二次封装有一下几点好处 代码封装之后,开发人员只用关注业务层面的东西,不用去过多浪费时间在接口请求数据处理上。封装之后代码更加简洁,通俗易懂,方便后期维护&#xff0…

数据库讲解---(数据库保护)【上】

目录 一.事务 1.1事务的概念【重要】 1.2事务的特性【重要】 1.2.1原子性(Atomicity) 1.2.2一致性(Consistency) 1.2.3隔离性(Isolation) 1.2.4持久性(Durability) 二.数据库恢复 2.1数据库系统的故障 2.1.1事务内部故障 2.1.2系统故障 2.1.3介质故障 2.1.4计算机…