summaryrefslogtreecommitdiffstats
path: root/drivers
diff options
context:
space:
mode:
authorAlexander Sverdlin <alexander.sverdlin@sysgo.com>2012-11-29 08:59:29 +0100
committerGrant Likely <grant.likely@secretlab.ca>2012-11-29 18:36:57 +0100
commitf3b6159e6a12136ac9c59aaa92ba9f3e484df650 (patch)
tree52b58760fbd3a3a427042670dee00761627e5d69 /drivers
parentof_mdio: Honour "status=disabled" property of device (diff)
downloadlinux-f3b6159e6a12136ac9c59aaa92ba9f3e484df650.tar.xz
linux-f3b6159e6a12136ac9c59aaa92ba9f3e484df650.zip
of/spi: Honour "status=disabled" property of device
Currently of_register_spi_devices() function registers all SPI devices, independetly from their status property in device tree. According to "ePAPR 1.1" spec, device should only be registered if there is no "status" property, or it has "ok" (or "okay") value (see of_device_is_available()). In case of "platform devices", of_platform_device_create_pdata() checks for "status" and ensures that disabled devices are not pupulated. But such check for SPI buses was missing until now. Fix it. Signed-off-by: Alexander Sverdlin <alexander.sverdlin@sysgo.com> Signed-off-by: Grant Likely <grant.likely@secretlab.ca>
Diffstat (limited to 'drivers')
-rw-r--r--drivers/spi/spi.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/spi/spi.c b/drivers/spi/spi.c
index 84c2861d6f4d..d3e64080c409 100644
--- a/drivers/spi/spi.c
+++ b/drivers/spi/spi.c
@@ -819,7 +819,7 @@ static void of_register_spi_devices(struct spi_master *master)
if (!master->dev.of_node)
return;
- for_each_child_of_node(master->dev.of_node, nc) {
+ for_each_available_child_of_node(master->dev.of_node, nc) {
/* Alloc an spi_device */
spi = spi_alloc_device(master);
if (!spi) {