COMPMID-556: Fix NEConvolutionLayer for fully connected convolution.

Fixes weights shapes and assembly kernels dispatch parameters in case of
fully connected convolution.

Change-Id: I872c5934aab1d8ea6ef154d843521b5618fa2dcc
Reviewed-on: https://eu-gerrit-1.euhpc.arm.com/113062
Tested-by: BSG Visual Compute Jenkins server to access repositories on http://mpd-gerrit.cambridge.arm.com <bsgcomp@arm.com>
Reviewed-by: Anthony Barbier <anthony.barbier@arm.com>
diff --git a/src/runtime/CL/functions/CLConvolutionLayer.cpp b/src/runtime/CL/functions/CLConvolutionLayer.cpp
index d628bf9..64c31d5 100644
--- a/src/runtime/CL/functions/CLConvolutionLayer.cpp
+++ b/src/runtime/CL/functions/CLConvolutionLayer.cpp
@@ -190,9 +190,17 @@
     // Reshape weights if needed
     if(_are_weights_reshaped)
     {
-        mat_weights_cols                         = weights_info.num_kernels();
-        const unsigned int quarter_reshaped_cols = weights->info()->dimension(0) / 4;
-        mat_weights_rows                         = quarter_reshaped_cols + bias_element;
+        if(_is_fully_connected_convolution || _is_quantized)
+        {
+            mat_weights_cols = weights->info()->dimension(0);
+            mat_weights_rows = weights->info()->dimension(1);
+        }
+        else
+        {
+            mat_weights_cols                         = weights_info.num_kernels();
+            const unsigned int quarter_reshaped_cols = weights->info()->dimension(0) / 4;
+            mat_weights_rows                         = quarter_reshaped_cols + bias_element;
+        }
     }
     else
     {