NFC: nci: Move NFCEE discovery logic
NFCEE_DISCOVER_CMD is a specified NCI command used to discover NFCEE IDs. Move nci_nfcee_discover() call to nci_discover_se() in order to guarantee: - NFCEE_DISCOVER_CMD run when the NCI state machine is initialized - NFCEE_DISCOVER_CMD is not run in case there is not discover_se hook defined by a NFC device driver. Signed-off-by: Christophe Ricard <christophe-h.ricard@st.com> Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
This commit is contained in:
parent
15d4a8da0e
commit
fa00e8fed4
|
@ -499,10 +499,6 @@ static int st21nfcb_hci_network_init(struct nci_dev *ndev)
|
|||
struct nci_conn_info *conn_info;
|
||||
int r, dev_num;
|
||||
|
||||
r = nci_nfcee_discover(ndev, NCI_NFCEE_DISCOVERY_ACTION_ENABLE);
|
||||
if (r != NCI_STATUS_OK)
|
||||
goto exit;
|
||||
|
||||
dest_params =
|
||||
kzalloc(sizeof(struct core_conn_create_dest_spec_params) +
|
||||
sizeof(struct dest_spec_params), GFP_KERNEL);
|
||||
|
|
|
@ -880,10 +880,16 @@ static int nci_disable_se(struct nfc_dev *nfc_dev, u32 se_idx)
|
|||
|
||||
static int nci_discover_se(struct nfc_dev *nfc_dev)
|
||||
{
|
||||
int r;
|
||||
struct nci_dev *ndev = nfc_get_drvdata(nfc_dev);
|
||||
|
||||
if (ndev->ops->discover_se)
|
||||
if (ndev->ops->discover_se) {
|
||||
r = nci_nfcee_discover(ndev, NCI_NFCEE_DISCOVERY_ACTION_ENABLE);
|
||||
if (r != NCI_STATUS_OK)
|
||||
return -EPROTO;
|
||||
|
||||
return ndev->ops->discover_se(ndev);
|
||||
}
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue