Jump to content

WiFi not working on OrangePi Zero 2


gyrex

Recommended Posts

I'm using the latest image Armbian_23.8.3_Orangepizero2_bookworm_current_6.1.53.img.xz and wifi isn't working. Is there something I need to do to load the module or something?

 

sudo nmcli device show
GENERAL.DEVICE:                         end0
GENERAL.TYPE:                           ethernet
GENERAL.HWADDR:                         02:00:9E:C4:55:73
GENERAL.MTU:                            1500
GENERAL.STATE:                          100 (connected)
GENERAL.CONNECTION:                     Wired connection 1
GENERAL.CON-PATH:                       /org/freedesktop/NetworkManager/ActiveConnection/2
WIRED-PROPERTIES.CARRIER:               on
IP4.ADDRESS[1]:                         10.11.12.140/24
IP4.GATEWAY:                            10.11.12.1
IP4.ROUTE[1]:                           dst = 10.11.12.0/24, nh = 0.0.0.0, mt = 100
IP4.ROUTE[2]:                           dst = 0.0.0.0/0, nh = 10.11.12.1, mt = 100
IP4.ROUTE[3]:                           dst = 169.254.0.0/16, nh = 0.0.0.0, mt = 1000
IP4.DNS[1]:                             10.11.12.1
IP4.DOMAIN[1]:                          lan
IP4.SEARCHES[1]:                        lan
IP6.ADDRESS[1]:                         fe80::573f:9a69:7cbf:6308/64
IP6.GATEWAY:                            --
IP6.ROUTE[1]:                           dst = fe80::/64, nh = ::, mt = 1024

GENERAL.DEVICE:                         lo
GENERAL.TYPE:                           loopback
GENERAL.HWADDR:                         00:00:00:00:00:00
GENERAL.MTU:                            65536
GENERAL.STATE:                          100 (connected (externally))
GENERAL.CONNECTION:                     lo
GENERAL.CON-PATH:                       /org/freedesktop/NetworkManager/ActiveConnection/1
IP4.ADDRESS[1]:                         127.0.0.1/8
IP4.GATEWAY:                            --
IP6.ADDRESS[1]:                         ::1/128
IP6.GATEWAY:                            --

 

 

I've also tried loading the edge kernel (Linux opizero2 6.4.12-edge-sunxi64 #1 SMP Wed Aug 23 15:32:56 UTC 2023 aarch64 GNU/Linux) and that's not working either.

 

 

Link to comment
Share on other sites

Interesting. Wifi should work on 23.8.3. That release was specifically made to fix uwe5622 driver. The edge kernel you used however is not the one that includes the fix. It should have been something like 6.5.3 or 6.5.4, can't remember the exact version though.

 

Could you please share logs with "armbianmonitor -u" or if you don't have network access use "armbianmonitor -U >logs.txt" and upload the logs manually.

Link to comment
Share on other sites

After checking the board config, I see that wifi is only enabled by default for legacy build.

 

Could you please try adding the following in /boot/armbianEnv.txt file

extraboardargs=modules_load=uwe5622_bsp_sdio,sprdbt_tty,sprdwl_ng

 

Assuming required device tree node is there, this should get your wifi and bluetooth going on 6.1.53+ or 6.5.3+ kernels

Link to comment
Share on other sites

3 hours ago, mantouboji said:

Zero2 running latest mantic 

zero2_mantic.log 365.13 kB · 1 download

In the logs, I can see the driver got loaded with modules_load kernel parameter. But as the logs don't contain a list of network interfaces, its hard for me to tell if it worked for you or not. So could you be more specific whether it fixed your issue or not?

Link to comment
Share on other sites

9 hours ago, mantouboji said:

But the onboard WiFi/BT can't be found.

 

Could you please try using following dtoverlay along with the extraargs line. Save it to a file with name sun50i-h616-zero2-wifi.dts and then use "armbian-add-overlay sun50i-h616-zero2-wifi.dts" to enable the same

 

/dts-v1/;
/plugin/;

