mirror of
https://github.com/BobTheBlinker/android_kernel_motorola_sm6375.git
synced 2026-10-29 11:11:45 -04:00
Linux 5.1-rc1
-----BEGIN PGP SIGNATURE----- iQFSBAABCAA8FiEEq68RxlopcLEwq+PEeb4+QwBBGIYFAlyOup0eHHRvcnZhbGRz QGxpbnV4LWZvdW5kYXRpb24ub3JnAAoJEHm+PkMAQRiGHKoIAIKVuBSyD+m65TaM pjoAFa56weEc67Mmai2A84EOm0MVy9C6L7EOcOgVsJiLxDCYyWQ7xYwV2kceKJpW H5xauhb3+TxpxYeaeKdPPPHmBdejRwOPYvGAfnDMCqCCWQTad52sQUPCLI+yhF1t wgnuMi+SwNBWP9aYCXdFPK4fVhh27AcEAOEsRVCh4tIBH/wkf4GwrDr3IX1MFeMX jE/R43la4hu1swcWBsjkErWUasVPCgJSSQTfKDo9PQTVnoh0PHFp4fkOInVKLymQ 7AGo+Knc+1he+sFsB2IbZwea0xqtJtjtr1oC+at8gNx66qVG+o7UZNi5LR1uPW4Z 4+dwGBk= =pyXR -----END PGP SIGNATURE----- gpgsig -----BEGIN PGP SIGNATURE----- iQFHBAABCgAxFiEEreZoqmdXGLWf4p/qJNaLcl1Uh9AFAlyPfa8THGJyb29uaWVA a2VybmVsLm9yZwAKCRAk1otyXVSH0LsKB/9Qd7sfWgGVo4tk6uYwxOVOh8oEW6AU SB4iMlC6MJjrJkHfOXqE98Mf9+RHDty3a/F+t0A/eaNfoQVXFexpeOgPv098gCU5 gtq1N3x2Cr0JJxBpO4Sc3Pz0UH24sboNfPsJO4NTBGfdNwQvhId35lbYTSCKE3PC YzsmS31avg/NhXPJ6jhxxx0qOmoLemZ2bfj2j2JvLeKEewUkEVl0Hj2PKbSahFzB RssauFsLxeFpdbdzScEu9xvnFX3OJvcu/7/Cb/ji5+zH8brE9L+5yywtgyWxi/6i zNHFwqDTr3o7R3tV7aXUo8iGvMTsWBvbqvjY18zrXzpiZKr4ZMcW0BYk =NCbp -----END PGP SIGNATURE----- Merge tag 'v5.1-rc1' into asoc-5.1 Linux 5.1-rc1
This commit is contained in:
commit
22d91ed32b
11352 changed files with 478257 additions and 251760 deletions
|
|
@ -173,7 +173,11 @@ static inline void snd_compr_drain_notify(struct snd_compr_stream *stream)
|
|||
if (snd_BUG_ON(!stream))
|
||||
return;
|
||||
|
||||
stream->runtime->state = SNDRV_PCM_STATE_SETUP;
|
||||
if (stream->direction == SND_COMPRESS_PLAYBACK)
|
||||
stream->runtime->state = SNDRV_PCM_STATE_SETUP;
|
||||
else
|
||||
stream->runtime->state = SNDRV_PCM_STATE_PREPARED;
|
||||
|
||||
wake_up(&stream->runtime->sleep);
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -120,7 +120,6 @@ struct snd_card {
|
|||
struct list_head ctl_files; /* active control files */
|
||||
|
||||
struct snd_info_entry *proc_root; /* root for soundcard specific files */
|
||||
struct snd_info_entry *proc_id; /* the card id */
|
||||
struct proc_dir_entry *proc_root_link; /* number link to real id */
|
||||
|
||||
struct list_head files_list; /* all files associated to this card */
|
||||
|
|
|
|||
|
|
@ -68,6 +68,7 @@ struct hda_bus {
|
|||
unsigned int response_reset:1; /* controller was reset */
|
||||
unsigned int in_reset:1; /* during reset operation */
|
||||
unsigned int no_response_fallback:1; /* don't fallback at RIRB error */
|
||||
unsigned int bus_probing :1; /* during probing process */
|
||||
|
||||
int primary_dig_out_type; /* primary digital out PCM type */
|
||||
unsigned int mixer_assigned; /* codec addr for mixer name */
|
||||
|
|
|
|||
|
|
@ -20,7 +20,7 @@ int snd_hdac_acomp_get_eld(struct hdac_device *codec, hda_nid_t nid, int dev_id,
|
|||
bool *audio_enabled, char *buffer, int max_bytes);
|
||||
int snd_hdac_acomp_init(struct hdac_bus *bus,
|
||||
const struct drm_audio_component_audio_ops *aops,
|
||||
int (*match_master)(struct device *, void *),
|
||||
int (*match_master)(struct device *, int, void *),
|
||||
size_t extra_size);
|
||||
int snd_hdac_acomp_exit(struct hdac_bus *bus);
|
||||
int snd_hdac_acomp_register_notifier(struct hdac_bus *bus,
|
||||
|
|
@ -47,7 +47,8 @@ static inline int snd_hdac_acomp_get_eld(struct hdac_device *codec, hda_nid_t ni
|
|||
}
|
||||
static inline int snd_hdac_acomp_init(struct hdac_bus *bus,
|
||||
const struct drm_audio_component_audio_ops *aops,
|
||||
int (*match_master)(struct device *, void *),
|
||||
int (*match_master)(struct device *,
|
||||
int, void *),
|
||||
size_t extra_size)
|
||||
{
|
||||
return -ENODEV;
|
||||
|
|
|
|||
|
|
@ -79,6 +79,7 @@ enum { SDI0, SDI1, SDI2, SDI3, SDO0, SDO1, SDO2, SDO3 };
|
|||
|
||||
/* stream register offsets from stream base */
|
||||
#define AZX_REG_SD_CTL 0x00
|
||||
#define AZX_REG_SD_CTL_3B 0x02 /* 3rd byte of SD_CTL register */
|
||||
#define AZX_REG_SD_STS 0x03
|
||||
#define AZX_REG_SD_LPIB 0x04
|
||||
#define AZX_REG_SD_CBL 0x08
|
||||
|
|
@ -165,6 +166,7 @@ enum { SDI0, SDI1, SDI2, SDI3, SDO0, SDO1, SDO2, SDO3 };
|
|||
#define SD_INT_COMPLETE 0x04 /* completion interrupt */
|
||||
#define SD_INT_MASK (SD_INT_DESC_ERR|SD_INT_FIFO_ERR|\
|
||||
SD_INT_COMPLETE)
|
||||
#define SD_CTL_STRIPE_MASK 0x3 /* stripe control mask */
|
||||
|
||||
/* SD_STS */
|
||||
#define SD_STS_FIFO_READY 0x20 /* FIFO ready */
|
||||
|
|
|
|||
|
|
@ -66,6 +66,7 @@ enum {
|
|||
#define AC_VERB_GET_CONFIG_DEFAULT 0x0f1c
|
||||
/* f20: AFG/MFG */
|
||||
#define AC_VERB_GET_SUBSYSTEM_ID 0x0f20
|
||||
#define AC_VERB_GET_STRIPE_CONTROL 0x0f24
|
||||
#define AC_VERB_GET_CVT_CHAN_COUNT 0x0f2d
|
||||
#define AC_VERB_GET_HDMI_DIP_SIZE 0x0f2e
|
||||
#define AC_VERB_GET_HDMI_ELDD 0x0f2f
|
||||
|
|
@ -110,6 +111,7 @@ enum {
|
|||
#define AC_VERB_SET_CONFIG_DEFAULT_BYTES_3 0x71f
|
||||
#define AC_VERB_SET_EAPD 0x788
|
||||
#define AC_VERB_SET_CODEC_RESET 0x7ff
|
||||
#define AC_VERB_SET_STRIPE_CONTROL 0x724
|
||||
#define AC_VERB_SET_CVT_CHAN_COUNT 0x72d
|
||||
#define AC_VERB_SET_HDMI_DIP_INDEX 0x730
|
||||
#define AC_VERB_SET_HDMI_DIP_DATA 0x731
|
||||
|
|
|
|||
|
|
@ -539,6 +539,9 @@ void snd_hdac_stream_sync(struct hdac_stream *azx_dev, bool start,
|
|||
unsigned int streams);
|
||||
void snd_hdac_stream_timecounter_init(struct hdac_stream *azx_dev,
|
||||
unsigned int streams);
|
||||
int snd_hdac_get_stream_stripe_ctl(struct hdac_bus *bus,
|
||||
struct snd_pcm_substream *substream);
|
||||
|
||||
/*
|
||||
* macros for easy use
|
||||
*/
|
||||
|
|
|
|||
|
|
@ -82,7 +82,6 @@ struct snd_info_entry {
|
|||
struct snd_info_entry_ops *ops;
|
||||
} c;
|
||||
struct snd_info_entry *parent;
|
||||
struct snd_card *card;
|
||||
struct module *module;
|
||||
void *private_data;
|
||||
void (*private_free)(struct snd_info_entry *entry);
|
||||
|
|
@ -160,6 +159,13 @@ static inline void snd_info_set_text_ops(struct snd_info_entry *entry,
|
|||
entry->c.text.read = read;
|
||||
}
|
||||
|
||||
int snd_card_rw_proc_new(struct snd_card *card, const char *name,
|
||||
void *private_data,
|
||||
void (*read)(struct snd_info_entry *,
|
||||
struct snd_info_buffer *),
|
||||
void (*write)(struct snd_info_entry *entry,
|
||||
struct snd_info_buffer *buffer));
|
||||
|
||||
int snd_info_check_reserved_words(const char *str);
|
||||
|
||||
#else
|
||||
|
|
@ -189,10 +195,38 @@ static inline int snd_card_proc_new(struct snd_card *card, const char *name,
|
|||
static inline void snd_info_set_text_ops(struct snd_info_entry *entry __attribute__((unused)),
|
||||
void *private_data,
|
||||
void (*read)(struct snd_info_entry *, struct snd_info_buffer *)) {}
|
||||
static inline int snd_card_rw_proc_new(struct snd_card *card, const char *name,
|
||||
void *private_data,
|
||||
void (*read)(struct snd_info_entry *,
|
||||
struct snd_info_buffer *),
|
||||
void (*write)(struct snd_info_entry *entry,
|
||||
struct snd_info_buffer *buffer))
|
||||
{
|
||||
return 0;
|
||||
}
|
||||
static inline int snd_info_check_reserved_words(const char *str) { return 1; }
|
||||
|
||||
#endif
|
||||
|
||||
/**
|
||||
* snd_card_ro_proc_new - Create a read-only text proc file entry for the card
|
||||
* @card: the card instance
|
||||
* @name: the file name
|
||||
* @private_data: the arbitrary private data
|
||||
* @read: the read callback
|
||||
*
|
||||
* This proc file entry will be registered via snd_card_register() call, and
|
||||
* it will be removed automatically at the card removal, too.
|
||||
*/
|
||||
static inline int
|
||||
snd_card_ro_proc_new(struct snd_card *card, const char *name,
|
||||
void *private_data,
|
||||
void (*read)(struct snd_info_entry *,
|
||||
struct snd_info_buffer *))
|
||||
{
|
||||
return snd_card_rw_proc_new(card, name, private_data, read, NULL);
|
||||
}
|
||||
|
||||
/*
|
||||
* OSS info part
|
||||
*/
|
||||
|
|
|
|||
|
|
@ -37,7 +37,6 @@ struct snd_dma_device {
|
|||
};
|
||||
|
||||
#define snd_dma_pci_data(pci) (&(pci)->dev)
|
||||
#define snd_dma_isa_data() NULL
|
||||
#define snd_dma_continuous_data(x) ((struct device *)(__force unsigned long)(x))
|
||||
|
||||
|
||||
|
|
|
|||
|
|
@ -30,6 +30,7 @@
|
|||
#include <linux/mm.h>
|
||||
#include <linux/bitops.h>
|
||||
#include <linux/pm_qos.h>
|
||||
#include <linux/refcount.h>
|
||||
|
||||
#define snd_pcm_substream_chip(substream) ((substream)->private_data)
|
||||
#define snd_pcm_chip(pcm) ((pcm)->private_data)
|
||||
|
|
@ -439,7 +440,7 @@ struct snd_pcm_group { /* keep linked substreams */
|
|||
spinlock_t lock;
|
||||
struct mutex mutex;
|
||||
struct list_head substreams;
|
||||
int count;
|
||||
refcount_t refs;
|
||||
};
|
||||
|
||||
struct pid;
|
||||
|
|
@ -470,7 +471,6 @@ struct snd_pcm_substream {
|
|||
struct snd_pcm_group self_group; /* fake group for non linked substream (with substream lock inside) */
|
||||
struct snd_pcm_group *group; /* pointer to current group */
|
||||
/* -- assigned files -- */
|
||||
void *file;
|
||||
int ref_count;
|
||||
atomic_t mmap_count;
|
||||
unsigned int f_flags;
|
||||
|
|
@ -482,15 +482,6 @@ struct snd_pcm_substream {
|
|||
#endif
|
||||
#ifdef CONFIG_SND_VERBOSE_PROCFS
|
||||
struct snd_info_entry *proc_root;
|
||||
struct snd_info_entry *proc_info_entry;
|
||||
struct snd_info_entry *proc_hw_params_entry;
|
||||
struct snd_info_entry *proc_sw_params_entry;
|
||||
struct snd_info_entry *proc_status_entry;
|
||||
struct snd_info_entry *proc_prealloc_entry;
|
||||
struct snd_info_entry *proc_prealloc_max_entry;
|
||||
#ifdef CONFIG_SND_PCM_XRUN_DEBUG
|
||||
struct snd_info_entry *proc_xrun_injection_entry;
|
||||
#endif
|
||||
#endif /* CONFIG_SND_VERBOSE_PROCFS */
|
||||
/* misc flags */
|
||||
unsigned int hw_opened: 1;
|
||||
|
|
@ -512,10 +503,8 @@ struct snd_pcm_str {
|
|||
#endif
|
||||
#ifdef CONFIG_SND_VERBOSE_PROCFS
|
||||
struct snd_info_entry *proc_root;
|
||||
struct snd_info_entry *proc_info_entry;
|
||||
#ifdef CONFIG_SND_PCM_XRUN_DEBUG
|
||||
unsigned int xrun_debug; /* 0 = disabled, 1 = verbose, 2 = stacktrace */
|
||||
struct snd_info_entry *proc_xrun_debug_entry;
|
||||
#endif
|
||||
#endif
|
||||
struct snd_kcontrol *chmap_kctl; /* channel-mapping controls */
|
||||
|
|
@ -538,6 +527,7 @@ struct snd_pcm {
|
|||
void (*private_free) (struct snd_pcm *pcm);
|
||||
bool internal; /* pcm is for internal use only */
|
||||
bool nonatomic; /* whole PCM operations are in non-atomic context */
|
||||
bool no_device_suspend; /* don't invoke device PM suspend */
|
||||
#if IS_ENABLED(CONFIG_SND_PCM_OSS)
|
||||
struct snd_pcm_oss oss;
|
||||
#endif
|
||||
|
|
@ -581,13 +571,8 @@ int snd_pcm_stop(struct snd_pcm_substream *substream, snd_pcm_state_t status);
|
|||
int snd_pcm_drain_done(struct snd_pcm_substream *substream);
|
||||
int snd_pcm_stop_xrun(struct snd_pcm_substream *substream);
|
||||
#ifdef CONFIG_PM
|
||||
int snd_pcm_suspend(struct snd_pcm_substream *substream);
|
||||
int snd_pcm_suspend_all(struct snd_pcm *pcm);
|
||||
#else
|
||||
static inline int snd_pcm_suspend(struct snd_pcm_substream *substream)
|
||||
{
|
||||
return 0;
|
||||
}
|
||||
static inline int snd_pcm_suspend_all(struct snd_pcm *pcm)
|
||||
{
|
||||
return 0;
|
||||
|
|
@ -765,7 +750,7 @@ static inline snd_pcm_uframes_t snd_pcm_playback_avail(struct snd_pcm_runtime *r
|
|||
}
|
||||
|
||||
/**
|
||||
* snd_pcm_playback_avail - Get the available (readable) space for capture
|
||||
* snd_pcm_capture_avail - Get the available (readable) space for capture
|
||||
* @runtime: PCM runtime instance
|
||||
*
|
||||
* Result is between 0 ... (boundary - 1)
|
||||
|
|
@ -1200,12 +1185,12 @@ static inline void snd_pcm_gettime(struct snd_pcm_runtime *runtime,
|
|||
* Memory
|
||||
*/
|
||||
|
||||
int snd_pcm_lib_preallocate_free(struct snd_pcm_substream *substream);
|
||||
int snd_pcm_lib_preallocate_free_for_all(struct snd_pcm *pcm);
|
||||
int snd_pcm_lib_preallocate_pages(struct snd_pcm_substream *substream,
|
||||
void snd_pcm_lib_preallocate_free(struct snd_pcm_substream *substream);
|
||||
void snd_pcm_lib_preallocate_free_for_all(struct snd_pcm *pcm);
|
||||
void snd_pcm_lib_preallocate_pages(struct snd_pcm_substream *substream,
|
||||
int type, struct device *data,
|
||||
size_t size, size_t max);
|
||||
int snd_pcm_lib_preallocate_pages_for_all(struct snd_pcm *pcm,
|
||||
void snd_pcm_lib_preallocate_pages_for_all(struct snd_pcm *pcm,
|
||||
int type, void *data,
|
||||
size_t size, size_t max);
|
||||
int snd_pcm_lib_malloc_pages(struct snd_pcm_substream *substream, size_t size);
|
||||
|
|
|
|||
Loading…
Reference in a new issue