[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-ID: <534F1550.50704@mail.ru>
Date: Thu, 17 Apr 2014 03:42:08 +0400
From: Alexander Varnin <fenixk19@...l.ru>
To: netdev@...r.kernel.org
Subject: ax88796 driver
Hello!
I am currently working on kernel and dealing with ax88796 driver, that has been written by Ben Dooks <ben@...tec.co.uk>. Since his address is not available anymore (says "Ben doesn't work here any more"), I want to ask help from somebody, who maybe somehow related to this driver.
I want to ask on source code, because there is some non-obvious lines.
Take a look on ax_initial_check function from ax88796.c please [1].
Here is lines 127-129 of it:
ei_outb (E8390_NODMA + E8390_PAGE1 + E8390_STOP, ioaddr + E8390_CMD);
regd = ei_inb (ioaddr + 0x0d);
ei_outb (0xff, ioaddr + 0x0d);
This is supposed to be read and write to 0xD register on PAGE 1 of AX88796. But that offset stands for "Multicast Address Register 5 ( MAR5 )" in AX88796 datasheet [2].
What is the point of doing so? That looks very like a mistake. If it is a mistake, I could make and send patch to fix it. But, please, explain why is it done?
[1] http://lxr.free-electrons.com/source/drivers/net/ethernet/8390/ax88796.c#L116
[2] http://www.digchip.com/datasheets/parts/datasheet/562/AX88796-pdf.php
--
Alexander.
--
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Powered by blists - more mailing lists