From f1207ba1a756610a9880fe4b70d7f0e9f0627073 Mon Sep 17 00:00:00 2001 From: "John W. Linville" Date: Thu, 27 Jul 2006 18:10:00 -0400 Subject: [PATCH] [PATCH] bcm43xx: fix-up build breakage from merging patches out of order Signed-off-by: John W. Linville --- drivers/net/wireless/bcm43xx/bcm43xx_debugfs.c | 6 ++++-- drivers/net/wireless/bcm43xx/bcm43xx_main.c | 16 ++++++++-------- drivers/net/wireless/bcm43xx/bcm43xx_sysfs.c | 8 ++++---- 3 files changed, 16 insertions(+), 14 deletions(-) diff --git a/drivers/net/wireless/bcm43xx/bcm43xx_debugfs.c b/drivers/net/wireless/bcm43xx/bcm43xx_debugfs.c index 634d3d8093c..923275ea078 100644 --- a/drivers/net/wireless/bcm43xx/bcm43xx_debugfs.c +++ b/drivers/net/wireless/bcm43xx/bcm43xx_debugfs.c @@ -331,7 +331,8 @@ static ssize_t restart_write_file(struct file *file, const char __user *user_buf res = -EFAULT; goto out_up; } - bcm43xx_lock_irqsafe(bcm, flags); + mutex_lock(&(bcm)->mutex); + spin_lock_irqsave(&(bcm)->irq_lock, flags); if (bcm43xx_status(bcm) != BCM43xx_STAT_INITIALIZED) { printk(KERN_INFO PFX "debugfs: Board not initialized.\n"); res = -EFAULT; @@ -344,7 +345,8 @@ static ssize_t restart_write_file(struct file *file, const char __user *user_buf res = -EINVAL; out_unlock: - bcm43xx_unlock_irqsafe(bcm, flags); + spin_unlock_irqrestore(&(bcm)->irq_lock, flags); + mutex_unlock(&(bcm)->mutex); out_up: up(&big_buffer_sem); return res; diff --git a/drivers/net/wireless/bcm43xx/bcm43xx_main.c b/drivers/net/wireless/bcm43xx/bcm43xx_main.c index e5829056cc3..24d531eb00f 100644 --- a/drivers/net/wireless/bcm43xx/bcm43xx_main.c +++ b/drivers/net/wireless/bcm43xx/bcm43xx_main.c @@ -3199,9 +3199,9 @@ static int bcm43xx_rng_read(struct hwrng *rng, u32 *data) struct bcm43xx_private *bcm = (struct bcm43xx_private *)rng->priv; unsigned long flags; - bcm43xx_lock_irqonly(bcm, flags); + spin_lock_irqsave(&(bcm)->irq_lock, flags); *data = bcm43xx_read16(bcm, BCM43xx_MMIO_RNG); - bcm43xx_unlock_irqonly(bcm, flags); + spin_unlock_irqrestore(&(bcm)->irq_lock, flags); return (sizeof(u16)); } @@ -3264,10 +3264,10 @@ static void bcm43xx_free_board(struct bcm43xx_private *bcm) bcm43xx_sysfs_unregister(bcm); bcm43xx_periodic_tasks_delete(bcm); - bcm43xx_lock_noirq(bcm); + mutex_lock(&(bcm)->mutex); bcm43xx_shutdown_all_wireless_cores(bcm); bcm43xx_pctl_set_crystal(bcm, 0); - bcm43xx_unlock_noirq(bcm); + mutex_unlock(&(bcm)->mutex); } static void prepare_phydata_for_init(struct bcm43xx_phyinfo *phy) @@ -3511,7 +3511,7 @@ static int bcm43xx_init_board(struct bcm43xx_private *bcm) { int err; - bcm43xx_lock_noirq(bcm); + mutex_lock(&(bcm)->mutex); tasklet_enable(&bcm->isr_tasklet); err = bcm43xx_pctl_set_crystal(bcm, 1); @@ -3533,7 +3533,7 @@ static int bcm43xx_init_board(struct bcm43xx_private *bcm) schedule_work(&bcm->softmac->associnfo.work); out: - bcm43xx_unlock_noirq(bcm); + mutex_unlock(&(bcm)->mutex); return err; @@ -4097,10 +4097,10 @@ static void bcm43xx_chip_reset(void *_bcm) struct bcm43xx_phyinfo *phy; int err; - bcm43xx_lock_noirq(bcm); + mutex_lock(&(bcm)->mutex); phy = bcm43xx_current_phy(bcm); err = bcm43xx_select_wireless_core(bcm, phy->type); - bcm43xx_unlock_noirq(bcm); + mutex_unlock(&(bcm)->mutex); printk(KERN_ERR PFX "Controller restart%s\n", (err == 0) ? "ed" : " failed"); diff --git a/drivers/net/wireless/bcm43xx/bcm43xx_sysfs.c b/drivers/net/wireless/bcm43xx/bcm43xx_sysfs.c index ac394013cd9..ece335178f6 100644 --- a/drivers/net/wireless/bcm43xx/bcm43xx_sysfs.c +++ b/drivers/net/wireless/bcm43xx/bcm43xx_sysfs.c @@ -333,9 +333,9 @@ static ssize_t bcm43xx_attr_phymode_store(struct device *dev, goto out; } - bcm43xx_lock_noirq(bcm); + mutex_lock(&(bcm)->mutex); err = bcm43xx_select_wireless_core(bcm, phytype); - bcm43xx_unlock_noirq(bcm); + mutex_unlock(&(bcm)->mutex); if (err == -ESRCH) err = -ENODEV; @@ -350,7 +350,7 @@ static ssize_t bcm43xx_attr_phymode_show(struct device *dev, struct bcm43xx_private *bcm = dev_to_bcm(dev); ssize_t count = 0; - bcm43xx_lock_noirq(bcm); + mutex_lock(&(bcm)->mutex); switch (bcm43xx_current_phy(bcm)->type) { case BCM43xx_PHYTYPE_A: snprintf(buf, PAGE_SIZE, "A"); @@ -364,7 +364,7 @@ static ssize_t bcm43xx_attr_phymode_show(struct device *dev, default: assert(0); } - bcm43xx_unlock_noirq(bcm); + mutex_unlock(&(bcm)->mutex); return count; } -- 2.41.1