|
@@ -2476,9 +2476,9 @@ static void gem_set_multicast(struct net_device *dev)
|
|
|
}
|
|
|
|
|
|
/* Jumbo-grams don't seem to work :-( */
|
|
|
-#define GEM_MIN_MTU 68
|
|
|
+#define GEM_MIN_MTU ETH_MIN_MTU
|
|
|
#if 1
|
|
|
-#define GEM_MAX_MTU 1500
|
|
|
+#define GEM_MAX_MTU ETH_DATA_LEN
|
|
|
#else
|
|
|
#define GEM_MAX_MTU 9000
|
|
|
#endif
|
|
@@ -2487,9 +2487,6 @@ static int gem_change_mtu(struct net_device *dev, int new_mtu)
|
|
|
{
|
|
|
struct gem *gp = netdev_priv(dev);
|
|
|
|
|
|
- if (new_mtu < GEM_MIN_MTU || new_mtu > GEM_MAX_MTU)
|
|
|
- return -EINVAL;
|
|
|
-
|
|
|
dev->mtu = new_mtu;
|
|
|
|
|
|
/* We'll just catch it later when the device is up'd or resumed */
|
|
@@ -2977,6 +2974,10 @@ static int gem_init_one(struct pci_dev *pdev, const struct pci_device_id *ent)
|
|
|
if (pci_using_dac)
|
|
|
dev->features |= NETIF_F_HIGHDMA;
|
|
|
|
|
|
+ /* MTU range: 68 - 1500 (Jumbo mode is broken) */
|
|
|
+ dev->min_mtu = GEM_MIN_MTU;
|
|
|
+ dev->max_mtu = GEM_MAX_MTU;
|
|
|
+
|
|
|
/* Register with kernel */
|
|
|
if (register_netdev(dev)) {
|
|
|
pr_err("Cannot register net device, aborting\n");
|