no-OS
|
Header file of HMC7044, HMC7043 Driver. More...
Go to the source code of this file.
Classes | |
struct | hmc7044_chan_spec |
struct | hmc7044_dev |
struct | hmc7044_init_param |
Macros | |
#define | HMC7044_PULSE_GEN_LEVEL_SENSITIVE 0 |
#define | HMC7044_PULSE_GEN_1_PULSE 1 |
#define | HMC7044_PULSE_GEN_2_PULSE 2 |
#define | HMC7044_PULSE_GEN_4_PULSE 3 |
#define | HMC7044_PULSE_GEN_8_PULSE 4 |
#define | HMC7044_PULSE_GEN_16_PULSE 5 |
#define | HMC7044_PULSE_GEN_CONT_PULSE 7 |
#define | HMC7044_SYNC_PIN_DISABLED 0 |
#define | HMC7044_SYNC_PIN_SYNC 1 |
#define | HMC7044_SYNC_PIN_PULSE_GEN_REQ 2 |
#define | HMC7044_SYNC_PIN_SYNC_THEN_PULSE_GEN 3 |
Functions | |
int32_t | hmc7044_init (struct hmc7044_dev **device, const struct hmc7044_init_param *init_param) |
int32_t | hmc7044_remove (struct hmc7044_dev *device) |
int32_t | hmc7044_read (struct hmc7044_dev *dev, uint16_t reg, uint8_t *val) |
int32_t | hmc7044_clk_recalc_rate (struct hmc7044_dev *dev, uint32_t chan_num, uint64_t *rate) |
int32_t | hmc7044_clk_round_rate (struct hmc7044_dev *dev, uint32_t rate, uint64_t *rounded_rate) |
int32_t | hmc7044_clk_set_rate (struct hmc7044_dev *dev, uint32_t chan_num, uint64_t rate) |
Variables | |
const struct no_os_clk_platform_ops | hmc7044_clk_ops |
hmc7044 specific CLK platform ops structure More... | |
Header file of HMC7044, HMC7043 Driver.
Copyright 2018-2020(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:
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.
#define HMC7044_PULSE_GEN_16_PULSE 5 |
#define HMC7044_PULSE_GEN_1_PULSE 1 |
#define HMC7044_PULSE_GEN_2_PULSE 2 |
#define HMC7044_PULSE_GEN_4_PULSE 3 |
#define HMC7044_PULSE_GEN_8_PULSE 4 |
#define HMC7044_PULSE_GEN_CONT_PULSE 7 |
#define HMC7044_PULSE_GEN_LEVEL_SENSITIVE 0 |
#define HMC7044_SYNC_PIN_DISABLED 0 |
#define HMC7044_SYNC_PIN_PULSE_GEN_REQ 2 |
#define HMC7044_SYNC_PIN_SYNC 1 |
#define HMC7044_SYNC_PIN_SYNC_THEN_PULSE_GEN 3 |
int32_t hmc7044_clk_recalc_rate | ( | struct hmc7044_dev * | dev, |
uint32_t | chan_num, | ||
uint64_t * | rate | ||
) |
Recalculate rate corresponding to a channel.
dev | - The device structure. |
chan_num | - Channel number. |
rate | - Channel rate. |
int32_t hmc7044_clk_round_rate | ( | struct hmc7044_dev * | dev, |
uint32_t | rate, | ||
uint64_t * | rounded_rate | ||
) |
Calculate closest possible rate
dev | - The device structure |
rate | - The desired rate. |
rounded_rate | - The closest possible rate of desired rate. |
int32_t hmc7044_clk_set_rate | ( | struct hmc7044_dev * | dev, |
uint32_t | chan_num, | ||
uint64_t | rate | ||
) |
Set channel rate.
dev | - The device structure. |
chan_num | - Channel number. |
rate | - Channel rate. |
int32_t hmc7044_init | ( | struct hmc7044_dev ** | device, |
const struct hmc7044_init_param * | init_param | ||
) |
Initialize the device.
device | - The device structure. |
init_param | - The structure that contains the device initial parameters. |
int32_t hmc7044_read | ( | struct hmc7044_dev * | dev, |
uint16_t | reg, | ||
uint8_t * | val | ||
) |
SPI register read from device.
dev | - The device structure. |
reg | - The register address. |
val | - The register data. |
int32_t hmc7044_remove | ( | struct hmc7044_dev * | device | ) |
Remove the device - release resources.
device | - The device structure. |
const struct no_os_clk_platform_ops hmc7044_clk_ops |
hmc7044 specific CLK platform ops structure
hmc7044 specific CLK platform ops structure