kernel: bump 5.15 to 5.15.41
[openwrt/openwrt.git] / target / linux / bcm27xx / patches-5.15 / 950-0009-drm-vc4-hdmi-Prevent-access-to-crtc-state-outside-of.patch
index 7d29e9551492431453b143cb8be199afba364d6a..db65832d9b3a58a7daebe4c3bd474af5c9def280 100644 (file)
@@ -29,7 +29,7 @@ Signed-off-by: Maxime Ripard <maxime@cerno.tech>
 
 --- a/drivers/gpu/drm/vc4/vc4_hdmi.c
 +++ b/drivers/gpu/drm/vc4/vc4_hdmi.c
-@@ -484,8 +484,7 @@ static void vc4_hdmi_set_avi_infoframe(s
+@@ -485,8 +485,7 @@ static void vc4_hdmi_set_avi_infoframe(s
        struct vc4_hdmi_encoder *vc4_encoder = to_vc4_hdmi_encoder(encoder);
        struct drm_connector *connector = &vc4_hdmi->connector;
        struct drm_connector_state *cstate = connector->state;
@@ -39,7 +39,7 @@ Signed-off-by: Maxime Ripard <maxime@cerno.tech>
        union hdmi_infoframe frame;
        int ret;
  
-@@ -597,8 +596,8 @@ static bool vc4_hdmi_supports_scrambling
+@@ -598,8 +597,8 @@ static bool vc4_hdmi_supports_scrambling
  
  static void vc4_hdmi_enable_scrambling(struct drm_encoder *encoder)
  {
@@ -49,7 +49,7 @@ Signed-off-by: Maxime Ripard <maxime@cerno.tech>
        unsigned long flags;
  
        lockdep_assert_held(&vc4_hdmi->mutex);
-@@ -624,18 +623,21 @@ static void vc4_hdmi_enable_scrambling(s
+@@ -625,18 +624,21 @@ static void vc4_hdmi_enable_scrambling(s
  static void vc4_hdmi_disable_scrambling(struct drm_encoder *encoder)
  {
        struct vc4_hdmi *vc4_hdmi = encoder_to_vc4_hdmi(encoder);
@@ -73,7 +73,7 @@ Signed-off-by: Maxime Ripard <maxime@cerno.tech>
                return;
  
        if (delayed_work_pending(&vc4_hdmi->scrambling_work))
-@@ -1008,8 +1010,8 @@ static void vc4_hdmi_encoder_pre_crtc_co
+@@ -1009,8 +1011,8 @@ static void vc4_hdmi_encoder_pre_crtc_co
                vc4_hdmi_encoder_get_connector_state(encoder, state);
        struct vc4_hdmi_connector_state *vc4_conn_state =
                conn_state_to_vc4_hdmi_conn_state(conn_state);
@@ -83,7 +83,7 @@ Signed-off-by: Maxime Ripard <maxime@cerno.tech>
        unsigned long pixel_rate = vc4_conn_state->pixel_rate;
        unsigned long bvb_rate, hsm_rate;
        unsigned long flags;
-@@ -1111,9 +1113,9 @@ out:
+@@ -1112,9 +1114,9 @@ out:
  static void vc4_hdmi_encoder_pre_crtc_enable(struct drm_encoder *encoder,
                                             struct drm_atomic_state *state)
  {
@@ -95,7 +95,7 @@ Signed-off-by: Maxime Ripard <maxime@cerno.tech>
        unsigned long flags;
  
        mutex_lock(&vc4_hdmi->mutex);
-@@ -1141,8 +1143,8 @@ static void vc4_hdmi_encoder_pre_crtc_en
+@@ -1142,8 +1144,8 @@ static void vc4_hdmi_encoder_pre_crtc_en
  static void vc4_hdmi_encoder_post_crtc_enable(struct drm_encoder *encoder,
                                              struct drm_atomic_state *state)
  {
@@ -105,7 +105,7 @@ Signed-off-by: Maxime Ripard <maxime@cerno.tech>
        struct vc4_hdmi_encoder *vc4_encoder = to_vc4_hdmi_encoder(encoder);
        bool hsync_pos = mode->flags & DRM_MODE_FLAG_PHSYNC;
        bool vsync_pos = mode->flags & DRM_MODE_FLAG_PVSYNC;
-@@ -1218,6 +1220,19 @@ static void vc4_hdmi_encoder_enable(stru
+@@ -1219,6 +1221,19 @@ static void vc4_hdmi_encoder_enable(stru
  {
  }
  
@@ -125,7 +125,7 @@ Signed-off-by: Maxime Ripard <maxime@cerno.tech>
  #define WIFI_2_4GHz_CH1_MIN_FREQ      2400000000ULL
  #define WIFI_2_4GHz_CH1_MAX_FREQ      2422000000ULL
  
-@@ -1296,6 +1311,7 @@ vc4_hdmi_encoder_mode_valid(struct drm_e
+@@ -1297,6 +1312,7 @@ vc4_hdmi_encoder_mode_valid(struct drm_e
  
  static const struct drm_encoder_helper_funcs vc4_hdmi_encoder_helper_funcs = {
        .atomic_check = vc4_hdmi_encoder_atomic_check,
@@ -133,7 +133,7 @@ Signed-off-by: Maxime Ripard <maxime@cerno.tech>
        .mode_valid = vc4_hdmi_encoder_mode_valid,
        .disable = vc4_hdmi_encoder_disable,
        .enable = vc4_hdmi_encoder_enable,
-@@ -1349,9 +1365,7 @@ static void vc4_hdmi_audio_set_mai_clock
+@@ -1350,9 +1366,7 @@ static void vc4_hdmi_audio_set_mai_clock
  
  static void vc4_hdmi_set_n_cts(struct vc4_hdmi *vc4_hdmi, unsigned int samplerate)
  {