mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
From: Xu Yilun <yilun.xu@intel.com>
To: mdf@kernel.org, Greg KH <gregkh@linuxfoundation.org>
Cc: Moritz Fischer <mdf@kernel.org>,
	linux-fpga@vger.kernel.org, linux-kernel@vger.kernel.org,
	trix@redhat.com, lgoncalv@redhat.com, hao.wu@intel.com,
	yilun.xu@intel.com
Subject: Re: [PATCH v3 1/5] fpga: dfl: rename the bus type "dfl" to "fpga-dfl"
Date: Tue, 29 Sep 2020 09:23:23 +0800	[thread overview]
Message-ID: <20200929012323.GD16433@yilunxu-OptiPlex-7050> (raw)
In-Reply-To: <20200927083647.GC16433@yilunxu-OptiPlex-7050>

Hi moritz:

On Sun, Sep 27, 2020 at 04:36:47PM +0800, Xu Yilun wrote:
> Hi Greg,
> 
> On Sun, Sep 27, 2020 at 09:54:01AM +0200, Greg KH wrote:
> > On Sun, Sep 27, 2020 at 03:37:54PM +0800, Xu Yilun wrote:
> > > Hi Greg,
> > > 
> > > On Sun, Sep 27, 2020 at 07:51:08AM +0200, Greg KH wrote:
> > > > On Sat, Sep 26, 2020 at 12:22:19PM -0700, Moritz Fischer wrote:
> > > > > Hi Greg,
> > > > > 
> > > > > On Sat, Sep 26, 2020 at 08:09:13AM +0200, Greg KH wrote:
> > > > > > On Sat, Sep 26, 2020 at 10:23:46AM +0800, Xu Yilun wrote:
> > > > > > > Hi greg,
> > > > > > > 
> > > > > > > About the bus naming, I summarized some questions we've discussed to check
> > > > > > > with you. See inline.
> > > > > > > 
> > > > > > > On Thu, Sep 24, 2020 at 10:27:00AM -0700, Moritz Fischer wrote:
> > > > > > > > Hi Xu,
> > > > > > > > 
> > > > > > > > On Fri, Sep 25, 2020 at 12:59:57AM +0800, Xu Yilun wrote:
> > > > > > > > > Now the DFL device drivers could be made as independent modules and put
> > > > > > > > > in different subsystems according to their functionalities. So the name
> > > > > > > > > should be descriptive and unique in the whole kernel.
> > > > > > > > > 
> > > > > > > > > The patch changes the naming of dfl bus related structures, functions,
> > > > > > > > > APIs and documentations.
> > > > > > > > > 
> > > > > > > > > Signed-off-by: Xu Yilun <yilun.xu@intel.com>
> > > > > > > > > ---
> > > > > > > > >  Documentation/ABI/testing/sysfs-bus-dfl      |  15 --
> > > > > > > > >  Documentation/ABI/testing/sysfs-bus-fpga-dfl |  15 ++
> > > > > > > > >  MAINTAINERS                                  |   2 +-
> > > > > > > > >  drivers/fpga/dfl.c                           | 254 ++++++++++++++-------------
> > > > > > > > >  drivers/fpga/dfl.h                           |  77 ++++----
> > > > > > > > >  5 files changed, 184 insertions(+), 179 deletions(-)
> > > > > > > > >  delete mode 100644 Documentation/ABI/testing/sysfs-bus-dfl
> > > > > > > > >  create mode 100644 Documentation/ABI/testing/sysfs-bus-fpga-dfl
> > > > > > > > > 
> > > > > > > > > diff --git a/Documentation/ABI/testing/sysfs-bus-dfl b/Documentation/ABI/testing/sysfs-bus-dfl
> > > > > > > > > deleted file mode 100644
> > > > > > > > > index 23543be..0000000
> > > > > > > > > --- a/Documentation/ABI/testing/sysfs-bus-dfl
> > > > > > > > > +++ /dev/null
> > > > > > > > > @@ -1,15 +0,0 @@
> > > > > > > > > -What:		/sys/bus/dfl/devices/dfl_dev.X/type
> > > > > > > > > -Date:		Aug 2020
> > > > > > > > > -KernelVersion:	5.10
> > > > > > > > > -Contact:	Xu Yilun <yilun.xu@intel.com>
> > > > > > > > > -Description:	Read-only. It returns type of DFL FIU of the device. Now DFL
> > > > > > > > > -		supports 2 FIU types, 0 for FME, 1 for PORT.
> > > > > > > > > -		Format: 0x%x
> > > > > > > > > -
> > > > > > > > > -What:		/sys/bus/dfl/devices/dfl_dev.X/feature_id
> > > > > > > > > -Date:		Aug 2020
> > > > > > > > > -KernelVersion:	5.10
> > > > > > > > > -Contact:	Xu Yilun <yilun.xu@intel.com>
> > > > > > > > > -Description:	Read-only. It returns feature identifier local to its DFL FIU
> > > > > > > > > -		type.
> > > > > > > > > -		Format: 0x%x
> > > > > > > > 
> > > > > > > > You're changing userland facing ABI. I think that's something to avoid,
> > > > > > > > please check with Greg on the rules since this hasn't been in a release yet.
> > > > > > > > 
> > > > > > > 
> > > > > > > I'm going to change the name of bus stuff for other subsystems, to be
> > > > > > > aligned, I also consider change the bus_type.name and dfl dev_name. But
> > > > > > > it will cause the changing of user ABIs. No user case for these user ABI
> > > > > > > now cause they are just queued, is it good I change them?
> > > > > > 
> > > > > > Why change the user name here?  No need for that, right?  Unless you
> > > > > > really want to, and think that no one will notice.  If so, fine, change
> > > > > > them :)
> > > > > 
> > > > > Let's leave it as is -- An FPGA is one possible implementation and as for
> > > > > other buses, you wouldn't call it fpga-usb or usb-fpga just because the
> > > > > USB bus is implemented in an FPGA if it behaves like a normal USB bus.
> > > > > Having an ASIC based DFL bus show up under dfl-fpga / fpga-dfl in sysfs
> > > > > would be super confusing.
> 
> I thought we have consensus that "dfl" could be used out of fpga domain.
> And we are all good that we keep the user ABIs & the bus name - "dfl", so "dfl"
> is good as a global name from linux user's point of view, is it?
> 
> But why we reject the "dfl" in kernel code domain? I thought it is very
> similar situation.
> 
> 
> I think we have 2 options, to make the dfl self-consistent:
> 
> 1. "dfl-fpga" for everything - bus name, user ABIs, structures & APIs for
>    other kernel subsystems. Then we lose the chance to support ASIC based DFL,
>    it would be hard if we change user ABIs later.
> 
> 2. "dfl" for everything.
> 
> BTW, no ASIC based DFL devices in kernel today.
> 
> I fully understand the word "naming is hard" now, help me :)

