Re: [PATCH v4 07/10] power: supply: max77693: Set up charge/input current according to cable type

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 16/08/2024 10:19, Artur Weber wrote:
> This behavior was observed on a downstream kernel - for chargers, the
> current would be set to a fast charge current value, and it would be
> bumped down for all other cable types.
> 
> If we leave only the fast charge current value applied, peripheral mode
> stops working. If we stick to 500mA, charging becomes too slow. So, set
> the charge input current limit accordingly to the cable type.
> 
> Tested-by: Henrik Grimler <henrik@xxxxxxxxxx>
> Signed-off-by: Artur Weber <aweber.kernel@xxxxxxxxx>
> ---
> Changes in v3:
> - Re-introduced this commit from v1. It seems to have been accidentally
>   rolled into the previous commit in v2.
> ---
>  drivers/power/supply/max77693_charger.c | 23 ++++++++++++++++++++---
>  1 file changed, 20 insertions(+), 3 deletions(-)
> 
> diff --git a/drivers/power/supply/max77693_charger.c b/drivers/power/supply/max77693_charger.c
> index bf156544fe1b..908fd2a178ee 100644
> --- a/drivers/power/supply/max77693_charger.c
> +++ b/drivers/power/supply/max77693_charger.c
> @@ -716,6 +716,7 @@ static void max77693_charger_extcon_work(struct work_struct *work)
>  						  cable.work);
>  	struct extcon_dev *edev = chg->cable.edev;
>  	bool set_charging, set_otg;
> +	unsigned int input_current;
>  	int connector, state;
>  	int ret;
>  
> @@ -728,19 +729,28 @@ static void max77693_charger_extcon_work(struct work_struct *work)
>  
>  	switch (connector) {
>  	case EXTCON_CHG_USB_SDP:
> -	case EXTCON_CHG_USB_DCP:

Why do you move it? Wasn't it added in previous patch?

>  	case EXTCON_CHG_USB_CDP:
> +	case EXTCON_CHG_USB_SLOW:
> +		input_current = 500000; /* 500 mA */
> +		set_charging = true;
> +		set_otg = false;
> +
> +		dev_info(chg->dev, "slow charging. connector type: %d\n",
> +			 connector);
> +		break;


Best regards,
Krzysztof





[Index of Archives]     [Linux SoC Development]     [Linux Rockchip Development]     [Linux for Synopsys ARC Processors]    
  • [Linux on Unisoc (RDA Micro) SoCs]     [Linux Actions SoC]     [Linux USB Development]     [Video for Linux]     [Linux Audio Users]     [Linux SCSI]     [Yosemite News]

  •   Powered by Linux