linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Sven Van Asbroeck <thesven73@gmail.com>
To: Oliver Hartkopp <socketcan@hartkopp.net>
Cc: "Andreas Färber" <afaerber@suse.de>,
	"Enrico Weigelt, metux IT consult" <lkml@metux.net>,
	"Linus Walleij" <linus.walleij@linaro.org>,
	"Lee Jones" <lee.jones@linaro.org>,
	mark.rutland@arm.com, treding@nvidia.com,
	"David Lechner" <david@lechnology.com>,
	noralf@tronnes.org, johan@kernel.org,
	"Michal Simek" <monstr@monstr.eu>,
	michal.vokac@ysoft.com, "Arnd Bergmann" <arnd@arndb.de>,
	"Greg KH" <gregkh@linuxfoundation.org>,
	john.garry@huawei.com, geert+renesas@glider.be,
	robin.murphy@arm.com,
	"Paul Gortmaker" <paul.gortmaker@windriver.com>,
	sebastien.bourdelin@savoirfairelinux.com, icenowy@aosc.io,
	"Stuart Yoder" <stuyoder@gmail.com>,
	"J. Kiszka" <jan.kiszka@siemens.com>,
	maxime.ripard@bootlin.com,
	"Linux Kernel Mailing List" <linux-kernel@vger.kernel.org>,
	netdev <netdev@vger.kernel.org>
Subject: Re: [PATCH v10 0/7] Add Fieldbus subsystem + support HMS Profinet card
Date: Wed, 24 Apr 2019 11:10:17 -0400	[thread overview]
Message-ID: <CAGngYiX_xxDWEAbxQ=XeZPYAA+zgQ32U0Ov=CG86yE=6=qTfpg@mail.gmail.com> (raw)
In-Reply-To: <d54b294e-d641-bb14-84ed-39d9a9079dc7@hartkopp.net>

Hello Oliver, thank you for your input, appreciate it !

On Wed, Apr 24, 2019 at 7:50 AM Oliver Hartkopp <socketcan@hartkopp.net> wrote:
>
> I hopefully got it right by: You implemented a standardized chardev ABI
> that enables a data exchange between userspace and kernel, where other
> drivers can register 'from inside the kernel', that feel like being a
> fieldbus controller?!?

Close ! Devices that "feel like" a Fieldbus _device_ can register.

The subsystem is called fieldbus_dev "fieldbus device" because it
abstracts Linux fieldbus clients that want to expose themselves as
e.g. an actuator, motor, console light, switch, ...

The commit message fully describes this, and so does the
Documentation. Any improvements are welcome.
https://lkml.org/lkml/2019/4/16/817
https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/staging.git/tree/drivers/staging/fieldbus/Documentation/fieldbus_dev.txt?h=staging-next

During one of the eleven review cycles, drivers/fieldbus_dev got
truncated to drivers/fieldbus because the reviewers felt that
_dev was redundant, given the lack of other fieldbus
subsystems.

This subsystem came about because I'm trying to mainline
support for three HMS cards: FLNet, Profinet and CC-Link.
These cards are not controllers, but slaves on the bus.
All three make heavy use of process memory. From the
get-go, the kernel reviewers made it clear that the userspace
cannot be specific and must be generic. So I crafted a generic
ABI that works for clients on process-memory based busses,
and called it 'fieldbus_dev', for lack of a better name.

I'm by no means a fieldbus expert. It seems that the term
'fieldbus' is much broader than these process-memory based
standards? I am open to any _concrete_ naming suggestions
that can get consensus.

I'm a bit confused by Wikipedia's entry for fieldbus.
It suggests that IEC 61158 and Fieldbus are
interchangeable?
https://en.wikipedia.org/wiki/Fieldbus

<quote>
Fieldbus is the name of a family of industrial computer
network protocols used for real-time distributed control,
standardized as IEC 61158.
</quote>

>
> How can this fit together for me and what would be the plan to cover
> CANopen or EtherCAT in the fieldbus subsystem? Does it need some kind of
> CANopen protocol driver that registers to your ABI and speaks to CAN
> interfaces on the other side?

Given that CAN/EtherCAT are not process memory based
(that I know of), the fieldbus_dev subsystem is probably
not a good fit.

Also no good for bus controllers, the subsystem deals
with slave devices only.

