I bought for a very good price an Asus RT-AC52U B1.
This piece of hardware is practically identical to RT-AC51U described here, but it has an rtl8367rb gigabit switch (on MII bus(?)). Here is the boot log of the original firmware.
I tried to install the OpenWrt build for RT-AC51U and it boots (seen from serial console) but (obviously) the ethernet ports don't work. Sadly my serial adapter was RX only so I couldn't send commands, will replace it soon.
As the hardware is already supported I thought of using the Image Builder to build a custom image for this device without rebuilding everything from the source. Then I noticed in other routers having the rtl8367rb that they always have a specification in the DTS file.
Here some questions came up:
Is the DTS lines mandatory to get the rtl8367rb to work? Or loading the module will suffice?
If I edit the DTS, it's enough to build the image with the Image Builder, or should it be somehow compiled into the kernel?
Copying the DTS part from other routers will work (it seems always the same)? Or can I somehow extract it from the stock firmware?
Can I create a new device "profile"(?) for this device within the image builder, copying the RT-AC51U and adding the rtl8367rb module and editing the DTS?
Unrelated question: I'm trying to flash OpenWrt on this router because I have a gigabit connection, but the current firmware I just get somewhere near 300Mbps. Is it possible that a newer kernel and better software will improve it or is it a hardware limit (CPU or MII bus of the gigabit switch)?
BTW, can I create a dedicated hardware page for this router with the information I have?
The DTS (the D stands for 'device') describes what hardware the kernel should expect. So yes, it needs to be correct. Grep other DTSes for the Realtek switch to find out how to add it into your DTS, yours won't be the only one.
You need to compile it, the Image Builder won't do.
It will only work to the point that your hardware is similar. Even if yours is a clone, you'll still need to add the device compatible name (at the top) for it to work. In general, you cannot extract it from the stock firmware because 1) they might not be based on OpenWrt, 2) if they are, it's often based on older OpenWrt releases that didn't rely on DTS yet.
I made some tries but I couldn't manage to make the switch work or correctly talk with the CPU.
I probably need someone expert on the architecture or this kind of switch.
Basically, I tried various guesses on the configuration but none of them worked, so I stopped trying. I also tried to deduce the configuration from ASUS sources without any success.
I might try again with OpenWRT 21.02 but I don't know how soon.