/* * 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); }; #undef __BFP #endif