On Thu, Oct 21, 2021 at 8:31 PM Hans de Goede <hdegoede@xxxxxxxxxx> wrote: > On 10/13/21 21:12, Stephen Boyd wrote: ... > >> + regmap_write(clkdata->regmap, TPS68470_REG_CLKCFG1, > >> + (TPS68470_PLL_OUTPUT_ENABLE << > >> + TPS68470_OUTPUT_A_SHIFT) | One line, please? > >> + (TPS68470_PLL_OUTPUT_ENABLE << > >> + TPS68470_OUTPUT_B_SHIFT)); Ditto. ... > > Also, why isn't this function actually writing > > hardware? > > set_rate can only be called when the clock is disabled, all the > necessary values are programmed based on the clk_cfg_idx in > tps68470_clk_prepare(). > > Note there is no enable() since enable() may not sleep and > this device is interfaced over I2C, so the clock is already > enabled from the prepare() op. This reminds me other drivers that do commit the changes to the hardware on bus lock, but I'm not sure if anything like that is applicable here. -- With Best Regards, Andy Shevchenko