forked from Qortal/Brooklyn
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
84 lines
2.3 KiB
84 lines
2.3 KiB
/* SPDX-License-Identifier: GPL-2.0 */ |
|
#ifndef CS2000_H_INCLUDED |
|
#define CS2000_H_INCLUDED |
|
|
|
#define CS2000_DEV_ID 0x01 |
|
#define CS2000_DEV_CTRL 0x02 |
|
#define CS2000_DEV_CFG_1 0x03 |
|
#define CS2000_DEV_CFG_2 0x04 |
|
#define CS2000_GLOBAL_CFG 0x05 |
|
#define CS2000_RATIO_0 0x06 /* 32 bits, big endian */ |
|
#define CS2000_RATIO_1 0x0a |
|
#define CS2000_RATIO_2 0x0e |
|
#define CS2000_RATIO_3 0x12 |
|
#define CS2000_FUN_CFG_1 0x16 |
|
#define CS2000_FUN_CFG_2 0x17 |
|
#define CS2000_FUN_CFG_3 0x1e |
|
|
|
/* DEV_ID */ |
|
#define CS2000_DEVICE_MASK 0xf8 |
|
#define CS2000_REVISION_MASK 0x07 |
|
|
|
/* DEV_CTRL */ |
|
#define CS2000_UNLOCK 0x80 |
|
#define CS2000_AUX_OUT_DIS 0x02 |
|
#define CS2000_CLK_OUT_DIS 0x01 |
|
|
|
/* DEV_CFG_1 */ |
|
#define CS2000_R_MOD_SEL_MASK 0xe0 |
|
#define CS2000_R_MOD_SEL_1 0x00 |
|
#define CS2000_R_MOD_SEL_2 0x20 |
|
#define CS2000_R_MOD_SEL_4 0x40 |
|
#define CS2000_R_MOD_SEL_8 0x60 |
|
#define CS2000_R_MOD_SEL_1_2 0x80 |
|
#define CS2000_R_MOD_SEL_1_4 0xa0 |
|
#define CS2000_R_MOD_SEL_1_8 0xc0 |
|
#define CS2000_R_MOD_SEL_1_16 0xe0 |
|
#define CS2000_R_SEL_MASK 0x18 |
|
#define CS2000_R_SEL_SHIFT 3 |
|
#define CS2000_AUX_OUT_SRC_MASK 0x06 |
|
#define CS2000_AUX_OUT_SRC_REF_CLK 0x00 |
|
#define CS2000_AUX_OUT_SRC_CLK_IN 0x02 |
|
#define CS2000_AUX_OUT_SRC_CLK_OUT 0x04 |
|
#define CS2000_AUX_OUT_SRC_PLL_LOCK 0x06 |
|
#define CS2000_EN_DEV_CFG_1 0x01 |
|
|
|
/* DEV_CFG_2 */ |
|
#define CS2000_LOCK_CLK_MASK 0x06 |
|
#define CS2000_LOCK_CLK_SHIFT 1 |
|
#define CS2000_FRAC_N_SRC_MASK 0x01 |
|
#define CS2000_FRAC_N_SRC_STATIC 0x00 |
|
#define CS2000_FRAC_N_SRC_DYNAMIC 0x01 |
|
|
|
/* GLOBAL_CFG */ |
|
#define CS2000_FREEZE 0x08 |
|
#define CS2000_EN_DEV_CFG_2 0x01 |
|
|
|
/* FUN_CFG_1 */ |
|
#define CS2000_CLK_SKIP_EN 0x80 |
|
#define CS2000_AUX_LOCK_CFG_MASK 0x40 |
|
#define CS2000_AUX_LOCK_CFG_PP_HIGH 0x00 |
|
#define CS2000_AUX_LOCK_CFG_OD_LOW 0x40 |
|
#define CS2000_REF_CLK_DIV_MASK 0x18 |
|
#define CS2000_REF_CLK_DIV_4 0x00 |
|
#define CS2000_REF_CLK_DIV_2 0x08 |
|
#define CS2000_REF_CLK_DIV_1 0x10 |
|
|
|
/* FUN_CFG_2 */ |
|
#define CS2000_CLK_OUT_UNL 0x10 |
|
#define CS2000_L_F_RATIO_CFG_MASK 0x08 |
|
#define CS2000_L_F_RATIO_CFG_20_12 0x00 |
|
#define CS2000_L_F_RATIO_CFG_12_20 0x08 |
|
|
|
/* FUN_CFG_3 */ |
|
#define CS2000_CLK_IN_BW_MASK 0x70 |
|
#define CS2000_CLK_IN_BW_1 0x00 |
|
#define CS2000_CLK_IN_BW_2 0x10 |
|
#define CS2000_CLK_IN_BW_4 0x20 |
|
#define CS2000_CLK_IN_BW_8 0x30 |
|
#define CS2000_CLK_IN_BW_16 0x40 |
|
#define CS2000_CLK_IN_BW_32 0x50 |
|
#define CS2000_CLK_IN_BW_64 0x60 |
|
#define CS2000_CLK_IN_BW_128 0x70 |
|
|
|
#endif
|
|
|