162306a36Sopenharmony_ci/* SPDX-License-Identifier: GPL-2.0+ */ 262306a36Sopenharmony_ci// 362306a36Sopenharmony_ci// OWL fixed factor clock driver 462306a36Sopenharmony_ci// 562306a36Sopenharmony_ci// Copyright (c) 2014 Actions Semi Inc. 662306a36Sopenharmony_ci// Author: David Liu <liuwei@actions-semi.com> 762306a36Sopenharmony_ci// 862306a36Sopenharmony_ci// Copyright (c) 2018 Linaro Ltd. 962306a36Sopenharmony_ci// Author: Manivannan Sadhasivam <manivannan.sadhasivam@linaro.org> 1062306a36Sopenharmony_ci 1162306a36Sopenharmony_ci#ifndef _OWL_FIXED_FACTOR_H_ 1262306a36Sopenharmony_ci#define _OWL_FIXED_FACTOR_H_ 1362306a36Sopenharmony_ci 1462306a36Sopenharmony_ci#include "owl-common.h" 1562306a36Sopenharmony_ci 1662306a36Sopenharmony_ci#define OWL_FIX_FACT(_struct, _name, _parent, _mul, _div, _flags) \ 1762306a36Sopenharmony_ci struct clk_fixed_factor _struct = { \ 1862306a36Sopenharmony_ci .mult = _mul, \ 1962306a36Sopenharmony_ci .div = _div, \ 2062306a36Sopenharmony_ci .hw.init = CLK_HW_INIT(_name, \ 2162306a36Sopenharmony_ci _parent, \ 2262306a36Sopenharmony_ci &clk_fixed_factor_ops, \ 2362306a36Sopenharmony_ci _flags), \ 2462306a36Sopenharmony_ci } 2562306a36Sopenharmony_ci 2662306a36Sopenharmony_ciextern const struct clk_ops clk_fixed_factor_ops; 2762306a36Sopenharmony_ci 2862306a36Sopenharmony_ci#endif /* _OWL_FIXED_FACTOR_H_ */ 29