Lines Matching refs:link_remote
16 void log_multidomain_link_on_error(struct log_multidomain_link *link_remote, int err) in log_multidomain_link_on_error() argument
18 link_remote->status = err; in log_multidomain_link_on_error()
21 void log_multidomain_link_on_started(struct log_multidomain_link *link_remote, int err) in log_multidomain_link_on_started() argument
23 link_remote->status = err; in log_multidomain_link_on_started()
26 link_remote->ready = true; in log_multidomain_link_on_started()
30 void log_multidomain_link_on_recv_cb(struct log_multidomain_link *link_remote, in log_multidomain_link_on_recv_cb() argument
36 link_remote->status = -EIO; in log_multidomain_link_on_recv_cb()
39 link_remote->status = 0; in log_multidomain_link_on_recv_cb()
44 z_log_msg_enqueue(link_remote->link, in log_multidomain_link_on_recv_cb()
49 link_remote->dst.count = msg->data.domain_cnt.count; in log_multidomain_link_on_recv_cb()
52 link_remote->dst.count = msg->data.source_cnt.count; in log_multidomain_link_on_recv_cb()
56 size_t slen = MIN(len - 1, *link_remote->dst.name.len - 1); in log_multidomain_link_on_recv_cb()
58 *link_remote->dst.name.len = len - 1; in log_multidomain_link_on_recv_cb()
59 memcpy(link_remote->dst.name.dst, msg->data.domain_name.name, slen); in log_multidomain_link_on_recv_cb()
60 link_remote->dst.name.dst[slen] = '\0'; in log_multidomain_link_on_recv_cb()
65 size_t slen = MIN(len - 1, *link_remote->dst.name.len - 1); in log_multidomain_link_on_recv_cb()
67 *link_remote->dst.name.len = len - 1; in log_multidomain_link_on_recv_cb()
68 memcpy(link_remote->dst.name.dst, msg->data.source_name.name, slen); in log_multidomain_link_on_recv_cb()
69 link_remote->dst.name.dst[slen] = '\0'; in log_multidomain_link_on_recv_cb()
73 link_remote->dst.levels.level = msg->data.levels.level; in log_multidomain_link_on_recv_cb()
74 link_remote->dst.levels.runtime_level = msg->data.levels.runtime_level; in log_multidomain_link_on_recv_cb()
77 link_remote->dst.set_runtime_level.level = msg->data.set_rt_level.runtime_level; in log_multidomain_link_on_recv_cb()
89 k_sem_give(&link_remote->rdy_sem); in log_multidomain_link_on_recv_cb()
92 static int getter_msg_process(struct log_multidomain_link *link_remote, in getter_msg_process() argument
97 err = link_remote->transport_api->send(link_remote, msg, msg_size); in getter_msg_process()
102 err = k_sem_take(&link_remote->rdy_sem, K_MSEC(1000)); in getter_msg_process()
107 return (link_remote->status == Z_LOG_MULTIDOMAIN_STATUS_OK) ? 0 : -EIO; in getter_msg_process()
110 static int link_remote_get_domain_count(struct log_multidomain_link *link_remote, in link_remote_get_domain_count() argument
118 err = getter_msg_process(link_remote, &msg, sizeof(msg)); in link_remote_get_domain_count()
123 *cnt = link_remote->dst.count; in link_remote_get_domain_count()
128 static int link_remote_get_source_count(struct log_multidomain_link *link_remote, in link_remote_get_source_count() argument
138 err = getter_msg_process(link_remote, &msg, sizeof(msg)); in link_remote_get_source_count()
143 *cnt = link_remote->dst.count; in link_remote_get_source_count()
148 static int link_remote_ready(struct log_multidomain_link *link_remote) in link_remote_ready() argument
155 err = getter_msg_process(link_remote, &msg, sizeof(msg)); in link_remote_ready()
166 struct log_multidomain_link *link_remote = link->ctx; in link_remote_initiate() local
168 link_remote->link = link; in link_remote_initiate()
169 k_sem_init(&link_remote->rdy_sem, 0, 1); in link_remote_initiate()
171 return link_remote->transport_api->init(link_remote); in link_remote_initiate()
176 struct log_multidomain_link *link_remote = link->ctx; in link_remote_activate() local
179 if (!link_remote->ready) { in link_remote_activate()
183 if (link_remote->status != 0) { in link_remote_activate()
184 return link_remote->status; in link_remote_activate()
189 err = link_remote_get_domain_count(link_remote, &cnt); in link_remote_activate()
201 err = link_remote_get_source_count(link_remote, i, &cnt); in link_remote_activate()
209 err = link_remote_ready(link_remote); in link_remote_activate()
218 struct log_multidomain_link *link_remote = link->ctx; in link_remote_get_domain_name() local
226 link_remote->dst.name.dst = name; in link_remote_get_domain_name()
227 link_remote->dst.name.len = length; in link_remote_get_domain_name()
229 err = getter_msg_process(link_remote, &msg, sizeof(msg)); in link_remote_get_domain_name()
241 struct log_multidomain_link *link_remote = link->ctx; in link_remote_get_source_name() local
253 link_remote->dst.name.dst = name; in link_remote_get_source_name()
254 link_remote->dst.name.len = length; in link_remote_get_source_name()
256 err = getter_msg_process(link_remote, &msg, sizeof(msg)); in link_remote_get_source_name()
268 struct log_multidomain_link *link_remote = link->ctx; in link_remote_get_levels() local
280 err = getter_msg_process(link_remote, &msg, sizeof(msg)); in link_remote_get_levels()
286 *level = link_remote->dst.levels.level; in link_remote_get_levels()
289 *runtime_level = link_remote->dst.levels.runtime_level; in link_remote_get_levels()
299 struct log_multidomain_link *link_remote = link->ctx; in link_remote_set_runtime_level() local
312 err = getter_msg_process(link_remote, &msg, sizeof(msg)); in link_remote_set_runtime_level()