mirror of
				https://github.com/AetherDroid/android_kernel_samsung_on5xelte.git
				synced 2025-10-31 16:18: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
				
			
		
							
								
								
									
										255
									
								
								drivers/soc/samsung/pwrcal/pwrcal-dbg.c
									
										
									
									
									
										Executable file
									
								
							
							
						
						
									
										255
									
								
								drivers/soc/samsung/pwrcal/pwrcal-dbg.c
									
										
									
									
									
										Executable file
									
								
							|  | @ -0,0 +1,255 @@ | |||
| 
 | ||||
| #include "pwrcal-env.h" | ||||
| #include "pwrcal-clk.h" | ||||
| #include "pwrcal-vclk.h" | ||||
| #include "pwrcal-pmu.h" | ||||
| #include "pwrcal-rae.h" | ||||
| 
 | ||||
| 
 | ||||
| static void cal_vclk_grpgate_info(struct vclk *vclk) | ||||
| { | ||||
| 	struct pwrcal_vclk_grpgate *grpgate = to_grpgate(vclk); | ||||
| 	int i; | ||||
| 
 | ||||
| 	pr_info("GRPGATE : %s\n", vclk->name); | ||||
| 	pr_info("- ref : %d\n", vclk->ref_count); | ||||
| 
 | ||||
| 	if (!vclk->ref_count) | ||||
| 		goto out; | ||||
| 
 | ||||
| 	for (i = 0; grpgate->gates[i] != CLK_NONE; i++) | ||||
| 		pr_info("- %s\t%lldHz\tSFR: 0x%08X[%d]\tID[0x%08X]\n", | ||||
| 				grpgate->gates[i]->name, | ||||
| 				pwrcal_clk_get_rate(grpgate->gates[i]), | ||||
| 				(unsigned int)(unsigned long)(grpgate->gates[i]->offset), | ||||
| 				grpgate->gates[i]->shift, | ||||
| 				grpgate->gates[i]->id); | ||||
| out: | ||||
| 	return; | ||||
| } | ||||
| 
 | ||||
| static void cal_vclk_m1d1g1_info(struct vclk *vclk) | ||||
| { | ||||
| 	struct pwrcal_vclk_m1d1g1 *m1d1g1 = to_m1d1g1(vclk); | ||||
| 
 | ||||
| 	pr_info("M1D1G1 : %s\n", vclk->name); | ||||
| 	pr_info("- ref : %d vfreq : %ld]\n", vclk->ref_count, vclk->vfreq); | ||||
| 	if (!vclk->ref_count) | ||||
| 		goto out; | ||||
| 
 | ||||
| 	if (m1d1g1->mux != CLK_NONE) | ||||
| 		pr_info("- %s\t%lldHz\tSFR: 0x%08X[%d]\tID[0x%08X]\n", | ||||
| 				m1d1g1->mux->name, | ||||
| 				pwrcal_clk_get_rate(m1d1g1->mux), | ||||
| 				(unsigned int)(unsigned long)(m1d1g1->mux->offset), | ||||
| 				m1d1g1->mux->shift, | ||||
| 				m1d1g1->mux->id); | ||||
| 
 | ||||
| 	if (m1d1g1->div != CLK_NONE) | ||||
| 		pr_info("- %s\t%lldHz\tSFR: 0x%08X[%d]\tID[0x%08X]\n", | ||||
| 				m1d1g1->div->name, | ||||
| 				pwrcal_clk_get_rate(m1d1g1->div), | ||||
| 				(unsigned int)(unsigned long)(m1d1g1->div->offset), | ||||
| 				m1d1g1->div->shift, | ||||
| 				m1d1g1->div->id); | ||||
| 
 | ||||
| 	if (m1d1g1->gate != CLK_NONE) | ||||
| 		pr_info("- %s\t%lldHz\tSFR: 0x%08X[%d]\tID[0x%08X]\n", | ||||
| 				m1d1g1->gate->name, | ||||
| 				pwrcal_clk_get_rate(m1d1g1->gate), | ||||
| 				(unsigned int)(unsigned long)(m1d1g1->gate->offset), | ||||
| 				m1d1g1->gate->shift, | ||||
| 				m1d1g1->gate->id); | ||||
| 
 | ||||
| 	if (m1d1g1->extramux != CLK_NONE) | ||||
| 		pr_info("- %s\t%lldHz\tSFR: 0x%08X[%d]\tID[0x%08X]\n", | ||||
| 				m1d1g1->extramux->name, | ||||
| 				pwrcal_clk_get_rate(m1d1g1->extramux), | ||||
| 				(unsigned int)(unsigned long)(m1d1g1->extramux->offset), | ||||
| 				m1d1g1->extramux->shift, | ||||
| 				m1d1g1->extramux->id); | ||||
| 
 | ||||
| out: | ||||
| 	return; | ||||
| } | ||||
| 
 | ||||
