void smart_mntn_init(struct work_struct *work) { int ret = 0; NV_HW_CONFIG_STRU drv_55nv; volatile unsigned char otmp = 0; PMIC_MNTN_DESC * mntn_desc = &smart_mntn_ops; if(PMIC_EXC_PD == mntn_desc->stat.is_exc_pd) { pr_err("%s save pmu_reboot \n",__func__); mach_call_usermodeshell(PMU_SHELL_SCRIPT,1,print_string_buf); } ret = DR_NV_Read(en_NV_Item_HW_CONFIG, &drv_55nv, sizeof(NV_HW_CONFIG_STRU)); if (ret != NV_OK) { pr_err("%s: en_NV_Item_HW_CONFIG use default data\n", __func__); } otmp = pmussi_reg_read(SOC_SMART_BANDGAP_THSD_ADJ2_ADDR(0)); otmp &= ~(0x03<<SOC_SMART_BANDGAP_THSD_ADJ2_thsd_set_tmp_START); otmp |= drv_55nv.PMU_PROTECT.OTMP_TMP<<SOC_SMART_BANDGAP_THSD_ADJ2_thsd_set_tmp_START; pmussi_reg_write(SOC_SMART_BANDGAP_THSD_ADJ2_ADDR(0),otmp); }
static void hifi_handle_mntn_work(struct work_struct *work) { loge("audio dump.\n"); mach_call_usermodeshell("/system/etc/log/audio_dump.sh" , 0); return; }