Skip to content

Commit

Permalink
ALSA: firewire-motu: parse messages for line input parameters in regi…
Browse files Browse the repository at this point in the history
…ster DSP model

This commit parses message and cache current parameters of line input
function, available for MOTU 828 mk2 and Traveler.

Signed-off-by: Takashi Sakamoto <o-takashi@sakamocchi.jp>
Link: https://lore.kernel.org/r/20211015080826.34847-8-o-takashi@sakamocchi.jp
Signed-off-by: Takashi Iwai <tiwai@suse.de>
  • Loading branch information
Takashi Sakamoto authored and Takashi Iwai committed Oct 15, 2021
1 parent 6ca81d2 commit 41cc233
Show file tree
Hide file tree
Showing 2 changed files with 15 additions and 0 deletions.
9 changes: 9 additions & 0 deletions include/uapi/sound/firewire.h
Original file line number Diff line number Diff line change
Expand Up @@ -164,6 +164,10 @@ struct snd_firewire_motu_register_dsp_meter {
* @output.hp_paired_volume: The volume of paired hp output.
* @output.hp_paired_assignment: The source assigned to paired hp output.
* @output.reserved: Padding for 32 bit alignment for future extension.
* @line_input.boost_flag: The flags of boost for line inputs, only for 828mk2 and Traveler.
* @line_input.nominal_level_flag: The flags of nominal level for line inputs, only for 828mk2 and
* Traveler.
* @line_input.reserved: Padding for 32 bit alignment for future extension.
*
* The structure expresses the set of parameters for DSP controlled by register access.
*/
Expand All @@ -187,6 +191,11 @@ struct snd_firewire_motu_register_dsp_parameter {
__u8 hp_paired_assignment;
__u8 reserved[5];
} output;
struct {
__u8 boost_flag;
__u8 nominal_level_flag;
__u8 reserved[6];
} line_input;
};

// In below MOTU models, software is allowed to control their DSP by command in frame of
Expand Down
6 changes: 6 additions & 0 deletions sound/firewire/motu/motu-register-dsp-message-parser.c
Original file line number Diff line number Diff line change
Expand Up @@ -219,6 +219,12 @@ void snd_motu_register_dsp_message_parser_parse(struct snd_motu *motu, const str
case HP_OUTPUT_PAIRED_ASSIGNMENT:
parser->param.output.hp_paired_assignment = val;
break;
case LINE_INPUT_BOOST:
parser->param.line_input.boost_flag = val;
break;
case LINE_INPUT_NOMINAL_LEVEL:
parser->param.line_input.nominal_level_flag = val;
break;
case METER:
{
u8 pos;
Expand Down

0 comments on commit 41cc233

Please sign in to comment.