diff options
| author | John W. Linville <linville@tuxdriver.com> | 2014-01-13 14:36:42 -0500 |
|---|---|---|
| committer | John W. Linville <linville@tuxdriver.com> | 2014-01-13 14:36:42 -0500 |
| commit | ec665facde820179d71d0f064e692f449df2b94f (patch) | |
| tree | 68725bffefc5c304756e7949dbdb09078790b5b3 /include/net | |
| parent | 1e2f9295f4c657500111514f92a3d3894d0e05b4 (diff) | |
| parent | bb55dc2ae4367b8f711d43a2f8668a6ed42c4fd3 (diff) | |
Merge tag 'nfc-next-3.14-1' of git://git.kernel.org/pub/scm/linux/kernel/git/sameo/nfc-next
Samuel Ortiz <sameo@linux.intel.com> says:
"This is the first NFC pull request for 3.14
It includes:
* A new NFC driver for Marvell's 8897, and a few NCI fixes and
improvements needed to support this chipset.
* An LLCP fix for how we were setting the default MIU on a p2p link. If
there is no explicit MIU extension announced at connection time, we
must use the default one and not the one announced at LLCP link
establishement time.
* A pn544 EEPROM config update. Some of the currently EEPROM configured
values are overwriting the firmware ones while other should not be set
by the driver itself.
* Some NFC digital stack fixes and improvements. Asynchronous functions
are better documented, RF technologies and CRC functions are set upon
PSL_REQ reception, and a few minor bugs are fixed.
* Minor and miscelaneous pn533, mei_phy and port100 fixes."
Signed-off-by: John W. Linville <linville@tuxdriver.com>
Diffstat (limited to 'include/net')
| -rw-r--r-- | include/net/nfc/digital.h | 10 | ||||
| -rw-r--r-- | include/net/nfc/nci_core.h | 2 |
2 files changed, 12 insertions, 0 deletions
diff --git a/include/net/nfc/digital.h b/include/net/nfc/digital.h index 36acecd5f06c..81af21e9bcd4 100644 --- a/include/net/nfc/digital.h +++ b/include/net/nfc/digital.h | |||
| @@ -122,6 +122,16 @@ typedef void (*nfc_digital_cmd_complete_t)(struct nfc_digital_dev *ddev, | |||
| 122 | * switch_rf to turn the radio on. A call to in|tg_configure_hw must turn | 122 | * switch_rf to turn the radio on. A call to in|tg_configure_hw must turn |
| 123 | * the device radio on. | 123 | * the device radio on. |
| 124 | * @abort_cmd: Discard the last sent command. | 124 | * @abort_cmd: Discard the last sent command. |
| 125 | * | ||
| 126 | * Notes: Asynchronous functions have a timeout parameter. It is the driver | ||
| 127 | * responsibility to call the digital stack back through the | ||
| 128 | * nfc_digital_cmd_complete_t callback when no RF respsonse has been | ||
| 129 | * received within the specified time (in milliseconds). In that case the | ||
| 130 | * driver must set the resp sk_buff to ERR_PTR(-ETIMEDOUT). | ||
| 131 | * Since the digital stack serializes commands to be sent, it's mandatory | ||
| 132 | * for the driver to handle the timeout correctly. Otherwise the stack | ||
| 133 | * would not be able to send new commands, waiting for the reply of the | ||
| 134 | * current one. | ||
| 125 | */ | 135 | */ |
| 126 | struct nfc_digital_ops { | 136 | struct nfc_digital_ops { |
| 127 | int (*in_configure_hw)(struct nfc_digital_dev *ddev, int type, | 137 | int (*in_configure_hw)(struct nfc_digital_dev *ddev, int type, |
diff --git a/include/net/nfc/nci_core.h b/include/net/nfc/nci_core.h index 6126f1f992b4..2b93b77b210c 100644 --- a/include/net/nfc/nci_core.h +++ b/include/net/nfc/nci_core.h | |||
| @@ -68,6 +68,7 @@ struct nci_ops { | |||
| 68 | int (*open)(struct nci_dev *ndev); | 68 | int (*open)(struct nci_dev *ndev); |
| 69 | int (*close)(struct nci_dev *ndev); | 69 | int (*close)(struct nci_dev *ndev); |
| 70 | int (*send)(struct nci_dev *ndev, struct sk_buff *skb); | 70 | int (*send)(struct nci_dev *ndev, struct sk_buff *skb); |
| 71 | int (*setup)(struct nci_dev *ndev); | ||
| 71 | }; | 72 | }; |
| 72 | 73 | ||
| 73 | #define NCI_MAX_SUPPORTED_RF_INTERFACES 4 | 74 | #define NCI_MAX_SUPPORTED_RF_INTERFACES 4 |
| @@ -154,6 +155,7 @@ void nci_free_device(struct nci_dev *ndev); | |||
| 154 | int nci_register_device(struct nci_dev *ndev); | 155 | int nci_register_device(struct nci_dev *ndev); |
| 155 | void nci_unregister_device(struct nci_dev *ndev); | 156 | void nci_unregister_device(struct nci_dev *ndev); |
| 156 | int nci_recv_frame(struct nci_dev *ndev, struct sk_buff *skb); | 157 | int nci_recv_frame(struct nci_dev *ndev, struct sk_buff *skb); |
| 158 | int nci_set_config(struct nci_dev *ndev, __u8 id, size_t len, __u8 *val); | ||
| 157 | 159 | ||
| 158 | static inline struct sk_buff *nci_skb_alloc(struct nci_dev *ndev, | 160 | static inline struct sk_buff *nci_skb_alloc(struct nci_dev *ndev, |
| 159 | unsigned int len, | 161 | unsigned int len, |
