Problem
Hi, I'm running Bazzite on a Chromebook (Google Redrix) and ran into S0ix suspend crashes caused by cros_ec_lpcs sending a default 10-second hang detection timeout to the EC. The EC then escalates (forced wake → SysRq panic → chipset reset).
The upstream kernel has a debugfs interface (/sys/kernel/debug/cros_ec/suspend_timeout_ms) that allows configuring this from userspace, but it requires CONFIG_CROS_EC_DEBUGFS, which is currently disabled in the Bazzite kernel:
# CONFIG_CROS_EC_DEBUGFS is not set
Without it, I had to resort to a custom out-of-tree kernel module to patch the value directly — it works, but it's fragile and needs recompilation on every kernel update.
Request
Would it be possible to enable CONFIG_CROS_EC_DEBUGFS=m in the kernel-bazzite config?
Why this might make sense
- Upstream Kconfig defaults to ON: The option declares
default MFD_CROS_EC_DEV, so upstream seems to expect it to follow MFD_CROS_EC_DEV (which is already =m in Bazzite). It looks like Fedora's stock config explicitly overrides this to off, which Bazzite inherits.
- Fedora debug kernel has it: Fedora 43's debug kernel ships with
CONFIG_CROS_EC_DEBUGFS=m, so the module is at least tested in that context.
- CachyOS ships it by default: Both
linux-cachyos and linux-cachyos-bore include CONFIG_CROS_EC_DEBUGFS=m in their stock (non-debug) configs.
- Module, not built-in: As a
=m tristate, it would only load on systems with Chrome EC hardware. It shouldn't affect non-Chromebook users at all.
- Useful beyond suspend: The module also exposes
console_log, panicinfo, and other EC internals that are helpful for diagnosing Chromebook-specific issues.
Context
The S0ix crash affects multiple Chromebook models running non-ChromeOS Linux. More details on the root cause and current workaround here: MrChromebox/firmware#851.
If CONFIG_CROS_EC_DEBUGFS were available, the fix would simplify to a oneshot systemd service:
# /etc/systemd/system/cros-ec-suspend-timeout.service
[Unit]
Description=Set cros_ec suspend timeout to INFINITE
After=sys-kernel-debug.mount
[Service]
Type=oneshot
RemainAfterExit=yes
ExecStart=/bin/bash -c 'echo 65535 > /sys/kernel/debug/cros_ec/suspend_timeout_ms'
[Install]
WantedBy=multi-user.target
No out-of-tree module, no DKMS, no recompilation on kernel updates.
Environment
- Device: Google Redrix (HP Elite Dragonfly Chromebook), i7-1265U
- OS: Bazzite 43.20260309.0 (Kinoite)
- Kernel: 6.17.7-ba28.fc43.x86_64
- Boot: MrChromebox RW_LEGACY
Problem
Hi, I'm running Bazzite on a Chromebook (Google Redrix) and ran into S0ix suspend crashes caused by
cros_ec_lpcssending a default 10-second hang detection timeout to the EC. The EC then escalates (forced wake → SysRq panic → chipset reset).The upstream kernel has a debugfs interface (
/sys/kernel/debug/cros_ec/suspend_timeout_ms) that allows configuring this from userspace, but it requiresCONFIG_CROS_EC_DEBUGFS, which is currently disabled in the Bazzite kernel:Without it, I had to resort to a custom out-of-tree kernel module to patch the value directly — it works, but it's fragile and needs recompilation on every kernel update.
Request
Would it be possible to enable
CONFIG_CROS_EC_DEBUGFS=min the kernel-bazzite config?Why this might make sense
default MFD_CROS_EC_DEV, so upstream seems to expect it to followMFD_CROS_EC_DEV(which is already=min Bazzite). It looks like Fedora's stock config explicitly overrides this to off, which Bazzite inherits.CONFIG_CROS_EC_DEBUGFS=m, so the module is at least tested in that context.linux-cachyosandlinux-cachyos-boreincludeCONFIG_CROS_EC_DEBUGFS=min their stock (non-debug) configs.=mtristate, it would only load on systems with Chrome EC hardware. It shouldn't affect non-Chromebook users at all.console_log,panicinfo, and other EC internals that are helpful for diagnosing Chromebook-specific issues.Context
The S0ix crash affects multiple Chromebook models running non-ChromeOS Linux. More details on the root cause and current workaround here: MrChromebox/firmware#851.
If
CONFIG_CROS_EC_DEBUGFSwere available, the fix would simplify to a oneshot systemd service:No out-of-tree module, no DKMS, no recompilation on kernel updates.
Environment