Lines Matching refs:pb
106 struct pic32_periph_clk *pb = clkhw_to_pbclk(hw); in pbclk_is_enabled() local
108 return readl(pb->ctrl_reg) & PB_DIV_ENABLE; in pbclk_is_enabled()
113 struct pic32_periph_clk *pb = clkhw_to_pbclk(hw); in pbclk_enable() local
115 writel(PB_DIV_ENABLE, PIC32_SET(pb->ctrl_reg)); in pbclk_enable()
121 struct pic32_periph_clk *pb = clkhw_to_pbclk(hw); in pbclk_disable() local
123 writel(PB_DIV_ENABLE, PIC32_CLR(pb->ctrl_reg)); in pbclk_disable()
152 static inline u32 pbclk_read_pbdiv(struct pic32_periph_clk *pb) in pbclk_read_pbdiv() argument
154 return ((readl(pb->ctrl_reg) >> PB_DIV_SHIFT) & PB_DIV_MASK) + 1; in pbclk_read_pbdiv()
160 struct pic32_periph_clk *pb = clkhw_to_pbclk(hw); in pbclk_recalc_rate() local
162 return parent_rate / pbclk_read_pbdiv(pb); in pbclk_recalc_rate()
175 struct pic32_periph_clk *pb = clkhw_to_pbclk(hw); in pbclk_set_rate() local
181 err = readl_poll_timeout(pb->ctrl_reg, v, v & PB_DIV_READY, in pbclk_set_rate()
189 spin_lock_irqsave(&pb->core->reg_lock, flags); in pbclk_set_rate()
192 v = readl(pb->ctrl_reg); in pbclk_set_rate()
198 writel(v, pb->ctrl_reg); in pbclk_set_rate()
200 spin_unlock_irqrestore(&pb->core->reg_lock, flags); in pbclk_set_rate()
203 err = readl_poll_timeout(pb->ctrl_reg, v, v & PB_DIV_READY, in pbclk_set_rate()
209 return (pbclk_read_pbdiv(pb) == div) ? 0 : -EBUSY; in pbclk_set_rate()