Home | History | Annotate | Download | only in drm

Lines Matching defs:tg

2321 	struct drm_tile_group *tg = container_of(kref, struct drm_tile_group, refcount);
2322 struct drm_device *dev = tg->dev;
2324 idr_remove(&dev->mode_config.tile_idr, tg->id);
2326 kfree(tg);
2332 * @tg: tile group to drop reference to.
2337 struct drm_tile_group *tg)
2339 kref_put(&tg->refcount, drm_tile_group_free);
2356 struct drm_tile_group *tg;
2359 idr_for_each_entry(&dev->mode_config.tile_idr, tg, id) {
2360 if (!memcmp(tg->group_data, topology, 8)) {
2361 if (!kref_get_unless_zero(&tg->refcount))
2362 tg = NULL;
2364 return tg;
2386 struct drm_tile_group *tg;
2389 tg = kzalloc(sizeof(*tg
2390 if (!tg)
2393 kref_init(&tg->refcount);
2394 memcpy(tg->group_data, topology, 8);
2395 tg->dev = dev;
2399 ret = idr_alloc(&dev->mode_config.tile_idr, tg, 1, 0, GFP_KERNEL);
2401 tg->id = ret;
2403 kfree(tg);
2404 tg = NULL;
2409 return tg;