2
0
mirror of https://github.com/edk2-porting/linux-next.git synced 2024-12-23 04:34:11 +08:00
linux-next/drivers/irqchip
Matt Redfearn 666740fde4 irqchip: mips-gic: Print warning if inherited GIC base is used
If the physical address of the GIC resource cannot be read from device
tree, then the code falls back to reading it from the gcr_gic_base
register. Hopefully this has been set to a sane value by the bootloader
or some platform code, but is defined by the hardware manual to have
"undefined" reset state. Using it as the address at which the GIC will
be mapped into physical memory space can therefore be risky if it has
not been initialised, since it may result in the GIC being mapped to an
effectively random address anywhere in physical memory, where it might
conflict with peripherals or RAM and lead to weird crashes.

Since a "sane value" is very platform specific because it is particular
to the platform's memory map, it is difficult to test for. At the very
least, a warning message should be printed in the case that we trust the
inherited value.

Reported-by: Amit Kama <amit.kama@satixfy.com>
Signed-off-by: Matt Redfearn <matt.redfearn@mips.com>
Reviewed-by: Paul Burton <paul.burton@mips.com>
Signed-off-by: Marc Zyngier <marc.zyngier@arm.com>
2017-11-09 11:35:28 +00:00
..
alphascale_asm9260-icoll.h irqchip/mxs: Add Alphascale ASM9260 support 2015-10-14 09:37:47 +02:00
exynos-combiner.c irqchip/exynos-combiner: Fix usage of __raw IO 2016-06-23 18:26:42 +00:00
irq-alpine-msi.c irqchip/irq-alpine-msi: Don't use <asm-generic/msi.h> 2016-05-11 10:12:25 +01:00
irq-armada-370-xp.c irqchip updates for 4.14 2017-08-31 20:12:51 +02:00
irq-aspeed-i2c-ic.c irqchip/aspeed-i2c-ic: Fix return value check in aspeed_i2c_ic_of_init() 2017-10-19 11:22:43 +01:00
irq-aspeed-vic.c irqchip/aspeed-vic: Add AST2500 compatible string 2017-06-22 14:13:39 +01:00
irq-ath79-cpu.c irqchip/ath79-cpu: Move the CPU IRQ driver from arch/mips/ath79/ 2016-02-17 13:47:19 +00:00
irq-ath79-misc.c irqchip/ath79-misc: Move the MISC driver from arch/mips/ath79/ 2016-02-17 13:44:31 +00:00
irq-atmel-aic5.c irqchip/atmel-aic: Remove root argument from ->fixup() prototype 2017-07-04 11:10:37 +01:00
irq-atmel-aic-common.c irqchip/atmel-aic: Remove root argument from ->fixup() prototype 2017-07-04 11:10:37 +01:00
irq-atmel-aic-common.h irqchip/atmel-aic: Remove root argument from ->fixup() prototype 2017-07-04 11:10:37 +01:00
irq-atmel-aic.c irqchip/atmel-aic: Remove root argument from ->fixup() prototype 2017-07-04 11:10:37 +01:00
irq-bcm2835.c irqchip: Convert to using %pOF instead of full_name 2017-08-23 10:09:28 +01:00
irq-bcm2836.c irqchip: Convert to using %pOF instead of full_name 2017-08-23 10:09:28 +01:00
irq-bcm6345-l1.c irqchip/bcm-6345-l1: Report that effective affinity is a single target 2017-08-18 10:54:41 +02:00
irq-bcm7038-l1.c irqchip/bcm-7038-l1: Report that effective affinity is a single target 2017-08-18 10:54:42 +02:00
irq-bcm7120-l2.c irqchip/irq-bcm7120-l2: Use correct I/O accessors for irq_fwd_mask 2017-08-31 15:32:18 +01:00
irq-brcmstb-l2.c irqchip/brcmstb-l2: Add support for the BCM7271 L2 controller 2017-10-19 10:56:36 +01:00
irq-clps711x.c irqchip: clps711x: Changing the compatibility string to match with the smallest supported chip 2016-07-06 17:38:15 +02:00
irq-crossbar.c irqchip: Convert to using %pOF instead of full_name 2017-08-23 10:09:28 +01:00
irq-digicolor.c irqchip: Convert to using %pOF instead of full_name 2017-08-23 10:09:28 +01:00
irq-dw-apb-ictl.c irqchip: Convert to using %pOF instead of full_name 2017-08-23 10:09:28 +01:00
irq-eznps.c irqchip/eznps: Drop pointless static qualifier in nps400_of_init() 2016-10-19 14:24:36 +02:00
irq-ftintc010.c irqchip/faraday: Replace moxa with ftintc010 2017-04-07 10:36:30 +01:00
irq-gic-common.c irqchip/gic: Make quirks matching conditional on init return value 2017-10-19 11:22:38 +01:00
irq-gic-common.h irqchip/gic: Make quirks matching conditional on init return value 2017-10-19 11:22:38 +01:00
irq-gic-pm.c irqchip/gic-pm: Update driver to use of_pm_clk_add_clk 2016-09-12 19:46:28 +01:00
irq-gic-realview.c irqchip/gic/realview: Drop unnecessary static 2017-07-18 21:59:22 +02:00
irq-gic-v2m.c irqchip/MSI: Use irq_domain_update_bus_token instead of an open coded access 2017-06-22 18:29:17 +02:00
irq-gic-v3-its-pci-msi.c irqchip: Convert to using %pOF instead of full_name 2017-08-23 10:09:28 +01:00
irq-gic-v3-its-platform-msi.c irqchip/gic-v3-its-platform-msi: Fix msi-parent parsing loop 2017-08-10 16:26:54 +01:00
irq-gic-v3-its.c irqchip/gic-v3-its: Fix VPE activate callback return value 2017-11-07 11:09:51 +00:00
irq-gic-v3.c irqchip/gic-v3: Add support for Range Selector (RS) feature 2017-10-19 11:22:34 +01:00
irq-gic-v4.c irqchip/gic-v4: Fix building with ancient gcc 2017-09-19 19:43:45 +01:00
irq-gic.c irqchip/gic: Deal with broken firmware exposing only 4kB of GICv2 CPU interface 2017-11-02 15:55:44 +00:00
irq-hip04.c irqchip/hip04: Report that effective affinity is a single target 2017-08-18 10:54:42 +02:00
irq-i8259.c irqchip/i8259: Constify irq_domain_ops 2017-06-22 14:12:49 +01:00
irq-imgpdc.c genirq: Remove irq argument from irq flow handlers 2015-09-16 15:47:51 +02:00
irq-imx-gpcv2.c irqchip: Convert to using %pOF instead of full_name 2017-08-23 10:09:28 +01:00
irq-ingenic.c irqchip: Prepare for local stub header removal 2015-07-11 23:14:23 +02:00
irq-jcore-aic.c irqchip/jcore: Fix lost per-cpu interrupts 2016-10-14 14:26:55 +02:00
irq-keystone.c irqchip/keystone: Fix "scheduling while atomic" on rt 2016-12-31 18:41:45 +00:00
irq-lpc32xx.c irqchip: Convert to using %pOF instead of full_name 2017-08-23 10:09:28 +01:00
irq-ls-scfg-msi.c irqchip/ls-scfg-msi: Add MSI affinity support 2017-08-31 16:19:48 +01:00
irq-mbigen.c irqchip/irq-mbigen: Constify irq_domain_ops 2017-06-22 14:13:00 +01:00
irq-meson-gpio.c irqchip/meson-gpio: add support for Meson8 SoCs 2017-11-02 15:55:45 +00:00
irq-metag-ext.c irqchip/metag-ext: Report that effective affinity is a single target 2017-08-18 10:54:42 +02:00
irq-metag.c genirq: Remove irq argument from irq flow handlers 2015-09-16 15:47:51 +02:00
irq-mips-cpu.c MIPS: Unify checks for sibling CPUs 2017-08-30 00:57:27 +02:00
irq-mips-gic.c irqchip: mips-gic: Print warning if inherited GIC base is used 2017-11-09 11:35:28 +00:00
irq-mmp.c irqchip/mmp: Make mmp_intc_conf const 2017-08-31 15:31:43 +01:00
irq-mtk-cirq.c irqchip: Add Mediatek mtk-cirq driver 2017-04-07 10:52:22 +01:00
irq-mtk-sysirq.c irqchip: Convert to using %pOF instead of full_name 2017-08-23 10:09:28 +01:00
irq-mvebu-gicp.c irqchip/irq-mvebu-gicp: Allocate enough memory for spi_bitmap 2017-06-30 15:32:46 +01:00
irq-mvebu-gicp.h irqchip/irq-mvebu-gicp: Add new driver for Marvell GICP 2017-06-23 09:14:57 +01:00
irq-mvebu-icu.c irqchip/irq-mvebu-icu: Add new driver for Marvell ICU 2017-06-23 09:14:57 +01:00
irq-mvebu-odmi.c irqchip/gic: Return IRQ_SET_MASK_OK_DONE in the set_affinity method 2016-02-19 15:42:29 +00:00
irq-mvebu-pic.c irqchip/mvebu-pic: New driver for Marvell Armada 7K/8K PIC 2016-08-22 22:58:27 +00:00
irq-mxs.c irqchip: Convert to using %pOF instead of full_name 2017-08-23 10:09:28 +01:00
irq-nvic.c irqchip: Convert all alloc/xlate users from of_node to fwnode 2015-10-13 19:01:23 +02:00
irq-omap-intc.c irqchip/irq-omap-intc: Do not statically initialize variables 2017-10-16 21:05:14 +02:00
irq-or1k-pic.c irqchip/or1k-pic: Fix interrupt acknowledgement 2017-06-30 15:33:11 +01:00
irq-orion.c genirq: Remove irq argument from irq flow handlers 2015-09-16 15:47:51 +02:00
irq-partition-percpu.c irqchip: Add per-cpu interrupt partitioning library 2016-05-02 13:42:51 +02:00
irq-pic32-evic.c irqchip/irq-pic32-evic: Fix bug with external interrupts. 2016-06-02 18:03:50 +01:00
irq-renesas-h8s.c irqchip/irq-renesas-h8s: Constify irq_domain_ops 2017-06-22 14:13:20 +01:00
irq-renesas-h8300h.c irqchip/irq-renesas-h8300h: Constify irq_domain_ops 2017-06-22 14:13:14 +01:00
irq-renesas-intc-irqpin.c irqchip/renesas-intc-irqpin: Use of_device_get_match_data() helper 2017-10-19 10:55:16 +01:00
irq-renesas-irqc.c irqchip/renesas-irqc: Move over to nested generic chip 2015-09-29 20:41:00 +02:00
irq-s3c24xx.c irqchip/s3c24xx: Fixup IO accessors for big endian 2016-06-23 18:28:00 +00:00
irq-sa11x0.c ARM: kill off set_irq_flags usage 2015-07-28 13:58:13 +02:00
irq-sirfsoc.c irqchip/sirfsoc: Fix sparse warnings on __iomem 2016-06-13 00:48:31 +00:00
irq-sni-exiu.c irqchip/exiu: Add support for Socionext Synquacer EXIU controller 2017-11-07 11:17:42 +00:00
irq-st.c irqchip/st: Mark st_irq_syscfg_resume() __maybe_unused 2016-12-19 10:55:43 +01:00
irq-stm32-exti.c irqchip/stm32: Move the wakeup on interrupt mask 2017-11-07 11:44:43 +00:00
irq-sun4i.c irqchip: Convert to using %pOF instead of full_name 2017-08-23 10:09:28 +01:00
irq-sunxi-nmi.c irqchip/sunxi-nmi: Support sun6i-a31-r-intc compatible 2017-06-22 14:08:17 +01:00
irq-tango.c irqchip/tango: Add support for Sigma Designs SMP86xx/SMP87xx interrupt controller 2016-02-18 01:18:14 +00:00
irq-tb10x.c genirq: Remove irq argument from irq flow handlers 2015-09-16 15:47:51 +02:00
irq-tegra.c irqchip: Convert to using %pOF instead of full_name 2017-08-23 10:09:28 +01:00
irq-ts4800.c irqchip/ts4800: Make ts4800_ic_ops static const 2016-02-18 02:09:18 +00:00
irq-uniphier-aidet.c irqchip: Add UniPhier AIDET irqchip driver 2017-08-23 10:08:44 +01:00
irq-versatile-fpga.c irqchip: versatile-fpga: add new compatible for OX810SE SoC 2016-04-26 09:50:51 +02:00
irq-vf610-mscm-ir.c irqchip: Convert all alloc/xlate users from of_node to fwnode 2015-10-13 19:01:23 +02:00
irq-vic.c irqchip/vic: Improve function-level documentation 2016-10-05 11:53:35 +02:00
irq-vt8500.c irqchip: Kill off set_irq_flags usage 2015-09-16 16:53:38 +02:00
irq-xilinx-intc.c irqchip: Convert to using %pOF instead of full_name 2017-08-23 10:09:28 +01:00
irq-xtensa-mx.c irqchip/xtensa-mx: Report that effective affinity is a single target 2017-08-18 10:54:43 +02:00
irq-xtensa-pic.c xtensa: don't use linux IRQ #0 2017-06-05 16:53:10 -07:00
irq-zevio.c irqchip/zevio: Use irq_data_get_chip_type() helper 2015-12-30 18:29:02 +01:00
irqchip.c irqchip / GIC: Convert the GIC driver to ACPI probing 2015-10-01 02:18:38 +02:00
Kconfig irqchip/stm32: Select GENERIC_IRQ_CHIP 2017-11-07 11:43:58 +00:00
Makefile irqchip/exiu: Add support for Socionext Synquacer EXIU controller 2017-11-07 11:17:42 +00:00
qcom-irq-combiner.c irqchip/qcom: Use builtin_platform_driver to simplify the code 2017-06-22 14:15:00 +01:00
spear-shirq.c remove lots of IS_ERR_VALUE abuses 2016-05-27 15:26:11 -07:00