From: Lee Jones <lee@kernel.org>
To: Markus Probst <markus.probst@posteo.de>
Cc: "Danilo Krummrich" <dakr@kernel.org>,
"Greg Kroah-Hartman" <gregkh@linuxfoundation.org>,
"Rob Herring" <robh@kernel.org>,
"Krzysztof Kozlowski" <krzk+dt@kernel.org>,
"Conor Dooley" <conor+dt@kernel.org>,
"Miguel Ojeda" <ojeda@kernel.org>,
"Boqun Feng" <boqun@kernel.org>, "Gary Guo" <gary@garyguo.net>,
"Björn Roy Baron" <bjorn3_gh@protonmail.com>,
"Benno Lossin" <lossin@kernel.org>,
"Andreas Hindborg" <a.hindborg@kernel.org>,
"Alice Ryhl" <aliceryhl@google.com>,
"Trevor Gross" <tmgross@umich.edu>,
devicetree@vger.kernel.org, linux-kernel@vger.kernel.org,
rust-for-linux@vger.kernel.org
Subject: Re: [PATCH v2 2/2] mfd: Add initial synology microp driver
Date: Mon, 9 Mar 2026 15:15:55 +0000 [thread overview]
Message-ID: <20260309151555.GU183676@google.com> (raw)
In-Reply-To: <e43ca445ec7887d3d15676adb7db04f5685f4195.camel@posteo.de>
On Mon, 09 Mar 2026, Markus Probst wrote:
> On Mon, 2026-03-09 at 14:32 +0100, Danilo Krummrich wrote:
> > On Mon Mar 9, 2026 at 1:52 PM CET, Markus Probst wrote:
> > > Yes. I will split it into multiple drivers using the aux bus in the
> > > next revision.
> >
> > Independent of the other discussion whether this belongs into the kernel in the
> > first place, reading over the cover letter and commit message I understood the
> > following.
> >
> > "Synology uses a microcontroller in their NAS devices connected to a serial
> > port [...]" controlling LEDs, fan speeds, a beeper, etc.
> >
> > I.e. it muliplexes several physical functions that belong to different
> > subsystems, such as hwmon, input, etc. over a single serial port.
> >
> > This sounds like a textbook candidate for MFD to me.
Then you do not know what a textbook candidate for MFD is. :)
What part of the MFD API does this device utilise?
> > I.e. there is a very loose coupling of the different functions that make up for
> > entirely independent drivers, except that they share the same serial port
> > connection.
> >
> > Whereas the auxiliary bus is more for very complicated devices to be broken down
> > into more managable (sometimes optional) sub-domains, where the corresponding
> > drivers usually have driver specific APIs to interact with each other.
> >
> > - Danilo
>
> QNAP and Synology do things very similarly.
> There is already a driver for QNAP devices:
>
> drivers/mfd/qnap-mcu.c
> drivers/leds/leds-qnap-mcu.c
> drivers/input/misc/qnap-mcu-input.c
> drivers/hwmon/qnap-mcu-hwmon.c
> drivers/nvmem/qnap-mcu-eeprom.c
>
> drivers/power/reset/qnap-poweroff.c (this one is not part of the mfd)
>
> and I try to implement the equivalent for Synology devices.
> Given its a MFD I would assume the same applies to this driver?
Of course not.
The QNAP driver above calls devm_mfd_add_devices().
This one uses none of the MFD functionality provided.
Linux supports 10's if not 100's of devices which do more than one
thing. Only a fraction of them are Linux MFDs. MFD in Linux is an API,
not a type of device.
Don't get me wrong, you could probably code up this device as a Linux
MFD, but you have chosen not to, so therefore it cannot reside here.
--
Lee Jones [李琼斯]
next prev parent reply other threads:[~2026-03-09 15:16 UTC|newest]
Thread overview: 21+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-03-08 18:41 [PATCH v2 0/2] Introduce Synology Microp driver Markus Probst
2026-03-08 18:41 ` [PATCH v2 1/2] dt-bindings: mfd: Add synology,microp device Markus Probst
2026-03-09 7:17 ` Krzysztof Kozlowski
2026-03-08 18:41 ` [PATCH v2 2/2] mfd: Add initial synology microp driver Markus Probst
2026-03-08 18:55 ` Greg Kroah-Hartman
2026-03-08 19:15 ` Markus Probst
2026-03-09 5:56 ` Greg Kroah-Hartman
2026-03-09 9:43 ` Lee Jones
2026-03-09 12:52 ` Markus Probst
2026-03-09 13:07 ` Greg Kroah-Hartman
2026-03-09 13:34 ` Markus Probst
2026-03-09 13:32 ` Danilo Krummrich
2026-03-09 13:38 ` Markus Probst
2026-03-09 15:15 ` Lee Jones [this message]
2026-03-09 15:20 ` Markus Probst
2026-03-09 15:27 ` Lee Jones
2026-03-09 15:37 ` Danilo Krummrich
2026-03-09 15:50 ` Lee Jones
2026-03-08 18:56 ` Greg Kroah-Hartman
2026-03-08 19:23 ` Markus Probst
2026-03-09 5:55 ` Greg Kroah-Hartman
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=20260309151555.GU183676@google.com \
--to=lee@kernel.org \
--cc=a.hindborg@kernel.org \
--cc=aliceryhl@google.com \
--cc=bjorn3_gh@protonmail.com \
--cc=boqun@kernel.org \
--cc=conor+dt@kernel.org \
--cc=dakr@kernel.org \
--cc=devicetree@vger.kernel.org \
--cc=gary@garyguo.net \
--cc=gregkh@linuxfoundation.org \
--cc=krzk+dt@kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=lossin@kernel.org \
--cc=markus.probst@posteo.de \
--cc=ojeda@kernel.org \
--cc=robh@kernel.org \
--cc=rust-for-linux@vger.kernel.org \
--cc=tmgross@umich.edu \
/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.