openwrt/target/linux
Dmitry Tunin 8132e06247 ath79: fix ar7100 PCI IRQ handling
Currently all PCI devices get the same IRQ that affects performance badly.

This commit adresses this problem and cleans the code.

ar7100 has a special PCI interrupt controller@18060018 that works exactly
the same way as misc interrupt controller.

This patch does the following:

1. Defines pci-intc interrupt controller@18060018 in dtsi.
2. Removes interrupt-controller property from PCI node.
3. Sets a correct interrupt mask for PCI devices.
4. Removes all IRQ handling code from the PCI driver.

"qca,ar7100-misc-intc" should be used as the compatible property, becuase on ar7100
the controlled status register is read-only and the ack method used in
"qca,ar7240-misc-intc" won't work properly.

There are two very minor downsides of this patch that don't affect perormance:

1. We allocate an IRQ domain of 32 IRQ, whan we need only 5. But ar7100 aren't tiny un terms of RAM
and that is not very important and can be tuned if we implement "nr-interrupts" property".

2. It reuses the same irg chip name "MISC" for both controllers.

Run tested on DIR-825 B1.

Signed-off-by: Dmitry Tunin <hanipouspilot@gmail.com>
2018-08-28 11:26:53 +02:00
..
adm5120 kernel: bump 3.18 to 3.18.119 2018-08-20 13:03:23 +02:00
adm8668 kernel: bump 3.18 to 3.18.119 2018-08-20 13:03:23 +02:00
apm821xx treewide: fix some cosmetic glitches in dts files 2018-08-27 19:31:17 +02:00
ar7 ar7: remove linux 3.18 support 2018-08-13 17:10:39 +02:00
ar71xx ar71xx: WNR612v2: fix kernel panic due to wrong Wifi LED init 2018-08-28 07:21:01 +02:00
arc770 arc: Update variables substitutions in u-boot env files 2018-07-12 10:24:31 +02:00
archs38 arc: Update variables substitutions in u-boot env files 2018-07-12 10:24:31 +02:00
armvirt kernel: add missing ARM64_SSBD symbol 2018-07-31 12:22:11 +03:00
at91 treewide: fix some cosmetic glitches in dts files 2018-08-27 19:31:17 +02:00
ath25
ath79 ath79: fix ar7100 PCI IRQ handling 2018-08-28 11:26:53 +02:00
au1000 kernel: only optimized for size if small_flash 2018-07-12 18:15:32 +02:00
bcm53xx kernel: bump 4.14 to 4.14.59 2018-07-31 05:11:07 +03:00
brcm47xx brcm47xx: Enable USB power on WNDR3400v3 2018-08-25 16:27:17 +02:00
brcm63xx treewide: fix some cosmetic glitches in dts files 2018-08-27 19:31:17 +02:00
brcm2708 kernel: bump 4.9 to 4.9.117 2018-08-03 16:10:38 +02:00
cns3xxx cns3xxx: fix mtu setting with kernel 4.14 2018-08-16 21:20:57 +02:00
gemini kernel: remove DEVMEM and DEVKMEM from target's config 2018-07-07 18:19:39 +02:00
generic kernel: make mtd mac address increment more flexible 2018-08-25 19:18:08 +02:00
imx6 imx6: Initial support for SolidRun CuBox-i devices based on i.MX6 processors (i1, i2, i2eX, and i4Pro). 2018-08-25 15:40:23 +02:00
ipq40xx treewide: fix some cosmetic glitches in dts files 2018-08-27 19:31:17 +02:00
ipq806x treewide: fix some cosmetic glitches in dts files 2018-08-27 19:31:17 +02:00
ixp4xx kernel: bump 4.9 to 4.9.123 2018-08-22 13:47:13 +02:00
kirkwood kernel: bump 4.9 to 4.9.116 2018-08-01 09:46:59 +02:00
lantiq treewide: fix some cosmetic glitches in dts files 2018-08-27 19:31:17 +02:00
layerscape treewide: fix some cosmetic glitches in dts files 2018-08-27 19:31:17 +02:00
malta
mcs814x kernel: bump 3.18 to 3.18.119 2018-08-20 13:03:23 +02:00
mediatek kernel: bump kernel 4.14 to version 4.14.63 2018-08-15 22:31:56 +02:00
mpc85xx WDR4900v1 remove dt node for absent hw crypto. 2018-07-07 18:19:39 +02:00
mvebu treewide: fix some cosmetic glitches in dts files 2018-08-27 19:31:17 +02:00
mxs
octeon octeon: Add and set CPU type Octeon+ as default 2018-06-20 15:36:02 +02:00
octeontx kernel: add missing ARM64_SSBD symbol 2018-07-31 12:22:11 +03:00
omap omap: disable ubifs 2018-07-30 11:03:02 +02:00
omap24xx
orion
oxnas treewide: fix some cosmetic glitches in dts files 2018-08-27 19:31:17 +02:00
pistachio treewide: consolidate upgrade state set 2018-08-16 21:20:57 +02:00
ppc40x kernel: only optimized for size if small_flash 2018-07-12 18:15:32 +02:00
ppc44x kernel: only optimized for size if small_flash 2018-07-12 18:15:32 +02:00
ramips treewide: fix some cosmetic glitches in dts files 2018-08-27 19:31:17 +02:00
rb532 kernel: only optimized for size if small_flash 2018-07-12 18:15:32 +02:00
samsung treewide: fix some cosmetic glitches in dts files 2018-08-27 19:31:17 +02:00
sunxi kernel: bump 4.14 to 4.14.62 2018-08-10 18:43:23 +02:00
uml
x86 x86: geode: Add missing config options 2018-08-26 12:32:26 +02:00
xburst kernel: bump 3.18 to 3.18.119 2018-08-20 13:03:23 +02:00
zynq zynq: add support for the Zybo Z7 board 2018-08-25 15:33:51 +02:00
Makefile