]> git.kernelconcepts.de Git - karo-tx-uboot.git/blob - arch/arm/include/asm/arch-am33xx/i2c.h
Merge branch 'master' of git://git.denx.de/u-boot-microblaze
[karo-tx-uboot.git] / arch / arm / include / asm / arch-am33xx / i2c.h
1 /*
2  * (C) Copyright 2012
3  * Texas Instruments, <www.ti.com>
4  *
5  * See file CREDITS for list of people who contributed to this
6  * project.
7  *
8  * This program is free software; you can redistribute it and/or
9  * modify it under the terms of the GNU General Public License as
10  * published by the Free Software Foundation; either version 2 of
11  * the License, or (at your option) any later version.
12  *
13  * This program is distributed in the hope that it will be useful,
14  * but WITHOUT ANY WARRANTY; without even the implied warranty of
15  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
16  * GNU General Public License for more details.
17  *
18  * You should have received a copy of the GNU General Public License
19  * along with this program; if not, write to the Free Software
20  * Foundation, Inc., 59 Temple Place, Suite 330, Boston,
21  * MA 02111-1307 USA
22  */
23 #ifndef _I2C_H_
24 #define _I2C_H_
25
26 #define  I2C_BASE1              0x44E0B000
27 #define  I2C_BASE2              0x4802A000
28 #define  I2C_BASE3              0x4819C000
29 #define  I2C_BUS_MAX            3
30
31 #define I2C_DEFAULT_BASE                I2C_BASE1
32
33 struct i2c {
34         unsigned short revnb_lo;        /* 0x00 */
35         unsigned short res1;
36         unsigned short revnb_hi;        /* 0x04 */
37         unsigned short res2[5];
38         unsigned short sysc;            /* 0x10 */
39         unsigned short res3[9];
40         unsigned short irqstatus_raw;   /* 0x24 */
41         unsigned short res4;
42         unsigned short stat;            /* 0x28 */
43         unsigned short res5;
44         unsigned short ie;              /* 0x2C */
45         unsigned short res6;
46         unsigned short irqenable_clr;   /* 0x30 */
47         unsigned short res7;
48         unsigned short iv;              /* 0x34 */
49         unsigned short res8[45];
50         unsigned short syss;            /* 0x90 */
51         unsigned short res9;
52         unsigned short buf;             /* 0x94 */
53         unsigned short res10;
54         unsigned short cnt;             /* 0x98 */
55         unsigned short res11;
56         unsigned short data;            /* 0x9C */
57         unsigned short res13;
58         unsigned short res14;           /* 0xA0 */
59         unsigned short res15;
60         unsigned short con;             /* 0xA4 */
61         unsigned short res16;
62         unsigned short oa;              /* 0xA8 */
63         unsigned short res17;
64         unsigned short sa;              /* 0xAC */
65         unsigned short res18;
66         unsigned short psc;             /* 0xB0 */
67         unsigned short res19;
68         unsigned short scll;            /* 0xB4 */
69         unsigned short res20;
70         unsigned short sclh;            /* 0xB8 */
71         unsigned short res21;
72         unsigned short systest;         /* 0xBC */
73         unsigned short res22;
74         unsigned short bufstat;         /* 0xC0 */
75         unsigned short res23;
76 };
77
78 #define I2C_IP_CLK                      48000000
79 #define I2C_INTERNAL_SAMPLING_CLK       12000000
80
81 #endif /* _I2C_H_ */