Seems now we have different opinions on this:

- Hao thinks self-consistent is important to dfl framework.
- "dfl" for everything seems not preferable to Greg.
- From your previous mail, I assume you prefer to keep the bus name as "dfl"
but change the stuff for other subsystem, is it?

So I got a little stuck here.

Do you think "dfl-fpga" for everything would be an acceptable solution
for you?


Thanks,
Yilun

> 
> > > > > 
> > > > > > > It is mentioned that although Device Feature List is introduced in FPGA,
> > > > > > > but it doesn't limit the usage in FPGA only. It's just a method to
> > > > > > > discover features from a device, for sure it can be extended and used
> > > > > > > in other devices too. So it can be bigger namespace than FPGA. Like in
> > > > > > > our existing code, we picked dfl_fpga (DFL based FPGA) for uapi (ioctl)
> > > > > > > and internal functions. This is suggested by Alan (The previous FPGA
> > > > > > > maintainer). It's possible to have "DFL based XXX" in the future, even
> > > > > > > currently only FPGA uses DFL. This is the reason we thought just "dfl"
> > > > > > > in the whole kernel space is OK.
> > > > > > > So, is there a chance we keep the "dfl" naming in the whole kernel?
> > > > > > 
> > > > > > No one knows what "DFL" is, and odds are, if a different subsystem wants
> > > > > > to use it, they will have their own variant, right?
> > > 
> > > DFL is a method to discover devices. If a different subsystem (e.g. ASIC based
> > > DFL bus) want to use DFL and follows the DFL spec, they could just use the DFL
> > > stuff for enumeration, no need to have new variants.
> > > 
> > > > > > 
> > > > > > And why didn't you all use device tree?  How did this sneak in past
> > > > > > everyone?
> > > > > 
> > > > > DFL is a pretty efficient implementation in terms of resource
> > > > > utilization on the FPGA end (a couple of registers / memories) vs
> > > > > several kilobytes of memory for a device-tree blob.
> > > > > 
> > > > > The hardware using DFL to describe its internal structure exists in the
> > > > > form of deployed accelerator cards and telling all its users to go and
> > > > > change their hardware design would be feasible -- If you think about an
> > > > > FPGA as a (albeit reconfigurable) ASIC you wouldn't go and tell people
> > > > > to redesign their ASIC to use Device-Tree? :)
> > > > > 
> > > > > I'm not sure where the 'sneaking in' anything comes from. It's been
> > > > > reviewed on the list (and by yourself back then). If you feel any of
> > > > > this wasn't kosher, let's talk about it, to make sure it doesn't happen
> > > > > again.
> > > > 
> > > > I can't remember reviewing it, sorry, too many patches, I probably was
> > > > only worrying about functionality issues, not what the code actually did
> > > > :)
> > > > 
> > > > So it's fine, just a surprise to me, no big deal.
> > > 
> > > I'm glad that we made it clear. And the bus name & user APIs cound be
> > > kept as "dfl". So I assume the name "dfl" is OK to be used and could
> > > be recognized by people out of FPGA domain, is it?
> > > 
> > > If so, I still want to keep the name "dfl_device_id" in mod_devicetable.h
> > > as well.
> > 
> > No, this is specific to the fpga subsystem, right?  So please put fpga
> > in the name.
> 
> I put my comments under Moritz's lines above, hope it makes clear.
> 
> > 
> > > We want to keep the device id name of the bus aligned with the
> > > bus name. And it would be confusing as well if a driver for ASIC based
> > > DFL device uses the "dfl_fpga_device_id" structure.
> > 
> > Do we have that in the kernel today?
> 
> Actually no.
> 
> Thanks,
> Yilun
> 
> > 
> > thanks,
> > 
> > greg "naming is hard" k-h

  parent reply	other threads:[~2020-09-29  1:28 UTC|newest]

