pinctrl: imx: fix scu link errors
authorAnders Roxell <anders.roxell@linaro.org>
Thu, 7 Mar 2019 03:05:30 +0000 (03:05 +0000)
committerLinus Walleij <linus.walleij@linaro.org>
Fri, 8 Mar 2019 12:17:24 +0000 (13:17 +0100)
Currently PINCTRL_IMX8QM and PINCTRL_IMX8QXP will select PINCTRL_IMX_SCU.
However, PINCTRL_IMX_SCU may not be valid due to it depends on IMX_MBOX.
Then we may meet the following link errors:
ld: drivers/pinctrl/freescale/pinctrl-scu.o: in function `imx_pinctrl_sc_ipc_init':
pinctrl-scu.c:(.text+0x10): undefined reference to `imx_scu_get_handle'
ld: pinctrl-scu.c:(.text+0x10): relocation truncated to fit: R_AARCH64_CALL26 against undefined symbol `imx_scu_get_handle'
ld: drivers/pinctrl/freescale/pinctrl-scu.o: in function `imx_pinconf_get_scu':
pinctrl-scu.c:(.text+0xa0): undefined reference to `imx_scu_call_rpc'
ld: pinctrl-scu.c:(.text+0xa0): relocation truncated to fit: R_AARCH64_CALL26 against undefined symbol `imx_scu_call_rpc'
ld: drivers/pinctrl/freescale/pinctrl-scu.o: in function `imx_pinconf_set_scu':
pinctrl-scu.c:(.text+0x1b4): undefined reference to `imx_scu_call_rpc'
ld: pinctrl-scu.c:(.text+0x1b4): relocation truncated to fit: R_AARCH64_CALL26 against undefined symbol `imx_scu_call_rpc'
ld: drivers/pinctrl/freescale/pinctrl-imx8qxp.o: in function `imx8qxp_pinctrl_probe':
pinctrl-imx8qxp.c:(.text+0x28): undefined reference to `imx_pinctrl_probe'
ld: pinctrl-imx8qxp.c:(.text+0x28): relocation truncated to fit: R_AARCH64_CALL26 against undefined symbol `imx_pinctrl_probe'

Rework so that PINCTRL_IMX8QM and PINCTRL_IMX8QXP depends on IMX_SCU
as well in case they're wrongly enabled.

Suggested-by: Arnd Bergmann <arnd@arndb.de>
Signed-off-by: Anders Roxell <anders.roxell@linaro.org>
Signed-off-by: Dong Aisheng <aisheng.dong@nxp.com>
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
drivers/pinctrl/freescale/Kconfig

index e6dff3167a67374f259196b0340d76efc75d9a60..0d8387851b87a768b9fd95b41e15077d794ce2f4 100644 (file)
@@ -138,14 +138,14 @@ config PINCTRL_IMX8MQ
 
 config PINCTRL_IMX8QM
        bool "IMX8QM pinctrl driver"
-       depends on ARCH_MXC && ARM64
+       depends on IMX_SCU && ARCH_MXC && ARM64
        select PINCTRL_IMX_SCU
        help
          Say Y here to enable the imx8qm pinctrl driver
 
 config PINCTRL_IMX8QXP
        bool "IMX8QXP pinctrl driver"
-       depends on ARCH_MXC && ARM64
+       depends on IMX_SCU && ARCH_MXC && ARM64
        select PINCTRL_IMX_SCU
        help
          Say Y here to enable the imx8qxp pinctrl driver