/ {
	reg_vcc33_wifi: vcc33-wifi {
		/* Always on 3.3V regulator for WiFi and BT */
		compatible = "regulator-fixed";
		regulator-name = "vcc33-wifi";
		regulator-min-microvolt = <3300000>;
		regulator-max-microvolt = <3300000>;
		regulator-always-on;
		vin-supply = <&reg_vcc5v>;
	};

	reg_vcc_wifi_io: vcc-wifi-io {
		/* Always on 1.8V/300mA regulator for WiFi and BT IO */
		compatible = "regulator-fixed";
		regulator-name = "vcc-wifi-io";
		regulator-min-microvolt = <1800000>;
		regulator-max-microvolt = <1800000>;
		regulator-always-on;
		vin-supply = <&reg_vcc33_wifi>;
	};

	wifi_pwrseq: wifi-pwrseq {
		compatible = "mmc-pwrseq-simple";
		clocks = <&rtc 1>;
		clock-names = "osc32k-out";
		reset-gpios = <&pio 6 18 1>; /* PG18 */
		post-power-on-delay-ms = <200>;
	};
};

&mmc1 {
	vmmc-supply = <&reg_vcc33_wifi>;
	vqmmc-supply = <&reg_vcc_wifi_io>;
	mmc-pwrseq = <&wifi_pwrseq>;
	bus-width = <4>;
	non-removable;
	mmc-ddr-1_8v;
	status = "okay";
};

 

PS: The overlay is tested to compile with "dtc -@ -I dts -O dtb -o sun50i-h616-zero2-wifi.dtb sun50i-h616-zero2-wifi.dts". I can't test if it works as I don't have the device.

Link to comment
Share on other sites

compiled and installed as a dtbo. but can't work.

 

[    7.922903] WCN: marlin_init entry!
[    7.923606] WCN: wcn config bt wake host
[    7.923937] WCN_ERR: dts node for bt_wake not found
[    7.923949] WCN: marlin2 parse_dt some para not config
[    7.923973] sdiohal:sdiohal_parse_dt adma_tx:1, adma_rx:1, pwrseq:0, irq type:data, gpio_num:0, blksize:840
[    7.930743] sdiohal:sdiohal_init ok

 

Link to comment
Share on other sites

I added wifi and bt configurations into your dts and installed it , modprobe uwe5622_bsp_sdio  can't work . erros is :

 

[  117.208119] WCN: marlin_init entry!
[  117.208732] WCN: wcn config bt wake host
[  117.208902] WCN_ERR: dts node for bt_wake not found
[  117.208908] WCN: marlin2 parse_dt some para not config
[  117.208921] sdiohal:sdiohal_parse_dt adma_tx:1, adma_rx:1, pwrseq:0, irq type:data, gpio_num:0, blksize:840
[  117.211084] sdiohal:sdiohal_init ok
[  117.211757] WCN: marlin_probe ok!

 

sun50i-h616-zero2-wifi.dts

Link to comment
Share on other sites

[    0.063345] cryptd: max_cpu_qlen set to 1000
[    0.705896] tcp_listen_portaddr_hash hash table entries: 512 (order: 1, 8192 bytes, linear)
[    0.873638] ledtrig-cpu: registered to indicate activity on CPUs
[    2.266824] sun50i_cpufreq_nvmem: Using CPU speed bin speed0
[   10.080694] cpufreq: cpufreq_online: CPU0: Running at unlisted initial frequency: 408000 KHz, changing to: 480000 KHz
[   14.206388] RPC: Registered tcp transport module.
[   14.206393] RPC: Registered tcp-with-tls transport module.
[   14.206397] RPC: Registered tcp NFSv4.1 backchannel transport module.
 

Link to comment
Share on other sites

1 hour ago, mantouboji said:

I added wifi and bt configurations into your dts and installed it , modprobe uwe5622_bsp_sdio  can't work . erros is :

 

[  117.208119] WCN: marlin_init entry!
[  117.208732] WCN: wcn config bt wake host
[  117.208902] WCN_ERR: dts node for bt_wake not found
[  117.208908] WCN: marlin2 parse_dt some para not config
[  117.208921] sdiohal:sdiohal_parse_dt adma_tx:1, adma_rx:1, pwrseq:0, irq type:data, gpio_num:0, blksize:840
[  117.211084] sdiohal:sdiohal_init ok
[  117.211757] WCN: marlin_probe ok!

 

 

The wifi and bt configuration you have added is not going to make any difference as in case of allwinner boards, driver simply does not read it. You can see it proven by the "dts node for bt_wake not found" message from your dmesg output above. None of the output there is of any use. Its something that is shown on working devices as well. Enabling uart1 is also not going to make a difference as sprdbt_tty provides bluetooth functionality over mmc/sdio interface.

 

If you want to add bt_wake configuration, you have to add a node with compatible string as "allwinner,sunxi-btlpm" and bt wake information needs to be added in a property called bt_hostwake.

 

Coming back to wifi not working even with the overlay, I am kind of clueless here. Its like the chip is not even powered on and hence is not detected by the driver. Its possible that dcdcc or dcdcd regulators might also need tweaking as done in the Xunlong's repository in this commit to provide required power.

 

But other than that I don't have any clue. I would wait for @ALIGMSTEN to come back on this.

Link to comment
Share on other sites

I "think" there is a problem with the sprdwl_ng module.   It wasn't loading and I tried

insmod /usr/lib/modules/6.1.57-current-sunxi64/kernel/drivers/net/wireless/uwe5622/unisocwifi/sprdwl_ng.ko

 

dmesg has the error

sprdwl_ng: Unknown symbol get_custom_mac_address (err -2)

 

uname shows 

6.1.57-current-sunxi64 #1 SMP Tue Oct 10 20:00:46 UTC 2023 aarch64 GNU/Linux

 

NOTE:  I compiled and added the dtb file from above.  u-boot shows it was loaded with no errors.  I added the extraboard args and added the same modules in /etc/modules.

sun50i-h616-zero2-wifi.dtbo

Link to comment
Share on other sites

I added these:

 

    wifi_pwrseq: wifi-pwrseq {
        compatible = "mmc-pwrseq-simple";
        clocks = <&rtc 1>;
        clock-names = "osc32k-out";
        reset-gpios = <&pio 6 18 0>; /* PG18 */
        post-power-on-delay-ms = <200>;
    };

        btlpm:btlpm {
        compatible = "allwinner,sunxi-btlpm";
        uart_index = <1>;
        bt_wake = <&pio 6 17 1 1 1 1>;
        bt_hostwake = <&pio 6 16 1 1 1 1>;
        status = "okay";
    };

};
 

 

and still error:

 

[    7.888039] WCN: marlin_init entry!
[    7.889351] WCN: wcn config bt wake host
[    7.889636] WCN_ERR: dts node for bt_wake not found
[    7.889647] WCN: marlin2 parse_dt some para not config
[    7.889670] sdiohal:sdiohal_parse_dt adma_tx:1, adma_rx:1, pwrseq:0, irq type:data, gpio_num:0, blksize:840
 

Link to comment
Share on other sites

My initial thoughts were power issue, as alluded above, and had noted comparing orangepi-linux, mmc1 aliases present in dts.

 

Both the dcdca (vdd-cpu) and dcdcc (vdd-sys-gpu) regulators are set higher than the manual recommends (orangpi-linux).

 

Busy testing the above, as for the driver very much not an expert there.

 

[  OK  ] Mounted     8.953564] WCN: marlin_init entry!
1;39mdev-hugepag[    8.958571] WCN: wcn config bt wake host
es.mount - H[    8.963450] WCN_ERR: dts node for bt_wake not found
uge Pages File S[    8.963471] WCN: marlin2 parse_dt some para not config
ystem.
[    8.976028] sdiohal:sdiohal_parse_dt adma_tx:1, adma_rx:1, pwrseq:0, irq type:data, gpio_num:0, blksize:840
[    8.976418] EXT4-fs (mmcblk0p1): re-mounted a12cf8fe-9336-471a-8617-212c48a86e16 r/w. Quota mode: none.
[    8.993748] sdiohal:sdiohal_init ok
[    9.003207] WCN: marlin_probe ok!
[    9.006066] systemd[1]: Mounted dev-mqueue.mount - POSIX Message Queue File System.
[  OK  ] Mounted dev-mqueue.mount▒▒- POSIX Message Queue File System.
[    9.035365] systemd[1]: Mounted sys-kernel-debug.mount - Kernel Debug File System.
[  OK  ] Mounted sys-kernel-debug.m…nt - Kernel Debug File System.
[    9.062017] mtty_probe init device addr: 0x(____ptrval____)
[    9.068122] -->rfkill_bluetooth_init
[    9.071173] systemd[1]: Finished fake-hwclock.service - Restore / save the current clock.
[    9.072127] bluetooth_set_power: start_block=1
[    9.084475] WCN: marlin power state:0, subsys: [MARLIN_BLUETOOTH] power 0
[    9.084502] bluetooth_set_power: end_block=1
[    9.084529] <--rfkill_bluetooth_init

 

