[ARM] tegra: add spdif device and resources
authorIliyan Malchev <malchev@google.com>
Tue, 28 Sep 2010 23:12:48 +0000 (16:12 -0700)
committerColin Cross <ccross@android.com>
Wed, 6 Oct 2010 23:29:11 +0000 (16:29 -0700)
Signed-off-by: Iliyan Malchev <malchev@google.com>
arch/arm/mach-tegra/devices.c
arch/arm/mach-tegra/devices.h

index ef7a3e4146a4a882e0fe9cfe27c980d5cb259ae5..0c90d2e2c52b0189ccc2ef11a7f155c36c63fb4c 100644 (file)
@@ -479,6 +479,24 @@ static struct resource i2s_resource2[] = {
        }
 };
 
+static struct resource spdif_resource[] = {
+       [0] = {
+               .start  = INT_SPDIF,
+               .end    = INT_SPDIF,
+               .flags  = IORESOURCE_IRQ
+       },
+       [1] = {
+               .start  = TEGRA_DMA_REQ_SEL_SPD_I,
+               .end    = TEGRA_DMA_REQ_SEL_SPD_I,
+               .flags  = IORESOURCE_DMA
+       },
+       [2] = {
+               .start  = TEGRA_SPDIF_BASE,
+               .end    = TEGRA_SPDIF_BASE + TEGRA_SPDIF_SIZE - 1,
+               .flags  = IORESOURCE_MEM
+       }
+};
+
 struct platform_device tegra_i2s_device1 = {
        .name           = "i2s",
        .id             = 0,
@@ -493,6 +511,13 @@ struct platform_device tegra_i2s_device2 = {
        .num_resources  = ARRAY_SIZE(i2s_resource2),
 };
 
+struct platform_device tegra_spdif_device = {
+       .name           = "spdif_out",
+       .id             = -1,
+       .resource       = spdif_resource,
+       .num_resources  = ARRAY_SIZE(spdif_resource),
+};
+
 static struct resource tegra_gart_resources[] = {
        [0] = {
                .name   = "mc",
index dbebcbb45dcd4c35ddd31965b50557a4d0c9b77e..d35b6b91b0e6e58e48fbed513fd46fdb9261e841 100644 (file)
@@ -55,5 +55,5 @@ extern struct platform_device tegra_uart1_device;
 extern struct platform_device tegra_uart2_device;
 extern struct platform_device tegra_uart3_device;
 extern struct platform_device tegra_uart4_device;
-
+extern struct platform_device tegra_spdif_device;
 #endif