MIPS: RB532: Use physical addresses for gpio and device controller registers
[pandora-kernel.git] / include / asm-mips / mach-rc32434 / rb.h
1 /*
2  *  This program is free software; you can redistribute it and/or modify
3  *  it under the terms of the GNU General Public License as published by
4  *  the Free Software Foundation; either version 2 of the License, or
5  *  (at your option) any later version.
6  *
7  *  This program is distributed in the hope that it will be useful,
8  *  but WITHOUT ANY WARRANTY; without even the implied warranty of
9  *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
10  *  GNU General Public License for more details.
11  *
12  *  Copyright (C) 2004 IDT Inc.
13  *  Copyright (C) 2006 Felix Fietkau <nbd@openwrt.org>
14  */
15 #ifndef __ASM_RC32434_RB_H
16 #define __ASM_RC32434_RB_H
17
18 #include <linux/genhd.h>
19
20 #define REGBASE         0x18000000
21 #define IDT434_REG_BASE ((volatile void *) KSEG1ADDR(REGBASE))
22 #define DEV0BASE        0x010000
23 #define DEV0MASK        0x010004
24 #define DEV0C           0x010008
25 #define DEV0T           0x01000C
26 #define DEV1BASE        0x010010
27 #define DEV1MASK        0x010014
28 #define DEV1C           0x010018
29 #define DEV1TC          0x01001C
30 #define DEV2BASE        0x010020
31 #define DEV2MASK        0x010024
32 #define DEV2C           0x010028
33 #define DEV2TC          0x01002C
34 #define DEV3BASE        0x010030
35 #define DEV3MASK        0x010034
36 #define DEV3C           0x010038
37 #define DEV3TC          0x01003C
38 #define BTCS            0x010040
39 #define BTCOMPARE       0x010044
40 #define GPIOBASE        0x050000
41 #define GPIOCFG         0x050004
42 #define GPIOD           0x050008
43 #define GPIOILEVEL      0x05000C
44 #define GPIOISTAT       0x050010
45 #define GPIONMIEN       0x050014
46 #define IMASK6          0x038038
47 #define LO_WPX          (1 << 0)
48 #define LO_ALE          (1 << 1)
49 #define LO_CLE          (1 << 2)
50 #define LO_CEX          (1 << 3)
51 #define LO_FOFF         (1 << 5)
52 #define LO_SPICS        (1 << 6)
53 #define LO_ULED         (1 << 7)
54
55 #define BIT_TO_MASK(x)  (1 << x)
56
57 struct dev_reg {
58         u32     base;
59         u32     mask;
60         u32     ctl;
61         u32     timing;
62 };
63
64 struct korina_device {
65         char *name;
66         unsigned char mac[6];
67         struct net_device *dev;
68 };
69
70 struct cf_device {
71         int gpio_pin;
72         void *dev;
73         struct gendisk *gd;
74 };
75
76 struct mpmc_device {
77         unsigned char   state;
78         spinlock_t      lock;
79         void __iomem    *base;
80 };
81
82 #endif  /* __ASM_RC32434_RB_H */