uevent 事件上报demo
来源:互联网 发布:生化危机游戏 知乎 编辑:程序博客网 时间:2024/05/16 07:18
1.驱动上报
diff --git a/kernel/msm-3.18/drivers/input/touchscreen/ft8006u/focaltech_core.c b/kernel/msm-3.18/drivers/input/touchscreen/ft8006u/focaltech_core.cindex 990e636..8fbdb8c 100644--- a/kernel/msm-3.18/drivers/input/touchscreen/ft8006u/focaltech_core.c+++ b/kernel/msm-3.18/drivers/input/touchscreen/ft8006u/focaltech_core.c@@ -1336,6 +1336,7 @@ static struct platform_device hwinfo_device= { .id = -1, };//zhengwu add+ /***************************************************************************** * Name: fts_ts_probe * Brief:@@ -1349,6 +1350,7 @@ static int fts_ts_probe(struct i2c_client *client, const struct i2c_device_id *i struct fts_ts_data *data; struct input_dev *input_dev; int err;+ FTS_FUNC_ENTER(); /* 1. Get Platform data */ if (client->dev.of_node)@@ -1615,6 +1617,10 @@ static int fts_ts_suspend(struct device *dev) { struct fts_ts_data *data = dev_get_drvdata(dev); int retval = 0;+ char *env[] = { "XXXX=iwlwifi", "XXXXXXX=error_dump", NULL };++ kobject_uevent_env(&dev->kobj, KOBJ_CHANGE,env);+ printk("zch---kobj name = %s\n",dev->kobj.name); FTS_FUNC_ENTER(); if (data->suspended)
2.上报打印
diff --git a/kernel/msm-3.18/lib/kobject_uevent.c b/kernel/msm-3.18/lib/kobject_uevent.cindex 9ebf9e2..5f3fd35 100644--- a/kernel/msm-3.18/lib/kobject_uevent.c+++ b/kernel/msm-3.18/lib/kobject_uevent.c@@ -247,12 +247,25 @@ int kobject_uevent_env(struct kobject *kobj, enum kobject_action action, if (retval) goto exit;++if( strcmp( kobj->name ,"3-0038") ==0)+{++ printk( "zch--------ACTION=%s,DEVPATH=%s,SUBSYSTEM=%s\n", action_string,devpath,subsystem);+}+ /* keys passed in from the caller */ if (envp_ext) { for (i = 0; envp_ext[i]; i++) { retval = add_uevent_var(env, "%s", envp_ext[i]);+ + if (retval) goto exit;+ if( strcmp( kobj->name ,"3-0038") ==0)+ {+ printk("zch--- %s \n",envp_ext[i]);+ } } }
3.vold接收事件
diff --git a/system/vold/NetlinkHandler.cpp b/system/vold/NetlinkHandler.cppindex ecda2a0..73fa962 100644--- a/system/vold/NetlinkHandler.cpp+++ b/system/vold/NetlinkHandler.cpp@@ -54,4 +54,25 @@ void NetlinkHandler::onEvent(NetlinkEvent *evt) { if (!strcmp(subsys, "block")) { vm->handleBlockEvent(evt); }++/*++01-02 21:54:20.440 0 0 I : zch--------ACTION=change,DEVPATH=/devices/soc/78b7000.i2c/i2c-3/3-0038,SUBSYSTEM=i2c+01-02 21:54:20.440 0 0 I : zch--- XXXX=iwlwifi+01-02 21:54:20.441 0 0 I : zch--- XXXXXXX=error_dump+01-02 21:54:20.442 0 0 I : zch---kobj name = 3-0038+++*/+++if (!strcmp(subsys, "i2c")) {++ const char *myargs1 = evt->findParam("XXXX")?evt->findParam("XXXX"):"";+ const char * myargs2 = evt->findParam("XXXXXXX")?evt->findParam("XXXXXXX"):"";+ SLOGE("zch---myargs1=%s",myargs1);+ SLOGE("zch---myargs2=%s",myargs2);++ + } }
阅读全文
0 0
- uevent 事件上报demo
- Uevent 上报event事件给上层的详细讲解
- Uevent 上报event事件给上层的详细讲解
- Uevent 上报event事件给上层的详细讲解
- linux电源管理的uevent上报
- 抓取uevent事件
- 《Linux设备节点创建》内核kobject上报uevent过滤规则
- 安卓linux uevent内核上报机制实例
- 应用层捕获uevent事件
- 应用层捕获uevent事件
- 应用层捕获uevent事件
- linux --- iwevent事件上报机制
- linux --- iwevent事件上报机制
- Android event事件上报方法
- Linux Kernel input 上报事件
- getevent获取input上报事件
- uevent
- uevent
- 01背包,完全背包,多重背包
- 搜索排序数组
- [题解]关键子工程 拓扑排序+DP
- Java String 类
- 继承
- uevent 事件上报demo
- 一个故事讲清楚 NIO
- PHP超级全局变量、魔术变量
- linux root删除文件提示permission denied
- CSS之图片水平垂直居中总结
- Python中int32转int64
- C++定时器的实现与应用
- 【leetcode】5. Longest Palindromic Substring(Python & C++)
- 阿里云服务器apache环境安装ssl证书