1/* SPDX-License-Identifier: GPL-2.0 */
2/* Copyright (C) 2018-2021, Intel Corporation. */
3
4#ifndef _ICE_CGU_REGS_H_
5#define _ICE_CGU_REGS_H_
6
7#define NAC_CGU_DWORD9 0x24
8union nac_cgu_dword9 {
9 struct {
10 u32 time_ref_freq_sel : 3;
11 u32 clk_eref1_en : 1;
12 u32 clk_eref0_en : 1;
13 u32 time_ref_en : 1;
14 u32 time_sync_en : 1;
15 u32 one_pps_out_en : 1;
16 u32 clk_ref_synce_en : 1;
17 u32 clk_synce1_en : 1;
18 u32 clk_synce0_en : 1;
19 u32 net_clk_ref1_en : 1;
20 u32 net_clk_ref0_en : 1;
21 u32 clk_synce1_amp : 2;
22 u32 misc6 : 1;
23 u32 clk_synce0_amp : 2;
24 u32 one_pps_out_amp : 2;
25 u32 misc24 : 12;
26 } field;
27 u32 val;
28};
29
30#define NAC_CGU_DWORD19 0x4c
31union nac_cgu_dword19 {
32 struct {
33 u32 tspll_fbdiv_intgr : 8;
34 u32 fdpll_ulck_thr : 5;
35 u32 misc15 : 3;
36 u32 tspll_ndivratio : 4;
37 u32 tspll_iref_ndivratio : 3;
38 u32 misc19 : 1;
39 u32 japll_ndivratio : 4;
40 u32 japll_iref_ndivratio : 3;
41 u32 misc27 : 1;
42 } field;
43 u32 val;
44};
45
46#define NAC_CGU_DWORD22 0x58
47union nac_cgu_dword22 {
48 struct {
49 u32 fdpll_frac_div_out_nc : 2;
50 u32 fdpll_lock_int_for : 1;
51 u32 synce_hdov_int_for : 1;
52 u32 synce_lock_int_for : 1;
53 u32 fdpll_phlead_slip_nc : 1;
54 u32 fdpll_acc1_ovfl_nc : 1;
55 u32 fdpll_acc2_ovfl_nc : 1;
56 u32 synce_status_nc : 6;
57 u32 fdpll_acc1f_ovfl : 1;
58 u32 misc18 : 1;
59 u32 fdpllclk_div : 4;
60 u32 time1588clk_div : 4;
61 u32 synceclk_div : 4;
62 u32 synceclk_sel_div2 : 1;
63 u32 fdpllclk_sel_div2 : 1;
64 u32 time1588clk_sel_div2 : 1;
65 u32 misc3 : 1;
66 } field;
67 u32 val;
68};
69
70#define NAC_CGU_DWORD24 0x60
71union nac_cgu_dword24 {
72 struct {
73 u32 tspll_fbdiv_frac : 22;
74 u32 misc20 : 2;
75 u32 ts_pll_enable : 1;
76 u32 time_sync_tspll_align_sel : 1;
77 u32 ext_synce_sel : 1;
78 u32 ref1588_ck_div : 4;
79 u32 time_ref_sel : 1;
80 } field;
81 u32 val;
82};
83
84#define TSPLL_CNTR_BIST_SETTINGS 0x344
85union tspll_cntr_bist_settings {
86 struct {
87 u32 i_irefgen_settling_time_cntr_7_0 : 8;
88 u32 i_irefgen_settling_time_ro_standby_1_0 : 2;
89 u32 reserved195 : 5;
90 u32 i_plllock_sel_0 : 1;
91 u32 i_plllock_sel_1 : 1;
92 u32 i_plllock_cnt_6_0 : 7;
93 u32 i_plllock_cnt_10_7 : 4;
94 u32 reserved200 : 4;
95 } field;
96 u32 val;
97};
98
99#define TSPLL_RO_BWM_LF 0x370
100union tspll_ro_bwm_lf {
101 struct {
102 u32 bw_freqov_high_cri_7_0 : 8;
103 u32 bw_freqov_high_cri_9_8 : 2;
104 u32 biascaldone_cri : 1;
105 u32 plllock_gain_tran_cri : 1;
106 u32 plllock_true_lock_cri : 1;
107 u32 pllunlock_flag_cri : 1;
108 u32 afcerr_cri : 1;
109 u32 afcdone_cri : 1;
110 u32 feedfwrdgain_cal_cri_7_0 : 8;
111 u32 m2fbdivmod_cri_7_0 : 8;
112 } field;
113 u32 val;
114};
115
116#endif /* _ICE_CGU_REGS_H_ */
117

source code of linux/drivers/net/ethernet/intel/ice/ice_cgu_regs.h