Adding OpenWrt support for Xiaomi AX3600 (Part 1)

That fixes only booting 2.7 FW on QCN9074

Yup according to this patch author and only on x86.
My question is shall we give it a try on arm and for SOC Wifi?

Author only tested it on x86, QCN9074 is broken on any platform that has dynamic allocation so ARM as well, and it fixes loading the 2.7 FW for it.
Tested on AX9000 already, but useless until 2.7 works fine

It does nothing else than fix memory allocation for QCN9074 and 2.7 FW, that's it.

would you know if the regdb is encoded in the board2.bin ? just came across this patch

It isnt, its been possible to add it there for a while but there arent any with it

1 Like

It would be to easy to just let us load any regdb file like for any linux. :frowning:
I mean for the client end-devices they give a f***. There I can adjust any regdom (if I want) even for Brazil if I want pain. And on top of that I'm able to adjust my region on any stock-fw based router device anyway. Does not make any sense at all.

Look at it from their corporate perspective, does OSS community make them money?

Well, not really, its way more important to keep the ODM-s that are shipping millions of devices happy

Well I understand this. But they are using the OSS communities' products to make money also. This has not to be a one way. They could at least do some minimal stuff like creating some reasonable interfaces and document the most important things. They don't need to drop blobs (because it's their secret). This is work which would benefit themself also (esp. in long term and in term of money). LTS was a tremendous success for Linux and companies business (not dependent from MS anymore and no payments anymore) and they are literally exploiting this concept by creating devices bundled with insecure firmware by design.

I understand that you cannot just "cat" a regdb file to a firmware file with a simple pointer for security reason nowdays. :smiley:
But there was never a need to integrate their version of regdb into the firmware. I don't know what they are smoking. But they could have choosen for their own platforms to load their own signed regdb file in first place only to get their chain of trust working and for the community they could have dropped this check or integrate the the pubkey from the regulatory.db to have some security. How much would have cost them this?

The issue is manpower and time which equals money, and they are never gonna prioritize OSS compared to their SDK.

So, what we are left is pretty much the minimal time spent on mainline kernel, however, they are at least upstreaming stuff that is just too hard to maintain out of tree-like wireless drivers, but they could do so much more.

Just having an program that provides devs with documentation would see a huge increase in mainline support quality without them actually spending a dime, but good luck convincing the corporate to allow access to these "secrets", FFS there isn't anything secret or special in a basic ethernet controller or switch.

I couldn't agree more. It's just so sad ... I'm curious what they will do when they hit the physical wall and need more code optimization to gain any speed. Propably they will just require another band and/or we will have enduser-devices using two or three bands at the same time. :smiley:

Okay, but the binary blob is still a giant "black hole" in driver functionality and we will likely get no answers from Qualcomm. The open source piece is really nothing more than a wrapper around the binary blob much like the old school original wifi drivers were for Linux. There is only so much one can do with this. You can argue "well, it works on Windows" but Windows devs have visibility into the binary functions we do not have.

FWIW, I decided I might take my mouth to the bank so I actually found a Chinese vendor who sells a board that is, for all intents and purposes, the same as the AX3600 and will probably work with the same software. Now, their minimum order is 1000 pieces. So, what do I do? Should I make a gofundme to secure 1000 pc order (keep in mind, we will still need to develop an enclosure, antennas, get its tested by FCC, etc for licensing before sale).... is there a following here deep enough to fund it?

You see the problem? I'm willing to go the distance on something like this but in reality, we need more people than me and we're going to need a couple mil USD at least to get taken seriously by QCA.

This is why I'm saying... future tense, maybe OpenWRT project needs to shop a major vendor who will use the software on a commercial product. I'm not saying I'm that guy (i'm probably not) although I could probably help more on the dev/support side. I wouldn't write QCA out of the equation(in fact, I think MTK makes crappy chipsets, but maybe that's just me) but the right combination of elements is necessary here.

I think the current devs have done an AMAZING job. These guys deserve our appreciation for their work.

I'm not trying to argue... but what is their incentive to do so. They've already done what they needed to get official certification. From a corporate perspective... why spend time on us?

It may be easy and cheap to do what you're saying but these corps are only concerned with the bottom line.

This is nothing new. What honestly is getting annoying is these long rants about QCA from some people who are not really committing anything to Openwrt, and all this in a dev topic. Fix what you can fix (I can assure you there are plenty of bugs left in ath11k which can be fixed), and stop whining about something you can't fix. That is pretty much what Robi and Ansuel and some other devs try to do. What they expect here is valuable feedback, and not rants about nonsense ideas or how crappy QCA's attitude is.

5 Likes

Sysupgrade on AX3600 hasn't worked for me since the last two robimarko's builds. What could I do? I've tried a dozen times. Thank you for help.

I upload following script to /tmp folder and execute it. So far it has worked for me every single time:

#scp fw to /tmp
read -t 10 -n 1 -s -r -p "Press any key to continue"
echo ""
echo "stopping wpad"
/etc/init.d/wpad stop
echo "waiting for wpad to stop"
sleep 30
echo "performing sysupgrade"
wifi down
sysupgrade "/tmp/<name of fw>"
1 Like

Still the same. OpenWrt SNAPSHOT r0-49ccb29 . Everything was going fine until this build

What is the problem with people giving their own opinions? even if uninformed ... after all are users (including devs) that make this community unless of course you are one of those that are sucking to it like QCA & others... maybe you should try to commit something so you can rant ... we are all learning!

I already did, where is yours?

Quick question to anyone using AX3600. Does VLAN work? I've been trying to get it to work for a while.
I've used them before but with the old configuration format. However, I've tried any combination that makes sense to create what I want. All the time the interfaces show 0 pkts on RX neither get IP from DHCP

Stop WPAD before you sysupgrade.
For example:
LUCI->System->Startup->WPAD [STOP]
Then flash image from luci.