coreboot icon indicating copy to clipboard operation
coreboot copied to clipboard

Disable legacy timers on volteer and brya

Open ellyq opened this issue 1 year ago • 8 comments

As stated in commits, enabling PM and 8254 timers (which Coreboot does automatically) breaks s0ix state on those boards. Since they've never been verified for S3, we need to ensure Coreboot doesn't enable them to have functional sleep state.

I tested it on ELDRID, CoolStar tested it on BANSHEE.

ellyq avatar Feb 10 '24 22:02 ellyq

Oh, maybe this applies to Asus Chromebox 3 also?

bam80 avatar Feb 11 '24 16:02 bam80

Oh, maybe this applies to Asus Chromebox 3 also?

No idea what "Chromebox 3" is. Please provide boardname.

ellyq avatar Feb 11 '24 16:02 ellyq

@ellyq from https://mrchromebox.tech/#devices page I see:

Asus Chromebox 3 (CN65), Board Name: TEEMO

bam80 avatar Feb 11 '24 16:02 bam80

Then it has nothing to do with this PR, KBL supports S3 just fine

ellyq avatar Feb 11 '24 17:02 ellyq

Yes, but it doesn't support s0ix apparently

bam80 avatar Feb 11 '24 17:02 bam80

wouldn't a better solution be to disable these globally if S0ix is enabled?

MrChromebox avatar Feb 11 '24 18:02 MrChromebox

I suppose supporting for S0ix makes sense per se?

bam80 avatar Feb 11 '24 18:02 bam80

wouldn't a better solution be to disable these globally if S0ix is enabled?

Yes, but we switched to S3 on older systems (SKL - CML) a while back. Even with TGL/ADL s0ix has strange behavior, as system seems to wake up if you physically move the machine. I think it's better to leave S3 on if platform supports S3 state instead.

Not sure how we would add a condition to disable timers otherwise, as you need to tell FSP-S which mode your want to use by setting register s0ix_enable in devicetree.cb, I don't see a Kconfig for it. I guess we could add a new option to Kconfig which would set sleep state based on Kconfig option, but that would be a fairly invasive change for all Intel platforms in Coreboot.

ellyq avatar Feb 11 '24 18:02 ellyq

I'm going to install full ROM on my Redrix with this PR. Should I first install the normal mrchromebox firmware and see if there's an improvement with this PR?

Update: With this PR on Redrix with s2idle, I did a 3hr test and Redrix used ~0.44W while sleeping, which is really good. That's like 4 days from 100% to 0% while sleeping. actually in an overnight test measured with upower Redrix used an average of 0.23W while sleeping!

Also is deep sleep supposed to be available on Redrix?

cat /sys/power/mem_sleep
[s2idle] deep

I can set it to deep and suspend, which suspends. Then when I wake it up it wakes up like normal, except that the camera light flashes for a short time. The difference is, when using deep, the only way to wake up Redrix is with the power button, and the haptic touchpad is disabled. Using s2idle, Redrix can be woken up with the power button or touchpad or keyboard.

ChocolateLoverRaj avatar Apr 23 '24 04:04 ChocolateLoverRaj

Hi, I use Fedora Silverblue with Redrix. How can I enable the fast charge? My charging speed is only 7w.

shiptux avatar Jul 05 '24 09:07 shiptux

I never had a problem with fast charging on redrix.

ChocolateLoverRaj avatar Jul 05 '24 13:07 ChocolateLoverRaj

  1. How is this related to the pull request?
  2. 7W sounds simply impossible. Check values reported by Embedded Controller using ectool.

ellyq avatar Jul 05 '24 13:07 ellyq

Also is deep sleep supposed to be available on Redrix?

cat /sys/power/mem_sleep
[s2idle] deep

I can set it to deep and suspend, which suspends. Then when I wake it up it wakes up like normal, except that the camera light flashes for a short time. The difference is, when using deep, the only way to wake up Redrix is with the power button, and the haptic touchpad is disabled. Using s2idle, Redrix can be woken up with the power button or touchpad or keyboard.

No. Intel effectively removed S3 state with TigerLake platforms. Starting with TGL (11gen), only s0ix (Modern Standby) is supported. This PR has been re-based and merged differently in upstream, I think it's safe to close it.

My ELDRID still wakes up on certain gyroscope axis (i.e running to catch a tram with machine in my backpack wakes it up from sleep state), but that can be tweaked in EC events.

ellyq avatar Jul 05 '24 13:07 ellyq

  1. How is this related to the pull request?
  2. 7W sounds simply impossible. Check values reported by Embedded Controller using ectool.

Thank you for your reply. Sorry for being bored here, I know the charging problem is not related to this PR. However, I couldn't find more people who use this machine on Linux, and is full of knowledge of Hardware and firmware. Here is my charging information:

ac = 1
chg_voltage = 8696mV
chg_current = 1024mA
chg_input_current = 2800mA
batt_state_of_charge = 92%

7w is read from battop tool. And I am sure it is really slower than powering off. I am trying to install acpi_call to turn on the rapid charging.

shiptux avatar Jul 05 '24 14:07 shiptux

My ELDRID still wakes up on certain gyroscope axis (i.e running to catch a tram with machine in my backpack wakes it up from sleep state), but that can be tweaked in EC events.

My Redrix has the same question, could you share how to close it?

shiptux avatar Jul 05 '24 14:07 shiptux

Closing as the PR has been already merged upstream. If you have an issue -- especially an unrelated one -- use the firmware issue tracker

MrChromebox avatar Jul 05 '24 15:07 MrChromebox