2019-11-03 11:53:41

by Martin Blumenstingl

[permalink] [raw]
Subject: BCM4335 SDIO firmware crash/problem

Hello,

I have an SBC ("TV Box") branded as "Mecool BB2".
Photos of the internals can be found on the internet (it looks
identical to mine): [0]

I installed Arch Linux ARM on that device (meaning: mainline Linux,
currently on 5.3.x kernel version).
To get wifi working I copied the "nvram.txt" (from the original
Android installation that the device came with) to
/usr/lib/firmware/brcm/brcmfmac4335-sdio.txt
That file is identical to what CoreELEC has in their repositories: [1]

My problem is that the SDIO firmware crashes after some time (usually
within 3 days after bringing up the device). Note that there no
suspend/resume going on (not supported yet on Amlogic GXM platforms),
it's simply on for two days.
attached is a "broken.log" which shows that the BCM4335 firmware
crashed after 2.5 days

Then I went to find why this is...
linux-firmware ships firmware version "BCM4335/1 wl0: Mar 24 2013
20:36:01 version 6.30.171.24.20 (B0 Station/P2P)" (according to dmesg)
The Android installation that my device came with ships a newer
firmware version: "BCM4335/1 wl0: May 18 2014 16:56:54 version
6.34.171.58.2". This is also available in CoreELEC's repository: [2].
I went ahead and used this newer on my Arch Linux ARM installation and
it seems to have fixed my problem - see the attached "working.log"
(taken after approx. 1 week of uptime).

disclaimer: please ignore the timestamp of the first few log entries
in "broken.log" and "working.log". my board does not have an RTC so
first network (wifi in my case) first needs to come up to have ntp set
the correct date/time.

my two questions are:
1. what needs to be done to update the BCM4335 SDIO firmware in the
linux-firmware repository?
2. what version to update the linux-firmware repository to (is there
something newer than 6.34.171.58.2 - which seems ancient as the
firmware for many other Broadcom SDIO wifi chips was updated last
year)?


Martin


[0] https://forum.freaktab.com/forum/tv-player-support/amlogic-based-tv-players/s912/mecool/reviews-test/589555-mecool-bb2-android-6-0-amlogic-s912-tv-box-2g-16g-802-11ac-wifi-bt-1000m-lan
[1] https://raw.githubusercontent.com/CoreELEC/brcmfmac_sdio-firmware-aml/00922ab6cca904886ba17029aecd599a53e66072/firmware/brcm/nvram_bcm4335.txt
[2] https://github.com/CoreELEC/brcmfmac_sdio-firmware-aml/blob/00922ab6cca904886ba17029aecd599a53e66072/firmware/brcm/fw_bcm4335b0_ag.bin?raw=true


Attachments:
working.log (3.80 kB)
broken.log (22.79 kB)
Download all attachments

2019-11-09 14:57:35

by Martin Blumenstingl

[permalink] [raw]
Subject: Re: BCM4335 SDIO firmware crash/problem

On Sun, Nov 3, 2019 at 12:49 PM Martin Blumenstingl
<[email protected]> wrote:
[...]
> The Android installation that my device came with ships a newer
> firmware version: "BCM4335/1 wl0: May 18 2014 16:56:54 version
> 6.34.171.58.2". This is also available in CoreELEC's repository: [2].
> I went ahead and used this newer on my Arch Linux ARM installation and
> it seems to have fixed my problem
I am now at 12 days of uptime and wifi is still working with that firmware


Martin

2019-11-18 20:49:08

by Martin Blumenstingl

[permalink] [raw]
Subject: Re: BCM4335 SDIO firmware crash/problem

Hi Arend and linux-wireless supporters,

On Sat, Nov 9, 2019 at 3:55 PM Martin Blumenstingl
<[email protected]> wrote:
>
> On Sun, Nov 3, 2019 at 12:49 PM Martin Blumenstingl
> <[email protected]> wrote:
> [...]
> > The Android installation that my device came with ships a newer
> > firmware version: "BCM4335/1 wl0: May 18 2014 16:56:54 version
> > 6.34.171.58.2". This is also available in CoreELEC's repository: [2].
> > I went ahead and used this newer on my Arch Linux ARM installation and
> > it seems to have fixed my problem
> I am now at 12 days of uptime and wifi is still working with that firmware
gentle ping on this
I can send a patch against linux-firmware if you want but I'm not sure
about the license or any internals of that firmware


Thank you for your help in advance!
Martin

2019-11-19 08:57:24

by Arend van Spriel

[permalink] [raw]
Subject: Re: BCM4335 SDIO firmware crash/problem

