Currenty, most peripherals enable/disable their respecive clocks using the clock framework, but serial ports various imx platsforms do not. Some of the newer NXP SoC's register the UART clocks, but they are not necessarily associated the to serial_mxc driver, so these clocks need to be manually enabled, and even when the driver model enumerates the UART, the driver model doesn't always reflect the proper clock state beacause these clocks are not controlled by the serial driver.
This series does a few things: Register the missing UART clocks on imx6, 8mm, 8mn, fixes a build dependency on CCF_FRAMEWORK on imx8mp in SPL, bulk enables the UART clocks from the serial_mxc driver, and finally, removes the manual references to enabling the UART clocks on Beacon EmbeddedWorks imx8mm, imx8mn, and imx8mp development kits. I don't have access to an imx6 board right now, nor do I have imx9 or imxrt boards, so I can't verify regressions on those platforms. For users who want to try this series and remove the manual UART calls, make sure the SoC clock driver is enabled in SPL and OF_SPL_REMOVE_PROPS should not remove the clocks or clock names. With this series both "clk dump" and "dm tree" show the UART clocks are registred and the one clocking the console UART is enabled and running. Adam Ford (10): clk: imx6q: Properly handle imx6qp ESPI clk_sels clk: imx6q: Register UART clocks clk: imx8mm: register UART clocks clk: imx8mn: register UART clocks serial: mxc: Support bulk enabling clocks board: beacon: imx8mm: Let clock system enable UART clock board: beacon: imx8mn: Let clock system enable UART clock clk: imx: select SPL_CLK_COMPOSITE_CCF when SPL_CLK_IMX8MP configs: imx8mp_beacon: Select SPL_CLK_IMX8MP board: beacon: imx8mp: Let clock system enable UART clock board/beacon/imx8mm/spl.c | 6 +---- board/beacon/imx8mn/spl.c | 2 -- board/beacon/imx8mp/spl.c | 2 -- configs/imx8mp_beacon_defconfig | 1 + drivers/clk/imx/Kconfig | 1 + drivers/clk/imx/clk-imx6q.c | 34 ++++++++++++++++++++++++--- drivers/clk/imx/clk-imx8mm.c | 34 +++++++++++++++++++++++++++ drivers/clk/imx/clk-imx8mn.c | 32 +++++++++++++++++++++++++ drivers/serial/serial_mxc.c | 11 +++++++++ include/dm/platform_data/serial_mxc.h | 1 + 10 files changed, 112 insertions(+), 12 deletions(-) -- 2.45.2