Skip to content
Projects
Groups
Snippets
Help
Loading...
Sign in
Toggle navigation
B
Beam Positoning Monitor - Software
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
Wiki
Wiki
image/svg+xml
Discourse
Discourse
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Commits
Issue Boards
Open sidebar
Projects
Beam Positoning Monitor - Software
Commits
260ec15b
Commit
260ec15b
authored
Apr 19, 2016
by
Lucas Russo
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
libs/libbpmclient: add FMC_ADC_COMMON/FMC_ACTIVE_CLK modules
parent
f5e8b6d3
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
204 additions
and
196 deletions
+204
-196
Makefile
src/libs/libbpmclient/Makefile
+8
-0
bpm_client_core.c
src/libs/libbpmclient/src/bpm_client_core.c
+196
-196
No files found.
src/libs/libbpmclient/Makefile
View file @
260ec15b
...
...
@@ -100,6 +100,8 @@ OBJS_EXTERNAL = ../../sm_io/modules/sm_io_codes.o \
../../sm_io/modules/dsp/sm_io_dsp_exports.o
\
../../sm_io/modules/fmc130m_4ch/sm_io_fmc130m_4ch_exports.o
\
../../sm_io/modules/fmc250m_4ch/sm_io_fmc250m_4ch_exports.o
\
../../sm_io/modules/fmc_adc_common/sm_io_fmc_adc_common_exports.o
\
../../sm_io/modules/fmc_active_clk/sm_io_fmc_active_clk_exports.o
\
../../sm_io/modules/swap/sm_io_swap_exports.o
\
../../sm_io/modules/rffe/sm_io_rffe_exports.o
\
../../sm_io/modules/afc_diag/sm_io_afc_diag_exports.o
...
...
@@ -114,6 +116,8 @@ INCLUDE_DIRS = -I. -Iinclude \
-I
../../sm_io/modules
\
-I
../../sm_io/modules/fmc130m_4ch
\
-I
../../sm_io/modules/fmc250m_4ch
\
-I
../../sm_io/modules/fmc_adc_common
\
-I
../../sm_io/modules/fmc_active_clk
\
-I
../../sm_io/modules/acq
\
-I
../../sm_io/modules/swap
\
-I
../../sm_io/modules/dsp
\
...
...
@@ -145,6 +149,8 @@ $(LIBNAME)_CODE_HEADERS = \
$(LIBNAME)
_SMIO_CODES
=
../../sm_io/modules/fmc130m_4ch/sm_io_fmc130m_4ch_codes.h
\
../../sm_io/modules/fmc250m_4ch/sm_io_fmc250m_4ch_codes.h
\
../../sm_io/modules/fmc_adc_common/sm_io_fmc_adc_common_codes.h
\
../../sm_io/modules/fmc_active_clk/sm_io_fmc_active_clk_codes.h
\
../../sm_io/modules/acq/sm_io_acq_codes.h
\
../../sm_io/modules/dsp/sm_io_dsp_codes.h
\
../../sm_io/modules/swap/sm_io_swap_codes.h
\
...
...
@@ -154,6 +160,8 @@ $(LIBNAME)_SMIO_CODES = ../../sm_io/modules/fmc130m_4ch/sm_io_fmc130m_4ch_codes.
$(LIBNAME)
_SMIO_EXPORTS
=
../../sm_io/modules/fmc130m_4ch/sm_io_fmc130m_4ch_exports.h
\
../../sm_io/modules/fmc250m_4ch/sm_io_fmc250m_4ch_exports.h
\
../../sm_io/modules/fmc_adc_common/sm_io_fmc_adc_common_exports.h
\
../../sm_io/modules/fmc_active_clk/sm_io_fmc_active_clk_exports.h
\
../../sm_io/modules/acq/sm_io_acq_exports.h
\
../../sm_io/modules/dsp/sm_io_dsp_exports.h
\
../../sm_io/modules/swap/sm_io_swap_exports.h
\
...
...
src/libs/libbpmclient/src/bpm_client_core.c
View file @
260ec15b
...
...
@@ -349,71 +349,256 @@ mlm_client_t *bpm_get_mlm_client (bpm_client_t *self)
return
self
->
mlm_client
;
}
/**************** FMC
130M
SMIO Functions ****************/
/**************** FMC
ADC COMMON
SMIO Functions ****************/
PARAM_FUNC_CLIENT_WRITE
(
fmc_leds
)
{
return
param_client_write
(
self
,
service
,
FMC
130M_4CH
_OPCODE_LEDS
,
return
param_client_write
(
self
,
service
,
FMC
_ADC_COMMON
_OPCODE_LEDS
,
fmc_leds
);
}
PARAM_FUNC_CLIENT_READ
(
fmc_leds
)
{
return
param_client_read
(
self
,
service
,
FMC
130M_4CH
_OPCODE_LEDS
,
return
param_client_read
(
self
,
service
,
FMC
_ADC_COMMON
_OPCODE_LEDS
,
fmc_leds
);
}
PARAM_FUNC_CLIENT_WRITE
(
adc_test_data_en
)
{
return
param_client_write
(
self
,
service
,
FMC_ADC_COMMON_OPCODE_TEST_DATA_EN
,
adc_test_data_en
);
}
PARAM_FUNC_CLIENT_READ
(
adc_test_data_en
)
{
return
param_client_read
(
self
,
service
,
FMC_ADC_COMMON_OPCODE_TEST_DATA_EN
,
adc_test_data_en
);
}
PARAM_FUNC_CLIENT_WRITE
(
trig_dir
)
{
return
param_client_write
(
self
,
service
,
FMC_ADC_COMMON_OPCODE_TRIG_DIR
,
trig_dir
);
}
PARAM_FUNC_CLIENT_READ
(
trig_dir
)
{
return
param_client_read
(
self
,
service
,
FMC_ADC_COMMON_OPCODE_TRIG_DIR
,
trig_dir
);
}
PARAM_FUNC_CLIENT_WRITE
(
trig_term
)
{
return
param_client_write
(
self
,
service
,
FMC_ADC_COMMON_OPCODE_TRIG_TERM
,
trig_term
);
}
PARAM_FUNC_CLIENT_READ
(
trig_term
)
{
return
param_client_read
(
self
,
service
,
FMC_ADC_COMMON_OPCODE_TRIG_TERM
,
trig_term
);
}
PARAM_FUNC_CLIENT_WRITE
(
trig_val
)
{
return
param_client_write
(
self
,
service
,
FMC_ADC_COMMON_OPCODE_TRIG_VAL
,
trig_val
);
}
PARAM_FUNC_CLIENT_READ
(
trig_val
)
{
return
param_client_read
(
self
,
service
,
FMC_ADC_COMMON_OPCODE_TRIG_VAL
,
trig_val
);
}
/**************** FMC ACTIVE CLOCK SMIO Functions ****************/
/* FUNCTION pin functions */
PARAM_FUNC_CLIENT_WRITE
(
fmc_pll_function
)
{
return
param_client_write
(
self
,
service
,
FMC
130M_4CH
_OPCODE_PLL_FUNCTION
,
return
param_client_write
(
self
,
service
,
FMC
_ACTIVE_CLK
_OPCODE_PLL_FUNCTION
,
fmc_pll_function
);
}
PARAM_FUNC_CLIENT_READ
(
fmc_pll_function
)
{
return
param_client_read
(
self
,
service
,
FMC
130M_4CH
_OPCODE_PLL_FUNCTION
,
return
param_client_read
(
self
,
service
,
FMC
_ACTIVE_CLK
_OPCODE_PLL_FUNCTION
,
fmc_pll_function
);
}
/* STATUS pin functions */
PARAM_FUNC_CLIENT_WRITE
(
fmc_pll_status
)
{
return
param_client_write
(
self
,
service
,
FMC
130M_4CH
_OPCODE_PLL_STATUS
,
return
param_client_write
(
self
,
service
,
FMC
_ACTIVE_CLK
_OPCODE_PLL_STATUS
,
fmc_pll_status
);
}
PARAM_FUNC_CLIENT_READ
(
fmc_pll_status
)
{
return
param_client_read
(
self
,
service
,
FMC
130M_4CH
_OPCODE_PLL_STATUS
,
return
param_client_read
(
self
,
service
,
FMC
_ACTIVE_CLK
_OPCODE_PLL_STATUS
,
fmc_pll_status
);
}
/* CLK_SEL pin functions */
PARAM_FUNC_CLIENT_WRITE
(
fmc_clk_sel
)
{
return
param_client_write
(
self
,
service
,
FMC
130M_4CH
_OPCODE_CLK_SEL
,
return
param_client_write
(
self
,
service
,
FMC
_ACTIVE_CLK
_OPCODE_CLK_SEL
,
fmc_clk_sel
);
}
PARAM_FUNC_CLIENT_READ
(
fmc_clk_sel
)
{
return
param_client_read
(
self
,
service
,
FMC
130M_4CH
_OPCODE_CLK_SEL
,
return
param_client_read
(
self
,
service
,
FMC
_ACTIVE_CLK
_OPCODE_CLK_SEL
,
fmc_clk_sel
);
}
PARAM_FUNC_CLIENT_WRITE
(
si571_oe
)
{
return
param_client_write
(
self
,
service
,
FMC_ACTIVE_CLK_OPCODE_SI571_OE
,
si571_oe
);
}
PARAM_FUNC_CLIENT_READ
(
si571_oe
)
{
return
param_client_read
(
self
,
service
,
FMC_ACTIVE_CLK_OPCODE_SI571_OE
,
si571_oe
);
}
PARAM_FUNC_CLIENT_WRITE
(
ad9510_defaults
)
{
return
param_client_write
(
self
,
service
,
FMC
130M_4CH
_OPCODE_AD9510_CFG_DEFAULTS
,
return
param_client_write
(
self
,
service
,
FMC
_ACTIVE_CLK
_OPCODE_AD9510_CFG_DEFAULTS
,
ad9510_defaults
);
}
PARAM_FUNC_CLIENT_READ
(
ad9510_defaults
)
{
return
param_client_read
(
self
,
service
,
FMC
130M_4CH
_OPCODE_AD9510_CFG_DEFAULTS
,
return
param_client_read
(
self
,
service
,
FMC
_ACTIVE_CLK
_OPCODE_AD9510_CFG_DEFAULTS
,
ad9510_defaults
);
}
/* AD9510 PLL A divider */
PARAM_FUNC_CLIENT_WRITE
(
ad9510_pll_a_div
)
{
return
param_client_write
(
self
,
service
,
FMC_ACTIVE_CLK_OPCODE_AD9510_PLL_A_DIV
,
ad9510_pll_a_div
);
}
PARAM_FUNC_CLIENT_READ
(
ad9510_pll_a_div
)
{
return
param_client_read
(
self
,
service
,
FMC_ACTIVE_CLK_OPCODE_AD9510_PLL_A_DIV
,
ad9510_pll_a_div
);
}
/* AD9510 PLL B divider */
PARAM_FUNC_CLIENT_WRITE
(
ad9510_pll_b_div
)
{
return
param_client_write
(
self
,
service
,
FMC_ACTIVE_CLK_OPCODE_AD9510_PLL_B_DIV
,
ad9510_pll_b_div
);
}
PARAM_FUNC_CLIENT_READ
(
ad9510_pll_b_div
)
{
return
param_client_read
(
self
,
service
,
FMC_ACTIVE_CLK_OPCODE_AD9510_PLL_B_DIV
,
ad9510_pll_b_div
);
}
/* AD9510 PLL Prescaler */
PARAM_FUNC_CLIENT_WRITE
(
ad9510_pll_prescaler
)
{
return
param_client_write
(
self
,
service
,
FMC_ACTIVE_CLK_OPCODE_AD9510_PLL_PRESCALER
,
ad9510_pll_prescaler
);
}
PARAM_FUNC_CLIENT_READ
(
ad9510_pll_prescaler
)
{
return
param_client_read
(
self
,
service
,
FMC_ACTIVE_CLK_OPCODE_AD9510_PLL_PRESCALER
,
ad9510_pll_prescaler
);
}
/* AD9510 R divider */
PARAM_FUNC_CLIENT_WRITE
(
ad9510_r_div
)
{
return
param_client_write
(
self
,
service
,
FMC_ACTIVE_CLK_OPCODE_AD9510_R_DIV
,
ad9510_r_div
);
}
PARAM_FUNC_CLIENT_READ
(
ad9510_r_div
)
{
return
param_client_read
(
self
,
service
,
FMC_ACTIVE_CLK_OPCODE_AD9510_R_DIV
,
ad9510_r_div
);
}
/* AD9510 PLL Power Down */
PARAM_FUNC_CLIENT_WRITE
(
ad9510_pll_pdown
)
{
return
param_client_write
(
self
,
service
,
FMC_ACTIVE_CLK_OPCODE_AD9510_PLL_PDOWN
,
ad9510_pll_pdown
);
}
PARAM_FUNC_CLIENT_READ
(
ad9510_pll_pdown
)
{
return
param_client_read
(
self
,
service
,
FMC_ACTIVE_CLK_OPCODE_AD9510_PLL_PDOWN
,
ad9510_pll_pdown
);
}
/* AD9510 Mux Status */
PARAM_FUNC_CLIENT_WRITE
(
ad9510_mux_status
)
{
return
param_client_write
(
self
,
service
,
FMC_ACTIVE_CLK_OPCODE_AD9510_MUX_STATUS
,
ad9510_mux_status
);
}
PARAM_FUNC_CLIENT_READ
(
ad9510_mux_status
)
{
return
param_client_read
(
self
,
service
,
FMC_ACTIVE_CLK_OPCODE_AD9510_MUX_STATUS
,
ad9510_mux_status
);
}
/* AD9510 CP current */
PARAM_FUNC_CLIENT_WRITE
(
ad9510_cp_current
)
{
return
param_client_write
(
self
,
service
,
FMC_ACTIVE_CLK_OPCODE_AD9510_CP_CURRENT
,
ad9510_cp_current
);
}
PARAM_FUNC_CLIENT_READ
(
ad9510_cp_current
)
{
return
param_client_read
(
self
,
service
,
FMC_ACTIVE_CLK_OPCODE_AD9510_CP_CURRENT
,
ad9510_cp_current
);
}
/* AD9510 Outputs */
PARAM_FUNC_CLIENT_WRITE
(
ad9510_outputs
)
{
return
param_client_write
(
self
,
service
,
FMC_ACTIVE_CLK_OPCODE_AD9510_OUTPUTS
,
ad9510_outputs
);
}
PARAM_FUNC_CLIENT_READ
(
ad9510_outputs
)
{
return
param_client_read
(
self
,
service
,
FMC_ACTIVE_CLK_OPCODE_AD9510_OUTPUTS
,
ad9510_outputs
);
}
/* AD9510 PLL CLK Selection */
PARAM_FUNC_CLIENT_WRITE
(
ad9510_pll_clk_sel
)
{
return
param_client_write
(
self
,
service
,
FMC_ACTIVE_CLK_OPCODE_AD9510_PLL_CLK_SEL
,
ad9510_pll_clk_sel
);
}
PARAM_FUNC_CLIENT_READ
(
ad9510_pll_clk_sel
)
{
return
param_client_read
(
self
,
service
,
FMC_ACTIVE_CLK_OPCODE_AD9510_PLL_CLK_SEL
,
ad9510_pll_clk_sel
);
}
/* SI571 Set frequency */
PARAM_FUNC_CLIENT_WRITE_DOUBLE
(
si571_set_freq
)
{
return
param_client_write_double
(
self
,
service
,
FMC_ACTIVE_CLK_OPCODE_SI571_SET_FREQ
,
si571_set_freq
);
}
/* SI571 Get defaults */
PARAM_FUNC_CLIENT_WRITE_DOUBLE
(
si571_defaults
)
{
return
param_client_write_double
(
self
,
service
,
FMC_ACTIVE_CLK_OPCODE_SI571_GET_DEFAULTS
,
si571_defaults
);
}
/**************** FMC 130M SMIO Functions ****************/
/* ADC LTC2208 RAND */
PARAM_FUNC_CLIENT_WRITE
(
adc_rand
)
{
...
...
@@ -669,191 +854,6 @@ PARAM_FUNC_CLIENT_WRITE2(adc_dly3, type, val)
type
,
val
);
}
/****************** FMC130M Control functions ****************/
PARAM_FUNC_CLIENT_WRITE
(
adc_test_data_en
)
{
return
param_client_write
(
self
,
service
,
FMC130M_4CH_OPCODE_TEST_DATA_EN
,
adc_test_data_en
);
}
PARAM_FUNC_CLIENT_READ
(
adc_test_data_en
)
{
return
param_client_read
(
self
,
service
,
FMC130M_4CH_OPCODE_TEST_DATA_EN
,
adc_test_data_en
);
}
PARAM_FUNC_CLIENT_WRITE
(
si571_oe
)
{
return
param_client_write
(
self
,
service
,
FMC130M_4CH_OPCODE_SI571_OE
,
si571_oe
);
}
PARAM_FUNC_CLIENT_READ
(
si571_oe
)
{
return
param_client_read
(
self
,
service
,
FMC130M_4CH_OPCODE_SI571_OE
,
si571_oe
);
}
PARAM_FUNC_CLIENT_WRITE
(
trig_dir
)
{
return
param_client_write
(
self
,
service
,
FMC130M_4CH_OPCODE_TRIG_DIR
,
trig_dir
);
}
PARAM_FUNC_CLIENT_READ
(
trig_dir
)
{
return
param_client_read
(
self
,
service
,
FMC130M_4CH_OPCODE_TRIG_DIR
,
trig_dir
);
}
PARAM_FUNC_CLIENT_WRITE
(
trig_term
)
{
return
param_client_write
(
self
,
service
,
FMC130M_4CH_OPCODE_TRIG_TERM
,
trig_term
);
}
PARAM_FUNC_CLIENT_READ
(
trig_term
)
{
return
param_client_read
(
self
,
service
,
FMC130M_4CH_OPCODE_TRIG_TERM
,
trig_term
);
}
PARAM_FUNC_CLIENT_WRITE
(
trig_val
)
{
return
param_client_write
(
self
,
service
,
FMC130M_4CH_OPCODE_TRIG_VAL
,
trig_val
);
}
PARAM_FUNC_CLIENT_READ
(
trig_val
)
{
return
param_client_read
(
self
,
service
,
FMC130M_4CH_OPCODE_TRIG_VAL
,
trig_val
);
}
/*************************** FMC130M Chips Functions *************************/
/* AD9510 PLL A divider */
PARAM_FUNC_CLIENT_WRITE
(
ad9510_pll_a_div
)
{
return
param_client_write
(
self
,
service
,
FMC130M_4CH_OPCODE_AD9510_PLL_A_DIV
,
ad9510_pll_a_div
);
}
PARAM_FUNC_CLIENT_READ
(
ad9510_pll_a_div
)
{
return
param_client_read
(
self
,
service
,
FMC130M_4CH_OPCODE_AD9510_PLL_A_DIV
,
ad9510_pll_a_div
);
}
/* AD9510 PLL B divider */
PARAM_FUNC_CLIENT_WRITE
(
ad9510_pll_b_div
)
{
return
param_client_write
(
self
,
service
,
FMC130M_4CH_OPCODE_AD9510_PLL_B_DIV
,
ad9510_pll_b_div
);
}
PARAM_FUNC_CLIENT_READ
(
ad9510_pll_b_div
)
{
return
param_client_read
(
self
,
service
,
FMC130M_4CH_OPCODE_AD9510_PLL_B_DIV
,
ad9510_pll_b_div
);
}
/* AD9510 PLL Prescaler */
PARAM_FUNC_CLIENT_WRITE
(
ad9510_pll_prescaler
)
{
return
param_client_write
(
self
,
service
,
FMC130M_4CH_OPCODE_AD9510_PLL_PRESCALER
,
ad9510_pll_prescaler
);
}
PARAM_FUNC_CLIENT_READ
(
ad9510_pll_prescaler
)
{
return
param_client_read
(
self
,
service
,
FMC130M_4CH_OPCODE_AD9510_PLL_PRESCALER
,
ad9510_pll_prescaler
);
}
/* AD9510 R divider */
PARAM_FUNC_CLIENT_WRITE
(
ad9510_r_div
)
{
return
param_client_write
(
self
,
service
,
FMC130M_4CH_OPCODE_AD9510_R_DIV
,
ad9510_r_div
);
}
PARAM_FUNC_CLIENT_READ
(
ad9510_r_div
)
{
return
param_client_read
(
self
,
service
,
FMC130M_4CH_OPCODE_AD9510_R_DIV
,
ad9510_r_div
);
}
/* AD9510 PLL Power Down */
PARAM_FUNC_CLIENT_WRITE
(
ad9510_pll_pdown
)
{
return
param_client_write
(
self
,
service
,
FMC130M_4CH_OPCODE_AD9510_PLL_PDOWN
,
ad9510_pll_pdown
);
}
PARAM_FUNC_CLIENT_READ
(
ad9510_pll_pdown
)
{
return
param_client_read
(
self
,
service
,
FMC130M_4CH_OPCODE_AD9510_PLL_PDOWN
,
ad9510_pll_pdown
);
}
/* AD9510 Mux Status */
PARAM_FUNC_CLIENT_WRITE
(
ad9510_mux_status
)
{
return
param_client_write
(
self
,
service
,
FMC130M_4CH_OPCODE_AD9510_MUX_STATUS
,
ad9510_mux_status
);
}
PARAM_FUNC_CLIENT_READ
(
ad9510_mux_status
)
{
return
param_client_read
(
self
,
service
,
FMC130M_4CH_OPCODE_AD9510_MUX_STATUS
,
ad9510_mux_status
);
}
/* AD9510 CP current */
PARAM_FUNC_CLIENT_WRITE
(
ad9510_cp_current
)
{
return
param_client_write
(
self
,
service
,
FMC130M_4CH_OPCODE_AD9510_CP_CURRENT
,
ad9510_cp_current
);
}
PARAM_FUNC_CLIENT_READ
(
ad9510_cp_current
)
{
return
param_client_read
(
self
,
service
,
FMC130M_4CH_OPCODE_AD9510_CP_CURRENT
,
ad9510_cp_current
);
}
/* AD9510 Outputs */
PARAM_FUNC_CLIENT_WRITE
(
ad9510_outputs
)
{
return
param_client_write
(
self
,
service
,
FMC130M_4CH_OPCODE_AD9510_OUTPUTS
,
ad9510_outputs
);
}
PARAM_FUNC_CLIENT_READ
(
ad9510_outputs
)
{
return
param_client_read
(
self
,
service
,
FMC130M_4CH_OPCODE_AD9510_OUTPUTS
,
ad9510_outputs
);
}
/* AD9510 PLL CLK Selection */
PARAM_FUNC_CLIENT_WRITE
(
ad9510_pll_clk_sel
)
{
return
param_client_write
(
self
,
service
,
FMC130M_4CH_OPCODE_AD9510_PLL_CLK_SEL
,
ad9510_pll_clk_sel
);
}
PARAM_FUNC_CLIENT_READ
(
ad9510_pll_clk_sel
)
{
return
param_client_read
(
self
,
service
,
FMC130M_4CH_OPCODE_AD9510_PLL_CLK_SEL
,
ad9510_pll_clk_sel
);
}
/* SI571 Set frequency */
PARAM_FUNC_CLIENT_WRITE_DOUBLE
(
si571_set_freq
)
{
return
param_client_write_double
(
self
,
service
,
FMC130M_4CH_OPCODE_SI571_SET_FREQ
,
si571_set_freq
);
}
/* SI571 Get defaults */
PARAM_FUNC_CLIENT_WRITE_DOUBLE
(
si571_defaults
)
{
return
param_client_write_double
(
self
,
service
,
FMC130M_4CH_OPCODE_SI571_GET_DEFAULTS
,
si571_defaults
);
}
/*************************** FMC250M Chips Functions *************************/
/* ISLA216P RST ADCs */
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment