In the year that I’ve been running Debian on the device, one USB-C port has been completely unresponsive, while the other port can charge the laptop, but fails to recognize USB-C earbuds.
I know the earbuds aren’t the issue because they run on my Debian Desktop w/o issue, and when I plug them into my chrultrabook, the earphones recognize that they are connected as I can toggle active noise canceling on/off.
I followed instructions from another thread on this board to try the service file, and the hack worked for a day or two, but since then has been broadly ineffective.
systemd Status
Oct 24 14:43:21 chrultrabook systemd[1]: Finished chromebook-usbc.service - Enable USB-C on chromebook.
░░ Subject: A start job for unit chromebook-usbc.service has finished successfully
░░ Defined-By: systemd
░░ Support: https://www.debian.org/support
░░
░░ A start job for unit chromebook-usbc.service has finished successfully.
░░
░░ The job identifier is 178.
$ sysz
● chromebook-usbc.service - Enable USB-C on chromebook
Loaded: loaded (/etc/systemd/system/chromebook-usbc.service; enabled; preset: enabled)
Active: active (exited) since Thu 2024-10-24 14:43:21 CDT; 1h 1min ago
Process: 1193 ExecStart=/sbin/modprobe -a cros-ec-typec (code=exited, status=0/SUCCESS)
Main PID: 1193 (code=exited, status=0/SUCCESS)
CPU: 2ms
Service File:
[Unit]
Description=Enable USB-C on chromebook
[Service]
Type=oneshot
RemainAfterExit=yes
# ExecStartPre=/sbin/modprobe -r -a cros-ec-typec intel-pmc-mux
# ExecStart=/sbin/modprobe -a intel-pmc-mux cros-ec-typec
# ExecStartPre=/bin/sleep 2
ExecStart=/sbin/modprobe -a cros-ec-typec
[Install]
WantedBy=multi-user.target
System Info
Operating System: Debian GNU/Linux 12
KDE Plasma Version: 5.27.5
KDE Frameworks Version: 5.103.0
Qt Version: 5.15.8
Kernel Version: 6.1.0-26-amd64 (64-bit)
Graphics Platform: Wayland
Processors: 8 × 11th Gen Intel® Core™ i3-1125G4 @ 2.00GHz
Memory: 7.6 GiB of RAM
Graphics Processor: Mesa Intel® UHD Graphics
Manufacturer: Google
Product Name: Eldrid
System Version: rev3
Spent about an hour troubleshooting w/ Claude 3.5 Sonnet. Here’s the summary:
Device: Google Eldrid (Tiger Lake) running Debian with MrChromebox firmware 4.20.1
Issue: USB-C port functionality partially working (power delivery works on one port, but no audio via USB-C earbuds)
Key findings:
ACPI devices present (GOOG0014:00 for USB-C, GOOG0003:00 for PD)
Core issue: Chrome EC (Embedded Controller) not properly recognized
Currently, it locks up every time I try to log in, and when I enter terminal mode using control + Alt + F-key, it only shows standard output printing errors, and doesn’t allow for standard input.
I started going on a path of using a live ISO to work on things, but core boots just hangs when I connect a usb-c/usb-a media drive. I’m guessing That they issues with the USB not working correctly make booting an ISO a moot point.
I have tried using core boot to load grub, but when I select grub x64.efi, it just boots normally. I have tried holding the shift key as well as the escape key as well as space bar but to no avail.
Let me know if anyone has any suggestions, I’m not opposed to eventually wiping things as a last resort but based on the limited amount of options, I’m not even sure how I do that.
Turns out my Chromebook didn’t like my USB-to-SD reader, but a normal USB stick did the trick. I’m back up and running (fresh install) Going to give this hack mentioned by @Ghost on GitHub:
On 4.20 usb flash drives and external hard drives are now showing up on boot when connected to the usb c ports. The right port seems to support full booting. The left port will boot but then stop reading device.
For Fedora I am using a workaround that was shared in the chrultrabook discord. It involves unloading 2 kernel modules and then reloading them in a specific order.
rmmod cros_ec_typec
rmmod intel_pmc_mux
modprobe intel_pmc_mux
modprobe cros_ec_typec
Also, going to try and upgrade my Mr Chromebox firmware as well