static ulong clk_fixed_rate_get_rate(struct clk *clk) { if (clk->id != 0) return -EINVAL; return to_clk_fixed_rate(clk->dev)->fixed_rate; }
static int clk_fixed_rate_ofdata_to_platdata(struct udevice *dev) { #if !CONFIG_IS_ENABLED(OF_PLATDATA) to_clk_fixed_rate(dev)->fixed_rate = dev_read_u32_default(dev, "clock-frequency", 0); #endif return 0; }
void clk_hw_unregister_fixed_rate(struct clk_hw *hw) { struct clk_fixed_rate *fixed; fixed = to_clk_fixed_rate(hw); clk_hw_unregister(hw); kfree(fixed); }
void clk_unregister_fixed_rate(struct clk *clk) { struct clk_hw *hw; hw = __clk_get_hw(clk); if (!hw) return; clk_unregister(clk); kfree(to_clk_fixed_rate(hw)); }
static unsigned long clk_fixed_rate_recalc_rate(struct clk_hw *hw, unsigned long parent_rate) { return to_clk_fixed_rate(hw)->fixed_rate; }
static unsigned long clk_fixed_rate_recalc_accuracy(struct clk_hw *hw, unsigned long parent_accuracy) { return to_clk_fixed_rate(hw)->fixed_accuracy; }