From 76a3719cf9bd5cc2c40a28db537e87c222270552 Mon Sep 17 00:00:00 2001 From: serifpersia Date: Fri, 4 Jul 2025 17:31:12 +0200 Subject: [PATCH] Align driver with kernel coding standards + pcm bug fix --- us144mkii.c | 810 ++++++++++++++++++--------------------------------- us144mkii.ko | Bin 520880 -> 0 bytes 2 files changed, 284 insertions(+), 526 deletions(-) delete mode 100644 us144mkii.ko diff --git a/us144mkii.c b/us144mkii.c index a16eef4..98b3c11 100644 --- a/us144mkii.c +++ b/us144mkii.c @@ -1,18 +1,13 @@ // SPDX-License-Identifier: GPL-2.0 -// (c) 2025 serifpersia +// Copyright (c) 2025 serifpersia /* * ALSA Driver for TASCAM US-144MKII Audio Interface */ -// TODO: Verify on resume/shutdown that device works as expected -// TODO: Implement audio capture, MIDI IN/OUT -// TODO: 4 Channel routing & ALSA mixers and GUI tool that will use these mixers to control device's audio in/out routing, latency profile, sample rate & digital out format. - #include #include #include #include -#include #include #include @@ -20,13 +15,12 @@ #include #include -MODULE_AUTHOR("serifpersia"); +MODULE_AUTHOR("serifpersia "); MODULE_DESCRIPTION("ALSA Driver for TASCAM US-144MKII"); MODULE_LICENSE("GPL"); -#define DRIVER_NAME "us144mkii" +#define DRIVER_NAME "snd-usb-us144mkii" -/* Module Parameters */ static int index[SNDRV_CARDS] = SNDRV_DEFAULT_IDX; static char *id[SNDRV_CARDS] = SNDRV_DEFAULT_STR; static bool enable[SNDRV_CARDS] = {1, [1 ... (SNDRV_CARDS - 1)] = 0}; @@ -38,48 +32,78 @@ MODULE_PARM_DESC(id, "ID string for the US-144MKII soundcard."); module_param_array(enable, bool, NULL, 0444); MODULE_PARM_DESC(enable, "Enable this US-144MKII soundcard."); -/* Constants and Structs */ -#define TASCAM_VID 0x0644 -#define TASCAM_PID 0x8020 +/* --- USB Device Identification --- */ +#define USB_VID_TASCAM 0x0644 +#define USB_PID_TASCAM_US144MKII 0x8020 -/* USB Endpoints */ -#define EP_AUDIO_OUT 0x02 // Isochronous OUT for playback audio -#define EP_PLAYBACK_FEEDBACK 0x81 // Isochronous IN for clock feedback -#define EP_CAPTURE_DATA 0x86 // Bulk IN for capture audio -#define EP_MIDI_OUT 0x04 // Bulk OUT for MIDI -#define EP_MIDI_IN 0x83 // Bulk IN for MIDI +/* --- USB Endpoints (Alternate Setting 1) --- */ +#define EP_PLAYBACK_FEEDBACK 0x81 +#define EP_AUDIO_OUT 0x02 +#define EP_MIDI_IN 0x83 +#define EP_MIDI_OUT 0x04 +#define EP_CAPTURE_DATA 0x86 -/* USB Control Message Request Types */ -#define RT_H2D_CLASS_EP 0x22 // Host-to-Device, Class, Endpoint -#define RT_H2D_VENDOR_DEV 0x40 // Host-to-Device, Vendor, Device -#define RT_D2H_VENDOR_DEV 0xc0 // Device-to-Host, Vendor, Device - -/* USB Control Message Requests */ -#define UAC_SET_CUR 0x01 +/* --- USB Control Message Protocol --- */ +#define RT_H2D_CLASS_EP (USB_DIR_OUT | USB_TYPE_CLASS | USB_RECIP_ENDPOINT) +#define RT_H2D_VENDOR_DEV (USB_DIR_OUT | USB_TYPE_VENDOR | USB_RECIP_DEVICE) +#define RT_D2H_VENDOR_DEV (USB_DIR_IN | USB_TYPE_VENDOR | USB_RECIP_DEVICE) +#define UAC_SET_CUR 0x01 #define UAC_SAMPLING_FREQ_CONTROL 0x0100 -#define VENDOR_REQ_REGISTER_WRITE 65 // bRequest 0x41 -#define VENDOR_REQ_MODE_CONTROL 73 // bRequest 0x49 +#define VENDOR_REQ_REGISTER_WRITE 0x41 +#define VENDOR_REQ_MODE_CONTROL 0x49 +#define MODE_VAL_HANDSHAKE_READ 0x0000 +#define MODE_VAL_CONFIG 0x0010 +#define MODE_VAL_STREAM_START 0x0030 +#define REG_ADDR_UNKNOWN_0D 0x0d04 +#define REG_ADDR_UNKNOWN_0E 0x0e00 +#define REG_ADDR_UNKNOWN_0F 0x0f00 +#define REG_ADDR_RATE_44100 0x1000 +#define REG_ADDR_RATE_48000 0x1002 +#define REG_ADDR_RATE_88200 0x1008 +#define REG_ADDR_RATE_96000 0x100a +#define REG_ADDR_UNKNOWN_11 0x110b +#define REG_VAL_ENABLE 0x0101 -/* URB Configuration */ -#define NUM_PLAYBACK_URBS 8 -#define NUM_FEEDBACK_URBS 4 -#define MAX_FEEDBACK_PACKETS 5 +/* --- URB Configuration --- */ +#define NUM_PLAYBACK_URBS 8 +#define NUM_FEEDBACK_URBS 4 +#define MAX_FEEDBACK_PACKETS 5 #define MAX_PLAYBACK_URB_ISO_PACKETS 40 -#define FEEDBACK_PACKET_SIZE 3 -#define USB_CTRL_TIMEOUT_MS 1000 - -/* Audio Format Configuration */ -#define BYTES_PER_SAMPLE 3 // 24-bit -#define ALSA_CHANNELS 2 // Stereo from user-space -#define DEVICE_CHANNELS 4 // Device expects 4 channels of data -#define ALSA_BYTES_PER_FRAME (ALSA_CHANNELS * BYTES_PER_SAMPLE) -#define DEVICE_BYTES_PER_FRAME (DEVICE_CHANNELS * BYTES_PER_SAMPLE) +#define FEEDBACK_PACKET_SIZE 3 +#define USB_CTRL_TIMEOUT_MS 1000 +/* --- Audio Format Configuration --- */ +#define BYTES_PER_SAMPLE 3 +#define ALSA_CHANNELS 2 +#define DEVICE_CHANNELS 4 +#define ALSA_BYTES_PER_FRAME (ALSA_CHANNELS * BYTES_PER_SAMPLE) +#define DEVICE_BYTES_PER_FRAME (DEVICE_CHANNELS * BYTES_PER_SAMPLE) #define FEEDBACK_ACCUMULATOR_SIZE 128 +struct tascam_card; static struct usb_driver tascam_alsa_driver; -/* Main driver data structure */ +static const unsigned int patterns_48khz[5][8] = { + {5, 6, 6, 6, 5, 6, 6, 6}, {5, 6, 6, 6, 6, 6, 6, 6}, + {6, 6, 6, 6, 6, 6, 6, 6}, {7, 6, 6, 6, 6, 6, 6, 6}, + {7, 6, 6, 6, 7, 6, 6, 6} +}; +static const unsigned int patterns_96khz[5][8] = { + {11, 12, 12, 12, 11, 12, 12, 12}, {11, 12, 12, 12, 12, 12, 12, 12}, + {12, 12, 12, 12, 12, 12, 12, 12}, {13, 12, 12, 12, 12, 12, 12, 12}, + {13, 12, 12, 12, 13, 12, 12, 12} +}; +static const unsigned int patterns_88khz[5][8] = { + {10, 11, 11, 11, 10, 11, 11, 11}, {10, 11, 11, 11, 11, 11, 11, 11}, + {11, 11, 11, 11, 11, 11, 11, 11}, {12, 11, 11, 11, 11, 11, 11, 11}, + {12, 11, 11, 11, 12, 11, 11, 11} +}; +static const unsigned int patterns_44khz[5][8] = { + {5, 5, 5, 6, 5, 5, 5, 6}, {5, 5, 6, 5, 5, 6, 5, 6}, + {5, 6, 5, 6, 5, 6, 5, 6}, {6, 5, 6, 6, 5, 6, 5, 6}, + {6, 6, 6, 5, 6, 6, 6, 5} +}; + struct tascam_card { struct usb_device *dev; struct usb_interface *iface0; @@ -90,7 +114,7 @@ struct tascam_card { struct snd_pcm_substream *playback_substream; struct urb *playback_urbs[NUM_PLAYBACK_URBS]; size_t playback_urb_alloc_size; - unsigned int playback_urb_iso_packets; // Dynamic packet count + unsigned int playback_urb_iso_packets; struct urb *feedback_urbs[NUM_FEEDBACK_URBS]; size_t feedback_urb_alloc_size; @@ -99,140 +123,49 @@ struct tascam_card { atomic_t playback_active; int current_rate; - /* Feedback Synchronization State */ unsigned int feedback_accumulator_pattern[FEEDBACK_ACCUMULATOR_SIZE]; unsigned int feedback_pattern_out_idx; unsigned int feedback_pattern_in_idx; bool feedback_synced; unsigned int feedback_urb_skip_count; - /* Playback Position Tracking */ - snd_pcm_uframes_t driver_playback_pos; u64 playback_frames_consumed; + snd_pcm_uframes_t driver_playback_pos; u64 last_period_pos; - /* Rate-Specific Data */ const unsigned int (*feedback_patterns)[8]; unsigned int feedback_base_value; unsigned int feedback_max_value; }; -/* - * Latency Profile Cheatsheet - * - * The driver selects a hardware profile dynamically based on the period size - * requested by the application. The device has 3 true hardware modes, - * determined by the number of packets in the feedback URB. - */ -static const unsigned int hardware_feedback_packet_counts[] = { - 1, // Tier 0: For Low latency - 2, // Tier 1: For Normal latency - 5, // Tier 2: For High latency -}; +static const unsigned int playback_iso_packet_counts_tiers[] = { 8, 24, 40 }; +static const unsigned int hardware_feedback_packet_counts[] = { 1, 2, 5 }; -// Maps ALSA period size tiers to desired PLAYBACK_URB_ISO_PACKETS -static const unsigned int playback_iso_packet_counts_tiers[] = { - 8, // Tier 0: For Low latency (e.g., 64-frame buffers) - 24, // Tier 1: For Normal latency (e.g., 128/256-frame buffers) - 40 // Tier 2: For High latency (e.g., 512/1024-frame buffers) -}; - -/* - * Pre-calculated patterns for frames-per-microframe based on feedback value. - * These are the core of the "Packet Fixing" engine. Each array represents - * the number of audio frames to send in each of the 8 microframes of a USB frame. - * The sum of each pattern equals the feedback value. - * E.g., for 48kHz, nominal is 48000/1000 = 48 frames/ms. - * The pattern for feedback value 48 is {6,6,6,6,6,6,6,6}, since 6*8=48. - */ -static const unsigned int patterns_48khz[5][8] = { - {5, 6, 6, 6, 5, 6, 6, 6}, // 46 - {5, 6, 6, 6, 6, 6, 6, 6}, // 47 - {6, 6, 6, 6, 6, 6, 6, 6}, // 48 (Nominal) - {7, 6, 6, 6, 6, 6, 6, 6}, // 49 - {7, 6, 6, 6, 7, 6, 6, 6} // 50 -}; -static const unsigned int patterns_96khz[5][8] = { - {11, 12, 12, 12, 11, 12, 12, 12}, // 94 - {11, 12, 12, 12, 12, 12, 12, 12}, // 95 - {12, 12, 12, 12, 12, 12, 12, 12}, // 96 (Nominal) - {13, 12, 12, 12, 12, 12, 12, 12}, // 97 - {13, 12, 12, 12, 13, 12, 12, 12} // 98 -}; -static const unsigned int patterns_88khz[5][8] = { - {10, 11, 11, 11, 10, 11, 11, 11}, // 86 - {10, 11, 11, 11, 11, 11, 11, 11}, // 87 - {11, 11, 11, 11, 11, 11, 11, 11}, // 88 (Nominal) - {12, 11, 11, 11, 11, 11, 11, 11}, // 89 - {12, 11, 11, 11, 12, 11, 11, 11} // 90 -}; -static const unsigned int patterns_44khz[5][8] = { - {5, 5, 5, 6, 5, 5, 5, 6}, // 42 - {5, 5, 6, 5, 5, 6, 5, 6}, // 43 - {5, 6, 5, 6, 5, 6, 5, 6}, // 44 (Nominal is 44.1) - {6, 5, 6, 6, 5, 6, 5, 6}, // 45 - {6, 6, 6, 5, 6, 6, 6, 5} // 46 -}; - -/* Forward Declarations */ -static void tascam_free_urbs(struct tascam_card *tascam); -static int tascam_alloc_urbs(struct tascam_card *tascam); -static int tascam_pcm_open(struct snd_pcm_substream *substream); -static int tascam_pcm_close(struct snd_pcm_substream *substream); -static int tascam_pcm_hw_params(struct snd_pcm_substream *substream, struct snd_pcm_hw_params *params); -static int tascam_pcm_hw_free(struct snd_pcm_substream *substream); -static int tascam_pcm_prepare(struct snd_pcm_substream *substream); -static int tascam_pcm_trigger(struct snd_pcm_substream *substream, int cmd); -static snd_pcm_uframes_t tascam_pcm_pointer(struct snd_pcm_substream *substream); static void playback_urb_complete(struct urb *urb); static void feedback_urb_complete(struct urb *urb); -static int us144mkii_configure_device_for_rate(struct tascam_card *tascam, int rate); -static int tascam_create_pcm(struct tascam_card *tascam); -static int tascam_probe(struct usb_interface *intf, const struct usb_device_id *id); -static void tascam_disconnect(struct usb_interface *intf); -/* PCM Hardware Definition */ static const struct snd_pcm_hardware tascam_pcm_hw = { - .info = (SNDRV_PCM_INFO_MMAP | - SNDRV_PCM_INFO_INTERLEAVED | - SNDRV_PCM_INFO_BLOCK_TRANSFER | - SNDRV_PCM_INFO_MMAP_VALID | - SNDRV_PCM_INFO_PAUSE | - SNDRV_PCM_INFO_RESUME), + .info = (SNDRV_PCM_INFO_MMAP | SNDRV_PCM_INFO_INTERLEAVED | + SNDRV_PCM_INFO_BLOCK_TRANSFER | SNDRV_PCM_INFO_MMAP_VALID | + SNDRV_PCM_INFO_PAUSE | SNDRV_PCM_INFO_RESUME), .formats = SNDRV_PCM_FMTBIT_S24_3LE, .rates = (SNDRV_PCM_RATE_44100 | SNDRV_PCM_RATE_48000 | SNDRV_PCM_RATE_88200 | SNDRV_PCM_RATE_96000), - .rate_min = 44100, - .rate_max = 96000, - .channels_min = 2, - .channels_max = 2, + .rate_min = 44100, .rate_max = 96000, + .channels_min = 2, .channels_max = 2, .buffer_bytes_max = 1024 * 1024, .period_bytes_min = 48 * ALSA_BYTES_PER_FRAME, .period_bytes_max = 1024 * ALSA_BYTES_PER_FRAME, - .periods_min = 2, - .periods_max = 1024, -}; - -/* PCM Operations */ -static struct snd_pcm_ops tascam_playback_ops = { - .open = tascam_pcm_open, - .close = tascam_pcm_close, - .ioctl = snd_pcm_lib_ioctl, - .hw_params = tascam_pcm_hw_params, - .hw_free = tascam_pcm_hw_free, - .prepare = tascam_pcm_prepare, - .trigger = tascam_pcm_trigger, - .pointer = tascam_pcm_pointer, -}; - -// Stub for capture, as this driver only implements playback. -static int tascam_capture_open_stub(struct snd_pcm_substream *substream) { return -ENODEV; } -static int tascam_capture_close_stub(struct snd_pcm_substream *substream) { return 0; } -static struct snd_pcm_ops tascam_capture_ops = { - .open = tascam_capture_open_stub, - .close = tascam_capture_close_stub, + .periods_min = 2, .periods_max = 1024, }; +/** + * tascam_free_urbs - Free all allocated URBs and their buffers. + * @tascam: The card instance. + * + * This function is the counterpart to tascam_alloc_urbs. It is called + * when the PCM device is closed to release all USB resources. + */ static void tascam_free_urbs(struct tascam_card *tascam) { int i; @@ -240,10 +173,9 @@ static void tascam_free_urbs(struct tascam_card *tascam) for (i = 0; i < NUM_PLAYBACK_URBS; i++) { if (tascam->playback_urbs[i]) { usb_kill_urb(tascam->playback_urbs[i]); - if (tascam->playback_urbs[i]->transfer_buffer) - usb_free_coherent(tascam->dev, tascam->playback_urb_alloc_size, - tascam->playback_urbs[i]->transfer_buffer, - tascam->playback_urbs[i]->transfer_dma); + usb_free_coherent(tascam->dev, tascam->playback_urb_alloc_size, + tascam->playback_urbs[i]->transfer_buffer, + tascam->playback_urbs[i]->transfer_dma); usb_free_urb(tascam->playback_urbs[i]); tascam->playback_urbs[i] = NULL; } @@ -252,36 +184,32 @@ static void tascam_free_urbs(struct tascam_card *tascam) for (i = 0; i < NUM_FEEDBACK_URBS; i++) { if (tascam->feedback_urbs[i]) { usb_kill_urb(tascam->feedback_urbs[i]); - if (tascam->feedback_urbs[i]->transfer_buffer) - usb_free_coherent(tascam->dev, tascam->feedback_urb_alloc_size, - tascam->feedback_urbs[i]->transfer_buffer, - tascam->feedback_urbs[i]->transfer_dma); + usb_free_coherent(tascam->dev, tascam->feedback_urb_alloc_size, + tascam->feedback_urbs[i]->transfer_buffer, + tascam->feedback_urbs[i]->transfer_dma); usb_free_urb(tascam->feedback_urbs[i]); tascam->feedback_urbs[i] = NULL; } } } +/** + * tascam_alloc_urbs - Allocate URBs and their buffers. + * @tascam: The card instance. + * + * Allocates all necessary URBs for playback and feedback. This is called + * when the PCM device is opened. + * Returns: 0 on success, or a negative error code on failure. + */ static int tascam_alloc_urbs(struct tascam_card *tascam) { int i; - size_t max_frames_per_packet, max_packet_size; + size_t max_packet_size; - // Calculate max possible packet size to allocate enough buffer space. - // Max frames per packet at 96kHz is 12. Add a margin for safety. - max_frames_per_packet = (96000 / 8000) + 2; - max_packet_size = max_frames_per_packet * DEVICE_BYTES_PER_FRAME; - - // Allocate playback URB buffer for the absolute maximum possible packets. + max_packet_size = ((96000 / 8000) + 2) * DEVICE_BYTES_PER_FRAME; tascam->playback_urb_alloc_size = max_packet_size * MAX_PLAYBACK_URB_ISO_PACKETS; - if (tascam->playback_urb_alloc_size == 0) { - dev_err(tascam->card->dev, "Calculated playback_urb_alloc_size is zero.\n"); - return -EINVAL; - } - for (i = 0; i < NUM_PLAYBACK_URBS; i++) { - // URB is allocated with max possible packets; actual # is set in hw_params. struct urb *urb = usb_alloc_urb(MAX_PLAYBACK_URB_ISO_PACKETS, GFP_KERNEL); if (!urb) goto error; @@ -349,11 +277,67 @@ static int tascam_pcm_open(struct snd_pcm_substream *substream) static int tascam_pcm_close(struct snd_pcm_substream *substream) { struct tascam_card *tascam = snd_pcm_substream_chip(substream); - tascam_free_urbs(tascam); return 0; } +static int us144mkii_configure_device_for_rate(struct tascam_card *tascam, int rate) +{ + struct usb_device *dev = tascam->dev; + u8 *rate_payload_buf; + u16 rate_vendor_wValue; + int err = 0; + + static const u8 payload_44100[] = {0x44, 0xac, 0x00}; + static const u8 payload_48000[] = {0x80, 0xbb, 0x00}; + static const u8 payload_88200[] = {0x88, 0x58, 0x01}; + static const u8 payload_96000[] = {0x00, 0x77, 0x01}; + const u8 *current_payload_src; + + switch (rate) { + case 44100: current_payload_src = payload_44100; rate_vendor_wValue = REG_ADDR_RATE_44100; break; + case 48000: current_payload_src = payload_48000; rate_vendor_wValue = REG_ADDR_RATE_48000; break; + case 88200: current_payload_src = payload_88200; rate_vendor_wValue = REG_ADDR_RATE_88200; break; + case 96000: current_payload_src = payload_96000; rate_vendor_wValue = REG_ADDR_RATE_96000; break; + default: + dev_err(&dev->dev, "Unsupported sample rate %d for configuration\n", rate); + return -EINVAL; + } + + rate_payload_buf = kmemdup(current_payload_src, 3, GFP_KERNEL); + if (!rate_payload_buf) + return -ENOMEM; + + dev_info(&dev->dev, "Configuring device for %d Hz\n", rate); + + err = usb_control_msg(dev, usb_sndctrlpipe(dev, 0), VENDOR_REQ_MODE_CONTROL, RT_H2D_VENDOR_DEV, MODE_VAL_CONFIG, 0x0000, NULL, 0, USB_CTRL_TIMEOUT_MS); + if (err < 0) goto fail; + err = usb_control_msg(dev, usb_sndctrlpipe(dev, 0), UAC_SET_CUR, RT_H2D_CLASS_EP, UAC_SAMPLING_FREQ_CONTROL, EP_CAPTURE_DATA, rate_payload_buf, 3, USB_CTRL_TIMEOUT_MS); + if (err < 0) goto fail; + err = usb_control_msg(dev, usb_sndctrlpipe(dev, 0), UAC_SET_CUR, RT_H2D_CLASS_EP, UAC_SAMPLING_FREQ_CONTROL, EP_AUDIO_OUT, rate_payload_buf, 3, USB_CTRL_TIMEOUT_MS); + if (err < 0) goto fail; + err = usb_control_msg(dev, usb_sndctrlpipe(dev, 0), VENDOR_REQ_REGISTER_WRITE, RT_H2D_VENDOR_DEV, REG_ADDR_UNKNOWN_0D, REG_VAL_ENABLE, NULL, 0, USB_CTRL_TIMEOUT_MS); + if (err < 0) goto fail; + err = usb_control_msg(dev, usb_sndctrlpipe(dev, 0), VENDOR_REQ_REGISTER_WRITE, RT_H2D_VENDOR_DEV, REG_ADDR_UNKNOWN_0E, REG_VAL_ENABLE, NULL, 0, USB_CTRL_TIMEOUT_MS); + if (err < 0) goto fail; + err = usb_control_msg(dev, usb_sndctrlpipe(dev, 0), VENDOR_REQ_REGISTER_WRITE, RT_H2D_VENDOR_DEV, REG_ADDR_UNKNOWN_0F, REG_VAL_ENABLE, NULL, 0, USB_CTRL_TIMEOUT_MS); + if (err < 0) goto fail; + err = usb_control_msg(dev, usb_sndctrlpipe(dev, 0), VENDOR_REQ_REGISTER_WRITE, RT_H2D_VENDOR_DEV, rate_vendor_wValue, REG_VAL_ENABLE, NULL, 0, USB_CTRL_TIMEOUT_MS); + if (err < 0) goto fail; + err = usb_control_msg(dev, usb_sndctrlpipe(dev, 0), VENDOR_REQ_REGISTER_WRITE, RT_H2D_VENDOR_DEV, REG_ADDR_UNKNOWN_11, REG_VAL_ENABLE, NULL, 0, USB_CTRL_TIMEOUT_MS); + if (err < 0) goto fail; + err = usb_control_msg(dev, usb_sndctrlpipe(dev, 0), VENDOR_REQ_MODE_CONTROL, RT_H2D_VENDOR_DEV, MODE_VAL_STREAM_START, 0x0000, NULL, 0, USB_CTRL_TIMEOUT_MS); + if (err < 0) goto fail; + + kfree(rate_payload_buf); + return 0; + +fail: + dev_err(&dev->dev, "Device configuration failed at rate %d with error %d\n", rate, err); + kfree(rate_payload_buf); + return err; +} + static int tascam_pcm_hw_params(struct snd_pcm_substream *substream, struct snd_pcm_hw_params *params) { @@ -363,104 +347,66 @@ static int tascam_pcm_hw_params(struct snd_pcm_substream *substream, unsigned int period_frames = params_period_size(params); unsigned int low_asio_frames, normal_asio_frames; int tier_idx; - unsigned int feedback_urb_packets; - unsigned int playback_iso_packets; - - // Set ASIO-reported frame counts based on sample rate. - switch (rate) { - case 44100: - low_asio_frames = 64; - normal_asio_frames = 128; - break; - case 48000: - low_asio_frames = 64; - normal_asio_frames = 128; - break; - case 88200: - low_asio_frames = 128; - normal_asio_frames = 256; - break; - case 96000: - low_asio_frames = 128; - normal_asio_frames = 256; - break; - default: - dev_err(tascam->card->dev, "Unsupported sample rate: %u\n", rate); - return -EINVAL; - } - - // Determine latency tier based on requested period size. - if (period_frames <= low_asio_frames) { - tier_idx = 0; // Low - } else if (period_frames <= normal_asio_frames) { - tier_idx = 1; // Normal - } else { - tier_idx = 2; // High - } - - dev_info(tascam->card->dev, - "User requested period of %u frames @ %u Hz, mapping to playback URB tier %d\n", - period_frames, rate, tier_idx); - - feedback_urb_packets = hardware_feedback_packet_counts[tier_idx]; - playback_iso_packets = playback_iso_packet_counts_tiers[tier_idx]; - tascam->playback_urb_iso_packets = playback_iso_packets; - - // Configure the feedback URBs for the selected latency profile. - for (i = 0; i < NUM_FEEDBACK_URBS; i++) { - struct urb *f_urb = tascam->feedback_urbs[i]; - int j; - - f_urb->number_of_packets = feedback_urb_packets; - f_urb->transfer_buffer_length = feedback_urb_packets * FEEDBACK_PACKET_SIZE; - for (j = 0; j < feedback_urb_packets; j++) { - f_urb->iso_frame_desc[j].offset = j * FEEDBACK_PACKET_SIZE; - f_urb->iso_frame_desc[j].length = FEEDBACK_PACKET_SIZE; - } - } - - // Configure playback URBs with the dynamically chosen packet count. - for (i = 0; i < NUM_PLAYBACK_URBS; i++) { - struct urb *urb = tascam->playback_urbs[i]; - urb->number_of_packets = tascam->playback_urb_iso_packets; - } err = snd_pcm_lib_malloc_pages(substream, params_buffer_bytes(params)); if (err < 0) return err; - // Load the correct feedback patterns and range for the selected sample rate. + switch (rate) { + case 44100: case 48000: + low_asio_frames = 64; normal_asio_frames = 128; break; + case 88200: case 96000: + low_asio_frames = 128; normal_asio_frames = 256; break; + default: return -EINVAL; + } + + if (period_frames <= low_asio_frames) + tier_idx = 0; + else if (period_frames <= normal_asio_frames) + tier_idx = 1; + else + tier_idx = 2; + + dev_info(tascam->card->dev, + "User requested period of %u frames @ %u Hz, mapping to latency tier %d\n", + period_frames, rate, tier_idx); + + tascam->playback_urb_iso_packets = playback_iso_packet_counts_tiers[tier_idx]; + + for (i = 0; i < NUM_FEEDBACK_URBS; i++) { + struct urb *f_urb = tascam->feedback_urbs[i]; + unsigned int packets = hardware_feedback_packet_counts[tier_idx]; + int j; + f_urb->number_of_packets = packets; + f_urb->transfer_buffer_length = packets * FEEDBACK_PACKET_SIZE; + for (j = 0; j < packets; j++) { + f_urb->iso_frame_desc[j].offset = j * FEEDBACK_PACKET_SIZE; + f_urb->iso_frame_desc[j].length = FEEDBACK_PACKET_SIZE; + } + } + + for (i = 0; i < NUM_PLAYBACK_URBS; i++) + tascam->playback_urbs[i]->number_of_packets = tascam->playback_urb_iso_packets; + switch (rate) { case 44100: tascam->feedback_patterns = patterns_44khz; - tascam->feedback_base_value = 42; - tascam->feedback_max_value = 46; - break; + tascam->feedback_base_value = 42; tascam->feedback_max_value = 46; break; case 48000: tascam->feedback_patterns = patterns_48khz; - tascam->feedback_base_value = 46; - tascam->feedback_max_value = 50; - break; + tascam->feedback_base_value = 46; tascam->feedback_max_value = 50; break; case 88200: tascam->feedback_patterns = patterns_88khz; - tascam->feedback_base_value = 86; - tascam->feedback_max_value = 90; - break; + tascam->feedback_base_value = 86; tascam->feedback_max_value = 90; break; case 96000: tascam->feedback_patterns = patterns_96khz; - tascam->feedback_base_value = 94; - tascam->feedback_max_value = 98; - break; - default: - dev_err(tascam->card->dev, "Unsupported sample rate for feedback patterns: %u\n", rate); - return -EINVAL; + tascam->feedback_base_value = 94; tascam->feedback_max_value = 98; break; } - // If the sample rate has changed, reconfigure the device. if (tascam->current_rate != rate) { err = us144mkii_configure_device_for_rate(tascam, rate); if (err < 0) { - tascam->current_rate = 0; // Invalidate rate on failure + tascam->current_rate = 0; return err; } tascam->current_rate = rate; @@ -479,41 +425,27 @@ static int tascam_pcm_prepare(struct snd_pcm_substream *substream) struct tascam_card *tascam = snd_pcm_substream_chip(substream); struct snd_pcm_runtime *runtime = substream->runtime; int i, u; - size_t nominal_frames_per_packet; - size_t nominal_bytes_per_packet; - size_t total_bytes_in_urb; + size_t nominal_frames_per_packet, nominal_bytes_per_packet, total_bytes_in_urb; - /* Reset all playback and sync state variables. */ tascam->driver_playback_pos = 0; tascam->playback_frames_consumed = 0; tascam->last_period_pos = 0; tascam->feedback_pattern_in_idx = 0; tascam->feedback_pattern_out_idx = 0; tascam->feedback_synced = false; - // Discard the first few feedback URBs to allow the hardware clock to stabilize. tascam->feedback_urb_skip_count = NUM_FEEDBACK_URBS * 2; - dev_info(tascam->card->dev, "Prepare: Sync state reset, starting in unsynced mode.\n"); + dev_dbg(tascam->card->dev, "Prepare: Sync state reset, starting in unsynced mode.\n"); - // Initialize the feedback accumulator with the nominal number of frames. nominal_frames_per_packet = runtime->rate / 8000; for (i = 0; i < FEEDBACK_ACCUMULATOR_SIZE; i++) tascam->feedback_accumulator_pattern[i] = nominal_frames_per_packet; - // Initialize playback URBs with nominal packet sizes. nominal_bytes_per_packet = nominal_frames_per_packet * DEVICE_BYTES_PER_FRAME; total_bytes_in_urb = nominal_bytes_per_packet * tascam->playback_urb_iso_packets; - if (total_bytes_in_urb > tascam->playback_urb_alloc_size) { - dev_err(tascam->card->dev, "Prepare: Nominal URB size %zu > allocated %zu\n", - total_bytes_in_urb, tascam->playback_urb_alloc_size); - return -EINVAL; - } - for (u = 0; u < NUM_PLAYBACK_URBS; u++) { struct urb *urb = tascam->playback_urbs[u]; - - urb->number_of_packets = tascam->playback_urb_iso_packets; memset(urb->transfer_buffer, 0, tascam->playback_urb_alloc_size); urb->transfer_buffer_length = total_bytes_in_urb; for (i = 0; i < tascam->playback_urb_iso_packets; i++) { @@ -528,58 +460,46 @@ static int tascam_pcm_prepare(struct snd_pcm_substream *substream) static int tascam_pcm_trigger(struct snd_pcm_substream *substream, int cmd) { struct tascam_card *tascam = snd_pcm_substream_chip(substream); - int err = 0; - int i; + int err = 0, i; bool start = false; switch (cmd) { - case SNDRV_PCM_TRIGGER_START: - case SNDRV_PCM_TRIGGER_RESUME: + case SNDRV_PCM_TRIGGER_START: case SNDRV_PCM_TRIGGER_RESUME: if (atomic_xchg(&tascam->playback_active, 1) == 0) start = true; break; - case SNDRV_PCM_TRIGGER_STOP: - case SNDRV_PCM_TRIGGER_SUSPEND: + case SNDRV_PCM_TRIGGER_STOP: case SNDRV_PCM_TRIGGER_SUSPEND: case SNDRV_PCM_TRIGGER_PAUSE_PUSH: atomic_set(&tascam->playback_active, 0); break; - default: - return -EINVAL; + default: return -EINVAL; } if (start) { - // Submit all feedback and playback URBs to start the stream. for (i = 0; i < NUM_FEEDBACK_URBS; i++) { err = usb_submit_urb(tascam->feedback_urbs[i], GFP_ATOMIC); - if (err < 0) { - dev_err(tascam->card->dev, "Failed to submit feedback URB %d: %d\n", i, err); - atomic_set(&tascam->playback_active, 0); - return err; - } + if (err < 0) goto rollback; } for (i = 0; i < NUM_PLAYBACK_URBS; i++) { err = usb_submit_urb(tascam->playback_urbs[i], GFP_ATOMIC); - if (err < 0) { - int j; - - dev_err(tascam->card->dev, "Failed to submit playback URB %d: %d\n", i, err); - atomic_set(&tascam->playback_active, 0); - // Unlink any URBs that were successfully submitted. - for (j = 0; j < NUM_FEEDBACK_URBS; j++) - usb_unlink_urb(tascam->feedback_urbs[j]); - for (j = 0; j < i; j++) - usb_unlink_urb(tascam->playback_urbs[j]); - return err; - } + if (err < 0) goto rollback; } } else { - // Unlink all URBs to stop the stream. for (i = 0; i < NUM_PLAYBACK_URBS; i++) usb_unlink_urb(tascam->playback_urbs[i]); for (i = 0; i < NUM_FEEDBACK_URBS; i++) usb_unlink_urb(tascam->feedback_urbs[i]); } return 0; + +rollback: + dev_err(tascam->card->dev, "Failed to submit URBs to start stream: %d\n", err); + atomic_set(&tascam->playback_active, 0); + for (i = 0; i < NUM_PLAYBACK_URBS; i++) + usb_unlink_urb(tascam->playback_urbs[i]); + for (i = 0; i < NUM_FEEDBACK_URBS; i++) + usb_unlink_urb(tascam->feedback_urbs[i]); + return err; } static snd_pcm_uframes_t tascam_pcm_pointer(struct snd_pcm_substream *substream) @@ -587,298 +507,156 @@ static snd_pcm_uframes_t tascam_pcm_pointer(struct snd_pcm_substream *substream) struct tascam_card *tascam = snd_pcm_substream_chip(substream); struct snd_pcm_runtime *runtime = substream->runtime; u64 pos; + unsigned long flags; if (!atomic_read(&tascam->playback_active)) return 0; + spin_lock_irqsave(&tascam->lock, flags); pos = tascam->playback_frames_consumed; + spin_unlock_irqrestore(&tascam->lock, flags); - // Return the hardware position within the circular buffer. return runtime ? pos % runtime->buffer_size : 0; } -// This is the playback half of the "Packet Fixing" engine. +static struct snd_pcm_ops tascam_playback_ops = { + .open = tascam_pcm_open, .close = tascam_pcm_close, + .ioctl = snd_pcm_lib_ioctl, .hw_params = tascam_pcm_hw_params, + .hw_free = tascam_pcm_hw_free, .prepare = tascam_pcm_prepare, + .trigger = tascam_pcm_trigger, .pointer = tascam_pcm_pointer, +}; + +static int tascam_capture_open_stub(struct snd_pcm_substream *s) { return -ENODEV; } +static int tascam_capture_close_stub(struct snd_pcm_substream *s) { return 0; } +static struct snd_pcm_ops tascam_capture_ops = { + .open = tascam_capture_open_stub, .close = tascam_capture_close_stub, +}; + static void playback_urb_complete(struct urb *urb) { struct tascam_card *tascam = urb->context; struct snd_pcm_substream *substream; struct snd_pcm_runtime *runtime; unsigned long flags; - int ret, i, f; - char *urb_buf_ptr; + char *urb_buf_ptr = urb->transfer_buffer; size_t urb_total_bytes = 0; + int ret, i, f; - if (urb->status == -ENOENT || urb->status == -ECONNRESET || urb->status == -ESHUTDOWN) - return; - - if (!tascam || !atomic_read(&tascam->playback_active)) - return; - + if (urb->status) return; + if (!tascam || !atomic_read(&tascam->playback_active)) return; substream = tascam->playback_substream; - if (!substream || !substream->runtime) - return; + if (!substream || !substream->runtime) return; runtime = substream->runtime; - urb_buf_ptr = urb->transfer_buffer; spin_lock_irqsave(&tascam->lock, flags); - - // Prepare the next playback URB. for (i = 0; i < tascam->playback_urb_iso_packets; i++) { unsigned int frames_for_packet; size_t bytes_for_packet; - // If synced, use the dynamic frame count from the accumulator. - // If not, use the nominal frame count. if (tascam->feedback_synced) { frames_for_packet = tascam->feedback_accumulator_pattern[tascam->feedback_pattern_out_idx]; tascam->feedback_pattern_out_idx = (tascam->feedback_pattern_out_idx + 1) % FEEDBACK_ACCUMULATOR_SIZE; } else { frames_for_packet = runtime->rate / 8000; } - bytes_for_packet = frames_for_packet * DEVICE_BYTES_PER_FRAME; - if ((urb_total_bytes + bytes_for_packet) > tascam->playback_urb_alloc_size) { - dev_warn_ratelimited(tascam->card->dev, "Playback URB overflow, truncating packet.\n"); - urb->iso_frame_desc[i].length = 0; - urb->iso_frame_desc[i].offset = urb_total_bytes; - continue; - } - - // Copy audio data from ALSA buffer to the URB. for (f = 0; f < frames_for_packet; f++) { - size_t alsa_pos_bytes = frames_to_bytes(runtime, tascam->driver_playback_pos); - char *alsa_frame_ptr = runtime->dma_area + alsa_pos_bytes; - - // Copy 2 channels from ALSA, then zero-pad to 4 channels for the device. + char *alsa_frame_ptr = runtime->dma_area + frames_to_bytes(runtime, tascam->driver_playback_pos); memcpy(urb_buf_ptr, alsa_frame_ptr, ALSA_BYTES_PER_FRAME); memset(urb_buf_ptr + ALSA_BYTES_PER_FRAME, 0, DEVICE_BYTES_PER_FRAME - ALSA_BYTES_PER_FRAME); - urb_buf_ptr += DEVICE_BYTES_PER_FRAME; tascam->driver_playback_pos++; if (tascam->driver_playback_pos >= runtime->buffer_size) tascam->driver_playback_pos = 0; } - urb->iso_frame_desc[i].offset = urb_total_bytes; urb->iso_frame_desc[i].length = bytes_for_packet; urb_total_bytes += bytes_for_packet; } - spin_unlock_irqrestore(&tascam->lock, flags); urb->transfer_buffer_length = urb_total_bytes; - - if (atomic_read(&tascam->playback_active)) { - urb->dev = tascam->dev; - ret = usb_submit_urb(urb, GFP_ATOMIC); - if (ret < 0) - dev_err_ratelimited(tascam->card->dev, "Failed to resubmit playback URB: %d\n", ret); - } + urb->dev = tascam->dev; + ret = usb_submit_urb(urb, GFP_ATOMIC); + if (ret < 0) + dev_err_ratelimited(tascam->card->dev, "Failed to resubmit playback URB: %d\n", ret); } -// This is the feedback half of the "Packet Fixing" engine. static void feedback_urb_complete(struct urb *urb) { struct tascam_card *tascam = urb->context; struct snd_pcm_substream *substream; struct snd_pcm_runtime *runtime; unsigned long flags; - int ret, i, p; - u64 current_period; - u64 total_frames_in_urb = 0; - bool was_synced; - bool sync_lost_this_urb = false; - - if (urb->status == -ENOENT || urb->status == -ECONNRESET || urb->status == -ESHUTDOWN) - return; - - if (!tascam || !atomic_read(&tascam->playback_active)) - return; + u64 current_period, total_frames_in_urb = 0; + bool was_synced, sync_lost_this_urb = false; + int ret, p; + if (urb->status) return; + if (!tascam || !atomic_read(&tascam->playback_active)) return; substream = tascam->playback_substream; - if (!substream || !substream->runtime) - return; + if (!substream || !substream->runtime) return; runtime = substream->runtime; + spin_lock_irqsave(&tascam->lock, flags); if (urb->status != 0) { dev_warn_ratelimited(tascam->card->dev, "Feedback URB failed with status %d\n", urb->status); - spin_lock_irqsave(&tascam->lock, flags); - if (tascam->feedback_synced) - dev_info(tascam->card->dev, "Sync Lost (URB error)!\n"); - tascam->feedback_synced = false; - spin_unlock_irqrestore(&tascam->lock, flags); - goto resubmit; + sync_lost_this_urb = true; + goto update_sync_state; } - - spin_lock_irqsave(&tascam->lock, flags); - - was_synced = tascam->feedback_synced; - - // Skip initial URBs to let the clock stabilize. if (tascam->feedback_urb_skip_count > 0) { tascam->feedback_urb_skip_count--; goto unlock_and_resubmit; } - - // Process each feedback packet in the URB. for (p = 0; p < urb->number_of_packets; p++) { u8 feedback_value; const unsigned int *pattern; - int pattern_index; - if (urb->iso_frame_desc[p].status != 0 || urb->iso_frame_desc[p].actual_length < 1) { sync_lost_this_urb = true; continue; } - - // The feedback value is the first byte of the 3-byte packet. feedback_value = *((u8 *)urb->transfer_buffer + urb->iso_frame_desc[p].offset); - - // Validate the feedback value and look up the corresponding pattern. if (feedback_value >= tascam->feedback_base_value && feedback_value <= tascam->feedback_max_value) { - pattern_index = feedback_value - tascam->feedback_base_value; - pattern = tascam->feedback_patterns[pattern_index]; - } else { - sync_lost_this_urb = true; - pattern = NULL; - } - - // If a valid pattern was found, write it to the accumulator. - if (pattern) { + pattern = tascam->feedback_patterns[feedback_value - tascam->feedback_base_value]; + int i; for (i = 0; i < 8; i++) { unsigned int in_idx = (tascam->feedback_pattern_in_idx + i) % FEEDBACK_ACCUMULATOR_SIZE; - tascam->feedback_accumulator_pattern[in_idx] = pattern[i]; total_frames_in_urb += pattern[i]; } tascam->feedback_pattern_in_idx = (tascam->feedback_pattern_in_idx + 8) % FEEDBACK_ACCUMULATOR_SIZE; } else { - // If pattern is invalid, assume nominal rate for this interval. - u64 nominal_frames_per_ms = runtime->rate / 1000; - - total_frames_in_urb += nominal_frames_per_ms; + sync_lost_this_urb = true; + total_frames_in_urb += runtime->rate / 1000; } } - - // Update and log the sync state transition. +update_sync_state: + was_synced = tascam->feedback_synced; if (sync_lost_this_urb) { - if (was_synced) - dev_info(tascam->card->dev, "Sync Lost (bad packet)!\n"); + if (was_synced) dev_dbg(tascam->card->dev, "Sync Lost!\n"); tascam->feedback_synced = false; } else { - if (!was_synced) - dev_info(tascam->card->dev, "Sync Acquired!\n"); + if (!was_synced) dev_dbg(tascam->card->dev, "Sync Acquired!\n"); tascam->feedback_synced = true; } - - // Update the total number of frames consumed by the hardware. if (total_frames_in_urb > 0) tascam->playback_frames_consumed += total_frames_in_urb; - - // Check if a period has elapsed and notify ALSA. current_period = div_u64(tascam->playback_frames_consumed, runtime->period_size); if (current_period > tascam->last_period_pos) { tascam->last_period_pos = current_period; spin_unlock_irqrestore(&tascam->lock, flags); - snd_pcm_period_elapsed(substream); - goto resubmit; } - unlock_and_resubmit: spin_unlock_irqrestore(&tascam->lock, flags); - resubmit: - if (atomic_read(&tascam->playback_active)) { - urb->dev = tascam->dev; - ret = usb_submit_urb(urb, GFP_ATOMIC); - if (ret < 0) - dev_err_ratelimited(tascam->card->dev, "Failed to resubmit feedback URB: %d\n", ret); - } -} - -// This function sends the precise sequence of control messages required to -// initialize the device and set a new sample rate. -static int us144mkii_configure_device_for_rate(struct tascam_card *tascam, int rate) -{ - struct usb_device *dev = tascam->dev; - u8 *rate_payload_buf; - u16 rate_vendor_wValue; - int err = 0; - - // Payloads for UAC_SET_CUR request, specific to each sample rate. - static const u8 payload_44100[] = {0x44, 0xac, 0x00}; - static const u8 payload_48000[] = {0x80, 0xbb, 0x00}; - static const u8 payload_88200[] = {0x88, 0x58, 0x01}; - static const u8 payload_96000[] = {0x00, 0x77, 0x01}; - const u8 *current_payload_src; - - rate_payload_buf = kmalloc(3, GFP_KERNEL); - if (!rate_payload_buf) - return -ENOMEM; - - switch (rate) { - case 44100: current_payload_src = payload_44100; rate_vendor_wValue = 0x1000; break; - case 48000: current_payload_src = payload_48000; rate_vendor_wValue = 0x1002; break; - case 88200: current_payload_src = payload_88200; rate_vendor_wValue = 0x1008; break; - case 96000: current_payload_src = payload_96000; rate_vendor_wValue = 0x100a; break; - default: - dev_err(&dev->dev, "Unsupported sample rate %d for configuration\n", rate); - kfree(rate_payload_buf); - return -EINVAL; - } - - memcpy(rate_payload_buf, current_payload_src, 3); - - dev_info(&dev->dev, "Configuring device for %d Hz\n", rate); - - // 1. Set Initial Mode - err = usb_control_msg(dev, usb_sndctrlpipe(dev, 0), VENDOR_REQ_MODE_CONTROL, RT_H2D_VENDOR_DEV, 0x0010, 0x0000, NULL, 0, USB_CTRL_TIMEOUT_MS); - if (err < 0) - goto cleanup_buf; - - // 2. Set Sample Rate on Capture and Playback Endpoints - err = usb_control_msg(dev, usb_sndctrlpipe(dev, 0), UAC_SET_CUR, RT_H2D_CLASS_EP, UAC_SAMPLING_FREQ_CONTROL, EP_CAPTURE_DATA, rate_payload_buf, 3, USB_CTRL_TIMEOUT_MS); - if (err < 0) - goto cleanup_buf; - err = usb_control_msg(dev, usb_sndctrlpipe(dev, 0), UAC_SET_CUR, RT_H2D_CLASS_EP, UAC_SAMPLING_FREQ_CONTROL, EP_AUDIO_OUT, rate_payload_buf, 3, USB_CTRL_TIMEOUT_MS); - if (err < 0) - goto cleanup_buf; - - // 3. Vendor-specific register writes - err = usb_control_msg(dev, usb_sndctrlpipe(dev, 0), VENDOR_REQ_REGISTER_WRITE, RT_H2D_VENDOR_DEV, 0x0d04, 0x0101, NULL, 0, USB_CTRL_TIMEOUT_MS); - if (err < 0) - goto cleanup_buf; - err = usb_control_msg(dev, usb_sndctrlpipe(dev, 0), VENDOR_REQ_REGISTER_WRITE, RT_H2D_VENDOR_DEV, 0x0e00, 0x0101, NULL, 0, USB_CTRL_TIMEOUT_MS); - if (err < 0) - goto cleanup_buf; - err = usb_control_msg(dev, usb_sndctrlpipe(dev, 0), VENDOR_REQ_REGISTER_WRITE, RT_H2D_VENDOR_DEV, 0x0f00, 0x0101, NULL, 0, USB_CTRL_TIMEOUT_MS); - if (err < 0) - goto cleanup_buf; - - // 4. Rate-dependent register write - err = usb_control_msg(dev, usb_sndctrlpipe(dev, 0), VENDOR_REQ_REGISTER_WRITE, RT_H2D_VENDOR_DEV, rate_vendor_wValue, 0x0101, NULL, 0, USB_CTRL_TIMEOUT_MS); - if (err < 0) - goto cleanup_buf; - - // 5. Final register write - err = usb_control_msg(dev, usb_sndctrlpipe(dev, 0), VENDOR_REQ_REGISTER_WRITE, RT_H2D_VENDOR_DEV, 0x110b, 0x0101, NULL, 0, USB_CTRL_TIMEOUT_MS); - if (err < 0) - goto cleanup_buf; - - // 6. Enable Streaming - err = usb_control_msg(dev, usb_sndctrlpipe(dev, 0), VENDOR_REQ_MODE_CONTROL, RT_H2D_VENDOR_DEV, 0x0030, 0x0000, NULL, 0, USB_CTRL_TIMEOUT_MS); - if (err < 0) - goto cleanup_buf; - -cleanup_buf: - if (err < 0) - dev_err(&dev->dev, "Device configuration failed at rate %d with error %d\n", rate, err); - kfree(rate_payload_buf); - return err; + urb->dev = tascam->dev; + ret = usb_submit_urb(urb, GFP_ATOMIC); + if (ret < 0) + dev_err_ratelimited(tascam->card->dev, "Failed to resubmit feedback URB: %d\n", ret); } static int tascam_create_pcm(struct tascam_card *tascam) @@ -886,20 +664,13 @@ static int tascam_create_pcm(struct tascam_card *tascam) struct snd_pcm *pcm; int err; - // Create one PCM device with 1 playback and 1 (stubbed) capture stream. err = snd_pcm_new(tascam->card, "US144MKII PCM", 0, 1, 1, &pcm); - if (err < 0) { - dev_err(tascam->card->dev, "Failed to create snd_pcm: %d\n", err); - return err; - } + if (err < 0) return err; tascam->pcm = pcm; - - snd_pcm_set_ops(pcm, SNDRV_PCM_STREAM_PLAYBACK, &tascam_playback_ops); - snd_pcm_set_ops(pcm, SNDRV_PCM_STREAM_CAPTURE, &tascam_capture_ops); - pcm->private_data = tascam; strscpy(pcm->name, "US-144MKII Audio", sizeof(pcm->name)); - + snd_pcm_set_ops(pcm, SNDRV_PCM_STREAM_PLAYBACK, &tascam_playback_ops); + snd_pcm_set_ops(pcm, SNDRV_PCM_STREAM_CAPTURE, &tascam_capture_ops); snd_pcm_lib_preallocate_pages_for_all(pcm, SNDRV_DMA_TYPE_CONTINUOUS, tascam->dev->dev.parent, 64 * 1024, @@ -910,7 +681,6 @@ static int tascam_create_pcm(struct tascam_card *tascam) static void tascam_card_private_free(struct snd_card *card) { struct tascam_card *tascam = card->private_data; - if (tascam && tascam->dev) { usb_put_dev(tascam->dev); tascam->dev = NULL; @@ -922,20 +692,24 @@ static int tascam_probe(struct usb_interface *intf, const struct usb_device_id * struct usb_device *dev = interface_to_usbdev(intf); struct tascam_card *tascam; struct snd_card *card; - int err, dev_idx; + int err; + static int dev_idx; u8 *handshake_buf; - // This driver binds to interface 0. - dev_idx = intf->cur_altsetting->desc.bInterfaceNumber; - if (dev_idx != 0) + if (intf->cur_altsetting->desc.bInterfaceNumber != 0) return -ENODEV; + if (dev_idx >= SNDRV_CARDS) + return -ENODEV; + if (!enable[dev_idx]) { + dev_idx++; + return -ENOENT; + } + err = snd_card_new(&intf->dev, index[dev_idx], id[dev_idx], THIS_MODULE, sizeof(struct tascam_card), &card); - if (err < 0) { - dev_err(&intf->dev, "Failed to create snd_card: %d\n", err); + if (err < 0) return err; - } tascam = card->private_data; tascam->card = card; @@ -944,19 +718,14 @@ static int tascam_probe(struct usb_interface *intf, const struct usb_device_id * card->private_free = tascam_card_private_free; usb_set_intfdata(intf, tascam); spin_lock_init(&tascam->lock); - atomic_set(&tascam->playback_active, 0); - tascam->current_rate = 0; - tascam->playback_urb_iso_packets = 0; strscpy(card->driver, DRIVER_NAME, sizeof(card->driver)); strscpy(card->shortname, "TASCAM US-144MKII", sizeof(card->shortname)); - snprintf(card->longname, sizeof(card->longname), "%s (VID:%04X PID:%04X) at %s", - "TASCAM US-144MKII", + snprintf(card->longname, sizeof(card->longname), "TASCAM US-144MKII (VID:%04x, PID:%04x) at %s", le16_to_cpu(dev->descriptor.idVendor), le16_to_cpu(dev->descriptor.idProduct), dev->bus->bus_name); - // The device has two interfaces; we need to claim both. tascam->iface1 = usb_ifnum_to_if(dev, 1); if (!tascam->iface1) { dev_err(&intf->dev, "Interface 1 not found.\n"); @@ -970,7 +739,6 @@ static int tascam_probe(struct usb_interface *intf, const struct usb_device_id * goto free_card_obj; } - // Set both interfaces to alternate setting 1 to enable all endpoints. err = usb_set_interface(dev, 0, 1); if (err < 0) { dev_err(&intf->dev, "Set Alt Setting on Intf 0 failed: %d\n", err); @@ -982,36 +750,30 @@ static int tascam_probe(struct usb_interface *intf, const struct usb_device_id * goto release_iface1_and_free_card; } - // Perform the initial handshake read. handshake_buf = kmalloc(1, GFP_KERNEL); if (!handshake_buf) { err = -ENOMEM; goto release_iface1_and_free_card; } err = usb_control_msg(dev, usb_rcvctrlpipe(dev, 0), VENDOR_REQ_MODE_CONTROL, - RT_D2H_VENDOR_DEV, 0x0000, 0x0000, + RT_D2H_VENDOR_DEV, MODE_VAL_HANDSHAKE_READ, 0x0000, handshake_buf, 1, USB_CTRL_TIMEOUT_MS); - if (err < 0) { - dev_warn(&intf->dev, "Handshake read failed: %d (continuing)\n", err); - } else if (err == 1 && handshake_buf[0] == 0x12) { - dev_info(&intf->dev, "Handshake successful (response 0x12).\n"); - } else { - dev_warn(&intf->dev, "Handshake: expected 0x12, got 0x%02x (len %d) (continuing)\n", handshake_buf[0], err); - } + if (err == 1 && handshake_buf[0] == 0x12) + dev_info(&intf->dev, "Handshake successful.\n"); + else + dev_warn(&intf->dev, "Handshake failed (err %d, val 0x%02x), continuing anyway.\n", err, err > 0 ? handshake_buf[0] : 0); kfree(handshake_buf); - handshake_buf = NULL; err = tascam_create_pcm(tascam); if (err < 0) goto release_iface1_and_free_card; err = snd_card_register(card); - if (err < 0) { - dev_err(&intf->dev, "Failed to register snd_card: %d\n", err); + if (err < 0) goto release_iface1_and_free_card; - } - dev_info(&intf->dev, "%s: TASCAM US-144MKII ALSA driver initialized.\n", card->longname); + dev_info(&intf->dev, "TASCAM US-144MKII driver initialized.\n"); + dev_idx++; return 0; release_iface1_and_free_card: @@ -1032,27 +794,23 @@ static void tascam_disconnect(struct usb_interface *intf) if (!tascam) return; - // Only disconnect if this is the primary interface (iface0). if (intf != tascam->iface0) return; dev_info(&intf->dev, "TASCAM US-144MKII disconnecting...\n"); - snd_card_disconnect(tascam->card); - // Release the secondary interface. if (tascam->iface1) { usb_set_intfdata(tascam->iface1, NULL); usb_driver_release_interface(&tascam_alsa_driver, tascam->iface1); tascam->iface1 = NULL; } - // The card and its private data will be freed when all PCMs are closed. snd_card_free_when_closed(tascam->card); } static const struct usb_device_id tascam_id_table[] = { - { USB_DEVICE(TASCAM_VID, TASCAM_PID) }, + { USB_DEVICE(USB_VID_TASCAM, USB_PID_TASCAM_US144MKII) }, { } }; MODULE_DEVICE_TABLE(usb, tascam_id_table); diff --git a/us144mkii.ko b/us144mkii.ko deleted file mode 100644 index ca30351109585eb2338b903158cc1fac246050ba..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 520880 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%0D>F=}@ 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

6YK}*tX>Ic(;cDq>o)M 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