Lines Matching refs:walk_state

63 acpi_ps_get_arguments(struct acpi_walk_state *walk_state,
74 * PARAMETERS: walk_state - Current state
85 acpi_ps_get_arguments(struct acpi_walk_state *walk_state,
92 ACPI_FUNCTION_TRACE_PTR(ps_get_arguments, walk_state);
103 acpi_ps_get_next_simple_arg(&(walk_state->parser_state),
104 GET_CURRENT_ARG_TYPE(walk_state->
112 acpi_ps_get_next_namepath(walk_state,
113 &(walk_state->parser_state), op,
119 walk_state->arg_types = 0;
126 while (GET_CURRENT_ARG_TYPE(walk_state->arg_types)
127 && !walk_state->arg_count) {
128 walk_state->aml_offset =
129 (u32) ACPI_PTR_DIFF(walk_state->parser_state.aml,
130 walk_state->parser_state.
134 acpi_ps_get_next_arg(walk_state,
135 &(walk_state->parser_state),
137 (walk_state->arg_types), &arg);
143 arg->common.aml_offset = walk_state->aml_offset;
147 INCREMENT_ARG_LIST(walk_state->arg_types);
154 if ((walk_state->pass_number <= ACPI_IMODE_LOAD_PASS2) &&
155 ((walk_state->parse_flags & ACPI_PARSE_DISASSEMBLE) == 0)) {
173 if (walk_state->pass_number ==
179 (walk_state->
183 walk_state->
192 walk_state->parser_state.aml =
193 walk_state->parser_state.pkg_end;
194 walk_state->arg_count = 0;
204 if ((walk_state->pass_number ==
221 walk_state->
242 op->named.data = walk_state->parser_state.aml;
244 (walk_state->parser_state.pkg_end -
245 walk_state->parser_state.aml);
249 walk_state->parser_state.aml =
250 walk_state->parser_state.pkg_end;
251 walk_state->arg_count = 0;
261 && (walk_state->pass_number <=
269 (walk_state->parser_state.pkg_end -
274 walk_state->parser_state.aml =
275 walk_state->parser_state.pkg_end;
276 walk_state->arg_count = 0;
282 if (walk_state->control_state) {
283 walk_state->control_state->control.package_end =
284 walk_state->parser_state.pkg_end;
381 * PARAMETERS: walk_state - Current state
390 acpi_status acpi_ps_parse_loop(struct acpi_walk_state *walk_state)
397 ACPI_FUNCTION_TRACE_PTR(ps_parse_loop, walk_state);
399 if (walk_state->descending_callback == NULL) {
403 parser_state = &walk_state->parser_state;
404 walk_state->arg_types = 0;
408 if (walk_state->walk_type & ACPI_WALK_METHOD_RESTART) {
422 && (walk_state->control_state)
423 && (walk_state->control_state->common.state ==
429 walk_state->op = NULL;
431 acpi_ds_get_predicate_value(walk_state,
448 acpi_ps_next_parse_state(walk_state, op,
453 &walk_state->arg_types,
454 &walk_state->arg_count);
457 } else if (walk_state->prev_op) {
461 op = walk_state->prev_op;
462 walk_state->arg_types = walk_state->prev_arg_types;
473 acpi_ps_create_op(walk_state, aml_op_start, &op);
488 acpi_ps_complete_op(walk_state, &op,
497 op->common.aml_offset = walk_state->aml_offset;
499 if (walk_state->op_info) {
503 walk_state->op_info->name, op,
513 walk_state->arg_count = 0;
517 if (walk_state->arg_types) {
522 acpi_ps_get_arguments(walk_state, aml_op_start, op);
525 acpi_ps_complete_op(walk_state, &op,
537 if (walk_state->arg_count) {
543 walk_state->arg_types,
544 walk_state->arg_count);
547 acpi_ps_complete_op(walk_state, &op,
564 walk_state->op_info =
566 if (walk_state->op_info->flags & AML_NAMED) {
582 if (walk_state->op_info->flags & AML_CREATE) {
605 if (walk_state->ascending_callback != NULL) {
606 walk_state->op = op;
607 walk_state->opcode = op->common.aml_opcode;
609 status = walk_state->ascending_callback(walk_state);
611 acpi_ps_next_parse_state(walk_state, op, status);
617 status = acpi_ps_complete_op(walk_state, &op, status);
624 status = acpi_ps_complete_final_op(walk_state, op, status);