Lines Matching refs:rsrcs
47 static int drd_rcm_cpu_config_request(drctl_rsrc_t *rsrcs, int nrsrc);
48 static int drd_rcm_cpu_config_notify(drctl_rsrc_t *rsrcs, int nrsrc);
49 static int drd_rcm_cpu_unconfig_request(drctl_rsrc_t *rsrcs, int nrsrc);
50 static int drd_rcm_cpu_unconfig_notify(drctl_rsrc_t *rsrcs, int nrsrc);
55 static int drd_rcm_mem_config_request(drctl_rsrc_t *rsrcs, int nrsrc);
56 static int drd_rcm_mem_config_notify(drctl_rsrc_t *rsrcs, int nrsrc);
57 static int drd_rcm_mem_unconfig_request(drctl_rsrc_t *rsrcs, int nrsrc);
58 static int drd_rcm_mem_unconfig_notify(drctl_rsrc_t *rsrcs, int nrsrc);
89 static int drd_rcm_online_cpu_notify(drctl_rsrc_t *rsrcs, int nrsrc);
90 static int drd_rcm_add_cpu_notify(drctl_rsrc_t *rsrcs, int nrsrc);
91 static int drd_rcm_del_cpu_request(drctl_rsrc_t *rsrcs, int nrsrc);
92 static int drd_rcm_offline_cpu_request(drctl_rsrc_t *rsrcs, int nrsrc);
93 static int drd_rcm_remove_cpu_notify(drctl_rsrc_t *rsrcs, int nrsrc);
94 static int drd_rcm_restore_cpu_notify(drctl_rsrc_t *rsrcs, int nrsrc);
95 static int drd_rcm_del_cpu_notify(drctl_rsrc_t *rsrcs, int nrsrc);
138 drd_rcm_cpu_config_request(drctl_rsrc_t *rsrcs, int nrsrc) in drd_rcm_cpu_config_request() argument
143 dump_cpu_rsrc_list(NULL, rsrcs, nrsrc); in drd_rcm_cpu_config_request()
151 rsrcs[idx].status = DRCTL_STATUS_ALLOW; in drd_rcm_cpu_config_request()
153 dump_cpu_rsrc_list("returning:", rsrcs, nrsrc); in drd_rcm_cpu_config_request()
159 drd_rcm_cpu_config_notify(drctl_rsrc_t *rsrcs, int nrsrc) in drd_rcm_cpu_config_notify() argument
164 dump_cpu_rsrc_list(NULL, rsrcs, nrsrc); in drd_rcm_cpu_config_notify()
167 if (drd_rcm_online_cpu_notify(rsrcs, nrsrc) != 0) { in drd_rcm_cpu_config_notify()
173 if (drd_rcm_add_cpu_notify(rsrcs, nrsrc) != 0) { in drd_rcm_cpu_config_notify()
178 dump_cpu_rsrc_list("returning:", rsrcs, nrsrc); in drd_rcm_cpu_config_notify()
184 drd_rcm_cpu_unconfig_request(drctl_rsrc_t *rsrcs, int nrsrc) in drd_rcm_cpu_unconfig_request() argument
190 dump_cpu_rsrc_list(NULL, rsrcs, nrsrc); in drd_rcm_cpu_unconfig_request()
193 if (drd_rcm_del_cpu_request(rsrcs, nrsrc) != 0) { in drd_rcm_cpu_unconfig_request()
199 if (drd_rcm_offline_cpu_request(rsrcs, nrsrc) != 0) { in drd_rcm_cpu_unconfig_request()
212 if (rsrcs[idx].status == DRCTL_STATUS_INIT) in drd_rcm_cpu_unconfig_request()
213 rsrcs[idx].status = DRCTL_STATUS_DENY; in drd_rcm_cpu_unconfig_request()
216 dump_cpu_rsrc_list("returning:", rsrcs, nrsrc); in drd_rcm_cpu_unconfig_request()
222 drd_rcm_cpu_unconfig_notify(drctl_rsrc_t *rsrcs, int nrsrc) in drd_rcm_cpu_unconfig_notify() argument
227 dump_cpu_rsrc_list(NULL, rsrcs, nrsrc); in drd_rcm_cpu_unconfig_notify()
234 (void) drd_rcm_remove_cpu_notify(rsrcs, nrsrc); in drd_rcm_cpu_unconfig_notify()
240 if (drd_rcm_restore_cpu_notify(rsrcs, nrsrc) != 0) { in drd_rcm_cpu_unconfig_notify()
246 if (drd_rcm_del_cpu_notify(rsrcs, nrsrc) != 0) { in drd_rcm_cpu_unconfig_notify()
251 dump_cpu_rsrc_list("returning:", rsrcs, nrsrc); in drd_rcm_cpu_unconfig_notify()
257 drd_rcm_online_cpu_notify(drctl_rsrc_t *rsrcs, int nrsrc) in drd_rcm_online_cpu_notify() argument
265 if ((rlist = drd_rcm_cpu_rlist_init(rsrcs, nrsrc, in drd_rcm_online_cpu_notify()
284 drd_rcm_add_cpu_notify(drctl_rsrc_t *rsrcs, int nrsrc) in drd_rcm_add_cpu_notify() argument
299 if ((rsrcs == NULL) || (nrsrc == 0)) { in drd_rcm_add_cpu_notify()
308 drd_dbg(" cpu[%d] = %d", idx, rsrcs[idx].res_cpu_id); in drd_rcm_add_cpu_notify()
309 cpus[idx] = rsrcs[idx].res_cpu_id; in drd_rcm_add_cpu_notify()
364 drd_rcm_del_cpu_request(drctl_rsrc_t *rsrcs, int nrsrc) in drd_rcm_del_cpu_request() argument
379 if ((rsrcs == NULL) || (nrsrc == 0)) { in drd_rcm_del_cpu_request()
388 cpus[idx] = rsrcs[idx].res_cpu_id; in drd_rcm_del_cpu_request()
443 rsrcs[idx].status = DRCTL_STATUS_DENY; in drd_rcm_del_cpu_request()
447 rsrcs[0].offset = (uintptr_t)strdup("unable to remove " in drd_rcm_del_cpu_request()
465 drd_rcm_offline_cpu_request(drctl_rsrc_t *rsrcs, int nrsrc) in drd_rcm_offline_cpu_request() argument
479 if ((rlist = drd_rcm_cpu_rlist_init(rsrcs, nrsrc, in drd_rcm_offline_cpu_request()
501 rsrc = cpu_rsrcstr_to_rsrc(rsrcstr, rsrcs, nrsrc); in drd_rcm_offline_cpu_request()
531 rsrc = cpu_rsrcstr_to_rsrc(rlist[idx], rsrcs, nrsrc); in drd_rcm_offline_cpu_request()
548 drd_rcm_remove_cpu_notify(drctl_rsrc_t *rsrcs, int nrsrc) in drd_rcm_remove_cpu_notify() argument
556 if ((rlist = drd_rcm_cpu_rlist_init(rsrcs, nrsrc, in drd_rcm_remove_cpu_notify()
575 drd_rcm_restore_cpu_notify(drctl_rsrc_t *rsrcs, int nrsrc) in drd_rcm_restore_cpu_notify() argument
587 if ((full_rlist = drd_rcm_cpu_rlist_init(rsrcs, nrsrc, in drd_rcm_restore_cpu_notify()
638 drd_rcm_del_cpu_notify(drctl_rsrc_t *rsrcs, int nrsrc) in drd_rcm_del_cpu_notify() argument
653 if ((rsrcs == NULL) || (nrsrc == 0)) { in drd_rcm_del_cpu_notify()
664 if (rsrcs[idx].status != DRCTL_STATUS_CONFIG_SUCCESS) in drd_rcm_del_cpu_notify()
666 drd_dbg(" cpu[%d] = %d", idx, rsrcs[idx].res_cpu_id); in drd_rcm_del_cpu_notify()
667 cpus[cidx] = rsrcs[idx].res_cpu_id; in drd_rcm_del_cpu_notify()
744 drd_rcm_cpu_rlist_init(drctl_rsrc_t *rsrcs, int nrsrc, int status) in drd_rcm_cpu_rlist_init() argument
753 if ((rsrcs == NULL) || (nrsrc == 0)) { in drd_rcm_cpu_rlist_init()
768 rsrcs[idx].res_cpu_id, rsrcs[idx].status, status); in drd_rcm_cpu_rlist_init()
774 if (rsrcs[idx].status != status) in drd_rcm_cpu_rlist_init()
778 (void) sprintf(rbuf, "%s%d", RCM_CPU, rsrcs[idx].res_cpu_id); in drd_rcm_cpu_rlist_init()
848 cpu_rsrcstr_to_rsrc(const char *rsrcstr, drctl_rsrc_t *rsrcs, int nrsrc) in cpu_rsrcstr_to_rsrc() argument
856 if (rsrcs[idx].res_cpu_id == cpuid) in cpu_rsrcstr_to_rsrc()
857 return (&rsrcs[idx]); in cpu_rsrcstr_to_rsrc()
957 dump_cpu_rsrc_list(char *prefix, drctl_rsrc_t *rsrcs, int nrsrc) in dump_cpu_rsrc_list() argument
972 errstr = (char *)(uintptr_t)rsrcs[idx].offset; in dump_cpu_rsrc_list()
975 rsrcs[idx].res_cpu_id, rsrcs[idx].status, in dump_cpu_rsrc_list()
1038 drd_rcm_io_config_notify(drctl_rsrc_t *rsrcs, int nrsrc) in drd_rcm_io_config_notify() argument
1214 dump_mem_rsrc_list(char *prefix, drctl_rsrc_t *rsrcs, int nrsrc) in dump_mem_rsrc_list() argument
1229 errstr = (char *)(uintptr_t)rsrcs[idx].offset; in dump_mem_rsrc_list()
1233 rsrcs[idx].res_mem_addr, rsrcs[idx].res_mem_size, in dump_mem_rsrc_list()
1234 rsrcs[idx].status, (errstr != NULL) ? errstr : ""); in dump_mem_rsrc_list()
1298 drd_rcm_mem_config_request(drctl_rsrc_t *rsrcs, int nrsrc) in drd_rcm_mem_config_request() argument
1304 if ((rsrcs == NULL) || (nrsrc == 0)) in drd_rcm_mem_config_request()
1306 dump_mem_rsrc_list(NULL, rsrcs, nrsrc); in drd_rcm_mem_config_request()
1314 rsrcs[idx].status = DRCTL_STATUS_ALLOW; in drd_rcm_mem_config_request()
1316 dump_mem_rsrc_list("returning:", rsrcs, nrsrc); in drd_rcm_mem_config_request()
1322 drd_rcm_mem_config_notify(drctl_rsrc_t *rsrcs, int nrsrc) in drd_rcm_mem_config_notify() argument
1330 if ((rsrcs == NULL) || (nrsrc == 0)) { in drd_rcm_mem_config_notify()
1334 dump_mem_rsrc_list(NULL, rsrcs, nrsrc); in drd_rcm_mem_config_notify()
1337 if (rsrcs[idx].status == DRCTL_STATUS_CONFIG_SUCCESS) in drd_rcm_mem_config_notify()
1338 change += rsrcs[idx].res_mem_size; in drd_rcm_mem_config_notify()
1340 idx, rsrcs[idx].res_mem_addr, rsrcs[idx].res_mem_size); in drd_rcm_mem_config_notify()
1349 drd_rcm_mem_unconfig_request(drctl_rsrc_t *rsrcs, int nrsrc) in drd_rcm_mem_unconfig_request() argument
1357 if ((rsrcs == NULL) || (nrsrc == 0)) { in drd_rcm_mem_unconfig_request()
1361 dump_mem_rsrc_list(NULL, rsrcs, nrsrc); in drd_rcm_mem_unconfig_request()
1365 idx, rsrcs[idx].res_mem_addr, rsrcs[idx].res_mem_size); in drd_rcm_mem_unconfig_request()
1366 change += rsrcs[idx].res_mem_size; in drd_rcm_mem_unconfig_request()
1380 rsrcs[idx].status = DRCTL_STATUS_DENY; in drd_rcm_mem_unconfig_request()
1384 rsrcs[0].offset = (uintptr_t)strdup("unable to remove " in drd_rcm_mem_unconfig_request()
1389 rsrcs[idx].status = DRCTL_STATUS_ALLOW; in drd_rcm_mem_unconfig_request()
1395 dump_mem_rsrc_list("returning:", rsrcs, nrsrc); in drd_rcm_mem_unconfig_request()
1400 drd_rcm_mem_unconfig_notify(drctl_rsrc_t *rsrcs, int nrsrc) in drd_rcm_mem_unconfig_notify() argument
1408 if ((rsrcs == NULL) || (nrsrc == 0)) { in drd_rcm_mem_unconfig_notify()
1412 dump_mem_rsrc_list(NULL, rsrcs, nrsrc); in drd_rcm_mem_unconfig_notify()
1424 if (rsrcs[idx].status != DRCTL_STATUS_CONFIG_SUCCESS) in drd_rcm_mem_unconfig_notify()
1425 change += rsrcs[idx].res_mem_size; in drd_rcm_mem_unconfig_notify()
1427 idx, rsrcs[idx].res_mem_addr, rsrcs[idx].res_mem_size); in drd_rcm_mem_unconfig_notify()