1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61
| <3>[52515.763039] __smb135x_write: Writing 0x41=0x06 <3>[52515.774459] __smb135x_write: Writing 0x41=0x26 函数调用: static int __smb135x_write(struct smb135x_chg *chip, int reg,u8 val) ->smb135x_write(struct smb135x_chg *chip, int reg,u8 val) / smb135x_masked_write(struct smb135x_chg *chip, int reg, u8 mask, u8 val)
<3>[52515.777868] fast_chg_handler: rt_stat = 0x00 <3>[52515.782184] usbin_uv_handler: chip->usb_present = 1 usb_present = 0 <3>[52515.788369] handle_usb_removal: setting usb psy type = 0 <3>[52515.793689] handle_usb_removal: setting usb psy present = 0 <3>[52515.799241] power_ok_handler: rt_stat = 0x00 <3>[52515.803472] src_detect_handler: chip->usb_present = 0 usb_present = 0 函数调用: fast_chg_handler(struct smb135x_chg *chip, u8 rt_stat) usbin_uv_handler(struct smb135x_chg *chip, u8 rt_stat) handle_usb_removal(struct smb135x_chg *chip) (->usbin_uv_handler(struct smb135x_chg *chip, u8 rt_stat)/usbin_ov_handler(struct smb135x_chg *chip, u8 rt_stat)/determine_initial_status(struct smb135x_chg *chip)) static struct irq_handler_info handlers[]= { ... { .name = "fast_chg", .smb_irq = fast_chg_handler, }, { .name = "usbin_uv", .smb_irq = usbin_uv_handler, }, ... } ->smb135x_irq_read(struct smb135x_chg *chip) /static irqreturn_t smb135x_chg_stat_handler(int irq, void *dev_id) ->smb135x_chg_stat_handler(int irq, void *dev_id) ->smb135x_main_charger_probe(struct i2c_client *client,const struct i2c_device_id *id)
<3>[52515.809926] smb135x_chg_stat_handler: handler count = 4 <3>[52515.815104] smb135x_chg_stat_handler: batt psy changed <3>[52515.820247] smb135x_chg_stat_handler: usb psy changed <3>[52515.825260] smb135x_chg_stat_handler: dc psy changed 函数调用: smb135x_chg_stat_handler(int irq, void *dev_id) smb135x_external_power_changed(struct power_supply *psy) -> smb135x_main_charger_probe(struct i2c_client *client,const struct i2c_device_id *id)/(force_irq_set(void *data, u64 val)/smb135x_resume(struct device *dev))
<6>[52515.836445] msm_hsusb msm_hsusb: CI13XXX_CONTROLLER_DISCONNECT_EVENT received 函数调用: kernel/drivers/usb/chipidea/ci13xxx_msm.c:186: dev_info(dev, "CI13XXX_CONTROLLER_DISCONNECT_EVENT received\n");
<3>[52515.837146] smb135x_get_prop_batt_status: STATUS_4_REG=80 <3>[52515.841747] smb135x_get_prop_batt_status: STATUS_4_REG=80 函数调用: smb135x_get_prop_batt_status(struct smb135x_chg *chip) ->smb135x_battery_get_property(struct power_supply *psy,enum power_supply_property prop,union power_supply_propval *val)/ smb135x_parallel_get_property(...)
<3>[52515.847405] smb135x_external_power_changed: current_limit = 0 函数调用: smb135x_external_power_changed(struct power_supply *psy)
.....
|