ec: pd: Allow data role swap in RO FW |
|
Issue descriptionWe need to rethink / modify the workaround here: https://chromium-review.googlesource.com/#/c/chromiumos/platform/ec/+/461142/ Summary of that workaround: Reject data role swap in RO FW in all circumstances (does not consider WP state). The problem case involves testing USB recovery w/ servo v4. DUT EC will remain in RO, servo_v4 DUT port will default to SRC + DFP, then request a data role swap, which will be rejected. servo_v4 will remain in DFP data role, so USB media attached to it will not be seen by the DUT.
,
Oct 29 2017
Is this the path for a port partner initiated data role swap? I had implemented a change to the servo power state driver to initiate the data swap on the EC side as part of entering recovery[0]. Is that not working? [0] - https://crrev.com/c/620273
,
Oct 29 2017
There is an issue, but it seems like it's an incompatibility with Shawn's PD changes and older EC firmware. I don't think there's a bug on this.. Shawn can you file?
,
Oct 30 2017
Re. #3, I didn't realize there were servod changes to handle this, it's good that you thought of it. But, I'm not sure that servod changes are sufficient. Eg. suppose I want to test user-triggered crossystem recovery from EC RW, on reboot FW will ask the EC to reboot to RO, and we'll be back in the situation from the original bug report. I don't know if any current FAFT test works in the way I described, but if servo_v4 use becomes widespread, there will come a day when testers or developers run into this issue. Re. #4, this crbug isn't related to any reported bug in particular, it's just something I noticed when looking at the code.
,
Oct 30 2017
Ah yes, you're right. As is, I'd expect that to fail. We could add the same workaround to the tests; essentially, whenever the USB is "plugged in", initiate the DR swap, but that still only covers the cases where one is using autotest to test things. |
|
►
Sign in to add a comment |
|
Comment 1 by nsanders@chromium.org
, Oct 27 2017