All of lore.kernel.org
 help / color / mirror / Atom feed
From: Bjorn Andersson <bjorn.andersson-/MT0OVThwyLZJqsBc5GL+g@public.gmane.org>
To: Kumar Gala <galak-sgV2jX0FEOL9JmXXK+q4OQ@public.gmane.org>
Cc: Andy Gross <agross-sgV2jX0FEOL9JmXXK+q4OQ@public.gmane.org>,
	Arnd Bergmann <arnd-r2nGTMty4D4@public.gmane.org>,
	Grant Likely
	<grant.likely-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org>,
	Ian Campbell
	<ijc+devicetree-KcIKpvwj1kUDXYZnReoRVg@public.gmane.org>,
	Lee Jones <lee.jones-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org>,
	Liam Girdwood <lgirdwood-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>,
	Mark Brown <broonie-DgEjT+Ai2ygdnm+yROfE0A@public.gmane.org>,
	Mark Rutland <mark.rutland-5wv7dgnIgG8@public.gmane.org>,
	Pawel Moll <pawel.moll-5wv7dgnIgG8@public.gmane.org>,
	Rob Herring <robh+dt-DgEjT+Ai2ygdnm+yROfE0A@public.gmane.org>,
	Samuel Ortiz <sameo-VuQAYsv1563Yd54FQh9/CA@public.gmane.org>,
	"open list:OPEN FIRMWARE AND..."
	<devicetree-u79uwXL29TY76Z2rM5mHXA@public.gmane.org>,
	"linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r@public.gmane.org"
	<linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r@public.gmane.org>,
	linux-arm-msm
	<linux-arm-msm-u79uwXL29TY76Z2rM5mHXA@public.gmane.org>,
	"linux-kernel-u79uwXL29TY76Z2rM5mHXA@public.gmane.org"
	<linux-kernel-u79uwXL29TY76Z2rM5mHXA@public.gmane.org>,
	Jeffrey Hugo <jhugo-sgV2jX0FEOL9JmXXK+q4OQ@public.gmane.org>
Subject: Re: [RFC 0/7] Qualcomm SMEM, SMD, RPM and regulators
Date: Tue, 30 Sep 2014 07:51:32 -0700	[thread overview]
Message-ID: <20140930145131.GL28481@sonymobile.com> (raw)
In-Reply-To: <E6EEBBAE-C710-4280-824D-CC5D54CB2551-sgV2jX0FEOL9JmXXK+q4OQ@public.gmane.org>

On Tue 30 Sep 06:49 PDT 2014, Kumar Gala wrote:

> 
> On Sep 29, 2014, at 7:34 PM, Bjorn Andersson <Bjorn.Andersson@sonymobile.com> wrote:
> 
> > All Qualcomm platforms implements a shared heap among the processors in the
> > SoC, used for sharing data with other parts of the system.
> > 
> > One consumer of items from this heap is the "Shared Memory Driver", a ring
> > buffer based point-to-point communication mechanism used to send either stream
> > or packet based data to remote processors.
> > 
> > Starting with 8x74 this system is used to talk to the Resource Power Manager
> > (RPM), a power efficient "coprocessor" with responsibility of aggregate votes
> > from the various systems in the SoC related to regulators, clocks and bus
> > frequencies.
> > 
> > The PMIC regulators and root clocks in these platforms are only accessible via
> > the RPM, so to get access to these we need the full chain of smem, smd, rpm and
> > a regulator driver implemented. And that is exactly what this series provides.
> > 
> > 
> > A key outstanding question is where in the tree we should put the
> > implementation, for now I dropped them in drivers/soc/qcom but that's only
> > because I don't know where to put it otherwise. I have not found any equivalent
> > of the SMEM driver, SMD resembles mailbox and rpmsg - but comments in that
> > patch on why it's neither.
> > 
> > RPM is a mfd and regulator is a regulator :)
> 
> I still don’t see why RPM support for either A-family or B-family should
> exist in MFD vis drivers/soc/qcom.  What benefit is there in putting this in
> MFD?
> 
> I think both A and B-family support should be in drivers/soc/qcom for the
> current time being until we determine there is some framework that makes more
> sense in the future.  I almost see RPM more like a bus controller than
> anything else.  Something like an I2C bus controller that than has some set
> of devices off of that bus.
> 

When you look at what functionality the RPM exposes it has very much in common
with a PMIC. So after looking at this back and forth for months I think MFD is
a nice fit.

As with all the other pmics we could create a new subsystem (drivers/pmic?) for
this kind of devices that exposes variable size registers for children to read
and write.

But if you can convince the maintainers about that then we have a whole bunch
of stuff in mfd etc that we should move out, so let's not put this in
qcom-staging just for the sake of it.

Regards,
Bjorn
--
To unsubscribe from this list: send the line "unsubscribe devicetree" in
the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

