2023-简单点-树莓派的config.txt文件解析

config.txt文件解析

  • 注意事项
  • 什么时候去读取这个配置文件呢?
  • 如何查看配置情况?
  • 举例某些常见参数
    • 常见硬件参数
      • `camera_auto_detect`
      • `display_auto_detect `
      • `dtparam`
      • `arm_boost` (Raspberry Pi 4 Only)
      • `start_file, fixup_file`
      • `cmdline`
      • `arm_64bit`
      • `otg_mode (Raspberry Pi 4 Only)`
      • 超频参数
  • ref

注意事项

在Bookworm系统版本之前,树莓派操作系统将引导分区存储在/boot/。
自Bookworm以来,引导分区位于/boot/firmware/

树莓派使用的是一个配置文件,而不是传统PC上的BIOS。

传统上使用BIOS编辑和存储的系统配置参数,现在存储在一个名为config.txt的可选文本文件中。

什么时候去读取这个配置文件呢?

在ARM CPU和Linux初始化之前GPU读取的。

因此,它必须位于SD卡的第一个(引导)分区上,旁边是bootcode.bin和start.elf。

该文件通常在Linux中以/boot/firmware/config.txt的形式访问,并且必须以root用户进行编辑。

任何更改只有在重新启动树莓派后才会生效。

如何查看配置情况?

Linux启动后,可以使用以下命令查看当前活动设置

  1. 直接看文件内容
cat /boot/config.txt
or 
cat /boot/firmware/config.txt
  1. 还有一种是用 vcgencmd命令查看:

    vcgencmd get_config <config>: 展示config的值,比如 vcgencmd get_config arm_freq就是获取arm_freq的参数设置值

    vcgencmd get_config int: 展示整数参数非0值的参数

    vcgencmd get_config str: 展示字符串格式的非空参数值

     注意事项:vcgencmd不是万能的。有一些配置设置不能使用vcgencmd检索。
    

举例某些常见参数

# Enable audio (loads snd_bcm2835)
dtparam=audio=on

此行启用音频功能,它会加载snd_bcm2835音频驱动,使得树莓派上的音频接口可以正常工作。

# Automatically load overlays for detected cameras
camera_auto_detect=1

此行设置树莓派自动检测并加载与其相连的摄像头模块。当摄像头模块连接到树莓派时,系统会自动识别并加载相应的驱动程序,无需用户手动配置。

# Automatically load overlays for detected DSI displays
display_auto_detect=1

与上面的摄像头自动检测类似,此行设置树莓派自动检测并加载与其相连的DSI(Display Serial Interface)显示屏。当DSI显示屏连接到树莓派时,系统会自动识别并加载相应的驱动程序,实现显示屏的正常工作。

# Enable DRM VC4 V3D driver
dtoverlay=vc4-kms-v3d

此行启用VC4显卡的DRM(Direct Rendering Manager)驱动,具体使用的是V3D驱动。DRM是Linux内核中的一个子系统,用于管理显卡资源并提供直接的渲染接口。通过启用VC4显卡的DRM驱动,可以充分利用树莓派上的图形硬件资源,提高图形渲染的性能和效率。

常见硬件参数

camera_auto_detect

camera_auto_detect = 1
启用此设置( Raspberry Pi OS),固件将自动加载它识别的CSI相机的overlay.

display_auto_detect

display_auto_detect = 1
启用此设置(which it is in Raspberry Pi OS), firmware自动加载它识别的DSI显示的overlay.

dtoverlay

dtoverlay是树莓派(Raspberry Pi)配置中的一个参数,用于动态覆盖设备树(Device
Tree)。设备树是描述硬件配置的数据结构,在Linux内核启动过程中被加载,用于初始化硬件设备。dtoverlay允许用户在不需要修改内核的情况下,通过加载额外的设备树覆盖层来扩展或修改硬件配置。

在树莓派中,dtoverlay参数通常用于启用或配置特定的硬件设备,例如摄像头、显示屏、音频接口等。通过在配置文件中添加dtoverlay行,并指定要加载的设备树覆盖层的名称,可以告诉内核在启动过程中加载相应的设备树覆盖层,从而实现对硬件设备的支持和配置。
例如,dtoverlay=vc4-kms-v3d表示加载名为vc4-kms-v3d的设备树覆盖层,该覆盖层用于启用VC4显卡的DRM(Direct Rendering Manager)驱动,以充分利用树莓派上的图形硬件资源。

dtparam

什么是dt?
DT:device tree

Raspberry Pis的设备树配置文件支持许多参数,例如启用I2C和SPI接口。许多DT overlay可以通过使用参数进行配置。这两种类型的参数都可以使用dtparam设置来提供。此外,可以将overlay参数附加到overlay选项中,用逗号分隔,但要注意行长度限制为98个字符。

