Lines Matching defs:adg

25 	.name = "adg",
48 #define for_each_rsnd_clkin(pos, adg, i) \
50 (i < adg->clkin_size) && \
51 ((pos) = adg->clkin[i]); \
53 #define for_each_rsnd_clkout(pos, adg, i) \
55 (i < adg->clkout_size) && \
56 ((pos) = adg->clkout[i]); \
58 #define rsnd_priv_to_adg(priv) ((struct rsnd_adg *)(priv)->adg)
125 struct rsnd_adg *adg = rsnd_priv_to_adg(priv);
131 adg->clkin_rate[CLKA], /* 0000: CLKA */
132 adg->clkin_rate[CLKB], /* 0001: CLKB */
133 adg->clkin_rate[CLKC], /* 0010: CLKC */
134 adg->brg_rate[ADG_HZ_441], /* 0011: BRGA */
135 adg->brg_rate[ADG_HZ_48], /* 0100: BRGB */
226 struct rsnd_adg *adg = rsnd_priv_to_adg(priv);
227 struct rsnd_mod *adg_mod = rsnd_mod_get(adg);
251 struct rsnd_adg *adg = rsnd_priv_to_adg(priv);
252 struct rsnd_mod *adg_mod = rsnd_mod_get(adg);
280 struct rsnd_adg *adg = rsnd_priv_to_adg(priv);
281 struct rsnd_mod *adg_mod = rsnd_mod_get(adg);
305 struct rsnd_adg *adg = rsnd_priv_to_adg(priv);
319 for_each_rsnd_clkin(clk, adg, i)
320 if (rate == adg->clkin_rate[i])
326 if (rate == adg->brg_rate[ADG_HZ_441])
329 if (rate == adg->brg_rate[ADG_HZ_48])
345 struct rsnd_adg *adg = rsnd_priv_to_adg(priv);
347 struct rsnd_mod *adg_mod = rsnd_mod_get(adg);
360 rsnd_mod_bset(adg_mod, BRGCKR, 0x80770000, adg->ckr | ckr);
364 (ckr) ? adg->brg_rate[ADG_HZ_48] :
365 adg->brg_rate[ADG_HZ_441]);
372 struct rsnd_adg *adg = rsnd_priv_to_adg(priv);
373 struct rsnd_mod *adg_mod = rsnd_mod_get(adg);
378 rsnd_mod_bset(adg_mod, BRGCKR, 0x80770000, adg->ckr);
379 rsnd_mod_write(adg_mod, BRRA, adg->brga);
380 rsnd_mod_write(adg_mod, BRRB, adg->brgb);
383 for_each_rsnd_clkin(clk, adg, i) {
392 adg->clkin_rate[i] = clk_get_rate(clk);
417 struct rsnd_adg *adg = priv->adg;
419 if (!adg->null_clk) {
422 adg->null_clk = rsnd_adg_create_null_clk(priv, name, NULL);
425 return adg->null_clk;
430 struct rsnd_adg *adg = priv->adg;
432 if (adg->null_clk)
433 clk_unregister_fixed_rate(adg->null_clk);
438 struct rsnd_adg *adg = priv->adg;
460 adg->clkin[i] = clk;
463 adg->clkin_size = clkin_size;
468 dev_err(dev, "adg clock IN get failed\n");
477 struct rsnd_adg *adg = priv->adg;
481 for_each_rsnd_clkout(clk, adg, i)
487 struct rsnd_adg *adg = priv->adg;
565 for_each_rsnd_clkin(clk, adg, i) {
578 if (!adg->brg_rate[ADG_HZ_441] && req_Hz[ADG_HZ_441] && (0 == rate % 44100)) {
583 adg->brg_rate[ADG_HZ_441] = rate / div;
597 if (!adg->brg_rate[ADG_HZ_48] && req_Hz[ADG_HZ_48] && (0 == rate % 48000)) {
602 adg->brg_rate[ADG_HZ_48] = rate / div;
612 if (!(adg->brg_rate[ADG_HZ_48] && req_Hz[ADG_HZ_48]) &&
613 !(adg->brg_rate[ADG_HZ_441] && req_Hz[ADG_HZ_441]))
639 adg->clkout[CLKOUT] = clk;
640 adg->clkout_size = 1;
654 adg->clkout[i] = clk;
656 adg->onecell.clks = adg->clkout;
657 adg->onecell.clk_num = clkout_size;
658 adg->clkout_size = clkout_size;
660 &adg->onecell);
664 adg->ckr = ckr;
665 adg->brga = brga;
666 adg->brgb = brgb;
671 dev_err(dev, "adg clock OUT get failed\n");
698 struct rsnd_adg *adg = rsnd_priv_to_adg(priv);
703 for_each_rsnd_clkin(clk, adg, i)
708 adg->ckr, adg->brga, adg->brgb);
709 dbg_msg(dev, m, "BRGA (for 44100 base) = %d\n", adg->brg_rate[ADG_HZ_441]);
710 dbg_msg(dev, m, "BRGB (for 48000 base) = %d\n", adg->brg_rate[ADG_HZ_48]);
716 for_each_rsnd_clkout(clk, adg, i)
726 struct rsnd_adg *adg;
730 adg = devm_kzalloc(dev, sizeof(*adg), GFP_KERNEL);
731 if (!adg)
734 ret = rsnd_mod_init(priv, &adg->mod, &adg_ops,
739 priv->adg = adg;