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

Commit de5ea851 authored by Christophe Ricard's avatar Christophe Ricard Committed by Samuel Ortiz
Browse files

nfc: nci: Fix nci_core_conn_close



nci_core_conn_close was not retrieving a conn_info using the correct
connection id.

Signed-off-by: default avatarChristophe Ricard <christophe-h.ricard@st.com>
Signed-off-by: default avatarSamuel Ortiz <sameo@linux.intel.com>
parent 18836029
Loading
Loading
Loading
Loading
+1 −0
Original line number Original line Diff line number Diff line
@@ -646,6 +646,7 @@ static void nci_core_conn_close_req(struct nci_dev *ndev, unsigned long opt)


int nci_core_conn_close(struct nci_dev *ndev, u8 conn_id)
int nci_core_conn_close(struct nci_dev *ndev, u8 conn_id)
{
{
	ndev->cur_conn_id = conn_id;
	return __nci_request(ndev, nci_core_conn_close_req, conn_id,
	return __nci_request(ndev, nci_core_conn_close_req, conn_id,
			     msecs_to_jiffies(NCI_CMD_TIMEOUT));
			     msecs_to_jiffies(NCI_CMD_TIMEOUT));
}
}
+2 −1
Original line number Original line Diff line number Diff line
@@ -271,7 +271,8 @@ static void nci_core_conn_close_rsp_packet(struct nci_dev *ndev,


	pr_debug("status 0x%x\n", status);
	pr_debug("status 0x%x\n", status);
	if (status == NCI_STATUS_OK) {
	if (status == NCI_STATUS_OK) {
		conn_info = nci_get_conn_info_by_conn_id(ndev, ndev->cur_id);
		conn_info = nci_get_conn_info_by_conn_id(ndev,
							 ndev->cur_conn_id);
		if (conn_info) {
		if (conn_info) {
			list_del(&conn_info->list);
			list_del(&conn_info->list);
			devm_kfree(&ndev->nfc_dev->dev, conn_info);
			devm_kfree(&ndev->nfc_dev->dev, conn_info);