On Wed, 25 Sept 2024 at 10:35, Jingyi Wang wrote:
>
>
>
> On 9/25/2024 4:01 PM, Dmitry Baryshkov wrote:
> > On Wed, Sep 25, 2024 at 03:21:37PM GMT, Jingyi Wang wrote:
> >> Document the components used to boot the ADSP, CDSP and GPDSP on the
> >> Qualcomm QCS83
775p-gpdsp0-pas
> + - qcom,sa8775p-gpdsp1-pas
> then:
>properties:
> power-domains:
>
> ---
> base-commit: 4d0326b60bb753627437fff0f76bf1525bcda422
> change-id: 20240925-qcs8300_remoteproc_binding-a2837bab2150
>
> Best regards,
> --
> Jingyi Wang
>
--
With best wishes
Dmitry
free(fw_name);
>
> return ret < 0 ? ret : 0;
> +
> +e_inval_unmap:
> + ret = -EINVAL;
> +unmap_mem:
> + memunmap(ptr);
> + goto release_firmware;
Ugh. No. ptr should be a variable that is declared inside the loop.
Calling memunmap outside of the for loop is incorrect. And goto just
complicates things by adding non-linearity.
> }
>
> static void qcom_q6v5_dump_segment(struct rproc *rproc,
> --
> 2.46.1
>
--
With best wishes
Dmitry
On Fri, 6 Sept 2024 at 09:15, Jingyi Wang wrote:
>
> Hi Dmitry,
>
> On 9/6/2024 11:18 AM, Dmitry Baryshkov wrote:
> > On Thu, Sep 05, 2024 at 12:54:35PM GMT, Jingyi Wang wrote:
> >>
> >>
> >> On 9/4/2024 5:39 PM, Krzysztof Kozlowski wrote:
IG_INTERCONNECT_QCOM_QCS404=m
> >> +CONFIG_INTERCONNECT_QCOM_QCS8300=y
> >
> > Why this cannot be a module?
> >
> >
> I think the commit-msg "It needs to be built-in for UART to provide a
> console." can
> explain that, could you please help to share your insights on that?
Unless loading these modules from initramfs doesn't work, please use =m.
The drivers that are enabled here are going to be enabled for everybody
using arm64 defconfig, taking up memory on their platforms, etc.
--
With best wishes
Dmitry
contains:
> enum:
>- qcom,msm8998-qmp-ufs-phy
> + - qcom,qcs8300-qmp-ufs-phy
>- qcom,sa8775p-qmp-ufs-phy
>- qcom,sc7180-qmp-ufs-phy
>- qcom,sc7280-qmp-ufs-phy
>
> --
> 2.25.1
>
--
With best wishes
Dmitry
+}
> +
> +static void wcss_sec_remove(struct platform_device *pdev)
> +{
> + struct rproc *rproc = platform_get_drvdata(pdev);
> + struct wcss_sec *wcss = rproc->priv;
> +
> + qcom_q6v5_deinit(&wcss->q6);
> +
> + rproc_del(rproc);
> + rproc_free(rproc);
> +}
> +
> +static int wcss_sec_ipq5332_init_clk(struct wcss_sec *wcss)
> +{
> + int ret;
> + struct device *dev = wcss->dev;
> +
> + wcss->sleep_clk = devm_clk_get_enabled(dev, "sleep");
> + if (IS_ERR(wcss->sleep_clk)) {
> + return dev_err_probe(dev, PTR_ERR(wcss->sleep_clk),
> + "Could not get sleep clock\n");
> + }
> +
> + return 0;
> +}
> +
> +static const struct wcss_data wcss_sec_ipq5332_res_init = {
> + .pasid = MPD_WCSS_PAS_ID,
> + .ops = &wcss_sec_ops,
> + .bootargs_version = 2,
> + .init_clk = wcss_sec_ipq5332_init_clk,
> +};
> +
> +static const struct wcss_data wcss_sec_ipq9574_res_init = {
> + .pasid = WCSS_PAS_ID,
> + .ops = &wcss_sec_ops,
> +};
> +
> +static const struct of_device_id wcss_sec_of_match[] = {
> + { .compatible = "qcom,ipq5332-wcss-sec-pil", .data =
> &wcss_sec_ipq5332_res_init },
> + { .compatible = "qcom,ipq9574-wcss-sec-pil", .data =
> &wcss_sec_ipq9574_res_init },
> + { },
> +};
> +MODULE_DEVICE_TABLE(of, wcss_sec_of_match);
> +
> +static struct platform_driver wcss_sec_driver = {
> + .probe = wcss_sec_probe,
> + .remove = wcss_sec_remove,
> + .driver = {
> + .name = "qcom-wcss-secure-pil",
> + .of_match_table = wcss_sec_of_match,
> + },
> +};
> +module_platform_driver(wcss_sec_driver);
> +
> +MODULE_DESCRIPTION("Hexagon WCSS Secure Peripheral Image Loader");
> +MODULE_LICENSE("GPL");
> --
> 2.34.1
>
--
With best wishes
Dmitry
> + interrupts:
> +items:
> + - description: Watchdog interrupt
> + - description: Fatal interrupt
> + - description: Ready interrupt
> + - description: Handover interrupt
> + - description: Stop acknowledge interrupt
Does it make sense to make use of qcom,pas-common.yaml?
> +
> + interrupt-names:
> +items:
> + - const: wdog
> + - const: fatal
> + - const: ready
> + - const: handover
> + - const: stop-ack
> +
--
With best wishes
Dmitry
de
> +#include
> #include "qcom_common.h"
> #include "qcom_pil_info.h"
> #include "qcom_q6v5.h"
> @@ -93,7 +94,7 @@ enum {
>
> struct wcss_data {
> const char *firmware_name;
> - unsigned int crash_reason_smem;
> + unsigned int crash_reason_item;
> u32 version;
> bool aon_reset_required;
> bool wcss_q6_reset_required;
> @@ -143,7 +144,7 @@ struct q6v5_wcss {
> void *mem_region;
> size_t mem_size;
>
> - unsigned int crash_reason_smem;
> + unsigned int crash_reason_item;
> u32 version;
> bool requires_force_stop;
>
> @@ -1048,7 +1049,8 @@ static int q6v5_wcss_probe(struct platform_device *pdev)
> if (ret)
> return ret;
>
> - ret = qcom_q6v5_init(&wcss->q6v5, pdev, rproc, desc->crash_reason_smem,
> NULL, NULL);
> + ret = qcom_q6v5_init(&wcss->q6v5, pdev, rproc, QCOM_SMEM_HOST_ANY,
> + desc->crash_reason_item, NULL, NULL);
> if (ret)
> return ret;
>
> @@ -1082,7 +1084,7 @@ static void q6v5_wcss_remove(struct platform_device
> *pdev)
>
> static const struct wcss_data wcss_ipq8074_res_init = {
> .firmware_name = "IPQ8074/q6_fw.mdt",
> - .crash_reason_smem = WCSS_CRASH_REASON,
> + .crash_reason_item = WCSS_CRASH_REASON,
> .aon_reset_required = true,
> .wcss_q6_reset_required = true,
> .ops = &q6v5_wcss_ipq8074_ops,
> @@ -1090,7 +1092,7 @@ static const struct wcss_data wcss_ipq8074_res_init = {
> };
>
> static const struct wcss_data wcss_qcs404_res_init = {
> - .crash_reason_smem = WCSS_CRASH_REASON,
> + .crash_reason_item = WCSS_CRASH_REASON,
> .firmware_name = "wcnss.mdt",
> .version = WCSS_QCS404,
> .aon_reset_required = false,
> diff --git a/drivers/remoteproc/qcom_q6v5_wcss_sec.c
> b/drivers/remoteproc/qcom_q6v5_wcss_sec.c
> index 8516e17521ea..b5ac3f52075f 100644
> --- a/drivers/remoteproc/qcom_q6v5_wcss_sec.c
> +++ b/drivers/remoteproc/qcom_q6v5_wcss_sec.c
> @@ -26,6 +26,7 @@
> #include "remoteproc_internal.h"
>
> #define WCSS_CRASH_REASON421
> +#define WCSS_SMEM_HOST 1
>
> #define WCSS_PAS_ID 0x6
> #define MPD_WCSS_PAS_ID 0xD
> @@ -268,7 +269,7 @@ static int wcss_sec_probe(struct platform_device *pdev)
> goto free_rproc;
> }
>
> - ret = qcom_q6v5_init(&wcss->q6, pdev, rproc,
> + ret = qcom_q6v5_init(&wcss->q6, pdev, rproc, WCSS_SMEM_HOST,
>WCSS_CRASH_REASON, NULL, NULL);
> if (ret)
> goto free_rproc;
> --
> 2.34.1
>
--
With best wishes
Dmitry
gt; include/linux/remoteproc.h| 3 ++
> include/linux/remoteproc/qcom_rproc.h | 17
> 4 files changed, 92 insertions(+)
--
With best wishes
Dmitry
Add the generic qcom,smd-rpm / qcom,glink-smd-rpm compatible to RPM
nodes to follow the schema.
Signed-off-by: Dmitry Baryshkov
---
arch/arm64/boot/dts/qcom/ipq6018.dtsi | 2 +-
arch/arm64/boot/dts/qcom/ipq9574.dtsi | 2 +-
arch/arm64/boot/dts/qcom/msm8916.dtsi | 2 +-
arch/arm64/boot/dts/qcom
Add the generic qcom,smd-rpm compatible to RPM nodes to follow the
schema.
Signed-off-by: Dmitry Baryshkov
---
arch/arm/boot/dts/qcom/qcom-apq8084.dtsi | 2 +-
arch/arm/boot/dts/qcom/qcom-msm8226.dtsi | 2 +-
arch/arm/boot/dts/qcom/qcom-msm8974.dtsi | 2 +-
3 files changed, 3 insertions(+), 3
Add the generic qcom,smd-rpm and qcom,glink-smd-rpm compatibles so that
there is no need to add further compat strings to the list. Existing
strings are intact to keep compatibility with existing DTS.
Signed-off-by: Dmitry Baryshkov
---
drivers/soc/qcom/smd-rpm.c | 6 ++
1 file changed, 6
Add two generic compatibles to all smd-rpm devices, they follow the same
RPMSG protocol and are either accessed through the smd-edge or through
the glink-edge.
Signed-off-by: Dmitry Baryshkov
---
.../devicetree/bindings/clock/qcom,rpmcc.yaml | 2 +-
.../bindings/remoteproc/qcom,glink-rpm
tead.
Signed-off-by: Dmitry Baryshkov
---
Changes in v2:
- Separate fix from the improvements (Krzysztof
- Split the qcom,glink-smd-rpm compat from the qcom,smd-rpm as they use
different channels underneath.
- Link to v1:
https://lore.kernel.org/r/20240729-fix-smd-rpm-v1-0-99a96133c...@linaro.org
instead of compatible")
Fixes: bcabe1e09135 ("soc: qcom: smd-rpm: Match rpmsg channel instead of
compatible")
Cc: sta...@vger.kernel.org
Signed-off-by: Dmitry Baryshkov
---
drivers/soc/qcom/smd-rpm.c | 35 ++-
1 file changed, 26 insertions(+), 9 d
dphone Jack"),
> SOC_DAPM_PIN_SWITCH("Mic Jack"),
> @@ -343,6 +405,8 @@ static int apq8016_sbc_platform_probe(struct
> platform_device *pdev)
> static const struct of_device_id apq8016_sbc_device_id[] __maybe_unused = {
> { .compatible = "qcom,apq8016-sbc-sndcard", .data = apq8016_sbc_add_ops
> },
> { .compatible = "qcom,msm8916-qdsp6-sndcard", .data =
> msm8916_qdsp6_add_ops },
> + { .compatible = "qcom,msm8953-qdsp6-sndcard", .data =
> msm8953_qdsp6_add_ops },
> + { .compatible = "qcom,msm8976-qdsp6-sndcard", .data =
> msm8976_qdsp6_add_ops },
> {},
> };
> MODULE_DEVICE_TABLE(of, apq8016_sbc_device_id);
> --
> 2.45.2
>
--
With best wishes
Dmitry
qcom,msm8916-qdsp6-sndcard
then:
properties:
reg:
maxItems: 2
reg-names:
maxItems: 2
else:
properties:
reg:
maxItems: 3
reg-names:
maxItems: 3
> +
> additionalProperties: false
>
> examples:
> --
> 2.45.2
>
--
With best wishes
Dmitry
n[reg].def);
> + else
> + for (reg = 0; reg < ARRAY_SIZE(wcd_reg_defaults_2_0); reg++)
> + snd_soc_component_write(component,
> wcd_reg_defaults_2_0[reg].reg,
> + wcd_reg_defaults_2_0[reg].def);
I have mixed feelings towards this. Would it be better to use
PMIC-specific compatibles and pass register init as match data instead?
>
> priv->component = component;
>
> --
> 2.45.2
>
--
With best wishes
Dmitry
no quin-iomux. It's better to
call devm_ioremap_resource() only if res is not NULL.
LGTM otherwise
> +
> snd_soc_card_set_drvdata(card, data);
>
> add_ops(card);
> --
> 2.45.2
>
--
With best wishes
Dmitry
On Fri, Jul 12, 2024 at 03:52:27PM +0200, Jiri Olsa wrote:
> After discussing with Arnd [1] it's preferable to change uretprobe
> syscall number to 467 to omit the merge conflict with xattrat syscalls.
>
> Also changing the ABI to 'common' which will ease up the global
> scripts/syscall.tbl manage
>quin_iomux = devm_platform_ioremap_resource_byname(pdev,
> "quin-iomux");
This should probably handle -ENOENT (or -ENODEV?) case and set the
pointer to NULL.
> + if (IS_ERR(data->quin_iomux))
> + return PTR_ERR(data->quin_iomux);
> +
> snd_soc_card_set_drvdata(card, data);
>
> add_ops(card);
> --
> 2.45.2
>
--
With best wishes
Dmitry
On Tue, Jul 09, 2024 at 12:19:21PM GMT, Naina Mehta wrote:
> Add MPSS Peripheral Authentication Service support for SDX75 platform.
>
> Signed-off-by: Naina Mehta
> ---
> drivers/remoteproc/qcom_q6v5_pas.c | 1 +
> 1 file changed, 1 insertion(+)
>
Reviewed-by: Dmitry
On Wed, Jul 03, 2024 at 09:03:01AM GMT, Luca Weiss wrote:
> By default the DSP domains are non secure, add the missing
nit: secure
With that fixed:
Reviewed-by: Dmitry Baryshkov
> qcom,non-secure-domain property to mark them as non-secure.
>
> Fixes: efc33c969f23 ("arm64:
On Wed, Jul 03, 2024 at 09:01:03AM GMT, Luca Weiss wrote:
> Add the ID for the PM6350 PMIC found on e.g. SM7225 Fairphone 4.
>
> Signed-off-by: Luca Weiss
> ---
> drivers/soc/qcom/socinfo.c | 1 +
> 1 file changed, 1 insertion(+)
>
Reviewed-by: Dmitry Baryshkov
--
With best wishes
Dmitry
On Tue, Jul 02, 2024 at 11:18:07AM -0400, Steven Rostedt wrote:
> On Tue, 2 Jul 2024 10:36:03 -0400
> Mathieu Desnoyers wrote:
>
> > > I can send a patch this week to update it. Or feel free to send a patch
> > > yourself.
> >
> > You need to reserve an unused ioctl Code and Seq# range within:
On Tue, Jul 02, 2024 at 11:32:53AM -0400, Mathieu Desnoyers wrote:
[...]
> Note that user events also has this issue: the ioctl is not reserved in
> the ioctl-number.rst list. See include/uapi/linux/user_events.h:
>
> #define DIAG_IOC_MAGIC '*'
>
> /* Request to register a user_event */
> #define
| 1 +
> drivers/soc/qcom/smp2p.c | 9
> drivers/soc/qcom/trace-smp2p.h | 98 ++
> 3 files changed, 108 insertions(+)
> create mode 100644 drivers/soc/qcom/trace-smp2p.h
>
--
With best wishes
Dmitry
em
> 170: ... smp2p-modem 1 Edge q6v5 ready
> 178: ... smp2p-adsp 1 Edge q6v5 ready
>
> Signed-off-by: Chris Lew
Your sign-off is missing. LGTM otherwise
> ---
> drivers/soc/qcom/smp2p.c | 11 ++-
> 1 file changed, 10 insertions(+), 1 deletion(-)
>
>
--
With best wishes
Dmitry
hange the value of
TRACE_MMAP_IOCTL_GET_READER a bit to avoid this collision.
Given that _IO('T', 0x1) is _IOC(_IOC_NONE, 'T', 0x1, 0),
something like _IOC(_IOC_NONE, 'T', 0x1, 0x1) should be OK.
Fixes: cf9f0f7c4c5bb ("tracing: Allow user-space mapping of t
On Fri, May 10, 2024 at 03:04:32PM +0100, Vincent Donnefort wrote:
[...]
> diff --git a/include/uapi/linux/trace_mmap.h b/include/uapi/linux/trace_mmap.h
> index b682e9925539..bd1066754220 100644
> --- a/include/uapi/linux/trace_mmap.h
> +++ b/include/uapi/linux/trace_mmap.h
> @@ -43,4 +43,6 @@ str
reason about.
>
> Signed-off-by: Luca Weiss
> ---
> arch/arm64/boot/dts/qcom/sm7225-fairphone-fp4.dts | 34
> +++
> 1 file changed, 34 insertions(+)
>
Reviewed-by: Dmitry Baryshkov
--
With best wishes
Dmitry
On Thu, Jun 27, 2024 at 04:59:38PM GMT, Gokul Sriram P wrote:
>
> On 6/27/2024 4:38 PM, Dmitry Baryshkov wrote:
> > On Thu, Jun 27, 2024 at 03:31:01PM GMT, Gokul Sriram P wrote:
> > > On 6/27/2024 12:47 AM, Dmitry Baryshkov wrote:
> > > > On Tue, Jun 25, 2024
; ---
> drivers/remoteproc/qcom_q6v5_wcss.c | 33 +
> 1 file changed, 29 insertions(+), 4 deletions(-)
>
--
With best wishes
Dmitry
On Thu, Jun 27, 2024 at 03:31:01PM GMT, Gokul Sriram P wrote:
>
> On 6/27/2024 12:47 AM, Dmitry Baryshkov wrote:
> > On Tue, Jun 25, 2024 at 11:03:30AM GMT, Gokul Sriram P wrote:
> > > On 6/22/2024 2:38 AM, Dmitry Baryshkov wrote:
> > > > On Fri, Jun 21, 202
On Tue, Jun 25, 2024 at 11:03:30AM GMT, Gokul Sriram P wrote:
>
> On 6/22/2024 2:38 AM, Dmitry Baryshkov wrote:
> > On Fri, Jun 21, 2024 at 05:16:52PM GMT, Gokul Sriram Palanisamy wrote:
> > > PRNG clock is needed by the secure PIL, support for the same
> > >
The QCOM_PD_MAPPER implementation made Qualcomm remoteproc drivers use
auxiliary bus for the pd-mapper subdevice. Add necessary dependency.
Reported-by: Mark Brown
Fixes: 5b9f51b200dc ("remoteproc: qcom: enable in-kernel PD mapper")
Signed-off-by: Dmitry Baryshkov
---
drivers/
The pd-mapper driver uses auxiliary bus and Qualcomm PDR message format
data. Add missing dependencies to the driver's Kconfig entry.
Reported-by: Mark Brown
Fixes: 1ebcde047c54 ("soc: qcom: add pd-mapper implementation")
Signed-off-by: Dmitry Baryshkov
---
drivers/soc/qcom/Kc
While refactoring pd-mapper to use auxiliary bus for the PD mapper
instantiation I forgot to select the bus in Kconfig entries. Fix it now.
Signed-off-by: Dmitry Baryshkov
---
Dmitry Baryshkov (2):
soc: qcom: add missing pd-mapper dependencies
remoteproc: qcom: select AUXILIARY_BUS
s not correct. Please carefully read submitting
> patches, especially documents about authorship, DCO, reviewed tags.
Also there should be From: Nikhil header before the patch.
--
With best wishes
Dmitry
: Dmitry Baryshkov
---
drivers/remoteproc/qcom_common.c| 87 +
drivers/remoteproc/qcom_common.h| 10 +
drivers/remoteproc/qcom_q6v5_adsp.c | 3 ++
drivers/remoteproc/qcom_q6v5_mss.c | 3 ++
drivers/remoteproc/qcom_q6v5_pas.c | 3 ++
drivers
to match a
protection domains map for a particular board. It is not possible to
implement it as a 'driver' as there is no corresponding device.
Tested-by: Steev Klimaszewski
Tested-by: Alexey Minnekhanov
Reviewed-by: Chris Lew
Tested-by: Neil Armstrong # on SM8550-QRD
Signed-off-
hanov
Tested-by: Neil Armstrong # on SM8550-QRD
Signed-off-by: Dmitry Baryshkov
---
drivers/soc/qcom/Kconfig| 4 +
drivers/soc/qcom/Makefile | 1 +
drivers/soc/qcom/pdr_internal.h | 306 ++
drivers/soc/qcom/qcom_pdr_msg.c
lpers")
Tested-by: Steev Klimaszewski
Tested-by: Alexey Minnekhanov
Reviewed-by: Chris Lew
Tested-by: Neil Armstrong # on SM8550-QRD
Signed-off-by: Dmitry Baryshkov
---
drivers/soc/qcom/pdr_interface.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/drivers/soc/qcom/pdr_i
eil Armstrong # on SM8550-QRD
Tested-by: Steev Klimaszewski
Tested-by: Alexey Minnekhanov
Signed-off-by: Dmitry Baryshkov
---
drivers/soc/qcom/pdr_interface.c | 6 --
1 file changed, 4 insertions(+), 2 deletions(-)
diff --git a/drivers/soc/qcom/pdr_interface.c b/drivers/soc/qcom/pdr_inte
To: Bjorn Andersson
To: Konrad Dybcio
To: Sibi Sankar
To: Mathieu Poirier
Cc: linux-arm-...@vger.kernel.org
Cc: linux-kernel@vger.kernel.org
Cc: linux-remotep...@vger.kernel.org
---
Dmitry Baryshkov (5):
soc: qcom: pdr: protect locator_addr with the main mutex
soc: qcom: pdr: fi
o-common.dtsi | 2 +
> 4 files changed, 48 insertions(+)
> ---
> base-commit: cd214efd16e30bf1aa40ccfaaf9177f47dd21fd5
> change-id: 20240620-sony-aries-4a5bce06c91d
>
> Best regards,
> --
> Valeriy Klimin
>
--
With best wishes
Dmitry
his line in
2019.
> };
>
> static struct gdsc *gcc_ipq8074_gdscs[] = {
> --
> 2.34.1
>
--
With best wishes
Dmitry
t/dts/qcom/ipq8074.dtsi| 80 +
> drivers/clk/qcom/gcc-ipq8074.c | 1 +
> drivers/remoteproc/qcom_q6v5_wcss.c | 162 +++
> include/dt-bindings/clock/qcom,gcc-ipq8074.h | 1 +
> 4 files changed, 212 insertions(+), 32 deletions(-)
>
> --
> 2.34.1
>
--
With best wishes
Dmitry
sr_name = "q6wcss",
> .ops = &q6v5_wcss_ipq8074_ops,
> .requires_force_stop = true,
> .need_mem_protection = true,
> --
> 2.34.1
>
--
With best wishes
Dmitry
h/arm64/boot/dts/qcom/ipq8074.dtsi| 80 +
> drivers/clk/qcom/gcc-ipq8074.c | 1 +
> drivers/remoteproc/qcom_q6v5_wcss.c | 162 +++
> include/dt-bindings/clock/qcom,gcc-ipq8074.h | 1 +
> 4 files changed, 212 insertions(+), 32 deletions(-)
>
> --
> 2.34.1
>
--
With best wishes
Dmitry
ev->dev, pdev->name, desc->ops,
>desc->firmware_name, sizeof(*wcss));
> if (!rproc) {
> @@ -1048,6 +1083,7 @@ static int q6v5_wcss_probe(struct platform_device *pdev)
>
> wcss->version = desc->version;
> wcss->requires_force_stop = desc->requires_force_stop;
> + wcss->need_mem_protection = desc->need_mem_protection;
>
> ret = q6v5_wcss_init_mmio(wcss, pdev);
> if (ret)
> @@ -,6 +1147,7 @@ static const struct wcss_data wcss_ipq8074_res_init = {
> .wcss_q6_reset_required = true,
> .ops = &q6v5_wcss_ipq8074_ops,
> .requires_force_stop = true,
> + .need_mem_protection = true,
> };
>
> static const struct wcss_data wcss_qcs404_res_init = {
> --
> 2.34.1
>
--
With best wishes
Dmitry
oc_ops *ops;
> + bool requires_force_stop;
> +};
Move this back and use forward-declaration of struct q6v5_wcss.
> +
> static int q6v5_wcss_reset(struct q6v5_wcss *wcss)
> {
> int ret;
--
With best wishes
Dmitry
++-
> 1 file changed, 104 insertions(+), 1 deletion(-)
>
Reviewed-by: Dmitry Baryshkov
--
With best wishes
Dmitry
++-
> 1 file changed, 108 insertions(+), 1 deletion(-)
>
Reviewed-by: Dmitry Baryshkov
--
With best wishes
Dmitry
t; ---
> arch/arm/boot/dts/qcom/Makefile| 1 +
> .../qcom-msm8974pro-sony-xperia-shinano-aries.dts | 44
> ++
> 2 files changed, 45 insertions(+)
>
Reviewed-by: Dmitry Baryshkov
--
With best wishes
Dmitry
; regulator-boot-on;
> };
>
Just out of pure interest, how the value was choosen? Do you have any
reference to the vendor kernel or DT?
--
With best wishes
Dmitry
epare,
> .start = adsp_start,
> + .attach = adsp_attach,
> .stop = adsp_stop,
> .da_to_va = adsp_da_to_va,
> .parse_fw = qcom_register_dump_segments,
> @@ -779,6 +877,10 @@ static int adsp_probe(struct platform_device *pdev)
> if (ret)
> goto detach_proxy_pds;
>
> + if (adsp->q6v5.rmb_base &&
> + readl_relaxed(adsp->q6v5.rmb_base +
> RMB_Q6_BOOT_STATUS_REG))
Misaligned
> + rproc->state = RPROC_DETACHED;
> +
> qcom_add_glink_subdev(rproc, &adsp->glink_subdev, desc->ssr_name);
> qcom_add_smd_subdev(rproc, &adsp->smd_subdev);
> adsp->sysmon = qcom_add_sysmon_subdev(rproc,
> --
> 2.42.0
>
--
With best wishes
Dmitry
6v5.rmb_base = devm_platform_ioremap_resource_byname(pdev,
> "rmb");
> + if (IS_ERR(adsp->q6v5.rmb_base))
> + adsp->q6v5.rmb_base = NULL;
> +
> ret = qcom_q6v5_init(&adsp->q6v5, pdev, rproc, desc->crash_reason_smem,
> desc->load_state,
>qcom_pas_handover);
> if (ret)
> --
> 2.42.0
>
--
With best wishes
Dmitry
--
> 1 file changed, 3 insertions(+), 3 deletions(-)
>
Reviewed-by: Dmitry Baryshkov
--
With best wishes
Dmitry
-msm8226.dtsi | 25 +
> 1 file changed, 25 insertions(+)
>
Reviewed-by: Dmitry Baryshkov
--
With best wishes
Dmitry
tually be removed.
>
> Signed-off-by: Luca Weiss
> ---
--
With best wishes
Dmitry
ed, 1 insertion(+), 3 deletions(-)
>
Reviewed-by: Dmitry Baryshkov
--
With best wishes
Dmitry
ed, 1 insertion(+), 2 deletions(-)
>
Reviewed-by: Dmitry Baryshkov
--
With best wishes
Dmitry
ed, 1 insertion(+), 2 deletions(-)
>
Reviewed-by: Dmitry Baryshkov
--
With best wishes
Dmitry
ed, 1 insertion(+), 2 deletions(-)
>
Reviewed-by: Dmitry Baryshkov
--
With best wishes
Dmitry
ed, 1 insertion(+), 3 deletions(-)
>
Reviewed-by: Dmitry Baryshkov
--
With best wishes
Dmitry
tion become better supported?
Plesae stop this. cleanup.h might be a nice thing, but it should not be
used to make code less obvious or worse.
--
With best wishes
Dmitry
On Mon, Jun 17, 2024 at 03:04:27PM GMT, Naina Mehta wrote:
> Add MPSS remoteproc node for SDX75 SoC.
>
> Signed-off-by: Naina Mehta
> ---
> arch/arm64/boot/dts/qcom/sdx75.dtsi | 47 +
> 1 file changed, 47 insertions(+)
>
Reviewed-by: Dmitry Ba
On Mon, Jun 17, 2024 at 03:04:28PM GMT, Naina Mehta wrote:
> Enable MPSS remoteproc node on sdx75-idp platform.
>
> Signed-off-by: Naina Mehta
> ---
> arch/arm64/boot/dts/qcom/sdx75-idp.dts | 6 ++
> 1 file changed, 6 insertions(+)
>
Reviewed-by: Dmitry Baryshkov
---
> drivers/misc/fastrpc.c | 5 -
> 1 file changed, 4 insertions(+), 1 deletion(-)
>
Reviewed-by: Dmitry Baryshkov
--
With best wishes
Dmitry
>of_node, "memory-region", 0);
> + if (domain_id == SDSP_DOMAIN_ID && rmem_node) {
I think we can drop the domain_id check here.
The rest looks good to me.
Reviewed-by: Dmitry Baryshkov
> + u64 src_perms;
> +
> +
---
> 1 file changed, 4 insertions(+), 4 deletions(-)
>
Reviewed-by: Dmitry Baryshkov
--
With best wishes
Dmitry
On Thu, 6 Jun 2024 at 01:48, Chris Lew wrote:
>
> Hi Dmitry,
>
> On 5/11/2024 2:56 PM, Dmitry Baryshkov wrote:
> ...
> > @@ -76,12 +76,12 @@ static int pdr_locator_new_server(struct qmi_handle
> > *qmi,
> > locator_h
64/boot/dts/qcom/sm7225-fairphone-fp4.dts | 58
> +-
> 3 files changed, 108 insertions(+), 1 deletion(-)
>
Usually the SoC changes come in a separate patch, but I won't insist on
that.
Reviewed-by: Dmitry Baryshkov
--
With best wishes
Dmitry
.
>
> Reviewed-by: Bryan O'Donoghue
> Reviewed-by: Konrad Dybcio
> Signed-off-by: Luca Weiss
> ---
> arch/arm64/boot/dts/qcom/pm7250b.dtsi | 40
> +++
> 1 file changed, 40 insertions(+)
>
Reviewed-by: Dmitry Baryshkov
--
With best wishes
Dmitry
ca Weiss
> ---
> arch/arm64/boot/dts/qcom/pm7250b.dtsi | 6 ++
> 1 file changed, 6 insertions(+)
>
Reviewed-by: Dmitry Baryshkov
--
With best wishes
Dmitry
On Thu, 23 May 2024 at 01:48, Bjorn Andersson wrote:
>
> On Tue, May 21, 2024 at 03:08:31PM +0200, Dmitry Baryshkov wrote:
> > On Tue, 21 May 2024 at 13:20, Kalle Valo wrote:
> > >
> > > Dmitry Baryshkov writes:
> > >
> > > > On Tue, 21 May 202
ts/qcom/sa8775p-ride.dts | 25 +
> 1 file changed, 25 insertions(+)
>
Reviewed-by: Dmitry Baryshkov
--
With best wishes
Dmitry
-by: Bartosz Golaszewski
> ---
> arch/arm64/boot/dts/qcom/sa8775p.dtsi | 332
> ++
> 1 file changed, 332 insertions(+)
>
With nsp0 vs nsp1 vs nsp sorted out:
Reviewed-by: Dmitry Baryshkov
--
With best wishes
Dmitry
vice_id adsp_of_match[] = {
> { .compatible = "qcom,qcs404-adsp-pas", .data = &adsp_resource_init },
> { .compatible = "qcom,qcs404-cdsp-pas", .data = &cdsp_resource_init },
> { .compatible = "qcom,qcs404-wcss-pas", .data = &wcss_resource_init },
> + { .compatible = "qcom,sa8775p-adsp-pas", .data =
> &sa8775p_adsp_resource},
> + { .compatible = "qcom,sa8775p-cdsp0-pas", .data =
> &sa8775p_cdsp0_resource},
> + { .compatible = "qcom,sa8775p-cdsp1-pas", .data =
> &sa8775p_cdsp1_resource},
> + { .compatible = "qcom,sa8775p-gpdsp0-pas", .data =
> &sa8775p_gpdsp0_resource},
> + { .compatible = "qcom,sa8775p-gpdsp1-pas", .data =
> &sa8775p_gpdsp1_resource},
> { .compatible = "qcom,sc7180-adsp-pas", .data = &sm8250_adsp_resource},
> { .compatible = "qcom,sc7180-mpss-pas", .data = &mpss_resource_init},
> { .compatible = "qcom,sc7280-adsp-pas", .data = &sm8350_adsp_resource},
>
> --
> 2.43.0
>
--
With best wishes
Dmitry
On Wed, 22 May 2024 at 22:22, Jeff Johnson wrote:
>
> On 5/21/2024 2:45 AM, Dmitry Baryshkov wrote:
> > Make the driver use qcom_fw_helper to autodetect the path to the
> > calibration data file.
> >
> > Signed-off-by: Dmitry Baryshkov
> > ---
>
On Tue, 21 May 2024 at 13:20, Kalle Valo wrote:
>
> Dmitry Baryshkov writes:
>
> > On Tue, 21 May 2024 at 12:52, wrote:
> >>
> >> On 21/05/2024 11:45, Dmitry Baryshkov wrote:
> >> > Qualcomm platforms have different sets of the firmware files, which
On Tue, 21 May 2024 at 12:52, wrote:
>
> On 21/05/2024 11:45, Dmitry Baryshkov wrote:
> > Qualcomm platforms have different sets of the firmware files, which
> > differ from platform to platform (and from board to board, due to the
> > embedded signatures). Rather than
On Tue, 21 May 2024 at 12:49, wrote:
>
> On 21/05/2024 11:45, Dmitry Baryshkov wrote:
> > We have been pushing userspace to use mbn files by default for ages.
> > As a preparation for making the firmware-name optional, make the driver
> > use .mbn instead of .mdt files by
As the drivers default to loading the firmware from the board-specific
location, drop the firmware-name properties.
Signed-off-by: Dmitry Baryshkov
---
arch/arm64/boot/dts/qcom/apq8096-db820c.dts | 2 --
1 file changed, 2 deletions(-)
diff --git a/arch/arm64/boot/dts/qcom/apq8096-db820c.dts
b
As the drivers default to loading the firmware from the board-specific
location, drop the firmware-name properties. In case of the WCNSS
calibration data drop the path to the file, retaining just the file
name.
Signed-off-by: Dmitry Baryshkov
---
arch/arm64/boot/dts/qcom/apq8016-sbc.dts | 5
Make the driver use qcom_fw_helper to autodetect the path to the
calibration data file.
Signed-off-by: Dmitry Baryshkov
---
drivers/remoteproc/Kconfig | 1 +
1 file changed, 1 insertion(+)
diff --git a/drivers/remoteproc/Kconfig b/drivers/remoteproc/Kconfig
index 7bb22fdb64e4..e0ffcaeca03d
Make the driver use qcom_fw_helper to autodetect the path to the
calibration data file.
Signed-off-by: Dmitry Baryshkov
---
drivers/remoteproc/qcom_wcnss.c | 6 ++
1 file changed, 6 insertions(+)
diff --git a/drivers/remoteproc/qcom_wcnss.c b/drivers/remoteproc/qcom_wcnss.c
index
We have been pushing userspace to use mbn files by default for ages.
As a preparation for making the firmware-name optional, make the driver
use .mbn instead of .mdt files by default.
Signed-off-by: Dmitry Baryshkov
---
drivers/remoteproc/qcom_wcnss.c | 2 +-
1 file changed, 1 insertion(+), 1
Make the driver use qcom_fw_helper to autodetect the path to the
calibration data file.
Signed-off-by: Dmitry Baryshkov
---
drivers/remoteproc/Kconfig | 1 +
drivers/remoteproc/qcom_q6v5_pas.c | 9 +
2 files changed, 10 insertions(+)
diff --git a/drivers/remoteproc/Kconfig b
We have been pushing userspace to use mbn files by default for ages.
As a preparation for making the firmware-name optional, make the driver
use .mbn instead of .mdt files by default.
Signed-off-by: Dmitry Baryshkov
---
drivers/remoteproc/qcom_q6v5_pas.c | 76
Make the driver use qcom_fw_helper to autodetect the path to the
calibration data file.
Signed-off-by: Dmitry Baryshkov
---
drivers/remoteproc/Kconfig | 1 +
drivers/remoteproc/qcom_q6v5_mss.c | 10 ++
2 files changed, 11 insertions(+)
diff --git a/drivers/remoteproc/Kconfig b
We have been pushing userspace to use mbn files by default for ages.
As a preparation for making the firmware-name optional, make the driver
use .mbn instead of .mdt files by default.
Signed-off-by: Dmitry Baryshkov
---
drivers/remoteproc/qcom_q6v5_mss.c | 2 +-
1 file changed, 1 insertion
Make the driver use qcom_fw_helper to autodetect the path to the
calibration data file.
Signed-off-by: Dmitry Baryshkov
---
drivers/soc/qcom/Kconfig | 1 +
drivers/soc/qcom/wcnss_ctrl.c | 9 +
2 files changed, 10 insertions(+)
diff --git a/drivers/soc/qcom/Kconfig b/drivers/soc
Make the driver use qcom_fw_helper to autodetect the path to the
calibration data file.
Signed-off-by: Dmitry Baryshkov
---
drivers/net/wireless/ath/wcn36xx/Kconfig | 1 +
drivers/net/wireless/ath/wcn36xx/main.c | 5 +
2 files changed, 6 insertions(+)
diff --git a/drivers/net/wireless/ath
node compatible.
Suggested-by: Arnd Bergmann
Signed-off-by: Dmitry Baryshkov
---
drivers/soc/qcom/Kconfig | 5 +++
drivers/soc/qcom/Makefile | 1 +
drivers/soc/qcom/qcom_fw_helper.c | 86 ++
include/linux/soc/qcom/fw_helper.h | 10
com/sm8250/Thundercomm/RB5/cdsp.mbn -> ../../cdsp.mbn
+Link: qcom/sm8250/Thundercomm/RB5/cdspr.jsn -> ../../cdspr.jsn
Suggested-by: Arnd Bergmann
Signed-off-by: Dmitry Baryshkov
---
Dmitry Baryshkov (12):
soc: qcom: add firmware name helper
wifi: wcn36xx: make use of QCOM_FW_HELPER
l go
through wakeup process all the same and then userspace can decide if it
should stay woken up or not.
Thanks.
--
Dmitry
hanov
Signed-off-by: Dmitry Baryshkov
---
drivers/soc/qcom/Kconfig| 4 +
drivers/soc/qcom/Makefile | 1 +
drivers/soc/qcom/pdr_internal.h | 306 ++
drivers/soc/qcom/qcom_pdr_msg.c | 319
4 files changed
1 - 100 of 4309 matches
Mail list logo