Answers:
从默认配置开始,或者您已经知道可以使用默认配置,这是一个好主意。请注意,对于Pi 2,您应该使用:
make bcm2709_defconfig
代替bcmrpi_defconfig
。
请注意,如果要避免破坏现有的相同版本的内核安装,请将常规设置->本地版本-附加到内核发行版字符串的值设置为唯一值。
我在.config
这里使用了实际的标签,没有CONFIG_;如果使用的是make menuconfig
,则可以在搜索中找到相关选项(正斜杠/)。这些标签还用于每个选项的“帮助”页面的顶部。请注意,术语enable(d)是指导致出现选项的内容,与实际选择要构建的选项不同。
A / B / B + / A +板与Pi 2之间存在差异的地方会显示出来。在某些地方,这是Broadcom 2708和2709系列之间的区别,但是在其他地方,Pi 2使用与其他主板相同的2708(或2835)选件。
对于A / A + / B / B +:
对于Pi 2:
内核内存拆分:
由于一些旧版软件存在问题,因此默认配置可能在此处使用3G / 1G,这将使Pi 2的25%RAM留给用户空间。如果您对此感到担心,请检查内核功能->内存拆分。
显然,这些不能是模块,因为它们需要访问/lib/modules
;它们必须是内置的。它们位于menuconfig的“设备驱动程序”部分中。
由于根分区通常是ext格式的,因此您还需要内置分区:
引导分区是vfat,因此:
您(几乎可以肯定)需要这些各种各样的东西,因此我首先列出了它们。
对于键盘和鼠标:
对于硬盘驱动器:
必须先启用USB。
NET(网络支持),一个顶级选项;里面是:
NETDEVICES(网络设备支持),在“设备驱动程序”中,然后:
要启用板载声音:
X服务器支持不再需要任何支持。pi的SoC没有DRI驱动程序选项。
如果要使用帧缓冲区,它允许诸如fbi
和的应用程序omxplayer
在X之外显示图形:
如果执行此操作,并且希望在启动控制台上使用企鹅(或更确切地说,是树莓),请记住图形支持下的LOGO(启动徽标)。
您可能还需要查看“ 系统类型”->“ Broadcom2708(或9)实现”下的选项。
/sys/class/gpio
。您可以在这里选择;如果您尝试同时选择两者,则第一个将被取消(尽管您可以将其中一个作为模块构建,更改配置,构建另一个,然后根据需要使用它们)。
/sys/devices/platform/bcm2835_hwmon
- temp1_input
和中的导热材料temp1_max
。前者是一样的/sys/devices/virtual/thermal/thermal_zone0/temp
; 后者始终为85000(即85°C)。/sys/class/devices/virtual/thermal/thermal_zone0
包含temp
和的内容trip_point_0_temp
(与temp1_max
上面的相同)。各种用户空间监视器可能会更喜欢此方法,而没有它可能无法正常工作。对goldilock的精彩文章的评论:
我只想添加我在rpi-4.1.y分支(05376fce25aaab4f47182a5af04928bfa06f30d6)观察到的一件事:为了使USB工作(包括USB连接的以太网),还必须启用BCM2708_MBOX(设备驱动程序->邮箱硬件支持- > Broadcom BCM2708邮箱(vcio))。
如果没有此选项,USB将开始初始化,但只会产生一系列可怕的消息,例如:
[ 1.193854] WARN::dwc_otg_core_reset:5109: dwc_otg_core_reset() HANG! Soft Reset GRSTCTL=80000001
[ 1.441137] WARN::dwc_otg_hcd_init:1047: FIQ DMA bounce buffers: virt = 0x9fc0c000 dma = 0x5d5e4000 len=9024
顺便说一句。BCM2708_MBOX还是THERMAL_BCM2835和SND_BCM2835的先决条件。
除了视频支持,您还需要启用以下功能:
Device Drivers ->
DMA Engine support ->
BCM2835 DMA engine support (CONFIG_DMA_BCM2835)
为了正确加载framebuffer驱动程序。您可以在未启用DMA的情况下启用它,但是它将无法加载。
为了拥有集成无线(RPi 3和Pi Zero W),您需要选择以下各项:
Networking support ->
Wireless ->
cfg80211 - wireless configuration API (CONFIG_CFG80211)
Device Drivers ->
Network device support ->
Wireless LAN ->
Broadcom IEEE802.11n embedded FullMAC WLAN driver (CONFIG_BRCMFMAC)