2 * i2sbus driver -- bus register definitions
4 * Copyright 2006 Johannes Berg <johannes@sipsolutions.net>
6 * GPL v2, can be found in COPYING.
8 #ifndef __I2SBUS_CONTROLREGS_H
9 #define __I2SBUS_CONTROLREGS_H
11 /* i2s control registers, at least what we know about them */
13 #define __PAD(m,n) u8 __pad##m[n]
14 #define _PAD(line, n) __PAD(line, n)
15 #define PAD(n) _PAD(__LINE__, (n))
16 struct i2s_control_regs {
18 __le32 fcr0; /* 0x38 (unknown) */
19 __le32 cell_control; /* 0x3c (fcr1) */
20 __le32 fcr2; /* 0x40 (unknown) */
21 __le32 fcr3; /* 0x44 (fcr3) */
22 __le32 clock_control; /* 0x48 (unknown) */
24 /* total size: 0x50 bytes */
25 } __attribute__((__packed__));
27 #define CTRL_CLOCK_CELL_0_ENABLE (1<<10)
28 #define CTRL_CLOCK_CLOCK_0_ENABLE (1<<12)
29 #define CTRL_CLOCK_SWRESET_0 (1<<11)
30 #define CTRL_CLOCK_INTF_0_ENABLE (1<<13)
32 #define CTRL_CLOCK_CELL_1_ENABLE (1<<17)
33 #define CTRL_CLOCK_CLOCK_1_ENABLE (1<<18)
34 #define CTRL_CLOCK_SWRESET_1 (1<<19)
35 #define CTRL_CLOCK_INTF_1_ENABLE (1<<20)
37 #endif /* __I2SBUS_CONTROLREGS_H */