IPQ807x SoC Investigation / Status [WIP]

how can you say it's a V1 if the number you reported is IPQ8074_002?
it would be nice to know if new RAX120 are still V1 or V2!

@mgiganto: to make sure, look in the kernel messages for " ```
Skip QCA8074V2 in V1 platform

The V2 SOC's have the A suffix so IPQ8071A / IPQ8074A

IPQ8074 runs at 2Ghz, I read somewhere that IPQ8074_002 may be IPQ8074 V1 but running at 2.2Ghz.
Would it be a way to tell if it is V1 or V2 from oem firmware?
There must be an attribute that we could query from the telnet running on oem firmware that we just don´t know...

QCA kernel logs will tell you like @kirdes said you will see :

Skip QCA8074V2 in V1 platform on V1
Skip QCA8074V1 in V2 platform on V2

But really the FCC pictures / other device SoC pictures should be enough IPQ807-A_--- pattern will be a V2 and IPQ807-_--- would be V1

Also the ASUS RT-AX89X seems to be a V1 looking at the FCC photos (IPQ8074_002), also seems the kernel logs on that device states CPU: IPQ8074, SoC Version: 1.2

IMHO it's too early to say that it will never be supported.

There is a new revision of the RAX120 with the IPQ8074A ie Hawkeye 2.0 (v2) vs 1.2 (v1) in the original. Not sure it’s in the wild yet.

FCC Link:

Look at the Permissive Change request letter.


Nice find!
According to the DFS test report the also changed model, product name and firmware version ( V2.0.0.6-FW2-156-b210)
But i didn't find the new model nor product name.

I think that they will market the new version as RAX120, just like the earlier revision. They have done with so many devices during the years.

I bought the existing old RAX120 two months ago, but haven't yet done much anything with it. Today I compared the bottom label in that one to the new one in the FCC application, and the right side of the label has changed. The new one has "FCC ID" and a complicance statement. My unit does not have that. Also the number series in the bottom right corner is different. I marked the new stuff with yellow (taken from the FCC application photos)

Possibly I have bought a lame duck :frowning:

Does anybody know a way to identify the IPQ8074 v2 from serial console?

I'll be watching for a V2 to show up in stores. It will become a crapshoot trying to get the right version from retailers.

Will be interesting to see if Netgear advertise it or just sneak it into the market.

Hi, is there a way to make RAX120 filesystem changes persistent?
(stock firmware Chaos Calmer, RAX120-V1.0.1.136+r49254)

I'm not experienced with openwrt development, (maybe I'm asking in the wrong place) but I found here that:

If there is no mtd device with label rootfs_data , then mounts /dev/root (e.g. squashfs or all_jffs2 with no squashfs) as root filesystem, and indicates that further steps should be skipped

And Indeed there is no rootfs_data labeled partition to be found on the router. I understand that's why the file system changes are lost after reboot.

Is it possible to format/use some partition or a custom firmware would be needed ?


There’s a reference to the RAX120v2 in an article on NETGEAR’s site. In the “Applies to” section it’s one of the listed routers. So I suppose the box will say v2 on it, but clicking on the model name leads to an empty page so probably not yet released.


At the bottom in the “Applies to:” section it is listed under “AX Router Nighthawk (WiFi 6)”

RAX120v2 landing page:


It works today. Is it the Firmware Version you are after?

Now, the RAX120v2 is visible at their site, and there is also a data sheet for it.

The firmware RAX120 Firmware Version seems to be available for both of them...

Strangely enough they have dropped some features from v2 data sheet: WPA3, OFDMA. No idea, why.

Seems strange, but maybe it isn't listed anymore because it is supported in both directions now?

It had a footnote previously to say it only worked in downlink.

Doesn't make much marketing sense though.

120 vs 120v2:

1.Main CPU from IQP8074 (Hawkeye v1.2) to IPQ8074A (Hawkeye 2.0)
2.Modelname and product name
3.FW version

ref: https://apps.fcc.gov/eas/GetApplicationAttachment.html?id=4963379

what changed physically in IQP8074A vs the original?

A probably just means V2

I tried to compile kidres' changes for RAX120v1 (https://github.com/kirdesde/openwrt.git) with recent robimarko's work (also with kernel bumped to 5.10.4), with the view that I might give it another try with newer WLAN firmware (extracted from Netgear's binary image WLAN.HK.2.0-01792-QCAHKSWPL_SILICONZ-1.331957.1.340117.1 v1 for HK 1.2)

However I'm getting an error:

  gcc -E -Wp,-MMD,arch/arm64/boot/dts/qcom/.ipq8074-rax120v1.dtb.d.pre.tmp -nostdinc -I./scripts/dtc/include-prefixes -undef -D__DTS__ -x assembler-with-cpp -o arch/arm64/boot/dts/qcom/.ipq8074-rax120v1.dtb.dts.tmp arch/arm64/boot/dts/qcom/ipq8074-rax120v1.dts ; ./scripts/dtc/dtc -O dtb -o arch/arm64/boot/dts/qcom/ipq8074-rax120v1.dtb -b 0 -iarch/arm64/boot/dts/qcom/ -i./scripts/dtc/include-prefixes -Wno-interrupt_provider -Wno-unit_address_vs_reg -Wno-unit_address_format -Wno-avoid_unnecessary_addr_size -Wno-alias_paths -Wno-graph_child_address -Wno-simple_bus_reg -Wno-unique_unit_address -Wno-pci_device_reg  -d arch/arm64/boot/dts/qcom/.ipq8074-rax120v1.dtb.d.dtc.tmp arch/arm64/boot/dts/qcom/.ipq8074-rax120v1.dtb.dts.tmp ; cat arch/arm64/boot/dts/qcom/.ipq8074-rax120v1.dtb.d.pre.tmp arch/arm64/boot/dts/qcom/.ipq8074-rax120v1.dtb.d.dtc.tmp > arch/arm64/boot/dts/qcom/.ipq8074-rax120v1.dtb.d
arch/arm64/boot/dts/qcom/ipq8074.dtsi:651.20-701.5: ERROR (phandle_references): /soc/mdio@90000: Reference to non-existent node or label "mdio_pins"

  also defined at arch/arm64/boot/dts/qcom/ipq8074-rax120v1.dts:348.7-353.3
ERROR: Input tree has errors, aborting (use -f to force output)
scripts/Makefile.lib:326: recipe for target 'arch/arm64/boot/dts/qcom/ipq8074-rax120v1.dtb' failed
make[7]: *** [arch/arm64/boot/dts/qcom/ipq8074-rax120v1.dtb] Error 2
scripts/Makefile.build:496: recipe for target 'arch/arm64/boot/dts/qcom' failed

Could someone more experienced with the Device Tree advise me what needs to be changed to fix it?

Hi RobertP,

the mdio node is not there (anymore) in the ipq8074.dtsi.

You need to add the entire node either manually in the rax120v1.dts or by patch ( 127-arm64-dts-ipq8074-add-MDIO-support.patch) in the dtsi like robimarko did:

How did you merged my old repo with the more recent code from robi?

BTW: I'm afraid this firmware (WLAN.HK.2.0-01792-QCAHKSWPL_SILICONZ-1.331957.1.340117.1 v1 for HK 1.2) is for IPQ8074V2 (WLAN.HK.2.0 is for Hawkeye V2 i believe) and the remoteproc will just crash......