WARNING: multiple messages have this Message-ID (diff)
From: bjorn.andersson@sonymobile.com (Bjorn Andersson)
To: linux-arm-kernel@lists.infradead.org
Subject: [RFC 0/7] Qualcomm SMEM, SMD, RPM and regulators
Date: Tue, 30 Sep 2014 07:51:32 -0700	[thread overview]
Message-ID: <20140930145131.GL28481@sonymobile.com> (raw)
In-Reply-To: <E6EEBBAE-C710-4280-824D-CC5D54CB2551@codeaurora.org>

On Tue 30 Sep 06:49 PDT 2014, Kumar Gala wrote:

> 
> On Sep 29, 2014, at 7:34 PM, Bjorn Andersson <Bjorn.Andersson@sonymobile.com> wrote:
> 
> > All Qualcomm platforms implements a shared heap among the processors in the
> > SoC, used for sharing data with other parts of the system.
> > 
> > One consumer of items from this heap is the "Shared Memory Driver", a ring
> > buffer based point-to-point communication mechanism used to send either stream
> > or packet based data to remote processors.
> > 
> > Starting with 8x74 this system is used to talk to the Resource Power Manager
> > (RPM), a power efficient "coprocessor" with responsibility of aggregate votes
> > from the various systems in the SoC related to regulators, clocks and bus
> > frequencies.
> > 
> > The PMIC regulators and root clocks in these platforms are only accessible via
> > the RPM, so to get access to these we need the full chain of smem, smd, rpm and
> > a regulator driver implemented. And that is exactly what this series provides.
> > 
> > 
> > A key outstanding question is where in the tree we should put the
> > implementation, for now I dropped them in drivers/soc/qcom but that's only
> > because I don't know where to put it otherwise. I have not found any equivalent
> > of the SMEM driver, SMD resembles mailbox and rpmsg - but comments in that
> > patch on why it's neither.
> > 
> > RPM is a mfd and regulator is a regulator :)
> 
> I still don?t see why RPM support for either A-family or B-family should
> exist in MFD vis drivers/soc/qcom.  What benefit is there in putting this in
> MFD?
> 
> I think both A and B-family support should be in drivers/soc/qcom for the
> current time being until we determine there is some framework that makes more
> sense in the future.  I almost see RPM more like a bus controller than
> anything else.  Something like an I2C bus controller that than has some set
> of devices off of that bus.
> 

When you look at what functionality the RPM exposes it has very much in common
with a PMIC. So after looking at this back and forth for months I think MFD is
a nice fit.

As with all the other pmics we could create a new subsystem (drivers/pmic?) for
this kind of devices that exposes variable size registers for children to read
and write.

But if you can convince the maintainers about that then we have a whole bunch
of stuff in mfd etc that we should move out, so let's not put this in
qcom-staging just for the sake of it.

Regards,
Bjorn

WARNING: multiple messages have this Message-ID (diff)
From: Bjorn Andersson <bjorn.andersson@sonymobile.com>
To: Kumar Gala <galak@codeaurora.org>
Cc: Andy Gross <agross@codeaurora.org>, Arnd Bergmann <arnd@arndb.de>,
	Grant Likely <grant.likely@linaro.org>,
	Ian Campbell <ijc+devicetree@hellion.org.uk>,
	Lee Jones <lee.jones@linaro.org>,
	Liam Girdwood <lgirdwood@gmail.com>,
	Mark Brown <broonie@kernel.org>,
	Mark Rutland <mark.rutland@arm.com>,
	Pawel Moll <pawel.moll@arm.com>, Rob Herring <robh+dt@kernel.org>,
	Samuel Ortiz <sameo@linux.intel.com>,
	"open list:OPEN FIRMWARE AND..." <devicetree@vger.kernel.org>,
	"linux-arm-kernel@lists.infradead.org" 
	<linux-arm-kernel@lists.infradead.org>,
	linux-arm-msm <linux-arm-msm@vger.kernel.org>,
	"linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>,
	Jeffrey Hugo <jhugo@codeaurora.org>
Subject: Re: [RFC 0/7] Qualcomm SMEM, SMD, RPM and regulators
Date: Tue, 30 Sep 2014 07:51:32 -0700	[thread overview]
Message-ID: <20140930145131.GL28481@sonymobile.com> (raw)
In-Reply-To: <E6EEBBAE-C710-4280-824D-CC5D54CB2551@codeaurora.org>

On Tue 30 Sep 06:49 PDT 2014, Kumar Gala wrote:

