zoukankan      html  css  js  c++  java
  • wakeup_sources笔记

    1.AndroidR上wakeup_source和之前变化比较大,增加了wakeup class.

    /sys/class/wakeup # ls
    wakeup0    wakeup105  wakeup112  wakeup12   wakeup127  wakeup135  wakeup16  wakeup3   wakeup38  wakeup47  wakeup54  wakeup61  wakeup69  wakeup76  wakeup83  wakeup90  wakeup98
    ......
    /sys/class/wakeup # ls -l
    total 0
    lrwxrwxrwx 1 root root 0 2020-08-28 20:04 wakeup0 -> ../../devices/platform/soc/.../c440000.qcom,spmi:qcom,pm8150@0:qcom,power-on@800/wakeup/wakeup0
    lrwxrwxrwx 1 root root 0 2020-08-28 20:04 wakeup1 -> ../../devices/platform/soc/.../c440000.qcom,spmi:qcom,pm8150b@2:qcom,power-on@800/wakeup/wakeup1

    2.软链接创建过程

    wakeup_source_register() //driversasepowerwakeup.c
        wakeup_source_sysfs_add() //driversasepowerwakeup_stats.c
            wakeup_source_device_create() //driversasepowerwakeup_stats.c
                dev->class = wakeup_class; //device_add()中就会链接到/sys/class/wakeup下
                dev->groups = wakeup_source_groups; //这个就是那wakeup100下的文件
                retval = kobject_set_name(&dev->kobj, "wakeup%d", ws->id);
                device_add(dev); //driversasecore.c
                    device_add_class_symlinks(dev); //driversasecore.c
                        sysfs_create_link(&dev->class->p->subsys.kobj, &dev->kobj, dev_name(dev)); //driversasecore.c  wakeupX链接到子系统的目录下

    3.数量上不一致?

    /sys/devices/virtual/wakeup # ls /sys/class/wakeup/
    wakeup0    wakeup106  wakeup114  wakeup122  wakeup130  wakeup139  wakeup23  wakeup35  wakeup45  wakeup54  wakeup62  wakeup70  wakeup79  wakeup87  wakeup95
    wakeup1    wakeup107  wakeup115  wakeup123  wakeup131  wakeup140  wakeup25  wakeup36  wakeup47  wakeup55  wakeup63  wakeup71  wakeup8   wakeup88  wakeup96
    wakeup10   wakeup108  wakeup116  wakeup124  wakeup132  wakeup141  wakeup27  wakeup37  wakeup48  wakeup56  wakeup64  wakeup72  wakeup80  wakeup89  wakeup97
    wakeup100  wakeup109  wakeup117  wakeup125  wakeup133  wakeup142  wakeup29  wakeup39  wakeup49  wakeup57  wakeup65  wakeup73  wakeup81  wakeup9   wakeup98
    wakeup101  wakeup11   wakeup118  wakeup126  wakeup134  wakeup15   wakeup3   wakeup4   wakeup5   wakeup58  wakeup66  wakeup74  wakeup82  wakeup90  wakeup99
    wakeup102  wakeup110  wakeup119  wakeup127  wakeup135  wakeup17   wakeup31  wakeup40  wakeup50  wakeup59  wakeup67  wakeup75  wakeup83  wakeup91
    wakeup103  wakeup111  wakeup12   wakeup128  wakeup136  wakeup19   wakeup32  wakeup41  wakeup51  wakeup6   wakeup68  wakeup76  wakeup84  wakeup92
    wakeup104  wakeup112  wakeup120  wakeup129  wakeup137  wakeup2    wakeup33  wakeup42  wakeup52  wakeup60  wakeup69  wakeup77  wakeup85  wakeup93
    wakeup105  wakeup113  wakeup121  wakeup13   wakeup138  wakeup21   wakeup34  wakeup44  wakeup53  wakeup61  wakeup7   wakeup78  wakeup86  wakeup94
    /sys/devices/virtual/wakeup #
    /sys/devices/virtual/wakeup # ls
    wakeup100  wakeup105  wakeup110  wakeup115  wakeup120  wakeup125  wakeup130  wakeup135  wakeup140  wakeup47  wakeup62  wakeup81  wakeup90  wakeup96
    wakeup101  wakeup106  wakeup111  wakeup116  wakeup121  wakeup126  wakeup131  wakeup136  wakeup141  wakeup54  wakeup77  wakeup82  wakeup91  wakeup97
    wakeup102  wakeup107  wakeup112  wakeup117  wakeup122  wakeup127  wakeup132  wakeup137  wakeup142  wakeup59  wakeup78  wakeup83  wakeup93  wakeup98
    wakeup103  wakeup108  wakeup113  wakeup118  wakeup123  wakeup128  wakeup133  wakeup138  wakeup4    wakeup6   wakeup79  wakeup84  wakeup94  wakeup99
    wakeup104  wakeup109  wakeup114  wakeup119  wakeup124  wakeup129  wakeup134  wakeup139  wakeup41   wakeup60  wakeup80  wakeup88  wakeup95
    OP4AD9:/sys/devices/virtual/wakeup #

    4.权限不一致

    OP4AD9:/sys/devices/virtual/wakeup # ls -laZ
    total 0
    drwxr-xr-x 71 root root u:object_r:sysfs_wakeup:s0  0 2020-01-01 00:03 .
    drwxr-xr-x 58 root root u:object_r:sysfs:s0         0 1970-01-01 08:00 ..
    drwxr-xr-x  2 root root u:object_r:sysfs_wakeup:s0  0 2020-01-01 00:03 wakeup100
    drwxr-xr-x  2 root root u:object_r:sysfs_wakeup:s0  0 2020-01-01 00:03 wakeup101
    drwxr-xr-x  2 root root u:object_r:sysfs_wakeup:s0  0 2020-01-01 00:03 wakeup102
    ......
    
    P4AD9:/sys/devices/virtual/wakeup # ls /sys/class/wakeup/ -laZ
    total 0
    drwxr-xr-x   2 root root u:object_r:sysfs_wakeup:s0  0 1970-01-01 08:00 .
    drwxr-xr-x 113 root root u:object_r:sysfs:s0         0 1970-01-01 08:00 ..
    lrwxrwxrwx   1 root root u:object_r:sysfs:s0         0 2020-01-01 00:03 wakeup100 -> ../../devices/virtual/wakeup/wakeup100
    lrwxrwxrwx   1 root root u:object_r:sysfs:s0         0 2020-01-01 00:03 wakeup101 -> ../../devices/virtual/wakeup/wakeup101
    lrwxrwxrwx   1 root root u:object_r:sysfs:s0         0 2020-01-01 00:03 wakeup102 -> ../../devices/virtual/wakeup/wakeup102

    权限配置文件位置:source/android/system/sepolicy/private/genfs_contexts

    软链接后的权限就不一致了。。

  • 相关阅读:
    解决多并发
    一个交换机到底能带几台摄像头?结合生产经验咱们来分析!
    ELK查询命令详解
    Ansible自动化部署入门到进阶笔记
    批量SSH key-gen无密码登陆认证脚本
    ELK查询命令详解总结
    Shell 正则表达式详解
    Linux 常用系统性能命令总结
    什么叫做消息队列呢?
    批量SSH key-gen无密码登陆认证脚本 附件脚本
  • 原文地址:https://www.cnblogs.com/hellokitty2/p/13579707.html
Copyright © 2011-2022 走看看