From: Heikki Krogerus <heikki.krogerus@linux.intel.com>
To: Benson Leung <bleung@chromium.org>
Cc: jthies@google.com, gregkh@linuxfoundation.org, hansg@kernel.org,
sebastian.reichel@collabora.com,
dmitry.baryshkov@oss.qualcomm.com, madhu.m@intel.com,
linux-usb@vger.kernel.org, linux-kernel@vger.kernel.org,
bleung@google.com
Subject: Re: [PATCH] usb: typec: ucsi: psy: Set current max to 100mA for BC 1.2 and Default
Date: Mon, 21 Jul 2025 12:46:12 +0300 [thread overview]
Message-ID: <aH4MZHvgg1V6u_Bv@kuha.fi.intel.com> (raw)
In-Reply-To: <20250717200805.3710473-1-bleung@chromium.org>
On Thu, Jul 17, 2025 at 08:08:05PM +0000, Benson Leung wrote:
> ucsi_psy_get_current_max would return 0mA as the maximum current if
> UCSI detected a BC or a Default USB Power sporce.
>
> The comment in this function is true that we can't tell the difference
> between DCP/CDP or SDP chargers, but we can guarantee that at least 1-unit
> of USB 1.1/2.0 power is available, which is 100mA, which is a better
> fallback value than 0, which causes some userspaces, including the ChromeOS
> power manager, to regard this as a power source that is not providing
> any power.
>
> In reality, 100mA is guaranteed from all sources in these classes.
>
> Signed-off-by: Benson Leung <bleung@chromium.org>
Reviewed-by: Heikki Krogerus <heikki.krogerus@linux.intel.com>
> ---
> drivers/usb/typec/ucsi/psy.c | 2 +-
> drivers/usb/typec/ucsi/ucsi.h | 7 ++++---
> 2 files changed, 5 insertions(+), 4 deletions(-)
>
> diff --git a/drivers/usb/typec/ucsi/psy.c b/drivers/usb/typec/ucsi/psy.c
> index 62ac69730405..62a9d68bb66d 100644
> --- a/drivers/usb/typec/ucsi/psy.c
> +++ b/drivers/usb/typec/ucsi/psy.c
> @@ -164,7 +164,7 @@ static int ucsi_psy_get_current_max(struct ucsi_connector *con,
> case UCSI_CONSTAT_PWR_OPMODE_DEFAULT:
> /* UCSI can't tell b/w DCP/CDP or USB2/3x1/3x2 SDP chargers */
> default:
> - val->intval = 0;
> + val->intval = UCSI_TYPEC_DEFAULT_CURRENT * 1000;
> break;
> }
> return 0;
> diff --git a/drivers/usb/typec/ucsi/ucsi.h b/drivers/usb/typec/ucsi/ucsi.h
> index b711e1ecc378..ebd7c27c2cc7 100644
> --- a/drivers/usb/typec/ucsi/ucsi.h
> +++ b/drivers/usb/typec/ucsi/ucsi.h
> @@ -483,9 +483,10 @@ struct ucsi {
> #define UCSI_MAX_SVID 5
> #define UCSI_MAX_ALTMODES (UCSI_MAX_SVID * 6)
>
> -#define UCSI_TYPEC_VSAFE5V 5000
> -#define UCSI_TYPEC_1_5_CURRENT 1500
> -#define UCSI_TYPEC_3_0_CURRENT 3000
> +#define UCSI_TYPEC_VSAFE5V 5000
> +#define UCSI_TYPEC_DEFAULT_CURRENT 100
> +#define UCSI_TYPEC_1_5_CURRENT 1500
> +#define UCSI_TYPEC_3_0_CURRENT 3000
>
> struct ucsi_connector {
> int num;
> --
> 2.50.0.727.gbf7dc18ff4-goog
--
heikki
prev parent reply other threads:[~2025-07-21 9:46 UTC|newest]
Thread overview: 4+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-07-17 20:08 Benson Leung
2025-07-17 20:48 ` Jameson Thies
2025-07-17 22:40 ` Sebastian Reichel
2025-07-21 9:46 ` Heikki Krogerus [this message]
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=aH4MZHvgg1V6u_Bv@kuha.fi.intel.com \
--to=heikki.krogerus@linux.intel.com \
--cc=bleung@chromium.org \
--cc=bleung@google.com \
--cc=dmitry.baryshkov@oss.qualcomm.com \
--cc=gregkh@linuxfoundation.org \
--cc=hansg@kernel.org \
--cc=jthies@google.com \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-usb@vger.kernel.org \
--cc=madhu.m@intel.com \
--cc=sebastian.reichel@collabora.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
all inboxes | Powered by JetHome®