> 
> On Sep 29, 2014, at 7:34 PM, Bjorn Andersson <Bjorn.Andersson@sonymobile.com> wrote:
> 
> > All Qualcomm platforms implements a shared heap among the processors in the
> > SoC, used for sharing data with other parts of the system.
> > 
> > One consumer of items from this heap is the "Shared Memory Driver", a ring
> > buffer based point-to-point communication mechanism used to send either stream
> > or packet based data to remote processors.
> > 
> > Starting with 8x74 this system is used to talk to the Resource Power Manager
> > (RPM), a power efficient "coprocessor" with responsibility of aggregate votes
> > from the various systems in the SoC related to regulators, clocks and bus
> > frequencies.
> > 
> > The PMIC regulators and root clocks in these platforms are only accessible via
> > the RPM, so to get access to these we need the full chain of smem, smd, rpm and
> > a regulator driver implemented. And that is exactly what this series provides.
> > 
> > 
> > A key outstanding question is where in the tree we should put the
> > implementation, for now I dropped them in drivers/soc/qcom but that's only
> > because I don't know where to put it otherwise. I have not found any equivalent
> > of the SMEM driver, SMD resembles mailbox and rpmsg - but comments in that
> > patch on why it's neither.
> > 
> > RPM is a mfd and regulator is a regulator :)
> 
> I still don’t see why RPM support for either A-family or B-family should
> exist in MFD vis drivers/soc/qcom.  What benefit is there in putting this in
> MFD?
> 
> I think both A and B-family support should be in drivers/soc/qcom for the
> current time being until we determine there is some framework that makes more
> sense in the future.  I almost see RPM more like a bus controller than
> anything else.  Something like an I2C bus controller that than has some set
> of devices off of that bus.
> 

When you look at what functionality the RPM exposes it has very much in common
with a PMIC. So after looking at this back and forth for months I think MFD is
a nice fit.

As with all the other pmics we could create a new subsystem (drivers/pmic?) for
this kind of devices that exposes variable size registers for children to read
and write.

But if you can convince the maintainers about that then we have a whole bunch
of stuff in mfd etc that we should move out, so let's not put this in
qcom-staging just for the sake of it.

Regards,
Bjorn

  parent reply	other threads:[~2014-09-30 14:51 UTC|newest]

Thread overview: 87+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-09-30  0:34 [RFC 0/7] Qualcomm SMEM, SMD, RPM and regulators Bjorn Andersson
2014-09-30  0:34 ` Bjorn Andersson
2014-09-30  0:34 ` Bjorn Andersson
2014-09-30  0:34 ` [RFC 1/7] soc: qcom: Add device tree binding for SMEM Bjorn Andersson
2014-09-30  0:34   ` Bjorn Andersson
2014-09-30  0:34   ` Bjorn Andersson
2014-09-30 13:52   ` Kumar Gala
2014-09-30 13:52     ` Kumar Gala
2014-09-30 19:03   ` Stephen Boyd
2014-09-30 19:03     ` Stephen Boyd
2014-09-30 20:00     ` Bjorn Andersson
2014-09-30 20:00       ` Bjorn Andersson
     [not found]   ` <1412037291-16880-2-git-send-email-bjorn.andersson-/MT0OVThwyLZJqsBc5GL+g@public.gmane.org>
2014-09-30 21:55     ` Suman Anna
2014-09-30 21:55       ` Suman Anna
2014-09-30 21:55       ` Suman Anna
2014-09-30  0:34 ` [RFC 2/7] soc: qcom: Add device tree binding for SMD Bjorn Andersson
2014-09-30  0:34   ` Bjorn Andersson
2014-09-30  0:34   ` Bjorn Andersson
2014-09-30  0:34 ` [RFC 3/7] mfd: devicetree: bindings: Add Qualcomm SMD based RPM DT binding Bjorn Andersson
2014-09-30  0:34   ` Bjorn Andersson
2014-09-30  0:34   ` Bjorn Andersson
2014-09-30 13:46   ` Kumar Gala
2014-09-30 13:46     ` Kumar Gala
2014-09-30 14:37     ` Bjorn Andersson
2014-09-30 14:37       ` Bjorn Andersson
2014-09-30 23:16       ` Jeffrey Hugo
2014-09-30 23:16         ` Jeffrey Hugo
2014-10-01  0:08         ` Bjorn Andersson
2014-10-01  0:08           ` Bjorn Andersson
2014-10-08 21:47           ` Jeffrey Hugo
2014-10-08 21:47             ` Jeffrey Hugo
2014-10-24 15:59             ` Bjorn Andersson
2014-10-24 15:59               ` Bjorn Andersson
2014-09-30  0:34 ` [RFC 4/7] soc: qcom: Add Shared Memory Manager driver Bjorn Andersson
2014-09-30  0:34   ` Bjorn Andersson
2014-09-30  0:34   ` Bjorn Andersson
2014-09-30  6:17   ` Kiran Padwal
2014-09-30  6:17     ` Kiran Padwal
2014-09-30  6:28     ` Kiran Padwal
2014-09-30  6:28       ` Kiran Padwal
2014-09-30 14:15       ` Bjorn Andersson
2014-09-30 14:15         ` Bjorn Andersson
2014-10-08 21:33   ` Jeffrey Hugo
2014-10-08 21:33     ` Jeffrey Hugo
2014-10-17 14:51     ` Bjorn Andersson
2014-10-17 14:51       ` Bjorn Andersson
2014-10-26 15:04       ` Andreas Färber
2014-10-26 15:04         ` Andreas Färber
2014-10-28  0:34     ` Bjorn Andersson
2014-10-28  0:34       ` Bjorn Andersson
2014-09-30  0:34 ` [RFC 5/7] soc: qcom: Add Shared Memory Driver Bjorn Andersson
2014-09-30  0:34   ` Bjorn Andersson
2014-09-30  0:34   ` Bjorn Andersson
2014-10-02 22:38   ` Stephen Boyd
2014-10-02 22:38     ` Stephen Boyd
2014-10-04  0:02     ` Bjorn Andersson
2014-10-04  0:02       ` Bjorn Andersson
     [not found]   ` <1412037291-16880-6-git-send-email-bjorn.andersson-/MT0OVThwyLZJqsBc5GL+g@public.gmane.org>
