From: Mike Frysinger Date: Fri, 22 Oct 2010 05:11:21 +0000 (+0000) Subject: Blackfin: bfin_twi.h: start a common TWI header X-Git-Tag: v2.6.37-rc1~116^2~4 X-Git-Url: https://openfabrics.org/gitweb/?a=commitdiff_plain;h=61c16b5c7414b6d0511dc384e0ea994e250e6339;p=~emulex%2Finfiniband.git Blackfin: bfin_twi.h: start a common TWI header Start one place for TWI definitions. Signed-off-by: Mike Frysinger --- diff --git a/arch/blackfin/include/asm/bfin_twi.h b/arch/blackfin/include/asm/bfin_twi.h new file mode 100644 index 00000000000..cc155e14e55 --- /dev/null +++ b/arch/blackfin/include/asm/bfin_twi.h @@ -0,0 +1,43 @@ +/* + * bfin_twi.h - interface to Blackfin TWIs + * + * Copyright 2005-2010 Analog Devices Inc. + * + * Licensed under the GPL-2 or later. + */ + +#ifndef __ASM_BFIN_TWI_H__ +#define __ASM_BFIN_TWI_H__ + +#include + +/* + * All Blackfin system MMRs are padded to 32bits even if the register + * itself is only 16bits. So use a helper macro to streamline this. + */ +#define __BFP(m) u16 m; u16 __pad_##m + +/* + * bfin twi registers layout + */ +struct bfin_twi_regs { + __BFP(clkdiv); + __BFP(control); + __BFP(slave_ctl); + __BFP(slave_stat); + __BFP(slave_addr); + __BFP(master_ctl); + __BFP(master_stat); + __BFP(master_addr); + __BFP(int_stat); + __BFP(int_mask); + __BFP(fifo_ctl); + __BFP(fifo_stat); + u32 __pad[20]; + __BFP(xmt_data8); + __BFP(xmt_data16); + __BFP(rcv_data8); + __BFP(rcv_data16); +}; + +#endif