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

Commit 57428314 authored by Venkateshwarlu Domakonda's avatar Venkateshwarlu Domakonda
Browse files

radio: iris: Address check patch failures



Fixing check patch failures and code clean up.

Change-Id: Ie5bbd50dd255f53eb5b984a94478412c34b73083
Signed-off-by: default avatarVenkateshwarlu Domakonda <vdomak@codeaurora.org>
parent d7b7c703
Loading
Loading
Loading
Loading
+3 −3
Original line number Diff line number Diff line
/*
 *  Qualcomm's FM Shared Memory Transport Driver
 *  QTI's FM Shared Memory Transport Driver
 *
 *  FM HCI_SMD ( FM HCI Shared Memory Driver) is Qualcomm's Shared memory driver
 *  FM HCI_SMD ( FM HCI Shared Memory Driver) is QTI's Shared memory driver
 *  for the HCI protocol. This file is based on drivers/bluetooth/hci_vhci.c
 *
 *  Copyright (c) 2000-2001, 2011-2012, 2014-2015 The Linux Foundation.
@@ -58,6 +58,7 @@ static void radio_hci_smd_recv_event(unsigned long temp)
	struct sk_buff *skb;
	unsigned  char *buf;
	struct radio_data *hsmd = &hs;

	len = smd_read_avail(hsmd->fm_channel);

	while (len) {
@@ -240,5 +241,4 @@ done:
	return ret;
}
MODULE_DESCRIPTION("FM SMD driver");
MODULE_AUTHOR("Ankur Nandwani <ankurn@codeaurora.org>");
MODULE_LICENSE("GPL v2");
+53 −55
Original line number Diff line number Diff line
@@ -10,10 +10,9 @@
 * GNU General Public License for more details.
 */

#define DRIVER_AUTHOR "Archana Ramchandran <archanar@codeaurora.org>"
#define DRIVER_NAME "radio-iris"
#define DRIVER_CARD "Qualcomm FM Radio Transceiver"
#define DRIVER_DESC "Driver for Qualcomm FM Radio Transceiver "
#define DRIVER_CARD "QTI FM Radio Transceiver"
#define DRIVER_DESC "Driver for QTI FM Radio Transceiver "

