> -----Original Message----- > From: Xu, Yilun <yilun.xu@xxxxxxxxx> > Sent: Saturday, April 16, 2022 10:48 PM > To: Zhang, Tianfei <tianfei.zhang@xxxxxxxxx> > Cc: Wu, Hao <hao.wu@xxxxxxxxx>; trix@xxxxxxxxxx; mdf@xxxxxxxxxx; linux- > fpga@xxxxxxxxxxxxxxx; gregkh@xxxxxxxxxxxxxxxxxxx; linux- > kernel@xxxxxxxxxxxxxxx; Matthew Gerlach <matthew.gerlach@xxxxxxxxxxxxxxx> > Subject: Re: [PATCH v2] uio: dfl: add HSSI feature id > > On Tue, Apr 12, 2022 at 02:23:53AM -0400, Tianfei Zhang wrote: > > From: Matthew Gerlach <matthew.gerlach@xxxxxxxxxxxxxxx> > > > > Add the feature id of the OFS HSSI (High Speed Serial Interface) > > subsystem to table of ids supported by the uio_dfl driver. HSSI > > subsystem consists of harden/soft Ethernet MAC to support various > > ethernet usages and PCS/FEC/PMA direct modes for non-ethernet usages. > > > > We leverage the uio_dfl driver to access the HSSI subsystem on user > > space, because the HSSI subsystem was designed for specific purposes > > and does > > Could you explain what's the main difference between this MAC and other > MACs, which prevents it from fitting into net kernel subsystem? This MAC in FPGA has not implemented the full functional for PHY driver, we use uio_dfl driver for faster verification and product prototype when we reload a new fpga image. The major work for driver include setting the loopback mode for MAC and getting the MAC statics. > > For FME_FEATURE_ID_ETH_GROUP, it is not designed as the full functional > ethernet controller. It is specially developed for the Intel N3000 NIC. > Since it is an FPGA based card, it is designed for the users to runtime reload part > of the MAC layer logic developed by themselves, while the ETH GROUP is > another part of the MAC which is not expected to be reloaded by customers, but > it provides some configurations for software to work with the user logic. > > And what's the difference for the FME_FEATURE_ID_OFS_HSSI? I think ETH_GROUP is designed for N3000 NIC card, and the HSSI is a new design for N6000 NIC card. > > Thanks, > Yilun > > > not fit into the standard MAC and net kernel subsystems. > > > > The Feature ID table of DFL can be found: > > https://github.com/OPAE/dfl-feature-id > > > > Signed-off-by: Matthew Gerlach <matthew.gerlach@xxxxxxxxxxxxxxx> > > Signed-off-by: Tianfei Zhang <tianfei.zhang@xxxxxxxxx> > > --- > > v2: add HSSI introduction and the git repo of Feature ID table. > > --- > > drivers/uio/uio_dfl.c | 2 ++ > > 1 file changed, 2 insertions(+) > > > > diff --git a/drivers/uio/uio_dfl.c b/drivers/uio/uio_dfl.c index > > 89c0fc7b0cbc..660e1d0bf6b9 100644 > > --- a/drivers/uio/uio_dfl.c > > +++ b/drivers/uio/uio_dfl.c > > @@ -45,9 +45,11 @@ static int uio_dfl_probe(struct dfl_device *ddev) > > } > > > > #define FME_FEATURE_ID_ETH_GROUP 0x10 > > +#define FME_FEATURE_ID_OFS_HSSI 0x15 > > > > static const struct dfl_device_id uio_dfl_ids[] = { > > { FME_ID, FME_FEATURE_ID_ETH_GROUP }, > > + { FME_ID, FME_FEATURE_ID_OFS_HSSI }, > > { } > > }; > > MODULE_DEVICE_TABLE(dfl, uio_dfl_ids); > > -- > > 2.26.2