On 11 Jun 2019, at 1:45 pm, Arend Van Spriel <arend.vanspriel@xxxxxxxxxxxx> wrote: > > The splat could be relevant. Maybe try the patch below to get actual values that are checked in the WARN_ON. > >> BCMDHD is also reported working with commits here: https://gitlab.com/baylibre/amlogic/atv/linux/commits/narmstrong/v5.1/aml/integ-5.1-bcmdhd but LibreELEC needs to support many different boards (with many different SDIO modules) from a single OS image, so BCMDHD is not the solution we need. >> One additional patch I spotted mentioning BCM4359 (also from Wright Feng) was https://github.com/RobertCNelson/ti-linux-kernel-dev/blob/65f17112e1c883d3c9f3fa68837e5f9b5eb7cfad/patches/cypress/v4.14.52-2018_0928/cypress-patch/0073-non-upstream-reset-two-D11-cores-if-chip-has-two-D11.patch but it makes no difference (the dmesg log above is with this patch applied). >> I don’t write code but am happy to build test kernels with suggested patches or explicit instructions. I’ve also CC’d LibreELEC colleague and linux-amlogic maintainer Neil Armstrong who can assist. NB: If direct access to hardware would help progress things I can easily organise remote access or get board samples shipped. >> How can we resume the investigation? > > Let's try one step at a time ;-) > > Regards, > Arend > --- > diff --git a/drivers/net/wireless/broadcom/brcm80211/brcmfmac/bcmsdh.c b/driver > index fc12598..e9b0986 100644 > --- a/drivers/net/wireless/broadcom/brcm80211/brcmfmac/bcmsdh.c > +++ b/drivers/net/wireless/broadcom/brcm80211/brcmfmac/bcmsdh.c > @@ -772,7 +772,8 @@ void brcmf_sdiod_sgtable_alloc(struct brcmf_sdio_dev *sdiod > sdiodev->settings->bus.sdio.txglomsz); > nents += (nents >> 4) + 1; > > - WARN_ON(nents > sdiodev->max_segment_count); > + WARN(nents > sdiodev->max_segment_count, "max_seg_cnt=%u, host_max_seg= > + sdiodev->max_segment_count, host->max_segs, nents); > > brcmf_dbg(TRACE, "nents=%d\n", nents); > err = sg_alloc_table(&sdiodev->sgtable, nents, GFP_KERNEL); > q ^ this patch is mangled - please send me the correct one so I can reply with information to move things forwards. Thanks. Christian