STRUCT RKISP1_CIF_ISP_COMPAND_CURVE_CONFIG(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’… struct rkisp1_cif_isp_compand_curve_config πŸ’…

okay so bestie, welcome to the Kernel API Manual ✨ this one's a struct page and it's honestly kind of iconic β€” it's the Rockchip ISP1 Companding parameters struct, aka the thing holding your expand and compression curves πŸŽ€ yes, both. it does both. main character energy fr.


🌸 NAME 🌸

struct rkisp1_cif_isp_compand_curve_config β€” Rockchip ISP1 Companding parameters (expand and compression curves) πŸ¦‹


✨ SYNOPSIS ✨

like, here's the whole vibe, verbatim, no notes:

struct rkisp1_cif_isp_compand_curve_config {
    __u8 px[RKISP1_CIF_ISP_COMPAND_NUM_POINTS];
    __u32 x[RKISP1_CIF_ISP_COMPAND_NUM_POINTS];
    __u32 y[RKISP1_CIF_ISP_COMPAND_NUM_POINTS];
 };

three arrays, all sized RKISP1_CIF_ISP_COMPAND_NUM_POINTS, and yes the px one is __u8 while the other two are __u32 β€” that's not a typo, that's just how it is πŸ’€


πŸŽ€ Members πŸŽ€

so let's meet the cast 🫢

  • px β€” Compand curve x-values. and here's the cute part: each value stores the distance from the previous x-value, expressed as log2 of the distance on 5 bits 🀏 tiny little deltas, we love a compressed representation (pun fully intended).
  • x β€” Compand curve x-values. ok so lowkey nobody knows what these do 😭 the functionality of these parameters is unknown due to a lack of hardware documentation, but they're left here for future compatibility purposes β€” so like, don't touch them, they're reserved for the plot. πŸ™ˆ
  • y β€” Compand curve y-values πŸ’– that's it, that's the whole description, and honestly? slay.
ngl bestie, the x field is the definition of "we keep it for future compatibility purposes" β€” it's not a bug, it's a placeholder with lore 🧚

πŸ‘‘ SEE ALSO πŸ‘‘

the Kernel file this lives in: ./include/uapi/linux/rkisp1-config.h β€” and because everything in this header is one big friend group, here's the entire crew, no one left behind πŸ’œ

  • enum rkisp1_cif_isp_version(9)
  • enum rkisp1_cif_isp_exp_ctrl_autostop(9)
  • enum rkisp1_cif_isp_exp_meas_mode(9)
  • struct rkisp1_cif_isp_window(9)
  • struct rkisp1_cif_isp_bls_fixed_val(9)
  • struct rkisp1_cif_isp_bls_config(9)
  • struct rkisp1_cif_isp_dpcc_methods_config(9)
  • struct rkisp1_cif_isp_dpcc_config(9)
  • struct rkisp1_cif_isp_gamma_corr_curve(9)
  • struct rkisp1_cif_isp_gamma_curve_x_axis_pnts(9)
  • struct rkisp1_cif_isp_sdg_config(9)
  • struct rkisp1_cif_isp_lsc_config(9)
  • struct rkisp1_cif_isp_ie_config(9)
  • struct rkisp1_cif_isp_cproc_config(9)
  • struct rkisp1_cif_isp_awb_meas_config(9)
  • struct rkisp1_cif_isp_awb_gain_config(9)
  • struct rkisp1_cif_isp_flt_config(9)
  • struct rkisp1_cif_isp_bdm_config(9)
  • struct rkisp1_cif_isp_ctk_config(9)
  • struct rkisp1_cif_isp_goc_config(9)
  • struct rkisp1_cif_isp_hst_config(9)
  • struct rkisp1_cif_isp_aec_config(9)
  • struct rkisp1_cif_isp_afc_config(9)
  • enum rkisp1_cif_isp_dpf_gain_usage(9)
  • enum rkisp1_cif_isp_dpf_rb_filtersize(9)
  • enum rkisp1_cif_isp_dpf_nll_scale_mode(9)
  • struct rkisp1_cif_isp_dpf_nll(9)
  • struct rkisp1_cif_isp_dpf_rb_flt(9)
  • struct rkisp1_cif_isp_dpf_g_flt(9)
  • struct rkisp1_cif_isp_dpf_gain(9)
  • struct rkisp1_cif_isp_dpf_config(9)
  • struct rkisp1_cif_isp_dpf_strength_config(9)
  • struct rkisp1_cif_isp_isp_other_cfg(9)
  • struct rkisp1_cif_isp_isp_meas_cfg(9)
  • struct rkisp1_params_cfg(9)
  • struct rkisp1_cif_isp_compand_bls_config(9)
  • struct rkisp1_cif_isp_wdr_tone_curve(9)
  • struct rkisp1_cif_isp_wdr_iref_config(9)
  • struct rkisp1_cif_isp_wdr_config(9)
  • enum rkisp1_cif_isp_cac_v_clip_mode(9)
  • struct rkisp1_cif_isp_cac_config(9)
  • struct rkisp1_cif_isp_awb_meas(9)
  • struct rkisp1_cif_isp_awb_stat(9)
  • struct rkisp1_cif_isp_bls_meas_val(9)
  • struct rkisp1_cif_isp_ae_stat(9)
  • struct rkisp1_cif_isp_af_meas_val(9)
  • struct rkisp1_cif_isp_af_stat(9)
  • struct rkisp1_cif_isp_hist_stat(9)
  • struct rkisp1_cif_isp_stat(9)
  • struct rkisp1_stat_buffer(9)
  • enum rkisp1_ext_params_block_type(9)
  • rkisp1_ext_params_block_header(9)
  • struct rkisp1_ext_params_bls_config(9)
  • struct rkisp1_ext_params_dpcc_config(9)
  • struct rkisp1_ext_params_sdg_config(9)
  • struct rkisp1_ext_params_lsc_config(9)
  • struct rkisp1_ext_params_awb_gain_config(9)
  • struct rkisp1_ext_params_flt_config(9)
  • struct rkisp1_ext_params_bdm_config(9)
  • struct rkisp1_ext_params_ctk_config(9)
  • struct rkisp1_ext_params_goc_config(9)
  • struct rkisp1_ext_params_dpf_config(9)
  • struct rkisp1_ext_params_dpf_strength_config(9)
  • struct rkisp1_ext_params_cproc_config(9)
  • struct rkisp1_ext_params_ie_config(9)
  • struct rkisp1_ext_params_awb_meas_config(9)
  • struct rkisp1_ext_params_hst_config(9)
  • struct rkisp1_ext_params_aec_config(9)
  • struct rkisp1_ext_params_afc_config(9)
  • struct rkisp1_ext_params_compand_bls_config(9)
  • struct rkisp1_ext_params_compand_curve_config(9)
  • struct rkisp1_ext_params_wdr_config(9)
  • struct rkisp1_ext_params_cac_config(9)
  • enum rkisp1_ext_param_buffer_version(9)
  • struct rkisp1_ext_params_cfg(9)

okay that's the whole page bestie, you ate that reading it all πŸ’… and for the sign-off: this little masterpiece lives in ./include/uapi/linux (that's the source/version), dated October 2026, and the running header/footer is literally just struct rkisp...curve_config(9) on repeat because the man page was too long to spell it out 😭 bye, ily, go read the rest of the rkisp1-config.h fam πŸ¦‹πŸ’–πŸŽ€

πŸ“¦ where this page comes from