STRUCT IPU3_UAPI_YUVP2_TCC_GEN_CONTROL_STATIC_CONFIG(9)
π NAME π
struct ipu3_uapi_yuvp2_tcc_gen_control_static_config β bestie, this is the Total color correction general control config β¨ (yes, "color" with the American spelling, that's literally what it says, don't come for me π
)
πΈ SYNOPSIS πΈ
okay so here's the whole struct, character for character, no cap:
struct ipu3_uapi_yuvp2_tcc_gen_control_static_config {
__u32 en:1;
__u32 blend_shift:3;
__u32 gain_according_to_y_only:1;
__u32 reserved0:11;
__s32 gamma:5;
__u32 reserved1:3;
__s32 delta:5;
__u32 reserved2:3;
};
look at all those bitfields, she's thriving π¦ notice the __u32 vs __s32 switch-up β the signed ones are the actual coefficient fields, iykyk π
π Members π
time for the member-by-member vibe check, grab a strawberry π:
enβ the on/off switch, the main character energy of the whole struct:0β TCC disabled. Output = input π«Ά (literally just passing it through)1β TCC enabled π₯
blend_shiftβ blend shift, Range[3, 4], defaultNA.gain_according_to_y_onlyβ picks how the gain gets calculated:0: Gain is calculated according to YUV1: Gain is calculated according to Y only π
reserved0β reserved π (hands off, she's not for you)gammaβ Final blending coefficients. Values[-16, 16], defaultNA. πreserved1β reserved πdeltaβ Final blending coefficients. Values[-16, 16], defaultNA. πreserved2β reserved π
ngl the three reserved fields are just there holding space and honestly? iconic of them. don't touch, don't write, don't ask questions π
π¦ SEE ALSO π¦
the whole friend group, fr fr β plus the kernel file where she actually lives: ./drivers/staging/media/ipu3/include/uapi/intel-ipu3.h π
struct ipu3_uapi_grid_config(9)struct ipu3_uapi_awb_set_item(9)struct ipu3_uapi_awb_raw_buffer(9)struct ipu3_uapi_awb_config_s(9)struct ipu3_uapi_awb_config(9)struct ipu3_uapi_ae_raw_buffer(9)struct ipu3_uapi_ae_raw_buffer_aligned(9)struct ipu3_uapi_ae_grid_config(9)struct ipu3_uapi_ae_weight_elem(9)struct ipu3_uapi_ae_ccm(9)struct ipu3_uapi_ae_config(9)struct ipu3_uapi_af_filter_config(9)struct ipu3_uapi_af_raw_buffer(9)struct ipu3_uapi_af_config_s(9)struct ipu3_uapi_awb_fr_raw_buffer(9)struct ipu3_uapi_awb_fr_config_s(9)struct ipu3_uapi_4a_config(9)struct ipu3_uapi_bubble_info(9)struct ipu3_uapi_ff_status(9)struct ipu3_uapi_stats_3a(9)struct ipu3_uapi_bnr_static_config_wb_gains_config(9)struct ipu3_uapi_bnr_static_config_wb_gains_thr_config(9)struct ipu3_uapi_bnr_static_config_thr_coeffs_config(9)struct ipu3_uapi_bnr_static_config_thr_ctrl_shd_config(9)struct ipu3_uapi_bnr_static_config_opt_center_config(9)struct ipu3_uapi_bnr_static_config_lut_config(9)struct ipu3_uapi_bnr_static_config_bp_ctrl_config(9)struct ipu3_uapi_bnr_static_config_dn_detect_ctrl_config(9)struct ipu3_uapi_bnr_static_config_opt_center_sqr_config(9)struct ipu3_uapi_bnr_static_config(9)struct ipu3_uapi_bnr_static_config_green_disparity(9)struct ipu3_uapi_dm_config(9)struct ipu3_uapi_ccm_mat_config(9)struct ipu3_uapi_gamma_corr_ctrl(9)struct ipu3_uapi_gamma_corr_lut(9)struct ipu3_uapi_gamma_config(9)struct ipu3_uapi_csc_mat_config(9)struct ipu3_uapi_cds_params(9)struct ipu3_uapi_shd_grid_config(9)struct ipu3_uapi_shd_general_config(9)struct ipu3_uapi_shd_black_level_config(9)struct ipu3_uapi_shd_config_static(9)struct ipu3_uapi_shd_lut(9)struct ipu3_uapi_shd_config(9)struct ipu3_uapi_iefd_cux2(9)struct ipu3_uapi_iefd_cux6_ed(9)struct ipu3_uapi_iefd_cux2_1(9)struct ipu3_uapi_iefd_cux4(9)struct ipu3_uapi_iefd_cux6_rad(9)struct ipu3_uapi_yuvp1_iefd_cfg_units(9)struct ipu3_uapi_yuvp1_iefd_config_s(9)struct ipu3_uapi_yuvp1_iefd_control(9)struct ipu3_uapi_sharp_cfg(9)struct ipu3_uapi_far_w(9)struct ipu3_uapi_unsharp_cfg(9)struct ipu3_uapi_yuvp1_iefd_shrp_cfg(9)struct ipu3_uapi_unsharp_coef0(9)struct ipu3_uapi_unsharp_coef1(9)struct ipu3_uapi_yuvp1_iefd_unshrp_cfg(9)struct ipu3_uapi_radial_reset_xy(9)struct ipu3_uapi_radial_reset_x2(9)struct ipu3_uapi_radial_reset_y2(9)struct ipu3_uapi_radial_cfg(9)struct ipu3_uapi_rad_far_w(9)struct ipu3_uapi_cu_cfg0(9)struct ipu3_uapi_cu_cfg1(9)struct ipu3_uapi_yuvp1_iefd_rad_cfg(9)struct ipu3_uapi_vss_lut_x(9)struct ipu3_uapi_vss_lut_y(9)struct ipu3_uapi_yuvp1_iefd_vssnlm_cfg(9)struct ipu3_uapi_yuvp1_iefd_config(9)struct ipu3_uapi_yuvp1_yds_config(9)struct ipu3_uapi_yuvp1_chnr_enable_config(9)struct ipu3_uapi_yuvp1_chnr_coring_config(9)struct ipu3_uapi_yuvp1_chnr_sense_gain_config(9)struct ipu3_uapi_yuvp1_chnr_iir_fir_config(9)struct ipu3_uapi_yuvp1_chnr_config(9)struct ipu3_uapi_yuvp1_y_ee_nr_lpf_config(9)struct ipu3_uapi_yuvp1_y_ee_nr_sense_config(9)struct ipu3_uapi_yuvp1_y_ee_nr_gain_config(9)struct ipu3_uapi_yuvp1_y_ee_nr_clip_config(9)struct ipu3_uapi_yuvp1_y_ee_nr_frng_config(9)struct ipu3_uapi_yuvp1_y_ee_nr_diag_config(9)struct ipu3_uapi_yuvp1_y_ee_nr_fc_coring_config(9)struct ipu3_uapi_yuvp1_y_ee_nr_config(9)struct ipu3_uapi_yuvp2_tcc_macc_elem_static_config(9)struct ipu3_uapi_yuvp2_tcc_macc_table_static_config(9)struct ipu3_uapi_yuvp2_tcc_inv_y_lut_static_config(9)struct ipu3_uapi_yuvp2_tcc_gain_pcwl_lut_static_config(9)struct ipu3_uapi_yuvp2_tcc_r_sqr_lut_static_config(9)struct ipu3_uapi_yuvp2_tcc_static_config(9)struct ipu3_uapi_anr_transform_config(9)struct ipu3_uapi_anr_stitch_pyramid(9)struct ipu3_uapi_anr_stitch_config(9)struct ipu3_uapi_anr_config(9)struct ipu3_uapi_acc_param(9)struct ipu3_uapi_isp_lin_vmem_params(9)struct ipu3_uapi_isp_tnr3_vmem_params(9)struct ipu3_uapi_isp_tnr3_params(9)struct ipu3_uapi_isp_xnr3_vmem_params(9)struct ipu3_uapi_xnr3_alpha_params(9)struct ipu3_uapi_xnr3_coring_params(9)struct ipu3_uapi_xnr3_blending_params(9)struct ipu3_uapi_isp_xnr3_params(9)struct ipu3_uapi_obgrid_param(9)struct ipu3_uapi_flags(9)struct ipu3_uapi_params(9)
and that's the whole page, bestie, you ate that π«Ά stay hydrated, don't write to the reserved fields, and remember this one came straight out of ./drivers/staging/media/ipu3/i... with an October 2026 date stamp on it β so it's basically a little time capsule π
π mwah, see u in the next man page πβ
π¦ where this page comes from
- nixpkgs unstable: linux-manual 7.3.1
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms