Subject: Re: [PATCH net-next] atl1e: Atheros L1E Gigabit Ethernet driver

From: Stephen Hemminger <[email-masked]>
Date: Thu, 17 Jul 2008 08:44:50 -0700

> +/*
> + * atl1e_check_options - Range Checking for Command Line Parameters
> + * @adapter: board private structure
> + *
> + * This routine checks all command line parameters for valid user
> + * input.  If an invalid value is given, or if no user specified
> + * value exists, a default value is used.  The final value is stored
> + * in a variable in the adapter structure.
> + */
> +void __devinit atl1e_check_options(struct atl1e_adapter *adapter)
> +{
> +	struct pci_dev *pdev = adapter->pdev;
> +	int bd = adapter->bd_number;
> +	if (bd >= ATL1E_MAX_NIC) {
> +		dev_notice(&pdev->dev, "no configuration for board #%i\n", bd);
> +		dev_notice(&pdev->dev, "Using defaults for all values\n");
> +	}

The use of module parameters to set options is discouraged, especially
when there are better choices. All these parameter should be controllable by ethtool.
The reason is that users (and tools) shouldn't have to know the
special parameters that are specific to that hardware.

This version is okay as is for initial inclusion, but the parameters should
be removed later.