xref: /linux/drivers/nfc/mei_phy.h (revision c4ee0af3fa0dc65f690fc908f02b8355f9576ea0)
1 #ifndef __LOCAL_MEI_PHY_H_
2 #define __LOCAL_MEI_PHY_H_
3 
4 #include <linux/mei_cl_bus.h>
5 #include <net/nfc/hci.h>
6 
7 #define MEI_NFC_HEADER_SIZE 10
8 #define MEI_NFC_MAX_HCI_PAYLOAD 300
9 
10 struct nfc_mei_phy {
11 	struct mei_cl_device *device;
12 	struct nfc_hci_dev *hdev;
13 
14 	int powered;
15 
16 	int hard_fault;		/*
17 				 * < 0 if hardware error occured
18 				 * and prevents normal operation.
19 				 */
20 };
21 
22 extern struct nfc_phy_ops mei_phy_ops;
23 
24 int nfc_mei_phy_enable(void *phy_id);
25 void nfc_mei_phy_disable(void *phy_id);
26 void nfc_mei_event_cb(struct mei_cl_device *device, u32 events, void *context);
27 struct nfc_mei_phy *nfc_mei_phy_alloc(struct mei_cl_device *device);
28 void nfc_mei_phy_free(struct nfc_mei_phy *phy);
29 
30 #endif /* __LOCAL_MEI_PHY_H_ */
31