Lines Matching +full:value +full:- +full:start
1 /* SPDX-License-Identifier: GPL-2.0-or-later */
3 * drivers/net/ethernet/rocker/rocker_tlv.h - Rocker switch device driver
4 * Copyright (c) 2014-2016 Jiri Pirko <[email protected]>
18 (((len) + ROCKER_TLV_ALIGNTO - 1) & ~(ROCKER_TLV_ALIGNTO - 1))
21 /* <------- ROCKER_TLV_HDRLEN -------> <--- ROCKER_TLV_ALIGN(payload) --->
22 * +-----------------------------+- - -+- - - - - - - - - - - - - - -+- - -+
25 * +-----------------------------+- - -+- - - - - - - - - - - - - - -+- - -+
26 * <--------------------------- tlv->len -------------------------->
32 int totlen = ROCKER_TLV_ALIGN(tlv->len); in rocker_tlv_next()
34 *remaining -= totlen; in rocker_tlv_next()
41 tlv->len >= ROCKER_TLV_HDRLEN && in rocker_tlv_ok()
42 tlv->len <= remaining; in rocker_tlv_ok()
66 return rocker_tlv_total_size(payload) - rocker_tlv_attr_size(payload); in rocker_tlv_padlen()
71 return tlv->type; in rocker_tlv_type()
81 return tlv->len - ROCKER_TLV_HDRLEN; in rocker_tlv_len()
124 rocker_tlv_parse(tb, maxtype, desc_info->data, in rocker_tlv_parse_desc()
125 desc_info->desc->tlv_size); in rocker_tlv_parse_desc()
131 return (struct rocker_tlv *) ((char *) desc_info->data + in rocker_tlv_start()
132 desc_info->tlv_size); in rocker_tlv_start()
139 rocker_tlv_put_u8(struct rocker_desc_info *desc_info, int attrtype, u8 value) in rocker_tlv_put_u8() argument
141 u8 tmp = value; /* work around GCC PR81715 */ in rocker_tlv_put_u8()
147 rocker_tlv_put_u16(struct rocker_desc_info *desc_info, int attrtype, u16 value) in rocker_tlv_put_u16() argument
149 u16 tmp = value; in rocker_tlv_put_u16()
155 rocker_tlv_put_be16(struct rocker_desc_info *desc_info, int attrtype, __be16 value) in rocker_tlv_put_be16() argument
157 __be16 tmp = value; in rocker_tlv_put_be16()
163 rocker_tlv_put_u32(struct rocker_desc_info *desc_info, int attrtype, u32 value) in rocker_tlv_put_u32() argument
165 u32 tmp = value; in rocker_tlv_put_u32()
171 rocker_tlv_put_be32(struct rocker_desc_info *desc_info, int attrtype, __be32 value) in rocker_tlv_put_be32() argument
173 __be32 tmp = value; in rocker_tlv_put_be32()
179 rocker_tlv_put_u64(struct rocker_desc_info *desc_info, int attrtype, u64 value) in rocker_tlv_put_u64() argument
181 u64 tmp = value; in rocker_tlv_put_u64()
189 struct rocker_tlv *start = rocker_tlv_start(desc_info); in rocker_tlv_nest_start() local
194 return start; in rocker_tlv_nest_start()
198 struct rocker_tlv *start) in rocker_tlv_nest_end() argument
200 start->len = (char *) rocker_tlv_start(desc_info) - (char *) start; in rocker_tlv_nest_end()
204 const struct rocker_tlv *start) in rocker_tlv_nest_cancel() argument
206 desc_info->tlv_size = (const char *) start - desc_info->data; in rocker_tlv_nest_cancel()