Lines Matching refs:parser
2341 static void r600_cs_parser_fini(struct radeon_cs_parser *parser, int error) in r600_cs_parser_fini() argument
2345 kfree(parser->relocs); in r600_cs_parser_fini()
2346 for (i = 0; i < parser->nchunks; i++) in r600_cs_parser_fini()
2347 drm_free_large(parser->chunks[i].kdata); in r600_cs_parser_fini()
2348 kfree(parser->chunks); in r600_cs_parser_fini()
2349 kfree(parser->chunks_array); in r600_cs_parser_fini()
2367 struct radeon_cs_parser parser; in r600_cs_legacy() local
2379 memset(&parser, 0, sizeof(struct radeon_cs_parser)); in r600_cs_legacy()
2380 parser.filp = filp; in r600_cs_legacy()
2381 parser.dev = &dev->pdev->dev; in r600_cs_legacy()
2382 parser.rdev = NULL; in r600_cs_legacy()
2383 parser.family = family; in r600_cs_legacy()
2384 parser.track = track; in r600_cs_legacy()
2385 parser.ib.ptr = ib; in r600_cs_legacy()
2386 r = radeon_cs_parser_init(&parser, data); in r600_cs_legacy()
2389 r600_cs_parser_fini(&parser, r); in r600_cs_legacy()
2392 r = r600_cs_parser_relocs_legacy(&parser); in r600_cs_legacy()
2395 r600_cs_parser_fini(&parser, r); in r600_cs_legacy()
2401 ib_chunk = parser.chunk_ib; in r600_cs_legacy()
2402 parser.ib.length_dw = ib_chunk->length_dw; in r600_cs_legacy()
2403 *l = parser.ib.length_dw; in r600_cs_legacy()
2406 r600_cs_parser_fini(&parser, r); in r600_cs_legacy()
2409 r = r600_cs_parse(&parser); in r600_cs_legacy()
2412 r600_cs_parser_fini(&parser, r); in r600_cs_legacy()
2415 r600_cs_parser_fini(&parser, r); in r600_cs_legacy()