Jeff Garzik wrote:
> Our API already supports a solution -- setup the device, then call
> register_netdev. The patch below adds a helper, alloc_etherdev, to
> eliminate duplicate code in drivers. Ethernet device initialization,
> after the patch, should now look like
> dev = alloc_etherdev(sizeof(struct netdev_private));
> ... initialize device ...
> ... set up net_device struct members ...
> rc = register_netdevice(dev);
> if (rc) /* handle error */
Think-o in my example: netif_start_queue occurs in dev->open(), not in
the probe phase. Simply ignore that line in the example and you are ok.
Jeff Garzik | "You see, in this world there's two kinds of
Building 1024 | people, my friend: Those with loaded guns
MandrakeSoft | and those who dig. You dig." --Blondie