传统的 config.txt 选项

遗留选项

此处描述的 config.txt 选项被视为旧设置,Raspberry Pi OS Bookworm不使用,也不再受官方支持。它们要么与固件图形驱动程序等旧软件相关,要么已被弃用,要么不太可能被大多数人使用。然而,它们仍然记录在案,因为它们可能仍然对旧操作系统的用户或进行裸机开发的人有益。

旧版引导选项

(另请参见 config.txt Boot Options。)

start_x , start_debug

这些提供了一些替代 start_filefixup_file 设置的快捷方式,并且是选择固件配置的推荐方法。

start_x=1

  start_file=start_x.elf
  fixup_file=fixup_x.dat

在Raspberry Pi 4上,如果存在文件 start4x.elffixup4x.dat ,则将使用这些文件。

start_debug=1

  start_file=start_db.elf
  fixup_file=fixup_db.dat

disable_commandline_tags

disable_commandline_tags 命令设为 1 ,以阻止 start.elf 在启动内核前填写 ATAGS(来自 0x100 的内存)。

arm_control

Warning
此设置已弃用。请改用 arm_64bit 来启用64位内核。

设置特定于板的控制位。

armstub

armstub 是引导分区中加载 ARM 存根的文件名。默认 ARM 存根存储在固件中,并根据 Raspberry Pi 型号和各种设置自动选择。

存根是先于内核运行的一小段 ARM 代码。它的任务是在将控制权传递给内核之前设置中断控制器等低级硬件。

arm_peri_high

arm_peri_high 设置为 1 以在 Raspberry Pi 4 上启用高外设模式。如果加载了合适的DTB,它会自动设置。

Note
在没有兼容设备树的情况下启用高外设模式将使您的系统无法启动。目前缺少 ARM 存根支持,因此您还需要使用 armstub 加载合适的文件。

kernel_address

kernel_address 是加载内核映像的内存地址。默认情况下,32 位内核加载到地址 0x8000 ,64 位内核加载到地址 0x200000 。如果设置了 kernel_old ,内核将被加载到地址 0x0

kernel_old

kernel_old 设置为1,将内核加载到内存地址 0x0

init_uart_baud

init_uart_baud 是UART的初始波特率。默认值为 115200

init_uart_clock

init_uart_clock 是初始 UART 时钟频率。默认值为 48000000 (48MHz)。请注意,该时钟仅适用于 UART0(Linux 中为 ttyAMA0),UART 的最大波特率限制为时钟的 1/16。Raspberry Pi 3 和 Raspberry Pi Zero 的默认 UART 为 UART1(Linux 中为 ttyS0),其时钟为核心 VPU 时钟 - 至少 250MHz。

bootcode_delay

bootcode_delay 命令会在 bootcode.bin 中设置延迟秒数,然后再加载 start.elf :默认值为 0

例如,如果 Raspberry Pi 和显示器的电源相同,但显示器的启动时间比 Raspberry Pi 长,那么在读取显示器的 EDID 之前插入一个延迟值就特别有用。如果在初始启动时显示器检测错误,但在软启动 Raspberry Pi 而不移除显示器电源时检测正确,请尝试设置该值。

boot_delay

boot_delay 命令在加载内核之前强制在start中等待给定的秒数:默认值为0。以毫秒为单位的总延迟计算为 (1000 x boot_delay) + boot_delay_ms 。如果您的SD卡需要一段时间才能准备好,这将非常有用Linux。

boot_delay_ms

boot_delay_ms 命令表示在加载内核之前,在start中等待给定的毫秒数和boot_delay。默认值为0。

enable_gic (仅限Raspberry Pi 4)

在Raspberry Pi 4B上,如果该值设置为 0 ,则中断将使用传统中断控制器而不是通过GIC-400路由到Arm内核。默认值为 1

sha256

如果设置为非零,则启用由 sha256sum 实用程序生成的加载文件(内核、initramfs、设备树.dtb文件和overlay)的SHA256哈希记录。如果启用,日志记录输出将转到UART,也可以通过 sudo vclog—​msg 访问。此选项在调试启动问题时可能很有用,但代价是可能会增加_many_秒的启动时间。在所有平台上默认为0。

uart_2ndstage

设置 uart_2ndstage=1 会导致第二阶段加载程序(Raspberry Pi 4之前设备上的 bootcode.bin ,或Raspberry Pi 4设备的EEPROM中的引导代码)和主固件( start*.elf )将诊断信息输出到UART0。

upstream_kernel

如果使用了 upstream_kernel=1 ,固件会将 os_prefix 设置为 "upstream/",除非已明确设置为其他值,但与其他 os_prefix 值一样,如果在使用前缀时无法找到所需的内核和 .dtb 文件,该值将被忽略。

固件也会优先选择上游 Linux 的 DTB 名称(例如,"bcm2837-rpi-3-b.dtb "而不是 "bcm2710-rpi-3-b.dtb")。如果找不到上游文件,固件将加载下游变体,并自动应用 "上游 "覆盖进行一些调整。请注意,这个过程是在 os_prefix 确定之后发生的。

