no-OS
All Classes Files Functions Variables Typedefs Enumerations Enumerator Macros Modules Pages
iio_adis1654x.c File Reference

Implementation of iio_adis1654x.c. More...

#include "iio_adis1654x.h"
#include "no_os_alloc.h"
#include "no_os_units.h"
Include dependency graph for iio_adis1654x.c:

Functions

int adis1654x_iio_init (struct adis_iio_dev **iio_dev, struct adis_init_param *init_param)
 Initialize adis1654x iio device.
 
void adis1654x_iio_remove (struct adis_iio_dev *desc)
 Remove adis1654x iio device.
 

Variables

struct iio_attribute adis1654x_iio_anglvel_attrs []
 
struct iio_attribute adis1654x_iio_accel_attrs []
 
struct iio_attribute adis1654x_iio_temp_attrs []
 
struct iio_attribute adis1654x_dev_attrs []
 

Detailed Description

Implementation of iio_adis1654x.c.

Author
RBolboac (ramon.nosp@m.a.gr.nosp@m.adina.nosp@m.riu@.nosp@m.analo.nosp@m.g.co.nosp@m.m)

Copyright 2024(c) Analog Devices, Inc.

Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:

  1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.
  2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.
  3. Neither the name of Analog Devices, Inc. nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.

THIS SOFTWARE IS PROVIDED BY ANALOG DEVICES, INC. “AS IS” AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL ANALOG DEVICES, INC. BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.

Function Documentation

◆ adis1654x_iio_init()

int adis1654x_iio_init ( struct adis_iio_dev ** iio_dev,
struct adis_init_param * init_param )

Initialize adis1654x iio device.

Parameters
iio_dev- The adis1654x iio device.
init_param- The structure that contains the device initial parameters.
Returns
0 in case of success, error code otherwise.
Here is the caller graph for this function:

◆ adis1654x_iio_remove()

void adis1654x_iio_remove ( struct adis_iio_dev * desc)

Remove adis1654x iio device.

Parameters
desc- The adis1654x iio device.
Here is the caller graph for this function:

Variable Documentation

◆ adis1654x_dev_attrs

struct iio_attribute adis1654x_dev_attrs[]
Initial value:
= {
{
.name = "sampling_frequency",
.shared = IIO_SHARED_BY_ALL,
},
}
int adis_iio_write_sampling_freq(void *dev, char *buf, uint32_t len, const struct iio_ch_info *channel, intptr_t priv)
Handles the write request for sampling frequency attribute.
Definition iio_adis.c:738
int adis_iio_read_sampling_freq(void *dev, char *buf, uint32_t len, const struct iio_ch_info *channel, intptr_t priv)
Handles the read request for sampling frequency attribute.
Definition iio_adis.c:642
#define END_ATTRIBUTES_ARRAY
Definition iio_types.h:107
@ IIO_SHARED_BY_ALL
Definition iio_types.h:113

◆ adis1654x_iio_accel_attrs

struct iio_attribute adis1654x_iio_accel_attrs[]
Initial value:
= {
{
.name = "calibbias",
},
{
.name = "calibscale",
},
{
.name = "filter_low_pass_3db_frequency",
},
{
.name = "raw",
},
{
.name = "scale",
.shared = IIO_SHARED_BY_TYPE,
},
}
int adis_iio_read_scale(void *dev, char *buf, uint32_t len, const struct iio_ch_info *channel, intptr_t priv)
Handles the read request for scale attribute.
Definition iio_adis.c:159
int adis_iio_write_calibbias(void *dev, char *buf, uint32_t len, const struct iio_ch_info *channel, intptr_t priv)
Handles the write request for calibbias attribute.
Definition iio_adis.c:329
int adis_iio_read_raw(void *dev, char *buf, uint32_t len, const struct iio_ch_info *channel, intptr_t priv)
Handles the read request for raw attribute.
Definition iio_adis.c:82
int adis_iio_read_calibscale(void *dev, char *buf, uint32_t len, const struct iio_ch_info *channel, intptr_t priv)
Handles the read request for calibscale attribute.
Definition iio_adis.c:378
int adis_iio_read_lpf(void *dev, char *buf, uint32_t len, const struct iio_ch_info *channel, intptr_t priv)
Handles the read request for lpf attribute.
Definition iio_adis.c:483
int adis_iio_read_calibbias(void *dev, char *buf, uint32_t len, const struct iio_ch_info *channel, intptr_t priv)
Handles the read request for calibbias attribute.
Definition iio_adis.c:273
int adis_iio_write_lpf(void *dev, char *buf, uint32_t len, const struct iio_ch_info *channel, intptr_t priv)
Handles the write request for lpf attribute.
Definition iio_adis.c:547
int adis_iio_write_calibscale(void *dev, char *buf, uint32_t len, const struct iio_ch_info *channel, intptr_t priv)
Handles the write request for calibscale attribute.
Definition iio_adis.c:434
@ IIO_SHARED_BY_TYPE
Definition iio_types.h:111

◆ adis1654x_iio_anglvel_attrs

struct iio_attribute adis1654x_iio_anglvel_attrs[]
Initial value:
= {
{
.name = "calibbias",
},
{
.name = "calibscale",
},
{
.name = "filter_low_pass_3db_frequency",
},
{
.name = "raw",
},
{
.name = "scale",
.shared = IIO_SHARED_BY_TYPE,
},
}

◆ adis1654x_iio_temp_attrs

struct iio_attribute adis1654x_iio_temp_attrs[]
Initial value:
= {
{
.name = "raw",
},
{
.name = "scale",
},
{
.name = "offset",
},
}
int adis_iio_read_offset(void *dev, char *buf, uint32_t len, const struct iio_ch_info *channel, intptr_t priv)
Handles the read request for offset attribute.
Definition iio_adis.c:231