1 /* Copyright 2018 SiFive, Inc */
2 /* SPDX-License-Identifier: Apache-2.0 */
4 #include <metal/clock.h>
6 extern __inline__ void _metal_clock_call_all_callbacks(const metal_clock_callback *const list);
7 extern __inline__ metal_clock_callback *_metal_clock_append_to_callbacks(metal_clock_callback *list, metal_clock_callback *const cb);
9 extern __inline__ long metal_clock_get_rate_hz(const struct metal_clock *clk);
10 extern __inline__ long metal_clock_set_rate_hz(struct metal_clock *clk, long hz);
11 extern __inline__ void metal_clock_register_post_rate_change_callback(struct metal_clock *clk, metal_clock_callback *cb);
12 extern __inline__ void metal_clock_register_pre_rate_change_callback(struct metal_clock *clk, metal_clock_callback *cb);