openwrt/target/linux
Aleksander Jan Bajkowski 5c85a3e607 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>
(cherry picked from commit fbd33d6164)
2022-11-27 14:03:08 +01:00
..
apm821xx kernel: bump 5.4 to 5.4.224 2022-11-13 01:06:12 +01:00
arc770 arc770: set device vendor and model variables 2021-05-26 23:36:40 +02:00
archs38 kernel: Add missing kernel config options 2021-09-13 18:49:15 +02:00
armvirt kernel: move some disabled symbols to generic 2021-04-11 16:54:22 +02:00
at91 treewide: make AddDepends/usb-serial selective 2021-06-08 22:50:32 +02:00
ath25 kernel: bump 5.4 to 5.4.211 2022-09-04 15:32:22 +02:00
ath79 kernel: bump 5.4 to 5.4.224 2022-11-13 01:06:12 +01:00
bcm27xx kernel: bump 5.4 to 5.4.224 2022-11-13 01:06:12 +01:00
bcm47xx bcm47xx: make WGT634U NVRAM patch apply again 2021-03-17 23:38:46 +01:00
bcm53xx kernel: mtd: backport SafeLoader parser 2022-11-02 08:31:52 +01:00
bcm63xx kernel: bump 5.4 to 5.4.211 2022-09-04 15:32:22 +02:00
bcm4908 bcm4908: backport upstream BQL support for bcm4908_enet 2022-11-03 09:40:06 +01:00
gemini kernel: bump 5.4 to 5.4.150 2021-10-02 16:05:34 +02:00
generic kernel: backport flow_dissect support for tag_brcm 2022-11-24 16:45:02 +01:00
imx6 kernel: move some disabled symbols to generic 2021-04-11 16:54:22 +02:00
ipq40xx kernel: bump 5.4 to 5.4.224 2022-11-13 01:06:12 +01:00
ipq806x kernel: mtd: backport SafeLoader parser 2022-11-02 08:31:52 +01:00
kirkwood kirkwood: increase kernel partition of Linksyses 2021-09-13 15:24:35 +02:00
lantiq lantiq: enable interrupts on second VPEs 2022-11-27 14:03:08 +01:00
layerscape kernel: bump 5.4 to 5.4.224 2022-11-13 01:06:12 +01:00
malta target: use SPDX license identifiers on Makefiles 2021-02-10 15:47:18 +01:00
mediatek kernel: bump 5.4 to 5.4.211 2022-09-04 15:32:22 +02:00
mpc85xx kernel: bump 5.4 to 5.4.224 2022-11-13 01:06:12 +01:00
mvebu kernel: bump 5.4 to 5.4.211 2022-09-04 15:32:22 +02:00
mxs target: use SPDX license identifiers on scripts 2021-02-10 15:47:23 +01:00
octeon kernel: bump 5.4 to 5.4.211 2022-09-04 15:32:22 +02:00
octeontx kernel: bump 5.4 to 5.4.211 2022-09-04 15:32:22 +02:00
omap kernel: move some disabled symbols to generic 2021-04-11 16:54:22 +02:00
oxnas kernel: bump 5.4 to 5.4.224 2022-11-13 01:06:12 +01:00
pistachio kernel: mtd: backport extended dynamic partitions support 2022-10-27 09:22:03 +02:00
ramips kernel: mtd: backport SafeLoader parser 2022-11-02 08:31:52 +01:00
realtek kernel: bump 5.4 to 5.4.163 2021-12-12 20:08:17 +01:00
rockchip kernel: bump 5.4 to 5.4.224 2022-11-13 01:06:12 +01:00
sunxi sunxi: add support for Banana Pi M2 Berry 2022-08-28 08:12:39 +02:00
tegra kernel: move some disabled symbols to generic 2021-04-11 16:54:22 +02:00
uml target: use SPDX license identifiers on Makefiles 2021-02-10 15:47:18 +01:00
x86 kernel: Remove kmod-crypto-lib-blake2s 2022-07-04 01:35:37 +02:00
zynq kernel: move some disabled symbols to generic 2021-04-11 16:54:22 +02:00
Makefile target: use SPDX license identifiers on Makefiles 2021-02-10 15:47:18 +01:00