2 // Copyright (c) 2017 Intel Corporation
4 // Licensed under the Apache License, Version 2.0 (the "License");
5 // you may not use this file except in compliance with the License.
6 // You may obtain a copy of the License at
8 // http://www.apache.org/licenses/LICENSE-2.0
10 // Unless required by applicable law or agreed to in writing, software
11 // distributed under the License is distributed on an "AS IS" BASIS,
12 // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 // See the License for the specific language governing permissions and
14 // limitations under the License.
21 #include "pipeline_be.h"
23 enum thread_msg_req_type {
24 THREAD_MSG_REQ_PIPELINE_ENABLE = 0,
25 THREAD_MSG_REQ_PIPELINE_DISABLE,
26 THREAD_MSG_REQ_HEADROOM_READ,
30 struct thread_msg_req {
31 enum thread_msg_req_type type;
34 struct thread_msg_rsp {
41 struct thread_pipeline_enable_msg_req {
42 enum thread_msg_req_type type;
46 pipeline_be_op_run f_run;
47 pipeline_be_op_timer f_timer;
48 uint64_t timer_period;
51 struct thread_pipeline_enable_msg_rsp {
58 struct thread_pipeline_disable_msg_req {
59 enum thread_msg_req_type type;
64 struct thread_pipeline_disable_msg_rsp {
71 struct thread_headroom_read_msg_req {
72 enum thread_msg_req_type type;
75 struct thread_headroom_read_msg_rsp {
78 double headroom_ratio;
81 #endif /* THREAD_H_ */