|  |  | @ -54,6 +54,11 @@ NetworkStrength = log.DeviceState.NetworkStrength | 
			
		
	
		
		
			
				
					
					|  |  |  | MM_MODEM_ACCESS_TECHNOLOGY_UMTS = 1 << 5 |  |  |  | MM_MODEM_ACCESS_TECHNOLOGY_UMTS = 1 << 5 | 
			
		
	
		
		
			
				
					
					|  |  |  | MM_MODEM_ACCESS_TECHNOLOGY_LTE = 1 << 14 |  |  |  | MM_MODEM_ACCESS_TECHNOLOGY_LTE = 1 << 14 | 
			
		
	
		
		
			
				
					
					|  |  |  | 
 |  |  |  | 
 | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  | 
 | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  | def sudo_write(val, path): | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  |   os.system(f"sudo su -c 'echo {val} > {path}'") | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  | 
 | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  | 
 | 
			
		
	
		
		
			
				
					
					|  |  |  | class Tici(HardwareBase): |  |  |  | class Tici(HardwareBase): | 
			
		
	
		
		
			
				
					
					|  |  |  |   @cached_property |  |  |  |   @cached_property | 
			
		
	
		
		
			
				
					
					|  |  |  |   def bus(self): |  |  |  |   def bus(self): | 
			
		
	
	
		
		
			
				
					|  |  | @ -390,18 +395,16 @@ class Tici(HardwareBase): | 
			
		
	
		
		
			
				
					
					|  |  |  |     if not powersave_enabled: |  |  |  |     if not powersave_enabled: | 
			
		
	
		
		
			
				
					
					|  |  |  |       self.amplifier.initialize_configuration() |  |  |  |       self.amplifier.initialize_configuration() | 
			
		
	
		
		
			
				
					
					|  |  |  | 
 |  |  |  | 
 | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  |     # *** CPU config *** | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  | 
 | 
			
		
	
		
		
			
				
					
					|  |  |  |     # offline big cluster, leave core 4 online for boardd |  |  |  |     # offline big cluster, leave core 4 online for boardd | 
			
		
	
		
		
			
				
					
					|  |  |  |     for i in range(5, 8): |  |  |  |     for i in range(5, 8): | 
			
		
	
		
		
			
				
					
					|  |  |  |       # TODO: fix permissions with udev |  |  |  |  | 
			
		
	
		
		
			
				
					
					|  |  |  |       val = "0" if powersave_enabled else "1" |  |  |  |       val = "0" if powersave_enabled else "1" | 
			
		
	
		
		
			
				
					
					|  |  |  |       os.system(f"sudo su -c 'echo {val} > /sys/devices/system/cpu/cpu{i}/online'") |  |  |  |       sudo_write(val, f"/sys/devices/system/cpu/cpu{i}/online") | 
			
				
				
			
		
	
		
		
	
		
		
			
				
					
					|  |  |  | 
 |  |  |  | 
 | 
			
		
	
		
		
			
				
					
					|  |  |  |     for n in ('0', '4'): |  |  |  |     for n in ('0', '4'): | 
			
		
	
		
		
			
				
					
					|  |  |  |       gov = 'userspace' if powersave_enabled else 'performance' |  |  |  |       gov = 'ondemand' if powersave_enabled else 'performance' | 
			
				
				
			
		
	
		
		
			
				
					
					|  |  |  |       os.system(f"sudo su -c 'echo {gov} > /sys/devices/system/cpu/cpufreq/policy{n}/scaling_governor'") |  |  |  |       sudo_write(gov, f"/sys/devices/system/cpu/cpufreq/policy{n}/scaling_governor") | 
			
				
				
			
		
	
		
		
			
				
					
					|  |  |  | 
 |  |  |  |  | 
			
		
	
		
		
			
				
					
					|  |  |  |       if powersave_enabled: |  |  |  |  | 
			
		
	
		
		
			
				
					
					|  |  |  |         os.system(f"sudo su -c 'echo 979200 > /sys/devices/system/cpu/cpufreq/policy{n}/scaling_setspeed'") |  |  |  |  | 
			
		
	
		
		
	
		
		
	
		
		
			
				
					
					|  |  |  | 
 |  |  |  | 
 | 
			
		
	
		
		
			
				
					
					|  |  |  |   def get_gpu_usage_percent(self): |  |  |  |   def get_gpu_usage_percent(self): | 
			
		
	
		
		
			
				
					
					|  |  |  |     try: |  |  |  |     try: | 
			
		
	
	
		
		
			
				
					|  |  | @ -416,9 +419,19 @@ class Tici(HardwareBase): | 
			
		
	
		
		
			
				
					
					|  |  |  |     # Allow thermald to write engagement status to kmsg |  |  |  |     # Allow thermald to write engagement status to kmsg | 
			
		
	
		
		
			
				
					
					|  |  |  |     os.system("sudo chmod a+w /dev/kmsg") |  |  |  |     os.system("sudo chmod a+w /dev/kmsg") | 
			
		
	
		
		
			
				
					
					|  |  |  | 
 |  |  |  | 
 | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  |     # *** GPU config *** | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  |     sudo_write("0", "/sys/class/kgsl/kgsl-3d0/min_pwrlevel") | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  |     sudo_write("0", "/sys/class/kgsl/kgsl-3d0/max_pwrlevel") | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  |     sudo_write("1", "/sys/class/kgsl/kgsl-3d0/force_bus_on") | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  |     sudo_write("1", "/sys/class/kgsl/kgsl-3d0/force_clk_on") | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  |     sudo_write("1", "/sys/class/kgsl/kgsl-3d0/force_rail_on") | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  |     sudo_write("1000000", "/sys/class/kgsl/kgsl-3d0/idle_timer") | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  |     sudo_write("performance", "/sys/class/kgsl/kgsl-3d0/devfreq/governor") | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  | 
 | 
			
		
	
		
		
			
				
					
					|  |  |  |     # setup governors |  |  |  |     # setup governors | 
			
		
	
		
		
			
				
					
					|  |  |  |     os.system("sudo su -c 'echo performance > /sys/class/devfreq/soc:qcom,memlat-cpu0/governor'") |  |  |  |     sudo_write("performance", "/sys/class/devfreq/soc:qcom,cpubw/governor") | 
			
				
				
			
		
	
		
		
			
				
					
					|  |  |  |     os.system("sudo su -c 'echo performance > /sys/class/devfreq/soc:qcom,memlat-cpu4/governor'") |  |  |  |     sudo_write("performance", "/sys/class/devfreq/soc:qcom,memlat-cpu0/governor") | 
			
				
				
			
		
	
		
		
	
		
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  |     sudo_write("performance", "/sys/class/devfreq/soc:qcom,memlat-cpu4/governor") | 
			
		
	
		
		
			
				
					
					|  |  |  | 
 |  |  |  | 
 | 
			
		
	
		
		
			
				
					
					|  |  |  |   def get_networks(self): |  |  |  |   def get_networks(self): | 
			
		
	
		
		
			
				
					
					|  |  |  |     r = {} |  |  |  |     r = {} | 
			
		
	
	
		
		
			
				
					|  |  | 
 |