| static void cal_vclk_p1_info(struct vclk *vclk) | ||||
| { | ||||
| 	struct pwrcal_vclk_p1 *p1 = to_p1(vclk); | ||||
| 
 | ||||
| 	pr_info("P1 : %s\n", vclk->name); | ||||
| 	pr_info("- ref : %d vfreq : %ld]\n", vclk->ref_count, vclk->vfreq); | ||||
| 
 | ||||
| 	if (!vclk->ref_count) | ||||
| 		goto out; | ||||
| 
 | ||||
| 	if (p1->pll != CLK_NONE) | ||||
| 		pr_info("- %s\t%lldHz\tSFR: 0x%08X[%d]\tID[0x%08X]\n", | ||||
| 				p1->pll->name, | ||||
| 				pwrcal_clk_get_rate(p1->pll), | ||||
| 				(unsigned int)(unsigned long)(p1->pll->offset), | ||||
| 				p1->pll->shift, | ||||
| 				p1->pll->id); | ||||
| 
 | ||||
| out: | ||||
| 	return; | ||||
| } | ||||
| 
 | ||||
| static void cal_vclk_m1_info(struct vclk *vclk) | ||||
| { | ||||
| 	struct pwrcal_vclk_m1 *m1 = to_m1(vclk); | ||||
| 
 | ||||
| 	pr_info("M1 : %s\n", vclk->name); | ||||
| 	pr_info("- ref : %d vfreq : %ld]\n", vclk->ref_count, vclk->vfreq); | ||||
| 
 | ||||
| 	if (!vclk->ref_count) | ||||
| 		goto out; | ||||
| 
 | ||||
| 	if (m1->mux != CLK_NONE) | ||||
| 		pr_info("- %s\t%lldHz\tSFR: 0x%08X[%d]\tID[0x%08X]\n", | ||||
| 				m1->mux->name, | ||||
| 				pwrcal_clk_get_rate(m1->mux), | ||||
| 				(unsigned int)(unsigned long)(m1->mux->offset), | ||||
| 				m1->mux->shift, | ||||
| 				m1->mux->id); | ||||
| 
 | ||||
| out: | ||||
| 	return; | ||||
| } | ||||
| 
 | ||||
| static void cal_vclk_d1_info(struct vclk *vclk) | ||||
| { | ||||
| 	struct pwrcal_vclk_d1 *d1 = to_d1(vclk); | ||||
| 
 | ||||
| 	pr_info("M1 : %s\n", vclk->name); | ||||
| 	pr_info("- ref : %d vfreq : %ld]\n", vclk->ref_count, vclk->vfreq); | ||||
| 
 | ||||
| 	if (!vclk->ref_count) | ||||
| 		goto out; | ||||
| 
 | ||||
| 	if (d1->div != CLK_NONE) | ||||
| 		pr_info("- %s\t%lldHz\tSFR: 0x%08X[%d]\tID[0x%08X]\n", | ||||
| 				d1->div->name, | ||||
| 				pwrcal_clk_get_rate(d1->div), | ||||
| 				(unsigned int)(unsigned long)(d1->div->offset), | ||||
| 				d1->div->shift, | ||||
| 				d1->div->id); | ||||
| 
 | ||||
| out: | ||||
| 	return; | ||||
| } | ||||
| 
 | ||||
| static void cal_vclk_umux_info(struct vclk *vclk) | ||||
| { | ||||
| 	struct pwrcal_vclk_umux *umux = to_umux(vclk); | ||||
| 
 | ||||
| 	pr_info("M1 : %s\n", vclk->name); | ||||
| 	pr_info("- ref : %d vfreq : %ld]\n", vclk->ref_count, vclk->vfreq); | ||||
| 
 | ||||
| 	if (!vclk->ref_count) | ||||
| 		goto out; | ||||
| 
 | ||||
| 	if (umux->umux != CLK_NONE) | ||||
| 		pr_info("- %s\t%lldHz\tSFR: 0x%08X[%d]\tID[0x%08X]\n", | ||||
| 				umux->umux->name, | ||||
| 				pwrcal_clk_get_rate(umux->umux), | ||||
| 				(unsigned int)(unsigned long)(umux->umux->offset), | ||||
| 				umux->umux->shift, | ||||
| 				umux->umux->id); | ||||
| 
 | ||||
| out: | ||||
| 	return; | ||||
| } | ||||
| 
 | ||||
