summaryrefslogtreecommitdiffstats
path: root/drivers/nfc
diff options
context:
space:
mode:
authorWaldemar Rymarkiewicz <waldemar.rymarkiewicz@tieto.com>2012-12-10 14:42:59 +0100
committerSamuel Ortiz <sameo@linux.intel.com>2013-01-10 00:51:45 +0100
commit0c33d2626d651f3f52d6a1e8b612e2830a4ab71f (patch)
treef950bfcd1558aca5df80702b2fc71d5b39796649 /drivers/nfc
parenta5798094e927847f0d503b756a997175d7ce01ec (diff)
downloadlinux-0c33d2626d651f3f52d6a1e8b612e2830a4ab71f.tar.bz2
NFC: pn533: Cleanup pn533_cmd_complete_t
'params' arg in pn533_cmd_complete_t definition has been deprecated and currently is not in use (resp skb is pass in arg ptr), so remove it. Also 'params_len' arg is used as a transfer status indicator, so simply reword it appropriately. Signed-off-by: Waldemar Rymarkiewicz <waldemar.rymarkiewicz@tieto.com> Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
Diffstat (limited to 'drivers/nfc')
-rw-r--r--drivers/nfc/pn533.c29
1 files changed, 7 insertions, 22 deletions
diff --git a/drivers/nfc/pn533.c b/drivers/nfc/pn533.c
index 82867a036ccc..db13cd798149 100644
--- a/drivers/nfc/pn533.c
+++ b/drivers/nfc/pn533.c
@@ -109,8 +109,6 @@ MODULE_DEVICE_TABLE(usb, pn533_table);
/* PN533 Commands */
#define PN533_FRAME_CMD(f) (f->data[1])
-#define PN533_FRAME_CMD_PARAMS_PTR(f) (&f->data[2])
-#define PN533_FRAME_CMD_PARAMS_LEN(f) (f->datalen - 2)
#define PN533_CMD_GET_FIRMWARE_VERSION 0x02
#define PN533_CMD_RF_CONFIGURATION 0x32
@@ -135,8 +133,7 @@ MODULE_DEVICE_TABLE(usb, pn533_table);
struct pn533;
-typedef int (*pn533_cmd_complete_t) (struct pn533 *dev, void *arg,
- u8 *params, int params_len);
+typedef int (*pn533_cmd_complete_t) (struct pn533 *dev, void *arg, int status);
typedef int (*pn533_send_async_complete_t) (struct pn533 *dev, void *arg,
struct sk_buff *resp);
@@ -458,19 +455,9 @@ static bool pn533_rx_frame_is_cmd_response(struct pn533_frame *frame, u8 cmd)
static void pn533_wq_cmd_complete(struct work_struct *work)
{
struct pn533 *dev = container_of(work, struct pn533, cmd_complete_work);
- struct pn533_frame *in_frame;
int rc;
- in_frame = dev->wq_in_frame;
-
- if (dev->wq_in_error)
- rc = dev->cmd_complete(dev, dev->cmd_complete_arg, NULL,
- dev->wq_in_error);
- else
- rc = dev->cmd_complete(dev, dev->cmd_complete_arg,
- PN533_FRAME_CMD_PARAMS_PTR(in_frame),
- PN533_FRAME_CMD_PARAMS_LEN(in_frame));
-
+ rc = dev->cmd_complete(dev, dev->cmd_complete_arg, dev->wq_in_error);
if (rc != -EINPROGRESS)
queue_work(dev->wq, &dev->cmd_work);
}
@@ -664,8 +651,7 @@ struct pn533_send_async_complete_arg {
struct sk_buff *req;
};
-static int pn533_send_async_complete(struct pn533 *dev, void *_arg, u8 *params,
- int params_len)
+static int pn533_send_async_complete(struct pn533 *dev, void *_arg, int status)
{
struct pn533_send_async_complete_arg *arg = _arg;
@@ -677,12 +663,12 @@ static int pn533_send_async_complete(struct pn533 *dev, void *_arg, u8 *params,
dev_kfree_skb(req);
- if (params_len < 0) {
+ if (status < 0) {
arg->complete_cb(dev, arg->complete_cb_context,
- ERR_PTR(params_len));
- rc = params_len;
+ ERR_PTR(status));
dev_kfree_skb(resp);
- goto out;
+ kfree(arg);
+ return status;
}
skb_put(resp, PN533_FRAME_SIZE(frame));
@@ -691,7 +677,6 @@ static int pn533_send_async_complete(struct pn533 *dev, void *_arg, u8 *params,
rc = arg->complete_cb(dev, arg->complete_cb_context, resp);
-out:
kfree(arg);
return rc;
}