On Mon, Mar 16, 2015 at 11:08:29AM +0800, Peter Hung wrote:
> Hello,
> 
> Johan Hovold 於 2015/3/14 下午 08:02 寫道:
> > On Thu, Feb 26, 2015 at 06:02:10PM +0800, Peter Hung wrote:
> >> +  if (status != sizeof(*val)) {
> >> +          dev_err(&port->dev, "%s failed status: %d\n", __func__, status);
> >> +
> >> +          if (status == 0)
> >> +                  status = -EIO;
> >> +          else
> >> +                  status = usb_translate_errors(status);
> >
> > Could you rewrite this as
> >
> >     if (status < 0)
> >             status = usb_translate_errors(status);
> >     else
> >             status = 0;
> 
> In my definition the return value of set/getregister(), 0 is success, 
> negative values are errors. The function usb_control_msg() return value 
> is success transmited/received byte. It's maybe return 0. I want to 
> treat 0 with error(-EIO). But if pass 0 to usb_translate_errors(), It 
> will return 0 back. So I need especially handle with status == 0.

I meant to write

        if (status < 0)
                status = usb_translate_errors(status);
        else
                status = -EIO;

which I think is more readable.

Sorry for the confusion.

Johan
--
To unsubscribe from this list: send the line "unsubscribe linux-usb" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to