diff --git a/arm_compute/runtime/CL/functions/CLConvolutionLayer.h b/arm_compute/runtime/CL/functions/CLConvolutionLayer.h
index 6a40396..8030b40 100644
--- a/arm_compute/runtime/CL/functions/CLConvolutionLayer.h
+++ b/arm_compute/runtime/CL/functions/CLConvolutionLayer.h
@@ -53,7 +53,7 @@
     CLConvolutionLayerReshapeWeights();
     /** Set the input and output tensors.
      *
-     * @param[in]  weights      Weights tensor. Weights are 4D tensor with dimensions [kernel_x, kernel_y, IFM, OFM]. Data type supported: F32.
+     * @param[in]  weights      Weights tensor. Weights are 4D tensor with dimensions [kernel_x, kernel_y, IFM, OFM]. Data type supported: QS8/F16/F32.
      * @param[in]  biases       Biases tensor. Shared biases supported. Biases are 1D tensor with dimensions [OFM]. Data type supported: Same as @p weights.
      * @param[out] output       Destination tensor. Data types supported: Same as @p weights.
      * @param[in]  transpose1xW True if the weights are to undergo a 1xW transposition after reshaping (in case of GEMM operation), false otherwise.
@@ -64,16 +64,16 @@
     void run() override;
 
 private:
-    CLConvolutionLayerWeightsReshapeKernel _weights_reshape_kernel;
-    CLGEMMTranspose1xWKernel               _weights_transposed_kernel;
-    CLTensor                               _weights_reshaped;
-    bool                                   _transpose1xW;
+    CLWeightsReshapeKernel   _weights_reshape_kernel;
+    CLGEMMTranspose1xWKernel _weights_transposed_kernel;
+    CLTensor                 _weights_reshaped;
+    bool                     _transpose1xW;
 };
 
 /** Basic function to compute the convolution layer. This function calls the following OpenCL kernels:
  *
- * -# @ref CLConvolutionLayerWeightsReshapeKernel (executed only once for each configuration)
- * -# @ref CLGEMMTranspose1xWKernel               (executed only once for each configuration)
+ * -# @ref CLWeightsReshapeKernel (executed only once for each configuration)
+ * -# @ref CLGEMMTranspose1xWKernel (executed only once for each configuration)
  * -# @ref CLIm2ColKernel
  * -# @ref CLGEMMInterleave4x4Kernel
  * -# @ref CLGEMMMatrixMultiplyKernel
diff --git a/arm_compute/runtime/CL/functions/CLLocallyConnectedLayer.h b/arm_compute/runtime/CL/functions/CLLocallyConnectedLayer.h
index b4e4691..5f4f1ba 100644
--- a/arm_compute/runtime/CL/functions/CLLocallyConnectedLayer.h
+++ b/arm_compute/runtime/CL/functions/CLLocallyConnectedLayer.h
@@ -39,7 +39,7 @@
 
 /** Basic function to compute the locally connected layer. This function calls the following OpenCL kernels:
  *
- * -# @ref CLLocallyConnectedLayerWeightsReshapeKernel (executed only once for each configuration)
+ * -# @ref CLWeightsReshapeKernel (executed only once for each configuration)
  * -# @ref CLIm2ColKernel
  * -# @ref CLLocallyConnectedMatrixMultiplyKernel
  * -# @ref CLCol2ImKernel
@@ -66,14 +66,14 @@
     void run() override;
 
 private:
-    CLIm2ColKernel                              _input_im2col_kernel;
-    CLLocallyConnectedLayerWeightsReshapeKernel _weights_reshape_kernel;
-    CLLocallyConnectedMatrixMultiplyKernel      _mm_kernel;
-    CLCol2ImKernel                              _output_col2im_kernel;
-    CLTensor                                    _input_im2col_reshaped;
-    CLTensor                                    _weights_reshaped;
-    CLTensor                                    _gemm_output;
-    bool                                        _is_first_run;
+    CLIm2ColKernel                         _input_im2col_kernel;
+    CLWeightsReshapeKernel                 _weights_reshape_kernel;
+    CLLocallyConnectedMatrixMultiplyKernel _mm_kernel;
+    CLCol2ImKernel                         _output_col2im_kernel;
+    CLTensor                               _input_im2col_reshaped;
+    CLTensor                               _weights_reshaped;
+    CLTensor                               _gemm_output;
+    bool                                   _is_first_run;
 };
 }
 #endif /* __ARM_COMPUTE_CLLOCALLYCONNECTEDLAYER_H__ */
