Message ID | 20230327183736.496170-4-me@dylanvanassche.be (mailing list archive) |
---|---|
State | Superseded |
Headers | show |
Series | remoteproc: qcom: pas: Support SDM845 SLPI | expand |
On 27/03/2023 20:37, Dylan Van Assche wrote: > SLPI remoteproc initialization is the same for SDM845, SM8150, SM8250, > SM8350 but is duplicated for each compatible. Refactor initialization > structs for these 4 compatibles as a single struct. > > Signed-off-by: Dylan Van Assche <me@dylanvanassche.be> > --- > drivers/remoteproc/qcom_q6v5_pas.c | 66 ++++-------------------------- > 1 file changed, 9 insertions(+), 57 deletions(-) > > diff --git a/drivers/remoteproc/qcom_q6v5_pas.c b/drivers/remoteproc/qcom_q6v5_pas.c > index d82b6f4bced4..d1c7baec4aca 100644 > --- a/drivers/remoteproc/qcom_q6v5_pas.c > +++ b/drivers/remoteproc/qcom_q6v5_pas.c > @@ -1014,7 +1014,7 @@ static const struct adsp_data sc8180x_mpss_resource = { > .ssctl_id = 0x12, > }; > > -static const struct adsp_data slpi_resource_init = { > +static const struct adsp_data msm_slpi_resource_init = { > .crash_reason_smem = 424, > .firmware_name = "slpi.mdt", > .pas_id = 12, > @@ -1028,7 +1028,7 @@ static const struct adsp_data slpi_resource_init = { > .ssctl_id = 0x16, > }; > > -static const struct adsp_data sdm845_slpi_resource = { > +static const struct adsp_data sm_slpi_resource_init = { You just added this and further lines. First refactor, then add new device support. Best regards, Krzysztof
On 27.03.2023 20:37, Dylan Van Assche wrote: > SLPI remoteproc initialization is the same for SDM845, SM8150, SM8250, > SM8350 but is duplicated for each compatible. Refactor initialization > structs for these 4 compatibles as a single struct. > > Signed-off-by: Dylan Van Assche <me@dylanvanassche.be> > --- > drivers/remoteproc/qcom_q6v5_pas.c | 66 ++++-------------------------- > 1 file changed, 9 insertions(+), 57 deletions(-) > > diff --git a/drivers/remoteproc/qcom_q6v5_pas.c b/drivers/remoteproc/qcom_q6v5_pas.c > index d82b6f4bced4..d1c7baec4aca 100644 > --- a/drivers/remoteproc/qcom_q6v5_pas.c > +++ b/drivers/remoteproc/qcom_q6v5_pas.c > @@ -1014,7 +1014,7 @@ static const struct adsp_data sc8180x_mpss_resource = { > .ssctl_id = 0x12, > }; > > -static const struct adsp_data slpi_resource_init = { > +static const struct adsp_data msm_slpi_resource_init = { Clever idea, but I think naming it after the first SoC it was used on (msm8996) will be clearer, e.g. msm8960 doesn't have SLPI. > .crash_reason_smem = 424, > .firmware_name = "slpi.mdt", > .pas_id = 12, > @@ -1028,7 +1028,7 @@ static const struct adsp_data slpi_resource_init = { > .ssctl_id = 0x16, > }; > > -static const struct adsp_data sdm845_slpi_resource = { > +static const struct adsp_data sm_slpi_resource_init = { And similarly here, the sdm845 name can stay. Konrad > .crash_reason_smem = 424, > .firmware_name = "slpi.mdt", > .pas_id = 12, > @@ -1044,54 +1044,6 @@ static const struct adsp_data sdm845_slpi_resource = { > .ssctl_id = 0x16, > }; > > -static const struct adsp_data sm8150_slpi_resource = { > - .crash_reason_smem = 424, > - .firmware_name = "slpi.mdt", > - .pas_id = 12, > - .auto_boot = true, > - .proxy_pd_names = (char*[]){ > - "lcx", > - "lmx", > - NULL > - }, > - .load_state = "slpi", > - .ssr_name = "dsps", > - .sysmon_name = "slpi", > - .ssctl_id = 0x16, > -}; > - > -static const struct adsp_data sm8250_slpi_resource = { > - .crash_reason_smem = 424, > - .firmware_name = "slpi.mdt", > - .pas_id = 12, > - .auto_boot = true, > - .proxy_pd_names = (char*[]){ > - "lcx", > - "lmx", > - NULL > - }, > - .load_state = "slpi", > - .ssr_name = "dsps", > - .sysmon_name = "slpi", > - .ssctl_id = 0x16, > -}; > - > -static const struct adsp_data sm8350_slpi_resource = { > - .crash_reason_smem = 424, > - .firmware_name = "slpi.mdt", > - .pas_id = 12, > - .auto_boot = true, > - .proxy_pd_names = (char*[]){ > - "lcx", > - "lmx", > - NULL > - }, > - .load_state = "slpi", > - .ssr_name = "dsps", > - .sysmon_name = "slpi", > - .ssctl_id = 0x16, > -}; > - > static const struct adsp_data wcss_resource_init = { > .crash_reason_smem = 421, > .firmware_name = "wcnss.mdt", > @@ -1200,9 +1152,9 @@ static const struct of_device_id adsp_of_match[] = { > { .compatible = "qcom,msm8953-adsp-pil", .data = &msm8996_adsp_resource}, > { .compatible = "qcom,msm8974-adsp-pil", .data = &adsp_resource_init}, > { .compatible = "qcom,msm8996-adsp-pil", .data = &msm8996_adsp_resource}, > - { .compatible = "qcom,msm8996-slpi-pil", .data = &slpi_resource_init}, > + { .compatible = "qcom,msm8996-slpi-pil", .data = &msm_slpi_resource_init}, > { .compatible = "qcom,msm8998-adsp-pas", .data = &msm8996_adsp_resource}, > - { .compatible = "qcom,msm8998-slpi-pas", .data = &slpi_resource_init}, > + { .compatible = "qcom,msm8998-slpi-pas", .data = &msm_slpi_resource_init}, > { .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 }, > @@ -1217,7 +1169,7 @@ static const struct of_device_id adsp_of_match[] = { > { .compatible = "qcom,sdm660-adsp-pas", .data = &adsp_resource_init}, > { .compatible = "qcom,sdm845-adsp-pas", .data = &sdm845_adsp_resource_init}, > { .compatible = "qcom,sdm845-cdsp-pas", .data = &sdm845_cdsp_resource_init}, > - { .compatible = "qcom,sdm845-slpi-pas", .data = &sdm845_slpi_resource}, > + { .compatible = "qcom,sdm845-slpi-pas", .data = &sm_slpi_resource_init}, > { .compatible = "qcom,sdx55-mpss-pas", .data = &sdx55_mpss_resource}, > { .compatible = "qcom,sm6115-adsp-pas", .data = &adsp_resource_init}, > { .compatible = "qcom,sm6115-cdsp-pas", .data = &cdsp_resource_init}, > @@ -1228,17 +1180,17 @@ static const struct of_device_id adsp_of_match[] = { > { .compatible = "qcom,sm8150-adsp-pas", .data = &sm8150_adsp_resource}, > { .compatible = "qcom,sm8150-cdsp-pas", .data = &sm8150_cdsp_resource}, > { .compatible = "qcom,sm8150-mpss-pas", .data = &mpss_resource_init}, > - { .compatible = "qcom,sm8150-slpi-pas", .data = &sm8150_slpi_resource}, > + { .compatible = "qcom,sm8150-slpi-pas", .data = &sm_slpi_resource_init}, > { .compatible = "qcom,sm8250-adsp-pas", .data = &sm8250_adsp_resource}, > { .compatible = "qcom,sm8250-cdsp-pas", .data = &sm8250_cdsp_resource}, > - { .compatible = "qcom,sm8250-slpi-pas", .data = &sm8250_slpi_resource}, > + { .compatible = "qcom,sm8250-slpi-pas", .data = &sm_slpi_resource_init}, > { .compatible = "qcom,sm8350-adsp-pas", .data = &sm8350_adsp_resource}, > { .compatible = "qcom,sm8350-cdsp-pas", .data = &sm8350_cdsp_resource}, > - { .compatible = "qcom,sm8350-slpi-pas", .data = &sm8350_slpi_resource}, > + { .compatible = "qcom,sm8350-slpi-pas", .data = &sm_slpi_resource_init}, > { .compatible = "qcom,sm8350-mpss-pas", .data = &mpss_resource_init}, > { .compatible = "qcom,sm8450-adsp-pas", .data = &sm8350_adsp_resource}, > { .compatible = "qcom,sm8450-cdsp-pas", .data = &sm8350_cdsp_resource}, > - { .compatible = "qcom,sm8450-slpi-pas", .data = &sm8350_slpi_resource}, > + { .compatible = "qcom,sm8450-slpi-pas", .data = &sm_slpi_resource_init}, > { .compatible = "qcom,sm8450-mpss-pas", .data = &sm8450_mpss_resource}, > { .compatible = "qcom,sm8550-adsp-pas", .data = &sm8550_adsp_resource}, > { .compatible = "qcom,sm8550-cdsp-pas", .data = &sm8550_cdsp_resource},
diff --git a/drivers/remoteproc/qcom_q6v5_pas.c b/drivers/remoteproc/qcom_q6v5_pas.c index d82b6f4bced4..d1c7baec4aca 100644 --- a/drivers/remoteproc/qcom_q6v5_pas.c +++ b/drivers/remoteproc/qcom_q6v5_pas.c @@ -1014,7 +1014,7 @@ static const struct adsp_data sc8180x_mpss_resource = { .ssctl_id = 0x12, }; -static const struct adsp_data slpi_resource_init = { +static const struct adsp_data msm_slpi_resource_init = { .crash_reason_smem = 424, .firmware_name = "slpi.mdt", .pas_id = 12, @@ -1028,7 +1028,7 @@ static const struct adsp_data slpi_resource_init = { .ssctl_id = 0x16, }; -static const struct adsp_data sdm845_slpi_resource = { +static const struct adsp_data sm_slpi_resource_init = { .crash_reason_smem = 424, .firmware_name = "slpi.mdt", .pas_id = 12, @@ -1044,54 +1044,6 @@ static const struct adsp_data sdm845_slpi_resource = { .ssctl_id = 0x16, }; -static const struct adsp_data sm8150_slpi_resource = { - .crash_reason_smem = 424, - .firmware_name = "slpi.mdt", - .pas_id = 12, - .auto_boot = true, - .proxy_pd_names = (char*[]){ - "lcx", - "lmx", - NULL - }, - .load_state = "slpi", - .ssr_name = "dsps", - .sysmon_name = "slpi", - .ssctl_id = 0x16, -}; - -static const struct adsp_data sm8250_slpi_resource = { - .crash_reason_smem = 424, - .firmware_name = "slpi.mdt", - .pas_id = 12, - .auto_boot = true, - .proxy_pd_names = (char*[]){ - "lcx", - "lmx", - NULL - }, - .load_state = "slpi", - .ssr_name = "dsps", - .sysmon_name = "slpi", - .ssctl_id = 0x16, -}; - -static const struct adsp_data sm8350_slpi_resource = { - .crash_reason_smem = 424, - .firmware_name = "slpi.mdt", - .pas_id = 12, - .auto_boot = true, - .proxy_pd_names = (char*[]){ - "lcx", - "lmx", - NULL - }, - .load_state = "slpi", - .ssr_name = "dsps", - .sysmon_name = "slpi", - .ssctl_id = 0x16, -}; - static const struct adsp_data wcss_resource_init = { .crash_reason_smem = 421, .firmware_name = "wcnss.mdt", @@ -1200,9 +1152,9 @@ static const struct of_device_id adsp_of_match[] = { { .compatible = "qcom,msm8953-adsp-pil", .data = &msm8996_adsp_resource}, { .compatible = "qcom,msm8974-adsp-pil", .data = &adsp_resource_init}, { .compatible = "qcom,msm8996-adsp-pil", .data = &msm8996_adsp_resource}, - { .compatible = "qcom,msm8996-slpi-pil", .data = &slpi_resource_init}, + { .compatible = "qcom,msm8996-slpi-pil", .data = &msm_slpi_resource_init}, { .compatible = "qcom,msm8998-adsp-pas", .data = &msm8996_adsp_resource}, - { .compatible = "qcom,msm8998-slpi-pas", .data = &slpi_resource_init}, + { .compatible = "qcom,msm8998-slpi-pas", .data = &msm_slpi_resource_init}, { .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 }, @@ -1217,7 +1169,7 @@ static const struct of_device_id adsp_of_match[] = { { .compatible = "qcom,sdm660-adsp-pas", .data = &adsp_resource_init}, { .compatible = "qcom,sdm845-adsp-pas", .data = &sdm845_adsp_resource_init}, { .compatible = "qcom,sdm845-cdsp-pas", .data = &sdm845_cdsp_resource_init}, - { .compatible = "qcom,sdm845-slpi-pas", .data = &sdm845_slpi_resource}, + { .compatible = "qcom,sdm845-slpi-pas", .data = &sm_slpi_resource_init}, { .compatible = "qcom,sdx55-mpss-pas", .data = &sdx55_mpss_resource}, { .compatible = "qcom,sm6115-adsp-pas", .data = &adsp_resource_init}, { .compatible = "qcom,sm6115-cdsp-pas", .data = &cdsp_resource_init}, @@ -1228,17 +1180,17 @@ static const struct of_device_id adsp_of_match[] = { { .compatible = "qcom,sm8150-adsp-pas", .data = &sm8150_adsp_resource}, { .compatible = "qcom,sm8150-cdsp-pas", .data = &sm8150_cdsp_resource}, { .compatible = "qcom,sm8150-mpss-pas", .data = &mpss_resource_init}, - { .compatible = "qcom,sm8150-slpi-pas", .data = &sm8150_slpi_resource}, + { .compatible = "qcom,sm8150-slpi-pas", .data = &sm_slpi_resource_init}, { .compatible = "qcom,sm8250-adsp-pas", .data = &sm8250_adsp_resource}, { .compatible = "qcom,sm8250-cdsp-pas", .data = &sm8250_cdsp_resource}, - { .compatible = "qcom,sm8250-slpi-pas", .data = &sm8250_slpi_resource}, + { .compatible = "qcom,sm8250-slpi-pas", .data = &sm_slpi_resource_init}, { .compatible = "qcom,sm8350-adsp-pas", .data = &sm8350_adsp_resource}, { .compatible = "qcom,sm8350-cdsp-pas", .data = &sm8350_cdsp_resource}, - { .compatible = "qcom,sm8350-slpi-pas", .data = &sm8350_slpi_resource}, + { .compatible = "qcom,sm8350-slpi-pas", .data = &sm_slpi_resource_init}, { .compatible = "qcom,sm8350-mpss-pas", .data = &mpss_resource_init}, { .compatible = "qcom,sm8450-adsp-pas", .data = &sm8350_adsp_resource}, { .compatible = "qcom,sm8450-cdsp-pas", .data = &sm8350_cdsp_resource}, - { .compatible = "qcom,sm8450-slpi-pas", .data = &sm8350_slpi_resource}, + { .compatible = "qcom,sm8450-slpi-pas", .data = &sm_slpi_resource_init}, { .compatible = "qcom,sm8450-mpss-pas", .data = &sm8450_mpss_resource}, { .compatible = "qcom,sm8550-adsp-pas", .data = &sm8550_adsp_resource}, { .compatible = "qcom,sm8550-cdsp-pas", .data = &sm8550_cdsp_resource},
SLPI remoteproc initialization is the same for SDM845, SM8150, SM8250, SM8350 but is duplicated for each compatible. Refactor initialization structs for these 4 compatibles as a single struct. Signed-off-by: Dylan Van Assche <me@dylanvanassche.be> --- drivers/remoteproc/qcom_q6v5_pas.c | 66 ++++-------------------------- 1 file changed, 9 insertions(+), 57 deletions(-)