# # # A generic ASRC component. All attributes defined herein are namespaced # by alsatplg to "Object.Widget.asrc.N.attribute_name" # # Usage: this component can be used by instantiating it in the parent object. i.e. # # Object.Widget.asrc."N" { # period_sink_count 2 # period_source_count 2 # format "s24le" # rate_out 48000 # asynchronous_mode 1 # operation_mode 0 # } # # Where N is the unique instance number for the src widget within the same alsaconf node. Class.Widget."asrc" { # # Pipeline ID for the src widget object # DefineAttribute."index" {} # # ASRC object instance # DefineAttribute."instance" {} #include common component definition # # ASRC widget UUID # DefineAttribute."uuid" { type "string" # Token set reference name and type token_ref "sof_tkn_comp.uuid" } # # Bespoke attributes for ASRC # # Source sample rate DefineAttribute."rate_in" { # Token set reference name and type token_ref "sof_tkn_asrc.word" } # Target sample rate DefineAttribute."rate_out" { # Token set reference name and type token_ref "sof_tkn_asrc.word" } DefineAttribute."asynchronous_mode" { # Token set reference name and type token_ref "sof_tkn_asrc.word" } DefineAttribute."operation_mode" { # Token set reference name and type token_ref "sof_tkn_asrc.word" } attributes { # # The ASRC widget name would be constructed using the index and instance attributes. # For ex: "asrc.1.1" or "asrc.10.2" etc. # !constructor [ "index" "instance" ] !mandatory [ "format" "rate_out" "asynchronous_mode" "operation_mode" ] # # immutable attributes cannot be modified in the object instance # !immutable [ "uuid" "type" ] # # deprecated attributes should not be added in the object instance # !deprecated [ "preload_count" ] unique "instance" } # # Default attributes for asrc # type "asrc" uuid "f6:72:ec:c8:26:85:af:4f:9d:39:a2:3d:0b:54:1d:e2" no_pm "true" }