mirror of
git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
synced 2025-09-04 20:19:47 +08:00
Merge remote-tracking branch 'asoc/topic/samsung' into asoc-next
This commit is contained in:
commit
df00b71fbd
@ -25,11 +25,9 @@
|
|||||||
|
|
||||||
#include <plat/regs-serial.h>
|
#include <plat/regs-serial.h>
|
||||||
#include <mach/regs-gpio.h>
|
#include <mach/regs-gpio.h>
|
||||||
#include <plat/regs-ac97.h>
|
|
||||||
#include <plat/regs-dma.h>
|
#include <plat/regs-dma.h>
|
||||||
#include <mach/regs-lcd.h>
|
#include <mach/regs-lcd.h>
|
||||||
#include <mach/regs-sdi.h>
|
#include <mach/regs-sdi.h>
|
||||||
#include <plat/regs-iis.h>
|
|
||||||
#include <plat/regs-spi.h>
|
#include <plat/regs-spi.h>
|
||||||
|
|
||||||
static struct s3c24xx_dma_map __initdata s3c2410_dma_mappings[] = {
|
static struct s3c24xx_dma_map __initdata s3c2410_dma_mappings[] = {
|
||||||
|
@ -25,11 +25,9 @@
|
|||||||
|
|
||||||
#include <plat/regs-serial.h>
|
#include <plat/regs-serial.h>
|
||||||
#include <mach/regs-gpio.h>
|
#include <mach/regs-gpio.h>
|
||||||
#include <plat/regs-ac97.h>
|
|
||||||
#include <plat/regs-dma.h>
|
#include <plat/regs-dma.h>
|
||||||
#include <mach/regs-lcd.h>
|
#include <mach/regs-lcd.h>
|
||||||
#include <mach/regs-sdi.h>
|
#include <mach/regs-sdi.h>
|
||||||
#include <plat/regs-iis.h>
|
|
||||||
#include <plat/regs-spi.h>
|
#include <plat/regs-spi.h>
|
||||||
|
|
||||||
#define MAP(x) { (x)| DMA_CH_VALID, (x)| DMA_CH_VALID, (x)| DMA_CH_VALID, (x)| DMA_CH_VALID }
|
#define MAP(x) { (x)| DMA_CH_VALID, (x)| DMA_CH_VALID, (x)| DMA_CH_VALID, (x)| DMA_CH_VALID }
|
||||||
|
@ -25,11 +25,9 @@
|
|||||||
|
|
||||||
#include <plat/regs-serial.h>
|
#include <plat/regs-serial.h>
|
||||||
#include <mach/regs-gpio.h>
|
#include <mach/regs-gpio.h>
|
||||||
#include <plat/regs-ac97.h>
|
|
||||||
#include <plat/regs-dma.h>
|
#include <plat/regs-dma.h>
|
||||||
#include <mach/regs-lcd.h>
|
#include <mach/regs-lcd.h>
|
||||||
#include <mach/regs-sdi.h>
|
#include <mach/regs-sdi.h>
|
||||||
#include <plat/regs-iis.h>
|
|
||||||
#include <plat/regs-spi.h>
|
#include <plat/regs-spi.h>
|
||||||
|
|
||||||
static struct s3c24xx_dma_map __initdata s3c2440_dma_mappings[] = {
|
static struct s3c24xx_dma_map __initdata s3c2440_dma_mappings[] = {
|
||||||
|
@ -25,11 +25,9 @@
|
|||||||
|
|
||||||
#include <plat/regs-serial.h>
|
#include <plat/regs-serial.h>
|
||||||
#include <mach/regs-gpio.h>
|
#include <mach/regs-gpio.h>
|
||||||
#include <plat/regs-ac97.h>
|
|
||||||
#include <plat/regs-dma.h>
|
#include <plat/regs-dma.h>
|
||||||
#include <mach/regs-lcd.h>
|
#include <mach/regs-lcd.h>
|
||||||
#include <mach/regs-sdi.h>
|
#include <mach/regs-sdi.h>
|
||||||
#include <plat/regs-iis.h>
|
|
||||||
#include <plat/regs-spi.h>
|
#include <plat/regs-spi.h>
|
||||||
|
|
||||||
#define MAP(x) { \
|
#define MAP(x) { \
|
||||||
|
@ -146,14 +146,20 @@ struct platform_device s3c_device_camif = {
|
|||||||
|
|
||||||
/* ASOC DMA */
|
/* ASOC DMA */
|
||||||
|
|
||||||
|
#ifdef CONFIG_PLAT_S5P
|
||||||
|
static struct resource samsung_asoc_idma_resource = DEFINE_RES_IRQ(IRQ_I2S0);
|
||||||
|
|
||||||
struct platform_device samsung_asoc_idma = {
|
struct platform_device samsung_asoc_idma = {
|
||||||
.name = "samsung-idma",
|
.name = "samsung-idma",
|
||||||
.id = -1,
|
.id = -1,
|
||||||
|
.num_resources = 1,
|
||||||
|
.resource = &samsung_asoc_idma_resource,
|
||||||
.dev = {
|
.dev = {
|
||||||
.dma_mask = &samsung_device_dma_mask,
|
.dma_mask = &samsung_device_dma_mask,
|
||||||
.coherent_dma_mask = DMA_BIT_MASK(32),
|
.coherent_dma_mask = DMA_BIT_MASK(32),
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
#endif
|
||||||
|
|
||||||
/* FB */
|
/* FB */
|
||||||
|
|
||||||
|
@ -35,11 +35,10 @@ config SND_SAMSUNG_I2S
|
|||||||
tristate
|
tristate
|
||||||
|
|
||||||
config SND_SOC_SAMSUNG_NEO1973_WM8753
|
config SND_SOC_SAMSUNG_NEO1973_WM8753
|
||||||
tristate "Audio support for Openmoko Neo1973 Smartphones (GTA01/GTA02)"
|
tristate "Audio support for Openmoko Neo1973 Smartphones (GTA02)"
|
||||||
depends on SND_SOC_SAMSUNG && (MACH_NEO1973_GTA01 || MACH_NEO1973_GTA02)
|
depends on SND_SOC_SAMSUNG && MACH_NEO1973_GTA02
|
||||||
select SND_S3C24XX_I2S
|
select SND_S3C24XX_I2S
|
||||||
select SND_SOC_WM8753
|
select SND_SOC_WM8753
|
||||||
select SND_SOC_LM4857 if MACH_NEO1973_GTA01
|
|
||||||
select SND_SOC_DFBMCS320
|
select SND_SOC_DFBMCS320
|
||||||
help
|
help
|
||||||
Say Y here to enable audio support for the Openmoko Neo1973
|
Say Y here to enable audio support for the Openmoko Neo1973
|
||||||
|
@ -20,7 +20,7 @@
|
|||||||
#include <sound/soc.h>
|
#include <sound/soc.h>
|
||||||
|
|
||||||
#include <mach/dma.h>
|
#include <mach/dma.h>
|
||||||
#include <plat/regs-ac97.h>
|
#include "regs-ac97.h"
|
||||||
#include <linux/platform_data/asoc-s3c.h>
|
#include <linux/platform_data/asoc-s3c.h>
|
||||||
|
|
||||||
#include "dma.h"
|
#include "dma.h"
|
||||||
|
@ -20,7 +20,7 @@
|
|||||||
#include <sound/soc.h>
|
#include <sound/soc.h>
|
||||||
#include <sound/jack.h>
|
#include <sound/jack.h>
|
||||||
|
|
||||||
#include <plat/regs-iis.h>
|
#include "regs-iis.h"
|
||||||
#include <asm/mach-types.h>
|
#include <asm/mach-types.h>
|
||||||
|
|
||||||
#include "s3c24xx-i2s.h"
|
#include "s3c24xx-i2s.h"
|
||||||
|
@ -1304,7 +1304,7 @@ static struct platform_device_id samsung_i2s_driver_ids[] = {
|
|||||||
},
|
},
|
||||||
{},
|
{},
|
||||||
};
|
};
|
||||||
MODULE_DEVICE_TABLE(platform, samsung-i2s-driver-ids);
|
MODULE_DEVICE_TABLE(platform, samsung_i2s_driver_ids);
|
||||||
|
|
||||||
#ifdef CONFIG_OF
|
#ifdef CONFIG_OF
|
||||||
static struct samsung_i2s_dai_data samsung_i2s_dai_data_array[] = {
|
static struct samsung_i2s_dai_data samsung_i2s_dai_data_array[] = {
|
||||||
|
@ -68,6 +68,8 @@ static struct idma_info {
|
|||||||
dma_addr_t lp_tx_addr;
|
dma_addr_t lp_tx_addr;
|
||||||
} idma;
|
} idma;
|
||||||
|
|
||||||
|
static int idma_irq;
|
||||||
|
|
||||||
static void idma_getpos(dma_addr_t *src)
|
static void idma_getpos(dma_addr_t *src)
|
||||||
{
|
{
|
||||||
*src = idma.lp_tx_addr +
|
*src = idma.lp_tx_addr +
|
||||||
@ -305,7 +307,7 @@ static int idma_open(struct snd_pcm_substream *substream)
|
|||||||
if (prtd == NULL)
|
if (prtd == NULL)
|
||||||
return -ENOMEM;
|
return -ENOMEM;
|
||||||
|
|
||||||
ret = request_irq(IRQ_I2S0, iis_irq, 0, "i2s", prtd);
|
ret = request_irq(idma_irq, iis_irq, 0, "i2s", prtd);
|
||||||
if (ret < 0) {
|
if (ret < 0) {
|
||||||
pr_err("fail to claim i2s irq , ret = %d\n", ret);
|
pr_err("fail to claim i2s irq , ret = %d\n", ret);
|
||||||
kfree(prtd);
|
kfree(prtd);
|
||||||
@ -324,7 +326,7 @@ static int idma_close(struct snd_pcm_substream *substream)
|
|||||||
struct snd_pcm_runtime *runtime = substream->runtime;
|
struct snd_pcm_runtime *runtime = substream->runtime;
|
||||||
struct idma_ctrl *prtd = runtime->private_data;
|
struct idma_ctrl *prtd = runtime->private_data;
|
||||||
|
|
||||||
free_irq(IRQ_I2S0, prtd);
|
free_irq(idma_irq, prtd);
|
||||||
|
|
||||||
if (!prtd)
|
if (!prtd)
|
||||||
pr_err("idma_close called with prtd == NULL\n");
|
pr_err("idma_close called with prtd == NULL\n");
|
||||||
@ -409,6 +411,7 @@ void idma_reg_addr_init(void __iomem *regs, dma_addr_t addr)
|
|||||||
idma.regs = regs;
|
idma.regs = regs;
|
||||||
idma.lp_tx_addr = addr;
|
idma.lp_tx_addr = addr;
|
||||||
}
|
}
|
||||||
|
EXPORT_SYMBOL_GPL(idma_reg_addr_init);
|
||||||
|
|
||||||
static struct snd_soc_platform_driver asoc_idma_platform = {
|
static struct snd_soc_platform_driver asoc_idma_platform = {
|
||||||
.ops = &idma_ops,
|
.ops = &idma_ops,
|
||||||
@ -418,6 +421,10 @@ static struct snd_soc_platform_driver asoc_idma_platform = {
|
|||||||
|
|
||||||
static int asoc_idma_platform_probe(struct platform_device *pdev)
|
static int asoc_idma_platform_probe(struct platform_device *pdev)
|
||||||
{
|
{
|
||||||
|
idma_irq = platform_get_irq(pdev, 0);
|
||||||
|
if (idma_irq < 0)
|
||||||
|
return idma_irq;
|
||||||
|
|
||||||
return snd_soc_register_platform(&pdev->dev, &asoc_idma_platform);
|
return snd_soc_register_platform(&pdev->dev, &asoc_idma_platform);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -21,8 +21,7 @@
|
|||||||
#include <sound/soc.h>
|
#include <sound/soc.h>
|
||||||
|
|
||||||
#include <asm/mach-types.h>
|
#include <asm/mach-types.h>
|
||||||
#include <plat/regs-iis.h>
|
#include "regs-iis.h"
|
||||||
#include <mach/gta02.h>
|
|
||||||
|
|
||||||
#include "../codecs/wm8753.h"
|
#include "../codecs/wm8753.h"
|
||||||
#include "s3c24xx-i2s.h"
|
#include "s3c24xx-i2s.h"
|
||||||
|
@ -24,7 +24,7 @@
|
|||||||
#include <sound/soc.h>
|
#include <sound/soc.h>
|
||||||
#include <sound/jack.h>
|
#include <sound/jack.h>
|
||||||
|
|
||||||
#include <plat/regs-iis.h>
|
#include "regs-iis.h"
|
||||||
#include <asm/mach-types.h>
|
#include <asm/mach-types.h>
|
||||||
|
|
||||||
#include "s3c24xx-i2s.h"
|
#include "s3c24xx-i2s.h"
|
||||||
|
@ -24,7 +24,7 @@
|
|||||||
#include <sound/pcm_params.h>
|
#include <sound/pcm_params.h>
|
||||||
|
|
||||||
#include <mach/dma.h>
|
#include <mach/dma.h>
|
||||||
#include <plat/regs-iis.h>
|
#include "regs-iis.h"
|
||||||
|
|
||||||
#include "dma.h"
|
#include "dma.h"
|
||||||
#include "s3c24xx-i2s.h"
|
#include "s3c24xx-i2s.h"
|
||||||
|
@ -18,7 +18,7 @@
|
|||||||
#include <sound/soc.h>
|
#include <sound/soc.h>
|
||||||
#include <sound/s3c24xx_uda134x.h>
|
#include <sound/s3c24xx_uda134x.h>
|
||||||
|
|
||||||
#include <plat/regs-iis.h>
|
#include "regs-iis.h"
|
||||||
|
|
||||||
#include "s3c24xx-i2s.h"
|
#include "s3c24xx-i2s.h"
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user