Lines Matching refs:walk_state

21 static acpi_status acpi_ps_get_aml_opcode(struct acpi_walk_state *walk_state);
27 * PARAMETERS: walk_state - Current state
35 static acpi_status acpi_ps_get_aml_opcode(struct acpi_walk_state *walk_state)
39 ACPI_FUNCTION_TRACE_PTR(ps_get_aml_opcode, walk_state);
41 walk_state->aml = walk_state->parser_state.aml;
42 walk_state->opcode = acpi_ps_peek_opcode(&(walk_state->parser_state));
50 walk_state->op_info = acpi_ps_get_opcode_info(walk_state->opcode);
52 switch (walk_state->op_info->class) {
59 walk_state->opcode = AML_INT_NAMEPATH_OP;
60 walk_state->arg_types = ARGP_NAMESTRING;
67 if (walk_state->pass_number == 2) {
69 (u32)ACPI_PTR_DIFF(walk_state->aml,
70 walk_state->
76 walk_state->opcode,
80 ACPI_DUMP_BUFFER((walk_state->parser_state.aml - 16),
90 walk_state->opcode,
99 acpi_ut_dump_buffer(((u8 *)walk_state->parser_state.
118 walk_state->parser_state.aml++;
119 if (walk_state->opcode > 0xFF) { /* Can only happen if first byte is 0x5B */
120 walk_state->parser_state.aml++;
129 walk_state->parser_state.aml +=
130 acpi_ps_get_opcode_size(walk_state->opcode);
131 walk_state->arg_types = walk_state->op_info->parse_args;
142 * PARAMETERS: walk_state - Current state
154 acpi_ps_build_named_op(struct acpi_walk_state *walk_state,
162 ACPI_FUNCTION_TRACE_PTR(ps_build_named_op, walk_state);
166 unnamed_op->common.aml_opcode = walk_state->opcode;
172 while (GET_CURRENT_ARG_TYPE(walk_state->arg_types) &&
173 (GET_CURRENT_ARG_TYPE(walk_state->arg_types) != ARGP_NAME)) {
174 ASL_CV_CAPTURE_COMMENTS(walk_state);
176 acpi_ps_get_next_arg(walk_state,
177 &(walk_state->parser_state),
178 GET_CURRENT_ARG_TYPE(walk_state->
185 INCREMENT_ARG_LIST(walk_state->arg_types);
190 ASL_CV_CAPTURE_COMMENTS(walk_state);
203 if (!GET_CURRENT_ARG_TYPE(walk_state->arg_types)) {
209 INCREMENT_ARG_LIST(walk_state->arg_types);
215 walk_state->op = NULL;
217 status = walk_state->descending_callback(walk_state, op);
230 status = acpi_ps_next_parse_state(walk_state, *op, status);
287 * PARAMETERS: walk_state - Current state
298 acpi_ps_create_op(struct acpi_walk_state *walk_state,
308 ACPI_FUNCTION_TRACE_PTR(ps_create_op, walk_state);
310 status = acpi_ps_get_aml_opcode(walk_state);
320 walk_state->op_info = acpi_ps_get_opcode_info(walk_state->opcode);
321 op = acpi_ps_alloc_op(walk_state->opcode, aml_op_start);
326 if (walk_state->op_info->flags & AML_NAMED) {
328 acpi_ps_build_named_op(walk_state, aml_op_start, op,
334 && walk_state->opcode == AML_EXTERNAL_OP
341 * external declaration opcode. Setting walk_state->Aml to
342 * walk_state->parser_state.Aml + 2 moves increments the
343 * walk_state->Aml past the object type and the paramcount of the
346 walk_state->aml = walk_state->parser_state.aml + 2;
347 walk_state->parser_state.aml = walk_state->aml;
361 if (walk_state->op_info->flags & AML_CREATE) {
370 if (walk_state->opcode == AML_BANK_FIELD_OP) {
379 parent_scope = acpi_ps_get_parent_scope(&(walk_state->parser_state));
405 if (walk_state->descending_callback != NULL) {
410 walk_state->op = *new_op = op;
412 status = walk_state->descending_callback(walk_state, &op);
413 status = acpi_ps_next_parse_state(walk_state, op, status);
426 * PARAMETERS: walk_state - Current state
437 acpi_ps_complete_op(struct acpi_walk_state *walk_state,
442 ACPI_FUNCTION_TRACE_PTR(ps_complete_op, walk_state);
447 walk_state->parser_state.scope->parse_scope.arg_count--;
451 status2 = acpi_ps_complete_this_op(walk_state, *op);
467 walk_state->prev_op = NULL;
468 walk_state->prev_arg_types = walk_state->arg_types;
473 acpi_ps_pop_scope(&(walk_state->parser_state), op,
474 &walk_state->arg_types,
475 &walk_state->arg_count);
478 walk_state->op = *op;
479 walk_state->op_info =
481 walk_state->opcode = (*op)->common.aml_opcode;
483 status = walk_state->ascending_callback(walk_state);
484 (void)acpi_ps_next_parse_state(walk_state, *op, status);
486 status2 = acpi_ps_complete_this_op(walk_state, *op);
500 acpi_ps_pop_scope(&(walk_state->parser_state), op,
501 &walk_state->arg_types,
502 &walk_state->arg_count);
507 walk_state->op = *op;
508 walk_state->op_info =
510 walk_state->opcode = (*op)->common.aml_opcode;
512 status = walk_state->ascending_callback(walk_state);
513 (void)acpi_ps_next_parse_state(walk_state, *op, status);
515 status2 = acpi_ps_complete_this_op(walk_state, *op);
528 acpi_ps_complete_this_op(walk_state, *op);
535 (&walk_state->control_state));
538 acpi_ps_pop_scope(&(walk_state->parser_state), op,
539 &walk_state->arg_types,
540 &walk_state->arg_count);
566 acpi_ps_complete_this_op(walk_state, *op);
572 acpi_ps_pop_scope(&(walk_state->parser_state), op,
573 &walk_state->arg_types,
574 &walk_state->arg_count);
584 &walk_state->arg_types,
585 &walk_state->arg_count);
588 walk_state->prev_op = NULL;
589 walk_state->prev_arg_types = walk_state->arg_types;
591 if (walk_state->parse_flags & ACPI_PARSE_MODULE_LEVEL) {
608 if (acpi_ps_has_completed_scope(&(walk_state->parser_state))) {
609 acpi_ps_pop_scope(&(walk_state->parser_state), op,
610 &walk_state->arg_types,
611 &walk_state->arg_count);
624 * PARAMETERS: walk_state - Current state
636 acpi_ps_complete_final_op(struct acpi_walk_state *walk_state,
641 ACPI_FUNCTION_TRACE_PTR(ps_complete_final_op, walk_state);
653 if (walk_state->ascending_callback != NULL) {
654 walk_state->op = op;
655 walk_state->op_info =
658 walk_state->opcode = op->common.aml_opcode;
661 walk_state->ascending_callback(walk_state);
663 acpi_ps_next_parse_state(walk_state, op,
667 acpi_ps_complete_op(walk_state, &op,
682 (walk_state, op);
691 (walk_state->
694 &walk_state->
696 &walk_state->
709 acpi_ps_complete_this_op(walk_state,
715 status2 = acpi_ps_complete_this_op(walk_state, op);
721 acpi_ps_pop_scope(&(walk_state->parser_state), &op,
722 &walk_state->arg_types,
723 &walk_state->arg_count);