message: Added reference kernel fallback for depthwise_conv
  I added the reference kernel fallback for the depthwise_conv EvalQuantizedPerChannel routine
diff: @@ -138,7 +138,6 @@ TfLiteStatus EvalQuantizedPerChannel(TfLiteContext* context, TfLiteNode* node,
  const TfLiteTensor* filter,
  const TfLiteTensor* bias,
  TfLiteTensor* output) {
  -#if defined(ARM_MATH_DSP) && defined(ARM_MATH_LOOPUNROLL)
  DepthwiseParams op_params;
  op_params.padding_type = PaddingType::kSame;
  op_params.padding_values.width = data->padding.width;
  @@ -154,6 +153,8 @@ TfLiteStatus EvalQuantizedPerChannel(TfLiteContext* context, TfLiteNode* node,
  // TODO(b/130439627): Use calculated value for clamping.
  op_params.quantized_activation_min = std::numeric_limits<int8_t>::min();
  op_params.quantized_activation_max = std::numeric_limits<int8_t>::max();
  +
  +#if defined(ARM_MATH_DSP) && defined(ARM_MATH_LOOPUNROLL)
  RuntimeShape filter_shape = GetTensorShape(filter);
  const int filter_height = filter_shape.Dims(1);
  const int filter_width = filter_shape.Dims(2);
  @@ -206,7 +207,15 @@ TfLiteStatus EvalQuantizedPerChannel(TfLiteContext* context, TfLiteNode* node,
  ARM_MATH_SUCCESS);
  }
  #else
  -#error ARM_MATH_DSP and ARM_MATH_LOOPUNROLL must be set
  +
  + reference_integer_ops::DepthwiseConvPerChannel(
  + op_params, data->per_channel_output_multiplier,
  + data->per_channel_output_shift, GetTensorShape(input),
  + GetTensorData<int8>(input), GetTensorShape(filter),
  + GetTensorData<int8>(filter), GetTensorShape(bias),
  + GetTensorData<int32>(bias), GetTensorShape(output),
  + GetTensorData<int8>(output));
  +
  #endif
  return kTfLiteOk;
  }
  