forked from ~ljy/RK356X_SDK_RELEASE

hc
2024-10-22 8ac6c7a54ed1b98d142dce24b11c6de6a1e239a5
kernel/sound/firewire/oxfw/oxfw.h
....@@ -1,8 +1,8 @@
1
+/* SPDX-License-Identifier: GPL-2.0-only */
12 /*
23 * oxfw.h - a part of driver for OXFW970/971 based devices
34 *
45 * Copyright (c) Clemens Ladisch <clemens@ladisch.de>
5
- * Licensed under the terms of the GNU General Public License, version 2.
66 */
77
88 #include <linux/device.h>
....@@ -45,6 +45,7 @@
4545
4646 bool wrong_dbs;
4747 bool has_output;
48
+ bool has_input;
4849 u8 *tx_stream_formats[SND_OXFW_STREAM_FORMAT_ENTRIES];
4950 u8 *rx_stream_formats[SND_OXFW_STREAM_FORMAT_ENTRIES];
5051 bool assumed;
....@@ -52,8 +53,7 @@
5253 struct cmp_connection in_conn;
5354 struct amdtp_stream tx_stream;
5455 struct amdtp_stream rx_stream;
55
- unsigned int capture_substreams;
56
- unsigned int playback_substreams;
56
+ unsigned int substreams_count;
5757
5858 unsigned int midi_input_ports;
5959 unsigned int midi_output_ports;
....@@ -64,6 +64,8 @@
6464
6565 const struct ieee1394_device_id *entry;
6666 void *spec;
67
+
68
+ struct amdtp_domain domain;
6769 };
6870
6971 /*
....@@ -99,17 +101,16 @@
99101 enum avc_general_plug_dir dir,
100102 unsigned short pid);
101103
102
-int snd_oxfw_stream_init_simplex(struct snd_oxfw *oxfw,
103
- struct amdtp_stream *stream);
104
-int snd_oxfw_stream_start_simplex(struct snd_oxfw *oxfw,
105
- struct amdtp_stream *stream,
106
- unsigned int rate, unsigned int pcm_channels);
107
-void snd_oxfw_stream_stop_simplex(struct snd_oxfw *oxfw,
108
- struct amdtp_stream *stream);
109
-void snd_oxfw_stream_destroy_simplex(struct snd_oxfw *oxfw,
110
- struct amdtp_stream *stream);
111
-void snd_oxfw_stream_update_simplex(struct snd_oxfw *oxfw,
112
- struct amdtp_stream *stream);
104
+int snd_oxfw_stream_init_duplex(struct snd_oxfw *oxfw);
105
+int snd_oxfw_stream_reserve_duplex(struct snd_oxfw *oxfw,
106
+ struct amdtp_stream *stream,
107
+ unsigned int rate, unsigned int pcm_channels,
108
+ unsigned int frames_per_period,
109
+ unsigned int frames_per_buffer);
110
+int snd_oxfw_stream_start_duplex(struct snd_oxfw *oxfw);
111
+void snd_oxfw_stream_stop_duplex(struct snd_oxfw *oxfw);
112
+void snd_oxfw_stream_destroy_duplex(struct snd_oxfw *oxfw);
113
+void snd_oxfw_stream_update_duplex(struct snd_oxfw *oxfw);
113114
114115 struct snd_oxfw_stream_formation {
115116 unsigned int rate;