All of lore.kernel.org
 help / color / mirror / Atom feed
From: Sudeep Holla <sudeep.holla@arm.com>
To: Etienne Carriere <etienne.carriere@linaro.org>
Cc: Souvik Chakravarty <Souvik.Chakravarty@arm.com>,
	linux-kernel@vger.kernel.org,
	"moderated list:ARM/FREESCALE IMX / MXC ARM ARCHITECTURE"
	<linux-arm-kernel@lists.infradead.org>,
	Sudeep Holla <sudeep.holla@arm.com>,
	Vincent Guittot <vincent.guittot@linaro.org>,
	Cristian Marussi <cristian.marussi@arm.com>
Subject: Re: [PATCH 1/5] firmware: arm_scmi: always initialize protocols
Date: Mon, 12 Oct 2020 10:32:12 +0100	[thread overview]
Message-ID: <20201012092827.GB16519@bogus> (raw)
In-Reply-To: <CAN5uoS9YffDZa6YOnJ_35ueMbkvCPuQ1=0KAuX5=k=kQYm+_Ng@mail.gmail.com>

On Fri, Oct 09, 2020 at 02:31:55PM +0200, Etienne Carriere wrote:
> On Thu, 8 Oct 2020 at 21:17, Sudeep Holla <sudeep.holla@arm.com> wrote:
> >
> > On Thu, Oct 08, 2020 at 04:37:18PM +0200, Etienne Carriere wrote:
> > > Remove the IDR replacement that prevent initializing an SCMI protocol
> > > when it has already been initialized. This is needed when there are
> > > several SCMI agents that do implement a given SCMI protocol unless
> > > what only the related SCMI protocol communication is initialized only
> > > for first probed agent.
> > >
> >
> > Can you please elaborate on your usecase please. What do you mean by several
> > SCMI agents here. OSPM is the only agent we are interested here. What
> > other agents is this driver supposed to handle here. We allocate memory
> > in init and calling init multiple times messes up the allocated and
> > initialised structures.
> >
> > So NACK for this patch as it needs more work if we need this at all.
> >
>
> Hello Sudeep,
>
> Considering a device with several SCMI servers spread over several co-processor
> and possibly also in the Arm TZ secure world, each of these servers
> uses a specific SCMI channel. Without this change, each SCMI protocol gets
> initialized only for the first agent device that is probed.
>

Fair enough, but it also adds complexity. Do you have a master SCMI server
implementation in that case. As some protocols like system might need to
be broadcast to all servers and master server needs to take appropriate
action.

> My setup is also a bit specific. My device has several secure configuration
> features that can individually be enabled or not. For example, configuring
> domain X as secure makes some clocks reachable by Linux only through SCMI,
> and configuring domain Y as secure makes other clocks reachable by Linux
> only through SCMI. For flexibility, I expose domain X resources (here clocks)
> to an Linux agent whereas domain Y resources (here clocks also) are
> exposed to another agent, each agent with its specific transport/channel.
> Enabling each agent node in the Linux FDT allows to define which SCMI clocks
> get exposed and hence registered in the kernel.
> Without the change proposed here, I cannot get the clocks exposed to both
> agents when enabled as the SCMI clock protocol is initialized only for the 1st
> probbed agent device.
>

OK, as Cristian has already mentioned we need to clean up a bit on these
initcalls and Cristian has some WIP patches, I would like to wait and look
at them instead of breaking other usecases with patch(multiple devices
per protocol within one scmi server)

-- 
Regards,
Sudeep

_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

WARNING: multiple messages have this Message-ID (diff)
From: Sudeep Holla <sudeep.holla@arm.com>
To: Etienne Carriere <etienne.carriere@linaro.org>
Cc: linux-kernel@vger.kernel.org,
	"moderated list:ARM/FREESCALE IMX / MXC ARM ARCHITECTURE" 
	<linux-arm-kernel@lists.infradead.org>,
	Cristian Marussi <cristian.marussi@arm.com>,
	Vincent Guittot <vincent.guittot@linaro.org>,
	Sudeep Holla <sudeep.holla@arm.com>,
	Souvik Chakravarty <Souvik.Chakravarty@arm.com>
Subject: Re: [PATCH 1/5] firmware: arm_scmi: always initialize protocols
Date: Mon, 12 Oct 2020 10:32:12 +0100	[thread overview]
Message-ID: <20201012092827.GB16519@bogus> (raw)
In-Reply-To: <CAN5uoS9YffDZa6YOnJ_35ueMbkvCPuQ1=0KAuX5=k=kQYm+_Ng@mail.gmail.com>

On Fri, Oct 09, 2020 at 02:31:55PM +0200, Etienne Carriere wrote:
> On Thu, 8 Oct 2020 at 21:17, Sudeep Holla <sudeep.holla@arm.com> wrote:
> >
> > On Thu, Oct 08, 2020 at 04:37:18PM +0200, Etienne Carriere wrote:
> > > Remove the IDR replacement that prevent initializing an SCMI protocol
> > > when it has already been initialized. This is needed when there are
> > > several SCMI agents that do implement a given SCMI protocol unless
> > > what only the related SCMI protocol communication is initialized only
> > > for first probed agent.
> > >
> >
> > Can you please elaborate on your usecase please. What do you mean by several
> > SCMI agents here. OSPM is the only agent we are interested here. What
> > other agents is this driver supposed to handle here. We allocate memory
> > in init and calling init multiple times messes up the allocated and
> > initialised structures.
> >
> > So NACK for this patch as it needs more work if we need this at all.
> >
>
> Hello Sudeep,
>
> Considering a device with several SCMI servers spread over several co-processor
> and possibly also in the Arm TZ secure world, each of these servers
> uses a specific SCMI channel. Without this change, each SCMI protocol gets
> initialized only for the first agent device that is probed.
>

