STRUCT MALI_C55_PARAMS_CCM(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

okay bestie, this is the struct mali_c55_params_ccm(9) page from the Kernel API Manual πŸ’– it's all about the colour correction matrix and how to feed it coefficients, offsets, and gains. no cap, it's giving very β€œmath but make it fashion” πŸ’…

✨ NAME ✨

struct mali_c55_params_ccm β€” Coefficients, offsets and gains for the colour correction matrix. periodt. πŸŽ€


πŸ¦‹ SYNOPSIS πŸ¦‹

struct mali_c55_params_ccm {
    struct v4l2_isp_params_block_header header;
    __u16 coeffs[3][3];
    __u16 gains[3];
    __u16 offs[3];
};

🫢 Members 🫢

  • header β€” The Mali-C55 parameters block header. it's the little name tag at the top of the block, bestie 🏷️
  • coeffs β€” 3x3 color conversion matrix coefficients in sign/magnitude Q4.8 format. the main character matrix, honestly πŸ‘‘
  • gains β€” Gains for red, green and blue channels in unsigned Q4.8 format. one for each RGB bestie, slay 🌈
  • offs β€” Offsets for red, green and blue channels. yes, all three channels get their own little offset πŸ’…

πŸ’œ Description πŸ’œ

The colour correction module converts image data from a sensor-specific colour space to a known one. lowkey iconic of it ✨

Colour correction is applied after demosaicing, and each pixel is represented as a column vector of the three RGB colour channels on which the following operations take place:

  1. An offset is subtracted from each colour channel.
  2. Each colour channel is multiplied by a gain.
  3. The pixel column vector is multiplied by the colour correction matrix.

This struct allows users to configure the coefficients for CCM and the per-channel offsets and gains. The nine matrix coefficients are expressed as 13 bits signed Q4.8 Sign/Magnitude fixed-point numbers, the three gain multipliers are expressed as 12 bits unsigned Q4.8 fixed-point numbers, and the three offsets are expressed as 12 bits unsigned integers. numbers everywhere, but make it cute 🧚

header.type should be set to MALI_C55_PARAM_BLOCK_CCM from :c:type:`mali_c55_param_block_type` . no cap, that type-check vibe matters πŸ’€


🌸 SEE ALSO 🌸

Kernel file: ./include/uapi/linux/media/arm/mali-c55-config.h

  • 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)
  • struct mali_c55_stats_buffer(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_gamma(9)
  • MALI_C55_PARAMS_MAX_SIZE(9)

source/version: ./include/uapi/linux/media/arm Β· date: October 2026 Β· page: struct mali_c55_params_ccm(9) β€” bye bestie, go correct those colours πŸŒˆπŸ’–

πŸ“¦ where this page comes from