2020-10-28 07:07:29

by Anders Roxell

[permalink] [raw]
Subject: [PATCH] soc: qcom: QCOM_RPMH fix build with modular QCOM_RPMH

When building allmodconfig leading to the following link error with
CONFIG_QCOM_RPMH=y and CONFIG_QCOM_COMMAND_DB=m:

aarch64-linux-gnu-ld: drivers/clk/qcom/clk-rpmh.o: in function `clk_rpmh_probe':
drivers/clk/qcom/clk-rpmh.c:474: undefined reference to `cmd_db_read_addr'
drivers/clk/qcom/clk-rpmh.c:474:(.text+0x254): relocation truncated to fit: R_AARCH64_CALL26 against undefined symbol `cmd_db_read_addr'

Fix this by adding a Kconfig depenency and forcing QCOM_RPMH to be a
module when QCOM_COMMAND_DB is a module. Also removing the dependency on
'ARCH_QCOM || COMPILE_TEST' since that is already a dependency for
QCOM_COMMAND_DB.

Fixes: 778279f4f5e4 ("soc: qcom: cmd-db: allow loading as a module")
Signed-off-by: Anders Roxell <[email protected]>
---
drivers/soc/qcom/Kconfig | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/soc/qcom/Kconfig b/drivers/soc/qcom/Kconfig
index 9b4ae9c16ba7..3bdd1604f78f 100644
--- a/drivers/soc/qcom/Kconfig
+++ b/drivers/soc/qcom/Kconfig
@@ -109,7 +109,7 @@ config QCOM_RMTFS_MEM

config QCOM_RPMH
tristate "Qualcomm RPM-Hardened (RPMH) Communication"
- depends on ARCH_QCOM || COMPILE_TEST
+ depends on QCOM_COMMAND_DB
help
Support for communication with the hardened-RPM blocks in
Qualcomm Technologies Inc (QTI) SoCs. RPMH communication uses an
--
2.28.0


2020-10-28 21:37:07

by Lina Iyer

[permalink] [raw]
Subject: Re: [PATCH] soc: qcom: QCOM_RPMH fix build with modular QCOM_RPMH

Hi Anders,

On Tue, Oct 27 2020 at 05:14 -0600, Anders Roxell wrote:
>When building allmodconfig leading to the following link error with
>CONFIG_QCOM_RPMH=y and CONFIG_QCOM_COMMAND_DB=m:
>
>aarch64-linux-gnu-ld: drivers/clk/qcom/clk-rpmh.o: in function `clk_rpmh_probe':
> drivers/clk/qcom/clk-rpmh.c:474: undefined reference to `cmd_db_read_addr'
> drivers/clk/qcom/clk-rpmh.c:474:(.text+0x254): relocation truncated to fit: R_AARCH64_CALL26 against undefined symbol `cmd_db_read_addr'
>
>Fix this by adding a Kconfig depenency and forcing QCOM_RPMH to be a
>module when QCOM_COMMAND_DB is a module. Also removing the dependency on
>'ARCH_QCOM || COMPILE_TEST' since that is already a dependency for
>QCOM_COMMAND_DB.
>
>Fixes: 778279f4f5e4 ("soc: qcom: cmd-db: allow loading as a module")
>Signed-off-by: Anders Roxell <[email protected]>
>---
> drivers/soc/qcom/Kconfig | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
>diff --git a/drivers/soc/qcom/Kconfig b/drivers/soc/qcom/Kconfig
>index 9b4ae9c16ba7..3bdd1604f78f 100644
>--- a/drivers/soc/qcom/Kconfig
>+++ b/drivers/soc/qcom/Kconfig
>@@ -109,7 +109,7 @@ config QCOM_RMTFS_MEM
>
> config QCOM_RPMH
> tristate "Qualcomm RPM-Hardened (RPMH) Communication"
>- depends on ARCH_QCOM || COMPILE_TEST
>+ depends on QCOM_COMMAND_DB
A solution was posted in the mailing list alredy -
https://lore.kernel.org/linux-arm-msm/[email protected]/

If you get a chance, please give that a shot to see if that works for
you.

Thanks,
Lina

> help
> Support for communication with the hardened-RPM blocks in
> Qualcomm Technologies Inc (QTI) SoCs. RPMH communication uses an
>--
>2.28.0
>

2020-10-29 01:26:56

by Lina Iyer

[permalink] [raw]
Subject: Re: [PATCH] soc: qcom: QCOM_RPMH fix build with modular QCOM_RPMH

