这篇教程C++ subsystem_restart函数代码示例写得很实用,希望能帮到您。
本文整理汇总了C++中subsystem_restart函数的典型用法代码示例。如果您正苦于以下问题:C++ subsystem_restart函数的具体用法?C++ subsystem_restart怎么用?C++ subsystem_restart使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。 在下文中一共展示了subsystem_restart函数的30个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的C++代码示例。 示例1: modem_sw_fatal_fnstatic void modem_sw_fatal_fn(struct work_struct *work){ uint32_t panic_smsm_states = SMSM_RESET | SMSM_SYSTEM_DOWNLOAD; uint32_t reset_smsm_states = SMSM_SYSTEM_REBOOT_USR | SMSM_SYSTEM_PWRDWN_USR; uint32_t modem_state; pr_err("Watchdog bite received from modem SW!/n"); modem_state = smsm_get_state(SMSM_MODEM_STATE); if (modem_state & panic_smsm_states) { pr_err("Modem SMSM state changed to SMSM_RESET./n" "Probable err_fatal on the modem. " "Calling subsystem restart.../n"); subsystem_restart("modem"); } else if (modem_state & reset_smsm_states) { pr_err("%s: User-invoked system reset/powerdown. " "Resetting the SoC now./n", __func__); kernel_restart(NULL); } else { /* TODO: Bus unlock code/sequence goes _here_ */ subsystem_restart("modem"); }}
开发者ID:throwaway17,项目名称:inspirational,代码行数:29,
示例2: riva_fatal_fnstatic void riva_fatal_fn(struct work_struct *work){ if (!enable_riva_ssr) panic(MODULE_NAME ": Watchdog bite received from Riva"); else subsystem_restart("riva");}
开发者ID:Ca1ne,项目名称:Enoch213,代码行数:7,
示例3: mdm_fatal_fnstatic void mdm_fatal_fn(struct work_struct *work){ int i; int value = gpio_get_value(mdm_drv->mdm2ap_errfatal_gpio); if (value == 1) { for (i = HTC_MDM_ERROR_CONFIRM_TIME_MS; i > 0; i--) { msleep(1); if (gpio_get_value(mdm_drv->mdm2ap_errfatal_gpio) == 0) { pr_info("%s: mdm fatal high %d(ms) confirm failed... Abort!/n", __func__, HTC_MDM_ERROR_CONFIRM_TIME_MS); return; } } } else if (value == 0) { pr_info("%s: mdm fatal high is a false alarm!/n", __func__); return; } mdm_crash_dump_dbg_info(); pr_info("%s: Reseting the mdm due to an errfatal/n", __func__); subsystem_restart(EXTERNAL_MODEM);}
开发者ID:bgcngm,项目名称:802Xtreem,代码行数:26,
示例4: riva_smsm_cb_fnstatic void riva_smsm_cb_fn(struct work_struct *work){ if (!enable_riva_ssr) panic(MODULE_NAME ": SMSM reset request received from Riva"); else subsystem_restart("riva");}
开发者ID:DESHONOR,项目名称:kernel_huawei,代码行数:7,
示例5: modem_debug_setstatic int modem_debug_set(void *data, u64 val){ if (val == 1) subsystem_restart("modem"); return 0;}
开发者ID:NieNs,项目名称:IM-A840S-kernel-1,代码行数:7,
示例6: delayed_subsystem_restart_work_fnstatic void delayed_subsystem_restart_work_fn(struct work_struct *work){ if (!machine_is_m7_evm()) /* SSR is not supported on EVM board */ subsystem_restart(EXTERNAL_MODEM); else pr_err("SSR is not supported on EVM board. Skip it./n");}
开发者ID:BackupWildfireDEV,项目名称:ElementalX-Sense-5.0.2,代码行数:7,
示例7: mdm_fatal_fnstatic void mdm_fatal_fn(struct work_struct *work){ int i; int value = gpio_get_value(mdm_drv->mdm2ap_errfatal_gpio); if (value == 1) { for (i = HTC_MDM_ERROR_CONFIRM_TIME_MS; i > 0; i--) { msleep(1); if (gpio_get_value(mdm_drv->mdm2ap_errfatal_gpio) == 0) { pr_info("%s: mdm fatal high %d(ms) confirm failed... Abort!/n", __func__, HTC_MDM_ERROR_CONFIRM_TIME_MS); return; } } } else if (value == 0) { pr_info("%s: mdm fatal high is a false alarm!/n", __func__); return; } dump_mdm_related_gpio(); pr_info("### Show Blocked State in ###/n"); show_state_filter(TASK_UNINTERRUPTIBLE); if (get_restart_level() == RESET_SOC) msm_rtb_disable(); if (get_restart_level() == RESET_SOC) set_mdm2ap_errfatal_restart_flag(1); pr_info("%s: Reseting the mdm due to an errfatal/n", __func__); subsystem_restart(EXTERNAL_MODEM);}
开发者ID:Backspace-Dev,项目名称:htx21,代码行数:35,
示例8: modem_fw_fatal_fnstatic void modem_fw_fatal_fn(struct work_struct *work){ pr_err("Watchdog bite received from modem FW!/n");#ifdef FEATURE_PANTECH_WLAN_QCOM_PATCH //lee.eunsuk 20120423, SSR panic(MODULE_NAME "Modem crashed.");#else subsystem_restart("modem");#endif}
开发者ID:NieNs,项目名称:IM-A840S-kernel-1,代码行数:9,
示例9: mdm_force_fatal/* simply declare this function as extern at test point, and call it */void mdm_force_fatal(void){ pr_info("%s: Reseting the mdm due to AP request/n", __func__); force_dump = 1; notify_modem_fatal(); subsystem_restart(EXTERNAL_MODEM);}
开发者ID:ARMP,项目名称:ARMP-i9300,代码行数:10,
示例10: mdm_status_fnstatic void mdm_status_fn(struct work_struct *work){ int i; int value = gpio_get_value(mdm_drv->mdm2ap_status_gpio); if (!mdm_drv->mdm_ready) return; if (value == 0) { for (i = HTC_MDM_ERROR_CONFIRM_TIME_MS; i > 0; i--) { msleep(1); if (gpio_get_value(mdm_drv->mdm2ap_status_gpio) == 1) { pr_info("%s: mdm status low %d(ms) confirm failed... Abort!/n", __func__, HTC_MDM_ERROR_CONFIRM_TIME_MS); return; } } } if ( ( get_radio_flag() & RADIO_FLAG_USB_UPLOAD ) ) { if ( value == 0 ) { int val_gpio = 0; msleep(40); val_gpio = gpio_get_value(mdm_drv->mdm2ap_hsic_ready_gpio); pr_info("%s:mdm2ap_hsic_ready_gpio=[%d]/n", __func__, val_gpio); } } mdm_status_change_notified = true; mdm_drv->ops->status_cb(mdm_drv, value); pr_debug("%s: status:%d/n", __func__, value); if (value == 0) { pr_info("%s: unexpected reset external modem/n", __func__); dump_mdm_related_gpio(); pr_info("### Show Blocked State in ###/n"); show_state_filter(TASK_UNINTERRUPTIBLE); if (get_restart_level() == RESET_SOC) msm_rtb_disable(); if (get_restart_level() == RESET_SOC) set_mdm2ap_errfatal_restart_flag(1); subsystem_restart(EXTERNAL_MODEM); } else if (value == 1) { pr_info("%s: status = 1: mdm is now ready/n", __func__); }}
开发者ID:Hawknest,项目名称:GEKernel,代码行数:57,
示例11: smsm_state_cb_hdlrstatic void smsm_state_cb_hdlr(void *data, uint32_t old_state, uint32_t new_state){ char *smem_reset_reason; char buffer[MAX_BUF_SIZE]; unsigned smem_reset_size; unsigned size; riva_crash = true; pr_err("%s: smsm state changed/n", MODULE_NAME); if (get_kernel_flag() & KERNEL_FLAG_ENABLE_SSR_WCNSS) { smsm_change_state_ssr(SMSM_APPS_STATE, SMSM_RESET, 0, KERNEL_FLAG_ENABLE_SSR_WCNSS); } if (!(new_state & SMSM_RESET)) return; if (ss_restart_inprogress) { pr_err("%s: Ignoring smsm reset req, restart in progress/n", MODULE_NAME); return; } if (!enable_riva_ssr) { ssr_set_restart_reason( "riva fatal: SMSM reset request received from Riva"); panic(MODULE_NAME ": SMSM reset request received from Riva"); } smem_reset_reason = smem_get_entry(SMEM_SSR_REASON_WCNSS0, &smem_reset_size); if (!smem_reset_reason || !smem_reset_size) { pr_err("%s: wcnss subsystem failure reason: %s/n", __func__, "(unknown, smem_get_entry failed)"); } else if (!smem_reset_reason[0]) { pr_err("%s: wcnss subsystem failure reason: %s/n", __func__, "(unknown, init string found)"); } else { size = smem_reset_size < MAX_BUF_SIZE ? smem_reset_size : (MAX_BUF_SIZE - 1); memcpy(buffer, smem_reset_reason, size); buffer[size] = '/0'; pr_err("%s: wcnss subsystem failure reason: %s/n", __func__, buffer); memset(smem_reset_reason, 0, smem_reset_size); wmb(); } ss_restart_inprogress = true; subsystem_restart("riva");}
开发者ID:Ca1ne,项目名称:Enoch316,代码行数:55,
示例12: mdm_errfatalstatic irqreturn_t mdm_errfatal(int irq, void *dev_id){ pr_debug("%s: mdm got errfatal interrupt/n", __func__); if (mdm_drv->mdm_ready && (gpio_get_value(mdm_drv->mdm2ap_status_gpio) == 1)) { pr_info("%s: Reseting the mdm due to an errfatal/n", __func__); mdm_drv->mdm_ready = 0; subsystem_restart(EXTERNAL_MODEM); } return IRQ_HANDLED;}
开发者ID:de-wolff,项目名称:caf_device_kernel_msm,代码行数:11,
示例13: smsm_state_cbstatic void smsm_state_cb(void *data, uint32_t old_state, uint32_t new_state){ /* Ignore if we're the one that set SMSM_RESET */ if (crash_shutdown) return; if (new_state & SMSM_RESET) { pr_err("Probable fatal error on the modem./n"); log_modem_sfr(); subsystem_restart("modem"); }}
开发者ID:DAGr8,项目名称:gp-peak-kernel,代码行数:12,
示例14: dsps_restart_handlerstatic void dsps_restart_handler(void){ pr_debug("%s: Restart lvl %d/n", __func__, get_restart_level()); if (atomic_add_return(1, &drv->crash_in_progress) > 1) { pr_err("%s: DSPS already resetting. Count %d/n", __func__, atomic_read(&drv->crash_in_progress)); } else { subsystem_restart("dsps"); }}
开发者ID:Albinoman887,项目名称:pyramid-3.4.10,代码行数:12,
示例15: modem_unlock_timeoutstatic void modem_unlock_timeout(struct work_struct *work){ pr_crit("%s: Timeout waiting for modem to unlock./n", MODULE_NAME); /* Set MSS_MODEM_RESET to 0x0 since the unlock didn't work */ if ( hwio_modem_reset_addr ) writel_relaxed(0x0, hwio_modem_reset_addr); /* Write needs to go through before the modem is restarted. */ mb(); subsystem_restart("modem");}
开发者ID:glitschi,项目名称:kernel_P7320,代码行数:12,
示例16: smsm_state_cb_hdlrstatic void smsm_state_cb_hdlr(void *data, uint32_t old_state, uint32_t new_state){ char *smem_reset_reason; char buffer[MAX_BUF_SIZE]; unsigned smem_reset_size; unsigned size; riva_crash = true; pr_err("%s: smsm state changed/n", MODULE_NAME); if (!(new_state & SMSM_RESET)) return; if (ss_restart_inprogress) { pr_err("%s: Ignoring smsm reset req, restart in progress/n", MODULE_NAME); return; } pr_info(MODULE_NAME ": smsm_state_cb_hdlr, enable_riva_ssr=%d./n", enable_riva_ssr); //ASUS_BSP+++ "for /data/log/ASUSEvtlog" ASUSEvtlog("[wcnss]: smsm_state_cb_hdlr, enable_riva_ssr=%d./n", enable_riva_ssr); //ASUS_BSP--- "for /data/log/ASUSEvtlog" if (!enable_riva_ssr) panic(MODULE_NAME ": SMSM reset request received from Riva"); smem_reset_reason = smem_get_entry(SMEM_SSR_REASON_WCNSS0, &smem_reset_size); if (!smem_reset_reason || !smem_reset_size) { pr_err("%s: wcnss subsystem failure reason: %s/n", __func__, "(unknown, smem_get_entry failed)"); } else if (!smem_reset_reason[0]) { pr_err("%s: wcnss subsystem failure reason: %s/n", __func__, "(unknown, init string found)"); } else { size = smem_reset_size < MAX_BUF_SIZE ? smem_reset_size : (MAX_BUF_SIZE - 1); memcpy(buffer, smem_reset_reason, size); buffer[size] = '/0'; pr_err("%s: wcnss subsystem failure reason: %s/n", __func__, buffer); memset(smem_reset_reason, 0, smem_reset_size); wmb(); } ss_restart_inprogress = true; subsystem_restart("riva");}
开发者ID:SmokyBob,项目名称:android_kernel_asus_padfone2,代码行数:53,
示例17: set_subsystemstatic int set_subsystem(const char *buf, struct kernel_param *kp){ if(!strncmp(buf, "modem",strlen(buf)-1)) { subsystem_restart("modem"); } else if(!strncmp(buf, "lpass",strlen(buf)-1)) { subsystem_restart("lpass"); } else if(!strncmp(buf, "dsps",strlen(buf)-1)) { subsystem_restart("dsps"); } else if(!strncmp(buf, "wcnss",strlen(buf)-1)) { subsystem_restart("wcnss"); } else if(!strncmp(buf, "adsp",strlen(buf)-1)) { subsystem_restart("adsp"); } else if(!strncmp(buf, "venus",strlen(buf)-1)) { subsystem_restart("venus"); } else printk("Unknown subsystem!Please check!"); return 0;}
开发者ID:Vinayak-SP,项目名称:android_kernel_yu_msm8916,代码行数:29,
示例18: mdm2ap_status_checkstatic void mdm2ap_status_check(struct work_struct *work){ /* * If the mdm modem did not pull the MDM2AP_STATUS gpio * high then call subsystem_restart. */ if (gpio_get_value(mdm_drv->mdm2ap_status_gpio) == 0) { pr_err("%s: MDM2AP_STATUS gpio did not go high/n", __func__); mdm_drv->mdm_ready = 0; subsystem_restart(EXTERNAL_MODEM); }}
开发者ID:de-wolff,项目名称:caf_device_kernel_msm,代码行数:13,
示例19: smsm_state_cbstatic void smsm_state_cb(void *data, uint32_t old_state, uint32_t new_state){ /* Ignore if we're the one that set SMSM_RESET */ if (crash_shutdown) return; if (new_state & SMSM_RESET) { pr_err("Modem SMSM state changed to SMSM_RESET./n" "Probable err_fatal on the modem. " "Calling subsystem restart.../n"); subsystem_restart("modem"); }}
开发者ID:throwaway17,项目名称:inspirational,代码行数:13,
示例20: mdm_force_fatal/* simply declare this function as extern at test point, and call it */void mdm_force_fatal(void){ pr_info("%s: Reseting the mdm due to AP request/n", __func__); force_dump = 1; if (in_irq()) queue_work(mdm_queue, &mdm_fatal_work); else { notify_modem_fatal(); subsystem_restart(EXTERNAL_MODEM); }}
开发者ID:Forest1971,项目名称:forest-cm11,代码行数:14,
示例21: mdm_errfatalstatic irqreturn_t mdm_errfatal(int irq, void *dev_id){ pr_debug("%s: mdm got errfatal interrupt/n", __func__); if (mdm_drv->mdm_ready && (gpio_get_value(mdm_drv->mdm2ap_status_gpio) == 1)) { pr_info("%s: Reseting the mdm due to an errfatal/n", __func__); mdm_drv->mdm_ready = 0;#ifdef CONFIG_LGE_EMS_CH ems_mdm_crash_fatal_flag = true;#endif subsystem_restart(EXTERNAL_MODEM); } return IRQ_HANDLED;}
开发者ID:hiikezoe,项目名称:android_kernel_lge_lgl21,代码行数:14,
示例22: modem_sw_fatal_fnstatic void modem_sw_fatal_fn(struct work_struct *work){ uint32_t panic_smsm_states = SMSM_RESET | SMSM_SYSTEM_DOWNLOAD; uint32_t reset_smsm_states = SMSM_SYSTEM_REBOOT_USR | SMSM_SYSTEM_PWRDWN_USR; uint32_t modem_state; pr_err("Watchdog bite received from modem SW!/n"); modem_state = smsm_get_state(SMSM_MODEM_STATE); if (modem_state & panic_smsm_states) { pr_err("Modem SMSM state changed to SMSM_RESET./n" "Probable err_fatal on the modem. " "Calling subsystem restart.../n");#ifdef FEATURE_PANTECH_WLAN_QCOM_PATCH //lee.eunsuk 20120423, SSR panic(MODULE_NAME "Modem crashed.");#else subsystem_restart("modem");#endif } else if (modem_state & reset_smsm_states) { pr_err("%s: User-invoked system reset/powerdown. " "Resetting the SoC now./n", __func__); kernel_restart(NULL); } else { /* TODO: Bus unlock code/sequence goes _here_ */#ifdef FEATURE_PANTECH_WLAN_QCOM_PATCH //lee.eunsuk 20120423, SSR panic(MODULE_NAME "Modem crashed.");#else subsystem_restart("modem");#endif }}
开发者ID:NieNs,项目名称:IM-A840S-kernel-1,代码行数:37,
示例23: wpalRivaSubystemRestartwpt_status wpalRivaSubystemRestart(void){ if (vos_is_load_unload_in_progress(VOS_MODULE_ID_WDI, NULL)) { WPAL_TRACE(eWLAN_MODULE_PAL, eWLAN_PAL_TRACE_LEVEL_FATAL, "%s: loading/unloading in progress," " SSR will be done at the end of unload", __func__); return eWLAN_PAL_STATUS_E_FAILURE; } if (0 == subsystem_restart("wcnss")) { return eWLAN_PAL_STATUS_SUCCESS; } return eWLAN_PAL_STATUS_E_FAILURE;}
开发者ID:Arc-Team,项目名称:android_kernel_htc_a11,代码行数:15,
示例24: modem_unlock_timeoutstatic void modem_unlock_timeout(struct work_struct *work){ void __iomem *hwio_modem_reset_addr = ioremap_nocache(MODEM_HWIO_MSS_RESET_ADDR, 8); pr_crit("%s: Timeout waiting for modem to unlock./n", MODULE_NAME); /* Set MSS_MODEM_RESET to 0x0 since the unlock didn't work */ writel_relaxed(0x0, hwio_modem_reset_addr); /* Write needs to go through before the modem is restarted. */ mb(); iounmap(hwio_modem_reset_addr); subsystem_restart("modem"); enable_irq(MARM_WDOG_EXPIRED);}
开发者ID:84506232,项目名称:bricked-pyramid-3.0,代码行数:15,
示例25: mdm_status_fnstatic void mdm_status_fn(struct work_struct *work){ int i; int value = gpio_get_value(mdm_drv->mdm2ap_status_gpio); if (!mdm_drv->mdm_ready) return; if (value == 0) { for (i = HTC_MDM_ERROR_CONFIRM_TIME_MS; i > 0; i--) { msleep(1); if (gpio_get_value(mdm_drv->mdm2ap_status_gpio) == 1) { pr_info("%s: mdm status low %d(ms) confirm failed... Abort!/n", __func__, HTC_MDM_ERROR_CONFIRM_TIME_MS); return; } } } if ( ( get_radio_flag() & RADIO_FLAG_USB_UPLOAD ) ) { if ( value == 0 ) { int val_gpio = 0; msleep(40); val_gpio = gpio_get_value(mdm_drv->mdm2ap_hsic_ready_gpio); pr_info("%s:mdm2ap_hsic_ready_gpio=[%d]/n", __func__, val_gpio); } } mdm_status_change_notified = true; mdm_drv->ops->status_cb(mdm_drv, value); pr_debug("%s: status:%d/n", __func__, value); if (value == 0) { pr_info("%s: unexpected reset external modem/n", __func__); mdm_crash_dump_dbg_info(); subsystem_restart(EXTERNAL_MODEM); } else if (value == 1) { pr_info("%s: status = 1: mdm is now ready/n", __func__); }}
开发者ID:bgcngm,项目名称:802Xtreem,代码行数:48,
示例26: mdm_fatal_fnstatic void mdm_fatal_fn(struct work_struct *work){ //HTC_Kris+++ unsigned long flags; extern bool is_mdm_hsic_phy_suspended; extern bool is_mdm_hsic_wakeup_in_progress; extern void mdm_hsic_disable_auto_suspend(void); int i; //HTC_Kris--- pr_info("%s: Reseting the mdm due to an errfatal/n", __func__); //HTC_Kris+++ pr_info("%s: mdm_hsic_disable_auto_suspend+/n", __func__); mdm_hsic_disable_auto_suspend(); pr_info("%s: mdm_hsic_disable_auto_suspend-/n", __func__); //HTC_Kris--- /* HTC added start */ dump_mdm_related_gpio(); //++SSD_RIL:20120724:delay 3 secs before call subsystem restart if ( get_radio_flag() & 0x0008 ) { mdelay(3000); } //--SSD_RIL /* HTC added end */ //HTC_Kris+++ //Before do radio restart, make sure mdm_hsic_phy is not suspended, otherwise, PORTSC will be kept at 1800 if (is_mdm_hsic_phy_suspended) { pr_info("%s(%d): is_mdm_hsic_phy_suspended:%d/n", __func__, __LINE__, is_mdm_hsic_phy_suspended); pr_info("%s(%d): wakeup hsic/n", __func__, __LINE__); spin_lock_irqsave(&mdm_hsic_wakeup_lock, flags); mdm_hsic_wakeup(); spin_unlock_irqrestore(&mdm_hsic_wakeup_lock, flags); //wait until mdm_hsic_phy is not suspended, at most 10 seconds for (i = 0; i < 100; i++) { msleep_interruptible(1000); if (!is_mdm_hsic_phy_suspended && !is_mdm_hsic_wakeup_in_progress) break; } pr_info("%s(%d): is_mdm_hsic_phy_suspended:%d/n", __func__, __LINE__, is_mdm_hsic_phy_suspended); } //HTC_Kris--- subsystem_restart(EXTERNAL_MODEM);}
开发者ID:jareddantis,项目名称:pulsar-kernel_enrc2b,代码行数:48,
示例27: modem_fatal_fnstatic void modem_fatal_fn(struct work_struct *work){ uint32_t modem_state; uint32_t panic_smsm_states = SMSM_RESET | SMSM_SYSTEM_DOWNLOAD; uint32_t reset_smsm_states = SMSM_SYSTEM_REBOOT_USR | SMSM_SYSTEM_PWRDWN_USR; pr_err("%s: Watchdog bite received from modem!/n", MODULE_NAME); modem_state = smsm_get_state(SMSM_MODEM_STATE); pr_err("%s: Modem SMSM state = 0x%x!", MODULE_NAME, modem_state); if (modem_state == 0 || modem_state & panic_smsm_states) { subsystem_restart("modem"); enable_irq(MARM_WDOG_EXPIRED); } else if (modem_state & reset_smsm_states) { pr_err("%s: User-invoked system reset/powerdown.", MODULE_NAME); soc_restart(RESTART_MODE_MODEM_WATCHDOG_BITE, "MODEM DOG!"); } else { int ret; void *hwio_modem_reset_addr = ioremap_nocache(MODEM_HWIO_MSS_RESET_ADDR, 8); pr_err("%s: Modem AHB locked up./n", MODULE_NAME); pr_err("%s: Trying to free up modem!/n", MODULE_NAME); /* We don't want it happens */ BUG_ON(!hwio_modem_reset_addr); writel(0x3, hwio_modem_reset_addr); /* If we are still alive after 6 seconds (allowing for * the 5-second-delayed-panic-reboot), modem is either * still wedged or SMSM didn't come through. Force panic * in that case. */ ret = schedule_delayed_work(&modem_unlock_timeout_work, msecs_to_jiffies(6000)); iounmap(hwio_modem_reset_addr); }}
开发者ID:84506232,项目名称:htc-rider-ics-kernel,代码行数:47,
示例28: modem_wdog_checkstatic void modem_wdog_check(struct work_struct *work){ void __iomem *q6_sw_wdog_addr; u32 regval; q6_sw_wdog_addr = ioremap_nocache(Q6_SW_WDOG_ENABLE, 4); if (!q6_sw_wdog_addr) panic("Unable to check modem watchdog status./n"); regval = readl_relaxed(q6_sw_wdog_addr); if (!regval) { pr_err("modem-8960: Modem watchdog wasn't activated!. Restarting the modem now./n"); subsystem_restart("modem"); } iounmap(q6_sw_wdog_addr);}
开发者ID:NieNs,项目名称:IM-A840S-kernel-1,代码行数:17,
示例29: riva_subsystem_restart_by_hostvoid riva_subsystem_restart_by_host(void){ riva_crash = true; if (ss_restart_inprogress) { pr_err("%s: Ignoring riva restart by host, restart in progress/n", MODULE_NAME); return; } if (!enable_riva_ssr) { ssr_set_restart_reason("riva fatal: RIVA restart by host, mostly casued by WDI timeout"); panic(MODULE_NAME ": Riva restart by host. Mostly casued by WDI timeout"); } ss_restart_inprogress = true; subsystem_restart("riva");}
开发者ID:Ca1ne,项目名称:Enoch316,代码行数:17,
示例30: smsm_state_cbstatic void smsm_state_cb(void *data, uint32_t old_state, uint32_t new_state){ /* Ignore if we're the one that set SMSM_RESET */ if (crash_shutdown) return; if (new_state & SMSM_RESET) { pr_err("Modem SMSM state changed to SMSM_RESET./n" "Probable err_fatal on the modem. " "Calling subsystem restart.../n");#ifdef FEATURE_PANTECH_WLAN_QCOM_PATCH //lee.eunsuk 20120423, SSR panic(MODULE_NAME "Modem crashed.");#else subsystem_restart("modem");#endif }}
开发者ID:NieNs,项目名称:IM-A840S-kernel-1,代码行数:17,
注:本文中的subsystem_restart函数示例整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。 C++ subsystem_restart_dev函数代码示例 C++ subsys_to_drv函数代码示例 |