android_kernel_xiaomi_sm8350/include/asm-avr32
David Brownell b98348bdd0 gpiolib: avr32 at32ap platform support
Teach AVR32 to use the "GPIO Library" when exposing its GPIOs, so that signals
on external chips (like GPIO expanders) can easily be used.

This mostly reorganizes some existing logic, with two minor changes in
behavior:

 - The PSR registers are used instead of the previous "gpio_mask" values,
   matching AT91 behavior and removing some duplication between that role
   and that of "pinmux_mask".

 - NR_IRQs grew to acommodate a bank of external GPIOs.  Eventually this
   number should probably become a board-specific config option.

There's a debugfs dump of status for the built-in GPIOs, showing which pins
have deglitching, pullups, or open drain drive enabled, as well as the ID
string used when requesting each IRQ.

Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
Acked-by: Haavard Skinnemoen <hskinnemoen@atmel.com>
Cc: Jean Delvare <khali@linux-fr.org>
Cc: Eric Miao <eric.miao@marvell.com>
Cc: Sam Ravnborg <sam@ravnborg.org>
Cc: Philipp Zabel <philipp.zabel@gmail.com>
Cc: Russell King <rmk@arm.linux.org.uk>
Cc: Ben Gardner <bgardner@wabtec.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2008-02-05 09:44:13 -08:00
..
arch-at32ap gpiolib: avr32 at32ap platform support 2008-02-05 09:44:13 -08:00
mach [PATCH] atmel_serial: Rename at91_register_uart_fns 2006-10-04 10:25:05 -07:00
a.out.h arch: personality independent stack top 2007-07-19 10:04:45 -07:00
addrspace.h [PATCH] avr32 architecture 2006-09-26 08:48:54 -07:00
asm.h [PATCH] avr32 architecture 2006-09-26 08:48:54 -07:00
atomic.h [AVR32] Fix atomic_add_unless() and atomic_sub_unless() 2007-07-18 20:47:04 +02:00
auxvec.h [PATCH] avr32 architecture 2006-09-26 08:48:54 -07:00
bitops.h forbid asm/bitops.h direct inclusion 2007-10-19 11:53:41 -07:00
bug.h Fix WARN_ON() on bitfield ops for all other archs 2007-08-01 20:45:38 -07:00
bugs.h [PATCH] avr32 architecture 2006-09-26 08:48:54 -07:00
byteorder.h [PATCH] avr32 architecture 2006-09-26 08:48:54 -07:00
cache.h [AVR32] Define ARCH_KMALLOC_MINALIGN to L1_CACHE_BYTES 2007-06-14 18:30:50 +02:00
cachectl.h [PATCH] avr32 architecture 2006-09-26 08:48:54 -07:00
cacheflush.h [AVR32] Fix copy_to_user_page() breakage 2007-12-07 14:54:47 +01:00
checksum.h Remove a couple final references to obsolete verify_area(). 2007-02-09 15:01:56 +01:00
cputime.h [PATCH] avr32 architecture 2006-09-26 08:48:54 -07:00
current.h [PATCH] avr32 architecture 2006-09-26 08:48:54 -07:00
delay.h [PATCH] avr32 architecture 2006-09-26 08:48:54 -07:00
device.h Driver core: add dev_archdata to struct device 2006-12-01 14:52:01 -08:00
div64.h [PATCH] avr32 architecture 2006-09-26 08:48:54 -07:00
dma-mapping.h AVR32: Fix sg_page breakage 2007-10-24 10:16:02 +02:00
dma.h [PATCH] avr32 architecture 2006-09-26 08:48:54 -07:00
elf.h [PATCH] avr32 architecture 2006-09-26 08:48:54 -07:00
emergency-restart.h [PATCH] avr32 architecture 2006-09-26 08:48:54 -07:00
errno.h [PATCH] avr32 architecture 2006-09-26 08:48:54 -07:00
fb.h fbdev: detect primary display device 2007-07-17 10:23:11 -07:00
fcntl.h [PATCH] avr32 architecture 2006-09-26 08:48:54 -07:00
futex.h [PATCH] avr32 architecture 2006-09-26 08:48:54 -07:00
gpio.h [AVR32] GPIO API implementation 2007-02-09 15:01:58 +01:00
hardirq.h [PATCH] avr32 architecture 2006-09-26 08:48:54 -07:00
hw_irq.h [PATCH] avr32 architecture 2006-09-26 08:48:54 -07:00
intc.h [PATCH] avr32 architecture 2006-09-26 08:48:54 -07:00
io.h Remove dma_cache_(wback|inv|wback_inv) functions 2007-10-17 08:42:57 -07:00
ioctl.h [PATCH] avr32 architecture 2006-09-26 08:48:54 -07:00
ioctls.h [PATCH] avr32 architecture 2006-09-26 08:48:54 -07:00
ipcbuf.h [PATCH] avr32 architecture 2006-09-26 08:48:54 -07:00
irq_regs.h [PATCH] IRQ: Fix AVR32 breakage 2006-10-11 11:14:14 -07:00
irq.h [AVR32] NMI debugging 2008-01-25 08:31:43 +01:00
irqflags.h [PATCH] avr32 architecture 2006-09-26 08:48:54 -07:00
Kbuild [AVR32] Fix typo in include/asm-avr32/Kbuild 2007-03-07 10:50:27 +01:00
kdebug.h [AVR32] NMI debugging 2008-01-25 08:31:43 +01:00
kmap_types.h [PATCH] avr32 architecture 2006-09-26 08:48:54 -07:00
kprobes.h kprobes: support kretprobe blacklist 2007-10-16 09:43:10 -07:00
linkage.h [PATCH] avr32 architecture 2006-09-26 08:48:54 -07:00
local.h [PATCH] avr32 architecture 2006-09-26 08:48:54 -07:00
mman.h [PATCH] avr32 architecture 2006-09-26 08:48:54 -07:00
mmu_context.h [PATCH] x86: PARAVIRT: add hooks to intercept mm creation and destruction 2007-05-02 19:27:14 +02:00
mmu.h [PATCH] avr32 architecture 2006-09-26 08:48:54 -07:00
module.h [PATCH] avr32 architecture 2006-09-26 08:48:54 -07:00
msgbuf.h [PATCH] avr32 architecture 2006-09-26 08:48:54 -07:00
mutex.h [PATCH] avr32 architecture 2006-09-26 08:48:54 -07:00
namei.h [PATCH] avr32 architecture 2006-09-26 08:48:54 -07:00
numnodes.h [PATCH] avr32 architecture 2006-09-26 08:48:54 -07:00
ocd.h [AVR32] Enable debugging only when needed 2008-01-25 08:31:39 +01:00
page.h [PATCH] avr32 architecture 2006-09-26 08:48:54 -07:00
param.h [PATCH] avr32 architecture 2006-09-26 08:48:54 -07:00
pci.h [PATCH] avr32 architecture 2006-09-26 08:48:54 -07:00
percpu.h [PATCH] avr32 architecture 2006-09-26 08:48:54 -07:00
pgalloc.h [AVR32] Simplify pte_alloc_one{,_kernel} 2007-08-15 16:36:56 +02:00
pgtable-2level.h [PATCH] avr32 architecture 2006-09-26 08:48:54 -07:00
pgtable.h [AVR32] Fix bogus pte_page() definition 2007-08-15 16:36:56 +02:00
poll.h Consolidate asm/poll.h 2007-05-11 08:29:34 -07:00
posix_types.h [AVR32] ssize_t should be long, not int 2007-02-09 15:01:59 +01:00
processor.h [AVR32] Provide more CPU information in /proc/cpuinfo and dmesg 2008-01-25 08:31:40 +01:00
ptrace.h [AVR32] Enable debugging only when needed 2008-01-25 08:31:39 +01:00
resource.h [PATCH] avr32 architecture 2006-09-26 08:48:54 -07:00
scatterlist.h Add CONFIG_DEBUG_SG sg validation 2007-10-22 21:20:03 +02:00
sections.h [PATCH] avr32 architecture 2006-09-26 08:48:54 -07:00
semaphore.h kill DECLARE_MUTEX_LOCKED 2007-10-17 08:42:47 -07:00
sembuf.h [PATCH] avr32 architecture 2006-09-26 08:48:54 -07:00
setup.h remove __attribute_used__ 2008-01-28 23:21:18 +01:00
shmbuf.h [PATCH] avr32 architecture 2006-09-26 08:48:54 -07:00
shmparam.h [PATCH] avr32 architecture 2006-09-26 08:48:54 -07:00
sigcontext.h [PATCH] avr32 architecture 2006-09-26 08:48:54 -07:00
siginfo.h [PATCH] avr32 architecture 2006-09-26 08:48:54 -07:00
signal.h [PATCH] avr32 architecture 2006-09-26 08:48:54 -07:00
socket.h [NET]: Introducing socket mark socket option. 2008-01-31 19:27:19 -08:00
sockios.h [NET]: Introduce SIOCGSTAMPNS ioctl to get timestamps with nanosec resolution 2007-04-25 22:24:04 -07:00
stat.h [PATCH] avr32 architecture 2006-09-26 08:48:54 -07:00
statfs.h [PATCH] avr32 architecture 2006-09-26 08:48:54 -07:00
string.h [PATCH] avr32 architecture 2006-09-26 08:48:54 -07:00
sysreg.h [AVR32] Implement irqflags trace and lockdep support 2007-12-07 14:52:37 +01:00
system.h [AVR32] Clean up OCD register usage 2007-12-07 14:54:40 +01:00
termbits.h lots-of-architectures: enable arbitary speed tty support 2007-07-10 17:51:13 -07:00
termios.h [PATCH] consolidate line discipline number definitions 2007-02-11 10:51:26 -08:00
thread_info.h [AVR32] Enable debugging only when needed 2008-01-25 08:31:39 +01:00
timex.h [PATCH] avr32 architecture 2006-09-26 08:48:54 -07:00
tlb.h [PATCH] avr32 architecture 2006-09-26 08:48:54 -07:00
tlbflush.h remove unused flush_tlb_pgtables 2007-10-19 11:53:34 -07:00
topology.h [PATCH] avr32 architecture 2006-09-26 08:48:54 -07:00
traps.h [PATCH] avr32 architecture 2006-09-26 08:48:54 -07:00
types.h remove strict ansi check from __u64 in asm/types.h 2007-10-17 08:42:53 -07:00
uaccess.h [AVR32] Fix compile error with gcc 4.1 2007-04-27 14:21:47 +02:00
ucontext.h [PATCH] avr32 architecture 2006-09-26 08:48:54 -07:00
unaligned.h [AVR32] Remove optimization of unaligned word loads 2007-07-18 20:45:51 +02:00
unistd.h [AVR32] Ignore a few irrelevant syscalls 2007-10-11 13:32:55 +02:00
user.h [PATCH] avr32 architecture 2006-09-26 08:48:54 -07:00