Lines Matching full:ahub
3 // tegra210_ahub.c - Tegra210 AHUB driver
21 struct tegra_ahub *ahub = snd_soc_component_get_drvdata(cmpnt); in tegra_ahub_get_value_enum() local
29 for (i = 0; i < ahub->soc_data->reg_count; i++) { in tegra_ahub_get_value_enum()
34 reg_val &= ahub->soc_data->mask[i]; in tegra_ahub_get_value_enum()
58 struct tegra_ahub *ahub = snd_soc_component_get_drvdata(cmpnt); in tegra_ahub_put_value_enum() local
82 for (i = 0; i < ahub->soc_data->reg_count; i++) { in tegra_ahub_put_value_enum()
85 update[i].mask = ahub->soc_data->mask[i]; in tegra_ahub_put_value_enum()
1315 { .compatible = "nvidia,tegra210-ahub", .data = &soc_data_tegra210 },
1316 { .compatible = "nvidia,tegra186-ahub", .data = &soc_data_tegra186 },
1317 { .compatible = "nvidia,tegra234-ahub", .data = &soc_data_tegra234 },
1324 struct tegra_ahub *ahub = dev_get_drvdata(dev); in tegra_ahub_runtime_suspend() local
1326 regcache_cache_only(ahub->regmap, true); in tegra_ahub_runtime_suspend()
1327 regcache_mark_dirty(ahub->regmap); in tegra_ahub_runtime_suspend()
1329 clk_disable_unprepare(ahub->clk); in tegra_ahub_runtime_suspend()
1336 struct tegra_ahub *ahub = dev_get_drvdata(dev); in tegra_ahub_runtime_resume() local
1339 err = clk_prepare_enable(ahub->clk); in tegra_ahub_runtime_resume()
1341 dev_err(dev, "failed to enable AHUB clock, err: %d\n", err); in tegra_ahub_runtime_resume()
1345 regcache_cache_only(ahub->regmap, false); in tegra_ahub_runtime_resume()
1346 regcache_sync(ahub->regmap); in tegra_ahub_runtime_resume()
1353 struct tegra_ahub *ahub; in tegra_ahub_probe() local
1357 ahub = devm_kzalloc(&pdev->dev, sizeof(*ahub), GFP_KERNEL); in tegra_ahub_probe()
1358 if (!ahub) in tegra_ahub_probe()
1361 ahub->soc_data = of_device_get_match_data(&pdev->dev); in tegra_ahub_probe()
1363 platform_set_drvdata(pdev, ahub); in tegra_ahub_probe()
1365 ahub->clk = devm_clk_get(&pdev->dev, "ahub"); in tegra_ahub_probe()
1366 if (IS_ERR(ahub->clk)) { in tegra_ahub_probe()
1367 dev_err(&pdev->dev, "can't retrieve AHUB clock\n"); in tegra_ahub_probe()
1368 return PTR_ERR(ahub->clk); in tegra_ahub_probe()
1375 ahub->regmap = devm_regmap_init_mmio(&pdev->dev, regs, in tegra_ahub_probe()
1376 ahub->soc_data->regmap_config); in tegra_ahub_probe()
1377 if (IS_ERR(ahub->regmap)) { in tegra_ahub_probe()
1379 return PTR_ERR(ahub->regmap); in tegra_ahub_probe()
1382 regcache_cache_only(ahub->regmap, true); in tegra_ahub_probe()
1385 ahub->soc_data->cmpnt_drv, in tegra_ahub_probe()
1386 ahub->soc_data->dai_drv, in tegra_ahub_probe()
1387 ahub->soc_data->num_dais); in tegra_ahub_probe()
1389 dev_err(&pdev->dev, "can't register AHUB component, err: %d\n", in tegra_ahub_probe()
1421 .name = "tegra210-ahub",
1430 MODULE_DESCRIPTION("Tegra210 ASoC AHUB driver");