parser            424 arch/microblaze/pci/pci-common.c 	struct of_pci_range_parser parser;
parser            430 arch/microblaze/pci/pci-common.c 	if (of_pci_range_parser_init(&parser, dev))
parser            434 arch/microblaze/pci/pci-common.c 	for_each_of_pci_range(&parser, &range) {
parser            141 arch/mips/pci/pci-legacy.c 	struct of_pci_range_parser parser;
parser            146 arch/mips/pci/pci-legacy.c 	if (of_pci_range_parser_init(&parser, node))
parser            149 arch/mips/pci/pci-legacy.c 	for_each_of_pci_range(&parser, &range) {
parser            674 arch/powerpc/kernel/pci-common.c 	struct of_pci_range_parser parser;
parser            680 arch/powerpc/kernel/pci-common.c 	if (of_pci_range_parser_init(&parser, dev))
parser            684 arch/powerpc/kernel/pci-common.c 	for_each_of_pci_range(&parser, &range) {
parser            371 crypto/asymmetric_keys/asymmetric_type.c 	struct asymmetric_key_parser *parser;
parser            382 crypto/asymmetric_keys/asymmetric_type.c 	list_for_each_entry(parser, &asymmetric_key_parsers, link) {
parser            383 crypto/asymmetric_keys/asymmetric_type.c 		pr_debug("Trying parser '%s'\n", parser->name);
parser            385 crypto/asymmetric_keys/asymmetric_type.c 		ret = parser->parse(prep);
parser            597 crypto/asymmetric_keys/asymmetric_type.c int register_asymmetric_key_parser(struct asymmetric_key_parser *parser)
parser            605 crypto/asymmetric_keys/asymmetric_type.c 		if (strcmp(cursor->name, parser->name) == 0) {
parser            607 crypto/asymmetric_keys/asymmetric_type.c 			       parser->name);
parser            613 crypto/asymmetric_keys/asymmetric_type.c 	list_add_tail(&parser->link, &asymmetric_key_parsers);
parser            615 crypto/asymmetric_keys/asymmetric_type.c 	pr_notice("Asymmetric key parser '%s' registered\n", parser->name);
parser            628 crypto/asymmetric_keys/asymmetric_type.c void unregister_asymmetric_key_parser(struct asymmetric_key_parser *parser)
parser            631 crypto/asymmetric_keys/asymmetric_type.c 	list_del(&parser->link);
parser            634 crypto/asymmetric_keys/asymmetric_type.c 	pr_notice("Asymmetric key parser '%s' unregistered\n", parser->name);
parser           1254 drivers/gpu/drm/amd/amdgpu/amdgpu.h int amdgpu_cs_find_mapping(struct amdgpu_cs_parser *parser,
parser            748 drivers/gpu/drm/amd/amdgpu/amdgpu_cs.c static void amdgpu_cs_parser_fini(struct amdgpu_cs_parser *parser, int error,
parser            754 drivers/gpu/drm/amd/amdgpu/amdgpu_cs.c 		ttm_eu_backoff_reservation(&parser->ticket,
parser            755 drivers/gpu/drm/amd/amdgpu/amdgpu_cs.c 					   &parser->validated);
parser            757 drivers/gpu/drm/amd/amdgpu/amdgpu_cs.c 	for (i = 0; i < parser->num_post_deps; i++) {
parser            758 drivers/gpu/drm/amd/amdgpu/amdgpu_cs.c 		drm_syncobj_put(parser->post_deps[i].syncobj);
parser            759 drivers/gpu/drm/amd/amdgpu/amdgpu_cs.c 		kfree(parser->post_deps[i].chain);
parser            761 drivers/gpu/drm/amd/amdgpu/amdgpu_cs.c 	kfree(parser->post_deps);
parser            763 drivers/gpu/drm/amd/amdgpu/amdgpu_cs.c 	dma_fence_put(parser->fence);
parser            765 drivers/gpu/drm/amd/amdgpu/amdgpu_cs.c 	if (parser->ctx) {
parser            766 drivers/gpu/drm/amd/amdgpu/amdgpu_cs.c 		mutex_unlock(&parser->ctx->lock);
parser            767 drivers/gpu/drm/amd/amdgpu/amdgpu_cs.c 		amdgpu_ctx_put(parser->ctx);
parser            769 drivers/gpu/drm/amd/amdgpu/amdgpu_cs.c 	if (parser->bo_list)
parser            770 drivers/gpu/drm/amd/amdgpu/amdgpu_cs.c 		amdgpu_bo_list_put(parser->bo_list);
parser            772 drivers/gpu/drm/amd/amdgpu/amdgpu_cs.c 	for (i = 0; i < parser->nchunks; i++)
parser            773 drivers/gpu/drm/amd/amdgpu/amdgpu_cs.c 		kvfree(parser->chunks[i].kdata);
parser            774 drivers/gpu/drm/amd/amdgpu/amdgpu_cs.c 	kfree(parser->chunks);
parser            775 drivers/gpu/drm/amd/amdgpu/amdgpu_cs.c 	if (parser->job)
parser            776 drivers/gpu/drm/amd/amdgpu/amdgpu_cs.c 		amdgpu_job_free(parser->job);
parser            777 drivers/gpu/drm/amd/amdgpu/amdgpu_cs.c 	if (parser->uf_entry.tv.bo) {
parser            778 drivers/gpu/drm/amd/amdgpu/amdgpu_cs.c 		struct amdgpu_bo *uf = ttm_to_amdgpu_bo(parser->uf_entry.tv.bo);
parser            941 drivers/gpu/drm/amd/amdgpu/amdgpu_cs.c 			     struct amdgpu_cs_parser *parser)
parser            943 drivers/gpu/drm/amd/amdgpu/amdgpu_cs.c 	struct amdgpu_fpriv *fpriv = parser->filp->driver_priv;
parser            949 drivers/gpu/drm/amd/amdgpu/amdgpu_cs.c 	for (i = 0, j = 0; i < parser->nchunks && j < parser->job->num_ibs; i++) {
parser            955 drivers/gpu/drm/amd/amdgpu/amdgpu_cs.c 		chunk = &parser->chunks[i];
parser            956 drivers/gpu/drm/amd/amdgpu/amdgpu_cs.c 		ib = &parser->job->ibs[j];
parser            976 drivers/gpu/drm/amd/amdgpu/amdgpu_cs.c 		r = amdgpu_ctx_get_entity(parser->ctx, chunk_ib->ip_type,
parser            983 drivers/gpu/drm/amd/amdgpu/amdgpu_cs.c 			parser->job->preamble_status |=
parser            986 drivers/gpu/drm/amd/amdgpu/amdgpu_cs.c 		if (parser->entity && parser->entity != entity)
parser            989 drivers/gpu/drm/amd/amdgpu/amdgpu_cs.c 		parser->entity = entity;
parser           1007 drivers/gpu/drm/amd/amdgpu/amdgpu_cs.c 	ring = to_amdgpu_ring(parser->entity->rq->sched);
parser           1008 drivers/gpu/drm/amd/amdgpu/amdgpu_cs.c 	if (parser->job->uf_addr && ring->funcs->no_user_fence)
parser           1011 drivers/gpu/drm/amd/amdgpu/amdgpu_cs.c 	return amdgpu_ctx_wait_prev_fence(parser->ctx, parser->entity);
parser           1354 drivers/gpu/drm/amd/amdgpu/amdgpu_cs.c 	struct amdgpu_cs_parser parser = {};
parser           1361 drivers/gpu/drm/amd/amdgpu/amdgpu_cs.c 	parser.adev = adev;
parser           1362 drivers/gpu/drm/amd/amdgpu/amdgpu_cs.c 	parser.filp = filp;
parser           1364 drivers/gpu/drm/amd/amdgpu/amdgpu_cs.c 	r = amdgpu_cs_parser_init(&parser, data);
parser           1370 drivers/gpu/drm/amd/amdgpu/amdgpu_cs.c 	r = amdgpu_cs_ib_fill(adev, &parser);
parser           1374 drivers/gpu/drm/amd/amdgpu/amdgpu_cs.c 	r = amdgpu_cs_dependencies(adev, &parser);
parser           1380 drivers/gpu/drm/amd/amdgpu/amdgpu_cs.c 	r = amdgpu_cs_parser_bos(&parser, data);
parser           1391 drivers/gpu/drm/amd/amdgpu/amdgpu_cs.c 	for (i = 0; i < parser.job->num_ibs; i++)
parser           1392 drivers/gpu/drm/amd/amdgpu/amdgpu_cs.c 		trace_amdgpu_cs(&parser, i);
parser           1394 drivers/gpu/drm/amd/amdgpu/amdgpu_cs.c 	r = amdgpu_cs_vm_handling(&parser);
parser           1398 drivers/gpu/drm/amd/amdgpu/amdgpu_cs.c 	r = amdgpu_cs_submit(&parser, cs);
parser           1401 drivers/gpu/drm/amd/amdgpu/amdgpu_cs.c 	amdgpu_cs_parser_fini(&parser, r, reserved_buffers);
parser           1711 drivers/gpu/drm/amd/amdgpu/amdgpu_cs.c int amdgpu_cs_find_mapping(struct amdgpu_cs_parser *parser,
parser           1715 drivers/gpu/drm/amd/amdgpu/amdgpu_cs.c 	struct amdgpu_fpriv *fpriv = parser->filp->driver_priv;
parser           1731 drivers/gpu/drm/amd/amdgpu/amdgpu_cs.c 	if (dma_resv_locking_ctx((*bo)->tbo.base.resv) != &parser->ticket)
parser             88 drivers/gpu/drm/amd/amdgpu/amdgpu_uvd.c 	struct amdgpu_cs_parser *parser;
parser            460 drivers/gpu/drm/amd/amdgpu/amdgpu_uvd.c 	lo = amdgpu_get_ib_value(ctx->parser, ctx->ib_idx, ctx->data0);
parser            461 drivers/gpu/drm/amd/amdgpu/amdgpu_uvd.c 	hi = amdgpu_get_ib_value(ctx->parser, ctx->ib_idx, ctx->data1);
parser            484 drivers/gpu/drm/amd/amdgpu/amdgpu_uvd.c 	r = amdgpu_cs_find_mapping(ctx->parser, addr, &bo, &mapping);
parser            490 drivers/gpu/drm/amd/amdgpu/amdgpu_uvd.c 	if (!ctx->parser->adev->uvd.address_64_bit) {
parser            492 drivers/gpu/drm/amd/amdgpu/amdgpu_uvd.c 		cmd = amdgpu_get_ib_value(ctx->parser, ctx->ib_idx, ctx->idx) >> 1;
parser            713 drivers/gpu/drm/amd/amdgpu/amdgpu_uvd.c 	struct amdgpu_device *adev = ctx->parser->adev;
parser            754 drivers/gpu/drm/amd/amdgpu/amdgpu_uvd.c 				adev->uvd.filp[i] = ctx->parser->filp;
parser            772 drivers/gpu/drm/amd/amdgpu/amdgpu_uvd.c 				if (adev->uvd.filp[i] != ctx->parser->filp) {
parser            814 drivers/gpu/drm/amd/amdgpu/amdgpu_uvd.c 	r = amdgpu_cs_find_mapping(ctx->parser, addr, &bo, &mapping);
parser            828 drivers/gpu/drm/amd/amdgpu/amdgpu_uvd.c 	amdgpu_set_ib_value(ctx->parser, ctx->ib_idx, ctx->data0,
parser            830 drivers/gpu/drm/amd/amdgpu/amdgpu_uvd.c 	amdgpu_set_ib_value(ctx->parser, ctx->ib_idx, ctx->data1,
parser            833 drivers/gpu/drm/amd/amdgpu/amdgpu_uvd.c 	cmd = amdgpu_get_ib_value(ctx->parser, ctx->ib_idx, ctx->idx) >> 1;
parser            854 drivers/gpu/drm/amd/amdgpu/amdgpu_uvd.c 	if (!ctx->parser->adev->uvd.address_64_bit) {
parser            862 drivers/gpu/drm/amd/amdgpu/amdgpu_uvd.c 		    (start >> 28) != (ctx->parser->adev->uvd.inst->gpu_addr >> 28)) {
parser            893 drivers/gpu/drm/amd/amdgpu/amdgpu_uvd.c 	struct amdgpu_ib *ib = &ctx->parser->job->ibs[ctx->ib_idx];
parser            940 drivers/gpu/drm/amd/amdgpu/amdgpu_uvd.c 	struct amdgpu_ib *ib = &ctx->parser->job->ibs[ctx->ib_idx];
parser            944 drivers/gpu/drm/amd/amdgpu/amdgpu_uvd.c 		uint32_t cmd = amdgpu_get_ib_value(ctx->parser, ctx->ib_idx, ctx->idx);
parser            972 drivers/gpu/drm/amd/amdgpu/amdgpu_uvd.c int amdgpu_uvd_ring_parse_cs(struct amdgpu_cs_parser *parser, uint32_t ib_idx)
parser            982 drivers/gpu/drm/amd/amdgpu/amdgpu_uvd.c 	struct amdgpu_ib *ib = &parser->job->ibs[ib_idx];
parser            985 drivers/gpu/drm/amd/amdgpu/amdgpu_uvd.c 	parser->job->vm = NULL;
parser            994 drivers/gpu/drm/amd/amdgpu/amdgpu_uvd.c 	ctx.parser = parser;
parser            999 drivers/gpu/drm/amd/amdgpu/amdgpu_uvd.c 	if (!parser->adev->uvd.address_64_bit) {
parser             83 drivers/gpu/drm/amd/amdgpu/amdgpu_uvd.h int amdgpu_uvd_ring_parse_cs(struct amdgpu_cs_parser *parser, uint32_t ib_idx);
parser           1692 drivers/gpu/drm/radeon/radeon.h int radeon_uvd_cs_parse(struct radeon_cs_parser *parser);
parser            415 drivers/gpu/drm/radeon/radeon_cs.c static void radeon_cs_parser_fini(struct radeon_cs_parser *parser, int error, bool backoff)
parser            430 drivers/gpu/drm/radeon/radeon_cs.c 		list_sort(NULL, &parser->validated, cmp_size_smaller_first);
parser            432 drivers/gpu/drm/radeon/radeon_cs.c 		ttm_eu_fence_buffer_objects(&parser->ticket,
parser            433 drivers/gpu/drm/radeon/radeon_cs.c 					    &parser->validated,
parser            434 drivers/gpu/drm/radeon/radeon_cs.c 					    &parser->ib.fence->base);
parser            436 drivers/gpu/drm/radeon/radeon_cs.c 		ttm_eu_backoff_reservation(&parser->ticket,
parser            437 drivers/gpu/drm/radeon/radeon_cs.c 					   &parser->validated);
parser            440 drivers/gpu/drm/radeon/radeon_cs.c 	if (parser->relocs != NULL) {
parser            441 drivers/gpu/drm/radeon/radeon_cs.c 		for (i = 0; i < parser->nrelocs; i++) {
parser            442 drivers/gpu/drm/radeon/radeon_cs.c 			struct radeon_bo *bo = parser->relocs[i].robj;
parser            449 drivers/gpu/drm/radeon/radeon_cs.c 	kfree(parser->track);
parser            450 drivers/gpu/drm/radeon/radeon_cs.c 	kvfree(parser->relocs);
parser            451 drivers/gpu/drm/radeon/radeon_cs.c 	kvfree(parser->vm_bos);
parser            452 drivers/gpu/drm/radeon/radeon_cs.c 	for (i = 0; i < parser->nchunks; i++)
parser            453 drivers/gpu/drm/radeon/radeon_cs.c 		kvfree(parser->chunks[i].kdata);
parser            454 drivers/gpu/drm/radeon/radeon_cs.c 	kfree(parser->chunks);
parser            455 drivers/gpu/drm/radeon/radeon_cs.c 	kfree(parser->chunks_array);
parser            456 drivers/gpu/drm/radeon/radeon_cs.c 	radeon_ib_free(parser->rdev, &parser->ib);
parser            457 drivers/gpu/drm/radeon/radeon_cs.c 	radeon_ib_free(parser->rdev, &parser->const_ib);
parser            461 drivers/gpu/drm/radeon/radeon_cs.c 			      struct radeon_cs_parser *parser)
parser            465 drivers/gpu/drm/radeon/radeon_cs.c 	if (parser->chunk_ib == NULL)
parser            468 drivers/gpu/drm/radeon/radeon_cs.c 	if (parser->cs_flags & RADEON_CS_USE_VM)
parser            471 drivers/gpu/drm/radeon/radeon_cs.c 	r = radeon_cs_parse(rdev, parser->ring, parser);
parser            472 drivers/gpu/drm/radeon/radeon_cs.c 	if (r || parser->parser_error) {
parser            477 drivers/gpu/drm/radeon/radeon_cs.c 	r = radeon_cs_sync_rings(parser);
parser            484 drivers/gpu/drm/radeon/radeon_cs.c 	if (parser->ring == R600_RING_TYPE_UVD_INDEX)
parser            486 drivers/gpu/drm/radeon/radeon_cs.c 	else if ((parser->ring == TN_RING_TYPE_VCE1_INDEX) ||
parser            487 drivers/gpu/drm/radeon/radeon_cs.c 		 (parser->ring == TN_RING_TYPE_VCE2_INDEX))
parser            490 drivers/gpu/drm/radeon/radeon_cs.c 	r = radeon_ib_schedule(rdev, &parser->ib, NULL, true);
parser            543 drivers/gpu/drm/radeon/radeon_cs.c 				 struct radeon_cs_parser *parser)
parser            545 drivers/gpu/drm/radeon/radeon_cs.c 	struct radeon_fpriv *fpriv = parser->filp->driver_priv;
parser            549 drivers/gpu/drm/radeon/radeon_cs.c 	if (parser->chunk_ib == NULL)
parser            551 drivers/gpu/drm/radeon/radeon_cs.c 	if ((parser->cs_flags & RADEON_CS_USE_VM) == 0)
parser            554 drivers/gpu/drm/radeon/radeon_cs.c 	if (parser->const_ib.length_dw) {
parser            555 drivers/gpu/drm/radeon/radeon_cs.c 		r = radeon_ring_ib_parse(rdev, parser->ring, &parser->const_ib);
parser            561 drivers/gpu/drm/radeon/radeon_cs.c 	r = radeon_ring_ib_parse(rdev, parser->ring, &parser->ib);
parser            566 drivers/gpu/drm/radeon/radeon_cs.c 	if (parser->ring == R600_RING_TYPE_UVD_INDEX)
parser            570 drivers/gpu/drm/radeon/radeon_cs.c 	r = radeon_bo_vm_update_pte(parser, vm);
parser            575 drivers/gpu/drm/radeon/radeon_cs.c 	r = radeon_cs_sync_rings(parser);
parser            583 drivers/gpu/drm/radeon/radeon_cs.c 	    (parser->chunk_const_ib != NULL)) {
parser            584 drivers/gpu/drm/radeon/radeon_cs.c 		r = radeon_ib_schedule(rdev, &parser->ib, &parser->const_ib, true);
parser            586 drivers/gpu/drm/radeon/radeon_cs.c 		r = radeon_ib_schedule(rdev, &parser->ib, NULL, true);
parser            604 drivers/gpu/drm/radeon/radeon_cs.c static int radeon_cs_ib_fill(struct radeon_device *rdev, struct radeon_cs_parser *parser)
parser            610 drivers/gpu/drm/radeon/radeon_cs.c 	if (parser->chunk_ib == NULL)
parser            613 drivers/gpu/drm/radeon/radeon_cs.c 	if (parser->cs_flags & RADEON_CS_USE_VM) {
parser            614 drivers/gpu/drm/radeon/radeon_cs.c 		struct radeon_fpriv *fpriv = parser->filp->driver_priv;
parser            618 drivers/gpu/drm/radeon/radeon_cs.c 		    (parser->chunk_const_ib != NULL)) {
parser            619 drivers/gpu/drm/radeon/radeon_cs.c 			ib_chunk = parser->chunk_const_ib;
parser            624 drivers/gpu/drm/radeon/radeon_cs.c 			r =  radeon_ib_get(rdev, parser->ring, &parser->const_ib,
parser            630 drivers/gpu/drm/radeon/radeon_cs.c 			parser->const_ib.is_const_ib = true;
parser            631 drivers/gpu/drm/radeon/radeon_cs.c 			parser->const_ib.length_dw = ib_chunk->length_dw;
parser            632 drivers/gpu/drm/radeon/radeon_cs.c 			if (copy_from_user(parser->const_ib.ptr,
parser            638 drivers/gpu/drm/radeon/radeon_cs.c 		ib_chunk = parser->chunk_ib;
parser            644 drivers/gpu/drm/radeon/radeon_cs.c 	ib_chunk = parser->chunk_ib;
parser            646 drivers/gpu/drm/radeon/radeon_cs.c 	r =  radeon_ib_get(rdev, parser->ring, &parser->ib,
parser            652 drivers/gpu/drm/radeon/radeon_cs.c 	parser->ib.length_dw = ib_chunk->length_dw;
parser            654 drivers/gpu/drm/radeon/radeon_cs.c 		memcpy(parser->ib.ptr, ib_chunk->kdata, ib_chunk->length_dw * 4);
parser            655 drivers/gpu/drm/radeon/radeon_cs.c 	else if (copy_from_user(parser->ib.ptr, ib_chunk->user_ptr, ib_chunk->length_dw * 4))
parser            663 drivers/gpu/drm/radeon/radeon_cs.c 	struct radeon_cs_parser parser;
parser            679 drivers/gpu/drm/radeon/radeon_cs.c 	memset(&parser, 0, sizeof(struct radeon_cs_parser));
parser            680 drivers/gpu/drm/radeon/radeon_cs.c 	parser.filp = filp;
parser            681 drivers/gpu/drm/radeon/radeon_cs.c 	parser.rdev = rdev;
parser            682 drivers/gpu/drm/radeon/radeon_cs.c 	parser.dev = rdev->dev;
parser            683 drivers/gpu/drm/radeon/radeon_cs.c 	parser.family = rdev->family;
parser            684 drivers/gpu/drm/radeon/radeon_cs.c 	r = radeon_cs_parser_init(&parser, data);
parser            687 drivers/gpu/drm/radeon/radeon_cs.c 		radeon_cs_parser_fini(&parser, r, false);
parser            693 drivers/gpu/drm/radeon/radeon_cs.c 	r = radeon_cs_ib_fill(rdev, &parser);
parser            695 drivers/gpu/drm/radeon/radeon_cs.c 		r = radeon_cs_parser_relocs(&parser);
parser            701 drivers/gpu/drm/radeon/radeon_cs.c 		radeon_cs_parser_fini(&parser, r, false);
parser            707 drivers/gpu/drm/radeon/radeon_cs.c 	trace_radeon_cs(&parser);
parser            709 drivers/gpu/drm/radeon/radeon_cs.c 	r = radeon_cs_ib_chunk(rdev, &parser);
parser            713 drivers/gpu/drm/radeon/radeon_cs.c 	r = radeon_cs_ib_vm_chunk(rdev, &parser);
parser            718 drivers/gpu/drm/radeon/radeon_cs.c 	radeon_cs_parser_fini(&parser, r, true);
parser            121 drivers/hid/hid-core.c static int open_collection(struct hid_parser *parser, unsigned type)
parser            127 drivers/hid/hid-core.c 	usage = parser->local.usage[0];
parser            129 drivers/hid/hid-core.c 	if (parser->collection_stack_ptr == parser->collection_stack_size) {
parser            131 drivers/hid/hid-core.c 		unsigned int new_size = parser->collection_stack_size +
parser            134 drivers/hid/hid-core.c 		collection_stack = krealloc(parser->collection_stack,
parser            140 drivers/hid/hid-core.c 		parser->collection_stack = collection_stack;
parser            141 drivers/hid/hid-core.c 		parser->collection_stack_size = new_size;
parser            144 drivers/hid/hid-core.c 	if (parser->device->maxcollection == parser->device->collection_size) {
parser            147 drivers/hid/hid-core.c 					    parser->device->collection_size,
parser            151 drivers/hid/hid-core.c 			hid_err(parser->device, "failed to reallocate collection array\n");
parser            154 drivers/hid/hid-core.c 		memcpy(collection, parser->device->collection,
parser            156 drivers/hid/hid-core.c 			parser->device->collection_size);
parser            157 drivers/hid/hid-core.c 		memset(collection + parser->device->collection_size, 0,
parser            159 drivers/hid/hid-core.c 			parser->device->collection_size);
parser            160 drivers/hid/hid-core.c 		kfree(parser->device->collection);
parser            161 drivers/hid/hid-core.c 		parser->device->collection = collection;
parser            162 drivers/hid/hid-core.c 		parser->device->collection_size *= 2;
parser            165 drivers/hid/hid-core.c 	parser->collection_stack[parser->collection_stack_ptr++] =
parser            166 drivers/hid/hid-core.c 		parser->device->maxcollection;
parser            168 drivers/hid/hid-core.c 	collection_index = parser->device->maxcollection++;
parser            169 drivers/hid/hid-core.c 	collection = parser->device->collection + collection_index;
parser            172 drivers/hid/hid-core.c 	collection->level = parser->collection_stack_ptr - 1;
parser            174 drivers/hid/hid-core.c 		parser->collection_stack[collection->level - 1];
parser            177 drivers/hid/hid-core.c 		parser->device->maxapplication++;
parser            186 drivers/hid/hid-core.c static int close_collection(struct hid_parser *parser)
parser            188 drivers/hid/hid-core.c 	if (!parser->collection_stack_ptr) {
parser            189 drivers/hid/hid-core.c 		hid_err(parser->device, "collection stack underflow\n");
parser            192 drivers/hid/hid-core.c 	parser->collection_stack_ptr--;
parser            201 drivers/hid/hid-core.c static unsigned hid_lookup_collection(struct hid_parser *parser, unsigned type)
parser            203 drivers/hid/hid-core.c 	struct hid_collection *collection = parser->device->collection;
parser            206 drivers/hid/hid-core.c 	for (n = parser->collection_stack_ptr - 1; n >= 0; n--) {
parser            207 drivers/hid/hid-core.c 		unsigned index = parser->collection_stack[n];
parser            219 drivers/hid/hid-core.c static void complete_usage(struct hid_parser *parser, unsigned int index)
parser            221 drivers/hid/hid-core.c 	parser->local.usage[index] &= 0xFFFF;
parser            222 drivers/hid/hid-core.c 	parser->local.usage[index] |=
parser            223 drivers/hid/hid-core.c 		(parser->global.usage_page & 0xFFFF) << 16;
parser            230 drivers/hid/hid-core.c static int hid_add_usage(struct hid_parser *parser, unsigned usage, u8 size)
parser            232 drivers/hid/hid-core.c 	if (parser->local.usage_index >= HID_MAX_USAGES) {
parser            233 drivers/hid/hid-core.c 		hid_err(parser->device, "usage index exceeded\n");
parser            236 drivers/hid/hid-core.c 	parser->local.usage[parser->local.usage_index] = usage;
parser            243 drivers/hid/hid-core.c 		complete_usage(parser, parser->local.usage_index);
parser            245 drivers/hid/hid-core.c 	parser->local.usage_size[parser->local.usage_index] = size;
parser            246 drivers/hid/hid-core.c 	parser->local.collection_index[parser->local.usage_index] =
parser            247 drivers/hid/hid-core.c 		parser->collection_stack_ptr ?
parser            248 drivers/hid/hid-core.c 		parser->collection_stack[parser->collection_stack_ptr - 1] : 0;
parser            249 drivers/hid/hid-core.c 	parser->local.usage_index++;
parser            257 drivers/hid/hid-core.c static int hid_add_field(struct hid_parser *parser, unsigned report_type, unsigned flags)
parser            266 drivers/hid/hid-core.c 	application = hid_lookup_collection(parser, HID_COLLECTION_APPLICATION);
parser            268 drivers/hid/hid-core.c 	report = hid_register_report(parser->device, report_type,
parser            269 drivers/hid/hid-core.c 				     parser->global.report_id, application);
parser            271 drivers/hid/hid-core.c 		hid_err(parser->device, "hid_register_report failed\n");
parser            276 drivers/hid/hid-core.c 	if ((parser->global.logical_minimum < 0 &&
parser            277 drivers/hid/hid-core.c 		parser->global.logical_maximum <
parser            278 drivers/hid/hid-core.c 		parser->global.logical_minimum) ||
parser            279 drivers/hid/hid-core.c 		(parser->global.logical_minimum >= 0 &&
parser            280 drivers/hid/hid-core.c 		(__u32)parser->global.logical_maximum <
parser            281 drivers/hid/hid-core.c 		(__u32)parser->global.logical_minimum)) {
parser            283 drivers/hid/hid-core.c 			parser->global.logical_minimum,
parser            284 drivers/hid/hid-core.c 			parser->global.logical_maximum);
parser            289 drivers/hid/hid-core.c 	report->size += parser->global.report_size * parser->global.report_count;
parser            293 drivers/hid/hid-core.c 		hid_err(parser->device, "report is too long\n");
parser            297 drivers/hid/hid-core.c 	if (!parser->local.usage_index) /* Ignore padding fields */
parser            300 drivers/hid/hid-core.c 	usages = max_t(unsigned, parser->local.usage_index,
parser            301 drivers/hid/hid-core.c 				 parser->global.report_count);
parser            303 drivers/hid/hid-core.c 	field = hid_register_field(report, usages, parser->global.report_count);
parser            307 drivers/hid/hid-core.c 	field->physical = hid_lookup_collection(parser, HID_COLLECTION_PHYSICAL);
parser            308 drivers/hid/hid-core.c 	field->logical = hid_lookup_collection(parser, HID_COLLECTION_LOGICAL);
parser            314 drivers/hid/hid-core.c 		if (i >= parser->local.usage_index)
parser            315 drivers/hid/hid-core.c 			j = parser->local.usage_index - 1;
parser            316 drivers/hid/hid-core.c 		field->usage[i].hid = parser->local.usage[j];
parser            318 drivers/hid/hid-core.c 			parser->local.collection_index[j];
parser            327 drivers/hid/hid-core.c 	field->report_size = parser->global.report_size;
parser            328 drivers/hid/hid-core.c 	field->report_count = parser->global.report_count;
parser            329 drivers/hid/hid-core.c 	field->logical_minimum = parser->global.logical_minimum;
parser            330 drivers/hid/hid-core.c 	field->logical_maximum = parser->global.logical_maximum;
parser            331 drivers/hid/hid-core.c 	field->physical_minimum = parser->global.physical_minimum;
parser            332 drivers/hid/hid-core.c 	field->physical_maximum = parser->global.physical_maximum;
parser            333 drivers/hid/hid-core.c 	field->unit_exponent = parser->global.unit_exponent;
parser            334 drivers/hid/hid-core.c 	field->unit = parser->global.unit;
parser            367 drivers/hid/hid-core.c static int hid_parser_global(struct hid_parser *parser, struct hid_item *item)
parser            373 drivers/hid/hid-core.c 		if (parser->global_stack_ptr == HID_GLOBAL_STACK_SIZE) {
parser            374 drivers/hid/hid-core.c 			hid_err(parser->device, "global environment stack overflow\n");
parser            378 drivers/hid/hid-core.c 		memcpy(parser->global_stack + parser->global_stack_ptr++,
parser            379 drivers/hid/hid-core.c 			&parser->global, sizeof(struct hid_global));
parser            384 drivers/hid/hid-core.c 		if (!parser->global_stack_ptr) {
parser            385 drivers/hid/hid-core.c 			hid_err(parser->device, "global environment stack underflow\n");
parser            389 drivers/hid/hid-core.c 		memcpy(&parser->global, parser->global_stack +
parser            390 drivers/hid/hid-core.c 			--parser->global_stack_ptr, sizeof(struct hid_global));
parser            394 drivers/hid/hid-core.c 		parser->global.usage_page = item_udata(item);
parser            398 drivers/hid/hid-core.c 		parser->global.logical_minimum = item_sdata(item);
parser            402 drivers/hid/hid-core.c 		if (parser->global.logical_minimum < 0)
parser            403 drivers/hid/hid-core.c 			parser->global.logical_maximum = item_sdata(item);
parser            405 drivers/hid/hid-core.c 			parser->global.logical_maximum = item_udata(item);
parser            409 drivers/hid/hid-core.c 		parser->global.physical_minimum = item_sdata(item);
parser            413 drivers/hid/hid-core.c 		if (parser->global.physical_minimum < 0)
parser            414 drivers/hid/hid-core.c 			parser->global.physical_maximum = item_sdata(item);
parser            416 drivers/hid/hid-core.c 			parser->global.physical_maximum = item_udata(item);
parser            426 drivers/hid/hid-core.c 			parser->global.unit_exponent = hid_snto32(raw_value, 4);
parser            428 drivers/hid/hid-core.c 			parser->global.unit_exponent = raw_value;
parser            432 drivers/hid/hid-core.c 		parser->global.unit = item_udata(item);
parser            436 drivers/hid/hid-core.c 		parser->global.report_size = item_udata(item);
parser            437 drivers/hid/hid-core.c 		if (parser->global.report_size > 256) {
parser            438 drivers/hid/hid-core.c 			hid_err(parser->device, "invalid report_size %d\n",
parser            439 drivers/hid/hid-core.c 					parser->global.report_size);
parser            445 drivers/hid/hid-core.c 		parser->global.report_count = item_udata(item);
parser            446 drivers/hid/hid-core.c 		if (parser->global.report_count > HID_MAX_USAGES) {
parser            447 drivers/hid/hid-core.c 			hid_err(parser->device, "invalid report_count %d\n",
parser            448 drivers/hid/hid-core.c 					parser->global.report_count);
parser            454 drivers/hid/hid-core.c 		parser->global.report_id = item_udata(item);
parser            455 drivers/hid/hid-core.c 		if (parser->global.report_id == 0 ||
parser            456 drivers/hid/hid-core.c 		    parser->global.report_id >= HID_MAX_IDS) {
parser            457 drivers/hid/hid-core.c 			hid_err(parser->device, "report_id %u is invalid\n",
parser            458 drivers/hid/hid-core.c 				parser->global.report_id);
parser            464 drivers/hid/hid-core.c 		hid_err(parser->device, "unknown global tag 0x%x\n", item->tag);
parser            473 drivers/hid/hid-core.c static int hid_parser_local(struct hid_parser *parser, struct hid_item *item)
parser            491 drivers/hid/hid-core.c 			if (parser->local.delimiter_depth != 0) {
parser            492 drivers/hid/hid-core.c 				hid_err(parser->device, "nested delimiters\n");
parser            495 drivers/hid/hid-core.c 			parser->local.delimiter_depth++;
parser            496 drivers/hid/hid-core.c 			parser->local.delimiter_branch++;
parser            498 drivers/hid/hid-core.c 			if (parser->local.delimiter_depth < 1) {
parser            499 drivers/hid/hid-core.c 				hid_err(parser->device, "bogus close delimiter\n");
parser            502 drivers/hid/hid-core.c 			parser->local.delimiter_depth--;
parser            508 drivers/hid/hid-core.c 		if (parser->local.delimiter_branch > 1) {
parser            513 drivers/hid/hid-core.c 		return hid_add_usage(parser, data, item->size);
parser            517 drivers/hid/hid-core.c 		if (parser->local.delimiter_branch > 1) {
parser            522 drivers/hid/hid-core.c 		parser->local.usage_minimum = data;
parser            527 drivers/hid/hid-core.c 		if (parser->local.delimiter_branch > 1) {
parser            532 drivers/hid/hid-core.c 		count = data - parser->local.usage_minimum;
parser            533 drivers/hid/hid-core.c 		if (count + parser->local.usage_index >= HID_MAX_USAGES) {
parser            538 drivers/hid/hid-core.c 			if (dev_name(&parser->device->dev))
parser            539 drivers/hid/hid-core.c 				hid_warn(parser->device,
parser            541 drivers/hid/hid-core.c 			data = HID_MAX_USAGES - parser->local.usage_index +
parser            542 drivers/hid/hid-core.c 				parser->local.usage_minimum - 1;
parser            544 drivers/hid/hid-core.c 				hid_err(parser->device,
parser            550 drivers/hid/hid-core.c 		for (n = parser->local.usage_minimum; n <= data; n++)
parser            551 drivers/hid/hid-core.c 			if (hid_add_usage(parser, n, item->size)) {
parser            572 drivers/hid/hid-core.c static void hid_concatenate_last_usage_page(struct hid_parser *parser)
parser            578 drivers/hid/hid-core.c 	if (!parser->local.usage_index)
parser            581 drivers/hid/hid-core.c 	usage_page = parser->global.usage_page;
parser            587 drivers/hid/hid-core.c 	for (i = parser->local.usage_index - 1; i >= 0; i--) {
parser            588 drivers/hid/hid-core.c 		if (parser->local.usage_size[i] > 2)
parser            592 drivers/hid/hid-core.c 		current_page = parser->local.usage[i] >> 16;
parser            596 drivers/hid/hid-core.c 		complete_usage(parser, i);
parser            604 drivers/hid/hid-core.c static int hid_parser_main(struct hid_parser *parser, struct hid_item *item)
parser            609 drivers/hid/hid-core.c 	hid_concatenate_last_usage_page(parser);
parser            615 drivers/hid/hid-core.c 		ret = open_collection(parser, data & 0xff);
parser            618 drivers/hid/hid-core.c 		ret = close_collection(parser);
parser            621 drivers/hid/hid-core.c 		ret = hid_add_field(parser, HID_INPUT_REPORT, data);
parser            624 drivers/hid/hid-core.c 		ret = hid_add_field(parser, HID_OUTPUT_REPORT, data);
parser            627 drivers/hid/hid-core.c 		ret = hid_add_field(parser, HID_FEATURE_REPORT, data);
parser            630 drivers/hid/hid-core.c 		hid_warn(parser->device, "unknown main item tag 0x%x\n", item->tag);
parser            634 drivers/hid/hid-core.c 	memset(&parser->local, 0, sizeof(parser->local));	/* Reset the local parser environment */
parser            643 drivers/hid/hid-core.c static int hid_parser_reserved(struct hid_parser *parser, struct hid_item *item)
parser            777 drivers/hid/hid-core.c static void hid_scan_input_usage(struct hid_parser *parser, u32 usage)
parser            779 drivers/hid/hid-core.c 	struct hid_device *hid = parser->device;
parser            785 drivers/hid/hid-core.c static void hid_scan_feature_usage(struct hid_parser *parser, u32 usage)
parser            787 drivers/hid/hid-core.c 	if (usage == 0xff0000c5 && parser->global.report_count == 256 &&
parser            788 drivers/hid/hid-core.c 	    parser->global.report_size == 8)
parser            789 drivers/hid/hid-core.c 		parser->scan_flags |= HID_SCAN_FLAG_MT_WIN_8;
parser            791 drivers/hid/hid-core.c 	if (usage == 0xff0000c6 && parser->global.report_count == 1 &&
parser            792 drivers/hid/hid-core.c 	    parser->global.report_size == 8)
parser            793 drivers/hid/hid-core.c 		parser->scan_flags |= HID_SCAN_FLAG_MT_WIN_8;
parser            796 drivers/hid/hid-core.c static void hid_scan_collection(struct hid_parser *parser, unsigned type)
parser            798 drivers/hid/hid-core.c 	struct hid_device *hid = parser->device;
parser            801 drivers/hid/hid-core.c 	if (((parser->global.usage_page << 16) == HID_UP_SENSOR) &&
parser            810 drivers/hid/hid-core.c 	if ((parser->global.usage_page << 16) == HID_UP_GENDESK)
parser            811 drivers/hid/hid-core.c 		for (i = 0; i < parser->local.usage_index; i++)
parser            812 drivers/hid/hid-core.c 			if (parser->local.usage[i] == HID_GD_POINTER)
parser            813 drivers/hid/hid-core.c 				parser->scan_flags |= HID_SCAN_FLAG_GD_POINTER;
parser            815 drivers/hid/hid-core.c 	if ((parser->global.usage_page << 16) >= HID_UP_MSVENDOR)
parser            816 drivers/hid/hid-core.c 		parser->scan_flags |= HID_SCAN_FLAG_VENDOR_SPECIFIC;
parser            819 drivers/hid/hid-core.c static int hid_scan_main(struct hid_parser *parser, struct hid_item *item)
parser            824 drivers/hid/hid-core.c 	hid_concatenate_last_usage_page(parser);
parser            830 drivers/hid/hid-core.c 		hid_scan_collection(parser, data & 0xff);
parser            838 drivers/hid/hid-core.c 		for (i = 0; i < parser->local.usage_index; i++)
parser            839 drivers/hid/hid-core.c 			hid_scan_input_usage(parser, parser->local.usage[i]);
parser            844 drivers/hid/hid-core.c 		for (i = 0; i < parser->local.usage_index; i++)
parser            845 drivers/hid/hid-core.c 			hid_scan_feature_usage(parser, parser->local.usage[i]);
parser            850 drivers/hid/hid-core.c 	memset(&parser->local, 0, sizeof(parser->local));
parser            862 drivers/hid/hid-core.c 	struct hid_parser *parser;
parser            866 drivers/hid/hid-core.c 	static int (*dispatch_type[])(struct hid_parser *parser,
parser            874 drivers/hid/hid-core.c 	parser = vzalloc(sizeof(struct hid_parser));
parser            875 drivers/hid/hid-core.c 	if (!parser)
parser            878 drivers/hid/hid-core.c 	parser->device = hid;
parser            887 drivers/hid/hid-core.c 		dispatch_type[item.type](parser, &item);
parser            892 drivers/hid/hid-core.c 	if ((parser->scan_flags & HID_SCAN_FLAG_MT_WIN_8) &&
parser            905 drivers/hid/hid-core.c 			if ((parser->scan_flags & HID_SCAN_FLAG_VENDOR_SPECIFIC)
parser            906 drivers/hid/hid-core.c 			    && (parser->scan_flags & HID_SCAN_FLAG_GD_POINTER))
parser            915 drivers/hid/hid-core.c 	kfree(parser->collection_stack);
parser            916 drivers/hid/hid-core.c 	vfree(parser);
parser           1185 drivers/hid/hid-core.c 	struct hid_parser *parser;
parser           1193 drivers/hid/hid-core.c 	static int (*dispatch_type[])(struct hid_parser *parser,
parser           1226 drivers/hid/hid-core.c 	parser = vzalloc(sizeof(struct hid_parser));
parser           1227 drivers/hid/hid-core.c 	if (!parser) {
parser           1232 drivers/hid/hid-core.c 	parser->device = device;
parser           1253 drivers/hid/hid-core.c 		if (dispatch_type[item.type](parser, &item)) {
parser           1261 drivers/hid/hid-core.c 			if (parser->collection_stack_ptr) {
parser           1265 drivers/hid/hid-core.c 			if (parser->local.delimiter_depth) {
parser           1276 drivers/hid/hid-core.c 			kfree(parser->collection_stack);
parser           1277 drivers/hid/hid-core.c 			vfree(parser);
parser           1287 drivers/hid/hid-core.c 	kfree(parser->collection_stack);
parser           1289 drivers/hid/hid-core.c 	vfree(parser);
parser             82 drivers/misc/habanalabs/command_submission.c 	struct hl_cs_parser parser;
parser             85 drivers/misc/habanalabs/command_submission.c 	parser.ctx_id = job->cs->ctx->asid;
parser             86 drivers/misc/habanalabs/command_submission.c 	parser.cs_sequence = job->cs->sequence;
parser             87 drivers/misc/habanalabs/command_submission.c 	parser.job_id = job->id;
parser             89 drivers/misc/habanalabs/command_submission.c 	parser.hw_queue_id = job->hw_queue_id;
parser             90 drivers/misc/habanalabs/command_submission.c 	parser.job_userptr_list = &job->userptr_list;
parser             91 drivers/misc/habanalabs/command_submission.c 	parser.patched_cb = NULL;
parser             92 drivers/misc/habanalabs/command_submission.c 	parser.user_cb = job->user_cb;
parser             93 drivers/misc/habanalabs/command_submission.c 	parser.user_cb_size = job->user_cb_size;
parser             94 drivers/misc/habanalabs/command_submission.c 	parser.ext_queue = job->ext_queue;
parser             97 drivers/misc/habanalabs/command_submission.c 	rc = hdev->asic_funcs->cs_parser(hdev, &parser);
parser            100 drivers/misc/habanalabs/command_submission.c 			job->patched_cb = parser.patched_cb;
parser            101 drivers/misc/habanalabs/command_submission.c 			job->job_cb_size = parser.patched_cb_size;
parser           3178 drivers/misc/habanalabs/goya/goya.c 				struct hl_cs_parser *parser,
parser           3186 drivers/misc/habanalabs/goya/goya.c 			parser->job_userptr_list, &userptr))
parser           3198 drivers/misc/habanalabs/goya/goya.c 	list_add_tail(&userptr->job_node, parser->job_userptr_list);
parser           3211 drivers/misc/habanalabs/goya/goya.c 	parser->patched_cb_size +=
parser           3224 drivers/misc/habanalabs/goya/goya.c 				struct hl_cs_parser *parser,
parser           3310 drivers/misc/habanalabs/goya/goya.c 		parser->patched_cb_size += sizeof(*user_dma_pkt);
parser           3313 drivers/misc/habanalabs/goya/goya.c 				(parser->hw_queue_id > GOYA_QUEUE_ID_DMA_1)) {
parser           3319 drivers/misc/habanalabs/goya/goya.c 		rc = goya_pin_memory_before_cs(hdev, parser, user_dma_pkt,
parser           3327 drivers/misc/habanalabs/goya/goya.c 				struct hl_cs_parser *parser,
parser           3366 drivers/misc/habanalabs/goya/goya.c 	parser->patched_cb_size += sizeof(*user_dma_pkt);
parser           3372 drivers/misc/habanalabs/goya/goya.c 				struct hl_cs_parser *parser,
parser           3401 drivers/misc/habanalabs/goya/goya.c 		rc = goya_validate_dma_pkt_no_host(hdev, parser, user_dma_pkt);
parser           3403 drivers/misc/habanalabs/goya/goya.c 		rc = goya_validate_dma_pkt_host(hdev, parser, user_dma_pkt);
parser           3409 drivers/misc/habanalabs/goya/goya.c 				struct hl_cs_parser *parser,
parser           3423 drivers/misc/habanalabs/goya/goya.c 	if (parser->hw_queue_id != GOYA_QUEUE_ID_DMA_1 &&
parser           3439 drivers/misc/habanalabs/goya/goya.c 	parser->patched_cb_size += sizeof(*user_dma_pkt);
parser           3445 drivers/misc/habanalabs/goya/goya.c 				struct hl_cs_parser *parser,
parser           3489 drivers/misc/habanalabs/goya/goya.c 			struct hl_cs_parser *parser, bool is_mmu)
parser           3494 drivers/misc/habanalabs/goya/goya.c 	parser->patched_cb_size = 0;
parser           3497 drivers/misc/habanalabs/goya/goya.c 	while (cb_parsed_length < parser->user_cb_size) {
parser           3503 drivers/misc/habanalabs/goya/goya.c 			(parser->user_cb->kernel_address + cb_parsed_length);
parser           3512 drivers/misc/habanalabs/goya/goya.c 		if (cb_parsed_length > parser->user_cb_size) {
parser           3527 drivers/misc/habanalabs/goya/goya.c 				parser, (struct packet_wreg32 *) user_pkt);
parser           3554 drivers/misc/habanalabs/goya/goya.c 				rc = goya_validate_dma_pkt_mmu(hdev, parser,
parser           3557 drivers/misc/habanalabs/goya/goya.c 				rc = goya_validate_dma_pkt_no_mmu(hdev, parser,
parser           3565 drivers/misc/habanalabs/goya/goya.c 			parser->patched_cb_size += pkt_size;
parser           3584 drivers/misc/habanalabs/goya/goya.c 	parser->patched_cb_size += sizeof(struct packet_msg_prot) * 2;
parser           3590 drivers/misc/habanalabs/goya/goya.c 				struct hl_cs_parser *parser,
parser           3638 drivers/misc/habanalabs/goya/goya.c 			parser->job_userptr_list, &userptr) == false)) {
parser           3720 drivers/misc/habanalabs/goya/goya.c 				struct hl_cs_parser *parser)
parser           3727 drivers/misc/habanalabs/goya/goya.c 	while (cb_parsed_length < parser->user_cb_size) {
parser           3734 drivers/misc/habanalabs/goya/goya.c 			(parser->user_cb->kernel_address + cb_parsed_length);
parser           3736 drivers/misc/habanalabs/goya/goya.c 			(parser->patched_cb->kernel_address +
parser           3746 drivers/misc/habanalabs/goya/goya.c 		if (cb_parsed_length > parser->user_cb_size) {
parser           3755 drivers/misc/habanalabs/goya/goya.c 			rc = goya_patch_dma_packet(hdev, parser,
parser           3765 drivers/misc/habanalabs/goya/goya.c 			rc = goya_validate_wreg32(hdev, parser,
parser           3814 drivers/misc/habanalabs/goya/goya.c 		struct hl_cs_parser *parser)
parser           3826 drivers/misc/habanalabs/goya/goya.c 	parser->patched_cb_size = parser->user_cb_size +
parser           3830 drivers/misc/habanalabs/goya/goya.c 				parser->patched_cb_size,
parser           3841 drivers/misc/habanalabs/goya/goya.c 	parser->patched_cb = hl_cb_get(hdev, &hdev->kernel_cb_mgr,
parser           3844 drivers/misc/habanalabs/goya/goya.c 	WARN(!parser->patched_cb, "DMA CB handle invalid 0x%x\n",
parser           3846 drivers/misc/habanalabs/goya/goya.c 	if (!parser->patched_cb) {
parser           3855 drivers/misc/habanalabs/goya/goya.c 	memcpy((void *) (uintptr_t) parser->patched_cb->kernel_address,
parser           3856 drivers/misc/habanalabs/goya/goya.c 		(void *) (uintptr_t) parser->user_cb->kernel_address,
parser           3857 drivers/misc/habanalabs/goya/goya.c 		parser->user_cb_size);
parser           3859 drivers/misc/habanalabs/goya/goya.c 	patched_cb_size = parser->patched_cb_size;
parser           3862 drivers/misc/habanalabs/goya/goya.c 	user_cb = parser->user_cb;
parser           3863 drivers/misc/habanalabs/goya/goya.c 	parser->user_cb = parser->patched_cb;
parser           3864 drivers/misc/habanalabs/goya/goya.c 	rc = goya_validate_cb(hdev, parser, true);
parser           3865 drivers/misc/habanalabs/goya/goya.c 	parser->user_cb = user_cb;
parser           3868 drivers/misc/habanalabs/goya/goya.c 		hl_cb_put(parser->patched_cb);
parser           3872 drivers/misc/habanalabs/goya/goya.c 	if (patched_cb_size != parser->patched_cb_size) {
parser           3874 drivers/misc/habanalabs/goya/goya.c 		hl_cb_put(parser->patched_cb);
parser           3893 drivers/misc/habanalabs/goya/goya.c 				struct hl_cs_parser *parser)
parser           3898 drivers/misc/habanalabs/goya/goya.c 	rc = goya_validate_cb(hdev, parser, false);
parser           3904 drivers/misc/habanalabs/goya/goya.c 				parser->patched_cb_size,
parser           3913 drivers/misc/habanalabs/goya/goya.c 	parser->patched_cb = hl_cb_get(hdev, &hdev->kernel_cb_mgr,
parser           3916 drivers/misc/habanalabs/goya/goya.c 	WARN(!parser->patched_cb, "DMA CB handle invalid 0x%x\n",
parser           3918 drivers/misc/habanalabs/goya/goya.c 	if (!parser->patched_cb) {
parser           3923 drivers/misc/habanalabs/goya/goya.c 	rc = goya_patch_cb(hdev, parser);
parser           3926 drivers/misc/habanalabs/goya/goya.c 		hl_cb_put(parser->patched_cb);
parser           3940 drivers/misc/habanalabs/goya/goya.c 		hl_userptr_delete_list(hdev, parser->job_userptr_list);
parser           3945 drivers/misc/habanalabs/goya/goya.c 					struct hl_cs_parser *parser)
parser           3955 drivers/misc/habanalabs/goya/goya.c 			(u64) (uintptr_t) parser->user_cb,
parser           3956 drivers/misc/habanalabs/goya/goya.c 			parser->user_cb_size,
parser           3962 drivers/misc/habanalabs/goya/goya.c 			(u64) (uintptr_t) parser->user_cb,
parser           3963 drivers/misc/habanalabs/goya/goya.c 			parser->user_cb_size,
parser           3970 drivers/misc/habanalabs/goya/goya.c 		parser->user_cb, parser->user_cb_size);
parser           3975 drivers/misc/habanalabs/goya/goya.c int goya_cs_parser(struct hl_device *hdev, struct hl_cs_parser *parser)
parser           3979 drivers/misc/habanalabs/goya/goya.c 	if (!parser->ext_queue)
parser           3980 drivers/misc/habanalabs/goya/goya.c 		return goya_parse_cb_no_ext_queue(hdev, parser);
parser           3983 drivers/misc/habanalabs/goya/goya.c 		return goya_parse_cb_mmu(hdev, parser);
parser           3985 drivers/misc/habanalabs/goya/goya.c 		return goya_parse_cb_no_mmu(hdev, parser);
parser            225 drivers/misc/habanalabs/goya/goyaP.h int goya_cs_parser(struct hl_device *hdev, struct hl_cs_parser *parser);
parser            541 drivers/misc/habanalabs/habanalabs.h 	int (*cs_parser)(struct hl_device *hdev, struct hl_cs_parser *parser);
parser            830 drivers/mtd/mtdpart.c static int mtd_part_do_parse(struct mtd_part_parser *parser,
parser            837 drivers/mtd/mtdpart.c 	ret = (*parser->parse_fn)(master, &pparts->parts, data);
parser            838 drivers/mtd/mtdpart.c 	pr_debug("%s: parser %s: %i\n", master->name, parser->name, ret);
parser            843 drivers/mtd/mtdpart.c 		  parser->name, master->name);
parser            846 drivers/mtd/mtdpart.c 	pparts->parser = parser;
parser            893 drivers/mtd/mtdpart.c 	struct mtd_part_parser *parser;
parser            907 drivers/mtd/mtdpart.c 		parser = mtd_part_get_compatible_parser(compat);
parser            908 drivers/mtd/mtdpart.c 		if (!parser)
parser            910 drivers/mtd/mtdpart.c 		ret = mtd_part_do_parse(parser, master, pparts, NULL);
parser            915 drivers/mtd/mtdpart.c 		mtd_part_parser_put(parser);
parser            927 drivers/mtd/mtdpart.c 	parser = mtd_part_parser_get(fixed);
parser            928 drivers/mtd/mtdpart.c 	if (!parser && !request_module("%s", fixed))
parser            929 drivers/mtd/mtdpart.c 		parser = mtd_part_parser_get(fixed);
parser            930 drivers/mtd/mtdpart.c 	if (parser) {
parser            931 drivers/mtd/mtdpart.c 		ret = mtd_part_do_parse(parser, master, pparts, NULL);
parser            934 drivers/mtd/mtdpart.c 		mtd_part_parser_put(parser);
parser            964 drivers/mtd/mtdpart.c 	struct mtd_part_parser *parser;
parser            982 drivers/mtd/mtdpart.c 			parser = mtd_part_parser_get(*types);
parser            983 drivers/mtd/mtdpart.c 			if (!parser && !request_module("%s", *types))
parser            984 drivers/mtd/mtdpart.c 				parser = mtd_part_parser_get(*types);
parser            986 drivers/mtd/mtdpart.c 				parser ? parser->name : NULL);
parser            987 drivers/mtd/mtdpart.c 			if (!parser)
parser            989 drivers/mtd/mtdpart.c 			ret = mtd_part_do_parse(parser, master, &pparts, data);
parser            991 drivers/mtd/mtdpart.c 				mtd_part_parser_put(parser);
parser           1012 drivers/mtd/mtdpart.c 	const struct mtd_part_parser *parser;
parser           1017 drivers/mtd/mtdpart.c 	parser = parts->parser;
parser           1018 drivers/mtd/mtdpart.c 	if (parser) {
parser           1019 drivers/mtd/mtdpart.c 		if (parser->cleanup)
parser           1020 drivers/mtd/mtdpart.c 			parser->cleanup(parts->parts, parts->nr_parts);
parser           1022 drivers/mtd/mtdpart.c 		mtd_part_parser_put(parser);
parser           2170 drivers/mtd/nand/raw/nand_base.c 			   const struct nand_op_parser *parser,
parser           2185 drivers/mtd/nand/raw/nand_base.c 		for (i = 0; i < parser->npatterns; i++) {
parser           2188 drivers/mtd/nand/raw/nand_base.c 			pattern = &parser->patterns[i];
parser           2209 drivers/mtd/nand/raw/nand_base.c 			pattern = &parser->patterns[best_pattern];
parser           1908 drivers/mtd/nand/raw/sunxi_nand.c 	const struct nand_op_parser *parser;
parser           1913 drivers/mtd/nand/raw/sunxi_nand.c 		parser = &sunxi_nfc_op_parser;
parser           1915 drivers/mtd/nand/raw/sunxi_nand.c 		parser = &sunxi_nfc_norb_op_parser;
parser           1917 drivers/mtd/nand/raw/sunxi_nand.c 	return nand_op_parser_exec_op(nand, parser, op, check_only);
parser            127 drivers/net/ethernet/apm/xgene/xgene_enet_cle.c 	enum xgene_cle_parser parser = cle->active_parser;
parser            138 drivers/net/ethernet/apm/xgene/xgene_enet_cle.c 		if ((type < PTREE_RAM) && (parser != PARSER_ALL))
parser            139 drivers/net/ethernet/apm/xgene/xgene_enet_cle.c 			port = parser;
parser            235 drivers/of/address.c static int parser_init(struct of_pci_range_parser *parser,
parser            241 drivers/of/address.c 	parser->node = node;
parser            242 drivers/of/address.c 	parser->pna = of_n_addr_cells(node);
parser            243 drivers/of/address.c 	parser->np = parser->pna + na + ns;
parser            245 drivers/of/address.c 	parser->range = of_get_property(node, name, &rlen);
parser            246 drivers/of/address.c 	if (parser->range == NULL)
parser            249 drivers/of/address.c 	parser->end = parser->range + rlen / sizeof(__be32);
parser            254 drivers/of/address.c int of_pci_range_parser_init(struct of_pci_range_parser *parser,
parser            257 drivers/of/address.c 	return parser_init(parser, node, "ranges");
parser            261 drivers/of/address.c int of_pci_dma_range_parser_init(struct of_pci_range_parser *parser,
parser            264 drivers/of/address.c 	return parser_init(parser, node, "dma-ranges");
parser            268 drivers/of/address.c struct of_pci_range *of_pci_range_parser_one(struct of_pci_range_parser *parser,
parser            276 drivers/of/address.c 	if (!parser->range || parser->range + parser->np > parser->end)
parser            279 drivers/of/address.c 	range->pci_space = be32_to_cpup(parser->range);
parser            280 drivers/of/address.c 	range->flags = of_bus_pci_get_flags(parser->range);
parser            281 drivers/of/address.c 	range->pci_addr = of_read_number(parser->range + 1, ns);
parser            282 drivers/of/address.c 	range->cpu_addr = of_translate_address(parser->node,
parser            283 drivers/of/address.c 				parser->range + na);
parser            284 drivers/of/address.c 	range->size = of_read_number(parser->range + parser->pna + na, ns);
parser            286 drivers/of/address.c 	parser->range += parser->np;
parser            289 drivers/of/address.c 	while (parser->range + parser->np <= parser->end) {
parser            293 drivers/of/address.c 		flags = of_bus_pci_get_flags(parser->range);
parser            294 drivers/of/address.c 		pci_addr = of_read_number(parser->range + 1, ns);
parser            295 drivers/of/address.c 		cpu_addr = of_translate_address(parser->node,
parser            296 drivers/of/address.c 				parser->range + na);
parser            297 drivers/of/address.c 		size = of_read_number(parser->range + parser->pna + na, ns);
parser            306 drivers/of/address.c 		parser->range += parser->np;
parser            382 drivers/pci/controller/pci-ftpci100.c 	struct of_pci_range_parser parser;
parser            392 drivers/pci/controller/pci-ftpci100.c 	if (of_pci_dma_range_parser_init(&parser, np)) {
parser            400 drivers/pci/controller/pci-ftpci100.c 	for_each_of_pci_range(&parser, &range) {
parser            299 drivers/pci/controller/pci-rcar-gen2.c 	struct of_pci_range_parser parser;
parser            303 drivers/pci/controller/pci-rcar-gen2.c 	if (of_pci_dma_range_parser_init(&parser, np))
parser            307 drivers/pci/controller/pci-rcar-gen2.c 	for_each_of_pci_range(&parser, &range) {
parser           2160 drivers/pci/controller/pci-tegra.c 	struct of_pci_range_parser parser;
parser           2167 drivers/pci/controller/pci-tegra.c 	if (of_pci_range_parser_init(&parser, np)) {
parser           2172 drivers/pci/controller/pci-tegra.c 	for_each_of_pci_range(&parser, &range) {
parser            696 drivers/pci/controller/pci-v3-semi.c 	struct of_pci_range_parser parser;
parser            700 drivers/pci/controller/pci-v3-semi.c 	if (of_pci_dma_range_parser_init(&parser, np)) {
parser            708 drivers/pci/controller/pci-v3-semi.c 	for_each_of_pci_range(&parser, &range) {
parser            541 drivers/pci/controller/pci-xgene.c 	struct of_pci_range_parser parser;
parser            545 drivers/pci/controller/pci-xgene.c 	if (of_pci_dma_range_parser_init(&parser, np)) {
parser            551 drivers/pci/controller/pci-xgene.c 	for_each_of_pci_range(&parser, &range) {
parser            144 drivers/pci/controller/pcie-cadence-host.c 	struct of_pci_range_parser parser;
parser            167 drivers/pci/controller/pcie-cadence-host.c 	err = of_pci_range_parser_init(&parser, np);
parser            172 drivers/pci/controller/pcie-cadence-host.c 	for_each_of_pci_range(&parser, &range) {
parser           1219 drivers/pci/controller/pcie-iproc.c 	struct of_pci_range_parser parser;
parser           1224 drivers/pci/controller/pcie-iproc.c 	ret = of_pci_dma_range_parser_init(&parser, pcie->dev->of_node);
parser           1228 drivers/pci/controller/pcie-iproc.c 	for_each_of_pci_range(&parser, &range) {
parser           1090 drivers/pci/controller/pcie-rcar.c 	struct of_pci_range_parser parser;
parser           1094 drivers/pci/controller/pcie-rcar.c 	if (of_pci_dma_range_parser_init(&parser, np))
parser           1098 drivers/pci/controller/pcie-rcar.c 	for_each_of_pci_range(&parser, &range) {
parser            242 drivers/pci/controller/pcie-tango.c 	struct of_pci_range_parser parser;
parser            263 drivers/pci/controller/pcie-tango.c 	if (of_pci_dma_range_parser_init(&parser, dev->of_node) < 0)
parser            266 drivers/pci/controller/pcie-tango.c 	if (of_pci_range_parser_one(&parser, &range) == NULL)
parser            266 drivers/pci/of.c 	struct of_pci_range_parser parser;
parser            293 drivers/pci/of.c 	err = of_pci_range_parser_init(&parser, dev_node);
parser            298 drivers/pci/of.c 	for_each_of_pci_range(&parser, &range) {
parser            285 drivers/staging/mt7621-pci/pci-mt7621.c 	struct of_pci_range_parser parser;
parser            289 drivers/staging/mt7621-pci/pci-mt7621.c 	if (of_pci_range_parser_init(&parser, node)) {
parser            294 drivers/staging/mt7621-pci/pci-mt7621.c 	for_each_of_pci_range(&parser, &range) {
parser             90 include/linux/mtd/partitions.h 	const struct mtd_part_parser *parser;
parser             93 include/linux/mtd/partitions.h extern int __register_mtd_parser(struct mtd_part_parser *parser,
parser             95 include/linux/mtd/partitions.h #define register_mtd_parser(parser) __register_mtd_parser(parser, THIS_MODULE)
parser             97 include/linux/mtd/partitions.h extern void deregister_mtd_parser(struct mtd_part_parser *parser);
parser            874 include/linux/mtd/rawnand.h 			   const struct nand_op_parser *parser,
parser             25 include/linux/of_address.h #define for_each_of_pci_range(parser, range) \
parser             26 include/linux/of_address.h 	for (; of_pci_range_parser_one(parser, range);)
parser             51 include/linux/of_address.h extern int of_pci_range_parser_init(struct of_pci_range_parser *parser,
parser             53 include/linux/of_address.h extern int of_pci_dma_range_parser_init(struct of_pci_range_parser *parser,
parser             56 include/linux/of_address.h 					struct of_pci_range_parser *parser,
parser             88 include/linux/of_address.h static inline int of_pci_range_parser_init(struct of_pci_range_parser *parser,
parser             94 include/linux/of_address.h static inline int of_pci_dma_range_parser_init(struct of_pci_range_parser *parser,
parser            101 include/linux/of_address.h 					struct of_pci_range_parser *parser,
parser             92 include/linux/skmsg.h 	struct sk_psock_parser		parser;
parser            439 include/linux/skmsg.h 	if (psock->parser.enabled)
parser            440 include/linux/skmsg.h 		psock->parser.saved_data_ready(sk);
parser             26 include/sound/seq_virmidi.h 	struct snd_midi_event *parser;
parser           3058 kernel/trace/ftrace.c 	struct trace_parser		parser;
parser           3572 kernel/trace/ftrace.c 	if (trace_parser_get_init(&iter->parser, FTRACE_BUFF_MAX))
parser           3602 kernel/trace/ftrace.c 			trace_parser_put(&iter->parser);
parser           3620 kernel/trace/ftrace.c 			trace_parser_put(&iter->parser);
parser           4680 kernel/trace/ftrace.c 	struct trace_parser *parser;
parser           4697 kernel/trace/ftrace.c 	parser = &iter->parser;
parser           4698 kernel/trace/ftrace.c 	read = trace_get_user(parser, ubuf, cnt, ppos);
parser           4700 kernel/trace/ftrace.c 	if (read >= 0 && trace_parser_loaded(parser) &&
parser           4701 kernel/trace/ftrace.c 	    !trace_parser_cont(parser)) {
parser           4702 kernel/trace/ftrace.c 		ret = ftrace_process_regex(iter, parser->buffer,
parser           4703 kernel/trace/ftrace.c 					   parser->idx, enable);
parser           4704 kernel/trace/ftrace.c 		trace_parser_clear(parser);
parser           5024 kernel/trace/ftrace.c 	struct trace_parser *parser;
parser           5034 kernel/trace/ftrace.c 	parser = &iter->parser;
parser           5035 kernel/trace/ftrace.c 	if (trace_parser_loaded(parser)) {
parser           5036 kernel/trace/ftrace.c 		ftrace_match_records(iter->hash, parser->buffer, parser->idx);
parser           5039 kernel/trace/ftrace.c 	trace_parser_put(parser);
parser           5122 kernel/trace/ftrace.c 	struct trace_parser		parser;
parser           5233 kernel/trace/ftrace.c 		if (trace_parser_get_init(&fgd->parser, FTRACE_BUFF_MAX))
parser           5262 kernel/trace/ftrace.c 		trace_parser_put(&fgd->parser);
parser           5337 kernel/trace/ftrace.c 	struct trace_parser *parser;
parser           5352 kernel/trace/ftrace.c 		parser = &fgd->parser;
parser           5354 kernel/trace/ftrace.c 		if (trace_parser_loaded((parser))) {
parser           5356 kernel/trace/ftrace.c 						    parser->buffer);
parser           5359 kernel/trace/ftrace.c 		trace_parser_put(parser);
parser           5462 kernel/trace/ftrace.c 	struct trace_parser *parser;
parser           5473 kernel/trace/ftrace.c 	parser = &fgd->parser;
parser           5475 kernel/trace/ftrace.c 	read = trace_get_user(parser, ubuf, cnt, ppos);
parser           5477 kernel/trace/ftrace.c 	if (read >= 0 && trace_parser_loaded(parser) &&
parser           5478 kernel/trace/ftrace.c 	    !trace_parser_cont(parser)) {
parser           5481 kernel/trace/ftrace.c 					    parser->buffer);
parser           5482 kernel/trace/ftrace.c 		trace_parser_clear(parser);
parser            501 kernel/trace/trace.c 	struct trace_parser parser;
parser            509 kernel/trace/trace.c 	if (trace_parser_get_init(&parser, PID_BUF_SIZE + 1))
parser            520 kernel/trace/trace.c 		trace_parser_put(&parser);
parser            532 kernel/trace/trace.c 		trace_parser_put(&parser);
parser            550 kernel/trace/trace.c 		ret = trace_get_user(&parser, ubuf, cnt, &pos);
parser            551 kernel/trace/trace.c 		if (ret < 0 || !trace_parser_loaded(&parser))
parser            559 kernel/trace/trace.c 		if (kstrtoul(parser.buffer, 0, &val))
parser            569 kernel/trace/trace.c 		trace_parser_clear(&parser);
parser            572 kernel/trace/trace.c 	trace_parser_put(&parser);
parser           1373 kernel/trace/trace.c int trace_parser_get_init(struct trace_parser *parser, int size)
parser           1375 kernel/trace/trace.c 	memset(parser, 0, sizeof(*parser));
parser           1377 kernel/trace/trace.c 	parser->buffer = kmalloc(size, GFP_KERNEL);
parser           1378 kernel/trace/trace.c 	if (!parser->buffer)
parser           1381 kernel/trace/trace.c 	parser->size = size;
parser           1388 kernel/trace/trace.c void trace_parser_put(struct trace_parser *parser)
parser           1390 kernel/trace/trace.c 	kfree(parser->buffer);
parser           1391 kernel/trace/trace.c 	parser->buffer = NULL;
parser           1405 kernel/trace/trace.c int trace_get_user(struct trace_parser *parser, const char __user *ubuf,
parser           1413 kernel/trace/trace.c 		trace_parser_clear(parser);
parser           1426 kernel/trace/trace.c 	if (!parser->cont) {
parser           1436 kernel/trace/trace.c 		parser->idx = 0;
parser           1448 kernel/trace/trace.c 		if (parser->idx < parser->size - 1)
parser           1449 kernel/trace/trace.c 			parser->buffer[parser->idx++] = ch;
parser           1463 kernel/trace/trace.c 		parser->buffer[parser->idx] = 0;
parser           1464 kernel/trace/trace.c 		parser->cont = false;
parser           1465 kernel/trace/trace.c 	} else if (parser->idx < parser->size - 1) {
parser           1466 kernel/trace/trace.c 		parser->cont = true;
parser           1467 kernel/trace/trace.c 		parser->buffer[parser->idx++] = ch;
parser           1469 kernel/trace/trace.c 		parser->buffer[parser->idx] = 0;
parser           1188 kernel/trace/trace.h static inline bool trace_parser_loaded(struct trace_parser *parser)
parser           1190 kernel/trace/trace.h 	return (parser->idx != 0);
parser           1193 kernel/trace/trace.h static inline bool trace_parser_cont(struct trace_parser *parser)
parser           1195 kernel/trace/trace.h 	return parser->cont;
parser           1198 kernel/trace/trace.h static inline void trace_parser_clear(struct trace_parser *parser)
parser           1200 kernel/trace/trace.h 	parser->cont = false;
parser           1201 kernel/trace/trace.h 	parser->idx = 0;
parser           1204 kernel/trace/trace.h extern int trace_parser_get_init(struct trace_parser *parser, int size);
parser           1205 kernel/trace/trace.h extern void trace_parser_put(struct trace_parser *parser);
parser           1206 kernel/trace/trace.h extern int trace_get_user(struct trace_parser *parser, const char __user *ubuf,
parser            860 kernel/trace/trace_events.c 	struct trace_parser parser;
parser            872 kernel/trace/trace_events.c 	if (trace_parser_get_init(&parser, EVENT_BUF_SIZE + 1))
parser            875 kernel/trace/trace_events.c 	read = trace_get_user(&parser, ubuf, cnt, ppos);
parser            877 kernel/trace/trace_events.c 	if (read >= 0 && trace_parser_loaded((&parser))) {
parser            880 kernel/trace/trace_events.c 		if (*parser.buffer == '!')
parser            883 kernel/trace/trace_events.c 		ret = ftrace_set_clr_event(tr, parser.buffer + !set, set);
parser            891 kernel/trace/trace_events.c 	trace_parser_put(&parser);
parser             92 net/bluetooth/hidp/hidp.h 	__u16 parser;
parser            134 net/bluetooth/hidp/sock.c 	__u16 parser;
parser            185 net/bluetooth/hidp/sock.c 		ca.parser = ca32.parser;
parser            570 net/core/skmsg.c 		strp_done(&psock->parser.strp);
parser            683 net/core/skmsg.c 	struct sk_psock_parser *parser;
parser            685 net/core/skmsg.c 	parser = container_of(strp, struct sk_psock_parser, strp);
parser            686 net/core/skmsg.c 	return container_of(parser, struct sk_psock, parser);
parser            787 net/core/skmsg.c 		strp_data_ready(&psock->parser.strp);
parser            818 net/core/skmsg.c 	psock->parser.enabled = false;
parser            819 net/core/skmsg.c 	return strp_init(&psock->parser.strp, sk, &cb);
parser            824 net/core/skmsg.c 	struct sk_psock_parser *parser = &psock->parser;
parser            826 net/core/skmsg.c 	if (parser->enabled)
parser            829 net/core/skmsg.c 	parser->saved_data_ready = sk->sk_data_ready;
parser            832 net/core/skmsg.c 	parser->enabled = true;
parser            837 net/core/skmsg.c 	struct sk_psock_parser *parser = &psock->parser;
parser            839 net/core/skmsg.c 	if (!parser->enabled)
parser            842 net/core/skmsg.c 	sk->sk_data_ready = parser->saved_data_ready;
parser            843 net/core/skmsg.c 	parser->saved_data_ready = NULL;
parser            844 net/core/skmsg.c 	strp_stop(&parser->strp);
parser            845 net/core/skmsg.c 	parser->enabled = false;
parser            118 net/core/sock_map.c 			if (psock->parser.enabled && stab->progs.skb_parser)
parser            206 net/core/sock_map.c 	if (skb_progs && !psock->parser.enabled) {
parser             47 sound/core/seq/seq_midi.c 	struct snd_midi_event *parser;
parser             80 sound/core/seq/seq_midi.c 		if (msynth->parser == NULL)
parser             84 sound/core/seq/seq_midi.c 			if (!snd_midi_event_encode_byte(msynth->parser,
parser            134 sound/core/seq/seq_midi.c 		snd_midi_event_reset_decode(msynth->parser);
parser            136 sound/core/seq/seq_midi.c 		if (msynth->parser == NULL)
parser            138 sound/core/seq/seq_midi.c 		len = snd_midi_event_decode(msynth->parser, msg, sizeof(msg), ev);
parser            142 sound/core/seq/seq_midi.c 			snd_midi_event_reset_decode(msynth->parser);
parser            153 sound/core/seq/seq_midi.c 	if (snd_midi_event_new(MAX_MIDI_EVENT_BUF, &msynth->parser) < 0)
parser            185 sound/core/seq/seq_midi.c 	snd_midi_event_reset_encode(msynth->parser);
parser            227 sound/core/seq/seq_midi.c 	snd_midi_event_reset_decode(msynth->parser);
parser            253 sound/core/seq/seq_midi.c 	snd_midi_event_free(msynth->parser);
parser             84 sound/core/seq/seq_virmidi.c 			snd_midi_event_reset_decode(vmidi->parser);
parser             86 sound/core/seq/seq_virmidi.c 			len = snd_midi_event_decode(vmidi->parser, msg, sizeof(msg), ev);
parser            146 sound/core/seq/seq_virmidi.c 		if (!snd_midi_event_encode_byte(vmidi->parser, input,
parser            187 sound/core/seq/seq_virmidi.c 	if (snd_midi_event_new(0, &vmidi->parser) < 0) {
parser            217 sound/core/seq/seq_virmidi.c 	if (snd_midi_event_new(MAX_MIDI_EVENT_BUF, &vmidi->parser) < 0) {
parser            244 sound/core/seq/seq_virmidi.c 	snd_midi_event_free(vmidi->parser);
parser            259 sound/core/seq/seq_virmidi.c 	snd_midi_event_free(vmidi->parser);
parser            611 sound/pci/hda/hda_sysfs.c 	void (*parser)(char *buf, struct hda_bus *bus, struct hda_codec **retc);
parser            617 sound/pci/hda/hda_sysfs.c 		.parser = parse_codec_mode,
parser            621 sound/pci/hda/hda_sysfs.c 		.parser = parse_model_mode,
parser            626 sound/pci/hda/hda_sysfs.c 		.parser = parse_verb_mode,
parser            631 sound/pci/hda/hda_sysfs.c 		.parser = parse_pincfg_mode,
parser            636 sound/pci/hda/hda_sysfs.c 		.parser = parse_hint_mode
parser            640 sound/pci/hda/hda_sysfs.c 		.parser = parse_vendor_id_mode,
parser            644 sound/pci/hda/hda_sysfs.c 		.parser = parse_subsystem_id_mode,
parser            648 sound/pci/hda/hda_sysfs.c 		.parser = parse_revision_id_mode,
parser            652 sound/pci/hda/hda_sysfs.c 		.parser = parse_chip_name_mode,
parser            728 sound/pci/hda/hda_sysfs.c 		else if (patch_items[line_mode].parser &&
parser            730 sound/pci/hda/hda_sysfs.c 			patch_items[line_mode].parser(buf, bus, &codec);
parser             31 tools/perf/pmu-events/jsmn.c static jsmntok_t *jsmn_alloc_token(jsmn_parser *parser,
parser             36 tools/perf/pmu-events/jsmn.c 	if ((unsigned)parser->toknext >= num_tokens)
parser             38 tools/perf/pmu-events/jsmn.c 	tok = &tokens[parser->toknext++];
parser             59 tools/perf/pmu-events/jsmn.c static jsmnerr_t jsmn_parse_primitive(jsmn_parser *parser, const char *js,
parser             66 tools/perf/pmu-events/jsmn.c 	start = parser->pos;
parser             68 tools/perf/pmu-events/jsmn.c 	for (; parser->pos < len; parser->pos++) {
parser             69 tools/perf/pmu-events/jsmn.c 		switch (js[parser->pos]) {
parser             88 tools/perf/pmu-events/jsmn.c 		if (js[parser->pos] < 32 || js[parser->pos] >= 127) {
parser             89 tools/perf/pmu-events/jsmn.c 			parser->pos = start;
parser             98 tools/perf/pmu-events/jsmn.c 	parser->pos = start;
parser            103 tools/perf/pmu-events/jsmn.c 	token = jsmn_alloc_token(parser, tokens, num_tokens);
parser            105 tools/perf/pmu-events/jsmn.c 		parser->pos = start;
parser            108 tools/perf/pmu-events/jsmn.c 	jsmn_fill_token(token, JSMN_PRIMITIVE, start, parser->pos);
parser            109 tools/perf/pmu-events/jsmn.c 	parser->pos--; /* parent sees closing brackets */
parser            116 tools/perf/pmu-events/jsmn.c static jsmnerr_t jsmn_parse_string(jsmn_parser *parser, const char *js,
parser            121 tools/perf/pmu-events/jsmn.c 	int start = parser->pos;
parser            124 tools/perf/pmu-events/jsmn.c 	parser->pos++;
parser            126 tools/perf/pmu-events/jsmn.c 	for (; parser->pos < len; parser->pos++) {
parser            127 tools/perf/pmu-events/jsmn.c 		char c = js[parser->pos];
parser            131 tools/perf/pmu-events/jsmn.c 			token = jsmn_alloc_token(parser, tokens, num_tokens);
parser            133 tools/perf/pmu-events/jsmn.c 				parser->pos = start;
parser            137 tools/perf/pmu-events/jsmn.c 					parser->pos);
parser            143 tools/perf/pmu-events/jsmn.c 			parser->pos++;
parser            144 tools/perf/pmu-events/jsmn.c 			switch (js[parser->pos]) {
parser            161 tools/perf/pmu-events/jsmn.c 				parser->pos = start;
parser            166 tools/perf/pmu-events/jsmn.c 	parser->pos = start;
parser            173 tools/perf/pmu-events/jsmn.c jsmnerr_t jsmn_parse(jsmn_parser *parser, const char *js, size_t len,
parser            180 tools/perf/pmu-events/jsmn.c 	for (; parser->pos < len; parser->pos++) {
parser            184 tools/perf/pmu-events/jsmn.c 		c = js[parser->pos];
parser            188 tools/perf/pmu-events/jsmn.c 			token = jsmn_alloc_token(parser, tokens, num_tokens);
parser            191 tools/perf/pmu-events/jsmn.c 			if (parser->toksuper != -1)
parser            192 tools/perf/pmu-events/jsmn.c 				tokens[parser->toksuper].size++;
parser            194 tools/perf/pmu-events/jsmn.c 			token->start = parser->pos;
parser            195 tools/perf/pmu-events/jsmn.c 			parser->toksuper = parser->toknext - 1;
parser            200 tools/perf/pmu-events/jsmn.c 			for (i = parser->toknext - 1; i >= 0; i--) {
parser            205 tools/perf/pmu-events/jsmn.c 					parser->toksuper = -1;
parser            206 tools/perf/pmu-events/jsmn.c 					token->end = parser->pos + 1;
parser            216 tools/perf/pmu-events/jsmn.c 					parser->toksuper = i;
parser            222 tools/perf/pmu-events/jsmn.c 			r = jsmn_parse_string(parser, js, len, tokens,
parser            226 tools/perf/pmu-events/jsmn.c 			if (parser->toksuper != -1)
parser            227 tools/perf/pmu-events/jsmn.c 				tokens[parser->toksuper].size++;
parser            263 tools/perf/pmu-events/jsmn.c 			r = jsmn_parse_primitive(parser, js, len, tokens,
parser            267 tools/perf/pmu-events/jsmn.c 			if (parser->toksuper != -1)
parser            268 tools/perf/pmu-events/jsmn.c 				tokens[parser->toksuper].size++;
parser            279 tools/perf/pmu-events/jsmn.c 	for (i = parser->toknext - 1; i >= 0; i--) {
parser            292 tools/perf/pmu-events/jsmn.c void jsmn_init(jsmn_parser *parser)
parser            294 tools/perf/pmu-events/jsmn.c 	parser->pos = 0;
parser            295 tools/perf/pmu-events/jsmn.c 	parser->toknext = 0;
parser            296 tools/perf/pmu-events/jsmn.c 	parser->toksuper = -1;
parser             56 tools/perf/pmu-events/jsmn.h void jsmn_init(jsmn_parser *parser);
parser             62 tools/perf/pmu-events/jsmn.h jsmnerr_t jsmn_parse(jsmn_parser *parser, const char *js,
parser             85 tools/perf/pmu-events/json.c 	jsmn_parser parser;
parser             98 tools/perf/pmu-events/json.c 	jsmn_init(&parser);
parser             99 tools/perf/pmu-events/json.c 	res = jsmn_parse(&parser, *map, *size, tokens,
parser            106 tools/perf/pmu-events/json.c 		*len = parser.toknext;
parser             15 tools/perf/util/expr.y %pure-parser
parser              1 tools/perf/util/parse-events.y %pure-parser
parser            532 tools/testing/selftests/bpf/test_progs.c 		.parser = parse_arg,