| static void cal_vclk_pxmxdx_info(struct vclk *vclk) | ||||
| { | ||||
| 	struct pwrcal_vclk_pxmxdx *pxmxdx = to_pxmxdx(vclk); | ||||
| 	struct pwrcal_clk *clk; | ||||
| 	int i; | ||||
| 
 | ||||
| 	pr_info("M1 : %s\n", vclk->name); | ||||
| 	pr_info("- ref : %d vfreq : %ld]\n", vclk->ref_count, vclk->vfreq); | ||||
| 
 | ||||
| 	if (!vclk->ref_count) | ||||
| 		goto out; | ||||
| 
 | ||||
| 	for (i = 0; pxmxdx->clk_list[i].clk != CLK_NONE; i++) { | ||||
| 		clk = pxmxdx->clk_list[i].clk; | ||||
| 		pr_info("- %s\t%lldHz\tSFR: 0x%08X[%d]\tID[0x%08X]\n", | ||||
| 				clk->name, | ||||
| 				pwrcal_clk_get_rate(clk), | ||||
| 				(unsigned int)(unsigned long)(clk->offset), | ||||
| 				clk->shift, | ||||
| 				clk->id); | ||||
| 	} | ||||
| 
 | ||||
| out: | ||||
| 	return; | ||||
| } | ||||
| 
 | ||||
| static void cal_vclk_dfs_info(struct vclk *vclk) | ||||
| { | ||||
| 	struct pwrcal_vclk_dfs *dfs = to_dfs(vclk); | ||||
| 	struct pwrcal_clk *clk; | ||||
| 	int i; | ||||
| 
 | ||||
| 	pr_info("DFS : %s\n", vclk->name); | ||||
| 	pr_info("- ref : %d vfreq : %ld]\n", vclk->ref_count, vclk->vfreq); | ||||
| 
 | ||||
| 	if (!vclk->ref_count) | ||||
| 		goto out; | ||||
| 
 | ||||
| 	for (i = 1; i < dfs->table->num_of_members; i++) { | ||||
| 		clk = dfs->table->members[i]; | ||||
| 		pr_info("- %s\t%lldHz\tSFR: 0x%08X[%d]\tID[0x%08X]\n", | ||||
| 				clk->name, | ||||
| 				pwrcal_clk_get_rate(clk), | ||||
| 				(unsigned int)(unsigned long)(clk->offset), | ||||
| 				clk->shift, | ||||
| 				clk->id); | ||||
| 	} | ||||
| 
 | ||||
| out: | ||||
| 	return; | ||||
| } | ||||
| 
 | ||||
| void cal_vclk_dbg_info(unsigned int id) | ||||
| { | ||||
| 	struct vclk *vclk = cal_get_vclk(id); | ||||
| 
 | ||||
| 	if ((id & mask_of_type) != vclk_type) { | ||||
| 		pr_err("cal_vclk_dbg_info : invalid id (0x%08X)\n", id); | ||||
| 		return; | ||||
| 	} | ||||
| 
 | ||||
| 	switch (id & (mask_of_type | mask_of_group)) { | ||||
| 	case vclk_group_grpgate: | ||||
| 		cal_vclk_grpgate_info(vclk); | ||||
| 		break; | ||||
| 	case vclk_group_m1d1g1: | ||||
| 		cal_vclk_m1d1g1_info(vclk); | ||||
| 		break; | ||||
| 	case vclk_group_p1: | ||||
| 		cal_vclk_p1_info(vclk); | ||||
| 		break; | ||||
| 	case vclk_group_m1: | ||||
| 		cal_vclk_m1_info(vclk); | ||||
| 		break; | ||||
| 	case vclk_group_d1: | ||||
| 		cal_vclk_d1_info(vclk); | ||||
| 		break; | ||||
| 	case vclk_group_pxmxdx: | ||||
| 		cal_vclk_pxmxdx_info(vclk); | ||||
| 		break; | ||||
| 	case vclk_group_umux: | ||||
| 		cal_vclk_umux_info(vclk); | ||||
| 		break; | ||||
| 	case vclk_group_dfs: | ||||
| 		cal_vclk_dfs_info(vclk); | ||||
| 		break; | ||||
| 	default: | ||||
| 		break; | ||||
| 	} | ||||
| 
 | ||||
| 	return; | ||||
| } | ||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue
	
	 awab228
						awab228