brcmfmac: chip: Only disable D11 cores; handle an arbitrary number
authorHector Martin <marcan@marcan.st>
Mon, 20 Dec 2021 11:00:57 +0000 (20:00 +0900)
committerHector Martin <marcan@marcan.st>
Sat, 19 Feb 2022 08:17:03 +0000 (17:17 +0900)
commit730f3499accbb9adc421e8dffe1666e0fa83f72b
treea087834cf13937a5c8d7e60f45d93f7e08695554
parent804b9f7a8dae7b146e61e768963267a869022bc6
brcmfmac: chip: Only disable D11 cores; handle an arbitrary number

At least on BCM4387, the D11 cores are held in reset on cold startup and
firmware expects to release reset itself. Just assert reset here and let
firmware deassert it. Premature deassertion results in the firmware
failing to initialize properly some of the time, with strange AXI bus
errors.

Also, BCM4387 has 3 cores, up from 2. The logic for handling that is in
brcmf_chip_ai_resetcore(), but since we aren't using that any more, just
handle it here.

Reviewed-by: Linus Walleij <linus.walleij@linaro.org>
Signed-off-by: Hector Martin <marcan@marcan.st>
drivers/net/wireless/broadcom/brcm80211/brcmfmac/chip.c