Thread overview: 23+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-09-24 16:59 [PATCH v3 0/5] add DFL bus support to MODULE_DEVICE_TABLE() Xu Yilun
2020-09-24 16:59 ` [PATCH v3 1/5] fpga: dfl: rename the bus type "dfl" to "fpga-dfl" Xu Yilun
2020-09-24 17:27   ` Moritz Fischer
     [not found]     ` <20200926022346.GA5623@yilunxu-OptiPlex-7050>
2020-09-26  6:09       ` Greg KH
2020-09-26 19:22         ` Moritz Fischer
2020-09-27  5:51           ` Greg KH
2020-09-27  7:37             ` Xu Yilun
2020-09-27  7:54               ` Greg KH
     [not found]                 ` <20200927083647.GC16433@yilunxu-OptiPlex-7050>
2020-09-29  1:23                   ` Xu Yilun [this message]
2020-09-29  4:19                     ` Moritz Fischer
2020-09-29  7:19                       ` Xu Yilun
2020-10-09  6:20                       ` Xu Yilun
2020-10-09  6:41                         ` Greg KH
2020-10-09  7:34                           ` Xu Yilun
2020-10-09 21:28                             ` Moritz Fischer
2020-10-10  7:03                               ` Greg KH
2020-09-24 19:01   ` Tom Rix
2020-09-25  2:41     ` Moritz Fischer
2020-09-25  3:15     ` Xu Yilun
2020-09-24 16:59 ` [PATCH v3 2/5] fpga: dfl: fix the definitions of type & feature_id for dfl devices Xu Yilun
2020-09-24 16:59 ` [PATCH v3 3/5] fpga: dfl: move fpga_dfl_device_id to mod_devicetable.h Xu Yilun
2020-09-24 17:00 ` [PATCH v3 4/5] fpga: dfl: add fpga dfl bus support to MODULE_DEVICE_TABLE() Xu Yilun
2020-09-24 17:00 ` [PATCH v3 5/5] fpga: dfl: move fpga dfl bus related APIs to include/linux/fpga/dfl.h Xu Yilun

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=20200929012323.GD16433@yilunxu-OptiPlex-7050 \
    --to=yilun.xu@intel.com \
    --cc=gregkh@linuxfoundation.org \
    --cc=hao.wu@intel.com \
    --cc=lgoncalv@redhat.com \
    --cc=linux-fpga@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=mdf@kernel.org \
    --cc=trix@redhat.com \
    /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

all inboxes | Powered by JetHome®