MIPS: Alchemy: devboard register abstraction
authorManuel Lauss <manuel.lauss@googlemail.com>
Sun, 4 Oct 2009 12:55:24 +0000 (14:55 +0200)
committerRalf Baechle <ralf@linux-mips.org>
Sat, 27 Feb 2010 11:52:50 +0000 (12:52 +0100)
commit9bdcf336d0c061e77f4c45c7b2bc32e3ed6b57e3
tree9cce0d50bb1709654fae719e7175da25279402bc
parentebc89718a4b3fa0e440151fb4484541700828a5d
MIPS: Alchemy: devboard register abstraction

All Alchemy development boards have external CPLDs with a few registers
in them.  They all share an identical register layout with only a few
minor differences (except the PB1000) in bit functions and base
addresses.

This patch
- adds a primitive facility to initialize and use these external
  registers,
- replaces all occurrences of bcsr->xxx accesses with calls to the new
  functions (the pb1200 cascade irq handling code is special).
- collects BCSR register information scattered throughout the board
  headers in a central place.

Signed-off-by: Manuel Lauss <manuel.lauss@gmail.com>
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
19 files changed:
arch/mips/alchemy/devboards/Makefile
arch/mips/alchemy/devboards/bcsr.c [new file with mode: 0644]
arch/mips/alchemy/devboards/db1x00/board_setup.c
arch/mips/alchemy/devboards/pb1100/board_setup.c
arch/mips/alchemy/devboards/pb1200/board_setup.c
arch/mips/alchemy/devboards/pb1200/irqmap.c
arch/mips/alchemy/devboards/pb1200/platform.c
arch/mips/alchemy/devboards/pb1500/board_setup.c
arch/mips/alchemy/devboards/pb1550/board_setup.c
arch/mips/include/asm/mach-db1x00/bcsr.h [new file with mode: 0644]
arch/mips/include/asm/mach-db1x00/db1200.h
arch/mips/include/asm/mach-db1x00/db1x00.h
arch/mips/include/asm/mach-pb1x00/pb1100.h
arch/mips/include/asm/mach-pb1x00/pb1200.h
arch/mips/include/asm/mach-pb1x00/pb1500.h
arch/mips/include/asm/mach-pb1x00/pb1550.h
drivers/mtd/nand/au1550nd.c
drivers/net/irda/au1k_ir.c
drivers/pcmcia/au1000_db1x00.c