H3C R5500 G5 BIOS + Linux 驱动说明
⚠️重要前提:BIOS 不能直接指定驱动名称intel_idle、intel_pstate。BIOS 只负责硬件开关,具体加载哪一个内核驱动,由 Linux 内核根据 BIOS 硬件选项、内核参数共同决定。规范要求的两个驱动名是操作系统侧的驱动,BIOS 只开放硬件能力。
BIOS 菜单路径(R5500 G5 Whitley 平台)
开机Del进入 BIOS → Advanced → Socket Configuration → Advanced Power Management Configuration
1、P‑state 设置(要加载intel_pstate驱动)
进入【CPU P State Control】
EIST(P‑States):Enabled(开启 P‑state 基础硬件)
Hardware P‑States:设置为 Native Mode(HWPM Native 模式,交给 OS 控制,这是intel_pstate加载必要条件,不能 Out‑of‑Band Mode(BIOS 接管),BIOS 接管时 intel_pstate 不会加载)
Turbo Mode:Enabled
硬件 P‑state 设为 Native,OS 拥有调频控制权,Linux 才会加载intel_pstate;如果选 OOB 模式,BIOS 接管 CPU 调频,内核不会加载 intel_pstate。
2、C‑state 设置,仅允许 C1 深度,加载intel_idle驱动
进入【CPU C State Control】子菜单
Enable Monitor MWAIT:Enabled(必须开启,intel_idle 依赖 MWAIT 指令)
CPU C6 Report:Disabled(禁止向 OS 上报 C6 深度休眠)
Enhanced Halt State(C1E):Disabled(关闭 C1E)
Package C‑State Limit:选择 C0/C1 State (包级别 C 状态限制,只允许 C1,屏蔽 C2/C3/C6 更深休眠)
上面 BIOS 配置完成后:硬件开放 C‑state,并且只允许 C1,屏蔽更深 C‑state。但BIOS 无法写死驱动名字 intel_idle,部分内核版本在 ACPI 模式会加载 acpi‑idle,需要内核参数强制。
Linux 操作系统内核参数(保证驱动名称符合规范)
BIOS 做完硬件开关,必须修改内核启动参数,强制驱动,满足:C‑state 驱动 = intel_idle,P‑state 驱动 = intel_pstate。
编辑 grub,内核行增加:
plaintext
intel_idle.max_cstate=1 intel_pstate=enable
intel_idle.max_cstate=1:强制使用 intel_idle 驱动,最大允许 C1,拒绝 C2 及更深 C‑state
intel_pstate=enable:强制启用 intel_pstate 调频驱动,禁止回退 acpi‑cpufreq
更新 grub,重启服务器。
校验命令(重启后确认是否达标)
bash
# 确认P‑state驱动为intel_pstate
cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_driver
# 确认C‑state idle驱动为intel_idle
cpupower idle-info
# 看输出 CPUidle driver: intel_idle
# 同时Available idle states只能看到 POLL、C1,不能出现C6等
# 查看当前支持的cstate
cat /sys/devices/system/cpu/cpu0/cpuidle/available_states
完整风险 & 坑点总结
BIOS 的Hardware P‑States如果选 OOB 模式,无论内核参数怎么写,intel_pstate 不会加载,BIOS 接管 P‑state,这点是 R5500 G5 高频踩坑点。
如果Monitor MWAIT关闭,intel_idle 无法加载,会回退 acpi‑idle,不符合规范。
Package C‑State Limit设 C0/C1 只是硬件层面限制;内核参数intel_idle.max_cstate=1是双重保险,防止 OS 绕过 BIOS 上报更深 C‑state。
BIOS 只做硬件开关,驱动名称是 Linux 内核行为,BIOS 界面没有任何输入框可以填写intel_idle / intel_pstate字符串。
配置核对清单给你做验收
✅ BIOS-EIST (P‑States):Enabled
✅ BIOS‑Hardware P‑States:Native Mode
✅ BIOS‑Monitor MWAIT:Enabled
✅ BIOS‑CPU C6 Report:Disabled
✅ BIOS‑C1E:Disabled
✅ BIOS‑Package C‑State Limit:C0/C1 State
✅ grub 内核参数:intel_idle.max_cstate=1 intel_pstate=enable
✅ 系统校验:scaling_driver=intel_pstate;cpupower idle‑info 驱动为 intel_idle,仅 POLL、C1 状态。
暂无评论
亲~登录后才可以操作哦!
确定你的邮箱还未认证,请认证邮箱或绑定手机后进行当前操作
举报
×
侵犯我的权益
×
侵犯了我企业的权益
×
抄袭了我的内容
×
原文链接或出处
诽谤我
×
对根叔社区有害的内容
×
不规范转载
×
举报说明
暂无评论