projects
/
firefly-linux-kernel-4.4.55.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
brcmfmac: dhd_sdio.c: use existing atomic_or primitive
[firefly-linux-kernel-4.4.55.git]
/
drivers
/
net
/
wireless
/
brcm80211
/
brcmfmac
/
sdio.c
diff --git
a/drivers/net/wireless/brcm80211/brcmfmac/sdio.c
b/drivers/net/wireless/brcm80211/brcmfmac/sdio.c
index d36f5f3d931b55f1df10da3b30d87fdd9b931611..f990e3d0e696e7f76b4ef501853eb6c5b7ff2831 100644
(file)
--- a/
drivers/net/wireless/brcm80211/brcmfmac/sdio.c
+++ b/
drivers/net/wireless/brcm80211/brcmfmac/sdio.c
@@
-2564,15
+2564,6
@@
static inline void brcmf_sdio_clrintr(struct brcmf_sdio *bus)
}
}
}
}
-static void atomic_orr(int val, atomic_t *v)
-{
- int old_val;
-
- old_val = atomic_read(v);
- while (atomic_cmpxchg(v, old_val, val | old_val) != old_val)
- old_val = atomic_read(v);
-}
-
static int brcmf_sdio_intr_rstatus(struct brcmf_sdio *bus)
{
struct brcmf_core *buscore;
static int brcmf_sdio_intr_rstatus(struct brcmf_sdio *bus)
{
struct brcmf_core *buscore;
@@
-2595,7
+2586,7
@@
static int brcmf_sdio_intr_rstatus(struct brcmf_sdio *bus)
if (val) {
brcmf_sdiod_regwl(bus->sdiodev, addr, val, &ret);
bus->sdcnt.f1regdata++;
if (val) {
brcmf_sdiod_regwl(bus->sdiodev, addr, val, &ret);
bus->sdcnt.f1regdata++;
- atomic_or
r
(val, &bus->intstatus);
+ atomic_or(val, &bus->intstatus);
}
return ret;
}
return ret;
@@
-2712,7
+2703,7
@@
static void brcmf_sdio_dpc(struct brcmf_sdio *bus)
/* Keep still-pending events for next scheduling */
if (intstatus)
/* Keep still-pending events for next scheduling */
if (intstatus)
- atomic_or
r
(intstatus, &bus->intstatus);
+ atomic_or(intstatus, &bus->intstatus);
brcmf_sdio_clrintr(bus);
brcmf_sdio_clrintr(bus);