diff --git a/src/ipa/mali-c55/algorithms/agc.cpp b/src/ipa/mali-c55/algorithms/agc.cpp
index 2c747da891..bf9d3f7d4a 100644
--- a/src/ipa/mali-c55/algorithms/agc.cpp
+++ b/src/ipa/mali-c55/algorithms/agc.cpp
@@ -257,9 +257,6 @@ void Agc::process(IPAContext &context,
 	}
 
 	statistics_.parseStatistics(stats);
-	context.activeState.agc.temperatureK = estimateCCT({ { statistics_.rHist.interQuantileMean(0, 1),
-							       statistics_.gHist.interQuantileMean(0, 1),
-							       statistics_.bHist.interQuantileMean(0, 1) } });
 
 	agc_.process(context.configuration.agc, context.activeState.agc, frameContext.agc, {{
 		.traits = AgcTraits(statistics_),
@@ -267,8 +264,6 @@ void Agc::process(IPAContext &context,
 		.exposure = frameContext.sensor.exposure,
 		.gain = frameContext.sensor.gain,
 	}}, metadata);
-
-	metadata.set(controls::ColourTemperature, context.activeState.agc.temperatureK);
 }
 
 REGISTER_IPA_ALGORITHM(Agc, "Agc")
diff --git a/src/ipa/mali-c55/algorithms/lsc.cpp b/src/ipa/mali-c55/algorithms/lsc.cpp
index e65e2a1807..4944f2aae4 100644
--- a/src/ipa/mali-c55/algorithms/lsc.cpp
+++ b/src/ipa/mali-c55/algorithms/lsc.cpp
@@ -180,8 +180,8 @@ std::tuple<uint8_t, uint8_t> Lsc::findBankAndAlpha(uint32_t ct) const
 	return { i, alpha };
 }
 
-void Lsc::prepare(IPAContext &context, [[maybe_unused]] const uint32_t frame,
-		  [[maybe_unused]] IPAFrameContext &frameContext,
+void Lsc::prepare([[maybe_unused]] IPAContext &context, [[maybe_unused]] const uint32_t frame,
+		  IPAFrameContext &frameContext,
 		  MaliC55Params *params)
 {
 	/*
@@ -192,7 +192,7 @@ void Lsc::prepare(IPAContext &context, [[maybe_unused]] const uint32_t frame,
 	 * that table and if we're past the first frame then we can just do
 	 * nothing - the config will never change.
 	 */
-	uint32_t temperatureK = context.activeState.agc.temperatureK;
+	uint32_t temperatureK = frameContext.awb.colourTemperature;
 	uint8_t bank, alpha;
 
 	if (colourTemperatures_.size() == 1) {
diff --git a/src/ipa/mali-c55/ipa_context.h b/src/ipa/mali-c55/ipa_context.h
index 030e0052ad..74585351c7 100644
--- a/src/ipa/mali-c55/ipa_context.h
+++ b/src/ipa/mali-c55/ipa_context.h
@@ -38,10 +38,7 @@ struct IPASessionConfiguration {
 };
 
 struct IPAActiveState {
-	struct Agc : agc::ActiveState {
-		uint32_t temperatureK;
-	} agc;
-
+	ipa::agc::ActiveState agc;
 	ipa::awb::ActiveState awb;
 	ipa::ccm::ActiveState ccm;
 	ipa::gamma::ActiveState gamma;
