[U-Boot-Users] Question about smc911x driver (16/32 Bit support)

Ben Warren biggerbadderben at gmail.com
Wed Apr 23 19:29:06 CEST 2008


Hi Magnus,

On Wed, Apr 23, 2008 at 6:35 AM, Magnus Lilja <lilja.magnus at gmail.com> wrote:
> Hi Jens,
>
>  On Wed, Apr 23, 2008 at 8:37 AM, Jens Gehrlein <sew_s at tqs.de> wrote:
>  >  >>  in the source code there is a preprocessor directive
>  >  >>  #error "SMC911X: Only 32-bit bus is supported".
>  >  >>
>  >  >>  We use a LAN9215i, which has a 16 Bit data interface only, connected to
>  >  >>  an i.MX31.
>  >  >>
>  >  >>  The LAN9215 is in the driver's ID list.
>  >  >>
>  >  >>  According to the data sheet accesses have to be 2x16 Bit to build the
>  >  >>  device's internal 32 Bit format.
>  >  >>
>  >  >>  What does this non-32-Bit exclusion exactly mean?
>  >  >>  Will the driver work on our HW configuration?
>  >  >>
>  >  > This #error message was included, because if you look at the code
>  >  > you'll see that the read/write accessors are 32-bit operations *(u32 *
>  >  > ).  These may or may not work on your configuration.  It should be
>  >  > trivial to write accessors for a 16-bit bus, but nobody had hardware
>  >  > to try it out on.  Please do so and submit a patch.
>  >
>  >  Yes, it seems, that we just need two additional functions which split a
>  >  32 Bit access into two 16 Bit accesses. That should be easy. I'm going
>  >  to create a patch as soon as I get the HW. But first I want to test
>  >  whether the processor splits itself automatically.
>
>  Well, the i.MX31 Litekit board has a 16-bit LAN9117 and that seems to
>  work with the 32-bit flag set in the config file.
>
That's good news.  I would prefer, though, to break this into two
16-bit accesses so we don't need to wonder what architectures it would
work on.  Would you be able to try something out, since you have
hardware?

regards,
Ben




More information about the U-Boot mailing list