On Thu, 27 May 2010, apatard@xxxxxxxxxxxx wrote: > This patch add audio related definitions and functions > > > Signed-off-by: Arnaud Patard <apatard@xxxxxxxxxxxx> Acked-by: Nicolas Pitre <nico@xxxxxxxxxxx> > > Index: sound-2.6/arch/arm/mach-kirkwood/common.c > =================================================================== > --- sound-2.6.orig/arch/arm/mach-kirkwood/common.c 2010-05-27 14:09:33.244174174 +0200 > +++ sound-2.6/arch/arm/mach-kirkwood/common.c 2010-05-27 14:09:35.840194356 +0200 > @@ -25,6 +25,7 @@ > #include <asm/mach/time.h> > #include <mach/kirkwood.h> > #include <mach/bridge-regs.h> > +#include <plat/audio.h> > #include <plat/cache-feroceon-l2.h> > #include <plat/ehci-orion.h> > #include <plat/mvsdio.h> > @@ -855,6 +856,42 @@ struct sys_timer kirkwood_timer = { > .init = kirkwood_timer_init, > }; > > +/***************************************************************************** > + * Audio > + ****************************************************************************/ > +static struct resource kirkwood_i2s_resources[] = { > + [0] = { > + .start = AUDIO_PHYS_BASE, > + .end = AUDIO_PHYS_BASE + SZ_16K - 1, > + .flags = IORESOURCE_MEM, > + }, > + [1] = { > + .start = IRQ_KIRKWOOD_I2S, > + .end = IRQ_KIRKWOOD_I2S, > + .flags = IORESOURCE_IRQ, > + }, > +}; > + > +static struct kirkwood_asoc_platform_data kirkwood_i2s_data = { > + .dram = &kirkwood_mbus_dram_info, > + .burst = 128, > +}; > + > +static struct platform_device kirkwood_i2s_device = { > + .name = "kirkwood-i2s", > + .id = -1, > + .num_resources = ARRAY_SIZE(kirkwood_i2s_resources), > + .resource = kirkwood_i2s_resources, > + .dev = { > + .platform_data = &kirkwood_i2s_data, > + }, > +}; > + > +void __init kirkwood_audio_init(void) > +{ > + kirkwood_clk_ctrl |= CGC_AUDIO; > + platform_device_register(&kirkwood_i2s_device); > +} > > /***************************************************************************** > * General > @@ -914,6 +951,7 @@ void __init kirkwood_init(void) > kirkwood_spi_plat_data.tclk = kirkwood_tclk; > kirkwood_uart0_data[0].uartclk = kirkwood_tclk; > kirkwood_uart1_data[0].uartclk = kirkwood_tclk; > + kirkwood_i2s_data.tclk = kirkwood_tclk; > > /* > * Disable propagation of mbus errors to the CPU local bus, > Index: sound-2.6/arch/arm/mach-kirkwood/common.h > =================================================================== > --- sound-2.6.orig/arch/arm/mach-kirkwood/common.h 2010-05-27 14:09:33.204173835 +0200 > +++ sound-2.6/arch/arm/mach-kirkwood/common.h 2010-05-27 14:09:35.883694381 +0200 > @@ -16,6 +16,7 @@ struct mv643xx_eth_platform_data; > struct mv_sata_platform_data; > struct mvsdio_platform_data; > struct mtd_partition; > +struct kirkwood_asoc_platform_data; > > /* > * Basic Kirkwood init functions used early by machine-setup. > @@ -41,6 +42,7 @@ void kirkwood_i2c_init(void); > void kirkwood_uart0_init(void); > void kirkwood_uart1_init(void); > void kirkwood_nand_init(struct mtd_partition *parts, int nr_parts, int delay); > +void kirkwood_audio_init(void); > > extern int kirkwood_tclk; > extern struct sys_timer kirkwood_timer; > Index: sound-2.6/arch/arm/mach-kirkwood/include/mach/kirkwood.h > =================================================================== > --- sound-2.6.orig/arch/arm/mach-kirkwood/include/mach/kirkwood.h 2010-05-27 14:09:33.188174747 +0200 > +++ sound-2.6/arch/arm/mach-kirkwood/include/mach/kirkwood.h 2010-05-27 14:09:35.895694344 +0200 > @@ -96,6 +96,9 @@ > > #define SDIO_PHYS_BASE (KIRKWOOD_REGS_PHYS_BASE | 0x90000) > > +#define AUDIO_PHYS_BASE (KIRKWOOD_REGS_PHYS_BASE | 0xA0000) > +#define AUDIO_VIRT_BASE (KIRKWOOD_REGS_VIRT_BASE | 0xA0000) > + > /* > * Supported devices and revisions. > */ > Index: sound-2.6/arch/arm/plat-orion/include/plat/audio.h > =================================================================== > --- /dev/null 1970-01-01 00:00:00.000000000 +0000 > +++ sound-2.6/arch/arm/plat-orion/include/plat/audio.h 2010-05-27 14:09:35.895694344 +0200 > @@ -0,0 +1,11 @@ > +#ifndef __PLAT_AUDIO_H > +#define __PLAT_AUDIO_H > + > +#include <linux/mbus.h> > + > +struct kirkwood_asoc_platform_data { > + u32 tclk; > + struct mbus_dram_target_info *dram; > + int burst; > +}; > +#endif > _______________________________________________ Alsa-devel mailing list Alsa-devel@xxxxxxxxxxxxxxxx http://mailman.alsa-project.org/mailman/listinfo/alsa-devel