/sound/hda/ |
D | hdac_stream.c | 60 void snd_hdac_stream_init(struct hdac_bus *bus, struct hdac_stream *azx_dev, in snd_hdac_stream_init() argument 63 azx_dev->bus = bus; in snd_hdac_stream_init() 65 azx_dev->sd_addr = bus->remap_addr + (0x20 * idx + 0x80); in snd_hdac_stream_init() 67 azx_dev->sd_int_sta_mask = 1 << idx; in snd_hdac_stream_init() 68 azx_dev->index = idx; in snd_hdac_stream_init() 69 azx_dev->direction = direction; in snd_hdac_stream_init() 70 azx_dev->stream_tag = tag; in snd_hdac_stream_init() 71 snd_hdac_dsp_lock_init(azx_dev); in snd_hdac_stream_init() 72 list_add_tail(&azx_dev->list, &bus->stream_list); in snd_hdac_stream_init() 83 void snd_hdac_stream_start(struct hdac_stream *azx_dev, bool fresh_start) in snd_hdac_stream_start() argument [all …]
|
D | trace.h | 56 TP_PROTO(struct hdac_bus *bus, struct hdac_stream *azx_dev), 58 TP_ARGS(bus, azx_dev), 65 __entry->stream_tag = (azx_dev)->stream_tag; 72 TP_PROTO(struct hdac_bus *bus, struct hdac_stream *azx_dev), 73 TP_ARGS(bus, azx_dev) 77 TP_PROTO(struct hdac_bus *bus, struct hdac_stream *azx_dev), 78 TP_ARGS(bus, azx_dev)
|
D | hdac_controller.c | 471 struct hdac_stream *azx_dev; in azx_int_disable() local 474 list_for_each_entry(azx_dev, &bus->stream_list, list) in azx_int_disable() 475 snd_hdac_stream_updateb(azx_dev, SD_CTL, SD_INT_MASK, 0); in azx_int_disable() 487 struct hdac_stream *azx_dev; in azx_int_clear() local 490 list_for_each_entry(azx_dev, &bus->stream_list, list) in azx_int_clear() 491 snd_hdac_stream_writeb(azx_dev, SD_STS, SD_INT_MASK); in azx_int_clear() 575 struct hdac_stream *azx_dev; in snd_hdac_bus_handle_stream_irq() local 579 list_for_each_entry(azx_dev, &bus->stream_list, list) { in snd_hdac_bus_handle_stream_irq() 580 if (status & azx_dev->sd_int_sta_mask) { in snd_hdac_bus_handle_stream_irq() 581 sd_status = snd_hdac_stream_readb(azx_dev, SD_STS); in snd_hdac_bus_handle_stream_irq() [all …]
|
/sound/pci/hda/ |
D | hda_controller_trace.h | 12 struct azx_dev; 16 TP_PROTO(struct azx *chip, struct azx_dev *dev, int cmd), 37 TP_PROTO(struct azx *chip, struct azx_dev *dev, unsigned int pos, unsigned int delay), 59 TP_PROTO(struct azx *chip, struct azx_dev *azx_dev), 61 TP_ARGS(chip, azx_dev), 68 __entry->stream_tag = (azx_dev)->core.stream_tag; 75 TP_PROTO(struct azx *chip, struct azx_dev *azx_dev), 76 TP_ARGS(chip, azx_dev) 80 TP_PROTO(struct azx *chip, struct azx_dev *azx_dev), 81 TP_ARGS(chip, azx_dev) [all …]
|
D | hda_controller.c | 39 static inline struct azx_dev * 51 static inline void azx_release_device(struct azx_dev *azx_dev) in azx_release_device() argument 53 snd_hdac_stream_release(azx_stream(azx_dev)); in azx_release_device() 92 struct azx_dev *azx_dev = get_azx_dev(substream); in azx_pcm_close() local 94 trace_azx_pcm_close(chip, azx_dev); in azx_pcm_close() 96 azx_release_device(azx_dev); in azx_pcm_close() 110 struct azx_dev *azx_dev = get_azx_dev(substream); in azx_pcm_hw_params() local 113 trace_azx_pcm_hw_params(chip, azx_dev); in azx_pcm_hw_params() 114 dsp_lock(azx_dev); in azx_pcm_hw_params() 115 if (dsp_is_locked(azx_dev)) { in azx_pcm_hw_params() [all …]
|
D | hda_controller.h | 56 struct azx_dev { struct 69 #define stream_to_azx_dev(s) container_of(s, struct azx_dev, core) argument 78 int (*position_check)(struct azx *chip, struct azx_dev *azx_dev); 91 typedef unsigned int (*azx_get_pos_callback_t)(struct azx *, struct azx_dev *); 92 typedef int (*azx_get_delay_callback_t)(struct azx *, struct azx_dev *, unsigned int pos); 149 struct azx_dev saved_azx_dev; 182 static inline struct azx_dev *get_azx_dev(struct snd_pcm_substream *substream) in get_azx_dev() 186 unsigned int azx_get_position(struct azx *chip, struct azx_dev *azx_dev); 187 unsigned int azx_get_pos_lpib(struct azx *chip, struct azx_dev *azx_dev); 188 unsigned int azx_get_pos_posbuf(struct azx *chip, struct azx_dev *azx_dev);
|
D | hda_intel.c | 585 static int azx_get_delay_from_lpib(struct azx *chip, struct azx_dev *azx_dev, in azx_get_delay_from_lpib() argument 588 struct snd_pcm_substream *substream = azx_dev->core.substream; in azx_get_delay_from_lpib() 590 unsigned int lpib_pos = azx_get_pos_lpib(chip, azx_dev); in azx_get_delay_from_lpib() 598 if (delay >= azx_dev->core.delay_negative_threshold) in azx_get_delay_from_lpib() 601 delay += azx_dev->core.bufsize; in azx_get_delay_from_lpib() 604 if (delay >= azx_dev->core.period_bytes) { in azx_get_delay_from_lpib() 607 delay, azx_dev->core.period_bytes); in azx_get_delay_from_lpib() 616 static int azx_position_ok(struct azx *chip, struct azx_dev *azx_dev); 619 static int azx_position_check(struct azx *chip, struct azx_dev *azx_dev) in azx_position_check() argument 624 ok = azx_position_ok(chip, azx_dev); in azx_position_check() [all …]
|