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

mei_phy.h (1253B)


      1/* SPDX-License-Identifier: GPL-2.0 */
      2#ifndef __LOCAL_MEI_PHY_H_
      3#define __LOCAL_MEI_PHY_H_
      4
      5#include <linux/mei_cl_bus.h>
      6#include <net/nfc/hci.h>
      7#include <linux/uuid.h>
      8
      9#define MEI_NFC_UUID UUID_LE(0x0bb17a78, 0x2a8e, 0x4c50, \
     10		0x94, 0xd4, 0x50, 0x26, 0x67, 0x23, 0x77, 0x5c)
     11#define MEI_NFC_HEADER_SIZE 10
     12#define MEI_NFC_MAX_HCI_PAYLOAD 300
     13
     14/**
     15 * struct nfc_mei_phy
     16 *
     17 * @cldev: mei client device
     18 * @hdev:   nfc hci device
     19
     20 * @send_wq: send completion wait queue
     21 * @fw_ivn: NFC Interface Version Number
     22 * @vendor_id: NFC manufacturer ID
     23 * @radio_type: NFC radio type
     24 * @reserved: reserved for alignment
     25 * @req_id:  message counter
     26 * @recv_req_id: reception message counter
     27 * @powered: the device is in powered state
     28 * @hard_fault: < 0 if hardware error occurred
     29 *    and prevents normal operation.
     30 */
     31struct nfc_mei_phy {
     32	struct mei_cl_device *cldev;
     33	struct nfc_hci_dev *hdev;
     34
     35	wait_queue_head_t send_wq;
     36	u8 fw_ivn;
     37	u8 vendor_id;
     38	u8 radio_type;
     39	u8 reserved;
     40
     41	u16 req_id;
     42	u16 recv_req_id;
     43
     44	int powered;
     45	int hard_fault;
     46};
     47
     48extern const struct nfc_phy_ops mei_phy_ops;
     49
     50struct nfc_mei_phy *nfc_mei_phy_alloc(struct mei_cl_device *device);
     51void nfc_mei_phy_free(struct nfc_mei_phy *phy);
     52
     53#endif /* __LOCAL_MEI_PHY_H_ */