openwrt/target/linux
Aleksander Jan Bajkowski fbd33d6164 lantiq: enable interrupts on second VPEs
This patch is needed to handle interrupts by the second VPE on the Lantiq
ARX100, xRX200, xRX300 and xRX330 SoCs. Switching some ICU interrupts to
the second VPE results in a hang. Currently, the vsmp_init_secondary()
function is responsible for enabling these interrupts. It only enables
Malta-specific interrupts (SW0, SW1, HW4 and HW5).

The MIPS core has 8 interrupts defined. On Lantiq SoCs, hardware
interrupts are wired to an ICU instance. Each VPE has an independent
instance of the ICU. The mapping of the ICU interrupts is shown below:
SW0(IP0) - IPI call,
SW1(IP1) - IPI resched,
HW0(IP2) - ICU 0-31,
HW1(IP3) - ICU 32-63,
HW2(IP4) - ICU 64-95,
HW3(IP5) - ICU 96-127,
HW4(IP6) - ICU 128-159,
HW5(IP7) - timer.

This patch enables all interrupt lines on the second VPE.

This problem affects multithreaded SoCs with a custom interrupt controller.
SOCs with 1004Kc core and newer use the MIPS GIC. At this point, I am aware
that the Realtek RTL839x and RTL930x SoCs may need a similar fix. In the
future, this may be replaced with some generic solution.

Tested on Lantiq xRX200.

Signed-off-by: Aleksander Jan Bajkowski <olek2@wp.pl>
2022-10-02 20:22:54 +02:00
..
airoha kernel: bump 5.15 to 5.15.68 2022-09-17 14:16:37 +02:00
apm821xx apm821xx: make 5.15 kernel default 2022-09-24 23:53:53 +02:00
archs38
armvirt armvirt: make 5.15 kernel default 2022-09-14 16:45:06 +02:00
at91 kernel: bump 5.10 to 5.10.143 2022-09-17 14:16:37 +02:00
ath25
ath79 ath79: fix LibreRouter-v1 watchdog and poe_pass 2022-10-02 11:39:13 +02:00
bcm27xx kernel: bump 5.15 to 5.15.68 2022-09-17 14:16:37 +02:00
bcm47xx
bcm53xx bcm53xx: backport clk driver fix for DT nodes names 2022-09-29 05:51:25 +02:00
bcm63xx
bcm4908 bcm4908: fix -EPROBE_DEFER support in bcm4908_enet 2022-09-21 07:54:21 +02:00
bmips
gemini
generic kernel: bump 5.10 to 5.10.146 2022-10-02 20:21:55 +02:00
imx
ipq40xx ipq40xx: Add ZTE MF289F 2022-09-24 23:53:53 +02:00
ipq806x
kirkwood kernel: remove hack patch, move kirkwood specific kmods to target modules.mk 2022-09-30 12:59:19 +02:00
lantiq lantiq: enable interrupts on second VPEs 2022-10-02 20:22:54 +02:00
layerscape kernel: Move some IOMMU options to generic 2022-09-24 13:49:47 +02:00
malta malta: make 5.15 kernel default 2022-09-14 16:45:06 +02:00
mediatek mediatek: add support t-phy settings from efuse on MT7986 2022-09-30 13:29:58 +01:00
mpc85xx kernel: bump 5.10 to 5.10.145 2022-10-02 20:21:55 +02:00
mvebu
mxs
octeon kernel: move kernel image cmdline hack to the octeon target 2022-09-30 13:13:51 +02:00
octeontx
omap
oxnas
pistachio
qoriq kernel: Move some IOMMU options to generic 2022-09-24 13:49:47 +02:00
ramips ramips: add support for SNR SNR-CPE-ME2-Lite 2022-10-02 20:21:55 +02:00
realtek kernel: bump 5.10 to 5.10.146 2022-10-02 20:21:55 +02:00
rockchip kernel: Move some IOMMU options to generic 2022-09-24 13:49:47 +02:00
sunxi
tegra kernel: Move some IOMMU options to generic 2022-09-24 13:49:47 +02:00
uml kernel: bump 5.10 to 5.10.146 2022-10-02 20:21:55 +02:00
x86 x86/config-5.10: geode: add missing CONFIG_WATCHDOG_CORE option 2022-09-24 23:53:53 +02:00
zynq
Makefile build: fix issues with targets installed via feeds 2022-09-27 13:41:12 +02:00