STRUCT C3_ISP_AF_ZONE_STATS(9)
π 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 toe4_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
- 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