Re: [PATCH v5 1/6] fieldbus_dev: add Fieldbus Device subsystem.
From: Greg KH
Date: Thu Dec 06 2018 - 09:07:54 EST
On Wed, Dec 05, 2018 at 05:32:19PM -0500, Sven Van Asbroeck wrote:
> Thanks :)
>
> On Wed, Dec 5, 2018 at 2:17 PM Greg KH <gregkh@xxxxxxxxxxxxxxxxxxx> wrote:
> >
> > Great, then call it a 'fieldbus' class, not "fieldbus_dev' class.
>
> Small nit:
>
> Hardware connected to a fieldbus comes in two distinct flavours:
> - clients (e.g. thermometer, robotic arm) called "fieldbus devices"
> - servers (e.g. a PLC) called "fieldbus controllers"
>
> Their userspace APIs will probably differ quite a lot.
But servers are going to be much more rare, and odds are userspace is
not going to need to control anything with them, right?
> The userspace API created by the patch is only for clients a.k.a.
> "fieldbus devices". That's why I'm writing 'fieldbus_dev' all over the place.
>
> For simplicity, we could change that to just 'fieldbus'. But would this get
> us in trouble when, at some point, we want to add a userspace API for
> servers a.k.a. "fieldbus controllers" ?
Ick, yeah, I guess so, but planning for future events is not something
we do well at all. Are you sure you will need fieldbus controllers as a
class?
And as these are really devices, why not make them a "device" and a bus?
What type of topology do you have on these busses? Are everything
"flat" and connected directly to a PCI/USB/platform device? Or are
there multiple devices attached to a single controller?
It really feels like you want to use 'struct device' and a bus_type and
not a class here to me...
thanks,
greg k-h