Merge tag 'v4.19-rc1' into asoc-4.19
Linux 4.19-rc1
This commit is contained in:
@@ -8,8 +8,10 @@
|
||||
|
||||
#include <linux/device.h>
|
||||
#include <linux/interrupt.h>
|
||||
#include <linux/pm_runtime.h>
|
||||
#include <linux/timecounter.h>
|
||||
#include <sound/core.h>
|
||||
#include <sound/pcm.h>
|
||||
#include <sound/memalloc.h>
|
||||
#include <sound/hda_verbs.h>
|
||||
#include <drm/i915_component.h>
|
||||
@@ -132,7 +134,7 @@ int snd_hdac_get_sub_nodes(struct hdac_device *codec, hda_nid_t nid,
|
||||
hda_nid_t *start_id);
|
||||
unsigned int snd_hdac_calc_stream_format(unsigned int rate,
|
||||
unsigned int channels,
|
||||
unsigned int format,
|
||||
snd_pcm_format_t format,
|
||||
unsigned int maxbps,
|
||||
unsigned short spdif_ctls);
|
||||
int snd_hdac_query_supported_pcm(struct hdac_device *codec, hda_nid_t nid,
|
||||
@@ -171,12 +173,38 @@ int snd_hdac_power_down(struct hdac_device *codec);
|
||||
int snd_hdac_power_up_pm(struct hdac_device *codec);
|
||||
int snd_hdac_power_down_pm(struct hdac_device *codec);
|
||||
int snd_hdac_keep_power_up(struct hdac_device *codec);
|
||||
|
||||
/* call this at entering into suspend/resume callbacks in codec driver */
|
||||
static inline void snd_hdac_enter_pm(struct hdac_device *codec)
|
||||
{
|
||||
atomic_inc(&codec->in_pm);
|
||||
}
|
||||
|
||||
/* call this at leaving from suspend/resume callbacks in codec driver */
|
||||
static inline void snd_hdac_leave_pm(struct hdac_device *codec)
|
||||
{
|
||||
atomic_dec(&codec->in_pm);
|
||||
}
|
||||
|
||||
static inline bool snd_hdac_is_in_pm(struct hdac_device *codec)
|
||||
{
|
||||
return atomic_read(&codec->in_pm);
|
||||
}
|
||||
|
||||
static inline bool snd_hdac_is_power_on(struct hdac_device *codec)
|
||||
{
|
||||
return !pm_runtime_suspended(&codec->dev);
|
||||
}
|
||||
#else
|
||||
static inline int snd_hdac_power_up(struct hdac_device *codec) { return 0; }
|
||||
static inline int snd_hdac_power_down(struct hdac_device *codec) { return 0; }
|
||||
static inline int snd_hdac_power_up_pm(struct hdac_device *codec) { return 0; }
|
||||
static inline int snd_hdac_power_down_pm(struct hdac_device *codec) { return 0; }
|
||||
static inline int snd_hdac_keep_power_up(struct hdac_device *codec) { return 0; }
|
||||
static inline void snd_hdac_enter_pm(struct hdac_device *codec) {}
|
||||
static inline void snd_hdac_leave_pm(struct hdac_device *codec) {}
|
||||
static inline bool snd_hdac_is_in_pm(struct hdac_device *codec) { return 0; }
|
||||
static inline bool snd_hdac_is_power_on(struct hdac_device *codec) { return 1; }
|
||||
#endif
|
||||
|
||||
/*
|
||||
|
@@ -462,6 +462,7 @@ struct snd_pcm_substream {
|
||||
/* -- timer section -- */
|
||||
struct snd_timer *timer; /* timer */
|
||||
unsigned timer_running: 1; /* time is running */
|
||||
long wait_time; /* time in ms for R/W to wait for avail */
|
||||
/* -- next substream -- */
|
||||
struct snd_pcm_substream *next;
|
||||
/* -- linked substreams -- */
|
||||
@@ -1089,14 +1090,14 @@ static inline snd_pcm_sframes_t
|
||||
snd_pcm_lib_write(struct snd_pcm_substream *substream,
|
||||
const void __user *buf, snd_pcm_uframes_t frames)
|
||||
{
|
||||
return __snd_pcm_lib_xfer(substream, (void *)buf, true, frames, false);
|
||||
return __snd_pcm_lib_xfer(substream, (void __force *)buf, true, frames, false);
|
||||
}
|
||||
|
||||
static inline snd_pcm_sframes_t
|
||||
snd_pcm_lib_read(struct snd_pcm_substream *substream,
|
||||
void __user *buf, snd_pcm_uframes_t frames)
|
||||
{
|
||||
return __snd_pcm_lib_xfer(substream, (void *)buf, true, frames, false);
|
||||
return __snd_pcm_lib_xfer(substream, (void __force *)buf, true, frames, false);
|
||||
}
|
||||
|
||||
static inline snd_pcm_sframes_t
|
||||
@@ -1341,8 +1342,6 @@ int snd_pcm_lib_mmap_iomem(struct snd_pcm_substream *substream, struct vm_area_s
|
||||
#define snd_pcm_lib_mmap_iomem NULL
|
||||
#endif
|
||||
|
||||
#define snd_pcm_lib_mmap_vmalloc NULL
|
||||
|
||||
/**
|
||||
* snd_pcm_limit_isa_dma_size - Get the max size fitting with ISA DMA transfer
|
||||
* @dma: DMA number
|
||||
|
@@ -46,7 +46,7 @@ enum {
|
||||
struct snd_sb_csp_ops {
|
||||
int (*csp_use) (struct snd_sb_csp * p);
|
||||
int (*csp_unuse) (struct snd_sb_csp * p);
|
||||
int (*csp_autoload) (struct snd_sb_csp * p, int pcm_sfmt, int play_rec_mode);
|
||||
int (*csp_autoload) (struct snd_sb_csp * p, snd_pcm_format_t pcm_sfmt, int play_rec_mode);
|
||||
int (*csp_start) (struct snd_sb_csp * p, int sample_width, int channels);
|
||||
int (*csp_stop) (struct snd_sb_csp * p);
|
||||
int (*csp_qsound_transfer) (struct snd_sb_csp * p);
|
||||
|
@@ -43,10 +43,8 @@ void snd_midi_event_free(struct snd_midi_event *dev);
|
||||
void snd_midi_event_reset_encode(struct snd_midi_event *dev);
|
||||
void snd_midi_event_reset_decode(struct snd_midi_event *dev);
|
||||
void snd_midi_event_no_status(struct snd_midi_event *dev, int on);
|
||||
/* encode from byte stream - return number of written bytes if success */
|
||||
long snd_midi_event_encode(struct snd_midi_event *dev, unsigned char *buf, long count,
|
||||
struct snd_seq_event *ev);
|
||||
int snd_midi_event_encode_byte(struct snd_midi_event *dev, int c, struct snd_seq_event *ev);
|
||||
bool snd_midi_event_encode_byte(struct snd_midi_event *dev, unsigned char c,
|
||||
struct snd_seq_event *ev);
|
||||
/* decode from event to bytes - return number of written bytes if success */
|
||||
long snd_midi_event_decode(struct snd_midi_event *dev, unsigned char *buf, long count,
|
||||
struct snd_seq_event *ev);
|
||||
|
@@ -36,11 +36,12 @@ struct snd_virmidi {
|
||||
int seq_mode;
|
||||
int client;
|
||||
int port;
|
||||
unsigned int trigger: 1;
|
||||
bool trigger;
|
||||
struct snd_midi_event *parser;
|
||||
struct snd_seq_event event;
|
||||
struct snd_virmidi_dev *rdev;
|
||||
struct snd_rawmidi_substream *substream;
|
||||
struct work_struct output_work;
|
||||
};
|
||||
|
||||
#define SNDRV_VIRMIDI_SUBSCRIBE (1<<0)
|
||||
|
Reference in New Issue
Block a user