static void work_function_firmware_update(struct work_struct *work) { struct ssp_data *data = container_of((struct delayed_work *)work, struct ssp_data, work_firmware); int iRet = 0; pr_info("[SSP] : %s start\n", __func__); iRet = forced_to_download_binary(data, KERNEL_BINARY); if (iRet < 0) { ssp_dbg("[SSP]: %s - forced_to_download_binary failed!\n", __func__); return; } data->uCurFirmRev = get_firmware_rev(data); pr_info("[SSP] MCU Firm Rev : New = %8u\n", data->uCurFirmRev); if (data->check_lpmode() == true) { data->bLpModeEnabled = true; pr_info("[SSP]: LPM Charging...\n"); } else { data->bLpModeEnabled = false; pr_info("[SSP]: Normal Booting OK\n"); } pr_info("[SSP] : %s done\n!", __func__); }
ssize_t mcu_update_kernel_crashed_bin_show(struct device *dev, struct device_attribute *attr, char *buf) { bool bSuccess = false; int iRet = 0; struct ssp_data *data = dev_get_drvdata(dev); ssp_dbg("[SSP]: %s - mcu binany update!\n", __func__); iRet = forced_to_download_binary(data, UMS_BINARY); if (iRet == SUCCESS) { bSuccess = true; goto out; } iRet = forced_to_download_binary(data, KERNEL_CRASHED_BINARY); if (iRet == SUCCESS) bSuccess = true; else bSuccess = false; out: return sprintf(buf, "%s\n", (bSuccess ? "OK" : "NG")); }
static void work_function_firmware_update(struct work_struct *work) { struct ssp_data *data = container_of((struct delayed_work *)work, struct ssp_data, work_firmware); int iRet; ssp_infof(); iRet = forced_to_download_binary(data, KERNEL_BINARY); if (iRet < 0) { ssp_infof("forced_to_download_binary failed!"); data->uSensorState = 0; return; } queue_refresh_task(data, SSP_SW_RESET_TIME); }
static void work_function_firmware_update(struct work_struct *work) { struct ssp_data *data = container_of((struct delayed_work *)work, struct ssp_data, work_firmware); int iRet = 0; pr_info("[SSP] : %s\n", __func__); iRet = forced_to_download_binary(data, KERNEL_BINARY); if (iRet < 0) { ssp_dbg("[SSP]: %s - forced_to_download_binary failed!\n", __func__); return; } if (data->uCurFirmRev == SSP_INVALID_REVISION) queue_refresh_task(data, SSP_SW_RESET_TIME); }
static void work_function_firmware_update(struct work_struct *work) { struct ssp_data *data = container_of((struct delayed_work *)work, struct ssp_data, work_firmware); int iRet = 0; pr_info("[SSP] : %s\n", __func__); iRet = forced_to_download_binary(data, KERNEL_BINARY); if (iRet < 0) { ssp_dbg("[SSP]: %s - forced_to_download_binary failed!\n", __func__); return; } data->uCurFirmRev = get_firmware_rev(data); pr_info("[SSP] MCU Firm Rev : New = %8u\n", data->uCurFirmRev); }