* [PATCH 1/3] dt-bindings: remoteproc: qcom,sm8550-pas: document the X1E80100 aDSP & cDSP
2024-01-29 13:34 [PATCH 0/3] remoteproc: qcom_q6v5_pas: Add aDSP and cDSP for X1E80100 Abel Vesa
@ 2024-01-29 13:34 ` Abel Vesa
2024-01-30 8:18 ` Krzysztof Kozlowski
2024-01-29 13:34 ` [PATCH 2/3] remoteproc: qcom_q6v5_pas: Add support for X1E80100 ADSP/CDSP Abel Vesa
2024-01-29 13:34 ` [PATCH 3/3] remoteproc: qcom_q6v5_pas: Unload lite firmware on ADSP Abel Vesa
2 siblings, 1 reply; 9+ messages in thread
From: Abel Vesa @ 2024-01-29 13:34 UTC (permalink / raw)
To: Bjorn Andersson, Konrad Dybcio, Mathieu Poirier, Rob Herring,
Krzysztof Kozlowski, Conor Dooley, Manivannan Sadhasivam
Cc: linux-arm-msm, linux-remoteproc, devicetree, linux-kernel,
Abel Vesa
Document the aDSP and cDSP Peripheral Authentication Service on the
X1E80100 Platform.
Signed-off-by: Abel Vesa <abel.vesa@linaro.org>
---
Documentation/devicetree/bindings/remoteproc/qcom,sm8550-pas.yaml | 6 ++++++
1 file changed, 6 insertions(+)
diff --git a/Documentation/devicetree/bindings/remoteproc/qcom,sm8550-pas.yaml b/Documentation/devicetree/bindings/remoteproc/qcom,sm8550-pas.yaml
index 58120829fb06..95ae32ea8a0a 100644
--- a/Documentation/devicetree/bindings/remoteproc/qcom,sm8550-pas.yaml
+++ b/Documentation/devicetree/bindings/remoteproc/qcom,sm8550-pas.yaml
@@ -19,6 +19,8 @@ properties:
- qcom,sm8550-adsp-pas
- qcom,sm8550-cdsp-pas
- qcom,sm8550-mpss-pas
+ - qcom,x1e80100-adsp-pas
+ - qcom,x1e80100-cdsp-pas
reg:
maxItems: 1
@@ -63,6 +65,8 @@ allOf:
enum:
- qcom,sm8550-adsp-pas
- qcom,sm8550-cdsp-pas
+ - qcom,x1e80100-adsp-pas
+ - qcom,x1e80100-cdsp-pas
then:
properties:
interrupts:
@@ -85,6 +89,7 @@ allOf:
compatible:
enum:
- qcom,sm8550-adsp-pas
+ - qcom,x1e80100-adsp-pas
then:
properties:
power-domains:
@@ -116,6 +121,7 @@ allOf:
compatible:
enum:
- qcom,sm8550-cdsp-pas
+ - qcom,x1e80100-cdsp-pas
then:
properties:
power-domains:
--
2.34.1
^ permalink raw reply related [flat|nested] 9+ messages in thread* Re: [PATCH 1/3] dt-bindings: remoteproc: qcom,sm8550-pas: document the X1E80100 aDSP & cDSP
2024-01-29 13:34 ` [PATCH 1/3] dt-bindings: remoteproc: qcom,sm8550-pas: document the X1E80100 aDSP & cDSP Abel Vesa
@ 2024-01-30 8:18 ` Krzysztof Kozlowski
0 siblings, 0 replies; 9+ messages in thread
From: Krzysztof Kozlowski @ 2024-01-30 8:18 UTC (permalink / raw)
To: Abel Vesa, Bjorn Andersson, Konrad Dybcio, Mathieu Poirier,
Rob Herring, Krzysztof Kozlowski, Conor Dooley,
Manivannan Sadhasivam
Cc: linux-arm-msm, linux-remoteproc, devicetree, linux-kernel
On 29/01/2024 14:34, Abel Vesa wrote:
> Document the aDSP and cDSP Peripheral Authentication Service on the
> X1E80100 Platform.
>
> Signed-off-by: Abel Vesa <abel.vesa@linaro.org>
> ---
> Documentation/devicetree/bindings/remoteproc/qcom,sm8550-pas.yaml | 6 ++++++
> 1 file changed, 6 insertions(+)
>
Reviewed-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
Best regards,
Krzysztof
^ permalink raw reply [flat|nested] 9+ messages in thread
* [PATCH 2/3] remoteproc: qcom_q6v5_pas: Add support for X1E80100 ADSP/CDSP
2024-01-29 13:34 [PATCH 0/3] remoteproc: qcom_q6v5_pas: Add aDSP and cDSP for X1E80100 Abel Vesa
2024-01-29 13:34 ` [PATCH 1/3] dt-bindings: remoteproc: qcom,sm8550-pas: document the X1E80100 aDSP & cDSP Abel Vesa
@ 2024-01-29 13:34 ` Abel Vesa
2024-01-29 15:20 ` Dmitry Baryshkov
2024-01-29 13:34 ` [PATCH 3/3] remoteproc: qcom_q6v5_pas: Unload lite firmware on ADSP Abel Vesa
2 siblings, 1 reply; 9+ messages in thread
From: Abel Vesa @ 2024-01-29 13:34 UTC (permalink / raw)
To: Bjorn Andersson, Konrad Dybcio, Mathieu Poirier, Rob Herring,
Krzysztof Kozlowski, Conor Dooley, Manivannan Sadhasivam
Cc: linux-arm-msm, linux-remoteproc, devicetree, linux-kernel,
Abel Vesa, Sibi Sankar
From: Sibi Sankar <quic_sibis@quicinc.com>
Add support for PIL loading on ADSP and CDSP on X1E80100 SoCs.
Signed-off-by: Sibi Sankar <quic_sibis@quicinc.com>
Signed-off-by: Abel Vesa <abel.vesa@linaro.org>
---
drivers/remoteproc/qcom_q6v5_pas.c | 41 ++++++++++++++++++++++++++++++++++++++
1 file changed, 41 insertions(+)
diff --git a/drivers/remoteproc/qcom_q6v5_pas.c b/drivers/remoteproc/qcom_q6v5_pas.c
index a9dd58608052..083d71f80e5c 100644
--- a/drivers/remoteproc/qcom_q6v5_pas.c
+++ b/drivers/remoteproc/qcom_q6v5_pas.c
@@ -984,6 +984,45 @@ static const struct adsp_data sc8280xp_nsp1_resource = {
.ssctl_id = 0x20,
};
+static const struct adsp_data x1e80100_adsp_resource = {
+ .crash_reason_smem = 423,
+ .firmware_name = "adsp.mdt",
+ .dtb_firmware_name = "adsp_dtb.mdt",
+ .pas_id = 1,
+ .dtb_pas_id = 0x24,
+ .minidump_id = 5,
+ .auto_boot = true,
+ .proxy_pd_names = (char*[]){
+ "lcx",
+ "lmx",
+ NULL
+ },
+ .load_state = "adsp",
+ .ssr_name = "lpass",
+ .sysmon_name = "adsp",
+ .ssctl_id = 0x14,
+};
+
+static const struct adsp_data x1e80100_cdsp_resource = {
+ .crash_reason_smem = 601,
+ .firmware_name = "cdsp.mdt",
+ .dtb_firmware_name = "cdsp_dtb.mdt",
+ .pas_id = 18,
+ .dtb_pas_id = 0x25,
+ .minidump_id = 7,
+ .auto_boot = true,
+ .proxy_pd_names = (char*[]){
+ "cx",
+ "mxc",
+ "nsp",
+ NULL
+ },
+ .load_state = "cdsp",
+ .ssr_name = "cdsp",
+ .sysmon_name = "cdsp",
+ .ssctl_id = 0x17,
+};
+
static const struct adsp_data sm8350_cdsp_resource = {
.crash_reason_smem = 601,
.firmware_name = "cdsp.mdt",
@@ -1236,6 +1275,8 @@ static const struct of_device_id adsp_of_match[] = {
{ .compatible = "qcom,sm8550-adsp-pas", .data = &sm8550_adsp_resource},
{ .compatible = "qcom,sm8550-cdsp-pas", .data = &sm8550_cdsp_resource},
{ .compatible = "qcom,sm8550-mpss-pas", .data = &sm8550_mpss_resource},
+ { .compatible = "qcom,x1e80100-adsp-pas", .data = &x1e80100_adsp_resource},
+ { .compatible = "qcom,x1e80100-cdsp-pas", .data = &x1e80100_cdsp_resource},
{ },
};
MODULE_DEVICE_TABLE(of, adsp_of_match);
--
2.34.1
^ permalink raw reply related [flat|nested] 9+ messages in thread* Re: [PATCH 2/3] remoteproc: qcom_q6v5_pas: Add support for X1E80100 ADSP/CDSP
2024-01-29 13:34 ` [PATCH 2/3] remoteproc: qcom_q6v5_pas: Add support for X1E80100 ADSP/CDSP Abel Vesa
@ 2024-01-29 15:20 ` Dmitry Baryshkov
0 siblings, 0 replies; 9+ messages in thread
From: Dmitry Baryshkov @ 2024-01-29 15:20 UTC (permalink / raw)
To: Abel Vesa
Cc: Bjorn Andersson, Konrad Dybcio, Mathieu Poirier, Rob Herring,
Krzysztof Kozlowski, Conor Dooley, Manivannan Sadhasivam,
linux-arm-msm, linux-remoteproc, devicetree, linux-kernel,
Sibi Sankar
On Mon, 29 Jan 2024 at 15:35, Abel Vesa <abel.vesa@linaro.org> wrote:
>
> From: Sibi Sankar <quic_sibis@quicinc.com>
>
> Add support for PIL loading on ADSP and CDSP on X1E80100 SoCs.
>
> Signed-off-by: Sibi Sankar <quic_sibis@quicinc.com>
> Signed-off-by: Abel Vesa <abel.vesa@linaro.org>
> ---
> drivers/remoteproc/qcom_q6v5_pas.c | 41 ++++++++++++++++++++++++++++++++++++++
> 1 file changed, 41 insertions(+)
>
Reviewed-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
--
With best wishes
Dmitry
^ permalink raw reply [flat|nested] 9+ messages in thread
* [PATCH 3/3] remoteproc: qcom_q6v5_pas: Unload lite firmware on ADSP
2024-01-29 13:34 [PATCH 0/3] remoteproc: qcom_q6v5_pas: Add aDSP and cDSP for X1E80100 Abel Vesa
2024-01-29 13:34 ` [PATCH 1/3] dt-bindings: remoteproc: qcom,sm8550-pas: document the X1E80100 aDSP & cDSP Abel Vesa
2024-01-29 13:34 ` [PATCH 2/3] remoteproc: qcom_q6v5_pas: Add support for X1E80100 ADSP/CDSP Abel Vesa
@ 2024-01-29 13:34 ` Abel Vesa
2024-01-29 15:17 ` Dmitry Baryshkov
2 siblings, 1 reply; 9+ messages in thread
From: Abel Vesa @ 2024-01-29 13:34 UTC (permalink / raw)
To: Bjorn Andersson, Konrad Dybcio, Mathieu Poirier, Rob Herring,
Krzysztof Kozlowski, Conor Dooley, Manivannan Sadhasivam
Cc: linux-arm-msm, linux-remoteproc, devicetree, linux-kernel,
Abel Vesa, Sibi Sankar
From: Sibi Sankar <quic_sibis@quicinc.com>
The UEFI loads a lite variant of the ADSP firmware to support charging
use cases. The kernel needs to unload and reload it with the firmware
that has full feature support for audio. This patch arbitarily shutsdown
the lite firmware before loading the full firmware.
Signed-off-by: Sibi Sankar <quic_sibis@quicinc.com>
Signed-off-by: Abel Vesa <abel.vesa@linaro.org>
---
drivers/remoteproc/qcom_q6v5_pas.c | 8 ++++++++
1 file changed, 8 insertions(+)
diff --git a/drivers/remoteproc/qcom_q6v5_pas.c b/drivers/remoteproc/qcom_q6v5_pas.c
index 083d71f80e5c..4f6940368eb4 100644
--- a/drivers/remoteproc/qcom_q6v5_pas.c
+++ b/drivers/remoteproc/qcom_q6v5_pas.c
@@ -39,6 +39,7 @@ struct adsp_data {
const char *dtb_firmware_name;
int pas_id;
int dtb_pas_id;
+ int lite_pas_id;
unsigned int minidump_id;
bool auto_boot;
bool decrypt_shutdown;
@@ -72,6 +73,7 @@ struct qcom_adsp {
const char *dtb_firmware_name;
int pas_id;
int dtb_pas_id;
+ int lite_pas_id;
unsigned int minidump_id;
int crash_reason_smem;
bool decrypt_shutdown;
@@ -210,6 +212,10 @@ static int adsp_load(struct rproc *rproc, const struct firmware *fw)
/* Store firmware handle to be used in adsp_start() */
adsp->firmware = fw;
+ /* WIP: Shutdown the ADSP if it's running a lite version of the firmware*/
+ if (adsp->lite_pas_id)
+ ret = qcom_scm_pas_shutdown(adsp->lite_pas_id);
+
if (adsp->dtb_pas_id) {
ret = request_firmware(&adsp->dtb_firmware, adsp->dtb_firmware_name, adsp->dev);
if (ret) {
@@ -693,6 +699,7 @@ static int adsp_probe(struct platform_device *pdev)
adsp->rproc = rproc;
adsp->minidump_id = desc->minidump_id;
adsp->pas_id = desc->pas_id;
+ adsp->lite_pas_id = desc->lite_pas_id;
adsp->info_name = desc->sysmon_name;
adsp->decrypt_shutdown = desc->decrypt_shutdown;
adsp->region_assign_idx = desc->region_assign_idx;
@@ -990,6 +997,7 @@ static const struct adsp_data x1e80100_adsp_resource = {
.dtb_firmware_name = "adsp_dtb.mdt",
.pas_id = 1,
.dtb_pas_id = 0x24,
+ .lite_pas_id = 0x1f,
.minidump_id = 5,
.auto_boot = true,
.proxy_pd_names = (char*[]){
--
2.34.1
^ permalink raw reply related [flat|nested] 9+ messages in thread* Re: [PATCH 3/3] remoteproc: qcom_q6v5_pas: Unload lite firmware on ADSP
2024-01-29 13:34 ` [PATCH 3/3] remoteproc: qcom_q6v5_pas: Unload lite firmware on ADSP Abel Vesa
@ 2024-01-29 15:17 ` Dmitry Baryshkov
2024-01-31 9:30 ` Abel Vesa
0 siblings, 1 reply; 9+ messages in thread
From: Dmitry Baryshkov @ 2024-01-29 15:17 UTC (permalink / raw)
To: Abel Vesa
Cc: Bjorn Andersson, Konrad Dybcio, Mathieu Poirier, Rob Herring,
Krzysztof Kozlowski, Conor Dooley, Manivannan Sadhasivam,
linux-arm-msm, linux-remoteproc, devicetree, linux-kernel,
Sibi Sankar
On Mon, 29 Jan 2024 at 15:35, Abel Vesa <abel.vesa@linaro.org> wrote:
>
> From: Sibi Sankar <quic_sibis@quicinc.com>
>
> The UEFI loads a lite variant of the ADSP firmware to support charging
> use cases. The kernel needs to unload and reload it with the firmware
> that has full feature support for audio. This patch arbitarily shutsdown
> the lite firmware before loading the full firmware.
>
> Signed-off-by: Sibi Sankar <quic_sibis@quicinc.com>
> Signed-off-by: Abel Vesa <abel.vesa@linaro.org>
> ---
> drivers/remoteproc/qcom_q6v5_pas.c | 8 ++++++++
> 1 file changed, 8 insertions(+)
>
> diff --git a/drivers/remoteproc/qcom_q6v5_pas.c b/drivers/remoteproc/qcom_q6v5_pas.c
> index 083d71f80e5c..4f6940368eb4 100644
> --- a/drivers/remoteproc/qcom_q6v5_pas.c
> +++ b/drivers/remoteproc/qcom_q6v5_pas.c
> @@ -39,6 +39,7 @@ struct adsp_data {
> const char *dtb_firmware_name;
> int pas_id;
> int dtb_pas_id;
> + int lite_pas_id;
> unsigned int minidump_id;
> bool auto_boot;
> bool decrypt_shutdown;
> @@ -72,6 +73,7 @@ struct qcom_adsp {
> const char *dtb_firmware_name;
> int pas_id;
> int dtb_pas_id;
> + int lite_pas_id;
> unsigned int minidump_id;
> int crash_reason_smem;
> bool decrypt_shutdown;
> @@ -210,6 +212,10 @@ static int adsp_load(struct rproc *rproc, const struct firmware *fw)
> /* Store firmware handle to be used in adsp_start() */
> adsp->firmware = fw;
>
> + /* WIP: Shutdown the ADSP if it's running a lite version of the firmware*/
Why is it still marked as WIP?
> + if (adsp->lite_pas_id)
> + ret = qcom_scm_pas_shutdown(adsp->lite_pas_id);
> +
> if (adsp->dtb_pas_id) {
> ret = request_firmware(&adsp->dtb_firmware, adsp->dtb_firmware_name, adsp->dev);
> if (ret) {
> @@ -693,6 +699,7 @@ static int adsp_probe(struct platform_device *pdev)
> adsp->rproc = rproc;
> adsp->minidump_id = desc->minidump_id;
> adsp->pas_id = desc->pas_id;
> + adsp->lite_pas_id = desc->lite_pas_id;
> adsp->info_name = desc->sysmon_name;
> adsp->decrypt_shutdown = desc->decrypt_shutdown;
> adsp->region_assign_idx = desc->region_assign_idx;
> @@ -990,6 +997,7 @@ static const struct adsp_data x1e80100_adsp_resource = {
> .dtb_firmware_name = "adsp_dtb.mdt",
> .pas_id = 1,
> .dtb_pas_id = 0x24,
> + .lite_pas_id = 0x1f,
> .minidump_id = 5,
> .auto_boot = true,
> .proxy_pd_names = (char*[]){
>
> --
> 2.34.1
>
>
--
With best wishes
Dmitry
^ permalink raw reply [flat|nested] 9+ messages in thread* Re: [PATCH 3/3] remoteproc: qcom_q6v5_pas: Unload lite firmware on ADSP
2024-01-29 15:17 ` Dmitry Baryshkov
@ 2024-01-31 9:30 ` Abel Vesa
2024-02-08 10:38 ` Sibi Sankar
0 siblings, 1 reply; 9+ messages in thread
From: Abel Vesa @ 2024-01-31 9:30 UTC (permalink / raw)
To: Dmitry Baryshkov, Sibi Sankar
Cc: Bjorn Andersson, Konrad Dybcio, Mathieu Poirier, Rob Herring,
Krzysztof Kozlowski, Conor Dooley, Manivannan Sadhasivam,
linux-arm-msm, linux-remoteproc, devicetree, linux-kernel,
Sibi Sankar
On 24-01-29 17:17:28, Dmitry Baryshkov wrote:
> On Mon, 29 Jan 2024 at 15:35, Abel Vesa <abel.vesa@linaro.org> wrote:
> >
> > From: Sibi Sankar <quic_sibis@quicinc.com>
> >
> > The UEFI loads a lite variant of the ADSP firmware to support charging
> > use cases. The kernel needs to unload and reload it with the firmware
> > that has full feature support for audio. This patch arbitarily shutsdown
> > the lite firmware before loading the full firmware.
> >
> > Signed-off-by: Sibi Sankar <quic_sibis@quicinc.com>
> > Signed-off-by: Abel Vesa <abel.vesa@linaro.org>
> > ---
> > drivers/remoteproc/qcom_q6v5_pas.c | 8 ++++++++
> > 1 file changed, 8 insertions(+)
> >
> > diff --git a/drivers/remoteproc/qcom_q6v5_pas.c b/drivers/remoteproc/qcom_q6v5_pas.c
> > index 083d71f80e5c..4f6940368eb4 100644
> > --- a/drivers/remoteproc/qcom_q6v5_pas.c
> > +++ b/drivers/remoteproc/qcom_q6v5_pas.c
> > @@ -39,6 +39,7 @@ struct adsp_data {
> > const char *dtb_firmware_name;
> > int pas_id;
> > int dtb_pas_id;
> > + int lite_pas_id;
> > unsigned int minidump_id;
> > bool auto_boot;
> > bool decrypt_shutdown;
> > @@ -72,6 +73,7 @@ struct qcom_adsp {
> > const char *dtb_firmware_name;
> > int pas_id;
> > int dtb_pas_id;
> > + int lite_pas_id;
> > unsigned int minidump_id;
> > int crash_reason_smem;
> > bool decrypt_shutdown;
> > @@ -210,6 +212,10 @@ static int adsp_load(struct rproc *rproc, const struct firmware *fw)
> > /* Store firmware handle to be used in adsp_start() */
> > adsp->firmware = fw;
> >
> > + /* WIP: Shutdown the ADSP if it's running a lite version of the firmware*/
>
> Why is it still marked as WIP?
AFAIU, there was more to be done here w.r.t. preloaded lite version
firmware.
Later, was agreed that that is not case.
So maybe I just need to drop the comment.
Sibi, can you confirm?
>
> > + if (adsp->lite_pas_id)
> > + ret = qcom_scm_pas_shutdown(adsp->lite_pas_id);
> > +
> > if (adsp->dtb_pas_id) {
> > ret = request_firmware(&adsp->dtb_firmware, adsp->dtb_firmware_name, adsp->dev);
> > if (ret) {
> > @@ -693,6 +699,7 @@ static int adsp_probe(struct platform_device *pdev)
> > adsp->rproc = rproc;
> > adsp->minidump_id = desc->minidump_id;
> > adsp->pas_id = desc->pas_id;
> > + adsp->lite_pas_id = desc->lite_pas_id;
> > adsp->info_name = desc->sysmon_name;
> > adsp->decrypt_shutdown = desc->decrypt_shutdown;
> > adsp->region_assign_idx = desc->region_assign_idx;
> > @@ -990,6 +997,7 @@ static const struct adsp_data x1e80100_adsp_resource = {
> > .dtb_firmware_name = "adsp_dtb.mdt",
> > .pas_id = 1,
> > .dtb_pas_id = 0x24,
> > + .lite_pas_id = 0x1f,
> > .minidump_id = 5,
> > .auto_boot = true,
> > .proxy_pd_names = (char*[]){
> >
> > --
> > 2.34.1
> >
> >
>
>
> --
> With best wishes
> Dmitry
^ permalink raw reply [flat|nested] 9+ messages in thread* Re: [PATCH 3/3] remoteproc: qcom_q6v5_pas: Unload lite firmware on ADSP
2024-01-31 9:30 ` Abel Vesa
@ 2024-02-08 10:38 ` Sibi Sankar
0 siblings, 0 replies; 9+ messages in thread
From: Sibi Sankar @ 2024-02-08 10:38 UTC (permalink / raw)
To: Abel Vesa, Dmitry Baryshkov
Cc: Bjorn Andersson, Konrad Dybcio, Mathieu Poirier, Rob Herring,
Krzysztof Kozlowski, Conor Dooley, Manivannan Sadhasivam,
linux-arm-msm, linux-remoteproc, devicetree, linux-kernel
On 1/31/24 15:00, Abel Vesa wrote:
> On 24-01-29 17:17:28, Dmitry Baryshkov wrote:
>> On Mon, 29 Jan 2024 at 15:35, Abel Vesa <abel.vesa@linaro.org> wrote:
>>>
>>> From: Sibi Sankar <quic_sibis@quicinc.com>
>>>
>>> The UEFI loads a lite variant of the ADSP firmware to support charging
>>> use cases. The kernel needs to unload and reload it with the firmware
>>> that has full feature support for audio. This patch arbitarily shutsdown
>>> the lite firmware before loading the full firmware.
>>>
>>> Signed-off-by: Sibi Sankar <quic_sibis@quicinc.com>
>>> Signed-off-by: Abel Vesa <abel.vesa@linaro.org>
>>> ---
>>> drivers/remoteproc/qcom_q6v5_pas.c | 8 ++++++++
>>> 1 file changed, 8 insertions(+)
>>>
>>> diff --git a/drivers/remoteproc/qcom_q6v5_pas.c b/drivers/remoteproc/qcom_q6v5_pas.c
>>> index 083d71f80e5c..4f6940368eb4 100644
>>> --- a/drivers/remoteproc/qcom_q6v5_pas.c
>>> +++ b/drivers/remoteproc/qcom_q6v5_pas.c
>>> @@ -39,6 +39,7 @@ struct adsp_data {
>>> const char *dtb_firmware_name;
>>> int pas_id;
>>> int dtb_pas_id;
>>> + int lite_pas_id;
>>> unsigned int minidump_id;
>>> bool auto_boot;
>>> bool decrypt_shutdown;
>>> @@ -72,6 +73,7 @@ struct qcom_adsp {
>>> const char *dtb_firmware_name;
>>> int pas_id;
>>> int dtb_pas_id;
>>> + int lite_pas_id;
>>> unsigned int minidump_id;
>>> int crash_reason_smem;
>>> bool decrypt_shutdown;
>>> @@ -210,6 +212,10 @@ static int adsp_load(struct rproc *rproc, const struct firmware *fw)
>>> /* Store firmware handle to be used in adsp_start() */
>>> adsp->firmware = fw;
>>>
>>> + /* WIP: Shutdown the ADSP if it's running a lite version of the firmware*/
>>
>> Why is it still marked as WIP?
>
> AFAIU, there was more to be done here w.r.t. preloaded lite version
> firmware.
>
> Later, was agreed that that is not case.
>
> So maybe I just need to drop the comment.
>
> Sibi, can you confirm?
ack, this is the best we can currently do. Please drop the comment when
you re-spin the series. Thanks for sending this out.
-Sibi
>
>>
>>> + if (adsp->lite_pas_id)
>>> + ret = qcom_scm_pas_shutdown(adsp->lite_pas_id);
>>> +
>>> if (adsp->dtb_pas_id) {
>>> ret = request_firmware(&adsp->dtb_firmware, adsp->dtb_firmware_name, adsp->dev);
>>> if (ret) {
>>> @@ -693,6 +699,7 @@ static int adsp_probe(struct platform_device *pdev)
>>> adsp->rproc = rproc;
>>> adsp->minidump_id = desc->minidump_id;
>>> adsp->pas_id = desc->pas_id;
>>> + adsp->lite_pas_id = desc->lite_pas_id;
>>> adsp->info_name = desc->sysmon_name;
>>> adsp->decrypt_shutdown = desc->decrypt_shutdown;
>>> adsp->region_assign_idx = desc->region_assign_idx;
>>> @@ -990,6 +997,7 @@ static const struct adsp_data x1e80100_adsp_resource = {
>>> .dtb_firmware_name = "adsp_dtb.mdt",
>>> .pas_id = 1,
>>> .dtb_pas_id = 0x24,
>>> + .lite_pas_id = 0x1f,
>>> .minidump_id = 5,
>>> .auto_boot = true,
>>> .proxy_pd_names = (char*[]){
>>>
>>> --
>>> 2.34.1
>>>
>>>
>>
>>
>> --
>> With best wishes
>> Dmitry
^ permalink raw reply [flat|nested] 9+ messages in thread