If we aren't expecting a status update when
cros_typec_displayport_status_update() is called then we're handling an
attention message, like HPD high/low or IRQ. Call
typec_altmode_attention() in this case so that HPD signaling works in
the DP altmode driver.
Cc: Benson Leung <bleung@chromium.org>
Cc: Tzung-Bi Shih <tzungbi@kernel.org>
Cc: <chrome-platform@lists.linux.dev>
Cc: Pin-yen Lin <treapking@chromium.org>
Cc: Abhishek Pandit-Subedi <abhishekpandit@chromium.org>
Cc: Łukasz Bartosik <ukaszb@chromium.org>
Cc: Jameson Thies <jthies@google.com>
Cc: Andrei Kuchynski <akuchynski@chromium.org>
Signed-off-by: Stephen Boyd <swboyd@chromium.org>
---
drivers/platform/chrome/cros_typec_altmode.c | 7 ++-----
1 file changed, 2 insertions(+), 5 deletions(-)
diff --git a/drivers/platform/chrome/cros_typec_altmode.c b/drivers/platform/chrome/cros_typec_altmode.c
index 557340b53af0..c2d9c548b5e8 100644
--- a/drivers/platform/chrome/cros_typec_altmode.c
+++ b/drivers/platform/chrome/cros_typec_altmode.c
@@ -280,11 +280,8 @@ int cros_typec_displayport_status_update(struct typec_altmode *altmode,
typec_altmode_get_drvdata(altmode);
struct cros_typec_altmode_data *adata = &dp_data->adata;
- if (!dp_data->pending_status_update) {
- dev_dbg(&altmode->dev,
- "Got DPStatus without a pending request\n");
- return 0;
- }
+ if (!dp_data->pending_status_update)
+ return typec_altmode_attention(altmode, data->status);
if (dp_data->configured && dp_data->data.conf != data->conf)
dev_dbg(&altmode->dev,
--
https://chromeos.dev
On 16/04/2025 03:02, Stephen Boyd wrote:
> If we aren't expecting a status update when
> cros_typec_displayport_status_update() is called then we're handling an
> attention message, like HPD high/low or IRQ. Call
> typec_altmode_attention() in this case so that HPD signaling works in
> the DP altmode driver.
Fixes?
>
> Cc: Benson Leung <bleung@chromium.org>
> Cc: Tzung-Bi Shih <tzungbi@kernel.org>
> Cc: <chrome-platform@lists.linux.dev>
> Cc: Pin-yen Lin <treapking@chromium.org>
> Cc: Abhishek Pandit-Subedi <abhishekpandit@chromium.org>
> Cc: Łukasz Bartosik <ukaszb@chromium.org>
> Cc: Jameson Thies <jthies@google.com>
> Cc: Andrei Kuchynski <akuchynski@chromium.org>
> Signed-off-by: Stephen Boyd <swboyd@chromium.org>
> ---
> drivers/platform/chrome/cros_typec_altmode.c | 7 ++-----
> 1 file changed, 2 insertions(+), 5 deletions(-)
>
> diff --git a/drivers/platform/chrome/cros_typec_altmode.c b/drivers/platform/chrome/cros_typec_altmode.c
> index 557340b53af0..c2d9c548b5e8 100644
> --- a/drivers/platform/chrome/cros_typec_altmode.c
> +++ b/drivers/platform/chrome/cros_typec_altmode.c
> @@ -280,11 +280,8 @@ int cros_typec_displayport_status_update(struct typec_altmode *altmode,
> typec_altmode_get_drvdata(altmode);
> struct cros_typec_altmode_data *adata = &dp_data->adata;
>
> - if (!dp_data->pending_status_update) {
> - dev_dbg(&altmode->dev,
> - "Got DPStatus without a pending request\n");
> - return 0;
> - }
> + if (!dp_data->pending_status_update)
> + return typec_altmode_attention(altmode, data->status);
>
> if (dp_data->configured && dp_data->data.conf != data->conf)
> dev_dbg(&altmode->dev,
--
With best wishes
Dmitry
Quoting Dmitry Baryshkov (2025-04-22 06:38:17) > On 16/04/2025 03:02, Stephen Boyd wrote: > > If we aren't expecting a status update when > > cros_typec_displayport_status_update() is called then we're handling an > > attention message, like HPD high/low or IRQ. Call > > typec_altmode_attention() in this case so that HPD signaling works in > > the DP altmode driver. > > Fixes? I didn't put a fixes because it only matters to make the displayport altmode driver work with the typec port which isn't used so far on DT platforms. I view it as a new feature, not a fix for an existing feature, because we don't use the altmode driver. It also seems like it was intentional on ACPI systems to only handle mode entry/exit and not HPD signaling per my reading of the mailing list.
On Mon, Apr 28, 2025 at 04:55:27PM -0700, Stephen Boyd wrote: > Quoting Dmitry Baryshkov (2025-04-22 06:38:17) > > On 16/04/2025 03:02, Stephen Boyd wrote: > > > If we aren't expecting a status update when > > > cros_typec_displayport_status_update() is called then we're handling an > > > attention message, like HPD high/low or IRQ. Call > > > typec_altmode_attention() in this case so that HPD signaling works in > > > the DP altmode driver. > > > > Fixes? > > I didn't put a fixes because it only matters to make the displayport > altmode driver work with the typec port which isn't used so far on DT > platforms. I view it as a new feature, not a fix for an existing > feature, because we don't use the altmode driver. > > It also seems like it was intentional on ACPI systems to only handle > mode entry/exit and not HPD signaling per my reading of the mailing > list. Reviewed-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com> -- With best wishes Dmitry
© 2016 - 2025 Red Hat, Inc.