- qe->qe_block = sbus_alloc_consistent(qe->qe_sdev,
- PAGE_SIZE,
- &qe->qblock_dvma);
- qe->buffers = sbus_alloc_consistent(qe->qe_sdev,
- sizeof(struct sunqe_buffers),
- &qe->buffers_dvma);
- if (qe->qe_block == NULL || qe->qblock_dvma == 0 ||
- qe->buffers == NULL || qe->buffers_dvma == 0)
- goto fail;
-
- /* Stop this QE. */
- qe_stop(qe);
-
- SET_MODULE_OWNER(dev);
- SET_NETDEV_DEV(dev, &sdev->ofdev.dev);
-
- dev->open = qe_open;
- dev->stop = qe_close;
- dev->hard_start_xmit = qe_start_xmit;
- dev->get_stats = qe_get_stats;
- dev->set_multicast_list = qe_set_multicast;
- dev->tx_timeout = qe_tx_timeout;
- dev->watchdog_timeo = 5*HZ;
- dev->irq = sdev->irqs[0];
- dev->dma = 0;
- dev->ethtool_ops = &qe_ethtool_ops;
-
- res = register_netdev(dev);
- if (res)
- goto fail;
-
- dev_set_drvdata(&sdev->ofdev.dev, qe);
-
- printk(KERN_INFO "%s: qe channel[%d] ", dev->name, qe->channel);
- for (i = 0; i < 6; i++)
- printk ("%2.2x%c",
- dev->dev_addr[i],
- i == 5 ? ' ': ':');
- printk("\n");
+ /* Report the QE channels. */
+ for (i = 0; i < 4; i++) {
+ printk(KERN_INFO "%s: QuadEthernet channel[%d] ", qe_devs[i]->name, i);
+ for (j = 0; j < 6; j++)
+ printk ("%2.2x%c",
+ qe_devs[i]->dev_addr[j],
+ j == 5 ? ' ': ':');
+ printk("\n");
+ }