mirror of
https://github.com/BobTheBlinker/android_kernel_motorola_sm6375.git
synced 2026-10-29 11:11:45 -04:00
sound updates for 4.2-rc1
It was a busy development cycle at this time, as you can see a wide
range of changes in diffstat. There are no big changes but many
refactoring and improvements. Here we go some highlights:
* ALSA core:
- Procfs codes were cleaned up to use seq_file
- Procfs can be opt out via Kconfig (only for EXPERT)
- Two types of jack API were unified finally; now both kctl and input
jack devs are handled via a single function call.
* HD-audio
- Continued code restructuring for the future ASoC driver; now HDA
controller driver is split to a core helper module.
- Preliminary codes for Skylake audio support in HDA core.
- Proper i915 gfx power well management for SKL & co
- Enabled runtime PM as default for Intel HDMI/DP codecs
- Newer Tegra chip supports
- More quirks for Dell headsets, Alienware (with CA0132), etc.
- A couple of DRM ELD helper API functions
* ASoC
- Support for loading ASoC topology maps from firmware, intended to be
used to allow self-describing DSP firmware images to be built which
can map controls added by the DSP to userspace without the kernel
needing to know about individual DSP firmwares
- Lots of refactoring to avoid direct access to snd_soc_codec where
it's not needed supporting future refactoring
- Big refactoring, cleanup and enhancement for the Wolfson ADSP driver
- Cleanup series for TI TAS2552 and R-CAR drivers
- Fixes and improvements on RT56xx codecs
- Support for TI TAS571x power amplifiers
- Support for Qualcomm APQ8016 and ZTE ZX296702 SoCs
- Support for x86 systems with RT5650 and Qualcomm Storm
- Support for Mediatek AFE (Audio Front End) unit
- Other various small fixes to ASoC codec drivers
* Firewire
- Enhanced to allow non-blocking streams to use timestamp
synchronization
- Improve support for DM1500 and BeBoBv3
* Misc
- Cleanup of old pci API functions over all PCI sound drivers
- Fix long-standing regression of the old powermac i2c setup
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2
iQIcBAABCAAGBQJVitjmAAoJEGwxgFQ9KSmksW8P/2ngNzNpo/bmmGh6xjB7GWU9
RDAkqhKd6yvcClQojGS9n4a9CJ8nk5tdqTr9rMp58N7DRv6GYCPdq0A+lLOih+yC
UPcTkTMBKm6UtvJjEcaasMxhvs5xno345oo5KrBdvlfv1rXe83dTtzEsybWYkaVD
dJbbr5QFaiyj5cTp9nanK5kyTyDDXCdP+vjBGv5u9+GbVxQ6Eenyts89uSqEZs1F
ltoBrl4VotXyqHKneJ0ttUKEimcVIgu8rCXH0sTtCg0SZVJFi+UXzI/VkkS+expL
x9bNN6bw5UT9LA8+qybFRETx+8qchFsffzeUEle4wkIpVKXt/VqjP3GIvp6umlF5
RhU5Wumf2KuIVjgVsYxd7bUkmHr4ywpqS3vSWMWU90FApJay7exatzLPyUVN0AxH
pdAizc8NWFk1kVtWq8jr9agEdxDt2l+E9UXij+ViGyouMZL1oSvOo9NgovfwvfC6
qKUisUkq53p1uPOW/U5gvF7bee2enEXMI9YUY1Z8MHx7nloq+25Nqma8P0gYthB8
6Qk+t1oqC2p7ZMSkyVHH9nySQmoLITZHZmsHqqpLW+jFtanhuckDI75AvmrScs+r
3+2YZXxPI0caZZ1qxMCd7Clmh7ZcSeRe73HXSXmF0xrLffISM3Yg3ZN10cbWQRj2
D6TiHCspLpn+pcYLcWJ2
=D78E
-----END PGP SIGNATURE-----
Merge tag 'sound-4.2-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound
Pull sound updates from Takashi Iwai:
"It was a busy development cycle at this time, as you can see a wide
range of changes in diffstat. There are no big changes but many
refactoring and improvements. Here we go some highlights:
ALSA core:
- Procfs codes were cleaned up to use seq_file
- Procfs can be opt out via Kconfig (only for EXPERT)
- Two types of jack API were unified finally; now both kctl and input
jack devs are handled via a single function call.
HD-audio:
- Continued code restructuring for the future ASoC driver; now HDA
controller driver is split to a core helper module.
- Preliminary codes for Skylake audio support in HDA core.
- Proper i915 gfx power well management for SKL & co
- Enabled runtime PM as default for Intel HDMI/DP codecs
- Newer Tegra chip supports
- More quirks for Dell headsets, Alienware (with CA0132), etc.
- A couple of DRM ELD helper API functions
ASoC:
- Support for loading ASoC topology maps from firmware, intended to
be used to allow self-describing DSP firmware images to be built
which can map controls added by the DSP to userspace without the
kernel needing to know about individual DSP firmwares
- Lots of refactoring to avoid direct access to snd_soc_codec where
it's not needed supporting future refactoring
- Big refactoring, cleanup and enhancement for the Wolfson ADSP
driver
- Cleanup series for TI TAS2552 and R-CAR drivers
- Fixes and improvements on RT56xx codecs
- Support for TI TAS571x power amplifiers
- Support for Qualcomm APQ8016 and ZTE ZX296702 SoCs
- Support for x86 systems with RT5650 and Qualcomm Storm
- Support for Mediatek AFE (Audio Front End) unit
- Other various small fixes to ASoC codec drivers
Firewire:
- Enhanced to allow non-blocking streams to use timestamp
synchronization
- Improve support for DM1500 and BeBoBv3
Misc:
- Cleanup of old pci API functions over all PCI sound drivers
- Fix long-standing regression of the old powermac i2c setup"
* tag 'sound-4.2-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound: (533 commits)
ALSA: pcm: Fix pcm_class sysfs output
ALSA: hda-beep: Update authors dead email address
ASoC: wm_adsp: Move DSP Rate controls into the codec
ASoC: wm8995: Fix setting sysclk for WM8995_SYSCLK_MCLK2 case
ALSA: hda: provide default bus io ops extended hdac
ALSA: hda: add hda link cleanup routine
ALSA: hda: add hdac_ext stream creation and cleanup routines
ASoC: rsrc-card: remove unused ret
ALSA: HDAC: move SND_HDA_PREALLOC_SIZE to core
ASoC: mediatek: Add machine driver for rt5650 rt5676 codec
ASoC: mediatek: Add machine driver for MAX98090 codec
ASoC: mediatek: Add AFE platform driver
ASoC: rsnd: remove io from rsnd_mod
ASoC: rsnd: move rsnd_mod_is_working() to rsnd_io_is_working()
ASoC: rsnd: don't use rsnd_mod_to_io() on snd_kcontrol
ASoC: rsnd: don't use rsnd_mod_to_io() on rsnd_src_xxx()
ASoC: rsnd: don't use rsnd_mod_to_io() on rsnd_ssi_xxx()
ASoC: rsnd: don't use rsnd_mod_to_io() on rsnd_dma_xxx()
ASoC: rsnd: don't use rsnd_mod_to_io() on rsnd_get_adinr()
ASoC: rsnd: add common interrupt handler for SSI/SRC/DMA
...
This commit is contained in:
commit
4570a37169
415 changed files with 19288 additions and 6679 deletions
|
|
@ -1053,8 +1053,6 @@ static int loopback_mixer_new(struct loopback *loopback, int notify)
|
|||
return 0;
|
||||
}
|
||||
|
||||
#ifdef CONFIG_PROC_FS
|
||||
|
||||
static void print_dpcm_info(struct snd_info_buffer *buffer,
|
||||
struct loopback_pcm *dpcm,
|
||||
const char *id)
|
||||
|
|
@ -1128,12 +1126,6 @@ static int loopback_proc_new(struct loopback *loopback, int cidx)
|
|||
return 0;
|
||||
}
|
||||
|
||||
#else /* !CONFIG_PROC_FS */
|
||||
|
||||
#define loopback_proc_new(loopback, cidx) do { } while (0)
|
||||
|
||||
#endif
|
||||
|
||||
static int loopback_probe(struct platform_device *devptr)
|
||||
{
|
||||
struct snd_card *card;
|
||||
|
|
|
|||
|
|
@ -156,13 +156,13 @@ static int emu10k1_playback_constraints(struct snd_pcm_runtime *runtime)
|
|||
return 0;
|
||||
}
|
||||
|
||||
struct dummy_model model_emu10k1 = {
|
||||
static struct dummy_model model_emu10k1 = {
|
||||
.name = "emu10k1",
|
||||
.playback_constraints = emu10k1_playback_constraints,
|
||||
.buffer_bytes_max = 128 * 1024,
|
||||
};
|
||||
|
||||
struct dummy_model model_rme9652 = {
|
||||
static struct dummy_model model_rme9652 = {
|
||||
.name = "rme9652",
|
||||
.buffer_bytes_max = 26 * 64 * 1024,
|
||||
.formats = SNDRV_PCM_FMTBIT_S32_LE,
|
||||
|
|
@ -172,7 +172,7 @@ struct dummy_model model_rme9652 = {
|
|||
.periods_max = 2,
|
||||
};
|
||||
|
||||
struct dummy_model model_ice1712 = {
|
||||
static struct dummy_model model_ice1712 = {
|
||||
.name = "ice1712",
|
||||
.buffer_bytes_max = 256 * 1024,
|
||||
.formats = SNDRV_PCM_FMTBIT_S32_LE,
|
||||
|
|
@ -182,7 +182,7 @@ struct dummy_model model_ice1712 = {
|
|||
.periods_max = 1024,
|
||||
};
|
||||
|
||||
struct dummy_model model_uda1341 = {
|
||||
static struct dummy_model model_uda1341 = {
|
||||
.name = "uda1341",
|
||||
.buffer_bytes_max = 16380,
|
||||
.formats = SNDRV_PCM_FMTBIT_S16_LE,
|
||||
|
|
@ -192,7 +192,7 @@ struct dummy_model model_uda1341 = {
|
|||
.periods_max = 255,
|
||||
};
|
||||
|
||||
struct dummy_model model_ac97 = {
|
||||
static struct dummy_model model_ac97 = {
|
||||
.name = "ac97",
|
||||
.formats = SNDRV_PCM_FMTBIT_S16_LE,
|
||||
.channels_min = 2,
|
||||
|
|
@ -202,7 +202,7 @@ struct dummy_model model_ac97 = {
|
|||
.rate_max = 48000,
|
||||
};
|
||||
|
||||
struct dummy_model model_ca0106 = {
|
||||
static struct dummy_model model_ca0106 = {
|
||||
.name = "ca0106",
|
||||
.formats = SNDRV_PCM_FMTBIT_S16_LE,
|
||||
.buffer_bytes_max = ((65536-64)*8),
|
||||
|
|
@ -216,7 +216,7 @@ struct dummy_model model_ca0106 = {
|
|||
.rate_max = 192000,
|
||||
};
|
||||
|
||||
struct dummy_model *dummy_models[] = {
|
||||
static struct dummy_model *dummy_models[] = {
|
||||
&model_emu10k1,
|
||||
&model_rme9652,
|
||||
&model_ice1712,
|
||||
|
|
@ -914,7 +914,7 @@ static int snd_card_dummy_new_mixer(struct snd_dummy *dummy)
|
|||
return 0;
|
||||
}
|
||||
|
||||
#if defined(CONFIG_SND_DEBUG) && defined(CONFIG_PROC_FS)
|
||||
#if defined(CONFIG_SND_DEBUG) && defined(CONFIG_SND_PROC_FS)
|
||||
/*
|
||||
* proc interface
|
||||
*/
|
||||
|
|
@ -1042,7 +1042,7 @@ static void dummy_proc_init(struct snd_dummy *chip)
|
|||
}
|
||||
#else
|
||||
#define dummy_proc_init(x)
|
||||
#endif /* CONFIG_SND_DEBUG && CONFIG_PROC_FS */
|
||||
#endif /* CONFIG_SND_DEBUG && CONFIG_SND_PROC_FS */
|
||||
|
||||
static int snd_dummy_probe(struct platform_device *devptr)
|
||||
{
|
||||
|
|
|
|||
|
|
@ -3,7 +3,8 @@
|
|||
# Copyright (c) 2001 by Jaroslav Kysela <[email protected]>
|
||||
#
|
||||
|
||||
snd-opl4-lib-objs := opl4_lib.o opl4_mixer.o opl4_proc.o
|
||||
snd-opl4-lib-objs := opl4_lib.o opl4_mixer.o
|
||||
snd-opl4-lib-$(CONFIG_SND_PROC_FS) += opl4_proc.o
|
||||
snd-opl4-synth-objs := opl4_seq.o opl4_synth.o yrw801.o
|
||||
|
||||
obj-$(CONFIG_SND_OPL4_LIB) += snd-opl4-lib.o
|
||||
|
|
|
|||
|
|
@ -176,9 +176,7 @@ static int snd_opl4_create_seq_dev(struct snd_opl4 *opl4, int seq_device)
|
|||
|
||||
static void snd_opl4_free(struct snd_opl4 *opl4)
|
||||
{
|
||||
#ifdef CONFIG_PROC_FS
|
||||
snd_opl4_free_proc(opl4);
|
||||
#endif
|
||||
release_and_free_resource(opl4->res_fm_port);
|
||||
release_and_free_resource(opl4->res_pcm_port);
|
||||
kfree(opl4);
|
||||
|
|
@ -249,9 +247,7 @@ int snd_opl4_create(struct snd_card *card,
|
|||
snd_opl4_enable_opl4(opl4);
|
||||
|
||||
snd_opl4_create_mixer(opl4);
|
||||
#ifdef CONFIG_PROC_FS
|
||||
snd_opl4_create_proc(opl4);
|
||||
#endif
|
||||
|
||||
#if defined(CONFIG_SND_SEQUENCER) || (defined(MODULE) && defined(CONFIG_SND_SEQUENCER_MODULE))
|
||||
opl4->seq_client = -1;
|
||||
|
|
|
|||
|
|
@ -178,7 +178,7 @@ struct snd_opl4 {
|
|||
spinlock_t reg_lock;
|
||||
struct snd_card *card;
|
||||
|
||||
#ifdef CONFIG_PROC_FS
|
||||
#ifdef CONFIG_SND_PROC_FS
|
||||
struct snd_info_entry *proc_entry;
|
||||
int memory_access;
|
||||
#endif
|
||||
|
|
@ -207,10 +207,13 @@ void snd_opl4_write_memory(struct snd_opl4 *opl4, const char *buf, int offset, i
|
|||
/* opl4_mixer.c */
|
||||
int snd_opl4_create_mixer(struct snd_opl4 *opl4);
|
||||
|
||||
#ifdef CONFIG_PROC_FS
|
||||
#ifdef CONFIG_SND_PROC_FS
|
||||
/* opl4_proc.c */
|
||||
int snd_opl4_create_proc(struct snd_opl4 *opl4);
|
||||
void snd_opl4_free_proc(struct snd_opl4 *opl4);
|
||||
#else
|
||||
static inline int snd_opl4_create_proc(struct snd_opl4 *opl4) { return 0; }
|
||||
static inline void snd_opl4_free_proc(struct snd_opl4 *opl4) {}
|
||||
#endif
|
||||
|
||||
/* opl4_seq.c */
|
||||
|
|
|
|||
|
|
@ -22,8 +22,6 @@
|
|||
#include <linux/export.h>
|
||||
#include <sound/info.h>
|
||||
|
||||
#ifdef CONFIG_PROC_FS
|
||||
|
||||
static int snd_opl4_mem_proc_open(struct snd_info_entry *entry,
|
||||
unsigned short mode, void **file_private_data)
|
||||
{
|
||||
|
|
@ -129,5 +127,3 @@ void snd_opl4_free_proc(struct snd_opl4 *opl4)
|
|||
{
|
||||
snd_info_free_entry(opl4->proc_entry);
|
||||
}
|
||||
|
||||
#endif /* CONFIG_PROC_FS */
|
||||
|
|
|
|||
Loading…
Reference in a new issue