Link to comment
Share on other sites

It is very very strange.

 

I download a OrangeOS arch image from OrangePi site,  and WiFi and BT runs very well under it, kernel 6.1.31-1+

So I try to hack its dtb and use dtc to decompile to dts. there are no any wifi config in mmc1 section  and no any BT config in uart1 section, and can't find any script to load uwe5622 module.

 

```

[oem@orange-os /]$ dmesg | grep WCN
[    8.107474] WCN: marlin_init entry!
[    8.124163] WCN: wcn config bt wake host
[    8.129076] WCN_ERR: dts node for bt_wake not found
[    8.129090] WCN: marlin2 parse_dt some para not config
[    8.160759] WCN: marlin_probe ok!
[    8.330380] WCN: start_marlin [MARLIN_WIFI]
[    8.335315] WCN: marlin power state:0, subsys: [MARLIN_WIFI] power 1
[    8.342931] WCN: the first power on start
[    8.451796] WCN: marlin chip en dummy pull up -- need manually set GPIO
[    8.502575] WCN: marlin_get_wcn_chipid: chipid: 0x2355b001
[    8.508119] WCN: marlin_scan_finish!
[    8.518954] WCN: then marlin start to download
[    8.525939] WCN: marlin_request_firmware from /lib/firmware/wcnmodem.bin start!
[    9.531979] WCN: combin_img 0 marlin_firmware_write finish and successful
[    9.538987] WCN: marlin_start_run read reset reg val:0x1
[    9.544357] WCN: after do marlin_start_run reset reg val:0x0
[    9.550242] WCN: s_marlin_bootup_time=9550241170
[    9.556815] WCN: clock mode: TSX
[    9.564933] WCN: marlin_write_cali_data sync init_state:0xd2800000
[    9.596012] WCN: marlin_write_cali_data sync init_state:0xf0f0f0f1
[    9.602236] WCN: sdio_config bt_wake_host trigger:[high]
[    9.607589] WCN: sdio_config irq:[inband]
[    9.611633] WCN: sdio_config wake_host_level_duration_time:[20ms]
[    9.617742] WCN: sdio_config wake_host_data_separation:[bt/wifi reuse]
[    9.624283] WCN: marlin_send_sdio_config_to_cp sdio_config:0x80f01 (enable config)
[    9.632212] WCN: marlin_write_cali_data finish
[    9.636872] WCN: check_cp_ready sync val:0xf0f0f0f2, prj_type val:0x0
[    9.667987] WCN: check_cp_ready sync val:0xf0f0f0f2, prj_type val:0x0
[    9.704174] WCN: check_cp_ready sync val:0xf0f0f0f2, prj_type val:0x0
[    9.736081] WCN: check_cp_ready sync val:0xf0f0f0f2, prj_type val:0x0
[    9.768248] WCN: check_cp_ready sync val:0xf0f0f0f6, prj_type val:0x0
[    9.774765] WCN: marlin_bind_verify confuse data: 0xf330e5f961b79fa1307586c664488000
[    9.782602] WCN: marlin_bind_verify verify data: 0xec6e0071f00c97a30cdc28fa5c1fb71a
[    9.802990] WCN: check_cp_ready sync val:0xf0f0f0f8, prj_type val:0x0
[    9.836087] WCN: check_cp_ready sync val:0xf0f0f0ff, prj_type val:0x0
[    9.850854] WCN: get_cp2_version entry!
[    9.890098] WCN: WCND at cmd read:WCN_VER:Platform Version:MARLIN3_19B_W21.05.3~Project Version:sc2355_marlin3_lite_ott~12-15-2021 11:26:33~
[    9.902864] WCN: switch_cp2_log - close entry!
[    9.909156] WCN: WCND at cmd read:OK
[    9.912887] WCN: then marlin download finished and run ok
[    9.918394] WCN: start_loopcheck
[    9.968127] WCN: get_board_ant_num [one_ant]
[   10.216479] WCN: marlin power state:4, subsys: [MARLIN_BLUETOOTH] power 0
[   10.223327] WCN: can not power off, other module is on
[   11.307156] WCN: start_marlin [MARLIN_BLUETOOTH]
[   11.311827] WCN: marlin power state:4, subsys: [MARLIN_BLUETOOTH] power 1
[   11.318678] WCN: marlin have open, GNSS is closed
[   12.500125] WCN: start_marlin [MARLIN_BLUETOOTH]
[   12.504793] WCN: marlin power state:5, subsys: [MARLIN_BLUETOOTH] power 1
[   12.511622] WCN: marlin have open, GNSS is closed
[   38.548440] WCN: start_marlin [MARLIN_BLUETOOTH]
[   38.553123] WCN: marlin power state:5, subsys: [MARLIN_BLUETOOTH] power 1
[   38.560053] WCN: marlin have open, GNSS is closed
```

