-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
This patch adds ac97 support for ln2440sbc board from LittleChips. This board is based on s3c2440 SoC + AC97 Realtek ALC650 codec. Existing s3c2443 implementation is slightly modified because s3c2440 and s3c2443 have different AC97 interrupts. Signed-off-by: Ivan Kuten <ivan.kuten@promwad.com> Signed-off-by: Takashi Iwai <tiwai@suse.de> Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- Loading branch information
Ivan Kuten
authored and
Jaroslav Kysela
committed
Jan 31, 2008
1 parent
f651b50
commit 040956f
Showing
5 changed files
with
104 additions
and
2 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,86 @@ | ||
/* | ||
* SoC audio for ln2440sbc | ||
* | ||
* Copyright 2007 KonekTel, a.s. | ||
* Author: Ivan Kuten | ||
* ivan.kuten@promwad.com | ||
* | ||
* Heavily based on smdk2443_wm9710.c | ||
* Copyright 2007 Wolfson Microelectronics PLC. | ||
* Author: Graeme Gregory | ||
* graeme.gregory@wolfsonmicro.com or linux@wolfsonmicro.com | ||
* | ||
* This program is free software; you can redistribute it and/or modify | ||
* it under the terms of the GNU General Public License version 2 as | ||
* published by the Free Software Foundation. | ||
* | ||
*/ | ||
|
||
#include <linux/module.h> | ||
#include <linux/device.h> | ||
#include <sound/driver.h> | ||
#include <sound/core.h> | ||
#include <sound/pcm.h> | ||
#include <sound/soc.h> | ||
#include <sound/soc-dapm.h> | ||
|
||
#include "../codecs/ac97.h" | ||
#include "s3c24xx-pcm.h" | ||
#include "s3c24xx-ac97.h" | ||
|
||
static struct snd_soc_machine ln2440sbc; | ||
|
||
static struct snd_soc_dai_link ln2440sbc_dai[] = { | ||
{ | ||
.name = "AC97", | ||
.stream_name = "AC97 HiFi", | ||
.cpu_dai = &s3c2443_ac97_dai[0], | ||
.codec_dai = &ac97_dai, | ||
}, | ||
}; | ||
|
||
static struct snd_soc_machine ln2440sbc = { | ||
.name = "LN2440SBC", | ||
.dai_link = ln2440sbc_dai, | ||
.num_links = ARRAY_SIZE(ln2440sbc_dai), | ||
}; | ||
|
||
static struct snd_soc_device ln2440sbc_snd_ac97_devdata = { | ||
.machine = &ln2440sbc, | ||
.platform = &s3c24xx_soc_platform, | ||
.codec_dev = &soc_codec_dev_ac97, | ||
}; | ||
|
||
static struct platform_device *ln2440sbc_snd_ac97_device; | ||
|
||
static int __init ln2440sbc_init(void) | ||
{ | ||
int ret; | ||
|
||
ln2440sbc_snd_ac97_device = platform_device_alloc("soc-audio", -1); | ||
if (!ln2440sbc_snd_ac97_device) | ||
return -ENOMEM; | ||
|
||
platform_set_drvdata(ln2440sbc_snd_ac97_device, | ||
&ln2440sbc_snd_ac97_devdata); | ||
ln2440sbc_snd_ac97_devdata.dev = &ln2440sbc_snd_ac97_device->dev; | ||
ret = platform_device_add(ln2440sbc_snd_ac97_device); | ||
|
||
if (ret) | ||
platform_device_put(ln2440sbc_snd_ac97_device); | ||
|
||
return ret; | ||
} | ||
|
||
static void __exit ln2440sbc_exit(void) | ||
{ | ||
platform_device_unregister(ln2440sbc_snd_ac97_device); | ||
} | ||
|
||
module_init(ln2440sbc_init); | ||
module_exit(ln2440sbc_exit); | ||
|
||
/* Module information */ | ||
MODULE_AUTHOR("Ivan Kuten"); | ||
MODULE_DESCRIPTION("ALSA SoC ALC650 LN2440SBC"); | ||
MODULE_LICENSE("GPL"); |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters