8 8
hpapagaj

Orange Pi Zero /4.11.0-sun8i/ wlan0 is gone

Recommended Posts

1 hour ago, exquisitus said:

is there any hope for a working driver under 4.11 in foreseeable future then?

See the "Orange Pi Zero wireless module status" pinned thread and other XR819-related threads in this H2/H3 subforum.  Shorter: Are you volunteering? :D  If not, then probably not:

  • too many users
  • with too little patience
  • having too high expectations
  • of too weak a wireless chip
  • with too little and too poor public documentation/drivers

You could fall back to the ill-reputed legacy kernel, obtain a supported USB wireless adapter, or configure and build your own kernel with xradio_wlan enabled https://github.com/armbian/build/.  Whatever you choose, good luck.

Share this post


Link to post
Share on other sites
1 minute ago, hpapagaj said:

As I said the previous driver worked perfectly for me.

Then you shouldn't have updated the kernel. The driver is disabled in 4.11 and it will not be readded unless all major issues (that we consider major) are fixed (and it doesn't depend on us since we don't have resources or documentation to do this)

 

You may be able to find and compile out of tree driver for the XR819 chip, but not the one you have linked - that one AFAIK is for the 3.10.x kernel.

Share this post


Link to post
Share on other sites
24 minutes ago, hpapagaj said:

As I said the previous driver worked perfectly for me.

 

The driver is still there (and ready for 4.11) but not included any more for reasons explained above: https://github.com/armbian/build/issues/663#issuecomment-299268016

 

BTW: part of the problem IMO is amount/lack of feedback. Some very loud voices constantly blame Armbian and those volunteers who tried hard to improve the driver (see links above) for being incompetent/reluctant/whatever and XR819 not working at all while we received almost zero feedback stating the opposite (as your 'driver worked perfectly for me')

 

In other words: Dealing with XR819 is not only frustrating based on technical details (low performance, crappy driver code drop, lack of documentation) but also due to end user feedback and expectations.

 

 

Share this post


Link to post
Share on other sites
14 hours ago, jhpadjustable said:

See the "Orange Pi Zero wireless module status" pinned thread and other XR819-related threads in this H2/H3 subforum.  Shorter: Are you volunteering? :D  If not, then probably not:

uhuh, thank you for your reply... i hate to say that, i really do, but such a reply is indeed less useful than no reply at all. disapponting.

see my question is completely void of any emotional baggage. and your reply is loaded with it, patronizing, full of prejudice and attitude.

do i need that? not at all. last time i checked i had eyes and got an impression i could see, so it would be probably wiser if you assume you are the only one with eyes in a land of the blind.

want to communicate how cool you are? didn't work, better luck next time.

and yes, if i could fix the problem, i would have done that. if i had not done it, that simply means that i cannot do it and i would like to read useful opinions to get a better understanding from people who are perhaps more knowledgeable, ok?

not at all interested in wasting my time bickering or playing games.

why in hell is empty smartass talk even a trend here, what useful purpose does that serve... jesus...

Share this post


Link to post
Share on other sites
4 minutes ago, exquisitus said:

jesus

 

Who's that? Anyway: Please keep in mind that you're not in a one to one personal support chat here but in a public forum many people come accross by googling for specific stuff. So if someone from time to time summarizes actual state of affairs there's nothing wrong with it :)

 

(at least I usually have a broader audience in mind than the person I'm actually answering when posting here. And yes, it happens again and again that this is considered just another insult)

Share this post


Link to post
Share on other sites

Like the thread-starter I was happy with the xradio-implementation in 4.10 and would like wifi-support in 4.11.

Taking the advice of jhpadjustable and tkaiser and attempted to built a 4.11 kernel enabling the xradio-related patch.

The kernel works alright but there still is no wlan0.

Syslog shows a failed attempt to modprobe xradio-wlan during boot and there is no xradio-module in /lib/modules/4.11.1-sun8i/net/wireless/.

 

I am probably missing something ultra-obvious here ... can anyone help?

Share this post


Link to post
Share on other sites

OK, somewhat obvious: forgot to set CONFIG_WLAN_VENDOR_XRADIO in the kernel config-file.

This time compiling the kernel failed, partly due to the face, that the current "add-xradio-wireless-driver"-patch has not been updated to the 4.11 version.

On 11.5.2017 at 0:41 PM, tkaiser said:

 

The driver is still there (and ready for 4.11) but not included ..

 

Nope, I do not think it is ... (e.g. missing parameter for  ieee80211_cqm_rssi_notify function etc.)

 

Share this post


Link to post
Share on other sites
On 5/11/2017 at 9:17 PM, exquisitus said:

uhuh, thank you for your reply... i hate to say that, i really do, but such a reply is indeed less useful than no reply at all. disapponting.

see my question is completely void of any emotional baggage. and your reply is loaded with it, patronizing, full of prejudice and attitude.

do i need that? not at all. last time i checked i had eyes and got an impression i could see, so it would be probably wiser if you assume you are the only one with eyes in a land of the blind.

want to communicate how cool you are? didn't work, better luck next time.

and yes, if i could fix the problem, i would have done that. if i had not done it, that simply means that i cannot do it and i would like to read useful opinions to get a better understanding from people who are perhaps more knowledgeable, ok?

not at all interested in wasting my time bickering or playing games.

why in hell is empty smartass talk even a trend here, what useful purpose does that serve... jesus...

 

exquisitus, I don't see how jhpadjustable's reply was patronizing, prejudiced, or full of attitude. He politely said that if you want to know the history of the module (and why it's not well supported) there are other threads talking about it. I really don't see how his reply is "less useful than no reply at all" since he told you where you can find more information (something you can also do with the forum's search feature).

 

When people here provide information to users, and then get replies like yours, it's no wonder the driver situation doesn't improve. Anyone who is working to make it better just gets people coming and being offended by their answers.

 

If you're unhappy with the state of the XR819 driver, I have the perfect place for you to go to solve your problems: https://github.com/fifteenhex/xradio/pulls

 

I hate to say it, I really do, but I think you need to see this: https://www.youtube.com/watch?v=F-mju_gW3c8

Share this post


Link to post
Share on other sites

I did a big mistake updating to 4.11. So called crappy Xradio has been working great for me with 4.10. Is there any possibility to undo the update?

Share this post


Link to post
Share on other sites

Get a 4.10 image from armbian downloads, mount it as loop device, copy the kernel+modules+any related files over to your microSD.

 

As a much better way, find out what the old kernel package was called, and install it. Make sure to freeze your kernel+modules via armbian-config to ensure it doesn't accidentally get updated again.

Share this post


Link to post
Share on other sites
On 6/18/2017 at 1:09 AM, farrukh said:

I did a big mistake updating to 4.11. So called crappy Xradio has been working great for me with 4.10. Is there any possibility to undo the update?

I am the same with the driver for the 7601U wlan dongle which works solidly for me in the older version ( at work now so can't remember off hand what the cutoff point is).

 

I'm not sure exactly how all these drivers fit into building an image, but you'd have to assume that something somewhere caused an issue that is fixed easier than reprogramming the driver. I wish I had the software skills (and the time!) to be able to contribute more to these images

Share this post


Link to post
Share on other sites

Sadly, I got bitten by this too.  It was serving pretty decently as a little CUPS server mounted to the back of my printer.

 

I can understand why they dropped it, but it was perfect for my personal use case. 

Share this post


Link to post
Share on other sites

I understand Reading this thread that the driver can’t be compiled in 4.11 according to @martinayotte. However, @fifteenhex claims that it is working with the patch.

Could you clarify what is the status? I understand the decision to exclude the driver from the default build but I think it would be great to make it work as an option for custom builds. It could be a crapy driver as you all comment. But i

For those, like me, that use custom builds what is the last commit of the build tool that still use 4.10? I tried to find any tag in the master branch but I was unable to find it.

 

Thanks,

Share this post


Link to post
Share on other sites

Thanks for the links. But i normally build my own images using lib build tools.

 I tried to build version 4.10 with xradio support but I cant do it with current master branch.

any idea how to get the last version of build tools that will enable that.

 

regards,

Share this post


Link to post
Share on other sites
(edited)

Well, here is a hardware based solution. I modified the 3d case and added a usb port via usb to dip 2.54mm board and plugged in cheap Ralink mt7601u dongle which I prefer over typical realtek ones. The on-board wifi can be used anytime, too. The case can be downloaded from thingiverse: https://goo.gl/r6E6u9

 



1.jpg

2.jpg

3.jpg

4.jpg

 

 

Edited by zador.blood.stained
Hide large images under the spoiler

Share this post


Link to post
Share on other sites

The problem is, neither the 7601 or onboard wlan work (software-wise) with the new builds, nice pictures though

Share this post


Link to post
Share on other sites

@raschid, @martinayotte

I was able to compile the driver under 4.11 using this version: https://github.com/fifteenhex/xradio/commit/3f80a7c69a4d00b93bb187edc6beef2b4c38bada

Also I mokypatched the current patch in armbian/build to align the driver compiled during image build process including the XRADIO_* settings. The build is correct and the driver is loaded when booted:

Linux orangepizero 4.11.5-sun8i #2 SMP Fri Jun 23 14:44:29 CEST 2017 armv7l GNU/Linux

root@orangepizero:~# lsmod

Module                  Size  Used by

sunxi_cir              16384  0 

xradio_wlan           102400  1 

sun8i_codec_analog     24576  0 

mac80211              335872  1 xradio_wlan

cfg80211              204800  2 mac80211,xradio_wlan

 

still no wlan0 is available. It is possible that it has to be with associated DTS files that have been changed also. I'm trying with an overlay to properly configure it but still no success. I'm not an expert on Device-tree but it seems to be in-line with the needs to make the driver work. When loading the overlay there a msg showing that there are duplicate entries and lots of warnings in the compilation.  

 /dts-v1/ /plugin/;

 / {
     compatible = "xunlong,orangepi-zero", "allwinner,sun8i-h2plus", "allwinner,sun8i-h3";

     fragment@0 {
        target = "/aliases";
        __overlay__ {
          ethernet1 = &xr819wifi;
        };
     };

     fragment@1 {
         target = "/reg_vcc_wifi";
         __overlay__ {
           regulator-min-microvolt = <1800000>;
           regulator-max-microvolt = <1800000>;
           startup-delay-us = <70000>;
         };
     };

     fragment@2 {
         target = "/wifi_pwrseq";
         __overlay__ {
           pinctrl-names = "default";
           pinctrl-0 = <&wifi_rst>;
         };
     };

     fragment@3 {
       target = <&mmc1>;
       __overlay__ {
          vmmc-supply = <&reg_vcc3v3>;
          vqmmc-supply = <&reg_vcc_wifi>;
          /*max-frequency = <16000000>; */
          /delete-node/ xr819;
          xr819wifi: sdio_wifi@1 {
            reg= <1>;
            compatible = "xradio,xr819";
            pinctrl-names = "default";
            pinctrl-0 = <&wifi_wake>;
            interrupt-parent = <&pio>;
            interrupts = <6 10 1>;
            interrupt-names = "host-wake";
            local-mac-address = [dc 44 6d c0 ff ee];
          };
       };
     };

     fragment@4 {
       target = <&pio>;
       __overlay__ {
         wifi_wake: wifi_wake@0 {
           allwinner,pins = "PG10";
           allwinner,function = "irq";
           allwinner,pull= <0>;
           };
       };
     };

     fragment@5 {
       target = <&r_pio>;
       __overlay__ {
         wifi_rst: wifi_rst@0 {
           allwinner,pins = "PL7";
           allwinner,function = "gpio_out";
           allwinner,drive = <0>;
           allwinner,pull = <0>;
            };
       };
     };

 };

 

Any Idea?

 

 

 

Share this post


Link to post
Share on other sites

The issue isn't to get the driver loaded, it is that it is flooding dmesg with tons of those errors :

xradio_wlan mmc1:0001:1: received frame has no key status

... and if you do a "ifconfig" the whole kernel is hanging ...

Share this post


Link to post
Share on other sites
(edited)
1 hour ago, martinayotte said:

The issue isn't to get the driver loaded, it is that it is flooding dmesg with tons of those errors :


xradio_wlan mmc1:0001:1: received frame has no key status

... and if you do a "ifconfig" the whole kernel is hanging ...

 

Same here. I also used fifteenhex's code.

 

I used this DTS:

 

/dts-v1/; #include "sun8i-h3.dtsi" #include "sunxi-common-regulators.dtsi" #include <dt-bindings/gpio/gpio.h> #include <dt-bindings/input/input.h> #include <dt-bindings/pinctrl/sun4i-a10.h> / { model = "Xunlong Orange Pi Zero"; compatible = "xunlong,orangepi-zero", "allwinner,sun8i-h2-plus"; aliases { serial0 = &uart0; /* ethernet0 is the H3 emac, defined in sun8i-h3.dtsi */ ethernet1 = &xr819; }; chosen { stdout-path = "serial0:115200n8"; }; leds { compatible = "gpio-leds"; pwr_led { label = "orangepi:green:pwr"; gpios = <&r_pio 0 10 GPIO_ACTIVE_HIGH>; default-state = "on"; }; status_led { label = "orangepi:red:status"; gpios = <&pio 0 17 GPIO_ACTIVE_HIGH>; }; }; reg_vcc_wifi: reg_vcc_wifi { compatible = "regulator-fixed"; regulator-min-microvolt = <3300000>; regulator-max-microvolt = <3300000>; regulator-name = "vcc-wifi"; enable-active-high; gpio = <&pio 0 20 GPIO_ACTIVE_HIGH>; }; wifi_pwrseq: wifi_pwrseq { compatible = "mmc-pwrseq-simple"; reset-gpios = <&r_pio 0 7 GPIO_ACTIVE_LOW>; post-power-on-delay-ms = <200>; }; }; &ehci0 { status = "okay"; }; &ehci1 { status = "okay"; }; &emac { pinctrl-names = "default"; phy-supply = <&reg_vcc3v3>; phy-handle = <&int_mii_phy>; phy-mode = "mii"; allwinner,leds-active-low; status = "okay"; }; &mmc0 { pinctrl-names = "default"; pinctrl-0 = <&mmc0_pins_a>; vmmc-supply = <&reg_vcc3v3>; bus-width = <4>; cd-gpios = <&pio 5 6 GPIO_ACTIVE_HIGH>; /* PF6 */ cd-inverted; status = "okay"; }; &mmc1 { pinctrl-names = "default"; pinctrl-0 = <&mmc1_pins_a>; vmmc-supply = <&reg_vcc_wifi>; mmc-pwrseq = <&wifi_pwrseq>; bus-width = <4>; non-removable; status = "okay"; xr819: sdio_wifi@1 { reg = <1>; compatible = "xradio,xr819"; interrupt-parent = <&pio>; interrupts = <6 10 IRQ_TYPE_EDGE_RISING>; interrupt-names = "host-wake"; local-mac-address = [dc 44 6d c0 ff ee]; }; }; ...

 

wlan0 is there - "iwlist wlan0 scan" shows available networks, but connecting causes a hanging system ...

 

Edited by zador.blood.stained
Adding spoiler tags for code blocks messes up the formatting. Sorry.

Share this post


Link to post
Share on other sites
Guest
This topic is now closed to further replies.
8 8