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

Magnus Lilja lilja.magnus at gmail.com
Wed Apr 23 15:35:16 CEST 2008


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.

/Magnus




More information about the U-Boot mailing list