On Wed, Oct 28 2020 at 03:43 -0600, Anders Roxell wrote:
>On Tue, 27 Oct 2020 at 22:15, Lina Iyer <[email protected]> wrote:
>>
>> Hi Anders,
>>
>> On Tue, Oct 27 2020 at 05:14 -0600, Anders Roxell wrote:
>> >When building allmodconfig leading to the following link error with
>> >CONFIG_QCOM_RPMH=y and CONFIG_QCOM_COMMAND_DB=m:
>> >
>> >aarch64-linux-gnu-ld: drivers/clk/qcom/clk-rpmh.o: in function `clk_rpmh_probe':
>> > drivers/clk/qcom/clk-rpmh.c:474: undefined reference to `cmd_db_read_addr'
>> > drivers/clk/qcom/clk-rpmh.c:474:(.text+0x254): relocation truncated to fit: R_AARCH64_CALL26 against undefined symbol `cmd_db_read_addr'
>> >
>> >Fix this by adding a Kconfig depenency and forcing QCOM_RPMH to be a
>> >module when QCOM_COMMAND_DB is a module. Also removing the dependency on
>> >'ARCH_QCOM || COMPILE_TEST' since that is already a dependency for
>> >QCOM_COMMAND_DB.
>> >
>> >Fixes: 778279f4f5e4 ("soc: qcom: cmd-db: allow loading as a module")
>> >Signed-off-by: Anders Roxell <[email protected]>
>> >---
>> > drivers/soc/qcom/Kconfig | 2 +-
>> > 1 file changed, 1 insertion(+), 1 deletion(-)
>> >
>> >diff --git a/drivers/soc/qcom/Kconfig b/drivers/soc/qcom/Kconfig
>> >index 9b4ae9c16ba7..3bdd1604f78f 100644
>> >--- a/drivers/soc/qcom/Kconfig
>> >+++ b/drivers/soc/qcom/Kconfig
>> >@@ -109,7 +109,7 @@ config QCOM_RMTFS_MEM
>> >
>> > config QCOM_RPMH
>> > tristate "Qualcomm RPM-Hardened (RPMH) Communication"
>> >- depends on ARCH_QCOM || COMPILE_TEST
>> >+ depends on QCOM_COMMAND_DB
>> A solution was posted in the mailing list alredy -
>> https://lore.kernel.org/linux-arm-msm/[email protected]/
>
>I missed that one, thanks.
>
>>
>> If you get a chance, please give that a shot to see if that works for
>> you.
>
>That will work too, but the "depends on ARCH_QCOM || COMPILE_TEST"
>isn't needed since that is already the dependency for QCOM_COMMAND_DB.
>So that should be met here too or am I missing something?
>
Sure, if you want to post an update to the patch, that would be fine
too.
Bjorn: Have you picked up this patch yet? If he hasn't please feel free
to update the patch. Or, I can do that as well.

--Lina

>Cheers,
>Anders
>
>>
>> Thanks,
>> Lina
>>
>> > help
>> > Support for communication with the hardened-RPM blocks in
>> > Qualcomm Technologies Inc (QTI) SoCs. RPMH communication uses an
>> >--
>> >2.28.0
>> >

2020-10-29 10:00:57

by Anders Roxell

[permalink] [raw]
Subject: Re: [PATCH] soc: qcom: QCOM_RPMH fix build with modular QCOM_RPMH

On Tue, 27 Oct 2020 at 22:15, Lina Iyer <[email protected]> wrote:
>
> Hi Anders,
>
> On Tue, Oct 27 2020 at 05:14 -0600, Anders Roxell wrote:
> >When building allmodconfig leading to the following link error with
> >CONFIG_QCOM_RPMH=y and CONFIG_QCOM_COMMAND_DB=m:
> >
> >aarch64-linux-gnu-ld: drivers/clk/qcom/clk-rpmh.o: in function `clk_rpmh_probe':
> > drivers/clk/qcom/clk-rpmh.c:474: undefined reference to `cmd_db_read_addr'
> > drivers/clk/qcom/clk-rpmh.c:474:(.text+0x254): relocation truncated to fit: R_AARCH64_CALL26 against undefined symbol `cmd_db_read_addr'
> >
> >Fix this by adding a Kconfig depenency and forcing QCOM_RPMH to be a
> >module when QCOM_COMMAND_DB is a module. Also removing the dependency on
> >'ARCH_QCOM || COMPILE_TEST' since that is already a dependency for
> >QCOM_COMMAND_DB.
> >
> >Fixes: 778279f4f5e4 ("soc: qcom: cmd-db: allow loading as a module")
> >Signed-off-by: Anders Roxell <[email protected]>
> >---
> > drivers/soc/qcom/Kconfig | 2 +-
> > 1 file changed, 1 insertion(+), 1 deletion(-)
> >
> >diff --git a/drivers/soc/qcom/Kconfig b/drivers/soc/qcom/Kconfig
> >index 9b4ae9c16ba7..3bdd1604f78f 100644
> >--- a/drivers/soc/qcom/Kconfig
> >+++ b/drivers/soc/qcom/Kconfig
> >@@ -109,7 +109,7 @@ config QCOM_RMTFS_MEM
> >
> > config QCOM_RPMH
> > tristate "Qualcomm RPM-Hardened (RPMH) Communication"
> >- depends on ARCH_QCOM || COMPILE_TEST
> >+ depends on QCOM_COMMAND_DB
> A solution was posted in the mailing list alredy -
> https://lore.kernel.org/linux-arm-msm/[email protected]/

I missed that one, thanks.

>
> If you get a chance, please give that a shot to see if that works for
> you.

That will work too, but the "depends on ARCH_QCOM || COMPILE_TEST"
isn't needed since that is already the dependency for QCOM_COMMAND_DB.
So that should be met here too or am I missing something?

Cheers,
Anders

>
> Thanks,
> Lina
>
> > help
> > Support for communication with the hardened-RPM blocks in
> > Qualcomm Technologies Inc (QTI) SoCs. RPMH communication uses an
> >--
> >2.28.0
> >