[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <b3ece790705021348j7a0c7037u221a1f5b5dae4838@mail.gmail.com>
Date: Wed, 2 May 2007 13:48:55 -0700
From: "Tim Hockin" <thockin@...kin.org>
To: "Rafal Bilski" <rafalbilski@...eria.pl>
Cc: "Andrew Morton" <akpm@...ux-foundation.org>,
"Mark Brown" <broonie@...ena.org.uk>, linux-kernel@...r.kernel.org
Subject: Re: Natsemi DP83815 driver spaming
On 5/2/07, Rafal Bilski <rafalbilski@...eria.pl> wrote:
> What about module option?
Looks ok to me, if this is the preferred route.
> ---
> drivers/net/natsemi.c | 9 ++++++++-
> 1 files changed, 8 insertions(+), 1 deletions(-)
>
> diff --git a/drivers/net/natsemi.c b/drivers/net/natsemi.c
> index 349b96a..933e106 100644
> --- a/drivers/net/natsemi.c
> +++ b/drivers/net/natsemi.c
> @@ -90,6 +90,10 @@ static int rx_copybreak;
> static int options[MAX_UNITS];
> static int full_duplex[MAX_UNITS];
>
> +/* Used to disable "is PHY alive" check for compatibility with broken
> + * designs using rev. C chips. */
> +static int disable_phy_check;
> +
> /* Operational parameters that are set at compile time. */
>
> /* Keep the ring sizes a power of two for compile efficiency.
> @@ -141,6 +145,7 @@ module_param(debug, int, 0);
> module_param(rx_copybreak, int, 0);
> module_param_array(options, int, NULL, 0);
> module_param_array(full_duplex, int, NULL, 0);
> +module_param(disable_phy_check, int, 0);
> MODULE_PARM_DESC(mtu, "DP8381x MTU (all boards)");
> MODULE_PARM_DESC(debug, "DP8381x default debug level");
> MODULE_PARM_DESC(rx_copybreak,
> @@ -148,6 +153,8 @@ MODULE_PARM_DESC(rx_copybreak,
> MODULE_PARM_DESC(options,
> "DP8381x: Bits 0-3: media type, bit 17: full duplex");
> MODULE_PARM_DESC(full_duplex, "DP8381x full duplex setting(s) (1)");
> +MODULE_PARM_DESC(disable_phy_check, "DP8381[56]: PHY lockup check disable"
> + " (all boards)");
>
> /*
> Theory of Operation
> @@ -1753,7 +1760,7 @@ static void netdev_timer(unsigned long data)
> writew(1, ioaddr+PGSEL);
> dspcfg = readw(ioaddr+DSPCFG);
> writew(0, ioaddr+PGSEL);
> - if (dspcfg != np->dspcfg) {
> + if (!disable_phy_check && dspcfg != np->dspcfg) {
> if (!netif_queue_stopped(dev)) {
> spin_unlock_irq(&np->lock);
> if (netif_msg_hw(np))
> --
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists