diff --git a/1.0/HalPolicy.cpp b/1.0/HalPolicy.cpp
index d3c6dba..1375df3 100644
--- a/1.0/HalPolicy.cpp
+++ b/1.0/HalPolicy.cpp
@@ -1084,16 +1084,19 @@
     const armnn::TensorInfo swizzledInputInfo  = armnnUtils::Permuted(inputInfo, NHWCToArmNN);
     const armnn::TensorInfo swizzledOutputInfo = armnnUtils::Permuted(outputInfo, NHWCToArmNN);
 
+    armnn::L2NormalizationDescriptor desc;
+
     if (!IsLayerSupported(__func__,
                           armnn::IsL2NormalizationSupported,
                           data.m_Compute,
                           swizzledInputInfo,
-                          swizzledOutputInfo))
+                          swizzledOutputInfo,
+                          desc))
     {
         return false;
     }
 
-    armnn::IConnectableLayer* layer = data.m_Network->AddL2NormalizationLayer();
+    armnn::IConnectableLayer* layer = data.m_Network->AddL2NormalizationLayer(desc);
     assert(layer != nullptr);
     layer->GetOutputSlot(0).SetTensorInfo(swizzledOutputInfo);
 
@@ -1357,4 +1360,4 @@
 }
 
 } // namespace hal_1_0
-} // namespace armnn_driver
\ No newline at end of file
+} // namespace armnn_driver