2014-10-29 14:28     ` Ohad Ben-Cohen
2014-10-29 14:28       ` Ohad Ben-Cohen
2014-10-29 14:28       ` Ohad Ben-Cohen
2014-10-30  0:38       ` Bjorn Andersson
2014-10-30  0:38         ` Bjorn Andersson
2014-10-30 13:34         ` Ohad Ben-Cohen
2014-10-30 13:34           ` Ohad Ben-Cohen
2014-10-30 15:04           ` Bjorn Andersson
2014-10-30 15:04             ` Bjorn Andersson
2014-09-30  0:34 ` [RFC 6/7] mfd: qcom-smd-rpm: Driver for the Qualcomm RPM over SMD Bjorn Andersson
2014-09-30  0:34   ` Bjorn Andersson
2014-09-30  0:34   ` Bjorn Andersson
2014-10-08  8:40   ` Lee Jones
2014-10-08  8:40     ` Lee Jones
2014-10-17 13:55     ` Bjorn Andersson
2014-10-17 13:55       ` Bjorn Andersson
2014-10-20  7:22       ` Lee Jones
2014-10-20  7:22         ` Lee Jones
2014-10-24 16:45         ` Bjorn Andersson
2014-10-24 16:45           ` Bjorn Andersson
2014-09-30  0:34 ` [RFC 7/7] regulator: qcom-smd-rpm: Regulator driver for the Qualcomm RPM Bjorn Andersson
2014-09-30  0:34   ` Bjorn Andersson
2014-09-30  0:34   ` Bjorn Andersson
2014-10-01 18:13   ` Mark Brown
2014-10-01 18:13     ` Mark Brown
2014-09-30 13:49 ` [RFC 0/7] Qualcomm SMEM, SMD, RPM and regulators Kumar Gala
2014-09-30 13:49   ` Kumar Gala
     [not found]   ` <E6EEBBAE-C710-4280-824D-CC5D54CB2551-sgV2jX0FEOL9JmXXK+q4OQ@public.gmane.org>
2014-09-30 14:51     ` Bjorn Andersson [this message]
2014-09-30 14:51       ` Bjorn Andersson
2014-09-30 14:51       ` Bjorn Andersson

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=20140930145131.GL28481@sonymobile.com \
    --to=bjorn.andersson-/mt0ovthwylzjqsbc5gl+g@public.gmane.org \
    --cc=agross-sgV2jX0FEOL9JmXXK+q4OQ@public.gmane.org \
    --cc=arnd-r2nGTMty4D4@public.gmane.org \
    --cc=broonie-DgEjT+Ai2ygdnm+yROfE0A@public.gmane.org \
    --cc=devicetree-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
    --cc=galak-sgV2jX0FEOL9JmXXK+q4OQ@public.gmane.org \
    --cc=grant.likely-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org \
    --cc=ijc+devicetree-KcIKpvwj1kUDXYZnReoRVg@public.gmane.org \
    --cc=jhugo-sgV2jX0FEOL9JmXXK+q4OQ@public.gmane.org \
    --cc=lee.jones-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org \
    --cc=lgirdwood-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org \
    --cc=linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r@public.gmane.org \
    --cc=linux-arm-msm-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
    --cc=linux-kernel-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
    --cc=mark.rutland-5wv7dgnIgG8@public.gmane.org \
    --cc=pawel.moll-5wv7dgnIgG8@public.gmane.org \
    --cc=robh+dt-DgEjT+Ai2ygdnm+yROfE0A@public.gmane.org \
    --cc=sameo-VuQAYsv1563Yd54FQh9/CA@public.gmane.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.