30 Dec, 2020

2 commits

  • [ Upstream commit c3d4e5b12672bbdf63f4cc933e3169bc6bbec8da ]

    platform_get_resource() may fail and in this case a NULL dereference
    will occur.

    Fix it to use devm_platform_ioremap_resource() instead of calling
    platform_get_resource() and devm_ioremap().

    This is detected by Coccinelle semantic patch.

    @@
    expression pdev, res, n, t, e, e1, e2;
    @@

    res = \(platform_get_resource\|platform_get_resource_byname\)(pdev, t,
    n);
    + if (!res)
    + return -EINVAL;
    ... when != res == NULL
    e = devm_ioremap(e1, res->start, e2);

    Fixes: dc160e449122 ("remoteproc: qcom: Introduce Non-PAS ADSP PIL driver")
    Signed-off-by: Zhang Changzhong
    Link: https://lore.kernel.org/r/1607392460-20516-1-git-send-email-zhangchangzhong@huawei.com
    Signed-off-by: Bjorn Andersson
    Signed-off-by: Sasha Levin

    Zhang Changzhong
     
  • [ Upstream commit aa37448f597c09844942da87d042fc6793f989c2 ]

    pm_runtime_get_sync will increment pm usage counter even it
    failed. Forgetting to pm_runtime_put_noidle will result in
    reference leak in adsp_start, so we should fix it.

    Fixes: dc160e4491222 ("remoteproc: qcom: Introduce Non-PAS ADSP PIL driver")
    Signed-off-by: Zhang Qilong
    Link: https://lore.kernel.org/r/20201102143534.144484-1-zhangqilong3@huawei.com
    Signed-off-by: Bjorn Andersson
    Signed-off-by: Sasha Levin

    Zhang Qilong
     

02 Jul, 2020

1 commit

  • Update the PIL relocation information in IMEM with information about
    where the firmware for various remoteprocs are loaded.

    Reviewed-by: Vinod Koul
    Reviewed-by: Stephen Boyd
    Signed-off-by: Bjorn Andersson
    Link: https://lore.kernel.org/r/20200622191942.255460-4-bjorn.andersson@linaro.org
    Signed-off-by: Bjorn Andersson

    Bjorn Andersson
     

08 May, 2020

1 commit

  • Pass ssr_name to glink subdevice in preparation for tying glink_ssr to
    the glink subdevice, rather than having its own "ssr subdevice".

    Acked-by: Chris Lew
    Acked-by: Mathieu Poirier
    Acked-by: Rishabh Bhatnagar
    Link: https://lore.kernel.org/r/20200423003736.2027371-2-bjorn.andersson@linaro.org
    Signed-off-by: Bjorn Andersson

    Bjorn Andersson
     

20 Apr, 2020

1 commit

  • Modify drivers which are using remoteproc coredump functionality to use
    rproc_coredump_set_elf_info in order to create correct elf coredump
    format.

    Reviewed-by: Bjorn Andersson
    Reviewed-by: Mathieu Poirier
    Signed-off-by: Clement Leger
    Link: https://lore.kernel.org/r/20200410102433.2672-3-cleger@kalray.eu
    Signed-off-by: Bjorn Andersson

    Clement Leger
     

26 Mar, 2020

2 commits

  • Make the PAS and ADSP/CDSP remoteproc drivers implement the panic
    handler that will invoke a stop to prepare the remoteprocs for post
    mortem debugging.

    Reviewed-by: Mathieu Poirier
    Link: https://lore.kernel.org/r/20200324052904.738594-5-bjorn.andersson@linaro.org
    Signed-off-by: Bjorn Andersson

    Bjorn Andersson
     
  • With upcoming changes in elf loader for elf64 support, section size will
    be a u64. When used with da_to_va, this will potentially lead to
    overflow if using the current "int" type for len argument. Change
    da_to_va prototype to use a size_t for len and fix all users of this
    function.

    Reviewed-by: Bjorn Andersson
    Reviewed-by: Mathieu Poirier
    Signed-off-by: Clement Leger
    Link: https://lore.kernel.org/r/20200302093902.27849-2-cleger@kalray.eu
    Signed-off-by: Bjorn Andersson

    Clement Leger
     

22 May, 2019

1 commit

  • Move the clock list to adsp_pil_data, make the pdc_reset optional and
    make the driver directly enable the xo, sleep and core clocks.

    The three clocks are previously toggled through the clock controller,
    but that means the same hardware block needs to be mapped in both
    drivers. Making the remoteproc driver enable the clocks is a nop when
    using the clock controller, but allow us to remove the clocks from the
    clock controller.

    Reviewed-by: Vinod Koul
    Signed-off-by: Bjorn Andersson

    Bjorn Andersson
     

18 Feb, 2019

1 commit


22 Jan, 2019

1 commit

  • Add shutdown-ack irq handling required for sysmon shutdown for
    Q6V5 MSS on SDM845/MSM8996 and for WCSS Q6V5 on QCS404 SoC.

    Signed-off-by: Sibi Sankar
    [bjorn: Revert back to qcom_add_sysmon_subdev returning a sysmon object]
    Signed-off-by: Bjorn Andersson

    Sibi Sankar
     

10 Oct, 2018

1 commit

  • In case of error, the functions devm_kcalloc() and devm_ioremap()
    returns NULL pointer not ERR_PTR(). The IS_ERR() test in the return
    value check should be replaced with NULL test.

    Also removed -EPROBE_DEFER check since devm_kcalloc never return
    this error.

    Fixes: dc160e449122 ("remoteproc: qcom: Introduce Non-PAS ADSP PIL driver")
    Signed-off-by: Wei Yongjun
    Signed-off-by: Bjorn Andersson

    Wei Yongjun
     

06 Oct, 2018

1 commit

  • This adds Non PAS ADSP PIL driver for Qualcomm Technologies Inc SoCs.

    Added initial support for SDM845 with ADSP bootup and shutdown operation
    handled from Application Processor SubSystem(APSS).

    Reviewed-by: Sibi Sankar
    Tested-by: Sibi Sankar
    Signed-off-by: Rohit kumar
    [bjorn: Renamed driver and Kconfig from qcom_adsp_pil to qcom_q6v5_adsp]
    Signed-off-by: Bjorn Andersson

    Rohit kumar