arch: arm: tegra: Add SPDIF driver support
Sumit Bhattacharya [Sun, 18 Sep 2011 18:48:34 +0000 (23:48 +0530)]
Bug 872652

Signed-off-by: Sumit Bhattacharya <sumitb@nvidia.com>

Change-Id: I7b948b820434721511c008f644b69d93c23865e1
Reviewed-on: http://git-master/r/53094
Tested-by: Sumit Bhattacharya <sumitb@nvidia.com>
Reviewed-by: Stephen Warren <swarren@nvidia.com>
Reviewed-by: Bharat Nihalani <bnihalani@nvidia.com>

Rebase-Id: R769f97e31513f4479b20d7dff995e06cc72e19bd

arch/arm/mach-tegra/devices.c
arch/arm/mach-tegra/devices.h

index 06b643b..6ec00a7 100644 (file)
@@ -1088,6 +1088,13 @@ static struct resource spdif_resource[] = {
                .flags  = IORESOURCE_MEM
        }
 };
+
+struct platform_device tegra_spdif_device = {
+       .name           = "tegra20-spdif",
+       .id             = -1,
+       .resource       = spdif_resource,
+       .num_resources  = ARRAY_SIZE(spdif_resource),
+};
 #else
 /* FIXME : Temporarly adding - find the right solution */
 
@@ -1103,7 +1110,6 @@ static struct resource spdif_resource[] = {
                .flags  = IORESOURCE_MEM
        }
 };
-#endif
 
 struct platform_device tegra_spdif_device = {
        .name           = "spdif_out",
@@ -1111,6 +1117,7 @@ struct platform_device tegra_spdif_device = {
        .resource       = spdif_resource,
        .num_resources  = ARRAY_SIZE(spdif_resource),
 };
+#endif
 
 #ifndef CONFIG_ARCH_TEGRA_2x_SOC
 static struct resource ahub_resource[] = {
@@ -1134,6 +1141,11 @@ struct platform_device tegra_ahub_device = {
 };
 #endif
 
+struct platform_device spdif_dit_device = {
+       .name = "spdif-dit",
+       .id = -1,
+};
+
 #if defined(CONFIG_SND_HDA_TEGRA)
 static u64 tegra_hda_dma_mask = DMA_BIT_MASK(32);
 
index 07ce114..18b0320 100644 (file)
@@ -71,7 +71,9 @@ extern struct platform_device tegra_uarte_device;
 extern struct platform_device tegra_pmu_device;
 extern struct platform_device tegra_i2s_device1;
 extern struct platform_device tegra_i2s_device2;
+extern struct platform_device tegra_spdif_device;
 extern struct platform_device tegra_das_device;
+extern struct platform_device spdif_dit_device;
 extern struct platform_device tegra_w1_device;
 extern struct platform_device tegra_udc_device;
 extern struct platform_device tegra_ehci1_device;
@@ -104,9 +106,7 @@ extern struct platform_device tegra_uartb_device;
 extern struct platform_device tegra_uartc_device;
 extern struct platform_device tegra_uartd_device;
 extern struct platform_device tegra_uarte_device;
-extern struct platform_device tegra_spdif_device;
 extern struct platform_device tegra_grhost_device;
-extern struct platform_device tegra_spdif_device;
 extern struct platform_device tegra_avp_device;
 extern struct platform_device tegra_aes_device;
 #if !defined(CONFIG_ARCH_TEGRA_2x_SOC)