> -----Original Message-----
> From: Zhang, Yuying <yuying.zh...@intel.com>
> Sent: Saturday, August 12, 2023 3:55 PM
> To: dev@dpdk.org; Xing, Beilei <beilei.x...@intel.com>; Zhang, Qi Z
> <qi.z.zh...@intel.com>; Wu, Jingjing <jingjing...@intel.com>
> Cc: Zhang, Yuying <yuying.zh...@intel.com>
> Subject: [PATCH v1 4/5] net/cpfl: add fxp rule module
> 
> Added low level fxp module for rule packing / creation / destroying.
> 
> Signed-off-by: Yuying Zhang <yuying.zh...@intel.com>
> ---
>  drivers/net/cpfl/cpfl_ethdev.h   |   4 +
>  drivers/net/cpfl/cpfl_fxp_rule.c | 288 +++++++++++++++++++++++++++++++
> drivers/net/cpfl/cpfl_fxp_rule.h |  87 ++++++++++
>  drivers/net/cpfl/meson.build     |   1 +
>  4 files changed, 380 insertions(+)
>  create mode 100644 drivers/net/cpfl/cpfl_fxp_rule.c  create mode 100644
> drivers/net/cpfl/cpfl_fxp_rule.h
> 
> diff --git a/drivers/net/cpfl/cpfl_ethdev.h b/drivers/net/cpfl/cpfl_ethdev.h
> index c71f16ac60..63bcc5551f 100644

<...>
> +struct cpfl_lem_rule_info {
> +     uint16_t prof_id;
> +     uint8_t key[CPFL_MAX_KEY_LEN];
> +     uint8_t key_byte_len;
> +     uint8_t pin_to_cache;
> +     uint8_t fixed_fetch;
> +};

Remove LEM related structures and members below.
 
> +#define CPFL_MAX_MOD_CONTENT_LEN 256
> +struct cpfl_mod_rule_info {
> +     uint8_t mod_content[CPFL_MAX_MOD_CONTENT_LEN];
> +     uint8_t mod_content_byte_len;
> +     uint32_t mod_index;
> +     uint8_t pin_mod_content;
> +     uint8_t mod_obj_size;
> +};
> +
> +enum cpfl_rule_type {
> +     CPFL_RULE_TYPE_NONE,
> +     CPFL_RULE_TYPE_SEM,
> +     CPFL_RULE_TYPE_LEM,
> +     CPFL_RULE_TYPE_MOD
> +};
> +
> +struct cpfl_rule_info {
> +     enum cpfl_rule_type type;
> +     uint64_t cookie;
> +     uint8_t host_id;
> +     uint8_t port_num;
> +     uint8_t resp_req;
> +     /* TODO: change this to be dynamically allocated/reallocated */
> +     uint8_t act_bytes[CPFL_MAX_RULE_ACTIONS * sizeof(union
> cpfl_action_set)];
> +     uint8_t act_byte_len;
> +     /* vsi is used for lem and lpm rules */
> +     uint16_t vsi;
> +     uint8_t clear_mirror_1st_state;
> +     /* mod related fields */
> +     union {
> +             struct cpfl_mod_rule_info mod;
> +             struct cpfl_sem_rule_info sem;
> +             struct cpfl_lem_rule_info lem;
> +     };
> +};
> +
> +struct cpfl_meter_action_info {
> +     uint8_t meter_logic_bank_id;
> +     uint32_t meter_logic_idx;
> +     uint8_t prof_id;
> +     uint8_t slot;
> +};

Remove meter lated.


Reply via email to