firmware: tegra: Add BPMP support
authorThierry Reding <treding@nvidia.com>
Fri, 19 Aug 2016 17:05:35 +0000 (19:05 +0200)
committerThierry Reding <treding@nvidia.com>
Fri, 18 Nov 2016 13:33:43 +0000 (14:33 +0100)
commit983de5f97169ab59d4cb0f60d9d9157778ce4a5e
tree630ac9372721161c85d83b9ce68f309f87094957
parentca791d7f425635b63706e00896a141f85f7de463
firmware: tegra: Add BPMP support

The Boot and Power Management Processor (BPMP) is a co-processor found
on Tegra SoCs. It is designed to handle the early stages of the boot
process and offload power management tasks (such as clocks, resets,
powergates, ...) as well as system control services.

Compared to the ARM SCPI, the services provided by BPMP are message-
based rather than method-based. The BPMP firmware driver provides the
services to transmit data to and receive data from the BPMP. Users can
also register a Message ReQuest (MRQ), for which a service routine will
be run when a corresponding event is received from the firmware.

A set of messages, called the BPMP ABI, are specified for a number of
different services provided by the BPMP (such as clocks or resets).

Based on work by Sivaram Nair <sivaramn@nvidia.com> and Joseph Lo
<josephl@nvidia.com>.

Signed-off-by: Thierry Reding <treding@nvidia.com>
drivers/firmware/tegra/Kconfig
drivers/firmware/tegra/Makefile
drivers/firmware/tegra/bpmp.c [new file with mode: 0644]
include/soc/tegra/bpmp-abi.h [new file with mode: 0644]
include/soc/tegra/bpmp.h [new file with mode: 0644]