[PATCH v4 1/2] ARM: imx: mach-imx6q: Search for fsl,imx6q-iomuxc-gpr earlier

From: Sven Van Asbroeck
Date: Thu Jun 25 2020 - 10:01:20 EST


From: Fabio Estevam <festevam@xxxxxxxxx>

Check the presence of fsl,imx6q-iomuxc-gpr earlier and exit in case
of failure.

This is done in preparation for adding support for configuring the
GPR5 register for i.MX6QP a bit easier.

Signed-off-by: Fabio Estevam <festevam@xxxxxxxxx>
---

Patch history: see
[PATCH v4 2/2] ARM: imx6plus: enable internal routing of clk_enet_ref

To: Shawn Guo <shawnguo@xxxxxxxxxx>
To: Andy Duan <fugang.duan@xxxxxxx>
Cc: Sascha Hauer <s.hauer@xxxxxxxxxxxxxx>
Cc: Pengutronix Kernel Team <kernel@xxxxxxxxxxxxxx>
Cc: Fabio Estevam <festevam@xxxxxxxxx>
Cc: NXP Linux Team <linux-imx@xxxxxxx>
Cc: linux-arm-kernel@xxxxxxxxxxxxxxxxxxx
Cc: linux-kernel@xxxxxxxxxxxxxxx

arch/arm/mach-imx/mach-imx6q.c | 15 ++++++++-------
1 file changed, 8 insertions(+), 7 deletions(-)

diff --git a/arch/arm/mach-imx/mach-imx6q.c b/arch/arm/mach-imx/mach-imx6q.c
index 85c084a716ab..ae89ad93ca83 100644
--- a/arch/arm/mach-imx/mach-imx6q.c
+++ b/arch/arm/mach-imx/mach-imx6q.c
@@ -169,6 +169,12 @@ static void __init imx6q_1588_init(void)
struct regmap *gpr;
u32 clksel;

+ gpr = syscon_regmap_lookup_by_compatible("fsl,imx6q-iomuxc-gpr");
+ if (IS_ERR(gpr)) {
+ pr_err("failed to find fsl,imx6q-iomuxc-gpr regmap\n");
+ return;
+ }
+
np = of_find_compatible_node(NULL, NULL, "fsl,imx6q-fec");
if (!np) {
pr_warn("%s: failed to find fec node\n", __func__);
@@ -195,13 +201,8 @@ static void __init imx6q_1588_init(void)
clksel = clk_is_match(ptp_clk, enet_ref) ?
IMX6Q_GPR1_ENET_CLK_SEL_ANATOP :
IMX6Q_GPR1_ENET_CLK_SEL_PAD;
- gpr = syscon_regmap_lookup_by_compatible("fsl,imx6q-iomuxc-gpr");
- if (!IS_ERR(gpr))
- regmap_update_bits(gpr, IOMUXC_GPR1,
- IMX6Q_GPR1_ENET_CLK_SEL_MASK,
- clksel);
- else
- pr_err("failed to find fsl,imx6q-iomuxc-gpr regmap\n");
+ regmap_update_bits(gpr, IOMUXC_GPR1, IMX6Q_GPR1_ENET_CLK_SEL_MASK,
+ clksel);

clk_put(enet_ref);
put_ptp_clk:
--
2.17.1