arm_boost (Raspberry Pi 4 Only)

所有树莓派400s和更新版本的树莓派4B都为SoC电压轨配备了第二个开关模式电源,这允许默认的涡轮模式时钟从1.5GHz增加到1.8GHz。此更改在树莓派操作系统中默认启用。将arm_boost=0设置为禁用。

  • 这个从参数用于将ARM频率(arm_freq)增加到硬件支持的最高频率。简而言之,它可以提高树莓派(Raspberry Pi)上ARM处理器的时钟频率,从而提升处理性能。但需要注意的是,提高时钟频率也会导致功耗和热量的增加,因此在使用arm_boost时要权衡性能和散热之间的关系。

start_file, fixup_file

这些选项指定在启动之前传输到VideoCore GPU的firmware文件。

start_file指定要使用的VideoCore固件文件。

fixup_file指定用于修复start_file中使用的内存位置以匹配GPU内存分割的文件。

注意,start_file和fixup_file是一对匹配的文件——使用不匹配的文件将阻止单板启动。这是一个高级选项,所以我们建议您使用start_x和start_debug而不是这个选项。

cmdline

cmdline是引导分区上读取内核命令行字符串的备选文件名;默认值为“cmdline.txt”

cmdline参数在boot引导内核启动时传递给内核,它的作用是指导内核启动。
在内核启动阶段,内核会解析cmdline,并根据cmdline的内容进行配置和运行。
cmdline参数通常以“项目名=项目值”的形式存在,内核解析时会将这些参数一一解析并使用。

例如,
cmdline中可能包含root参数,用于指定根文件系统的位置;
console参数,用于指定控制台输出设备等。
这些参数对于内核在启动过程中的配置非常重要,它们确保了系统能够正确地初始化并运行。

arm_64bit

arm_64bit参数用于启用或禁用ARM的64位模式。

当设置为启用(enabled)时,它可以使ARM处理器在64位模式下运行,从而支持更大的内存寻址空间和更高效的数据处理能力。64位模式可以提供更大的虚拟地址空间,更多的通用寄存器以及更高的性能。

然而,需要注意的是,启用64位模式也会增加功耗和热量生成。因此,在使用arm_64bit参数时,需要权衡性能提升和散热要求之间的关系。

在一些特定的应用场景中,如需要处理大量数据或运行内存密集型任务时,启用64位模式可能更加有利。但对于一些资源有限或对功耗要求较高的环境,禁用64位模式可能更为合适。

总而言之,arm_64bit参数的作用是控制ARM处理器是否在64位模式下运行,从而影响系统的性能和功耗。正确的设置取决于具体的应用需求和硬件配置。

64位内核只适用于树莓派3,3 +,4,400,Zero 2w和2B rev 1.2,以及树莓派计算模块3,3 +和4。

树莓派5只支持64位内核,因此此参数已被删除。

otg_mode (Raspberry Pi 4 Only)

树莓派的otg_mode参数用于启用或禁用USB OTG(On-The-Go)模式。USB OTG是一种USB规范,允许USB设备在不需要主机(如电脑)的情况下互相通信。通过启用otg_mode参数,树莓派可以作为USB OTG设备,与其他USB设备直接进行数据传输和通信。

otg_mode设置为启用时,树莓派上的USB接口将作为OTG接口,可以支持USB设备的连接和通信。这使得树莓派可以与其他USB设备(如智能手机、平板电脑或其他USB外设)进行连接和数据交换,扩展了树莓派的功能和应用场景。

然而,需要注意的是,启用otg_mode参数可能会影响树莓派上其他USB接口的正常工作。因此,在使用otg_mode参数时,需要确保对USB接口的使用没有冲突,并根据实际需求进行适当的配置。

总而言之,otg_mode参数用于控制树莓派是否启用USB OTG模式,从而实现与其他USB设备的直接连接和通信。正确的设置取决于具体的应用需求和硬件配置。

USB on - on -
go(通常缩写为OTG)是一种允许支持USB设备使用适当的OTG电缆将自己配置为USB主机的功能。在旧的Raspberry Pi上,在USB
host 和device mode下使用单个USB 2控制器。 树莓派4B和树莓派400(不是CM4或CM4IO)增加了一个高性能的USB
3控制器,通过PCIe连接,以驱动主USB端口。USB- c电源连接器上仍然可以使用传统的USB
2控制器作为设备(otg_mode=0,默认值)。

otg_mode=1请求将功能更强大的XHCI USB 2控制器用作该USB- c连接器上的另一个主机控制器。

