Uh oh!
There was an error while loading. Please reload this page.
- Notifications
You must be signed in to change notification settings - Fork 367
topology2: Move the hw_config class definition#7370
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Uh oh!
There was an error while loading. Please reload this page.
Changes from all commits
File filter
Filter by extension
Conversations
Uh oh!
There was an error while loading. Please reload this page.
Jump to
Uh oh!
There was an error while loading. Please reload this page.
Diff view
Diff view
There are no files selected for viewing
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,35 @@ | ||
| # Simple hardware config class definition for HDA/SDW/DMIC type DAIs. All attributes defined herein | ||
| # are namespaced by alsatplg to "Object.Base.hw_config.1.attribute_name" | ||
| # | ||
| # Object.Base.hw_config.1 { | ||
| # id 0 | ||
| # name "HDA0" | ||
| # } | ||
| # | ||
| # where 1 is the unique instance ID for the hw_config object within the same alsaconf | ||
| # node. | ||
| Class.Base."hw_config" { | ||
| # | ||
| # Argument used to construct hw config (hw config ID) | ||
| # | ||
| DefineAttribute."id" {} | ||
| DefineAttribute."instance" {} | ||
| DefineAttribute."name" { | ||
| type "string" | ||
| } | ||
| attributes { | ||
| !constructor [ | ||
| "id" | ||
| ] | ||
| !mandatory [ | ||
| "name" | ||
| ] | ||
| # | ||
| # hw_config objects instantiated within the same alsaconf node must have unique | ||
| # 'instance' attribute | ||
| unique "instance" | ||
| } | ||
| } |
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -1,15 +1,16 @@ | ||
| # Hardware config class definition DAIs. All attributes defined herein | ||
| # Hardware config class definition. All attributes defined herein | ||
| # are namespaced by alsatplg to "Object.Base.hw_config.NAME.attribute_name" | ||
| # | ||
| # Object.Base.hw_config."NAME" { | ||
| # Object.Base.hw_config.1 { | ||
| # id 0 | ||
| # mclk_freq 24000000 | ||
| # bclk_freq 4800000 | ||
| # tdm_slot_width 25 | ||
| # bclk_freq 3072000 | ||
| # tdm_slot_width 32 | ||
| # } | ||
| # | ||
| # where NAME is the unique instance name for the hw_config object | ||
| # within the same alsaconf node. | ||
| # where 1 is the unique instance ID for the hw_config object within the same alsaconf | ||
Member There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Why use a number when a name is more descriptive ? CollaboratorAuthor There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. @lgirdwood all objects need to have instance so that we can use arrays. | ||
| # node. | ||
| <platform/intel/ssp_aux_config.conf> | ||
| Class.Base."hw_config" { | ||
| # | ||
| @@ -44,7 +45,21 @@ Class.Base."hw_config" { | ||
| type "string" | ||
| } | ||
| DefineAttribute."bclk_freq" {} | ||
| DefineAttribute."bclk_freq" { | ||
| constraints { | ||
| # Allowed values of bclk derived from mclk_freq of 24.576MHz | ||
| !valid_values [ | ||
| "12288000" | ||
| "6144000" | ||
| "3072000" | ||
| "1536000" | ||
| "768000" | ||
ranj063 marked this conversation as resolved.
Outdated
Uh oh!There was an error while loading. Please reload this page. | ||
| "384000" | ||
| "256000" | ||
| "128000" | ||
| ] | ||
| } | ||
| } | ||
| DefineAttribute."fsync" { | ||
| type "string" | ||
| @@ -68,15 +83,20 @@ Class.Base."hw_config" { | ||
| "name" | ||
| ] | ||
| # | ||
| # hw_cfg objects instantiated within the same alsaconf node must have unique | ||
| # hw_config objects instantiated within the same alsaconf node must have unique | ||
| # 'instance' attribute | ||
| # | ||
| unique "instance" | ||
| } | ||
| Object.Base.link_config.1 { | ||
| clock_source 1 | ||
| } | ||
| #TODO: Add link flags | ||
| format "I2S" | ||
| # TODO: Make this immutable | ||
| mclk_freq 24576000 | ||
| mclk "codec_mclk_in" | ||
| bclk "codec_consumer" | ||
| fsync "codec_consumer" | ||
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Isn't the blob version setting missing? This works on cAVS2.5 now, as blob parsing ignores the aux blob and driver selects the clock source by itself. If we'd set blob version to v1.5 (0x105), parsing would fail on cAVS2.5 platforms.