소스 검색

video: driver: use module_param for debug logs

Introduce module_param to enable debug logs.

For general debug, use below commad:
echo 0x103f101f > /sys/module/msm_video/parameters/msm_vidc_debug

To further print bus-related logs, use below command:
echo 0x103f103f > /sys/module/msm_video/parameters/msm_vidc_debug

Change-Id: Iab735d3e7157cd78a8e5d99c4cdbb290fb36421a
Signed-off-by: Maheshwar Ajja <[email protected]>
Dikshita Agarwal 4 년 전
부모
커밋
f3298d2fe6
2개의 변경된 파일4개의 추가작업 그리고 62개의 파일을 삭제
  1. 3 1
      driver/vidc/inc/msm_vidc_debug.h
  2. 1 61
      driver/vidc/src/msm_vidc_debug.c

+ 3 - 1
driver/vidc/inc/msm_vidc_debug.h

@@ -9,6 +9,8 @@
 #include <linux/debugfs.h>
 #include <linux/delay.h>
 #include <linux/types.h>
+#include <linux/module.h>
+#include <linux/moduleparam.h>
 
 #ifndef VIDC_DBG_LABEL
 #define VIDC_DBG_LABEL "msm_vidc"
@@ -35,7 +37,7 @@ extern int msm_vidc_clock_voting;
 /* To enable messages OR these values and
  * echo the result to debugfs file.
  *
- * To enable all messages set debug_level = 0x101F
+ * To enable all messages set msm_vidc_debug = 0x101F
  */
 
 enum vidc_msg_prio {

+ 1 - 61
driver/vidc/src/msm_vidc_debug.c

@@ -15,7 +15,7 @@
 #define MAX_DEBUG_LEVEL_STRING_LEN 15
 
 int msm_vidc_debug = VIDC_ERR | VIDC_PRINTK | FW_ERROR | FW_FATAL;
-EXPORT_SYMBOL(msm_vidc_debug);
+module_param(msm_vidc_debug, int, 0644);
 
 bool msm_vidc_lossless_encode = !true;
 EXPORT_SYMBOL(msm_vidc_lossless_encode);
@@ -141,61 +141,6 @@ static const struct file_operations ssr_fops = {
 	.write = trigger_ssr_write,
 };
 
-static ssize_t debug_level_write(struct file* filp, const char __user* buf,
-	size_t count, loff_t* ppos)
-{
-	int rc = 0;
-	struct msm_vidc_core* core = filp->private_data;
-	char kbuf[MAX_DEBUG_LEVEL_STRING_LEN] = { 0 };
-
-	/* filter partial writes and invalid commands */
-	if (*ppos != 0 || count >= sizeof(kbuf) || count == 0) {
-		d_vpr_e("returning error - pos %d, count %d\n", *ppos, count);
-		rc = -EINVAL;
-	}
-
-	rc = simple_write_to_buffer(kbuf, sizeof(kbuf) - 1, ppos, buf, count);
-	if (rc < 0) {
-		d_vpr_e("%s: User memory fault\n", __func__);
-		rc = -EFAULT;
-		goto exit;
-	}
-
-	rc = kstrtoint(kbuf, 0, &msm_vidc_debug);
-	if (rc) {
-		d_vpr_e("returning error err %d\n", rc);
-		rc = -EINVAL;
-		goto exit;
-	}
-	rc = count;
-	if (core->capabilities) {
-		core->capabilities[HW_RESPONSE_TIMEOUT].value =
-			((msm_vidc_debug & 0xFF) >
-			(VIDC_ERR | VIDC_HIGH)) ? 1500 : 1000;
-		d_vpr_h("debug timeout updated to - %d ms\n",
-			core->capabilities[HW_RESPONSE_TIMEOUT].value);
-	}
-
-exit:
-	return rc;
-}
-
-static ssize_t debug_level_read(struct file* file, char __user* buf,
-	size_t count, loff_t* ppos)
-{
-	size_t len;
-	char kbuf[MAX_DEBUG_LEVEL_STRING_LEN];
-
-	len = scnprintf(kbuf, sizeof(kbuf), "0x%08x\n", msm_vidc_debug);
-	return simple_read_from_buffer(buf, count, ppos, kbuf, len);
-}
-
-static const struct file_operations debug_level_fops = {
-	.open = simple_open,
-	.write = debug_level_write,
-	.read = debug_level_read,
-};
-
 struct dentry* msm_vidc_debugfs_init_drv()
 {
 	struct dentry *dir = NULL;
@@ -251,11 +196,6 @@ struct dentry *msm_vidc_debugfs_init_core(void *core_in)
 		d_vpr_e("debugfs_create_file: fail\n");
 		goto failed_create_dir;
 	}
-	if (!debugfs_create_file("debug_level", 0644,
-			parent, core, &debug_level_fops)) {
-		d_vpr_e("debugfs_create_file: fail\n");
-		goto failed_create_dir;
-	}
 failed_create_dir:
 	return dir;
 }