mail archive of the barebox mailing list
 help / color / mirror / Atom feed
From: Sascha Hauer <s.hauer@pengutronix.de>
To: Antony Pavlov <antonynpavlov@gmail.com>
Cc: barebox@lists.infradead.org, Peter Mamonov <pmamonov@gmail.com>
Subject: Re: [RFC 2/9] WIP: fix drivers/usb/core/usb.c
Date: Mon, 31 Aug 2015 08:45:20 +0200	[thread overview]
Message-ID: <20150831064519.GC18700@pengutronix.de> (raw)
In-Reply-To: <20150828185104.301302fd1a2851809c7cd800@gmail.com>

On Fri, Aug 28, 2015 at 06:51:04PM +0300, Antony Pavlov wrote:
> On Fri, 28 Aug 2015 08:11:59 +0200
> Sascha Hauer <s.hauer@pengutronix.de> wrote:
> 
> > On Fri, Aug 28, 2015 at 01:24:03AM +0300, Antony Pavlov wrote:
> > > drivers/usb/core/usb.c: In function 'usb_parse_config':
> > > drivers/usb/core/usb.c:194:28: error: 'struct usb_configuration' has no
> > > member named 'wTotalLength'
> > >   le16_to_cpus(&(dev->config.wTotalLength));
> > >                             ^
> > > ...
> > > scripts/Makefile.build:249: recipe for target 'drivers/usb/core/usb.o'
> > > failed
> > > make[3]: *** [drivers/usb/core/usb.o] Error 1
> > > scripts/Makefile.build:387: recipe for target 'drivers/usb/core' failed
> > > make[2]: *** [drivers/usb/core] Error 2
> > > scripts/Makefile.build:387: recipe for target 'drivers/usb' failed
> > > make[1]: *** [drivers/usb] Error 2
> > > Makefile:770: recipe for target 'drivers' failed
> > > make: *** [drivers] Error 2
> > > 
> > > see also
> > > 
> > > commit 245069bcef15ecc19db616a967501349b76c84d0
> > > Author: Sascha Hauer <s.hauer@pengutronix.de>
> > > Date:   Thu Jul 10 11:36:12 2014 +0200
> > > 
> > >     USB: introduce usb_interface/usb_configuration structs
> > > 
> > >     Currently we have two conflicting definitions of struct
> > > usb_config_descriptor
> > >     and struct usb_interface_descriptor in the tree. This is because the
> > > USB code
> > >     uses additional fields in the structs for internal housekeeping. Add
> > >     struct usb_interface and struct struct usb_configuration with the
> > > housekeeping
> > >     data and embed the corresponding hardware structs into them. This
> > > frees the
> > >     way to use the definitions from ch9.h in the next step.
> > > 
> > > Signed-off-by: Antony Pavlov <antonynpavlov@gmail.com>
> > > ---
> > >  drivers/usb/core/usb.c | 2 +-
> > >  1 file changed, 1 insertion(+), 1 deletion(-)
> > > 
> > > diff --git a/drivers/usb/core/usb.c b/drivers/usb/core/usb.c
> > > index 9073fff..f8d6014 100644
> > > --- a/drivers/usb/core/usb.c
> > > +++ b/drivers/usb/core/usb.c
> > > @@ -191,7 +191,7 @@ static int usb_parse_config(struct usb_device *dev, unsigned char *buffer, int c
> > >  		return -1;
> > >  	}
> > >  	memcpy(&dev->config, buffer, buffer[0]);
> > > -	le16_to_cpus(&(dev->config.wTotalLength));
> > > +	le16_to_cpus(&(dev->config.desc.wTotalLength));
> > >  	dev->config.no_of_if = 0;
> > 
> > 
> > What's WIP in this patch? It looks 100% correct.
> 
> WIP means that I don't understand why nobody but me detected this build problem.
> Have you any idea?

Yeah, I wondered about this aswell at first, but it's quite easy if you
look at it. le16_to_cpus converts the content of a pointer to le16 to
cpu endianess.  On little endian systems like ARM this is a no op,
defined as:

#define le16_to_cpus __le16_to_cpus
#define __le16_to_cpus(x) do {} while (0)

Sascha

-- 
Pengutronix e.K.                           |                             |
Industrial Linux Solutions                 | http://www.pengutronix.de/  |
Peiner Str. 6-8, 31137 Hildesheim, Germany | Phone: +49-5121-206917-0    |
Amtsgericht Hildesheim, HRA 2686           | Fax:   +49-5121-206917-5555 |

_______________________________________________
barebox mailing list
barebox@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/barebox

  reply	other threads:[~2015-08-31  6:45 UTC|newest]

Thread overview: 25+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-08-27 22:24 [RFC 0/9] ehci-hcd.c: make it works on big-endian mips (AR9331) Antony Pavlov
2015-08-27 22:24 ` [RFC 1/9] WIP: make ehci-hcd.c happy on big-endian MIPS Antony Pavlov
2015-08-27 22:24 ` [RFC 2/9] WIP: fix drivers/usb/core/usb.c Antony Pavlov
2015-08-28  6:11   ` Sascha Hauer
2015-08-28 15:51     ` Antony Pavlov
2015-08-31  6:45       ` Sascha Hauer [this message]
2015-08-27 22:24 ` [RFC 3/9] MIPS: add virt_to_phys() and phys_to_virt() Antony Pavlov
2015-08-28  6:34   ` Sascha Hauer
2015-08-28 15:46     ` Antony Pavlov
2015-09-04  6:20       ` Sascha Hauer
2015-09-04  7:27         ` Antony Pavlov
2015-09-04  8:44           ` Sascha Hauer
2015-12-06 14:50         ` Antony Pavlov
2015-12-07 10:27           ` Sascha Hauer
2015-12-08  9:11             ` Antony Pavlov
2015-12-08 11:46             ` Peter Mamonov
2015-12-09 13:03               ` Sascha Hauer
2015-08-27 22:24 ` [RFC 4/9] MIPS: add trivial dma support Antony Pavlov
2015-08-27 22:24 ` [RFC 5/9] ehci-hcd.c: make it works on mips Antony Pavlov
2015-08-27 22:24 ` [RFC 6/9] usb: ehci: drop unusable CONFIG_EHCI_MMIO_BIG_ENDIAN condition Antony Pavlov
2015-08-27 22:24 ` [RFC 7/9] usb: ehci: add big-endian registers support Antony Pavlov
2015-08-28  6:19   ` Sascha Hauer
2015-08-28 15:49     ` Antony Pavlov
2015-08-27 22:24 ` [RFC 8/9] MIPS: tplink-mr3020: select big-endian EHCI support Antony Pavlov
2015-08-27 22:24 ` [RFC 9/9] MIPS: tplink-mr3020_defconfig: enable usb stuff Antony Pavlov

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20150831064519.GC18700@pengutronix.de \
    --to=s.hauer@pengutronix.de \
    --cc=antonynpavlov@gmail.com \
    --cc=barebox@lists.infradead.org \
    --cc=pmamonov@gmail.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox