On Sun, Jul 26, 2020 at 03:00:55PM -0700, Guenter Roeck wrote: > The EC reports a variety of error codes. Most of those, with the exception > of EC_RES_INVALID_VERSION, are converted to -EPROTO. As result, the actual > error code gets lost. In cros_ec_cmd_xfer_status(), convert all EC errors > to Linux error codes to report a more meaningful error to the caller to aid > debugging. > > To prepare for this change, handle error codes other than -EPROTO for all > callers of cros_ec_cmd_xfer_status(). Specifically, no longer assume that > -EPROTO reflects an error from the EC and all other error codes reflect a > transfer error. > > v2: Add patches 1/4 to 3/4 to handle callers of cros_ec_cmd_xfer_status() > v3: Add patches 4/6 and 5/6 to handle additional callers of > cros_ec_cmd_xfer_status() > Use -ENOPROTOOPT for EC_RES_INVALID_VERSION > Implement function to convert error codes A small potential (i.e., being paranoid about future changes) note on patch 6, but otherwise looks fine to me: Reviewed-by: Brian Norris <briannorris@xxxxxxxxxxxx>