Android USB驱动源码分析(-)
Android USB驱动中,上层应用协议里最重要的一个文件是android/kernel/drivers/usb/gadget/android.c。这个文件实现USB的上层应用协议。
首先包含了一些系统级别的头文件,如模块、电源管理、of API等
- /*
- * Gadget Driver for Android
- *
- * Copyright (C) 2008 Google, Inc.
- *.Copyright (c) 2014, The Linux Foundation. All rights reserved.
- * Author: Mike Lockwood <lockwood@android.com>
- * Benoit Goby <benoit@android.com>
- *
- * This software is licensed under the terms of the GNU General Public
- * License version 2, as published by the Free Software Foundation, and
- * may be copied, distributed, and modified under those terms.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- */
- #include <linux/init.h>
- #include <linux/module.h>
- #include <linux/fs.h>
- #include <linux/delay.h>
- #include <linux/kernel.h>
- #include <linux/utsname.h>
- #include <linux/platform_device.h>
- #include <linux/pm_qos.h>
- #include <linux/of.h>
然后是跟USB驱动本身先关的头文件
- #include <linux/usb/ch9.h>
- #include <linux/usb/composite.h>
- #include <linux/usb/gadget.h>
- #include <linux/usb/android.h>
- #include <linux/qcom/diag_dload.h>
- #include "gadget_chips.h"
然后包含了一堆实现上层USB应用协议的c文件
- #include "f_fs.c"
- #ifdef CONFIG_SND_PCM
- #include "f_audio_source.c"
- #endif
- #include "f_mass_storage.c"
- #define USB_ETH_RNDIS y
- #include "f_diag.c"
- #include "f_qdss.c"
- #include "f_rmnet_smd.c"
- #include "f_rmnet.c"
- #include "f_gps.c"
- #include "u_smd.c"
- #include "u_bam.c"
- #include "u_rmnet_ctrl_smd.c"
- #include "u_rmnet_ctrl_qti.c"
- #include "u_ctrl_hsic.c"
- #include "u_data_hsic.c"
- #include "u_ctrl_hsuart.c"
- #include "u_data_hsuart.c"
- #include "f_ccid.c"
- #include "f_mtp.c"
- #include "f_accessory.c"
- #include "f_rndis.c"
- #include "rndis.c"
- #include "f_qc_ecm.c"
- #include "f_mbim.c"
- #include "f_qc_rndis.c"
- #include "u_bam_data.c"
- #include "f_ecm.c"
- #include "u_ether.c"
- #include "u_qc_ether.c"
- #ifdef CONFIG_TARGET_CORE
- #endif
- #ifdef CONFIG_SND_PCM
- #include "u_uac1.c"
- #include "f_uac1.c"
- #endif
- #include "f_ncm.c"
- #include "f_charger.c"
上边的宏 CONFIG_SND_PCM 有定义,宏 CONFIG_TARGET_CORE 未定义
然后是Linux驱动中常见的宏声明,定义了作者、描述、LICENSE、版本号
- MODULE_AUTHOR("Mike Lockwood");
- MODULE_DESCRIPTION("Android Composite USB Driver");
- MODULE_LICENSE("GPL");
- MODULE_VERSION("1.0");
下面定义的变量未使用
- static const char longname[] = "Gadget Android";
Google自己申请的VID与PID的宏,可以在用户空间的init.**.usb.rc文件里被覆写
- /* Default vendor and product IDs, overridden by userspace */
- #define VENDOR_ID 0x18D1
- #define PRODUCT_ID 0x0001
宏 #define ANDROID_DEVICE_NODE_NAME_LENGTH 11 定义 /sys/class/android_usb/ 下的文件节点android0之类的文件名最大长度
结构体 android_usb_function 抽象了Android自定义的用来hook Linux USB驱动框架中的相应功能的功能函数
- struct android_usb_function {
- char *name;
- void *config;
- struct device *dev;
- char *dev_name;
- struct device_attribute **attributes;
- struct android_dev *android_dev;
- /* Optional: initialization during gadget bind */
- int (*init)(struct android_usb_function *, struct usb_composite_dev *);
- /* Optional: cleanup during gadget unbind */
- void (*cleanup)(struct android_usb_function *);
- /* Optional: called when the function is added the list of
- * enabled functions */
- void (*enable)(struct android_usb_function *);
- /* Optional: called when it is removed */
- void (*disable)(struct android_usb_function *);
- int (*bind_config)(struct android_usb_function *,
- struct usb_configuration *);
- /* Optional: called when the configuration is removed */
- void (*unbind_config)(struct android_usb_function *,
- struct usb_configuration *);
- /* Optional: handle ctrl requests before the device is configured */
- int (*ctrlrequest)(struct android_usb_function *,
- struct usb_composite_dev *,
- const struct usb_ctrlrequest *);
- };
结构体 android_usb_function_holder 持有所有的当前支持的可以实现的USB设备
- struct android_usb_function_holder {
- struct android_usb_function *f;
- /* for android_conf.enabled_functions */
- struct list_head enabled_list;
- };
结构体 android_dev 抽象了android USB gadget device,即 /sys/class/android_usb 下的 android0 等节点(目前就一个)
- /**
- * struct android_dev - represents android USB gadget device
- * @name: device name.
- * @functions: an array of all the supported USB function
- * drivers that this gadget support but not necessarily
- * added to one of the gadget configurations.
- * @cdev: The internal composite device. Android gadget device
- * is a composite device, such that it can support configurations
- * with more than one function driver.
- * @dev: The kernel device that represents this android device.
- * @enabled: True if the android gadget is enabled, means all
- * the configurations were set and all function drivers were
- * bind and ready for USB enumeration.
- * @disable_depth: Number of times the device was disabled, after
- * symmetrical number of enables the device willl be enabled.
- * Used for controlling ADB userspace disable/enable requests.
- * @mutex: Internal mutex for protecting device member fields.
- * @pdata: Platform data fetched from the kernel device platfrom data.
- * @connected: True if got connect notification from the gadget UDC.
- * False if got disconnect notification from the gadget UDC.
- * @sw_connected: Equal to 'connected' only after the connect
- * notification was handled by the android gadget work function.
- * @suspended: True if got suspend notification from the gadget UDC.
- * False if got resume notification from the gadget UDC.
- * @sw_suspended: Equal to 'suspended' only after the susped
- * notification was handled by the android gadget work function.
- * @pm_qos: An attribute string that can be set by user space in order to
- * determine pm_qos policy. Set to 'high' for always demand pm_qos
- * when USB bus is connected and resumed. Set to 'low' for disable
- * any setting of pm_qos by this driver. Default = 'high'.
- * @work: workqueue used for handling notifications from the gadget UDC.
- * @configs: List of configurations currently configured into the device.
- * The android gadget supports more than one configuration. The host
- * may choose one configuration from the suggested.
- * @configs_num: Number of configurations currently configured and existing
- * in the configs list.
- * @list_item: This driver supports more than one android gadget device (for
- * example in order to support multiple USB cores), therefore this is
- * a item in a linked list of android devices.
- */
- struct android_dev {
- const char *name;
- struct android_usb_function **functions;
- struct usb_composite_dev *cdev;
- struct device *dev;
- void (*setup_complete)(struct usb_ep *ep,
- struct usb_request *req);
- bool enabled;
- int disable_depth;
- struct mutex mutex;
- struct android_usb_platform_data *pdata;
- bool connected;
- bool sw_connected;
- bool suspended;
- bool sw_suspended;
- char pm_qos[];
- struct pm_qos_request pm_qos_req_dma;
- struct work_struct work;
- char ffs_aliases[];
- /* A list of struct android_configuration */
- struct list_head configs;
- int configs_num;
- /* A list node inside the android_dev_list */
- struct list_head list_item;
- };
结构体 android_configuration 抽象USB设备传送给HOST的配置信息
- struct android_configuration {
- struct usb_configuration usb_config;
- /* A list of the functions supported by this config */
- struct list_head enabled_functions;
- /* A list node inside the struct android_dev.configs list */
- struct list_head list_item;
- };
下面的变量跟9006模式有关,即ramdupm(download)
- struct dload_struct __iomem *diag_dload;
下面的变量是对Android USB的 /sys/class/android_usb 目录的抽象
- static struct class *android_class;
下边的变量是android dev的list和数量,对应的是 /sys/class/android_usb 目录下的“android0”之类的目录
- static struct list_head android_dev_list;
- static int android_dev_count;
下边的函数在bind config和unbind config是调用
- static int android_bind_config(struct usb_configuration *c);
- static void android_unbind_config(struct usb_configuration *c);
下边的函数转换 usb_composite_dev 到 android_dev
- static struct android_configuration *alloc_android_config
- (struct android_dev *dev);
下边的函数分配和释放Android USB设备的configuration
- static struct android_configuration *alloc_android_config
- (struct android_dev *dev);
- static void free_android_config(struct android_dev *dev,
- struct android_configuration *conf);
下边的函数更新PID和USB串号
- static int usb_diag_update_pid_and_serial_num(uint32_t pid, const char *snum);
下边的宏和变量跟VID、PID、串号相关,会形成String表,保存在跟device string相关的变量 usb_gadget_strings 里
- /* string IDs are assigned dynamically */
- #define STRING_MANUFACTURER_IDX 0
- #define STRING_PRODUCT_IDX 1
- #define STRING_SERIAL_IDX 2
- static char manufacturer_string[];
- static char product_string[];
- static char serial_string[];
- /* String Table */
- static struct usb_string strings_dev[] = {
- [STRING_MANUFACTURER_IDX].s = manufacturer_string,
- [STRING_PRODUCT_IDX].s = product_string,
- [STRING_SERIAL_IDX].s = serial_string,
- { } /* end of list */
- };
- static struct usb_gadget_strings stringtab_dev = {
- .language = 0x0409, /* en-us */
- .strings = strings_dev,
- };
- static struct usb_gadget_strings *dev_strings[] = {
- &stringtab_dev,
- NULL,
- };
下边的结构体抽象出发送给HOST的USB设备描述符,可以通过文件节点 /sys/class/android_usb/android0 下的相应节点来查看和改变
- static struct usb_device_descriptor device_desc = {
- .bLength = sizeof(device_desc),
- .bDescriptorType = USB_DT_DEVICE,
- .bcdUSB = __constant_cpu_to_le16(0x0200),
- .bDeviceClass = USB_CLASS_PER_INTERFACE,
- .idVendor = __constant_cpu_to_le16(VENDOR_ID),
- .idProduct = __constant_cpu_to_le16(PRODUCT_ID),
- .bcdDevice = __constant_cpu_to_le16(0xffff),
- .bNumConfigurations = ,
- };
下边的结构体抽象出跟USB OTG相关的描述符,使用OTG,手机进入HOST模式
- static struct usb_otg_descriptor otg_descriptor = {
- .bLength = sizeof otg_descriptor,
- .bDescriptorType = USB_DT_OTG,
- .bmAttributes = USB_OTG_SRP | USB_OTG_HNP,
- .bcdOTG = __constant_cpu_to_le16(0x0200),
- };
- static const struct usb_descriptor_header *otg_desc[] = {
- (struct usb_descriptor_header *) &otg_descriptor,
- NULL,
- };
枚举 android_device_state 描述设备的状态,有断开连接,连接,配置好,挂起,恢复 。工作时的状态是配置好
- enum android_device_state {
- USB_DISCONNECTED,
- USB_CONNECTED,
- USB_CONFIGURED,
- USB_SUSPENDED,
- USB_RESUMED
- };
下边的init函数在模块初始化时调用
- static int __init init(void)
- {
- int ret;
- INIT_LIST_HEAD(&android_dev_list);
- android_dev_count = ;
- ret = platform_driver_register(&android_platform_driver);
- if (ret) {
- pr_err("%s(): Failed to register android"
- "platform driver\n", __func__);
- }
- /* HACK: exchange composite's setup with ours */
- composite_setup_func = android_usb_driver.gadget_driver.setup;
- android_usb_driver.gadget_driver.setup = android_setup;
- composite_suspend_func = android_usb_driver.gadget_driver.suspend;
- android_usb_driver.gadget_driver.suspend = android_suspend;
- composite_resume_func = android_usb_driver.gadget_driver.resume;
- android_usb_driver.gadget_driver.resume = android_resume;
- return ret;
- }
- late_initcall(init);
首先,初始化Android设备list android_dev_list 和Android设备数 android_dev_count 为0,然后注册platform driver android_platform_driver 。最后,hook Linux USB驱动框架的复口USB驱动的setup、suspend、resume函数为本文件中定义的android_*****函数。变量 android_usb_driver 为 usb_composite_driver 类型结构体,用来hook系统的usb_composite框架下的相关函数,定义如下
- static struct usb_composite_driver android_usb_driver = {
- .name = "android_usb",
- .dev = &device_desc,
- .strings = dev_strings,
- .bind = android_bind,
- .unbind = android_usb_unbind,
- .disconnect = android_disconnect,
- .max_speed = USB_SPEED_SUPER
- };
本文件中的platform_driver相关配置如下,字符串 "android_usb_hsic" 没用到
- static const struct platform_device_id android_id_table[] = {
- {
- .name = "android_usb",
- },
- {
- .name = "android_usb_hsic",
- },
- };
- static struct of_device_id usb_android_dt_match[] = {
- { .compatible = "qcom,android-usb",
- },
- {}
- };
- static struct platform_driver android_platform_driver = {
- .driver = {
- .name = "android_usb",
- .of_match_table = usb_android_dt_match,
- },
- .probe = android_probe,
- .remove = android_remove,
- .id_table = android_id_table,
- };
probe函数如下,主要作用是分配相应私有、全局的data、list、mutex等变量,读取dts中的配置,设置到相应的结构体里去,在 /sys/class 下添加文件目录节点 ,将自身的驱动probe到usb composite框架中,并设置休眠唤醒参数。
- static int android_probe(struct platform_device *pdev)
- {
- struct android_usb_platform_data *pdata;
- struct android_dev *android_dev;
- struct resource *res;
- int ret = , i, len = ;
- if (pdev->dev.of_node) {
- dev_dbg(&pdev->dev, "device tree enabled\n");
- pdata = devm_kzalloc(&pdev->dev, sizeof(*pdata), GFP_KERNEL);
- if (!pdata) {
- pr_err("unable to allocate platform data\n");
- return -ENOMEM;
- }
- of_property_read_u32(pdev->dev.of_node,
- "qcom,android-usb-swfi-latency",
- &pdata->swfi_latency);
- len = of_property_count_strings(pdev->dev.of_node,
- "qcom,streaming-func");
- if (len > MAX_STREAMING_FUNCS) {
- pr_err("Invalid number of functions used.\n");
- return -EINVAL;
- }
- for (i = ; i < len; i++) {
- const char *name = NULL;
- of_property_read_string_index(pdev->dev.of_node,
- "qcom,streaming-func", i, &name);
- if (!name)
- continue;
- if (sizeof(name) > FUNC_NAME_LEN) {
- pr_err("Function name is bigger than allowed.\n");
- continue;
- }
- strlcpy(pdata->streaming_func[i], name,
- sizeof(pdata->streaming_func[i]));
- pr_debug("name of streaming function:%s\n",
- pdata->streaming_func[i]);
- }
- pdata->streaming_func_count = len;
- pdata->cdrom = of_property_read_bool(pdev->dev.of_node,
- "qcom,android-usb-cdrom");
- ret = of_property_read_u8(pdev->dev.of_node,
- "qcom,android-usb-uicc-nluns",
- &pdata->uicc_nluns);
- } else {
- pdata = pdev->dev.platform_data;
- }
- if (!android_class) {
- android_class = class_create(THIS_MODULE, "android_usb");
- if (IS_ERR(android_class))
- return PTR_ERR(android_class);
- }
- android_dev = kzalloc(sizeof(*android_dev), GFP_KERNEL);
- if (!android_dev) {
- pr_err("%s(): Failed to alloc memory for android_dev\n",
- __func__);
- ret = -ENOMEM;
- goto err_alloc;
- }
- android_dev->name = pdev->name;
- android_dev->disable_depth = ;
- android_dev->functions = supported_functions;
- android_dev->configs_num = ;
- INIT_LIST_HEAD(&android_dev->configs);
- INIT_WORK(&android_dev->work, android_work);
- mutex_init(&android_dev->mutex);
- android_dev->pdata = pdata;
- list_add_tail(&android_dev->list_item, &android_dev_list);
- android_dev_count++;
- res = platform_get_resource(pdev, IORESOURCE_MEM, );
- if (res) {
- diag_dload = devm_ioremap(&pdev->dev, res->start,
- resource_size(res));
- if (!diag_dload) {
- dev_err(&pdev->dev, "ioremap failed\n");
- ret = -ENOMEM;
- goto err_dev;
- }
- } else {
- dev_dbg(&pdev->dev, "failed to get mem resource\n");
- }
- if (pdata)
- ret = android_create_device(android_dev, pdata->usb_core_id);
- else
- ret = android_create_device(android_dev, );
- if (ret) {
- pr_err("%s(): android_create_device failed\n", __func__);
- goto err_dev;
- }
- ret = usb_composite_probe(&android_usb_driver);
- if (ret) {
- /* Perhaps UDC hasn't probed yet, try again later */
- if (ret == -ENODEV)
- ret = -EPROBE_DEFER;
- else
- pr_err("%s(): Failed to register android composite driver\n",
- __func__);
- goto err_probe;
- }
- /* pm qos request to prevent apps idle power collapse */
- if (pdata && pdata->swfi_latency)
- pm_qos_add_request(&android_dev->pm_qos_req_dma,
- PM_QOS_CPU_DMA_LATENCY, PM_QOS_DEFAULT_VALUE);
- strlcpy(android_dev->pm_qos, "high", sizeof(android_dev->pm_qos));
- return ret;
- err_probe:
- android_destroy_device(android_dev);
- err_dev:
- list_del(&android_dev->list_item);
- android_dev_count--;
- kfree(android_dev);
- err_alloc:
- if (list_empty(&android_dev_list)) {
- class_destroy(android_class);
- android_class = NULL;
- }
- return ret;
- }
结构体 android_usb_platform_data 是android usb platform driver的dev的private data。其定义位于androd/kerenl/include/linux/usb/andriod.h文件中,这文件首先包含了usb复口头文件composite.h
- /*
- * Platform data for Android USB
- *
- * Copyright (C) 2008 Google, Inc.
- * Author: Mike Lockwood <lockwood@android.com>
- *
- * This software is licensed under the terms of the GNU General Public
- * License version 2, as published by the Free Software Foundation, and
- * may be copied, distributed, and modified under those terms.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- */
- #ifndef __LINUX_USB_ANDROID_H
- #define __LINUX_USB_ANDROID_H
- #include <linux/usb/composite.h>
然后定义了结构体 android_usb_platform_data 及其中数组的最大范围用到的宏
- #define MAX_STREAMING_FUNCS 3
- #define FUNC_NAME_LEN 10
- struct android_usb_platform_data {
- int (*update_pid_and_serial_num)(uint32_t, const char *);
- u32 pm_qos_latency[MAX_VOTES];
- u8 usb_core_id;
- char streaming_func[MAX_STREAMING_FUNCS][FUNC_NAME_LEN];
- int streaming_func_count;
- u8 uicc_nluns;
- bool cdrom;
- };
回到 android_probe 函数,若相应的dev有of_node,即在dts中有定义,则获取相应的配置。Android USB在dts中的配置位于android/kernel/arc/arm(或arm64,都一样,arm64中的qcom目录是对arm的软链接)/boot/dts/qcom目录下的msm8916.dtsi和msm8916-qrd.dtsi中,内容如下
- android_usb: android_usb@086000c8 {
- compatible = "qcom,android-usb";
- reg = <0x086000c8 0xc8>;
- qcom,android-usb-swfi-latency = <>;
- qcom,streaming-func = "mtp";
- qcom,android-usb-uicc-nluns = /bits/ <>;
- };
- &android_usb {
- qcom,android-usb-cdrom;
- };
首先通过 devm_kzalloc 函数为相应dev的private指针分配内存,其类型为 android_usb_platform_data 。
然后读出 qcom,android-usb-swfi-latency ,其值用在 pm_qos_update_request 函数中来定义投票级别,默认值是1。
然后读出 qcom,streaming-func 的个数,并在循环中读出stream func,传给platform data里的 streaming_func 和 streaming_func_count 中,这里的值只有一个"mtp"。
然后读出 qcom,android-usb-cdrom ,根据其存在与否决定是否支持CDROM。
最后读出 qcom,android-usb-uicc-nluns ,其在dtsi中的写法规定其占8位,即一个字节,默认值为1。
若不存在dts文件,则用传统的platform_device。
在配置好platform_data后,则调用 class_create 函数创建 /sys/class 下的文件节点。
然后分配 android_dev 的内存,有dev的name、disable的深度、支持的USB功能、配置的数量、初始化configs list和work对了,配置其执行函数为 android_work 、初始化相应的mutex、设定之前分配的pdata。添加list_item到全局的 android_dev_list 中,并将 android_dev_count 加1。
支持的USB功能在变量 supported_functions 数组中,其类型为 android_usb_function ,内容如下
- static struct android_usb_function *supported_functions[] = {
- &ffs_function,
- &mbim_function,
- &ecm_qc_function,
- #ifdef CONFIG_SND_PCM
- &audio_function,
- #endif
- &rmnet_smd_function,
- &rmnet_function,
- &gps_function,
- &diag_function,
- &qdss_function,
- &serial_function,
- &ccid_function,
- &acm_function,
- &mtp_function,
- &ptp_function,
- &rndis_function,
- &rndis_qc_function,
- &ecm_function,
- &ncm_function,
- &mass_storage_function,
- &accessory_function,
- #ifdef CONFIG_SND_PCM
- &audio_source_function,
- #endif
- &uasp_function,
- &charger_function,
- NULL
- };
各个具体的功能定义如下。
第一个ffs就是adb
- static struct android_usb_function ffs_function = {
- .name = "ffs",
- .init = ffs_function_init,
- .enable = ffs_function_enable,
- .disable = ffs_function_disable,
- .cleanup = ffs_function_cleanup,
- .bind_config = ffs_function_bind_config,
- .attributes = ffs_function_attributes,
- };
其他的见其名字
- static struct android_usb_function mbim_function = {
- .name = "usb_mbim",
- .cleanup = mbim_function_cleanup,
- .bind_config = mbim_function_bind_config,
- .init = mbim_function_init,
- .ctrlrequest = mbim_function_ctrlrequest,
- .attributes = mbim_function_attributes,
- };
- static struct android_usb_function ecm_qc_function = {
- .name = "ecm_qc",
- .init = ecm_function_init,
- .cleanup = ecm_function_cleanup,
- .bind_config = ecm_qc_function_bind_config,
- .unbind_config = ecm_qc_function_unbind_config,
- .attributes = ecm_function_attributes,
- };
- #ifdef CONFIG_SND_PCM
- static struct android_usb_function audio_function = {
- .name = "audio",
- .bind_config = audio_function_bind_config,
- };
- #endif
- static struct android_usb_function rmnet_smd_function = {
- .name = "rmnet_smd",
- .bind_config = rmnet_smd_function_bind_config,
- };
- static struct android_usb_function rmnet_function = {
- .name = "rmnet",
- .cleanup = rmnet_function_cleanup,
- .bind_config = rmnet_function_bind_config,
- .unbind_config = rmnet_function_unbind_config,
- .attributes = rmnet_function_attributes,
- };
- static struct android_usb_function gps_function = {
- .name = "gps",
- .cleanup = gps_function_cleanup,
- .bind_config = gps_function_bind_config,
- };
- static struct android_usb_function diag_function = {
- .name = "diag",
- .init = diag_function_init,
- .cleanup = diag_function_cleanup,
- .bind_config = diag_function_bind_config,
- .attributes = diag_function_attributes,
- };
- static struct android_usb_function qdss_function = {
- .name = "qdss",
- .init = qdss_function_init,
- .cleanup = qdss_function_cleanup,
- .bind_config = qdss_function_bind_config,
- .attributes = qdss_function_attributes,
- };
- static struct android_usb_function serial_function = {
- .name = "serial",
- .init = serial_function_init,
- .cleanup = serial_function_cleanup,
- .bind_config = serial_function_bind_config,
- .attributes = serial_function_attributes,
- };
- static struct android_usb_function ccid_function = {
- .name = "ccid",
- .init = ccid_function_init,
- .cleanup = ccid_function_cleanup,
- .bind_config = ccid_function_bind_config,
- };
- static struct android_usb_function acm_function = {
- .name = "acm",
- .init = acm_function_init,
- .cleanup = acm_function_cleanup,
- .bind_config = acm_function_bind_config,
- .unbind_config = acm_function_unbind_config,
- .attributes = acm_function_attributes,
- };
- static struct android_usb_function mtp_function = {
- .name = "mtp",
- .init = mtp_function_init,
- .cleanup = mtp_function_cleanup,
- .bind_config = mtp_function_bind_config,
- .ctrlrequest = mtp_function_ctrlrequest,
- };
- /* PTP function is same as MTP with slightly different interface descriptor */
- static struct android_usb_function ptp_function = {
- .name = "ptp",
- .init = ptp_function_init,
- .cleanup = ptp_function_cleanup,
- .bind_config = ptp_function_bind_config,
- };
- static struct android_usb_function rndis_function = {
- .name = "rndis",
- .init = rndis_function_init,
- .cleanup = rndis_function_cleanup,
- .bind_config = rndis_function_bind_config,
- .unbind_config = rndis_function_unbind_config,
- .attributes = rndis_function_attributes,
- };
- static struct android_usb_function rndis_qc_function = {
- .name = "rndis_qc",
- .init = rndis_qc_function_init,
- .cleanup = rndis_qc_function_cleanup,
- .bind_config = rndis_qc_function_bind_config,
- .unbind_config = rndis_qc_function_unbind_config,
- .attributes = rndis_function_attributes,
- };
- static struct android_usb_function ecm_function = {
- .name = "ecm",
- .init = ecm_function_init,
- .cleanup = ecm_function_cleanup,
- .bind_config = ecm_function_bind_config,
- .unbind_config = ecm_function_unbind_config,
- .attributes = ecm_function_attributes,
- };
- static struct android_usb_function ncm_function = {
- .name = "ncm",
- .init = ncm_function_init,
- .cleanup = ncm_function_cleanup,
- .bind_config = ncm_function_bind_config,
- .unbind_config = ncm_function_unbind_config,
- .attributes = ncm_function_attributes,
- };
- static struct android_usb_function mass_storage_function = {
- .name = "mass_storage",
- .init = mass_storage_function_init,
- .cleanup = mass_storage_function_cleanup,
- .bind_config = mass_storage_function_bind_config,
- .attributes = mass_storage_function_attributes,
- .enable = mass_storage_function_enable,
- };
- static struct android_usb_function accessory_function = {
- .name = "accessory",
- .init = accessory_function_init,
- .cleanup = accessory_function_cleanup,
- .bind_config = accessory_function_bind_config,
- .ctrlrequest = accessory_function_ctrlrequest,
- };
- static struct android_usb_function audio_source_function = {
- .name = "audio_source",
- .init = audio_source_function_init,
- .cleanup = audio_source_function_cleanup,
- .bind_config = audio_source_function_bind_config,
- .unbind_config = audio_source_function_unbind_config,
- .attributes = audio_source_function_attributes,
- };
- static struct android_usb_function uasp_function = {
- .name = "uasp",
- .init = uasp_function_init,
- .cleanup = uasp_function_cleanup,
- .bind_config = uasp_function_bind_config,
- };
- static struct android_usb_function charger_function = {
- .name = "charging",
- .bind_config = charger_function_bind_config,
- };
然后申请分配给USB的IO空间地址,即 reg = <0x086000c8 0xc8>; ,获取到后分配给 diag_dload 。
然后调用 andriod_create_device 函数,创建sys下的文件节点,比如 /sys/class/android_usb/android0之类的 , android_dev_list 中的单项就对应这个, usb_core_id 为0(因为 devm_kzalloc 里有个“z”,即用0初始化分配的内存)。
其函数如下
- static int android_create_device(struct android_dev *dev, u8 usb_core_id)
- {
- struct device_attribute **attrs = android_usb_attributes;
- struct device_attribute *attr;
- char device_node_name[ANDROID_DEVICE_NODE_NAME_LENGTH];
- int err;
- /*
- * The primary usb core should always have usb_core_id=0, since
- * Android user space is currently interested in android0 events.
- */
- snprintf(device_node_name, ANDROID_DEVICE_NODE_NAME_LENGTH,
- "android%d", usb_core_id);
- dev->dev = device_create(android_class, NULL,
- MKDEV(, ), NULL, device_node_name);
- if (IS_ERR(dev->dev))
- return PTR_ERR(dev->dev);
- dev_set_drvdata(dev->dev, dev);
- while ((attr = *attrs++)) {
- err = device_create_file(dev->dev, attr);
- if (err) {
- device_destroy(android_class, dev->dev->devt);
- return err;
- }
- }
- return ;
- }
初始化相应节点的名字后,调用 device_create 函数创建节点 /sys/class/android_usb/android0 ,并设置创造出来的文件节点的dev的private data为dev。
然后在循环里在创造出来的目录下创建更多的节点,这些节点的定义位于 android_usb_attributes 。若有错误,则销毁目录 /sys/class/android_usb/android0 。
android_usb_attributes 内容如下
- static struct device_attribute *android_usb_attributes[] = {
- &dev_attr_idVendor,
- &dev_attr_idProduct,
- &dev_attr_bcdDevice,
- &dev_attr_bDeviceClass,
- &dev_attr_bDeviceSubClass,
- &dev_attr_bDeviceProtocol,
- &dev_attr_iManufacturer,
- &dev_attr_iProduct,
- &dev_attr_iSerial,
- &dev_attr_functions,
- &dev_attr_enable,
- &dev_attr_pm_qos,
- &dev_attr_state,
- &dev_attr_remote_wakeup,
- NULL
- };
实现这些文件节点是通过宏 DESCRIPTOR_ATTR 和 DESCRIPTOR_STRING_ATTR 自动实现相应节点的show和store函数的,这两个宏如下
- #define DESCRIPTOR_ATTR(field, format_string) \
- static ssize_t \
- field ## _show(struct device *dev, struct device_attribute *attr, \
- char *buf) \
- { \
- return snprintf(buf, PAGE_SIZE, \
- format_string, device_desc.field); \
- } \
- static ssize_t \
- field ## _store(struct device *dev, struct device_attribute *attr, \
- const char *buf, size_t size) \
- { \
- int value; \
- if (sscanf(buf, format_string, &value) == ) { \
- device_desc.field = value; \
- return size; \
- } \
- return -; \
- } \
- static DEVICE_ATTR(field, S_IRUGO | S_IWUSR, field ## _show, field ## _store);
- #define DESCRIPTOR_STRING_ATTR(field, buffer) \
- static ssize_t \
- field ## _show(struct device *dev, struct device_attribute *attr, \
- char *buf) \
- { \
- return snprintf(buf, PAGE_SIZE, "%s", buffer); \
- } \
- static ssize_t \
- field ## _store(struct device *dev, struct device_attribute *attr, \
- const char *buf, size_t size) \
- { \
- if (size >= sizeof(buffer)) \
- return -EINVAL; \
- strlcpy(buffer, buf, sizeof(buffer)); \
- strim(buffer); \
- return size; \
- } \
- static DEVICE_ATTR(field, S_IRUGO | S_IWUSR, field ## _show, field ## _store);
相应宏的定义如下
- DESCRIPTOR_ATTR(idVendor, "%04x\n")
- DESCRIPTOR_ATTR(idProduct, "%04x\n")
- DESCRIPTOR_ATTR(bcdDevice, "%04x\n")
- DESCRIPTOR_ATTR(bDeviceClass, "%d\n")
- DESCRIPTOR_ATTR(bDeviceSubClass, "%d\n")
- DESCRIPTOR_ATTR(bDeviceProtocol, "%d\n")
- DESCRIPTOR_STRING_ATTR(iManufacturer, manufacturer_string)
- DESCRIPTOR_STRING_ATTR(iProduct, product_string)
- DESCRIPTOR_STRING_ATTR(iSerial, serial_string)
节点functions、enable、pm_qos、state、remote_wakeup的定义如下
- static DEVICE_ATTR(functions, S_IRUGO | S_IWUSR, functions_show,
- functions_store);
- static DEVICE_ATTR(enable, S_IRUGO | S_IWUSR, enable_show, enable_store);
- static DEVICE_ATTR(pm_qos, S_IRUGO | S_IWUSR,
- pm_qos_show, pm_qos_store);
- static DEVICE_ATTR(state, S_IRUGO, state_show, NULL);
- static DEVICE_ATTR(remote_wakeup, S_IRUGO | S_IWUSR,
- remote_wakeup_show, remote_wakeup_store);
然后 usb_composite_probe 函数会被手动调用,加载 android_usb_driver 。
最后发送添加pm qos请求,并设置 pm_qos 为“High”,返回结果为0。
函数的最后有 "error_probe","err_dev","err_alloc" 三个标签,处理不同阶段的错误。
再看退出相关的函数
先是注册移除函数
- static void __exit cleanup(void)
- {
- platform_driver_unregister(&android_platform_driver);
- }
- module_exit(cleanup);
然后 android_remove 函数被框架自动调用
- static int android_remove(struct platform_device *pdev)
- {
- struct android_dev *dev = NULL;
- struct android_usb_platform_data *pdata = pdev->dev.platform_data;
- int usb_core_id = ;
- if (pdata)
- usb_core_id = pdata->usb_core_id;
- /* Find the android dev from the list */
- list_for_each_entry(dev, &android_dev_list, list_item) {
- if (!dev->pdata)
- break; /*To backward compatibility*/
- if (dev->pdata->usb_core_id == usb_core_id)
- break;
- }
- if (dev) {
- android_destroy_device(dev);
- if (pdata && pdata->swfi_latency)
- pm_qos_remove_request(&dev->pm_qos_req_dma);
- list_del(&dev->list_item);
- android_dev_count--;
- kfree(dev);
- }
- if (list_empty(&android_dev_list)) {
- class_destroy(android_class);
- android_class = NULL;
- usb_composite_unregister(&android_usb_driver);
- }
- return ;
- }
先是遍历 android_dev_list ,相应的 dev 的 pdata 为空或者 usb_core_id 相同时就打断循环,调用 android_destroy_device 销毁设备,要是 swfi_latency 不为0的话,移除pm qos请求,在列表中删除这个 dev , android_dev_count 减1,释放相应 dev 的内存。
android_destroy_device 函数如下
- static void android_destroy_device(struct android_dev *dev)
- {
- struct device_attribute **attrs = android_usb_attributes;
- struct device_attribute *attr;
- while ((attr = *attrs++))
- device_remove_file(dev->dev, attr);
- device_destroy(android_class, dev->dev->devt);
- }
可以看到,其功能就是删除目录 /sys/class/android_usb/android0 下的文件节点和目录本身。
若 android_dev_list 为空的话,就销毁目录 /sys/class/android_usb ,并调用函数 usb_composite_unregister 移除 android_usb_driver ,最后返回0。
当用USB线把Android设备与HOST连接时,Android设备会枚举自己。(挖坑)
先说下USB协议的基础知识。
显示USB描述符。
USB协议为USB设备定义了一套描述设备功能和属性的有固定结构的描述符,包括标准的描述符即设备描述符、配置描述符、接口描述符、端点描述符和字符串描述符,还有非标准描述符,如类描述符等。USB设备通过这些描述符向USB主机汇报设备的各种各样属性,主机通过对这些描述符的访问对设备进行类型识别、配置并为其提供相应的客户端驱动程序。
USB设备通过描述符反映自己的设备特性。USB描述符是由特定格式排列的一组数据结构组成。
在USB设备枚举过程中,主机端的协义软件需要解析从USB设备读取的所有描述符信息。在USB主向设备发送读取描述符的请求后,USB设备将所有的描述符以连续的数据流方式传输给USB主机。主机从第一个读到的字符开始,根据双方规定好的数据格式,顺序地解析读到的数据流。
USB描述符包含标准描述符、类描述符和厂商特定描述3种形式。任何一种设备必须提供USB标准描述符(对字符串描述符可例外)。
在USB1.X中,规定了5种标准描述符:设备描述符(Device Descriptor)、配置描述符(Configuration Descriptor)、接口描述符(Interface Descriptor)、端点描述符(Endpoint Descriptor)和字符串描述符(String Descriptor)。
每个USB设备只有一个设备描述符,而一个设备中可包含一个或多个配置描述符,即USB设备可以有多种配置(物理特性,如供电)。设备的每一个配置中又可以包含一个或多个接口描述符,即USB设备可以支持多种功能(接口),接口的特性通过描述符提供。每一个接口描述符包含多个端点描述符,端点是USB通信的最基本形式,每一个USB设备接口在主机看来就是一个端点的集合。主机只能通过端点与设备进行通信,以使用设备的功能。在USB系统中每一个端点都有惟一的地址,这是由设备地址和端点号给出的。每个端点都有一定的属性,其中包括传输方式、总线访问频率、带宽、端点号和数据包的最大容量等。一个USB端点只能在一个方向承载数据,或者从主机到设备(称为输出端点),或者从设备到主机(称为输入端点),因此端点可看作一个单向的管道。端点0通常为控制端点,用于设备初始化参数等。只要设备连接到USB上并且上电端点0就可以被访问。端点1、2等一般用作数据端点,存放主机与设备间往来的数据。
在USB主机访问USB设备的描述符时,USB设备依照设备描述符、配置描述符、接口描述符、端点描述符、字符串描述符顺序将所有描述符传给主机。一设备至少要包含设备描述符、配置描述符和接口描述符,如果USB设备没有端点描述符,则它仅仅用默认管道与主机进行数据传输。
总体而言,USB设备非常复杂,由许多不同的逻辑单元组成,如图1、图2所示,这些单元之间的关系如下:
图1
图2
l 设备通常有一个或多个配置;
l 配置通常有一个或多个接口;
l 接口通常有一个或多个设置;
l 接口有零或多个端点。
这种层次化配置信息在设备中通过一组标准的描述符来描述,如下所示。
- 设备描述符:关于设备的通用信息,如供应商ID、产品ID和修订ID,支持的设备类、子类和适用的协议以及默认端点的最大包大小等。在Linux内核中,USB设备用 usb_device 结构体来描述,USB设备描述符定义为 usb_device_descriptor 结构体,其定义如下
- struct usb_device_descriptor
- {
- _ _u8 bLength; //描述符长度
- _ _u8 bDescriptorType; //描述符类型编号
- _ _le16 bcdUSB; //USB版本号
- _ _u8 bDeviceClass; //USB分配的设备类code
- _ _u8 bDeviceSubClass;// USB分配的子类code
- _ _u8 bDeviceProtocol; //USB分配的协议code
- _ _u8 bMaxPacketSize0; //endpoint0最大包大小
- _ _le16 idVendor; //厂商编号
- _ _le16 idProduct; //产品编号
- _ _le16 bcdDevice; //设备出厂编号
- _ _u8 iManufacturer; //描述厂商字符串的索引
- _ _u8 iProduct; //描述产品字符串的索引
- _ _u8 iSerialNumber; //描述设备序列号字符串的索引
- _ _u8 bNumConfigurations; //可能的配置数量
- } _ _attribute_ _ ((packed));
- struct usb_device_descriptor
- 配置描述符:此配置中的接口数、支持的挂起和恢复能力以及功率要求。USB配置在内核中使用 usb_host_config 结构体描述,USB配置描述符定义为结构体 usb_config_descriptor ,其定义如下
- struct usb_config_descriptor
- {
- _ _u8 bLength; //描述符长度
- _ _u8 bDescriptorType; //描述符类型编号
- _ _le16 wTotalLength; //配置所返回的所有数据的大小
- _ _u8 bNumInterfaces; // 配置所支持的接口数
- _ _u8 bConfigurationValue; //Set_Configuration命令需要的参数值
- _ _u8 iConfiguration; //描述该配置的字符串的索引值
- _ _u8 bmAttributes; //供电模式的选择
- _ _u8 bMaxPower; //设备从总线提取的最大电流
- } _ _attribute_ _ ((packed));
- struct usb_config_descriptor
- 接口描述符:接口类、子类和适用的协议,接口备用配置的数目和端点数目。USB接口在内核中使用 usb_interface 结构体描述,USB接口描述符定义为结构体 usb_interface_descriptor ,其定义如下
- struct usb_interface_descriptor
- {
- _ _u8 bLength; //描述符长度
- _ _u8 bDescriptorType; //描述符类型
- _ _u8 bInterfaceNumber; // 接口的编号
- _ _u8 bAlternateSetting; //备用的接口描述符编号
- _ _u8 bNumEndpoints; //该接口使用的端点数,不包括端点0
- _ _u8 bInterfaceClass; //接口类型
- _ _u8 bInterfaceSubClass; //接口子类型
- _ _u8 bInterfaceProtocol; //接口所遵循的协议
- _ _u8 iInterface; //描述该接口的字符串索引值
- } _ _attribute_ _ ((packed));
- struct usb_interface_descriptor
- 端点描述符:端点地址、方向和类型,支持的最大包大小,如果是中断类型的端点则还包括轮询频率。在Linux内核中,USB端点使用 usb_host_endpoint 结构体来描述,USB端点描述符定义为 usb_endpoint_descriptor 结构体,其定义如下
- struct usb_endpoint_descriptor
- {
- _ _u8 bLength; //描述符长度
- _ _u8 bDescriptorType; //描述符类型
- _ _u8 bEndpointAddress; //端点地址:0~3位是端点号,第7位是方向(0-OUT,1-IN)
- _ _u8 bmAttributes; //端点属性:bit[0:1] 的值为00表示控制,为01表示同步,为02表示批量,为03表示中断
- _ _le16 wMaxPacketSize; //// 本端点接收或发送的最大信息包的大小
- _ _u8 bInterval;//轮询数据传送端点的时间间隔
- //对于批量传送的端点以及控制传送的端点,此域忽略
- //对于同步传送的端点,此域必须为1
- //对于中断传送的端点,此域值的范围为1~255
- _ _u8 bRefresh;
- _ _u8 bSynchAddress;
- } _ _attribute_ _ ((packed));
- struct usb_endpoint_descriptor
- 字符串描述符:在其他描述符中会为某些字段提供字符串索引,它们可被用来检索描述性字符串,可以以多种语言形式提供。字符串描述符是可选的,有的设备有,有的设备没有,字符串描述符对应于 usb_string_descriptor 结构体,其定义如下
- struct usb_string_descriptor
- {
- _ _u8 bLength; //描述符长度
- _ _u8 bDescriptorType; //描述符类型
- _ _le16 wData[];/* 以UTF-16LE编码 */
- } _ _attribute_ _ ((packed));
- struct usb_string_descriptor
插入一个SanDisk U盘后,可以通过lsusb命令得到这个U盘相关的描述符,从中可以显示这个U盘包含了一个设备描述符、一个字符串描述符、一个配置描述符、一个接口描述符以及批量输入和批量输出两个端点描述符。呈现出来的信息内容直接对应于 usb_device_descriptor、usb_config_descriptor、usb_interface_descriptor、usb_endpoint_descriptor、usb_string_descriptor 结构体,其内容如下所示。
- Bus Device : ID : SanDisk Corp.
- Device Descriptor:
- bLength
- bDescriptorType
- bcdUSB 2.00
- bDeviceClass Interface
- bDeviceSubClass
- bDeviceProtocol
- bMaxPacketSize0
- idVendor 0x0781 SanDisk Corp.
- idProduct 0x5151
- bcdDevice 0.10
- iManufacturer SanDisk Corporation
- iProduct Cruzer Micro
- iSerial 20060877500A1BE1FDE1
- bNumConfigurations
- Configuration Descriptor:
- bLength
- bDescriptorType
- wTotalLength
- bNumInterfaces
- bConfigurationValue
- iConfiguration
- bmAttributes 0x80
- MaxPower 200mA
- Interface Descriptor:
- bLength
- bDescriptorType
- bInterfaceNumber
- bAlternateSetting
- bNumEndpoints
- bInterfaceClass Mass Storage
- bInterfaceSubClass SCSI
- bInterfaceProtocol Bulk (Zip)
- iInterface
- Endpoint Descriptor:
- bLength
- bDescriptorType
- bEndpointAddress 0x81 EP IN
- bmAttributes
- Transfer Type Bulk
- Synch Type none
- wMaxPacketSize
- bInterval
- Endpoint Descriptor:
- bLength
- bDescriptorType
- bEndpointAddress 0x01 EP OUT
- bmAttributes
- Transfer Type Bulk
- Synch Type none
- wMaxPacketSize
- bInterval
- Language IDs: (length=)
- English(US)
当用户点击相应USB选项或者本质上, sys.usb.config 被设置时,会写 /sys/class/android_usb/android0 下的一系列节点,触发一系列的动作。
以配置为 “mtp,adb” 和 ptp,adb 为例,其在init.qcom.usb.rc文件中的配置如下
- on property:sys.usb.config=mtp,adb
- stop adbd
- write /sys/class/android_usb/android0/enable
- ##shenyong.wt,,add mtp+cdrom
- write /sys/class/android_usb/f_mass_storage/luns "lenovomtp"
- write /sys/class/android_usb/android0/idVendor 17EF
- write /sys/class/android_usb/android0/idProduct
- write /sys/class/android_usb/android0/functions mtp,mass_storage,adb
- write /sys/class/android_usb/android0/enable
- start adbd
- setprop sys.usb.state ${sys.usb.config}
- on property:sys.usb.config=ptp,adb
- stop adbd
- write /sys/class/android_usb/android0/enable
- write /sys/class/android_usb/android0/idVendor 17EF
- write /sys/class/android_usb/android0/idProduct 74F9
- write /sys/class/android_usb/android0/functions ptp,adb
- write /sys/class/android_usb/android0/enable
- start adbd
- setprop sys.usb.state ${sys.usb.config}
init.qcom.usb.rc完整内容如下
- # Copyright (c) -, The Linux Foundation. All rights reserved.
- #
- # Redistribution and use in source and binary forms, with or without
- # modification, are permitted provided that the following conditions are met:
- # * Redistributions of source code must retain the above copyright
- # notice, this list of conditions and the following disclaimer.
- # * Redistributions in binary form must reproduce the above copyright
- # notice, this list of conditions and the following disclaimer in the
- # documentation and/or other materials provided with the distribution.
- # * Neither the name of The Linux Foundation nor
- # the names of its contributors may be used to endorse or promote
- # products derived from this software without specific prior written
- # permission.
- #
- # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
- # AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- # IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
- # NON-INFRINGEMENT ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
- # CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
- # EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
- # PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
- # OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
- # WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
- # OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
- # ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- #
- on init
- write /sys/class/android_usb/android0/f_rndis/wceis
- write /sys/class/android_usb/android0/iSerial ${ro.serialno}
- on charger
- setprop sys.usb.config mass_storage
- write /sys/module/lpm_levels/enable_low_power/l2
- write /sys/module/msm_pm/modes/cpu0/power_collapse/suspend_enabled
- write /sys/module/msm_pm/modes/cpu1/power_collapse/suspend_enabled
- write /sys/module/msm_pm/modes/cpu2/power_collapse/suspend_enabled
- write /sys/module/msm_pm/modes/cpu3/power_collapse/suspend_enabled
- write /sys/module/msm_pm/modes/cpu0/standalone_power_collapse/suspend_enabled
- write /sys/module/msm_pm/modes/cpu1/standalone_power_collapse/suspend_enabled
- write /sys/module/msm_pm/modes/cpu2/standalone_power_collapse/suspend_enabled
- write /sys/module/msm_pm/modes/cpu3/standalone_power_collapse/suspend_enabled
- write /sys/module/msm_pm/modes/cpu0/standalone_power_collapse/idle_enabled
- write /sys/module/msm_pm/modes/cpu1/standalone_power_collapse/idle_enabled
- write /sys/module/msm_pm/modes/cpu2/standalone_power_collapse/idle_enabled
- write /sys/module/msm_pm/modes/cpu3/standalone_power_collapse/idle_enabled
- write /sys/module/msm_pm/modes/cpu0/power_collapse/idle_enabled
- write /sys/module/msm_pm/modes/cpu1/power_collapse/idle_enabled
- write /sys/module/msm_pm/modes/cpu2/power_collapse/idle_enabled
- write /sys/module/msm_pm/modes/cpu3/power_collapse/idle_enabled
- on fs
- mkdir /dev/usb-ffs shell shell
- mkdir /dev/usb-ffs/adb shell shell
- mount functionfs adb /dev/usb-ffs/adb uid=,gid=
- write /sys/class/android_usb/android0/f_ffs/aliases adb
- service qcom-usb-sh /system/bin/sh /init.qcom.usb.sh
- class core
- user root
- oneshot
- # Following are the parameters required for usb functionality. They provide configurable options like
- # product_id/vendor id and allows specifying required functions:
- #
- # Required parameters:
- #
- # /sys/class/android_usb/android0/enable: Enables/disables usb composition
- # Value: (disable), (enable)
- #
- # /sys/class/android_usb/android0/idVendor: Stores Vendor ID
- # Value: 05c6 (Vendor id for Qualcomm Inc)
- #
- # /sys/class/android_usb/android0/idProduct: Stores Product id corresponding to usb composition
- # Value: 0x9xxx for composite interface, 0xFxxx for single interface
- #
- # /sys/class/android_usb/android0/f_diag/clients: Stores name of clients representing a diag interface.
- # Value: Passed one per interface. e.g. diag[,diag_mdm, diag_qsc, diag_mdm2]
- #
- # /sys/class/android_usb/android0/functions: Stores name of the function drivers used in usb composition.
- # Value: Passed one per function driver. e.g. diag[,adb]
- #
- #Optional parameters:
- #
- # /sys/class/android_usb/android0/f_serial/transports: Stores type of underlying transports used to
- # communicate to serial interface.
- # Value: Passed one per interface. One value represents control and data transport together.
- # e.g. smd[,sdio,tty,hsic]
- # Only required if serial interface is present.
- #
- # /sys/class/android_usb/android0/f_serial/transport_names: Stores name of the underlying transports
- # used to communicate to serial interface. This is used to distinguish between more than one interface
- # using same transport type.
- # Value: Passed one per interface. One value represents control and data transport together.
- # e.g. serial_hsic[,serial_hsusb]
- # Only required for transport type hsic, optional for other transport types.
- #
- # /sys/class/android_usb/android0/f_rmnet/transports: Stores type of underlying transports used to
- # communicate to rmnet interface.
- # Value: Passed two per interface as control, data transport type pair.
- # e.g. smd,bam[,hsuart,hsuart]
- # Only required if rmnet interface is present.
- #
- # /sys/class/android_usb/android0/f_rmnet/transport_names: Stores name of the underlying transports
- # used to communicate to rmnet interface. This is used to distinguish between more than one interface
- # using same transport type.
- # Value: Passed one per interface. One value represents control and data transport together.
- # e.g. rmnet_hsic[,rmnet_hsusb]
- # Only required for transport type hsic, optional for other transport types.
- # USB compositions
- on property:sys.usb.config=diag,serial_tty,serial_smd
- write /sys/class/android_usb/android0/enable
- write /sys/class/android_usb/android0/idVendor 05C6
- write /sys/class/android_usb/android0/idProduct
- write /sys/class/android_usb/android0/f_diag/clients diag
- write /sys/class/android_usb/android0/f_serial/transports tty,smd
- write /sys/class/android_usb/android0/functions diag,serial
- write /sys/class/android_usb/android0/enable
- setprop sys.usb.state ${sys.usb.config}
- on property:sys.usb.config=diag,serial_tty,serial_smd,adb
- stop adbd
- write /sys/class/android_usb/android0/enable
- write /sys/class/android_usb/android0/idVendor 17EF
- write /sys/class/android_usb/android0/idProduct
- write /sys/class/android_usb/android0/f_diag/clients diag
- write /sys/class/android_usb/android0/f_serial/transports smd,tty
- write /sys/class/android_usb/android0/functions diag,adb,serial
- write /sys/class/android_usb/android0/enable
- start adbd
- setprop sys.usb.state ${sys.usb.config}
- on property:sys.usb.config=diag,adb
- stop adbd
- write /sys/class/android_usb/android0/enable
- write /sys/class/android_usb/android0/idVendor 05C6
- write /sys/class/android_usb/android0/idProduct 901D
- write /sys/class/android_usb/android0/f_diag/clients diag
- write /sys/class/android_usb/android0/functions diag,adb
- write /sys/class/android_usb/android0/enable
- start adbd
- setprop sys.usb.state ${sys.usb.config}
- on property:sys.usb.config=diag
- write /sys/class/android_usb/android0/enable
- write /sys/class/android_usb/android0/idVendor 05C6
- write /sys/class/android_usb/android0/idProduct 900E
- write /sys/class/android_usb/android0/f_diag/clients diag
- write /sys/class/android_usb/android0/functions diag
- write /sys/class/android_usb/android0/enable
- setprop sys.usb.state ${sys.usb.config}
- on property:sys.usb.config=diag,serial_smd,rmnet_bam,adb
- stop adbd
- write /sys/class/android_usb/android0/enable
- write /sys/class/android_usb/android0/idVendor 05C6
- write /sys/class/android_usb/android0/idProduct
- write /sys/class/android_usb/android0/iSerial ""
- write /sys/class/android_usb/android0/f_diag/clients diag
- write /sys/class/android_usb/android0/f_serial/transports smd
- write /sys/class/android_usb/android0/f_rmnet/transports smd,bam
- write /sys/class/android_usb/android0/functions diag,serial,rmnet,adb
- write /sys/class/android_usb/android0/enable
- start adbd
- setprop sys.usb.state ${sys.usb.config}
- on property:sys.usb.config=diag,serial_smd,rmnet_bam
- write /sys/class/android_usb/android0/enable
- write /sys/class/android_usb/android0/idVendor 05C6
- write /sys/class/android_usb/android0/idProduct
- write /sys/class/android_usb/android0/f_diag/clients diag
- write /sys/class/android_usb/android0/f_serial/transports smd
- write /sys/class/android_usb/android0/f_rmnet/transports smd,bam
- write /sys/class/android_usb/android0/functions diag,serial,rmnet
- write /sys/class/android_usb/android0/enable
- setprop sys.usb.state ${sys.usb.config}
- on property:sys.usb.config=diag,serial_smd,serial_tty,rmnet_bam,mass_storage,adb
- stop adbd
- write /sys/class/android_usb/android0/enable
- write /sys/class/android_usb/android0/idVendor 05C6
- write /sys/class/android_usb/android0/idProduct
- write /sys/class/android_usb/android0/f_diag/clients diag
- write /sys/class/android_usb/android0/f_serial/transports smd,tty
- write /sys/class/android_usb/android0/f_rmnet/transports smd,bam
- write /sys/class/android_usb/android0/functions diag,adb,serial,rmnet,mass_storage
- write /sys/class/android_usb/android0/enable
- start adbd
- setprop sys.usb.state ${sys.usb.config}
- on property:sys.usb.config=diag,serial_smd,serial_tty,adb,mass_storage
- stop adbd
- write /sys/class/android_usb/android0/enable
- write /sys/class/android_usb/android0/idVendor 17EF
- write /sys/class/android_usb/android0/idProduct
- write /sys/class/android_usb/android0/f_diag/clients diag
- write /sys/class/android_usb/android0/f_serial/transports smd,tty
- write /sys/class/android_usb/android0/functions adb,diag,serial,mass_storage
- write /sys/class/android_usb/android0/enable
- start adbd
- setprop sys.usb.state ${sys.usb.config}
- on property:sys.usb.config=diag,serial_smd,serial_tty,mass_storage
- write /sys/class/android_usb/android0/enable
- write /sys/class/android_usb/android0/idVendor 17EF
- write /sys/class/android_usb/android0/idProduct
- write /sys/class/android_usb/android0/f_diag/clients diag
- write /sys/class/android_usb/android0/f_serial/transports smd,tty
- write /sys/class/android_usb/android0/functions diag,serial,mass_storage
- write /sys/class/android_usb/android0/enable
- setprop sys.usb.state ${sys.usb.config}
- on property:sys.usb.config=diag,acm_smd,acm_tty,rmnet_bam,mass_storage,adb
- stop adbd
- write /sys/class/android_usb/android0/enable
- write /sys/class/android_usb/android0/idVendor 05C6
- write /sys/class/android_usb/android0/idProduct 903D
- write /sys/class/android_usb/android0/f_diag/clients diag
- write /sys/class/android_usb/android0/f_acm/acm_transports smd,tty
- write /sys/class/android_usb/android0/f_rmnet/transports smd,bam
- write /sys/class/android_usb/android0/functions diag,adb,acm,rmnet,mass_storage
- write /sys/class/android_usb/android0/enable
- start adbd
- setprop sys.usb.state ${sys.usb.config}
- on property:sys.usb.config=diag,serial_smd,serial_tty,rmnet_bam,mass_storage
- write /sys/class/android_usb/android0/enable
- write /sys/class/android_usb/android0/idVendor 05C6
- write /sys/class/android_usb/android0/idProduct
- write /sys/class/android_usb/android0/f_diag/clients diag
- write /sys/class/android_usb/android0/f_serial/transports smd,tty
- write /sys/class/android_usb/android0/f_rmnet/transports smd,bam
- write /sys/class/android_usb/android0/functions diag,serial,rmnet,mass_storage
- write /sys/class/android_usb/android0/enable
- setprop sys.usb.state ${sys.usb.config}
- on property:sys.usb.config=diag,acm_smd,acm_tty,rmnet_bam,mass_storage
- write /sys/class/android_usb/android0/enable
- write /sys/class/android_usb/android0/idVendor 05C6
- write /sys/class/android_usb/android0/idProduct 903E
- write /sys/class/android_usb/android0/f_diag/clients diag
- write /sys/class/android_usb/android0/f_acm/acm_transports smd,tty
- write /sys/class/android_usb/android0/f_rmnet/transports smd,bam
- write /sys/class/android_usb/android0/functions diag,serial,rmnet,mass_storage
- write /sys/class/android_usb/android0/enable
- setprop sys.usb.state ${sys.usb.config}
- on property:sys.usb.config=diag,diag_mdm,serial_sdio,serial_smd,rmnet_smd_sdio,mass_storage,adb
- stop adbd
- write /sys/class/android_usb/android0/enable
- write /sys/class/android_usb/android0/idVendor 05C6
- write /sys/class/android_usb/android0/idProduct
- write /sys/class/android_usb/android0/f_diag/clients diag,diag_mdm
- write /sys/class/android_usb/android0/f_serial/transports sdio,smd
- write /sys/class/android_usb/android0/functions diag,adb,serial,rmnet_smd_sdio,mass_storage
- write /sys/class/android_usb/android0/enable
- start adbd
- setprop sys.usb.state ${sys.usb.config}
- on property:sys.usb.config=diag,diag_mdm,acm_sdio,acm_smd,rmnet_smd_sdio,mass_storage,adb
- stop adbd
- write /sys/class/android_usb/android0/enable
- write /sys/class/android_usb/android0/idVendor 05C6
- write /sys/class/android_usb/android0/idProduct 903B
- write /sys/class/android_usb/android0/f_diag/clients diag,diag_mdm
- write /sys/class/android_usb/android0/f_acm/acm_transports sdio,smd
- write /sys/class/android_usb/android0/functions diag,adb,acm,rmnet_smd_sdio,mass_storage
- write /sys/class/android_usb/android0/enable
- start adbd
- setprop sys.usb.state ${sys.usb.config}
- on property:sys.usb.config=diag,diag_mdm,serial_sdio,serial_smd,rmnet_smd_sdio,mass_storage
- write /sys/class/android_usb/android0/enable
- write /sys/class/android_usb/android0/idVendor 05C6
- write /sys/class/android_usb/android0/idProduct
- write /sys/class/android_usb/android0/f_diag/clients diag,diag_mdm
- write /sys/class/android_usb/android0/f_serial/transports sdio,smd
- write /sys/class/android_usb/android0/functions diag,serial,rmnet_smd_sdio,mass_storage
- write /sys/class/android_usb/android0/enable
- setprop sys.usb.state ${sys.usb.config}
- on property:sys.usb.config=diag,diag_mdm,acm_sdio,acm_smd,rmnet_smd_sdio,mass_storage
- write /sys/class/android_usb/android0/enable
- write /sys/class/android_usb/android0/idVendor 05C6
- write /sys/class/android_usb/android0/idProduct 903C
- write /sys/class/android_usb/android0/f_diag/clients diag,diag_mdm
- write /sys/class/android_usb/android0/f_acm/acm_transports sdio,smd
- write /sys/class/android_usb/android0/functions diag,acm,rmnet_smd_sdio,mass_storage
- write /sys/class/android_usb/android0/enable
- setprop sys.usb.state ${sys.usb.config}
- on property:sys.usb.config=diag,diag_mdm,serial_sdio,serial_tty,rmnet_sdio,mass_storage,adb
- stop adbd
- write /sys/class/android_usb/android0/enable
- write /sys/class/android_usb/android0/idVendor 05C6
- write /sys/class/android_usb/android0/idProduct
- write /sys/class/android_usb/android0/f_diag/clients diag,diag_mdm
- write /sys/class/android_usb/android0/f_serial/transports sdio,tty
- write /sys/class/android_usb/android0/functions diag,adb,serial,rmnet_sdio,mass_storage
- write /sys/class/android_usb/android0/enable
- start adbd
- setprop sys.usb.state ${sys.usb.config}
- on property:sys.usb.config=diag,diag_mdm,acm_sdio,acm_tty,rmnet_sdio,mass_storage,adb
- stop adbd
- write /sys/class/android_usb/android0/enable
- write /sys/class/android_usb/android0/idVendor 05C6
- write /sys/class/android_usb/android0/idProduct 903B
- write /sys/class/android_usb/android0/f_diag/clients diag,diag_mdm
- write /sys/class/android_usb/android0/f_acm/acm_transports sdio,tty
- write /sys/class/android_usb/android0/functions diag,adb,acm,rmnet_sdio,mass_storage
- write /sys/class/android_usb/android0/enable
- start adbd
- setprop sys.usb.state ${sys.usb.config}
- on property:sys.usb.config=diag,diag_mdm,serial_sdio,serial_tty,rmnet_sdio,mass_storage
- write /sys/class/android_usb/android0/enable
- write /sys/class/android_usb/android0/idVendor 05C6
- write /sys/class/android_usb/android0/idProduct
- write /sys/class/android_usb/android0/f_diag/clients diag,diag_mdm
- write /sys/class/android_usb/android0/f_serial/transports sdio,tty
- write /sys/class/android_usb/android0/functions diag,serial,rmnet_sdio,mass_storage
- write /sys/class/android_usb/android0/enable
- setprop sys.usb.state ${sys.usb.config}
- on property:sys.usb.config=diag,diag_mdm,acm_sdio,acm_tty,rmnet_sdio,mass_storage
- write /sys/class/android_usb/android0/enable
- write /sys/class/android_usb/android0/idVendor 05C6
- write /sys/class/android_usb/android0/idProduct 903C
- write /sys/class/android_usb/android0/f_diag/clients diag,diag_mdm
- write /sys/class/android_usb/android0/f_acm/acm_transports sdio,tty
- write /sys/class/android_usb/android0/functions diag,acm,rmnet_sdio,mass_storage
- write /sys/class/android_usb/android0/enable
- setprop sys.usb.state ${sys.usb.config}
- on property:sys.usb.config=diag,serial_tty,serial_tty,rmnet_smd,mass_storage,adb
- stop adbd
- write /sys/class/android_usb/android0/enable
- write /sys/class/android_usb/android0/idVendor 05C6
- write /sys/class/android_usb/android0/idProduct
- write /sys/class/android_usb/android0/f_diag/clients diag
- write /sys/class/android_usb/android0/f_serial/transports tty,tty
- write /sys/class/android_usb/android0/functions diag,adb,serial,rmnet_smd,mass_storage
- write /sys/class/android_usb/android0/enable
- start adbd
- start port-bridge
- setprop sys.usb.state ${sys.usb.config}
- on property:sys.usb.config=diag,acm_tty,acm_tty,rmnet_smd,mass_storage,adb
- stop adbd
- write /sys/class/android_usb/android0/enable
- write /sys/class/android_usb/android0/idVendor 05C6
- write /sys/class/android_usb/android0/idProduct 903D
- write /sys/class/android_usb/android0/f_diag/clients diag
- write /sys/class/android_usb/android0/f_acm/acm_transports tty,tty
- write /sys/class/android_usb/android0/functions diag,adb,acm,rmnet_smd,mass_storage
- write /sys/class/android_usb/android0/enable
- start adbd
- start port-bridge
- setprop sys.usb.state ${sys.usb.config}
- on property:sys.usb.config=diag,serial_tty,serial_tty,rmnet_smd,mass_storage
- write /sys/class/android_usb/android0/enable
- write /sys/class/android_usb/android0/idVendor 05C6
- write /sys/class/android_usb/android0/idProduct
- write /sys/class/android_usb/android0/f_diag/clients diag
- write /sys/class/android_usb/android0/f_serial/transports tty,tty
- write /sys/class/android_usb/android0/functions diag,serial,rmnet_smd,mass_storage
- write /sys/class/android_usb/android0/enable
- start port-bridge
- setprop sys.usb.state ${sys.usb.config}
- on property:sys.usb.config=diag,acm_tty,acm_tty,rmnet_smd,mass_storage
- write /sys/class/android_usb/android0/enable
- write /sys/class/android_usb/android0/idVendor 05C6
- write /sys/class/android_usb/android0/idProduct 903E
- write /sys/class/android_usb/android0/f_diag/clients diag
- write /sys/class/android_usb/android0/f_acm/acm_transports tty,tty
- write /sys/class/android_usb/android0/functions diag,serial,rmnet_smd,mass_storage
- write /sys/class/android_usb/android0/enable
- setprop sys.usb.state ${sys.usb.config}
- on property:sys.usb.config=diag,serial_smd,serial_tty,rmnet_smd,mass_storage,adb
- stop adbd
- write /sys/class/android_usb/android0/enable
- write /sys/class/android_usb/android0/idVendor 05C6
- write /sys/class/android_usb/android0/idProduct
- write /sys/class/android_usb/android0/f_diag/clients diag
- write /sys/class/android_usb/android0/f_serial/transports smd,tty
- write /sys/class/android_usb/android0/functions diag,adb,serial,rmnet_smd,mass_storage
- write /sys/class/android_usb/android0/enable
- start adbd
- setprop sys.usb.state ${sys.usb.config}
- on property:sys.usb.config=diag,acm_smd,acm_tty,rmnet_smd,mass_storage,adb
- stop adbd
- write /sys/class/android_usb/android0/enable
- write /sys/class/android_usb/android0/idVendor 05C6
- write /sys/class/android_usb/android0/idProduct 903D
- write /sys/class/android_usb/android0/f_diag/clients diag
- write /sys/class/android_usb/android0/f_acm/acm_transports smd,tty
- write /sys/class/android_usb/android0/functions diag,adb,acm,rmnet_smd,mass_storage
- write /sys/class/android_usb/android0/enable
- start adbd
- start port-bridge
- setprop sys.usb.state ${sys.usb.config}
- on property:sys.usb.config=diag,serial_smd,serial_tty,rmnet_smd,mass_storage
- write /sys/class/android_usb/android0/enable
- write /sys/class/android_usb/android0/idVendor 05C6
- write /sys/class/android_usb/android0/idProduct
- write /sys/class/android_usb/android0/f_diag/clients diag
- write /sys/class/android_usb/android0/f_serial/transports smd,tty
- write /sys/class/android_usb/android0/functions diag,serial,rmnet_smd,mass_storage
- write /sys/class/android_usb/android0/enable
- setprop sys.usb.state ${sys.usb.config}
- on property:sys.usb.config=diag,acm_smd,acm_tty,rmnet_smd,mass_storage
- write /sys/class/android_usb/android0/enable
- write /sys/class/android_usb/android0/idVendor 05C6
- write /sys/class/android_usb/android0/idProduct 903E
- write /sys/class/android_usb/android0/f_diag/clients diag
- write /sys/class/android_usb/android0/f_acm/acm_transports smd,tty
- write /sys/class/android_usb/android0/functions diag,serial,rmnet_smd,mass_storage
- write /sys/class/android_usb/android0/enable
- setprop sys.usb.state ${sys.usb.config}
- # Fusion composition
- on property:sys.usb.config=diag,serial_hsic,serial_tty,rmnet_hsic,mass_storage,adb
- write /sys/class/android_usb/android0/enable
- write /sys/class/android_usb/android0/idVendor 05C6
- write /sys/class/android_usb/android0/idProduct
- write /sys/class/android_usb/android0/f_diag/clients diag
- write /sys/class/android_usb/android0/f_serial/transports hsic,tty
- write /sys/class/android_usb/android0/f_serial/transport_names serial_hsic
- write /sys/class/android_usb/android0/f_rmnet/transports hsic,hsic
- write /sys/class/android_usb/android0/f_rmnet/transport_names rmnet_hsic
- write /sys/class/android_usb/android0/functions diag,adb,serial,rmnet,mass_storage
- write /sys/module/mdm_bridge/parameters/rx_rmnet_buffer_size
- write /sys/module/mdm_bridge/parameters/max_rx_urbs
- write /sys/module/g_android/parameters/ghsic_data_rx_req_size
- write /sys/module/g_android/parameters/ghsic_data_rmnet_rx_q_size
- write /sys/class/android_usb/android0/enable
- start adbd
- setprop sys.usb.state ${sys.usb.config}
- # Fusion composition with diag_mdm and adb
- on property:sys.usb.config=diag,diag_mdm,serial_hsic,serial_tty,rmnet_hsic,mass_storage,adb
- write /sys/class/android_usb/android0/enable
- write /sys/class/android_usb/android0/idVendor 05C6
- write /sys/class/android_usb/android0/idProduct
- write /sys/class/android_usb/android0/f_diag/clients diag,diag_mdm
- write /sys/class/android_usb/android0/f_serial/transports hsic,tty
- write /sys/class/android_usb/android0/f_serial/transport_names serial_hsic
- write /sys/class/android_usb/android0/f_rmnet/transports hsic,hsic
- write /sys/class/android_usb/android0/f_rmnet/transport_names rmnet_hsic
- write /sys/class/android_usb/android0/functions diag,adb,serial,rmnet,mass_storage
- write /sys/module/mdm_bridge/parameters/rx_rmnet_buffer_size
- write /sys/module/mdm_bridge/parameters/max_rx_urbs
- write /sys/module/g_android/parameters/ghsic_data_rx_req_size
- write /sys/module/g_android/parameters/ghsic_data_rmnet_rx_q_size
- write /sys/class/android_usb/android0/enable
- start adbd
- setprop sys.usb.state ${sys.usb.config}
- # Fusion composition with diag_mdm
- on property:sys.usb.config=diag,diag_mdm,serial_hsic,serial_tty,rmnet_hsic,mass_storage
- write /sys/class/android_usb/android0/enable
- write /sys/class/android_usb/android0/idVendor 05C6
- write /sys/class/android_usb/android0/idProduct
- write /sys/class/android_usb/android0/f_diag/clients diag,diag_mdm
- write /sys/class/android_usb/android0/f_serial/transports hsic,tty
- write /sys/class/android_usb/android0/f_serial/transport_names serial_hsic
- write /sys/class/android_usb/android0/f_rmnet/transports hsic,hsic
- write /sys/class/android_usb/android0/f_rmnet/transport_names rmnet_hsic
- write /sys/class/android_usb/android0/functions diag,serial,rmnet,mass_storage
- write /sys/module/mdm_bridge/parameters/rx_rmnet_buffer_size
- write /sys/module/mdm_bridge/parameters/max_rx_urbs
- write /sys/module/g_android/parameters/ghsic_data_rx_req_size
- write /sys/module/g_android/parameters/ghsic_data_rmnet_rx_q_size
- write /sys/class/android_usb/android0/enable
- setprop sys.usb.state ${sys.usb.config}
- # Fusion DSDA composition with adb
- on property:sys.usb.config=diag,diag_mdm,diag_qsc,serial_hsic,serial_hsuart,rmnet_hsic,rmnet_hsuart,mass_storage,adb
- write /sys/class/android_usb/android0/enable
- write /sys/class/android_usb/android0/idVendor 05C6
- write /sys/class/android_usb/android0/idProduct
- write /sys/class/android_usb/android0/f_diag/clients diag,diag_mdm,diag_qsc
- write /sys/class/android_usb/android0/f_serial/transports hsic,hsuart
- write /sys/class/android_usb/android0/f_serial/transport_names serial_hsic,serial_hsuart
- write /sys/class/android_usb/android0/f_rmnet/transports hsic,hsic,hsuart,hsuart
- write /sys/class/android_usb/android0/f_rmnet/transport_names rmnet_hsic,rmnet_hsuart
- write /sys/class/android_usb/android0/functions diag,adb,serial,rmnet,mass_storage
- write /sys/module/mdm_bridge/parameters/rx_rmnet_buffer_size
- write /sys/module/mdm_bridge/parameters/max_rx_urbs
- write /sys/module/g_android/parameters/ghsic_data_rx_req_size
- write /sys/module/g_android/parameters/ghsic_data_rmnet_rx_q_size
- write /sys/class/android_usb/android0/enable
- start adbd
- setprop sys.usb.state ${sys.usb.config}
- # Fusion DSDA composition without adb
- on property:sys.usb.config=diag,diag_mdm,diag_qsc,serial_hsic,serial_hsuart,rmnet_hsic,rmnet_hsuart,mass_storage
- write /sys/class/android_usb/android0/enable
- write /sys/class/android_usb/android0/idVendor 05C6
- write /sys/class/android_usb/android0/idProduct
- write /sys/class/android_usb/android0/f_diag/clients diag,diag_mdm,diag_qsc
- write /sys/class/android_usb/android0/f_serial/transports hsic,hsuart
- write /sys/class/android_usb/android0/f_serial/transport_names serial_hsic,serial_hsuart
- write /sys/class/android_usb/android0/f_rmnet/transports hsic,hsic,hsuart,hsuart
- write /sys/class/android_usb/android0/f_rmnet/transport_names rmnet_hsic,rmnet_hsuart
- write /sys/class/android_usb/android0/functions diag,serial,rmnet,mass_storage
- write /sys/module/mdm_bridge/parameters/rx_rmnet_buffer_size
- write /sys/module/mdm_bridge/parameters/max_rx_urbs
- write /sys/module/g_android/parameters/ghsic_data_rx_req_size
- write /sys/module/g_android/parameters/ghsic_data_rmnet_rx_q_size
- write /sys/class/android_usb/android0/enable
- setprop sys.usb.state ${sys.usb.config}
- # Fusion DSDA2 composition with adb
- on property:sys.usb.config=diag,diag_mdm,diag_mdm2,serial_hsic,serial_hsusb,rmnet_hsic,rmnet_hsusb,mass_storage,adb
- write /sys/class/android_usb/android0/enable
- write /sys/class/android_usb/android0/idVendor 05C6
- write /sys/class/android_usb/android0/idProduct
- write /sys/class/android_usb/android0/f_diag/clients diag,diag_mdm,diag_mdm2
- write /sys/class/android_usb/android0/f_serial/transports hsic,hsic
- write /sys/class/android_usb/android0/f_serial/transport_names serial_hsic,serial_hsusb
- write /sys/class/android_usb/android0/f_rmnet/transports hsic,hsic,hsic,hsic
- write /sys/class/android_usb/android0/f_rmnet/transport_names rmnet_hsic,rmnet_hsusb
- write /sys/class/android_usb/android0/functions diag,adb,serial,rmnet,mass_storage
- write /sys/module/mdm_bridge/parameters/rx_rmnet_buffer_size
- write /sys/module/mdm_bridge/parameters/max_rx_urbs
- write /sys/module/g_android/parameters/ghsic_data_rx_req_size
- write /sys/module/g_android/parameters/ghsic_data_rmnet_rx_q_size
- write /sys/class/android_usb/android0/enable
- start adbd
- setprop sys.usb.state ${sys.usb.config}
- # Fusion DSDA2 composition without adb
- on property:sys.usb.config=diag,diag_mdm,diag_mdm2,serial_hsic,serial_hsusb,rmnet_hsic,rmnet_hsusb,mass_storage
- write /sys/class/android_usb/android0/enable
- write /sys/class/android_usb/android0/idVendor 05C6
- write /sys/class/android_usb/android0/idProduct
- write /sys/class/android_usb/android0/f_diag/clients diag,diag_mdm,diag_mdm2
- write /sys/class/android_usb/android0/f_serial/transports hsic,hsic
- write /sys/class/android_usb/android0/f_serial/transport_names serial_hsic,serial_hsusb
- write /sys/class/android_usb/android0/f_rmnet/transports hsic,hsic,hsic,hsic
- write /sys/class/android_usb/android0/f_rmnet/transport_names rmnet_hsic,rmnet_hsusb
- write /sys/class/android_usb/android0/functions diag,serial,rmnet,mass_storage
- write /sys/module/mdm_bridge/parameters/rx_rmnet_buffer_size
- write /sys/module/mdm_bridge/parameters/max_rx_urbs
- write /sys/module/g_android/parameters/ghsic_data_rx_req_size
- write /sys/module/g_android/parameters/ghsic_data_rmnet_rx_q_size
- write /sys/class/android_usb/android0/enable
- setprop sys.usb.state ${sys.usb.config}
- # Fusion PCIe composition with diag_mdm and adb
- # Serial & RmNet bridged in userspace with tty and qti/ether
- on property:sys.usb.config=diag,diag_mdm,serial_tty,rmnet_qti_ether,mass_storage,adb
- write /sys/class/android_usb/android0/enable
- write /sys/class/android_usb/android0/idVendor 05C6
- write /sys/class/android_usb/android0/idProduct
- write /sys/class/android_usb/android0/f_diag/clients diag,diag_mdm
- write /sys/class/android_usb/android0/f_serial/transports tty
- write /sys/class/android_usb/android0/f_rmnet/transports qti,ether
- write /sys/class/android_usb/android0/functions diag,adb,serial,rmnet,mass_storage
- write /sys/class/android_usb/android0/enable
- start adbd
- setprop sys.usb.state ${sys.usb.config}
- # Fusion PCIe composition with diag_mdm
- # Serial & RmNet bridged in userspace with tty and qti/ether
- on property:sys.usb.config=diag,diag_mdm,serial_hsic,rmnet_hsic,mass_storage
- write /sys/class/android_usb/android0/enable
- write /sys/class/android_usb/android0/idVendor 05C6
- write /sys/class/android_usb/android0/idProduct
- write /sys/class/android_usb/android0/f_diag/clients diag,diag_mdm
- write /sys/class/android_usb/android0/f_serial/transports tty
- write /sys/class/android_usb/android0/f_rmnet/transports qti,ether
- write /sys/class/android_usb/android0/functions diag,serial,rmnet,mass_storage
- write /sys/class/android_usb/android0/enable
- setprop sys.usb.state ${sys.usb.config}
- # Fusion HSIC/PCIe Hybrid composition with diag_mdm and adb
- # RmNet is bridged over PCIe using qti,ether ctrl/data transports
- on property:sys.usb.config=diag,diag_mdm,serial_hsic,rmnet_qti_ether,mass_storage,adb
- write /sys/class/android_usb/android0/enable
- write /sys/class/android_usb/android0/idVendor 05C6
- write /sys/class/android_usb/android0/idProduct
- write /sys/class/android_usb/android0/f_diag/clients diag,diag_mdm
- write /sys/class/android_usb/android0/f_serial/transports hsic
- write /sys/class/android_usb/android0/f_serial/transport_names serial_hsic
- write /sys/class/android_usb/android0/f_rmnet/transports qti,ether
- write /sys/class/android_usb/android0/functions diag,adb,serial,rmnet,mass_storage
- write /sys/class/android_usb/android0/enable
- start adbd
- setprop sys.usb.state ${sys.usb.config}
- # Fusion HSIC/PCIe Hybrid composition with diag_mdm
- # RmNet is bridged over PCIe using qti,ether ctrl/data transports
- on property:sys.usb.config=diag,diag_mdm,serial_hsic,rmnet_hsic,mass_storage
- write /sys/class/android_usb/android0/enable
- write /sys/class/android_usb/android0/idVendor 05C6
- write /sys/class/android_usb/android0/idProduct
- write /sys/class/android_usb/android0/f_diag/clients diag,diag_mdm
- write /sys/class/android_usb/android0/f_serial/transports hsic
- write /sys/class/android_usb/android0/f_serial/transport_names serial_hsic
- write /sys/class/android_usb/android0/f_rmnet/transports qti,ether
- write /sys/class/android_usb/android0/functions diag,serial,rmnet,mass_storage
- write /sys/class/android_usb/android0/enable
- setprop sys.usb.state ${sys.usb.config}
- # Fusion 2.2 composition with diag_qsc and adb
- on property:sys.usb.config=diag,diag_qsc,serial_smd,serial_tty,serial_hsuart,rmnet_hsuart,mass_storage,adb
- write /sys/class/android_usb/android0/enable
- write /sys/class/android_usb/android0/idVendor 05C6
- write /sys/class/android_usb/android0/idProduct
- write /sys/class/android_usb/android0/f_diag/clients diag,diag_qsc
- write /sys/class/android_usb/android0/f_serial/transports smd,tty,hsuart
- write /sys/class/android_usb/android0/f_rmnet/transports smd,bam,hsuart,hsuart
- write /sys/class/android_usb/android0/functions diag,adb,serial,rmnet,mass_storage
- write /sys/class/android_usb/android0/enable
- start adbd
- setprop sys.usb.state ${sys.usb.config}
- # Fusion 2.2 composition with diag_qsc
- on property:sys.usb.config=diag,diag_qsc,serial_smd,serial_tty,serial_hsuart,rmnet_hsuart,mass_storage
- write /sys/class/android_usb/android0/enable
- write /sys/class/android_usb/android0/idVendor 05C6
- write /sys/class/android_usb/android0/idProduct
- write /sys/class/android_usb/android0/f_diag/clients diag,diag_qsc
- write /sys/class/android_usb/android0/f_serial/transports smd,tty,hsuart
- write /sys/class/android_usb/android0/f_rmnet/transports smd,bam,hsuart,hsuart
- write /sys/class/android_usb/android0/functions diag,serial,rmnet,mass_storage
- write /sys/class/android_usb/android0/enable
- setprop sys.usb.state ${sys.usb.config}
- on property:sys.usb.config=rndis
- setprop sys.usb.config rndis,${persist.sys.usb.config.extra}
- on property:sys.usb.config=rndis,none
- write /sys/class/android_usb/android0/enable
- write /sys/class/android_usb/android0/idVendor 17EF
- write /sys/class/android_usb/android0/idProduct
- write /sys/class/android_usb/android0/functions rndis,none
- write /sys/class/android_usb/android0/enable
- setprop sys.usb.state rndis
- on property:sys.usb.config=rndis,adb
- stop adbd
- setprop sys.usb.config rndis,${persist.sys.usb.config.extra},adb
- on property:sys.usb.config=rndis,none,adb
- stop adbd
- write /sys/class/android_usb/android0/enable
- write /sys/class/android_usb/android0/idVendor 17EF
- write /sys/class/android_usb/android0/idProduct
- write /sys/class/android_usb/android0/functions rndis,none,adb
- write /sys/class/android_usb/android0/enable
- start adbd
- setprop sys.usb.state rndis,adb
- on property:sys.usb.config=rndis,diag
- write /sys/class/android_usb/android0/enable
- write /sys/class/android_usb/android0/idVendor 05C6
- write /sys/class/android_usb/android0/idProduct 902C
- write /sys/class/android_usb/android0/f_diag/clients diag
- write /sys/class/android_usb/android0/functions rndis,diag
- write /sys/class/android_usb/android0/enable
- setprop sys.usb.state rndis
- on property:sys.usb.config=rndis,diag,adb
- stop adbd
- write /sys/class/android_usb/android0/enable
- write /sys/class/android_usb/android0/idVendor 05C6
- write /sys/class/android_usb/android0/idProduct 902D
- write /sys/class/android_usb/android0/f_diag/clients diag
- write /sys/class/android_usb/android0/functions rndis,diag,adb
- write /sys/class/android_usb/android0/enable
- start adbd
- setprop sys.usb.state rndis,adb
- on property:sys.usb.config=rndis,serial_smd
- write /sys/class/android_usb/android0/enable
- write /sys/class/android_usb/android0/idVendor 05C6
- write /sys/class/android_usb/android0/idProduct 90B3
- write /sys/class/android_usb/android0/f_serial/transports smd
- write /sys/class/android_usb/android0/functions rndis,serial
- write /sys/class/android_usb/android0/enable
- setprop sys.usb.state rndis
- on property:sys.usb.config=rndis,serial_smd,adb
- stop adbd
- write /sys/class/android_usb/android0/enable
- write /sys/class/android_usb/android0/idVendor 05C6
- write /sys/class/android_usb/android0/idProduct 90B4
- write /sys/class/android_usb/android0/f_serial/transports smd
- write /sys/class/android_usb/android0/functions rndis,serial,adb
- write /sys/class/android_usb/android0/enable
- start adbd
- setprop sys.usb.state rndis,adb
- on property:sys.usb.config=rndis,serial_smd,diag
- write /sys/class/android_usb/android0/enable
- write /sys/class/android_usb/android0/idVendor 05C6
- write /sys/class/android_usb/android0/idProduct 90B5
- write /sys/class/android_usb/android0/f_diag/clients diag
- write /sys/class/android_usb/android0/f_serial/transports smd
- write /sys/class/android_usb/android0/functions rndis,serial,diag
- write /sys/class/android_usb/android0/enable
- setprop sys.usb.state rndis
- on property:sys.usb.config=rndis,serial_smd,diag,adb
- stop adbd
- write /sys/class/android_usb/android0/enable
- write /sys/class/android_usb/android0/idVendor 05C6
- write /sys/class/android_usb/android0/idProduct 90B6
- write /sys/class/android_usb/android0/f_diag/clients diag
- write /sys/class/android_usb/android0/f_serial/transports smd
- write /sys/class/android_usb/android0/functions rndis,serial,diag,adb
- write /sys/class/android_usb/android0/enable
- start adbd
- setprop sys.usb.state rndis,adb
- on property:sys.usb.config=rndis,diag,diag_mdm
- write /sys/class/android_usb/android0/enable
- write /sys/class/android_usb/android0/idVendor 05C6
- write /sys/class/android_usb/android0/idProduct
- write /sys/class/android_usb/android0/f_diag/clients diag,diag_mdm
- write /sys/class/android_usb/android0/functions rndis,diag
- write /sys/class/android_usb/android0/enable
- setprop sys.usb.state rndis
- on property:sys.usb.config=rndis,diag,diag_mdm,adb
- stop adbd
- write /sys/class/android_usb/android0/enable
- write /sys/class/android_usb/android0/idVendor 05C6
- write /sys/class/android_usb/android0/idProduct
- write /sys/class/android_usb/android0/f_diag/clients diag,diag_mdm
- write /sys/class/android_usb/android0/functions rndis,diag,adb
- write /sys/class/android_usb/android0/enable
- start adbd
- setprop sys.usb.state rndis,adb
- on property:sys.usb.config=rndis,diag,diag_mdm,diag_qsc
- write /sys/class/android_usb/android0/enable
- write /sys/class/android_usb/android0/idVendor 05C6
- write /sys/class/android_usb/android0/idProduct
- write /sys/class/android_usb/android0/f_diag/clients diag,diag_mdm,diag_qsc
- write /sys/class/android_usb/android0/functions rndis,diag
- write /sys/class/android_usb/android0/enable
- setprop sys.usb.state rndis
- on property:sys.usb.config=rndis,diag,diag_mdm,diag_qsc,adb
- stop adbd
- write /sys/class/android_usb/android0/enable
- write /sys/class/android_usb/android0/idVendor 05C6
- write /sys/class/android_usb/android0/idProduct
- write /sys/class/android_usb/android0/f_diag/clients diag,diag_mdm,diag_qsc
- write /sys/class/android_usb/android0/functions rndis,diag,adb
- write /sys/class/android_usb/android0/enable
- start adbd
- setprop sys.usb.state rndis,adb
- on property:sys.usb.config=ptp
- write /sys/class/android_usb/android0/enable
- write /sys/class/android_usb/android0/idVendor 17EF
- write /sys/class/android_usb/android0/idProduct 749A
- write /sys/class/android_usb/android0/functions ptp
- write /sys/class/android_usb/android0/enable
- setprop sys.usb.state ${sys.usb.config}
- on property:sys.usb.config=ptp,adb
- stop adbd
- write /sys/class/android_usb/android0/enable
- write /sys/class/android_usb/android0/idVendor 17EF
- write /sys/class/android_usb/android0/idProduct 74F9
- write /sys/class/android_usb/android0/functions ptp,adb
- write /sys/class/android_usb/android0/enable
- start adbd
- setprop sys.usb.state ${sys.usb.config}
- on property:sys.usb.config=mtp,mass_storage
- write /sys/class/android_usb/android0/enable
- write /sys/class/android_usb/android0/idVendor 17EF
- write /sys/class/android_usb/android0/idProduct 74A6
- write /sys/class/android_usb/android0/functions mtp,mass_storage
- write /sys/class/android_usb/android0/enable
- setprop sys.usb.state ${sys.usb.config}
- on property:sys.usb.config=mtp,adb,mass_storage
- stop adbd
- write /sys/class/android_usb/android0/enable
- write /sys/class/android_usb/android0/idVendor 17EF
- write /sys/class/android_usb/android0/idProduct 74EE
- write /sys/class/android_usb/android0/functions mtp,adb,mass_storage
- write /sys/class/android_usb/android0/enable
- start adbd
- setprop sys.usb.state ${sys.usb.config}
- on property:sys.usb.config=mtp,mass_storage,adb
- stop adbd
- write /sys/class/android_usb/android0/enable
- write /sys/class/android_usb/android0/idVendor 17EF
- write /sys/class/android_usb/android0/idProduct
- write /sys/class/android_usb/android0/functions mtp,mass_storage,adb
- write /sys/class/android_usb/android0/enable
- start adbd
- setprop sys.usb.state ${sys.usb.config}
- on property:sys.usb.config=mtp
- write /sys/class/android_usb/android0/enable
- ##shenyong.wt,,add mtp+cdrom
- write /sys/class/android_usb/f_mass_storage/luns "lenovomtp"
- write /sys/class/android_usb/android0/idVendor 17EF
- write /sys/class/android_usb/android0/idProduct 74A6
- write /sys/class/android_usb/android0/functions mtp,mass_storage
- write /sys/class/android_usb/android0/enable
- setprop sys.usb.state ${sys.usb.config}
- on property:sys.usb.config=mtp,adb
- stop adbd
- write /sys/class/android_usb/android0/enable
- ##shenyong.wt,,add mtp+cdrom
- write /sys/class/android_usb/f_mass_storage/luns "lenovomtp"
- write /sys/class/android_usb/android0/idVendor 17EF
- write /sys/class/android_usb/android0/idProduct
- write /sys/class/android_usb/android0/functions mtp,mass_storage,adb
- write /sys/class/android_usb/android0/enable
- start adbd
- setprop sys.usb.state ${sys.usb.config}
- on property:sys.usb.config=mtp,diag
- write /sys/class/android_usb/android0/enable
- write /sys/class/android_usb/android0/idVendor 05C6
- write /sys/class/android_usb/android0/idProduct 901B
- write /sys/class/android_usb/android0/f_diag/clients diag
- write /sys/class/android_usb/android0/functions mtp,diag
- write /sys/class/android_usb/android0/enable
- setprop sys.usb.state ${sys.usb.config}
- on property:sys.usb.config=mtp,diag,adb
- stop adbd
- write /sys/class/android_usb/android0/enable
- write /sys/class/android_usb/android0/idVendor 05C6
- write /sys/class/android_usb/android0/idProduct 903A
- write /sys/class/android_usb/android0/f_diag/clients diag
- write /sys/class/android_usb/android0/functions mtp,diag,adb
- write /sys/class/android_usb/android0/enable
- start adbd
- setprop sys.usb.state ${sys.usb.config}
- on property:sys.usb.config=mtp,diag,diag_mdm
- write /sys/class/android_usb/android0/enable
- write /sys/class/android_usb/android0/idVendor 05C6
- write /sys/class/android_usb/android0/idProduct
- write /sys/class/android_usb/android0/f_diag/clients diag,diag_mdm
- write /sys/class/android_usb/android0/functions mtp,diag
- write /sys/class/android_usb/android0/enable
- setprop sys.usb.state ${sys.usb.config}
- on property:sys.usb.config=mtp,diag,diag_mdm,adb
- stop adbd
- write /sys/class/android_usb/android0/enable
- write /sys/class/android_usb/android0/idVendor 05C6
- write /sys/class/android_usb/android0/idProduct 903F
- write /sys/class/android_usb/android0/f_diag/clients diag,diag_mdm
- write /sys/class/android_usb/android0/functions mtp,diag,adb
- write /sys/class/android_usb/android0/enable
- start adbd
- setprop sys.usb.state ${sys.usb.config}
- on property:sys.usb.config=mtp,diag,diag_mdm,diag_qsc
- write /sys/class/android_usb/android0/enable
- write /sys/class/android_usb/android0/idVendor 05C6
- write /sys/class/android_usb/android0/idProduct
- write /sys/class/android_usb/android0/f_diag/clients diag,diag_mdm,diag_qsc
- write /sys/class/android_usb/android0/functions mtp,diag
- write /sys/class/android_usb/android0/enable
- setprop sys.usb.state ${sys.usb.config}
- on property:sys.usb.config=mtp,diag,diag_mdm,diag_qsc,adb
- stop adbd
- write /sys/class/android_usb/android0/enable
- write /sys/class/android_usb/android0/idVendor 05C6
- write /sys/class/android_usb/android0/idProduct
- write /sys/class/android_usb/android0/f_diag/clients diag,diag_mdm,diag_qsc
- write /sys/class/android_usb/android0/functions mtp,diag,adb
- write /sys/class/android_usb/android0/enable
- start adbd
- setprop sys.usb.state ${sys.usb.config}
- on property:sys.usb.config=diag,diag_mdm,ccid
- write /sys/class/android_usb/android0/enable
- write /sys/class/android_usb/android0/idVendor 05C6
- write /sys/class/android_usb/android0/idProduct
- write /sys/class/android_usb/android0/f_diag/clients diag,diag_mdm
- write /sys/class/android_usb/android0/functions diag,ccid
- write /sys/class/android_usb/android0/enable
- setprop sys.usb.state ${sys.usb.config}
- on property:sys.usb.config=diag,diag_mdm,ccid,adb
- stop adbd
- write /sys/class/android_usb/android0/enable
- write /sys/class/android_usb/android0/idVendor 05C6
- write /sys/class/android_usb/android0/idProduct
- write /sys/class/android_usb/android0/f_diag/clients diag,diag_mdm
- write /sys/class/android_usb/android0/functions diag,adb,ccid
- write /sys/class/android_usb/android0/enable
- start adbd
- setprop sys.usb.state ${sys.usb.config}
- on property:sys.usb.config=mass_storage,adb
- stop adbd
- write /sys/class/android_usb/android0/enable
- ##shenyong.wt,,add mtp+cdrom
- write /sys/class/android_usb/f_mass_storage/luns "default"
- write /sys/class/android_usb/android0/idVendor 17EF
- write /sys/class/android_usb/android0/idProduct
- write /sys/class/android_usb/android0/functions mass_storage,adb
- write /sys/class/android_usb/android0/enable
- start adbd
- setprop sys.usb.state ${sys.usb.config}
- #Mass-storage only composition
- on property:sys.usb.config=mass_storage
- write /sys/class/android_usb/android0/enable
- ##shenyong.wt,,add mtp+cdrom
- write /sys/class/android_usb/f_mass_storage/luns "default"
- write /sys/class/android_usb/android0/idVendor 17EF
- write /sys/class/android_usb/android0/idProduct 743A
- write /sys/class/android_usb/android0/functions mass_storage
- write /sys/class/android_usb/android0/enable
- setprop sys.usb.state ${sys.usb.config}
- on property:sys.usb.config=uws
- write /sys/class/android_usb/android0/enable
- ##shenyong.wt,,add mtp+cdrom
- write /sys/class/android_usb/f_mass_storage/luns "lenovomtp"
- write /sys/class/android_usb/android0/idVendor 17EF
- write /sys/class/android_usb/android0/idProduct 743D
- write /sys/class/android_usb/android0/functions mass_storage
- write /sys/class/android_usb/android0/enable
- setprop sys.usb.state ${sys.usb.config}
- on property:sys.usb.config=uws,adb
- stop adbd
- write /sys/class/android_usb/android0/enable
- ##shenyong.wt,,add mtp+cdrom
- write /sys/class/android_usb/f_mass_storage/luns "lenovomtp"
- write /sys/class/android_usb/android0/idVendor 17EF
- write /sys/class/android_usb/android0/idProduct
- write /sys/class/android_usb/android0/functions adb,mass_storage
- write /sys/class/android_usb/android0/enable
- start adbd
- setprop sys.usb.state ${sys.usb.config}
- on property:sys.usb.config=diag,qdss
- write /sys/class/android_usb/android0/enable
- write /sys/class/android_usb/android0/idVendor 05C6
- write /sys/class/android_usb/android0/idProduct 904A
- write /sys/class/android_usb/android0/f_diag/clients diag
- write /sys/class/android_usb/android0/f_qdss/debug_intf
- write /sys/class/android_usb/android0/f_qdss/transports bam
- write /sys/class/android_usb/android0/f_qdss/transport_names qdss_bam
- write /sys/class/android_usb/android0/functions diag,qdss
- write /sys/class/android_usb/android0/enable
- setprop sys.usb.state ${sys.usb.config}
- on property:sys.usb.config=diag,qdss,adb
- stop adbd
- write /sys/class/android_usb/android0/enable
- write /sys/class/android_usb/android0/idVendor 05C6
- write /sys/class/android_usb/android0/idProduct
- write /sys/class/android_usb/android0/f_diag/clients diag
- write /sys/class/android_usb/android0/f_qdss/debug_intf
- write /sys/class/android_usb/android0/f_qdss/transports bam
- write /sys/class/android_usb/android0/f_qdss/transport_names qdss_bam
- write /sys/class/android_usb/android0/functions diag,qdss,adb
- write /sys/class/android_usb/android0/enable
- start adbd
- setprop sys.usb.state ${sys.usb.config}
- on property:sys.usb.config=diag,diag_mdm,qdss
- write /sys/class/android_usb/android0/enable
- write /sys/class/android_usb/android0/idVendor 05C6
- write /sys/class/android_usb/android0/idProduct
- write /sys/class/android_usb/android0/f_diag/clients diag,diag_mdm
- write /sys/class/android_usb/android0/f_qdss/debug_intf
- write /sys/class/android_usb/android0/f_qdss/transports bam
- write /sys/class/android_usb/android0/f_qdss/transport_names qdss_bam
- write /sys/class/android_usb/android0/functions diag,qdss
- write /sys/class/android_usb/android0/enable
- setprop sys.usb.state ${sys.usb.config}
- on property:sys.usb.config=diag,diag_mdm,qdss,adb
- stop adbd
- write /sys/class/android_usb/android0/enable
- write /sys/class/android_usb/android0/idVendor 05C6
- write /sys/class/android_usb/android0/idProduct
- write /sys/class/android_usb/android0/f_diag/clients diag,diag_mdm
- write /sys/class/android_usb/android0/f_qdss/debug_intf
- write /sys/class/android_usb/android0/f_qdss/transports bam
- write /sys/class/android_usb/android0/f_qdss/transport_names qdss_bam
- write /sys/class/android_usb/android0/functions diag,qdss,adb
- write /sys/class/android_usb/android0/enable
- start adbd
- setprop sys.usb.state ${sys.usb.config}
- on property:sys.usb.config=diag,qdss,rmnet_bam
- write /sys/class/android_usb/android0/enable
- write /sys/class/android_usb/android0/idVendor 05C6
- write /sys/class/android_usb/android0/idProduct
- write /sys/class/android_usb/android0/f_diag/clients diag
- write /sys/class/android_usb/android0/f_rmnet/transports smd,bam
- write /sys/class/android_usb/android0/f_qdss/debug_intf
- write /sys/class/android_usb/android0/f_qdss/transports bam
- write /sys/class/android_usb/android0/f_qdss/transport_names qdss_bam
- write /sys/class/android_usb/android0/functions diag,qdss,rmnet
- write /sys/class/android_usb/android0/enable
- setprop sys.usb.state ${sys.usb.config}
- on property:sys.usb.config=diag,qdss,rmnet_bam,adb
- stop adbd
- write /sys/class/android_usb/android0/enable
- write /sys/class/android_usb/android0/idVendor 05C6
- write /sys/class/android_usb/android0/idProduct
- write /sys/class/android_usb/android0/f_diag/clients diag
- write /sys/class/android_usb/android0/f_rmnet/transports smd,bam
- write /sys/class/android_usb/android0/f_qdss/debug_intf
- write /sys/class/android_usb/android0/f_qdss/transports bam
- write /sys/class/android_usb/android0/f_qdss/transport_names qdss_bam
- write /sys/class/android_usb/android0/functions diag,qdss,adb,rmnet
- write /sys/module/dwc3/parameters/tx_fifo_resize_enable
- write /sys/class/android_usb/android0/enable
- start adbd
- setprop sys.usb.state ${sys.usb.config}
- on property:sys.usb.config=diag,diag_mdm,qdss,rmnet_hsic
- write /sys/class/android_usb/android0/enable
- write /sys/class/android_usb/android0/idVendor 05C6
- write /sys/class/android_usb/android0/idProduct 909B
- write /sys/class/android_usb/android0/f_diag/clients diag,diag_mdm
- write /sys/class/android_usb/android0/f_rmnet/transports hsic,hsic
- write /sys/class/android_usb/android0/f_qdss/debug_intf
- write /sys/class/android_usb/android0/f_qdss/transports bam
- write /sys/class/android_usb/android0/f_qdss/transport_names qdss_bam
- write /sys/class/android_usb/android0/functions diag,qdss,rmnet
- write /sys/class/android_usb/android0/enable
- setprop sys.usb.state ${sys.usb.config}
- on property:sys.usb.config=diag,diag_mdm,qdss,rmnet_hsic,adb
- stop adbd
- write /sys/class/android_usb/android0/enable
- write /sys/class/android_usb/android0/idVendor 05C6
- write /sys/class/android_usb/android0/idProduct 909A
- write /sys/class/android_usb/android0/f_diag/clients diag,diag_mdm
- write /sys/class/android_usb/android0/f_rmnet/transports hsic,hsic
- write /sys/class/android_usb/android0/f_qdss/debug_intf
- write /sys/class/android_usb/android0/f_qdss/transports bam
- write /sys/class/android_usb/android0/f_qdss/transport_names qdss_bam
- write /sys/class/android_usb/android0/functions diag,qdss,adb,rmnet
- write /sys/module/dwc3/parameters/tx_fifo_resize_enable
- write /sys/class/android_usb/android0/enable
- start adbd
- setprop sys.usb.state ${sys.usb.config}
- on property:sys.usb.config=diag,diag_mdm,qdss_apq,qdss_mdm,rmnet_hsic
- write /sys/class/android_usb/android0/enable
- write /sys/class/android_usb/android0/idVendor 05C6
- write /sys/class/android_usb/android0/idProduct 90A3
- write /sys/class/android_usb/android0/f_diag/clients diag,diag_mdm
- write /sys/class/android_usb/android0/f_rmnet/transports hsic,hsic
- write /sys/class/android_usb/android0/f_qdss/debug_intf
- write /sys/class/android_usb/android0/f_qdss/transports bam,hsic
- write /sys/class/android_usb/android0/f_qdss/transport_names qdss_bam,qdss_hsic
- write /sys/class/android_usb/android0/functions diag,qdss,rmnet
- write /sys/class/android_usb/android0/enable
- setprop sys.usb.state ${sys.usb.config}
- on property:sys.usb.config=diag,diag_mdm,qdss_apq,qdss_mdm,rmnet_hsic,adb
- stop adbd
- write /sys/class/android_usb/android0/enable
- write /sys/class/android_usb/android0/idVendor 05C6
- write /sys/class/android_usb/android0/idProduct 90A2
- write /sys/class/android_usb/android0/f_diag/clients diag,diag_mdm
- write /sys/class/android_usb/android0/f_rmnet/transports hsic,hsic
- write /sys/class/android_usb/android0/f_qdss/debug_intf
- write /sys/class/android_usb/android0/f_qdss/transports bam,hsic
- write /sys/class/android_usb/android0/f_qdss/transport_names qdss_bam,qdss_hsic
- write /sys/class/android_usb/android0/functions diag,qdss,adb,rmnet
- write /sys/module/dwc3/parameters/tx_fifo_resize_enable
- write /sys/class/android_usb/android0/enable
- start adbd
- setprop sys.usb.state ${sys.usb.config}
- on property:sys.usb.config=rndis,diag,qdss
- write /sys/class/android_usb/android0/enable
- write /sys/class/android_usb/android0/idVendor 05C6
- write /sys/class/android_usb/android0/idProduct
- write /sys/class/android_usb/android0/f_diag/clients diag
- write /sys/class/android_usb/android0/f_qdss/debug_intf
- write /sys/class/android_usb/android0/f_qdss/transports bam
- write /sys/class/android_usb/android0/f_qdss/transport_names qdss_bam
- write /sys/class/android_usb/android0/functions rndis,diag,qdss
- write /sys/class/android_usb/android0/enable
- setprop sys.usb.state ${sys.usb.config}
- on property:sys.usb.config=rndis,diag,qdss,adb
- stop adbd
- write /sys/class/android_usb/android0/enable
- write /sys/class/android_usb/android0/idVendor 05C6
- write /sys/class/android_usb/android0/idProduct
- write /sys/class/android_usb/android0/f_diag/clients diag
- write /sys/class/android_usb/android0/f_qdss/debug_intf
- write /sys/class/android_usb/android0/f_qdss/transports bam
- write /sys/class/android_usb/android0/f_qdss/transport_names qdss_bam
- write /sys/class/android_usb/android0/functions rndis,diag,qdss,adb
- write /sys/module/dwc3/parameters/tx_fifo_resize_enable
- write /sys/class/android_usb/android0/enable
- start adbd
- setprop sys.usb.state ${sys.usb.config}
- on property:sys.usb.config=ncm
- write /sys/class/android_usb/android0/enable
- write /sys/class/android_usb/android0/idVendor
- write /sys/class/android_usb/android0/idProduct A4A1
- write /sys/class/android_usb/android0/functions ncm
- write /sys/class/android_usb/android0/enable
- setprop sys.usb.state ${sys.usb.config}
- on property:sys.usb.config=ncm,adb
- stop adbd
- write /sys/class/android_usb/android0/enable
- write /sys/class/android_usb/android0/idVendor 05C6
- write /sys/class/android_usb/android0/idProduct 908C
- write /sys/class/android_usb/android0/functions ncm,adb
- write /sys/class/android_usb/android0/enable
- start adbd
- setprop sys.usb.state ${sys.usb.config}
- on property:sys.usb.config=charging
- write /sys/class/android_usb/android0/enable
- write /sys/class/android_usb/android0/idVendor 05C6
- write /sys/class/android_usb/android0/idProduct F006
- write /sys/class/android_usb/android0/functions charging
- write /sys/class/android_usb/android0/enable
- setprop sys.usb.state ${sys.usb.config}
下边是开机后不插usb线,kernel log中与android.c相关的log,可以看到该文件中各个函数的调用顺序
254 [ 7.893632][UTC:1970-01-01 00:00:07(7)]init: Nathan init
255 [ 7.899461][UTC:1970-01-01 00:00:07(7)]android_probe: Nathan android_probe
256 [ 7.905813][UTC:1970-01-01 00:00:07(7)]android_create_device: Nathan android_create_device
257 [ 7.914843][UTC:1970-01-01 00:00:07(7)]android_bind: Nathan android_bind
258 [ 7.920619][UTC:1970-01-01 00:00:07(7)]cdev_to_android_dev: Nathan cdev_to_android_dev
259 [ 7.928555][UTC:1970-01-01 00:00:07(7)]android_init_functions: Nathan android_init_functions
264 [ 7.966995][UTC:1970-01-01 00:00:07(7)]cdev_to_android_dev: Nathan cdev_to_android_dev
272 [ 8.029023][UTC:1970-01-01 00:00:07(7)]init: Nathan init, after platform_driver_register
387 [ 15.848597][UTC:1970-01-01 00:09:35(575)]enable_store: Nathan enable_store buf:0
389 [ 15.872882][UTC:1970-01-01 00:09:35(575)]functions_store: Nathan functions_store buf:mtp,mass_storage,adb
390 [ 15.889524][UTC:1970-01-01 00:09:35(575)]alloc_android_config: Nathan alloc_android_config
391 [ 15.898231][UTC:1970-01-01 00:09:35(575)]android_enable_function: Nathan android_enable_function
392 [ 15.906078][UTC:1970-01-01 00:09:35(575)]android_enable_function: Nathan android_enable_function
393 [ 15.920715][UTC:1970-01-01 00:09:35(575)]android_enable_function: Nathan android_enable_function
395 [ 15.937418][UTC:1970-01-01 00:09:35(575)]enable_store: Nathan enable_store buf:1
396 [ 15.937431][UTC:1970-01-01 00:09:35(575)]android_disable: Nathan android_disable
397 [ 15.937434][UTC:1970-01-01 00:09:35(575)]android_enable: Nathan android_enable
398 [ 15.975975][UTC:1970-01-01 00:09:35(575)]android_enable: Nathan android_enable
400 [ 15.993523][UTC:1970-01-01 00:09:35(575)]cdev_to_android_dev: Nathan cdev_to_android_dev
401 [ 16.003646][UTC:1970-01-01 00:09:35(575)]android_bind_config: Nathan android_bind_config
403 [ 16.029783][UTC:1970-01-01 00:09:35(575)]diag: In diag_send_log_mask_update, invalid status 0[ 16.030342][UTC:1970-01-01 00:09:35(575)]android_bind_enabled_functions: Nathan android_bind_enabled_functions
451 [ 30.480285][UTC:2014-01-01 00:00:09(1388534409)]state_show: Nathan state_show buf:
下面是完整的kernel log
1 [ 3.713760] usbcore: registered new interface driver ums-sddr55
2 [ 3.719788] usbcore: registered new interface driver ums-usbat
3 [ 3.725777] usbcore: registered new interface driver usbserial
4 [ 3.731299] usbcore: registered new interface driver qc_csvt
5 [ 3.736990] usbserial: USB Serial support registered for qc_csvt
6 [ 3.742957] usbcore: registered new interface driver usb_ehset_test
7 [ 3.751881] msm_otg 78d9000.usb: phy_reset: success
8 [ 3.759026] mousedev: PS/2 mouse device common for all mice
9 [ 3.764506] usbcore: registered new interface driver xpad
10 [ 3.772360] input: ft5x06_ts as /devices/soc.0/78b9000.i2c/i2c-5/5-0038/input/input0
11 [ 4.015241] i2c-msm-v2 78b9000.i2c: msm_bus_scale_register_client(mstr-id:86):0xa (ok)
12 [ 4.023430] ft5x06_ts 5-0038: Device ID = 0x12
13 [ 4.027958] ft5x06_ts 5-0038: report rate = 120Hz
14 [ 4.033764] ft5x06_ts 5-0038: Firmware version = 27.0.0
15 [ 4.185145] i2c-msm-v2 78b6000.i2c: msm_bus_scale_register_client(mstr-id:86):0xb (ok)
16 [ 4.194073] input: accelerometer as /devices/soc.0/78b6000.i2c/i2c-0/0-000e/input/input1
17 [ 4.201225] kxtj9 0-000e: Power on=1. enabled=1
18 [ 4.404626] i2c-msm-v2 78b6000.i2c: slave:0x68 is not responding (I2C-NACK) ensure the slave is powered and out of reset
19 [ 4.414595] mpu6050 0-0068: Fail to read power mode, ret=-107
20 [ 4.420204] mpu6050 0-0068: Cannot get invalid chip type
21 [ 4.425710] mpu6050 0-0068: Probe device return error-107
22 [ 4.430901] mpu6050: probe of 0-0068 failed with error -107
23 [ 4.436592] AKM compass driver: initialize.
24 [ 4.440807] i2c-msm-v2 78b6000.i2c: slave:0xc is not responding (I2C-NACK) ensure the slave is powered and out of reset
25 [ 4.451527] akm09911 0-000c: akm_i2c_txdata: transfer failed.
26 [ 4.457156] akm09911 0-000c: AKECS_Set_PowerDown: Can not set to powerdown mode.
27 [ 4.554608] i2c-msm-v2 78b6000.i2c: slave:0xc is not responding (I2C-NACK) ensure the slave is powered and out of reset
28 [ 4.564488] akm09911 0-000c: akm_i2c_rxdata: transfer failed.
29 [ 4.570357] akm09911: probe of 0-000c failed with error -107
30 [ 4.643134] input: light as /devices/virtual/input/input2
31 [ 4.648518] input: proximity as /devices/virtual/input/input3
32 [ 4.826101][UTC:1970-01-01 00:00:04(4)]qcom,qpnp-rtc qpnp-rtc-ee342800: rtc core: registered qpnp_rtc as rtc0
33 [ 4.835433][UTC:1970-01-01 00:00:04(4)]i2c /dev entries driver
34 [ 4.846966][UTC:1970-01-01 00:00:04(4)]platform 1d00000.qcom,vidc: Driver msm_vidc_v4l2 requests probe deferral
35 [ 4.859382][UTC:1970-01-01 00:00:04(4)]msm_cci_probe: pdev ee3a8a00 device id = -1
36 [ 4.879702][UTC:1970-01-01 00:00:04(4)]msm_flash_lm3642_init entry
37 [ 4.888167][UTC:1970-01-01 00:00:04(4)]msm_eeprom_parse_memory_map: pageen not needed
38 [ 4.895260][UTC:1970-01-01 00:00:04(4)]msm_eeprom_parse_memory_map: pageen not needed
39 [ 4.902980][UTC:1970-01-01 00:00:04(4)]msm_eeprom_parse_memory_map: pageen not needed
40 [ 4.910727][UTC:1970-01-01 00:00:04(4)]msm_eeprom_parse_memory_map: pageen not needed
41 [ 4.918535][UTC:1970-01-01 00:00:04(4)]msm_eeprom_parse_memory_map: pageen not needed
42 [ 4.926370][UTC:1970-01-01 00:00:04(4)]msm_eeprom_parse_memory_map: pageen not needed
43 [ 4.934109][UTC:1970-01-01 00:00:04(4)]msm_eeprom_parse_memory_map: pageen not needed
44 [ 4.941977][UTC:1970-01-01 00:00:04(4)]msm_eeprom_parse_memory_map: pageen not needed
45 [ 4.949789][UTC:1970-01-01 00:00:04(4)]msm_eeprom_parse_memory_map: pageen not needed
46 [ 4.957602][UTC:1970-01-01 00:00:04(4)]msm_eeprom_parse_memory_map: pageen not needed
47 [ 4.965418][UTC:1970-01-01 00:00:04(4)]msm_eeprom_parse_memory_map: pageen not needed
48 [ 4.973182][UTC:1970-01-01 00:00:04(4)]msm_eeprom_parse_memory_map: pageen not needed
49 [ 4.981048][UTC:1970-01-01 00:00:04(4)]msm_eeprom_parse_memory_map: pageen not needed
50 [ 4.988857][UTC:1970-01-01 00:00:04(4)]msm_eeprom_parse_memory_map: pageen not needed
51 [ 4.996675][UTC:1970-01-01 00:00:04(4)]msm_eeprom_parse_memory_map: pageen not needed
52 [ 5.093984][UTC:1970-01-01 00:00:05(5)]msm_cci_init:756: hw_version = 0x10000008
53 [ 5.491341][UTC:1970-01-01 00:00:05(5)]MSM-SENSOR-INIT msm_sensor_init_module:143 MSM_SENSOR_INIT_MODULE (null)
54 [ 5.504102][UTC:1970-01-01 00:00:05(5)]g_sctrl[0] edac3c00
55 [ 5.510062][UTC:1970-01-01 00:00:05(5)]g_sctrl[1] edac3e00[ 5.514727][UTC:1970-01-01 00:00:05(5)]mt9m114_init_module:1155
56 [ 5.521672][UTC:1970-01-01 00:00:05(5)]mt9m114_init_module:1160 rc -19
57 [ 5.527380][UTC:1970-01-01 00:00:05(5)]ov5645_init_module:558
58 [ 5.551281][UTC:1970-01-01 00:00:05(5)]MSM-CPP cpp_init_hardware:815 CPP HW Version: 0x40010000
59 [ 5.559083][UTC:1970-01-01 00:00:05(5)]MSM-CPP cpp_init_hardware:825 stream_cnt:0
60 [ 5.574951][UTC:1970-01-01 00:00:05(5)]__msm_jpeg_init:1236] Jpeg Device id 0
61 [ 5.584300][UTC:1970-01-01 00:00:05(5)]BMS: bms_get_adc: vadc not found - defer probe rc=-517
62 [ 5.592060][UTC:1970-01-01 00:00:05(5)]BMS: qpnp_vm_bms_probe: Failed to get adc rc=-517
63 [ 5.600126][UTC:1970-01-01 00:00:05(5)]spmi qpnp-vm-bms-ee343200: Driver qcom,qpnp-vm-bms requests probe deferral
64 [ 5.610834][UTC:1970-01-01 00:00:05(5)]CHG: qpnp_lbc_probe: Failed to read DT properties rc=-517
65 [ 5.619135][UTC:1970-01-01 00:00:05(5)]spmi qpnp-linear-charger-ee343000: Driver qcom,qpnp-linear-charger requests probe deferral
66 [ 5.632038][UTC:1970-01-01 00:00:05(5)]unable to find DT imem DLOAD mode node
67 [ 5.638995][UTC:1970-01-01 00:00:05(5)]unable to find DT imem EDLOAD mode node
68 [ 5.671162][UTC:1970-01-01 00:00:05(5)]device-mapper: ioctl: 4.24.0-ioctl (2013-01-15) initialised: dm-devel@redhat.com
69 [ 5.681480][UTC:1970-01-01 00:00:05(5)]cpuidle: using governor ladder
70 [ 5.687428][UTC:1970-01-01 00:00:05(5)]cpuidle: using governor menu
71 [ 5.693731][UTC:1970-01-01 00:00:05(5)]sdhci: Secure Digital Host Controller Interface driver
72 [ 5.702338][UTC:1970-01-01 00:00:05(5)]sdhci: Copyright(c) Pierre Ossman
73 [ 5.708971][UTC:1970-01-01 00:00:05(5)]sdhci-pltfm: SDHCI platform and OF driver helper
74 [ 5.727596][UTC:1970-01-01 00:00:05(5)]mmc0: no vqmmc regulator found
75 [ 5.733058][UTC:1970-01-01 00:00:05(5)]mmc0: no vmmc regulator found
76 [ 5.772574][UTC:1970-01-01 00:00:05(5)]mmc0: SDHCI controller on 7824900.sdhci [7824900.sdhci] using 32-bit ADMA
77 [ 5.795264][UTC:1970-01-01 00:00:05(5)]mmc1: no vqmmc regulator found
78 [ 5.800727][UTC:1970-01-01 00:00:05(5)]mmc1: no vmmc regulator found
79 [ 5.847657][UTC:1970-01-01 00:00:05(5)]mmc1: SDHCI controller on 7864900.sdhci [7864900.sdhci] using 32-bit ADMA
80 [ 5.863973][UTC:1970-01-01 00:00:05(5)]qcom,leds-qpnp: probe of leds-qpnp-ee343400 failed with error -10
81 [ 5.876518][UTC:1970-01-01 00:00:05(5)]QCE50: __qce_get_device_tree_data: bam_pipe_pair=0x1
82 [ 5.883733][UTC:1970-01-01 00:00:05(5)]QCE50: __qce_get_device_tree_data: ce-device =0x0QCE50: __qce_get_device_tree_data: ce_phy_reg_base=0x720000
83 [ 5.897100][UTC:1970-01-01 00:00:05(5)]QCE50: __qce_get_device_tree_data: ce_virt_reg_base=0xf07c0000
84 [ 5.906703][UTC:1970-01-01 00:00:05(5)]QCE50: __qce_get_device_tree_data: ce_bam_phy_reg_base=0x704000
85 [ 5.915949][UTC:1970-01-01 00:00:05(5)]QCE50: __qce_get_device_tree_data: CRYPTO BAM IRQ = 239.
86 [ 5.926542][UTC:1970-01-01 00:00:05(5)]XXX::mmca_vsn::csd.mmca_vsn=4
87 [ 5.926723][UTC:1970-01-01 00:00:05(5)]qce 720000.qcedev: Qualcomm Crypto 5.3.1 device found @0x720000
88 [ 5.926748][UTC:1970-01-01 00:00:05(5)]qce 720000.qcedev: CE device = 0x0
89 [ 5.926748][UTC:1970-01-01 00:00:05(5)], IO base, CE = 0xf07c0000
90 [ 5.926748][UTC:1970-01-01 00:00:05(5)], Consumer (IN) PIPE 2, Producer (OUT) PIPE 3
91 [ 5.926748][UTC:1970-01-01 00:00:05(5)]IO base BAM = 0x0
92 [ 5.926748][UTC:1970-01-01 00:00:05(5)]BAM IRQ 239
93 [ 5.926748][UTC:1970-01-01 00:00:05(5)]Engines Availability = 0x2010853
94 [ 5.978887][UTC:1970-01-01 00:00:05(5)]XXX::emmc_name=KMQ7x000SA-B315-Samsung
95 [ 5.986516][UTC:1970-01-01 00:00:05(5)]sps:BAM 0x00704000 is registered.
96 [ 5.986518][UTC:1970-01-01 00:00:05(5)]sps:BAM 0x00704000 (va:0xf0c40000) enabled: ver:0x25, number of pipes:8
97 [ 6.002778][UTC:1970-01-01 00:00:05(5)]mmc0: BKOPS_EN bit = 0
98 [ 6.009001][UTC:1970-01-01 00:00:05(5)]QCE50: qce_sps_init: Qualcomm MSM CE-BAM at 0x0000000000704000 irq 239
99 [ 6.022086][UTC:1970-01-01 00:00:05(5)]usbcore: registered new interface driver usbhid
100 [ 6.029120][UTC:1970-01-01 00:00:05(5)]usbhid: USB HID core driver
101 [ 6.036475][UTC:1970-01-01 00:00:06(6)]zram: Created 1 device(s) ...
102 [ 6.044187][UTC:1970-01-01 00:00:06(6)]ashmem: initialized
103 [ 6.052317][UTC:1970-01-01 00:00:06(6)]mmc0: new HS200 MMC card at address 0001
104 [ 6.053877][UTC:1970-01-01 00:00:06(6)]logger: created 256K log 'log_main'
105 [ 6.055216][UTC:1970-01-01 00:00:06(6)]logger: created 256K log 'log_events'
106 [ 6.056467][UTC:1970-01-01 00:00:06(6)]logger: created 256K log 'log_radio'
107 [ 6.057725][UTC:1970-01-01 00:00:06(6)]logger: created 256K log 'log_system'
108 [ 6.086786][UTC:1970-01-01 00:00:06(6)]sps:BAM 0x078c4000 is registered.
109 [ 6.093153][UTC:1970-01-01 00:00:06(6)]usb_bam_ipa_create_resources: Failed to create USB_PROD resource
110 [ 6.093321][UTC:1970-01-01 00:00:06(6)]mmcblk0: mmc0:0001 Q7XSAB 7.28 GiB
111 [ 6.109677][UTC:1970-01-01 00:00:06(6)]mmcblk0rpmb: mmc0:0001 Q7XSAB partition 3 512 KiB
112 [ 6.110533][UTC:1970-01-01 00:00:06(6)]qcom,qpnp-power-on qpnp-power-on-ee342200: PMIC@SID0 Power-on reason: Triggered from KPD (power key press) and 'cold' boot
113 [ 6.110559][UTC:1970-01-01 00:00:06(6)]qcom,qpnp-power-on qpnp-power-on-ee342200: PMIC@SID0: Power-off reason: Triggered from UVLO (Under Voltage Lock Out)
114 [ 6.111154][UTC:1970-01-01 00:00:06(6)]input: qpnp_pon as /devices/virtual/input/input4
115 [ 6.115044][UTC:1970-01-01 00:00:06(6)]PMIC@SID0: PM8916 v2.0 options: 2, 2, 0, 0
116 [ 6.118625][UTC:1970-01-01 00:00:06(6)]coresight-fuse 5e01c.fuse: Fuse initialized
117 [ 6.120393][UTC:1970-01-01 00:00:06(6)]coresight-cti 810000.cti: CTI initialized
118 [ 6.120922][UTC:1970-01-01 00:00:06(6)]coresight-cti 811000.cti: CTI initialized
119 [ 6.121426][UTC:1970-01-01 00:00:06(6)]coresight-cti 812000.cti: CTI initialized
120 [ 6.121952][UTC:1970-01-01 00:00:06(6)]coresight-cti 813000.cti: CTI initialized
121 [ 6.122455][UTC:1970-01-01 00:00:06(6)]coresight-cti 814000.cti: CTI initialized
122 [ 6.122986][UTC:1970-01-01 00:00:06(6)]coresight-cti 815000.cti: CTI initialized
123 [ 6.123457][UTC:1970-01-01 00:00:06(6)]coresight-cti 816000.cti: CTI initialized
124 [ 6.123904][UTC:1970-01-01 00:00:06(6)]coresight-cti 817000.cti: CTI initialized
125 [ 6.124463][UTC:1970-01-01 00:00:06(6)]coresight-cti 818000.cti: CTI initialized
126 [ 6.124981][UTC:1970-01-01 00:00:06(6)]coresight-cti 858000.cti: CTI initialized
127 [ 6.125441][UTC:1970-01-01 00:00:06(6)]coresight-cti 859000.cti: CTI initialized
128 [ 6.125924][UTC:1970-01-01 00:00:06(6)]coresight-cti 85a000.cti: CTI initialized
129 [ 6.126384][UTC:1970-01-01 00:00:06(6)]coresight-cti 85b000.cti: CTI initialized
130 [ 6.126864][UTC:1970-01-01 00:00:06(6)]coresight-cti 830000.cti: CTI initialized
131 [ 6.127347][UTC:1970-01-01 00:00:06(6)]coresight-cti 835000.cti: CTI initialized
132 [ 6.127808][UTC:1970-01-01 00:00:06(6)]coresight-cti 838000.cti: CTI initialized
133 [ 6.128293][UTC:1970-01-01 00:00:06(6)]coresight-cti 83c000.cti: CTI initialized
134 [ 6.129515][UTC:1970-01-01 00:00:06(6)]coresight-csr 801000.csr: CSR initialized
135 [ 6.131038][UTC:1970-01-01 00:00:06(6)]coresight-tmc 826000.tmc: Byte Counter feature enabled
136 [ 6.131604][UTC:1970-01-01 00:00:06(6)]sps:BAM 0x00884000 is registered.
137 [ 6.131606][UTC:1970-01-01 00:00:06(6)]coresight-tmc 826000.tmc: TMC initialized
138 [ 6.132389][UTC:1970-01-01 00:00:06(6)]coresight-tmc 825000.tmc: TMC initialized
139 [ 6.138845][UTC:1970-01-01 00:00:06(6)]nidnt boot config: 0
140 [ 6.143245][UTC:1970-01-01 00:00:06(6)]coresight-tpiu 820000.tpiu: NIDnT on SDCARD only mode
141 [ 6.143528][UTC:1970-01-01 00:00:06(6)]coresight-tpiu 820000.tpiu: TPIU initialized
142 [ 6.145057][UTC:1970-01-01 00:00:06(6)]coresight-funnel 821000.funnel: FUNNEL initialized
143 [ 6.145458][UTC:1970-01-01 00:00:06(6)]coresight-funnel 841000.funnel: FUNNEL initialized
144 [ 6.145829][UTC:1970-01-01 00:00:06(6)]coresight-funnel 869000.funnel: FUNNEL initialized
145 [ 6.146223][UTC:1970-01-01 00:00:06(6)]coresight-funnel 868000.funnel: FUNNEL initialized
146 [ 6.147603][UTC:1970-01-01 00:00:06(6)]coresight-replicator 824000.replicator: REPLICATOR initialized
147 [ 6.149315][UTC:1970-01-01 00:00:06(6)]coresight-stm 802000.stm: STM initialized
148 [ 6.150768][UTC:1970-01-01 00:00:06(6)]coresight-hwevent 86c000.hwevent: Hardware Event driver initialized
149 [ 6.152764][UTC:1970-01-01 00:00:06(6)]coresight-etmv4 85c000.etm: ETMv4 initialized
150 [ 6.153919][UTC:1970-01-01 00:00:06(6)]coresight-etmv4 85d000.etm: ETMv4 initialized
151 [ 6.428840][UTC:1970-01-01 00:00:06(6)]coresight-etmv4 85e000.etm: ETMv4 initialized
152 [ 6.436982][UTC:1970-01-01 00:00:06(6)]coresight-etmv4 85f000.etm: ETMv4 initialized
153 [ 6.442038][UTC:1970-01-01 00:00:06(6)] mmcblk0: p1 p2 p3 p4 p5 p6 p7 p8 p9 p10 p11 p12 p13 p14 p15 p16 p17 p18 p19 p20 p21 p22 p23 p24 p25 p26 p27 p28 p29 p30
154 [ 6.460388][UTC:1970-01-01 00:00:06(6)]coresight-modem-etm modem_etm0.3: Modem ETM initialized
155 [ 6.470247][UTC:1970-01-01 00:00:06(6)]coresight-wcn-etm wcn_etm0.2: Wireless ETM initialized
156 [ 6.480062][UTC:1970-01-01 00:00:06(6)]coresight-rpm-etm rpm_etm0.1: RPM ETM initialized
157 [ 6.489694][UTC:1970-01-01 00:00:06(6)]coresight-qpdi 1941000.qpdi: CoreSight QPDI driver initialized
158 [ 6.500936][UTC:1970-01-01 00:00:06(6)]spmi wcd-spmi-ee343a00: Driver wcd-spmi-core requests probe deferral
159 [ 6.509828][UTC:1970-01-01 00:00:06(6)]spmi wcd-spmi-ee343c00: Driver wcd-spmi-core requests probe deferral
160 [ 6.553981][UTC:1970-01-01 00:00:06(6)]msm-pcm-lpa msm-pcm-lpa: msm_pcm_probe: dev name msm-pcm-lpa
161 [ 6.564533][UTC:1970-01-01 00:00:06(6)]platform qcom,msm-voip-dsp.39: Driver msm-voip-dsp requests probe deferral
162 [ 6.575096][UTC:1970-01-01 00:00:06(6)]platform qcom,msm-pcm-voice.40: Driver msm-pcm-voice requests probe deferral
163 [ 6.596866][UTC:1970-01-01 00:00:06(6)]msm8x16-asoc-wcd msm-snd-card.0: msm8x16_asoc_machine_probe: missing qcom,msm-snd-card-id in dt node
164 [ 6.608451][UTC:1970-01-01 00:00:06(6)]msm8x16-asoc-wcd msm-snd-card.0: default codec configured
165 [ 6.618037][UTC:1970-01-01 00:00:06(6)]msm8x16-asoc-wcd msm-snd-card.0: ASoC: platform msm-pcm-voice not registered
166 [ 6.627690][UTC:1970-01-01 00:00:06(6)]msm8x16-asoc-wcd msm-snd-card.0: snd_soc_register_card failed (-517)
167 [ 6.637608][UTC:1970-01-01 00:00:06(6)]platform msm-snd-card.0: Driver msm8x16-asoc-wcd requests probe deferral
168 [ 6.648184][UTC:1970-01-01 00:00:06(6)]u32 classifier
169 [ 6.652391][UTC:1970-01-01 00:00:06(6)] Actions configured
170 [ 6.658189][UTC:1970-01-01 00:00:06(6)]Netfilter messages via NETLINK v0.30.
171 [ 6.665338][UTC:1970-01-01 00:00:06(6)]nf_conntrack version 0.5.0 (14125 buckets, 56500 max)
172 [ 6.675426][UTC:1970-01-01 00:00:06(6)]ctnetlink v0.93: registering with nfnetlink.
173 [ 6.682830][UTC:1970-01-01 00:00:06(6)]sysctl could not get directory: /net//netfilter -20
174 [ 6.690334][UTC:1970-01-01 00:00:06(6)]CPU: 3 PID: 1 Comm: swapper/0 Not tainted 3.10.28-g6283d37-dirty #9
175 [ 6.700045][UTC:1970-01-01 00:00:06(6)][<c00158b0>] (unwind_backtrace+0x0/0x128) from [<c0012da8>] (show_stack+0x20/0x24)
176 [ 6.710981][UTC:1970-01-01 00:00:06(6)][<c0012da8>] (show_stack+0x20/0x24) from [<c09155bc>] (dump_stack+0x20/0x28)
177 [ 6.721385][UTC:1970-01-01 00:00:06(6)][<c09155bc>] (dump_stack+0x20/0x28) from [<c016aef8>] (__register_sysctl_table+0x444/0x490)
178 [ 6.733109][UTC:1970-01-01 00:00:06(6)][<c016aef8>] (__register_sysctl_table+0x444/0x490) from [<c016b228>] (__register_sysctl_paths+0xe4/0x190)
179 [ 6.746040][UTC:1970-01-01 00:00:06(6)][<c016b228>] (__register_sysctl_paths+0xe4/0x190) from [<c016b2fc>] (register_sysctl_paths+0x28/0x30)
180 [ 6.758626][UTC:1970-01-01 00:00:06(6)][<c016b2fc>] (register_sysctl_paths+0x28/0x30) from [<c0dda9f0>] (nf_conntrack_sip_init+0x1c/0x274)
181 [ 6.771037][UTC:1970-01-01 00:00:06(6)][<c0dda9f0>] (nf_conntrack_sip_init+0x1c/0x274) from [<c00088dc>] (do_one_initcall+0xe4/0x198)
182 [ 6.783011][UTC:1970-01-01 00:00:06(6)][<c00088dc>] (do_one_initcall+0xe4/0x198) from [<c0d97c84>] (kernel_init_freeable+0x104/0x1d0)
183 [ 6.794996][UTC:1970-01-01 00:00:06(6)][<c0d97c84>] (kernel_init_freeable+0x104/0x1d0) from [<c090a36c>] (kernel_init+0x1c/0xf4)
184 [ 6.806541][UTC:1970-01-01 00:00:06(6)][<c090a36c>] (kernel_init+0x1c/0xf4) from [<c000eb98>] (ret_from_fork+0x14/0x20)
185 [ 6.817560][UTC:1970-01-01 00:00:06(6)]NF_TPROXY: Transparent proxy support initialized, version 4.1.0
186 [ 6.826569][UTC:1970-01-01 00:00:06(6)]NF_TPROXY: Copyright (c) 2006-2007 BalaBit IT Ltd.
187 [ 6.835617][UTC:1970-01-01 00:00:06(6)]xt_time: kernel timezone is -0000
188 [ 6.842166][UTC:1970-01-01 00:00:06(6)]ip_tables: (C) 2000-2006 Netfilter Core Team
189 [ 6.849679][UTC:1970-01-01 00:00:06(6)]arp_tables: (C) 2002 David S. Miller
190 [ 6.856122][UTC:1970-01-01 00:00:06(6)]TCP: cubic registered
191 [ 6.861593][UTC:1970-01-01 00:00:06(6)]Initializing XFRM netlink socket
192 [ 6.870247][UTC:1970-01-01 00:00:06(6)]NET: Registered protocol family 10
193 [ 6.882695][UTC:1970-01-01 00:00:06(6)]mip6: Mobile IPv6
194 [ 6.887143][UTC:1970-01-01 00:00:06(6)]ip6_tables: (C) 2000-2006 Netfilter Core Team
195 [ 6.895392][UTC:1970-01-01 00:00:06(6)]sit: IPv6 over IPv4 tunneling driver
196 [ 6.903017][UTC:1970-01-01 00:00:06(6)]NET: Registered protocol family 17
197 [ 6.908928][UTC:1970-01-01 00:00:06(6)]NET: Registered protocol family 15
198 [ 6.915768][UTC:1970-01-01 00:00:06(6)]Bridge firewalling registered
199 [ 6.921933][UTC:1970-01-01 00:00:06(6)]Ebtables v2.0 registered
200 [ 6.928393][UTC:1970-01-01 00:00:06(6)]Bluetooth: RFCOMM TTY layer initialized
201 [ 6.935127][UTC:1970-01-01 00:00:06(6)]Bluetooth: RFCOMM socket layer initialized
202 [ 6.942481][UTC:1970-01-01 00:00:06(6)]Bluetooth: RFCOMM ver 1.11
203 [ 6.948609][UTC:1970-01-01 00:00:06(6)]Bluetooth: BNEP (Ethernet Emulation) ver 1.3
204 [ 6.956240][UTC:1970-01-01 00:00:06(6)]Bluetooth: BNEP filters: protocol multicast
205 [ 6.963774][UTC:1970-01-01 00:00:06(6)]Bluetooth: BNEP socket layer initialized
206 [ 6.971090][UTC:1970-01-01 00:00:06(6)]Bluetooth: HIDP (Human Interface Emulation) ver 1.2
207 [ 6.979350][UTC:1970-01-01 00:00:06(6)]Bluetooth: HIDP socket layer initialized
208 [ 6.986697][UTC:1970-01-01 00:00:06(6)]l2tp_core: L2TP core driver, V2.0
209 [ 6.993316][UTC:1970-01-01 00:00:06(6)]l2tp_ppp: PPPoL2TP kernel driver, V2.0
210 [ 7.000431][UTC:1970-01-01 00:00:06(6)]l2tp_ip: L2TP IP encapsulation support (L2TPv3)
211 [ 7.008364][UTC:1970-01-01 00:00:06(6)]l2tp_netlink: L2TP netlink interface
212 [ 7.015379][UTC:1970-01-01 00:00:06(6)]l2tp_eth: L2TP ethernet pseudowire support (L2TPv3)
213 [ 7.023527][UTC:1970-01-01 00:00:06(6)]l2tp_debugfs: L2TP debugfs support
214 [ 7.030292][UTC:1970-01-01 00:00:06(6)]l2tp_ip6: L2TP IP encapsulation support for IPv6 (L2TPv3)
215 [ 7.040714][UTC:1970-01-01 00:00:07(7)]NET: Registered protocol family 27
216 [ 7.053231][UTC:1970-01-01 00:00:07(7)]XXX::restartlevel system
217 [ 7.061381][UTC:1970-01-01 00:00:07(7)]XXX::restartlevel system
218 [ 7.075263][UTC:1970-01-01 00:00:07(7)]of_batterydata_read_data: wingtech_guangyu_4v35_2300mah loaded
219 [ 7.106523][UTC:1970-01-01 00:00:07(7)]BMS: bms_load_hw_defaults: BMS_EN=1 Sample_Interval-S1=[100]S2=[70] Sample_Count-S1=[256]S2=[128] Fifo_Length-S1=[5]S2=[5] FSM_state=2
220 [ 7.132853][UTC:1970-01-01 00:00:07(7)]BMS: calculate_initial_soc: warm_reset=0 est_ocv=0 shutdown_soc_invalid=1 shutdown_ocv=65535 shutdown_soc=255 last_soc=-22 calculated_soc=80 last_ocv_uv=4102435
221 [ 7.150203][UTC:1970-01-01 00:00:07(7)]BMS: check_eoc_condition: Unable to read battery status
222 [ 7.174598][UTC:1970-01-01 00:00:07(7)]BMS: qpnp_vm_bms_probe: probe success: soc=80 vbatt=4017519 ocv=4102435 warm_reset=0
223 [ 7.295616][UTC:1970-01-01 00:00:07(7)]XXX::reg1010=0x0,reg1310=0x0,reg1309=0x0,plugged_in=0,reg1049=0x90,reg1009=0x0
224 [ 7.316221][UTC:1970-01-01 00:00:07(7)]battery powe supply creat attr file!!
225 [ 7.322371][UTC:1970-01-01 00:00:07(7)]XXX::reg1010=0x0,reg1310=0x0,reg1309=0x0,plugged_in=0,reg1049=0x90,reg1009=0x0
226 [ 7.333165][UTC:1970-01-01 00:00:07(7)]XXX::reg1010=0x0,reg1310=0x0,reg1309=0x0,plugged_in=0,reg1049=0x90,reg1009=0x0
227 [ 7.344944][UTC:1970-01-01 00:00:07(7)]XXX::reg1010=0x0,reg1310=0x0,reg1309=0x0,plugged_in=0,reg1049=0x90,reg1009=0x0
228 [ 7.348471][UTC:1970-01-01 00:00:07(7)]XXX::reg1010=0x0,reg1310=0x0,reg1309=0x0,plugged_in=0,reg1049=0x90,reg1009=0x0
229 [ 7.351131][UTC:1970-01-01 00:00:07(7)]CHG: qpnp_lbc_probe: Probe chg_dis=0 bpd=1 usb=0 batt_pres=1 batt_volt=4031013 soc=80
230 [ 7.351332][UTC:1970-01-01 00:00:07(7)]spmi wcd-spmi-ee343a00: Driver wcd-spmi-core requests probe deferral
231 [ 7.351488][UTC:1970-01-01 00:00:07(7)]spmi wcd-spmi-ee343c00: Driver wcd-spmi-core requests probe deferral
232 [ 7.399245][UTC:1970-01-01 00:00:07(7)]msm_otg 78d9000.usb: USB in low power mode
233 [ 7.407465][UTC:1970-01-01 00:00:07(7)]XXX::reg1010=0x0,reg1310=0x0,reg1309=0x0,plugged_in=0,reg1049=0x90,reg1009=0x0
234 [ 7.433074][UTC:1970-01-01 00:00:07(7)]msm8x16-asoc-wcd msm-snd-card.0: msm8x16_asoc_machine_probe: missing qcom,msm-snd-card-id in dt node
235 [ 7.444743][UTC:1970-01-01 00:00:07(7)]msm8x16-asoc-wcd msm-snd-card.0: default codec configured
236 [ 7.454642][UTC:1970-01-01 00:00:07(7)]msm8x16-asoc-wcd msm-snd-card.0: ASoC: CODEC msm8x16_wcd_codec not registered
237 [ 7.464234][UTC:1970-01-01 00:00:07(7)]msm8x16-asoc-wcd msm-snd-card.0: snd_soc_register_card failed (-517)
238 [ 7.474209][UTC:1970-01-01 00:00:07(7)]platform msm-snd-card.0: Driver msm8x16-asoc-wcd requests probe deferral
239 [ 7.484210][UTC:1970-01-01 00:00:07(7)]spmi wcd-spmi-ee343a00: Driver wcd-spmi-core requests probe deferral
240 [ 7.493881][UTC:1970-01-01 00:00:07(7)]spmi wcd-spmi-ee343c00: Driver wcd-spmi-core requests probe deferral
241 [ 7.504976][UTC:1970-01-01 00:00:07(7)]VFP support v0.3: implementor 41 architecture 3 part 40 variant 3 rev 0
242 [ 7.514000][UTC:1970-01-01 00:00:07(7)]Registering SWP/SWPB emulation handler
243 [ 7.524503][UTC:1970-01-01 00:00:07(7)]XXX::reg1010=0x0,reg1310=0x0,reg1309=0x0,plugged_in=0,reg1049=0x90,reg1009=0x0
244 [ 7.534544][UTC:1970-01-01 00:00:07(7)]XXX::reg1010=0x0,reg1310=0x0,reg1309=0x0,plugged_in=0,reg1049=0x90,reg1009=0x0
245 [ 7.545417][UTC:1970-01-01 00:00:07(7)]XXX::reg1010=0x0,reg1310=0x0,reg1309=0x0,plugged_in=0,reg1049=0x90,reg1009=0x0
246 [ 7.558600][UTC:1970-01-01 00:00:07(7)]XXX::reg1010=0x0,reg1310=0x0,reg1309=0x0,plugged_in=0,reg1049=0x90,reg1009=0x0
247 [ 7.823225][UTC:1970-01-01 00:00:07(7)]msm8x16-asoc-wcd msm-snd-card.0: msm8x16_asoc_machine_probe: missing qcom,msm-snd-card-id in dt node
248 [ 7.834847][UTC:1970-01-01 00:00:07(7)]msm8x16-asoc-wcd msm-snd-card.0: default codec configured
249 [ 7.844781][UTC:1970-01-01 00:00:07(7)]msm8x16-asoc-wcd msm-snd-card.0: ASoC: CODEC msm8x16_wcd_codec not registered
250 [ 7.854415][UTC:1970-01-01 00:00:07(7)]msm8x16-asoc-wcd msm-snd-card.0: snd_soc_register_card failed (-517)
251 [ 7.864291][UTC:1970-01-01 00:00:07(7)]platform msm-snd-card.0: Driver msm8x16-asoc-wcd requests probe deferral
252 [ 7.874414][UTC:1970-01-01 00:00:07(7)]spmi wcd-spmi-ee343a00: Driver wcd-spmi-core requests probe deferral
253 [ 7.883964][UTC:1970-01-01 00:00:07(7)]spmi wcd-spmi-ee343c00: Driver wcd-spmi-core requests probe deferral
254 [ 7.893632][UTC:1970-01-01 00:00:07(7)]init: Nathan init
255 [ 7.899461][UTC:1970-01-01 00:00:07(7)]android_probe: Nathan android_probe
256 [ 7.905813][UTC:1970-01-01 00:00:07(7)]android_create_device: Nathan android_create_device
257 [ 7.914843][UTC:1970-01-01 00:00:07(7)]android_bind: Nathan android_bind
258 [ 7.920619][UTC:1970-01-01 00:00:07(7)]cdev_to_android_dev: Nathan cdev_to_android_dev
259 [ 7.928555][UTC:1970-01-01 00:00:07(7)]android_init_functions: Nathan android_init_functions
260 [ 7.937177][UTC:1970-01-01 00:00:07(7)]file system registered
261 [ 7.942850][UTC:1970-01-01 00:00:07(7)]mbim_init: initialize 1 instances
262 [ 7.949627][UTC:1970-01-01 00:00:07(7)]mbim_init: Initialized 1 ports
263 [ 7.959511][UTC:1970-01-01 00:00:07(7)]rndis_qc_init: initialize rndis QC instance
264 [ 7.966995][UTC:1970-01-01 00:00:07(7)]cdev_to_android_dev: Nathan cdev_to_android_dev
265 [ 7.974917][UTC:1970-01-01 00:00:07(7)]android_usb gadget: Mass Storage Function, version: 2009/09/11
266 [ 7.983179][UTC:1970-01-01 00:00:07(7)]android_usb gadget: Number of LUNs=3
267 [ 7.990162][UTC:1970-01-01 00:00:07(7)] lun0: LUN: read only CD-ROM file: (no medium)
268 [ 7.997998][UTC:1970-01-01 00:00:07(7)] lun1: LUN: removable file: (no medium)
269 [ 8.005176][UTC:1970-01-01 00:00:07(7)] lun2: LUN: removable file: (no medium)
270 [ 8.013373][UTC:1970-01-01 00:00:07(7)]android_usb gadget: android_usb ready
271 [ 8.019478][UTC:1970-01-01 00:00:07(7)]msm_hsusb msm_hsusb: [ci13xxx_start] hw_ep_max = 16
272 [ 8.029023][UTC:1970-01-01 00:00:07(7)]init: Nathan init, after platform_driver_register
273 [ 8.029152][UTC:1970-01-01 00:00:08(8)]msm8x16-asoc-wcd msm-snd-card.0: msm8x16_asoc_machine_probe: missing qcom,msm-snd-card-id in dt node
274 [ 8.029168][UTC:1970-01-01 00:00:08(8)]msm8x16-asoc-wcd msm-snd-card.0: default codec configured
275 [ 8.030316][UTC:1970-01-01 00:00:08(8)]msm8x16-asoc-wcd msm-snd-card.0: ASoC: CODEC msm8x16_wcd_codec not registered
276 [ 8.030395][UTC:1970-01-01 00:00:08(8)]msm8x16-asoc-wcd msm-snd-card.0: snd_soc_register_card failed (-517)
277 [ 8.030670][UTC:1970-01-01 00:00:08(8)]platform msm-snd-card.0: Driver msm8x16-asoc-wcd requests probe deferral
278 [ 8.030874][UTC:1970-01-01 00:00:08(8)]spmi wcd-spmi-ee343a00: Driver wcd-spmi-core requests probe deferral
279 [ 8.031021][UTC:1970-01-01 00:00:08(8)]spmi wcd-spmi-ee343c00: Driver wcd-spmi-core requests probe deferral
280 [ 8.109929][UTC:1970-01-01 00:00:08(8)]input: gpio-keys as /devices/soc.0/gpio_keys.62/input/input5
281 [ 8.119167][UTC:1970-01-01 00:09:27(567)]qcom,qpnp-rtc qpnp-rtc-ee342800: setting system clock to 1970-01-01 00:09:27 UTC (567)
282 [ 8.119596][UTC:1970-01-01 00:09:27(567)]msm8x16-asoc-wcd msm-snd-card.0: msm8x16_asoc_machine_probe: missing qcom,msm-snd-card-id in dt node
283 [ 8.119612][UTC:1970-01-01 00:09:27(567)]msm8x16-asoc-wcd msm-snd-card.0: default codec configured
284 [ 8.120731][UTC:1970-01-01 00:09:27(567)]msm8x16-asoc-wcd msm-snd-card.0: ASoC: CODEC msm8x16_wcd_codec not registered
285 [ 8.120811][UTC:1970-01-01 00:09:27(567)]msm8x16-asoc-wcd msm-snd-card.0: snd_soc_register_card failed (-517)
286 [ 8.121088][UTC:1970-01-01 00:09:27(567)]platform msm-snd-card.0: Driver msm8x16-asoc-wcd requests probe deferral
287 [ 8.121295][UTC:1970-01-01 00:09:27(567)]spmi wcd-spmi-ee343a00: Driver wcd-spmi-core requests probe deferral
288 [ 8.121446][UTC:1970-01-01 00:09:27(567)]spmi wcd-spmi-ee343c00: Driver wcd-spmi-core requests probe deferral
289 [ 8.202794][UTC:1970-01-01 00:09:27(567)]battery_current_limit qcom,bcl.57: battery_current_limit:probe_btm_properties Error reading key:qcom,ibat-monitor. ret = -19
290 [ 8.218007][UTC:1970-01-01 00:09:27(567)]msm8x16-asoc-wcd msm-snd-card.0: msm8x16_asoc_machine_probe: missing qcom,msm-snd-card-id in dt node
291 [ 8.222518][UTC:1970-01-01 00:09:27(567)]msm_thermal:interrupt_mode_init Interrupt mode init
292 [ 8.222536][UTC:1970-01-01 00:09:27(567)]msm_thermal:disable_msm_thermal Max frequency reset for CPU0
293 [ 8.248071][UTC:1970-01-01 00:09:27(567)]msm_thermal:disable_msm_thermal Max frequency reset for CPU1
294 [ 8.248074][UTC:1970-01-01 00:09:27(567)]msm8x16-asoc-wcd msm-snd-card.0: default codec configured
295 [ 8.248517][UTC:1970-01-01 00:09:27(567)]msm8x16-asoc-wcd msm-snd-card.0: ASoC: CODEC msm8x16_wcd_codec not registered
296 [ 8.248550][UTC:1970-01-01 00:09:27(567)]msm8x16-asoc-wcd msm-snd-card.0: snd_soc_register_card failed (-517)
297 [ 8.248646][UTC:1970-01-01 00:09:27(567)]platform msm-snd-card.0: Driver msm8x16-asoc-wcd requests probe deferral
298 [ 8.248800][UTC:1970-01-01 00:09:27(567)]spmi wcd-spmi-ee343a00: Driver wcd-spmi-core requests probe deferral
299 [ 8.248853][UTC:1970-01-01 00:09:27(567)]spmi wcd-spmi-ee343c00: Driver wcd-spmi-core requests probe deferral
300 [ 8.249273][UTC:1970-01-01 00:09:27(567)]msm8x16-asoc-wcd msm-snd-card.0: msm8x16_asoc_machine_probe: missing qcom,msm-snd-card-id in dt node
301 [ 8.249279][UTC:1970-01-01 00:09:27(567)]msm8x16-asoc-wcd msm-snd-card.0: default codec configured
302 [ 8.249659][UTC:1970-01-01 00:09:27(567)]msm8x16-asoc-wcd msm-snd-card.0: ASoC: CODEC msm8x16_wcd_codec not registered
303 [ 8.249687][UTC:1970-01-01 00:09:27(567)]msm8x16-asoc-wcd msm-snd-card.0: snd_soc_register_card failed (-517)
304 [ 8.249779][UTC:1970-01-01 00:09:27(567)]platform msm-snd-card.0: Driver msm8x16-asoc-wcd requests probe deferral
305 [ 8.368560][UTC:1970-01-01 00:09:27(567)]msm_thermal:disable_msm_thermal Max frequency reset for CPU2
306 [ 8.377722][UTC:1970-01-01 00:09:27(567)]msm_thermal:disable_msm_thermal Max frequency reset for CPU3
307 [ 8.389167][UTC:1970-01-01 00:09:27(567)]spmi wcd-spmi-ee343a00: Driver wcd-spmi-core requests probe deferral
308 [ 8.398152][UTC:1970-01-01 00:09:27(567)]spmi wcd-spmi-ee343c00: Driver wcd-spmi-core requests probe deferral
309 [ 8.399653][UTC:1970-01-01 00:09:27(567)]led_gpio_flash_probe:probe successfully!
310 [ 8.402592][UTC:1970-01-01 00:09:27(567)]qcom,cc-debug-8916 1874000.qcom,cc-debug: Registered Debug Mux successfully
311 [ 8.403389][UTC:1970-01-01 00:09:27(567)]clock_late_init: Removing enables held for handed-off clocks
312 [ 8.435884][UTC:1970-01-01 00:09:27(567)]msm8x16-asoc-wcd msm-snd-card.0: msm8x16_asoc_machine_probe: missing qcom,msm-snd-card-id in dt node
313 [ 8.447982][UTC:1970-01-01 00:09:27(567)]msm8x16-asoc-wcd msm-snd-card.0: default codec configured
314 [ 8.457447][UTC:1970-01-01 00:09:27(567)]msm8x16-asoc-wcd msm-snd-card.0: ASoC: CODEC msm8x16_wcd_codec not registered
315 [ 8.467531][UTC:1970-01-01 00:09:27(567)]msm8x16-asoc-wcd msm-snd-card.0: snd_soc_register_card failed (-517)
316 [ 8.477491][UTC:1970-01-01 00:09:27(567)]platform msm-snd-card.0: Driver msm8x16-asoc-wcd requests probe deferral
317 [ 8.487751][UTC:1970-01-01 00:09:27(567)]spmi wcd-spmi-ee343a00: Driver wcd-spmi-core requests probe deferral
318 [ 8.497590][UTC:1970-01-01 00:09:27(567)]spmi wcd-spmi-ee343c00: Driver wcd-spmi-core requests probe deferral
319 [ 8.507983][UTC:1970-01-01 00:09:27(567)]ALSA device list:
320 [ 8.512806][UTC:1970-01-01 00:09:27(567)] No soundcards f颷 8.520912][UTC:1970-01-01 00:09:27(567)]Freeing unused kernel memory: 864K (c0d97000 - c0e6f000)
321 [ 8.539773][UTC:1970-01-01 00:09:27(567)]SELinux: Permission attach_queue in class tun_socket not defined in policy.
322 [ 8.549416][UTC:1970-01-01 00:09:27(567)]SELinux: the above unknown classes and permissions will be denied
323 [ 8.793671][UTC:1970-01-01 00:09:28(568)]type=1403 audit(568.159:2): policy loaded auid=4294967295 ses=4294967295
324 [ 8.803263][UTC:1970-01-01 00:09:28(568)]SELinux: Loaded policy from /sepolicy
325 [ 8.812676][UTC:1970-01-01 00:09:28(568)]type=1404 audit(568.189:3): enforcing=1 old_enforcing=0 auid=4294967295 ses=4294967295
326 [ 13.225969][UTC:1970-01-01 00:09:32(572)]init: /init.qcom.rc: 463: user option requires a user id
327 [ 13.236701][UTC:1970-01-01 00:09:32(572)]init (1): /proc/1/oom_adj is deprecated, please use /proc/1/oom_score_adj instead.
328 [ 13.249629][UTC:1970-01-01 00:09:32(572)]init: invalid uid 'fm_radio'
329 [ 13.266739][UTC:1970-01-01 00:09:32(572)]XXX::reg1010=0x0,reg1310=0x0,reg1309=0x0,plugged_in=0,reg1049=0x90,reg1009=0x0
330 [ 13.279381][UTC:1970-01-01 00:09:32(572)]XXX::reg1010=0x0,reg1310=0x0,reg1309=0x0,plugged_in=0,reg1049=0x90,reg1009=0x0
331 [ 13.734701][UTC:1970-01-01 00:09:33(573)]init: cannot open '/initlogo.rle'
332 [ 13.751304][UTC:1970-01-01 00:09:33(573)]iSerial_store: serial number is feb1dcc4, uinque_serial_string is feb1dcc4
333 [ 13.827726][UTC:1970-01-01 00:09:33(573)]EXT4-fs (mmcblk0p23): mounted filesystem with ordered data mode. Opts: barrier=1,discard
334 [ 13.839531][UTC:1970-01-01 00:09:33(573)]EXT4-fs (mmcblk0p30): Ignoring removed nomblk_io_submit option
335 [ 14.107338][UTC:1970-01-01 00:09:33(573)]EXT4-fs (mmcblk0p30): 2 orphan inodes deleted
336 [ 14.114223][UTC:1970-01-01 00:09:33(573)]EXT4-fs (mmcblk0p30): recovery complete
337 [ 14.127893][UTC:1970-01-01 00:09:33(573)]EXT4-fs (mmcblk0p30): mounted filesystem with ordered data mode. Opts: nomblk_io_submit,errors=remount-ro
338 [ 14.162404][UTC:1970-01-01 00:09:33(573)]fs_mgr: Running /system/bin/e2fsck on /dev/block/bootdevice/by-name/userdata
339 [ 14.206053][UTC:1970-01-01 00:09:33(573)]e2fsck (175) used greatest stack depth: 5152 bytes left
340 [ 14.213875][UTC:1970-01-01 00:09:33(573)]e2fsck: e2fsck 1.41.14 (22-Dec-2010)
341 [ 14.221032][UTC:1970-01-01 00:09:33(573)]e2fsck: /dev/block/bootdevice/by-name/userdata: clean, 1660/317616 files, 169492/1269750 blocks
342 [ 14.238247][UTC:1970-01-01 00:09:33(573)]EXT4-fs (mmcblk0p30): mounted filesystem with ordered data mode. Opts: barrier=1,noauto_da_alloc,discard
343 [ 14.250660][UTC:1970-01-01 00:09:33(573)]init (169) used greatest stack depth: 4920 bytes left
344 [ 14.267444][UTC:1970-01-01 00:09:33(573)]EXT4-fs (mmcblk0p25): recovery complete
345 [ 14.274442][UTC:1970-01-01 00:09:33(573)]EXT4-fs (mmcblk0p25): mounted filesystem with ordered data mode. Opts: barrier=1
346 [ 14.343861][UTC:1970-01-01 00:09:33(573)]init: Detected MSM SOC ID=206 SOC VER=65537 BOARD TYPE=QRD
347 [ 14.352357][UTC:1970-01-01 00:09:33(573)]init: failed to open '/sys/class/graphics/fb2/msm_fb_type'
348 [ 14.378432][UTC:1970-01-01 00:09:33(573)]init: property 'persist.sys.ssr.enable_debug' doesn't exist while expanding '${persist.sys.ssr.enable_debug}'
349 [ 14.391043][UTC:1970-01-01 00:09:33(573)]init: cannot expand '${persist.sys.ssr.enable_debug}' while writing to '/sys/module/subsystem_restart/parameters/enable_debug'
350 [ 14.406000][UTC:1970-01-01 00:09:33(573)]init: property 'persist.sys.mba_boot_timeout' doesn't exist while expanding '${persist.sys.mba_boot_timeout}'
351 [ 14.419523][UTC:1970-01-01 00:09:33(573)]init: cannot expand '${persist.sys.mba_boot_timeout}' while writing to '/sys/module/pil_msa/parameters/pbl_mba_boot_timeout_ms'
352 [ 14.434353][UTC:1970-01-01 00:09:33(573)]init: property 'persist.sys.modem_auth_timeout' doesn't exist while expanding '${persist.sys.modem_auth_timeout}'
353 [ 14.448109][UTC:1970-01-01 00:09:33(573)]init: cannot expand '${persist.sys.modem_auth_timeout}' while writing to '/sys/module/pil_msa/parameters/modem_auth_timeout_ms'
354 [ 14.463304][UTC:1970-01-01 00:09:33(573)]init: property 'persist.sys.pil_proxy_timeout' doesn't exist while expanding '${persist.sys.pil_proxy_timeout}'
355 [ 14.476822][UTC:1970-01-01 00:09:33(573)]init: cannot expand '${persist.sys.pil_proxy_timeout}' while writing to '/sys/module/peripheral_loader/parameters/proxy_timeout_ms'
356 [ 14.495593][UTC:1970-01-01 00:09:33(573)]pil-q6v5-mss 4080000.qcom,mss: modem: loading from 0x86800000 to 0x8b900000
357 [ 14.553192][UTC:1970-01-01 00:09:33(573)]pil: MBA boot done
358 [ 15.191582][UTC:1970-01-01 00:09:34(574)]pil-q6v5-mss 4080000.qcom,mss: modem: Brought out of reset
359 [ 15.297938][UTC:1970-01-01 00:09:34(574)]pil-q6v5-mss 4080000.qcom,mss: modem: Power/Clock ready interrupt received
360 [ 15.297966][UTC:1970-01-01 00:09:34(574)]pil-q6v5-mss 4080000.qcom,mss: Subsystem error monitoring/handling services are up
361 [ 15.298845][UTC:1970-01-01 00:09:34(574)]msm8x16-asoc-wcd msm-snd-card.0: msm8x16_asoc_machine_probe: missing qcom,msm-snd-card-id in dt node
362 [ 15.298852][UTC:1970-01-01 00:09:34(574)]msm8x16-asoc-wcd msm-snd-card.0: default codec configured
363 [ 15.299328][UTC:1970-01-01 00:09:34(574)]msm8x16-asoc-wcd msm-snd-card.0: ASoC: CODEC msm8x16_wcd_codec not registered
364 [ 15.299360][UTC:1970-01-01 00:09:34(574)]msm8x16-asoc-wcd msm-snd-card.0: snd_soc_register_card failed (-517)
365 [ 15.299466][UTC:1970-01-01 00:09:34(574)]platform msm-snd-card.0: Driver msm8x16-asoc-wcd requests probe deferral
366 [ 15.301602][UTC:1970-01-01 00:09:34(574)]msm8x16-asoc-wcd msm-snd-card.0: msm8x16_asoc_machine_probe: missing qcom,msm-snd-card-id in dt node
367 [ 15.301608][UTC:1970-01-01 00:09:34(574)]msm8x16-asoc-wcd msm-snd-card.0: default codec configured
368 [ 15.312052][UTC:1970-01-01 00:09:34(574)]msm-pcm-routing msm-pcm-routing: ASoC: no dapm match for VOICE2_STUB_DL --> Voice2 Stub --> INTERNAL_BT_SCO_RX_Voice Mixer
369 [ 15.312059][UTC:1970-01-01 00:09:34(574)]msm-pcm-routing msm-pcm-routing: ASoC: Failed to add route VOICE2_STUB_DL -> Voice2 Stub -> INTERNAL_BT_SCO_RX_Voice Mixer
370 [ 15.326718][UTC:1970-01-01 00:09:34(574)]msm-pcm-routing msm-pcm-routing: ASoC: mux SLIM_0_RX AANC MUX has no paths
371 [ 15.329098][UTC:1970-01-01 00:09:34(574)]wcd-spmi-core msm8x16_wcd_codec: ASoC: mux RX3 MIX1 INP3 has no paths
372 [ 15.329230][UTC:1970-01-01 00:09:34(574)]wcd-spmi-core msm8x16_wcd_codec: ASoC: mux RX2 MIX1 INP3 has no paths
373 [ 15.452216][UTC:1970-01-01 00:09:34(574)]type=1400 audit(574.819:4): avc: denied { entrypoint } for pid=207 comm="init" path="/sbin/healthd" dev="rootfs" ino=5598 scontext=u:r:healthd:s0 tcontext=u:object_r:rootfs:s0 tclass=file
374 [ 15.453588][UTC:1970-01-01 00:09:34(574)]M-Notify: General: 7
375 [ 15.469991][UTC:1970-01-01 00:09:34(574)]init: cannot find '/system/etc/install-recovery.sh', disabling 'flash_recovery'
376 [ 15.503022][UTC:1970-01-01 00:09:34(574)]warning: `qrngd' uses 32-bit capabilities (legacy support in use)
377 [ 15.613499][UTC:1970-01-01 00:09:34(574)]init: cannot find '/system/bin/ssr_diag', disabling 'ssr_diag'
378 [ 15.659617][UTC:1970-01-01 00:09:35(575)]init: property 'sys.powerctl' doesn't exist while expanding '${sys.powerctl}'
379 [ 15.700693][UTC:1970-01-01 00:09:35(575)]init: powerctl: cannot expand '${sys.powerctl}'
380 [ 15.726257][UTC:1970-01-01 00:09:35(575)]init: property 'sys.sysctl.extra_free_kbytes' doesn't exist while expanding '${sys.sysctl.extra_free_kbytes}'
381 [ 15.742610][UTC:1970-01-01 00:09:35(575)]init: cannot expand '${sys.sysctl.extra_free_kbytes}' while writing to '/proc/sys/vm/extra_free_kbytes'
382 [ 15.757207][UTC:1970-01-01 00:09:35(575)]init: property 'sys.sysctl.tcp_def_init_rwnd' doesn't exist while expanding '${sys.sysctl.tcp_def_init_rwnd}'
383 [ 15.769971][UTC:1970-01-01 00:09:35(575)]init: cannot expand '${sys.sysctl.tcp_def_init_rwnd}' while writing to '/proc/sys/net/ipv4/tcp_default_init_rwnd'
384 shell@Kraft-A6000:/ $ [ 15.806145][UTC:1970-01-01 00:09:35(575)]QSEECOM: qseecom_release: data: released=false, type=1, mode=0, data=0xeba0a980
385 [ 15.825821][UTC:1970-01-01 00:09:35(575)]init: sys_prop: permission denied uid:0 name:persist.sys.sd.defaultpath
386 [ 15.836489][UTC:1970-01-01 00:09:35(575)]QSEECOM: qseecom_release: data: released=false, type=1, mode=0, data=0xeba0a980
387 [ 15.848597][UTC:1970-01-01 00:09:35(575)]enable_store: Nathan enable_store buf:0
388 [ 15.855133][UTC:1970-01-01 00:09:35(575)]enable_store: android_usb: already disabled
389 [ 15.872882][UTC:1970-01-01 00:09:35(575)]functions_store: Nathan functions_store buf:mtp,mass_storage,adb
390 [ 15.889524][UTC:1970-01-01 00:09:35(575)]alloc_android_config: Nathan alloc_android_config
391 [ 15.898231][UTC:1970-01-01 00:09:35(575)]android_enable_function: Nathan android_enable_function
392 [ 15.906078][UTC:1970-01-01 00:09:35(575)]android_enable_function: Nathan android_enable_function
393 [ 15.920715][UTC:1970-01-01 00:09:35(575)]android_enable_function: Nathan android_enable_function
394 [ 15.932505][UTC:1970-01-01 00:09:35(575)]handle_qmi_request: Error getting req_desc for msg_id 36
395 [ 15.937418][UTC:1970-01-01 00:09:35(575)]enable_store: Nathan enable_store buf:1
396 [ 15.937431][UTC:1970-01-01 00:09:35(575)]android_disable: Nathan android_disable
397 [ 15.937434][UTC:1970-01-01 00:09:35(575)]android_enable: Nathan android_enable
398 [ 15.975975][UTC:1970-01-01 00:09:35(575)]android_enable: Nathan android_enable
399 [ 15.977244][UTC:1970-01-01 00:09:35(575)]mem_share_svc_recv_msg: Error receiving message
400 [ 15.993523][UTC:1970-01-01 00:09:35(575)]cdev_to_android_dev: Nathan cdev_to_android_dev
401 [ 16.003646][UTC:1970-01-01 00:09:35(575)]android_bind_config: Nathan android_bind_config
402 [ 16.011546][UTC:1970-01-01 00:09:35(575)]diag: In diag_send_msg_mask_update, invalid status 0
403 [ 16.029783][UTC:1970-01-01 00:09:35(575)]diag: In diag_send_log_mask_update, invalid status 0[ 16.030342][UTC:1970-01-01 00:09:35(575)]android_bind_enabled_functions: Nathan android_bind_enabled_functions
404 [ 16.101668][UTC:1970-01-01 00:09:35(575)]failed: no power_down_setting[ 16.108254][UTC:1970-01-01 00:09:35(575)]msm_camera_fill_vreg_params:69 i 0 j 1 cam_vio
405 [ 16.115468][UTC:1970-01-01 00:09:35(575)]msm_camera_fill_vreg_params:80 i 1 j 2 cam_vana
406 [ 16.123519][UTC:1970-01-01 00:09:35(575)]msm_camera_fill_vreg_params:58 i 2 j 0 cam_vdig
407 [ 16.133312][UTC:1970-01-01 00:09:35(575)]msm_camera_fill_vreg_params:91 i 3 j 3 cam_vaf
408 [ 16.144372][UTC:1970-01-01 00:09:35(575)]msm_camera_fill_vreg_params:91 i 8 j 3 cam_vaf
409 [ 16.151359][UTC:1970-01-01 00:09:35(575)]msm_camera_fill_vreg_params:58 i 9 j 0 cam_vdig
410 [ 16.162197][UTC:1970-01-01 00:09:35(575)]QSEECOM: qseecom_load_app: App (keymaste) does'nt exist, loading apps for first time
411 [ 16.175314][UTC:1970-01-01 00:09:35(575)]msm_camera_fill_vreg_params:80 i 10 j 2 cam_vana
412 [ 16.177796][UTC:1970-01-01 00:09:35(575)]QSEECOM: qseecom_load_app: scm_call rsp.result is QSEOS_RESULT_FAILURE
413 [ 16.177814][UTC:1970-01-01 00:09:35(575)]QSEECOM: qseecom_ioctl: failed load_app request: -14
414 [ 16.178028][UTC:1970-01-01 00:09:35(575)]QSEECOM: qseecom_release: data: released=false, type=1, mode=0, data=0xebbd8800
415 [ 16.212097][UTC:1970-01-01 00:09:35(575)]msm_camera_fill_vreg_params:69 i 11 j 1 cam_vio
416 [ 16.249240][UTC:1970-01-01 00:09:35(575)]wcd-spmi-core msm8x16_wcd_codec: ASoC: unknown pin Digital Mic1
417 [ 16.258004][UTC:1970-01-01 00:09:35(575)]wcd-spmi-core msm8x16_wcd_codec: ASoC: unknown pin Digital Mic2
418 [ 16.288157][UTC:1970-01-01 00:09:35(575)]imx219_q8n13a probe succeeded
419 [ 16.368479][UTC:1970-01-01 00:09:35(575)]failed: no power_down_setting[ 16.373974][UTC:1970-01-01 00:09:35(575)]msm_camera_fill_vreg_params:69 i 2 j 1 cam_vio
420 [ 16.384391][UTC:1970-01-01 00:09:35(575)]msm_camera_fill_vreg_params:58 i 3 j 0 cam_vdig
421 [ 16.393205][UTC:1970-01-01 00:09:35(575)]msm_camera_fill_vreg_params:80 i 4 j 2 cam_vana
422 [ 16.401871][UTC:1970-01-01 00:09:35(575)]msm_camera_fill_vreg_params:80 i 3 j 2 cam_vana
423 [ 16.409937][UTC:1970-01-01 00:09:35(575)]msm_camera_fill_vreg_params:58 i 4 j 0 cam_vdig
424 [ 16.418779][UTC:1970-01-01 00:09:35(575)]msm_camera_fill_vreg_params:69 i 5 j 1 cam_vio
425 [ 16.478979][UTC:1970-01-01 00:09:35(575)]gc2355_8916 probe succeeded
426 [ 16.534109][UTC:1970-01-01 00:09:35(575)]msm_actuator_close:834 software shutdown error rc=-14[ 16.545266][UTC:1970-01-01 00:09:35(575)]msm_cci_release invalid ref count 0 / cci state 1
427 [ 16.552514][UTC:1970-01-01 00:09:35(575)]msm_sensor_cci_i2c_util line 496 rc = -22
428 [ 16.560140][UTC:1970-01-01 00:09:35(575)]msm_actuator_close:842 cci_init failed
429 [ 16.592777][UTC:1970-01-01 00:09:35(575)]MSM-CPP cpp_init_hardware:825 stream_cnt:0
430 [ 16.807669][UTC:1970-01-01 00:09:36(576)]MSM-SENSOR-INIT msm_sensor_wait_for_probe_done:54 msm_cam_get_module_init_status -2
431 [ 16.807669][UTC:1970-01-01 00:09:36(576)]
432 [ 16.881701][UTC:1970-01-01 00:09:36(576)]msm_qti_pp_get_rms_value_control, back not active to query rms
433 [ 16.892001][UTC:1970-01-01 00:09:36(576)]msm_dolby_dap_param_to_get_control_get, port_id not set, do not query ADM
434 [ 16.977840][UTC:1970-01-01 00:09:36(576)]core_set_license: error getting metainfo size, err:0x0, size:0
435 [ 17.185706][UTC:1970-01-01 00:09:36(576)]diag: In diag_process_smd_read_data, diag_device_write error: -19
436 [ 18.284389][UTC:1970-01-01 00:09:37(577)]mdss_check_dsi_ctrl_status: ctl not powered on
437 [ 18.350960][UTC:1970-01-01 00:09:37(577)]diag: In diag_send_msg_mask_update, invalid status 0
438 [ 18.358413][UTC:1970-01-01 00:09:37(577)]diag: In diag_send_log_mask_update, invalid status 0[ 20.284400][UTC:1970-01-01 00:09:39(579)]mdss_check_dsi_ctrl_status: ctl not powered on
439 [ 21.018850][UTC:2014-01-01 00:00:00(1388534400)]wcnss: no space available for smd frame
440 [ 21.054421][UTC:2014-01-01 00:00:00(1388534400)]wcnss: no space available for smd frame
441 [ 21.084419][UTC:2014-01-01 00:00:00(1388534400)]wcnss: no space available for smd frame
442 [ 21.114406][UTC:2014-01-01 00:00:00(1388534400)]wcnss: no space available for smd frame
443 [ 22.284372][UTC:2014-01-01 00:00:01(1388534401)]mdss_check_dsi_ctrl_status: ctl not powered on
444 [ 24.284369][UTC:2014-01-01 00:00:03(1388534403)]mdss_check_dsi_ctrl_status: ctl not powered on
445 [ 26.284369][UTC:2014-01-01 00:00:05(1388534405)]mdss_check_dsi_ctrl_status: ctl not powered on
446 [ 28.284379][UTC:2014-01-01 00:00:07(1388534407)]mdss_check_dsi_ctrl_status: ctl not powered on
447 [ 29.946552][UTC:2014-01-01 00:00:09(1388534409)]mdss_dsi_on:705 Panel already on.
448 [ 30.011816][UTC:2014-01-01 00:00:09(1388534409)]wgz ldo17 enable = 1
449 [ 30.017286][UTC:2014-01-01 00:00:09(1388534409)]8916_l17: Failed to create debugfs directory
450 [ 30.026004][UTC:2014-01-01 00:00:09(1388534409)]wgz get regulator Ldo17 ok
451 [ 30.480285][UTC:2014-01-01 00:00:09(1388534409)]state_show: Nathan state_show buf:
452 [ 31.592449][UTC:2014-01-01 00:00:10(1388534410)]type=1400 audit(1388534410.689:5): avc: denied { getattr } for pid=1113 comm="zygote" path="socket:[11555]" dev="sockfs" ino=11555 scontext=u:r:untrusted_app:s0 tcontext=u:r:zygote:s0 tclass=unix_stream_socket
453 [ 31.614670][UTC:2014-01-01 00:00:10(1388534410)]type=1400 audit(1388534410.719:6): avc: denied { getopt } for pid=1113 comm="zygote" path="/dev/socket/zygote" scontext=u:r:untrusted_app:s0 tcontext=u:r:zygote:s0 tclass=unix_stream_socket
454 [ 32.759888][UTC:2014-01-01 00:00:11(1388534411)]type=1400 audit(1388534411.859:7): avc: denied { getattr } for pid=1342 comm="zygote" path="socket:[11555]" dev="sockfs" ino=11555 scontext=u:r:untrusted_app:s0 tcontext=u:r:zygote:s0 tclass=unix_stream_socket
455 [ 32.782677][UTC:2014-01-01 00:00:11(1388534411)]type=1400 audit(1388534411.879:8): avc: denied { getopt } for pid=1342 comm="zygote" path="/dev/socket/zygote" scontext=u:r:untrusted_app:s0 tcontext=u:r:zygote:s0 tclass=unix_stream_socket
456 [ 33.160568][UTC:2014-01-01 00:00:12(1388534412)]type=1400 audit(1388534412.259:9): avc: denied { read write } for pid=1234 comm="d.process.acore" name="kgsl-3d0" dev="tmpfs" ino=7330 scontext=u:r:untrusted_app:s0 tcontext=u:object_r:device:s0 tclass=chr_file
457 [ 33.183433][UTC:2014-01-01 00:00:12(1388534412)]type=1400 audit(1388534412.279:10): avc: denied { open } for pid=1234 comm="d.process.acore" path="/dev/kgsl-3d0" dev="tmpfs" ino=7330 scontext=u:r:untrusted_app:s0 tcontext=u:object_r:device:s0 tclass=chr_file
458 [ 33.207702][UTC:2014-01-01 00:00:12(1388534412)]type=1400 audit(1388534412.309:11): avc: denied { ioctl } for pid=1234 comm="d.process.acore" path="/dev/kgsl-3d0" dev="tmpfs" ino=7330 scontext=u:r:untrusted_app:s0 tcontext=u:object_r:device:s0 tclass=chr_file
459 [ 33.653857][UTC:2014-01-01 00:00:12(1388534412)]init: untracked pid 1492 exited
460 [ 34.173425][UTC:2014-01-01 00:00:13(1388534413)]type=1400 audit(1388534413.269:12): avc: denied { ioctl } for pid=1234 comm="d.process.acore" path="/dev/kgsl-3d0" dev="tmpfs" ino=7330 scontext=u:r:untrusted_app:s0 tcontext=u:object_r:device:s0 tclass=chr_file
461 [ 34.996506][UTC:2014-01-01 00:00:14(1388534414)]init: sys_prop: permission denied uid:1013 name:service.bootanim.exit
462 [ 37.173157][UTC:2014-01-01 00:00:16(1388534416)]init: untracked pid 1886 exited
463 [ 37.258507][UTC:2014-01-01 00:00:16(1388534416)]init: untracked pid 1905 exited
464 [ 37.262194][UTC:2014-01-01 00:00:16(1388534416)]Thread-117 (1862) used greatest stack depth: 4900 bytes left
465 [ 37.324447][UTC:2014-01-01 00:00:16(1388534416)]init: untracked pid 1916 exited
466 [ 38.290187][UTC:2014-01-01 00:00:17(1388534417)]wgz ldo17 enable = 0
467 [ 38.296063][UTC:2014-01-01 00:00:17(1388534417)]wgz get regulator Ldo17 ok
468 [ 38.345346][UTC:2014-01-01 00:00:17(1388534417)]type=1400 audit(1388534417.449:15): avc: denied { search } for pid=1961 comm="mobile.avlenovo" name="1" dev="proc" ino=6032 scontext=u:r:untrusted_app:s0 tcontext=u:r:init:s0 tclass=dir
469 [ 38.368025][UTC:2014-01-01 00:00:17(1388534417)]type=1400 audit(1388534417.469:16): avc: denied { read } for pid=1961 comm="mobile.avlenovo" name="status" dev="proc" ino=12538 scontext=u:r:untrusted_app:s0 tcontext=u:r:init:s0 tclass=file
470 [ 38.390317][UTC:2014-01-01 00:00:17(1388534417)]type=1400 audit(1388534417.489:17): avc: denied { open } for pid=1961 comm="mobile.avlenovo" path="/proc/1/status" dev="proc" ino=12538 scontext=u:r:untrusted_app:s0 tcontext=u:r:init:s0 tclass=file
471 [ 38.413138][UTC:2014-01-01 00:00:17(1388534417)]type=1400 audit(1388534417.509:18): avc: denied { search } for pid=1961 comm="mobile.avlenovo" name="2" dev="proc" ino=8894 scontext=u:r:untrusted_app:s0 tcontext=u:r:kernel:s0 tclass=dir
472 [ 38.433653][UTC:2014-01-01 00:00:17(1388534417)]type=1400 audit(1388534417.529:19): avc: denied { read } for pid=1961 comm="mobile.avlenovo" name="status" dev="proc" ino=11942 scontext=u:r:untrusted_app:s0 tcontext=u:r:kernel:s0 tclass=file
473 [ 38.455167][UTC:2014-01-01 00:00:17(1388534417)]type=1400 audit(1388534417.559:20): avc: denied { open } for pid=1961 comm="mobile.avlenovo" path="/proc/2/status" dev="proc" ino=11942 scontext=u:r:untrusted_app:s0 tcontext=u:r:kernel:s0 tclass=file
474 [ 38.510415][UTC:2014-01-01 00:00:17(1388534417)]type=1400 audit(1388534417.609:21): avc: denied { search } for pid=1961 comm="mobile.avlenovo" name="168" dev="proc" ino=6182 scontext=u:r:untrusted_app:s0 tcontext=u:r:ueventd:s0 tclass=dir
475 [ 38.531260][UTC:2014-01-01 00:00:17(1388534417)]type=1400 audit(1388534417.629:22): avc: denied { read } for pid=1961 comm="mobile.avlenovo" name="status" dev="proc" ino=11943 scontext=u:r:untrusted_app:s0 tcontext=u:r:ueventd:s0 tclass=file
476 [ 38.552722][UTC:2014-01-01 00:00:17(1388534417)]type=1400 audit(1388534417.649:23): avc: denied { open } for pid=1961 comm="mobile.avlenovo" path="/proc/168/status" dev="proc" ino=11943 scontext=u:r:untrusted_app:s0 tcontext=u:r:ueventd:s0 tclass=file
477 [ 38.577366][UTC:2014-01-01 00:00:17(1388534417)]Thread-76 (1724) used greatest stack depth: 4880 bytes left
478 [ 42.302586][UTC:2014-01-01 00:00:21(1388534421)]msm_get_platform_subtype: Invalid hardware platform sub type for qrd found
479 [ 42.376680][UTC:2014-01-01 00:00:21(1388534421)]msm_get_platform_subtype: Invalid hardware platform sub type for qrd found
下边是开机后插usb线,kernel log中与android.c相关的log,可以看到该文件中各个函数的调用顺序
[ 7.927508][UTC:-- ::()]init: Nathan init
[ 7.933262][UTC:-- ::()]android_probe: Nathan android_probe
[ 7.939743][UTC:-- ::()]android_create_device: Nathan android_create_device
[ 7.948722][UTC:-- ::()]android_bind: Nathan android_bind
[ 7.954527][UTC:-- ::()]cdev_to_android_dev: Nathan cdev_to_android_dev
[ 7.962372][UTC:-- ::()]android_init_functions: Nathan android_init_functions
[ 8.000895][UTC:-- ::()]cdev_to_android_dev: Nathan cdev_to_android_dev
[ 8.072068][UTC:-- ::()]init: Nathan init, after platform_driver_register
[ 15.946108][UTC:-- ::()]enable_store: Nathan enable_store buf:
[ 15.968569][UTC:-- ::()]functions_store: Nathan functions_store buf:mtp,mass_storage,adb
[ 15.978858][UTC:-- ::()]alloc_android_config: Nathan alloc_android_config
[ 15.989642][UTC:-- ::()]android_enable_function: Nathan android_enable_function
[ 15.997446][UTC:-- ::()]android_enable_function: Nathan android_enable_function
[ 16.006212][UTC:-- ::()]android_enable_function: Nathan android_enable_function
[ 16.015662][UTC:-- ::()]enable_store: Nathan enable_store buf:
[ 16.022331][UTC:-- ::()]android_disable: Nathan android_disable
[ 16.034402][UTC:-- ::()]android_enable: Nathan android_enable
shell@Kraft-A6000:/ $ [ 16.053530][UTC:-- ::()]android_enable: Nathan android_enable
[ 16.060040][UTC:-- ::()]cdev_to_android_dev: Nathan cdev_to_android_dev
[ 16.068088][UTC:-- ::()]android_bind_config: Nathan android_bind_config
[ 16.076092][UTC:-- ::()]android_bind_enabled_functions: Nathan android_bind_enabled_functions
[ 16.320722][UTC:-- ::()]cdev_to_android_dev: Nathan cdev_to_android_dev
[ 16.329279][UTC:-- ::()]android_disconnect: Nathan android_disconnect
[ 16.338150][UTC:-- ::()]android_work: Nathan android_work
[ 16.511472][UTC:-- ::()]failed: no power_down_setting[ 16.512802][UTC:-- ::()]cdev_to_android_dev: Nathan cdev_to_android_dev
[ 16.512805][UTC:-- ::()]android_setup: Nathan android_setup
[ 16.512873][UTC:-- ::()]android_work: Nathan android_work
[ 16.512877][UTC:-- ::()]android_pm_qos_update_latency: Nathan android_pm_qos_update_latency
[ 16.516428][UTC:-- ::()]cdev_to_android_dev: Nathan cdev_to_android_dev
[ 16.516431][UTC:-- ::()]android_disconnect: Nathan android_disconnect
[ 16.570787][UTC:-- ::()]android_work: Nathan android_work
[ 16.570791][UTC:-- ::()]android_pm_qos_update_latency: Nathan android_pm_qos_update_latency
[ 16.688607][UTC:-- ::()]gc2355_8916 probe succeeded[ 16.716914][UTC:-- ::()]cdev_to_android_dev: Nathan cdev_to_android_dev
[ 16.724589][UTC:-- ::()]android_setup: Nathan android_setup
[ 16.732415][UTC:-- ::()]cdev_to_android_dev: Nathan cdev_to_android_dev
[ 16.740906][UTC:-- ::()]android_setup: Nathan android_setup
[ 16.748705][UTC:-- ::()]android_work: Nathan android_work
[ 16.756324][UTC:-- ::()]cdev_to_android_dev: Nathan cdev_to_android_dev
[ 16.764696][UTC:-- ::()]android_setup: Nathan android_setup
[ 16.772574][UTC:-- ::()]cdev_to_android_dev: Nathan cdev_to_android_dev
[ 16.781016][UTC:-- ::()]android_setup: Nathan android_setup
[ 16.788920][UTC:-- ::()]cdev_to_android_dev: Nathan cdev_to_android_dev
[ 16.797335][UTC:-- ::()]android_setup: Nathan android_setup
[ 16.839330][UTC:-- ::()]cdev_to_android_dev: Nathan cdev_to_android_dev
[ 16.847768][UTC:-- ::()]android_setup: Nathan android_setup
[ 16.855610][UTC:-- ::()]android_pm_qos_update_latency: Nathan android_pm_qos_update_latency
[ 16.865966][UTC:-- ::()]cdev_to_android_dev: Nathan cdev_to_android_dev
[ 16.874505][UTC:-- ::()]android_setup: Nathan android_setup
[ 16.882439][UTC:-- ::()]cdev_to_android_dev: Nathan cdev_to_android_dev
[ 16.890838][UTC:-- ::()]android_setup: Nathan android_setup
[ 16.899028][UTC:-- ::()]cdev_to_android_dev: Nathan cdev_to_android_dev
[ 16.907144][UTC:-- ::()]android_setup: Nathan android_setup
[ 16.915224][UTC:-- ::()]cdev_to_android_dev: Nathan cdev_to_android_dev
[ 16.923462][UTC:-- ::()]android_setup: Nathan android_setup
[ 16.931396][UTC:-- ::()]cdev_to_android_dev: Nathan cdev_to_android_dev
[ 16.939783][UTC:-- ::()]android_setup: Nathan android_setup
[ 16.950913][UTC:-- ::()]cdev_to_android_dev: Nathan cdev_to_android_dev
[ 16.950917][UTC:-- ::()]android_setup: Nathan android_setup
[ 16.951243][UTC:-- ::()]cdev_to_android_dev: Nathan cdev_to_android_dev
[ 16.951245][UTC:-- ::()]android_setup: Nathan android_setup
[ 16.951575][UTC:-- ::()]cdev_to_android_dev: Nathan cdev_to_android_dev
[ 16.951577][UTC:-- ::()]android_setup: Nathan android_setup
[ 16.951770][UTC:-- ::()]cdev_to_android_dev: Nathan cdev_to_android_dev
[ 16.951772][UTC:-- ::()]android_setup: Nathan android_setup
[ 16.952749][UTC:-- ::()]android_work: Nathan android_work
[ 17.179817][UTC:-- ::()]cdev_to_android_dev: Nathan cdev_to_android_dev
[ 17.187499][UTC:-- ::()]android_setup: Nathan android_setup
[ 17.195426][UTC:-- ::()]cdev_to_android_dev: Nathan cdev_to_android_dev
[ 17.203819][UTC:-- ::()]android_setup: Nathan android_setup
[ 17.213002][UTC:-- ::()]cdev_to_android_dev: Nathan cdev_to_android_dev
[ 17.220678][UTC:-- ::()]android_setup: Nathan android_setup
[ 17.238563][UTC:-- ::()]cdev_to_android_dev: Nathan cdev_to_android_dev
[ 17.246241][UTC:-- ::()]android_setup: Nathan android_setup
[ 17.296220][UTC:-- ::()]cdev_to_android_dev: Nathan cdev_to_android_dev
[ 17.303895][UTC:-- ::()]android_setup: Nathan android_setup
[ 17.365454][UTC:-- ::()]cdev_to_android_dev: Nathan cdev_to_android_dev
[ 17.373134][UTC:-- ::()]android_setup: Nathan android_setup
[ 17.381198][UTC:-- ::()]cdev_to_android_dev: Nathan cdev_to_android_dev
[ 17.389451][UTC:-- ::()]android_setup: Nathan android_setup
[ 17.397417][UTC:-- ::()]cdev_to_android_dev: Nathan cdev_to_android_dev
[ 17.405770][UTC:-- ::()]android_setup: Nathan android_setup
[ 17.413778][UTC:-- ::()]cdev_to_android_dev: Nathan cdev_to_android_dev
[ 17.422090][UTC:-- ::()]android_setup: Nathan android_setup
[ 17.482560][UTC:-- ::()]cdev_to_android_dev: Nathan cdev_to_android_dev
[ 17.490237][UTC:-- ::()]android_setup: Nathan android_setup
[ 30.978922][UTC:-- ::()]state_show: Nathan state_show buf:
下面为完整的kerenl log
[ 5.935579][UTC:-- ::()]qce .qcedev: Qualcomm Crypto 5.3. device found @0x720000
[ 5.935605][UTC:-- ::()]qce .qcedev: CE device = 0x0
[ 5.935605][UTC:-- ::()], IO base, CE = 0xf07c0000
[ 5.935605][UTC:-- ::()], Consumer (IN) PIPE , Producer (OUT) PIPE
[ 5.935605][UTC:-- ::()]IO base BAM = 0x0
[ 5.935605][UTC:-- ::()]BAM IRQ
[ 5.935605][UTC:-- ::()]Engines Availability = 0x2010853
[ 5.987717][UTC:-- ::()]XXX::emmc_name=KMQ7x000SA-B315-Samsung
[ 5.995342][UTC:-- ::()]sps:BAM 0x00704000 is registered.
[ 5.995344][UTC:-- ::()]sps:BAM 0x00704000 (va:0xf0c40000) enabled: ver:0x25, number of pipes:
[ 6.011609][UTC:-- ::()]mmc0: BKOPS_EN bit =
[ 6.017882][UTC:-- ::()]QCE50: qce_sps_init: Qualcomm MSM CE-BAM at 0x0000000000704000 irq
[ 6.030792][UTC:-- ::()]usbcore: registered new interface driver usbhid
[ 6.037835][UTC:-- ::()]usbhid: USB HID core driver
[ 6.045239][UTC:-- ::()]zram: Created device(s) ...
[ 6.052919][UTC:-- ::()]ashmem: initialized
[ 6.062013][UTC:-- ::()]logger: created 256K log 'log_main'
[ 6.069498][UTC:-- ::()]mmc0: new HS200 MMC card at address
[ 6.069946][UTC:-- ::()]logger: created 256K log 'log_events'
[ 6.071220][UTC:-- ::()]logger: created 256K log 'log_radio'
[ 6.072479][UTC:-- ::()]logger: created 256K log 'log_system'
[ 6.074271][UTC:-- ::()]sps:BAM 0x078c4000 is registered.
[ 6.074273][UTC:-- ::()]usb_bam_ipa_create_resources: Failed to create USB_PROD resource
[ 6.075259][UTC:-- ::()]qcom,qpnp-power-on qpnp-power-on-ee382200: PMIC@SID0 Power-on reason: Triggered from KPD (power key press) and 'cold' boot
[ 6.075286][UTC:-- ::()]qcom,qpnp-power-on qpnp-power-on-ee382200: PMIC@SID0: Power-off reason: Triggered from PS_HOLD (PS_HOLD/MSM controlled shutdown)
[ 6.075877][UTC:-- ::()]input: qpnp_pon as /devices/virtual/input/input4
[ 6.079584][UTC:-- ::()]PMIC@SID0: PM8916 v2. options: , , ,
[ 6.083027][UTC:-- ::()]coresight-fuse 5e01c.fuse: Fuse initialized
[ 6.084896][UTC:-- ::()]coresight-cti .cti: CTI initialized
[ 6.085425][UTC:-- ::()]coresight-cti .cti: CTI initialized
[ 6.085923][UTC:-- ::()]coresight-cti .cti: CTI initialized
[ 6.086462][UTC:-- ::()]coresight-cti .cti: CTI initialized
[ 6.086961][UTC:-- ::()]coresight-cti .cti: CTI initialized
[ 6.087490][UTC:-- ::()]coresight-cti .cti: CTI initialized
[ 6.088019][UTC:-- ::()]coresight-cti .cti: CTI initialized
[ 6.088466][UTC:-- ::()]coresight-cti .cti: CTI initialized
[ 6.088934][UTC:-- ::()]coresight-cti .cti: CTI initialized
[ 6.089413][UTC:-- ::()]coresight-cti .cti: CTI initialized
[ 6.089868][UTC:-- ::()]coresight-cti .cti: CTI initialized
[ 6.090353][UTC:-- ::()]coresight-cti 85a000.cti: CTI initialized
[ 6.090812][UTC:-- ::()]coresight-cti 85b000.cti: CTI initialized
[ 6.091294][UTC:-- ::()]coresight-cti .cti: CTI initialized
[ 6.091806][UTC:-- ::()]coresight-cti .cti: CTI initialized
[ 6.092265][UTC:-- ::()]coresight-cti .cti: CTI initialized
[ 6.092749][UTC:-- ::()]coresight-cti 83c000.cti: CTI initialized
[ 6.093998][UTC:-- ::()]coresight-csr .csr: CSR initialized
[ 6.095604][UTC:-- ::()]coresight-tmc .tmc: Byte Counter feature enabled
[ 6.096175][UTC:-- ::()]sps:BAM 0x00884000 is registered.
[ 6.096177][UTC:-- ::()]coresight-tmc .tmc: TMC initialized
[ 6.097024][UTC:-- ::()]coresight-tmc .tmc: TMC initialized
[ 6.103315][UTC:-- ::()]nidnt boot config:
[ 6.107825][UTC:-- ::()]coresight-tpiu .tpiu: NIDnT on SDCARD only mode
[ 6.108106][UTC:-- ::()]coresight-tpiu .tpiu: TPIU initialized
[ 6.109577][UTC:-- ::()]coresight-funnel .funnel: FUNNEL initialized
[ 6.109977][UTC:-- ::()]coresight-funnel .funnel: FUNNEL initialized
[ 6.110345][UTC:-- ::()]coresight-funnel .funnel: FUNNEL initialized
[ 6.110767][UTC:-- ::()]coresight-funnel .funnel: FUNNEL initialized
[ 6.112140][UTC:-- ::()]coresight-replicator .replicator: REPLICATOR initialized
[ 6.113865][UTC:-- ::()]coresight-stm .stm: STM initialized
[ 6.115399][UTC:-- ::()]coresight-hwevent 86c000.hwevent: Hardware Event driver initialized
[ 6.117398][UTC:-- ::()]coresight-etmv4 85c000.etm: ETMv4 initialized
[ 6.118487][UTC:-- ::()]coresight-etmv4 85d000.etm: ETMv4 initialized
[ 6.119551][UTC:-- ::()]coresight-etmv4 85e000.etm: ETMv4 initialized
[ 6.433041][UTC:-- ::()]coresight-etmv4 85f000.etm: ETMv4 initialized
[ 6.434300][UTC:-- ::()]mmcblk0: mmc0: Q7XSAB 7.28 GiB
[ 6.435616][UTC:-- ::()]mmcblk0rpmb: mmc0: Q7XSAB partition KiB
[ 6.457239][UTC:-- ::()]coresight-modem-etm modem_etm0.: Modem ETM initialized
[ 6.461613][UTC:-- ::()] mmcblk0: p1 p2 p3 p4 p5 p6 p7 p8 p9 p10 p11 p12 p13 p14 p15 p16 p17 p18 p19 p20 p21 p22 p23 p24 p25 p26 p27 p28 p29 p30
[ 6.481524][UTC:-- ::()]coresight-wcn-etm wcn_etm0.: Wireless ETM initialized
[ 6.491293][UTC:-- ::()]coresight-rpm-etm rpm_etm0.: RPM ETM initialized
[ 6.500416][UTC:-- ::()]coresight-qpdi .qpdi: CoreSight QPDI driver initialized
[ 6.512322][UTC:-- ::()]spmi wcd-spmi-ee383a00: Driver wcd-spmi-core requests probe deferral
[ 6.521215][UTC:-- ::()]spmi wcd-spmi-ee383c00: Driver wcd-spmi-core requests probe deferral
[ 6.566146][UTC:-- ::()]msm-pcm-lpa msm-pcm-lpa: msm_pcm_probe: dev name msm-pcm-lpa
[ 6.576702][UTC:-- ::()]platform qcom,msm-voip-dsp.: Driver msm-voip-dsp requests probe deferral
[ 6.587218][UTC:-- ::()]platform qcom,msm-pcm-voice.: Driver msm-pcm-voice requests probe deferral
[ 6.609519][UTC:-- ::()]msm8x16-asoc-wcd msm-snd-card.: msm8x16_asoc_machine_probe: missing qcom,msm-snd-card-id in dt node
[ 6.621111][UTC:-- ::()]msm8x16-asoc-wcd msm-snd-card.: default codec configured
[ 6.630701][UTC:-- ::()]msm8x16-asoc-wcd msm-snd-card.: ASoC: platform msm-pcm-voice not registered
[ 6.640346][UTC:-- ::()]msm8x16-asoc-wcd msm-snd-card.: snd_soc_register_card failed (-)
[ 6.650264][UTC:-- ::()]platform msm-snd-card.: Driver msm8x16-asoc-wcd requests probe deferral
[ 6.660846][UTC:-- ::()]u32 classifier
[ 6.665105][UTC:-- ::()] Actions configured
[ 6.670790][UTC:-- ::()]Netfilter messages via NETLINK v0..
[ 6.677989][UTC:-- ::()]nf_conntrack version 0.5. ( buckets, max)
[ 6.688075][UTC:-- ::()]ctnetlink v0.: registering with nfnetlink.
[ 6.695523][UTC:-- ::()]sysctl could not get directory: /net//netfilter -20
[ 6.702985][UTC:-- ::()]CPU: PID: Comm: swapper/ Not tainted 3.10.-g6283d37-dirty #
[ 6.712706][UTC:-- ::()][<c00158b0>] (unwind_backtrace+0x0/0x128) from [<c0012da8>] (show_stack+0x20/0x24)
[ 6.723632][UTC:-- ::()][<c0012da8>] (show_stack+0x20/0x24) from [<c09155bc>] (dump_stack+0x20/0x28)
[ 6.734035][UTC:-- ::()][<c09155bc>] (dump_stack+0x20/0x28) from [<c016aef8>] (__register_sysctl_table+0x444/0x490)
[ 6.745761][UTC:-- ::()][<c016aef8>] (__register_sysctl_table+0x444/0x490) from [<c016b228>] (__register_sysctl_paths+0xe4/0x190)
[ 6.758689][UTC:-- ::()][<c016b228>] (__register_sysctl_paths+0xe4/0x190) from [<c016b2fc>] (register_sysctl_paths+0x28/0x30)
[ 6.771274][UTC:-- ::()][<c016b2fc>] (register_sysctl_paths+0x28/0x30) from [<c0dda9f0>] (nf_conntrack_sip_init+0x1c/0x274)
[ 6.783685][UTC:-- ::()][<c0dda9f0>] (nf_conntrack_sip_init+0x1c/0x274) from [<c00088dc>] (do_one_initcall+0xe4/0x198)
[ 6.795665][UTC:-- ::()][<c00088dc>] (do_one_initcall+0xe4/0x198) from [<c0d97c84>] (kernel_init_freeable+0x104/0x1d0)
[ 6.807640][UTC:-- ::()][<c0d97c84>] (kernel_init_freeable+0x104/0x1d0) from [<c090a36c>] (kernel_init+0x1c/0xf4)
[ 6.819190][UTC:-- ::()][<c090a36c>] (kernel_init+0x1c/0xf4) from [<c000eb98>] (ret_from_fork+0x14/0x20)
[ 6.830208][UTC:-- ::()]NF_TPROXY: Transparent proxy support initialized, version 4.1.
[ 6.839215][UTC:-- ::()]NF_TPROXY: Copyright (c) - BalaBit IT Ltd.
[ 6.848271][UTC:-- ::()]xt_time: kernel timezone is -
[ 6.854965][UTC:-- ::()]ip_tables: (C) - Netfilter Core Team
[ 6.862252][UTC:-- ::()]arp_tables: (C) David S. Miller
[ 6.868774][UTC:-- ::()]TCP: cubic registered
[ 6.874241][UTC:-- ::()]Initializing XFRM netlink socket
[ 6.882917][UTC:-- ::()]NET: Registered protocol family
[ 6.895457][UTC:-- ::()]mip6: Mobile IPv6
[ 6.899846][UTC:-- ::()]ip6_tables: (C) - Netfilter Core Team
[ 6.908164][UTC:-- ::()]sit: IPv6 over IPv4 tunneling driver
[ 6.915841][UTC:-- ::()]NET: Registered protocol family
[ 6.921694][UTC:-- ::()]NET: Registered protocol family
[ 6.928589][UTC:-- ::()]Bridge firewalling registered
[ 6.934807][UTC:-- ::()]Ebtables v2. registered
[ 6.941148][UTC:-- ::()]Bluetooth: RFCOMM TTY layer initialized
[ 6.947957][UTC:-- ::()]Bluetooth: RFCOMM socket layer initialized
[ 6.955355][UTC:-- ::()]Bluetooth: RFCOMM ver 1.11
[ 6.961385][UTC:-- ::()]Bluetooth: BNEP (Ethernet Emulation) ver 1.3
[ 6.969066][UTC:-- ::()]Bluetooth: BNEP filters: protocol multicast
[ 6.976641][UTC:-- ::()]Bluetooth: BNEP socket layer initialized
[ 6.983866][UTC:-- ::()]Bluetooth: HIDP (Human Interface Emulation) ver 1.2
[ 6.992180][UTC:-- ::()]Bluetooth: HIDP socket layer initialized
[ 6.999517][UTC:-- ::()]l2tp_core: L2TP core driver, V2.
[ 7.006166][UTC:-- ::()]l2tp_ppp: PPPoL2TP kernel driver, V2.
[ 7.013204][UTC:-- ::()]l2tp_ip: L2TP IP encapsulation support (L2TPv3)
[ 7.021191][UTC:-- ::()]l2tp_netlink: L2TP netlink interface
[ 7.028202][UTC:-- ::()]l2tp_eth: L2TP ethernet pseudowire support (L2TPv3)
[ 7.036403][UTC:-- ::()]l2tp_debugfs: L2TP debugfs support
[ 7.043066][UTC:-- ::()]l2tp_ip6: L2TP IP encapsulation support for IPv6 (L2TPv3)
[ 7.053576][UTC:-- ::()]NET: Registered protocol family
[ 7.065535][UTC:-- ::()]XXX::restartlevel system
[ 7.073729][UTC:-- ::()]XXX::restartlevel system
[ 7.087592][UTC:-- ::()]of_batterydata_read_data: wingtech_guangyu_4v35_2300mah loaded
[ 7.118891][UTC:-- ::()]BMS: bms_load_hw_defaults: BMS_EN= Sample_Interval-S1=[]S2=[] Sample_Count-S1=[]S2=[] Fifo_Length-S1=[]S2=[] FSM_state=
[ 7.145236][UTC:-- ::()]BMS: calculate_initial_soc: warm_reset= est_ocv= shutdown_soc_invalid= shutdown_ocv= shutdown_soc= last_soc=- calculated_soc= last_ocv_uv=
[ 7.162556][UTC:-- ::()]BMS: check_eoc_condition: Unable to read battery status
[ 7.186651][UTC:-- ::()]BMS: qpnp_vm_bms_probe: probe success: soc= vbatt= ocv= warm_reset=
[ 7.335611][UTC:-- ::()]XXX::reg1010=0x0,reg1310=0x0,reg1309=0x90,plugged_in=,reg1049=0x90,reg1009=0x0
[ 7.356188][UTC:-- ::()]battery powe supply creat attr file!!
[ 7.362342][UTC:-- ::()]XXX::reg1010=0x0,reg1310=0x0,reg1309=0x90,plugged_in=,reg1049=0x90,reg1009=0x0
[ 7.373212][UTC:-- ::()]XXX::reg1010=0x0,reg1310=0x0,reg1309=0x90,plugged_in=,reg1049=0x90,reg1009=0x0
[ 7.378529][UTC:-- ::()]XXX::reg1010=0x0,reg1310=0x0,reg1309=0x90,plugged_in=,reg1049=0x90,reg1009=0x0
[ 7.381240][UTC:-- ::()]CHG: qpnp_lbc_probe: Probe chg_dis= bpd= usb= batt_pres= batt_volt= soc=
[ 7.381439][UTC:-- ::()]spmi wcd-spmi-ee383a00: Driver wcd-spmi-core requests probe deferral
[ 7.381593][UTC:-- ::()]spmi wcd-spmi-ee383c00: Driver wcd-spmi-core requests probe deferral
[ 7.425466][UTC:-- ::()]XXX::reg1010=0x0,reg1310=0x0,reg1309=0x90,plugged_in=,reg1049=0x90,reg1009=0x0
[ 7.438945][UTC:-- ::()]XXX::reg1010=0x0,reg1310=0x0,reg1309=0x90,plugged_in=,reg1049=0x90,reg1009=0x0
[ 7.471347][UTC:-- ::()]msm8x16-asoc-wcd msm-snd-card.: msm8x16_asoc_machine_probe: missing qcom,msm-snd-card-id in dt node
[ 7.483017][UTC:-- ::()]msm8x16-asoc-wcd msm-snd-card.: default codec configured
[ 7.492956][UTC:-- ::()]msm8x16-asoc-wcd msm-snd-card.: ASoC: CODEC msm8x16_wcd_codec not registered
[ 7.502739][UTC:-- ::()]msm8x16-asoc-wcd msm-snd-card.: snd_soc_register_card failed (-)
[ 7.512762][UTC:-- ::()]platform msm-snd-card.: Driver msm8x16-asoc-wcd requests probe deferral
[ 7.522762][UTC:-- ::()]spmi wcd-spmi-ee383a00: Driver wcd-spmi-core requests probe deferral
[ 7.532315][UTC:-- ::()]spmi wcd-spmi-ee383c00: Driver wcd-spmi-core requests probe deferral
[ 7.543338][UTC:-- ::()]VFP support v0.: implementor architecture part variant rev
[ 7.552362][UTC:-- ::()]Registering SWP/SWPB emulation handler
[ 7.564495][UTC:-- ::()]XXX::reg1010=0x0,reg1310=0x0,reg1309=0x90,plugged_in=,reg1049=0x90,reg1009=0x0
[ 7.576993][UTC:-- ::()]XXX::reg1010=0x0,reg1310=0x0,reg1309=0x90,plugged_in=,reg1049=0x90,reg1009=0x0
[ 7.587033][UTC:-- ::()]XXX::reg1010=0x0,reg1310=0x0,reg1309=0x90,plugged_in=,reg1049=0x90,reg1009=0x0
[ 7.600571][UTC:-- ::()]XXX::reg1010=0x0,reg1310=0x0,reg1309=0x90,plugged_in=,reg1049=0x90,reg1009=0x0
[ 7.857091][UTC:-- ::()]msm8x16-asoc-wcd msm-snd-card.: msm8x16_asoc_machine_probe: missing qcom,msm-snd-card-id in dt node
[ 7.868691][UTC:-- ::()]msm8x16-asoc-wcd msm-snd-card.: default codec configured
[ 7.878636][UTC:-- ::()]msm8x16-asoc-wcd msm-snd-card.: ASoC: CODEC msm8x16_wcd_codec not registered
[ 7.888316][UTC:-- ::()]msm8x16-asoc-wcd msm-snd-card.: snd_soc_register_card failed (-)
[ 7.898208][UTC:-- ::()]platform msm-snd-card.: Driver msm8x16-asoc-wcd requests probe deferral
[ 7.908248][UTC:-- ::()]spmi wcd-spmi-ee383a00: Driver wcd-spmi-core requests probe deferral
[ 7.917899][UTC:-- ::()]spmi wcd-spmi-ee383c00: Driver wcd-spmi-core requests probe deferral
[ 7.927508][UTC:-- ::()]init: Nathan init
[ 7.933262][UTC:-- ::()]android_probe: Nathan android_probe
[ 7.939743][UTC:-- ::()]android_create_device: Nathan android_create_device
[ 7.948722][UTC:-- ::()]android_bind: Nathan android_bind
[ 7.954527][UTC:-- ::()]cdev_to_android_dev: Nathan cdev_to_android_dev
[ 7.962372][UTC:-- ::()]android_init_functions: Nathan android_init_functions
[ 7.971141][UTC:-- ::()]file system registered
[ 7.976757][UTC:-- ::()]mbim_init: initialize instances
[ 7.983439][UTC:-- ::()]mbim_init: Initialized ports
[ 7.993403][UTC:-- ::()]rndis_qc_init: initialize rndis QC instance
[ 8.000895][UTC:-- ::()]cdev_to_android_dev: Nathan cdev_to_android_dev
[ 8.008742][UTC:-- ::()]android_usb gadget: Mass Storage Function, version: //
[ 8.017125][UTC:-- ::()]android_usb gadget: Number of LUNs=
[ 8.024021][UTC:-- ::()] lun0: LUN: read only CD-ROM file: (no medium)
[ 8.031878][UTC:-- ::()] lun1: LUN: removable file: (no medium)
[ 8.039162][UTC:-- ::()] lun2: LUN: removable file: (no medium)
[ 8.047382][UTC:-- ::()]android_usb gadget: android_usb ready
[ 8.053439][UTC:-- ::()]msm_hsusb msm_hsusb: [ci13xxx_start] hw_ep_max =
[ 8.061774][UTC:-- ::()]msm_hsusb msm_hsusb: CI13XXX_CONTROLLER_RESET_EVENT received
[ 8.072068][UTC:-- ::()]init: Nathan init, after platform_driver_register
[ 8.072147][UTC:-- ::()]msm8x16-asoc-wcd msm-snd-card.: msm8x16_asoc_machine_probe: missing qcom,msm-snd-card-id in dt node
[ 8.072163][UTC:-- ::()]msm8x16-asoc-wcd msm-snd-card.: default codec configured
[ 8.073371][UTC:-- ::()]msm8x16-asoc-wcd msm-snd-card.: ASoC: CODEC msm8x16_wcd_codec not registered
[ 8.073448][UTC:-- ::()]msm8x16-asoc-wcd msm-snd-card.: snd_soc_register_card failed (-)
[ 8.073730][UTC:-- ::()]platform msm-snd-card.: Driver msm8x16-asoc-wcd requests probe deferral
[ 8.073935][UTC:-- ::()]spmi wcd-spmi-ee383a00: Driver wcd-spmi-core requests probe deferral
[ 8.074085][UTC:-- ::()]spmi wcd-spmi-ee383c00: Driver wcd-spmi-core requests probe deferral
[ 8.152998][UTC:-- ::()]input: gpio-keys as /devices/soc./gpio_keys./input/input5
[ 8.162248][UTC:-- ::()]qcom,qpnp-rtc qpnp-rtc-ee382800: setting system clock to -- :: UTC ()
[ 8.162899][UTC:-- ::()]msm8x16-asoc-wcd msm-snd-card.: msm8x16_asoc_machine_probe: missing qcom,msm-snd-card-id in dt node
[ 8.162916][UTC:-- ::()]msm8x16-asoc-wcd msm-snd-card.: default codec configured
[ 8.164141][UTC:-- ::()]msm8x16-asoc-wcd msm-snd-card.: ASoC: CODEC msm8x16_wcd_codec not registered
[ 8.164222][UTC:-- ::()]msm8x16-asoc-wcd msm-snd-card.: snd_soc_register_card failed (-)
[ 8.164555][UTC:-- ::()]platform msm-snd-card.: Driver msm8x16-asoc-wcd requests probe deferral
[ 8.164845][UTC:-- ::()]spmi wcd-spmi-ee383a00: Driver wcd-spmi-core requests probe deferral
[ 8.164998][UTC:-- ::()]spmi wcd-spmi-ee383c00: Driver wcd-spmi-core requests probe deferral
[ 8.165972][UTC:-- ::()]CHG: qpnp_lbc_batt_temp_alarm_work_fn: wgz ok ,enable charger
[ 8.166091][UTC:-- ::()]XXX::reg1010=0x0,reg1310=0x0,reg1309=0x90,plugged_in=,reg1049=0x90,reg1009=0x0
[ 8.166199][UTC:-- ::()]XXX::reg1010=0x0,reg1310=0x0,reg1309=0x90,plugged_in=,reg1049=0x90,reg1009=0x0
[ 8.166353][UTC:-- ::()]XXX::reg1010=0x0,reg1310=0x0,reg1309=0x90,plugged_in=,reg1049=0x90,reg1009=0x0
[ 8.169276][UTC:-- ::()]XXX::reg1010=0x0,reg1310=0x0,reg1309=0x90,plugged_in=,reg1049=0x90,reg1009=0x0
[ 8.298925][UTC:-- ::()]battery_current_limit qcom,bcl.: battery_current_limit:probe_btm_properties Error reading key:qcom,ibat-monitor. ret = -
[ 8.314161][UTC:-- ::()]msm8x16-asoc-wcd msm-snd-card.: msm8x16_asoc_machine_probe: missing qcom,msm-snd-card-id in dt node
[ 8.318704][UTC:-- ::()]msm_thermal:interrupt_mode_init Interrupt mode init
[ 8.318722][UTC:-- ::()]msm_thermal:disable_msm_thermal Max frequency reset for CPU0
[ 8.343926][UTC:-- ::()]msm8x16-asoc-wcd msm-snd-card.: default codec configured
[ 8.352661][UTC:-- ::()]msm_thermal:disable_msm_thermal Max frequency reset for CPU1
[ 8.353090][UTC:-- ::()]msm8x16-asoc-wcd msm-snd-card.: ASoC: CODEC msm8x16_wcd_codec not registered
[ 8.353123][UTC:-- ::()]msm8x16-asoc-wcd msm-snd-card.: snd_soc_register_card failed (-)
[ 8.353220][UTC:-- ::()]platform msm-snd-card.: Driver msm8x16-asoc-wcd requests probe deferral
[ 8.353309][UTC:-- ::()]spmi wcd-spmi-ee383a00: Driver wcd-spmi-core requests probe deferral
[ 8.353361][UTC:-- ::()]spmi wcd-spmi-ee383c00: Driver wcd-spmi-core requests probe deferral
[ 8.353783][UTC:-- ::()]msm8x16-asoc-wcd msm-snd-card.: msm8x16_asoc_machine_probe: missing qcom,msm-snd-card-id in dt node
[ 8.353789][UTC:-- ::()]msm8x16-asoc-wcd msm-snd-card.: default codec configured
[ 8.354165][UTC:-- ::()]msm8x16-asoc-wcd msm-snd-card.: ASoC: CODEC msm8x16_wcd_codec not registered
[ 8.354193][UTC:-- ::()]msm8x16-asoc-wcd msm-snd-card.: snd_soc_register_card failed (-)
[ 8.354284][UTC:-- ::()]platform msm-snd-card.: Driver msm8x16-asoc-wcd requests probe deferral
[ 8.464701][UTC:-- ::()]msm_thermal:disable_msm_thermal Max frequency reset for CPU2
[ 8.473854][UTC:-- ::()]msm_thermal:disable_msm_thermal Max frequency reset for CPU3
[ 8.485341][UTC:-- ::()]spmi wcd-spmi-ee383a00: Driver wcd-spmi-core requests probe deferral
[ 8.494300][UTC:-- ::()]spmi wcd-spmi-ee383c00: Driver wcd-spmi-core requests probe deferral
[ 8.495862][UTC:-- ::()]led_gpio_flash_probe:probe successfully!
[ 8.498807][UTC:-- ::()]qcom,cc-debug- .qcom,cc-debug: Registered Debug Mux successfully
[ 8.499650][UTC:-- ::()]clock_late_init: Removing enables held for handed-off clocks
[ 8.532181][UTC:-- ::()]msm8x16-asoc-wcd msm-snd-card.: msm8x16_asoc_machine_probe: missing qcom,msm-snd-card-id in dt node
[ 8.544119][UTC:-- ::()]msm8x16-asoc-wcd msm-snd-card.: default codec configured
[ 8.553557][UTC:-- ::()]msm8x16-asoc-wcd msm-snd-card.: ASoC: CODEC msm8x16_wcd_codec not registered
[ 8.563685][UTC:-- ::()]msm8x16-asoc-wcd msm-snd-card.: snd_soc_register_card failed (-)
[ 8.573642][UTC:-- ::()]platform msm-snd-card.: Driver msm8x16-asoc-wcd requests probe deferral
[ 8.583809][UTC:-- ::()]ALSA device list:
[ 8.583882][UTC:-- ::()]spmi wcd-spmi-ee383a00: Driver wcd-spmi-core requests probe deferral
[ 8.583935][UTC:-- ::()]spmi wcd-spmi-ee383c00: Driver wcd-spmi-core requests probe deferral
[ 8.609019][UTC:-- ::()] No soundcards f[ 8.617056][UTC:-- ::()]Freeing unused kernel memory: 864K (c0d97000 - c0e6f000)
[ 8.635940][UTC:-- ::()]SELinux: Permission attach_queue in class tun_socket not defined in policy.
[ 8.645543][UTC:-- ::()]SELinux: the above unknown classes and permissions will be denied
[ 8.873592][UTC:-- ::()]type= audit(863.199:): policy loaded auid= ses=
[ 8.883132][UTC:-- ::()]SELinux: Loaded policy from /sepolicy
[ 8.892673][UTC:-- ::()]type= audit(863.219:): enforcing= old_enforcing= auid= ses=
[ 8.927238][UTC:-- ::()]XXX::reg1010=0x20,reg1310=0x0,reg1309=0x90,plugged_in=,reg1049=0x90,reg1009=0xd
[ 8.948390][UTC:-- ::()]XXX::reg1010=0x20,reg1310=0x0,reg1309=0x90,plugged_in=,reg1049=0x90,reg1009=0x5
[ 8.958521][UTC:-- ::()]XXX::reg1010=0x20,reg1310=0x0,reg1309=0x90,plugged_in=,reg1049=0x90,reg1009=0x5
[ 8.972167][UTC:-- ::()]XXX::reg1010=0x20,reg1310=0x0,reg1309=0x90,plugged_in=,reg1049=0x90,reg1009=0x5
[ 13.343551][UTC:-- ::()]init: /init.qcom.rc: : user option requires a user id
[ 13.354872][UTC:-- ::()]init (): /proc//oom_adj is deprecated, please use /proc//oom_score_adj instead.
[ 13.367763][UTC:-- ::()]init: invalid uid 'fm_radio'
[ 13.384860][UTC:-- ::()]XXX::reg1010=0x20,reg1310=0x0,reg1309=0x90,plugged_in=,reg1049=0x90,reg1009=0x5
[ 13.397670][UTC:-- ::()]XXX::reg1010=0x20,reg1310=0x0,reg1309=0x90,plugged_in=,reg1049=0x90,reg1009=0x5
[ 13.852657][UTC:-- ::()]init: cannot open '/initlogo.rle'
[ 13.869369][UTC:-- ::()]iSerial_store: serial number is feb1dcc4, uinque_serial_string is feb1dcc4
[ 13.948369][UTC:-- ::()]EXT4-fs (mmcblk0p23): mounted filesystem with ordered data mode. Opts: barrier=,discard
[ 13.960408][UTC:-- ::()]EXT4-fs (mmcblk0p30): Ignoring removed nomblk_io_submit option
[ 14.201005][UTC:-- ::()]EXT4-fs (mmcblk0p30): orphan inodes deleted
[ 14.207922][UTC:-- ::()]EXT4-fs (mmcblk0p30): recovery complete
[ 14.222198][UTC:-- ::()]EXT4-fs (mmcblk0p30): mounted filesystem with ordered data mode. Opts: nomblk_io_submit,errors=remount-ro
[ 14.234679][UTC:-- ::()]jbd2/mmcblk0p30 () used greatest stack depth: bytes left
[ 14.262029][UTC:-- ::()]fs_mgr: Running /system/bin/e2fsck on /dev/block/bootdevice/by-name/userdata
[ 14.305831][UTC:-- ::()]e2fsck () used greatest stack depth: bytes left
[ 14.313651][UTC:-- ::()]e2fsck: e2fsck 1.41. (-Dec-)
[ 14.320780][UTC:-- ::()]e2fsck: /dev/block/bootdevice/by-name/userdata: clean, / files, / blocks
[ 14.338038][UTC:-- ::()]EXT4-fs (mmcblk0p30): mounted filesystem with ordered data mode. Opts: barrier=,noauto_da_alloc,discard
[ 14.350473][UTC:-- ::()]init () used greatest stack depth: bytes left
[ 14.367083][UTC:-- ::()]EXT4-fs (mmcblk0p25): recovery complete
[ 14.374070][UTC:-- ::()]EXT4-fs (mmcblk0p25): mounted filesystem with ordered data mode. Opts: barrier=
[ 14.441074][UTC:-- ::()]init: Detected MSM SOC ID= SOC VER= BOARD TYPE=QRD
[ 14.449541][UTC:-- ::()]init: failed to open '/sys/class/graphics/fb2/msm_fb_type'
[ 14.467812][UTC:-- ::()]init: property 'persist.sys.ssr.enable_debug' doesn't exist while expanding '${persist.sys.ssr.enable_debug}'
[ 14.480404][UTC:-- ::()]init: cannot expand '${persist.sys.ssr.enable_debug}' while writing to '/sys/module/subsystem_restart/parameters/enable_debug'
[ 14.495368][UTC:-- ::()]init: property 'persist.sys.mba_boot_timeout' doesn't exist while expanding '${persist.sys.mba_boot_timeout}'
[ 14.508674][UTC:-- ::()]init: cannot expand '${persist.sys.mba_boot_timeout}' while writing to '/sys/module/pil_msa/parameters/pbl_mba_boot_timeout_ms'
[ 14.523689][UTC:-- ::()]init: property 'persist.sys.modem_auth_timeout' doesn't exist while expanding '${persist.sys.modem_auth_timeout}'
[ 14.537570][UTC:-- ::()]init: cannot expand '${persist.sys.modem_auth_timeout}' while writing to '/sys/module/pil_msa/parameters/modem_auth_timeout_ms'
[ 14.552511][UTC:-- ::()]init: property 'persist.sys.pil_proxy_timeout' doesn't exist while expanding '${persist.sys.pil_proxy_timeout}'
[ 14.566132][UTC:-- ::()]init: cannot expand '${persist.sys.pil_proxy_timeout}' while writing to '/sys/module/peripheral_loader/parameters/proxy_timeout_ms'
[ 14.585120][UTC:-- ::()]pil-q6v5-mss .qcom,mss: modem: loading from 0x86800000 to 0x8b900000
[ 14.642423][UTC:-- ::()]pil: MBA boot done
[ 15.278408][UTC:-- ::()]pil-q6v5-mss .qcom,mss: modem: Brought out of reset
[ 15.383306][UTC:-- ::()]pil-q6v5-mss .qcom,mss: modem: Power/Clock ready interrupt received
[ 15.383334][UTC:-- ::()]pil-q6v5-mss .qcom,mss: Subsystem error monitoring/handling services are up
[ 15.384165][UTC:-- ::()]msm8x16-asoc-wcd msm-snd-card.: msm8x16_asoc_machine_probe: missing qcom,msm-snd-card-id in dt node
[ 15.384171][UTC:-- ::()]msm8x16-asoc-wcd msm-snd-card.: default codec configured
[ 15.384689][UTC:-- ::()]msm8x16-asoc-wcd msm-snd-card.: ASoC: CODEC msm8x16_wcd_codec not registered
[ 15.384722][UTC:-- ::()]msm8x16-asoc-wcd msm-snd-card.: snd_soc_register_card failed (-)
[ 15.384826][UTC:-- ::()]platform msm-snd-card.: Driver msm8x16-asoc-wcd requests probe deferral
[ 15.386890][UTC:-- ::()]msm8x16-asoc-wcd msm-snd-card.: msm8x16_asoc_machine_probe: missing qcom,msm-snd-card-id in dt node
[ 15.386897][UTC:-- ::()]msm8x16-asoc-wcd msm-snd-card.: default codec configured
[ 15.396727][UTC:-- ::()]msm-pcm-routing msm-pcm-routing: ASoC: no dapm match for VOICE2_STUB_DL --> Voice2 Stub --> INTERNAL_BT_SCO_RX_Voice Mixer
[ 15.396734][UTC:-- ::()]msm-pcm-routing msm-pcm-routing: ASoC: Failed to add route VOICE2_STUB_DL -> Voice2 Stub -> INTERNAL_BT_SCO_RX_Voice Mixer
[ 15.409490][UTC:-- ::()]msm-pcm-routing msm-pcm-routing: ASoC: mux SLIM_0_RX AANC MUX has no paths
[ 15.411673][UTC:-- ::()]wcd-spmi-core msm8x16_wcd_codec: ASoC: mux RX3 MIX1 INP3 has no paths
[ 15.411776][UTC:-- ::()]wcd-spmi-core msm8x16_wcd_codec: ASoC: mux RX2 MIX1 INP3 has no paths
[ 15.537570][UTC:-- ::()]type= audit(869.869:): avc: denied { entrypoint } for pid= comm="init" path="/sbin/healthd" dev="rootfs" ino= scontext=u:r:healthd:s0 tcontext=u:object_r:rootfs:s0 tclass=file
[ 15.538637][UTC:-- ::()]M-Notify: General:
[ 15.554027][UTC:-- ::()]init: cannot find '/system/etc/install-recovery.sh', disabling 'flash_recovery'
[ 15.729445][UTC:-- ::()]init: cannot find '/system/bin/ssr_diag', disabling 'ssr_diag'
[ 15.755506][UTC:-- ::()]init: property 'sys.powerctl' doesn't exist while expanding '${sys.powerctl}'
[ 15.767822][UTC:-- ::()]init: powerctl: cannot expand '${sys.powerctl}'
[ 15.785678][UTC:-- ::()]init: property 'sys.sysctl.extra_free_kbytes' doesn't exist while expanding '${sys.sysctl.extra_free_kbytes}'
[ 15.808436][UTC:-- ::()]init: cannot expand '${sys.sysctl.extra_free_kbytes}' while writing to '/proc/sys/vm/extra_free_kbytes'
[ 15.825280][UTC:-- ::()]init: property 'sys.sysctl.tcp_def_init_rwnd' doesn't exist while expanding '${sys.sysctl.tcp_def_i 15.855647][UTC:-- ::()]init: cannot expand '${sys.sysctl.tcp_def_init_rwnd}' while writing to '/proc/sys/net/ipv4/tcp_default_init_rwnd'
[ 15.931031][UTC:-- ::()]init: sys_prop: permission denied uid: name:persist.sys.sd.defaultpath
[ 15.946108][UTC:-- ::()]enable_store: Nathan enable_store buf:
[ 15.957007][UTC:-- ::()]enable_store: android_usb: already disabled
[ 15.968569][UTC:-- ::()]functions_store: Nathan functions_store buf:mtp,mass_storage,adb
[ 15.978858][UTC:-- ::()]alloc_android_config: Nathan alloc_android_config
[ 15.989642][UTC:-- ::()]android_enable_function: Nathan android_enable_function
[ 15.997446][UTC:-- ::()]android_enable_function: Nathan android_enable_function
[ 16.006212][UTC:-- ::()]android_enable_function: Nathan android_enable_function
[ 16.015662][UTC:-- ::()]enable_store: Nathan enable_store buf:
[ 16.022331][UTC:-- ::()]android_disable: Nathan android_disable
[ 16.034402][UTC:-- ::()]android_enable: Nathan android_enable
shell@Kraft-A6000:/ $ [ 16.053530][UTC:-- ::()]android_enable: Nathan android_enable
[ 16.060040][UTC:-- ::()]cdev_to_android_dev: Nathan cdev_to_android_dev
[ 16.068088][UTC:-- ::()]android_bind_config: Nathan android_bind_config
[ 16.076092][UTC:-- ::()]android_bind_enabled_functions: Nathan android_bind_enabled_functions
[ 16.101290][UTC:-- ::()]handle_qmi_request: Error getting req_desc for msg_id
[ 16.109464][UTC:-- ::()]mem_share_svc_recv_msg: Error receiving message
[ 16.117302][UTC:-- ::()]diag: In diag_send_msg_mask_update, invalid status
[ 16.133429][UTC:-- ::()]diag: In diag_send_log_mask_update, invalid status [ 16.211547][UTC:-- ::()]QSEECOM: qseecom_load_app: App (keymaste) does'nt exist, loading apps for first time
[ 16.225577][UTC:-- ::()]QSEECOM: qseecom_load_app: scm_call rsp.result is QSEOS_RESULT_FAILURE
[ 16.235310][UTC:-- ::()]QSEECOM: qseecom_ioctl: failed load_app request: -
[ 16.248017][UTC:-- ::()]QSEECOM: qseecom_release: data: released=false, type=, mode=, data=0xec816000
[ 16.271509][UTC:-- ::()]failed: no power_down_setting[ 16.277561][UTC:-- ::()]msm_camera_fill_vreg_params: i j cam_vio
[ 16.286220][UTC:-- ::()]msm_camera_fill_vreg_params: i j cam_vana
[ 16.294875][UTC:-- ::()]msm_camera_fill_vreg_params: i j cam_vdig
[ 16.303465][UTC:-- ::()]msm_camera_fill_vreg_params: i j cam_vaf
[ 16.312201][UTC:-- ::()]msm_camera_fill_vreg_params: i j cam_vaf
[ 16.320722][UTC:-- ::()]cdev_to_android_dev: Nathan cdev_to_android_dev
[ 16.329279][UTC:-- ::()]android_disconnect: Nathan android_disconnect
[ 16.338150][UTC:-- ::()]android_work: Nathan android_work
[ 16.339371][UTC:-- ::()]msm_camera_fill_vreg_params: i j cam_vdig
[ 16.339375][UTC:-- ::()]msm_camera_fill_vreg_params: i j cam_vana
[ 16.339378][UTC:-- ::()]msm_camera_fill_vreg_params: i j cam_vio
[ 16.434960][UTC:-- ::()]imx219_q8n13a probe succeeded[ 16.486399][UTC:-- ::()]wcd-spmi-core msm8x16_wcd_codec: ASoC: unknown pin Digital Mic1
[ 16.495597][UTC:-- ::()]wcd-spmi-core msm8x16_wcd_codec: ASoC: unknown pin Digital Mic2
[ 16.511472][UTC:-- ::()]failed: no power_down_setting[ 16.512802][UTC:-- ::()]cdev_to_android_dev: Nathan cdev_to_android_dev
[ 16.512805][UTC:-- ::()]android_setup: Nathan android_setup
[ 16.512873][UTC:-- ::()]android_work: Nathan android_work
[ 16.512877][UTC:-- ::()]android_pm_qos_update_latency: Nathan android_pm_qos_update_latency
[ 16.516428][UTC:-- ::()]cdev_to_android_dev: Nathan cdev_to_android_dev
[ 16.516431][UTC:-- ::()]android_disconnect: Nathan android_disconnect
[ 16.569131][UTC:-- ::()]msm_camera_fill_vreg_params: i j cam_vio
[ 16.570787][UTC:-- ::()]android_work: Nathan android_work
[ 16.570791][UTC:-- ::()]android_pm_qos_update_latency: Nathan android_pm_qos_update_latency
[ 16.595542][UTC:-- ::()]msm_camera_fill_vreg_params: i j cam_vdig
[ 16.604206][UTC:-- ::()]msm_camera_fill_vreg_params: i j cam_vana
[ 16.612886][UTC:-- ::()]msm_camera_fill_vreg_params: i j cam_vana
[ 16.621828][UTC:-- ::()]msm_camera_fill_vreg_params: i j cam_vdig
[ 16.630266][UTC:-- ::()]msm_camera_fill_vreg_params: i j cam_vio
[ 16.688607][UTC:-- ::()]gc2355_8916 probe succeeded[ 16.716914][UTC:-- ::()]cdev_to_android_dev: Nathan cdev_to_android_dev
[ 16.724589][UTC:-- ::()]android_setup: Nathan android_setup
[ 16.732415][UTC:-- ::()]cdev_to_android_dev: Nathan cdev_to_android_dev
[ 16.740906][UTC:-- ::()]android_setup: Nathan android_setup
[ 16.748705][UTC:-- ::()]android_work: Nathan android_work
[ 16.756324][UTC:-- ::()]cdev_to_android_dev: Nathan cdev_to_android_dev
[ 16.764696][UTC:-- ::()]android_setup: Nathan android_setup
[ 16.772574][UTC:-- ::()]cdev_to_android_dev: Nathan cdev_to_android_dev
[ 16.781016][UTC:-- ::()]android_setup: Nathan android_setup
[ 16.788920][UTC:-- ::()]cdev_to_android_dev: Nathan cdev_to_android_dev
[ 16.797335][UTC:-- ::()]android_setup: Nathan android_setup
[ 16.799056][UTC:-- ::()]msm_actuator_close: software shutdown error rc=-[ 16.799062][UTC:-- ::()]msm_cci_release invalid ref count / cci state
[ 16.799065][UTC:-- ::()]msm_sensor_cci_i2c_util line rc = -
[ 16.799068][UTC:-- ::()]msm_actuator_close: cci_init failed
[ 16.839330][UTC:-- ::()]cdev_to_android_dev: Nathan cdev_to_android_dev
[ 16.847768][UTC:-- ::()]android_setup: Nathan android_setup
[ 16.855610][UTC:-- ::()]android_pm_qos_update_latency: Nathan android_pm_qos_update_latency
[ 16.865966][UTC:-- ::()]cdev_to_android_dev: Nathan cdev_to_android_dev
[ 16.874505][UTC:-- ::()]android_setup: Nathan android_setup
[ 16.882439][UTC:-- ::()]cdev_to_android_dev: Nathan cdev_to_android_dev
[ 16.890838][UTC:-- ::()]android_setup: Nathan android_setup
[ 16.899028][UTC:-- ::()]cdev_to_android_dev: Nathan cdev_to_android_dev
[ 16.907144][UTC:-- ::()]android_setup: Nathan android_setup
[ 16.915224][UTC:-- ::()]cdev_to_android_dev: Nathan cdev_to_android_dev
[ 16.923462][UTC:-- ::()]android_setup: Nathan android_setup
[ 16.931396][UTC:-- ::()]cdev_to_android_dev: Nathan cdev_to_android_dev
[ 16.939783][UTC:-- ::()]android_setup: Nathan android_setup
[ 16.949995][UTC:-- ::()]MSM-SENSOR-INIT msm_sensor_wait_for_probe_done: msm_cam_get_module_init_status -
[ 16.949995][UTC:-- ::()]
[ 16.950913][UTC:-- ::()]cdev_to_android_dev: Nathan cdev_to_android_dev
[ 16.950917][UTC:-- ::()]android_setup: Nathan android_setup
[ 16.951243][UTC:-- ::()]cdev_to_android_dev: Nathan cdev_to_android_dev
[ 16.951245][UTC:-- ::()]android_setup: Nathan android_setup
[ 16.951575][UTC:-- ::()]cdev_to_android_dev: Nathan cdev_to_android_dev
[ 16.951577][UTC:-- ::()]android_setup: Nathan android_setup
[ 16.951770][UTC:-- ::()]cdev_to_android_dev: Nathan cdev_to_android_dev
[ 16.951772][UTC:-- ::()]android_setup: Nathan android_setup
[ 16.952749][UTC:-- ::()]android_work: Nathan android_work
[ 16.964432][UTC:-- ::()]MSM-CPP cpp_init_hardware: stream_cnt:
[ 17.122411][UTC:-- ::()]msm_qti_pp_get_rms_value_control, back not active to query rms
[ 17.133105][UTC:-- ::()]msm_dolby_dap_param_to_get_control_get, port_id not set, do not query ADM
[ 17.179817][UTC:-- ::()]cdev_to_android_dev: Nathan cdev_to_android_dev
[ 17.187499][UTC:-- ::()]android_setup: Nathan android_setup
[ 17.195426][UTC:-- ::()]cdev_to_android_dev: Nathan cdev_to_android_dev
[ 17.203819][UTC:-- ::()]android_setup: Nathan android_setup
[ 17.213002][UTC:-- ::()]cdev_to_android_dev: Nathan cdev_to_android_dev
[ 17.220678][UTC:-- ::()]android_setup: Nathan android_setup
[ 17.238563][UTC:-- ::()]cdev_to_android_dev: Nathan cdev_to_android_dev
[ 17.246241][UTC:-- ::()]android_setup: Nathan android_setup
[ 17.296220][UTC:-- ::()]cdev_to_android_dev: Nathan cdev_to_android_dev
[ 17.303895][UTC:-- ::()]android_setup: Nathan android_setup
[ 17.314763][UTC:-- ::()]core_set_license: error getting metainfo size, err:0x0, size:
[ 17.316193][UTC:-- ::()]diag: In diag_process_smd_read_data, diag_device_write error: -
[ 17.365454][UTC:-- ::()]cdev_to_android_dev: Nathan cdev_to_android_dev
[ 17.373134][UTC:-- ::()]android_setup: Nathan android_setup
[ 17.381198][UTC:-- ::()]cdev_to_android_dev: Nathan cdev_to_android_dev
[ 17.389451][UTC:-- ::()]android_setup: Nathan android_setup
[ 17.397417][UTC:-- ::()]cdev_to_android_dev: Nathan cdev_to_android_dev
[ 17.405770][UTC:-- ::()]android_setup: Nathan android_setup
[ 17.413778][UTC:-- ::()]cdev_to_android_dev: Nathan cdev_to_android_dev
[ 17.422090][UTC:-- ::()]android_setup: Nathan android_setup
[ 17.482560][UTC:-- ::()]cdev_to_android_dev: Nathan cdev_to_android_dev
[ 17.490237][UTC:-- ::()]android_setup: Nathan android_setup
[ 18.629739][UTC:-- ::()]diag: In diag_send_msg_mask_update, invalid status [ 18.634386][UTC:-- ::()]mdss_check_dsi_ctrl_status: ctl not powered on
[ 18.646338][UTC:-- ::()]diag: In diag_send_log_mask_update, invalid status [ 20.634364][UTC:-- ::()]mdss_check_dsi_ctrl_status: ctl not powered on
[ 21.289984][UTC:-- ::()]wcnss: no space available for smd frame
[ 21.324402][UTC:-- ::()]wcnss: no space available for smd frame
[ 21.354411][UTC:-- ::()]wcnss: no space available for smd frame
[ 21.384442][UTC:-- ::()]wcnss: no space available for smd frame
[ 22.634373][UTC:-- ::()]mdss_check_dsi_ctrl_status: ctl not powered on
[ 24.634356][UTC:-- ::()]mdss_check_dsi_ctrl_status: ctl not powered on
[ 26.634350][UTC:-- ::()]mdss_check_dsi_ctrl_status: ctl not powered on
[ 28.634359][UTC:-- ::()]mdss_check_dsi_ctrl_status: ctl not powered on
[ 30.446345][UTC:-- ::()]mdss_dsi_on: Panel already on.
[ 30.510392][UTC:-- ::()]wgz ldo17 enable =
[ 30.515789][UTC:-- ::()]8916_l17: Failed to create debugfs directory
[ 30.524145][UTC:-- ::()]wgz get regulator Ldo17 ok
[ 30.978922][UTC:-- ::()]state_show: Nathan state_show buf:
[ 32.148010][UTC:-- ::()]type= audit(1388534705.619:): avc: denied { getattr } for pid= comm="zygote" path="socket:[6959]" dev="sockfs" ino= scontext=u:r:untrusted_app:s0 tcontext=u:r:zygote:s0 tclass=unix_stream_socket
[ 32.169991][UTC:-- ::()]type= audit(1388534705.639:): avc: denied { getopt } for pid= comm="zygote" path="/dev/socket/zygote" scontext=u:r:untrusted_app:s0 tcontext=u:r:zygote:s0 tclass=unix_stream_socket
[ 33.491661][UTC:-- ::()]type= audit(1388534706.959:): avc: denied { getattr } for pid= comm="zygote" path="socket:[6959]" dev="sockfs" ino= scontext=u:r:untrusted_app:s0 tcontext=u:r:zygote:s0 tclass=unix_stream_socket
[ 33.514494][UTC:-- ::()]type= audit(1388534706.989:): avc: denied { getopt } for pid= comm="zygote" path="/dev/socket/zygote" scontext=u:r:untrusted_app:s0 tcontext=u:r:zygote:s0 tclass=unix_stream_socket
[ 33.941410][UTC:-- ::()]type= audit(1388534707.409:): avc: denied { read write } for pid= comm="d.process.acore" name="kgsl-3d0" dev="tmpfs" ino= scontext=u:r:untrusted_app:s0 tcontext=u:object_r:device:s0 tclass=chr_file
[ 33.967326][UTC:-- ::()]type= audit(1388534707.439:): avc: denied { open } for pid= comm="d.process.acore" path="/dev/kgsl-3d0" dev="tmpfs" ino= scontext=u:r:untrusted_app:s0 tcontext=u:object_r:device:s0 tclass=chr_file
[ 33.991283][UTC:-- ::()]type= audit(1388534707.459:): avc: denied { ioctl } for pid= comm="d.process.acore" path="/dev/kgsl-3d0" dev="tmpfs" ino= scontext=u:r:untrusted_app:s0 tcontext=u:object_r:device:s0 tclass=chr_file
[ 34.497400][UTC:-- ::()]init: untracked pid exited
[ 34.797791][UTC:-- ::()]type= audit(1388534708.269:): avc: denied { ioctl } for pid= comm="d.process.acore" path="/dev/kgsl-3d0" dev="tmpfs" ino= scontext=u:r:untrusted_app:s0 tcontext=u:object_r:device:s0 tclass=chr_file
[ 35.499167][UTC:-- ::()]init: sys_prop: permission denied uid: name:service.bootanim.exit
[ 35.542949][UTC:-- ::()]BootAnimation () used greatest stack depth: bytes left
[ 36.124461][UTC:-- ::()]type= audit(1388534709.599:): avc: denied { read write } for pid= comm="d.process.acore" path="/dev/kgsl-3d0" dev="tmpfs" ino= scontext=u:r:untrusted_app:s0 tcontext=u:object_r:device:s0 tclass=chr_file
[ 37.428644][UTC:-- ::()]init: untracked pid exited
[ 37.499443][UTC:-- ::()]init: untracked pid exited
[ 37.576722][UTC:-- ::()]init: untracked pid exited
[ 38.790518][UTC:-- ::()]wgz ldo17 enable =
[ 38.795977][UTC:-- ::()]wgz get regulator Ldo17 ok
[ 38.824123][UTC:-- ::()]audit_printk_skb: callbacks suppressed
[ 38.831508][UTC:-- ::()]type= audit(1388534712.289:): avc: denied { search } for pid= comm="mobile.avlenovo" name="" dev="proc" ino= scontext=u:r:untrusted_app:s0 tcontext=u:r:init:s0 tclass=dir
[ 38.852856][UTC:-- ::()]type= audit(1388534712.319:): avc: denied { read } for pid= comm="mobile.avlenovo" name="status" dev="proc" ino= scontext=u:r:untrusted_app:s0 tcontext=u:r:init:s0 tclass=file
[ 38.873815][UTC:-- ::()]type= audit(1388534712.339:): avc: denied { open } for pid= comm="mobile.avlenovo" path="/proc/1/status" dev="proc" ino= scontext=u:r:untrusted_app:s0 tcontext=u:r:init:s0 tclass=file
[ 38.895925][UTC:-- ::()]type= audit(1388534712.369:): avc: denied { search } for pid= comm="mobile.avlenovo" name="" dev="proc" ino= scontext=u:r:untrusted_app:s0 tcontext=u:r:kernel:s0 tclass=dir
[ 38.916742][UTC:-- ::()]type= audit(1388534712.389:): avc: denied { read } for pid= comm="mobile.avlenovo" name="status" dev="proc" ino= scontext=u:r:untrusted_app:s0 tcontext=u:r:kernel:s0 tclass=file
[ 38.938252][UTC:-- ::()]type= audit(1388534712.409:): avc: denied { open } for pid= comm="mobile.avlenovo" path="/proc/2/status" dev="proc" ino= scontext=u:r:untrusted_app:s0 tcontext=u:r:kernel:s0 tclass=file
[ 38.999501][UTC:-- ::()]type= audit(1388534712.469:): avc: denied { search } for pid= comm="mobile.avlenovo" name="" dev="proc" ino= scontext=u:r:untrusted_app:s0 tcontext=u:r:ueventd:s0 tclass=dir
[ 39.020099][UTC:-- ::()]type= audit(1388534712.489:): avc: denied { read } for pid= comm="mobile.avlenovo" name="status" dev="proc" ino= scontext=u:r:untrusted_app:s0 tcontext=u:r:ueventd:s0 tclass=file
[ 39.041876][UTC:-- ::()]type= audit(1388534712.509:): avc: denied { open } for pid= comm="mobile.avlenovo" path="/proc/168/status" dev="proc" ino= scontext=u:r:untrusted_app:s0 tcontext=u:r:ueventd:s0 tclass=file
[ 39.069484][UTC:-- ::()]type= audit(1388534712.539:): avc: denied { search } for pid= comm="mobile.avlenovo" name="" dev="proc" ino= scontext=u:r:untrusted_app:s0 tcontext=u:r:healthd:s0 tclass=dir
[ 44.106057][UTC:-- ::()]msm_get_platform_subtype: Invalid hardware platform sub type for qrd found
[ 44.189154][UTC:-- ::()]msm_get_platform_subtype: Invalid hardware platform sub type for qrd found
[ 52.164414][UTC:-- ::()]audit_printk_skb: callbacks suppressed
[ 52.171666][UTC:-- ::()]type= audit(1388534725.629:): avc: denied { read write } for pid= comm="facebook.katana" name="kgsl-3d0" dev="tmpfs" ino= scontext=u:r:untrusted_app:s0 tcontext=u:object_r:device:s0 tclass=chr_file
[ 52.195009][UTC:-- ::()]type= audit(1388534725.669:): avc: denied { open } for pid= comm="facebook.katana" path="/dev/kgsl-3d0" dev="tmpfs" ino= scontext=u:r:untrusted_app:s0 tcontext=u:object_r:device:s0 tclass=chr_file
[ 52.218582][UTC:-- ::()]type= audit(1388534725.689:): avc: denied { ioctl } for pid= comm="facebook.katana" path="/dev/kgsl-3d0" dev="tmpfs" ino= scontext=u:r:untrusted_app:s0 tcontext=u:object_r:device:s0 tclass=chr_file
下边是先不插usb线开机,然后插上usb线,默认选择mtp,mass_storage,adb,之后手动在菜单里选择ptp,adb,再断开usb线的kernel log中与android.c相关的log,可以看到该文件中各个函数的调用顺序
[ 8.697614][UTC:-- ::()]init: Nathan init
[ 8.703776][UTC:-- ::()]android_probe: Nathan android_probe
[ 8.710094][UTC:-- ::()]android_create_device: Nathan android_create_device
[ 8.719760][UTC:-- ::()]android_bind: Nathan android_bind
[ 8.725612][UTC:-- ::()]cdev_to_android_dev: Nathan cdev_to_android_dev
[ 8.733409][UTC:-- ::()]android_init_functions: Nathan android_init_functions
[ 8.776743][UTC:-- ::()]cdev_to_android_dev: Nathan cdev_to_android_dev
[ 8.841933][UTC:-- ::()]init: Nathan init, after platform_driver_register
[ 16.453498][UTC:-- ::()]enable_store: Nathan enable_store buf:
[ 16.486965][UTC:-- ::()]functions_store: Nathan functions_store buf:mtp,mass_storage,adb
[ 16.497072][UTC:-- ::()]alloc_android_config: Nathan alloc_android_config
[ 16.516610][UTC:-- ::()]android_enable_function: Nathan android_enable_function
[ 16.526254][UTC:-- ::()]android_enable_function: Nathan android_enable_function
[ 16.534626][UTC:-- ::()]android_enable_function: Nathan android_enable_function
[ 16.543293][UTC:-- ::()]enable_store: Nathan enable_store buf:
[ 16.551511][UTC:-- ::()]android_disable: Nathan android_disable
[ 16.559386][UTC:-- ::()]android_enable: Nathan android_enable
[ 16.610168][UTC:-- ::()]android_enable: Nathan android_enable
[ 16.617627][UTC:-- ::()]cdev_to_android_dev: Nathan cdev_to_android_dev
[ 16.626806][UTC:-- ::()]android_bind_config: Nathan android_bind_config
[ 16.634709][UTC:-- ::()]android_bind_enabled_functions: Nathan android_bind_enabled_functions
[ 31.102589][UTC:-- ::()]state_show: Nathan state_show buf:
[ 61.115619][UTC:-- ::()]cdev_to_android_dev: Nathan cdev_to_android_dev
[ 61.123292][UTC:-- ::()]android_disconnect: Nathan android_disconnect
[ 61.132416][UTC:-- ::()]android_work: Nathan android_work
[ 61.218374][UTC:-- ::()]cdev_to_android_dev: Nathan cdev_to_android_dev
[ 61.226050][UTC:-- ::()]android_suspend: Nathan android_suspend
[ 61.234410][UTC:-- ::()]android_work: Nathan android_work
[ 61.875455][UTC:-- ::()]cdev_to_android_dev: Nathan cdev_to_android_dev
[ 61.883126][UTC:-- ::()]android_resume: Nathan android_resume
[ 61.890996][UTC:-- ::()]cdev_to_android_dev: Nathan cdev_to_android_dev
[ 61.899621][UTC:-- ::()]android_disconnect: Nathan android_disconnect
[ 61.908312][UTC:-- ::()]android_work: Nathan android_work
[ 61.947634][UTC:-- ::()]cdev_to_android_dev: Nathan cdev_to_android_dev
[ 61.955315][UTC:-- ::()]android_setup: Nathan android_setup
[ 61.963165][UTC:-- ::()]android_work: Nathan android_work
[ 61.970649][UTC:-- ::()]android_pm_qos_update_latency: Nathan android_pm_qos_update_latency
[ 61.980965][UTC:-- ::()]cdev_to_android_dev: Nathan cdev_to_android_dev
[ 61.989515][UTC:-- ::()]android_disconnect: Nathan android_disconnect
[ 61.998612][UTC:-- ::()]android_work: Nathan android_work
[ 62.005590][UTC:-- ::()]android_pm_qos_update_latency: Nathan android_pm_qos_update_latency
[ 62.071918][UTC:-- ::()]cdev_to_android_dev: Nathan cdev_to_android_dev
[ 62.079588][UTC:-- ::()]android_setup: Nathan android_setup
[ 62.087477][UTC:-- ::()]android_work: Nathan android_work
[ 62.094863][UTC:-- ::()]android_pm_qos_update_latency: Nathan android_pm_qos_update_latency
[ 62.105180][UTC:-- ::()]cdev_to_android_dev: Nathan cdev_to_android_dev
[ 62.113787][UTC:-- ::()]android_setup: Nathan android_setup
[ 62.123629][UTC:-- ::()]cdev_to_android_dev: Nathan cdev_to_android_dev
[ 62.131309][UTC:-- ::()]android_setup: Nathan android_setup
[ 62.142635][UTC:-- ::()]cdev_to_android_dev: Nathan cdev_to_android_dev
[ 62.150307][UTC:-- ::()]android_setup: Nathan android_setup
[ 62.160623][UTC:-- ::()]cdev_to_android_dev: Nathan cdev_to_android_dev
[ 62.168291][UTC:-- ::()]android_setup: Nathan android_setup
[ 62.179623][UTC:-- ::()]cdev_to_android_dev: Nathan cdev_to_android_dev
[ 62.187287][UTC:-- ::()]android_setup: Nathan android_setup
[ 62.197621][UTC:-- ::()]cdev_to_android_dev: Nathan cdev_to_android_dev
[ 62.205283][UTC:-- ::()]android_setup: Nathan android_setup
[ 62.215623][UTC:-- ::()]cdev_to_android_dev: Nathan cdev_to_android_dev
[ 62.223285][UTC:-- ::()]android_setup: Nathan android_setup
[ 62.233622][UTC:-- ::()]cdev_to_android_dev: Nathan cdev_to_android_dev
[ 62.241285][UTC:-- ::()]android_setup: Nathan android_setup
[ 62.253626][UTC:-- ::()]cdev_to_android_dev: Nathan cdev_to_android_dev
[ 62.261298][UTC:-- ::()]android_setup: Nathan android_setup
[ 62.273628][UTC:-- ::()]cdev_to_android_dev: Nathan cdev_to_android_dev
[ 62.281303][UTC:-- ::()]android_setup: Nathan android_setup
[ 62.291629][UTC:-- ::()]cdev_to_android_dev: Nathan cdev_to_android_dev
[ 62.299306][UTC:-- ::()]android_setup: Nathan android_setup
[ 62.312637][UTC:-- ::()]cdev_to_android_dev: Nathan cdev_to_android_dev
[ 62.320317][UTC:-- ::()]android_setup: Nathan android_setup
[ 62.330627][UTC:-- ::()]cdev_to_android_dev: Nathan cdev_to_android_dev
[ 62.338297][UTC:-- ::()]android_setup: Nathan android_setup
[ 62.349636][UTC:-- ::()]cdev_to_android_dev: Nathan cdev_to_android_dev
[ 62.357310][UTC:-- ::()]android_setup: Nathan android_setup
[ 62.369634][UTC:-- ::()]cdev_to_android_dev: Nathan cdev_to_android_dev
[ 62.377308][UTC:-- ::()]android_setup: Nathan android_setup
[ 62.385484][UTC:-- ::()]android_work: Nathan android_work
[ 62.510649][UTC:-- ::()]cdev_to_android_dev: Nathan cdev_to_android_dev
[ 62.518335][UTC:-- ::()]android_setup: Nathan android_setup
[ 62.528642][UTC:-- ::()]cdev_to_android_dev: Nathan cdev_to_android_dev
[ 62.536335][UTC:-- ::()]android_setup: Nathan android_setup
[ 62.550849][UTC:-- ::()]cdev_to_android_dev: Nathan cdev_to_android_dev
[ 62.558682][UTC:-- ::()]android_setup: Nathan android_setup
[ 62.580637][UTC:-- ::()]cdev_to_android_dev: Nathan cdev_to_android_dev
[ 62.588312][UTC:-- ::()]android_setup: Nathan android_setup
[ 62.602633][UTC:-- ::()]cdev_to_android_dev: Nathan cdev_to_android_dev
[ 62.610302][UTC:-- ::()]android_setup: Nathan android_setup
[ 62.628636][UTC:-- ::()]cdev_to_android_dev: Nathan cdev_to_android_dev
[ 62.636305][UTC:-- ::()]android_setup: Nathan android_setup
[ 62.646636][UTC:-- ::()]cdev_to_android_dev: Nathan cdev_to_android_dev
[ 62.654312][UTC:-- ::()]android_setup: Nathan android_setup
[ 62.664637][UTC:-- ::()]cdev_to_android_dev: Nathan cdev_to_android_dev
[ 62.672308][UTC:-- ::()]android_setup: Nathan android_setup
[ 62.682633][UTC:-- ::()]cdev_to_android_dev: Nathan cdev_to_android_dev
[ 62.690300][UTC:-- ::()]android_setup: Nathan android_setup
[ 62.734638][UTC:-- ::()]cdev_to_android_dev: Nathan cdev_to_android_dev
[ 62.742309][UTC:-- ::()]android_setup: Nathan android_setup
[ 95.075531][UTC:-- ::()]enable_store: Nathan enable_store buf:
[ 95.082528][UTC:-- ::()]android_disable: Nathan android_disable
[ 95.108020][UTC:-- ::()]cdev_to_android_dev: Nathan cdev_to_android_dev
[ 95.125073][UTC:-- ::()]android_unbind_config: Nathan android_unbind_config
[ 95.140799][UTC:-- ::()]android_unbind_enabled_functions: Nathan android_unbind_enabled_functions
[ 95.202111][UTC:-- ::()]enable_store: Nathan enable_store buf:
[ 95.217817][UTC:-- ::()]functions_store: Nathan functions_store buf:ptp,adb
[ 95.226655][UTC:-- ::()]android_enable_function: Nathan android_enable_function
[ 95.235859][UTC:-- ::()]android_enable_function: Nathan android_enable_function
[ 95.245337][UTC:-- ::()]enable_store: Nathan enable_store buf:
[ 95.253184][UTC:-- ::()]android_disable: Nathan android_disable
[ 95.261199][UTC:-- ::()]android_enable: Nathan android_enable
[ 95.272351][UTC:-- ::()]android_enable: Nathan android_enable
[ 95.279278][UTC:-- ::()]cdev_to_android_dev: Nathan cdev_to_android_dev
[ 95.287875][UTC:-- ::()]android_bind_config: Nathan android_bind_config
[ 95.296536][UTC:-- ::()]android_bind_enabled_functions: Nathan android_bind_enabled_functions
[ 95.310391][UTC:-- ::()]cdev_to_android_dev: Nathan cdev_to_android_dev
[ 95.318057][UTC:-- ::()]android_suspend: Nathan android_suspend
[ 95.326126][UTC:-- ::()]android_work: Nathan android_work
[ 96.314241][UTC:-- ::()]cdev_to_android_dev: Nathan cdev_to_android_dev
[ 96.321915][UTC:-- ::()]android_resume: Nathan android_resume
[ 96.329777][UTC:-- ::()]cdev_to_android_dev: Nathan cdev_to_android_dev
[ 96.338404][UTC:-- ::()]android_disconnect: Nathan android_disconnect
[ 96.346977][UTC:-- ::()]android_work: Nathan android_work
[ 96.354590][UTC:-- ::()]android_pm_qos_update_latency: Nathan android_pm_qos_update_latency
[ 96.489429][UTC:-- ::()]cdev_to_android_dev: Nathan cdev_to_android_dev
[ 96.497110][UTC:-- ::()]android_setup: Nathan android_setup
[ 96.504935][UTC:-- ::()]android_work: Nathan android_work
[ 96.512238][UTC:-- ::()]cdev_to_android_dev: Nathan cdev_to_android_dev
[ 96.520889][UTC:-- ::()]android_disconnect: Nathan android_disconnect
[ 96.532823][UTC:-- ::()]android_work: Nathan android_work
[ 96.712027][UTC:-- ::()]cdev_to_android_dev: Nathan cdev_to_android_dev
[ 96.719712][UTC:-- ::()]android_setup: Nathan android_setup
[ 96.727499][UTC:-- ::()]android_work: Nathan android_work
[ 96.734884][UTC:-- ::()]cdev_to_android_dev: Nathan cdev_to_android_dev
[ 96.743493][UTC:-- ::()]android_setup: Nathan android_setup
[ 96.751415][UTC:-- ::()]android_pm_qos_update_latency: Nathan android_pm_qos_update_latency
[ 96.761595][UTC:-- ::()]cdev_to_android_dev: Nathan cdev_to_android_dev
[ 96.770228][UTC:-- ::()]android_setup: Nathan android_setup
[ 96.778132][UTC:-- ::()]cdev_to_android_dev: Nathan cdev_to_android_dev
[ 96.786550][UTC:-- ::()]android_setup: Nathan android_setup
[ 96.794408][UTC:-- ::()]cdev_to_android_dev: Nathan cdev_to_android_dev
[ 96.802869][UTC:-- ::()]android_setup: Nathan android_setup
[ 96.810909][UTC:-- ::()]cdev_to_android_dev: Nathan cdev_to_android_dev
[ 96.819188][UTC:-- ::()]android_setup: Nathan android_setup
[ 96.826933][UTC:-- ::()]cdev_to_android_dev: Nathan cdev_to_android_dev
[ 96.835509][UTC:-- ::()]android_setup: Nathan android_setup
[ 96.843258][UTC:-- ::()]cdev_to_android_dev: Nathan cdev_to_android_dev
[ 96.851827][UTC:-- ::()]android_setup: Nathan android_setup
[ 96.859564][UTC:-- ::()]cdev_to_android_dev: Nathan cdev_to_android_dev
[ 96.868147][UTC:-- ::()]android_setup: Nathan android_setup
[ 96.875883][UTC:-- ::()]cdev_to_android_dev: Nathan cdev_to_android_dev
[ 96.884466][UTC:-- ::()]android_setup: Nathan android_setup
[ 96.892213][UTC:-- ::()]cdev_to_android_dev: Nathan cdev_to_android_dev
[ 96.900785][UTC:-- ::()]android_setup: Nathan android_setup
[ 96.908524][UTC:-- ::()]cdev_to_android_dev: Nathan cdev_to_android_dev
[ 96.917105][UTC:-- ::()]android_setup: Nathan android_setup
[ 96.924857][UTC:-- ::()]cdev_to_android_dev: Nathan cdev_to_android_dev
[ 96.933425][UTC:-- ::()]android_setup: Nathan android_setup
[ 96.941175][UTC:-- ::()]cdev_to_android_dev: Nathan cdev_to_android_dev
[ 96.949744][UTC:-- ::()]android_setup: Nathan android_setup
[ 96.957531][UTC:-- ::()]cdev_to_android_dev: Nathan cdev_to_android_dev
[ 96.966066][UTC:-- ::()]android_setup: Nathan android_setup
[ 96.973865][UTC:-- ::()]cdev_to_android_dev: Nathan cdev_to_android_dev
[ 96.982385][UTC:-- ::()]android_setup: Nathan android_setup
[ 96.990182][UTC:-- ::()]cdev_to_android_dev: Nathan cdev_to_android_dev
[ 96.998704][UTC:-- ::()]android_setup: Nathan android_setup
[ 97.006451][UTC:-- ::()]cdev_to_android_dev: Nathan cdev_to_android_dev
[ 97.015023][UTC:-- ::()]android_setup: Nathan android_setup
[ 97.023035][UTC:-- ::()]cdev_to_android_dev: Nathan cdev_to_android_dev
[ 97.031343][UTC:-- ::()]android_setup: Nathan android_setup
[ 97.045338][UTC:-- ::()]android_work: Nathan android_work
[ 97.127823][UTC:-- ::()]cdev_to_android_dev: Nathan cdev_to_android_dev
[ 97.135509][UTC:-- ::()]android_setup: Nathan android_setup
[ 97.143391][UTC:-- ::()]cdev_to_android_dev: Nathan cdev_to_android_dev
[ 97.151823][UTC:-- ::()]android_setup: Nathan android_setup
[ 97.159766][UTC:-- ::()]cdev_to_android_dev: Nathan cdev_to_android_dev
[ 97.168143][UTC:-- ::()]android_setup: Nathan android_setup
[ 97.176036][UTC:-- ::()]cdev_to_android_dev: Nathan cdev_to_android_dev
[ 97.184466][UTC:-- ::()]android_setup: Nathan android_setup
[ 97.234480][UTC:-- ::()]cdev_to_android_dev: Nathan cdev_to_android_dev
[ 97.242151][UTC:-- ::()]android_setup: Nathan android_setup
[ 123.795798][UTC:-- ::()]cdev_to_android_dev: Nathan cdev_to_android_dev
[ 123.803482][UTC:-- ::()]android_suspend: Nathan android_suspend
[ 123.811612][UTC:-- ::()]android_work: Nathan android_work
[ 123.819135][UTC:-- ::()]android_pm_qos_update_latency: Nathan android_pm_qos_update_latency
[ 123.993190][UTC:-- ::()]cdev_to_android_dev: Nathan cdev_to_android_dev
[ 123.993272][UTC:-- ::()]android_disable: Nathan android_disable
[ 124.008843][UTC:-- ::()]android_disconnect: Nathan android_disconnect
[ 124.018425][UTC:-- ::()]android_work: Nathan android_work
[ 124.019074][UTC:-- ::()]cdev_to_android_dev: Nathan cdev_to_android_dev
[ 124.019077][UTC:-- ::()]android_unbind_config: Nathan android_unbind_config
[ 124.019080][UTC:-- ::()]android_unbind_enabled_functions: Nathan android_unbind_enabled_functions
[ 124.053933][UTC:-- ::()]android_enable: Nathan android_enable
[ 124.061571][UTC:-- ::()]cdev_to_android_dev: Nathan cdev_to_android_dev
[ 124.061745][UTC:-- ::()]android_pm_qos_update_latency: Nathan android_pm_qos_update_latency
[ 124.080709][UTC:-- ::()]android_bind_config: Nathan android_bind_config
[ 124.089147][UTC:-- ::()]android_bind_enabled_functions: Nathan android_bind_enabled_functions
完整的kernel log如下
[ 7.043380][UTC:-- ::()] Actions configured
[ 7.049250][UTC:-- ::()]Netfilter messages via NETLINK v0..
[ 7.056495][UTC:-- ::()]nf_conntrack version 0.5. ( buckets, max)
[ 7.068174][UTC:-- ::()]ctnetlink v0.: registering with nfnetlink.
[ 7.076474][UTC:-- ::()]sysctl could not get directory: /net//netfilter -20
[ 7.083769][UTC:-- ::()]CPU: PID: Comm: swapper/ Not tainted 3.10.-g6283d37-dirty #
[ 7.093561][UTC:-- ::()][<c00158b0>] (unwind_backtrace+0x0/0x128) from [<c0012da8>] (show_stack+0x20/0x24)
[ 7.104498][UTC:-- ::()][<c0012da8>] (show_stack+0x20/0x24) from [<c09155bc>] (dump_stack+0x20/0x28)
[ 7.114887][UTC:-- ::()][<c09155bc>] (dump_stack+0x20/0x28) from [<c016aef8>] (__register_sysctl_table+0x444/0x490)
[ 7.126607][UTC:-- ::()][<c016aef8>] (__register_sysctl_table+0x444/0x490) from [<c016b228>] (__register_sysctl_paths+0xe4/0x190)
[ 7.139539][UTC:-- ::()][<c016b228>] (__register_sysctl_paths+0xe4/0x190) from [<c016b2fc>] (register_sysctl_paths+0x28/0x30)
[ 7.152121][UTC:-- ::()][<c016b2fc>] (register_sysctl_paths+0x28/0x30) from [<c0dda9f0>] (nf_conntrack_sip_init+0x1c/0x274)
[ 7.164530][UTC:-- ::()][<c0dda9f0>] (nf_conntrack_sip_init+0x1c/0x274) from [<c00088dc>] (do_one_initcall+0xe4/0x198)
[ 7.176509][UTC:-- ::()][<c00088dc>] (do_one_initcall+0xe4/0x198) from [<c0d97c84>] (kernel_init_freeable+0x104/0x1d0)
[ 7.188489][UTC:-- ::()][<c0d97c84>] (kernel_init_freeable+0x104/0x1d0) from [<c090a36c>] (kernel_init+0x1c/0xf4)
[ 7.200035][UTC:-- ::()][<c090a36c>] (kernel_init+0x1c/0xf4) from [<c000eb98>] (ret_from_fork+0x14/0x20)
[ 7.211308][UTC:-- ::()]NF_TPROXY: Transparent proxy support initialized, version 4.1.
[ 7.220044][UTC:-- ::()]NF_TPROXY: Copyright (c) - BalaBit IT Ltd.
[ 7.229936][UTC:-- ::()]xt_time: kernel timezone is -
[ 7.237393][UTC:-- ::()]ip_tables: (C) - Netfilter Core Team
[ 7.245317][UTC:-- ::()]arp_tables: (C) David S. Miller
[ 7.251652][UTC:-- ::()]TCP: cubic registered
[ 7.257066][UTC:-- ::()]Initializing XFRM netlink socket
[ 7.267703][UTC:-- ::()]NET: Registered protocol family
[ 7.286968][UTC:-- ::()]mip6: Mobile IPv6
[ 7.291485][UTC:-- ::()]ip6_tables: (C) - Netfilter Core Team
[ 7.300265][UTC:-- ::()]sit: IPv6 over IPv4 tunneling driver
[ 7.308997][UTC:-- ::()]NET: Registered protocol family
[ 7.315070][UTC:-- ::()]NET: Registered protocol family
[ 7.321881][UTC:-- ::()]Bridge firewalling registered
[ 7.328084][UTC:-- ::()]Ebtables v2. registered
[ 7.334953][UTC:-- ::()]Bluetooth: RFCOMM TTY layer initialized
[ 7.341337][UTC:-- ::()]Bluetooth: RFCOMM socket layer initialized
[ 7.348786][UTC:-- ::()]Bluetooth: RFCOMM ver 1.11
[ 7.354857][UTC:-- ::()]Bluetooth: BNEP (Ethernet Emulation) ver 1.3
[ 7.362401][UTC:-- ::()]Bluetooth: BNEP filters: protocol multicast
[ 7.370091][UTC:-- ::()]Bluetooth: BNEP socket layer initialized
[ 7.377339][UTC:-- ::()]Bluetooth: HIDP (Human Interface Emulation) ver 1.2
[ 7.385627][UTC:-- ::()]Bluetooth: HIDP socket layer initialized
[ 7.393019][UTC:-- ::()]l2tp_core: L2TP core driver, V2.
[ 7.399629][UTC:-- ::()]l2tp_ppp: PPPoL2TP kernel driver, V2.
[ 7.406675][UTC:-- ::()]l2tp_ip: L2TP IP encapsulation support (L2TPv3)
[ 7.414652][UTC:-- ::()]l2tp_netlink: L2TP netlink interface
[ 7.421597][UTC:-- ::()]l2tp_eth: L2TP ethernet pseudowire support (L2TPv3)
[ 7.429986][UTC:-- ::()]l2tp_debugfs: L2TP debugfs support
[ 7.436594][UTC:-- ::()]l2tp_ip6: L2TP IP encapsulation support for IPv6 (L2TPv3)
[ 7.448343][UTC:-- ::()]NET: Registered protocol family
[ 7.466399][UTC:-- ::()]XXX::restartlevel system
[ 7.477632][UTC:-- ::()]XXX::restartlevel system
[ 7.496194][UTC:-- ::()]of_batterydata_read_data: wingtech_guangyu_4v35_2300mah loaded
[ 7.527886][UTC:-- ::()]BMS: bms_load_hw_defaults: BMS_EN= Sample_Interval-S1=[]S2=[] Sample_Count-S1=[]S2=[] Fifo_Length-S1=[]S2=[] FSM_state=
[ 7.556444][UTC:-- ::()]BMS: calculate_initial_soc: warm_reset= est_ocv= shutdown_soc_invalid= shutdown_ocv= shutdown_soc= last_soc=- calculated_soc= last_ocv_uv=
[ 7.574437][UTC:-- ::()]BMS: check_eoc_condition: Unable to read battery status
[ 7.598970][UTC:-- ::()]BMS: qpnp_vm_bms_probe: probe success: soc= vbatt= ocv= warm_reset=
[ 7.736621][UTC:-- ::()]XXX::reg1010=0x0,reg1310=0x0,reg1309=0x0,plugged_in=,reg1049=0x90,reg1009=0x0
[ 7.758838][UTC:-- ::()]battery powe supply creat attr file!!
[ 7.765200][UTC:-- ::()]XXX::reg1010=0x0,reg1310=0x0,reg1309=0x0,plugged_in=,reg1049=0x90,reg1009=0x0
[ 7.775966][UTC:-- ::()]XXX::reg1010=0x0,reg1310=0x0,reg1309=0x0,plugged_in=,reg1049=0x90,reg1009=0x0
[ 7.782855][UTC:-- ::()]msm_otg 78d9000.usb: USB in low power mode
[ 7.789736][UTC:-- ::()]XXX::reg1010=0x0,reg1310=0x0,reg1309=0x0,plugged_in=,reg1049=0x90,reg1009=0x0
[ 7.792724][UTC:-- ::()]CHG: qpnp_lbc_probe: Probe chg_dis= bpd= usb= batt_pres= batt_volt= soc=
[ 7.793094][UTC:-- ::()]spmi wcd-spmi-ee363a00: Driver wcd-spmi-core requests probe deferral
[ 7.793395][UTC:-- ::()]spmi wcd-spmi-ee363c00: Driver wcd-spmi-core requests probe deferral
[ 7.835608][UTC:-- ::()]XXX::reg1010=0x0,reg1310=0x0,reg1309=0x0,plugged_in=,reg1049=0x90,reg1009=0x0
[ 7.849180][UTC:-- ::()]XXX::reg1010=0x0,reg1310=0x0,reg1309=0x0,plugged_in=,reg1049=0x90,reg1009=0x0
[ 7.915707][UTC:-- ::()]msm8x16-asoc-wcd msm-snd-card.: msm8x16_asoc_machine_probe: missing qcom,msm-snd-card-id in dt node
[ 7.927428][UTC:-- ::()]msm8x16-asoc-wcd msm-snd-card.: default codec configured
[ 7.938594][UTC:-- ::()]msm8x16-asoc-wcd msm-snd-card.: ASoC: CODEC msm8x16_wcd_codec not registered
[ 7.948413][UTC:-- ::()]msm8x16-asoc-wcd msm-snd-card.: snd_soc_register_card failed (-)
[ 7.958526][UTC:-- ::()]platform msm-snd-card.: Driver msm8x16-asoc-wcd requests probe deferral
[ 7.968454][UTC:-- ::()]spmi wcd-spmi-ee363a00: Driver wcd-spmi-core requests probe deferral
[ 7.978088][UTC:-- ::()]spmi wcd-spmi-ee363c00: Driver wcd-spmi-core requests probe deferral
[ 7.984581][UTC:-- ::()]XXX::reg1010=0x0,reg1310=0x0,reg1309=0x0,plugged_in=,reg1049=0x90,reg1009=0x0
[ 7.984751][UTC:-- ::()]XXX::reg1010=0x0,reg1310=0x0,reg1309=0x0,plugged_in=,reg1049=0x90,reg1009=0x0
[ 7.985076][UTC:-- ::()]XXX::reg1010=0x0,reg1310=0x0,reg1309=0x0,plugged_in=,reg1049=0x90,reg1009=0x0
[ 7.988462][UTC:-- ::()]XXX::reg1010=0x0,reg1310=0x0,reg1309=0x0,plugged_in=,reg1049=0x90,reg1009=0x0
[ 8.033278][UTC:-- ::()]VFP support v0.: implementor architecture part variant rev
[ 8.042370][UTC:-- ::()]Registering SWP/SWPB emulation handler
[ 8.625703][UTC:-- ::()]msm8x16-asoc-wcd msm-snd-card.: msm8x16_asoc_machine_probe: missing qcom,msm-snd-card-id in dt node
[ 8.637415][UTC:-- ::()]msm8x16-asoc-wcd msm-snd-card.: default codec configured
[ 8.648589][UTC:-- ::()]msm8x16-asoc-wcd msm-snd-card.: ASoC: CODEC msm8x16_wcd_codec not registered
[ 8.658407][UTC:-- ::()]msm8x16-asoc-wcd msm-snd-card.: snd_soc_register_card failed (-)
[ 8.668586][UTC:-- ::()]platform msm-snd-card.: Driver msm8x16-asoc-wcd requests probe deferral
[ 8.678470][UTC:-- ::()]spmi wcd-spmi-ee363a00: Driver wcd-spmi-core requests probe deferral
[ 8.688075][UTC:-- ::()]spmi wcd-spmi-ee363c00: Driver wcd-spmi-core requests probe deferral
[ 8.697614][UTC:-- ::()]init: Nathan init
[ 8.703776][UTC:-- ::()]android_probe: Nathan android_probe
[ 8.710094][UTC:-- ::()]android_create_device: Nathan android_create_device
[ 8.719760][UTC:-- ::()]android_bind: Nathan android_bind
[ 8.725612][UTC:-- ::()]cdev_to_android_dev: Nathan cdev_to_android_dev
[ 8.733409][UTC:-- ::()]android_init_functions: Nathan android_init_functions
[ 8.742549][UTC:-- ::()]file system registered
[ 8.748017][UTC:-- ::()]mbim_init: initialize instances
[ 8.754749][UTC:-- ::()]mbim_init: Initialized ports
[ 8.768278][UTC:-- ::()]rndis_qc_init: initialize rndis QC instance
[ 8.776743][UTC:-- ::()]cdev_to_android_dev: Nathan cdev_to_android_dev
[ 8.785469][UTC:-- ::()]android_usb gadget: Mass Storage Function, version: //
[ 8.793737][UTC:-- ::()]android_usb gadget: Number of LUNs=
[ 8.800785][UTC:-- ::()] lun0: LUN: read only CD-ROM file: (no medium)
[ 8.808591][UTC:-- ::()] lun1: LUN: removable file: (no medium)
[ 8.815841][UTC:-- ::()] lun2: LUN: removable file: (no medium)
[ 8.825081][UTC:-- ::()]android_usb gadget: android_usb ready
[ 8.831196][UTC:-- ::()]msm_hsusb msm_hsusb: [ci13xxx_start] hw_ep_max =
[ 8.841933][UTC:-- ::()]init: Nathan init, after platform_driver_register
[ 8.842066][UTC:-- ::()]msm8x16-asoc-wcd msm-snd-card.: msm8x16_asoc_machine_probe: missing qcom,msm-snd-card-id in dt node
[ 8.842097][UTC:-- ::()]msm8x16-asoc-wcd msm-snd-card.: default codec configured
[ 8.844577][UTC:-- ::()]msm8x16-asoc-wcd msm-snd-card.: ASoC: CODEC msm8x16_wcd_codec not registered
[ 8.844725][UTC:-- ::()]msm8x16-asoc-wcd msm-snd-card.: snd_soc_register_card failed (-)
[ 8.845283][UTC:-- ::()]platform msm-snd-card.: Driver msm8x16-asoc-wcd requests probe deferral
[ 8.845666][UTC:-- ::()]spmi wcd-spmi-ee363a00: Driver wcd-spmi-core requests probe deferral
[ 8.845960][UTC:-- ::()]spmi wcd-spmi-ee363c00: Driver wcd-spmi-core requests probe deferral
[ 8.925499][UTC:-- ::()]input: gpio-keys as /devices/soc./gpio_keys./input/input5
[ 8.935881][UTC:-- ::()]qcom,qpnp-rtc qpnp-rtc-ee362800: setting system clock to -- :: UTC ()
[ 8.936689][UTC:-- ::()]msm8x16-asoc-wcd msm-snd-card.: msm8x16_asoc_machine_probe: missing qcom,msm-snd-card-id in dt node
[ 8.936721][UTC:-- ::()]msm8x16-asoc-wcd msm-snd-card.: default codec configured
[ 8.938962][UTC:-- ::()]msm8x16-asoc-wcd msm-snd-card.: ASoC: CODEC msm8x16_wcd_codec not registered
[ 8.939109][UTC:-- ::()]msm8x16-asoc-wcd msm-snd-card.: snd_soc_register_card failed (-)
[ 8.939645][UTC:-- ::()]platform msm-snd-card.: Driver msm8x16-asoc-wcd requests probe deferral
[ 8.940032][UTC:-- ::()]spmi wcd-spmi-ee363a00: Driver wcd-spmi-core requests probe deferral
[ 8.940325][UTC:-- ::()]spmi wcd-spmi-ee363c00: Driver wcd-spmi-core requests probe deferral
[ 9.021303][UTC:-- ::()]battery_current_limit qcom,bcl.: battery_current_limit:probe_btm_properties Error reading key:qcom,ibat-monitor. ret = -
[ 9.037923][UTC:-- ::()]msm8x16-asoc-wcd msm-snd-card.: msm8x16_asoc_machine_probe: missing qcom,msm-snd-card-id in dt node
[ 9.046845][UTC:-- ::()]msm_thermal:interrupt_mode_init Interrupt mode init
[ 9.046880][UTC:-- ::()]msm_thermal:disable_msm_thermal Max frequency reset for CPU0
[ 9.047676][UTC:-- ::()]msm_thermal:disable_msm_thermal Max frequency reset for CPU1
[ 9.047687][UTC:-- ::()]msm_thermal:disable_msm_thermal Max frequency reset for CPU2
[ 9.047695][UTC:-- ::()]msm_thermal:disable_msm_thermal Max frequency reset for CPU3
[ 9.095453][UTC:-- ::()]msm8x16-asoc-wcd msm-snd-card.: default codec configured
[ 9.104989][UTC:-- ::()]msm8x16-asoc-wcd msm-snd-card.: ASoC: CODEC msm8x16_wcd_codec not registered
[ 9.115267][UTC:-- ::()]msm8x16-asoc-wcd msm-snd-card.: snd_soc_register_card failed (-)
[ 9.116749][UTC:-- ::()]led_gpio_flash_probe:probe successfully!
[ 9.119670][UTC:-- ::()]qcom,cc-debug- .qcom,cc-debug: Registered Debug Mux successfully
[ 9.120479][UTC:-- ::()]clock_late_init: Removing enables held for handed-off clocks
[ 9.123974][UTC:-- ::()]ALSA device list:
[ 9.123977][UTC:-- ::()] No soundcards found.
[ 9.164347][UTC:-- ::()]platform msm-snd-card.: Driver msm8x16-asoc-wcd requests prob錥 9.174607][UTC:-- ::()]spmi wcd-spmi-ee363a00: Driver wcd-spmi-core requests probe deferral
[ 9.176272][UTC:-- ::()]Freeing unused kernel memory: 864K (c0d97000 - c0e6f000)
[ 9.192632][UTC:-- ::()]spmi wcd-spmi-ee363c00: Driver wcd-spmi-core requests probe deferral
[ 9.203067][UTC:-- ::()]msm8x16-asoc-wcd msm-snd-card.: msm8x16_asoc_machine_probe: missing qcom,msm-snd-card-id in dt node
[ 9.215302][UTC:-- ::()]msm8x16-asoc-wcd msm-snd-card.: default codec configured
[ 9.224746][UTC:-- ::()]msm8x16-asoc-wcd msm-snd-card.: ASoC: CODEC msm8x16_wcd_codec not registered
[ 9.235110][UTC:-- ::()]msm8x16-asoc-wcd msm-snd-card.: snd_soc_register_card failed (-)
[ 9.245152][UTC:-- ::()]platform msm-snd-card.: Driver msm8x16-asoc-wcd requests probe deferral
[ 9.273972][UTC:-- ::()]SELinux: Permission attach_queue in class tun_socket not defined in policy.
[ 9.283696][UTC:-- ::()]SELinux: the above unknown classes and permissions will be denied
[ 9.553620][UTC:-- ::()]type= audit(1859.099:): policy loaded auid= ses=
[ 9.563384][UTC:-- ::()]SELinux: Loaded policy from /sepolicy
[ 9.572878][UTC:-- ::()]type= audit(1859.129:): enforcing= old_enforcing= auid= ses=
[ 13.944148][UTC:-- ::()]init: /init.qcom.rc: : user option requires a user id
[ 13.955599][UTC:-- ::()]init (): /proc//oom_adj is deprecated, please use /proc//oom_score_adj instead.
[ 13.968645][UTC:-- ::()]init: invalid uid 'fm_radio'
[ 13.985831][UTC:-- ::()]XXX::reg1010=0x0,reg1310=0x0,reg1309=0x0,plugged_in=,reg1049=0x90,reg1009=0x0
[ 13.998561][UTC:-- ::()]XXX::reg1010=0x0,reg1310=0x0,reg1309=0x0,plugged_in=,reg1049=0x90,reg1009=0x0
[ 14.453737][UTC:-- ::()]init: cannot open '/initlogo.rle'
[ 14.470737][UTC:-- ::()]iSerial_store: serial number is feb1dcc4, uinque_serial_string is feb1dcc4
[ 14.546858][UTC:-- ::()]EXT4-fs (mmcblk0p23): mounted filesystem with ordered data mode. Opts: barrier=,discard
[ 14.558847][UTC:-- ::()]EXT4-fs (mmcblk0p30): Ignoring removed nomblk_io_submit option
[ 14.784660][UTC:-- ::()]EXT4-fs (mmcblk0p30): orphan inodes deleted
[ 14.791631][UTC:-- ::()]EXT4-fs (mmcblk0p30): recovery complete
[ 14.805456][UTC:-- ::()]EXT4-fs (mmcblk0p30): mounted filesystem with ordered data mode. Opts: nomblk_io_submit,errors=remount-ro
[ 14.835774][UTC:-- ::()]fs_mgr: Running /system/bin/e2fsck on /dev/block/bootdevice/by-name/userdata
[ 14.879435][UTC:-- ::()]e2fsck () used greatest stack depth: bytes left
[ 14.887374][UTC:-- ::()]e2fsck: e2fsck 1.41. (-Dec-)
[ 14.894691][UTC:-- ::()]e2fsck: /dev/block/bootdevice/by-name/userdata: clean, / files, / blocks
[ 14.911866][UTC:-- ::()]EXT4-fs (mmcblk0p30): mounted filesystem with ordered data mode. Opts: barrier=,noauto_da_alloc,discard
[ 14.924403][UTC:-- ::()]init () used greatest stack depth: bytes left
[ 14.941222][UTC:-- ::()]EXT4-fs (mmcblk0p25): recovery complete
[ 14.948341][UTC:-- ::()]EXT4-fs (mmcblk0p25): mounted filesystem with ordered data mode. Opts: barrier=
[ 15.014850][UTC:-- ::()]init: Detected MSM SOC ID= SOC VER= BOARD TYPE=QRD
[ 15.023340][UTC:-- ::()]init: failed to open '/sys/class/graphics/fb2/msm_fb_type'
[ 15.041778][UTC:-- ::()]init: property 'persist.sys.ssr.enable_debug' doesn't exist while expanding '${persist.sys.ssr.enable_debug}'
[ 15.054398][UTC:-- ::()]init: cannot expand '${persist.sys.ssr.enable_debug}' while writing to '/sys/module/subsystem_restart/parameters/enable_debug'
[ 15.069601][UTC:-- ::()]init: property 'persist.sys.mba_boot_timeout' doesn't exist while expanding '${persist.sys.mba_boot_timeout}'
[ 15.082895][UTC:-- ::()]init: cannot expand '${persist.sys.mba_boot_timeout}' while writing to '/sys/module/pil_msa/parameters/pbl_mba_boot_timeout_ms'
[ 15.098047][UTC:-- ::()]init: property 'persist.sys.modem_auth_timeout' doesn't exist while expanding '${persist.sys.modem_auth_timeout}'
[ 15.111967][UTC:-- ::()]init: cannot expand '${persist.sys.modem_auth_timeout}' while writing to '/sys/module/pil_msa/parameters/modem_auth_timeout_ms'
[ 15.127022][UTC:-- ::()]init: property 'persist.sys.pil_proxy_timeout' doesn't exist while expanding '${persist.sys.pil_proxy_timeout}'
[ 15.140812][UTC:-- ::()]init: cannot expand '${persist.sys.pil_proxy_timeout}' while writing to '/sys/module/peripheral_loader/parameters/proxy_timeout_ms'
[ 15.159600][UTC:-- ::()]pil-q6v5-mss .qcom,mss: modem: loading from 0x86800000 to 0x8b900000
[ 15.217252][UTC:-- ::()]pil: MBA boot done
[ 15.854757][UTC:-- ::()]pil-q6v5-mss .qcom,mss: modem: Brought out of reset
[ 15.961096][UTC:-- ::()]pil-q6v5-mss .qcom,mss: modem: Power/Clock ready interrupt received
[ 15.961122][UTC:-- ::()]pil-q6v5-mss .qcom,mss: Subsystem error monitoring/handling services are up
[ 15.961556][UTC:-- ::()]spmi wcd-spmi-ee363a00: Driver wcd-spmi-core requests probe deferral
[ 15.962115][UTC:-- ::()]msm8x16-asoc-wcd msm-snd-card.: msm8x16_asoc_machine_probe: missing qcom,msm-snd-card-id in dt node
[ 15.962121][UTC:-- ::()]msm8x16-asoc-wcd msm-snd-card.: default codec configured
[ 15.962589][UTC:-- ::()]msm8x16-asoc-wcd msm-snd-card.: ASoC: CODEC msm8x16_wcd_codec not registered
[ 15.962620][UTC:-- ::()]msm8x16-asoc-wcd msm-snd-card.: snd_soc_register_card failed (-)
[ 15.962721][UTC:-- ::()]platform msm-snd-card.: Driver msm8x16-asoc-wcd requests probe deferral
[ 15.964845][UTC:-- ::()]msm8x16-asoc-wcd msm-snd-card.: msm8x16_asoc_machine_probe: missing qcom,msm-snd-card-id in dt node
[ 15.964851][UTC:-- ::()]msm8x16-asoc-wcd msm-snd-card.: default codec configured
[ 15.975265][UTC:-- ::()]msm-pcm-routing msm-pcm-routing: ASoC: no dapm match for VOICE2_STUB_DL --> Voice2 Stub --> INTERNAL_BT_SCO_RX_Voice Mixer
[ 15.975272][UTC:-- ::()]msm-pcm-routing msm-pcm-routing: ASoC: Failed to add route VOICE2_STUB_DL -> Voice2 Stub -> INTERNAL_BT_SCO_RX_Voice Mixer
[ 15.989739][UTC:-- ::()]msm-pcm-routing msm-pcm-routing: ASoC: mux SLIM_0_RX AANC MUX has no paths
[ 15.992101][UTC:-- ::()]wcd-spmi-core msm8x16_wcd_codec: ASoC: mux RX3 MIX1 INP3 has no paths
[ 15.992213][UTC:-- ::()]wcd-spmi-core msm8x16_wcd_codec: ASoC: mux RX2 MIX1 INP3 has no paths
[ 15.993358][UTC:-- ::()]type= audit(1865.539:): avc: denied { entrypoint } for pid= comm="init" path="/sbin/healthd" dev="rootfs" ino= scontext=u:r:healthd:s0 tcontext=u:object_r:rootfs:s0 tclass=file
[ 15.995593][UTC:-- ::()]binder: : transaction failed , size -
[ 16.157083][UTC:-- ::()]M-Notify: General:
[ 16.167556][UTC:-- ::()]init: cannot find '/system/etc/install-recovery.sh', disabling 'flash_recovery'
shell@Kraft-A6000:/ $ [ 16.314121][UTC:-- ::()]init: cannot find '/system/bin/ssr_diag', disabling 'ssr_diag'
[ 16.326207][UTC:-- ::()]init: property 'sys.powerctl' doesn't exist while expanding '${sys.powerctl}'
[ 16.337944][UTC:-- ::()]init: powerctl: cannot expand '${sys.powerctl}'
[ 16.346172][UTC:-- ::()]init: property 'sys.sysctl.extra_free_kbytes' doesn't exist while expanding '${sys.sysctl.extra_free_kbytes}'
[ 16.359230][UTC:-- ::()]init: cannot expand '${sys.sysctl.extra_free_kbytes}' while writing to '/proc/sys/vm/extra_free_kbytes'
[ 16.372485][UTC:-- ::()]init: property 'sys.sysctl.tcp_def_init_rwnd' doesn't exist while expanding '${sys.sysctl.tcp_def_init_rwnd}'
[ 16.385467][UTC:-- ::()]init: cannot expand '${sys.sysctl.tcp_def_init_rwnd}' while writing to '/proc/sys/net/ipv4/tcp_default_init_rwnd'
[ 16.453498][UTC:-- ::()]enable_store: Nathan enable_store buf:
[ 16.464042][UTC:-- ::()]enable_store: android_usb: already disabled
[ 16.486965][UTC:-- ::()]functions_store: Nathan functions_store buf:mtp,mass_storage,adb
[ 16.497072][UTC:-- ::()]alloc_android_config: Nathan alloc_android_config
[ 16.516610][UTC:-- ::()]android_enable_function: Nathan android_enable_function
[ 16.526254][UTC:-- ::()]android_enable_function: Nathan android_enable_function
[ 16.534626][UTC:-- ::()]android_enable_function: Nathan android_enable_function
[ 16.543293][UTC:-- ::()]enable_store: Nathan enable_store buf:
[ 16.551511][UTC:-- ::()]android_disable: Nathan android_disable
[ 16.559386][UTC:-- ::()]android_enable: Nathan android_enable
[ 16.572592][UTC:-- ::()]init: sys_prop: permission denied uid: name:persist.sys.sd.defaultpath
[ 16.610168][UTC:-- ::()]android_enable: Nathan android_enable
[ 16.617627][UTC:-- ::()]cdev_to_android_dev: Nathan cdev_to_android_dev
[ 16.626806][UTC:-- ::()]android_bind_config: Nathan android_bind_config
[ 16.634709][UTC:-- ::()]android_bind_enabled_functions: Nathan android_bind_enabled_functions
[ 16.675341][UTC:-- ::()]handle_qmi_request: Error getting req_desc for msg_id
[ 16.684126][UTC:-- ::()]mem_share_svc_recv_msg: Error receiving message
[ 16.709499][UTC:-- ::()]diag: In diag_send_msg_mask_update, invalid status
[ 16.724344][UTC:-- ::()]diag: In diag_send_log_mask_update, invalid status [ 16.773893][UTC:-- ::()]QSEECOM: qseecom_load_app: App (keymaste) does'nt exist, loading apps for first time
[ 16.787652][UTC:-- ::()]QSEECOM: qseecom_load_app: scm_call rsp.result is QSEOS_RESULT_FAILURE
[ 16.792151][UTC:-- ::()]failed: no power_down_setting[ 16.792162][UTC:-- ::()]msm_camera_fill_vreg_params: i j cam_vio
[ 16.792165][UTC:-- ::()]msm_camera_fill_vreg_params: i j cam_vana
[ 16.792168][UTC:-- ::()]msm_camera_fill_vreg_params: i j cam_vdig
[ 16.792171][UTC:-- ::()]msm_camera_fill_vreg_params: i j cam_vaf
[ 16.792175][UTC:-- ::()]msm_camera_fill_vreg_params: i j cam_vaf
[ 16.792177][UTC:-- ::()]msm_camera_fill_vreg_params: i j cam_vdig
[ 16.792180][UTC:-- ::()]msm_camera_fill_vreg_params: i j cam_vana
[ 16.792183][UTC:-- ::()]msm_camera_fill_vreg_params: i j cam_vio
[ 16.860967][UTC:-- ::()]imx219_q8n13a probe succeeded[ 16.880634][UTC:-- ::()]QSEECOM: qseecom_ioctl: failed load_app request: -
[ 16.895417][UTC:-- ::()]QSEECOM: qseecom_release: data: released=false, type=, mode=, data=0xed71c600
[ 16.938136][UTC:-- ::()]failed: no power_down_setting
[ 16.944083][UTC:-- ::()]msm_camera_fill_vreg_params: i j cam_vio
[ 16.953172][UTC:-- ::()]msm_camera_fill_vreg_params: i j cam_vdig
[ 16.962070][UTC:-- ::()]msm_camera_fill_vreg_params: i j cam_vana
[ 16.972376][UTC:-- ::()]msm_camera_fill_vreg_params: i j cam_vana
[ 16.980232][UTC:-- ::()]msm_camera_fill_vreg_params: i j cam_vdig
[ 16.988857][UTC:-- ::()]msm_camera_fill_vreg_params: i j cam_vio
[ 17.009373][UTC:-- ::()]wcd-spmi-core msm8x16_wcd_codec: ASoC: unknown pin Digital Mic1
[ 17.018750][UTC:-- ::()]wcd-spmi-core msm8x16_wcd_codec: ASoC: unknown pin Digital Mic2
[ 17.051851][UTC:-- ::()]gc2355_8916 probe succeeded
[ 17.107804][UTC:-- ::()]msm_actuator_close: software shutdown error rc=-[ 17.116571][UTC:-- ::()]msm_cci_release invalid ref count / cci state
[ 17.124993][UTC:-- ::()]msm_sensor_cci_i2c_util line rc = -
[ 17.133240][UTC:-- ::()]msm_actuator_close: cci_init failed
[ 17.166774][UTC:-- ::()]MSM-CPP cpp_init_hardware: stream_cnt:
[ 17.516152][UTC:-- ::()]MSM-SENSOR-INIT msm_sensor_wait_for_probe_done: msm_cam_get_module_init_status -
[ 17.516152][UTC:-- ::()]
[ 17.580438][UTC:-- ::()]msm_qti_pp_get_rms_value_control, back not active to query rms
[ 17.590654][UTC:-- ::()]msm_dolby_dap_param_to_get_control_get, port_id not set, do not query ADM
[ 17.661420][UTC:-- ::()]core_set_license: error getting metainfo size, err:0x0, size:
[ 17.891059][UTC:-- ::()]diag: In diag_process_smd_read_data, diag_device_write error: -
[ 19.030692][UTC:-- ::()]diag: In diag_send_msg_mask_update, invalid status
[ 19.038738][UTC:-- ::()]diag: In diag_send_log_mask_update, invalid status [ 19.064373][UTC:-- ::()]mdss_check_dsi_ctrl_status: ctl not powered on
[ 21.064381][UTC:-- ::()]mdss_check_dsi_ctrl_status: ctl not powered on
[ 21.699161][UTC:-- ::()]wcnss: no space available for smd frame
[ 21.734375][UTC:-- ::()]wcnss: no space available for smd frame
[ 21.764373][UTC:-- ::()]wcnss: no space available for smd frame
[ 21.794377][UTC:-- ::()]wcnss: no space available for smd frame
[ 22.568062][UTC:-- ::()]tc () used greatest stack depth: bytes left
[ 23.064348][UTC:-- ::()]mdss_check_dsi_ctrl_status: ctl not powered on
[ 25.064337][UTC:-- ::()]mdss_check_dsi_ctrl_status: ctl not powered on
[ 27.064341][UTC:-- ::()]mdss_check_dsi_ctrl_status: ctl not powered on
[ 29.064366][UTC:-- ::()]mdss_check_dsi_ctrl_status: ctl not powered on
[ 30.696407][UTC:-- ::()]mdss_dsi_on: Panel already on.
[ 30.761198][UTC:-- ::()]wgz ldo17 enable =
[ 30.766758][UTC:-- ::()]8916_l17: Failed to create debugfs directory
[ 30.776245][UTC:-- ::()]wgz get regulator Ldo17 ok
[ 31.102589][UTC:-- ::()]state_show: Nathan state_show buf:
[ 32.262142][UTC:-- ::()]type= audit(1388535700.728:): avc: denied { getattr } for pid= comm="zygote" path="socket:[10709]" dev="sockfs" ino= scontext=u:r:untrusted_app:s0 tcontext=u:r:zygote:s0 tclass=unix_stream_socket
[ 32.284443][UTC:-- ::()]type= audit(1388535700.758:): avc: denied { getopt } for pid= comm="zygote" path="/dev/socket/zygote" scontext=u:r:untrusted_app:s0 tcontext=u:r:zygote:s0 tclass=unix_stream_socket
[ 33.313580][UTC:-- ::()]type= audit(1388535701.778:): avc: denied { getattr } for pid= comm="zygote" path="socket:[10709]" dev="sockfs" ino= scontext=u:r:untrusted_app:s0 tcontext=u:r:zygote:s0 tclass=unix_stream_socket
[ 33.336041][UTC:-- ::()]type= audit(1388535701.818:): avc: denied { getopt } for pid= comm="zygote" path="/dev/socket/zygote" scontext=u:r:untrusted_app:s0 tcontext=u:r:zygote:s0 tclass=unix_stream_socket
[ 34.066231][UTC:-- ::()]type= audit(1388535702.538:): avc: denied { read write } for pid= comm="d.process.acore" name="kgsl-3d0" dev="tmpfs" ino= scontext=u:r:untrusted_app:s0 tcontext=u:object_r:device:s0 tclass=chr_file
[ 34.089367][UTC:-- ::()]type= audit(1388535702.558:): avc: denied { open } for pid= comm="d.process.acore" path="/dev/kgsl-3d0" dev="tmpfs" ino= scontext=u:r:untrusted_app:s0 tcontext=u:object_r:device:s0 tclass=chr_file
[ 34.112615][UTC:-- ::()]type= audit(1388535702.578:): avc: denied { ioctl } for pid= comm="d.process.acore" path="/dev/kgsl-3d0" dev="tmpfs" ino= scontext=u:r:untrusted_app:s0 tcontext=u:object_r:device:s0 tclass=chr_file
[ 34.591381][UTC:-- ::()]init: untracked pid exited
[ 34.989640][UTC:-- ::()]type= audit(1388535703.458:): avc: denied { ioctl } for pid= comm="d.process.acore" path="/dev/kgsl-3d0" dev="tmpfs" ino= scontext=u:r:untrusted_app:s0 tcontext=u:object_r:device:s0 tclass=chr_file
[ 35.766979][UTC:-- ::()]init: sys_prop: permission denied uid: name:service.bootanim.exit
[ 37.853294][UTC:-- ::()]init: untracked pid exited
[ 37.934247][UTC:-- ::()]init: untracked pid exited
[ 38.109570][UTC:-- ::()]init: untracked pid exited
[ 38.710173][UTC:-- ::()]type= audit(1388535707.178:): avc: denied { search } for pid= comm="mobile.avlenovo" name="" dev="proc" ino= scontext=u:r:untrusted_app:s0 tcontext=u:r:init:s0 tclass=dir
[ 38.731511][UTC:-- ::()]type= audit(1388535707.198:): avc: denied { read } for pid= comm="mobile.avlenovo" name="status" dev="proc" ino= scontext=u:r:untrusted_app:s0 tcontext=u:r:init:s0 tclass=file
[ 38.764499][UTC:-- ::()]type= audit(1388535707.238:): avc: denied { open } for pid= comm="mobile.avlenovo" path="/proc/1/status" dev="proc" ino= scontext=u:r:untrusted_app:s0 tcontext=u:r:init:s0 tclass=file
[ 38.791366][UTC:-- ::()]type= audit(1388535707.258:): avc: denied { search } for pid= comm="mobile.avlenovo" name="" dev="proc" ino= scontext=u:r:untrusted_app:s0 tcontext=u:r:kernel:s0 tclass=dir
[ 38.812975][UTC:-- ::()]type= audit(1388535707.278:): avc: denied { read } for pid= comm="mobile.avlenovo" name="status" dev="proc" ino= scontext=u:r:untrusted_app:s0 tcontext=u:r:kernel:s0 tclass=file
[ 38.834637][UTC:-- ::()]type= audit(1388535707.308:): avc: denied { open } for pid= comm="mobile.avlenovo" path="/proc/2/status" dev="proc" ino= scontext=u:r:untrusted_app:s0 tcontext=u:r:kernel:s0 tclass=file
[ 38.871236][UTC:-- ::()]type= audit(1388535707.338:): avc: denied { search } for pid= comm="mobile.avlenovo" name="" dev="proc" ino= scontext=u:r:untrusted_app:s0 tcontext=u:r:ueventd:s0 tclass=dir
[ 38.891862][UTC:-- ::()]type= audit(1388535707.368:): avc: denied { read } for pid= comm="mobile.avlenovo" name="status" dev="proc" ino= scontext=u:r:untrusted_app:s0 tcontext=u:r:ueventd:s0 tclass=file
[ 39.039972][UTC:-- ::()]wgz ldo17 enable =
[ 39.045550][UTC:-- ::()]wgz get regulator Ldo17 ok
[ 43.362647][UTC:-- ::()]msm_get_platform_subtype: Invalid hardware platform sub type for qrd found
[ 43.438391][UTC:-- ::()]msm_get_platform_subtype: Invalid hardware platform sub type for qrd found
[ 44.973776][UTC:-- ::()]audit_printk_skb: callbacks suppressed
[ 44.981730][UTC:-- ::()]type= audit(1388535713.438:): avc: denied { ioctl } for pid= comm="d.process.acore" path="/dev/kgsl-3d0" dev="tmpfs" ino= scontext=u:r:untrusted_app:s0 tcontext=u:object_r:device:s0 tclass=chr_file
[ 45.409180][UTC:-- ::()]type= audit(1388535713.878:): avc: denied { read write } for pid= comm="d.process.acore" path="/dev/kgsl-3d0" dev="tmpfs" ino= scontext=u:r:untrusted_app:s0 tcontext=u:object_r:device:s0 tclass=chr_file
[ 46.367824][UTC:-- ::()]type= audit(1388535714.838:): avc: denied { write } for pid= comm="d.process.acore" name="mpctl" dev="tmpfs" ino= scontext=u:r:untrusted_app:s0 tcontext=u:object_r:socket_device:s0 tclass=sock_file
[ 52.554212][UTC:-- ::()]type= audit(1388535721.018:): avc: denied { open } for pid= comm="facebook.katana" path="/dev/kgsl-3d0" dev="tmpfs" ino= scontext=u:r:untrusted_app:s0 tcontext=u:object_r:device:s0 tclass=chr_file
[ 61.115619][UTC:-- ::()]cdev_to_android_dev: Nathan cdev_to_android_dev
[ 61.123292][UTC:-- ::()]android_disconnect: Nathan android_disconnect
[ 61.132416][UTC:-- ::()]android_work: Nathan android_work
[ 61.218374][UTC:-- ::()]cdev_to_android_dev: Nathan cdev_to_android_dev
[ 61.226050][UTC:-- ::()]android_suspend: Nathan android_suspend
[ 61.234410][UTC:-- ::()]android_work: Nathan android_work
[ 61.642094][UTC:-- ::()]CHG: qpnp_lbc_batt_temp_alarm_work_fn: wgz ok ,enable charger
[ 61.875455][UTC:-- ::()]cdev_to_android_dev: Nathan cdev_to_android_dev
[ 61.883126][UTC:-- ::()]android_resume: Nathan android_resume
[ 61.890996][UTC:-- ::()]cdev_to_android_dev: Nathan cdev_to_android_dev
[ 61.899621][UTC:-- ::()]android_disconnect: Nathan android_disconnect
[ 61.908312][UTC:-- ::()]android_work: Nathan android_work
[ 61.947634][UTC:-- ::()]cdev_to_android_dev: Nathan cdev_to_android_dev
[ 61.955315][UTC:-- ::()]android_setup: Nathan android_setup
[ 61.963165][UTC:-- ::()]android_work: Nathan android_work
[ 61.970649][UTC:-- ::()]android_pm_qos_update_latency: Nathan android_pm_qos_update_latency
[ 61.980965][UTC:-- ::()]cdev_to_android_dev: Nathan cdev_to_android_dev
[ 61.989515][UTC:-- ::()]android_disconnect: Nathan android_disconnect
[ 61.998612][UTC:-- ::()]android_work: Nathan android_work
[ 62.005590][UTC:-- ::()]android_pm_qos_update_latency: Nathan android_pm_qos_update_latency
[ 62.071918][UTC:-- ::()]cdev_to_android_dev: Nathan cdev_to_android_dev
[ 62.079588][UTC:-- ::()]android_setup: Nathan android_setup
[ 62.087477][UTC:-- ::()]android_work: Nathan android_work
[ 62.094863][UTC:-- ::()]android_pm_qos_update_latency: Nathan android_pm_qos_update_latency
[ 62.105180][UTC:-- ::()]cdev_to_android_dev: Nathan cdev_to_android_dev
[ 62.113787][UTC:-- ::()]android_setup: Nathan android_setup
[ 62.123629][UTC:-- ::()]cdev_to_android_dev: Nathan cdev_to_android_dev
[ 62.131309][UTC:-- ::()]android_setup: Nathan android_setup
[ 62.142635][UTC:-- ::()]cdev_to_android_dev: Nathan cdev_to_android_dev
[ 62.150307][UTC:-- ::()]android_setup: Nathan android_setup
[ 62.160623][UTC:-- ::()]cdev_to_android_dev: Nathan cdev_to_android_dev
[ 62.168291][UTC:-- ::()]android_setup: Nathan android_setup
[ 62.179623][UTC:-- ::()]cdev_to_android_dev: Nathan cdev_to_android_dev
[ 62.187287][UTC:-- ::()]android_setup: Nathan android_setup
[ 62.197621][UTC:-- ::()]cdev_to_android_dev: Nathan cdev_to_android_dev
[ 62.205283][UTC:-- ::()]android_setup: Nathan android_setup
[ 62.215623][UTC:-- ::()]cdev_to_android_dev: Nathan cdev_to_android_dev
[ 62.223285][UTC:-- ::()]android_setup: Nathan android_setup
[ 62.233622][UTC:-- ::()]cdev_to_android_dev: Nathan cdev_to_android_dev
[ 62.241285][UTC:-- ::()]android_setup: Nathan android_setup
[ 62.253626][UTC:-- ::()]cdev_to_android_dev: Nathan cdev_to_android_dev
[ 62.261298][UTC:-- ::()]android_setup: Nathan android_setup
[ 62.273628][UTC:-- ::()]cdev_to_android_dev: Nathan cdev_to_android_dev
[ 62.281303][UTC:-- ::()]android_setup: Nathan android_setup
[ 62.291629][UTC:-- ::()]cdev_to_android_dev: Nathan cdev_to_android_dev
[ 62.299306][UTC:-- ::()]android_setup: Nathan android_setup
[ 62.312637][UTC:-- ::()]cdev_to_android_dev: Nathan cdev_to_android_dev
[ 62.320317][UTC:-- ::()]android_setup: Nathan android_setup
[ 62.330627][UTC:-- ::()]cdev_to_android_dev: Nathan cdev_to_android_dev
[ 62.338297][UTC:-- ::()]android_setup: Nathan android_setup
[ 62.349636][UTC:-- ::()]cdev_to_android_dev: Nathan cdev_to_android_dev
[ 62.357310][UTC:-- ::()]android_setup: Nathan android_setup
[ 62.369634][UTC:-- ::()]cdev_to_android_dev: Nathan cdev_to_android_dev
[ 62.377308][UTC:-- ::()]android_setup: Nathan android_setup
[ 62.385484][UTC:-- ::()]android_work: Nathan android_work
[ 62.510649][UTC:-- ::()]cdev_to_android_dev: Nathan cdev_to_android_dev
[ 62.518335][UTC:-- ::()]android_setup: Nathan android_setup
[ 62.528642][UTC:-- ::()]cdev_to_android_dev: Nathan cdev_to_android_dev
[ 62.536335][UTC:-- ::()]android_setup: Nathan android_setup
[ 62.550849][UTC:-- ::()]cdev_to_android_dev: Nathan cdev_to_android_dev
[ 62.558682][UTC:-- ::()]android_setup: Nathan android_setup
[ 62.580637][UTC:-- ::()]cdev_to_android_dev: Nathan cdev_to_android_dev
[ 62.588312][UTC:-- ::()]android_setup: Nathan android_setup
[ 62.602633][UTC:-- ::()]cdev_to_android_dev: Nathan cdev_to_android_dev
[ 62.610302][UTC:-- ::()]android_setup: Nathan android_setup
[ 62.628636][UTC:-- ::()]cdev_to_android_dev: Nathan cdev_to_android_dev
[ 62.636305][UTC:-- ::()]android_setup: Nathan android_setup
[ 62.646636][UTC:-- ::()]cdev_to_android_dev: Nathan cdev_to_android_dev
[ 62.654312][UTC:-- ::()]android_setup: Nathan android_setup
[ 62.664637][UTC:-- ::()]cdev_to_android_dev: Nathan cdev_to_android_dev
[ 62.672308][UTC:-- ::()]android_setup: Nathan android_setup
[ 62.682633][UTC:-- ::()]cdev_to_android_dev: Nathan cdev_to_android_dev
[ 62.690300][UTC:-- ::()]android_setup: Nathan android_setup
[ 62.734638][UTC:-- ::()]cdev_to_android_dev: Nathan cdev_to_android_dev
[ 62.742309][UTC:-- ::()]android_setup: Nathan android_setup
[ 95.075531][UTC:-- ::()]enable_store: Nathan enable_store buf:
[ 95.082528][UTC:-- ::()]android_disable: Nathan android_disable
[ 95.108020][UTC:-- ::()]cdev_to_android_dev: Nathan cdev_to_android_dev
[ 95.125073][UTC:-- ::()]android_unbind_config: Nathan android_unbind_config
[ 95.140799][UTC:-- ::()]android_unbind_enabled_functions: Nathan android_unbind_enabled_functions
[ 95.202111][UTC:-- ::()]enable_store: Nathan enable_store buf:
[ 95.209319][UTC:-- ::()]enable_store: android_usb: already disabled
[ 95.217817][UTC:-- ::()]functions_store: Nathan functions_store buf:ptp,adb
[ 95.226655][UTC:-- ::()]android_enable_function: Nathan android_enable_function
[ 95.235859][UTC:-- ::()]android_enable_function: Nathan android_enable_function
[ 95.245337][UTC:-- ::()]enable_store: Nathan enable_store buf:
[ 95.253184][UTC:-- ::()]android_disable: Nathan android_disable
[ 95.261199][UTC:-- ::()]android_enable: Nathan android_enable
[ 95.272351][UTC:-- ::()]android_enable: Nathan android_enable
[ 95.279278][UTC:-- ::()]cdev_to_android_dev: Nathan cdev_to_android_dev
[ 95.287875][UTC:-- ::()]android_bind_config: Nathan android_bind_config
[ 95.296536][UTC:-- ::()]android_bind_enabled_functions: Nathan android_bind_enabled_functions
[ 95.310391][UTC:-- ::()]cdev_to_android_dev: Nathan cdev_to_android_dev
[ 95.318057][UTC:-- ::()]android_suspend: Nathan android_suspend
[ 95.326126][UTC:-- ::()]android_work: Nathan android_work
[ 96.314241][UTC:-- ::()]cdev_to_android_dev: Nathan cdev_to_android_dev
[ 96.321915][UTC:-- ::()]android_resume: Nathan android_resume
[ 96.329777][UTC:-- ::()]cdev_to_android_dev: Nathan cdev_to_android_dev
[ 96.338404][UTC:-- ::()]android_disconnect: Nathan android_disconnect
[ 96.346977][UTC:-- ::()]android_work: Nathan android_work
[ 96.354590][UTC:-- ::()]android_pm_qos_update_latency: Nathan android_pm_qos_update_latency
[ 96.489429][UTC:-- ::()]cdev_to_android_dev: Nathan cdev_to_android_dev
[ 96.497110][UTC:-- ::()]android_setup: Nathan android_setup
[ 96.504935][UTC:-- ::()]android_work: Nathan android_work
[ 96.512238][UTC:-- ::()]cdev_to_android_dev: Nathan cdev_to_android_dev
[ 96.520889][UTC:-- ::()]android_disconnect: Nathan android_disconnect
[ 96.532823][UTC:-- ::()]android_work: Nathan android_work
[ 96.712027][UTC:-- ::()]cdev_to_android_dev: Nathan cdev_to_android_dev
[ 96.719712][UTC:-- ::()]android_setup: Nathan android_setup
[ 96.727499][UTC:-- ::()]android_work: Nathan android_work
[ 96.734884][UTC:-- ::()]cdev_to_android_dev: Nathan cdev_to_android_dev
[ 96.743493][UTC:-- ::()]android_setup: Nathan android_setup
[ 96.751415][UTC:-- ::()]android_pm_qos_update_latency: Nathan android_pm_qos_update_latency
[ 96.761595][UTC:-- ::()]cdev_to_android_dev: Nathan cdev_to_android_dev
[ 96.770228][UTC:-- ::()]android_setup: Nathan android_setup
[ 96.778132][UTC:-- ::()]cdev_to_android_dev: Nathan cdev_to_android_dev
[ 96.786550][UTC:-- ::()]android_setup: Nathan android_setup
[ 96.794408][UTC:-- ::()]cdev_to_android_dev: Nathan cdev_to_android_dev
[ 96.802869][UTC:-- ::()]android_setup: Nathan android_setup
[ 96.810909][UTC:-- ::()]cdev_to_android_dev: Nathan cdev_to_android_dev
[ 96.819188][UTC:-- ::()]android_setup: Nathan android_setup
[ 96.826933][UTC:-- ::()]cdev_to_android_dev: Nathan cdev_to_android_dev
[ 96.835509][UTC:-- ::()]android_setup: Nathan android_setup
[ 96.843258][UTC:-- ::()]cdev_to_android_dev: Nathan cdev_to_android_dev
[ 96.851827][UTC:-- ::()]android_setup: Nathan android_setup
[ 96.859564][UTC:-- ::()]cdev_to_android_dev: Nathan cdev_to_android_dev
[ 96.868147][UTC:-- ::()]android_setup: Nathan android_setup
[ 96.875883][UTC:-- ::()]cdev_to_android_dev: Nathan cdev_to_android_dev
[ 96.884466][UTC:-- ::()]android_setup: Nathan android_setup
[ 96.892213][UTC:-- ::()]cdev_to_android_dev: Nathan cdev_to_android_dev
[ 96.900785][UTC:-- ::()]android_setup: Nathan android_setup
[ 96.908524][UTC:-- ::()]cdev_to_android_dev: Nathan cdev_to_android_dev
[ 96.917105][UTC:-- ::()]android_setup: Nathan android_setup
[ 96.924857][UTC:-- ::()]cdev_to_android_dev: Nathan cdev_to_android_dev
[ 96.933425][UTC:-- ::()]android_setup: Nathan android_setup
[ 96.941175][UTC:-- ::()]cdev_to_android_dev: Nathan cdev_to_android_dev
[ 96.949744][UTC:-- ::()]android_setup: Nathan android_setup
[ 96.957531][UTC:-- ::()]cdev_to_android_dev: Nathan cdev_to_android_dev
[ 96.966066][UTC:-- ::()]android_setup: Nathan android_setup
[ 96.973865][UTC:-- ::()]cdev_to_android_dev: Nathan cdev_to_android_dev
[ 96.982385][UTC:-- ::()]android_setup: Nathan android_setup
[ 96.990182][UTC:-- ::()]cdev_to_android_dev: Nathan cdev_to_android_dev
[ 96.998704][UTC:-- ::()]android_setup: Nathan android_setup
[ 97.006451][UTC:-- ::()]cdev_to_android_dev: Nathan cdev_to_android_dev
[ 97.015023][UTC:-- ::()]android_setup: Nathan android_setup
[ 97.023035][UTC:-- ::()]cdev_to_android_dev: Nathan cdev_to_android_dev
[ 97.031343][UTC:-- ::()]android_setup: Nathan android_setup
[ 97.045338][UTC:-- ::()]android_work: Nathan android_work
[ 97.127823][UTC:-- ::()]cdev_to_android_dev: Nathan cdev_to_android_dev
[ 97.135509][UTC:-- ::()]android_setup: Nathan android_setup
[ 97.143391][UTC:-- ::()]cdev_to_android_dev: Nathan cdev_to_android_dev
[ 97.151823][UTC:-- ::()]android_setup: Nathan android_setup
[ 97.159766][UTC:-- ::()]cdev_to_android_dev: Nathan cdev_to_android_dev
[ 97.168143][UTC:-- ::()]android_setup: Nathan android_setup
[ 97.176036][UTC:-- ::()]cdev_to_android_dev: Nathan cdev_to_android_dev
[ 97.184466][UTC:-- ::()]android_setup: Nathan android_setup
[ 97.234480][UTC:-- ::()]cdev_to_android_dev: Nathan cdev_to_android_dev
[ 97.242151][UTC:-- ::()]android_setup: Nathan android_setup
[ 123.795798][UTC:-- ::()]cdev_to_android_dev: Nathan cdev_to_android_dev
[ 123.803482][UTC:-- ::()]android_suspend: Nathan android_suspend
[ 123.811612][UTC:-- ::()]android_work: Nathan android_work
[ 123.819135][UTC:-- ::()]android_pm_qos_update_latency: Nathan android_pm_qos_update_latency
[ 123.993190][UTC:-- ::()]cdev_to_android_dev: Nathan cdev_to_android_dev
[ 123.993272][UTC:-- ::()]android_disable: Nathan android_disable
[ 124.008843][UTC:-- ::()]android_disconnect: Nathan android_disconnect
[ 124.018425][UTC:-- ::()]android_work: Nathan android_work
[ 124.019074][UTC:-- ::()]cdev_to_android_dev: Nathan cdev_to_android_dev
[ 124.019077][UTC:-- ::()]android_unbind_config: Nathan android_unbind_config
[ 124.019080][UTC:-- ::()]android_unbind_enabled_functions: Nathan android_unbind_enabled_functions
[ 124.053933][UTC:-- ::()]android_enable: Nathan android_enable
[ 124.061571][UTC:-- ::()]cdev_to_android_dev: Nathan cdev_to_android_dev
[ 124.061745][UTC:-- ::()]android_pm_qos_update_latency: Nathan android_pm_qos_update_latency
[ 124.080709][UTC:-- ::()]android_bind_config: Nathan android_bind_config
[ 124.089147][UTC:-- ::()]android_bind_enabled_functions: Nathan android_bind_enabled_functions
可以看到,不管插不插usb线,都会走的调用流程如下:
init->android_probe->android_create_device->android_bind->android_init_functions
之后就是匹配rc文件里的相关配置,向各个文件节点写入响应的数值。
下面具体分析各个流程,从相关文件节点的读写相应函数开始分析。
先看enable时写0和1内核驱动的动作
Android USB驱动源码分析(-)的更多相关文章
- (转)Linux设备驱动之HID驱动 源码分析
//Linux设备驱动之HID驱动 源码分析 http://blog.chinaunix.net/uid-20543183-id-1930836.html HID是Human Interface De ...
- Android网络框架源码分析一---Volley
转载自 http://www.jianshu.com/p/9e17727f31a1?utm_campaign=maleskine&utm_content=note&utm_medium ...
- OpenGL—Android 开机动画源码分析一
.1 Android开机动画实现方式目前实现Android开机动画的方式主要是逐帧动画和OpenGL动画. ?逐帧动画 逐帧动画是一种常见的动画形式(Frame By Frame),其原理是在“连续的 ...
- 9.1 IIC驱动源码分析
学习目标:分析linux内核源码下的i2c总线驱动 drivers/i2c/busses/i2c-s3c2410.c 和 driver/i2c/chips/eeprom.c 设备驱动: 一.i2c驱动 ...
- Android分包MultiDex源码分析
转载请标明出处:http://blog.csdn.net/shensky711/article/details/52845661 本文出自: [HansChen的博客] 概述 Android开发者应该 ...
- [Android]简略的Android消息机制源码分析
相关源码 framework/base/core/java/andorid/os/Handler.java framework/base/core/java/andorid/os/Looper.jav ...
- Android Doze模式源码分析
科技的仿生学无处不在,给予我们启发.为了延长电池是使用寿命,google从蛇的冬眠中得到体会,那就是在某种情况下也让手机进入类冬眠的情况,从而引入了今天的主题,Doze模式,Doze中文是打盹儿,打盹 ...
- Android消息机制源码分析
本篇主要介绍Android中的消息机制,即Looper.Handler是如何协同工作的: Looper:主要用来管理当前线程的消息队列,每个线程只能有一个Looper Handler:用来将消息(Me ...
- Android 开机动画源码分析
Android系统在启动SystemServer进程时,通过两个阶段来启动系统所有服务,在第一阶段启动本地服务,如SurfaceFlinger,SensorService等,在第二阶段则启动一系列的J ...
随机推荐
- php面试专题---12、JavaScript和jQuery基础考点
php面试专题---12.JavaScript和jQuery基础考点 一.总结 一句话总结: 比较常考察的是JavaScript的HTML样式操作以及jQuery的选择器和事件.样式操作. 1.下列不 ...
- leetcode 292. Nim游戏(python)
你和你的朋友,两个人一起玩 Nim 游戏:桌子上有一堆石头,每次你们轮流拿掉 1 - 3 块石头. 拿掉最后一块石头的人就是获胜者.你作为先手. 你们是聪明人,每一步都是最优解. 编写一个函数,来判断 ...
- jenkins自动化打包报错:gradle: 未找到命令
shell脚本如下: cd /home/wangju/gitProject/Automation echo "************************开始清理环境********** ...
- day09—css布局解决方案之全屏布局
转行学开发,代码100天——2018-03-25 今天,本文记录全屏布局的的方法.全屏布局,即滚动条不是全局滚动条,而是出现在内容区域内,:浏览器变大时,撑满窗口. 如:设置下图中布局,其中top区, ...
- [转]Hook executed successfully but returned HTTP 403
原文地址:https://www.cnblogs.com/chenglc/p/11174530.html jenkins配置gitlab的webhook,完成配置,测试结果显示 Hook execut ...
- LeetCode 144. Binary Tree Preorder Traversal 动态演示
先序遍历的非递归办法,还是要用到一个stack class Solution { public: vector<int> preorderTraversal(TreeNode* root) ...
- 15.队列Queue的特点以及使用,优先级等
#生产者与消费者模式,模式解释:比如MVC设计模式 ''' 1.队列 (1)特点:先进先出 (2)python2 VS python3 python2:from Queue import queue ...
- numpy.meshgrid的理解以及3D曲面图绘制(梯度下降法实现过程)
相关概念: 1.x向量和y向量 import numpy as np import matplotlib.pyplot as plt x = np.array([[0,1,2,3], [0,0,0,0 ...
- Java8数据流
流/Stream是在JAVA8中引入的一个抽象,可以处理类似SQL语句声明数据. 例如,考虑下面的SQL语句. SELECT max(salary),employee_id,employee_name ...
- Jenkins设置默用户为root
https://www.jianshu.com/p/181dfb259dc7 最近在需要在jenkins执行shell脚本,由于Jenkins之前是默认在线安装的,这样jenkins设置了默认用户je ...