Guennadi Liakhovetski
438d8908b3
gpiolib: better rmmod infrastructure
...
As long as one or more GPIOs on a gpio chip are used its driver should not be
unloaded. The existing mechanism (gpiochip_remove failure) doesn't address
that, since rmmod can no longer be made to fail by having the cleanup code
report errors. Module usecounts are the solution.
Assuming standard "initialize struct to zero" policies, this change won't
affect SOC platform drivers. However, drivers for external chips (on I2C and
SPI busses) should be updated if they can be built as modules.
Signed-off-by: Guennadi Liakhovetski <g.liakhovetski@pengutronix.de>
[ gpio_ensure_requested() needs to update module usecounts too ]
Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2008-04-28 08:58:34 -07:00
..
bitops
bitops: use __fls for fls64 on 64-bit archs
2008-04-26 19:21:16 +02:00
4level-fixup.h
add mm argument to pte/pmd/pud/pgd_free
2008-02-05 09:44:18 -08:00
atomic.h
atomic.h: atomic_add_unless as inline. Remove system.h atomic.h circular dependency
2007-05-08 11:15:20 -07:00
audit_change_attr.h
audit_dir_write.h
audit_read.h
audit_signal.h
[PATCH] add SIGNAL syscall class (v3)
2007-05-11 05:38:25 -04:00
audit_write.h
bitops.h
forbid asm/bitops.h direct inclusion
2007-10-19 11:53:41 -07:00
bug.h
debug: move WARN_ON() out of line
2008-01-30 13:32:50 +01:00
cmpxchg-local.h
Add cmpxchg_local to asm-generic for per cpu atomic operations
2008-02-07 08:42:30 -08:00
cmpxchg.h
Add cmpxchg_local to asm-generic for per cpu atomic operations
2008-02-07 08:42:30 -08:00
cputime.h
taskstats scaled time cleanup
2008-02-06 10:41:00 -08:00
device.h
div64.h
dma-mapping-broken.h
dma-mapping: prevent dma dependent code from linking on !HAS_DMA archs
2007-07-16 09:05:45 -07:00
dma-mapping.h
emergency-restart.h
errno-base.h
errno.h
fcntl.h
Introduce O_CLOEXEC
2007-07-16 09:05:45 -07:00
futex.h
gpio.h
gpiolib: better rmmod infrastructure
2008-04-28 08:58:34 -07:00
ide_iops.h
ioctl.h
iomap.h
generic: add ioremap_wc() interface wrapper
2008-04-24 23:40:47 +02:00
irq_regs.h
Kbuild
remove include/asm-*/ipc.h
2007-10-17 08:42:55 -07:00
Kbuild.asm
kvm: provide kvm.h for all architecture: fixes headers_install
2008-04-02 15:28:18 -07:00
kdebug.h
move die notifier handling to common code
2007-05-08 11:15:04 -07:00
libata-portmap.h
libata-portmap: Remove unused definitions
2007-10-12 14:55:37 -04:00
local.h
local_t: architecture independent extension
2007-05-08 11:15:20 -07:00
memory_model.h
Generic Virtual Memmap support for SPARSEMEM
2007-10-16 09:42:51 -07:00
mm_hooks.h
[PATCH] x86: PARAVIRT: add hooks to intercept mm creation and destruction
2007-05-02 19:27:14 +02:00
mman.h
mutex-dec.h
asm-generic: remove fastcall
2008-02-08 09:22:31 -08:00
mutex-null.h
mutex-xchg.h
asm-generic: remove fastcall
2008-02-08 09:22:31 -08:00
page.h
pci-dma-compat.h
pci.h
percpu.h
percpu: fix DEBUG_PREEMPT per_cpu checking
2008-02-23 12:09:28 -08:00
pgtable-nopmd.h
add mm argument to pte/pmd/pud/pgd_free
2008-02-05 09:44:18 -08:00
pgtable-nopud.h
add mm argument to pte/pmd/pud/pgd_free
2008-02-05 09:44:18 -08:00
pgtable.h
flush icache before set_pte() on ia64: flush icache at set_pte
2007-10-16 09:42:59 -07:00
poll.h
Consolidate asm/poll.h
2007-05-11 08:29:34 -07:00
resource.h
sched: SCHED_FIFO/SCHED_RR watchdog timer
2008-01-25 21:08:27 +01:00
rtc.h
x86: fix RTC lockdep warning: potential hardirq recursion
2008-02-04 16:48:10 +01:00
sections.h
remove support for un-needed _extratext section
2008-02-06 10:41:01 -08:00
siginfo.h
signal.h
statfs.h
termios.h
tty: let architectures override the user/kernel macros.
2008-02-08 09:22:24 -08:00
tlb.h
asm-generic/tlb.h: remove <linux/quicklist.h>
2008-02-04 16:48:00 +01:00
topology.h
asm-generic: add node_to_cpumask_ptr macro
2008-04-19 19:44:58 +02:00
uaccess.h
unaligned.h
use __val in __get_unaligned
2007-07-31 15:39:42 -07:00
vmlinux.lds.h
Add missing init section definitions
2008-02-19 21:00:18 +01:00
xor.h