On 11/18/2019 9:47 PM, Martin Blumenstingl wrote:
> Hi Arend and linux-wireless supporters,
>
> On Sat, Nov 9, 2019 at 3:55 PM Martin Blumenstingl
> <[email protected]> wrote:
>>
>> On Sun, Nov 3, 2019 at 12:49 PM Martin Blumenstingl
>> <[email protected]> wrote:
>> [...]
>>> The Android installation that my device came with ships a newer
>>> firmware version: "BCM4335/1 wl0: May 18 2014 16:56:54 version
>>> 6.34.171.58.2". This is also available in CoreELEC's repository: [2].
>>> I went ahead and used this newer on my Arch Linux ARM installation and
>>> it seems to have fixed my problem
>> I am now at 12 days of uptime and wifi is still working with that firmware
> gentle ping on this
> I can send a patch against linux-firmware if you want but I'm not sure
> about the license or any internals of that firmware

Hi Martin,

Sorry I did not chime in earlier. I have not looked at the CoreELEC
repository for license files. Without such info I am inclined to say you
are not licensed to redistribute the firmware. The BCM4335 is
end-of-life for us although maybe Cypress is still selling the device
and may want to provide a firmware update.

Regards,
Arend

2019-11-19 14:39:39

by Chi-Hsien Lin

[permalink] [raw]
Subject: Re: BCM4335 SDIO firmware crash/problem



On 11/19/2019 4:53, Arend Van Spriel wrote:
> On 11/18/2019 9:47 PM, Martin Blumenstingl wrote:
>> Hi Arend and linux-wireless supporters,
>>
>> On Sat, Nov 9, 2019 at 3:55 PM Martin Blumenstingl
>> <[email protected]> wrote:
>>>
>>> On Sun, Nov 3, 2019 at 12:49 PM Martin Blumenstingl
>>> <[email protected]> wrote:
>>> [...]
>>>> The Android installation that my device came with ships a newer
>>>> firmware version: "BCM4335/1 wl0: May 18 2014 16:56:54 version
>>>> 6.34.171.58.2". This is also available in CoreELEC's repository: [2].
>>>> I went ahead and used this newer on my Arch Linux ARM installation and
>>>> it seems to have fixed my problem
>>> I am now at 12 days of uptime and wifi is still working with that
>>> firmware
>> gentle ping on this
>> I can send a patch against linux-firmware if you want but I'm not sure
>> about the license or any internals of that firmware
>
> Hi Martin,
>
> Sorry I did not chime in earlier. I have not looked at the CoreELEC
> repository for license files. Without such info I am inclined to say you
> are not licensed to redistribute the firmware. The BCM4335 is
> end-of-life for us although maybe Cypress is still selling the device
> and may want to provide a firmware update.

Hi Martin/Arend,

4335 is not in our supported chip list, either.

I did a quick search and found below CoreELEC repo, but don't see a
license with it:
https://github.com/CoreELEC/brcmfmac_sdio-firmware-aml

Regards,
Chi-hsien Lin

>
> Regards,
> Arend
> .
>

2019-11-20 18:32:59

by Martin Blumenstingl

[permalink] [raw]
Subject: Re: BCM4335 SDIO firmware crash/problem

Hello,

On Tue, Nov 19, 2019 at 3:35 PM Chi-Hsien Lin <[email protected]> wrote:
>
>
>
> On 11/19/2019 4:53, Arend Van Spriel wrote:
> > On 11/18/2019 9:47 PM, Martin Blumenstingl wrote:
> >> Hi Arend and linux-wireless supporters,
> >>
> >> On Sat, Nov 9, 2019 at 3:55 PM Martin Blumenstingl
> >> <[email protected]> wrote:
> >>>
> >>> On Sun, Nov 3, 2019 at 12:49 PM Martin Blumenstingl
> >>> <[email protected]> wrote:
> >>> [...]
> >>>> The Android installation that my device came with ships a newer
> >>>> firmware version: "BCM4335/1 wl0: May 18 2014 16:56:54 version
> >>>> 6.34.171.58.2". This is also available in CoreELEC's repository: [2].
> >>>> I went ahead and used this newer on my Arch Linux ARM installation and
> >>>> it seems to have fixed my problem
> >>> I am now at 12 days of uptime and wifi is still working with that
> >>> firmware
> >> gentle ping on this
> >> I can send a patch against linux-firmware if you want but I'm not sure
> >> about the license or any internals of that firmware
> >
> > Hi Martin,
> >
> > Sorry I did not chime in earlier. I have not looked at the CoreELEC
> > repository for license files. Without such info I am inclined to say you
> > are not licensed to redistribute the firmware. The BCM4335 is
> > end-of-life for us although maybe Cypress is still selling the device
> > and may want to provide a firmware update.
>
> Hi Martin/Arend,
>
> 4335 is not in our supported chip list, either.
thank you for the update!

I am not familiar with the firmware details or your support process so
I still have some questions.
Can you still share the "last supported firmware" for BCM4335 so it
can be included in the linux-firmware repo?
"Last supported firmware" in my words is the latest binary that you
shipped to the customers back when BCM4335 was still a "supported"
product.


Regards
Martin