Link to comment
Share on other sites

Link to comment
Share on other sites

a uwe5622 Wifi problem seem to afflict the Orange Pi Zero 3 as well

thoughts are it may take using newer drivers and uwe5622 firmware codes

https://github.com/orangepi-xunlong/linux-orangepi/tree/orange-pi-6.1-sun50iw9/drivers/net/wireless/uwe5622

 

i read somewhere that various works on uwe5622 drivers has been done in the 'upstreamed' recent kernels > 6.5 ?

There has been complaints that different vendor's uwe5622 drivers creates a problem as they possibly conflict.

Hence, it may help to try find the 'upstreamed' uwe5622 driver implementations and perhaps 'backport' it into the current kernels used in armbian e.g. 6.1.31

 

Link to comment
Share on other sites

On 10/25/2023 at 8:58 AM, ag123 said:

Hence, it may help to try find the 'upstreamed' uwe5622 driver implementations

As far as I am aware, there is no upstreamed uwe5622 driver, not even in linux-next tree. So if you are aware of one, please do share. I am aware of a patchset though that was posted to bring some support about 3 years ago IIRC, but it was rejected with a comment that a different group is working on the driver for the same. But no such driver is posted yet.

 

Again do share the upstreamed driver if you are aware of one. We would gladly give it a try.

Link to comment
Share on other sites

Hello All, hope someone is fairing better with this.

 

No real success in trying incremental steps.

 

Adjusting regulators does not improve the situation at this point, was also entertaining the remote possibility of a floating pin.

 

Am still trying a few ideas when have a moment.

 

Driver issue or because of missing node (Bluetooth not included in this iteration)?

 

[    7.726690] WCN_ERR: dts node for bt_wake not found
[    7.851065] platform regulatory.0: Direct firmware load for regulatory.db failed with error -2

 

