All of lore.kernel.org
 help / color / mirror / Atom feed
From: Lee Jones <lee@kernel.org>
To: Ivan Vecera <ivecera@redhat.com>
Cc: Andrew Lunn <andrew@lunn.ch>,
	netdev@vger.kernel.org,
	Vadim Fedorenko <vadim.fedorenko@linux.dev>,
	Arkadiusz Kubalewski <arkadiusz.kubalewski@intel.com>,
	Jiri Pirko <jiri@resnulli.us>, Rob Herring <robh@kernel.org>,
	Krzysztof Kozlowski <krzk+dt@kernel.org>,
	Conor Dooley <conor+dt@kernel.org>,
	Prathosh Satish <Prathosh.Satish@microchip.com>,
	Kees Cook <kees@kernel.org>, Andy Shevchenko <andy@kernel.org>,
	Andrew Morton <akpm@linux-foundation.org>,
	Michal Schmidt <mschmidt@redhat.com>,
	devicetree@vger.kernel.org, linux-kernel@vger.kernel.org,
	linux-hardening@vger.kernel.org
Subject: Re: [PATCH net-next v4 5/8] mfd: zl3073x: Add functions to work with register mailboxes
Date: Fri, 25 Apr 2025 11:17:21 +0100	[thread overview]
Message-ID: <20250425101721.GC1567507@google.com> (raw)
In-Reply-To: <98e471cc-ec66-4c89-af9a-57625c0c2873@redhat.com>

On Fri, 25 Apr 2025, Ivan Vecera wrote:

> 
> 
> On 25. 04. 25 8:55 dop., Lee Jones wrote:
> > On Thu, 24 Apr 2025, Ivan Vecera wrote:
> > 
> > > 
> > > 
> > > On 24. 04. 25 9:29 odp., Andrew Lunn wrote:
> > > > > Yes, PHC (PTP) sub-driver is using mailboxes as well. Gpio as well for some
> > > > > initial configuration.
> > > > 
> > > > O.K, so the mailbox code needs sharing. The question is, where do you
> > > > put it.
> > > 
> > > This is crucial question... If I put the MB API into DPLL sub-driver
> > > then PTP sub-driver will depend on it. Potential GPIO sub-driver as
> > > well.
> > > 
> > > There could be some special library module to provide this for
> > > sub-drivers but is this what we want? And if so where to put it?
> > 
> > MFD is designed to take potentially large, monolithic devices and split
> > them up into smaller, more organised chunks, then Linusify them.  This
> > way, area experts (subsystem maintainers) get to concern themselves only
> > with the remit to which they are most specialised / knowledgable.  MFD
> > will handle how each of these areas are divided up and create all of the
> > shared resources for them.  On the odd occasion it will also provide a
> > _small_ API that the children can use to talk to the parent device.
> > 
> > However .... some devices, like yours, demand an API which is too
> > complex to reside in the MFD subsystem itself.  This is not the first
> > time this has happened and I doubt it will be the last.  My first
> > recommendation is usually to place all of the comms in drivers/platform,
> > since, at least in my own mind, if a complex API is required, then the
> > device has become almost platform-like.  There are lots of examples of
> > H/W comm APIs in there already for you to peruse.
> 
> OK, I will do it differently... Will drop MB API at all from MFD and
> just expose the additional mutex from MFD for multi-op access.
> Mailboxes will be handled directly by sub-devices.
> 
> Short description:
> MFD exposes:
> zl3073x_{read,write}_u{8,16,32,48}() & zl3073x_poll_u8()
> - to read/write/poll registers
> - they checks that multiop_lock is taken when caller is accessing
>   registers from Page 10 and above
> 
> zl3073x_multiop_{lock,unlock}()
> - to protect operation where multiple reads, writes and poll is required
>   to be done atomically

Looks sensible.  If this is aligned with the discussions that have been
taking place between you and Andrew.  Let's see the code before we make
any binding agreements.  =:)

-- 
Lee Jones [李琼斯]

  reply	other threads:[~2025-04-25 10:17 UTC|newest]

Thread overview: 33+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2025-04-24 15:47 [PATCH net-next v4 0/8] Add Microchip ZL3073x support (part 1) Ivan Vecera
2025-04-24 15:47 ` [PATCH net-next v4 1/8] dt-bindings: dpll: Add DPLL device and pin Ivan Vecera
2025-04-25  7:39   ` Krzysztof Kozlowski
2025-04-25  9:36     ` Ivan Vecera
2025-04-25  9:40       ` Krzysztof Kozlowski
2025-04-24 15:47 ` [PATCH net-next v4 2/8] dt-bindings: dpll: Add support for Microchip Azurite chip family Ivan Vecera
2025-04-25  7:41   ` Krzysztof Kozlowski
2025-04-25  9:38     ` Ivan Vecera
2025-04-24 15:47 ` [PATCH net-next v4 3/8] mfd: Add Microchip ZL3073x support Ivan Vecera
2025-04-24 16:34   ` Andrew Lunn
2025-04-24 16:49     ` Ivan Vecera
2025-04-25  3:36   ` kernel test robot
2025-04-24 15:47 ` [PATCH net-next v4 4/8] mfd: zl3073x: Add support for devlink device info Ivan Vecera
2025-04-24 15:47 ` [PATCH net-next v4 5/8] mfd: zl3073x: Add functions to work with register mailboxes Ivan Vecera
2025-04-24 16:43   ` Andrew Lunn
2025-04-24 17:10     ` Ivan Vecera
2025-04-24 19:10       ` Andrew Lunn
2025-04-24 19:26         ` Ivan Vecera
2025-04-24 19:29           ` Andrew Lunn
2025-04-24 19:58             ` Ivan Vecera
2025-04-25  6:55               ` Lee Jones
2025-04-25 10:13                 ` Ivan Vecera
2025-04-25 10:17                   ` Lee Jones [this message]
2025-04-25 10:29                     ` Ivan Vecera
2025-04-24 19:18       ` Andrew Lunn
2025-04-24 19:53         ` Ivan Vecera
2025-04-24 19:57           ` Andrew Lunn
2025-04-25 13:04             ` Ivan Vecera
2025-04-24 15:47 ` [PATCH net-next v4 6/8] mfd: zl3073x: Fetch invariants during probe Ivan Vecera
2025-04-24 15:47 ` [PATCH net-next v4 7/8] mfd: zl3073x: Add clock_id field Ivan Vecera
2025-04-24 15:47 ` [PATCH net-next v4 8/8] mfd: zl3073x: Register DPLL sub-device during init Ivan Vecera
2025-04-24 15:51 ` [PATCH net-next v4 0/8] Add Microchip ZL3073x support (part 1) Lee Jones
2025-04-24 16:29   ` Ivan Vecera

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=20250425101721.GC1567507@google.com \
    --to=lee@kernel.org \
    --cc=Prathosh.Satish@microchip.com \
    --cc=akpm@linux-foundation.org \
    --cc=andrew@lunn.ch \
    --cc=andy@kernel.org \
    --cc=arkadiusz.kubalewski@intel.com \
    --cc=conor+dt@kernel.org \
    --cc=devicetree@vger.kernel.org \
    --cc=ivecera@redhat.com \
    --cc=jiri@resnulli.us \
    --cc=kees@kernel.org \
    --cc=krzk+dt@kernel.org \
    --cc=linux-hardening@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=mschmidt@redhat.com \
    --cc=netdev@vger.kernel.org \
    --cc=robh@kernel.org \
    --cc=vadim.fedorenko@linux.dev \
    /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.