Hi Jonathan,

On Fri, Apr 18, 2025 at 6:04 PM Jonathan Currier <dullf...@yahoo.com> wrote:
>
> Add the device specific driver data, the device tree entry, and the
> clock configuration.
>
> Signed-off-by: Jonathan Currier <dullf...@yahoo.com>
> ---
>  arch/arm/dts/imxrt1170-evk.dts              | 28 +++++++++++++++++++++
>  arch/arm/dts/imxrt1170.dtsi                 | 13 ++++++++++
>  drivers/clk/imx/clk-imxrt1170.c             |  9 +++++++
>  drivers/spi/nxp_fspi.c                      | 10 ++++++++
>  include/dt-bindings/clock/imxrt1170-clock.h |  4 ++-

Please split the devicetree parts and driver change into two separate patches.

> +       clk_dm(IMXRT1170_CLK_FLEXSPI1_SEL,
> +              imx_clk_mux("flexspi1_sel", base + (20 * 0x80), 8, 3,
> +                          flexspi1_sels, ARRAY_SIZE(flexspi1_sels)));
> +       clk_dm(IMXRT1170_CLK_FLEXSPI1,
> +              imx_clk_divider("flexspi1", "flexspi1_sel",
> +                              base + (20 * 0x80), 0, 8));
> +

CI reported the following error:

       arm:  +   imxrt1170-evk
+drivers/clk/imx/clk-imxrt1170.c: In function 'imxrt1170_clk_probe':
+drivers/clk/imx/clk-imxrt1170.c:169:28: error: passing argument 1 of
'imx_clk_mux' from incompatible pointer type
[-Wincompatible-pointer-types]
+  169 |                imx_clk_mux("flexspi1_sel", base + (20 * 0x80), 8, 3,
+      |                            ^~~~~~~~~~~~~~
+      |                            |
+      |                            char *
+In file included from drivers/clk/imx/clk-imxrt1170.c:15:
+drivers/clk/imx/clk.h:195:55: note: expected 'struct udevice *' but
argument is of type 'char *'
+  195 | static inline struct clk *imx_clk_mux(struct udevice *dev,
const char *name,
+      |                                       ~~~~~~~~~~~~~~~~^~~
+drivers/clk/imx/clk-imxrt1170.c:169:64: error: passing argument 3 of
'imx_clk_mux' makes pointer from integer without a cast
[-Wint-conversion]
+      |                                                                ^
+      |                                                                |
+      |                                                                int
+drivers/clk/imx/clk.h:196:39: note: expected 'void *' but argument is
of type 'int'
+  196 |                         void __iomem *reg, u8 shift, u8
width, const char * const *parents,
+      |                         ~~~~~~~~~~~~~~^~~
+drivers/clk/imx/clk-imxrt1170.c:170:28: error: passing argument 5 of
'imx_clk_mux' makes integer from pointer without a cast
[-Wint-conversion]
+  170 |                            flexspi1_sels, ARRAY_SIZE(flexspi1_sels)));
+      |                            ^~~~~~~~~~~~~
+      |                            const char * const*
+drivers/clk/imx/clk.h:196:57: note: expected 'u8' {aka 'unsigned
char'} but argument is of type 'const char * const*'
+      |                                                      ~~~^~~~~
+In file included from include/linux/libfdt_env.h:13,
+                 from include/linux/libfdt.h:6,
+                 from include/fdtdec.h:17,
+                 from include/dm/ofnode.h:11,
+                 from include/clk.h:11,
+                 from drivers/clk/imx/clk-imxrt1170.c:7:
+include/linux/kernel.h:44:23: error: passing argument 6 of
'imx_clk_mux' makes pointer from integer without a cast
[-Wint-conversion]
+   44 | #define ARRAY_SIZE(x) (sizeof(x) / sizeof((x)[0]))
+      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
+      |                       |
+      |                       unsigned int
+drivers/clk/imx/clk-imxrt1170.c:170:43: note: in expansion of macro
'ARRAY_SIZE'
+      |                                           ^~~~~~~~~~
+drivers/clk/imx/clk.h:196:84: note: expected 'const char * const*'
but argument is of type 'unsigned int'
+      |
 ~~~~~~~~~~~~~~~~~~~~^~~~~~~
+drivers/clk/imx/clk-imxrt1170.c:169:16: error: too few arguments to
function 'imx_clk_mux'
+      |                ^~~~~~~~~~~
+drivers/clk/imx/clk.h:195:27: note: declared here
+      |                           ^~~~~~~~~~~
+drivers/clk/imx/clk-imxrt1170.c:172:32: error: passing argument 1 of
'imx_clk_divider' from incompatible pointer type
[-Wincompatible-pointer-types]
+  172 |                imx_clk_divider("flexspi1", "flexspi1_sel",
+      |                                ^~~~~~~~~~
+      |                                |
+      |                                char *
+drivers/clk/imx/clk.h:142:59: note: expected 'struct udevice *' but
argument is of type 'char *'
+  142 | static inline struct clk *imx_clk_divider(struct udevice
*dev, const char *name,
+      |                                           ~~~~~~~~~~~~~~~~^~~
+drivers/clk/imx/clk-imxrt1170.c:172:16: error: too few arguments to
function 'imx_clk_divider'
+      |                ^~~~~~~~~~~~~~~
+drivers/clk/imx/clk.h:142:27: note: declared here
+      |                           ^~~~~~~~~~~~~~~
+make[4]: *** [scripts/Makefile.build:257:
drivers/clk/imx/clk-imxrt1170.o] Error 1
+make[3]: *** [scripts/Makefile.build:398: drivers/clk/imx] Error 2
+make[2]: *** [scripts/Makefile.build:398: drivers/clk] Error 2
+make[1]: *** [Makefile:1919: drivers] Error 2
+make: *** [Makefile:177: sub-make] Error 2

Please fix and resend.

Reply via email to