[U-Boot] [PATCH] ARM: tegra: add IVC protocol implementation

Stephen Warren swarren at wwwdotorg.org
Mon Jul 25 21:57:58 CEST 2016


On 07/22/2016 08:08 PM, Simon Glass wrote:
> Hi Stephen,
>
> On 18 July 2016 at 12:17, Stephen Warren <swarren at wwwdotorg.org> wrote:
>> From: Stephen Warren <swarren at nvidia.com>
>>
>> IVC (Inter-VM Communication) protocol is a Tegra-specific IPC (Inter
>> Processor Communication) framework. Within the context of U-Boot, it is
>> typically used for communication between the main CPU and various
>> auxiliary processors. In particular, it will be used to communicate with
>> the BPMP (Boot and Power Management Processor) on Tegra186 in order to
>> manipulate clocks and reset signals.
>>
>> Signed-off-by: Stephen Warren <swarren at nvidia.com>
>> ---
>> This depends on "ARM: tegra: unify Tegra186 Makefile a bit" (which I just
>> sent) purely for a tiny bit of diff context in the Makefile. Otherwise,
>> it's entirely independent.
>>
>>   arch/arm/include/asm/arch-tegra/ivc.h | 179 +++++++++++
>>   arch/arm/mach-tegra/Kconfig           |   9 +
>>   arch/arm/mach-tegra/Makefile          |   1 +
>>   arch/arm/mach-tegra/ivc.c             | 553 ++++++++++++++++++++++++++++++++++
>>   4 files changed, 742 insertions(+)
>>   create mode 100644 arch/arm/include/asm/arch-tegra/ivc.h
>>   create mode 100644 arch/arm/mach-tegra/ivc.c
>
> Can this use driver model? It seems different from remoteproc. Maybe
> mailbox or blk?

This code is essentially utility/implementation code that will be called 
from a "DM-enabled" driver. The BPMP driver will be instantiated from DT 
like any other device, and will "host"/use an IVC channel, hence call 
the IVC code.



More information about the U-Boot mailing list