ScoreABSM Posted June 21 Posted June 21 Context: new Banana Pi M4 zero (rev 2) is using Wifi/BT over SDIO, which requires an sdio overlay. Thanks to Armbian team for providing it. Editing armbianEnv.txt to add "overlays=bananapi-m4-sdio-wifi-bt" did the trick for Wifi but BT is still not available (neither in standard or rolling builds)... @c0rnelius I know you tried to figure out why, I'm missing technical knowledge to help... Digging the Internet I saw similar bluetooth issue for radxa zero 3w with aic8800, resolved using hciattach / hci up, but needing an available /dev/ttyS1 (UART1) we are missing here... Do you know why? Could it be the problem for banana pi m4 zero and if yes could an overlay activate it? Denis 0 Quote
c0rnelius Posted June 21 Posted June 21 Here is a more vanilla build of the kernel. patrick@bananapim4zero:~$ ls /dev/ttyS* /dev/ttyS0 /dev/ttyS3 /dev/ttyS5 /dev/ttyS7 /dev/ttyS2 /dev/ttyS4 /dev/ttyS6 patrick@bananapim4zero:~$ sudo rfkill ID TYPE DEVICE SOFT HARD 0 bluetooth hci0 unblocked unblocked 1 wlan phy0 unblocked unblocked patrick@bananapim4zero:~$ bluetoothctl hci0 new_settings: powered bondable ssp br/edr le secure-conn Agent registered [CHG] Controller AC:6A:A3:3B:D9:D6 Pairable: yes [bluetoothctl]> exit patrick@bananapim4zero:~$ uname -a Linux bananapim4zero 6.12.32 #1 SMP Sat Jun 7 17:23:51 EDT 2025 aarch64 GNU/Linux patrick@bananapim4zero:~$ dmesg | grep brcm [ 9.007064] brcmfmac: brcmf_fw_alloc_request: using brcm/brcmfmac43455-sdio for chip BCM4345/6 [ 9.007614] usbcore: registered new interface driver brcmfmac [ 9.303238] brcmfmac: brcmf_c_process_txcap_blob: no txcap_blob available (err=-2) [ 9.303576] brcmfmac: brcmf_c_preinit_dcmds: Firmware: BCM4345/6 wl0: Aug 29 2023 01:47:08 version 7.45.265 (28bca26 CY) FWID 01-b677b91b [ 9.430799] Bluetooth: hci0: BCM4345C0 'brcm/BCM4345C0.sinovoip,bpi-m4-zero.hcd' Patch As you can see the Bluetooth works fine. If I add these two patches it breaks bluetooth on this kernel build. drv-rtc-sun6i-support-RTCs-without-external-LOSCs.patch drv-rtc-sun6i-Add-Allwinner-H616-support.patch I'm still investigating in my spare time, but I'm not 100% on anything. Could be I need to take another approach to the bluetooth node in Armbian? So this is where am at. If anyone has any thoughts I'm all ears. 0 Quote
c0rnelius Posted June 30 Posted June 30 @ScoreABSM https://github.com/armbian/build/pull/8339 1 Quote
ScoreABSM Posted July 5 Author Posted July 5 Many thanks @c0rnelius! Is there a build available to test these patches for bluetooth? Upgrading from 25.2.2 Debian standard image or only in rolling (Trixie or Plunkie)? Denis 0 Quote
c0rnelius Posted July 5 Posted July 5 @ScoreABSM Sorry I had to revert that PR. It seemed to initially work, but in the end it started hitting fails more than it functioned. https://github.com/armbian/build/pull/8344 I'm still on the case. 0 Quote
c0rnelius Posted July 6 Posted July 6 The issue appears to be two things. These two patches and the current defconfig(s) being used. drv-rtc-sun6i-support-RTCs-without-external-LOSCs.patch drv-rtc-sun6i-Add-Allwinner-H616-support.patch When I disable those patches and use my own defconfig everything works as it should. https://paste.armbian.com/tixixocubu The hard part here would be figuring out exactly what in the defconfig(s) are either breaking things or missing. Also if I disable those patches, what does it break on other units? I'm under the impression these patches were rejects from the original h616 bring up in mainline. But I could be wrong? 1 Quote
ScoreABSM Posted July 11 Author Posted July 11 Many thanks for your great work @c0rnelius. If you have a build I can test tell me. Denis 0 Quote
c0rnelius Posted July 11 Posted July 11 @ScoreABSM https://github.com/armbian/build/pull/8368 0 Quote
ScoreABSM Posted July 15 Author Posted July 15 Hi @c0rnelius, Sorry I was not clear enough, could you share with me an image to test including BT (the 2 patches removed and using your own defconfig)? Denis 0 Quote
c0rnelius Posted July 15 Posted July 15 @ScoreABSM https://github.com/pyavitz/binary/releases/download/images/Armbian-unofficial_25.08.0-trunk_Bananapim4zero_trixie_current_6.12.35.img.xz 1 Quote
ScoreABSM Posted Friday at 08:17 AM Author Posted Friday at 08:17 AM Hi @c0rnelius, I did some tests with your image, connecting bluetooth audio earbuds, installing XFCE, chromium,... it works (and also wifi, hdmi/audio, ...)!! But some problems (side effects of disabling the 2 patches?) : - hdmi audio (working fine despite the following errors) "hdmi-audio-codec hdmi-audio-codec.5.auto: Only one simultaneous stream supported! "hdmi-audio-codec hdmi-audio-codec.5.auto: ASoC: error at snd_soc_dai_startup on i2s-hifi: -22 - i2s (despite I don't use it, following error in log) "ahub_plat-i2s-hifi: ASoC: error at __soc_pcm_open on ahub_plat-i2s-hifi: -22" - WiFi (working fine despite the following errors) "brcmfmac: brcmf_set_channel: set chanspec 0x100e fail, reason -52" "brcmf_p2p_send_action_frame: Unknown Frame: category 0xa, action 0x8" - display lags / windows repaint problems, seems to appear only after using GPU to decode videos, following errors in log) panfrost 1800000.gpu: gpu sched timeout, js=0, config=0x7300, status=0x8, head=0x10061d80, tail=0x10061d80, sch$ panfrost 1800000.gpu: Panfrost Dump: BO has no sgt, cannot dump panfrost 1800000.gpu: gpu soft reset timed out, attempting hard reset panfrost 1800000.gpu: gpu hard reset timed out panfrost 1800000.gpu: error powering up gpu L2 panfrost 1800000.gpu: error powering up gpu shader panfrost 1800000.gpu: error powering up gpu tiler panfrost 1800000.gpu: gpu sched timeout, js=0, config=0x7300, status=0x8, head=0xd0bd0c0, tail=0xd0bd0c0, sched$ panfrost 1800000.gpu: gpu sched timeout, js=0, config=0x7b00, status=0x8, head=0x11195d80, tail=0x11195d80, sch$ This last one is the main problem. Also strange GPU is activated without adding gpu to overlays... Hope this helps. Denis - dmesg.txt armbianEnv.txt 0 Quote
Solution c0rnelius Posted Friday at 12:18 PM Solution Posted Friday at 12:18 PM @ScoreABSM I have no clue what the HDMI audio errors are in the dmesg. I noticed them before as well. I know mainline doesn't actually have HDMI audio support yet. I'm not sure where these HDMI audio patches originated, but I assume the OrangePI repo. Of course, I could just be doing something wrong here on a DTS level? Strange your getting chanspec errors. This was resolved on my end by updating the wireless-regdb. You can try resolving it with this: "Put in your COUNTRYCODE" extraargs=cfg80211.ieee80211_regdom=US or this echo "options cfg80211 ieee80211_regdom=US" > /etc/modprobe.d/cfg80211.conf I'll disable the gpu by default. No. I don't see how removing those RTC patches would be creating these errors. The chanspec one is well known. Also happens on RPI's. I have a HACK patch that disables the error, but thats not really a fix. When I ran tests with the GPU before I never saw those errors and that GPU patch was pulled from mainline. I believe? Pretty sure it is the same patch I use in my personal builds. II'll say this. This is becoming endless. I'm getting ready to toss this SBC in the garbage 0 Quote
c0rnelius Posted Friday at 01:27 PM Posted Friday at 01:27 PM @ScoreABSM https://github.com/armbian/build/pull/8394 I enabled gpu via overlay. Looking fine on my end. Tested using Chromium and Youtube. Still not sure about that audio dmesg error. Audio does work though. Image I ran test with: https://github.com/pyavitz/binary/releases/download/images/Armbian-unofficial_25.08.0-trunk_Bananapim4zero_bookworm_current_6.12.35_xfce_desktop.img.xz dmesgandmisc.txt 0 Quote
ScoreABSM Posted 13 hours ago Author Posted 13 hours ago (edited) Thank you very much @c0rnelius, using your image and (for France) Quote echo "options cfg80211 ieee80211_regdom=FR" > /etc/modprobe.d/cfg80211.conf I'm almost good. The only errors in the dmesg are the HDMI audio errors but it works... However loading GPU overlay or not, I have a problem decoding videos. To reproduce: - download this mp4 video test file (https://www.sample-videos.com/video321/mp4/720/big_buck_bunny_720p_30mb.mp4) ) open in chromium, make it full-screen. Denis Edited 13 hours ago by ScoreABSM 0 Quote
c0rnelius Posted 5 hours ago Posted 5 hours ago The DRM / GPU patches are from mainline. I'm sure there are or will be some updates, hacks and tweaks that eventually come down the road. But that's beyond the scope of bringing up the board. 0 Quote
ScoreABSM Posted 4 hours ago Author Posted 4 hours ago I don’t understand why playing videos with this board is a problem under Debian and not under Android for example. Thanks however. Denis 0 Quote
c0rnelius Posted 1 hour ago Posted 1 hour ago Chromium is not the best for playing videos. Try mplayer or mpv or something alike. I doubt you'll get great performance beyond 720p though. Might not even get it in some cases with 720p? If I wanna use an SBC as a media player, I either use LibreELEC or CoreELEC and don't use Alllwinner, but Amlogic. Good luck. 0 Quote
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.