aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAlexander Sverdlin <alexander.sverdlin@sysgo.com>2012-11-29 02:59:29 -0500
committerGrant Likely <grant.likely@secretlab.ca>2012-11-29 12:36:57 -0500
commitf3b6159e6a12136ac9c59aaa92ba9f3e484df650 (patch)
tree52b58760fbd3a3a427042670dee00761627e5d69
parente207e7619cc9be8dedd910d9c6ce3ee56c7f53d0 (diff)
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>
-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)
819 if (!master->dev.of_node) 819 if (!master->dev.of_node)
820 return; 820 return;
821 821
822 for_each_child_of_node(master->dev.of_node, nc) { 822 for_each_available_child_of_node(master->dev.of_node, nc) {
823 /* Alloc an spi_device */ 823 /* Alloc an spi_device */
824 spi = spi_alloc_device(master); 824 spi = spi_alloc_device(master);
825 if (!spi) { 825 if (!spi) {