gr3d 39 drivers/gpu/drm/tegra/gr3d.c static inline struct gr3d *to_gr3d(struct tegra_drm_client *client) gr3d 41 drivers/gpu/drm/tegra/gr3d.c return container_of(client, struct gr3d, client); gr3d 49 drivers/gpu/drm/tegra/gr3d.c struct gr3d *gr3d = to_gr3d(drm); gr3d 52 drivers/gpu/drm/tegra/gr3d.c gr3d->channel = host1x_channel_request(client->dev); gr3d 53 drivers/gpu/drm/tegra/gr3d.c if (!gr3d->channel) gr3d 63 drivers/gpu/drm/tegra/gr3d.c gr3d->group = host1x_client_iommu_attach(client, false); gr3d 64 drivers/gpu/drm/tegra/gr3d.c if (IS_ERR(gr3d->group)) { gr3d 65 drivers/gpu/drm/tegra/gr3d.c err = PTR_ERR(gr3d->group); gr3d 79 drivers/gpu/drm/tegra/gr3d.c host1x_client_iommu_detach(client, gr3d->group); gr3d 83 drivers/gpu/drm/tegra/gr3d.c host1x_channel_put(gr3d->channel); gr3d 91 drivers/gpu/drm/tegra/gr3d.c struct gr3d *gr3d = to_gr3d(drm); gr3d 98 drivers/gpu/drm/tegra/gr3d.c host1x_client_iommu_detach(client, gr3d->group); gr3d 100 drivers/gpu/drm/tegra/gr3d.c host1x_channel_put(gr3d->channel); gr3d 113 drivers/gpu/drm/tegra/gr3d.c struct gr3d *gr3d = to_gr3d(client); gr3d 115 drivers/gpu/drm/tegra/gr3d.c context->channel = host1x_channel_get(gr3d->channel); gr3d 129 drivers/gpu/drm/tegra/gr3d.c struct gr3d *gr3d = dev_get_drvdata(dev); gr3d 142 drivers/gpu/drm/tegra/gr3d.c if (test_bit(offset, gr3d->addr_regs)) gr3d 287 drivers/gpu/drm/tegra/gr3d.c struct gr3d *gr3d; gr3d 291 drivers/gpu/drm/tegra/gr3d.c gr3d = devm_kzalloc(&pdev->dev, sizeof(*gr3d), GFP_KERNEL); gr3d 292 drivers/gpu/drm/tegra/gr3d.c if (!gr3d) gr3d 295 drivers/gpu/drm/tegra/gr3d.c gr3d->soc = of_device_get_match_data(&pdev->dev); gr3d 301 drivers/gpu/drm/tegra/gr3d.c gr3d->clk = devm_clk_get(&pdev->dev, NULL); gr3d 302 drivers/gpu/drm/tegra/gr3d.c if (IS_ERR(gr3d->clk)) { gr3d 304 drivers/gpu/drm/tegra/gr3d.c return PTR_ERR(gr3d->clk); gr3d 307 drivers/gpu/drm/tegra/gr3d.c gr3d->rst = devm_reset_control_get(&pdev->dev, "3d"); gr3d 308 drivers/gpu/drm/tegra/gr3d.c if (IS_ERR(gr3d->rst)) { gr3d 310 drivers/gpu/drm/tegra/gr3d.c return PTR_ERR(gr3d->rst); gr3d 314 drivers/gpu/drm/tegra/gr3d.c gr3d->clk_secondary = devm_clk_get(&pdev->dev, "3d2"); gr3d 315 drivers/gpu/drm/tegra/gr3d.c if (IS_ERR(gr3d->clk_secondary)) { gr3d 317 drivers/gpu/drm/tegra/gr3d.c return PTR_ERR(gr3d->clk_secondary); gr3d 320 drivers/gpu/drm/tegra/gr3d.c gr3d->rst_secondary = devm_reset_control_get(&pdev->dev, gr3d 322 drivers/gpu/drm/tegra/gr3d.c if (IS_ERR(gr3d->rst_secondary)) { gr3d 324 drivers/gpu/drm/tegra/gr3d.c return PTR_ERR(gr3d->rst_secondary); gr3d 328 drivers/gpu/drm/tegra/gr3d.c err = tegra_powergate_sequence_power_up(TEGRA_POWERGATE_3D, gr3d->clk, gr3d 329 drivers/gpu/drm/tegra/gr3d.c gr3d->rst); gr3d 335 drivers/gpu/drm/tegra/gr3d.c if (gr3d->clk_secondary) { gr3d 337 drivers/gpu/drm/tegra/gr3d.c gr3d->clk_secondary, gr3d 338 drivers/gpu/drm/tegra/gr3d.c gr3d->rst_secondary); gr3d 346 drivers/gpu/drm/tegra/gr3d.c INIT_LIST_HEAD(&gr3d->client.base.list); gr3d 347 drivers/gpu/drm/tegra/gr3d.c gr3d->client.base.ops = &gr3d_client_ops; gr3d 348 drivers/gpu/drm/tegra/gr3d.c gr3d->client.base.dev = &pdev->dev; gr3d 349 drivers/gpu/drm/tegra/gr3d.c gr3d->client.base.class = HOST1X_CLASS_GR3D; gr3d 350 drivers/gpu/drm/tegra/gr3d.c gr3d->client.base.syncpts = syncpts; gr3d 351 drivers/gpu/drm/tegra/gr3d.c gr3d->client.base.num_syncpts = 1; gr3d 353 drivers/gpu/drm/tegra/gr3d.c INIT_LIST_HEAD(&gr3d->client.list); gr3d 354 drivers/gpu/drm/tegra/gr3d.c gr3d->client.version = gr3d->soc->version; gr3d 355 drivers/gpu/drm/tegra/gr3d.c gr3d->client.ops = &gr3d_ops; gr3d 357 drivers/gpu/drm/tegra/gr3d.c err = host1x_client_register(&gr3d->client.base); gr3d 366 drivers/gpu/drm/tegra/gr3d.c set_bit(gr3d_addr_regs[i], gr3d->addr_regs); gr3d 368 drivers/gpu/drm/tegra/gr3d.c platform_set_drvdata(pdev, gr3d); gr3d 375 drivers/gpu/drm/tegra/gr3d.c struct gr3d *gr3d = platform_get_drvdata(pdev); gr3d 378 drivers/gpu/drm/tegra/gr3d.c err = host1x_client_unregister(&gr3d->client.base); gr3d 385 drivers/gpu/drm/tegra/gr3d.c if (gr3d->clk_secondary) { gr3d 387 drivers/gpu/drm/tegra/gr3d.c clk_disable_unprepare(gr3d->clk_secondary); gr3d 391 drivers/gpu/drm/tegra/gr3d.c clk_disable_unprepare(gr3d->clk);