1 /* SPDX-License-Identifier: GPL-2.0 */ 2 #ifndef SOUND_FIREWIRE_PACKETS_BUFFER_H_INCLUDED 3 #define SOUND_FIREWIRE_PACKETS_BUFFER_H_INCLUDED 4 5 #include <linux/dma-mapping.h> 6 #include <linux/firewire.h> 7 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 12 */ 13 struct iso_packets_buffer { 14 struct fw_iso_buffer iso_buffer; 15 struct { 16 void *buffer; 17 unsigned int offset; 18 } *packets; 19 }; 20 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); 26 27 #endif 28