#include <asm/io.h>
#include "adm5120sw.h"
+#include "adm5120_info.h"
+
MODULE_AUTHOR("Jeroen Vreeken (pe1rxq@amsat.org)");
MODULE_DESCRIPTION("ADM5120 ethernet switch driver");
MODULE_LICENSE("GPL");
}
}
-irqreturn_t adm5120_sw_irq(int irq, void *dev_id, struct pt_regs *regs)
+static irqreturn_t adm5120_sw_irq(int irq, void *dev_id)
{
unsigned long intreg;
static int adm5120_do_ioctl(struct net_device *dev, struct ifreq *rq, int cmd)
{
int err;
- struct adm5120_info info;
+ struct adm5120_sw_info info;
struct adm5120_sw *priv = netdev_priv(dev);
switch(cmd) {
/* MII port? */
if (adm5120_get_reg(ADM5120_CODE) & ADM5120_CODE_PQFP)
adm5120_nrdevs = 5;
+ /* CFE based devices only have two enet ports */
+ else if (adm5120_info.boot_loader == BOOT_LOADER_CFE)
+ adm5120_nrdevs = 2;
else
adm5120_nrdevs = 6;