[PATCH] asoc/multi-component: fsl: add support for disabled SSI nodes
Timur Tabi
timur at freescale.com
Thu Aug 5 08:51:08 EST 2010
Add support for adding "status = disabled" to an SSI node to incidate that it
is not wired on the board. This replaces the not-so-intuitive previous method
of omitting a codec-handle property.
Signed-off-by: Timur Tabi <timur at freescale.com>
---
Kumar, would you please ACK the device-tree portion of this patch? I want
it to go through the ALSA tree.
arch/powerpc/boot/dts/mpc8610_hpcd.dts | 1 +
sound/soc/fsl/fsl_ssi.c | 13 ++++++++++---
2 files changed, 11 insertions(+), 3 deletions(-)
diff --git a/arch/powerpc/boot/dts/mpc8610_hpcd.dts b/arch/powerpc/boot/dts/mpc8610_hpcd.dts
index 9535ce6..83c3218 100644
--- a/arch/powerpc/boot/dts/mpc8610_hpcd.dts
+++ b/arch/powerpc/boot/dts/mpc8610_hpcd.dts
@@ -286,6 +286,7 @@
ssi at 16100 {
compatible = "fsl,mpc8610-ssi";
+ status = "disabled";
cell-index = <1>;
reg = <0x16100 0x100>;
interrupt-parent = <&mpic>;
diff --git a/sound/soc/fsl/fsl_ssi.c b/sound/soc/fsl/fsl_ssi.c
index a0e18b8..45d27b1 100644
--- a/sound/soc/fsl/fsl_ssi.c
+++ b/sound/soc/fsl/fsl_ssi.c
@@ -636,12 +636,19 @@ static int __devinit fsl_ssi_probe(struct of_device *of_dev,
struct resource res;
char name[64];
- /* We are only interested in SSIs with a codec phandle in them, so let's
- * make sure this SSI has one.
+ /* SSIs that are not connected on the board should have a
+ * status = "disabled"
+ * property in their device tree nodes.
*/
- if (!of_get_property(np, "codec-handle", NULL))
+ if (!of_device_is_available(np))
return -ENODEV;
+ /* Check for a codec-handle property. */
+ if (!of_get_property(np, "codec-handle", NULL)) {
+ dev_err(&of_dev->dev, "missing codec-handle property\n");
+ return -ENODEV;
+ }
+
/* We only support the SSI in "I2S Slave" mode */
sprop = of_get_property(np, "fsl,mode", NULL);
if (!sprop || strcmp(sprop, "i2s-slave")) {
--
1.7.0.1
More information about the Linuxppc-dev
mailing list