From: Jakub Kicinski <kuba@kernel.org>
To: "illusion.wang" <illusion.wang@nebula-matrix.com>
Cc: dimon.zhao@nebula-matrix.com, alvin.wang@nebula-matrix.com,
sam.chen@nebula-matrix.com, netdev@vger.kernel.org,
andrew+netdev@lunn.ch, corbet@lwn.net, 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, ani.nikula@intel.com,
hkallweit1@gmail.com, linux-kernel@vger.kernel.org (open list)
Subject: Re: [PATCH v8 net-next 01/11] net/nebula-matrix: add minimum nbl build framework
Date: Wed, 18 Mar 2026 20:33:49 -0700 [thread overview]
Message-ID: <20260318203349.5d83eb69@kernel.org> (raw)
In-Reply-To: <20260317034533.5600-2-illusion.wang@nebula-matrix.com>
On Tue, 17 Mar 2026 11:45:18 +0800 illusion.wang wrote:
> 1.Add nbl min build infrastructure for nbl driver.
>
> 2.Implemented the framework of pci device initialization.
> +============================================================
> +Linux Base Driver for Nebula-matrix M18100-NIC family
> +============================================================
Shouldn't these lines also be the length of the text?
> +Overview:
> +=========
> +M18100-NIC is a series of network interface card for the Data Center Area.
> +
> +The driver supports link-speed 100GbE/25GE/10GE.
> +
> +M18100-NIC devices support MSI-X interrupt vector for each Tx/Rx queue and
> +interrupt moderation.
> +
> +M18100-NIC devices support also various offload features such as checksum offload,
> +Receive-Side Scaling(RSS).
> +
> +Supported PCI vendor ID/device IDs:
> +===================================
> +
> +1f0f:3403 - M18110 Family PF
> +1f0f:3404 - M18110 Lx Family PF
> +1f0f:3405 - M18110 Family BASE-T PF
> +1f0f:3406 - M18110 Lx Family BASE-T PF
> +1f0f:3407 - M18110 Family OCP PF
> +1f0f:3408 - M18110 Lx Family OCP PF
> +1f0f:3409 - M18110 Family BASE-T OCP PF
> +1f0f:340a - M18110 Lx Family BASE-T OCP PF
> +1f0f:340b - M18100 Family PF
> +1f0f:340c - M18100 Lx Family PF
> +1f0f:340d - M18100 Family BASE-T PF
> +1f0f:340e - M18100 Lx Family BASE-T PF
> +1f0f:340f - M18100 Family OCP PF
> +1f0f:3410 - M18100 Lx Family OCP PF
> +1f0f:3411 - M18100 Family BASE-T OCP PF
> +1f0f:3412 - M18100 Lx Family BASE-T OCP PF
Please don't list all the SKUs what's the point. PCIe device DB is
the place for that.
> +NEBULA-MATRIX ETHERNET DRIVER (nebula-matrix)
> +M: Illusion.Wang <illusion.wang@nebula-matrix.com>
> +M: Dimon.Zhao <dimon.zhao@nebula-matrix.com>
> +M: Alvin.Wang <alvin.wang@nebula-matrix.com>
> +M: Sam Chen <sam.chen@nebula-matrix.com>
What makes Sam Chen not have a dot in between name and surname?
Maybe let's use the more usual notation and remove the dots?
> +L: netdev@vger.kernel.org
> +S: Maintained
> +F: Documentation/networking/device_drivers/ethernet/nebula-matrix/*
Why the star at the end?
> +++ b/drivers/net/ethernet/nebula-matrix/nbl/Makefile
> @@ -0,0 +1,10 @@
> +# SPDX-License-Identifier: GPL-2.0
> +# Copyright (c) 2025 Nebula Matrix Limited.
> +
> +obj-$(CONFIG_NBL) := nbl.o
> +
> +nbl-objs += nbl_main.o
> +
> +# Provide include files
> +ccflags-y += -I$(srctree)/drivers/net/ethernet/nebula-matrix/nbl/nbl_include/
> +ccflags-y += -I$(srctree)/drivers/net/ethernet/nebula-matrix/nbl/
Why? You really shouldn't need this
> diff --git a/drivers/net/ethernet/nebula-matrix/nbl/nbl_core.h b/drivers/net/ethernet/nebula-matrix/nbl/nbl_core.h
> new file mode 100644
> index 000000000000..8c50904b9151
> --- /dev/null
> +++ b/drivers/net/ethernet/nebula-matrix/nbl/nbl_core.h
> @@ -0,0 +1,16 @@
> +/* SPDX-License-Identifier: GPL-2.0 */
> +/*
> + * Copyright (c) 2025 Nebula Matrix Limited.
> + */
> +
> +#ifndef _NBL_CORE_H_
> +#define _NBL_CORE_H_
> +
> +enum {
> + NBL_CAP_HAS_CTRL_BIT = BIT(0),
each header should be self-contained, you haven't included bits.h
> + NBL_CAP_HAS_NET_BIT = BIT(1),
> + NBL_CAP_IS_NIC_BIT = BIT(2),
> + NBL_CAP_IS_LEONIS_BIT = BIT(3),
> +};
> +
> +#endif
> diff --git a/drivers/net/ethernet/nebula-matrix/nbl/nbl_include/nbl_include.h b/drivers/net/ethernet/nebula-matrix/nbl/nbl_include/nbl_include.h
> new file mode 100644
> index 000000000000..914f1418f508
> --- /dev/null
> +++ b/drivers/net/ethernet/nebula-matrix/nbl/nbl_include/nbl_include.h
> @@ -0,0 +1,19 @@
> +/* SPDX-License-Identifier: GPL-2.0 */
> +/*
> + * Copyright (c) 2025 Nebula Matrix Limited.
> + */
> +
> +#ifndef _NBL_INCLUDE_H_
> +#define _NBL_INCLUDE_H_
> +
> +/* ------ Basic definitions ------- */
> +#define NBL_DRIVER_NAME "nbl"
> +
> +struct nbl_func_caps {
> + u32 has_ctrl:1;
ditto, types.h
> + u32 has_net:1;
> + u32 is_nic:1;
> + u32 rsv:29;
> +};
> +
> +#endif
> diff --git a/drivers/net/ethernet/nebula-matrix/nbl/nbl_main.c b/drivers/net/ethernet/nebula-matrix/nbl/nbl_main.c
> new file mode 100644
> index 000000000000..c0b01fea2548
> --- /dev/null
> +++ b/drivers/net/ethernet/nebula-matrix/nbl/nbl_main.c
> @@ -0,0 +1,112 @@
> +// SPDX-License-Identifier: GPL-2.0
> +/*
> + * Copyright (c) 2025 Nebula Matrix Limited.
> + */
> +
> +#include <linux/device.h>
> +#include <linux/pci.h>
> +#include "nbl_include.h"
> +#include "nbl_core.h"
> +
> +static int nbl_probe(struct pci_dev *pdev,
> + const struct pci_device_id __always_unused *id)
__always_unused should be after the arg name, not the type
but also why? kernel build doesn't warn about unused args
> +{
> + return 0;
> +}
> +MODULE_DEVICE_TABLE(pci, nbl_id_table);
> +
> +static struct pci_driver nbl_driver = {
> + .name = NBL_DRIVER_NAME,
> + .id_table = nbl_id_table,
> + .probe = nbl_probe,
> + .remove = nbl_remove,
> +};
> +
> +module_pci_driver(nbl_driver);
> +
> +MODULE_LICENSE("GPL");
> +MODULE_DESCRIPTION("Nebula Matrix Network Driver");
missing include module.h ..
--
pw-bot: cr
next prev parent reply other threads:[~2026-03-19 3:33 UTC|newest]
Thread overview: 13+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-03-17 3:45 [PATCH v8 net-next 00/11] nbl driver for Nebulamatrix NICs illusion.wang
2026-03-17 3:45 ` [PATCH v8 net-next 01/11] net/nebula-matrix: add minimum nbl build framework illusion.wang
2026-03-19 3:33 ` Jakub Kicinski [this message]
2026-03-17 3:45 ` [PATCH v8 net-next 02/11] net/nebula-matrix: add our driver architecture illusion.wang
2026-03-17 3:45 ` [PATCH v8 net-next 03/11] net/nebula-matrix: add chip related definitions illusion.wang
2026-03-17 3:45 ` [PATCH v8 net-next 04/11] net/nebula-matrix: channel msg value and msg struct illusion.wang
2026-03-17 3:45 ` [PATCH v8 net-next 05/11] net/nebula-matrix: add channel layer illusion.wang
2026-03-17 3:45 ` [PATCH v8 net-next 06/11] net/nebula-matrix: add common resource implementation illusion.wang
2026-03-17 3:45 ` [PATCH v8 net-next 07/11] net/nebula-matrix: add intr " illusion.wang
2026-03-17 3:45 ` [PATCH v8 net-next 08/11] net/nebula-matrix: add vsi " illusion.wang
2026-03-17 3:45 ` [PATCH v8 net-next 09/11] net/nebula-matrix: add Dispatch layer implementation illusion.wang
2026-03-17 3:45 ` [PATCH v8 net-next 10/11] net/nebula-matrix: add common/ctrl dev init/reinit operation illusion.wang
2026-03-17 3:45 ` [PATCH v8 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=20260318203349.5d83eb69@kernel.org \
--to=kuba@kernel.org \
--cc=alvin.wang@nebula-matrix.com \
--cc=andrew+netdev@lunn.ch \
--cc=ani.nikula@intel.com \
--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=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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.