History

ASoC: topology: Fix bclk and fsync inversion in set_link_hw_format()

The values of bclk and fsync are inverted WRT the codec. But the existing solution already works for Broadwell, see the alsa-lib config: `alsa-lib/src/conf/topology/broadwell/broadwell.conf` This commit provides the backwards-compatible solution to fix this misuse.

Kirill Marinushkin committed 8 years ago

Commit a941e2f1 parent 8a2278b2 files · +21 −7Browse files

Showing the changes to include/uapi (1 of 2 files). Show all

Unified · Split

include/uapi/sound/asoc.h+14−2
@@ -160,6 +160,18 @@ · 159 unmodified lines
160160 #define SND_SOC_TPLG_LNK_FLGBIT_SYMMETRIC_SAMPLEBITS (1 << 2)
161161 #define SND_SOC_TPLG_LNK_FLGBIT_VOICE_WAKEUP (1 << 3)
162162
163+/* DAI topology BCLK parameter
164+ * For the backwards capability, by default codec is bclk master
165+ */
166+#define SND_SOC_TPLG_BCLK_CM 0 /* codec is bclk master */
167+#define SND_SOC_TPLG_BCLK_CS 1 /* codec is bclk slave */
168+
169+/* DAI topology FSYNC parameter
170+ * For the backwards capability, by default codec is fsync master
171+ */
172+#define SND_SOC_TPLG_FSYNC_CM 0 /* codec is fsync master */
173+#define SND_SOC_TPLG_FSYNC_CS 1 /* codec is fsync slave */
174+
163175 /*
164176 * Block Header.
165177 * This header precedes all object and object arrays below.
@@ -315,8 +327,8 @@ struct snd_soc_tplg_hw_config { · 149 unmodified lines
315327 __u8 clock_gated; /* 1 if clock can be gated to save power */
316328 __u8 invert_bclk; /* 1 for inverted BCLK, 0 for normal */
317329 __u8 invert_fsync; /* 1 for inverted frame clock, 0 for normal */
318− __u8 bclk_master; /* 1 for master of BCLK, 0 for slave */
319− __u8 fsync_master; /* 1 for master of FSYNC, 0 for slave */
330+ __u8 bclk_master; /* SND_SOC_TPLG_BCLK_ value */
331+ __u8 fsync_master; /* SND_SOC_TPLG_FSYNC_ value */
320332 __u8 mclk_direction; /* 0 for input, 1 for output */
321333 __le16 reserved; /* for 32bit alignment */
322334 __le32 mclk_rate; /* MCLK or SYSCLK freqency in Hz */

Keyboard shortcuts

General

Show keyboard shortcuts
?
Focus the current search
/

Issues and pull requests

Open filters
f

Issues, pull requests and Inbox

Select next item
j↓
Select previous item
k↑
Open selected item
Enter
Dismiss filters or clear selection
Esc

Repository code

Go to file
t