New issue
Advanced search Search tips
Note: Color blocks (like or ) mean that a user may not be available. Tooltip shows the reason.

Issue 893389 link

Starred by 1 user

Issue metadata

Status: Started
Owner:
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: ----
Pri: 2
Type: Bug

Blocked on:
issue 888437

Blocking:
issue 841121



Sign in to add a comment

[servod] upgrade parsing

Project Member Reported by coconutruben@chromium.org, Oct 9

Issue description

This is a tracker bug to track the efforts to unify parsing in and around servod.
This bug is also to track coordination needed for servod parsing logic consumers outside of hdctools (fwgdb.py, flash_pd.py) to be taken along for the ride.
 
Cc: jwer...@chromium.org tbroch@chromium.org gu...@chromium.org nsanders@chromium.org
Owner: coconutruben@chromium.org
Status: Started (was: Untriaged)
Julius, for chromite, and fwgdb.py a two questions:
- is it possible that someone is using fwgdb.py with a different version of hdctools than tot (assuming they repo sync?), i.e. do we have to have a support window for both interfaces if there is a change?

- in the subsequent (in review now) servo_parsing CLs, the RC parsing logic is pulled into a Servod parser class (just an argument parser essentially with some overwrites for parsing the rc file natively). https://crrev.com/c/1232800

One option here would be to turn the pre-process & post-process functions into static methods & to use those inside fwgdb.py directly.

The other option is to to use the ServodClientParser introduced there directly & make some sort of multiple inheritance work with the chromite parser. That might be messy?

Lastly, how important is it that the cmdline arguments say '--servod-name' instead of '-name'? If that's crucial, I'll add in a bridge now to support that kind of prefix


> - is it possible that someone is using fwgdb.py with a different version of hdctools than tot (assuming they repo sync?), i.e. do we have to have a support window for both interfaces if there is a change?

No, at least I don't think it's a case you need to care about. It's just a developer tool, if it works after repo sync that's good enough.

> - in the subsequent (in review now) servo_parsing CLs, the RC parsing logic is pulled into a Servod parser class (just an argument parser essentially with some overwrites for parsing the rc file natively). https://crrev.com/c/1232800

I don't think you should pull the whole argument parser into fwgdb. Many of those arguments look like they wouldn't apply, and -r even clashes with an existing option. So I think factoring out the functionality fwgdb needs into independent functions sounds like the best approach. (In that case, I assume you wouldn't need to rename the argument anymore?)
Project Member

Comment 4 by bugdroid1@chromium.org, Oct 10

The following revision refers to this bug:
  https://chromium.googlesource.com/chromiumos/chromite/+/15bdd450b0248c48afa189df7d7f5b36cacb0ecd

commit 15bdd450b0248c48afa189df7d7f5b36cacb0ecd
Author: Ruben Rodriguez Buchillon <coconutruben@chromium.org>
Date: Wed Oct 10 04:14:43 2018

fwgdb: import servo_parsing (new name) instead of multiservo

Changing mutliservo to servo_parsing has caused this script to import a
now non-existent library. This should fix the issue (as the underlying
functions have not changed)

BUG=chromium:893389
TEST=None yet

Change-Id: I03a271b53711905c28f0e87a86dca60ecf9477a2
Signed-off-by: Ruben Rodriguez Buchillon <coconutruben@chromium.org>
Reviewed-on: https://chromium-review.googlesource.com/1270315
Commit-Ready: ChromeOS CL Exonerator Bot <chromiumos-cl-exonerator@appspot.gserviceaccount.com>
Reviewed-by: Julius Werner <jwerner@chromium.org>

[modify] https://crrev.com/15bdd450b0248c48afa189df7d7f5b36cacb0ecd/scripts/fwgdb.py

Components: Tools>ChromeOSDebugBoards

Sign in to add a comment