wifi@orangepizero2:~$ dmesg --level=err,crit,alert,emerg,warn
[    0.000000] The swapaccount= commandline option is deprecated. Please report your usecase to linux-mm@kvack.org if you depend on this functionality.
[    0.003562] cacheinfo: Unable to detect cache hierarchy for CPU 0
[    2.290558] gpio gpiochip0: Static allocation of GPIO base is deprecated, use dynamic allocation.
[    2.303381] sun50i-h616-r-pinctrl 7022000.pinctrl: supply vcc-pl not found, using dummy regulator
[    2.308407] gpio gpiochip1: Static allocation of GPIO base is deprecated, use dynamic allocation.
[    2.332685] sun6i-spi 5010000.spi: Failed to request TX DMA channel
[    2.332722] sun6i-spi 5010000.spi: Failed to request RX DMA channel
[    2.333895] spi-nor spi0.0: supply vdd not found, using dummy regulator
[    2.391118] usb_phy_generic usb_phy_generic.1.auto: dummy supplies not allowed for exclusive requests
[    2.444911] mmc0: host does not support reading read-only switch, assuming write-enable
[    3.539599] dwmac-sun8i 5020000.ethernet: supply phy-io not found, using dummy regulator
[    3.540154] dwmac-sun8i 5020000.ethernet: Current syscon value is not the default 51fe6 (expect 0)
[    5.808023] (sd-execut[164]: /usr/lib/systemd/system-generators/netplan failed with exit status 1.
[    7.497417] device-mapper: core: CONFIG_IMA_DISABLE_HTABLE is disabled. Duplicate IMA measurements will not be recorded in the IMA log.
[    7.726690] WCN_ERR: dts node for bt_wake not found
[    7.851065] platform regulatory.0: Direct firmware load for regulatory.db failed with error -2
[   10.061599] sunxi_cedrus: module is from the staging directory, the quality is unknown, you have been warned.
[   26.659450] systemd[1150]: memfd_create() called without MFD_EXEC or MFD_NOEXEC_SEAL set
wifi@orangepizero2:~$ dmesg | grep mmc*
[    0.000000] Kernel command line: root=UUID=297049c4-c91b-4a71-b5cb-307c6d169e2a rootwait rootfstype=ext4 splash=verbose console=ttyS0,115200 consoleblank=0 loglevel=1 ubootpart=bd833452-01 usb-storage.quirks=0x2537:0x1066:u,0x2537:0x1068:u  modules_load=uwe5622_bsp_sdio,sprdbt_tty,sprdwl_ng cgroup_enable=memory swapaccount=1
[    0.000000] The swapaccount= commandline option is deprecated. Please report your usecase to linux-mm@kvack.org if you depend on this functionality.
[    0.000000] Unknown kernel command line parameters "splash=verbose ubootpart=bd833452-01 modules_load=uwe5622_bsp_sdio,sprdbt_tty,sprdwl_ng cgroup_enable=memory", will be passed to user space.
[    0.000929] Console: colour dummy device 80x25
[    0.061320] HugeTLB: 0 KiB vmemmap can be freed for a 1.00 GiB page
[    0.061343] HugeTLB: 0 KiB vmemmap can be freed for a 32.0 MiB page
[    0.061364] HugeTLB: 0 KiB vmemmap can be freed for a 2.00 MiB page
[    0.061385] HugeTLB: 0 KiB vmemmap can be freed for a 64.0 KiB page
[    0.678756] iommu: Default domain type: Translated
[    0.678779] iommu: DMA domain TLB invalidation policy: strict mode
[    0.817414] xor: automatically using best checksumming function   32regs
[    0.817457] Key type asymmetric registered
[    0.817466] Asymmetric key parser 'x509' registered
[    0.862546] mousedev: PS/2 mouse device common for all mice
[    2.303381] sun50i-h616-r-pinctrl 7022000.pinctrl: supply vcc-pl not found, using dummy regulator
[    2.333895] spi-nor spi0.0: supply vdd not found, using dummy regulator
[    2.383164] sunxi-mmc 4020000.mmc: Got CD GPIO
[    2.384697] sunxi-mmc 4021000.mmc: allocated mmc-pwrseq
[    2.391118] usb_phy_generic usb_phy_generic.1.auto: dummy supplies not allowed for exclusive requests
[    2.409349] sunxi-mmc 4020000.mmc: initialized, max. request size: 16384 KB, uses new timings mode
[    2.444911] mmc0: host does not support reading read-only switch, assuming write-enable
[    2.446835] mmc0: new high speed SDHC card at address 59b4
[    2.448328] mmcblk0: mmc0:59b4 SD    29.6 GiB
[    2.451946]  mmcblk0: p1
[    2.617847] sunxi-mmc 4021000.mmc: initialized, max. request size: 16384 KB, uses new timings mode
[    2.636734] mmc1: new high speed SDIO card at address 8800
[    3.539599] dwmac-sun8i 5020000.ethernet: supply phy-io not found, using dummy regulator
[    4.148366] EXT4-fs (mmcblk0p1): mounted filesystem 297049c4-c91b-4a71-b5cb-307c6d169e2a ro with writeback data mode. Quota mode: none.
[    7.050867] systemd[1]: Listening on systemd-fsckd.socket - fsck to fsckd communication Socket.
[    7.751463] EXT4-fs (mmcblk0p1): re-mounted 297049c4-c91b-4a71-b5cb-307c6d169e2a r/w. Quota mode: none.
[    9.259283] systemd[1]: systemd-machine-id-commit.service - Commit a transient machine-id on disk was skipped because of an unmet condition check (ConditionPathIsMountPoint=/etc/machine-id).
[   16.981325] dwmac-sun8i 5020000.ethernet end0: PHY [stmmac-0:01] driver [RTL8211F Gigabit Ethernet] (irq=POLL)
wifi@orangepizero2:~$

 

 

ali@orangepizero2:~$ lsmod
Module                  Size  Used by
sunxi_cedrus           49152  0
polyval_ce             12288  0
v4l2_mem2mem           28672  1 sunxi_cedrus
polyval_generic        12288  1 polyval_ce
videobuf2_dma_contig    20480  1 sunxi_cedrus
videobuf2_memops       16384  1 videobuf2_dma_contig
videobuf2_v4l2         20480  2 sunxi_cedrus,v4l2_mem2mem
lz4hc                  12288  0
videodev              217088  3 sunxi_cedrus,videobuf2_v4l2,v4l2_mem2mem
panfrost               69632  0
lz4                    12288  0
videobuf2_common       45056  5 sunxi_cedrus,videobuf2_dma_contig,videobuf2_v4l2,v4l2_mem2mem,videobuf2_memops
gpu_sched              32768  1 panfrost
mc                     57344  5 sunxi_cedrus,videodev,videobuf2_v4l2,videobuf2_common,v4l2_mem2mem
drm_shmem_helper       16384  1 panfrost
cpufreq_dt             16384  0
zram                   28672  3
binfmt_misc            20480  1
cfg80211              380928  0
sprdbt_tty             36864  0
rfkill                 24576  3 sprdbt_tty,cfg80211
uwe5622_bsp_sdio      204800  1 sprdbt_tty
fuse                  126976  1
dm_mod                131072  0
realtek                32768  1
dwmac_sun8i            24576  0
mdio_mux               12288  1 dwmac_sun8i
ali@orangepizero2:~$

 

 

could the 

platform regulatory.0: Direct firmware load for regulatory.db failed with error -2

 

 

be package related?

 

 

Link to comment
Share on other sites

@Gunjan Gupta

Quote

 

  On 10/25/2023 at 11:28 AM, ag123 said:

Hence, it may help to try find the 'upstreamed' uwe5622 driver implementations

As far as I am aware, there is no upstreamed uwe5622 driver, not even in linux-next tree. So if you are aware of one, please do share. I am aware of a patchset though that was posted to bring some support about 3 years ago IIRC, but it was rejected with a comment that a different group is working on the driver for the same. But no such driver is posted yet.

 

Again do share the upstreamed driver if you are aware of one. We would gladly give it a try.

 

 

a teaser from here: 

😉

Link to comment
Share on other sites

the lastest kernel in github works well. 

 

yaofei@opiz2new:~$ dmesg | grep wcn
[    5.765767] WCN: wcn config bt wake host
[    6.013435] WCN: marlin_get_wcn_chipid: chipid: 0x2355b001
[    6.013744] WCN: marlin_request_firmware from /lib/firmware/uwe5622/wcnmodem.bin start!
yaofei@opiz2new:~$ dmesg | grep WCN
[    5.765225] WCN: marlin_init entry!
[    5.765767] WCN: wcn config bt wake host
[    5.765944] WCN_ERR: dts node for bt_wake not found
[    5.765949] WCN: marlin2 parse_dt some para not config
[    5.771004] WCN: marlin_probe ok!
[    5.878905] WCN: start_marlin [MARLIN_WIFI]
[    5.878930] WCN: marlin power state:0, subsys: [MARLIN_WIFI] power 1
[    5.878938] WCN: the first power on start
[    5.984834] WCN: marlin chip en dummy pull up -- need manually set GPIO 
[    6.013435] WCN: marlin_get_wcn_chipid: chipid: 0x2355b001
[    6.013464] WCN: marlin_scan_finish!
[    6.013678] WCN: then marlin start to download
[    6.013744] WCN: marlin_request_firmware from /lib/firmware/uwe5622/wcnmodem.bin start!
[    6.949035] WCN: combin_img 0 marlin_firmware_write finish and successful
[    6.949380] WCN: marlin_start_run read reset reg val:0x1
[    6.949402] WCN: after do marlin_start_run reset reg val:0x0
[    6.949675] WCN: s_marlin_bootup_time=6949673222
[    6.971922] WCN: clock mode: TSX
[    6.974326] WCN: marlin_write_cali_data sync init_state:0x910be084
[    7.001543] WCN: marlin_write_cali_data sync init_state:0xf0f0f0f1
[    7.001576] WCN: sdio_config bt_wake_host trigger:[high]
[    7.001581] WCN: sdio_config irq:[inband]
[    7.001584] WCN: sdio_config wake_host_level_duration_time:[20ms]
[    7.001590] WCN: sdio_config wake_host_data_separation:[bt/wifi reuse]
[    7.001594] WCN: marlin_send_sdio_config_to_cp sdio_config:0x80f01 (enable config)
[    7.002554] WCN: marlin_write_cali_data finish
[    7.002872] WCN: check_cp_ready sync val:0xf0f0f0f2, prj_type val:0x0
[    7.033162] WCN: check_cp_ready sync val:0xf0f0f0f2, prj_type val:0x0
[    7.061244] WCN: check_cp_ready sync val:0xf0f0f0f2, prj_type val:0x0
[    7.089318] WCN: check_cp_ready sync val:0xf0f0f0f2, prj_type val:0x0
[    7.118152] WCN: check_cp_ready sync val:0xf0f0f0f6, prj_type val:0x0
[    7.118185] WCN: marlin_bind_verify confuse data: 0xc1dd50bce4287cfe286adfb8a9ec545a
[    7.118210] WCN: marlin_bind_verify verify data: 0xc0ea7052590e6a2c58e27da891760052
[    7.119722] WCN: check_cp_ready sync val:0xf0f0f0ff, prj_type val:0x0
[    7.120266] WCN: get_cp2_version entry!
[    7.122118] WCN: WCND at cmd read:WCN_VER:Platform Version:MARLIN3_19B_W21.05.3~Project Version:sc2355_marlin3_lite_ott~12-15-2021 11:26:33~
[    7.122208] WCN: switch_cp2_log - close entry!
[    7.123613] WCN: WCND at cmd read:OK
[    7.123752] WCN: then marlin download finished and run ok
[    7.123771] WCN: start_loopcheck
[    7.143894] WCN: get_board_ant_num [one_ant]
[    7.591271] WCN: marlin power state:4, subsys: [MARLIN_BLUETOOTH] power 0
[    7.598092] WCN: can not power off, other module is on
[    8.214286] WCN: marlin power state:4, subsys: [MARLIN_BLUETOOTH] power 0
[    8.214295] WCN: can not power off, other module is on
yaofei@opiz2new:~$ uname -a
Linux opiz2new 6.6.7-edge-sunxi64 #1 SMP Wed Dec 13 17:45:36 UTC 2023 aarch64 aarch64 aarch64 GNU/Linux

 

so must manual load the driver modules:

yaofei@opiz2new:~$ cat /etc/modules-load.d/modules.conf 
# /etc/modules: kernel modules to load at boot time.
#
# This file contains the names of kernel modules that should be loaded
# at boot time, one per line. Lines beginning with "#" are ignored.
# Parameters can be specified after the module name.
uwe5622_bsp_sdio
sprdwl_ng
sprdbt_tty

 

Edited by mantouboji
add modules.conf
Link to comment
Share on other sites

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.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
×
×
  • Create New...

Important Information

Terms of Use - Privacy Policy - Guidelines