On 04/03/18 02:57, Pierre-Louis Bossart wrote:A v4 is fine with me.
That's a good idea to have it solved within this patch series.
On 04/02/2018 04:17 PM, Kirill Marinushkin wrote:
Hello Pierre-Louis,I am fine with the changes, but maybe while we are at it, we should clarify
I explicitly clarified with Takashi: to have this patch series merged, we need a
tag "Reviewed-by" from you.
what mclk_direction means?
ÂÂÂ __u8 mclk_direction;ÂÂÂ /* 0 for input, 1 for output */I agree that having a clear naming will avoid confusion for future usage.
This is really awful and might benefit for additional clarity using
codec-centric conventions.
I see from the code, that this variable is ignored. So we have no technical
restriction on how to interpret this.
I suggest to do similar to what we did for bclk_master:
/* DAI mclk_direction */
#define SND_SOC_TPLG_MCLK_CO ÂÂÂÂÂÂ 0 /* for codec, mclk is output */
#define SND_SOC_TPLG_MCLK_CI ÂÂÂÂÂÂÂÂ 1 /* for codec, mclk is input */
We also had a discussion internally and can't figure out why the strings areI agree with this. I will also do the same (keeping backwards-compatibility) for:
different from the fields in the structure, I feel it'd be simpler to align
config and code to avoid issues but keep existing notation for backwards
compatibility, e.g.
if (strcmp(id, "mclk_freq") == 0) || strcmp(id, "mclk_rate") == 0) {
ÂÂÂ ÂÂÂ if (snd_config_get_string(n, &val) < 0)
ÂÂÂ ÂÂÂ ÂÂÂ ÂÂÂ return -EINVAL;
ÂÂÂ ÂÂÂ ÂÂÂ hw_cfg->mclk_rate = atoi(val);
ÂÂÂ ÂÂÂ ÂÂÂ continue;
}
"format" => "fmt"
"bclk" => "bclk_master"
"bclk_freq" => "bclk_rate"
"bclk_invert" => "invert_bclk"
"fsync" => "fsync_master"
"fsync_invert" => "invert_fsync"
"fsync_freq" => "fsync_rate"
"mclk_freq" => "mclk_rate"
"mclk" => "mclk_direction"
"pm_gate_clocks" => "clock_gated"
If you agree with both proposals, I will add patches to this patch series, and
re-send as patch v4.
Or can we handle it in a better way?