diff --git a/drivers/clk/bcm/clk-bcm2835.c b/drivers/clk/bcm/clk-bcm2835.c index 136e5d28f9eaea..4192863778c800 100644 --- a/drivers/clk/bcm/clk-bcm2835.c +++ b/drivers/clk/bcm/clk-bcm2835.c @@ -1366,6 +1366,11 @@ bcm2835_register_pll_divider(struct bcm2835_cprman *cprman, divider->div.hw.init = &init; divider->div.table = NULL; + if (!(cprman_read(cprman, data->cm_reg) & data->hold_mask)) { + init.flags |= CLK_IS_CRITICAL; + divider->div.flags |= CLK_IS_CRITICAL; + } + divider->cprman = cprman; divider->data = data;