由于CM4和CM4IO不包括外部USB 3控制器,因此树莓派操作系统映像在CM4上设置otg_mode=1以获得更好的性能。

超频参数

在这里插入图片描述

ref

官网

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

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【小白进阶】Linux 调试大法——gdb

初衷 gdb调试是每一个后端开发工程师所必备的技能&#xff0c;我们工作总是会用gdb协助我们去分析和调试问题。但是大部分同学的技能仅停留在最基础的查看问题。即gdb program -->r --> 问题复现 --> bt 查看源码中的哪一行出现了错误。再稍微熟练点的&#xff0c;可能…

Kali 修改IP地址和DNS 开启SSH和远程桌面

一、修和IP和DNS 1、打开配置文件 vim /etc/network/interfaces# 加入 auto eth0 iface eth0 inet static address 10.3.0.231 netmask 255.255.255.0 gateway 10.3.0.12、取消IP地址 ip addr flush dev eth0 3、配置DNS vim /etc/resolv.confnameserver 114.114.114.114 …

uniapp 使用web-view外接三方

来源 前阵子有个需求是需要在原有的项目上加入一个电子签名的功能&#xff0c;为了兼容性和复用性后面解决方法是将这个电子签名写在一个新的项目中&#xff0c;然后原有的项目使用web-view接入这个电子签名项目&#xff1b; 最近又有一个需求&#xff0c;是需要接入第三方的…

【C++】C++11

一、C11 简介 C11 - cppreference.com 在 2003 年 C 标准委员会曾经提交了一份技术勘误表&#xff08;简称TC1&#xff09;&#xff0c;使得 C03 这个名字已经取代了 C98 称为 C11 之前的最新 C 标准名称。不过由于 C03&#xff08;TC1&#xff09;主要是对 C98 标准中的漏洞进…

前馈全连接层

B站教学视频链接&#xff1a;2.3.4前馈全连接层-part2_哔哩哔哩_bilibili

渗透测试-环境部署

环境部署 一、kali的环境部署二、DNSenum工具&#xff1a;深入挖掘目标域名的DNS信息三、安装Burpsuite四、安装根证书五、JSFinder的使用六、App、小程序、公众号提取 一、kali的环境部署 1.配置SSH 修改配置文件 vi /etc/ssh/sshd_config 找到 # PermitRootLogin prohibit…

应用场景丨智慧社区怎么有效预警内涝积水灾害

在繁华的社区中&#xff0c;一场突如其来的暴雨可能会让整个社区陷入“水深火热”。面对这样的困境&#xff0c;社区内涝积水监测系统应运而生&#xff0c;成为社区生命线的重要守护者。 社区内涝积水监测系统是一套高科技预警机制&#xff0c;它运用传感器、数据采集器、通信网…

java开发之个微群聊自动添加好友

请求URL&#xff1a; http://域名/addRoomMemberFriend 请求方式&#xff1a; POST 请求头Headers&#xff1a; Content-Type&#xff1a;application/jsonAuthorization&#xff1a;login接口返回 参数&#xff1a; 参数名必选类型说明wId是String登录实例标识chatRoom…

Node.js【文件系统模块、路径模块 、连接 MySQL、nodemon、操作 MySQL】(三)-全面详解(学习总结---从入门到深化)

目录 Node.js 文件系统模块&#xff08;二&#xff09; Node.js 文件系统模块&#xff08;三&#xff09; Node.js 文件系统模块&#xff08;四&#xff09; Node.js 路径模块 Node.js 连接 MySQL Node.js nodemon Node.js 操作 MySQL Node.js 应用 Node.js 文件系统模块…

Informer辅助笔记:data/dataloader.py

以WTH为例 import os import numpy as np import pandas as pdimport torch from torch.utils.data import Dataset, DataLoader # from sklearn.preprocessing import StandardScalerfrom utils.tools import StandardScaler from utils.timefeatures import time_featuresim…

vuepress-----6、时间更新

# 6、时间更新 基于Git提交时间修改文字时间格式 moment # 最后更新时间 # 时间格式修改 下载库文件 yarn add momentconst moment require(moment); moment.locale(zh-cn)module.exports {themeConfig: {lastUpdated: 更新时间,},plugins: [[vuepress/last-updated,{trans…

大数据分析与应用实验任务十

大数据分析与应用实验任务十 实验目的&#xff1a; 通过实验掌握spark SQL的基本编程方法&#xff1b; 熟悉RDD到DataFrame的转化方法&#xff1b; 通过实验熟悉spark SQL管理不同数据源的方法。 实验任务&#xff1a; 进入pyspark实验环境&#xff0c;在桌面环境打开jup…