Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 953378bb authored by mingwu.zhang's avatar mingwu.zhang
Browse files

[FP4-3123]:Modify USB usage options greyed out.

&&&%%%comment::Modify USB usage options greyed out.
&&&%%%bug number:FP4-3123
&&&%%%root cause:coding
&&&%%%Bug category:T2M
&&&%%%Module_Impact:kernel
&&&%%%Test_Suggestion:NA
&&&%%%Solution:usb
&&&%%%Test_Report:ok
&&&%%%VAL Can Test:NA
parent e153ebfe
Loading
Loading
Loading
Loading
+10 −0
Original line number Original line Diff line number Diff line
@@ -3970,15 +3970,24 @@ static int smblib_get_prop_ufp_mode(struct smb_charger *chg)
	}
	}
	smblib_dbg(chg, PR_REGISTER, "TYPE_C_STATUS_1 = 0x%02x\n", stat);
	smblib_dbg(chg, PR_REGISTER, "TYPE_C_STATUS_1 = 0x%02x\n", stat);


	/* config 0x154A to 0x17 */	
	if (stat &(SNK_RP_STD_DAM_BIT | SNK_RP_1P5_DAM_BIT | SNK_RP_3P0_DAM_BIT)){
    	smblib_masked_write(chg, TYPE_C_DEBUG_ACCESS_SINK_REG,TYPEC_DEBUG_ACCESS_SINK_MASK,0x17);	
	}

	switch (stat & DETECTED_SRC_TYPE_MASK) {
	switch (stat & DETECTED_SRC_TYPE_MASK) {
	case SNK_RP_STD_BIT:
	case SNK_RP_STD_BIT:
	case SNK_RP_STD_DAM_BIT:
		return POWER_SUPPLY_TYPEC_SOURCE_DEFAULT;
		return POWER_SUPPLY_TYPEC_SOURCE_DEFAULT;
	case SNK_RP_1P5_BIT:
	case SNK_RP_1P5_BIT:
	case SNK_RP_1P5_DAM_BIT:
		return POWER_SUPPLY_TYPEC_SOURCE_MEDIUM;
		return POWER_SUPPLY_TYPEC_SOURCE_MEDIUM;
	case SNK_RP_3P0_BIT:
	case SNK_RP_3P0_BIT:
	case SNK_RP_3P0_DAM_BIT:
		return POWER_SUPPLY_TYPEC_SOURCE_HIGH;
		return POWER_SUPPLY_TYPEC_SOURCE_HIGH;
	case SNK_RP_SHORT_BIT:
	case SNK_RP_SHORT_BIT:
		return POWER_SUPPLY_TYPEC_NON_COMPLIANT;
		return POWER_SUPPLY_TYPEC_NON_COMPLIANT;
/*
	case SNK_DAM_500MA_BIT:
	case SNK_DAM_500MA_BIT:
	case SNK_DAM_1500MA_BIT:
	case SNK_DAM_1500MA_BIT:
	case SNK_DAM_3000MA_BIT:
	case SNK_DAM_3000MA_BIT:
@@ -3987,6 +3996,7 @@ static int smblib_get_prop_ufp_mode(struct smb_charger *chg)
#else
#else
		return POWER_SUPPLY_TYPEC_SINK_DEBUG_ACCESSORY;
		return POWER_SUPPLY_TYPEC_SINK_DEBUG_ACCESSORY;
#endif
#endif
*/
	default:
	default:
		break;
		break;
	}
	}
+10 −0
Original line number Original line Diff line number Diff line
@@ -337,7 +337,17 @@ enum {
 *  TYPEC Peripheral Registers  *
 *  TYPEC Peripheral Registers  *
 ********************************/
 ********************************/
#define TYPE_C_SNK_STATUS_REG			(TYPEC_BASE + 0x06)
#define TYPE_C_SNK_STATUS_REG			(TYPEC_BASE + 0x06)
 

#define DETECTED_SRC_TYPE_MASK			GENMASK(6, 0)
#define DETECTED_SRC_TYPE_MASK			GENMASK(6, 0)
#define SNK_RP_STD_DAM_BIT BIT(6)
#define SNK_RP_1P5_DAM_BIT BIT(5)
#define SNK_RP_3P0_DAM_BIT BIT(4)

#define TYPE_C_DEBUG_ACCESS_SINK_REG 	(TYPEC_BASE + 0x4A)
#define TYPEC_DEBUG_ACCESS_SINK_MASK 	GENMASK(4, 0)


#define SNK_DAM_MASK				GENMASK(6, 4)
#define SNK_DAM_MASK				GENMASK(6, 4)
#define SNK_DAM_500MA_BIT			BIT(6)
#define SNK_DAM_500MA_BIT			BIT(6)
#define SNK_DAM_1500MA_BIT			BIT(5)
#define SNK_DAM_1500MA_BIT			BIT(5)