From: Mohsin Bashir <mohsin.bashr@gmail.com>
To: "illusion.wang" <illusion.wang@nebula-matrix.com>,
dimon.zhao@nebula-matrix.com, alvin.wang@nebula-matrix.com,
sam.chen@nebula-matrix.com, netdev@vger.kernel.org
Cc: andrew+netdev@lunn.ch, corbet@lwn.net, kuba@kernel.org,
linux-doc@vger.kernel.org, lorenzo@kernel.org, pabeni@redhat.com,
horms@kernel.org, vadim.fedorenko@linux.dev,
lukas.bulwahn@redhat.com, edumazet@google.com,
enelsonmoore@gmail.com, skhan@linuxfoundation.org,
hkallweit1@gmail.com, jani.nikula@intel.com,
open list <linux-kernel@vger.kernel.org>
Subject: Re: [PATCH v10 net-next 04/11] net/nebula-matrix: channel msg value and msg struct
Date: Thu, 2 Apr 2026 02:03:03 -0700 [thread overview]
Message-ID: <0b0eb2e1-7aec-4913-8062-b3eff786a1ae@gmail.com> (raw)
In-Reply-To: <20260401022318.28550-5-illusion.wang@nebula-matrix.com>
On 3/31/26 7:23 PM, illusion.wang wrote:
> For compatibility, the msg id value is fixed, and each msg struct can
> only have fields added (not removed), new fields must be appended
>
> Signed-off-by: illusion.wang <illusion.wang@nebula-matrix.com>
> ---
> .../nbl/nbl_include/nbl_def_channel.h | 249 ++++++++++++++++++
> 1 file changed, 249 insertions(+)
>
> diff --git a/drivers/net/ethernet/nebula-matrix/nbl/nbl_include/nbl_def_channel.h b/drivers/net/ethernet/nebula-matrix/nbl/nbl_include/nbl_def_channel.h
> index ff03a53b9f5d..99e1d8455e0e 100644
> --- a/drivers/net/ethernet/nebula-matrix/nbl/nbl_include/nbl_def_channel.h
> +++ b/drivers/net/ethernet/nebula-matrix/nbl/nbl_include/nbl_def_channel.h
> @@ -8,6 +8,255 @@
>
> struct nbl_channel_mgt;
> struct nbl_adapter;
> +enum nbl_chan_msg_type {
> + NBL_CHAN_MSG_ACK,
> + NBL_CHAN_MSG_ADD_MACVLAN,
> + NBL_CHAN_MSG_DEL_MACVLAN,
> + NBL_CHAN_MSG_ADD_MULTI_RULE,
> + NBL_CHAN_MSG_DEL_MULTI_RULE,
> + NBL_CHAN_MSG_SETUP_MULTI_GROUP,
> + NBL_CHAN_MSG_REMOVE_MULTI_GROUP,
> + NBL_CHAN_MSG_REGISTER_NET,
> + NBL_CHAN_MSG_UNREGISTER_NET,
> + NBL_CHAN_MSG_ALLOC_TXRX_QUEUES,
> + NBL_CHAN_MSG_FREE_TXRX_QUEUES,
> + NBL_CHAN_MSG_SETUP_QUEUE,
> + NBL_CHAN_MSG_REMOVE_ALL_QUEUES,
> + NBL_CHAN_MSG_CFG_DSCH,
> + NBL_CHAN_MSG_SETUP_CQS,
> + NBL_CHAN_MSG_REMOVE_CQS,
> + NBL_CHAN_MSG_CFG_QDISC_MQPRIO,
> + NBL_CHAN_MSG_CONFIGURE_MSIX_MAP,
> + NBL_CHAN_MSG_DESTROY_MSIX_MAP,
> + NBL_CHAN_MSG_MAILBOX_ENABLE_IRQ,
> + NBL_CHAN_MSG_GET_GLOBAL_VECTOR,
> + NBL_CHAN_MSG_GET_VSI_ID,
> + NBL_CHAN_MSG_SET_PROSISC_MODE,
> + NBL_CHAN_MSG_GET_FIRMWARE_VERSION,
> + NBL_CHAN_MSG_GET_QUEUE_ERR_STATS,
> + NBL_CHAN_MSG_GET_COALESCE,
> + NBL_CHAN_MSG_SET_COALESCE,
> + NBL_CHAN_MSG_SET_SPOOF_CHECK_ADDR,
> + NBL_CHAN_MSG_SET_VF_SPOOF_CHECK,
> + NBL_CHAN_MSG_GET_RXFH_INDIR_SIZE,
> + NBL_CHAN_MSG_GET_RXFH_INDIR,
> + NBL_CHAN_MSG_GET_RXFH_RSS_KEY,
> + NBL_CHAN_MSG_GET_RXFH_RSS_ALG_SEL,
> + NBL_CHAN_MSG_GET_HW_CAPS,
> + NBL_CHAN_MSG_GET_HW_STATE,
> + NBL_CHAN_MSG_REGISTER_RDMA,
> + NBL_CHAN_MSG_UNREGISTER_RDMA,
> + NBL_CHAN_MSG_GET_REAL_HW_ADDR,
> + NBL_CHAN_MSG_GET_REAL_BDF,
> + NBL_CHAN_MSG_GRC_PROCESS,
> + NBL_CHAN_MSG_SET_SFP_STATE,
> + NBL_CHAN_MSG_SET_ETH_LOOPBACK,
> + NBL_CHAN_MSG_CHECK_ACTIVE_VF,
> + NBL_CHAN_MSG_GET_PRODUCT_FLEX_CAP,
> + NBL_CHAN_MSG_ALLOC_KTLS_TX_INDEX,
> + NBL_CHAN_MSG_FREE_KTLS_TX_INDEX,
> + NBL_CHAN_MSG_CFG_KTLS_TX_KEYMAT,
> + NBL_CHAN_MSG_ALLOC_KTLS_RX_INDEX,
> + NBL_CHAN_MSG_FREE_KTLS_RX_INDEX,
> + NBL_CHAN_MSG_CFG_KTLS_RX_KEYMAT,
> + NBL_CHAN_MSG_CFG_KTLS_RX_RECORD,
> + NBL_CHAN_MSG_ADD_KTLS_RX_FLOW,
> + NBL_CHAN_MSG_DEL_KTLS_RX_FLOW,
> + NBL_CHAN_MSG_ALLOC_IPSEC_TX_INDEX,
> + NBL_CHAN_MSG_FREE_IPSEC_TX_INDEX,
> + NBL_CHAN_MSG_ALLOC_IPSEC_RX_INDEX,
> + NBL_CHAN_MSG_FREE_IPSEC_RX_INDEX,
> + NBL_CHAN_MSG_CFG_IPSEC_TX_SAD,
> + NBL_CHAN_MSG_CFG_IPSEC_RX_SAD,
> + NBL_CHAN_MSG_ADD_IPSEC_TX_FLOW,
> + NBL_CHAN_MSG_DEL_IPSEC_TX_FLOW,
> + NBL_CHAN_MSG_ADD_IPSEC_RX_FLOW,
> + NBL_CHAN_MSG_DEL_IPSEC_RX_FLOW,
> + NBL_CHAN_MSG_NOTIFY_IPSEC_HARD_EXPIRE,
> + NBL_CHAN_MSG_GET_MBX_IRQ_NUM,
> + NBL_CHAN_MSG_CLEAR_FLOW,
> + NBL_CHAN_MSG_CLEAR_QUEUE,
> + NBL_CHAN_MSG_GET_ETH_ID,
> + NBL_CHAN_MSG_SET_OFFLOAD_STATUS,
> + NBL_CHAN_MSG_INIT_OFLD,
> + NBL_CHAN_MSG_INIT_CMDQ,
> + NBL_CHAN_MSG_DESTROY_CMDQ,
> + NBL_CHAN_MSG_RESET_CMDQ,
> + NBL_CHAN_MSG_INIT_FLOW,
> + NBL_CHAN_MSG_DEINIT_FLOW,
> + NBL_CHAN_MSG_OFFLOAD_FLOW_RULE,
> + NBL_CHAN_MSG_GET_ACL_SWITCH,
> + NBL_CHAN_MSG_GET_VSI_GLOBAL_QUEUE_ID,
> + NBL_CHAN_MSG_INIT_REP,
> + NBL_CHAN_MSG_GET_LINE_RATE_INFO,
> + NBL_CHAN_MSG_REGISTER_NET_REP,
> + NBL_CHAN_MSG_UNREGISTER_NET_REP,
> + NBL_CHAN_MSG_REGISTER_ETH_REP,
> + NBL_CHAN_MSG_UNREGISTER_ETH_REP,
> + NBL_CHAN_MSG_REGISTER_UPCALL_PORT,
> + NBL_CHAN_MSG_UNREGISTER_UPCALL_PORT,
> + NBL_CHAN_MSG_GET_PORT_STATE,
> + NBL_CHAN_MSG_SET_PORT_ADVERTISING,
> + NBL_CHAN_MSG_GET_MODULE_INFO,
> + NBL_CHAN_MSG_GET_MODULE_EEPROM,
> + NBL_CHAN_MSG_GET_LINK_STATE,
> + NBL_CHAN_MSG_NOTIFY_LINK_STATE,
> + NBL_CHAN_MSG_GET_QUEUE_CXT,
> + NBL_CHAN_MSG_CFG_LOG,
> + NBL_CHAN_MSG_INIT_VDPAQ,
> + NBL_CHAN_MSG_DESTROY_VDPAQ,
> + NBL_CHAN_MSG_GET_UPCALL_PORT,
> + NBL_CHAN_MSG_NOTIFY_ETH_REP_LINK_STATE,
> + NBL_CHAN_MSG_SET_ETH_MAC_ADDR,
> + NBL_CHAN_MSG_GET_FUNCTION_ID,
> + NBL_CHAN_MSG_GET_CHIP_TEMPERATURE,
> + NBL_CHAN_MSG_DISABLE_HW_FLOW,
> + NBL_CHAN_MSG_ENABLE_HW_FLOW,
> + NBL_CHAN_MSG_SET_UPCALL_RULE,
> + NBL_CHAN_MSG_UNSET_UPCALL_RULE,
> + NBL_CHAN_MSG_GET_REG_DUMP,
> + NBL_CHAN_MSG_GET_REG_DUMP_LEN,
> + NBL_CHAN_MSG_CFG_LAG_HASH_ALGORITHM,
> + NBL_CHAN_MSG_CFG_LAG_MEMBER_FWD,
> + NBL_CHAN_MSG_CFG_LAG_MEMBER_LIST,
> + NBL_CHAN_MSG_CFG_LAG_MEMBER_UP_ATTR,
> + NBL_CHAN_MSG_ADD_LAG_FLOW,
> + NBL_CHAN_MSG_DEL_LAG_FLOW,
> + NBL_CHAN_MSG_SWITCHDEV_INIT_CMDQ,
> + NBL_CHAN_MSG_SWITCHDEV_DEINIT_CMDQ,
> + NBL_CHAN_MSG_SET_TC_FLOW_INFO,
> + NBL_CHAN_MSG_UNSET_TC_FLOW_INFO,
> + NBL_CHAN_MSG_INIT_ACL,
> + NBL_CHAN_MSG_UNINIT_ACL,
> + NBL_CHAN_MSG_CFG_LAG_MCC,
> + NBL_CHAN_MSG_REGISTER_VSI2Q,
> + NBL_CHAN_MSG_SETUP_Q2VSI,
> + NBL_CHAN_MSG_REMOVE_Q2VSI,
> + NBL_CHAN_MSG_SETUP_RSS,
> + NBL_CHAN_MSG_REMOVE_RSS,
> + NBL_CHAN_MSG_GET_REP_QUEUE_INFO,
> + NBL_CHAN_MSG_CTRL_PORT_LED,
> + NBL_CHAN_MSG_NWAY_RESET,
> + NBL_CHAN_MSG_SET_INTL_SUPPRESS_LEVEL,
> + NBL_CHAN_MSG_GET_ETH_STATS,
> + NBL_CHAN_MSG_GET_MODULE_TEMPERATURE,
> + NBL_CHAN_MSG_GET_BOARD_INFO,
> + NBL_CHAN_MSG_GET_P4_USED,
> + NBL_CHAN_MSG_GET_VF_BASE_VSI_ID,
> + NBL_CHAN_MSG_ADD_LLDP_FLOW,
> + NBL_CHAN_MSG_DEL_LLDP_FLOW,
> + NBL_CHAN_MSG_CFG_ETH_BOND_INFO,
> + NBL_CHAN_MSG_CFG_DUPPKT_MCC,
> + NBL_CHAN_MSG_ADD_ND_UPCALL_FLOW,
> + NBL_CHAN_MSG_DEL_ND_UPCALL_FLOW,
> + NBL_CHAN_MSG_GET_BOARD_ID,
> + NBL_CHAN_MSG_SET_SHAPING_DPORT_VLD,
> + NBL_CHAN_MSG_SET_DPORT_FC_TH_VLD,
> + NBL_CHAN_MSG_REGISTER_RDMA_BOND,
> + NBL_CHAN_MSG_UNREGISTER_RDMA_BOND,
> + NBL_CHAN_MSG_RESTORE_NETDEV_QUEUE,
> + NBL_CHAN_MSG_RESTART_NETDEV_QUEUE,
> + NBL_CHAN_MSG_RESTORE_HW_QUEUE,
> + NBL_CHAN_MSG_KEEP_ALIVE,
> + NBL_CHAN_MSG_GET_BASE_MAC_ADDR,
> + NBL_CHAN_MSG_CFG_BOND_SHAPING,
> + NBL_CHAN_MSG_CFG_BGID_BACK_PRESSURE,
> + NBL_CHAN_MSG_ALLOC_KT_BLOCK,
> + NBL_CHAN_MSG_FREE_KT_BLOCK,
> + NBL_CHAN_MSG_GET_USER_QUEUE_INFO,
> + NBL_CHAN_MSG_GET_ETH_BOND_INFO,
> + NBL_CHAN_MSG_CLEAR_ACCEL_FLOW,
> + NBL_CHAN_MSG_SET_BRIDGE_MODE,
> + NBL_CHAN_MSG_GET_VF_FUNCTION_ID,
> + NBL_CHAN_MSG_NOTIFY_LINK_FORCED,
> + NBL_CHAN_MSG_SET_PMD_DEBUG,
> + NBL_CHAN_MSG_REGISTER_FUNC_MAC,
> + NBL_CHAN_MSG_SET_TX_RATE,
> + NBL_CHAN_MSG_REGISTER_FUNC_LINK_FORCED,
> + NBL_CHAN_MSG_GET_LINK_FORCED,
> + NBL_CHAN_MSG_REGISTER_FUNC_VLAN,
> + NBL_CHAN_MSG_GET_FD_FLOW,
> + NBL_CHAN_MSG_GET_FD_FLOW_CNT,
> + NBL_CHAN_MSG_GET_FD_FLOW_ALL,
> + NBL_CHAN_MSG_GET_FD_FLOW_MAX,
> + NBL_CHAN_MSG_REPLACE_FD_FLOW,
> + NBL_CHAN_MSG_REMOVE_FD_FLOW,
> + NBL_CHAN_MSG_CFG_FD_FLOW_STATE,
> + NBL_CHAN_MSG_REGISTER_FUNC_RATE,
> + NBL_CHAN_MSG_NOTIFY_VLAN,
> + NBL_CHAN_MSG_GET_XDP_QUEUE_INFO,
> + NBL_CHAN_MSG_STOP_ABNORMAL_SW_QUEUE,
> + NBL_CHAN_MSG_STOP_ABNORMAL_HW_QUEUE,
> + NBL_CHAN_MSG_NOTIFY_RESET_EVENT,
> + NBL_CHAN_MSG_ACK_RESET_EVENT,
> + NBL_CHAN_MSG_GET_VF_VSI_ID,
> + NBL_CHAN_MSG_CONFIGURE_QOS,
> + NBL_CHAN_MSG_GET_PFC_BUFFER_SIZE,
> + NBL_CHAN_MSG_SET_PFC_BUFFER_SIZE,
> + NBL_CHAN_MSG_GET_VF_STATS,
> + NBL_CHAN_MSG_REGISTER_FUNC_TRUST,
> + NBL_CHAN_MSG_NOTIFY_TRUST,
> + NBL_CHAN_MSG_CHECK_VF_IS_ACTIVE,
> + NBL_CHAN_MSG_GET_ETH_ABNORMAL_STATS,
> + NBL_CHAN_MSG_GET_ETH_CTRL_STATS,
> + NBL_CHAN_MSG_GET_PAUSE_STATS,
> + NBL_CHAN_MSG_GET_ETH_MAC_STATS,
> + NBL_CHAN_MSG_GET_FEC_STATS,
> + NBL_CHAN_MSG_CFG_MULTI_MCAST_RULE,
> + NBL_CHAN_MSG_GET_LINK_DOWN_COUNT,
> + NBL_CHAN_MSG_GET_LINK_STATUS_OPCODE,
> + NBL_CHAN_MSG_GET_RMON_STATS,
> + NBL_CHAN_MSG_REGISTER_PF_NAME,
> + NBL_CHAN_MSG_GET_PF_NAME,
> + NBL_CHAN_MSG_CONFIGURE_RDMA_BW,
> + NBL_CHAN_MSG_SET_RATE_LIMIT,
> + NBL_CHAN_MSG_SET_TC_WGT,
> + NBL_CHAN_MSG_REMOVE_QUEUE,
> + NBL_CHAN_MSG_GET_MIRROR_TABLE_ID,
> + NBL_CHAN_MSG_CONFIGURE_MIRROR,
> + NBL_CHAN_MSG_CONFIGURE_MIRROR_TABLE,
> + NBL_CHAN_MSG_CLEAR_MIRROR_CFG,
> + NBL_CHAN_MSG_MIRROR_OUTPUTPORT_NOTIFY,
> + NBL_CHAN_MSG_CHECK_FLOWTABLE_SPEC,
> + NBL_CHAN_MSG_CHECK_VF_IS_VDPA,
> + NBL_CHAN_MSG_GET_VDPA_VF_STATS,
> + NBL_CHAN_MSG_SET_RX_RATE,
> + NBL_CHAN_MSG_GET_UVN_PKT_DROP_STATS,
> + NBL_CHAN_MSG_GET_USTORE_PKT_DROP_STATS,
> + NBL_CHAN_MSG_GET_USTORE_TOTAL_PKT_DROP_STATS,
> + NBL_CHAN_MSG_SET_WOL,
> + NBL_CHAN_MSG_INIT_VF_MSIX_MAP,
> + NBL_CHAN_MSG_GET_ST_NAME,
> + NBL_CHAN_MSG_MTU_SET = 501,
> + NBL_CHAN_MSG_SET_RXFH_INDIR = 506,
> + NBL_CHAN_MSG_SET_RXFH_RSS_ALG_SEL = 508,
> + /* mailbox msg end */
> + NBL_CHAN_MSG_MAILBOX_MAX,
> +};
> +
This is a big enum. Is there a possibility to group them by functionality?
> +struct nbl_chan_param_cfg_msix_map {
> + u16 num_net_msix;
> + u16 num_others_msix;
> + u16 msix_mask_en;
> +};
> +
> +struct nbl_chan_param_enable_mailbox_irq {
> + u16 vector_id;
> + bool enable_msix;
> +};
> +
> +struct nbl_chan_param_get_vsi_id {
> + u16 vsi_id;
> + u16 type;
> +};
> +
> +struct nbl_chan_param_get_eth_id {
> + u16 vsi_id;
> + u8 eth_mode;
> + u8 eth_id;
> + u8 logic_eth_id;
> +};
> +
> enum nbl_channel_type {
> NBL_CHAN_TYPE_MAILBOX,
> NBL_CHAN_TYPE_MAX
next prev parent reply other threads:[~2026-04-02 9:03 UTC|newest]
Thread overview: 18+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-04-01 2:23 [PATCH v10 net-next 00/11] nbl driver for Nebulamatrix NICs illusion.wang
2026-04-01 2:23 ` [PATCH v10 net-next 01/11] net/nebula-matrix: add minimum nbl build framework illusion.wang
2026-04-01 2:23 ` [PATCH v10 net-next 02/11] net/nebula-matrix: add our driver architecture illusion.wang
2026-04-02 9:02 ` Mohsin Bashir
2026-04-01 2:23 ` [PATCH v10 net-next 03/11] net/nebula-matrix: add chip related definitions illusion.wang
2026-04-01 2:23 ` [PATCH v10 net-next 04/11] net/nebula-matrix: channel msg value and msg struct illusion.wang
2026-04-02 9:03 ` Mohsin Bashir [this message]
2026-04-01 2:23 ` [PATCH v10 net-next 05/11] net/nebula-matrix: add channel layer illusion.wang
2026-04-02 9:04 ` Mohsin Bashir
2026-04-01 2:23 ` [PATCH v10 net-next 06/11] net/nebula-matrix: add common resource implementation illusion.wang
2026-04-02 9:05 ` Mohsin Bashir
2026-04-01 2:23 ` [PATCH v10 net-next 07/11] net/nebula-matrix: add intr " illusion.wang
2026-04-02 9:05 ` Mohsin Bashir
2026-04-01 2:23 ` [PATCH v10 net-next 08/11] net/nebula-matrix: add vsi " illusion.wang
2026-04-02 9:06 ` Mohsin Bashir
2026-04-01 2:23 ` [PATCH v10 net-next 09/11] net/nebula-matrix: add Dispatch layer implementation illusion.wang
2026-04-01 2:23 ` [PATCH v10 net-next 10/11] net/nebula-matrix: add common/ctrl dev init/reinit operation illusion.wang
2026-04-01 2:23 ` [PATCH v10 net-next 11/11] net/nebula-matrix: add common dev start/stop operation illusion.wang
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=0b0eb2e1-7aec-4913-8062-b3eff786a1ae@gmail.com \
--to=mohsin.bashr@gmail.com \
--cc=alvin.wang@nebula-matrix.com \
--cc=andrew+netdev@lunn.ch \
--cc=corbet@lwn.net \
--cc=dimon.zhao@nebula-matrix.com \
--cc=edumazet@google.com \
--cc=enelsonmoore@gmail.com \
--cc=hkallweit1@gmail.com \
--cc=horms@kernel.org \
--cc=illusion.wang@nebula-matrix.com \
--cc=jani.nikula@intel.com \
--cc=kuba@kernel.org \
--cc=linux-doc@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=lorenzo@kernel.org \
--cc=lukas.bulwahn@redhat.com \
--cc=netdev@vger.kernel.org \
--cc=pabeni@redhat.com \
--cc=sam.chen@nebula-matrix.com \
--cc=skhan@linuxfoundation.org \
--cc=vadim.fedorenko@linux.dev \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox