Lines Matching refs:tformat
180 * @tformat: tag format information
185 static inline int cxgb3i_is_ddp_tag(struct cxgb3i_tag_format *tformat, u32 tag)
187 return !(tag & (1 << (tformat->rsvd_bits + tformat->rsvd_shift - 1)));
192 * @tformat: tag format information
197 static inline int cxgb3i_sw_tag_usable(struct cxgb3i_tag_format *tformat,
200 sw_tag >>= (32 - tformat->rsvd_bits);
206 * @tformat: tag format information
211 static inline u32 cxgb3i_set_non_ddp_tag(struct cxgb3i_tag_format *tformat,
214 unsigned char shift = tformat->rsvd_bits + tformat->rsvd_shift - 1;
228 * @tformat: tag format information
231 static inline u32 cxgb3i_ddp_tag_base(struct cxgb3i_tag_format *tformat,
234 u32 mask = (1 << tformat->rsvd_shift) - 1;
238 u32 v2 = sw_tag >> tformat->rsvd_shift;
240 v2 <<= tformat->rsvd_shift + tformat->rsvd_bits;
248 * @tformat: tag format information
253 static inline u32 cxgb3i_tag_rsvd_bits(struct cxgb3i_tag_format *tformat,
256 if (cxgb3i_is_ddp_tag(tformat, tag))
257 return (tag >> tformat->rsvd_shift) & tformat->rsvd_mask;
263 * @tformat: tag format information
268 static inline u32 cxgb3i_tag_nonrsvd_bits(struct cxgb3i_tag_format *tformat,
271 unsigned char shift = tformat->rsvd_bits + tformat->rsvd_shift - 1;
274 if (cxgb3i_is_ddp_tag(tformat, tag)) {
275 v1 = tag & ((1 << tformat->rsvd_shift) - 1);
276 v2 = (tag >> (shift + 1)) << tformat->rsvd_shift;