# Gentoo内核配置+ **Repository Path**: gemone/kernel-config ## Basic Information - **Project Name**: Gentoo内核配置+ - **Description**: Gentoo 内核配置文件备份,满足部分需求。尽量精简内核配置,目前适配 Thinkbook 14+ (G4+ ARA),可以尝试自己修改。 - **Primary Language**: Unknown - **License**: WTFPL - **Default Branch**: tb-ara-systemd - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2020-01-28 - **Last Updated**: 2025-07-19 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # kernel-config 本配置适用于 `ThinkBook 14+ (AMD Ryzen 7 6800H)` 版本。 > 清理 5.x 配置,从 6.x 开始规划。 ## 使用 建议使用 `genkernel` 指定 `kernel-config` 编译内核。 ```shell cp .config make oldconfig cp .config genkernel --kernel-config= --menuconfig all ``` > `menuconfig` 可选。 ## 自维护仓库 参考 [gg7/gentoo-kernel-guide](https://github.com/gg7/gentoo-kernel-guide) 拉取 `linux-stable` 源码。 进入 `/usr/src/`,创建文件夹用于托管源码: ```shell # cd /usr/src/ sudo mkdir -p linux-stable-git-bare/ && sudo chown "$(id -un):$(id -gn)" linux-stable-git-bare/ # 使用清华源 git clone --mirror --bare 'https://mirrors.tuna.tsinghua.edu.cn/git/linux-stable.git' linux-stable-git-bare/ git -C linux-stable-git-bare fetch --all --tags git -C linux-stable-git-bare tag --sort=-creatordate ``` 获取 `tag` 后指定对应的版本拉取代码,此处以 `6.0.2` 为示例: ```shell v="6.0.2" sudo mkdir "linux-stable-v$v" && sudo chown "$(id -un):$(id -gn)" "linux-stable-v$v" git clone --single-branch --branch "v$v" linux-stable-git-bare/ "linux-stable-v$v" ``` 即可拉取对应 `tag` 下的代码。 编译参考[使用](#使用)。 ## 说明 | 内核配置 | 可用 | 最小 | 备注 | | --------------------- | ---- | ---- | ------------------------------------------------------------------------------------------------------------- | | 6.0.10-x86_64-xanmod1 | 是 | 几乎 | 重新配置 `ThinkBook`,本机主要设备大部分可用,详细参考 2022.11.27 更新日志 | | 6.0.12-x86_64 | 是 | 几乎 | 使用 `linux-stable` 编译,缩减部分配置。见 2022.12.10 更新日志 | | 6.0.16-x86_64 | 是 | 几乎 | 更新配置,添加防火墙、蓝牙功能缺失的模块 | | 6.2.0-rc3-x86_64 | 是 | 几乎 | 使用主线模块,调整 Clang + LTO 编译内核. 见 2022.12.15 更新日志 | | 6.1.7-x86_64 | 是 | 几乎 | 切换 stable 版本,主线自带 8852be 并不稳定,存在问题。且 6.2.0-rc4 内核存在较大问题,不适合工作使用,rc3 可用 | | 6.1.8-x86_64 | 是 | 几乎 | stable 版本更新,添加 EXPERT 选项,清理部分选项 | | 6.1.9-x86_64 | 是 | 几乎 | stable 版本更新 | | 6.1.19-x86_64 | 是 | 几乎 | LTS 版本更新,切换网卡到 `AX210`,添加 `intel wifi` 驱动 | | 6.1.20-x86_64 | 是 | 几乎 | LTS 版本更新,清理不需要模块 | | 6.1.25-x86_64 | 是 | 几乎 | LTS 版本更新。发生宕机,初步确认是 `amdgpu` 发生重置 | | 6.3.3-x86_64-xanmod1 | 是 | 几乎 | 切换 STABLE 版本, ~~当前版本 GPU 稳定~~,切换内核未 xanmod1,开启相关特性 | | 6.3.1-x86_64-xanmod1 | 是 | 几乎 | 切换 STABLE 版本, 当前版本 GPU 稳定,切换内核未 xanmod1,开启相关特性 | > 主目录配置为表格最新的版本 ### 无线网卡 > 稳定版本内核暂未合并 `rtw8852be` 驱动, 但主线版本合并了, 从 6.2.0-rc3 mainline 开始添加 此 WIFI 驱动。 `ThinkBook 14+ (AMD)` 使用的网卡是 `Realtek Semiconductor Co., Ltd. Device b852`,该网卡驱动还没有入内核,因此需要使用第三方驱动。 使用第三方驱动注意不要编译内核自带的 `RTW89` 模块。 驱动安装参考[lwfinger/rtw89](https://github.com/lwfinger/rtw89.git). ```shell make -j16 make install # or, need mokutil make sign-install ``` > **注意**: 驱动提供的脚本仅编译到当前使用内核,无法根据 `eselect` 找到相应的内核,因此重启编译后可自行加载模块以使用无线设备。 ### 睡眠 `BIOS` 仅支持 `S0` 睡眠,开启 `CONFIG_AMD_PMC` 以支持该睡眠模式。 > **注意**: 该模式下可能会发热,也可能会丢失状态。(未完整测试 20221127) > > 同时,如果需要休眠,也必须启用 `AMD_PMC`。(休眠启动十分缓慢!!!) ## 更新日志 ### 2022.11.27 1. 清理 `5.0` 配置; 2. 添加 `thinkbook` 适配 `6.0.10` 配置; 3. 新版本内核不支持 `Vbox` 模块,因此本机环境清理的 `Vbox`,全面转换到了 `KVM`,使用 `libvirt` 管理虚拟机,加入了不少虚拟设备的模块; 4. 本机摄像头驱动正常,包括红外模块,但未进行 `howdy` 的测试 (TODO); 5. 网卡见说明中无线网卡的内容; #### 问题 1. `SD` 卡设备不正常; 2. 本机麦克风无法收音,但连接耳机可以;(基于 `PipeWire`); 3. 休眠无法时好时不好,虽然休眠了,但所有内容都被清空;(偶发); 4. 该机器不支持 `S3` 睡眠,已经配置了相关模块,支持 `S0` 睡眠,但 `S0` 状态下风扇不转,设备依旧在线,有可能会发热(偶发); 5. 未适配 `Fn` 功能,`ThinkPad WMI` 驱动不生效; ### 2022.12.10 1. 使用 `linux-stable` 内核; 2. 缩减不必要模块; 3. 配置麦克风; 4. 配置休眠模式; #### 问题 1. `SD` 卡依旧不可用; 2. 休眠和睡眠唤醒很慢,但功能正常;( `X` 下恢复慢, `Wayland` 体验十分优秀, 但由于部分刚需软件 `Wayland` 支持有问题, 暂时使用 `X`) `20230115` ### 2023.01.15 > 2023.01.18 已替换回 stable 版本。 > > 6.2.0-rc3 测试可用,rc4 amdgpu 会导致 OPENGL 出现问题,导致桌面无法使用,暂时未找到原因。 > > 自带 8852be 驱动不稳定,请避免使用。 尝试使用 `Clang + LTO` 编译内核,大致性能优化可以参考 [Squeezing More Performance Out Of The Linux Kernel With Clang + LTO](https://www.phoronix.com/review/clang-lto-kernel)。 具体步骤如下: 1. 修改 `genkernel.conf`,配置 `kernel-cc` 等参数,详细见修改后的 `genkernel.conf`; 2. 配置 `LTO_CLANG=y` `LTO_CLANG_THIN=y`; > **注:** 不能修改 `utils-cc`,部分工具暂时不支持 `clang`。如果仍然需要 `acpi_call`,则避免使用 `clang` 工具链。 由于 `wifi 驱动` `rtw8852be` 未合并入稳定版本,且第三方驱动不支持 `clang` 工具链编译模块(需要 `patch`), 因此使用 `mainline` 版本。 如果没有此需求,只需要清理 `genkernel.conf` 中关于 `kernel-cc` 的配置即可,所有配置会自动调整回默认配置。 > 具体增益未测试,但休眠体验较于先前版本更优。 ### 2025.03.19 添加 `docker` 支持; #### TODO `AMD PMF` 测试。当前开启了模块,但未明确具体如何使用。 相关文章: 1. [AMD PMF Cool & Quiet Framework Readied For Linux 6.1](https://www.phoronix.com/news/AMD-PMF-CnQF-Linux-6.1) 2. [AMD Developing "PMF" Linux Driver For Better Desktop/Laptop User Experience](https://www.phoronix.com/news/AMD-PMF-Linux-Driver)