Back to home page

OSCL-LXR

 
 

    


0001 /* SPDX-License-Identifier: GPL-2.0 */
0002 /*
0003  * Copyright (c) 2019 BayLibre, SAS.
0004  * Author: Jerome Brunet <jbrunet@baylibre.com>
0005  */
0006 
0007 #ifndef __MESON_CLK_MPLL_H
0008 #define __MESON_CLK_MPLL_H
0009 
0010 #include <linux/clk-provider.h>
0011 #include <linux/spinlock.h>
0012 
0013 #include "parm.h"
0014 
0015 struct meson_clk_mpll_data {
0016     struct parm sdm;
0017     struct parm sdm_en;
0018     struct parm n2;
0019     struct parm ssen;
0020     struct parm misc;
0021     const struct reg_sequence *init_regs;
0022     unsigned int init_count;
0023     spinlock_t *lock;
0024     u8 flags;
0025 };
0026 
0027 #define CLK_MESON_MPLL_ROUND_CLOSEST    BIT(0)
0028 #define CLK_MESON_MPLL_SPREAD_SPECTRUM  BIT(1)
0029 
0030 extern const struct clk_ops meson_clk_mpll_ro_ops;
0031 extern const struct clk_ops meson_clk_mpll_ops;
0032 
0033 #endif /* __MESON_CLK_MPLL_H */