def METHOD_NAME(
    ifm_shape,
    channels,
    kernel_shape,
    padding,
    strides,
    dilation,
    activation,
    ifm_layout,
    ofm_layout,
    rounding_mode,
):
    ifm = relay.var("ifm", shape=ifm_shape, dtype="int8")
    depthwise = make_ethosu_depthwise_conv2d(
        ifm,
        channels,
        kernel_shape,
        padding,
        strides,
        dilation,
        activation,
        ifm_layout,
        ofm_layout,
        "int8",
        "uint8",
        rounding_mode,
    )
    func = relay.Function(relay.analysis.free_vars(depthwise), depthwise)
    func = run_opt_pass(func, relay.transform.InferType())
    return func