STRUCT MALI_C55_STATS_BUFFER(9)
π NAME π
ok so <pink>struct mali_c55_stats_buffer</pink> β that's the 3A statistics buffer for the mali-c55 ISP, and yes bestie this is a <purple>Kernel API Manual` page fr fr β¨
πΈ SYNOPSIS πΈ
struct mali_c55_stats_buffer {
struct mali_c55_ae_1024bin_hist ae_1024bin_hist;
struct mali_c55_ae_1024bin_hist iridix_1024bin_hist;
struct mali_c55_ae_5bin_hist ae_5bin_hists[MALI_C55_MAX_ZONES];
__u32 reserved1[14];
struct mali_c55_awb_average_ratios awb_ratios[MALI_C55_MAX_ZONES];
__u32 reserved2[14];
struct mali_c55_af_statistics af_statistics[MALI_C55_MAX_ZONES];
__u32 reserved3[15];
};
π Members π
okay let's meet the cast, they're all main characters here π
ae_1024bin_histβ the 1024-bin pixel intensity histogram, frame-global, the whole picture's vibe check πiridix_1024bin_histβ the 1024-bin histogram after Iridix does its thing, post-block era β¨ae_5bin_histsβ 5-bin pixel intensity histograms for AEC, lil grouped-up baby histograms πreserved1β undefined buffer space, do not perceive it πawb_ratiosβ color balance ratios for Auto White Balance, keeping the whites actually white π¨reserved2β undefined buffer space, again, ignore π«Άaf_statisticsβ pixel intensity statistics for Auto Focus, get that thing in focus πreserved3β undefined buffer space, the final boss of ignoring π
π¦ Description π¦
okay so this struct is describing the metering statistics space inside the Mali-C55 ISP's hardware, and I mean in its entirety β the whole thing, no crumbs left, slay π
the space between each defined area is marked as <yellow>"unknown"</yellow> and heads up: it may not be 0, but you should not be using it. like, not yours, don't touch, periodt π₯
the ae_5bin_hists, awb_ratios and af_statistics members are arrays of statistics per-zone, and those zones are arranged in the array in raster order, starting from the top left corner of the image. top-left first, always, that's the rule π
π SEE ALSO π
Kernel file ./include/uapi/linux/media/arm/mali-c55-config.h β and honestly the whole friend group, go say hi π«Ά:
struct mali_c55_ae_1024bin_hist(9)struct mali_c55_ae_5bin_hist(9)struct mali_c55_awb_average_ratios(9)struct mali_c55_af_statistics(9)enum mali_c55_param_block_type(9)struct mali_c55_params_sensor_off_preshading(9)enum mali_c55_aexp_hist_tap_points(9)enum mali_c55_aexp_skip_x(9)enum mali_c55_aexp_skip_y(9)enum mali_c55_aexp_row_column_offset(9)enum mali_c55_aexp_hist_plane_mode(9)struct mali_c55_params_aexp_hist(9)struct mali_c55_params_aexp_weights(9)struct mali_c55_params_digital_gain(9)enum mali_c55_awb_stats_mode(9)struct mali_c55_params_awb_gains(9)enum mali_c55_params_awb_tap_points(9)struct mali_c55_params_awb_config(9)struct mali_c55_params_mesh_shading_config(9)struct mali_c55_params_mesh_shading_selection(9)struct mali_c55_params_ccm(9)struct mali_c55_params_gamma(9)MALI_C55_PARAMS_MAX_SIZE(9)
that's the whole page bestie, hope the ISP stats are giving everything you needed β¨
source: ./include/uapi/linux/media/arm πΈ version/date: October 2026 π struct mali_...stats_buffer(9) π byeeeee π
π¦ 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