STRUCT C3_ISP_AF_ZONE_STATS(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’… struct c3_isp_af_zone_stats(9) β€” the AF zone tea, served fresh ✨

okay so bestie, welcome to section 9 of the Kernel API Manual πŸŽ€ and today's main character is struct c3_isp_af_zone_stats β€” literally the AF statistics of a zone, no cap πŸ’–


🌸 NAME 🌸

struct c3_isp_af_zone_stats β€” AF statistics of a zone πŸ¦‹


✨ SYNOPSIS ✨

struct c3_isp_af_zone_stats {
    __u16 i2_mat;
    __u16 i4_mat;
    __u16 e4_mat;
    __u16 e4_exp : 5;
    __u16 i2_exp : 5;
    __u16 i4_exp : 6;
 };

that's the whole struct, bestie β€” she's compact and she knows it πŸ’…


πŸ‘‘ Members πŸ‘‘

  • i2_mat β€” the mantissa of zonal squared image pixel sum πŸ“ like, the squared-image-pixel-sum mantissa, but make it zonal.
  • i4_mat β€” the mantissa of zonal quartic image pixel sum ✨ quartic this time, still zonal, still a mantissa.
  • e4_mat β€” the mantissa of zonal multi-directional quartic edge sum 🌈 multi-directional! quartic! edge sum! her mantissa!
  • e4_exp β€” the exponent of zonal multi-directional quartic edge sum πŸ’œ the exponent partner-in-crime to e4_mat.
  • i2_exp β€” the exponent of zonal squared image pixel sum πŸ¦‹ the exponent half of the squared image story.
  • i4_exp β€” the exponent of zonal quartic image pixel sum πŸŽ€ and the exponent half of the quartic image story. slay.

🧚 Description 🧚

okay so real talk β€” AF zone stats is aligned with 8 bytes ⭐ that's the vibe, that's the alignment, periodt.

the zonal accumulated contrast metrics are stored in floating point format with 16 bits mantissa and 5 or 6 bits exponent πŸ’€ (yes, either 5 or 6, depending on which field you're looking at β€” look at the bitfields above, iykyk πŸ™ˆ).

and apart from the contrast metrics? we also accumulate squared image and quartic image data over the zone πŸ’– so she's out here holding contrast metrics and pixel data, highkey doing the most πŸ”₯


🫢 SEE ALSO 🫢

  • Kernel file ./include/uapi/linux/media/amlogic/c3-isp-config.h πŸ‘‘ (this is where she lives, go say hi)
  • 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_stats(9)
  • struct c3_isp_stats_info(9)
  • enum c3_isp_params_buffer_version(9)
  • enum c3_isp_params_block_type(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)

like, the whole friend group fr fr πŸ’œ go read them all, they're iconic individually and devastating together 🌸


πŸ’€ friendly reminder: this page is from ./include/uapi/linux/media/aml… and it's dated October 2026 β€” so yeah, it's giving time traveler, we love that for us πŸ¦‹

and that's the page, bestie!! mwah πŸ’‹ β€” signed, your fav man page, struct c3_isp_af_zone_stats(9), Kernel API Manual, October 2026 πŸŒˆβœ¨πŸŽ€

πŸ“¦ where this page comes from