Re: IP1000 gigabit nic driver

From: Pekka Enberg
Date: Mon May 01 2006 - 14:08:50 EST


Hi David,

On Mon, 2006-05-01 at 12:32 +0100, David Vrabel wrote:
> It was clocking the MII management interface (MDC) at 500 Hz so each PHY
> register access took some 130 ms, and many registers accesses were being
> done on initialization. According to the datasheet, the maximum
> frequency for MDC is 2.5 MHz. Delays have been adjusted accordingly.

Thanks. Merged your patch.

Pekka

[PATCH] IP1000 Gigabit Ethernet device driver

This is a cleaned up fork of the IP1000A device driver:

http://www.icplus.com.tw/driver-pp-IP1000A.html

Open issues:

- ipg_probe() looks really fishy and doesn't handle all errors
(e.g. ioremap failing).
- ipg_nic_do_ioctl() is playing games with user-space pointer
and lets userspace do PCI access. I think we should nuke the
ioctl. Arjan suggested ethtool ioctl instead, but we don't
seem to have that kind of functionality now anyway.

Changelog:

- Kill 2.2 and 2.4 compatability macros (Pekka)
- Use proper module API (Pekka)
- Use proper PCI API (Pekka)
- Use netdev_priv (Pekka)
- Consolidate headers to one file (Pekka)
- Use __iomem annotations (Pekka)
- Use iomap instead of read/out for I/O (Pekka)
- Remove obfuscating register access macros (Pekka)
- Remove changelogs (David)
- Remove ether_crc_le() and use crc32_le() instead (David)
- No more nonsense with root_dev. ipg_remove() now works (David)
- Move PHY and MAC address initialization into the ipg_probe(). It was
previously filling in the MAC address on open which breaks some user
space. (David)
- Folded ipg_nic_init into ipg_probe since it was broke otherwise (David)
- Reduce delays when reading/writing the PHY registers so we clock the
MII management interface at 2.5 MHz (the maximum according to the
datasheet) instead of 500 Hz. (David)

The patch is 128 KB in size, so I am not including it in this
mail. You can find the patch here:

http://www.cs.helsinki.fi/u/penberg/linux/ip1000-driver.patch

Signed-off-by: David Vrabel <dvrabel@xxxxxxxxxx>
Signed-off-by: Pekka Enberg <penberg@xxxxxxxxxxxxxx>

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/