linux/Documentation
Marc Zyngier db0d4db22a ARM: gic: allow GIC to support non-banked setups
The GIC support code is heavily using the fact that hardware
implementations are exposing banked registers. Unfortunately, it
looks like at least one GIC implementation (EXYNOS) offers both
the distributor and the CPU interfaces at different addresses,
depending on the CPU.

This problem is solved by allowing the distributor and CPU interface
addresses to be per-cpu variables for the platforms that require it.
The EXYNOS code is updated not to mess with the GIC internals while
handling interrupts, and struct gic_chip_data is back to being private.
The DT binding for the gic is updated to allow an optional "cpu-offset"
value, which is used to compute the various base addresses.

Finally, a new config option (GIC_NON_BANKED) is used to control this
feature, so the overhead is only present on kernels compiled with
support for EXYNOS.

Tested on Origen (EXYNOS4) and Panda (OMAP4).

Cc: Kukjin Kim <kgene.kim@samsung.com>
Cc: Will Deacon <will.deacon@arm.com>
Cc: Thomas Abraham <thomas.abraham@linaro.org>
Acked-by: Rob Herring <rob.herring@calxeda.com>
Signed-off-by: Marc Zyngier <marc.zyngier@arm.com>
2011-11-15 18:13:03 +00:00
..
ABI Merge branch 'release' of git://git.kernel.org/pub/scm/linux/kernel/git/lenb/linux 2011-11-07 10:13:52 -08:00
accounting Documentation: update cgroupfs mount point 2011-06-15 21:52:50 -07:00
acpi ACPI, APEI, EINJ Param support is disabled by default 2011-08-03 11:15:59 -04:00
aoe
arm Merge branch 'next/deletion' of git+ssh://master.kernel.org/pub/scm/linux/kernel/git/arm/linux-arm-soc 2011-07-25 12:43:28 -07:00
auxdisplay
blackfin doc: fix broken references 2011-09-27 18:08:04 +02:00
block Documentation: drop as block elevator reference in switching-sched.txt 2011-11-04 12:01:48 -07:00
blockdev cciss: Adds simple mode functionality 2011-08-08 11:40:15 +02:00
cdrom doc: fix broken references 2011-09-27 18:08:04 +02:00
cgroups Documentation: Fix typo in freezer-subsystem.txt 2011-11-07 23:02:25 +01:00
connector
console
cpu-freq Fix documentation and comment typo 'no_hz' 2011-08-08 18:55:59 +02:00
cpuidle
cris
crypto
development-process doc: fix broken references 2011-09-27 18:08:04 +02:00
device-mapper dm log userspace: fix comment hyphens 2011-10-31 20:21:22 +00:00
devicetree ARM: gic: allow GIC to support non-banked setups 2011-11-15 18:13:03 +00:00
DocBook Merge branch 'docs-move' of git://git.kernel.org/pub/scm/linux/kernel/git/rdunlap/linux-docs 2011-11-08 18:33:11 -08:00
driver-model docs/driver-model: Update device class docs 2011-08-24 16:01:24 -07:00
dvb [media] update az6027 firmware URL 2011-10-14 10:29:45 -03:00
early-userspace
fault-injection fault-injection: update documentation with the mmc module param 2011-10-26 16:32:13 -04:00
fb udlfb: Enable fbcon access to framebuffer by default 2011-08-24 10:12:38 +00:00
filesystems Documentation: HFS is orphaned 2011-11-04 12:01:48 -07:00
firmware_class
frv doc: fix broken references 2011-09-27 18:08:04 +02:00
hid
hwmon hwmon: (w83627ehf) Add support for the W83627UHG 2011-11-04 12:00:48 +01:00
i2c i2c: Functions for byte-swapped smbus_write/read_word_data 2011-10-30 13:47:25 +01:00
i2o doc: i2o: fix typo 'Settting' 2011-06-07 16:06:01 +02:00
ia64
ide
infiniband
input Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input 2011-10-27 08:44:20 +02:00
ioctl ioctl: register LTTng ioctl 2011-09-12 11:50:56 -07:00
isdn doc: fix wrong arch/i386 references 2011-06-13 13:43:05 +02:00
ja_JP Merge branch 'driver-core-next' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core-2.6 2011-07-25 23:06:24 -07:00
kbuild doc: fix wrong arch/i386 references 2011-06-13 13:43:05 +02:00
kdump
ko_KR
laptops Documentation: thinkpad-acpi grammo fixes 2011-11-04 12:01:47 -07:00
leds Documentation: fix leds-class.txt duplicated word 2011-11-04 12:01:48 -07:00
m68k Documentation: add pointer to name_to_dev_t for root= values 2011-08-03 14:25:21 -10:00
make
mips
misc-devices
mmc mmc: documentation of mmc non-blocking request usage and design. 2011-07-21 10:34:52 -04:00
mn10300
mtd
namespaces
netlabel
networking ipvs: Enhance grammar used to refer to Kconfig options 2011-11-01 09:19:45 +01:00
nfc
parisc
PCI doc: fix broken references 2011-09-27 18:08:04 +02:00
pcmcia
power PM / Runtime: Automatically retry failed autosuspends 2011-11-04 22:28:14 +01:00
powerpc
pps
prctl
pti
ptp
rapidio RapidIO: documentation update 2011-11-02 16:07:02 -07:00
RCU rcu: Document interpretation of RCU-lockdep splats 2011-09-28 21:38:28 -07:00
s390 [S390] remove tape block docu 2011-07-24 10:48:22 +02:00
scheduler sched: Add documentation for bandwidth control 2011-08-14 12:03:58 +02:00
scsi Merge git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi-misc-2.6 2011-10-28 16:44:18 -07:00
security doc: fix broken references 2011-09-27 18:08:04 +02:00
serial Documentation: Computone ip2 is orphaned 2011-11-04 12:01:48 -07:00
sh
sound ALSA: hda - fix internal mic on Dell Vostro 3500 laptop 2011-11-09 11:03:29 +01:00
sparc
spi doc: fix broken references 2011-09-27 18:08:04 +02:00
sysctl kernel/sysctl.c: add cap_last_cap to /proc/sys/kernel 2011-10-31 17:30:53 -07:00
target
telephony
thermal
timers doc: fix broken references 2011-09-27 18:08:04 +02:00
trace mm: change isolate mode from #define to bitwise type 2011-10-31 17:30:44 -07:00
usb Merge branch 'pm-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm 2011-10-25 15:18:39 +02:00
vDSO Document the vDSO and add a reference parser 2011-07-14 17:57:09 -07:00
video4linux [media] gspca - zc3xx: New webcam 03f0:1b07 HP Premium Starter Cam 2011-09-23 23:31:12 -03:00
virtual Merge branch 'for-linus' of git://github.com/richardweinberger/linux 2011-11-02 09:45:39 -07:00
vm Merge branches 'slab/next' and 'slub/partial' into slab/for-linus 2011-10-26 18:09:12 +03:00
w1
watchdog Documentation: watchdog: add guide how to convert drivers to new framework 2011-11-05 21:25:16 +01:00
wimax
x86 x86-64, doc: Remove int 0xcc from entry_64.S documentation 2011-08-16 08:04:08 -07:00
zh_CN remove the messy code file Documentation/zh_CN/SubmitChecklist 2011-09-26 16:18:41 -07:00
.gitignore
00-INDEX Documentation: add Ramoops usage description 2011-08-13 18:34:03 -07:00
applying-patches.txt
atomic_ops.txt
bad_memory.txt
basic_profiling.txt
binfmt_misc.txt
braille-console.txt
bt8xxgpio.txt
btmrvl.txt
BUG-HUNTING
bus-virt-phys-mapping.txt doc: fix broken references 2011-09-27 18:08:04 +02:00
cachetlb.txt
Changes Documentation/Changes: remove some really obsolete text 2011-07-11 16:48:38 -07:00
circular-buffers.txt
coccinelle.txt
CodingStyle Documentation: update CodingStyle use of braces 2011-11-04 12:01:47 -07:00
cpu-hotplug.txt
cpu-load.txt
cputopology.txt
dcdbas.txt
debugging-modules.txt
debugging-via-ohci1394.txt
dell_rbu.txt
devices.txt
DMA-API-HOWTO.txt Documentation/DMA-API-HOWTO.txt: fix misleading example 2011-07-26 16:49:45 -07:00
DMA-API.txt include/linux/dma-mapping.h: add dma_zalloc_coherent() 2011-11-02 16:07:02 -07:00
DMA-attributes.txt
DMA-ISA-LPC.txt
dmaengine.txt Improve slave/cyclic DMA engine documentation 2011-07-27 20:33:48 +05:30
dontdiff
dynamic-debug-howto.txt
edac.txt
eisa.txt
email-clients.txt Documentation: email-clients: Add better Thunderbird information 2011-08-13 18:34:03 -07:00
feature-removal-schedule.txt sysctl: make CONFIG_SYSCTL_SYSCALL default to n 2011-11-02 16:07:02 -07:00
flexible-arrays.txt
futex-requeue-pi.txt
gcov.txt
gpio.txt
highuid.txt
HOWTO
hw_random.txt
hwspinlock.txt hwspinlock/core: register a bank of hwspinlocks in a single API call 2011-09-21 19:45:34 +03:00
init.txt
initrd.txt
intel_txt.txt
Intel-IOMMU.txt
io_ordering.txt
io-mapping.txt
iostats.txt
IPMI.txt
IRQ-affinity.txt
IRQ.txt
irqflags-tracing.txt
isapnp.txt
java.txt
kernel-doc-nano-HOWTO.txt
kernel-docs.txt doc: fix broken references 2011-09-27 18:08:04 +02:00
kernel-parameters.txt Merge branch 'akpm' (Andrew's incoming) 2011-10-31 17:46:07 -07:00
kmemcheck.txt
kmemleak.txt Documentation: update kmemleak supported archs 2011-06-15 21:52:50 -07:00
kobject.txt
kprobes.txt
kref.txt
ldm.txt
local_ops.txt
lockdep-design.txt
lockstat.txt
logo.gif
logo.txt
magic-number.txt doc: fix wrong arch/i386 references 2011-06-13 13:43:05 +02:00
Makefile
ManagementStyle
mca.txt doc: fix wrong arch/i386 references 2011-06-13 13:43:05 +02:00
md.txt md: update documentation for md/rdev/state sysfs interface 2011-07-28 11:31:48 +10:00
media-framework.txt doc: fix broken references 2011-09-27 18:08:04 +02:00
memory-barriers.txt doc: fix broken references 2011-09-27 18:08:04 +02:00
memory-hotplug.txt
memory.txt
mono.txt
mutex-design.txt
nmi_watchdog.txt
nommu-mmap.txt
numastat.txt
oops-tracing.txt module,bug: Add TAINT_OOT_MODULE flag for modules not built in-tree 2011-11-07 07:54:42 +10:30
padata.txt
parport-lowlevel.txt
parport.txt
pi-futex.txt
pinctrl.txt drivers: create a pin control subsystem 2011-10-13 12:49:17 +02:00
pnp.txt
preempt-locking.txt
printk-formats.txt Documentation: update printk-formats.txt 2011-06-15 21:52:50 -07:00
prio_tree.txt
ramoops.txt Documentation: add Ramoops usage description 2011-08-13 18:34:03 -07:00
rbtree.txt Documentation: Update augmented rbtree documentation 2011-07-24 10:03:05 -07:00
rfkill.txt doc: fix broken references 2011-09-27 18:08:04 +02:00
robust-futex-ABI.txt
robust-futexes.txt
rt-mutex-design.txt
rt-mutex.txt
rtc.txt
SAK.txt
SecurityBugs
serial-console.txt
sgi-ioc4.txt
sgi-visws.txt
SM501.txt
sparse.txt
spinlocks.txt Documentation/spinlocks.txt: Remove reference to sti()/cli() 2011-07-11 12:45:04 -07:00
stable_api_nonsense.txt
stable_kernel_rules.txt Update email address for stable patch submission 2011-10-18 13:58:59 -07:00
SubmitChecklist Documentation/SubmitChecklist: add RCU debug config options 2011-07-25 20:57:17 -07:00
SubmittingDrivers Documentation: SubmittingDrivers: fix Linus's git tree URL 2011-08-13 18:34:03 -07:00
SubmittingPatches Documentation: fix spelling error in SubmittingPatches 2011-08-13 18:34:02 -07:00
svga.txt
sysfs-rules.txt
sysrq.txt
unaligned-memory-access.txt
unicode.txt
unshare.txt
VGA-softcursor.txt
vgaarbiter.txt
video-output.txt
volatile-considered-harmful.txt
workqueue.txt
xz.txt
zorro.txt