diff options
author | Thierry Escande <thierry.escande@linux.intel.com> | 2014-01-02 05:58:12 -0500 |
---|---|---|
committer | Samuel Ortiz <sameo@linux.intel.com> | 2014-01-03 21:35:34 -0500 |
commit | 444fb98eed98f7292a83f9bf123d1c78f171327e (patch) | |
tree | 9aa011b169ca27e03fddaf7913ceaf7d8f97e167 /include/net | |
parent | ea87a5efa9efa84cd48fbf7a969d951b32c9e5e4 (diff) |
NFC: digital: Add a note about asynchronous functions
This explains how and why the timeout parameter must be handled by the
driver implementation.
Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
Diffstat (limited to 'include/net')
-rw-r--r-- | include/net/nfc/digital.h | 10 |
1 files changed, 10 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, |