Home
last modified time | relevance | path

Searched defs:pll (Results 1 – 25 of 300) sorted by relevance

12345678910>>...12

/openbmc/linux/drivers/clk/mediatek/
H A Dclk-pll.c35 struct mtk_clk_pll *pll = to_mtk_clk_pll(hw); in mtk_pll_is_prepared() local
177 struct mtk_clk_pll *pll = to_mtk_clk_pll(hw); in mtk_pll_set_rate() local
189 struct mtk_clk_pll *pll = to_mtk_clk_pll(hw); in mtk_pll_recalc_rate() local
205 struct mtk_clk_pll *pll = to_mtk_clk_pll(hw); in mtk_pll_round_rate() local
216 struct mtk_clk_pll *pll = to_mtk_clk_pll(hw); in mtk_pll_prepare() local
250 struct mtk_clk_pll *pll = to_mtk_clk_pll(hw); in mtk_pll_unprepare() local
333 struct mtk_clk_pll *pll; in mtk_clk_register_pll() local
349 struct mtk_clk_pll *pll; in mtk_clk_unregister_pll() local
375 const struct mtk_pll_data *pll = &plls[i]; in mtk_clk_register_plls() local
398 const struct mtk_pll_data *pll = &plls[i]; in mtk_clk_register_plls() local
[all …]
/openbmc/linux/drivers/clk/rockchip/
H A Dclk-pll.c51 struct rockchip_clk_pll *pll, unsigned long rate) in rockchip_get_pll_settings()
67 struct rockchip_clk_pll *pll = to_rockchip_clk_pll(hw); in rockchip_pll_round_rate() local
166 struct rockchip_clk_pll *pll = to_rockchip_clk_pll(hw); in rockchip_rk3036_pll_recalc_rate() local
251 struct rockchip_clk_pll *pll = to_rockchip_clk_pll(hw); in rockchip_rk3036_pll_set_rate() local
270 struct rockchip_clk_pll *pll = to_rockchip_clk_pll(hw); in rockchip_rk3036_pll_enable() local
281 struct rockchip_clk_pll *pll = to_rockchip_clk_pll(hw); in rockchip_rk3036_pll_disable() local
290 struct rockchip_clk_pll *pll = to_rockchip_clk_pll(hw); in rockchip_rk3036_pll_is_enabled() local
298 struct rockchip_clk_pll *pll = to_rockchip_clk_pll(hw); in rockchip_rk3036_pll_init() local
403 struct rockchip_clk_pll *pll = to_rockchip_clk_pll(hw); in rockchip_rk3066_pll_recalc_rate() local
486 struct rockchip_clk_pll *pll = to_rockchip_clk_pll(hw); in rockchip_rk3066_pll_set_rate() local
[all …]
/openbmc/linux/drivers/clk/meson/
H A Dclk-pll.c57 struct meson_clk_pll_data *pll) in __pll_params_to_rate()
75 struct meson_clk_pll_data *pll = meson_clk_pll_data(clk); in meson_clk_pll_recalc_rate() local
101 struct meson_clk_pll_data *pll) in __pll_params_with_frac()
123 struct meson_clk_pll_data *pll) in meson_clk_pll_is_better()
141 struct meson_clk_pll_data *pll) in meson_clk_get_pll_table_index()
155 struct meson_clk_pll_data *pll) in meson_clk_get_pll_range_m()
170 struct meson_clk_pll_data *pll) in meson_clk_get_pll_range_index()
203 struct meson_clk_pll_data *pll) in meson_clk_get_pll_get_index()
218 struct meson_clk_pll_data *pll) in meson_clk_get_pll_settings()
248 struct meson_clk_pll_data *pll = meson_clk_pll_data(clk); in meson_clk_pll_determine_rate() local
[all …]
/openbmc/linux/drivers/clk/qcom/
H A Dclk-alpha-pll.c319 #define wait_for_pll_enable_active(pll) \ argument
322 #define wait_for_pll_enable_lock(pll) \ argument
325 #define wait_for_zonda_pll_freq_lock(pll) \ argument
328 #define wait_for_pll_disable(pll) \ argument
331 #define wait_for_pll_offline(pll) \ argument
334 #define wait_for_pll_update(pll) \ argument
337 #define wait_for_pll_update_ack_set(pll) \ argument
340 #define wait_for_pll_update_ack_clear(pll) \ argument
410 struct clk_alpha_pll *pll = to_clk_alpha_pll(hw); in clk_alpha_pll_hwfsm_enable() local
435 struct clk_alpha_pll *pll = to_clk_alpha_pll(hw); in clk_alpha_pll_hwfsm_disable() local
[all …]
H A Dclk-pll.c26 struct clk_pll *pll = to_clk_pll(hw); in clk_pll_enable() local
67 struct clk_pll *pll = to_clk_pll(hw); in clk_pll_disable() local
82 struct clk_pll *pll = to_clk_pll(hw); in clk_pll_recalc_rate() local
128 struct clk_pll *pll = to_clk_pll(hw); in clk_pll_determine_rate() local
143 struct clk_pll *pll = to_clk_pll(hw); in clk_pll_set_rate() local
179 static int wait_for_pll(struct clk_pll *pll) in wait_for_pll()
218 static void clk_pll_configure(struct clk_pll *pll, struct regmap *regmap, in clk_pll_configure()
245 void clk_pll_configure_sr(struct clk_pll *pll, struct regmap *regmap, in clk_pll_configure_sr()
254 void clk_pll_configure_sr_hpm_lp(struct clk_pll *pll, struct regmap *regmap, in clk_pll_configure_sr_hpm_lp()
265 struct clk_pll *pll = to_clk_pll(hw); in clk_pll_sr2_enable() local
[all …]
/openbmc/linux/drivers/clk/sprd/
H A Dpll.c18 #define pindex(pll, member) \ argument
21 #define pshift(pll, member) \ argument
24 #define pwidth(pll, member) \ argument
27 #define pmask(pll, member) \ argument
32 #define pinternal(pll, cfg, member) \ argument
35 #define pinternal_val(pll, cfg, member) \ argument
39 sprd_pll_read(const struct sprd_pll *pll, u8 index) in sprd_pll_read()
53 sprd_pll_write(const struct sprd_pll *pll, u8 index, in sprd_pll_write()
234 struct sprd_pll *pll = hw_to_sprd_pll(hw); in sprd_pll_recalc_rate() local
243 struct sprd_pll *pll = hw_to_sprd_pll(hw); in sprd_pll_set_rate() local
[all …]
/openbmc/linux/drivers/clk/tegra/
H A Dclk-pll.c1873 struct tegra_clk_pll *pll; in _tegra_init_pll() local
1925 struct tegra_clk_pll *pll; in tegra_clk_register_pll() local
1956 struct tegra_clk_pll *pll; in tegra_clk_register_plle() local
1980 struct tegra_clk_pll *pll; in tegra_clk_register_pllu() local
2048 struct tegra_clk_pll *pll; in tegra_clk_register_pllxc() local
2113 struct tegra_clk_pll *pll; in tegra_clk_register_pllre() local
2161 struct tegra_clk_pll *pll; in tegra_clk_register_pllm() local
2205 struct tegra_clk_pll *pll; in tegra_clk_register_pllc() local
2277 struct tegra_clk_pll *pll; in tegra_clk_register_plle_tegra114() local
2300 struct tegra_clk_pll *pll; in tegra_clk_register_pllu_tegra114() local
[all …]
/openbmc/linux/drivers/clk/pistachio/
H A Dclk-pll.c107 struct pistachio_clk_pll *pll = to_pistachio_pll(hw); in pll_frac_get_mode() local
116 struct pistachio_clk_pll *pll = to_pistachio_pll(hw); in pll_frac_set_mode() local
145 struct pistachio_clk_pll *pll = to_pistachio_pll(hw); in pll_round_rate() local
159 struct pistachio_clk_pll *pll = to_pistachio_pll(hw); in pll_gf40lp_frac_enable() local
178 struct pistachio_clk_pll *pll = to_pistachio_pll(hw); in pll_gf40lp_frac_disable() local
188 struct pistachio_clk_pll *pll = to_pistachio_pll(hw); in pll_gf40lp_frac_is_enabled() local
196 struct pistachio_clk_pll *pll = to_pistachio_pll(hw); in pll_gf40lp_frac_set_rate() local
272 struct pistachio_clk_pll *pll = to_pistachio_pll(hw); in pll_gf40lp_frac_recalc_rate() local
316 struct pistachio_clk_pll *pll = to_pistachio_pll(hw); in pll_gf40lp_laint_enable() local
452 struct pistachio_clk_pll *pll; in pll_register() local
[all …]
/openbmc/linux/drivers/clk/bcm/
H A Dclk-iproc-pll.c75 struct iproc_pll *pll; member
308 struct iproc_pll *pll = clk->pll; in pll_set_rate() local
430 struct iproc_pll *pll = clk->pll; in iproc_pll_enable() local
438 struct iproc_pll *pll = clk->pll; in iproc_pll_disable() local
451 struct iproc_pll *pll = clk->pll; in iproc_pll_recalc_rate() local
501 struct iproc_pll *pll = clk->pll; in iproc_pll_determine_rate() local
546 struct iproc_pll *pll = clk->pll; in iproc_pll_set_rate() local
579 struct iproc_pll *pll = clk->pll; in iproc_clk_enable() local
599 struct iproc_pll *pll = clk->pll; in iproc_clk_disable() local
615 struct iproc_pll *pll = clk->pll; in iproc_clk_recalc_rate() local
[all …]
/openbmc/linux/drivers/video/fbdev/omap2/omapfb/dss/
H A Dpll.c30 int dss_pll_register(struct dss_pll *pll) in dss_pll_register()
44 void dss_pll_unregister(struct dss_pll *pll) in dss_pll_unregister()
68 int dss_pll_enable(struct dss_pll *pll) in dss_pll_enable()
96 void dss_pll_disable(struct dss_pll *pll) in dss_pll_disable()
108 int dss_pll_set_config(struct dss_pll *pll, const struct dss_pll_clock_info *cinfo) in dss_pll_set_config()
121 bool dss_pll_hsdiv_calc(const struct dss_pll *pll, unsigned long clkdco, in dss_pll_hsdiv_calc()
146 bool dss_pll_calc(const struct dss_pll *pll, unsigned long clkin, in dss_pll_calc()
214 int dss_pll_wait_reset_done(struct dss_pll *pll) in dss_pll_wait_reset_done()
224 static int dss_wait_hsdiv_ack(struct dss_pll *pll, u32 hsdiv_ack_mask) in dss_wait_hsdiv_ack()
238 int dss_pll_write_config_type_a(struct dss_pll *pll, in dss_pll_write_config_type_a()
[all …]
H A Dhdmi_pll.c23 void hdmi_pll_dump(struct hdmi_pll_data *pll, struct seq_file *s) in hdmi_pll_dump()
39 void hdmi_pll_compute(struct hdmi_pll_data *pll, in hdmi_pll_compute()
101 struct hdmi_pll_data *pll = container_of(dsspll, struct hdmi_pll_data, pll); in hdmi_pll_enable() local
111 struct hdmi_pll_data *pll = container_of(dsspll, struct hdmi_pll_data, pll); in hdmi_pll_disable() local
174 struct dss_pll *pll = &hpll->pll; in dsi_init_pll_data() local
208 int hdmi_pll_init(struct platform_device *pdev, struct hdmi_pll_data *pll, in hdmi_pll_init()
232 struct dss_pll *pll = &hpll->pll; in hdmi_pll_uninit() local
/openbmc/u-boot/arch/arm/cpu/arm926ejs/mx27/
H A Dgeneric.c26 static unsigned int imx_decode_pll(unsigned int pll, unsigned int f_ref) in imx_decode_pll()
46 struct pll_regs *pll = (struct pll_regs *)IMX_PLL_BASE; in clk_in_26m() local
58 struct pll_regs *pll = (struct pll_regs *)IMX_PLL_BASE; in imx_get_mpllclk() local
72 struct pll_regs *pll = (struct pll_regs *)IMX_PLL_BASE; in imx_get_armclk() local
87 struct pll_regs *pll = (struct pll_regs *)IMX_PLL_BASE; in imx_get_ahbclk() local
99 struct pll_regs *pll = (struct pll_regs *)IMX_PLL_BASE; in imx_get_spllclk() local
118 struct pll_regs *pll = (struct pll_regs *)IMX_PLL_BASE; in imx_get_perclk1() local
125 struct pll_regs *pll = (struct pll_regs *)IMX_PLL_BASE; in imx_get_perclk2() local
132 struct pll_regs *pll = (struct pll_regs *)IMX_PLL_BASE; in imx_get_perclk3() local
139 struct pll_regs *pll = (struct pll_regs *)IMX_PLL_BASE; in imx_get_perclk4() local
[all …]
/openbmc/linux/drivers/gpu/drm/omapdrm/dss/
H A Dpll.c28 int dss_pll_register(struct dss_device *dss, struct dss_pll *pll) in dss_pll_register()
43 void dss_pll_unregister(struct dss_pll *pll) in dss_pll_unregister()
72 struct dss_pll *pll; in dss_pll_find_by_src() local
123 int dss_pll_enable(struct dss_pll *pll) in dss_pll_enable()
151 void dss_pll_disable(struct dss_pll *pll) in dss_pll_disable()
205 bool dss_pll_calc_a(const struct dss_pll *pll, unsigned long clkin, in dss_pll_calc_a()
272 bool dss_pll_calc_b(const struct dss_pll *pll, unsigned long clkin, in dss_pll_calc_b()
356 int dss_pll_wait_reset_done(struct dss_pll *pll) in dss_pll_wait_reset_done()
366 static int dss_wait_hsdiv_ack(struct dss_pll *pll, u32 hsdiv_ack_mask) in dss_wait_hsdiv_ack()
396 int dss_pll_write_config_type_a(struct dss_pll *pll, in dss_pll_write_config_type_a()
[all …]
H A Dhdmi_pll.c23 void hdmi_pll_dump(struct hdmi_pll_data *pll, struct seq_file *s) in hdmi_pll_dump()
41 struct hdmi_pll_data *pll = container_of(dsspll, struct hdmi_pll_data, pll); in hdmi_pll_enable() local
59 struct hdmi_pll_data *pll = container_of(dsspll, struct hdmi_pll_data, pll); in hdmi_pll_disable() local
132 struct dss_pll *pll = &hpll->pll; in hdmi_init_pll_data() local
162 struct hdmi_pll_data *pll, struct hdmi_wp_data *wp) in hdmi_pll_init()
184 struct dss_pll *pll = &hpll->pll; in hdmi_pll_uninit() local
/openbmc/linux/drivers/video/fbdev/aty/
H A Dmach64_gx.c124 u32 bpp, union aty_pll *pll) in aty_var_to_pll_514()
162 const union aty_pll *pll) in aty_pll_514_to_var()
176 const union aty_pll *pll) in aty_set_pll_514()
342 u32 bpp, union aty_pll *pll) in aty_var_to_pll_18818()
399 const union aty_pll *pll) in aty_pll_18818_to_var()
428 const union aty_pll *pll) in aty_set_pll18818()
565 const union aty_pll *pll) in aty_pll_1703_to_var()
571 const union aty_pll *pll) in aty_set_pll_1703()
689 const union aty_pll *pll) in aty_set_pll_8398()
801 const union aty_pll *pll) in aty_pll_408_to_var()
[all …]
/openbmc/linux/drivers/gpu/drm/i915/display/
H A Dintel_dpll_mgr.c162 struct intel_shared_dpll *pll, in assert_shared_dpll()
191 struct intel_shared_dpll *pll) in intel_combo_pll_enable_reg()
204 struct intel_shared_dpll *pll) in intel_tc_pll_enable_reg()
468 struct intel_shared_dpll *pll = in intel_shared_dpll_swap_state() local
511 struct intel_shared_dpll *pll) in ibx_pch_dpll_enable()
538 struct intel_shared_dpll *pll) in ibx_pch_dpll_disable()
561 struct intel_shared_dpll *pll; in ibx_get_dpll() local
635 struct intel_shared_dpll *pll) in hsw_ddi_spll_enable()
1018 struct intel_shared_dpll *pll; in hsw_ddi_lcpll_get_dpll() local
1833 struct intel_shared_dpll *pll; in skl_get_dpll() local
[all …]
/openbmc/linux/drivers/clk/mxs/
H A Dclk-pll.c34 struct clk_pll *pll = to_clk_pll(hw); in clk_pll_prepare() local
45 struct clk_pll *pll = to_clk_pll(hw); in clk_pll_unprepare() local
52 struct clk_pll *pll = to_clk_pll(hw); in clk_pll_enable() local
61 struct clk_pll *pll = to_clk_pll(hw); in clk_pll_disable() local
69 struct clk_pll *pll = to_clk_pll(hw); in clk_pll_recalc_rate() local
85 struct clk_pll *pll; in mxs_clk_pll() local
/openbmc/linux/drivers/clk/visconti/
H A Dpll.c56 static void visconti_pll_get_params(struct visconti_pll *pll, in visconti_pll_get_params()
75 static const struct visconti_pll_rate_table *visconti_get_pll_settings(struct visconti_pll *pll, in visconti_get_pll_settings()
88 static unsigned long visconti_get_pll_rate_from_data(struct visconti_pll *pll, in visconti_get_pll_rate_from_data()
106 struct visconti_pll *pll = to_visconti_pll(hw); in visconti_pll_round_rate() local
122 struct visconti_pll *pll = to_visconti_pll(hw); in visconti_pll_recalc_rate() local
131 static int visconti_pll_set_params(struct visconti_pll *pll, in visconti_pll_set_params()
146 struct visconti_pll *pll = to_visconti_pll(hw); in visconti_pll_set_rate() local
158 struct visconti_pll *pll = to_visconti_pll(hw); in visconti_pll_is_enabled() local
168 struct visconti_pll *pll = to_visconti_pll(hw); in visconti_pll_enable() local
209 struct visconti_pll *pll = to_visconti_pll(hw); in visconti_pll_disable() local
[all …]
/openbmc/linux/drivers/clk/imx/
H A Dclk-pll14xx.c92 struct clk_pll14xx *pll, unsigned long rate) in imx_get_pll_settings()
219 struct clk_pll14xx *pll = to_clk_pll14xx(hw); in clk_pll1416x_round_rate() local
235 struct clk_pll14xx *pll = to_clk_pll14xx(hw); in clk_pll1443x_round_rate() local
246 struct clk_pll14xx *pll = to_clk_pll14xx(hw); in clk_pll14xx_recalc_rate() local
275 static int clk_pll14xx_wait_lock(struct clk_pll14xx *pll) in clk_pll14xx_wait_lock()
286 struct clk_pll14xx *pll = to_clk_pll14xx(hw); in clk_pll1416x_set_rate() local
352 struct clk_pll14xx *pll = to_clk_pll14xx(hw); in clk_pll1443x_set_rate() local
415 struct clk_pll14xx *pll = to_clk_pll14xx(hw); in clk_pll14xx_prepare() local
443 struct clk_pll14xx *pll = to_clk_pll14xx(hw); in clk_pll14xx_is_prepared() local
453 struct clk_pll14xx *pll = to_clk_pll14xx(hw); in clk_pll14xx_unprepare() local
[all …]
H A Dclk-pllv1.c32 static inline bool is_imx1_pllv1(struct clk_pllv1 *pll) in is_imx1_pllv1()
37 static inline bool is_imx21_pllv1(struct clk_pllv1 *pll) in is_imx21_pllv1()
42 static inline bool is_imx27_pllv1(struct clk_pllv1 *pll) in is_imx27_pllv1()
47 static inline bool mfn_is_negative(struct clk_pllv1 *pll, unsigned int mfn) in mfn_is_negative()
55 struct clk_pllv1 *pll = to_clk_pllv1(hw); in clk_pllv1_recalc_rate() local
117 struct clk_pllv1 *pll; in imx_clk_hw_pllv1() local
H A Dclk-frac-pll.c44 static int clk_wait_lock(struct clk_frac_pll *pll) in clk_wait_lock()
52 static int clk_wait_ack(struct clk_frac_pll *pll) in clk_wait_ack()
67 struct clk_frac_pll *pll = to_clk_frac_pll(hw); in clk_pll_prepare() local
79 struct clk_frac_pll *pll = to_clk_frac_pll(hw); in clk_pll_unprepare() local
89 struct clk_frac_pll *pll = to_clk_frac_pll(hw); in clk_pll_is_prepared() local
99 struct clk_frac_pll *pll = to_clk_frac_pll(hw); in clk_pll_recalc_rate() local
158 struct clk_frac_pll *pll = to_clk_frac_pll(hw); in clk_pll_set_rate() local
210 struct clk_frac_pll *pll; in imx_clk_hw_frac_pll() local
H A Dclk-pllv4.c60 static inline int clk_pllv4_wait_lock(struct clk_pllv4 *pll) in clk_pllv4_wait_lock()
70 struct clk_pllv4 *pll = to_clk_pllv4(hw); in clk_pllv4_is_prepared() local
81 struct clk_pllv4 *pll = to_clk_pllv4(hw); in clk_pllv4_recalc_rate() local
101 struct clk_pllv4 *pll = to_clk_pllv4(hw); in clk_pllv4_round_rate() local
158 static bool clk_pllv4_is_valid_mult(struct clk_pllv4 *pll, unsigned int mult) in clk_pllv4_is_valid_mult()
180 struct clk_pllv4 *pll = to_clk_pllv4(hw); in clk_pllv4_set_rate() local
211 struct clk_pllv4 *pll = to_clk_pllv4(hw); in clk_pllv4_prepare() local
223 struct clk_pllv4 *pll = to_clk_pllv4(hw); in clk_pllv4_unprepare() local
242 struct clk_pllv4 *pll; in imx_clk_hw_pllv4() local
H A Dclk-pllv3.c75 struct clk_pllv3 *pll = to_clk_pllv3(hw); in clk_pllv3_prepare() local
90 struct clk_pllv3 *pll = to_clk_pllv3(hw); in clk_pllv3_unprepare() local
103 struct clk_pllv3 *pll = to_clk_pllv3(hw); in clk_pllv3_is_prepared() local
114 struct clk_pllv3 *pll = to_clk_pllv3(hw); in clk_pllv3_recalc_rate() local
132 struct clk_pllv3 *pll = to_clk_pllv3(hw); in clk_pllv3_set_rate() local
162 struct clk_pllv3 *pll = to_clk_pllv3(hw); in clk_pllv3_sys_recalc_rate() local
188 struct clk_pllv3 *pll = to_clk_pllv3(hw); in clk_pllv3_sys_set_rate() local
217 struct clk_pllv3 *pll = to_clk_pllv3(hw); in clk_pllv3_av_recalc_rate() local
264 struct clk_pllv3 *pll = to_clk_pllv3(hw); in clk_pllv3_av_set_rate() local
348 struct clk_pllv3 *pll = to_clk_pllv3(hw); in clk_pllv3_vf610_recalc_rate() local
[all …]
/openbmc/linux/drivers/gpu/drm/msm/hdmi/
H A Dhdmi_pll_8960.c237 static inline void pll_write(struct hdmi_pll_8960 *pll, u32 reg, u32 data) in pll_write()
242 static inline u32 pll_read(struct hdmi_pll_8960 *pll, u32 reg) in pll_read()
247 static inline struct hdmi_phy *pll_get_phy(struct hdmi_pll_8960 *pll) in pll_get_phy()
254 struct hdmi_pll_8960 *pll = hw_clk_to_pll(hw); in hdmi_pll_enable() local
339 struct hdmi_pll_8960 *pll = hw_clk_to_pll(hw); in hdmi_pll_disable() local
371 struct hdmi_pll_8960 *pll = hw_clk_to_pll(hw); in hdmi_pll_recalc_rate() local
387 struct hdmi_pll_8960 *pll = hw_clk_to_pll(hw); in hdmi_pll_set_rate() local
424 struct hdmi_pll_8960 *pll; in msm_hdmi_pll_8960_init() local
/openbmc/linux/drivers/clk/baikal-t1/
H A Dccu-pll.c107 struct ccu_pll *pll = to_ccu_pll(hw); in ccu_pll_enable() local
134 struct ccu_pll *pll = to_ccu_pll(hw); in ccu_pll_disable() local
144 struct ccu_pll *pll = to_ccu_pll(hw); in ccu_pll_is_enabled() local
155 struct ccu_pll *pll = to_ccu_pll(hw); in ccu_pll_recalc_rate() local
306 struct ccu_pll *pll; member
313 struct ccu_pll *pll; member
372 struct ccu_pll *pll = bit->pll; in ccu_pll_dbgfs_bit_set() local
386 struct ccu_pll *pll = fld->pll; in ccu_pll_dbgfs_fld_set() local
414 struct ccu_pll *pll = bit->pll; in ccu_pll_dbgfs_bit_get() local
428 struct ccu_pll *pll = fld->pll; in ccu_pll_dbgfs_fld_get() local
[all …]

12345678910>>...12