190 // 31:29 - HS Master address (I2C only) |
190 // 31:29 - HS Master address (I2C only) |
191 // 28 - HS address valid bit |
191 // 28 - HS address valid bit |
192 // 27:23 - Reserved |
192 // 27:23 - Reserved |
193 // 22:20 - Bus type |
193 // 22:20 - Bus type |
194 // 19:15 - Channel number |
194 // 19:15 - Channel number |
195 // 14:10 - Transaction speed // For use with SET_TRANS_SPEED, GET_TRANS_SPEED - Deprecated |
195 // 14:10 - Transaction speed |
196 // 9:0 - Slave address |
196 // 9:0 - Slave address |
197 #define HS_MASTER_ADDR_SHIFT 29 |
197 #define HS_MASTER_ADDR_SHIFT 29 |
198 #define HS_MASTER_ADDR_MASK 0x7 |
198 #define HS_MASTER_ADDR_MASK 0x7 |
199 #define HS_ADDR_VALID_SHIFT 28 |
199 #define HS_ADDR_VALID_SHIFT 28 |
200 #define HS_ADDR_VALID_MASK 0x1 |
200 #define HS_ADDR_VALID_MASK 0x1 |
201 #define BUS_TYPE_SHIFT 20 |
201 #define BUS_TYPE_SHIFT 20 |
202 #define BUS_TYPE_MASK 0x7 |
202 #define BUS_TYPE_MASK 0x7 |
203 #define CHANNEL_NO_SHIFT 15 |
203 #define CHANNEL_NO_SHIFT 15 |
204 #define CHANNEL_NO_MASK 0x1F |
204 #define CHANNEL_NO_MASK 0x1F |
205 #define TRANS_SPEED_SHIFT 10 // For use with SET_TRANS_SPEED, GET_TRANS_SPEED - Deprecated |
205 #define TRANS_SPEED_SHIFT 10 |
206 #define TRANS_SPEED_MASK 0x1F // For use with SET_TRANS_SPEED, GET_TRANS_SPEED - Deprecated |
206 #define TRANS_SPEED_MASK 0x1F |
207 #define SLAVE_ADDR_SHIFT 0 |
207 #define SLAVE_ADDR_SHIFT 0 |
208 #define SLAVE_ADDR_MASK 0x3FF |
208 #define SLAVE_ADDR_MASK 0x3FF |
209 |
209 |
210 // The SET_CONF_FIELD and GET_CONF_FIELD are for internal use, only. |
210 // The SET_CONF_FIELD and GET_CONF_FIELD are for internal use, only. |
211 // They are to support the set of macros below which access particular fields of the Bus realisation configuration |
211 // They are to support the set of macros below which access particular fields of the Bus realisation configuration |
260 Macro to set the Channel number of a Bus realisation configuration |
260 Macro to set the Channel number of a Bus realisation configuration |
261 */ |
261 */ |
262 #define SET_CHAN_NUM(aBusId,aChanNum) SET_CONF_FIELD(aBusId,aChanNum,CHANNEL_NO_MASK,CHANNEL_NO_SHIFT) |
262 #define SET_CHAN_NUM(aBusId,aChanNum) SET_CONF_FIELD(aBusId,aChanNum,CHANNEL_NO_MASK,CHANNEL_NO_SHIFT) |
263 /** |
263 /** |
264 @publishedPartner |
264 @publishedPartner |
265 @deprecated |
265 @prototype 9.6 |
266 Macro to set the Transaction speed of a Bus realisation configuration |
266 Macro to set the Transaction speed of a Bus realisation configuration |
267 */ |
267 */ |
268 #define SET_TRANS_SPEED(aBusId,aTransSpeed) SET_CONF_FIELD(aBusId,aTransSpeed,TRANS_SPEED_MASK,TRANS_SPEED_SHIFT) |
268 #define SET_TRANS_SPEED(aBusId,aTransSpeed) SET_CONF_FIELD(aBusId,aTransSpeed,TRANS_SPEED_MASK,TRANS_SPEED_SHIFT) |
269 /** |
269 /** |
270 @publishedPartner |
270 @publishedPartner |
271 @deprecated |
271 @prototype 9.6 |
272 Macro to get the Transaction speed of a Bus realisation configuration |
272 Macro to get the Transaction speed of a Bus realisation configuration |
273 */ |
273 */ |
274 #define GET_TRANS_SPEED(aBusId) GET_CONF_FIELD(aBusId,TRANS_SPEED_MASK,TRANS_SPEED_SHIFT) |
274 #define GET_TRANS_SPEED(aBusId) GET_CONF_FIELD(aBusId,TRANS_SPEED_MASK,TRANS_SPEED_SHIFT) |
275 /** |
275 /** |
276 @publishedPartner |
276 @publishedPartner |
419 |
419 |
420 //default constuctor. |
420 //default constuctor. |
421 inline TIicBusTransaction(); |
421 inline TIicBusTransaction(); |
422 |
422 |
423 // the client interface for creating half duplex transactions |
423 // the client interface for creating half duplex transactions |
424 // The parameter aPriority is required to be at least zero and less than KNumTrancPriorities. |
|
425 inline TIicBusTransaction(TDes8* aHeader, TIicBusTransfer* aHdTrans, TInt aPriority=0); |
424 inline TIicBusTransaction(TDes8* aHeader, TIicBusTransfer* aHdTrans, TInt aPriority=0); |
426 inline ~TIicBusTransaction(); |
425 inline ~TIicBusTransaction(); |
427 inline TInt SetHalfDuplexTrans(TDes8* aHeader, TIicBusTransfer* aHdTrans); |
426 inline TInt SetHalfDuplexTrans(TDes8* aHeader, TIicBusTransfer* aHdTrans); |
428 |
427 |
429 // The client interface for setting full duplex transaction: the API checks that it is possible to have the 2 transactions done in parallel. |
428 // The client interface for setting full duplex transaction: the API checks that it is possible to have the 2 transactions done in parallel. |