传统GPIO控制

(另请参见 config.txt GPIO控制。)

enable_jtag_gpio

设置 enable_jtag_gpio=1 会为GPIO引脚22-27选择Alt4模式,并设置一些内部SoC连接,为Arm CPU启用JTAG接口。它适用于所有型号的树莓派。

Pin # Function

GPIO22

ARM_TRST

GPIO23

ARM_RTCK

GPIO24

ARM_TDO

GPIO25

ARM_TCK

GPIO26

ARM_TDI

GPIO27

ARM_TMS

传统超频选项

(另请参见 config.txt超频选项。)

超频

never_over_voltage

在一次性可编程(OTP)存储器中设置一个位,以防止设备过压。这旨在锁定Raspberry Pi,从而防止使用无效过压无意或恶意设置保修位。

disable_auto_turbo

在Raspberry Pi 2和3上,设置此标志将禁用GPU进入turbo模式,它可以在特定负载下执行此操作。

遗留条件过滤器

(另请参见 config.txt条件过滤器。)

The [HDMI:*] 过滤器

Note
此过滤器仅适用于Raspberry Pi 4。

树莓派4有两个HDMI端口,对于许多与HDMI相关的 config.txt 命令,需要指定引用的是哪个HDMI端口。HDMI条件过滤后续HDMI配置到特定端口。

 [HDMI:0]
   hdmi_group=2
   hdmi_mode=45
 [HDMI:1]
   hdmi_group=2
   hdmi_mode=67

所有特定于端口的HDMI命令都可以使用替代的 变量:索引 语法。您可以使用以下内容,与前面的示例相同:

 hdmi_group:0=2
 hdmi_mode:0=45
 hdmi_group:1=2
 hdmi_mode:1=67

旧内存选项

