COMPMID-875: Deconvolution 4x4 not working

-Enforces the use of the ConvolutionLayer function in the
DeconvolutionLayer.
-Adds tests for 4x4 Deconvolution.
-Alters the ConvolutionLayer validation to support even kernels.

Change-Id: Id27e285f078e690b8dd58490dd8ea6d875b3cec6
Reviewed-on: https://eu-gerrit-1.euhpc.arm.com/118632
Tested-by: Jenkins <bsgcomp@arm.com>
Reviewed-by: Anthony Barbier <anthony.barbier@arm.com>
diff --git a/tests/datasets/ShapeDatasets.h b/tests/datasets/ShapeDatasets.h
index 9114f51..a5f0863 100644
--- a/tests/datasets/ShapeDatasets.h
+++ b/tests/datasets/ShapeDatasets.h
@@ -270,6 +270,7 @@
     ShapeDataset("Shape1",
     {
         TensorShape{ 1921U, 1U, 2U },
+        TensorShape{ 1921U, 1U, 2U },
         TensorShape{ 641U, 1U, 2U, 3U },
         TensorShape{ 1U, 127U, 25U },
         TensorShape{ 799U, 595U, 1U, 4U }
@@ -345,7 +346,7 @@
     SmallDeconvolutionShapes()
         : ShapeDataset("InputShape",
     {
-        TensorShape{ 4U, 3U, 3U, 2U },
+        TensorShape{ 5U, 4U, 3U, 2U },
                      TensorShape{ 5U, 5U, 3U },
                      TensorShape{ 11U, 13U, 4U, 3U }
     })