tree d3fdfe93e182f33dc6664bce0db81102fa77b0a3
parent da85170d9a7ed1ea97df8f647afce6c8ceabe33c
author Sandrine Bailleux <sandrine.bailleux@arm.com> 1426690373 +0000
committer Dan Handley <dan.handley@arm.com> 1428943651 +0100

Juno: Move to the new ARM SCP Messaging Interfaces

The communication protocol used between the AP cores and the SCP
has undergone a number of changes. This patch makes the required
modifications to the SCP Boot Protocol, SCPI Protocol and MHU
driver code in the Juno platform code so that the AP cores are
still able to communicate with the SCP.

This patch focuses on the mandatory changes to make it work. The
design of this code needs to be improved but this will come in
a subsequent patch.

The main changes are:

 - MHU communication protocol

   - The command ID and payload size are no longer written into the
     MHU registers directly. Instead, they are stored in the payload
     area. The MHU registers are now used only as a doorbell to kick
     off messages. Same goes for any command result, the AP has to
     pick it up from the payload area.

 - SCP Boot Protocol

   - The BL3-0 image is now expected to embed a checksum. This
     checksum must be passed to the SCP, which uses it to check the
     integrity of the image it received.

   - On Juno, the BL3-0 image used to be transferred a block (4KB)
     at a time. The SCP now supports receiving up to 128KB at a
     time, which is more than the size of the BL3-0 image.
     Therefore, the image is now sent in one go.

   - The command IDs have changed.

 - SCPI Protocol

   - On Juno, the size of the SCPI payload has been reduced down
     from 512 bytes to 256 bytes. This changes the base address
     of the AP-to-SCP payload area.

   - For commands that have a response, the response is the same SCPI
     header that was sent, except for the size and the status, which
     both must be updated appropriately. Success/Failure of a command
     is determined by looking at the updated status code.

   - Some command IDs have changed.

NOTE: THIS PATCH BREAKS COMPATIBILITY WITH FORMER VERSIONS OF THE SCP
FIRMWARE AND THUS REQUIRES AN UPDATE OF THIS BINARY. THE LATEST SCP
BINARY CAN BE OBTAINED FROM ARM CONNECTED COMMUNITY WEBSITE.

Change-Id: Ia5f6b95fe32401ee04a3805035748e8ef6718da7
