PLB driver APIs. More...
Data Structures | |
| union | plb_type_a_truth_t |
| PLB truth table configuration unit. More... | |
Macros | |
| #define | PLB_SLICE_MASK (0xf) |
| #define | PLB_SLICE_HIGH_BIT_MASK_SET(slice) (PLB_SLICE_MASK << ((slice - plb_type_b_slice_8) << 2)) |
| #define | PLB_SLICE_HIGH_BIT_SHIFT(slice) ((slice - plb_type_b_slice_8) << 2) |
| #define | PLB_SLICE_LOW_BIT_MASK_SET(slice) (PLB_SLICE_MASK << (slice << 2)) |
| #define | PLB_SLICE_LOW_BIT_SHIFT(slice) (slice << 2) |
Typedefs | |
| typedef enum plb_chn | plb_chn_t |
| plb channels More... | |
| typedef enum plb_type_a_lut_num | plb_type_a_lut_num_t |
| PLB look-up table unit. More... | |
| typedef enum plb_type_b_lut_slice | plb_type_b_lut_slice_t |
| Index of slice. More... | |
| typedef enum plb_type_b_slice_opt | plb_type_b_slice_opt_t |
| Configuration of slice. More... | |
| typedef enum plb_type_b_cmp | plb_type_b_cmp_t |
| Comparator index. More... | |
| typedef enum plb_type_b_cmp_mode | plb_type_b_cmp_mode_t |
| Comparator operation. More... | |
Functions | |
| static void | plb_type_a_set_lut (PLB_Type *plb, plb_chn_t chn, plb_type_a_lut_num_t lut_num, plb_type_a_truth_t *truth) |
| Configuring the truth table for lookup tables. More... | |
| static void | plb_type_a_inject_by_sw (PLB_Type *plb, plb_chn_t chn, uint8_t inject_val) |
| The software injects a cycle value into the TYPE A channel. More... | |
| static void | plb_type_b_set_cmp_val (PLB_Type *plb, plb_chn_t chn, plb_type_b_cmp_t cmp_index, uint32_t val) |
| Configure the value of the CMP. More... | |
| static void | plb_type_b_set_cmp_mode (PLB_Type *plb, plb_chn_t chn, plb_type_b_cmp_t cmp_index, plb_type_b_cmp_mode_t cmp_mode) |
| Setting the mode of the CMP. More... | |
| static void | plb_type_b_inject_by_sw (PLB_Type *plb, plb_chn_t chn, uint32_t val) |
| Software injection values. More... | |
| static uint32_t | plb_type_b_get_counter (PLB_Type *plb, plb_chn_t chn) |
| Get the counter value for PLB Type B. More... | |
| void | plb_type_b_set_lut (PLB_Type *plb, plb_chn_t chn, plb_type_b_lut_slice_t slice, plb_type_b_slice_opt_t opt) |
| Configuring the PLB type_b's lookup table. More... | |
| void | plb_type_b_set_lut_range_mask (PLB_Type *plb, plb_chn_t chn, uint16_t mask, plb_type_b_slice_opt_t opt) |
| Batch set plb lut b type data, the unit corresponding to the bit marked with a mask of 1 is configured. More... | |
| void | plb_type_b_set_all_slice (PLB_Type *plb, plb_chn_t chn, plb_type_b_slice_opt_t opt) |
| Configure all lut to the same configuration. More... | |
PLB driver APIs.
| #define PLB_SLICE_HIGH_BIT_MASK_SET | ( | slice | ) | (PLB_SLICE_MASK << ((slice - plb_type_b_slice_8) << 2)) |
#include <drivers/inc/hpm_plb_drv.h>
| #define PLB_SLICE_HIGH_BIT_SHIFT | ( | slice | ) | ((slice - plb_type_b_slice_8) << 2) |
#include <drivers/inc/hpm_plb_drv.h>
| #define PLB_SLICE_LOW_BIT_MASK_SET | ( | slice | ) | (PLB_SLICE_MASK << (slice << 2)) |
#include <drivers/inc/hpm_plb_drv.h>
| #define PLB_SLICE_LOW_BIT_SHIFT | ( | slice | ) | (slice << 2) |
#include <drivers/inc/hpm_plb_drv.h>
| #define PLB_SLICE_MASK (0xf) |
#include <drivers/inc/hpm_plb_drv.h>
#include <drivers/inc/hpm_plb_drv.h>
plb channels
| typedef enum plb_type_a_lut_num plb_type_a_lut_num_t |
#include <drivers/inc/hpm_plb_drv.h>
PLB look-up table unit.
| typedef enum plb_type_b_cmp_mode plb_type_b_cmp_mode_t |
#include <drivers/inc/hpm_plb_drv.h>
Comparator operation.
| typedef enum plb_type_b_cmp plb_type_b_cmp_t |
#include <drivers/inc/hpm_plb_drv.h>
Comparator index.
| typedef enum plb_type_b_lut_slice plb_type_b_lut_slice_t |
#include <drivers/inc/hpm_plb_drv.h>
Index of slice.
| typedef enum plb_type_b_slice_opt plb_type_b_slice_opt_t |
#include <drivers/inc/hpm_plb_drv.h>
Configuration of slice.
| enum plb_chn |
#include <drivers/inc/hpm_plb_drv.h>
plb channels
| enum plb_type_a_lut_num |
#include <drivers/inc/hpm_plb_drv.h>
PLB look-up table unit.
| enum plb_type_b_cmp |
#include <drivers/inc/hpm_plb_drv.h>
Comparator index.
| Enumerator | |
|---|---|
| plb_type_b_cmp0 | |
| plb_type_b_cmp1 | |
| plb_type_b_cmp2 | |
| plb_type_b_cmp3 | |
| enum plb_type_b_cmp_mode |
#include <drivers/inc/hpm_plb_drv.h>
Comparator operation.
| enum plb_type_b_lut_slice |
#include <drivers/inc/hpm_plb_drv.h>
Index of slice.
| enum plb_type_b_slice_opt |
#include <drivers/inc/hpm_plb_drv.h>
Configuration of slice.
|
inlinestatic |
#include <drivers/inc/hpm_plb_drv.h>
The software injects a cycle value into the TYPE A channel.
|
inlinestatic |
#include <drivers/inc/hpm_plb_drv.h>
Configuring the truth table for lookup tables.
| plb | PLB_Type plb base |
| chn | plb_chn_t |
| lut_num | plb_type_a_lut_num_t |
| truth | plb_type_a_truth_t |
#include <drivers/inc/hpm_plb_drv.h>
Get the counter value for PLB Type B.
Retrieve the value of the SW_INJECT field for the specified channel from the given PLB Type B structure.
| plb | Pointer to the PLB Type B structure |
| chn | Channel number |
#include <drivers/inc/hpm_plb_drv.h>
Software injection values.
| void plb_type_b_set_all_slice | ( | PLB_Type * | plb, |
| plb_chn_t | chn, | ||
| plb_type_b_slice_opt_t | opt | ||
| ) |
#include <drivers/inc/hpm_plb_drv.h>
Configure all lut to the same configuration.
| plb | PLB_Type plb base |
| chn | plb_chn_t |
| opt | plb_type_b_slice_opt_t |
|
inlinestatic |
#include <drivers/inc/hpm_plb_drv.h>
Setting the mode of the CMP.
| plb | PLB_Type plb base |
| chn | plb_chn_t |
| cmp_index | plb_type_b_cmp_t |
| cmp_mode | plb_type_b_cmp_mode_t |
|
inlinestatic |
#include <drivers/inc/hpm_plb_drv.h>
Configure the value of the CMP.
| plb | PLB_Type plb base |
| chn | plb_chn_t |
| cmp_index | plb_type_b_cmp_t |
| val | CMP value |
| void plb_type_b_set_lut | ( | PLB_Type * | plb, |
| plb_chn_t | chn, | ||
| plb_type_b_lut_slice_t | slice, | ||
| plb_type_b_slice_opt_t | opt | ||
| ) |
#include <drivers/inc/hpm_plb_drv.h>
Configuring the PLB type_b's lookup table.
| plb | PLB_Type plb base |
| chn | plb_chn_t |
| slice | plb_type_b_lut_slice_t |
| opt | plb_type_b_slice_opt_t |
| void plb_type_b_set_lut_range_mask | ( | PLB_Type * | plb, |
| plb_chn_t | chn, | ||
| uint16_t | mask, | ||
| plb_type_b_slice_opt_t | opt | ||
| ) |
#include <drivers/inc/hpm_plb_drv.h>
Batch set plb lut b type data, the unit corresponding to the bit marked with a mask of 1 is configured.
| plb | PLB_Type plb base |
| chn | plb_chn_t |
| mask | bit16 |
| opt | plb_type_b_slice_opt_t |