ipq40xx: add PCIe magic hack to improve VRX518 compatibility
authorJan Hoffmann <jan@3e8.eu>
Mon, 30 Jan 2023 22:40:20 +0000 (23:40 +0100)
committerJo-Philipp Wich <jo@mein.io>
Wed, 21 Feb 2024 21:31:36 +0000 (22:31 +0100)
commitc1342f2c521415f41aa343b383b2bea1dffe9a7d
tree30cd2e0cd6dcf0ccec332187537ad90ec918198e
parentd6ad46ce0a21e099c8515377917496b52e5ded3f
ipq40xx: add PCIe magic hack to improve VRX518 compatibility

Some VRX518 modems fail to initialize properly with the error message
"dc_ep_clk_on failed". As a result, the DSL data path doesn't work.

This hack, which is based on code from the FRITZ!Box 7530 GPL archive,
fixes the issue. It changes the PCIe vendor/device ID to values matching
a Lantiq SoC. It also appears to emulate a Lantiq CPU ID register for
connected PCIe devices, by remapping the matching address area to a
specially crafted buffer using the address translation unit.

The hack is only active if the "avm,host_magic" property is specified in
the device tree, so this shouldn't affect any devices other than
FRITZ!Box 7530/7520.

Signed-off-by: Jan Hoffmann <jan@3e8.eu>
target/linux/ipq40xx/files/arch/arm/boot/dts/qcom-ipq4019-fritzbox-7530.dts
target/linux/ipq40xx/patches-5.15/997-pcie-qcom-host-magic.patch [new file with mode: 0644]