stcontext         332 drivers/nfc/st95hf/core.c static int secondary_configuration_type4a(struct st95hf_context *stcontext)
stcontext         335 drivers/nfc/st95hf/core.c 	struct device *dev = &stcontext->nfcdev->dev;
stcontext         338 drivers/nfc/st95hf/core.c 	result = st95hf_send_recv_cmd(stcontext,
stcontext         349 drivers/nfc/st95hf/core.c 	result = st95hf_send_recv_cmd(stcontext,
stcontext         360 drivers/nfc/st95hf/core.c static int secondary_configuration_type4b(struct st95hf_context *stcontext)
stcontext         363 drivers/nfc/st95hf/core.c 	struct device *dev = &stcontext->nfcdev->dev;
stcontext         365 drivers/nfc/st95hf/core.c 	result = st95hf_send_recv_cmd(stcontext,
stcontext         376 drivers/nfc/st95hf/core.c static int st95hf_select_protocol(struct st95hf_context *stcontext, int type)
stcontext         381 drivers/nfc/st95hf/core.c 	dev = &stcontext->nfcdev->dev;
stcontext         385 drivers/nfc/st95hf/core.c 		stcontext->current_rf_tech = NFC_DIGITAL_RF_TECH_106A;
stcontext         386 drivers/nfc/st95hf/core.c 		result = st95hf_send_recv_cmd(stcontext,
stcontext         398 drivers/nfc/st95hf/core.c 		result = secondary_configuration_type4a(stcontext);
stcontext         406 drivers/nfc/st95hf/core.c 		stcontext->current_rf_tech = NFC_DIGITAL_RF_TECH_106B;
stcontext         407 drivers/nfc/st95hf/core.c 		result = st95hf_send_recv_cmd(stcontext,
stcontext         425 drivers/nfc/st95hf/core.c 		result = secondary_configuration_type4b(stcontext);
stcontext         433 drivers/nfc/st95hf/core.c 		stcontext->current_rf_tech = NFC_DIGITAL_RF_TECH_ISO15693;
stcontext         434 drivers/nfc/st95hf/core.c 		result = st95hf_send_recv_cmd(stcontext,
stcontext         604 drivers/nfc/st95hf/core.c static int st95hf_handle_wtx(struct st95hf_context *stcontext,
stcontext         611 drivers/nfc/st95hf/core.c 	struct nfc_digital_dev *nfcddev = stcontext->ddev;
stcontext         612 drivers/nfc/st95hf/core.c 	struct device *dev = &stcontext->nfcdev->dev;
stcontext         615 drivers/nfc/st95hf/core.c 		result = iso14443_config_fdt(stcontext, wtx_val & 0x3f);
stcontext         626 drivers/nfc/st95hf/core.c 		result = st95hf_send_recv_cmd(stcontext,
stcontext         642 drivers/nfc/st95hf/core.c 	result = iso14443_config_fdt(stcontext, val_mm);
stcontext         650 drivers/nfc/st95hf/core.c static int st95hf_error_handling(struct st95hf_context *stcontext,
stcontext         656 drivers/nfc/st95hf/core.c 	struct device *dev = &stcontext->nfcdev->dev;
stcontext         668 drivers/nfc/st95hf/core.c 	switch (stcontext->current_rf_tech) {
stcontext         670 drivers/nfc/st95hf/core.c 		if (stcontext->sendrcv_trflag == TRFLAG_NFCA_STD_FRAME_CRC) {
stcontext         695 drivers/nfc/st95hf/core.c static int st95hf_response_handler(struct st95hf_context *stcontext,
stcontext         702 drivers/nfc/st95hf/core.c 	struct nfc_digital_dev *nfcddev = stcontext->ddev;
stcontext         703 drivers/nfc/st95hf/core.c 	struct device *dev = &stcontext->nfcdev->dev;
stcontext         706 drivers/nfc/st95hf/core.c 	cb_arg = &stcontext->complete_cb_arg;
stcontext         720 drivers/nfc/st95hf/core.c 			stcontext->fwi =
stcontext         723 drivers/nfc/st95hf/core.c 			stcontext->fwi =
stcontext         728 drivers/nfc/st95hf/core.c 		result = iso14443_config_fdt(stcontext, val_mm);
stcontext         738 drivers/nfc/st95hf/core.c 	switch (stcontext->current_rf_tech) {
stcontext         740 drivers/nfc/st95hf/core.c 		if (stcontext->sendrcv_trflag == TRFLAG_NFCA_STD_FRAME_CRC)
stcontext         756 drivers/nfc/st95hf/core.c 	struct st95hf_context *stcontext  =
stcontext         759 drivers/nfc/st95hf/core.c 	if (stcontext->spicontext.req_issync) {
stcontext         760 drivers/nfc/st95hf/core.c 		complete(&stcontext->spicontext.done);
stcontext         761 drivers/nfc/st95hf/core.c 		stcontext->spicontext.req_issync = false;
stcontext         775 drivers/nfc/st95hf/core.c 	struct st95hf_context *stcontext  =
stcontext         779 drivers/nfc/st95hf/core.c 	spidevice = &stcontext->spicontext.spidev->dev;
stcontext         794 drivers/nfc/st95hf/core.c 	if (!down_trylock(&stcontext->exchange_lock)) {
stcontext         795 drivers/nfc/st95hf/core.c 		up(&stcontext->exchange_lock);
stcontext         800 drivers/nfc/st95hf/core.c 	cb_arg = &stcontext->complete_cb_arg;
stcontext         803 drivers/nfc/st95hf/core.c 	mutex_lock(&stcontext->rm_lock);
stcontext         804 drivers/nfc/st95hf/core.c 	res_len = st95hf_spi_recv_response(&stcontext->spicontext,
stcontext         813 drivers/nfc/st95hf/core.c 	if (stcontext->nfcdev_free) {
stcontext         820 drivers/nfc/st95hf/core.c 		result = st95hf_handle_wtx(stcontext, true, skb_resp->data[3]);
stcontext         825 drivers/nfc/st95hf/core.c 		mutex_unlock(&stcontext->rm_lock);
stcontext         829 drivers/nfc/st95hf/core.c 	result = st95hf_error_handling(stcontext, skb_resp, res_len);
stcontext         833 drivers/nfc/st95hf/core.c 	result = st95hf_response_handler(stcontext, skb_resp, res_len);
stcontext         843 drivers/nfc/st95hf/core.c 		result = st95hf_handle_wtx(stcontext, false, 0);
stcontext         849 drivers/nfc/st95hf/core.c 	cb_arg->complete_cb(stcontext->ddev, cb_arg->cb_usrarg, skb_resp);
stcontext         852 drivers/nfc/st95hf/core.c 	up(&stcontext->exchange_lock);
stcontext         853 drivers/nfc/st95hf/core.c 	mutex_unlock(&stcontext->rm_lock);
stcontext         863 drivers/nfc/st95hf/core.c 	cb_arg->complete_cb(stcontext->ddev, cb_arg->cb_usrarg, skb_resp);
stcontext         865 drivers/nfc/st95hf/core.c 	up(&stcontext->exchange_lock);
stcontext         866 drivers/nfc/st95hf/core.c 	mutex_unlock(&stcontext->rm_lock);
stcontext         875 drivers/nfc/st95hf/core.c 	struct st95hf_context *stcontext = nfc_digital_get_drvdata(ddev);
stcontext         878 drivers/nfc/st95hf/core.c 		return st95hf_select_protocol(stcontext, param);
stcontext         883 drivers/nfc/st95hf/core.c 			stcontext->sendrcv_trflag = TRFLAG_NFCA_SHORT_FRAME;
stcontext         886 drivers/nfc/st95hf/core.c 			stcontext->sendrcv_trflag = TRFLAG_NFCA_STD_FRAME;
stcontext         891 drivers/nfc/st95hf/core.c 			stcontext->sendrcv_trflag = TRFLAG_NFCA_STD_FRAME_CRC;
stcontext         903 drivers/nfc/st95hf/core.c static int rf_off(struct st95hf_context *stcontext)
stcontext         908 drivers/nfc/st95hf/core.c 	dev = &stcontext->nfcdev->dev;
stcontext         910 drivers/nfc/st95hf/core.c 	rc = st95hf_send_recv_cmd(stcontext, CMD_FIELD_OFF, 0, NULL, true);
stcontext         923 drivers/nfc/st95hf/core.c 	struct st95hf_context *stcontext = nfc_digital_get_drvdata(ddev);
stcontext         934 drivers/nfc/st95hf/core.c 	switch (stcontext->current_rf_tech) {
stcontext         937 drivers/nfc/st95hf/core.c 		skb_put_u8(skb, stcontext->sendrcv_trflag);
stcontext         953 drivers/nfc/st95hf/core.c 	stcontext->complete_cb_arg.skb_resp = skb_resp;
stcontext         954 drivers/nfc/st95hf/core.c 	stcontext->complete_cb_arg.cb_usrarg = arg;
stcontext         955 drivers/nfc/st95hf/core.c 	stcontext->complete_cb_arg.complete_cb = cb;
stcontext         959 drivers/nfc/st95hf/core.c 		stcontext->complete_cb_arg.rats = true;
stcontext         966 drivers/nfc/st95hf/core.c 	rc = down_killable(&stcontext->exchange_lock);
stcontext         972 drivers/nfc/st95hf/core.c 	rc = st95hf_spi_send(&stcontext->spicontext, skb->data,
stcontext         976 drivers/nfc/st95hf/core.c 		dev_err(&stcontext->nfcdev->dev,
stcontext         979 drivers/nfc/st95hf/core.c 		up(&stcontext->exchange_lock);
stcontext        1026 drivers/nfc/st95hf/core.c 	struct st95hf_context *stcontext = nfc_digital_get_drvdata(ddev);
stcontext        1032 drivers/nfc/st95hf/core.c 		return st95hf_select_protocol(stcontext, rf_tech);
stcontext        1035 drivers/nfc/st95hf/core.c 	return rf_off(stcontext);
stcontext        1211 drivers/nfc/st95hf/core.c 	struct st95hf_context *stcontext = container_of(spictx,
stcontext        1215 drivers/nfc/st95hf/core.c 	mutex_lock(&stcontext->rm_lock);
stcontext        1217 drivers/nfc/st95hf/core.c 	nfc_digital_unregister_device(stcontext->ddev);
stcontext        1218 drivers/nfc/st95hf/core.c 	nfc_digital_free_device(stcontext->ddev);
stcontext        1219 drivers/nfc/st95hf/core.c 	stcontext->nfcdev_free = true;
stcontext        1221 drivers/nfc/st95hf/core.c 	mutex_unlock(&stcontext->rm_lock);
stcontext        1224 drivers/nfc/st95hf/core.c 	result = down_killable(&stcontext->exchange_lock);
stcontext        1229 drivers/nfc/st95hf/core.c 	result = st95hf_spi_send(&stcontext->spicontext,
stcontext        1243 drivers/nfc/st95hf/core.c 	if (stcontext->st95hf_supply)
stcontext        1244 drivers/nfc/st95hf/core.c 		regulator_disable(stcontext->st95hf_supply);