diff options
author | Tomas Winkler <tomas.winkler@intel.com> | 2015-05-07 15:54:04 +0300 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2015-05-24 11:15:54 -0700 |
commit | be9b720a0ccba096d669bc86634f900b82b9bf71 (patch) | |
tree | 56218e7c1cec0f63c072d95ddbfaf5b63160e1b7 /drivers/nfc/mei_phy.h | |
parent | 007d64eb2232b91aa86b51abc1742936807e0bd4 (diff) | |
download | blackbird-op-linux-be9b720a0ccba096d669bc86634f900b82b9bf71.tar.gz blackbird-op-linux-be9b720a0ccba096d669bc86634f900b82b9bf71.zip |
NFC: mei_phy: move all nfc logic from mei driver to nfc
move nfc logic to mei_phy module, we prefer as much as
possible not to deal with a particualr client protocol
in the mei generic infrasutcutre
Cc: Samuel Ortiz <sameo@linux.intel.com>
Signed-off-by: Tomas Winkler <tomas.winkler@intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'drivers/nfc/mei_phy.h')
-rw-r--r-- | drivers/nfc/mei_phy.h | 35 |
1 files changed, 27 insertions, 8 deletions
diff --git a/drivers/nfc/mei_phy.h b/drivers/nfc/mei_phy.h index 06608c28ff14..a51f8f2685cc 100644 --- a/drivers/nfc/mei_phy.h +++ b/drivers/nfc/mei_phy.h @@ -10,23 +10,42 @@ #define MEI_NFC_HEADER_SIZE 10 #define MEI_NFC_MAX_HCI_PAYLOAD 300 +/** + * struct nfc_mei_phy + * + * @device: mei device + * @hdev: nfc hci device + + * @send_wq: send completion wait queue + * @fw_ivn: NFC Interface Version Number + * @vendor_id: NFC manufacturer ID + * @radio_type: NFC radio type + * @reserved: reserved for alignment + * @req_id: message counter + * @recv_req_id: reception message counter + * @powered: the device is in powered state + * @hard_fault: < 0 if hardware error occurred + * and prevents normal operation. + */ struct nfc_mei_phy { struct mei_cl_device *device; struct nfc_hci_dev *hdev; - int powered; + wait_queue_head_t send_wq; + u8 fw_ivn; + u8 vendor_id; + u8 radio_type; + u8 reserved; + + u16 req_id; + u16 recv_req_id; - int hard_fault; /* - * < 0 if hardware error occured - * and prevents normal operation. - */ + int powered; + int hard_fault; }; extern struct nfc_phy_ops mei_phy_ops; -int nfc_mei_phy_enable(void *phy_id); -void nfc_mei_phy_disable(void *phy_id); -void nfc_mei_event_cb(struct mei_cl_device *device, u32 events, void *context); struct nfc_mei_phy *nfc_mei_phy_alloc(struct mei_cl_device *device); void nfc_mei_phy_free(struct nfc_mei_phy *phy); |