Sven

  reply	other threads:[~2019-04-24 15:10 UTC|newest]

Thread overview: 34+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-04-09 14:42 [PATCH v10 0/7] Add Fieldbus subsystem + support HMS Profinet card Sven Van Asbroeck
2019-04-09 14:42 ` [PATCH v10 1/7] fieldbus_dev: add Fieldbus Device subsystem Sven Van Asbroeck
2019-04-16 11:13   ` Greg KH
2019-04-09 14:42 ` [PATCH v10 2/7] anybus-s: support HMS Anybus-S bus Sven Van Asbroeck
2019-04-09 14:42 ` [PATCH v10 3/7] anybus-s: support the Arcx anybus controller Sven Van Asbroeck
2019-04-09 14:42 ` [PATCH v10 4/7] dt-bindings: anybus-controller: document devicetree binding Sven Van Asbroeck
2019-04-09 15:50   ` Rob Herring
2019-04-09 17:16     ` Sven Van Asbroeck
2019-04-09 17:31       ` Sven Van Asbroeck
2019-04-09 21:09         ` Rob Herring
2019-04-10 13:11           ` Sven Van Asbroeck
2019-04-16 11:11             ` Greg KH
2019-04-09 14:42 ` [PATCH v10 5/7] dt-bindings: Add vendor prefix for arcx / Archronix Sven Van Asbroeck
2019-04-09 14:42 ` [PATCH v10 6/7] fieldbus_dev: support HMS Profinet IRT industrial controller Sven Van Asbroeck
2019-04-09 14:42 ` [PATCH v10 7/7] staging: fieldbus_dev: add TODO Sven Van Asbroeck
2019-04-15 17:41 ` [PATCH v10 0/7] Add Fieldbus subsystem + support HMS Profinet card Enrico Weigelt, metux IT consult
2019-04-15 18:31   ` Sven Van Asbroeck
2019-04-16 16:49     ` Enrico Weigelt, metux IT consult
2019-04-16 18:56       ` Sven Van Asbroeck
2019-04-16 21:18         ` Enrico Weigelt, metux IT consult
2019-04-16 21:49           ` Sven Van Asbroeck
2019-04-16 22:12           ` Sven Van Asbroeck
2019-04-18  8:32             ` Enrico Weigelt, metux IT consult
2019-04-18 17:34               ` Sven Van Asbroeck
2019-04-24  9:40                 ` Enrico Weigelt, metux IT consult
2019-04-24 10:26                   ` Oliver Hartkopp
2019-04-24 11:00                     ` Andreas Färber
2019-04-24 11:48                       ` Oliver Hartkopp
2019-04-24 15:10                         ` Sven Van Asbroeck [this message]
2019-04-29 13:54                           ` Enrico Weigelt, metux IT consult
2019-04-17 14:37           ` Sven Van Asbroeck
2019-04-17 17:04       ` Andreas Färber
2019-04-17 20:13         ` Enrico Weigelt, metux IT consult
2019-04-25  8:26 ` Lee Jones

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='CAGngYiX_xxDWEAbxQ=XeZPYAA+zgQ32U0Ov=CG86yE=6=qTfpg@mail.gmail.com' \
    --to=thesven73@gmail.com \
    --cc=afaerber@suse.de \
    --cc=arnd@arndb.de \
    --cc=david@lechnology.com \
    --cc=geert+renesas@glider.be \
    --cc=gregkh@linuxfoundation.org \
    --cc=icenowy@aosc.io \
    --cc=jan.kiszka@siemens.com \
    --cc=johan@kernel.org \
    --cc=john.garry@huawei.com \
    --cc=lee.jones@linaro.org \
    --cc=linus.walleij@linaro.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=lkml@metux.net \
    --cc=mark.rutland@arm.com \
    --cc=maxime.ripard@bootlin.com \
    --cc=michal.vokac@ysoft.com \
    --cc=monstr@monstr.eu \
    --cc=netdev@vger.kernel.org \
    --cc=noralf@tronnes.org \
    --cc=paul.gortmaker@windriver.com \
    --cc=robin.murphy@arm.com \
    --cc=sebastien.bourdelin@savoirfairelinux.com \
    --cc=socketcan@hartkopp.net \
    --cc=stuyoder@gmail.com \
    --cc=treding@nvidia.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;
as well as URLs for NNTP newsgroup(s).