Message ID | 20240530092930.434026-3-j-choudhary@ti.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | Add mode_valid and atomic_check hooks for sii902x bridge | expand |
Hi, On Thu, May 30, 2024 at 02:59:30PM GMT, Jayesh Choudhary wrote: > Check the pixel clock for the mode in atomic_check and ensure that > it is within the range supported by the bridge. > > Signed-off-by: Jayesh Choudhary <j-choudhary@ti.com> > --- > drivers/gpu/drm/bridge/sii902x.c | 6 ++++++ > 1 file changed, 6 insertions(+) > > diff --git a/drivers/gpu/drm/bridge/sii902x.c b/drivers/gpu/drm/bridge/sii902x.c > index 6a6055a4ccf9..1bf2f14a772d 100644 > --- a/drivers/gpu/drm/bridge/sii902x.c > +++ b/drivers/gpu/drm/bridge/sii902x.c > @@ -494,6 +494,12 @@ static int sii902x_bridge_atomic_check(struct drm_bridge *bridge, > struct drm_crtc_state *crtc_state, > struct drm_connector_state *conn_state) > { > + if (crtc_state->mode.clock < SII902X_MIN_PIXEL_CLOCK_KHZ) > + return MODE_CLOCK_LOW; > + > + if (crtc_state->mode.clock > SII902X_MAX_PIXEL_CLOCK_KHZ) > + return MODE_CLOCK_HIGH; > + atomic_check doesn't return drm_mode_status but regular error codes (0 on success, negative error code on failure) Maxime
Hello Maxime, On 30/05/24 15:04, Maxime Ripard wrote: > Hi, > > On Thu, May 30, 2024 at 02:59:30PM GMT, Jayesh Choudhary wrote: >> Check the pixel clock for the mode in atomic_check and ensure that >> it is within the range supported by the bridge. >> >> Signed-off-by: Jayesh Choudhary <j-choudhary@ti.com> >> --- >> drivers/gpu/drm/bridge/sii902x.c | 6 ++++++ >> 1 file changed, 6 insertions(+) >> >> diff --git a/drivers/gpu/drm/bridge/sii902x.c b/drivers/gpu/drm/bridge/sii902x.c >> index 6a6055a4ccf9..1bf2f14a772d 100644 >> --- a/drivers/gpu/drm/bridge/sii902x.c >> +++ b/drivers/gpu/drm/bridge/sii902x.c >> @@ -494,6 +494,12 @@ static int sii902x_bridge_atomic_check(struct drm_bridge *bridge, >> struct drm_crtc_state *crtc_state, >> struct drm_connector_state *conn_state) >> { >> + if (crtc_state->mode.clock < SII902X_MIN_PIXEL_CLOCK_KHZ) >> + return MODE_CLOCK_LOW; >> + >> + if (crtc_state->mode.clock > SII902X_MAX_PIXEL_CLOCK_KHZ) >> + return MODE_CLOCK_HIGH; >> + > > atomic_check doesn't return drm_mode_status but regular error codes (0 > on success, negative error code on failure) Okay. Will club together both conditions and return -EINVAL. Warm Regards, Jayesh > > Maxime
diff --git a/drivers/gpu/drm/bridge/sii902x.c b/drivers/gpu/drm/bridge/sii902x.c index 6a6055a4ccf9..1bf2f14a772d 100644 --- a/drivers/gpu/drm/bridge/sii902x.c +++ b/drivers/gpu/drm/bridge/sii902x.c @@ -494,6 +494,12 @@ static int sii902x_bridge_atomic_check(struct drm_bridge *bridge, struct drm_crtc_state *crtc_state, struct drm_connector_state *conn_state) { + if (crtc_state->mode.clock < SII902X_MIN_PIXEL_CLOCK_KHZ) + return MODE_CLOCK_LOW; + + if (crtc_state->mode.clock > SII902X_MAX_PIXEL_CLOCK_KHZ) + return MODE_CLOCK_HIGH; + /* * There might be flags negotiation supported in future but * set the bus flags in atomic_check statically for now.
Check the pixel clock for the mode in atomic_check and ensure that it is within the range supported by the bridge. Signed-off-by: Jayesh Choudhary <j-choudhary@ti.com> --- drivers/gpu/drm/bridge/sii902x.c | 6 ++++++ 1 file changed, 6 insertions(+)