Fair enough, but it also adds complexity. Do you have a master SCMI server
implementation in that case. As some protocols like system might need to
be broadcast to all servers and master server needs to take appropriate
action.

> My setup is also a bit specific. My device has several secure configuration
> features that can individually be enabled or not. For example, configuring
> domain X as secure makes some clocks reachable by Linux only through SCMI,
> and configuring domain Y as secure makes other clocks reachable by Linux
> only through SCMI. For flexibility, I expose domain X resources (here clocks)
> to an Linux agent whereas domain Y resources (here clocks also) are
> exposed to another agent, each agent with its specific transport/channel.
> Enabling each agent node in the Linux FDT allows to define which SCMI clocks
> get exposed and hence registered in the kernel.
> Without the change proposed here, I cannot get the clocks exposed to both
> agents when enabled as the SCMI clock protocol is initialized only for the 1st
> probbed agent device.
>

OK, as Cristian has already mentioned we need to clean up a bit on these
initcalls and Cristian has some WIP patches, I would like to wait and look
at them instead of breaking other usecases with patch(multiple devices
per protocol within one scmi server)

-- 
Regards,
Sudeep

  parent reply	other threads:[~2020-10-12  9:33 UTC|newest]

Thread overview: 54+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-10-08 14:37 [PATCH 1/5] firmware: arm_scmi: always initialize protocols Etienne Carriere
2020-10-08 14:37 ` Etienne Carriere
2020-10-08 14:37 ` [PATCH 2/5] firmware: arm_scmi: fix transfer missing re-initialization Etienne Carriere
2020-10-08 14:37   ` Etienne Carriere
2020-10-08 21:18   ` Sudeep Holla
2020-10-08 21:18     ` Sudeep Holla
2020-10-09 12:38     ` Etienne Carriere
2020-10-09 12:38       ` Etienne Carriere
2020-10-09 15:20       ` Sudeep Holla
2020-10-09 15:20         ` Sudeep Holla
2020-10-12 14:17   ` [PATCH] firmware: arm_scmi: Add missing Rx size re-initialisation Sudeep Holla
2020-10-12 14:17     ` Sudeep Holla
2020-10-13  9:58     ` Etienne Carriere
2020-10-13  9:58       ` Etienne Carriere
2020-10-13 10:16       ` Sudeep Holla
2020-10-13 10:16         ` Sudeep Holla
2020-10-13 10:50     ` Sudeep Holla
2020-10-13 10:50       ` Sudeep Holla
2020-10-08 14:37 ` [PATCH 3/5] firmware: arm_scmi: add config dependency for smc transport Etienne Carriere
2020-10-08 14:37   ` Etienne Carriere
2020-10-08 21:08   ` Sudeep Holla
2020-10-08 21:08     ` Sudeep Holla
2020-10-09 12:33     ` Etienne Carriere
2020-10-09 12:33       ` Etienne Carriere
2020-10-09 15:58       ` Sudeep Holla
2020-10-09 15:58         ` Sudeep Holla
2020-10-12 10:11         ` Etienne Carriere
2020-10-12 10:11           ` Etienne Carriere
2020-10-08 14:37 ` [PATCH 4/5] firmware: arm_scmi: smc transport supports multi-message pool Etienne Carriere
2020-10-08 14:37   ` Etienne Carriere
2020-10-08 21:11   ` Sudeep Holla
2020-10-08 21:11     ` Sudeep Holla
2020-10-09 12:43     ` Etienne Carriere
2020-10-09 12:43       ` Etienne Carriere
2020-10-09 15:17       ` Sudeep Holla
2020-10-09 15:17         ` Sudeep Holla
2020-10-12  8:57         ` Sudeep Holla
2020-10-12  8:57           ` Sudeep Holla
2020-10-12  9:12           ` Etienne Carriere
2020-10-12  9:12             ` Etienne Carriere
2020-10-08 14:37 ` [PATCH 5/5] firmware: arm_scmi: fix ARCH_COLD_RESET Etienne Carriere
2020-10-08 14:37   ` Etienne Carriere
2020-10-08 21:16   ` Sudeep Holla
2020-10-08 21:16     ` Sudeep Holla
2020-10-08 19:17 ` [PATCH 1/5] firmware: arm_scmi: always initialize protocols Sudeep Holla
2020-10-08 19:17   ` Sudeep Holla
2020-10-09 12:31   ` Etienne Carriere
2020-10-09 12:31     ` Etienne Carriere
2020-10-09 16:31     ` Cristian Marussi
2020-10-09 16:31       ` Cristian Marussi
2020-10-12  9:32     ` Sudeep Holla [this message]
2020-10-12  9:32       ` Sudeep Holla
2020-10-13 10:45 ` Sudeep Holla
2020-10-13 10:45   ` Sudeep Holla

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=20201012092827.GB16519@bogus \
    --to=sudeep.holla@arm.com \
    --cc=Souvik.Chakravarty@arm.com \
    --cc=cristian.marussi@arm.com \
    --cc=etienne.carriere@linaro.org \
    --cc=linux-arm-kernel@lists.infradead.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=vincent.guittot@linaro.org \
    /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.