blob: 189cb7b24da2a28e2d5d150e24fa4b92e4de9730 [file] [log] [blame]
/*
* Copyright (c) 2016-2017, The Linux Foundation. All rights reserved.
* Permission to use, copy, modify, and/or distribute this software for
* any purpose with or without fee is hereby granted, provided that the
* above copyright notice and this permission notice appear in all copies.
* THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
* WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
* MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
* ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
* WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
* ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT
* OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
*/
/**
* @defgroup
* @{
*/
#ifndef HPPE_RSS_REG_H
#define HPPE_RSS_REG_H
/*[register] RSS_HASH_MASK_REG*/
#define RSS_HASH_MASK_REG
#define RSS_HASH_MASK_REG_ADDRESS 0x4318
#define RSS_HASH_MASK_REG_NUM 1
#define RSS_HASH_MASK_REG_INC 0x4
#define RSS_HASH_MASK_REG_TYPE REG_TYPE_RW
#define RSS_HASH_MASK_REG_DEFAULT 0x0
/*[field] MASK*/
#define RSS_HASH_MASK_REG_MASK
#define RSS_HASH_MASK_REG_MASK_OFFSET 0
#define RSS_HASH_MASK_REG_MASK_LEN 21
#define RSS_HASH_MASK_REG_MASK_DEFAULT 0x0
/*[field] FRAGMENT*/
#define RSS_HASH_MASK_REG_FRAGMENT
#define RSS_HASH_MASK_REG_FRAGMENT_OFFSET 28
#define RSS_HASH_MASK_REG_FRAGMENT_LEN 1
#define RSS_HASH_MASK_REG_FRAGMENT_DEFAULT 0x0
struct rss_hash_mask_reg {
a_uint32_t mask:21;
a_uint32_t _reserved0:7;
a_uint32_t fragment:1;
a_uint32_t _reserved1:3;
};
union rss_hash_mask_reg_u {
a_uint32_t val;
struct rss_hash_mask_reg bf;
};
/*[register] RSS_HASH_SEED_REG*/
#define RSS_HASH_SEED_REG
#define RSS_HASH_SEED_REG_ADDRESS 0x431c
#define RSS_HASH_SEED_REG_NUM 1
#define RSS_HASH_SEED_REG_INC 0x4
#define RSS_HASH_SEED_REG_TYPE REG_TYPE_RW
#define RSS_HASH_SEED_REG_DEFAULT 0x0
/*[field] SEED*/
#define RSS_HASH_SEED_REG_SEED
#define RSS_HASH_SEED_REG_SEED_OFFSET 0
#define RSS_HASH_SEED_REG_SEED_LEN 32
#define RSS_HASH_SEED_REG_SEED_DEFAULT 0x0
struct rss_hash_seed_reg {
a_uint32_t seed:32;
};
union rss_hash_seed_reg_u {
a_uint32_t val;
struct rss_hash_seed_reg bf;
};
/*[register] RSS_HASH_MIX_REG*/
#define RSS_HASH_MIX_REG
#define RSS_HASH_MIX_REG_ADDRESS 0x4320
#define RSS_HASH_MIX_REG_NUM 11
#define RSS_HASH_MIX_REG_INC 0x4
#define RSS_HASH_MIX_REG_TYPE REG_TYPE_RW
#define RSS_HASH_MIX_REG_DEFAULT 0x0
/*[field] HASH_MIX*/
#define RSS_HASH_MIX_REG_HASH_MIX
#define RSS_HASH_MIX_REG_HASH_MIX_OFFSET 0
#define RSS_HASH_MIX_REG_HASH_MIX_LEN 5
#define RSS_HASH_MIX_REG_HASH_MIX_DEFAULT 0x0
struct rss_hash_mix_reg {
a_uint32_t hash_mix:5;
a_uint32_t _reserved0:27;
};
union rss_hash_mix_reg_u {
a_uint32_t val;
struct rss_hash_mix_reg bf;
};
/*[register] RSS_HASH_FIN_REG*/
#define RSS_HASH_FIN_REG
#define RSS_HASH_FIN_REG_ADDRESS 0x4350
#define RSS_HASH_FIN_REG_NUM 5
#define RSS_HASH_FIN_REG_INC 0x4
#define RSS_HASH_FIN_REG_TYPE REG_TYPE_RW
#define RSS_HASH_FIN_REG_DEFAULT 0x0
/*[field] FIN_INNER*/
#define RSS_HASH_FIN_REG_FIN_INNER
#define RSS_HASH_FIN_REG_FIN_INNER_OFFSET 0
#define RSS_HASH_FIN_REG_FIN_INNER_LEN 5
#define RSS_HASH_FIN_REG_FIN_INNER_DEFAULT 0x0
/*[field] FIN_OUTER*/
#define RSS_HASH_FIN_REG_FIN_OUTER
#define RSS_HASH_FIN_REG_FIN_OUTER_OFFSET 5
#define RSS_HASH_FIN_REG_FIN_OUTER_LEN 5
#define RSS_HASH_FIN_REG_FIN_OUTER_DEFAULT 0x0
struct rss_hash_fin_reg {
a_uint32_t fin_inner:5;
a_uint32_t fin_outer:5;
a_uint32_t _reserved0:22;
};
union rss_hash_fin_reg_u {
a_uint32_t val;
struct rss_hash_fin_reg bf;
};
/*[register] RSS_HASH_MASK_IPV4_REG*/
#define RSS_HASH_MASK_IPV4_REG
#define RSS_HASH_MASK_IPV4_REG_ADDRESS 0x4380
#define RSS_HASH_MASK_IPV4_REG_NUM 1
#define RSS_HASH_MASK_IPV4_REG_INC 0x4
#define RSS_HASH_MASK_IPV4_REG_TYPE REG_TYPE_RW
#define RSS_HASH_MASK_IPV4_REG_DEFAULT 0x0
/*[field] MASK*/
#define RSS_HASH_MASK_IPV4_REG_MASK
#define RSS_HASH_MASK_IPV4_REG_MASK_OFFSET 0
#define RSS_HASH_MASK_IPV4_REG_MASK_LEN 21
#define RSS_HASH_MASK_IPV4_REG_MASK_DEFAULT 0x0
/*[field] FRAGMENT*/
#define RSS_HASH_MASK_IPV4_REG_FRAGMENT
#define RSS_HASH_MASK_IPV4_REG_FRAGMENT_OFFSET 28
#define RSS_HASH_MASK_IPV4_REG_FRAGMENT_LEN 1
#define RSS_HASH_MASK_IPV4_REG_FRAGMENT_DEFAULT 0x0
struct rss_hash_mask_ipv4_reg {
a_uint32_t mask:21;
a_uint32_t _reserved0:7;
a_uint32_t fragment:1;
a_uint32_t _reserved1:3;
};
union rss_hash_mask_ipv4_reg_u {
a_uint32_t val;
struct rss_hash_mask_ipv4_reg bf;
};
/*[register] RSS_HASH_SEED_IPV4_REG*/
#define RSS_HASH_SEED_IPV4_REG
#define RSS_HASH_SEED_IPV4_REG_ADDRESS 0x4384
#define RSS_HASH_SEED_IPV4_REG_NUM 1
#define RSS_HASH_SEED_IPV4_REG_INC 0x4
#define RSS_HASH_SEED_IPV4_REG_TYPE REG_TYPE_RW
#define RSS_HASH_SEED_IPV4_REG_DEFAULT 0x0
/*[field] SEED*/
#define RSS_HASH_SEED_IPV4_REG_SEED
#define RSS_HASH_SEED_IPV4_REG_SEED_OFFSET 0
#define RSS_HASH_SEED_IPV4_REG_SEED_LEN 32
#define RSS_HASH_SEED_IPV4_REG_SEED_DEFAULT 0x0
struct rss_hash_seed_ipv4_reg {
a_uint32_t seed:32;
};
union rss_hash_seed_ipv4_reg_u {
a_uint32_t val;
struct rss_hash_seed_ipv4_reg bf;
};
/*[register] RSS_HASH_MIX_IPV4_REG*/
#define RSS_HASH_MIX_IPV4_REG
#define RSS_HASH_MIX_IPV4_REG_ADDRESS 0x4390
#define RSS_HASH_MIX_IPV4_REG_NUM 5
#define RSS_HASH_MIX_IPV4_REG_INC 0x4
#define RSS_HASH_MIX_IPV4_REG_TYPE REG_TYPE_RW
#define RSS_HASH_MIX_IPV4_REG_DEFAULT 0x0
/*[field] HASH_MIX*/
#define RSS_HASH_MIX_IPV4_REG_HASH_MIX
#define RSS_HASH_MIX_IPV4_REG_HASH_MIX_OFFSET 0
#define RSS_HASH_MIX_IPV4_REG_HASH_MIX_LEN 5
#define RSS_HASH_MIX_IPV4_REG_HASH_MIX_DEFAULT 0x0
struct rss_hash_mix_ipv4_reg {
a_uint32_t hash_mix:5;
a_uint32_t _reserved0:27;
};
union rss_hash_mix_ipv4_reg_u {
a_uint32_t val;
struct rss_hash_mix_ipv4_reg bf;
};
/*[register] RSS_HASH_FIN_IPV4_REG*/
#define RSS_HASH_FIN_IPV4_REG
#define RSS_HASH_FIN_IPV4_REG_ADDRESS 0x43b0
#define RSS_HASH_FIN_IPV4_REG_NUM 5
#define RSS_HASH_FIN_IPV4_REG_INC 0x4
#define RSS_HASH_FIN_IPV4_REG_TYPE REG_TYPE_RW
#define RSS_HASH_FIN_IPV4_REG_DEFAULT 0x0
/*[field] FIN_INNER*/
#define RSS_HASH_FIN_IPV4_REG_FIN_INNER
#define RSS_HASH_FIN_IPV4_REG_FIN_INNER_OFFSET 0
#define RSS_HASH_FIN_IPV4_REG_FIN_INNER_LEN 5
#define RSS_HASH_FIN_IPV4_REG_FIN_INNER_DEFAULT 0x0
/*[field] FIN_OUTER*/
#define RSS_HASH_FIN_IPV4_REG_FIN_OUTER
#define RSS_HASH_FIN_IPV4_REG_FIN_OUTER_OFFSET 5
#define RSS_HASH_FIN_IPV4_REG_FIN_OUTER_LEN 5
#define RSS_HASH_FIN_IPV4_REG_FIN_OUTER_DEFAULT 0x0
struct rss_hash_fin_ipv4_reg {
a_uint32_t fin_inner:5;
a_uint32_t fin_outer:5;
a_uint32_t _reserved0:22;
};
union rss_hash_fin_ipv4_reg_u {
a_uint32_t val;
struct rss_hash_fin_ipv4_reg bf;
};
#endif