Linux 4.16.11
[linux/fpc-iii.git] / sound / firewire / packets-buffer.h
blob99e963c271e13f06e3ac9114be584a2670666347
1 /* SPDX-License-Identifier: GPL-2.0 */
2 #ifndef SOUND_FIREWIRE_PACKETS_BUFFER_H_INCLUDED
3 #define SOUND_FIREWIRE_PACKETS_BUFFER_H_INCLUDED
5 #include <linux/dma-mapping.h>
6 #include <linux/firewire.h>
8 /**
9 * struct iso_packets_buffer - manages a buffer for many packets
10 * @iso_buffer: the memory containing the packets
11 * @packets: an array, with each element pointing to one packet
13 struct iso_packets_buffer {
14 struct fw_iso_buffer iso_buffer;
15 struct {
16 void *buffer;
17 unsigned int offset;
18 } *packets;
21 int iso_packets_buffer_init(struct iso_packets_buffer *b, struct fw_unit *unit,
22 unsigned int count, unsigned int packet_size,
23 enum dma_data_direction direction);
24 void iso_packets_buffer_destroy(struct iso_packets_buffer *b,
25 struct fw_unit *unit);
27 #endif