/Linux-v4.19/arch/arm/common/ |
D | mcpm_entry.c | 37 static void __mcpm_cpu_going_down(unsigned int cpu, unsigned int cluster) in __mcpm_cpu_going_down() argument 39 mcpm_sync.clusters[cluster].cpus[cpu].cpu = CPU_GOING_DOWN; in __mcpm_cpu_going_down() 40 sync_cache_w(&mcpm_sync.clusters[cluster].cpus[cpu].cpu); in __mcpm_cpu_going_down() 50 static void __mcpm_cpu_down(unsigned int cpu, unsigned int cluster) in __mcpm_cpu_down() argument 53 mcpm_sync.clusters[cluster].cpus[cpu].cpu = CPU_DOWN; in __mcpm_cpu_down() 54 sync_cache_w(&mcpm_sync.clusters[cluster].cpus[cpu].cpu); in __mcpm_cpu_down() 66 static void __mcpm_outbound_leave_critical(unsigned int cluster, int state) in __mcpm_outbound_leave_critical() argument 69 mcpm_sync.clusters[cluster].cluster = state; in __mcpm_outbound_leave_critical() 70 sync_cache_w(&mcpm_sync.clusters[cluster].cluster); in __mcpm_outbound_leave_critical() 85 static bool __mcpm_outbound_enter_critical(unsigned int cpu, unsigned int cluster) in __mcpm_outbound_enter_critical() argument [all …]
|
D | bL_switcher.c | 277 int cluster; in bL_switcher_thread() local 292 cluster = t->wanted_cluster; in bL_switcher_thread() 299 if (cluster != -1) { in bL_switcher_thread() 300 bL_switch_to(cluster); in bL_switcher_thread() 426 unsigned int cpu, cluster, mask; in bL_switcher_halve_cpus() local 433 cluster = MPIDR_AFFINITY_LEVEL(cpu_logical_map(i), 1); in bL_switcher_halve_cpus() 434 if (cluster >= 2) { in bL_switcher_halve_cpus() 440 mask |= (1 << cluster); in bL_switcher_halve_cpus() 458 cluster = MPIDR_AFFINITY_LEVEL(cpu_logical_map(i), 1); in bL_switcher_halve_cpus() 460 cluster_0 = cluster; in bL_switcher_halve_cpus() [all …]
|
D | mcpm_head.S | 58 ubfx r10, r0, #8, #8 @ r10 = cluster 90 mla r8, r0, r10, r8 @ r8 = sync cluster base 98 @ At this point, the cluster cannot unexpectedly enter the GOING_DOWN 102 mla r11, r0, r10, r11 @ r11 = cluster first man lock 108 bne mcpm_setup_wait @ wait for cluster setup if so 111 cmp r0, #CLUSTER_UP @ cluster already up? 112 bne mcpm_setup @ if not, set up the cluster 122 @ Signal that the cluster is being brought up: 127 @ Any CPU trying to take the cluster into CLUSTER_GOING_DOWN from this 130 @ Wait for any previously-pending cluster teardown operations to abort [all …]
|
/Linux-v4.19/arch/arm/mach-sunxi/ |
D | mc_smp.c | 88 static bool sunxi_core_is_cortex_a15(unsigned int core, unsigned int cluster) in sunxi_core_is_cortex_a15() argument 91 int cpu = cluster * SUNXI_CPUS_PER_CLUSTER + core; in sunxi_core_is_cortex_a15() 105 __func__, cluster, core); in sunxi_core_is_cortex_a15() 113 static int sunxi_cpu_power_switch_set(unsigned int cpu, unsigned int cluster, in sunxi_cpu_power_switch_set() argument 119 reg = readl(prcm_base + PRCM_PWR_SWITCH_REG(cluster, cpu)); in sunxi_cpu_power_switch_set() 123 cluster, cpu); in sunxi_cpu_power_switch_set() 127 writel(0xff, prcm_base + PRCM_PWR_SWITCH_REG(cluster, cpu)); in sunxi_cpu_power_switch_set() 129 writel(0xfe, prcm_base + PRCM_PWR_SWITCH_REG(cluster, cpu)); in sunxi_cpu_power_switch_set() 131 writel(0xf8, prcm_base + PRCM_PWR_SWITCH_REG(cluster, cpu)); in sunxi_cpu_power_switch_set() 133 writel(0xf0, prcm_base + PRCM_PWR_SWITCH_REG(cluster, cpu)); in sunxi_cpu_power_switch_set() [all …]
|
/Linux-v4.19/arch/arm/mach-vexpress/ |
D | tc2_pm.c | 51 static int tc2_pm_cpu_powerup(unsigned int cpu, unsigned int cluster) in tc2_pm_cpu_powerup() argument 53 pr_debug("%s: cpu %u cluster %u\n", __func__, cpu, cluster); in tc2_pm_cpu_powerup() 54 if (cluster >= TC2_CLUSTERS || cpu >= tc2_nr_cpus[cluster]) in tc2_pm_cpu_powerup() 56 ve_spc_set_resume_addr(cluster, cpu, in tc2_pm_cpu_powerup() 58 ve_spc_cpu_wakeup_irq(cluster, cpu, true); in tc2_pm_cpu_powerup() 62 static int tc2_pm_cluster_powerup(unsigned int cluster) in tc2_pm_cluster_powerup() argument 64 pr_debug("%s: cluster %u\n", __func__, cluster); in tc2_pm_cluster_powerup() 65 if (cluster >= TC2_CLUSTERS) in tc2_pm_cluster_powerup() 67 ve_spc_powerdown(cluster, false); in tc2_pm_cluster_powerup() 71 static void tc2_pm_cpu_powerdown_prepare(unsigned int cpu, unsigned int cluster) in tc2_pm_cpu_powerdown_prepare() argument [all …]
|
D | dcscb.c | 41 static int dcscb_cpu_powerup(unsigned int cpu, unsigned int cluster) in dcscb_cpu_powerup() argument 45 pr_debug("%s: cpu %u cluster %u\n", __func__, cpu, cluster); in dcscb_cpu_powerup() 46 if (cluster >= 2 || !(cpumask & dcscb_allcpus_mask[cluster])) in dcscb_cpu_powerup() 49 rst_hold = readl_relaxed(dcscb_base + RST_HOLD0 + cluster * 4); in dcscb_cpu_powerup() 51 writel_relaxed(rst_hold, dcscb_base + RST_HOLD0 + cluster * 4); in dcscb_cpu_powerup() 55 static int dcscb_cluster_powerup(unsigned int cluster) in dcscb_cluster_powerup() argument 59 pr_debug("%s: cluster %u\n", __func__, cluster); in dcscb_cluster_powerup() 60 if (cluster >= 2) in dcscb_cluster_powerup() 64 rst_hold = readl_relaxed(dcscb_base + RST_HOLD0 + cluster * 4); in dcscb_cluster_powerup() 66 rst_hold |= dcscb_allcpus_mask[cluster]; in dcscb_cluster_powerup() [all …]
|
D | spc.c | 119 static inline bool cluster_is_a15(u32 cluster) in cluster_is_a15() argument 121 return cluster == info->a15_clusid; in cluster_is_a15() 158 void ve_spc_cpu_wakeup_irq(u32 cluster, u32 cpu, bool set) in ve_spc_cpu_wakeup_irq() argument 162 if (cluster >= MAX_CLUSTERS) in ve_spc_cpu_wakeup_irq() 167 if (!cluster_is_a15(cluster)) in ve_spc_cpu_wakeup_irq() 187 void ve_spc_set_resume_addr(u32 cluster, u32 cpu, u32 addr) in ve_spc_set_resume_addr() argument 191 if (cluster >= MAX_CLUSTERS) in ve_spc_set_resume_addr() 194 if (cluster_is_a15(cluster)) in ve_spc_set_resume_addr() 212 void ve_spc_powerdown(u32 cluster, bool enable) in ve_spc_powerdown() argument 216 if (cluster >= MAX_CLUSTERS) in ve_spc_powerdown() [all …]
|
D | spc.h | 20 void ve_spc_cpu_wakeup_irq(u32 cluster, u32 cpu, bool set); 21 void ve_spc_set_resume_addr(u32 cluster, u32 cpu, u32 addr); 22 void ve_spc_powerdown(u32 cluster, bool enable); 23 int ve_spc_cpu_in_wfi(u32 cpu, u32 cluster);
|
/Linux-v4.19/fs/ocfs2/cluster/ |
D | nodemanager.c | 65 struct o2nm_cluster *cluster = o2nm_single_cluster; in o2nm_configured_node_map() local 67 BUG_ON(bytes < (sizeof(cluster->cl_nodes_bitmap))); in o2nm_configured_node_map() 69 if (cluster == NULL) in o2nm_configured_node_map() 72 read_lock(&cluster->cl_nodes_lock); in o2nm_configured_node_map() 73 memcpy(map, cluster->cl_nodes_bitmap, sizeof(cluster->cl_nodes_bitmap)); in o2nm_configured_node_map() 74 read_unlock(&cluster->cl_nodes_lock); in o2nm_configured_node_map() 80 static struct o2nm_node *o2nm_node_ip_tree_lookup(struct o2nm_cluster *cluster, in o2nm_node_ip_tree_lookup() argument 85 struct rb_node **p = &cluster->cl_node_ip_tree.rb_node; in o2nm_node_ip_tree_lookup() 118 struct o2nm_cluster *cluster = o2nm_single_cluster; in o2nm_get_node_by_ip() local 120 if (cluster == NULL) in o2nm_get_node_by_ip() [all …]
|
/Linux-v4.19/arch/arm/mach-exynos/ |
D | mcpm-exynos.c | 58 static int exynos_cpu_powerup(unsigned int cpu, unsigned int cluster) in exynos_cpu_powerup() argument 60 unsigned int cpunr = cpu + (cluster * EXYNOS5420_CPUS_PER_CLUSTER); in exynos_cpu_powerup() 62 pr_debug("%s: cpu %u cluster %u\n", __func__, cpu, cluster); in exynos_cpu_powerup() 64 cluster >= EXYNOS5420_NR_CLUSTERS) in exynos_cpu_powerup() 76 if (cluster && in exynos_cpu_powerup() 77 cluster == MPIDR_AFFINITY_LEVEL(cpu_logical_map(0), 1)) { in exynos_cpu_powerup() 95 static int exynos_cluster_powerup(unsigned int cluster) in exynos_cluster_powerup() argument 97 pr_debug("%s: cluster %u\n", __func__, cluster); in exynos_cluster_powerup() 98 if (cluster >= EXYNOS5420_NR_CLUSTERS) in exynos_cluster_powerup() 101 exynos_cluster_power_up(cluster); in exynos_cluster_powerup() [all …]
|
/Linux-v4.19/arch/arm/mach-hisi/ |
D | platmcpm.c | 74 static bool hip04_cluster_is_down(unsigned int cluster) in hip04_cluster_is_down() argument 79 if (hip04_cpu_table[cluster][i]) in hip04_cluster_is_down() 84 static void hip04_set_snoop_filter(unsigned int cluster, unsigned int on) in hip04_set_snoop_filter() argument 92 data |= 1 << cluster; in hip04_set_snoop_filter() 94 data &= ~(1 << cluster); in hip04_set_snoop_filter() 103 unsigned int mpidr, cpu, cluster; in hip04_boot_secondary() local 109 cluster = MPIDR_AFFINITY_LEVEL(mpidr, 1); in hip04_boot_secondary() 113 if (cluster >= HIP04_MAX_CLUSTERS || cpu >= HIP04_MAX_CPUS_PER_CLUSTER) in hip04_boot_secondary() 118 if (hip04_cpu_table[cluster][cpu]) in hip04_boot_secondary() 121 sys_dreq = sysctrl + SC_CPU_RESET_DREQ(cluster); in hip04_boot_secondary() [all …]
|
/Linux-v4.19/drivers/perf/ |
D | qcom_l2_pmu.c | 293 static void cluster_pmu_set_resr(struct cluster_pmu *cluster, in cluster_pmu_set_resr() argument 304 spin_lock_irqsave(&cluster->pmu_lock, flags); in cluster_pmu_set_resr() 312 spin_unlock_irqrestore(&cluster->pmu_lock, flags); in cluster_pmu_set_resr() 369 static void l2_cache_cluster_set_period(struct cluster_pmu *cluster, in l2_cache_cluster_set_period() argument 389 static int l2_cache_get_event_idx(struct cluster_pmu *cluster, in l2_cache_get_event_idx() argument 394 int num_ctrs = cluster->l2cache_pmu->num_counters - 1; in l2_cache_get_event_idx() 398 if (test_and_set_bit(l2_cycle_ctr_idx, cluster->used_counters)) in l2_cache_get_event_idx() 404 idx = find_first_zero_bit(cluster->used_counters, num_ctrs); in l2_cache_get_event_idx() 415 if (test_bit(group, cluster->used_groups)) in l2_cache_get_event_idx() 418 set_bit(idx, cluster->used_counters); in l2_cache_get_event_idx() [all …]
|
/Linux-v4.19/arch/arm/include/asm/ |
D | mcpm.h | 47 void mcpm_set_entry_vector(unsigned cpu, unsigned cluster, void *ptr); 54 void mcpm_set_early_poke(unsigned cpu, unsigned cluster, 87 int mcpm_cpu_power_up(unsigned int cpu, unsigned int cluster); 135 int mcpm_wait_for_cpu_powerdown(unsigned int cpu, unsigned int cluster); 222 int (*cpu_powerup)(unsigned int cpu, unsigned int cluster); 223 int (*cluster_powerup)(unsigned int cluster); 224 void (*cpu_suspend_prepare)(unsigned int cpu, unsigned int cluster); 225 void (*cpu_powerdown_prepare)(unsigned int cpu, unsigned int cluster); 226 void (*cluster_powerdown_prepare)(unsigned int cluster); 229 void (*cpu_is_up)(unsigned int cpu, unsigned int cluster); [all …]
|
/Linux-v4.19/arch/alpha/mm/ |
D | numa.c | 34 for ((_cluster) = (memdesc)->cluster, (i) = 0; \ 39 struct memclust_struct * cluster; in show_mem_layout() local 48 for_each_mem_cluster(memdesc, cluster, i) { in show_mem_layout() 50 i, cluster->usage, cluster->start_pfn, in show_mem_layout() 51 cluster->start_pfn + cluster->numpages); in show_mem_layout() 59 struct memclust_struct * cluster; in setup_memory_node() local 81 for_each_mem_cluster(memdesc, cluster, i) { in setup_memory_node() 85 if (cluster->usage & 3) in setup_memory_node() 88 start = cluster->start_pfn; in setup_memory_node() 89 end = start + cluster->numpages; in setup_memory_node() [all …]
|
/Linux-v4.19/drivers/cpufreq/ |
D | arm_big_little.c | 56 #define ACTUAL_FREQ(cluster, freq) ((cluster == A7_CLUSTER) ? freq << 1 : freq) argument 57 #define VIRT_FREQ(cluster, freq) ((cluster == A7_CLUSTER) ? freq >> 1 : freq) argument 84 static unsigned int find_cluster_maxfreq(int cluster) in find_cluster_maxfreq() argument 92 if ((cluster == per_cpu(physical_cluster, j)) && in find_cluster_maxfreq() 97 pr_debug("%s: cluster: %d, max freq: %d\n", __func__, cluster, in find_cluster_maxfreq() 312 u32 cluster = raw_cpu_to_cluster(cpu_dev->id); in _put_cluster_clk_and_freq_table() local 314 if (!freq_table[cluster]) in _put_cluster_clk_and_freq_table() 317 clk_put(clk[cluster]); in _put_cluster_clk_and_freq_table() 318 dev_pm_opp_free_cpufreq_table(cpu_dev, &freq_table[cluster]); in _put_cluster_clk_and_freq_table() 321 dev_dbg(cpu_dev, "%s: cluster: %d\n", __func__, cluster); in _put_cluster_clk_and_freq_table() [all …]
|
D | tegra186-cpufreq.c | 67 struct tegra186_cpufreq_cluster *cluster = &data->clusters[i]; in tegra186_cpufreq_init() local 69 cluster->info; in tegra186_cpufreq_init() 81 policy->freq_table = cluster->table; in tegra186_cpufreq_init() 224 struct tegra186_cpufreq_cluster *cluster = &data->clusters[i]; in tegra186_cpufreq_probe() local 226 cluster->info = &tegra186_clusters[i]; in tegra186_cpufreq_probe() 227 cluster->table = init_vhint_table( in tegra186_cpufreq_probe() 228 pdev, bpmp, cluster->info->bpmp_cluster_id); in tegra186_cpufreq_probe() 229 if (IS_ERR(cluster->table)) { in tegra186_cpufreq_probe() 230 err = PTR_ERR(cluster->table); in tegra186_cpufreq_probe()
|
/Linux-v4.19/Documentation/arm/ |
D | cluster-pm-race-avoidance.txt | 5 cluster setup and teardown operations and to manage hardware coherency 28 cluster-level operations are only performed when it is truly safe to do 33 are not immediately enabled when a cluster powers up. Since enabling or 37 power-down and power-up at the cluster level. 47 Each cluster and CPU is assigned a state, as follows: 63 DOWN: The CPU or cluster is not coherent, and is either powered off or 66 COMING_UP: The CPU or cluster has committed to moving to the UP state. 70 UP: The CPU or cluster is active and coherent at the hardware 74 GOING_DOWN: The CPU or cluster has committed to moving to the DOWN 82 Each cluster is also assigned a state, but it is necessary to split the [all …]
|
/Linux-v4.19/Documentation/ABI/testing/ |
D | sysfs-ocfs2 | 14 covers how ocfs2 uses distributed locking between cluster 18 cluster nodes can interoperate if they have an identical 34 the available plugins to support ocfs2 cluster operation. 35 A cluster plugin is required to use ocfs2 in a cluster. 38 * 'o2cb' - The classic o2cb cluster stack that ocfs2 has 40 * 'user' - A plugin supporting userspace cluster software 54 cluster plugin is currently in use by the filesystem. 62 the cluster stack in use. The contents may change 63 when all filesystems are unmounted and the cluster stack 71 of current ocfs2 cluster stack. This value is set by [all …]
|
/Linux-v4.19/arch/mips/include/asm/ |
D | mips-cps.h | 137 static inline uint64_t mips_cps_cluster_config(unsigned int cluster) in mips_cps_cluster_config() argument 147 WARN_ON(cluster != 0); in mips_cps_cluster_config() 155 mips_cm_lock_other(cluster, 0, 0, CM_GCR_Cx_OTHER_BLOCK_GLOBAL); in mips_cps_cluster_config() 170 static inline unsigned int mips_cps_numcores(unsigned int cluster) in mips_cps_numcores() argument 176 return (mips_cps_cluster_config(cluster) + 1) & CM_GCR_CONFIG_PCORES; in mips_cps_numcores() 186 static inline unsigned int mips_cps_numiocu(unsigned int cluster) in mips_cps_numiocu() argument 193 num_iocu = mips_cps_cluster_config(cluster) & CM_GCR_CONFIG_NUMIOCU; in mips_cps_numiocu() 207 static inline unsigned int mips_cps_numvps(unsigned int cluster, unsigned int core) in mips_cps_numvps() argument 218 mips_cm_lock_other(cluster, core, 0, CM_GCR_Cx_OTHER_BLOCK_LOCAL); in mips_cps_numvps()
|
/Linux-v4.19/include/soc/nps/ |
D | common.h | 71 u32 __reserved:20, cluster:4, core:4, thread:4; member 73 u32 __reserved:24, cluster:4, core:4; 100 static inline int nps_cluster_logic_to_phys(int cluster) in nps_cluster_logic_to_phys() argument 108 : "+r"(cluster) in nps_cluster_logic_to_phys() 114 return cluster; in nps_cluster_logic_to_phys() 119 nps_cluster_logic_to_phys(gid.cluster); })
|
/Linux-v4.19/fs/fat/ |
D | cache.c | 225 int fat_get_cluster(struct inode *inode, int cluster, int *fclus, int *dclus) in fat_get_cluster() argument 244 if (cluster == 0) in fat_get_cluster() 247 if (fat_cache_lookup(inode, cluster, &cid, fclus, dclus) < 0) { in fat_get_cluster() 256 while (*fclus < cluster) { in fat_get_cluster() 291 static int fat_bmap_cluster(struct inode *inode, int cluster) in fat_bmap_cluster() argument 299 ret = fat_get_cluster(inode, cluster, &fclus, &dclus); in fat_bmap_cluster() 316 int cluster, offset; in fat_get_mapped_cluster() local 318 cluster = sector >> (sbi->cluster_bits - sb->s_blocksize_bits); in fat_get_mapped_cluster() 320 cluster = fat_bmap_cluster(inode, cluster); in fat_get_mapped_cluster() 321 if (cluster < 0) in fat_get_mapped_cluster() [all …]
|
/Linux-v4.19/drivers/clocksource/ |
D | timer-nps.c | 82 int cluster = raw_smp_processor_id() >> NPS_CLUSTER_OFFSET; in nps_clksrc_read() local 84 return (u64)ioread32be(nps_msu_reg_low_addr[cluster]); in nps_clksrc_read() 89 int ret, cluster; in nps_setup_clocksource() local 94 for (cluster = 0; cluster < NPS_CLUSTER_NUM; cluster++) in nps_setup_clocksource() 95 nps_msu_reg_low_addr[cluster] = in nps_setup_clocksource() 96 nps_host_reg((cluster << NPS_CLUSTER_OFFSET), in nps_setup_clocksource()
|
/Linux-v4.19/Documentation/devicetree/bindings/phy/ |
D | phy-mvebu.txt | 23 Armada 375 USB cluster 27 controller. The USB cluster control register allows to manage common 32 - compatible: "marvell,armada-375-usb-cluster" 33 - reg: Should contain usb cluster register location and length. 38 usbcluster: usb-cluster@18400 { 39 compatible = "marvell,armada-375-usb-cluster";
|
/Linux-v4.19/arch/alpha/kernel/ |
D | setup.c | 265 for ((_cluster) = (memdesc)->cluster, (i) = 0; \ 313 struct memclust_struct * cluster; in setup_memory() local 324 for_each_mem_cluster(memdesc, cluster, i) { in setup_memory() 326 i, cluster->usage, cluster->start_pfn, in setup_memory() 327 cluster->start_pfn + cluster->numpages); in setup_memory() 332 if (cluster->usage & 3) in setup_memory() 335 end = cluster->start_pfn + cluster->numpages; in setup_memory() 380 for_each_mem_cluster(memdesc, cluster, i) { in setup_memory() 381 if (cluster->usage & 3) in setup_memory() 384 start = cluster->start_pfn; in setup_memory() [all …]
|
/Linux-v4.19/fs/gfs2/ |
D | Kconfig | 10 A cluster filesystem. 12 Allows a cluster of computers to simultaneously use a block device 18 machine show up immediately on all other machines in the cluster. 20 To use the GFS2 filesystem in a cluster, you will need to enable 22 be found here: http://sources.redhat.com/cluster 36 in a cluster environment.
|