1 /* SPDX-License-Identifier: BSD-3-Clause
2 * Copyright(c) 2010-2015 Intel Corporation
5 #ifndef __INCLUDE_PIPELINE_PASSTHROUGH_BE_H__
6 #define __INCLUDE_PIPELINE_PASSTHROUGH_BE_H__
8 #include "pipeline_common_be.h"
10 #define PIPELINE_PASSTHROUGH_DMA_SIZE_MAX 64
12 #ifndef PIPELINE_PASSTHROUGH_SWAP_N_FIELDS_MAX
13 #define PIPELINE_PASSTHROUGH_SWAP_N_FIELDS_MAX 8
16 #ifndef PIPELINE_PASSTHROUGH_SWAP_FIELD_SIZE_MAX
17 #define PIPELINE_PASSTHROUGH_SWAP_FIELD_SIZE_MAX 16
20 struct pipeline_passthrough_params {
22 uint32_t dma_dst_offset;
23 uint32_t dma_src_offset;
24 uint8_t dma_src_mask[PIPELINE_PASSTHROUGH_DMA_SIZE_MAX];
27 uint32_t dma_hash_enabled;
28 uint32_t dma_hash_offset;
30 uint32_t dma_hash_lb_enabled;
32 uint32_t swap_enabled;
33 uint32_t swap_field0_offset[PIPELINE_PASSTHROUGH_SWAP_N_FIELDS_MAX];
34 uint32_t swap_field1_offset[PIPELINE_PASSTHROUGH_SWAP_N_FIELDS_MAX];
35 uint32_t swap_n_fields;
39 pipeline_passthrough_parse_args(struct pipeline_passthrough_params *p,
40 struct pipeline_params *params);
42 extern struct pipeline_be_ops pipeline_passthrough_be_ops;