atheros: ar2315-pci: remove odd locking in PCI config space access function

Caller (generic PCI code) already do proper locking so no need to add
another one here.

Signed-off-by: Sergey Ryazanov <ryazanov.s.a@gmail.com>

SVN-Revision: 42498
This commit is contained in:
John Crispin 2014-09-12 06:52:46 +00:00
parent 09f38a3f76
commit 1e6af86ff9

View file

@ -7,7 +7,7 @@
+obj-$(CONFIG_ATHEROS_AR2315_PCI) += pci.o +obj-$(CONFIG_ATHEROS_AR2315_PCI) += pci.o
--- /dev/null --- /dev/null
+++ b/arch/mips/ar231x/pci.c +++ b/arch/mips/ar231x/pci.c
@@ -0,0 +1,233 @@ @@ -0,0 +1,229 @@
+/* +/*
+ * This program is free software; you can redistribute it and/or + * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License + * modify it under the terms of the GNU General Public License
@ -28,7 +28,6 @@
+#include <linux/kernel.h> +#include <linux/kernel.h>
+#include <linux/init.h> +#include <linux/init.h>
+#include <linux/mm.h> +#include <linux/mm.h>
+#include <linux/spinlock.h>
+#include <linux/delay.h> +#include <linux/delay.h>
+#include <linux/irq.h> +#include <linux/irq.h>
+#include <linux/io.h> +#include <linux/io.h>
@ -46,7 +45,6 @@
+ +
+static int config_access(int devfn, int where, int size, u32 *ptr, bool write) +static int config_access(int devfn, int where, int size, u32 *ptr, bool write)
+{ +{
+ unsigned long flags;
+ int func = PCI_FUNC(devfn); + int func = PCI_FUNC(devfn);
+ int dev = PCI_SLOT(devfn); + int dev = PCI_SLOT(devfn);
+ u32 value = 0; + u32 value = 0;
@ -57,7 +55,6 @@
+ return PCIBIOS_DEVICE_NOT_FOUND; + return PCIBIOS_DEVICE_NOT_FOUND;
+ +
+ /* Select Configuration access */ + /* Select Configuration access */
+ local_irq_save(flags);
+ ar231x_mask_reg(AR2315_PCI_MISC_CONFIG, 0, AR2315_PCIMISC_CFG_SEL); + ar231x_mask_reg(AR2315_PCI_MISC_CONFIG, 0, AR2315_PCIMISC_CFG_SEL);
+ mb(); + mb();
+ +
@ -90,7 +87,6 @@
+ +
+ /* Select Memory access */ + /* Select Memory access */
+ ar231x_mask_reg(AR2315_PCI_MISC_CONFIG, AR2315_PCIMISC_CFG_SEL, 0); + ar231x_mask_reg(AR2315_PCI_MISC_CONFIG, AR2315_PCIMISC_CFG_SEL, 0);
+ local_irq_restore(flags);
+ +
+ return err ? PCIBIOS_DEVICE_NOT_FOUND : PCIBIOS_SUCCESSFUL; + return err ? PCIBIOS_DEVICE_NOT_FOUND : PCIBIOS_SUCCESSFUL;
+} +}