diff options
author | Thomas Gleixner <tglx@linutronix.de> | 2009-07-03 09:44:46 -0400 |
---|---|---|
committer | Ingo Molnar <mingo@elte.hu> | 2011-09-13 05:12:14 -0400 |
commit | bd31b85960a7fcb2d7ede216460b8da71a88411c (patch) | |
tree | f2ab1a1105705856c5cdfc71bcf3f7b5f897d30d /arch/arm/mach-integrator/pci_v3.c | |
parent | a1741e7fcbc19a67520115df480ab17012cc3d0b (diff) |
locking, ARM: Annotate low level hw locks as raw
Annotate the low level hardware locks which must not be preempted.
In mainline this change documents the low level nature of
the lock - otherwise there's no functional difference. Lockdep
and Sparse checking will work as usual.
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Cc: Russell King <rmk+kernel@arm.linux.org.uk>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Diffstat (limited to 'arch/arm/mach-integrator/pci_v3.c')
-rw-r--r-- | arch/arm/mach-integrator/pci_v3.c | 14 |
1 files changed, 7 insertions, 7 deletions
diff --git a/arch/arm/mach-integrator/pci_v3.c b/arch/arm/mach-integrator/pci_v3.c index dd56bfb351e3..56c30622d239 100644 --- a/arch/arm/mach-integrator/pci_v3.c +++ b/arch/arm/mach-integrator/pci_v3.c | |||
@@ -164,7 +164,7 @@ | |||
164 | * 7:2 register number | 164 | * 7:2 register number |
165 | * | 165 | * |
166 | */ | 166 | */ |
167 | static DEFINE_SPINLOCK(v3_lock); | 167 | static DEFINE_RAW_SPINLOCK(v3_lock); |
168 | 168 | ||
169 | #define PCI_BUS_NONMEM_START 0x00000000 | 169 | #define PCI_BUS_NONMEM_START 0x00000000 |
170 | #define PCI_BUS_NONMEM_SIZE SZ_256M | 170 | #define PCI_BUS_NONMEM_SIZE SZ_256M |
@@ -285,7 +285,7 @@ static int v3_read_config(struct pci_bus *bus, unsigned int devfn, int where, | |||
285 | unsigned long flags; | 285 | unsigned long flags; |
286 | u32 v; | 286 | u32 v; |
287 | 287 | ||
288 | spin_lock_irqsave(&v3_lock, flags); | 288 | raw_spin_lock_irqsave(&v3_lock, flags); |
289 | addr = v3_open_config_window(bus, devfn, where); | 289 | addr = v3_open_config_window(bus, devfn, where); |
290 | 290 | ||
291 | switch (size) { | 291 | switch (size) { |
@@ -303,7 +303,7 @@ static int v3_read_config(struct pci_bus *bus, unsigned int devfn, int where, | |||
303 | } | 303 | } |
304 | 304 | ||
305 | v3_close_config_window(); | 305 | v3_close_config_window(); |
306 | spin_unlock_irqrestore(&v3_lock, flags); | 306 | raw_spin_unlock_irqrestore(&v3_lock, flags); |
307 | 307 | ||
308 | *val = v; | 308 | *val = v; |
309 | return PCIBIOS_SUCCESSFUL; | 309 | return PCIBIOS_SUCCESSFUL; |
@@ -315,7 +315,7 @@ static int v3_write_config(struct pci_bus *bus, unsigned int devfn, int where, | |||
315 | unsigned long addr; | 315 | unsigned long addr; |
316 | unsigned long flags; | 316 | unsigned long flags; |
317 | 317 | ||
318 | spin_lock_irqsave(&v3_lock, flags); | 318 | raw_spin_lock_irqsave(&v3_lock, flags); |
319 | addr = v3_open_config_window(bus, devfn, where); | 319 | addr = v3_open_config_window(bus, devfn, where); |
320 | 320 | ||
321 | switch (size) { | 321 | switch (size) { |
@@ -336,7 +336,7 @@ static int v3_write_config(struct pci_bus *bus, unsigned int devfn, int where, | |||
336 | } | 336 | } |
337 | 337 | ||
338 | v3_close_config_window(); | 338 | v3_close_config_window(); |
339 | spin_unlock_irqrestore(&v3_lock, flags); | 339 | raw_spin_unlock_irqrestore(&v3_lock, flags); |
340 | 340 | ||
341 | return PCIBIOS_SUCCESSFUL; | 341 | return PCIBIOS_SUCCESSFUL; |
342 | } | 342 | } |
@@ -515,7 +515,7 @@ void __init pci_v3_preinit(void) | |||
515 | hook_fault_code(8, v3_pci_fault, SIGBUS, 0, "external abort on non-linefetch"); | 515 | hook_fault_code(8, v3_pci_fault, SIGBUS, 0, "external abort on non-linefetch"); |
516 | hook_fault_code(10, v3_pci_fault, SIGBUS, 0, "external abort on non-linefetch"); | 516 | hook_fault_code(10, v3_pci_fault, SIGBUS, 0, "external abort on non-linefetch"); |
517 | 517 | ||
518 | spin_lock_irqsave(&v3_lock, flags); | 518 | raw_spin_lock_irqsave(&v3_lock, flags); |
519 | 519 | ||
520 | /* | 520 | /* |
521 | * Unlock V3 registers, but only if they were previously locked. | 521 | * Unlock V3 registers, but only if they were previously locked. |
@@ -588,7 +588,7 @@ void __init pci_v3_preinit(void) | |||
588 | printk(KERN_ERR "PCI: unable to grab PCI error " | 588 | printk(KERN_ERR "PCI: unable to grab PCI error " |
589 | "interrupt: %d\n", ret); | 589 | "interrupt: %d\n", ret); |
590 | 590 | ||
591 | spin_unlock_irqrestore(&v3_lock, flags); | 591 | raw_spin_unlock_irqrestore(&v3_lock, flags); |
592 | } | 592 | } |
593 | 593 | ||
594 | void __init pci_v3_postinit(void) | 594 | void __init pci_v3_postinit(void) |