#include <linux/version.h>
#include <linux/init.h>
@@ -581,6 +580,7 @@ static void radio_hci_rx_task(unsigned long arg)
int radio_hci_register_dev(struct radio_hci_dev *hdev)
{
	struct iris_device *radio = video_get_drvdata(video_get_dev());

	if (!radio) {
		FMDERR(":radio is null");
		return -EINVAL;
@@ -614,6 +614,7 @@ EXPORT_SYMBOL(radio_hci_register_dev);
int radio_hci_unregister_dev(struct radio_hci_dev *hdev)
{
	struct iris_device *radio = video_get_drvdata(video_get_dev());

	if (!radio) {
		FMDERR(":radio is null");
		return -EINVAL;
@@ -1145,8 +1146,8 @@ static int hci_read_grp_counters_req(struct radio_hci_dev *hdev,
		unsigned long param)
{
	__u16 opcode = 0;

	__u8 reset_counters = param;

	opcode = hci_opcode_pack(HCI_OGF_FM_STATUS_PARAMETERS_CMD_REQ,
		HCI_OCF_FM_READ_GRP_COUNTERS);
	return radio_hci_send_cmd(hdev, opcode, sizeof(reset_counters),
@@ -1537,6 +1538,7 @@ int hci_def_data_read(struct hci_fm_def_data_rd_req *arg,
{
	int ret = 0;
	struct hci_fm_def_data_rd_req *def_data_rd = arg;

	ret = radio_hci_request(hdev, hci_def_data_read_req, (unsigned
		long)def_data_rd, RADIO_HCI_TIMEOUT);

@@ -1548,6 +1550,7 @@ int hci_def_data_write(struct hci_fm_def_data_wr_req *arg,
{
	int ret = 0;
	struct hci_fm_def_data_wr_req *def_data_wr = arg;

	ret = radio_hci_request(hdev, hci_def_data_write_req, (unsigned
		long)def_data_wr, RADIO_HCI_TIMEOUT);

@@ -1656,6 +1659,7 @@ static int hci_set_ch_det_thresholds_req(struct hci_fm_ch_det_threshold *arg,
{
	int ret = 0;
	struct hci_fm_ch_det_threshold *ch_det_threshold = arg;

	ret = radio_hci_request(hdev, hci_fm_set_ch_det_th,
		 (unsigned long)ch_det_threshold, RADIO_HCI_TIMEOUT);
	return ret;
@@ -1722,6 +1726,7 @@ static int hci_set_blend_tbl_req(struct hci_fm_blend_table *arg,
{
	int ret = 0;
	struct hci_fm_blend_table *blend_tbl = arg;

	ret = radio_hci_request(hdev, hci_fm_set_blend_tbl,
		 (unsigned long)blend_tbl, RADIO_HCI_TIMEOUT);
	return ret;
@@ -2029,7 +2034,7 @@ static void hci_cc_station_rsp(struct radio_hci_dev *hdev, struct sk_buff *skb)
	rsp = (struct hci_fm_station_rsp *)skb->data;
	radio->fm_st_rsp = *(rsp);

	/* Tune is always succesful */
	/* Tune is always successful */
	radio_hci_req_complete(hdev, 0);
}

@@ -2465,6 +2470,7 @@ static inline void hci_cmd_status_event(struct radio_hci_dev *hdev,
		struct sk_buff *skb)
{
	struct hci_ev_cmd_status *ev = (void *) skb->data;

	radio_hci_status_complete(hdev, ev->status);
}

@@ -2506,6 +2512,7 @@ static inline void hci_ev_search_compl(struct radio_hci_dev *hdev,
		struct sk_buff *skb)
{
	struct iris_device *radio = video_get_drvdata(video_get_dev());

	radio->search_on = 0;
	iris_q_event(radio, IRIS_EVT_SEEK_COMPLETE);
}
@@ -2561,6 +2568,7 @@ static inline void hci_ev_search_next(struct radio_hci_dev *hdev,
		struct sk_buff *skb)
{
	struct iris_device *radio = video_get_drvdata(video_get_dev());

	iris_q_event(radio, IRIS_EVT_SCAN_NEXT);
}

@@ -2625,7 +2633,7 @@ static void hci_ev_raw_rds_group_data(struct radio_hci_dev *hdev,
			 * Bit Pos  0  1  2  3  4   5  6   7
			 * Grp Type 0A 0B 1A 1B 2A  2B 3A  3B
			 *
			 * similary for rest grps
			 * similarly for rest grps
			 */
			mask_bit = (((agt >> 1) << 1) + (agt & 1));
			oda_agt = (1 << mask_bit);
@@ -2643,7 +2651,7 @@ static void hci_ev_raw_rds_group_data(struct radio_hci_dev *hdev,
			 * Bit Pos  0  1  2  3  4   5  6   7
			 * Grp Type 0A 0B 1A 1B 2A  2B 3A  3B
			 *
			 * similary for rest grps
			 * similarly for rest grps
			 */
			mask_bit = (((agt >> 1) << 1) + (agt & 1));
			oda_agt =  (1 << mask_bit);
@@ -2660,7 +2668,7 @@ static void hci_ev_raw_rds_group_data(struct radio_hci_dev *hdev,
		}
	} else {
		carrier = gtc;
		if ((carrier == rt_plus_carrier))
		if (carrier == rt_plus_carrier)
			hci_ev_rt_plus(radio, temp);
		else if (carrier == ert_carrier)
			hci_buff_ert(radio, &temp);
@@ -2952,6 +2960,7 @@ static void hci_ev_rds_grp_complete(struct radio_hci_dev *hdev,
	struct sk_buff *skb)
{
	struct iris_device *radio = video_get_drvdata(video_get_dev());

	iris_q_event(radio, IRIS_EVT_TXRDSDONE);
}

@@ -3392,8 +3401,7 @@ static int iris_vidioc_g_ctrl(struct file *file, void *priv,
				retval = -EINVAL;
		} else {
			retval = -EINVAL;
			FMDERR("Error in radio mode"
				" %d\n", retval);
			FMDERR("Error in radio mode %d\n", retval);
		}
		break;
	case V4L2_CID_PRIVATE_IRIS_SPACING:
@@ -3408,8 +3416,7 @@ static int iris_vidioc_g_ctrl(struct file *file, void *priv,
				retval = -EINVAL;
		} else {
			retval = -EINVAL;
			FMDERR("Error in radio mode"
				" %d\n", retval);
			FMDERR("Error in radio mode %d\n", retval);
		}
		break;
	case V4L2_CID_PRIVATE_IRIS_RDSON:
@@ -3423,8 +3430,7 @@ static int iris_vidioc_g_ctrl(struct file *file, void *priv,
				retval = -EINVAL;
		} else {
			retval = -EINVAL;
			FMDERR("Error in radio mode"
				" %d\n", retval);
			FMDERR("Error in radio mode %d\n", retval);
		}
		break;
	case V4L2_CID_PRIVATE_IRIS_RDSGROUP_MASK:
@@ -3759,8 +3765,7 @@ static int iris_vidioc_s_ext_ctrls(struct file *file, void *priv,
		retval = copy_from_user(&default_data, data,
			ctrl->controls[0].size);
		if (retval > 0) {
			pr_err("%s: Failed to copy %d bytes of default data"
				" passed by user\n", __func__, retval);
			FMDERR("Failed to copy %d bytes data\n", retval);
			retval = -EFAULT;
			goto END;
		}
@@ -3775,8 +3780,7 @@ static int iris_vidioc_s_ext_ctrls(struct file *file, void *priv,
		 * Length of 'Actual XFR Data' XFR_DATA_LEN: (DEF_DATA_LEN - 2)
		 */
		if (default_data.length != (ctrl->controls[0].size - 2)) {
			pr_err("%s: Invalid 'length' parameter passed for "
				"actual xfr data\n", __func__);
			FMDERR("Invalid 'length' parameter\n");
			retval = -EINVAL;
			goto END;
		}
@@ -3859,7 +3863,6 @@ static int iris_vidioc_s_ext_ctrls(struct file *file, void *priv,
		FMDBG("Shouldn't reach here\n");
		retval = -1;
		goto END;
		break;
	}

END:
@@ -3972,8 +3975,7 @@ static int iris_vidioc_s_ctrl(struct file *file, void *priv,
			retval = hci_cmd(HCI_FM_ENABLE_RECV_CMD,
							 radio->fm_hdev);
			if (retval < 0) {
				FMDERR("Error while enabling RECV FM"
							" %d\n", retval);
				FMDERR("Enabling RECV FM fail %d\n", retval);
				radio->mode = FM_OFF;
				goto END;
			} else {
@@ -4001,8 +4003,7 @@ static int iris_vidioc_s_ctrl(struct file *file, void *priv,
			retval = hci_cmd(HCI_FM_ENABLE_TRANS_CMD,
							 radio->fm_hdev);
			if (retval < 0) {
				FMDERR("Error while enabling TRANS FM"
							" %d\n", retval);
				FMDERR("Enabling TRANS FM fail %d\n", retval);
				radio->mode = FM_OFF;
				goto END;
			} else {
@@ -4029,8 +4030,8 @@ static int iris_vidioc_s_ctrl(struct file *file, void *priv,
				retval = hci_cmd(HCI_FM_DISABLE_RECV_CMD,
						radio->fm_hdev);
				if (retval < 0) {
					FMDERR("Err on disable recv FM"
						   " %d\n", retval);
					FMDERR("Err on disable recv FM");
					FMDERR("%d\n", retval);
					radio->mode = FM_RECV;
					goto END;
				}
@@ -4041,8 +4042,8 @@ static int iris_vidioc_s_ctrl(struct file *file, void *priv,
						radio->fm_hdev);

				if (retval < 0) {
					FMDERR("Err disabling trans FM"
						" %d\n", retval);
					FMDERR("Err disabling trans FM");
					FMDERR("%d\n", retval);
					radio->mode = FM_TRANS;
					goto END;
				}
@@ -4168,7 +4169,6 @@ static int iris_vidioc_s_ctrl(struct file *file, void *priv,
			retval = -EINVAL;
			FMDERR("%s, FM is not in proper state\n", __func__);
			goto END;
			break;
		}
		break;
	case V4L2_CID_PRIVATE_IRIS_RDS_STD:
@@ -4206,7 +4206,6 @@ static int iris_vidioc_s_ctrl(struct file *file, void *priv,
			retval = -EINVAL;
			FMDERR("%s: fm is not in proper state\n", __func__);
			goto END;
			break;
		}
		break;
	case V4L2_CID_PRIVATE_IRIS_RDSON:
@@ -4244,7 +4243,6 @@ static int iris_vidioc_s_ctrl(struct file *file, void *priv,
			retval = -EINVAL;
			FMDERR("%s: fm is not in proper state\n", __func__);
			goto END;
			break;
		}
		break;
	case V4L2_CID_PRIVATE_IRIS_RDSGROUP_MASK:
@@ -5013,14 +5011,12 @@ static int iris_vidioc_g_tuner(struct file *file, void *priv,
		if (retval < 0) {
			FMDERR("get Tx config failed %d\n", retval);
			return retval;
		} else {
		}
		tuner->type = V4L2_TUNER_RADIO;
		tuner->rangelow =
			radio->trans_conf.band_low_limit * TUNE_PARAM;
		tuner->rangehigh =
			radio->trans_conf.band_high_limit * TUNE_PARAM;
		}

	} else
		return -EINVAL;
	return 0;
@@ -5078,6 +5074,7 @@ static int iris_vidioc_g_frequency(struct file *file, void *priv,
		struct v4l2_frequency *freq)
{
	struct iris_device *radio = video_get_drvdata(video_devdata(file));

	if ((freq != NULL) && (radio != NULL)) {
		freq->frequency =
			radio->fm_st_rsp.station_rsp.station_freq * TUNE_PARAM;
@@ -5240,6 +5237,7 @@ static int iris_vidioc_querycap(struct file *file, void *priv,
	struct v4l2_capability *capability)
{
	struct iris_device *radio;

	radio = video_get_drvdata(video_devdata(file));

	if (unlikely(radio == NULL)) {
@@ -5383,7 +5381,7 @@ static struct video_device *video_get_dev(void)
	return priv_videodev;
}

static int __init iris_probe(struct platform_device *pdev)
static int iris_probe(struct platform_device *pdev)
{
	struct iris_device *radio;
	int retval;
@@ -5416,6 +5414,7 @@ static int __init iris_probe(struct platform_device *pdev)

	for (i = 0; i < IRIS_BUF_MAX; i++) {
		int kfifo_alloc_rc = 0;

		spin_lock_init(&radio->buf_lock[i]);

		if ((i == IRIS_BUF_RAW_RDS) || (i == IRIS_BUF_PEEK))
@@ -5460,7 +5459,7 @@ static int __init iris_probe(struct platform_device *pdev)
			kfifo_free(&radio->data_buf[i]);
		kfree(radio);
		return retval;
	} else {
	}
	priv_videodev = kzalloc(sizeof(struct video_device),
			GFP_KERNEL);
	if (priv_videodev != NULL) {
@@ -5473,7 +5472,6 @@ static int __init iris_probe(struct platform_device *pdev)
			kfifo_free(&radio->data_buf[i]);
		kfree(radio);
	}
	}
	return 0;
}

@@ -5505,6 +5503,7 @@ static const struct of_device_id iris_fm_match[] = {
};

static struct platform_driver iris_driver = {
	.probe	= iris_probe,
	.driver = {
		.owner  = THIS_MODULE,
		.name   = "iris_fm",
@@ -5515,7 +5514,7 @@ static struct platform_driver iris_driver = {

static int __init iris_radio_init(void)
{
	return platform_driver_probe(&iris_driver, iris_probe);
	return platform_driver_register(&iris_driver);
}
module_init(iris_radio_init);

@@ -5526,5 +5525,4 @@ static void __exit iris_radio_exit(void)
module_exit(iris_radio_exit);

MODULE_LICENSE("GPL v2");
MODULE_AUTHOR(DRIVER_AUTHOR);
MODULE_DESCRIPTION(DRIVER_DESC);
+6 −6
Original line number Diff line number Diff line
@@ -262,19 +262,19 @@ void radio_hci_event_packet(struct radio_hci_dev *hdev, struct sk_buff *skb);
#define HCI_OGF_FM_DIAGNOSTIC_CMD_REQ           0x003F

/* Command opcode pack/unpack */
#define hci_opcode_pack(ogf, ocf)	(__u16) ((ocf & 0x03ff)|(ogf << 10))
#define hci_opcode_pack(ogf, ocf)  ((__u16) ((ocf & 0x03ff)|(ogf << 10)))
#define hci_opcode_ogf(op)		(op >> 10)
#define hci_opcode_ocf(op)		(op & 0x03ff)
#define hci_recv_ctrl_cmd_op_pack(ocf) \
	(__u16) hci_opcode_pack(HCI_OGF_FM_RECV_CTRL_CMD_REQ, ocf)
	((__u16) hci_opcode_pack(HCI_OGF_FM_RECV_CTRL_CMD_REQ, ocf))
#define hci_trans_ctrl_cmd_op_pack(ocf) \
	(__u16) hci_opcode_pack(HCI_OGF_FM_TRANS_CTRL_CMD_REQ, ocf)
	((__u16) hci_opcode_pack(HCI_OGF_FM_TRANS_CTRL_CMD_REQ, ocf))
#define hci_common_cmd_op_pack(ocf)	\
	(__u16) hci_opcode_pack(HCI_OGF_FM_COMMON_CTRL_CMD_REQ, ocf)
	((__u16) hci_opcode_pack(HCI_OGF_FM_COMMON_CTRL_CMD_REQ, ocf))
#define hci_status_param_op_pack(ocf)	\
	(__u16) hci_opcode_pack(HCI_OGF_FM_STATUS_PARAMETERS_CMD_REQ, ocf)
	((__u16) hci_opcode_pack(HCI_OGF_FM_STATUS_PARAMETERS_CMD_REQ, ocf))
#define hci_diagnostic_cmd_op_pack(ocf)	\
	(__u16) hci_opcode_pack(HCI_OGF_FM_DIAGNOSTIC_CMD_REQ, ocf)
	((__u16) hci_opcode_pack(HCI_OGF_FM_DIAGNOSTIC_CMD_REQ, ocf))


/* HCI commands with no arguments*/