Skip to content

Commit 5f2a3f1

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 64e441b commit 5f2a3f1

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;
@@ -843,6 +845,7 @@ static void cd321x_update_work(struct work_struct *work)
843845
static void cd321x_queue_status(struct cd321x *cd321x)
844846
{
845847
cd321x->update_status.status_changed |= cd321x->update_status.status ^ cd321x->tps.status;
848+
cd321x->update_status.data_status_changed |= cd321x->update_status.data_status ^ cd321x->tps.data_status;
846849

847850
cd321x->update_status.status = cd321x->tps.status;
848851
cd321x->update_status.pwr_status = cd321x->tps.pwr_status;

0 commit comments

Comments
 (0)