Lines Matching full:processors
27 /* Number of cores (logical processors) */
70 …* As these are all new processors, there is hope that this table won't uncontrollably grow over ti…
497 * @param cluster_leaders - indices of core clusters' leaders in the @p processors array.
498 * @param processors_count - number of usable logical processors in the system.
499 …* @param[in,out] processors - array of logical processor descriptions with pre-parsed MIDR, maximu…
501 …* Upon successful return, processors[i].midr for all clusters' leaders…
516 struct cpuinfo_arm_linux_processor processors[restrict static processors_count], in cpuinfo_arm_linux_detect_cluster_midr_by_chipset()
530 …if (cluster_configs[c].cluster_cores[cluster] != processors[cluster_leader].package_processor_coun… in cpuinfo_arm_linux_detect_cluster_midr_by_chipset()
542 if (processors[cluster_leader].flags & CPUINFO_ARM_LINUX_VALID_IMPLEMENTER) { in cpuinfo_arm_linux_detect_cluster_midr_by_chipset()
545 if (processors[cluster_leader].flags & CPUINFO_ARM_LINUX_VALID_VARIANT) { in cpuinfo_arm_linux_detect_cluster_midr_by_chipset()
548 if (processors[cluster_leader].flags & CPUINFO_ARM_LINUX_VALID_PART) { in cpuinfo_arm_linux_detect_cluster_midr_by_chipset()
551 if (processors[cluster_leader].flags & CPUINFO_ARM_LINUX_VALID_REVISION) { in cpuinfo_arm_linux_detect_cluster_midr_by_chipset()
556 … if ((processors[cluster_leader].midr ^ cluster_configs[c].cluster_midr[cluster]) & midr_mask) { in cpuinfo_arm_linux_detect_cluster_midr_by_chipset()
558 processors[cluster_leader].midr, cluster_configs[c].cluster_midr[cluster]); in cpuinfo_arm_linux_detect_cluster_midr_by_chipset()
567 processors[cluster_leader].midr = cluster_configs[c].cluster_midr[cluster]; in cpuinfo_arm_linux_detect_cluster_midr_by_chipset()
568 processors[cluster_leader].flags |= CPUINFO_ARM_LINUX_VALID_MIDR; in cpuinfo_arm_linux_detect_cluster_midr_by_chipset()
586 …ocessor_with_midr - index of the last logical processor with known MIDR in the @p processors array.
587 * @param cluster_leaders - indices of core clusters' leaders in the @p processors array.
588 …* @param[in,out] processors - array of logical processor descriptions with pre-parsed MIDR, maximu…
590 …* Upon successful return, processors[i].midr for all core clusters' le…
606 struct cpuinfo_arm_linux_processor processors[restrict static last_processor_with_midr], in cpuinfo_arm_linux_detect_cluster_midr_by_big_little_heuristic()
615 …(processors[processors[last_processor_with_midr].package_leader_id].flags & CPUINFO_ARM_LINUX_VALI… in cpuinfo_arm_linux_detect_cluster_midr_by_big_little_heuristic()
616 const uint32_t big_midr = processors[processors[last_processor_with_midr].package_leader_id].midr; in cpuinfo_arm_linux_detect_cluster_midr_by_big_little_heuristic()
623 …if (processors[little_cluster_leader].flags & processors[other_cluster_leader].flags & CPUINFO_LIN… in cpuinfo_arm_linux_detect_cluster_midr_by_big_little_heuristic()
624 …if (processors[little_cluster_leader].max_frequency > processors[other_cluster_leader].max_frequen… in cpuinfo_arm_linux_detect_cluster_midr_by_big_little_heuristic()
636 if (processors[cluster_leader].flags & CPUINFO_ARM_LINUX_VALID_IMPLEMENTER) { in cpuinfo_arm_linux_detect_cluster_midr_by_big_little_heuristic()
639 if (processors[cluster_leader].flags & CPUINFO_ARM_LINUX_VALID_VARIANT) { in cpuinfo_arm_linux_detect_cluster_midr_by_big_little_heuristic()
642 if (processors[cluster_leader].flags & CPUINFO_ARM_LINUX_VALID_PART) { in cpuinfo_arm_linux_detect_cluster_midr_by_big_little_heuristic()
645 if (processors[cluster_leader].flags & CPUINFO_ARM_LINUX_VALID_REVISION) { in cpuinfo_arm_linux_detect_cluster_midr_by_big_little_heuristic()
651 if ((processors[cluster_leader].midr ^ midr) & midr_mask) { in cpuinfo_arm_linux_detect_cluster_midr_by_big_little_heuristic()
654 processors[cluster_leader].midr, cluster_leader, midr); in cpuinfo_arm_linux_detect_cluster_midr_by_big_little_heuristic()
663 if (bitmask_all(processors[cluster_leader].flags, CPUINFO_ARM_LINUX_VALID_MIDR)) { in cpuinfo_arm_linux_detect_cluster_midr_by_big_little_heuristic()
670 processors[cluster_leader].midr = midr; in cpuinfo_arm_linux_detect_cluster_midr_by_big_little_heuristic()
671 processors[cluster_leader].flags |= midr_flags; in cpuinfo_arm_linux_detect_cluster_midr_by_big_little_heuristic()
682 * @param processors_count - number of logical processor descriptions in the @p processors array.
683 …* @param[in,out] processors - array of logical processor descriptions with pre-parsed MIDR, maximu…
685 …* Upon successful return, processors[i].midr for all core clusters' le…
691 struct cpuinfo_arm_linux_processor processors[restrict static processors_count]) in cpuinfo_arm_linux_detect_cluster_midr_by_sequential_scan()
695 if (bitmask_all(processors[i].flags, CPUINFO_LINUX_FLAG_VALID)) { in cpuinfo_arm_linux_detect_cluster_midr_by_sequential_scan()
696 if (processors[i].package_leader_id == i) { in cpuinfo_arm_linux_detect_cluster_midr_by_sequential_scan()
697 if (bitmask_all(processors[i].flags, CPUINFO_ARM_LINUX_VALID_MIDR)) { in cpuinfo_arm_linux_detect_cluster_midr_by_sequential_scan()
698 midr = processors[i].midr; in cpuinfo_arm_linux_detect_cluster_midr_by_sequential_scan()
702 processors[i].midr = midr; in cpuinfo_arm_linux_detect_cluster_midr_by_sequential_scan()
703 processors[i].flags |= CPUINFO_ARM_LINUX_VALID_MIDR; in cpuinfo_arm_linux_detect_cluster_midr_by_sequential_scan()
714 * @param max_processors - number of processor descriptions in the @p processors array.
715 …* @param usable_processors - number of processor descriptions in the @p processors array with both…
717 …* @param[in,out] processors - array of logical processor descriptions with pre-parsed MIDR, maximu…
719 …* Upon return, processors[i].midr for all clusters' leaders contains t…
727 struct cpuinfo_arm_linux_processor processors[restrict static max_processors]) in cpuinfo_arm_linux_detect_cluster_midr()
735 if (bitmask_all(processors[i].flags, CPUINFO_LINUX_FLAG_VALID)) { in cpuinfo_arm_linux_detect_cluster_midr()
736 if (processors[i].flags & CPUINFO_ARM_LINUX_VALID_PROCESSOR) { in cpuinfo_arm_linux_detect_cluster_midr()
739 …if (bitmask_all(processors[i].flags, CPUINFO_ARM_LINUX_VALID_IMPLEMENTER | CPUINFO_ARM_LINUX_VALID… in cpuinfo_arm_linux_detect_cluster_midr()
743 const uint32_t group_leader = processors[i].package_leader_id; in cpuinfo_arm_linux_detect_cluster_midr()
752 … if ((processors[i].flags & ~processors[group_leader].flags) & CPUINFO_LINUX_FLAG_MAX_FREQUENCY) { in cpuinfo_arm_linux_detect_cluster_midr()
753 processors[group_leader].max_frequency = processors[i].max_frequency; in cpuinfo_arm_linux_detect_cluster_midr()
754 processors[group_leader].flags |= CPUINFO_LINUX_FLAG_MAX_FREQUENCY; in cpuinfo_arm_linux_detect_cluster_midr()
756 if (!bitmask_all(processors[group_leader].flags, CPUINFO_ARM_LINUX_VALID_MIDR) && in cpuinfo_arm_linux_detect_cluster_midr()
757 bitmask_all(processors[i].flags, CPUINFO_ARM_LINUX_VALID_MIDR)) in cpuinfo_arm_linux_detect_cluster_midr()
759 processors[group_leader].midr = processors[i].midr; in cpuinfo_arm_linux_detect_cluster_midr()
760 processors[group_leader].flags |= CPUINFO_ARM_LINUX_VALID_MIDR; in cpuinfo_arm_linux_detect_cluster_midr()
796 chipset, clusters_count, cluster_leaders, usable_processors, processors, false)) in cpuinfo_arm_linux_detect_cluster_midr()
804 cluster_leaders, processors, false)) in cpuinfo_arm_linux_detect_cluster_midr()
811 processors[processors[last_processor_with_midr].package_leader_id].midr, in cpuinfo_arm_linux_detect_cluster_midr()
812 max_processors, processors); in cpuinfo_arm_linux_detect_cluster_midr()
815 …* /proc/cpuinfo reported MIDR only for some processors, and probably some core clusters do not hav… in cpuinfo_arm_linux_detect_cluster_midr()
820 if (bitmask_all(processors[i].flags, CPUINFO_LINUX_FLAG_VALID | CPUINFO_ARM_LINUX_VALID_MIDR)) { in cpuinfo_arm_linux_detect_cluster_midr()
821 if (processors[i].package_leader_id == i) { in cpuinfo_arm_linux_detect_cluster_midr()
841 chipset, clusters_count, cluster_leaders, usable_processors, processors, true)) in cpuinfo_arm_linux_detect_cluster_midr()
850 cluster_leaders, processors, true)) in cpuinfo_arm_linux_detect_cluster_midr()
857 processors[processors[last_processor_with_midr].package_leader_id].midr, in cpuinfo_arm_linux_detect_cluster_midr()
858 max_processors, processors); in cpuinfo_arm_linux_detect_cluster_midr()