Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 0c49b699 authored by John W. Linville's avatar John W. Linville
Browse files


So says Samuel Ortiz <sameo@linux.intel.com>:

This is the first NFC pull request for the 3.7 merge window.

With this one we get:

- HCI and LLC layers separation. We now can support various LLC
  protocols for HCI drivers, SHDLC being one of them. This will be needed as
  we're planning to support raw HCI chipsets that do the SHDLC encapsulation
  in firmware. So for now we have an SHDLC and a NOP LLC layers.

- pn533 command queueing implementation. This simplifies the pn533 locking
  logic and fixes a kernel warning.

- NCI p2p initiator mode implementation.

- Replace custom workqueues with system ones, for HCI and LLCP.

- Raw pn544 driver removal, as scheduled on the features-removal.txt file.

- A few HCI, SHDLC and LLCP fixes.

Signed-off-by: default avatarJohn W. Linville <linville@tuxdriver.com>
parents 90e6274d 4c0ba9ac
Loading
Loading
Loading
Loading
+0 −12
Original line number Diff line number Diff line
@@ -516,18 +516,6 @@ Who: Kees Cook <keescook@chromium.org>

----------------------------

What:	Removing the pn544 raw driver.
When:	3.6
Why:	With the introduction of the NFC HCI and SHDL kernel layers, pn544.c
	is being replaced by pn544_hci.c which is accessible through the netlink
	and socket NFC APIs. Moreover, pn544.c is outdated and does not seem to
	work properly with the latest Android stacks.
	Having 2 drivers for the same hardware is confusing and as such we
	should only keep the one following the kernel NFC APIs.
Who:	Samuel Ortiz <sameo@linux.intel.com>

----------------------------

What:	setitimer accepts user NULL pointer (value)
When:	3.6
Why:	setitimer is not returning -EFAULT if user pointer is NULL. This
+1 −0
Original line number Diff line number Diff line
@@ -4793,6 +4793,7 @@ M: Lauro Ramos Venancio <lauro.venancio@openbossa.org>
M:	Aloisio Almeida Jr <aloisio.almeida@openbossa.org>
M:	Samuel Ortiz <sameo@linux.intel.com>
L:	linux-wireless@vger.kernel.org
L:	linux-nfc@lists.01.org (moderated for non-subscribers)
S:	Maintained
F:	net/nfc/
F:	include/linux/nfc.h
+1 −13
Original line number Diff line number Diff line
@@ -5,21 +5,9 @@
menu "Near Field Communication (NFC) devices"
	depends on NFC

config PN544_NFC
	tristate "PN544 NFC driver"
	depends on I2C
	select CRC_CCITT
	default n
	---help---
	  Say yes if you want PN544 Near Field Communication driver.
	  This is for i2c connected version. If unsure, say N here.

	  To compile this driver as a module, choose m here. The module will
	  be called pn544.

config PN544_HCI_NFC
	tristate "HCI PN544 NFC driver"
	depends on I2C && NFC_SHDLC
	depends on I2C && NFC_HCI && NFC_SHDLC
	select CRC_CCITT
	default n
	---help---
+0 −1
Original line number Diff line number Diff line
@@ -2,7 +2,6 @@
# Makefile for nfc devices
#

obj-$(CONFIG_PN544_NFC)		+= pn544.o
obj-$(CONFIG_PN544_HCI_NFC)	+= pn544_hci.o
obj-$(CONFIG_NFC_PN533)		+= pn533.o
obj-$(CONFIG_NFC_WILINK)	+= nfcwilink.o
+3 −17
Original line number Diff line number Diff line
@@ -352,8 +352,6 @@ static long nfcwilink_receive(void *priv_data, struct sk_buff *skb)
	struct nfcwilink *drv = priv_data;
	int rc;

	nfc_dev_dbg(&drv->pdev->dev, "receive entry, len %d", skb->len);

	if (!skb)
		return -EFAULT;

@@ -362,6 +360,8 @@ static long nfcwilink_receive(void *priv_data, struct sk_buff *skb)
		return -EFAULT;
	}

	nfc_dev_dbg(&drv->pdev->dev, "receive entry, len %d", skb->len);

	/* strip the ST header
	(apart for the chnl byte, which is not received in the hdr) */
	skb_pull(skb, (NFCWILINK_HDR_LEN-1));
@@ -604,21 +604,7 @@ static struct platform_driver nfcwilink_driver = {
	},
};

/* ------- Module Init/Exit interfaces ------ */
static int __init nfcwilink_init(void)
{
	printk(KERN_INFO "NFC Driver for TI WiLink");

	return platform_driver_register(&nfcwilink_driver);
}

static void __exit nfcwilink_exit(void)
{
	platform_driver_unregister(&nfcwilink_driver);
}

module_init(nfcwilink_init);
module_exit(nfcwilink_exit);
module_platform_driver(nfcwilink_driver);

/* ------ Module Info ------ */

Loading