Loading drivers/sensors/sensors_ssc.c +14 −3 Original line number Diff line number Diff line /* Copyright (c) 2012-2016, The Linux Foundation. All rights reserved. /* Copyright (c) 2012-2017, The Linux Foundation. All rights reserved. * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License version 2 and Loading Loading @@ -26,6 +26,8 @@ #include <linux/err.h> #include <linux/delay.h> #include <linux/sysfs.h> #include <linux/workqueue.h> #include <soc/qcom/subsystem_restart.h> #define IMAGE_LOAD_CMD 1 Loading Loading @@ -110,10 +112,11 @@ static struct attribute *attrs[] = { }; static struct platform_device *slpi_private; static struct work_struct slpi_ldr_work; static void slpi_loader_do(struct platform_device *pdev) static void slpi_load_fw(struct work_struct *slpi_ldr_work) { struct platform_device *pdev = slpi_private; struct slpi_loader_private *priv = NULL; if (!pdev) { Loading Loading @@ -148,6 +151,12 @@ fail: dev_err(&pdev->dev, "%s: SLPI image loading failed\n", __func__); } static void slpi_loader_do(struct platform_device *pdev) { dev_info(&pdev->dev, "%s: scheduling work to load SLPI fw\n", __func__); schedule_work(&slpi_ldr_work); } static void slpi_loader_unload(struct platform_device *pdev) { struct slpi_loader_private *priv = NULL; Loading Loading @@ -426,6 +435,8 @@ static int sensors_ssc_probe(struct platform_device *pdev) goto cdev_add_err; } INIT_WORK(&slpi_ldr_work, slpi_load_fw); return 0; cdev_add_err: Loading drivers/soc/qcom/qdsp6v2/adsp-loader.c +14 −3 Original line number Diff line number Diff line /* * Copyright (c) 2012-2014,2016 The Linux Foundation. All rights reserved. * Copyright (c) 2012-2014, 2016, * 2017, The Linux Foundation. All rights reserved. * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License version 2 and Loading @@ -20,6 +21,8 @@ #include <linux/qdsp6v2/apr.h> #include <linux/of_device.h> #include <linux/sysfs.h> #include <linux/workqueue.h> #include <soc/qcom/subsystem_restart.h> #define Q6_PIL_GET_DELAY_MS 100 Loading @@ -44,12 +47,13 @@ static struct attribute *attrs[] = { NULL, }; static struct work_struct adsp_ldr_work; static struct platform_device *adsp_private; static void adsp_loader_unload(struct platform_device *pdev); static void adsp_loader_do(struct platform_device *pdev) static void adsp_load_fw(struct work_struct *adsp_ldr_work) { struct platform_device *pdev = adsp_private; struct adsp_loader_private *priv = NULL; const char *adsp_dt = "qcom,adsp-state"; Loading Loading @@ -146,6 +150,11 @@ fail: return; } static void adsp_loader_do(struct platform_device *pdev) { dev_info(&pdev->dev, "%s: scheduling work to load ADSP fw\n", __func__); schedule_work(&adsp_ldr_work); } static ssize_t adsp_boot_store(struct kobject *kobj, struct kobj_attribute *attr, Loading Loading @@ -270,6 +279,8 @@ static int adsp_loader_probe(struct platform_device *pdev) return ret; } INIT_WORK(&adsp_ldr_work, adsp_load_fw); return 0; } Loading Loading
drivers/sensors/sensors_ssc.c +14 −3 Original line number Diff line number Diff line /* Copyright (c) 2012-2016, The Linux Foundation. All rights reserved. /* Copyright (c) 2012-2017, The Linux Foundation. All rights reserved. * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License version 2 and Loading Loading @@ -26,6 +26,8 @@ #include <linux/err.h> #include <linux/delay.h> #include <linux/sysfs.h> #include <linux/workqueue.h> #include <soc/qcom/subsystem_restart.h> #define IMAGE_LOAD_CMD 1 Loading Loading @@ -110,10 +112,11 @@ static struct attribute *attrs[] = { }; static struct platform_device *slpi_private; static struct work_struct slpi_ldr_work; static void slpi_loader_do(struct platform_device *pdev) static void slpi_load_fw(struct work_struct *slpi_ldr_work) { struct platform_device *pdev = slpi_private; struct slpi_loader_private *priv = NULL; if (!pdev) { Loading Loading @@ -148,6 +151,12 @@ fail: dev_err(&pdev->dev, "%s: SLPI image loading failed\n", __func__); } static void slpi_loader_do(struct platform_device *pdev) { dev_info(&pdev->dev, "%s: scheduling work to load SLPI fw\n", __func__); schedule_work(&slpi_ldr_work); } static void slpi_loader_unload(struct platform_device *pdev) { struct slpi_loader_private *priv = NULL; Loading Loading @@ -426,6 +435,8 @@ static int sensors_ssc_probe(struct platform_device *pdev) goto cdev_add_err; } INIT_WORK(&slpi_ldr_work, slpi_load_fw); return 0; cdev_add_err: Loading
drivers/soc/qcom/qdsp6v2/adsp-loader.c +14 −3 Original line number Diff line number Diff line /* * Copyright (c) 2012-2014,2016 The Linux Foundation. All rights reserved. * Copyright (c) 2012-2014, 2016, * 2017, The Linux Foundation. All rights reserved. * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License version 2 and Loading @@ -20,6 +21,8 @@ #include <linux/qdsp6v2/apr.h> #include <linux/of_device.h> #include <linux/sysfs.h> #include <linux/workqueue.h> #include <soc/qcom/subsystem_restart.h> #define Q6_PIL_GET_DELAY_MS 100 Loading @@ -44,12 +47,13 @@ static struct attribute *attrs[] = { NULL, }; static struct work_struct adsp_ldr_work; static struct platform_device *adsp_private; static void adsp_loader_unload(struct platform_device *pdev); static void adsp_loader_do(struct platform_device *pdev) static void adsp_load_fw(struct work_struct *adsp_ldr_work) { struct platform_device *pdev = adsp_private; struct adsp_loader_private *priv = NULL; const char *adsp_dt = "qcom,adsp-state"; Loading Loading @@ -146,6 +150,11 @@ fail: return; } static void adsp_loader_do(struct platform_device *pdev) { dev_info(&pdev->dev, "%s: scheduling work to load ADSP fw\n", __func__); schedule_work(&adsp_ldr_work); } static ssize_t adsp_boot_store(struct kobject *kobj, struct kobj_attribute *attr, Loading Loading @@ -270,6 +279,8 @@ static int adsp_loader_probe(struct platform_device *pdev) return ret; } INIT_WORK(&adsp_ldr_work, adsp_load_fw); return 0; } Loading