hc
2024-05-13 9d77db3c730780c8ef5ccd4b66403ff5675cfe4e
kernel/sound/firewire/motu/motu-proc.c
....@@ -1,9 +1,8 @@
1
+// SPDX-License-Identifier: GPL-2.0-only
12 /*
23 * motu-proc.c - a part of driver for MOTU FireWire series
34 *
45 * Copyright (c) 2015-2017 Takashi Sakamoto <o-takashi@sakamocchi.jp>
5
- *
6
- * Licensed under the terms of the GNU General Public License, version 2.
76 */
87
98 #include "./motu.h"
....@@ -20,6 +19,8 @@
2019 [SND_MOTU_CLOCK_SOURCE_SPDIF_ON_COAX] = "S/PDIF on coaxial interface",
2120 [SND_MOTU_CLOCK_SOURCE_AESEBU_ON_XLR] = "AESEBU on XLR interface",
2221 [SND_MOTU_CLOCK_SOURCE_WORD_ON_BNC] = "Word clock on BNC interface",
22
+ [SND_MOTU_CLOCK_SOURCE_SPH] = "Source packet header",
23
+ [SND_MOTU_CLOCK_SOURCE_UNKNOWN] = "Unknown",
2324 };
2425
2526 static void proc_read_clock(struct snd_info_entry *entry,
....@@ -27,13 +28,12 @@
2728 {
2829
2930 struct snd_motu *motu = entry->private_data;
30
- const struct snd_motu_protocol *const protocol = motu->spec->protocol;
3131 unsigned int rate;
3232 enum snd_motu_clock_source source;
3333
34
- if (protocol->get_clock_rate(motu, &rate) < 0)
34
+ if (snd_motu_protocol_get_clock_rate(motu, &rate) < 0)
3535 return;
36
- if (protocol->get_clock_source(motu, &source) < 0)
36
+ if (snd_motu_protocol_get_clock_source(motu, &source) < 0)
3737 return;
3838
3939 snd_iprintf(buffer, "Rate:\t%d\n", rate);
....@@ -44,15 +44,14 @@
4444 struct snd_info_buffer *buffer)
4545 {
4646 struct snd_motu *motu = entry->private_data;
47
- const struct snd_motu_protocol *const protocol = motu->spec->protocol;
4847 unsigned int mode;
4948 struct snd_motu_packet_format *formats;
5049 int i;
5150
52
- if (protocol->cache_packet_formats(motu) < 0)
51
+ if (snd_motu_protocol_cache_packet_formats(motu) < 0)
5352 return;
5453
55
- snd_iprintf(buffer, "tx:\tmsg\tfixed\tdiffered\n");
54
+ snd_iprintf(buffer, "tx:\tmsg\tfixed\ttotal\n");
5655 for (i = 0; i < SND_MOTU_CLOCK_RATE_COUNT; ++i) {
5756 mode = i >> 1;
5857
....@@ -61,11 +60,11 @@
6160 "%u:\t%u\t%u\t%u\n",
6261 snd_motu_clock_rates[i],
6362 formats->msg_chunks,
64
- formats->fixed_part_pcm_chunks[mode],
65
- formats->differed_part_pcm_chunks[mode]);
63
+ motu->spec->tx_fixed_pcm_chunks[mode],
64
+ formats->pcm_chunks[mode]);
6665 }
6766
68
- snd_iprintf(buffer, "rx:\tmsg\tfixed\tdiffered\n");
67
+ snd_iprintf(buffer, "rx:\tmsg\tfixed\ttotal\n");
6968 for (i = 0; i < SND_MOTU_CLOCK_RATE_COUNT; ++i) {
7069 mode = i >> 1;
7170
....@@ -74,8 +73,8 @@
7473 "%u:\t%u\t%u\t%u\n",
7574 snd_motu_clock_rates[i],
7675 formats->msg_chunks,
77
- formats->fixed_part_pcm_chunks[mode],
78
- formats->differed_part_pcm_chunks[mode]);
76
+ motu->spec->rx_fixed_pcm_chunks[mode],
77
+ formats->pcm_chunks[mode]);
7978 }
8079 }
8180
....@@ -87,12 +86,8 @@
8786 struct snd_info_entry *entry;
8887
8988 entry = snd_info_create_card_entry(motu->card, name, root);
90
- if (entry == NULL)
91
- return;
92
-
93
- snd_info_set_text_ops(entry, motu, op);
94
- if (snd_info_register(entry) < 0)
95
- snd_info_free_entry(entry);
89
+ if (entry)
90
+ snd_info_set_text_ops(entry, motu, op);
9691 }
9792
9893 void snd_motu_proc_init(struct snd_motu *motu)
....@@ -108,10 +103,6 @@
108103 if (root == NULL)
109104 return;
110105 root->mode = S_IFDIR | 0555;
111
- if (snd_info_register(root) < 0) {
112
- snd_info_free_entry(root);
113
- return;
114
- }
115106
116107 add_node(motu, root, "clock", proc_read_clock);
117108 add_node(motu, root, "format", proc_read_format);