dasharo-issues icon indicating copy to clipboard operation
dasharo-issues copied to clipboard

EC testablity interface

Open mkopec opened this issue 10 months ago • 2 comments

The problem you're addressing (if any)

Comprehensively testing laptops remotely is difficult due to a lot of aspects being controlled by EC, which does not have a remote control interface.

A solution for remote control is needed, if we want to do full remote testing.

Describe the solution you'd like

A simple console interface to control aspects of the platform, like generating key presses, button presses and controlling power.

Can be over SMBus or parallel. Would require extending debugger fw to support bidirectional console.

BIOS should have an option to allow debugging, and it should default to disabled.

Where is the value to a user, and who might that user be?

Remote testing finally unblocked, like other platforms that don't have an EC.

Describe alternatives you've considered

No response

Additional context

No response

mkopec avatar Mar 17 '25 14:03 mkopec

Could you tell me what the security/threat model is here? When would this interface be available, and under what circumstances? Is it only for testing the coreboot or EC?

Remote management in EC could also be valuable for enterprise reasons. New hardware with Zephyr capable MCUs and Zephye can also be used as minimalistic BMC. So, it all seems to fit and match together.

pietrushnic avatar Mar 17 '25 21:03 pietrushnic

This is for testing coreboot and EC. Mostly I just want to enable remote power control and emulating power button presses without soldering a bunch of wires. Currently we can use sonoff to power the laptop on remotely, but we can't force it off, unless we remove the battery, but then we can't test anything related to the battery.

You would need physical access and quite some time to connect a debugger to either the battery or keyboard connector, and at that point you might as well just reflash the EC, so I suppose having debugging always on isn't a big deal wrt. security. It could be an issue if it's exposed on any external connectors.

The interface would only be available with a debugger and if the user has opted into debugging via settings

New hardware with Zephyr capable MCUs and Zephye can also be used as minimalistic BMC.

Sadly Clevo still uses an 8051 based EC where having too many printfs causes you to run out of memory :(

mkopec avatar Mar 18 '25 08:03 mkopec

may i ask what is the Bounty amount ?

debaa98 avatar Jul 18 '25 06:07 debaa98

may i ask what is the Bounty amount ?

Added to the issue.

This is a hard one, so one should rather start with warmup/easy ones. Also, it requires one of the labeled hardware to be accessible.

Prior to starting it, we should have a mutual design of this feature agreed upon.

macpijan avatar Jul 29 '25 10:07 macpijan