Lines Matching refs:tlv
26 * <--------------------------- tlv->len -------------------------->
29 static inline struct rocker_tlv *rocker_tlv_next(const struct rocker_tlv *tlv,
32 int totlen = ROCKER_TLV_ALIGN(tlv->len);
35 return (struct rocker_tlv *) ((char *) tlv + totlen);
38 static inline int rocker_tlv_ok(const struct rocker_tlv *tlv, int remaining)
41 tlv->len >= ROCKER_TLV_HDRLEN &&
42 tlv->len <= remaining;
50 #define rocker_tlv_for_each_nested(pos, tlv, rem) \
51 rocker_tlv_for_each(pos, rocker_tlv_data(tlv), \
52 rocker_tlv_len(tlv), rem)
69 static inline int rocker_tlv_type(const struct rocker_tlv *tlv)
71 return tlv->type;
74 static inline void *rocker_tlv_data(const struct rocker_tlv *tlv)
76 return (char *) tlv + ROCKER_TLV_HDRLEN;
79 static inline int rocker_tlv_len(const struct rocker_tlv *tlv)
81 return tlv->len - ROCKER_TLV_HDRLEN;
84 static inline u8 rocker_tlv_get_u8(const struct rocker_tlv *tlv)
86 return *(u8 *) rocker_tlv_data(tlv);
89 static inline u16 rocker_tlv_get_u16(const struct rocker_tlv *tlv)
91 return *(u16 *) rocker_tlv_data(tlv);
94 static inline __be16 rocker_tlv_get_be16(const struct rocker_tlv *tlv)
96 return *(__be16 *) rocker_tlv_data(tlv);
99 static inline u32 rocker_tlv_get_u32(const struct rocker_tlv *tlv)
101 return *(u32 *) rocker_tlv_data(tlv);
104 static inline u64 rocker_tlv_get_u64(const struct rocker_tlv *tlv)
106 return *(u64 *) rocker_tlv_data(tlv);
114 const struct rocker_tlv *tlv)
116 rocker_tlv_parse(tb, maxtype, rocker_tlv_data(tlv),
117 rocker_tlv_len(tlv));