On Tue, 30 Dec 2025, Suraj Kandpal <[email protected]> wrote: > Clear the response ready and error bit of PORT_P2M_MESSAGE_BUS_STATUS > before writing the transaction pending bit of > PORT_M2P_MSGBUS_CTL as that is a hard requirement. If not done > we find that the PHY hangs since it ends up in a weird state if left > idle for more than 1 hour. > > Bspec: 65101 > Signed-off-by: Suraj Kandpal <[email protected]> > --- > drivers/gpu/drm/i915/display/intel_cx0_phy.c | 4 ++++ > 1 file changed, 4 insertions(+) > > diff --git a/drivers/gpu/drm/i915/display/intel_cx0_phy.c > b/drivers/gpu/drm/i915/display/intel_cx0_phy.c > index 5edd293b533b..5ebc3404eee2 100644 > --- a/drivers/gpu/drm/i915/display/intel_cx0_phy.c > +++ b/drivers/gpu/drm/i915/display/intel_cx0_phy.c > @@ -222,6 +222,8 @@ static int __intel_cx0_read_once(struct intel_encoder > *encoder, > return -ETIMEDOUT; > } > > + intel_clear_response_ready_flag(encoder, lane); > +
Please rename the non-static function. Nobody knows what that's related to without looking at the function. BR, Jani. > intel_de_write(display, XELPDP_PORT_M2P_MSGBUS_CTL(display, port, lane), > XELPDP_PORT_M2P_TRANSACTION_PENDING | > XELPDP_PORT_M2P_COMMAND_READ | > @@ -293,6 +295,8 @@ static int __intel_cx0_write_once(struct intel_encoder > *encoder, > return -ETIMEDOUT; > } > > + intel_clear_response_ready_flag(encoder, lane); > + > intel_de_write(display, XELPDP_PORT_M2P_MSGBUS_CTL(display, port, lane), > XELPDP_PORT_M2P_TRANSACTION_PENDING | > (committed ? XELPDP_PORT_M2P_COMMAND_WRITE_COMMITTED : -- Jani Nikula, Intel
