Merge master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6
[linux-2.6] / include / asm-frv / busctl-regs.h
1 /* busctl-regs.h: FR400-series CPU bus controller registers
2  *
3  * Copyright (C) 2003 Red Hat, Inc. All Rights Reserved.
4  * Written by David Howells (dhowells@redhat.com)
5  *
6  * This program is free software; you can redistribute it and/or
7  * modify it under the terms of the GNU General Public License
8  * as published by the Free Software Foundation; either version
9  * 2 of the License, or (at your option) any later version.
10  */
11
12 #ifndef _ASM_BUSCTL_REGS_H
13 #define _ASM_BUSCTL_REGS_H
14
15 /* bus controller registers */
16 #define __get_LGCR()    ({ *(volatile unsigned long *)(0xfe000010); })
17 #define __get_LMAICR()  ({ *(volatile unsigned long *)(0xfe000030); })
18 #define __get_LEMBR()   ({ *(volatile unsigned long *)(0xfe000040); })
19 #define __get_LEMAM()   ({ *(volatile unsigned long *)(0xfe000048); })
20 #define __get_LCR(R)    ({ *(volatile unsigned long *)(0xfe000100 + 8*(R)); })
21 #define __get_LSBR(R)   ({ *(volatile unsigned long *)(0xfe000c00 + 8*(R)); })
22 #define __get_LSAM(R)   ({ *(volatile unsigned long *)(0xfe000d00 + 8*(R)); })
23
24 #define __set_LGCR(V)   do { *(volatile unsigned long *)(0xfe000010) = (V); } while(0)
25 #define __set_LMAICR(V) do { *(volatile unsigned long *)(0xfe000030) = (V); } while(0)
26 #define __set_LEMBR(V)  do { *(volatile unsigned long *)(0xfe000040) = (V); } while(0)
27 #define __set_LEMAM(V)  do { *(volatile unsigned long *)(0xfe000048) = (V); } while(0)
28 #define __set_LCR(R,V)  do { *(volatile unsigned long *)(0xfe000100 + 8*(R)) = (V); } while(0)
29 #define __set_LSBR(R,V) do { *(volatile unsigned long *)(0xfe000c00 + 8*(R)) = (V); } while(0)
30 #define __set_LSAM(R,V) do { *(volatile unsigned long *)(0xfe000d00 + 8*(R)) = (V); } while(0)
31
32 /* FR401 SDRAM controller registers */
33 #define __get_DBR(R)    ({ *(volatile unsigned long *)(0xfe000e00 + 8*(R)); })
34 #define __get_DAM(R)    ({ *(volatile unsigned long *)(0xfe000f00 + 8*(R)); })
35
36 /* FR551 SDRAM controller registers */
37 #define __get_DARS(R)   ({ *(volatile unsigned long *)(0xfeff0100 + 8*(R)); })
38 #define __get_DAMK(R)   ({ *(volatile unsigned long *)(0xfeff0110 + 8*(R)); })
39
40
41 #endif /* _ASM_BUSCTL_REGS_H */