Visible to Intel only — GUID: euo1697540226051
Ixiasoft
Visible to Intel only — GUID: euo1697540226051
Ixiasoft
13.5. Black Level Statistics IP Software API
Register definition header file: intel_vvp_bls_regs.h
Include file: intel_vvp_bls.h
Name | Description |
---|---|
intel_vvp_bls_init | Initialize an IP instance |
intel_vvp_core_* | Accessors defined in Video and Vision Processing IPs Software Programming Model |
intel_vvp_bls_get_lite_mode | Returns if Lite mode is on |
intel_vvp_bls_get_debug_enabled | Returns if Debug features is on |
intel_vvp_bls_get_bits_per_sample_in | Returns the number of bits per color sample for the streaming input interface |
intel_vvp_bls_get_bits_per_sample_out | Returns the number of bits per color sample value for the streaming output interface |
intel_vvp_bls_get_num_color_planes_in | Returns the number of color planes of the streaming input interface |
intel_vvp_bls_get_num_color_planes_out | Returns the number of color planes of the streaming output interface |
intel_vvp_bls_get_pixels_in_parallel | Returns the pixels in parallel of the streaming input and output interfaces |
intel_vvp_bls_get_max_width | Returns the maximum number of pixels that the IP supports on the horizontal dimension of an image or video frame |
intel_vvp_bls_get_max_height | Returns the maximum number of pixels that the IP supports on the vertical dimension of an image or video frame |
intel_vvp_bls_is_running | Reads if the IP is running |
intel_vvp_bls_commit_is_pending | Reads if the IP has uncommitted writes |
intel_vvp_bls_stats_are_frozen | Reads if the IP finished collecting the statistics |
intel_vvp_bls_get_status | Reads the status register |
intel_vvp_bls_get_frame_stats | Reads the frame statistics register |
intel_vvp_bls_get_cfa_00_sum | Reads the black level sum register associated with the color filter phase 00 |
intel_vvp_bls_get_cfa_01_sum | Reads the black level sum register associated with the color filter phase 01 |
intel_vvp_bls_get_cfa_10_sum | Reads the black level sum register associated with the color filter phase 10 |
intel_vvp_bls_get_cfa_11_sum | Reads the black level sum register associated with the color filter phase 11 |
intel_vvp_bls_commit | Commit pending writes |
intel_vvp_bls_get_cfa_phase | Reads the color filter array phase field from the status register |
intel_vvp_bls_set_cfa_phase | Writes the color filter array phase field of the status register |
intel_vvp_bls_get_freeze_stats_request | Reads the freeze statistics request bit from the status register |
intel_vvp_bls_set_freeze_stats_request | Writes the freeze statistics request bit of the status register |
intel_vvp_bls_get_h_start | Reads the horizontal starting coordinate of the region of interest |
intel_vvp_bls_set_h_start | Writes the horizontal starting coordinate of the region of interest |
intel_vvp_bls_get_v_start | Reads the vertical starting coordinate of the region of interest |
intel_vvp_bls_set_v_start | Writes the vertical starting coordinate of the region of interest |
intel_vvp_bls_get_h_end | Reads the horizontal ending coordinate of the region of interest |
intel_vvp_bls_set_h_end | Writes the horizontal ending coordinate of the region of interest |
intel_vvp_bls_get_v_end | Reads the vertical ending coordinate of the region of interest |
intel_vvp_bls_set_v_end | Writes the vertical ending coordinate of the region of interest |
intel_vvp_bls_init
- Prototype
-
int intel_vvp_bls_init(intel_vvp_bls_instance* instance, intel_vvp_core_base base);
- Description
-
Initialize an IP instance. The initialization stops early if the vendor ID or product ID read at the base address are not a match or if the register map version is not supported. Otherwise, the function proceeds to read and store the IP compile-time parameterization. The instance is not fully initialized and the application should not use it further if returning a non-zero error code.
- Arguments
-
instance - pointer to the intel_vvp_bls_instance software driver instance structure
base - base address of the register map
- Returns
-
kIntelVvpCoreOk (0) in case of success, a negative error code in case of an error
kIntelVvpCoreInstanceErr if the instance is a null pointer
kIntelVvpCoreVidErr if the vendor id of the core is not the IntelFPGA vendor ID (0x6AF7)
kIntelVvpCorePidErr if the product_id does not match with the expected product ID (0x0174)
kIntelVvpBlsRegMapVersionErr if the register map is not supported
intel_vvp_bls_get_lite_mode
- Prototype
-
bool intel_vvp_bls_get_lite_mode(intel_vvp_bls_instance* instance);
- Description
-
Returns the value of the LITE_MODE register. The instance must be a valid intel_vvp_bls_instance fully initialized.
- Arguments
-
instance - pointer to the intel_vvp_bls_instance software driver instance structure
- Returns
-
true if the IP is parameterized in lite mode
intel_vvp_bls_get_debug_enabled
- Prototype
-
bool intel_vvp_bls_get_debug_enabled(intel_vvp_bls_instance* instance);
- Description
-
Returns the value of the DEBUG_ENABLED register. The instance must be a valid intel_vvp_bls_instance fully initialized.
- Arguments
-
instance - pointer to the intel_vvp_bls_instance software driver instance structure
- Returns
-
true if the IP is parameterized with debug features enabled
intel_vvp_bls_get_bits_per_sample_in
- Prototype
-
uint8_t intel_vvp_bls_get_bits_per_sample_in(intel_vvp_bls_instance* instance);
- Description
-
Returns the value of the BPS_IN register. The instance must be a valid intel_vvp_bls_instance fully initialized.
- Arguments
-
instance - pointer to the intel_vvp_bls_instance software driver instance structure
- Returns
-
the input bits per color sample parameter used to generate the IP
intel_vvp_bls_get_bits_per_sample_out
- Prototype
-
uint8_t intel_vvp_bls_get_bits_per_sample_out(intel_vvp_bls_instance* instance);
- Description
-
Returns the value of the BPS_OUT register. The instance must be a valid intel_vvp_bls_instance fully initialized.
- Arguments
-
instance - pointer to the intel_vvp_bls_instance software driver instance structure
- Returns
-
the output bits per color sample parameter used to generate the IP
intel_vvp_bls_get_num_color_planes_in
- Prototype
-
uint8_t intel_vvp_bls_get_num_color_planes_in(intel_vvp_bls_instance* instance);
- Description
-
Returns the value of the NUM_COLOR_IN register. The instance must be a valid intel_vvp_bls_instance fully initialized.
- Arguments
-
instance - pointer to the intel_vvp_bls_instance software driver instance structure
- Returns
-
the input number of color planes parameter used to generate the IP
intel_vvp_bls_get_num_color_planes_out
- Prototype
-
uint8_t intel_vvp_bls_get_num_color_planes_out(intel_vvp_bls_instance* instance);
- Description
-
Returns the value of the NUM_COLOR_OUT register. The instance must be a valid intel_vvp_bls_instance fully initialized.
- Arguments
-
instance - pointer to the intel_vvp_bls_instance software driver instance structure
- Returns
-
the output number of color planes parameter used to generate the IP
intel_vvp_bls_get_pixels_in_parallel
- Prototype
-
uint8_t intel_vvp_bls_get_pixels_in_parallel(intel_vvp_bls_instance* instance);
- Description
-
Returns the value of the PIXELS_IN_PARALLEL register. The instance must be a valid intel_vvp_bls_instance fully initialized.
- Arguments
-
instance - pointer to the intel_vvp_bls_instance software driver instance structure
- Returns
-
the pixels in parallel parameter used to generate the IP
intel_vvp_bls_get_max_width
- Prototype
-
uint32_t intel_vvp_bls_get_max_width(intel_vvp_bls_instance* instance);
- Description
-
Returns the value of the MAX_WIDTH register. The instance must be a valid intel_vvp_bls_instance fully initialized.
- Arguments
-
instance - pointer to the intel_vvp_bls_instance software driver instance structure
- Returns
-
the maximum field width parameter used to generate the IP
intel_vvp_bls_get_max_height
- Prototype
-
uint32_t intel_vvp_bls_get_max_height(intel_vvp_bls_instance* instance);
- Description
-
Returns the value of the MAX_HEIGHT register. The instance must be a valid intel_vvp_bls_instance fully initialized.
- Arguments
-
instance - pointer to the intel_vvp_bls_instance software driver instance structure
- Returns
-
the maximum field height parameter used to generate the IP
intel_vvp_bls_is_running
- Prototype
-
bool intel_vvp_bls_is_running(intel_vvp_bls_instance* instance);
- Description
-
Returns the value of the IP Running bit from the STATUS register. The instance must be a valid intel_vvp_bls_instance fully initialized.
- Arguments
-
instance - pointer to the intel_vvp_bls_instance software driver instance structure
- Returns
-
the running bit from the status register
intel_vvp_bls_commit_is_pending
- Prototype
-
bool intel_vvp_bls_commit_is_pending(intel_vvp_bls_instance* instance);
- Description
-
Returns the value of the commit pending bit from the STATUS register. The instance must be a valid intel_vvp_bls_instance fully initialized.
- Arguments
-
instance - pointer to the intel_vvp_bls_instance software driver instance structure
- Returns
-
true if the agent interface has pending writes from a previous commit request
intel_vvp_bls_stats_are_frozen
- Prototype
-
bool intel_vvp_bls_stats_are_frozen(intel_vvp_bls_instance* instance);
- Description
-
Returns the value of the statistics are frozen bit from the STATUS register. The instance must be a valid intel_vvp_bls_instance fully initialized.
- Arguments
-
instance - pointer to the intel_vvp_bls_instance software driver instance structure
- Returns
-
the statistics are frozen bit from the status register
intel_vvp_bls_get_status
- Prototype
-
uint32_t intel_vvp_bls_get_status(intel_vvp_bls_instance* instance);
- Description
-
Returns the value of the STATUS register. The instance must be a valid intel_vvp_bls_instance fully initialized.
- Arguments
-
instance - pointer to the intel_vvp_bls_instance software driver instance structure
- Returns
-
the value of the status register
intel_vvp_bls_get_frame_stats
- Prototype
-
int intel_vvp_bls_get_frame_stats(intel_vvp_bls_instance* instance, uint32_t* stats_out);
- Description
-
Reads the value of the FRAME_STATS register. The instance must be a valid intel_vvp_bls_instance fully initialized.
- Arguments
-
instance - pointer to the intel_vvp_bls_instance software driver instance structure
stats_out - pointer of a variable to return the statistics register value
- Returns
-
kIntelVvpCoreOk (0) in case of success, a negative error code in case of an error
kIntelVvpCoreInstanceErr if the instance is a null pointer
kIntelVvpBlsPointerErr if stats_out is a null pointer
kIntelVvpBlsFreezePendingErr if the last freeze request is pending
intel_vvp_bls_get_cfa_00_sum
- Prototype
-
int intel_vvp_bls_get_cfa_00_sum(intel_vvp_bls_instance* instance, uint32_t* stats_out);
- Description
-
Reads the value of the CFA_00_SUM register. The instance must be a valid intel_vvp_bls_instance fully initialized.
- Arguments
-
instance - pointer to the intel_vvp_bls_instance software driver instance structure
stats_out - pointer of a variable to return the statistics register value
- Returns
-
kIntelVvpCoreOk (0) in case of success, a negative error code in case of an error
kIntelVvpCoreInstanceErr if the instance is a null pointer
kIntelVvpBlsPointerErr if stats_out is a null pointer
kIntelVvpBlsFreezePendingErr if the last freeze request is pending
intel_vvp_bls_get_cfa_01_sum
- Prototype
-
int intel_vvp_bls_get_cfa_01_sum(intel_vvp_bls_instance* instance, uint32_t* stats_out);
- Description
-
Reads the value of the CFA_01_SUM register. The instance must be a valid intel_vvp_bls_instance fully initialized.
- Arguments
-
instance - pointer to the intel_vvp_bls_instance software driver instance structure
stats_out - pointer of a variable to return the statistics register value
- Returns
-
kIntelVvpCoreOk (0) in case of success, a negative error code in case of an error
kIntelVvpCoreInstanceErr if the instance is a null pointer
kIntelVvpBlsPointerErr if stats_out is a null pointer
kIntelVvpBlsFreezePendingErr if the last freeze request is pending
intel_vvp_bls_get_cfa_10_sum
- Prototype
-
int intel_vvp_bls_get_cfa_10_sum(intel_vvp_bls_instance* instance, uint32_t* stats_out);
- Description
-
Reads the value of the CFA_10_SUM register. The instance must be a valid intel_vvp_bls_instance fully initialized.
- Arguments
-
instance - pointer to the intel_vvp_bls_instance software driver instance structure
stats_out - pointer of a variable to return the statistics register value
- Returns
-
kIntelVvpCoreOk (0) in case of success, a negative error code in case of an error
kIntelVvpCoreInstanceErr if the instance is a null pointer
kIntelVvpBlsPointerErr if stats_out is a null pointer
kIntelVvpBlsFreezePendingErr if the last freeze request is pending
intel_vvp_bls_get_cfa_11_sum
- Prototype
-
int intel_vvp_bls_get_cfa_11_sum(intel_vvp_bls_instance* instance, uint32_t* stats_out);
- Description
-
Reads the value of the CFA_11_SUM register. The instance must be a valid intel_vvp_bls_instance fully initialized.
- Arguments
-
instance - pointer to the intel_vvp_bls_instance software driver instance structure
stats_out - pointer of a variable to return the statistics register value
- Returns
-
kIntelVvpCoreOk (0) in case of success, a negative error code in case of an error
kIntelVvpCoreInstanceErr if the instance is a null pointer
kIntelVvpBlsPointerErr if stats_out is a null pointer
kIntelVvpBlsFreezePendingErr if the last freeze request is pending
intel_vvp_bls_commit
- Prototype
-
int intel_vvp_bls_commit(intel_vvp_bls_instance* instance);
- Description
-
Commits all pending writes before processing the next field. The instance must be a valid intel_vvp_bls_instance fully initialized.
- Arguments
-
instance - pointer to the intel_vvp_bls_instance software driver instance structure
- Returns
-
kIntelVvpCoreOk (0) in case of success, a negative error code in case of an error
kIntelVvpCoreInstanceErr if the instance is a null pointer
intel_vvp_bls_get_cfa_phase
- Prototype
-
uint8_t intel_vvp_bls_get_cfa_phase(intel_vvp_bls_instance* instance);
- Description
-
Returns the value of the color filter array phase field from the CONTROL register. The instance must be a valid intel_vvp_bls_instance fully initialized.
- Arguments
-
instance - pointer to the intel_vvp_bls_instance software driver instance structure
- Returns
-
the value of the color filter array phase field form the control register
intel_vvp_bls_set_cfa_phase
- Prototype
-
int intel_vvp_bls_set_cfa_phase(intel_vvp_bls_instance* instance, uint8_t cfa_phase);
- Description
-
Writes to the color filter array phase field of the CONTROL register. The instance must be a valid intel_vvp_bls_instance fully initialized.
- Arguments
-
instance - pointer to the intel_vvp_bls_instance software driver instance structure
cfa_phase - new value of the color filter array phase field
- Returns
-
kIntelVvpCoreOk (0) in case of success, a negative error code in case of an error
kIntelVvpCoreInstanceErr if the instance is a null pointer
kIntelVvpBlsValueErr if the value of cfa_phase is out of range
kIntelVvpBlsCommitPendingErr if a previous commit request is pending
intel_vvp_bls_get_freeze_stats_request
- Prototype
-
bool intel_vvp_bls_get_freeze_stats_request(intel_vvp_bls_instance* instance);
- Description
-
Returns the value of the freeze statistics request bit from the CONTROL register. The instance must be a valid intel_vvp_bls_instance fully initialized.
- Arguments
-
instance - pointer to the intel_vvp_bls_instance software driver instance structure
- Returns
-
the value of the freeze statistics request bit form the control register
intel_vvp_bls_set_freeze_stats_request
- Prototype
-
int intel_vvp_bls_set_freeze_stats_request(intel_vvp_bls_instance* instance, bool freeze_stats);
- Description
-
Writes to the freeze statistics request bit of the CONTROL register. The instance must be a valid intel_vvp_bls_instance fully initialized.
- Arguments
-
instance - pointer to the intel_vvp_bls_instance software driver instance structure
freeze_stats - new value of the freeze statistics request bit
- Returns
-
kIntelVvpCoreOk (0) in case of success, a negative error code in case of an error
kIntelVvpCoreInstanceErr if the instance is a null pointer
intel_vvp_bls_get_h_start
- Prototype
-
uint16_t intel_vvp_bls_get_h_start(intel_vvp_bls_instance* instance);
- Description
-
Returns the horizontal starting coordinate of the region of interest. The instance must be a valid intel_vvp_bls_instance fully initialized.
- Arguments
-
instance - pointer to the intel_vvp_bls_instance software driver instance structure
- Returns
-
the value of the horizontal starting coordinate of the region of interest
intel_vvp_bls_set_h_start
- Prototype
-
int intel_vvp_bls_set_h_start(intel_vvp_bls_instance* instance, uint16_t h_start);
- Description
-
Writes the horizontal starting coordinate of the region of interest. The instance must be a valid intel_vvp_bls_instance fully initialized.
- Arguments
-
instance - pointer to the intel_vvp_bls_instance software driver instance structure
h_start - new value of the horizontal starting coordinate of the region of interest
- Returns
-
kIntelVvpCoreOk (0) in case of success, a negative error code in case of an error
kIntelVvpCoreInstanceErr if the instance is a null pointer
kIntelVvpBlsValueErr if the value of h_start is out of range
kIntelVvpBlsCommitPendingErr if a previous commit request is pending
intel_vvp_bls_get_v_start
- Prototype
-
uint16_t intel_vvp_bls_get_v_start(intel_vvp_bls_instance* instance);
- Description
-
Returns the vertical starting coordinate of the region of interest. The instance must be a valid intel_vvp_bls_instance fully initialized.
- Arguments
-
instance - pointer to the intel_vvp_bls_instance software driver instance structure
- Returns
-
the value of the vertical starting coordinate of the region of interest
intel_vvp_bls_set_v_start
- Prototype
-
int intel_vvp_bls_set_v_start(intel_vvp_bls_instance* instance, uint16_t v_start);
- Description
-
Writes the vertical starting coordinate of the region of interest. The instance must be a valid intel_vvp_bls_instance fully initialized.
- Arguments
-
instance - pointer to the intel_vvp_bls_instance software driver instance structure
v_start - new value of the vertical starting coordinate of the region of interest
- Returns
-
kIntelVvpCoreOk (0) in case of success, a negative error code in case of an error
kIntelVvpCoreInstanceErr if the instance is a null pointer
kIntelVvpBlsValueErr if the value of v_start is out of range
kIntelVvpBlsCommitPendingErr if a previous commit request is pending
intel_vvp_bls_get_h_end
- Prototype
-
uint16_t intel_vvp_bls_get_h_end(intel_vvp_bls_instance* instance);
- Description
-
Returns the horizontal ending coordinate of the region of interest. The instance must be a valid intel_vvp_bls_instance fully initialized.
- Arguments
-
instance - pointer to the intel_vvp_bls_instance software driver instance structure
- Returns
-
the value of the horizontal ending coordinate of the region of interest
intel_vvp_bls_set_h_end
- Prototype
-
int intel_vvp_bls_set_h_end(intel_vvp_bls_instance* instance, uint16_t h_end);
- Description
-
Writes the horizontal ending coordinate of the region of interest. The instance must be a valid intel_vvp_bls_instance fully initialized.
- Arguments
-
instance - pointer to the intel_vvp_bls_instance software driver instance structure
h_end - new value of the horizontal ending coordinate of the region of interest
- Returns
-
kIntelVvpCoreOk (0) in case of success, a negative error code in case of an error
kIntelVvpCoreInstanceErr if the instance is a null pointer
kIntelVvpBlsValueErr if the value of h_end is out of range
kIntelVvpBlsCommitPendingErr if a previous commit request is pending
intel_vvp_bls_get_v_end
- Prototype
-
uint16_t intel_vvp_bls_get_v_end(intel_vvp_bls_instance* instance);
- Description
-
Returns the vertical ending coordinate of the region of interest. The instance must be a valid intel_vvp_bls_instance fully initialized.
- Arguments
-
instance - pointer to the intel_vvp_bls_instance software driver instance structure
- Returns
-
the value of the vertical ending coordinate of the region of interest
intel_vvp_bls_set_v_end
- Prototype
-
int intel_vvp_bls_set_v_end(intel_vvp_bls_instance* instance, uint16_t v_end);
- Description
-
Writes the vertical ending coordinate of the region of interest. The instance must be a valid intel_vvp_bls_instance fully initialized.
- Arguments
-
instance - pointer to the intel_vvp_bls_instance software driver instance structure
v_end - new value of the vertical ending coordinate of the region of interest
- Returns
-
kIntelVvpCoreOk (0) in case of success, a negative error code in case of an error
kIntelVvpCoreInstanceErr if the instance is a null pointer
kIntelVvpBlsValueErr if the value of v_end is out of range
kIntelVvpBlsCommitPendingErr if a previous commit request is pending