Skip to content

Commit

Permalink
firmware: arm_scmi: add initial support for performance protocol
Browse files Browse the repository at this point in the history
The performance protocol is intended for the performance management of
group(s) of device(s) that run in the same performance domain. It
includes even the CPUs. A performance domain is defined by a set of
devices that always have to run at the same performance level.
For example, a set of CPUs that share a voltage domain, and have a
common frequency control, is said to be in the same performance domain.

The commands in this protocol provide functionality to describe the
protocol version, describe various attribute flags, set and get the
performance level of a domain. It also supports discovery of the list
of performance levels supported by a performance domain, and the
properties of each performance level.

This patch adds basic support for the performance protocol.

Cc: Arnd Bergmann <arnd@arndb.de>
Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Signed-off-by: Sudeep Holla <sudeep.holla@arm.com>
  • Loading branch information
Sudeep Holla committed Feb 28, 2018
1 parent 933c504 commit a9e3fbf
Show file tree
Hide file tree
Showing 4 changed files with 522 additions and 1 deletion.
2 changes: 1 addition & 1 deletion drivers/firmware/arm_scmi/Makefile
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
obj-y = scmi-bus.o scmi-driver.o scmi-protocols.o
scmi-bus-y = bus.o
scmi-driver-y = driver.o
scmi-protocols-y = base.o
scmi-protocols-y = base.o perf.o
1 change: 1 addition & 0 deletions drivers/firmware/arm_scmi/common.h
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,7 @@
#define PROTOCOL_REV_MAJOR(x) ((x) >> PROTOCOL_REV_MINOR_BITS)
#define PROTOCOL_REV_MINOR(x) ((x) & PROTOCOL_REV_MINOR_MASK)
#define MAX_PROTOCOLS_IMP 16
#define MAX_OPPS 16

enum scmi_common_cmd {
PROTOCOL_VERSION = 0x0,
Expand Down
Loading

0 comments on commit a9e3fbf

Please sign in to comment.