@@ -29,17 +29,17 @@  LOG_DEFINE_CATEGORY(RPiCcm)
 
 #define NAME "rpi.ccm"
 
-Matrix::Matrix()
+Matrix3x3::Matrix3x3()
 {
 	memset(m, 0, sizeof(m));
 }
-Matrix::Matrix(double m0, double m1, double m2, double m3, double m4, double m5,
+Matrix3x3::Matrix3x3(double m0, double m1, double m2, double m3, double m4, double m5,
 	       double m6, double m7, double m8)
 {
 	m[0][0] = m0, m[0][1] = m1, m[0][2] = m2, m[1][0] = m3, m[1][1] = m4,
 	m[1][2] = m5, m[2][0] = m6, m[2][1] = m7, m[2][2] = m8;
 }
-int Matrix::read(const libcamera::YamlObject ¶ms)
+int Matrix3x3::read(const libcamera::YamlObject ¶ms)
 {
 	double *ptr = (double *)m;
 
@@ -125,7 +125,7 @@  bool getLocked(Metadata *metadata, std::string const &tag, T &value)
 	return true;
 }
 
-Matrix calculateCcm(std::vector<CtCcm> const &ccms, double ct)
+Matrix3x3 calculateCcm(std::vector<CtCcm> const &ccms, double ct)
 {
 	if (ct <= ccms.front().ct)
 		return ccms.front().ccm;
@@ -141,13 +141,13 @@  Matrix calculateCcm(std::vector<CtCcm> const &ccms, double ct)
 	}
 }
 
-Matrix applySaturation(Matrix const &ccm, double saturation)
+Matrix3x3 applySaturation(Matrix3x3 const &ccm, double saturation)
 {
-	Matrix RGB2Y(0.299, 0.587, 0.114, -0.169, -0.331, 0.500, 0.500, -0.419,
+	Matrix3x3 RGB2Y(0.299, 0.587, 0.114, -0.169, -0.331, 0.500, 0.500, -0.419,
 		     -0.081);
-	Matrix Y2RGB(1.000, 0.000, 1.402, 1.000, -0.345, -0.714, 1.000, 1.771,
+	Matrix3x3 Y2RGB(1.000, 0.000, 1.402, 1.000, -0.345, -0.714, 1.000, 1.771,
 		     0.000);
-	Matrix S(1, 0, 0, 0, saturation, 0, 0, 0, saturation);
+	Matrix3x3 S(1, 0, 0, 0, saturation, 0, 0, 0, saturation);
 	return Y2RGB * S * RGB2Y * ccm;
 }
 
@@ -170,7 +170,7 @@  void Ccm::prepare(Metadata *imageMetadata)
 		LOG(RPiCcm, Warning) << "no colour temperature found";
 	if (!luxOk)
 		LOG(RPiCcm, Warning) << "no lux value found";
-	Matrix ccm = calculateCcm(config_.ccms, awb.temperatureK);
+	Matrix3x3 ccm = calculateCcm(config_.ccms, awb.temperatureK);
 	double saturation = saturation_;
 	struct CcmStatus ccmStatus;
 	ccmStatus.saturation = saturation;
@@ -16,22 +16,22 @@  namespace RPiController {
 
 /* Algorithm to calculate colour matrix. Should be placed after AWB. */
 
-struct Matrix {
-	Matrix(double m0, double m1, double m2, double m3, double m4, double m5,
+struct Matrix3x3 {
+	Matrix3x3(double m0, double m1, double m2, double m3, double m4, double m5,
 	       double m6, double m7, double m8);
-	Matrix();
+	Matrix3x3();
 	double m[3][3];
 	int read(const libcamera::YamlObject ¶ms);
 };
-static inline Matrix operator*(double d, Matrix const &m)
+static inline Matrix3x3 operator*(double d, Matrix3x3 const &m)
 {
-	return Matrix(m.m[0][0] * d, m.m[0][1] * d, m.m[0][2] * d,
+	return Matrix3x3(m.m[0][0] * d, m.m[0][1] * d, m.m[0][2] * d,
 		      m.m[1][0] * d, m.m[1][1] * d, m.m[1][2] * d,
 		      m.m[2][0] * d, m.m[2][1] * d, m.m[2][2] * d);
 }
-static inline Matrix operator*(Matrix const &m1, Matrix const &m2)
+static inline Matrix3x3 operator*(Matrix3x3 const &m1, Matrix3x3 const &m2)
 {
-	Matrix m;
+	Matrix3x3 m;
 	for (int i = 0; i < 3; i++)
 		for (int j = 0; j < 3; j++)
 			m.m[i][j] = m1.m[i][0] * m2.m[0][j] +
@@ -39,9 +39,9 @@  static inline Matrix operator*(Matrix const &m1, Matrix const &m2)
 				    m1.m[i][2] * m2.m[2][j];
 	return m;
 }
-static inline Matrix operator+(Matrix const &m1, Matrix const &m2)
+static inline Matrix3x3 operator+(Matrix3x3 const &m1, Matrix3x3 const &m2)
 {
-	Matrix m;
+	Matrix3x3 m;
 	for (int i = 0; i < 3; i++)
 		for (int j = 0; j < 3; j++)
 			m.m[i][j] = m1.m[i][j] + m2.m[i][j];
@@ -50,7 +50,7 @@  static inline Matrix operator+(Matrix const &m1, Matrix const &m2)
 
 struct CtCcm {
 	double ct;
-	Matrix ccm;
+	Matrix3x3 ccm;
 };
 
 struct CcmConfig {