Patchwork [1/3] au1000_eth: use write accessors

login
register
mail settings
Submitter Florian Fainelli
Date July 28, 2009, 9:06 p.m.
Message ID <200907282306.27738.florian@openwrt.org>
Download mbox | patch
Permalink /patch/30322/
State Changes Requested
Delegated to: David Miller
Headers show

Comments

Florian Fainelli - July 28, 2009, 9:06 p.m.
Hi David,

The next 3 patches apply to on top of the patch series that I
sent earlier converting au1000_eth to become a platform_driver.
Thanks !
--
From: Florian Fainelli <florian@openwrt.org>
This patch replaces all occurences of *aup->enable = val
by writel(val, &aup->enable)

Signed-off-by: Florian Fainelli <florian@openwrt.org>
---
--
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Manuel Lauss - July 29, 2009, 7:51 a.m.
Hi Florian,

On Tue, Jul 28, 2009 at 11:06 PM, Florian Fainelli<florian@openwrt.org> wrote:
> Hi David,
>
> The next 3 patches apply to on top of the patch series that I
> sent earlier converting au1000_eth to become a platform_driver.
> Thanks !
> --
> From: Florian Fainelli <florian@openwrt.org>
> This patch replaces all occurences of *aup->enable = val
> by writel(val, &aup->enable)
>
> Signed-off-by: Florian Fainelli <florian@openwrt.org>
> ---
> diff --git a/drivers/net/au1000_eth.c b/drivers/net/au1000_eth.c
> index 57cc4f6..1f724da 100644
> --- a/drivers/net/au1000_eth.c
> +++ b/drivers/net/au1000_eth.c
> @@ -155,10 +155,10 @@ static void enable_mac(struct net_device *dev, int force_reset)
>        spin_lock_irqsave(&aup->lock, flags);
>
>        if(force_reset || (!aup->mac_enabled)) {
> -               *aup->enable = MAC_EN_CLOCK_ENABLE;
> +               writel(MAC_EN_CLOCK_ENABLE, &aup->enable);
>                au_sync_delay(2);
> -               *aup->enable = (MAC_EN_RESET0 | MAC_EN_RESET1 | MAC_EN_RESET2
> -                               | MAC_EN_CLOCK_ENABLE);
> +               writel((MAC_EN_RESET0 | MAC_EN_RESET1 | MAC_EN_RESET2
> +                       | MAC_EN_CLOCK_ENABLE), &aup->enable);
>                au_sync_delay(2);

While you're at it, please also replace all "au_sync_delay()" with
mmiowb() + msleep()

Thanks!
      Manuel Lauss
--
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Patch

diff --git a/drivers/net/au1000_eth.c b/drivers/net/au1000_eth.c
index 57cc4f6..1f724da 100644
--- a/drivers/net/au1000_eth.c
+++ b/drivers/net/au1000_eth.c
@@ -155,10 +155,10 @@  static void enable_mac(struct net_device *dev, int force_reset)
 	spin_lock_irqsave(&aup->lock, flags);
 
 	if(force_reset || (!aup->mac_enabled)) {
-		*aup->enable = MAC_EN_CLOCK_ENABLE;
+		writel(MAC_EN_CLOCK_ENABLE, &aup->enable);
 		au_sync_delay(2);
-		*aup->enable = (MAC_EN_RESET0 | MAC_EN_RESET1 | MAC_EN_RESET2
-				| MAC_EN_CLOCK_ENABLE);
+		writel((MAC_EN_RESET0 | MAC_EN_RESET1 | MAC_EN_RESET2
+			| MAC_EN_CLOCK_ENABLE), &aup->enable);
 		au_sync_delay(2);
 
 		aup->mac_enabled = 1;
@@ -486,9 +486,9 @@  static void reset_mac_unlocked(struct net_device *dev)
 
 	hard_stop(dev);
 
-	*aup->enable = MAC_EN_CLOCK_ENABLE;
+	writel(MAC_EN_CLOCK_ENABLE, &aup->enable);
 	au_sync_delay(2);
-	*aup->enable = 0;
+	writel(0, &aup->enable);
 	au_sync_delay(2);
 
 	aup->tx_full = 0;
@@ -1103,7 +1103,7 @@  static int __devinit au1000_probe(struct platform_device *pdev)
 	memcpy(dev->dev_addr, au1000_mac_addr, sizeof(au1000_mac_addr));
 	dev->dev_addr[5] += pdev->id;
 
-	*aup->enable = 0;
+	writel(0, &aup->enable);
 	aup->mac_enabled = 0;
 
 	pd = pdev->dev.platform_data;