adg.c (7c89746eede3acbbb67f848a741f8bca412986af) | adg.c (5ba17b42e1755c3c5cfe96370cfd47f34d01f62c) |
---|---|
1/* 2 * Helper routines for R-Car sound ADG. 3 * 4 * Copyright (C) 2013 Kuninori Morimoto <kuninori.morimoto.gx@renesas.com> 5 * 6 * This file is subject to the terms and conditions of the GNU General Public 7 * License. See the file "COPYING" in the main directory of this archive 8 * for more details. --- 505 unchanged lines hidden (view full) --- 514 515 adg = devm_kzalloc(dev, sizeof(*adg), GFP_KERNEL); 516 if (!adg) { 517 dev_err(dev, "ADG allocate failed\n"); 518 return -ENOMEM; 519 } 520 521 rsnd_mod_init(priv, &adg->mod, &adg_ops, | 1/* 2 * Helper routines for R-Car sound ADG. 3 * 4 * Copyright (C) 2013 Kuninori Morimoto <kuninori.morimoto.gx@renesas.com> 5 * 6 * This file is subject to the terms and conditions of the GNU General Public 7 * License. See the file "COPYING" in the main directory of this archive 8 * for more details. --- 505 unchanged lines hidden (view full) --- 514 515 adg = devm_kzalloc(dev, sizeof(*adg), GFP_KERNEL); 516 if (!adg) { 517 dev_err(dev, "ADG allocate failed\n"); 518 return -ENOMEM; 519 } 520 521 rsnd_mod_init(priv, &adg->mod, &adg_ops, |
522 NULL, 0, 0); | 522 NULL, NULL, 0, 0); |
523 524 rsnd_adg_get_clkin(priv, adg); 525 rsnd_adg_get_clkout(priv, adg); 526 527 priv->adg = adg; 528 529 return 0; 530} 531 532void rsnd_adg_remove(struct rsnd_priv *priv) 533{ 534 struct rsnd_adg *adg = rsnd_priv_to_adg(priv); 535 struct clk *clk; 536 int i; 537 538 for_each_rsnd_clk(clk, adg, i) { 539 clk_disable_unprepare(clk); 540 } 541} | 523 524 rsnd_adg_get_clkin(priv, adg); 525 rsnd_adg_get_clkout(priv, adg); 526 527 priv->adg = adg; 528 529 return 0; 530} 531 532void rsnd_adg_remove(struct rsnd_priv *priv) 533{ 534 struct rsnd_adg *adg = rsnd_priv_to_adg(priv); 535 struct clk *clk; 536 int i; 537 538 for_each_rsnd_clk(clk, adg, i) { 539 clk_disable_unprepare(clk); 540 } 541} |