26.5. Demosaic IP Software API
Register definition header file: intel_vvp_demosaic_regs.h
Include file: intel_vvp_demosaic.h
| Name | Description | 
|---|---|
| intel_vvp_demosaic_init | Initialize an IP instance | 
| intel_vvp_core_* | Accessors defined in Video and Vision Processing IPs Software Programming Model | 
| intel_vvp_demosaic_get_lite_mode | Returns if Lite mode is on | 
| intel_vvp_demosaic_get_debug_enabled | Returns if Debug features is on | 
| intel_vvp_demosaic_get_bits_per_sample_in | Returns the number of bits per color sample for the streaming input interface | 
| intel_vvp_demosaic_get_bits_per_sample_out | Returns the number of bits per color sample value for the streaming output interface | 
| intel_vvp_demosaic_get_num_color_planes_in | Returns the number of color planes of the streaming input interface | 
| intel_vvp_demosaic_get_num_color_planes_out | Returns the number of color planes of the streaming output interface | 
| intel_vvp_demosaic_get_pixels_in_parallel | Returns the pixels in parallel of the streaming input and output interfaces | 
| intel_vvp_demosaic_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_demosaic_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_demosaic_is_running | Reads if the IP is running | 
| intel_vvp_demosaic_get_status | Reads the status register | 
| intel_vvp_demosaic_get_frame_stats | Reads the frame statistics register | 
| intel_vvp_demosaic_get_bypass | Reads the bypass bit from the status register | 
| intel_vvp_demosaic_set_bypass | Writes the bypass bit of the status register | 
| intel_vvp_demosaic_get_cfa_phase | Reads the color filter array phase field from the status register | 
| intel_vvp_demosaic_set_cfa_phase | Writes the color filter array phase field of the status register | 
intel_vvp_demosaic_init
- Prototype
- 
     int intel_vvp_demosaic_init(intel_vvp_demosaic_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_demosaic_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 (0x0246) kIntelVvpDemosaicRegMapVersionErr if the register map is not supported 
intel_vvp_demosaic_get_lite_mode
- Prototype
- 
     bool intel_vvp_demosaic_get_lite_mode(intel_vvp_demosaic_instance* instance);
- Description
- 
     Returns the value of the LITE_MODE register. The instance must be a valid intel_vvp_demosaic_instance fully initialized. 
- Arguments
- 
     instance - pointer to the intel_vvp_demosaic_instance software driver instance structure 
- Returns
- 
     true if the IP is parameterized in lite mode 
intel_vvp_demosaic_get_debug_enabled
- Prototype
- 
     bool intel_vvp_demosaic_get_debug_enabled(intel_vvp_demosaic_instance* instance);
- Description
- 
     Returns the value of the DEBUG_ENABLED register. The instance must be a valid intel_vvp_demosaic_instance fully initialized. 
- Arguments
- 
     instance - pointer to the intel_vvp_demosaic_instance software driver instance structure 
- Returns
- 
     true if the IP is parameterized with debug features enabled 
intel_vvp_demosaic_get_bits_per_sample_in
- Prototype
- 
     uint8_t intel_vvp_demosaic_get_bits_per_sample_in(intel_vvp_demosaic_instance* instance);
- Description
- 
     Returns the value of the BPS_IN register. The instance must be a valid intel_vvp_demosaic_instance fully initialized. 
- Arguments
- 
     instance - pointer to the intel_vvp_demosaic_instance software driver instance structure 
- Returns
- 
     the input bits per color sample parameter used to generate the IP 
intel_vvp_demosaic_get_bits_per_sample_out
- Prototype
- 
     uint8_t intel_vvp_demosaic_get_bits_per_sample_out(intel_vvp_demosaic_instance* instance);
- Description
- 
     Returns the value of the BPS_OUT register. The instance must be a valid intel_vvp_demosaic_instance fully initialized. 
- Arguments
- 
     instance - pointer to the intel_vvp_demosaic_instance software driver instance structure 
- Returns
- 
     the output bits per color sample parameter used to generate the IP 
intel_vvp_demosaic_get_num_color_planes_in
- Prototype
- 
     uint8_t intel_vvp_demosaic_get_num_color_planes_in(intel_vvp_demosaic_instance* instance);
- Description
- 
     Returns the value of the NUM_COLOR_IN register. The instance must be a valid intel_vvp_demosaic_instance fully initialized. 
- Arguments
- 
     instance - pointer to the intel_vvp_demosaic_instance software driver instance structure 
- Returns
- 
     the input number of color planes parameter used to generate the IP 
intel_vvp_demosaic_get_num_color_planes_out
- Prototype
- 
     uint8_t intel_vvp_demosaic_get_num_color_planes_out(intel_vvp_demosaic_instance* instance);
- Description
- 
     Returns the value of the NUM_COLOR_OUT register. The instance must be a valid intel_vvp_demosaic_instance fully initialized. 
- Arguments
- 
     instance - pointer to the intel_vvp_demosaic_instance software driver instance structure 
- Returns
- 
     the output number of color planes parameter used to generate the IP 
intel_vvp_demosaic_get_pixels_in_parallel
- Prototype
- 
     uint8_t intel_vvp_demosaic_get_pixels_in_parallel(intel_vvp_demosaic_instance* instance);
- Description
- 
     Returns the value of the PIXELS_IN_PARALLEL register. The instance must be a valid intel_vvp_demosaic_instance fully initialized. 
- Arguments
- 
     instance - pointer to the intel_vvp_demosaic_instance software driver instance structure 
- Returns
- 
     the pixels in parallel parameter used to generate the IP 
intel_vvp_demosaic_get_max_width
- Prototype
- 
     uint32_t intel_vvp_demosaic_get_max_width(intel_vvp_demosaic_instance* instance);
- Description
- 
     Returns the value of the MAX_WIDTH register. The instance must be a valid intel_vvp_demosaic_instance fully initialized. 
- Arguments
- 
     instance - pointer to the intel_vvp_demosaic_instance software driver instance structure 
- Returns
- 
     the maximum field width parameter used to generate the IP 
intel_vvp_demosaic_get_max_height
- Prototype
- 
     uint32_t intel_vvp_demosaic_get_max_height(intel_vvp_demosaic_instance* instance);
- Description
- 
     Returns the value of the MAX_HEIGHT register. The instance must be a valid intel_vvp_demosaic_instance fully initialized. 
- Arguments
- 
     instance - pointer to the intel_vvp_demosaic_instance software driver instance structure 
- Returns
- 
     the maximum field height parameter used to generate the IP 
intel_vvp_demosaic_is_running
- Prototype
- 
     bool intel_vvp_demosaic_is_running(intel_vvp_demosaic_instance* instance);
- Description
- 
     Returns the value of the IP Running bit from the STATUS register. The instance must be a valid intel_vvp_demosaic_instance fully initialized. 
- Arguments
- 
     instance - pointer to the intel_vvp_demosaic_instance software driver instance structure 
- Returns
- 
     the running bit from the status register 
intel_vvp_demosaic_get_status
- Prototype
- 
     uint32_t intel_vvp_demosaic_get_status(intel_vvp_demosaic_instance* instance);
- Description
- 
     Returns the value of the STATUS register. The instance must be a valid intel_vvp_demosaic_instance fully initialized. 
- Arguments
- 
     instance - pointer to the intel_vvp_demosaic_instance software driver instance structure 
- Returns
- 
     the value of the status register 
intel_vvp_demosaic_get_frame_stats
- Prototype
- 
     int intel_vvp_demosaic_get_frame_stats(intel_vvp_demosaic_instance* instance, uint32_t* stats_out);
- Description
- 
     Reads the value of the FRAME_STATS register. The instance must be a valid intel_vvp_demosaic_instance fully initialized. 
- Arguments
- 
     instance - pointer to the intel_vvp_demosaic_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 kIntelVvpDemosaicPointerErr if stats_out is a null pointer 
intel_vvp_demosaic_get_bypass
- Prototype
- 
     bool intel_vvp_demosaic_get_bypass(intel_vvp_demosaic_instance* instance);
- Description
- 
     Returns the value of the bypass bit from the CONTROL register. The instance must be a valid intel_vvp_demosaic_instance fully initialized. 
- Arguments
- 
     instance - pointer to the intel_vvp_demosaic_instance software driver instance structure 
- Returns
- 
     the value of the bypass bit form the control register 
intel_vvp_demosaic_set_bypass
- Prototype
- 
     int intel_vvp_demosaic_set_bypass(intel_vvp_demosaic_instance* instance, bool bypass);
- Description
- 
     Writes to the bypass bit of the CONTROL register. The instance must be a valid intel_vvp_demosaic_instance fully initialized. 
- Arguments
- 
     instance - pointer to the intel_vvp_demosaic_instance software driver instance structure bypass - new value of the bypass 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_demosaic_get_cfa_phase
- Prototype
- 
     uint8_t intel_vvp_demosaic_get_cfa_phase(intel_vvp_demosaic_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_demosaic_instance fully initialized. 
- Arguments
- 
     instance - pointer to the intel_vvp_demosaic_instance software driver instance structure 
- Returns
- 
     the value of the color filter array phase field form the control register 
intel_vvp_demosaic_set_cfa_phase
- Prototype
- 
     int intel_vvp_demosaic_set_cfa_phase(intel_vvp_demosaic_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_demosaic_instance fully initialized. 
- Arguments
- 
     instance - pointer to the intel_vvp_demosaic_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 kIntelVvpDemosaicValueErr if the value of cfa_phase is out of range