2.13.4. V4L2_META_FMT_RPI_BE_CFG¶
2.13.4.1. Raspberry Pi PiSP Back End configuration format¶
The Raspberry Pi PiSP Back End memory-to-memory image signal processor is
configured by userspace by providing a buffer of configuration parameters
to the pispbe-config output video device node using the
v4l2_meta_format interface.
The PiSP Back End processes images in tiles, and its configuration requires
specifying two different sets of parameters by populating the members of
pisp_be_tiles_config defined in the pisp_be_config.h header file.
The Raspberry Pi PiSP technical specification provide detailed description of the ISP back end configuration and programming model.
2.13.4.1.1. Global configuration data¶
The global configuration data describe how the pixels in a particular image are to be processed and is therefore shared across all the tiles of the image. So for example, LSC (Lens Shading Correction) or Denoise parameters would be common across all tiles from the same frame.
Global configuration data are passed to the ISP by populating the member of
pisp_be_config.
2.13.4.1.2. Tile parameters¶
As the ISP processes images in tiles, each set of tiles parameters describe how a single tile in an image is going to be processed. A single set of tile parameters consist of 160 bytes of data and to process a batch of tiles several sets of tiles parameters are required.
Tiles parameters are passed to the ISP by populating the member of
pisp_tile and the num_tiles fields of pisp_be_tiles_config.
2.13.4.2. Raspberry Pi PiSP Back End uAPI data types¶
This section describes the data types exposed to userspace by the Raspberry Pi PiSP Back End. The section is informative only, for a detailed description of each field refer to the Raspberry Pi PiSP technical specification.
-
struct pisp_be_global_config¶
PiSP global enable bitmaps
Definition:
struct pisp_be_global_config {
__u32 bayer_enables;
__u32 rgb_enables;
__u8 bayer_order;
__u8 pad[3];
};
Members
bayer_enablesBayer input enable flags
rgb_enablesRGB output enable flags
bayer_orderBayer input format ordering
padPadding bytes
-
struct pisp_be_input_buffer_config¶
PiSP Back End input buffer
Definition:
struct pisp_be_input_buffer_config {
__u32 addr[3][2];
};
Members
addrInput buffer address
-
struct pisp_be_dpc_config¶
PiSP Back End DPC config
Definition:
struct pisp_be_dpc_config {
__u8 coeff_level;
__u8 coeff_range;
__u8 pad;
#define PISP_BE_DPC_FLAG_FOLDBACK 1;
__u8 flags;
};
Members
coeff_levelCoefficient for the darkest neighbouring pixel value
coeff_rangeCoefficient for the range of pixels for this Bayer channel
padPadding byte
flagsDPC configuration flags
Description
Defective Pixel Correction configuration
-
struct pisp_be_geq_config¶
PiSP Back End GEQ config
Definition:
struct pisp_be_geq_config {
__u16 offset;
#define PISP_BE_GEQ_SHARPER (1U << 15);
#define PISP_BE_GEQ_SLOPE ((1 << 10) - 1);
__u16 slope_sharper;
__u16 min;
__u16 max;
};
Members
offsetOffset value for threshold calculation
slope_sharperSlope/Sharper configuration
minMinimum value the threshold may have
maxMaximum value the threshold may have
Description
Green Equalisation configuration
-
struct pisp_be_tdn_input_buffer_config¶
PiSP Back End TDN input buffer
Definition:
struct pisp_be_tdn_input_buffer_config {
__u32 addr[2];
};
Members
addrTDN input buffer address
-
struct pisp_be_tdn_config¶
PiSP Back End TDN config
Definition:
struct pisp_be_tdn_config {
__u16 black_level;
__u16 ratio;
__u16 noise_constant;
__u16 noise_slope;
__u16 threshold;
__u8 reset;
__u8 pad;
};
Members
black_levelBlack level value subtracted from pixels
ratioMultiplier for the LTA input frame
noise_constantConstant offset value used in noise estimation
noise_slopeNoise estimation multiplier
thresholdThreshold for TDN operations
resetDisable TDN operations
padPadding byte
Description
Temporal Denoise configuration
-
struct pisp_be_tdn_output_buffer_config¶
PiSP Back End TDN output buffer
Definition:
struct pisp_be_tdn_output_buffer_config {
__u32 addr[2];
};
Members
addrTDN output buffer address
-
struct pisp_be_sdn_config¶
PiSP Back End SDN config
Definition:
struct pisp_be_sdn_config {
__u16 black_level;
__u8 leakage;
__u8 pad;
__u16 noise_constant;
__u16 noise_slope;
__u16 noise_constant2;
__u16 noise_slope2;
};
Members
black_levelBlack level subtracted from pixel for noise estimation
leakageProportion of the original undenoised value to mix in denoised output
padPadding byte
noise_constantNoise constant used for noise estimation
noise_slopeNoise slope value used for noise estimation
noise_constant2Second noise constant used for noise estimation
noise_slope2Second slope value used for noise estimation
Description
Spatial Denoise configuration
-
struct pisp_be_stitch_input_buffer_config¶
PiSP Back End Stitch input
Definition:
struct pisp_be_stitch_input_buffer_config {
__u32 addr[2];
};
Members
addrStitch input buffer address
-
struct pisp_be_stitch_config¶
PiSP Back End Stitch config
Definition:
struct pisp_be_stitch_config {
__u16 threshold_lo;
__u8 threshold_diff_power;
__u8 pad;
__u16 exposure_ratio;
__u8 motion_threshold_256;
__u8 motion_threshold_recip;
};
Members
threshold_loLow threshold value
threshold_diff_powerLow and high threshold difference
padPadding bytes
exposure_ratioMultiplier to convert long exposure pixels into short exposure pixels
motion_threshold_256Motion threshold above which short exposure pixels are used
motion_threshold_recipReciprocal of motion_threshold_256 value
Description
Stitch block configuration
-
struct pisp_be_stitch_output_buffer_config¶
PiSP Back End Stitch output
Definition:
struct pisp_be_stitch_output_buffer_config {
__u32 addr[2];
};
Members
addrStitch input buffer address
-
struct pisp_be_cdn_config¶
PiSP Back End CDN config
Definition:
struct pisp_be_cdn_config {
__u16 thresh;
__u8 iir_strength;
__u8 g_adjust;
};
Members
threshConstant for noise estimation
iir_strengthRelative strength of the IIR part of the filter
g_adjustProportion of the change assigned to the G channel
Description
Colour Denoise configuration
-
struct pisp_be_lsc_config¶
PiSP Back End LSC config
Definition:
struct pisp_be_lsc_config {
__u16 grid_step_x;
__u16 grid_step_y;
#define PISP_BE_LSC_LUT_SIZE (PISP_BE_LSC_GRID_SIZE + 1);
__u32 lut_packed[PISP_BE_LSC_LUT_SIZE][PISP_BE_LSC_LUT_SIZE];
};
Members
grid_step_xReciprocal of cell size width
grid_step_yReciprocal of cell size height
lut_packedJointly-coded RGB gains for each LSC grid
Description
Lens Shading Correction configuration
-
struct pisp_be_lsc_extra¶
PiSP Back End LSC Extra config
Definition:
struct pisp_be_lsc_extra {
__u16 offset_x;
__u16 offset_y;
};
Members
offset_xHorizontal offset into the LSC table of this tile
offset_yVertical offset into the LSC table of this tile
-
struct pisp_be_cac_config¶
PiSP Back End CAC config
Definition:
struct pisp_be_cac_config {
__u16 grid_step_x;
__u16 grid_step_y;
#define PISP_BE_CAC_LUT_SIZE (PISP_BE_CAC_GRID_SIZE + 1);
__s8 lut[PISP_BE_CAC_LUT_SIZE][PISP_BE_CAC_LUT_SIZE][2][2];
};
Members
grid_step_xReciprocal of cell size width
grid_step_yReciprocal of cell size height
lutPixel shift for the CAC grid
Description
Chromatic Aberration Correction config
-
struct pisp_be_cac_extra¶
PiSP Back End CAC extra config
Definition:
struct pisp_be_cac_extra {
__u16 offset_x;
__u16 offset_y;
};
Members
offset_xHorizontal offset into the CAC table of this tile
offset_yHorizontal offset into the CAC table of this tile
-
struct pisp_be_debin_config¶
PiSP Back End Debin config
Definition:
struct pisp_be_debin_config {
__s8 coeffs[PISP_BE_DEBIN_NUM_COEFFS];
__s8 h_enable;
__s8 v_enable;
__s8 pad[2];
};
Members
coeffsFilter coefficients for debinning
h_enableHorizontal debinning enable
v_enableVertical debinning enable
padPadding bytes
Description
Debinning configuration
-
struct pisp_be_tonemap_config¶
PiSP Back End Tonemap config
Definition:
struct pisp_be_tonemap_config {
__u16 detail_constant;
__u16 detail_slope;
__u16 iir_strength;
__u16 strength;
__u32 lut[PISP_BE_TONEMAP_LUT_SIZE];
};
Members
detail_constantConstant value for threshold calculation
detail_slopeSlope value for threshold calculation
iir_strengthRelative strength of the IIR fiter
strengthStrength factor
lutLook-up table for tonemap curve
Description
Tonemapping configuration
-
struct pisp_be_demosaic_config¶
PiSP Back End Demosaic config
Definition:
struct pisp_be_demosaic_config {
__u8 sharper;
__u8 fc_mode;
__u8 pad[2];
};
Members
sharperUse other Bayer channels to increase sharpness
fc_modeBuilt-in false colour suppression mode
padPadding bytes
Description
Demosaic configuration
-
struct pisp_be_ccm_config¶
PiSP Back End CCM config
Definition:
struct pisp_be_ccm_config {
__s16 coeffs[9];
__u8 pad[2];
__s32 offsets[3];
};
Members
coeffsMatrix coefficients
padPadding bytes
offsetsOffsets triplet
Description
Colour Correction Matrix configuration
-
struct pisp_be_sat_control_config¶
PiSP Back End SAT config
Definition:
struct pisp_be_sat_control_config {
__u8 shift_r;
__u8 shift_g;
__u8 shift_b;
__u8 pad;
};
Members
shift_rLeft shift for Red colour channel
shift_gLeft shift for Green colour channel
shift_bLeft shift for Blue colour channel
padPadding byte
Description
Saturation Control configuration
-
struct pisp_be_false_colour_config¶
PiSP Back End False Colour config
Definition:
struct pisp_be_false_colour_config {
__u8 distance;
__u8 pad[3];
};
Members
distanceDistance of neighbouring pixels, either 1 or 2
padPadding bytes
Description
False Colour configuration
-
struct pisp_be_sharpen_config¶
PiSP Back End Sharpening config
Definition:
struct pisp_be_sharpen_config {
__s8 kernel0[PISP_BE_SHARPEN_SIZE * PISP_BE_SHARPEN_SIZE];
__s8 pad0[3];
__s8 kernel1[PISP_BE_SHARPEN_SIZE * PISP_BE_SHARPEN_SIZE];
__s8 pad1[3];
__s8 kernel2[PISP_BE_SHARPEN_SIZE * PISP_BE_SHARPEN_SIZE];
__s8 pad2[3];
__s8 kernel3[PISP_BE_SHARPEN_SIZE * PISP_BE_SHARPEN_SIZE];
__s8 pad3[3];
__s8 kernel4[PISP_BE_SHARPEN_SIZE * PISP_BE_SHARPEN_SIZE];
__s8 pad4[3];
__u16 threshold_offset0;
__u16 threshold_slope0;
__u16 scale0;
__u16 pad5;
__u16 threshold_offset1;
__u16 threshold_slope1;
__u16 scale1;
__u16 pad6;
__u16 threshold_offset2;
__u16 threshold_slope2;
__u16 scale2;
__u16 pad7;
__u16 threshold_offset3;
__u16 threshold_slope3;
__u16 scale3;
__u16 pad8;
__u16 threshold_offset4;
__u16 threshold_slope4;
__u16 scale4;
__u16 pad9;
__u16 positive_strength;
__u16 positive_pre_limit;
__u16 positive_func[PISP_BE_SHARPEN_FUNC_NUM_POINTS];
__u16 positive_limit;
__u16 negative_strength;
__u16 negative_pre_limit;
__u16 negative_func[PISP_BE_SHARPEN_FUNC_NUM_POINTS];
__u16 negative_limit;
__u8 enables;
__u8 white;
__u8 black;
__u8 grey;
};
Members
kernel0Coefficient for filter 0
pad0Padding byte
kernel1Coefficient for filter 1
pad1Padding byte
kernel2Coefficient for filter 2
pad2Padding byte
kernel3Coefficient for filter 3
pad3Padding byte
kernel4Coefficient for filter 4
pad4Padding byte
threshold_offset0Offset for filter 0 response calculation
threshold_slope0Slope multiplier for the filter 0 response calculation
scale0Scale factor for filter 0 response calculation
pad5Padding byte
threshold_offset1Offset for filter 0 response calculation
threshold_slope1Slope multiplier for the filter 0 response calculation
scale1Scale factor for filter 0 response calculation
pad6Padding byte
threshold_offset2Offset for filter 0 response calculation
threshold_slope2Slope multiplier for the filter 0 response calculation
scale2Scale factor for filter 0 response calculation
pad7Padding byte
threshold_offset3Offset for filter 0 response calculation
threshold_slope3Slope multiplier for the filter 0 response calculation
scale3Scale factor for filter 0 response calculation
pad8Padding byte
threshold_offset4Offset for filter 0 response calculation
threshold_slope4Slope multiplier for the filter 0 response calculation
scale4Scale factor for filter 0 response calculation
pad9Padding byte
positive_strengthFactor to scale the positive sharpening strength
positive_pre_limitMaximum allowed possible positive sharpening value
positive_funcGain factor applied to positive sharpening response
positive_limitFinal gain factor applied to positive sharpening
negative_strengthFactor to scale the negative sharpening strength
negative_pre_limitMaximum allowed possible negative sharpening value
negative_funcGain factor applied to negative sharpening response
negative_limitFinal gain factor applied to negative sharpening
enablesFilter enable mask
whiteWhite output pixel filter mask
blackBlack output pixel filter mask
greyGrey output pixel filter mask
Description
Sharpening configuration
-
struct pisp_be_sh_fc_combine_config¶
PiSP Back End Sharpening and False Colour config
Definition:
struct pisp_be_sh_fc_combine_config {
__u8 y_factor;
__u8 c1_factor;
__u8 c2_factor;
__u8 pad;
};
Members
y_factorControl amount of desaturation of pixels being darkened
c1_factorControl amount of brightening of a pixel for the Cb channel
c2_factorControl amount of brightening of a pixel for the Cr channel
padPadding byte
Description
Sharpening and False Colour configuration
-
struct pisp_be_gamma_config¶
PiSP Back End Gamma configuration
Definition:
struct pisp_be_gamma_config {
__u32 lut[PISP_BE_GAMMA_LUT_SIZE];
};
Members
lutGamma curve look-up table
-
struct pisp_be_crop_config¶
PiSP Back End Crop config
Definition:
struct pisp_be_crop_config {
__u16 offset_x, offset_y;
__u16 width, height;
};
Members
offset_xNumber of pixels cropped from the left of the tile
offset_yNumber of pixels cropped from the top of the tile
widthWidth of the cropped tile output
heightHeight of the cropped tile output
Description
Crop configuration
-
struct pisp_be_resample_config¶
PiSP Back End Resampling config
Definition:
struct pisp_be_resample_config {
__u16 scale_factor_h, scale_factor_v;
__s16 coef[PISP_BE_RESAMPLE_FILTER_SIZE];
};
Members
scale_factor_hHorizontal scale factor
scale_factor_vVertical scale factor
coefResample coefficients
Description
Resample configuration
-
struct pisp_be_resample_extra¶
PiSP Back End Resample config
Definition:
struct pisp_be_resample_extra {
__u16 scaled_width;
__u16 scaled_height;
__s16 initial_phase_h[3];
__s16 initial_phase_v[3];
};
Members
scaled_widthWidth in pixels of the scaled output
scaled_heightHeight in pixels of the scaled output
initial_phase_hInitial horizontal phase
initial_phase_vInitial vertical phase
Description
Resample configuration
-
struct pisp_be_downscale_config¶
PiSP Back End Downscale config
Definition:
struct pisp_be_downscale_config {
__u16 scale_factor_h;
__u16 scale_factor_v;
__u16 scale_recip_h;
__u16 scale_recip_v;
};
Members
scale_factor_hHorizontal scale factor
scale_factor_vVertical scale factor
scale_recip_hHorizontal reciprocal factor
scale_recip_vVertical reciprocal factor
Description
Downscale configuration
-
struct pisp_be_downscale_extra¶
PiSP Back End Downscale Extra config
Definition:
struct pisp_be_downscale_extra {
__u16 scaled_width;
__u16 scaled_height;
};
Members
scaled_widthScaled image width
scaled_heightScaled image height
-
struct pisp_be_hog_config¶
PiSP Back End HOG config
Definition:
struct pisp_be_hog_config {
__u8 compute_signed;
__u8 channel_mix[3];
__u32 stride;
};
Members
compute_signedSet 0 for unsigned gradients, 1 for signed
channel_mixChannels proportions to use
strideStride in bytes between blocks directly below
Description
Histogram of Oriented Gradients configuration
-
enum pisp_be_transform¶
PiSP Back End Transform flags
Constants
PISP_BE_TRANSFORM_NONENo transform
PISP_BE_TRANSFORM_HFLIPHorizontal flip
PISP_BE_TRANSFORM_VFLIPVertical flip
PISP_BE_TRANSFORM_ROT180180 degress rotation
-
struct pisp_be_output_buffer_config¶
PiSP Back End Output buffer
Definition:
struct pisp_be_output_buffer_config {
__u32 addr[3][2];
};
Members
addrOutput buffer address
-
struct pisp_be_hog_buffer_config¶
PiSP Back End HOG buffer
Definition:
struct pisp_be_hog_buffer_config {
__u32 addr[2];
};
Members
addrHOG buffer address
-
struct pisp_be_config¶
RaspberryPi PiSP Back End Processing configuration
Definition:
struct pisp_be_config {
struct pisp_be_input_buffer_config input_buffer;
struct pisp_be_tdn_input_buffer_config tdn_input_buffer;
struct pisp_be_stitch_input_buffer_config stitch_input_buffer;
struct pisp_be_tdn_output_buffer_config tdn_output_buffer;
struct pisp_be_stitch_output_buffer_config stitch_output_buffer;
struct pisp_be_output_buffer_config output_buffer[PISP_BACK_END_NUM_OUTPUTS];
struct pisp_be_hog_buffer_config hog_buffer;
struct pisp_be_global_config global;
struct pisp_image_format_config input_format;
struct pisp_decompress_config decompress;
struct pisp_be_dpc_config dpc;
struct pisp_be_geq_config geq;
struct pisp_image_format_config tdn_input_format;
struct pisp_decompress_config tdn_decompress;
struct pisp_be_tdn_config tdn;
struct pisp_compress_config tdn_compress;
struct pisp_image_format_config tdn_output_format;
struct pisp_be_sdn_config sdn;
struct pisp_bla_config blc;
struct pisp_compress_config stitch_compress;
struct pisp_image_format_config stitch_output_format;
struct pisp_image_format_config stitch_input_format;
struct pisp_decompress_config stitch_decompress;
struct pisp_be_stitch_config stitch;
struct pisp_be_lsc_config lsc;
struct pisp_wbg_config wbg;
struct pisp_be_cdn_config cdn;
struct pisp_be_cac_config cac;
struct pisp_be_debin_config debin;
struct pisp_be_tonemap_config tonemap;
struct pisp_be_demosaic_config demosaic;
struct pisp_be_ccm_config ccm;
struct pisp_be_sat_control_config sat_control;
struct pisp_be_ccm_config ycbcr;
struct pisp_be_sharpen_config sharpen;
struct pisp_be_false_colour_config false_colour;
struct pisp_be_sh_fc_combine_config sh_fc_combine;
struct pisp_be_ccm_config ycbcr_inverse;
struct pisp_be_gamma_config gamma;
struct pisp_be_ccm_config csc[PISP_BACK_END_NUM_OUTPUTS];
struct pisp_be_downscale_config downscale[PISP_BACK_END_NUM_OUTPUTS];
struct pisp_be_resample_config resample[PISP_BACK_END_NUM_OUTPUTS];
struct pisp_be_output_format_config output_format[PISP_BACK_END_NUM_OUTPUTS];
struct pisp_be_hog_config hog;
struct pisp_be_axi_config axi;
struct pisp_be_lsc_extra lsc_extra;
struct pisp_be_cac_extra cac_extra;
struct pisp_be_downscale_extra downscale_extra[PISP_BACK_END_NUM_OUTPUTS];
struct pisp_be_resample_extra resample_extra[PISP_BACK_END_NUM_OUTPUTS];
struct pisp_be_crop_config crop;
struct pisp_image_format_config hog_format;
__u32 dirty_flags_bayer;
__u32 dirty_flags_rgb;
__u32 dirty_flags_extra;
};
Members
input_bufferInput buffer addresses
tdn_input_bufferTDN input buffer addresses
stitch_input_bufferStitch input buffer addresses
tdn_output_bufferTDN output buffer addresses
stitch_output_bufferStitch output buffer addresses
output_bufferOutput buffers addresses
hog_bufferHOG buffer addresses
globalGlobal PiSP configuration
input_formatInput image format
decompressDecompress configuration
dpcDefective Pixel Correction configuration
geqGreen Equalisation configuration
tdn_input_formatTemporal Denoise input format
tdn_decompressTemporal Denoise decompress configuration
tdnTemporal Denoise configuration
tdn_compressTemporal Denoise compress configuration
tdn_output_formatTemporal Denoise output format
sdnSpatial Denoise configuration
blcBlack Level Correction configuration
stitch_compressStitch compress configuration
stitch_output_formatStitch output format
stitch_input_formatStitch input format
stitch_decompressStitch decompress configuration
stitchStitch configuration
lscLens Shading Correction configuration
wbgWhite Balance Gain configuration
cdnColour Denoise configuration
cacColour Aberration Correction configuration
debinDebinning configuration
tonemapTonemapping configuration
demosaicDemosaicing configuration
ccmColour Correction Matrix configuration
sat_controlSaturation Control configuration
ycbcrYCbCr colour correction configuration
sharpenSharpening configuration
false_colourFalse colour correction
sh_fc_combineSharpening and False Colour correction
ycbcr_inverseInverse YCbCr colour correction
gammaGamma curve configuration
cscColor Space Conversion configuration
downscaleDownscale configuration
resampleResampling configuration
output_formatOutput format configuration
hogHOG configuration
axiAXI bus configuration
lsc_extraLSC extra info
cac_extraCAC extra info
downscale_extraDownscaler extra info
resample_extraResample extra info
cropCrop configuration
hog_formatHOG format info
dirty_flags_bayerBayer enable dirty flags (
pisp_be_bayer_enable)dirty_flags_rgbRGB enable dirty flags (
pisp_be_rgb_enable)dirty_flags_extraExtra dirty flags
-
enum pisp_tile_edge¶
PiSP Back End Tile position
Constants
PISP_LEFT_EDGELeft edge tile
PISP_RIGHT_EDGERight edge tile
PISP_TOP_EDGETop edge tile
PISP_BOTTOM_EDGEBottom edge tile
-
struct pisp_tile¶
Raspberry Pi PiSP Back End tile configuration
Definition:
struct pisp_tile {
__u8 edge;
__u8 pad0[3];
__u32 input_addr_offset;
__u32 input_addr_offset2;
__u16 input_offset_x;
__u16 input_offset_y;
__u16 input_width;
__u16 input_height;
__u32 tdn_input_addr_offset;
__u32 tdn_output_addr_offset;
__u32 stitch_input_addr_offset;
__u32 stitch_output_addr_offset;
__u32 lsc_grid_offset_x;
__u32 lsc_grid_offset_y;
__u32 cac_grid_offset_x;
__u32 cac_grid_offset_y;
__u16 crop_x_start[PISP_BACK_END_NUM_OUTPUTS];
__u16 crop_x_end[PISP_BACK_END_NUM_OUTPUTS];
__u16 crop_y_start[PISP_BACK_END_NUM_OUTPUTS];
__u16 crop_y_end[PISP_BACK_END_NUM_OUTPUTS];
__u16 downscale_phase_x[3 * PISP_BACK_END_NUM_OUTPUTS];
__u16 downscale_phase_y[3 * PISP_BACK_END_NUM_OUTPUTS];
__u16 resample_in_width[PISP_BACK_END_NUM_OUTPUTS];
__u16 resample_in_height[PISP_BACK_END_NUM_OUTPUTS];
__u16 resample_phase_x[3 * PISP_BACK_END_NUM_OUTPUTS];
__u16 resample_phase_y[3 * PISP_BACK_END_NUM_OUTPUTS];
__u16 output_offset_x[PISP_BACK_END_NUM_OUTPUTS];
__u16 output_offset_y[PISP_BACK_END_NUM_OUTPUTS];
__u16 output_width[PISP_BACK_END_NUM_OUTPUTS];
__u16 output_height[PISP_BACK_END_NUM_OUTPUTS];
__u32 output_addr_offset[PISP_BACK_END_NUM_OUTPUTS];
__u32 output_addr_offset2[PISP_BACK_END_NUM_OUTPUTS];
__u32 output_hog_addr_offset;
};
Members
edgeEdge tile flag
pad0Padding bytes
input_addr_offsetTop-left pixel offset, in bytes
input_addr_offset2Top-left pixel offset, in bytes for the second/ third image planes
input_offset_xHorizontal offset in pixels of this tile in the input image
input_offset_yVertical offset in pixels of this tile in the input image
input_widthWidth in pixels of this tile
input_heightHeight in pixels of the this tile
tdn_input_addr_offsetTDN input image offset, in bytes
tdn_output_addr_offsetTDN output image offset, in bytes
stitch_input_addr_offsetStitch input image offset, in bytes
stitch_output_addr_offsetStitch output image offset, in bytes
lsc_grid_offset_xHorizontal offset in the LSC table for this tile
lsc_grid_offset_yVertical offset in the LSC table for this tile
cac_grid_offset_xHorizontal offset in the CAC table for this tile
cac_grid_offset_yHorizontal offset in the CAC table for this tile
crop_x_startNumber of pixels cropped from the left of the tile
crop_x_endNumber of pixels cropped from the right of the tile
crop_y_startNumber of pixels cropped from the top of the tile
crop_y_endNumber of pixels cropped from the bottom of the tile
downscale_phase_xInitial horizontal phase in pixels
downscale_phase_yInitial vertical phase in pixels
resample_in_widthWidth in pixels of the tile entering the Resample block
resample_in_heightHeight in pixels of the tile entering the Resample block
resample_phase_xInitial horizontal phase for the Resample block
resample_phase_yInitial vertical phase for the Resample block
output_offset_xHorizontal offset in pixels where the tile will be written into the output image
output_offset_yVertical offset in pixels where the tile will be written into the output image
output_widthWidth in pixels in the output image of this tile
output_heightHeight in pixels in the output image of this tile
output_addr_offsetOffset in bytes into the output buffer
output_addr_offset2Offset in bytes into the output buffer for the second and third plane
output_hog_addr_offsetOffset in bytes into the HOG buffer where results of this tile are to be written
Description
Tile parameters: each set of tile parameters is a 160-bytes block of data which contains the tile processing parameters.
-
struct pisp_be_tiles_config¶
Raspberry Pi PiSP Back End configuration
Definition:
struct pisp_be_tiles_config {
struct pisp_be_config config;
struct pisp_tile tiles[PISP_BACK_END_NUM_TILES];
__u32 num_tiles;
};
Members
configPiSP Back End configuration
tilesTile descriptors
num_tilesNumber of tiles