drivers: cci: add missing CCI port availability firmware check
commit801f33be8e902d8cea75cb7ac056d07c4fdd25f8
authorLorenzo Pieralisi <lorenzo.pieralisi@arm.com>
Fri, 23 Sep 2016 13:09:07 +0000 (23 14:09 +0100)
committerSudeep Holla <sudeep.holla@arm.com>
Mon, 17 Oct 2016 13:27:54 +0000 (17 14:27 +0100)
tree94b019dec67854b8baa1b7aad43bfae338fb48b1
parent525d4015e633027c93645208a9bb9a6ce8d3f5a6
drivers: cci: add missing CCI port availability firmware check

The CCI ports programming interface is available to the kernel
only when booted in secure mode (or when firmware enables
non-secure access to override CCI ports control). In both cases,
firmware reports the CCI ports availability through the device
tree CCI ports nodes, which must be parsed and their status checked
by the kernel probing path.

This check is currently missing and may cause the kernel to
erroneously believe it is free to take control of CCI ports
where in practice CCI ports control is forbidden.

Add the missing CCI port availability check to the CCI driver
in order to guarantee sane CCI usage.

Cc: Liviu Dudau <liviu.dudau@arm.com>
Cc: Suzuki K Poulose <suzuki.poulose@arm.com>
Cc: Marc Zyngier <marc.zyngier@arm.com>
Acked-by: Nicolas Pitre <nico@linaro.org>
Signed-off-by: Lorenzo Pieralisi <lorenzo.pieralisi@arm.com>
Signed-off-by: Sudeep Holla <sudeep.holla@arm.com>
drivers/bus/arm-cci.c