(另请参见 config.txt内存选项

Note
Raspberry Pi 5 不会代表操作系统分配 GPU 内存,因此以下设置不会产生任何影响。

gpu_mem

指定为GPU独占使用预留多少内存(以兆字节为单位):剩余内存分配给Arm CPU供操作系统使用。对于内存小于1GB的Raspberry Pi,默认值为 64 ;对于内存为1GB或更多的Raspberry Pi,默认值为 76

Important
与x86机器上的GPU不同,增加内存可以提高3D性能,VideoCore的架构意味着*分配超过必要内存不会提高3D性能*,这样做实际上会损害性能。

为确保Linux的最佳性能,您应该将 gpu_mem 设置为尽可能低的值。如果特定图形功能无法正常工作,请尝试增加 gpu_mem 的值,同时注意下面显示的推荐最大值。

在Raspberry Pi 4上,GPU的3D组件有自己的内存管理单元(MMU),并且不使用来自 gpu_mem 分配的内存。相反,内存是在Linux内动态分配的。与以前的型号相比,这允许在Raspberry Pi 4上为 gpu_mem 指定更小的值。

在传统内核上,分配给GPU的内存用于显示、3D、编解码器和相机目的,以及一些基本的固件管理。下面指定的最大值假定您正在使用所有这些功能。如果不是,则应使用较小的gpu_mem值。

建议的最大值如下:

total RAM gpu_mem recommended maximum

256MB

128

512MB

384

1GB or greater

512 , 76 on the Raspberry Pi 4

Important
树莓派操作系统上的相机堆栈(libcamera)使用LinuxCMA内存来分配缓冲区,而不是GPU内存,因此增加GPU内存大小没有好处。

可以将 gpu_mem 设置为较大的值,但是应该避免这样做,因为它会导致问题,例如阻止Linux启动。最小值是 16 ,但是这会禁用某些GPU功能。

您还可以使用 gpu_mem_256gpu_mem_512gpu_mem_1024 ,以便在内存容量不同的 Raspberry Pi 之间交换同一张 SD 卡,而无需每次都编辑 config.txt

gpu_mem_256

gpu_mem_256 命令为具有256MB内存的Raspberry Pi设置GPU内存(以兆字节为单位)。如果内存大小不是256MB,则忽略该命令。该命令会覆盖 gpu_mem

gpu_mem_512

gpu_mem_512 命令为具有512MB内存的Raspberry Pi设置GPU内存(以兆字节为单位)。如果内存大小不是512MB,则忽略该命令。该命令会覆盖 gpu_mem

gpu_mem_1024

gpu_mem_1024 命令为具有1GB或更多内存的Raspberry Pi设置GPU内存(以兆字节为单位)。如果内存小于1GB,则忽略该命令。该命令会覆盖 gpu_mem

disable_l2cache

将其设置为 1 将禁止 CPU 访问 GPU 的二级缓存,并需要相应的二级禁用内核。BCM2835 上的默认值为 0 。在 BCM2836、BCM2837、BCM2711 和 BCM2712 上,ARM 拥有自己的二级缓存,因此默认值为 1 。标准的 Raspberry Pi kernel.imgkernel7.img 版本反映了缓存设置的这种差异。

旧版视频选项

(另请参见 config.txt视频选项

HDMI模式

Note
对于有多个HDMI接口的设备,一些HDMI命令可以应用于任一端口。您可以使用语法 <command>:<port> (其中port为0或1)来指定设置应应用于哪个端口。如果未指定端口,则默认值为0。如果您在不需要端口号的命令上指定端口号,则忽略该端口。有关语法和替代机制的更多详细信息,请参阅文档的 条件部分 的HDMI部分。

hdmi_safe

hdmi_safe 设置为 1 将导致 安全模式 设置用于尝试以最大HDMI兼容性启动。这与设置以下参数相同:

hdmi_force_hotplug=1
hdmi_ignore_edid=0xa5000080
config_hdmi_boost=4
hdmi_group=2
hdmi_mode=4
disable_overscan=0
overscan_left=24
overscan_right=24
overscan_top=24
overscan_bottom=24

hdmi_ignore_edid

如果您的显示器没有准确的 EDID,将 hdmi_ignore_edid 设置为 0xa5000080 可以忽略EDID/显示数据。它需要这个异常值来确保它不会被意外触发。

hdmi_edid_file

hdmi_edid_file 设置为 1 将导致GPU从位于引导分区中的 edid.dat 文件中读取EDID数据,而不是从监视器中读取。

hdmi_edid_filename

在Raspberry Pi 4B上,可以使用 hdmi_edid_filename 命令指定要使用的EDID文件的文件名,还可以指定文件要应用到哪个端口,这也需要 hdmi_edid_file=1 来启用EDID文件。

例如:

hdmi_edid_file=1
hdmi_edid_filename:0=FileForPortZero.edid
hdmi_edid_filename:1=FileForPortOne.edid

hdmi_force_edid_audio

hdmi_force_edid_audio 设置为 1 会假设显示器支持所有音频格式,即使不支持DTS/AC3也允许直通。

hdmi_ignore_edid_audio

hdmi_ignore_edid_audio 设置为 1 会假设显示器不支持所有音频格式。这意味着ALSA将默认使用模拟音频(耳机)插孔。

hdmi_force_edid_3d

hdmi_force_edid_3d 设置为 1 会假设所有CEA模式都支持3D,即使EDID不表示支持3D。

hdmi_ignore_cec_init

hdmi_ignore_cec_init 设置为 1 将停止启动期间发送的初始活动源消息。这可以防止启用CEC的电视在您重新启动Raspberry Pi时脱离待机状态和频道切换。

hdmi_ignore_cec

hdmi_ignore_cec 设置为 1 会假设显示器根本不支持 CEC。不支持CEC功能。

cec_osd_name

cec_osd_name命令设置设备的初始CEC名称。默认值为Raspberry Pi。

hdmi_pixel_encoding

hdmi_pixel_encoding命令强制像素编码模式。默认情况下,它将使用从EDID请求的模式,因此您不需要更改它。

hdmi_pixel_encoding result

0

default (RGB limited for CEA, RGB full for DMT)

1

RGB limited (16-235)

2

RGB full (0-255)

3

YCbCr limited (16-235)

4

YCbCr full (0-255)

hdmi_max_pixel_freq

固件和KMS使用像素频率来过滤HDMI模式。请注意,这与帧率不同。它指定有效模式可以具有的最大频率,从而剔除更高频率的模式。例如,如果您希望禁用所有4K模式,您可以指定最大频率为200000000,因为所有4K模式的频率都大于此。

hdmi_blanking

hdmi_blanking 命令控制当操作系统使用DPMS要求显示器进入待机模式以节省电力时会发生什么。如果此选项未设置或设置为0,HDMI输出将被取消,但不会关闭。为了模仿其他计算机的行为,您可以通过将此选项设置为1将HDMI输出也设置为关闭:连接的显示器将进入低功耗待机模式。

hdmi_blanking result

0

HDMI output will be blanked

1

HDMI output will be switched off and blanked

hdmi_drive

hdmi_drive 命令允许您在HDMI和DVI输出模式之间进行选择。

hdmi_drive result

1

Normal DVI mode (no sound)

2

Normal HDMI mode (sound will be sent if supported and enabled)

config_hdmi_boost

配置HDMI接口的信号强度。最小值为 0 ,最大值为 11

原始Model B和A的默认值为 2 。Model B+和所有更高型号的默认值为 5

如果您看到HDMI问题(斑点、干扰),请尝试 7 。很长的HDMI电缆可能需要高达 11 ,但除非绝对必要,否则不应使用这么高的值。

在Raspberry Pi 4上忽略此选项。

hdmi_group

hdmi_group 命令将HDMI输出组定义为CEA(消费电子协会,电视通常使用的标准)或DMT(显示器计时,显示器通常使用的标准)。此设置应与 hdmi_mode 结合使用。

hdmi_group result

0

Auto-detect from EDID

1

CEA

2

DMT

hdmi_mode

hdmi_group 一起使用, hdmi_group 定义了HDMI输出格式。格式模式编号来自 CTA规范

Note
并非所有模式都适用于所有型号。

如果 hdmi_group=1 (CEA),这些值有效:

hdmi_mode Resolution Frequency Screen aspect Notes

1

VGA (640x480)

60Hz

4:3

2

480p

60Hz

4:3

3

480p

60Hz

16:9

4

720p

60Hz

16:9

5

1080i

60Hz

16:9

6

480i

60Hz

4:3

7

480i

60Hz

16:9

8

240p

60Hz

4:3

9

240p

60Hz

16:9

10

480i

60Hz

4:3

pixel quadrupling

11

480i

60Hz

16:9

pixel quadrupling

12

240p

60Hz

4:3

pixel quadrupling

13

240p

60Hz

16:9

pixel quadrupling

14

480p

60Hz

4:3

pixel doubling

15

480p

60Hz

16:9

pixel doubling

16

1080p

60Hz

16:9

17

576p

50Hz

4:3

18

576p

50Hz

16:9

19

720p

50Hz

16:9

20

1080i

50Hz

16:9

21

576i

50Hz

4:3

22

576i

50Hz

16:9

23

288p

50Hz

4:3

24

288p

50Hz

16:9

25

576i

50Hz

4:3

pixel quadrupling

26

576i

50Hz

16:9

pixel quadrupling

27

288p

50Hz

4:3

pixel quadrupling

28

288p

50Hz

16:9

pixel quadrupling

29

576p

50Hz

4:3

pixel doubling

30

576p

50Hz

16:9

pixel doubling

31

1080p

50Hz

16:9

32

1080p

24Hz

16:9

33

1080p

25Hz

16:9

34

1080p

30Hz

16:9

35

480p

60Hz

4:3

pixel quadrupling

36

480p

60Hz

16:9

pixel quadrupling

37

576p

50Hz

4:3

pixel quadrupling

38

576p

50Hz

16:9

pixel quadrupling

39

1080i

50Hz

16:9

reduced blanking

40

1080i

100Hz

16:9

41

720p

100Hz

16:9

42

576p

100Hz

4:3

43

576p

100Hz

16:9

44

576i

100Hz

4:3

45

576i

100Hz

16:9

46

1080i

120Hz

16:9

47

720p

120Hz

16:9

48

480p

120Hz

4:3

49

480p

120Hz

16:9

50

480i

120Hz

4:3

51

480i

120Hz

16:9

52

576p

200Hz

4:3

53

576p

200Hz

16:9

54

576i

200Hz

4:3

55

576i

200Hz

16:9

56

480p

240Hz

4:3

57

480p

240Hz

16:9

58

480i

240Hz

4:3

59

480i

240Hz

16:9

60

720p

24Hz

16:9

61

720p

25Hz

16:9

62

720p

30Hz

16:9

63

1080p

120Hz

16:9

64

1080p

100Hz

16:9

65

Custom

66

720p

25Hz

64:27

Pi 4

67

720p

30Hz

64:27

Pi 4

68

720p

50Hz

64:27

Pi 4

69

720p

60Hz

64:27

Pi 4

70

720p

100Hz

64:27

Pi 4

71

720p

120Hz

64:27

Pi 4

72

1080p

24Hz

64:27

Pi 4

73

1080p

25Hz

64:27

Pi 4

74

1080p

30Hz

64:27

Pi 4

75

1080p

50Hz

64:27

Pi 4

76

1080p

60Hz

64:27

Pi 4

77

1080p

100Hz

64:27

Pi 4

78

1080p

120Hz

64:27

Pi 4

79

1680x720

24Hz

64:27

Pi 4

80

1680x720

25z

64:27

Pi 4

81

1680x720

30Hz

64:27

Pi 4

82

1680x720

50Hz

64:27

Pi 4

83

1680x720

60Hz

64:27

Pi 4

84

1680x720

100Hz

64:27

Pi 4

85

1680x720

120Hz

64:27

Pi 4

86

2560x720

24Hz

64:27

Pi 4

87

2560x720

25Hz

64:27

Pi 4

88

2560x720

30Hz

64:27

Pi 4

89

2560x720

50Hz

64:27

Pi 4

90

2560x720

60Hz

64:27

Pi 4

91

2560x720

100Hz

64:27

Pi 4

92

2560x720

120Hz

64:27

Pi 4

93

2160p

24Hz

16:9

Pi 4

94

2160p

25Hz

16:9

Pi 4

95

2160p

30Hz

16:9

Pi 4

96

2160p

50Hz

16:9

Pi 4

97

2160p

60Hz

16:9

Pi 4

98

4096x2160

24Hz

256:135

Pi 4

99

4096x2160

25Hz

256:135

Pi 4

100

4096x2160

30Hz

256:135

Pi 4

101

4096x2160

50Hz

256:135

Pi 41

102

4096x2160

60Hz

256:135

Pi 41

103

2160p

24Hz

64:27

Pi 4

104

2160p

25Hz

64:27

Pi 4

105

2160p

30Hz

64:27

Pi 4

106

2160p

50Hz

64:27

Pi 4

107

2160p

60Hz

64:27

Pi 4

1. 仅在核心频率超频时可用:设置 core_freq_min=600core_freq=600 。请参阅 超频

像素加倍和四倍表示更高的时钟速率,每个像素分别重复两到四次。

如果 hdmi_group=2 (DMT),这些值有效:

hdmi_mode Resolution Frequency Screen Aspect Notes

1

640x350

85Hz

2

640x400

85Hz

16:10

3

720x400

85Hz

4

640x480

60Hz

4:3

5

640x480

72Hz

4:3

6

640x480

75Hz

4:3

7

640x480

85Hz

4:3

8

800x600

56Hz

4:3

9

800x600

60Hz

4:3

10

800x600

72Hz

4:3

11

800x600

75Hz

4:3

12

800x600

85Hz

4:3

13

800x600

120Hz

4:3

14

848x480

60Hz

16:9

15

1024x768

43Hz

4:3

incompatible with Raspberry Pi

16

1024x768

60Hz

4:3

17

1024x768

70Hz

4:3

18

1024x768

75Hz

4:3

19

1024x768

85Hz

4:3

20

1024x768

120Hz

4:3

21

1152x864

75Hz

4:3

22

1280x768

60Hz

15:9

reduced blanking

23

1280x768

60Hz

15:9

24

1280x768

75Hz

15:9

25

1280x768

85Hz

15:9

26

1280x768

120Hz

15:9

reduced blanking

27

1280x800

60

16:10

reduced blanking

28

1280x800

60Hz

16:10

29

1280x800

75Hz

16:10

30

1280x800

85Hz

16:10

31

1280x800

120Hz

16:10

reduced blanking

32

1280x960

60Hz

4:3

33

1280x960

85Hz

4:3

34

1280x960

120Hz

4:3

reduced blanking

35

1280x1024

60Hz

5:4

36

1280x1024

75Hz

5:4

37

1280x1024

85Hz

5:4

38

1280x1024

120Hz

5:4

reduced blanking

39

1360x768

60Hz

16:9

40

1360x768

120Hz

16:9

reduced blanking

41

1400x1050

60Hz

4:3

reduced blanking

42

1400x1050

60Hz

4:3

43

1400x1050

75Hz

4:3

44

1400x1050

85Hz

4:3

45

1400x1050

120Hz

4:3

reduced blanking

46

1440x900

60Hz

16:10

reduced blanking

47

1440x900

60Hz

16:10

48

1440x900

75Hz

16:10

49

1440x900

85Hz

16:10

50

1440x900

120Hz

16:10

reduced blanking

51

1600x1200

60Hz

4:3

52

1600x1200

65Hz

4:3

53

1600x1200

70Hz

4:3

54

1600x1200

75Hz

4:3

55

1600x1200

85Hz

4:3

56

1600x1200

120Hz

4:3

reduced blanking

57

1680x1050

60Hz

16:10

reduced blanking

58

1680x1050

60Hz

16:10

59

1680x1050

75Hz

16:10

60

1680x1050

85Hz

16:10

61

1680x1050

120Hz

16:10

reduced blanking

62

1792x1344

60Hz

4:3

63

1792x1344

75Hz

4:3

64

1792x1344

120Hz

4:3

reduced blanking

65

1856x1392

60Hz

4:3

66

1856x1392

75Hz

4:3

67

1856x1392

120Hz

4:3

reduced blanking

68

1920x1200

60Hz

16:10

reduced blanking

69

1920x1200

60Hz

16:10

70

1920x1200

75Hz

16:10

71

1920x1200

85Hz

16:10

72

1920x1200

120Hz

16:10

reduced blanking

73

1920x1440

60Hz

4:3

74

1920x1440

75Hz

4:3

75

1920x1440

120Hz

4:3

reduced blanking

76

2560x1600

60Hz

16:10

reduced blanking

77

2560x1600

60Hz

16:10

78

2560x1600

75Hz

16:10

79

2560x1600

85Hz

16:10

80

2560x1600

120Hz

16:10

reduced blanking

81

1366x768

60Hz

16:9

NOT on Raspberry Pi 4

82

1920x1080

60Hz

16:9

1080p

83

1600x900

60Hz

16:9

reduced blanking

84

2048x1152

60Hz

16:9

reduced blanking

85

1280x720

60Hz

16:9

720p

86

1366x768

60Hz

16:9

reduced blanking

Note
有一个像素时钟限制。树莓派4之前的型号支持的最高模式是60Hz时的1920×1200,减少了消隐,而树莓派4在60Hz时可以支持高达4096×2160(通俗地说4k)。另请注意,如果您使用树莓派4的两个HDMI端口进行4k输出,那么您在两个端口上都被限制为30Hz。

hdmi_timings

这允许为自定义模式设置原始HDMI时序值,使用 hdmi_group=2hdmi_mode=87 进行选择。

hdmi_timings=<h_active_pixels> <h_sync_polarity> <h_front_porch> <h_sync_pulse> <h_back_porch> <v_active_lines> <v_sync_polarity> <v_front_porch> <v_sync_pulse> <v_back_porch> <v_sync_offset_a> <v_sync_offset_b> <pixel_rep> <frame_rate> <interlaced> <pixel_freq> <aspect_ratio>
<h_active_pixels> = horizontal pixels (width)
<h_sync_polarity> = invert hsync polarity
<h_front_porch>   = horizontal forward padding from DE active edge
<h_sync_pulse>    = hsync pulse width in pixel clocks
<h_back_porch>    = vertical back padding from DE active edge
<v_active_lines>  = vertical pixels height (lines)
<v_sync_polarity> = invert vsync polarity
<v_front_porch>   = vertical forward padding from DE active edge
<v_sync_pulse>    = vsync pulse width in pixel clocks
<v_back_porch>    = vertical back padding from DE active edge
<v_sync_offset_a> = leave at zero
<v_sync_offset_b> = leave at zero
<pixel_rep>       = leave at zero
<frame_rate>      = screen refresh rate in Hz
<interlaced>      = leave at zero
<pixel_freq>      = clock frequency (h_active_pixels + h_front_porch + h_sync_pulse + h_back_porch)
                                    * (v_active_lines + v_front_porch + v_sync_pulse + v_back_porch)
                                    * framerate
<aspect_ratio>    = [see footnote]

长宽比可以设置为八个值之一。从以下选项中选择一个表示与屏幕最相似的长宽比的值:

Aspect Ratio Name Value

4:3

HDMI_ASPECT_4_3

1

14:9

HDMI_ASPECT_14_9

2

16:9

HDMI_ASPECT_16_9

3

5:4

HDMI_ASPECT_5_4

4

16:10

HDMI_ASPECT_16_10

5

15:9

HDMI_ASPECT_15_9

6

21:9

HDMI_ASPECT_21_9

7

64:27

HDMI_ASPECT_64_27

8

hdmi_force_mode

设置为 1 将从内部列表中删除除 hdmi_modehdmi_group 指定的所有其他模式,这意味着它们不会出现在任何枚举的模式列表中。如果显示器似乎忽略了 hdmi_modehdmi_group 设置,此选项可能会有所帮助。

edid_content_type

强制设置EDID内容类型为特定值。

选项有:

  • 0 = EDID_ContentType_NODATA , 内容类型无

  • 1 = EDID_ContentType_Graphics ,内容类型图形,ITC必须设置为1

  • 2 = EDID_ContentType_Photo , 内容类型照片

  • 3 = EDID_ContentType_Cinema , 内容类型影院

  • 4 = EDID_ContentType_Game ,,内容类型游戏

哪些值对我的显示器有效?

您的HDMI显示器可能仅支持一组有限的格式。要了解支持哪些格式,请使用以下方法:

  • 设置输出格式为VGA 60Hz( hdmi_group=1hdmi_mode=1 )并启动您的树莓派

  • 输入以下命令以提供CEA支持的模式列表: /opt/vc/bin/tvservice -m CEA

  • 输入以下命令以给出DMT支持的模式列表: /opt/vc/bin/tvservice -m DMT

  • 输入以下命令以显示您的当前状态: /opt/vc/bin/tvservice -s

  • 输入以下命令以从显示器转储更详细的信息: /opt/vc/bin/tvservice -d edid.dat; /opt/vc/bin/edidparser edid.dat

在使用默认HDMI模式解决问题时,还应提供 edid.dat

自定义模式

如果您的显示器需要不在上表之一中的模式,则可以为其定义自定义CVT模式:

hdmi_cvt=<width> <height> <framerate> <aspect> <margins> <interlace> <rb>
Value Default Description

width

(required)

width in pixels

height

(required)

height in pixels

framerate

(required)

framerate in Hz

aspect

3

aspect ratio 1=4:3, 2=14:9, 3=16:9, 4=5:4, 5=16:10, 6=15:9

margins

0

0=margins disabled, 1=margins enabled

interlace

0

0=progressive, 1=interlaced

rb

0

0=normal, 1=reduced blanking

可以省略末尾的字段以使用默认值。

请注意,这只是*创建*了模式(第 2 组模式 87)。要使 Raspberry Pi 默认使用该模式,必须添加一些额外设置。例如,选择 800×480 分辨率并启用音频驱动:

hdmi_cvt=800 480 60 6
hdmi_group=2
hdmi_mode=87
hdmi_drive=2

如果您的显示器不支持标准CVT计时,这可能不起作用。

复合视频模式

sdtv_mode

sdtv_mode 命令定义了用于复合视频输出的电视标准:

sdtv_mode result

0 (default)

Normal NTSC

1

Japanese version of NTSC — no pedestal

2

Normal PAL

3

Brazilian version of PAL — 525/60 rather than 625/50, different subcarrier

16

Progressive scan NTSC

18

Progressive scan PAL

sdtv_aspect

sdtv_aspect 命令定义复合视频输出的长宽比。默认值为1。

sdtv_aspect result

1

4:3

2

14:9

3

16:9

sdtv_disable_colourburst

sdtv_disable_colourburst 设置为 1 会禁用复合视频输出上的彩色爆发。图片将以单色显示,但可能会看起来更清晰。

LCD显示器和触摸屏

display_default_lcd

如果检测到树莓派触摸显示器,它将用作默认显示,并将显示帧缓冲区。设置 display_default_lcd=0 将确保LCD不是默认显示,这通常意味着HDMI输出将是默认显示。LCD仍然可以通过从支持的应用程序中选择其显示编号来使用,例如omxplayer。

lcd_framerate

指定Raspberry Pi Touch Display的帧率,以Hz/fps为单位。默认为60Hz。

lcd_rotate

这使用LCD内置的翻转功能翻转显示屏,这在计算上比使用基于GPU的旋转操作简单。

例如, lcd_rotate=2 将使用上下颠倒的显示。

enable_dpi_lcd

启用连接到DPI GPIO的LCD显示器。这是为了允许使用并行显示接口使用第三方LCD显示器。

dpi_group , dpi_mode , dpi_output_format

dpi_groupdpi_mode config.txt `参数用于设置预定模式(如上面的HDMI所使用的DMT或CEA模式)。用户可以以与HDMI大致相同的方式生成自定义模式(参见`dpi_timings 部分)。

dpi_output_format 是一个位掩码,指定用于设置显示格式的各种参数。

dpi_timings

这允许为自定义模式设置原始DPI时序值,使用 dpi_group=2dpi_mode=87 进行选择。

dpi_timings=<h_active_pixels> <h_sync_polarity> <h_front_porch> <h_sync_pulse> <h_back_porch> <v_active_lines> <v_sync_polarity> <v_front_porch> <v_sync_pulse> <v_back_porch> <v_sync_offset_a> <v_sync_offset_b> <pixel_rep> <frame_rate> <interlaced> <pixel_freq> <aspect_ratio>
<h_active_pixels> = horizontal pixels (width)
<h_sync_polarity> = invert hsync polarity
<h_front_porch>   = horizontal forward padding from DE active edge
<h_sync_pulse>    = hsync pulse width in pixel clocks
<h_back_porch>    = vertical back padding from DE active edge
<v_active_lines>  = vertical pixels height (lines)
<v_sync_polarity> = invert vsync polarity
<v_front_porch>   = vertical forward padding from DE active edge
<v_sync_pulse>    = vsync pulse width in pixel clocks
<v_back_porch>    = vertical back padding from DE active edge
<v_sync_offset_a> = leave at zero
<v_sync_offset_b> = leave at zero
<pixel_rep>       = leave at zero
<frame_rate>      = screen refresh rate in Hz
<interlaced>      = leave at zero
<pixel_freq>      = clock frequency (h_active_pixels + h_front_porch + h_sync_pulse + h_back_porch)
                                    * (v_active_lines + v_front_porch + v_sync_pulse + v_back_porch)
                                    * framerate
<aspect_ratio>    = [see footnote]

长宽比可以设置为八个值之一。从以下选项中选择一个表示与屏幕最相似的长宽比的值:

Aspect ratio Name Value

4:3

HDMI_ASPECT_4_3

1

14:9

HDMI_ASPECT_14_9

2

16:9

HDMI_ASPECT_16_9

3

5:4

HDMI_ASPECT_5_4

4

16:10

HDMI_ASPECT_16_10

5

15:9

HDMI_ASPECT_15_9

6

21:9

HDMI_ASPECT_21_9

7

64:27

HDMI_ASPECT_64_27

8

通用显示选项

hdmi_force_hotplug

hdmi_force_hotplug 设置为 1 会假设HDMI一直存在,因此看起来连接了HDMI显示器。换句话说,即使没有检测到HDMI显示器,也将使用HDMI输出模式。

hdmi_ignore_hotplug

hdmi_ignore_hotplug 设置为 "1 "后,HDMI 视为未连接,因此看起来像是未连接 HDMI 显示器。因此,即使连接了显示器,HDMI 输出也将被禁用。

disable_overscan

disable_overscan 的默认值为0,它给出了左、右、上边缘和下边缘的默认过扫描值, 48 表示HDCEA模式, 32 表示SD CEA模式, 0 表示DMT模式。

disable_overscan 设置为 1 以禁用固件设置的 xref:configuration.adoc#underscan的默认值。

overscan_left

overscan_left 命令指定要添加到屏幕左边缘过扫描固件默认值的像素数。默认值为 0

如果文本离开屏幕左边缘,则增加此值;如果屏幕左边缘和文本之间有黑色边框,则减少它。

overscan_right

overscan_right 命令指定要添加到屏幕右边缘过扫描固件默认值的像素数。默认值为 0

如果文本从屏幕右边缘流出,则增加此值;如果屏幕右边缘和文本之间有黑色边框,则减少它。

overscan_top

overscan_top 命令指定要添加到屏幕上边缘过扫描固件默认值的像素数。默认值为 0

如果文本从屏幕顶部边缘流出,则增加此值;如果屏幕顶部边缘和文本之间有黑色边框,则减少它。

overscan_bottom

overscan_bottom命令指定要添加到屏幕底部边缘过扫描的固件默认值的像素数。默认值为 0

如果文本从屏幕底部边缘流出,则增加此值;如果屏幕底部边缘和文本之间有黑色边框,则减少它。

overscan_scale

overscan_scale 设置为 1 ,以强制任何非框架缓冲层符合过扫描设置。默认值为 0

Note
通常不推荐此功能:它会降低画质,因为显示器上的所有图层都将由GPU缩放。禁用显示器本身的过扫描是建议的选项,以避免图像被缩放两次(由GPU和显示器)。

framebuffer_width

framebuffer_width 命令指定控制台帧缓冲区宽度(以像素为单位)。默认值是显示宽度减去总水平过扫描。

framebuffer_height

framebuffer_height 命令以像素为单位指定控制台帧缓冲区高度。默认值是显示高度减去总垂直过扫描。

max_framebuffer_heightmax_framebuffer_width

指定内部帧缓冲区的最大尺寸。

framebuffer_depth

使用 framebuffer_depth 指定控制台帧缓冲区深度,以每像素位为单位。默认值为 16

framebuffer_depth result notes

8

8-bit framebuffer

Default RGB palette makes screen unreadable

16

16-bit framebuffer

24

24-bit framebuffer

May result in a corrupted display

32

32-bit framebuffer

May need to be used in conjunction with framebuffer_ignore_alpha=1

framebuffer_ignore_alpha

framebuffer_ignore_alpha 设置为 1 以禁用alpha通道。可以帮助显示32位 framebuffer_depth

framebuffer_priority

在具有多个显示器的系统中,使用传统(前KMS)图形驱动程序,这会强制特定的内部显示设备成为第一个Linux帧缓冲区(即 /dev/fb0 )。

可以设置的选项有:

Display ID

Main LCD

0

Secondary LCD

1

HDMI 0

2

Composite

3

HDMI 1

7

max_framebuffers

此配置条目设置可以创建的固件帧缓冲区的最大数量。有效选项为0、1和2。在Raspberry Pi 4之前的设备上,默认设置为1,因此当使用多个显示器(例如HDMI和DSI或DPI显示器)时,需要将其增加到2。Raspberry Pi 4配置默认将其设置为2,因为它有两个HDMI端口。

在大多数情况下,将其设置为2是没有问题的,因为只有在实际检测到连接的设备时才会创建帧缓冲区。

将此值设置为0可用于减少在无人机交互模式下使用时的内存需求,因为它将阻止分配任何帧缓冲区。

test_mode

test_mode 命令在启动过程中显示测试图像和声音(仅通过复合视频和模拟音频输出),持续指定秒数,然后继续正常启动操作系统。这将用作生产测试;默认值为 0

display_hdmi_rotate

使用 display_hdmi_rotate 旋转或翻转 HDMI 显示屏方向。默认值为 0

display_hdmi_rotate 结果

0

不旋转

1

顺时针旋转 90 度

2

顺时针旋转 180 度

3

顺时针旋转 270 度

0x10000

水平翻转

0x20000

垂直翻转

请注意,90 度和 270 度旋转选项需要额外的 GPU 内存,因此这些选项无法在 16MB 的 GPU 分割下运行。

你可以将旋转设置和翻转设置加在一起。您也可以用同样的方法进行水平和垂直翻转。例如,带有垂直和水平翻转的 180 度旋转将是 0x20000 + 0x10000 + 2 = 0x30002。

display_lcd_rotate

对于传统图形驱动程序(Raspberry Pi 4 之前型号的默认设置),使用 display_lcd_rotate 旋转或翻转 LCD 方向。参数与 display_hdmi_rotate 相同。另请参阅 lcd_rotate

display_rotate

在最新固件中, display_rotate 已被弃用。保留它只是为了向后兼容。请使用 display_lcd_rotatedisplay_hdmi_rotate 代替它。

使用 display_rotate 旋转或翻转屏幕方向。参数与 display_hdmi_rotate 相同。

其他选项

dispmanx_offline

强制 dispmanx 合成在两个离屏帧缓存中离线完成。这样可以合成更多的 dispmanx 元素,但速度较慢,可能会将屏幕帧速率限制在 30fps 左右。

Raspberry Pi 4 HDMI

Important
使用VC4 KMS图形驱动程序时,完整的显示管道由Linux管理 - 这包括HDMI输出。这些设置仅适用于传统的FKMS和基于固件的图形驱动程序。

Raspberry Pi 4 无法通过 HDMI 以 1366×768 @ 60Hz 的频率输出。某些显示器可以配置为 1360×768 @ 60Hz。它们通常不会通过 EDID 公布这种模式,因此无法自动选择,但可以通过添加手动选择:

hdmi_group=2
hdmi_mode=87
hdmi_cvt=1360 768 60

…到 config.txt

通过 config.txt 中的 hdmi_timings= 行手动指定的时序也需要遵守所有水平时序参数均可被 2 整除的限制。

dpi_timings= 则不受此限制,因为该流水线每个时钟周期仍只能运行一个像素。

遗留的杂项选项

avoid_warnings

avoid_warnings=2 允许涡轮模式,即使存在低电压。

logging_level

设置VideoCore日志记录级别。该值是特定于VideoCore的位掩码。

本页内容