linux/drivers/net
Hans de Goede 9210bad0ec brcmfmac: Fix brcmf_chip_ai_coredisable not applying reset bits to BCMA_IOCTL
commit ffa216bb5e upstream.

brcmfmac has been broken on my cubietruck with a BCM43362:

brcmfmac: brcmf_chip_recognition: found AXI chip: BCM43362, rev=1
brcmfmac: brcmf_c_preinit_dcmds: Firmware version = wl0:
        Apr 22 2013 14:50:00 version 5.90.195.89.6 FWID 01-b30a427d

since commit 5303626103: "brcmfmac: update core reset and disable routines".

The problem is that since this commit brcmf_chip_ai_resetcore no longer sets
BCMA_IOCTL itself before bringing the core out of reset, instead relying on
brcmf_chip_ai_coredisable to do so. But brcmf_chip_ai_coredisable is a nop
of the chip is already in reset. This patch modifies brcmf_chip_ai_coredisable
to always set BCMA_IOCTL even if the core is already in reset.

This fixes brcmfmac hanging in firmware loading on my board.

Cc: stable@vger.kernel.org # v3.14
Signed-off-by: Hans de Goede <hdegoede@redhat.com>
Acked-by: Arend van Spriel <arend@broadcom.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
[arend@broadcom.com: rebase patch on linux-3.14.y branch]
Signed-off-by: Arend van Spriel <arend@broadcom.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2014-07-09 11:18:28 -07:00
..
appletalk
arcnet
bonding
caif
can can: peak_pci: prevent use after free at netdev removal 2014-06-30 20:11:51 -07:00
cris
dsa
ethernet mlx4_core: Fix incorrect FLAGS1 bitmap test in mlx4_QUERY_FUNC_CAP 2014-07-09 11:18:28 -07:00
fddi
hamradio
hippi
hyperv
ieee802154
irda
phy
plip
ppp
slip
team team: fix mtu setting 2014-06-26 15:15:39 -04:00
usb net: qmi_wwan: add Olivetti Olicard modems 2014-06-26 15:15:39 -04:00
vmxnet3
wan
wimax
wireless brcmfmac: Fix brcmf_chip_ai_coredisable not applying reset bits to BCMA_IOCTL 2014-07-09 11:18:28 -07:00
xen-netback
dummy.c
eql.c
ifb.c
Kconfig
LICENSE.SRC
loopback.c
macvlan.c net: force a list_del() in unregister_netdevice_many() 2014-06-26 15:15:39 -04:00
macvtap.c
Makefile
mdio.c
mii.c
netconsole.c
nlmon.c
ntb_netdev.c
rionet.c
sb1000.c
Space.c
sungem_phy.c
tun.c
veth.c
virtio_net.c
vxlan.c vxlan: use dev->needed_headroom instead of dev->hard_header_len 2014-06-26 15:15:40 -04:00
xen-netfront.c