STRUCT IPU3_UAPI_DM_CONFIG(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’… struct ipu3_uapi_dm_config(9) πŸ’…

okay so bestie, this is a page from the Kernel API Manual and it's all about struct ipu3_uapi_dm_config β€” the de-mosaic parameters. yes it's giving "niche camera pipeline struct" but it's lowkey iconic, trust. πŸŽ€


✨ NAME ✨

struct ipu3_uapi_dm_config β€” De-mosaic parameters πŸ¦‹


✨ SYNOPSIS ✨

struct ipu3_uapi_dm_config {
    __u32 dm_en:1;
    __u32 ch_ar_en:1;
    __u32 fcc_en:1;
    __u32 reserved0:13;
    __u32 frame_width:16;
    __u32 gamma_sc:5;
    __u32 reserved1:3;
    __u32 lc_ctrl:5;
    __u32 reserved2:3;
    __u32 cr_param1:5;
    __u32 reserved3:3;
    __u32 cr_param2:5;
    __u32 reserved4:3;
    __u32 coring_param:5;
    __u32 reserved5:27;
};

look at all those bitfields, she's built different fr fr πŸ’€βœ¨


🌸 MEMBERS 🌸

okay let's go through every single one, no skipping, we don't do that here πŸ’–

  • dm_en β€” de-mosaic enable. that's it, that's the switch πŸ‘‘
  • ch_ar_en β€” Checker artifacts removal enable flag. Default 0. πŸŽ€
  • fcc_en β€” False color correction (FCC) enable flag. Default 0. 🌈
  • reserved0 β€” reserved. hands off, bestie πŸ™ˆ
  • frame_width β€” do not care. literally the manpage's own words, she said idc πŸ’€
  • gamma_sc β€” Sharpening coefficient (coefficient of 2-d derivation of complementary color in Hamilton-Adams interpolation). It's u5, range [0, 31], default 8. ✨
  • reserved1 β€” reserved. again. πŸ™ˆ
  • lc_ctrl β€” Parameter that controls weights of Chroma Homogeneity metric in calculation of final homogeneity metric. u5, range [0, 31], default 7. πŸ¦‹
  • reserved2 β€” reserved. (the reserved fields are honestly just filler main characters) πŸ’…
  • cr_param1 β€” First parameter that defines Checker artifact removal feature gain. Precision u5, range [0, 31], default 8. πŸ”₯
  • reserved3 β€” reserved. 🫢
  • cr_param2 β€” Second parameter that defines Checker artifact removal feature gain. Precision u5, range [0, 31], default 8. ⭐
  • reserved4 β€” reserved. 🌸
  • coring_param β€” Defines power of false color correction operation. low for preserving edge colors, high for preserving gray edge artifacts. Precision u1.4, range [0, 1.9375], default 4 (0.25). 🌺
  • reserved5 β€” reserved. the final reserved. periodt. πŸ’œ

πŸŽ€ DESCRIPTION πŸŽ€

so the demosaic fixed function block is responsible to covert Bayer(mosaiced) images into color images based on demosaicing algorithm. yes it says "covert" β€” that's the original wording, we're keeping it exactly, character for character πŸ’– the way this block just transforms your mosaiced pixels into actual color... obsessed.


🌟 SEE ALSO 🌟

buckle up bestie, this list is LONG and we are NOT skipping a single one, iykyk πŸ’…

  • Kernel file ./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_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_gen_control_static_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)
that's every single reference, bestie β€” i counted, we did not drop a one πŸ’…βœ¨

alright that's the whole page, you ate that πŸ«ΆπŸ’– this came from source ./drivers/staging/media/ipu3/i... (it's the October 2026 version of struct ipu3_uapi_dm_config(9)) β€” go forth and de-mosaic, icon πŸ‘‘πŸŒΈ

πŸ“¦ where this page comes from