Skip to content

Commit 881fca1

Browse files
committed
usb: typec: tipd: Track data_status changes for CD321x
HDP status for DisplayPort alt-mode is signaled data_status. Track changes to have a debounced HPD to forward to the DRM KMS driver. Signed-off-by: Janne Grunau <j@jannau.net>
1 parent b5c37ef commit 881fca1

1 file changed

Lines changed: 3 additions & 0 deletions

File tree

drivers/usb/typec/tipd/core.c

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -194,6 +194,7 @@ struct cd321x_status {
194194
u32 pwr_status;
195195
u32 data_status;
196196
u32 status_changed;
197+
u32 data_status_changed;
197198
struct usb_pd_identity partner_identity;
198199
struct tps6598x_dp_sid_status_reg dp_sid_status;
199200
struct tps6598x_intel_vid_status_reg intel_vid_status;
@@ -745,6 +746,7 @@ static void cd321x_update_work(struct work_struct *work)
745746

746747
st = cd321x->update_status;
747748
cd321x->update_status.status_changed = 0;
749+
cd321x->update_status.data_status_changed = 0;
748750

749751
bool old_connected = !!tps->partner;
750752
bool new_connected = st.status & TPS_STATUS_PLUG_PRESENT;
@@ -841,6 +843,7 @@ static void cd321x_update_work(struct work_struct *work)
841843
static void cd321x_queue_status(struct cd321x *cd321x)
842844
{
843845
cd321x->update_status.status_changed |= cd321x->update_status.status ^ cd321x->tps.status;
846+
cd321x->update_status.data_status_changed |= cd321x->update_status.data_status ^ cd321x->tps.data_status;
844847

845848
cd321x->update_status.status = cd321x->tps.status;
846849
cd321x->update_status.pwr_status = cd321x->tps.pwr_status;

0 commit comments

Comments
 (0)