imx: mx7: psci: provide complete PSCI 1.0 implementation
authorStefan Agner <stefan.agner@toradex.com>
Sun, 24 Jun 2018 19:09:56 +0000 (21:09 +0200)
committerStefano Babic <sbabic@denx.de>
Mon, 23 Jul 2018 08:54:01 +0000 (10:54 +0200)
commita89eb89b385908df511190cef7e360cb4c3f12f6
treeb0c092c7e3f172e5c474d72277696eec4eae7f30
parentcff38c5504485af2aad3cdb5e0d654ae4d8e204d
imx: mx7: psci: provide complete PSCI 1.0 implementation

PSCI 1.0 require PSCI_VERSION, PSCI_FEATURES, AFFINITY_INFO and
CPU_SUSPEND to be implemented. Commit 0ec3d98f7692 ("mx7_common:
use psci 1.0 instead of 0.1") marked the i.MX 7 implementation to
be PSCI 1.0 compliant but failed to implement those functions.
Especially the missing PSCI version callback was noticeable when
booting Linux:

  [    0.000000] psci: probing for conduit method from DT.
  [    0.000000] psci: PSCIv65535.65535 detected in firmware.
  [    0.000000] psci: Using standard PSCI v0.2 function IDs
  [    0.000000] psci: MIGRATE_INFO_TYPE not supported.
  [    0.000000] psci: SMC Calling Convention v1.0

This patch provides a minimal implementation thereof. With this
patch applied Linux detects PSCI 1.0:

  [    0.000000] psci: probing for conduit method from DT.
  [    0.000000] psci: PSCIv1.0 detected in firmware.
  [    0.000000] psci: Using standard PSCI v0.2 function IDs
  [    0.000000] psci: MIGRATE_INFO_TYPE not supported.
  [    0.000000] psci: SMC Calling Convention v1.0

Fixes: 0ec3d98f7692 ("mx7_common: use psci 1.0 instead of 0.1")
Suggested-by: Mark Rutland <mark.rutland@arm.com>
Signed-off-by: Stefan Agner <stefan.agner@toradex.com>
arch/arm/mach-imx/mx7/psci-mx7.c