/* * Copyright (C) 2015 Google, Inc * Written by Simon Glass * * SPDX-License-Identifier: GPL-2.0+ */ #include #include #include #include #include #include ulong clk_get_rate(struct udevice *dev) { struct clk_ops *ops = clk_get_ops(dev); if (!ops->get_rate) return -ENOSYS; return ops->get_rate(dev); } ulong clk_set_rate(struct udevice *dev, ulong rate) { struct clk_ops *ops = clk_get_ops(dev); if (!ops->set_rate) return -ENOSYS; return ops->set_rate(dev, rate); } ulong clk_get_periph_rate(struct udevice *dev, int periph) { struct clk_ops *ops = clk_get_ops(dev); if (!ops->get_periph_rate) return -ENOSYS; return ops->get_periph_rate(dev, periph); } ulong clk_set_periph_rate(struct udevice *dev, int periph, ulong rate) { struct clk_ops *ops = clk_get_ops(dev); if (!ops->set_periph_rate) return -ENOSYS; return ops->set_periph_rate(dev, periph, rate); } UCLASS_DRIVER(clk) = { .id = UCLASS_CLK, .name = "clk", };