cachepc-linux

Fork of AMDESE/linux with modifications for CachePC side-channel attack
git clone https://git.sinitax.com/sinitax/cachepc-linux
Log | Files | Refs | README | LICENSE | sfeed.txt

xtlv.h (707B)


      1// SPDX-License-Identifier: ISC
      2/*
      3 * Copyright (c) 2019 Broadcom
      4 */
      5#ifndef __BRCMF_XTLV_H
      6#define __BRCMF_XTLV_H
      7
      8#include <linux/types.h>
      9#include <linux/bits.h>
     10
     11/* bcm type(id), length, value with w/16 bit id/len. The structure below
     12 * is nominal, and is used to support variable length id and type. See
     13 * xtlv options below.
     14 */
     15struct brcmf_xtlv {
     16	u16 id;
     17	u16 len;
     18	u8 data[];
     19};
     20
     21enum brcmf_xtlv_option {
     22	BRCMF_XTLV_OPTION_ALIGN32 = BIT(0),
     23	BRCMF_XTLV_OPTION_IDU8 = BIT(1),
     24	BRCMF_XTLV_OPTION_LENU8 = BIT(2),
     25};
     26
     27int brcmf_xtlv_data_size(int dlen, u16 opts);
     28void brcmf_xtlv_pack_header(struct brcmf_xtlv *xtlv, u16 id, u16 len,
     29			    const u8 *data, u16 opts);
     30
     31#endif /* __BRCMF_XTLV_H */