OpenCPI v2.0.0 Invalid, Ignored, and Deprecated properties

BP
Brian Padalino
Wed, Oct 7, 2020 11:24 PM

I have a very simple program that I am compiling for OpenCPI v2.0.0 and I
see the following warning:

Warning: for volatile property "ber", "readable" is invalid and ignored
(and it is deprecated)

The RCC just does some simple BER testing against a reference file.  The
spec is called ber_estimator-spec.xml and is the following:

<ComponentSpec> <Property name="ber" type="struct" readable="true" volatile='true'> <member name='state' type='enum' enums='searching, locked'/> <member name='total_bits' type='ulonglong'/> <member name='errors' type='ulonglong'/> <member name='ber' type='float'/> </Property> <Property name="num_bits_locked" type="ulonglong" initial="true" default="24"/> <Property name="ber_unlocked" type="float" initial="true" default="0.1"/> <DataInterfaceSpec name="in" Producer="false" Protocol="rstream_protocol.xml"/> </ComponentSpec>

The implementation is called file_ber.xml and has the following XML
definition:

<RccWorker language='c++' controloperations='start' Spec='ber_estimator-spec'>
<Property name="filename" type="string" stringLength='1024' initial='true'/>
<specproperty name='ber' readsync='true'/>
</RccWorker>

The BER is rolling and needs to be updated any time the value is read.  My
goal is to get rid of all warnings and just do the right thing.  So how do
I describe something that is readable and volatile for OpenCPI v2.0.0?

Thanks,
Brian

I have a very simple program that I am compiling for OpenCPI v2.0.0 and I see the following warning: Warning: for volatile property "ber", "readable" is invalid and ignored (and it is deprecated) The RCC just does some simple BER testing against a reference file. The spec is called ber_estimator-spec.xml and is the following: <ComponentSpec> <Property name="ber" type="struct" readable="true" volatile='true'> <member name='state' type='enum' enums='searching, locked'/> <member name='total_bits' type='ulonglong'/> <member name='errors' type='ulonglong'/> <member name='ber' type='float'/> </Property> <Property name="num_bits_locked" type="ulonglong" initial="true" default="24"/> <Property name="ber_unlocked" type="float" initial="true" default="0.1"/> <DataInterfaceSpec name="in" Producer="false" Protocol="rstream_protocol.xml"/> </ComponentSpec> The implementation is called file_ber.xml and has the following XML definition: <RccWorker language='c++' controloperations='start' Spec='ber_estimator-spec'> <Property name="filename" type="string" stringLength='1024' initial='true'/> <specproperty name='ber' readsync='true'/> </RccWorker> The BER is rolling and needs to be updated any time the value is read. My goal is to get rid of all warnings and just do the right thing. So how do I describe something that is readable and volatile for OpenCPI v2.0.0? Thanks, Brian
KJ
Kulp Jim
Fri, Oct 9, 2020 12:52 PM

Hi Brian,

volatile implies readable, so there is no need for “readable”.

See the updated section 6.4 in the component developer’s guide.

Let us know if that is somehow not clear enough.

Jim

On Oct 7, 2020, at 7:24 PM, Brian Padalino bpadalino@gmail.com wrote:

I have a very simple program that I am compiling for OpenCPI v2.0.0 and I
see the following warning:

Warning: for volatile property "ber", "readable" is invalid and ignored
(and it is deprecated)

The RCC just does some simple BER testing against a reference file.  The
spec is called ber_estimator-spec.xml and is the following:

<ComponentSpec> <Property name="ber" type="struct" readable="true" volatile='true'> <member name='state' type='enum' enums='searching, locked'/> <member name='total_bits' type='ulonglong'/> <member name='errors' type='ulonglong'/> <member name='ber' type='float'/> </Property> <Property name="num_bits_locked" type="ulonglong" initial="true" default="24"/> <Property name="ber_unlocked" type="float" initial="true" default="0.1"/> <DataInterfaceSpec name="in" Producer="false" Protocol="rstream_protocol.xml"/> </ComponentSpec>

The implementation is called file_ber.xml and has the following XML
definition:

<RccWorker language='c++' controloperations='start' Spec='ber_estimator-spec'>
<Property name="filename" type="string" stringLength='1024' initial='true'/>
<specproperty name='ber' readsync='true'/>
</RccWorker>

The BER is rolling and needs to be updated any time the value is read.  My
goal is to get rid of all warnings and just do the right thing.  So how do
I describe something that is readable and volatile for OpenCPI v2.0.0?

Thanks,
Brian

Hi Brian, volatile implies readable, so there is no need for “readable”. See the updated section 6.4 in the component developer’s guide. Let us know if that is somehow not clear enough. Jim > On Oct 7, 2020, at 7:24 PM, Brian Padalino <bpadalino@gmail.com> wrote: > > I have a very simple program that I am compiling for OpenCPI v2.0.0 and I > see the following warning: > > Warning: for volatile property "ber", "readable" is invalid and ignored > (and it is deprecated) > > The RCC just does some simple BER testing against a reference file. The > spec is called ber_estimator-spec.xml and is the following: > > <ComponentSpec> > <Property name="ber" type="struct" readable="true" volatile='true'> > <member name='state' type='enum' enums='searching, locked'/> > <member name='total_bits' type='ulonglong'/> > <member name='errors' type='ulonglong'/> > <member name='ber' type='float'/> > </Property> > <Property name="num_bits_locked" type="ulonglong" initial="true" > default="24"/> > <Property name="ber_unlocked" type="float" initial="true" > default="0.1"/> > <DataInterfaceSpec name="in" Producer="false" > Protocol="rstream_protocol.xml"/> > </ComponentSpec> > > The implementation is called file_ber.xml and has the following XML > definition: > > <RccWorker language='c++' controloperations='start' > Spec='ber_estimator-spec'> > <Property name="filename" type="string" stringLength='1024' > initial='true'/> > <specproperty name='ber' readsync='true'/> > </RccWorker> > > The BER is rolling and needs to be updated any time the value is read. My > goal is to get rid of all warnings and just do the right thing. So how do > I describe something that is readable and volatile for OpenCPI v2.0.0? > > Thanks, > Brian >