aboutsummaryrefslogtreecommitdiff
path: root/arch/arm/include/asm/arch-lpc32xx/i2c.h
blob: 5301d4c1b0f6969d0079a07990983d33e7b0a3c6 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
#ifndef _LPC32XX_I2C_H
#define _LPC32XX_I2C_H

#include <common.h>
#include <asm/types.h>

/* i2c register set */
struct lpc32xx_i2c_base {
	union {
		u32 rx;
		u32 tx;
	};
	u32 stat;
	u32 ctrl;
	u32 clk_hi;
	u32 clk_lo;
	u32 adr;
	u32 rxfl;
	u32 txfl;
	u32 rxb;
	u32 txb;
	u32 stx;
	u32 stxfl;
};

#ifdef CONFIG_DM_I2C
enum {
	I2C_0, I2C_1, I2C_2,
};

struct lpc32xx_i2c_dev {
	struct lpc32xx_i2c_base *base;
	int index;
	uint speed;
};
#endif /* CONFIG_DM_I2C */
#endif /* _LPC32XX_I2C_H */