86 lines
		
	
	
		
			1.3 KiB
		
	
	
	
		
			Bash
		
	
	
		
			Executable File
		
	
	
	
	
			
		
		
	
	
			86 lines
		
	
	
		
			1.3 KiB
		
	
	
	
		
			Bash
		
	
	
		
			Executable File
		
	
	
	
	
| #!/bin/bash
 | |
| # SPDX-License-Identifier: GPL-2.0
 | |
| #
 | |
| # CPU helpers
 | |
| 
 | |
| # protect against multiple inclusion
 | |
| if [ $FILE_CPU ]; then
 | |
| 	return 0
 | |
| else
 | |
| 	FILE_CPU=DONE
 | |
| fi
 | |
| 
 | |
| source cpufreq.sh
 | |
| 
 | |
| for_each_cpu()
 | |
| {
 | |
| 	cpus=$(ls $CPUROOT | grep "cpu[0-9].*")
 | |
| 	for cpu in $cpus; do
 | |
| 		$@ $cpu
 | |
| 	done
 | |
| }
 | |
| 
 | |
| for_each_non_boot_cpu()
 | |
| {
 | |
| 	cpus=$(ls $CPUROOT | grep "cpu[1-9].*")
 | |
| 	for cpu in $cpus; do
 | |
| 		$@ $cpu
 | |
| 	done
 | |
| }
 | |
| 
 | |
| #$1: cpu
 | |
| offline_cpu()
 | |
| {
 | |
| 	printf "Offline $1\n"
 | |
| 	echo 0 > $CPUROOT/$1/online
 | |
| }
 | |
| 
 | |
| #$1: cpu
 | |
| online_cpu()
 | |
| {
 | |
| 	printf "Online $1\n"
 | |
| 	echo 1 > $CPUROOT/$1/online
 | |
| }
 | |
| 
 | |
| #$1: cpu
 | |
| reboot_cpu()
 | |
| {
 | |
| 	offline_cpu $1
 | |
| 	online_cpu $1
 | |
| }
 | |
| 
 | |
| # Reboot CPUs
 | |
| # param: number of times we want to run the loop
 | |
| reboot_cpus()
 | |
| {
 | |
| 	printf "** Test: Running ${FUNCNAME[0]} for $1 loops **\n\n"
 | |
| 
 | |
| 	for i in `seq 1 $1`; do
 | |
| 		for_each_non_boot_cpu offline_cpu
 | |
| 		for_each_non_boot_cpu online_cpu
 | |
| 		printf "\n"
 | |
| 	done
 | |
| 
 | |
| 	printf "\n%s\n\n" "------------------------------------------------"
 | |
| }
 | |
| 
 | |
| # Prints warning for all CPUs with missing cpufreq directory
 | |
| print_unmanaged_cpus()
 | |
| {
 | |
| 	for_each_cpu cpu_should_have_cpufreq_directory
 | |
| }
 | |
| 
 | |
| # Counts CPUs with cpufreq directories
 | |
| count_cpufreq_managed_cpus()
 | |
| {
 | |
| 	count=0;
 | |
| 
 | |
| 	for cpu in `ls $CPUROOT | grep "cpu[0-9].*"`; do
 | |
| 		if [ -d $CPUROOT/$cpu/cpufreq ]; then
 | |
| 			let count=count+1;
 | |
| 		fi
 | |
| 	done
 | |
| 
 | |
| 	echo $count;
 | |
| }
 | 
