Re: [PATCH]: Suspend2 Merge: Device driver fixes 1/2

From: Éric Brunet
Date: Thu Sep 16 2004 - 12:19:46 EST


Well I kept trying to push this patch to Paul Gortmaker (maintainer of
the n2kpci driver), but to no avail. I guess I won't have to any more.

Éric Brunet

> -----Forwarded Message-----
>> From: Éric Brunet <Eric.Brunet@xxxxxxxxxx>
>> To: Paul Gortmaker <p_gortmaker@xxxxxxxxx>
>> Cc: arekm@xxxxxxxxxxxxx, linux-kernel@xxxxxxxxxxxxxxx
>> Subject: PATCH swsuspend for ne2k-pci cards
>> Date: Sat, 21 Aug 2004 14:14:30 +0200
>>
>> Hi,
>>
>> Arkadiusz Miskiewicz had some suggestions to improve my patch which
>> adds suspend/resume support to ne2k-pci.c. Actually, he basically rewrote
>> it.
>>
>> This patch was only tested on my own ne2k clone [Realtek Semiconductor
>> Co., Ltd. RTL-8029(AS)], and it works nicely for me. As 1) it cannot hurt
>> people which are not using swsuspend 2) it can only improve things for
>> people using swsuspend, it would be nice if this patch could go into the
>> kernel.
>>
>> Thank you,
>>
>> Éric Brunet
>
> diff -ruN linux-2.6.9-rc1/drivers/net/ne2k-pci.c software-suspend-linux-2.6.9-rc1-rev3/drivers/net/ne2k-pci.c
> --- linux-2.6.9-rc1/drivers/net/ne2k-pci.c 2004-09-07 21:58:41.000000000 +1000
> +++ software-suspend-linux-2.6.9-rc1-rev3/drivers/net/ne2k-pci.c 2004-09-09 19:36:24.000000000 +1000
> @@ -653,12 +653,43 @@
> pci_set_drvdata(pdev, NULL);
> }
>
> +#ifdef CONFIG_PM
> +static int ne2k_pci_suspend (struct pci_dev *pdev, u32 state)
> +{
> + struct net_device *dev = pci_get_drvdata (pdev);
> +
> + netif_device_detach(dev);
> + pci_save_state(pdev, pdev->saved_config_space);
> + pci_set_power_state(pdev, state);
> +
> + return 0;
> +}
> +
> +static int ne2k_pci_resume (struct pci_dev *pdev)
> +{
> + struct net_device *dev = pci_get_drvdata (pdev);
> +
> + pci_set_power_state(pdev, 0);
> + pci_restore_state(pdev, pdev->saved_config_space);
> + NS8390_init(dev, 1);
> + netif_device_attach(dev);
> +
> + return 0;
> +}
> +
> +#endif /* CONFIG_PM */
> +
>
> static struct pci_driver ne2k_driver = {
> .name = DRV_NAME,
> .probe = ne2k_pci_init_one,
> .remove = __devexit_p(ne2k_pci_remove_one),
> .id_table = ne2k_pci_tbl,
> +#ifdef CONFIG_PM
> + .suspend = ne2k_pci_suspend,
> + .resume = ne2k_pci_resume,
> +#endif /* CONFIG_PM */
> +
> };
>
> --
> Nigel Cunningham
> Pastoral Worker
> Christian Reformed Church of Tuggeranong
> PO Box 1004, Tuggeranong, ACT 2901
>
> Many today claim to be tolerant. True tolerance, however, can cope with others
> being intolerant.
>
> -
> 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/
>
-
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/