diff --git a/ethosu/vela/operation.py b/ethosu/vela/operation.py
index f85cb4b..19b00b3 100644
--- a/ethosu/vela/operation.py
+++ b/ethosu/vela/operation.py
@@ -487,7 +487,6 @@
         "read_shapes",
         "rounding_mode",
         "explicit_scaling",
-        "low_precision_scaling",
         "write_offset",
         "write_shape",
         "ifm_resampling_mode",
@@ -525,9 +524,6 @@
         self.rounding_mode: Optional[NpuRoundingMode] = None
         # Rescale op in TOSA supplies explicit multiplier and shift values
         self.explicit_scaling: Optional[ExplicitScaling] = None
-        # The Mean operator (implemented as a depthwise convolution) requires scaling
-        # to be calculated differently in one case. In that case, this is set to True.
-        self.low_precision_scaling = False
         # Write offset, for operations that only produce a part of the OFM
         self.write_offset: Optional[Shape4D] = None
         # The amount of OFM that is produced by the operation (only if write_offset is not None).
@@ -567,7 +563,6 @@
         res.write_shape = Shape4D(*self.write_shape) if self.write_shape else None
         res.rounding_mode = self.rounding_mode
         res.explicit_scaling = self.explicit_scaling
-        res.low_precision_scaling = self.low_precision_scaling
         res.ifm_resampling_mode = self.ifm_resampling_mode
         res.tile_base_offsets_ifm = [_ifm.copy() for _ifm in self.tile_base_offsets_ifm]
         res.tile_base_offsets_ofm = self.tile_base_offsets_ofm.copy()
diff --git a/ethosu/vela/weight_compressor.py b/ethosu/vela/weight_compressor.py
index e56cc5e..ab22e94 100644
--- a/ethosu/vela/weight_compressor.py
+++ b/ethosu/vela/weight_compressor.py
@@ -266,17 +266,11 @@
 
     # Convert scales to np.double (from np.float32) to conform to TensorFlow Lite which
     # uses double during scaling calculations
-    # TensorFlow Lite casts the scales slightly differently for uint8 and int8
+    # TensorFlow Lite casts the scales slightly differently for uint8 and int8 as well as
+    # for FullyConnected operators
     if not rescale_for_faf:
-        if ifm_dtype == DataType.uint8:
-            # for some cases of the Mean operator, the scale must be calculated differently to match reference
-            if first_consumer_op.low_precision_scaling:
-                scales = [
-                    np.double(np.single(ifm_scale) / (np.single(weight_scale) * np.single(ofm_scale)))
-                    for weight_scale in weight_scales
-                ]
-            else:
-                scales = [np.double(ifm_scale * weight_scale) / np.double(ofm_scale) for weight_scale in weight_scales]
+        if ifm_dtype == DataType.uint8 or first_consumer_op.type == Op.FullyConnected:
+            scales = [np.double(ifm_scale * weight_scale) / np.double(ofm_scale) for weight_scale in weight_scales]
         elif ifm_dtype == DataType.int8 or ifm_dtype == DataType.int16:
             scales = [
                 (np.double(ifm_scale) * np.double(weight_scale)) / np.double(ofm_scale)
