On Tuesday, August 8, 2023 9:49:49 AM CEST Conor Dooley wrote:
On Mon, Aug 07, 2023 at 05:42:37PM +0200, Duje Mihanović wrote:
quoted
diff --git a/include/dt-bindings/clock/marvell,pxa1908.h
b/include/dt-bindings/clock/marvell,pxa1908.h new file mode 100644
index 000000000000..0c1f328bf534
--- /dev/null
+++ b/include/dt-bindings/clock/marvell,pxa1908.h
+#define PXA1908_CLK_PLL4VCODIV3 38
+#define PXA1908_MPMU_NR_CLKS 38
+#define PXA1908_CLK_TWSI3 18
+#define PXA1908_APBC_NR_CLKS 50
+#define PXA1908_CLK_AICER 3
+#define PXA1908_APBCP_NR_CLKS 50
+#define PXA1908_CLK_DVC_DFC_DEBUG 16
+#define PXA1908_APMU_NR_CLKS 50
How are these "NR_CLKS" things helpful to the binding?
They are used by the clock driver when calling mmp_clk_init which then uses
that as the size of a struct clk array it allocates. In retrospect, 50 for
each block may be too much as from what I can tell by reading the
mmp_register_* functions (number of clocks + 1) for each block should be
enough, anything less than that causes a null pointer dereference sometime
during clock initialization.
Regards,
Duje
_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel