Commit | Line | Data |
---|---|---|
b2441318 | 1 | /* SPDX-License-Identifier: GPL-2.0 */ |
31ef9134 CL |
2 | #ifndef SOUND_FIREWIRE_LIB_H_INCLUDED |
3 | #define SOUND_FIREWIRE_LIB_H_INCLUDED | |
4 | ||
5 | #include <linux/firewire-constants.h> | |
6 | #include <linux/types.h> | |
585d7cba TS |
7 | #include <linux/sched.h> |
8 | #include <sound/rawmidi.h> | |
31ef9134 CL |
9 | |
10 | struct fw_unit; | |
11 | ||
1b70485f CL |
12 | #define FW_GENERATION_MASK 0x00ff |
13 | #define FW_FIXED_GENERATION 0x0100 | |
14 | #define FW_QUIET 0x0200 | |
15 | ||
31ef9134 | 16 | int snd_fw_transaction(struct fw_unit *unit, int tcode, |
1b70485f CL |
17 | u64 offset, void *buffer, size_t length, |
18 | unsigned int flags); | |
31ef9134 CL |
19 | |
20 | /* returns true if retrying the transaction would not make sense */ | |
21 | static inline bool rcode_is_permanent_error(int rcode) | |
22 | { | |
23 | return rcode == RCODE_TYPE_ERROR || rcode == RCODE_ADDRESS_ERROR; | |
24 | } | |
25 | ||
923f92eb TS |
26 | void snd_fw_schedule_registration(struct fw_unit *unit, |
27 | struct delayed_work *dwork); | |
28 | ||
31ef9134 | 29 | #endif |