Lines Matching refs:pcc_ss_id
97 #define GET_PCC_VADDR(offs, pcc_ss_id) (pcc_data[pcc_ss_id]->pcc_channel->shmem + \ argument
234 static int check_pcc_chan(int pcc_ss_id, bool chk_err_bit) in check_pcc_chan() argument
237 struct cppc_pcc_data *pcc_ss_data = pcc_data[pcc_ss_id]; in check_pcc_chan()
260 pcc_ss_id, ret); in check_pcc_chan()
269 static int send_pcc_cmd(int pcc_ss_id, u16 cmd) in send_pcc_cmd() argument
272 struct cppc_pcc_data *pcc_ss_data = pcc_data[pcc_ss_id]; in send_pcc_cmd()
288 send_pcc_cmd(pcc_ss_id, CMD_WRITE); in send_pcc_cmd()
290 ret = check_pcc_chan(pcc_ss_id, false); in send_pcc_cmd()
325 pcc_ss_id); in send_pcc_cmd()
347 pcc_ss_id, cmd, ret); in send_pcc_cmd()
352 ret = check_pcc_chan(pcc_ss_id, true); in send_pcc_cmd()
631 static int pcc_data_alloc(int pcc_ss_id) in pcc_data_alloc() argument
633 if (pcc_ss_id < 0 || pcc_ss_id >= MAX_PCC_SUBSPACES) in pcc_data_alloc()
636 if (pcc_data[pcc_ss_id]) { in pcc_data_alloc()
637 pcc_data[pcc_ss_id]->refcount++; in pcc_data_alloc()
639 pcc_data[pcc_ss_id] = kzalloc_obj(struct cppc_pcc_data); in pcc_data_alloc()
640 if (!pcc_data[pcc_ss_id]) in pcc_data_alloc()
642 pcc_data[pcc_ss_id]->refcount++; in pcc_data_alloc()
947 int pcc_ss_id = per_cpu(cpu_pcc_subspace_idx, pr->id); in acpi_cppc_processor_exit() local
949 if (pcc_ss_id >= 0 && pcc_data[pcc_ss_id]) { in acpi_cppc_processor_exit()
950 if (pcc_data[pcc_ss_id]->pcc_channel_acquired) { in acpi_cppc_processor_exit()
951 pcc_data[pcc_ss_id]->refcount--; in acpi_cppc_processor_exit()
952 if (!pcc_data[pcc_ss_id]->refcount) { in acpi_cppc_processor_exit()
953 pcc_mbox_free_channel(pcc_data[pcc_ss_id]->pcc_channel); in acpi_cppc_processor_exit()
954 kfree(pcc_data[pcc_ss_id]); in acpi_cppc_processor_exit()
955 pcc_data[pcc_ss_id] = NULL; in acpi_cppc_processor_exit()
1016 int pcc_ss_id = per_cpu(cpu_pcc_subspace_idx, cpu); in cpc_read() local
1042 } else if (reg->space_id == ACPI_ADR_SPACE_PLATFORM_COMM && pcc_ss_id >= 0) { in cpc_read()
1049 vaddr = GET_PCC_VADDR(reg->address, pcc_ss_id); in cpc_read()
1078 size, pcc_ss_id); in cpc_read()
1095 int pcc_ss_id = per_cpu(cpu_pcc_subspace_idx, cpu); in cpc_write() local
1115 } else if (reg->space_id == ACPI_ADR_SPACE_PLATFORM_COMM && pcc_ss_id >= 0) { in cpc_write()
1122 vaddr = GET_PCC_VADDR(reg->address, pcc_ss_id); in cpc_write()
1179 size, pcc_ss_id); in cpc_write()
1193 int pcc_ss_id = per_cpu(cpu_pcc_subspace_idx, cpu); in cppc_get_reg_val_in_pcc() local
1197 if (pcc_ss_id < 0) { in cppc_get_reg_val_in_pcc()
1202 pcc_ss_data = pcc_data[pcc_ss_id]; in cppc_get_reg_val_in_pcc()
1206 if (send_pcc_cmd(pcc_ss_id, CMD_READ) >= 0) in cppc_get_reg_val_in_pcc()
1246 int pcc_ss_id = per_cpu(cpu_pcc_subspace_idx, cpu); in cppc_set_reg_val_in_pcc() local
1250 if (pcc_ss_id < 0) { in cppc_set_reg_val_in_pcc()
1259 pcc_ss_data = pcc_data[pcc_ss_id]; in cppc_set_reg_val_in_pcc()
1263 ret = send_pcc_cmd(pcc_ss_id, CMD_WRITE); in cppc_set_reg_val_in_pcc()
1359 int pcc_ss_id = per_cpu(cpu_pcc_subspace_idx, cpunum); in cppc_get_perf_caps() local
1383 if (pcc_ss_id < 0) { in cppc_get_perf_caps()
1387 pcc_ss_data = pcc_data[pcc_ss_id]; in cppc_get_perf_caps()
1391 if (send_pcc_cmd(pcc_ss_id, CMD_READ) < 0) { in cppc_get_perf_caps()
1519 int pcc_ss_id = per_cpu(cpu_pcc_subspace_idx, cpunum); in cppc_get_perf_ctrs() local
1536 if (pcc_ss_id < 0) { in cppc_get_perf_ctrs()
1540 pcc_ss_data = pcc_data[pcc_ss_id]; in cppc_get_perf_ctrs()
1544 if (send_pcc_cmd(pcc_ss_id, CMD_READ) < 0) { in cppc_get_perf_ctrs()
1591 int pcc_ss_id = per_cpu(cpu_pcc_subspace_idx, cpu); in cppc_set_epp_perf() local
1614 if (pcc_ss_id < 0) { in cppc_set_epp_perf()
1631 pcc_ss_data = pcc_data[pcc_ss_id]; in cppc_set_epp_perf()
1635 ret = send_pcc_cmd(pcc_ss_id, CMD_WRITE); in cppc_set_epp_perf()
1805 int pcc_ss_id = per_cpu(cpu_pcc_subspace_idx, cpu); in cppc_get_perf() local
1829 if (pcc_ss_id < 0) { in cppc_get_perf()
1833 pcc_ss_data = pcc_data[pcc_ss_id]; in cppc_get_perf()
1837 if (send_pcc_cmd(pcc_ss_id, CMD_READ) < 0) { in cppc_get_perf()
1897 int pcc_ss_id = per_cpu(cpu_pcc_subspace_idx, cpu); in cppc_set_perf() local
1918 if (pcc_ss_id < 0) { in cppc_set_perf()
1922 pcc_ss_data = pcc_data[pcc_ss_id]; in cppc_set_perf()
1925 ret = check_pcc_chan(pcc_ss_id, false); in cppc_set_perf()
2004 send_pcc_cmd(pcc_ss_id, CMD_WRITE); in cppc_set_perf()
2101 int pcc_ss_id = per_cpu(cpu_pcc_subspace_idx, cpu_num); in cppc_get_transition_latency() local
2113 if (!CPC_IN_PCC(desired_reg) || pcc_ss_id < 0) in cppc_get_transition_latency()
2116 pcc_ss_data = pcc_data[pcc_ss_id]; in cppc_get_transition_latency()