12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667 |
- /* Copyright (c) 2012, The Linux Foundation. All rights reserved.
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License version 2 and
- * only version 2 as published by the Free Software Foundation.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- */
- #ifndef _QMI_ENCDEC_PRIV_H_
- #define _QMI_ENCDEC_PRIV_H_
- #include <linux/types.h>
- #include <linux/errno.h>
- #include <linux/mm.h>
- #include <linux/list.h>
- #include <linux/socket.h>
- #include <linux/gfp.h>
- #include <linux/qmi_encdec.h>
- #define QMI_ENCDEC_ENCODE_TLV(type, length, p_dst) do { \
- *p_dst++ = type; \
- *p_dst++ = ((uint8_t)((length) & 0xFF)); \
- *p_dst++ = ((uint8_t)(((length) >> 8) & 0xFF)); \
- } while (0)
- #define QMI_ENCDEC_DECODE_TLV(p_type, p_length, p_src) do { \
- *p_type = (uint8_t)*p_src++; \
- *p_length = (uint8_t)*p_src++; \
- *p_length |= ((uint8_t)*p_src) << 8; \
- } while (0)
- #define QMI_ENCDEC_ENCODE_N_BYTES(p_dst, p_src, size) \
- do { \
- memcpy(p_dst, p_src, size); \
- p_dst = (uint8_t *)p_dst + size; \
- p_src = (uint8_t *)p_src + size; \
- } while (0)
- #define QMI_ENCDEC_DECODE_N_BYTES(p_dst, p_src, size) \
- do { \
- memcpy(p_dst, p_src, size); \
- p_dst = (uint8_t *)p_dst + size; \
- p_src = (uint8_t *)p_src + size; \
- } while (0)
- #define UPDATE_ENCODE_VARIABLES(temp_si, buf_dst, \
- encoded_bytes, tlv_len, encode_tlv, rc) \
- do { \
- buf_dst = (uint8_t *)buf_dst + rc; \
- encoded_bytes += rc; \
- tlv_len += rc; \
- temp_si = temp_si + 1; \
- encode_tlv = 1; \
- } while (0)
- #define UPDATE_DECODE_VARIABLES(buf_src, decoded_bytes, rc) \
- do { \
- buf_src = (uint8_t *)buf_src + rc; \
- decoded_bytes += rc; \
- } while (0)
- #endif
|