AD9361 Reference Frequency

BP
Brian Padalino
Fri, Jan 24, 2020 4:45 AM

I see in the ad9361_config_proxy.rcc that there is a reference_clk_rate in
an initialization, set to 40MHz which is on all the FMCOMMS boards I've
seen.

If I have a platform with a different reference_clk_rate, what is the
appropriate way to make that change?

Should I modify ad9361_config_proxy to take a parameter which is defaulted
to 40MHz and can be overwritten in the build?  Do parameters to RCC's turn
into #define's?

Looking for best practices.

Thanks,
Brian

I see in the ad9361_config_proxy.rcc that there is a reference_clk_rate in an initialization, set to 40MHz which is on all the FMCOMMS boards I've seen. If I have a platform with a different reference_clk_rate, what is the appropriate way to make that change? Should I modify ad9361_config_proxy to take a parameter which is defaulted to 40MHz and can be overwritten in the build? Do parameters to RCC's turn into #define's? Looking for best practices. Thanks, Brian
DH
Davis Hoover
Fri, Jan 24, 2020 4:37 PM

If ad9361_config_proxy.rcc is the highest-level proxy in an application,
its ad9361_init property (which includes the reference_clk_rate member)
should be set, which is an initial property, meaning it is executes a
runtime callback method when set. That member has a default of 40e6, but
that default can be overridden at runtime.

Radios are intended to have one or more higher-level proxies which
abstracts things like reference_clk_rate, e.g.
fmcomms_2_3_rx.rcc/fmcomms_2_3_tx.rcc, or dig_radio_ctrlr_fmcomms_2_3.rcc.

---------- Forwarded message ---------
From: Brian Padalino bpadalino@gmail.com
Date: Thu, Jan 23, 2020 at 11:46 PM
Subject: [Discuss OpenCPI] AD9361 Reference Frequency
To: discuss@lists.opencpi.org

I see in the ad9361_config_proxy.rcc that there is a reference_clk_rate in
an initialization, set to 40MHz which is on all the FMCOMMS boards I've
seen.

If I have a platform with a different reference_clk_rate, what is the
appropriate way to make that change?

Should I modify ad9361_config_proxy to take a parameter which is defaulted
to 40MHz and can be overwritten in the build?  Do parameters to RCC's turn
into #define's?

Looking for best practices.

Thanks,
Brian

If ad9361_config_proxy.rcc is the highest-level proxy in an application, its ad9361_init property (which includes the reference_clk_rate member) should be set, which is an initial property, meaning it is executes a runtime callback method when set. That member has a default of 40e6, but that default can be overridden at runtime. Radios are intended to have one or more higher-level proxies which abstracts things like reference_clk_rate, e.g. fmcomms_2_3_rx.rcc/fmcomms_2_3_tx.rcc, or dig_radio_ctrlr_fmcomms_2_3.rcc. ---------- Forwarded message --------- From: Brian Padalino <bpadalino@gmail.com> Date: Thu, Jan 23, 2020 at 11:46 PM Subject: [Discuss OpenCPI] AD9361 Reference Frequency To: <discuss@lists.opencpi.org> I see in the ad9361_config_proxy.rcc that there is a reference_clk_rate in an initialization, set to 40MHz which is on all the FMCOMMS boards I've seen. If I have a platform with a different reference_clk_rate, what is the appropriate way to make that change? Should I modify ad9361_config_proxy to take a parameter which is defaulted to 40MHz and can be overwritten in the build? Do parameters to RCC's turn into #define's? Looking for best practices. Thanks, Brian