diff options
author | Arnd Bergmann <arnd@arndb.de> | 2017-08-16 21:49:26 +0200 |
---|---|---|
committer | Arnd Bergmann <arnd@arndb.de> | 2017-08-16 21:49:26 +0200 |
commit | 900452f3046521845fb7c3b1e263e8c9cd4c4827 (patch) | |
tree | ecedf2d7d7ac7eb7ae46f02bff513197c8ef9317 /drivers/soc | |
parent | 526ca89ebeef0a2bf6bf5a612faf730ba894c0e0 (diff) | |
parent | 445c2410a449ae29c0ec0bb9cee8f38078c4a2f1 (diff) | |
download | op-kernel-dev-900452f3046521845fb7c3b1e263e8c9cd4c4827.zip op-kernel-dev-900452f3046521845fb7c3b1e263e8c9cd4c4827.tar.gz |
Merge tag 'qcom-drivers-for-4.14' of git://git.kernel.org/pub/scm/linux/kernel/git/agross/linux into next/drivers
Pull "Qualcomm ARM Based Driver Updates for v4.14" from Andy Gross:
* Minor fixes for SMSM and WCNSS_CTRL
* Move Qcom SoC drivers to submenu
* Fix mdt_loader to use request_firmware_into_buf()
* tag 'qcom-drivers-for-4.14' of git://git.kernel.org/pub/scm/linux/kernel/git/agross/linux:
soc: qcom: mdt_loader: Use request_firmware_into_buf()
soc: qcom: bring all qcom drivers into a submenu
soc: qcom: wcnss_ctrl: add missing MODULE_DEVICE_TABLE()
soc: qcom: smsm: fix of_node refcnting problem
Diffstat (limited to 'drivers/soc')
-rw-r--r-- | drivers/soc/qcom/Kconfig | 4 | ||||
-rw-r--r-- | drivers/soc/qcom/mdt_loader.c | 5 | ||||
-rw-r--r-- | drivers/soc/qcom/smsm.c | 3 | ||||
-rw-r--r-- | drivers/soc/qcom/wcnss_ctrl.c | 1 |
4 files changed, 9 insertions, 4 deletions
diff --git a/drivers/soc/qcom/Kconfig b/drivers/soc/qcom/Kconfig index 9fca977..5f12657 100644 --- a/drivers/soc/qcom/Kconfig +++ b/drivers/soc/qcom/Kconfig @@ -1,6 +1,8 @@ # # QCOM Soc drivers # +menu "Qualcomm SoC drivers" + config QCOM_GSBI tristate "QCOM General Serial Bus Interface" depends on ARCH_QCOM @@ -74,3 +76,5 @@ config QCOM_WCNSS_CTRL help Client driver for the WCNSS_CTRL SMD channel, used to download nv firmware to a newly booted WCNSS chip. + +endmenu diff --git a/drivers/soc/qcom/mdt_loader.c b/drivers/soc/qcom/mdt_loader.c index bd63df0..08bd854 100644 --- a/drivers/soc/qcom/mdt_loader.c +++ b/drivers/soc/qcom/mdt_loader.c @@ -178,14 +178,13 @@ int qcom_mdt_load(struct device *dev, const struct firmware *fw, if (phdr->p_filesz) { sprintf(fw_name + fw_name_len - 3, "b%02d", i); - ret = request_firmware(&seg_fw, fw_name, dev); + ret = request_firmware_into_buf(&seg_fw, fw_name, dev, + ptr, phdr->p_filesz); if (ret) { dev_err(dev, "failed to load %s\n", fw_name); break; } - memcpy(ptr, seg_fw->data, seg_fw->size); - release_firmware(seg_fw); } diff --git a/drivers/soc/qcom/smsm.c b/drivers/soc/qcom/smsm.c index dc540ea9..403bea9 100644 --- a/drivers/soc/qcom/smsm.c +++ b/drivers/soc/qcom/smsm.c @@ -496,7 +496,8 @@ static int qcom_smsm_probe(struct platform_device *pdev) if (!smsm->hosts) return -ENOMEM; - local_node = of_find_node_with_property(pdev->dev.of_node, "#qcom,smem-state-cells"); + local_node = of_find_node_with_property(of_node_get(pdev->dev.of_node), + "#qcom,smem-state-cells"); if (!local_node) { dev_err(&pdev->dev, "no state entry\n"); return -EINVAL; diff --git a/drivers/soc/qcom/wcnss_ctrl.c b/drivers/soc/qcom/wcnss_ctrl.c index b906918..d008e5b 100644 --- a/drivers/soc/qcom/wcnss_ctrl.c +++ b/drivers/soc/qcom/wcnss_ctrl.c @@ -347,6 +347,7 @@ static const struct of_device_id wcnss_ctrl_of_match[] = { { .compatible = "qcom,wcnss", }, {} }; +MODULE_DEVICE_TABLE(of, wcnss_ctrl_of_match); static struct rpmsg_driver wcnss_ctrl_driver = { .probe = wcnss_ctrl_probe, |