[PATCH 00/12] net: smc911x: Convert to DM

Adam Ford aford173 at gmail.com
Tue Mar 24 02:41:55 CET 2020


On Sat, Mar 21, 2020 at 11:57 AM Marek Vasut <marek.vasut at gmail.com> wrote:
>
> On 3/17/20 7:17 AM, Masahiro Yamada wrote:
> > Hi Marek,
>
> Hi,
>
> > On Mon, Mar 16, 2020 at 1:59 AM Marek Vasut <marek.vasut at gmail.com> wrote:
> >>
> >> Perform DM conversion of the SMC911x driver. Note that as I do not have

Thanks for taking this on.

> >> any hardware with this chip, I only compile-tested this conversion. But
> >> it seems Yamada-san has one, so please test.

I have a DM3730 with this chip.  Without DM_ETH, the
omap3_logic_defconfig doesn't compile with the following errors:

drivers/net/smc911x.c: In function ‘smc911x_initialize’:
drivers/net/smc911x.c:477:2: error: ‘dev’ undeclared (first use in
this function)
  477 |  dev = kzalloc(sizeof(*priv), GFP_KERNEL);
      |  ^~~
drivers/net/smc911x.c:477:2: note: each undeclared identifier is
reported only once for each function it appears in
drivers/net/smc911x.c:477:8: warning: implicit declaration of function
‘kzalloc’; did you mean ‘calloc’? [-Wimplicit-function-declaration]
  477 |  dev = kzalloc(sizeof(*priv), GFP_KERNEL);
      |        ^~~~~~~
      |        calloc
drivers/net/smc911x.c:477:31: error: ‘GFP_KERNEL’ undeclared (first
use in this function)
  477 |  dev = kzalloc(sizeof(*priv), GFP_KERNEL);
      |                               ^~~~~~~~~~
make[1]: *** [scripts/Makefile.build:279: drivers/net/smc911x.o] Error 1

> >
> > With a quick test on my board, it worked for me.
> >
> > I will leave comments to each patch, but
> > they are mostly nit-picking.
> >
> > Thanks for the cleanups and the conversion.
>
> I fixed most of those, thanks for testing.

If I enable DM_ETH, I need to make a few changes to the device tree,
but with those changes, I was able to get the Ethernet working.
The OMAP3 boards have the Ethernet node attached to their GPMC bus
which currently doesn't have a driver.  Making the GPMC compatible
with 'simple-bus' wasn't sufficient. With only that change, the system
would hang while trying to probe the network interface.

What I ended up having to do was add the following to my root node:

ethernet at 08000000 {
     compatible = "smsc,lan9221","smsc,lan9115";
     reg = <0x08000000>;
     bank-width = <2>;
     vddvario-supply = <&vddvario>;
     vdd33a-supply = <&vdd33a>;
     reg-io-width = <4>;
     smsc,save-mac-address;
};

I didn't look to see if I needed all those entries, but I was able to
get an IP address and ping a different computer.
If there is a future revision to fix the default build errors, I can
add similar comments with my tested-by if you want to CC me.

adam
>
> I also got access to the V2H blanche and there it works too, so maybe
> some future revision of this could be queued up for next.
>
> --
> Best regards,
> Marek Vasut


More information about the U-Boot mailing list