参照元

説明

  • パス: linux-4.4.1/sound/soc/soc-dapm.c?
  • FIXME: これは何?
    • 説明

引数

返り値

  • int

参考

実装

/* test and update the power status of a mux widget */
static int soc_dapm_mux_update_power(struct snd_soc_card *card,
				 struct snd_kcontrol *kcontrol, int mux, struct soc_enum *e)
{
	struct snd_soc_dapm_path *path;
	int found = 0;
	bool connect;
	lockdep_assert_held(&card->dapm_mutex);
    • linux-4.4.1/lockdep_assert_held()?
	/* find dapm widget path assoc with kcontrol */
	dapm_kcontrol_for_each_path(path, kcontrol) {
		found = 1;
		/* we now need to match the string in the enum to the path */
		if (!(strcmp(path->name, e->texts[mux])))
			connect = true;
		else
			connect = false;

		soc_dapm_connect_path(path, connect, "mux update");
	}
  • kcontrol に path を追加している場所は下記。
  • ここで使用する kcontrol は private_data に dapm_kcontrol_data のポインタが入っていなければならない。
    • linux-4.4.1/dapm_kcontrol_data?
	if (found)
		dapm_power_widgets(card, SND_SOC_DAPM_STREAM_NOP);
    • linux-4.4.1/dapm_power_widgets()?
	return found;
}

コメント


トップ   編集 凍結 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2018-06-22 (金) 11:32:30 (147d)