Lines Matching full:cpu

42 #include <machine/cpu.h>
108 core_pcpu_noop(struct pmc_mdep *md, int cpu)
111 (void) cpu;
116 core_pcpu_init(struct pmc_mdep *md, int cpu)
123 KASSERT(cpu >= 0 && cpu < pmc_cpu_max(),
124 ("[iaf,%d] insane cpu number %d", __LINE__, cpu));
126 PMCDBG1(MDP,INI,1,"core-init cpu=%d", cpu);
137 core_pcpu[cpu] = cc;
138 pc = pmc_pcpu[cpu];
141 ("[core,%d] NULL per-cpu structures cpu=%d", __LINE__, cpu));
145 PMC_PHW_CPU_TO_STATE(cpu) |
160 core_pcpu_fini(struct pmc_mdep *md, int cpu)
166 KASSERT(cpu >= 0 && cpu < pmc_cpu_max(),
167 ("[core,%d] insane cpu number (%d)", __LINE__, cpu));
169 PMCDBG1(MDP,INI,1,"core-pcpu-fini cpu=%d", cpu);
171 if ((cc = core_pcpu[cpu]) == NULL)
174 core_pcpu[cpu] = NULL;
176 pc = pmc_pcpu[cpu];
178 KASSERT(pc != NULL, ("[core,%d] NULL per-cpu %d state", __LINE__,
179 cpu));
222 iaf_allocate_pmc(int cpu, int ri, struct pmc *pm,
230 KASSERT(cpu >= 0 && cpu < pmc_cpu_max(),
231 ("[core,%d] illegal CPU %d", __LINE__, cpu));
312 iaf_config_pmc(int cpu, int ri, struct pmc *pm)
314 KASSERT(cpu >= 0 && cpu < pmc_cpu_max(),
315 ("[core,%d] illegal CPU %d", __LINE__, cpu));
320 PMCDBG3(MDP,CFG,1, "iaf-config cpu=%d ri=%d pm=%p", cpu, ri, pm);
322 KASSERT(core_pcpu[cpu] != NULL, ("[core,%d] null per-cpu %d", __LINE__,
323 cpu));
325 core_pcpu[cpu]->pc_corepmcs[ri + core_iaf_ri].phw_pmc = pm;
331 iaf_describe(int cpu, int ri, struct pmc_info *pi, struct pmc **ppmc)
335 phw = &core_pcpu[cpu]->pc_corepmcs[ri + core_iaf_ri];
352 iaf_get_config(int cpu, int ri, struct pmc **ppm)
354 *ppm = core_pcpu[cpu]->pc_corepmcs[ri + core_iaf_ri].phw_pmc;
371 iaf_read_pmc(int cpu, int ri, struct pmc *pm, pmc_value_t *v)
375 KASSERT(cpu >= 0 && cpu < pmc_cpu_max(),
376 ("[core,%d] illegal cpu value %d", __LINE__, cpu));
387 PMCDBG4(MDP,REA,1, "iaf-read cpu=%d ri=%d msr=0x%x -> v=%jx", cpu, ri,
394 iaf_release_pmc(int cpu, int ri, struct pmc *pmc)
396 PMCDBG3(MDP,REL,1, "iaf-release cpu=%d ri=%d pm=%p", cpu, ri, pmc);
398 KASSERT(cpu >= 0 && cpu < pmc_cpu_max(),
399 ("[core,%d] illegal CPU value %d", __LINE__, cpu));
403 KASSERT(core_pcpu[cpu]->pc_corepmcs[ri + core_iaf_ri].phw_pmc == NULL,
417 iaf_start_pmc(int cpu, int ri, struct pmc *pm)
421 KASSERT(cpu >= 0 && cpu < pmc_cpu_max(),
422 ("[core,%d] illegal CPU value %d", __LINE__, cpu));
426 PMCDBG2(MDP,STA,1,"iaf-start cpu=%d ri=%d", cpu, ri);
428 cc = core_pcpu[cpu];
443 iaf_stop_pmc(int cpu, int ri, struct pmc *pm)
447 KASSERT(cpu >= 0 && cpu < pmc_cpu_max(),
448 ("[core,%d] illegal CPU value %d", __LINE__, cpu));
452 PMCDBG2(MDP,STA,1,"iaf-stop cpu=%d ri=%d", cpu, ri);
454 cc = core_pcpu[cpu];
469 iaf_write_pmc(int cpu, int ri, struct pmc *pm, pmc_value_t v)
473 KASSERT(cpu >= 0 && cpu < pmc_cpu_max(),
474 ("[core,%d] illegal cpu value %d", __LINE__, cpu));
478 cc = core_pcpu[cpu];
491 PMCDBG6(MDP,WRI,1, "iaf-write cpu=%d ri=%d msr=0x%x v=%jx iafctrl=%jx "
492 "pmc=%jx", cpu, ri, IAF_RI_TO_MSR(ri), v,
712 iap_allocate_pmc(int cpu, int ri, struct pmc *pm,
718 KASSERT(cpu >= 0 && cpu < pmc_cpu_max(),
719 ("[core,%d] illegal CPU %d", __LINE__, cpu));
778 iap_config_pmc(int cpu, int ri, struct pmc *pm)
780 KASSERT(cpu >= 0 && cpu < pmc_cpu_max(),
781 ("[core,%d] illegal CPU %d", __LINE__, cpu));
786 PMCDBG3(MDP,CFG,1, "iap-config cpu=%d ri=%d pm=%p", cpu, ri, pm);
788 KASSERT(core_pcpu[cpu] != NULL, ("[core,%d] null per-cpu %d", __LINE__,
789 cpu));
791 core_pcpu[cpu]->pc_corepmcs[ri].phw_pmc = pm;
797 iap_describe(int cpu, int ri, struct pmc_info *pi, struct pmc **ppmc)
801 phw = &core_pcpu[cpu]->pc_corepmcs[ri];
818 iap_get_config(int cpu, int ri, struct pmc **ppm)
820 *ppm = core_pcpu[cpu]->pc_corepmcs[ri].phw_pmc;
837 iap_read_pmc(int cpu, int ri, struct pmc *pm, pmc_value_t *v)
841 KASSERT(cpu >= 0 && cpu < pmc_cpu_max(),
842 ("[core,%d] illegal cpu value %d", __LINE__, cpu));
852 PMCDBG4(MDP,REA,1, "iap-read cpu=%d ri=%d msr=0x%x -> v=%jx", cpu, ri,
859 iap_release_pmc(int cpu, int ri, struct pmc *pm)
863 PMCDBG3(MDP,REL,1, "iap-release cpu=%d ri=%d pm=%p", cpu, ri,
866 KASSERT(cpu >= 0 && cpu < pmc_cpu_max(),
867 ("[core,%d] illegal CPU value %d", __LINE__, cpu));
871 KASSERT(core_pcpu[cpu]->pc_corepmcs[ri].phw_pmc
878 iap_start_pmc(int cpu, int ri, struct pmc *pm)
883 KASSERT(cpu >= 0 && cpu < pmc_cpu_max(),
884 ("[core,%d] illegal CPU value %d", __LINE__, cpu));
888 cc = core_pcpu[cpu];
890 PMCDBG2(MDP,STA,1, "iap-start cpu=%d ri=%d", cpu, ri);
894 PMCDBG4(MDP,STA,2, "iap-start/2 cpu=%d ri=%d evselmsr=0x%x evsel=0x%x",
895 cpu, ri, IAP_EVSEL0 + ri, evsel);
921 iap_stop_pmc(int cpu, int ri, struct pmc *pm __unused)
924 KASSERT(cpu >= 0 && cpu < pmc_cpu_max(),
925 ("[core,%d] illegal cpu value %d", __LINE__, cpu));
929 PMCDBG2(MDP,STO,1, "iap-stop cpu=%d ri=%d", cpu, ri);
939 iap_write_pmc(int cpu, int ri, struct pmc *pm, pmc_value_t v)
942 KASSERT(cpu >= 0 && cpu < pmc_cpu_max(),
943 ("[core,%d] illegal cpu value %d", __LINE__, cpu));
952 PMCDBG4(MDP,WRI,1, "iap-write cpu=%d ri=%d msr=0x%x v=%jx", cpu, ri,
1010 PMCDBG3(MDP,INT, 1, "cpu=%d tf=%p um=%d", curcpu, (void *) tf,
1062 int error, found_interrupt = 0, n, cpu;
1068 cpu = curcpu;
1069 PMCDBG3(MDP,INT, 1, "cpu=%d tf=0x%p um=%d", cpu, (void *) tf,
1079 PMCDBG2(MDP,INT, 1, "cpu=%d intrstatus=%jx", cpu,
1088 cc = core_pcpu[cpu];
1116 PMCDBG4(MDP,INT, 1, "iaf-intr cpu=%d error=%d v=%jx(%jx)", curcpu,
1140 PMCDBG3(MDP,INT, 1, "iap-intr cpu=%d error=%d v=%jx", cpu, error,
1170 PMCDBG4(MDP, INT, 1, "cpu=%d fixedctrl=%jx globalctrl=%jx status=%jx",
1171 cpu, (uintmax_t) rdmsr(IAF_CTRL),
1264 ("[core,%d] non-null pcpu cpu %d", __LINE__, i));