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

Unverified Commit 98bfbab7 authored by TheMalachite's avatar TheMalachite Committed by Gagan Malvi
Browse files

drivers: mtk-connectivity: Globally silence connectivity logspam

Change-Id: I73bbdf9d4f1363bcb31cc3e20d64bfdf3fa2e9f1
parent 15984115
Loading
Loading
Loading
Loading
+14 −14
Original line number Original line Diff line number Diff line
@@ -31,13 +31,13 @@ MODULE_LICENSE("Dual BSD/GPL");
static UINT32 gDbgLevel = BT_LOG_INFO;
static UINT32 gDbgLevel = BT_LOG_INFO;


#define BT_LOG_PRT_DBG(fmt, arg...)	\
#define BT_LOG_PRT_DBG(fmt, arg...)	\
	do { if (gDbgLevel >= BT_LOG_DBG) pr_info(PFX "%s: " fmt, __func__, ##arg); } while (0)
	do { if (gDbgLevel >= BT_LOG_DBG) pr_debug(PFX "%s: " fmt, __func__, ##arg); } while (0)
#define BT_LOG_PRT_INFO(fmt, arg...)	\
#define BT_LOG_PRT_INFO(fmt, arg...)	\
	do { if (gDbgLevel >= BT_LOG_INFO) pr_info(PFX "%s: " fmt, __func__, ##arg); } while (0)
	do { if (gDbgLevel >= BT_LOG_INFO) pr_info(PFX "%s: " fmt, __func__, ##arg); } while (0)
#define BT_LOG_PRT_WARN(fmt, arg...)	\
#define BT_LOG_PRT_WARN(fmt, arg...)	\
	do { if (gDbgLevel >= BT_LOG_WARN) pr_info(PFX "%s: " fmt, __func__, ##arg); } while (0)
	do { if (gDbgLevel >= BT_LOG_WARN) pr_warn(PFX "%s: " fmt, __func__, ##arg); } while (0)
#define BT_LOG_PRT_ERR(fmt, arg...)	\
#define BT_LOG_PRT_ERR(fmt, arg...)	\
	do { if (gDbgLevel >= BT_LOG_ERR) pr_info(PFX "%s: " fmt, __func__, ##arg); } while (0)
	do { if (gDbgLevel >= BT_LOG_ERR) pr_err(PFX "%s: " fmt, __func__, ##arg); } while (0)


#define BT_LOG_NODE_NAME "fw_log_bt"
#define BT_LOG_NODE_NAME "fw_log_bt"


@@ -88,7 +88,7 @@ static int set_fw_log(unsigned char flag)
	unsigned char HCI_CMD_FW_LOG_DEBUG[] = {0x01, 0x5d, 0xfc, 0x04, 0x02, 0x00, 0x01, 0xff}; // Via EMI
	unsigned char HCI_CMD_FW_LOG_DEBUG[] = {0x01, 0x5d, 0xfc, 0x04, 0x02, 0x00, 0x01, 0xff}; // Via EMI


	HCI_CMD_FW_LOG_DEBUG[7] = flag;
	HCI_CMD_FW_LOG_DEBUG[7] = flag;
	BT_LOG_PRT_INFO("hci_cmd: %02x, %02x, %02x, %02x, %02x, %02x, %02x, %02x\n",
	BT_LOG_PRT_DBG("hci_cmd: %02x, %02x, %02x, %02x, %02x, %02x, %02x, %02x\n",
			HCI_CMD_FW_LOG_DEBUG[0], HCI_CMD_FW_LOG_DEBUG[1],
			HCI_CMD_FW_LOG_DEBUG[0], HCI_CMD_FW_LOG_DEBUG[1],
			HCI_CMD_FW_LOG_DEBUG[2], HCI_CMD_FW_LOG_DEBUG[3],
			HCI_CMD_FW_LOG_DEBUG[2], HCI_CMD_FW_LOG_DEBUG[3],
			HCI_CMD_FW_LOG_DEBUG[4], HCI_CMD_FW_LOG_DEBUG[5],
			HCI_CMD_FW_LOG_DEBUG[4], HCI_CMD_FW_LOG_DEBUG[5],
@@ -108,7 +108,7 @@ static int set_fw_log(unsigned char flag)


void bt_state_notify(UINT32 on_off)
void bt_state_notify(UINT32 on_off)
{
{
	BT_LOG_PRT_INFO("g_bt_on %d, on_off %d\n", g_bt_on, on_off);
	BT_LOG_PRT_DBG("g_bt_on %d, on_off %d\n", g_bt_on, on_off);


	if (g_bt_on == on_off) {
	if (g_bt_on == on_off) {
		// no change.
		// no change.
@@ -116,7 +116,7 @@ void bt_state_notify(UINT32 on_off)
		// changed.
		// changed.
		if (on_off == OFF) { // should turn off.
		if (on_off == OFF) { // should turn off.
			g_bt_on = OFF;
			g_bt_on = OFF;
			BT_LOG_PRT_INFO("BT func off, no need to send hci cmd\n");
			BT_LOG_PRT_DBG("BT func off, no need to send hci cmd\n");
		} else {
		} else {
			g_bt_on = ON;
			g_bt_on = ON;
			if(g_log_current)
			if(g_log_current)
@@ -134,7 +134,7 @@ long fw_log_bt_unlocked_ioctl(struct file *filp, unsigned int cmd, unsigned long
	switch (cmd) {
	switch (cmd) {
		case BT_FW_LOG_IOCTL_ON_OFF:
		case BT_FW_LOG_IOCTL_ON_OFF:
			/* connsyslogger daemon dynamically enable/disable Picus log */
			/* connsyslogger daemon dynamically enable/disable Picus log */
			BT_LOG_PRT_INFO("BT_FW_LOG_IOCTL_ON_OFF: arg(%lu), g_bt_on(0x%02x), g_log_on(0x%02x), g_log_level(0x%02x), g_log_current(0x%02x)\n",
			BT_LOG_PRT_DBG("BT_FW_LOG_IOCTL_ON_OFF: arg(%lu), g_bt_on(0x%02x), g_log_on(0x%02x), g_log_level(0x%02x), g_log_current(0x%02x)\n",
					arg, g_bt_on, g_log_on, g_log_level, g_log_current);
					arg, g_bt_on, g_log_on, g_log_level, g_log_current);
			log_tmp = (arg == 0 ? OFF: ON);
			log_tmp = (arg == 0 ? OFF: ON);
			if (log_tmp == g_log_on) // no change
			if (log_tmp == g_log_on) // no change
@@ -148,7 +148,7 @@ long fw_log_bt_unlocked_ioctl(struct file *filp, unsigned int cmd, unsigned long
			break;
			break;
		case BT_FW_LOG_IOCTL_SET_LEVEL:
		case BT_FW_LOG_IOCTL_SET_LEVEL:
			/* connsyslogger daemon dynamically set Picus log level */
			/* connsyslogger daemon dynamically set Picus log level */
			BT_LOG_PRT_INFO("BT_FW_LOG_IOCTL_SET_LEVEL: arg(%lu), g_bt_on(0x%02x),  g_log_on(0x%02x), g_log_level(0x%02x), g_log_current(0x%02x)\n",
			BT_LOG_PRT_DBG("BT_FW_LOG_IOCTL_SET_LEVEL: arg(%lu), g_bt_on(0x%02x),  g_log_on(0x%02x), g_log_level(0x%02x), g_log_current(0x%02x)\n",
					arg,  g_bt_on, g_log_on, g_log_level, g_log_current);
					arg,  g_bt_on, g_log_on, g_log_level, g_log_current);
			log_tmp = (unsigned char)arg;
			log_tmp = (unsigned char)arg;
			if(log_tmp == g_log_level) // no change
			if(log_tmp == g_log_level) // no change
@@ -162,7 +162,7 @@ long fw_log_bt_unlocked_ioctl(struct file *filp, unsigned int cmd, unsigned long
			break;
			break;
		case BT_FW_LOG_IOCTL_GET_LEVEL:
		case BT_FW_LOG_IOCTL_GET_LEVEL:
			retval = g_log_level;
			retval = g_log_level;
			BT_LOG_PRT_INFO("BT_FW_LOG_IOCTL_GET_LEVEL: %ld\n", retval);
			BT_LOG_PRT_DBG("BT_FW_LOG_IOCTL_GET_LEVEL: %ld\n", retval);
			break;
			break;
		default:
		default:
			BT_LOG_PRT_ERR("Unknown cmd: 0x%08x\n", cmd);
			BT_LOG_PRT_ERR("Unknown cmd: 0x%08x\n", cmd);
@@ -214,7 +214,7 @@ static ssize_t fw_log_bt_write(struct file *filp, const char __user *buf, size_t
		BT_LOG_PRT_ERR("copy_from_user failed!\n");
		BT_LOG_PRT_ERR("copy_from_user failed!\n");
		retval = -EFAULT;
		retval = -EFAULT;
	} else {
	} else {
		BT_LOG_PRT_INFO("adb input: %s, len %zd\n", tmp_buf, strlen(tmp_buf));
		BT_LOG_PRT_DBG("adb input: %s, len %zd\n", tmp_buf, strlen(tmp_buf));
		if (0 == memcmp(tmp_buf, "raw-hex,", strlen("raw-hex,"))) {
		if (0 == memcmp(tmp_buf, "raw-hex,", strlen("raw-hex,"))) {
			// Skip prefix
			// Skip prefix
			for(i = strlen("raw-hex,"); i < strlen(tmp_buf); i++) {
			for(i = strlen("raw-hex,"); i < strlen(tmp_buf); i++) {
@@ -263,13 +263,13 @@ static ssize_t fw_log_bt_read(struct file *filp, char __user *buf, size_t len, l


static int fw_log_bt_open(struct inode *inode, struct file *file)
static int fw_log_bt_open(struct inode *inode, struct file *file)
{
{
	BT_LOG_PRT_INFO("major %d minor %d (pid %d)\n", imajor(inode), iminor(inode), current->pid);
	BT_LOG_PRT_DBG("major %d minor %d (pid %d)\n", imajor(inode), iminor(inode), current->pid);
	return 0;
	return 0;
}
}


static int fw_log_bt_close(struct inode *inode, struct file *file)
static int fw_log_bt_close(struct inode *inode, struct file *file)
{
{
	BT_LOG_PRT_INFO("major %d minor %d (pid %d)\n", imajor(inode), iminor(inode), current->pid);
	BT_LOG_PRT_DBG("major %d minor %d (pid %d)\n", imajor(inode), iminor(inode), current->pid);
	return 0;
	return 0;
}
}


@@ -318,7 +318,7 @@ int fw_log_bt_init(void)
		goto error;
		goto error;
#endif
#endif


	BT_LOG_PRT_INFO("%s driver(major %d, minor %d) installed\n", BT_LOG_NODE_NAME, MAJOR(devno), MINOR(devno));
	BT_LOG_PRT_DBG("%s driver(major %d, minor %d) installed\n", BT_LOG_NODE_NAME, MAJOR(devno), MINOR(devno));
	return 0;
	return 0;


error:
error:
@@ -359,6 +359,6 @@ void fw_log_bt_exit(void)
		log_class = NULL;
		log_class = NULL;
	}
	}
#endif
#endif
	BT_LOG_PRT_INFO("%s driver removed\n", BT_LOG_NODE_NAME);
	BT_LOG_PRT_DBG("%s driver removed\n", BT_LOG_NODE_NAME);
}
}
#endif
#endif
+24 −22
Original line number Original line Diff line number Diff line
@@ -33,13 +33,15 @@ MODULE_LICENSE("Dual BSD/GPL");
static UINT32 gDbgLevel = BT_LOG_INFO;
static UINT32 gDbgLevel = BT_LOG_INFO;


#define BT_LOG_PRT_DBG(fmt, arg...)	\
#define BT_LOG_PRT_DBG(fmt, arg...)	\
	do { if (gDbgLevel >= BT_LOG_DBG) pr_info(PFX "%s: " fmt, __func__, ##arg); } while (0)
	do { if (gDbgLevel >= BT_LOG_DBG) pr_debug(PFX "%s: " fmt, __func__, ##arg); } while (0)
#define BT_LOG_PRT_DBG_RATELIMITED(fmt, arg...)	\
	do { if (gDbgLevel >= BT_LOG_DBG) pr_debug_ratelimited(PFX "%s: " fmt, __func__, ##arg); } while (0)
#define BT_LOG_PRT_INFO(fmt, arg...)	\
#define BT_LOG_PRT_INFO(fmt, arg...)	\
	do { if (gDbgLevel >= BT_LOG_INFO) pr_info(PFX "%s: " fmt, __func__, ##arg); } while (0)
	do { if (gDbgLevel >= BT_LOG_INFO) pr_info(PFX "%s: " fmt, __func__, ##arg); } while (0)
#define BT_LOG_PRT_WARN(fmt, arg...)	\
#define BT_LOG_PRT_WARN(fmt, arg...)	\
	do { if (gDbgLevel >= BT_LOG_WARN) pr_info(PFX "%s: " fmt, __func__, ##arg); } while (0)
	do { if (gDbgLevel >= BT_LOG_WARN) pr_warn(PFX "%s: " fmt, __func__, ##arg); } while (0)
#define BT_LOG_PRT_ERR(fmt, arg...)	\
#define BT_LOG_PRT_ERR(fmt, arg...)	\
	do { if (gDbgLevel >= BT_LOG_ERR) pr_info(PFX "%s: " fmt, __func__, ##arg); } while (0)
	do { if (gDbgLevel >= BT_LOG_ERR) pr_err(PFX "%s: " fmt, __func__, ##arg); } while (0)
#define BT_LOG_PRT_INFO_RATELIMITED(fmt, arg...)	\
#define BT_LOG_PRT_INFO_RATELIMITED(fmt, arg...)	\
	do { if (gDbgLevel >= BT_LOG_ERR) pr_info_ratelimited(PFX "%s: " fmt, __func__, ##arg); } while (0)
	do { if (gDbgLevel >= BT_LOG_ERR) pr_info_ratelimited(PFX "%s: " fmt, __func__, ##arg); } while (0)


@@ -121,7 +123,7 @@ static size_t bt_report_hw_error(char *buf, size_t count, loff_t *f_pos)
	size_t bytes_rest, bytes_read;
	size_t bytes_rest, bytes_read;


	if (*f_pos == 0)
	if (*f_pos == 0)
		BT_LOG_PRT_INFO("Send Hardware Error event to stack to restart Bluetooth\n");
		BT_LOG_PRT_DBG("Send Hardware Error event to stack to restart Bluetooth\n");


	bytes_rest = sizeof(HCI_EVT_HW_ERROR) - *f_pos;
	bytes_rest = sizeof(HCI_EVT_HW_ERROR) - *f_pos;
	bytes_read = count < bytes_rest ? count : bytes_rest;
	bytes_read = count < bytes_rest ? count : bytes_rest;
@@ -154,16 +156,16 @@ static VOID bt_cdev_rst_cb(ENUM_WMTDRV_TYPE_T src,
#ifdef CONFIG_MTK_CONNSYS_DEDICATED_LOG_PATH
#ifdef CONFIG_MTK_CONNSYS_DEDICATED_LOG_PATH
			bt_state_notify(OFF);
			bt_state_notify(OFF);
#endif
#endif
			BT_LOG_PRT_INFO("Whole chip reset start!\n");
			BT_LOG_PRT_DBG("Whole chip reset start!\n");
			rstflag = 1;
			rstflag = 1;
			break;
			break;


		case WMTRSTMSG_RESET_END:
		case WMTRSTMSG_RESET_END:
		case WMTRSTMSG_RESET_END_FAIL:
		case WMTRSTMSG_RESET_END_FAIL:
			if (rst_msg == WMTRSTMSG_RESET_END)
			if (rst_msg == WMTRSTMSG_RESET_END)
				BT_LOG_PRT_INFO("Whole chip reset end!\n");
				BT_LOG_PRT_DBG("Whole chip reset end!\n");
			else
			else
				BT_LOG_PRT_INFO("Whole chip reset fail!\n");
				BT_LOG_PRT_DBG("Whole chip reset fail!\n");
			rd_offset = 0;
			rd_offset = 0;
			rstflag = 2;
			rstflag = 2;
			flag = 1;
			flag = 1;
@@ -248,7 +250,7 @@ static ssize_t __bt_write(const PUINT8 buffer, size_t count)
		/* Device cannot process data in time, STP queue is full and no space is available for write,
		/* Device cannot process data in time, STP queue is full and no space is available for write,
		 * native program should not call writev with no delay.
		 * native program should not call writev with no delay.
		 */
		 */
		BT_LOG_PRT_INFO_RATELIMITED("write count %zd, sent bytes %d, no space is available!\n", count, retval);
		BT_LOG_PRT_DBG_RATELIMITED("write count %zd, sent bytes %d, no space is available!\n", count, retval);
		retval = -EAGAIN;
		retval = -EAGAIN;
	} else
	} else
		BT_LOG_PRT_DBG("write count %zd, sent bytes %d\n", count, retval);
		BT_LOG_PRT_DBG("write count %zd, sent bytes %d\n", count, retval);
@@ -459,12 +461,12 @@ long BT_unlocked_ioctl(struct file *filp, unsigned int cmd, unsigned long arg)
	case COMBO_IOCTL_FW_ASSERT:
	case COMBO_IOCTL_FW_ASSERT:
		/* Trigger FW assert for debug */
		/* Trigger FW assert for debug */
		reason = (UINT32)arg & 0xFFFF;
		reason = (UINT32)arg & 0xFFFF;
		BT_LOG_PRT_INFO("Host trigger FW assert......, reason:%d\n", reason);
		BT_LOG_PRT_DBG("Host trigger FW assert......, reason:%d\n", reason);
		if (reason == 31) /* HCI command timeout */
		if (reason == 31) /* HCI command timeout */
			BT_LOG_PRT_INFO("HCI command timeout OpCode 0x%04x\n", ((UINT32)arg >> 16) & 0xFFFF);
			BT_LOG_PRT_DBG("HCI command timeout OpCode 0x%04x\n", ((UINT32)arg >> 16) & 0xFFFF);


		if (mtk_wcn_wmt_assert(WMTDRV_TYPE_BT, reason) == MTK_WCN_BOOL_TRUE) {
		if (mtk_wcn_wmt_assert(WMTDRV_TYPE_BT, reason) == MTK_WCN_BOOL_TRUE) {
			BT_LOG_PRT_INFO("Host trigger FW assert succeed\n");
			BT_LOG_PRT_DBG("Host trigger FW assert succeed\n");
			retval = 0;
			retval = 0;
		} else {
		} else {
			BT_LOG_PRT_ERR("Host trigger FW assert failed\n");
			BT_LOG_PRT_ERR("Host trigger FW assert failed\n");
@@ -475,18 +477,18 @@ long BT_unlocked_ioctl(struct file *filp, unsigned int cmd, unsigned long arg)
		/* BT stack may need to dynamically enable/disable Power Saving Mode
		/* BT stack may need to dynamically enable/disable Power Saving Mode
		 * in some scenarios for performance, e.g. A2DP chopping.
		 * in some scenarios for performance, e.g. A2DP chopping.
		 */
		 */
		BT_LOG_PRT_INFO("BT stack change PSM setting: %lu\n", arg);
		BT_LOG_PRT_DBG("BT stack change PSM setting: %lu\n", arg);
		retval = mtk_wcn_wmt_psm_ctrl((MTK_WCN_BOOL)arg);
		retval = mtk_wcn_wmt_psm_ctrl((MTK_WCN_BOOL)arg);
		break;
		break;
	case COMBO_IOCTL_BT_IC_HW_VER:
	case COMBO_IOCTL_BT_IC_HW_VER:
		ver = mtk_wcn_wmt_ic_info_get(WMTCHIN_HWVER);
		ver = mtk_wcn_wmt_ic_info_get(WMTCHIN_HWVER);
		BT_LOG_PRT_INFO("HW ver: 0x%x\n", ver);
		BT_LOG_PRT_DBG("HW ver: 0x%x\n", ver);
		if (copy_to_user((UINT32 __user *)arg, &ver, sizeof(ver)))
		if (copy_to_user((UINT32 __user *)arg, &ver, sizeof(ver)))
			retval = -EFAULT;
			retval = -EFAULT;
		break;
		break;
	case COMBO_IOCTL_BT_IC_FW_VER:
	case COMBO_IOCTL_BT_IC_FW_VER:
		ver = mtk_wcn_wmt_ic_info_get(WMTCHIN_FWVER);
		ver = mtk_wcn_wmt_ic_info_get(WMTCHIN_FWVER);
		BT_LOG_PRT_INFO("FW ver: 0x%x\n", ver);
		BT_LOG_PRT_DBG("FW ver: 0x%x\n", ver);
		if (copy_to_user((UINT32 __user *)arg, &ver, sizeof(ver)))
		if (copy_to_user((UINT32 __user *)arg, &ver, sizeof(ver)))
			retval = -EFAULT;
			retval = -EFAULT;
		break;
		break;
@@ -510,7 +512,7 @@ static int BT_open(struct inode *inode, struct file *file)
		BT_LOG_PRT_WARN("BT already on!\n");
		BT_LOG_PRT_WARN("BT already on!\n");
		return -EIO;
		return -EIO;
	}
	}
	BT_LOG_PRT_INFO("major %d minor %d (pid %d)\n", imajor(inode), iminor(inode), current->pid);
	BT_LOG_PRT_DBG("major %d minor %d (pid %d)\n", imajor(inode), iminor(inode), current->pid);


	/* Turn on BT */
	/* Turn on BT */
	if (mtk_wcn_wmt_func_on(WMTDRV_TYPE_BT) == MTK_WCN_BOOL_FALSE) {
	if (mtk_wcn_wmt_func_on(WMTDRV_TYPE_BT) == MTK_WCN_BOOL_FALSE) {
@@ -518,7 +520,7 @@ static int BT_open(struct inode *inode, struct file *file)
		return -EIO;
		return -EIO;
	}
	}


	BT_LOG_PRT_INFO("WMT turn on BT OK!\n");
	BT_LOG_PRT_DBG("WMT turn on BT OK!\n");


	if (mtk_wcn_stp_is_ready() == MTK_WCN_BOOL_FALSE) {
	if (mtk_wcn_stp_is_ready() == MTK_WCN_BOOL_FALSE) {


@@ -529,8 +531,8 @@ static int BT_open(struct inode *inode, struct file *file)


	mtk_wcn_stp_set_bluez(0);
	mtk_wcn_stp_set_bluez(0);


	BT_LOG_PRT_INFO("Now it's in MTK Bluetooth Mode\n");
	BT_LOG_PRT_DBG("Now it's in MTK Bluetooth Mode\n");
	BT_LOG_PRT_INFO("STP is ready!\n");
	BT_LOG_PRT_DBG("STP is ready!\n");


	BT_LOG_PRT_DBG("Register BT event callback!\n");
	BT_LOG_PRT_DBG("Register BT event callback!\n");
	mtk_wcn_stp_register_event_cb(BT_TASK_INDX, BT_event_cb);
	mtk_wcn_stp_register_event_cb(BT_TASK_INDX, BT_event_cb);
@@ -554,7 +556,7 @@ static int BT_open(struct inode *inode, struct file *file)


static int BT_close(struct inode *inode, struct file *file)
static int BT_close(struct inode *inode, struct file *file)
{
{
	BT_LOG_PRT_INFO("major %d minor %d (pid %d)\n", imajor(inode), iminor(inode), current->pid);
	BT_LOG_PRT_DBG("major %d minor %d (pid %d)\n", imajor(inode), iminor(inode), current->pid);


#ifdef CONFIG_MTK_CONNSYS_DEDICATED_LOG_PATH
#ifdef CONFIG_MTK_CONNSYS_DEDICATED_LOG_PATH
	bt_state_notify(OFF);
	bt_state_notify(OFF);
@@ -572,7 +574,7 @@ static int BT_close(struct inode *inode, struct file *file)
		return -EIO;	/* Mostly, native program will not check this return value. */
		return -EIO;	/* Mostly, native program will not check this return value. */
	}
	}


	BT_LOG_PRT_INFO("WMT turn off BT OK!\n");
	BT_LOG_PRT_DBG("WMT turn off BT OK!\n");
	return 0;
	return 0;
}
}


@@ -626,7 +628,7 @@ static int BT_init(void)
		goto error;
		goto error;
#endif
#endif


	BT_LOG_PRT_INFO("%s driver(major %d) installed\n", BT_DRIVER_NAME, BT_major);
	BT_LOG_PRT_DBG("%s driver(major %d) installed\n", BT_DRIVER_NAME, BT_major);


#ifdef CONFIG_MTK_CONNSYS_DEDICATED_LOG_PATH
#ifdef CONFIG_MTK_CONNSYS_DEDICATED_LOG_PATH
	fw_log_bt_init();
	fw_log_bt_init();
@@ -680,7 +682,7 @@ static void BT_exit(void)
	cdev_del(&BT_cdev);
	cdev_del(&BT_cdev);
	unregister_chrdev_region(dev, BT_devs);
	unregister_chrdev_region(dev, BT_devs);


	BT_LOG_PRT_INFO("%s driver removed\n", BT_DRIVER_NAME);
	BT_LOG_PRT_DBG("%s driver removed\n", BT_DRIVER_NAME);
}
}


#ifdef MTK_WCN_REMOVE_KERNEL_MODULE
#ifdef MTK_WCN_REMOVE_KERNEL_MODULE
+4 −4
Original line number Original line Diff line number Diff line
@@ -23,7 +23,7 @@
#ifdef CONFIG_MTK_COMBO_BT
#ifdef CONFIG_MTK_COMBO_BT
int __attribute__((weak)) mtk_wcn_stpbt_drv_init()
int __attribute__((weak)) mtk_wcn_stpbt_drv_init()
{
{
	WMT_DETECT_PR_INFO("Not implement mtk_wcn_stpbt_drv_init\n");
	WMT_DETECT_PR_DBG("Not implement mtk_wcn_stpbt_drv_init\n");
	return 0;
	return 0;
}
}
#endif
#endif
@@ -33,11 +33,11 @@ int do_bluetooth_drv_init(int chip_id)
	int i_ret = -1;
	int i_ret = -1;


#ifdef CONFIG_MTK_COMBO_BT
#ifdef CONFIG_MTK_COMBO_BT
	WMT_DETECT_PR_INFO("start to do bluetooth driver init\n");
	WMT_DETECT_PR_DBG("start to do bluetooth driver init\n");
	i_ret = mtk_wcn_stpbt_drv_init();
	i_ret = mtk_wcn_stpbt_drv_init();
	WMT_DETECT_PR_INFO("finish bluetooth driver init, i_ret:%d\n", i_ret);
	WMT_DETECT_PR_DBG("finish bluetooth driver init, i_ret:%d\n", i_ret);
#else
#else
	WMT_DETECT_PR_INFO("CONFIG_MTK_COMBO_BT is not defined\n");
	WMT_DETECT_PR_DBG("CONFIG_MTK_COMBO_BT is not defined\n");
#endif
#endif
	return i_ret;
	return i_ret;
}
}
+2 −2
Original line number Original line Diff line number Diff line
@@ -27,7 +27,7 @@ int do_common_drv_init(int chip_id)
	int i_ret = 0;
	int i_ret = 0;
	int i_ret_tmp = 0;
	int i_ret_tmp = 0;


	WMT_DETECT_PR_INFO("start to do common driver init, chipid:0x%08x\n", chip_id);
	WMT_DETECT_PR_DBG("start to do common driver init, chipid:0x%08x\n", chip_id);


	wmt_detect_set_chip_type(chip_id);
	wmt_detect_set_chip_type(chip_id);


@@ -51,7 +51,7 @@ int do_common_drv_init(int chip_id)
	i_ret += i_ret_tmp;
	i_ret += i_ret_tmp;
	WMT_DETECT_PR_DBG("STP-SDIO driver init, i_ret:%d\n", i_ret);
	WMT_DETECT_PR_DBG("STP-SDIO driver init, i_ret:%d\n", i_ret);


	WMT_DETECT_PR_INFO("common driver init finish:%d\n", i_ret);
	WMT_DETECT_PR_DBG("common driver init finish:%d\n", i_ret);
	return i_ret;
	return i_ret;


}
}
+3 −3
Original line number Original line Diff line number Diff line
@@ -23,19 +23,19 @@
#ifdef CONFIG_MTK_FMRADIO
#ifdef CONFIG_MTK_FMRADIO
int __attribute__((weak)) mtk_wcn_fm_init()
int __attribute__((weak)) mtk_wcn_fm_init()
{
{
	WMT_DETECT_PR_INFO("no impl. mtk_wcn_fm_init\n");
	WMT_DETECT_PR_DBG("no impl. mtk_wcn_fm_init\n");
	return 0;
	return 0;
}
}
#endif
#endif


int do_fm_drv_init(int chip_id)
int do_fm_drv_init(int chip_id)
{
{
	WMT_DETECT_PR_INFO("start to do fm module init\n");
	WMT_DETECT_PR_DBG("start to do fm module init\n");


#ifdef CONFIG_MTK_FMRADIO
#ifdef CONFIG_MTK_FMRADIO
	mtk_wcn_fm_init();
	mtk_wcn_fm_init();
#endif
#endif


	WMT_DETECT_PR_INFO("finish fm module init\n");
	WMT_DETECT_PR_DBG("finish fm module init\n");
	return 0;
	return 0;
}
}
Loading