All of lore.kernel.org
 help / color / mirror / Atom feed
* [RFC 0/6] System resource management
@ 2017-11-24 14:36 Arnaud Pouliquen
  2017-11-24 14:36 ` [RFC 1/6] remoteproc: add early probed subdevices Arnaud Pouliquen
                   ` (5 more replies)
  0 siblings, 6 replies; 12+ messages in thread
From: Arnaud Pouliquen @ 2017-11-24 14:36 UTC (permalink / raw)
  To: Bjorn Andersson
  Cc: linux-remoteproc, arnaud.pouliquen,
	Loic PALLARDY  <loic.pallardy@st.com>, Fabien DESSENNE,
	Suman Anna

This RFC follows discussions in OpenAMP meeting around a resource manager 
for the remote processor.
Here is a patchset that implements a system resource management.
By system resource we speak about resource that is requested to operate
a peripheral, used by a remote processor. These resources can introduce 
potential contention if they are not controlled by one core.

In this first patch-set the system resource manager configures and enables 
the following system resources.
- Clocks
- GPIOs
- Regulators 

Theses resources are declared in devicetree sub-nodes of the resource manager.
A subnode corresponds to one peripheral used by the remote processor.
For each peripheral a generic driver can be probed to handle the system
resource. Developer can also define his own driver for more complexe use 
cases.

Know limitations:
- Assignement of a peripheral is static. Means that peripheral assignement
  can not switch from one core to another core during runtime.
- Configuration of the system resources are also static. No update of a 
resource configuration during runtime.

=> Both limitations could be treated adding in a dynamic aspect based on a 
RPMsg service.
TI already implements a solution (which could be easily port on the top of this series):  
http://git.omapzoom.org/?p=repo/sysbios-rpmsg.git;a=summary


Fabien Dessenne (6):
  remoteproc: add early probed subdevices
  dt-bindings: remoteproc: add system resource manager (SRM)
  remoteproc: add system resource manager core
  remoteproc: add system resource manager device
  remoteproc: Add posibility to probe a sub device.
  remoteproc: sti: select srm

 .../devicetree/bindings/remoteproc/rproc-srm.txt   |  45 ++
 Documentation/remoteproc.txt                       |  23 +
 drivers/remoteproc/Kconfig                         |  20 +
 drivers/remoteproc/Makefile                        |   2 +
 drivers/remoteproc/remoteproc_core.c               |  70 +++-
 drivers/remoteproc/rproc_srm_core.c                | 202 +++++++++
 drivers/remoteproc/rproc_srm_dev.c                 | 462 +++++++++++++++++++++
 include/linux/remoteproc.h                         |   7 +
 8 files changed, 820 insertions(+), 11 deletions(-)
 create mode 100644 Documentation/devicetree/bindings/remoteproc/rproc-srm.txt
 create mode 100644 drivers/remoteproc/rproc_srm_core.c
 create mode 100644 drivers/remoteproc/rproc_srm_dev.c

-- 
2.7.4

^ permalink raw reply	[flat|nested] 12+ messages in thread

end of thread, other threads:[~2017-12-21 17:46 UTC | newest]

Thread overview: 12+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2017-11-24 14:36 [RFC 0/6] System resource management Arnaud Pouliquen
2017-11-24 14:36 ` [RFC 1/6] remoteproc: add early probed subdevices Arnaud Pouliquen
2017-12-14  6:11   ` Bjorn Andersson
2017-11-24 14:36 ` [RFC 2/6] dt-bindings: remoteproc: add system resource manager (SRM) Arnaud Pouliquen
2017-12-14  5:59   ` Bjorn Andersson
2017-12-21 17:46     ` Arnaud Pouliquen
2017-11-24 14:36 ` [RFC 3/6] remoteproc: add system resource manager core Arnaud Pouliquen
2017-12-14  6:15   ` Bjorn Andersson
2017-11-24 14:36 ` [RFC 4/6] remoteproc: add system resource manager device Arnaud Pouliquen
2017-11-24 14:36 ` [RFC 5/6] remoteproc: Add posibility to probe a sub device Arnaud Pouliquen
2017-12-14  6:24   ` Bjorn Andersson
2017-11-24 14:36 ` [RFC 6/6] remoteproc: sti: select srm Arnaud Pouliquen

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.