ENUM C3_ISP_PARAMS_BLOCK_TYPE(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’… enum c3_isp_params_block_type(9) β€” the glow-up

okay so this is from the Kernel API Manual, and bestie it is literally the cheat sheet for telling the C3 ISP driver which parameter block is which. no cap, it's a whole enum and it ate. ✨


✨ NAME ✨

enum c3_isp_params_block_type β€” the enumeration of C3 ISP parameter blocks πŸŽ€


πŸ¦‹ SYNOPSIS πŸ¦‹

enum c3_isp_params_block_type {
    C3_ISP_PARAMS_BLOCK_AWB_GAINS ,
    C3_ISP_PARAMS_BLOCK_AWB_CONFIG ,
    C3_ISP_PARAMS_BLOCK_AE_CONFIG ,
    C3_ISP_PARAMS_BLOCK_AF_CONFIG ,
    C3_ISP_PARAMS_BLOCK_PST_GAMMA ,
    C3_ISP_PARAMS_BLOCK_CCM ,
    C3_ISP_PARAMS_BLOCK_CSC ,
    C3_ISP_PARAMS_BLOCK_BLC ,
    C3_ISP_PARAMS_BLOCK_SENTINEL

};

like yes the blank line before the closing brace is supposed to be there, we don't question the kernel's aesthetic choices πŸ’…


🌸 Constants 🌸

each of these is a little icon in the group chat, bestie β€” here's who's who:

  • C3_ISP_PARAMS_BLOCK_AWB_GAINS β€” white balance gains πŸ’–
  • C3_ISP_PARAMS_BLOCK_AWB_CONFIG β€” the AWB statistic format configuration, and it covers all the blocks that control how stats are generated πŸ”₯
  • C3_ISP_PARAMS_BLOCK_AE_CONFIG β€” the AE statistic format configuration, again for all the blocks that control how stats are generated 🌈
  • C3_ISP_PARAMS_BLOCK_AF_CONFIG β€” the AF statistic format configuration, same deal, all the blocks that control how stats are generated ⭐
  • C3_ISP_PARAMS_BLOCK_PST_GAMMA β€” post gamma parameters πŸŽ€
  • C3_ISP_PARAMS_BLOCK_CCM β€” color correction matrix parameters πŸ‘‘
  • C3_ISP_PARAMS_BLOCK_CSC β€” color space conversion parameters πŸ¦‹
  • C3_ISP_PARAMS_BLOCK_BLC β€” black level correction parameters πŸ’œ
  • C3_ISP_PARAMS_BLOCK_SENTINEL β€” the first non-valid block index πŸ™ˆ (she's the boundary, the end of the line, the "you shall not pass")

πŸ’€ Description πŸ’€

so the vibe here is: every single block configures one specific processing block of the C3 ISP. that's it, that's the tweet. and the block type is what lets the driver correctly interpret the parameters block data β€” without it the driver would be out here guessing and we simply do not do guessing in this house 😭

periodt. 🫢


πŸ” SEE ALSO πŸ”

go read these, iykyk, they're all part of the same friend group:

  • Kernel file ./include/uapi/linux/media/amlogic/c3-isp-config.h
  • struct c3_isp_awb_zone_stats(9)
  • struct c3_isp_awb_stats(9)
  • struct c3_isp_ae_zone_stats(9)
  • struct c3_isp_ae_stats(9)
  • struct c3_isp_af_zone_stats(9)
  • struct c3_isp_af_stats(9)
  • struct c3_isp_stats_info(9)
  • enum c3_isp_params_buffer_version(9)
  • c3_isp_params_block_header(9)
  • struct c3_isp_params_awb_gains(9)
  • enum c3_isp_params_awb_tap_points(9)
  • struct c3_isp_params_awb_config(9)
  • enum c3_isp_params_ae_tap_points(9)
  • struct c3_isp_params_ae_config(9)
  • enum c3_isp_params_af_tap_points(9)
  • struct c3_isp_params_af_config(9)
  • struct c3_isp_params_pst_gamma(9)
  • struct c3_isp_params_ccm(9)
  • struct c3_isp_params_csc(9)
  • struct c3_isp_params_blc(9)
  • C3_ISP_PARAMS_MAX_SIZE(9)
  • struct c3_isp_params_cfg(9)

ngl the whole thing lives under ./include/uapi/linux/media/aml... and it's dated October 2026 β€” so yeah, this page got dragged into the future and she's thriving πŸ’…βœ¨ mwah, go read your headers bestie, ily πŸ«ΆπŸŽ€
πŸ“¦ where this page comes from