mirror of
				https://github.com/AetherDroid/android_kernel_samsung_on5xelte.git
				synced 2025-10-31 08:08:51 +01:00 
			
		
		
		
	Fixed MTP to work with TWRP
This commit is contained in:
		
						commit
						f6dfaef42e
					
				
					 50820 changed files with 20846062 additions and 0 deletions
				
			
		
							
								
								
									
										31
									
								
								tools/perf/util/hweight.c
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										31
									
								
								tools/perf/util/hweight.c
									
										
									
									
									
										Normal file
									
								
							|  | @ -0,0 +1,31 @@ | |||
| #include <linux/bitops.h> | ||||
| 
 | ||||
| /**
 | ||||
|  * hweightN - returns the hamming weight of a N-bit word | ||||
|  * @x: the word to weigh | ||||
|  * | ||||
|  * The Hamming Weight of a number is the total number of bits set in it. | ||||
|  */ | ||||
| 
 | ||||
| unsigned int hweight32(unsigned int w) | ||||
| { | ||||
| 	unsigned int res = w - ((w >> 1) & 0x55555555); | ||||
| 	res = (res & 0x33333333) + ((res >> 2) & 0x33333333); | ||||
| 	res = (res + (res >> 4)) & 0x0F0F0F0F; | ||||
| 	res = res + (res >> 8); | ||||
| 	return (res + (res >> 16)) & 0x000000FF; | ||||
| } | ||||
| 
 | ||||
| unsigned long hweight64(__u64 w) | ||||
| { | ||||
| #if BITS_PER_LONG == 32 | ||||
| 	return hweight32((unsigned int)(w >> 32)) + hweight32((unsigned int)w); | ||||
| #elif BITS_PER_LONG == 64 | ||||
| 	__u64 res = w - ((w >> 1) & 0x5555555555555555ul); | ||||
| 	res = (res & 0x3333333333333333ul) + ((res >> 2) & 0x3333333333333333ul); | ||||
| 	res = (res + (res >> 4)) & 0x0F0F0F0F0F0F0F0Ful; | ||||
| 	res = res + (res >> 8); | ||||
| 	res = res + (res >> 16); | ||||
| 	return (res + (res >> 32)) & 0x00000000000000FFul; | ||||
| #endif | ||||
| } | ||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue
	
	 awab228
						awab228