mirror of
https://github.com/torvalds/linux.git
synced 2026-07-29 18:51:21 +02:00
Regression fix
- Fix an regression issue by adding 640x480 fallback mode for Exynos HDMI driver. Bug fix - Fix a memory leak by ensuring the duplicated EDID is properly freed in the get_modes function. Code cleanup - Remove redundant driver owner initialization since platform_driver_register() sets it automatically. -----BEGIN PGP SIGNATURE----- iQGzBAABCgAdFiEEoxi+6c5pRPV/gdXcxWAb7Og/+bYFAmZmp5AACgkQxWAb7Og/ +baPmgv+NPpwekmg/MVid5E2UBPohPZ0qfB6AoDVUdN4vPYEzw5p9PRwcQ8vW/1u K0rAGrmgGZZluYWz4OI0bQkA99Cxk6M9+knERxOtvODrf/G3oU2FVVq1s1u831Vo wjjUMePrih2tpINrTu7EBTJSLVfOdsvkw3lOwfQlawrSm2YUZQKoWRpg4lL1bv9C moXLnxDcz+DW3/Mv8GqfQwTxMwz5F1CSIqx/lJXzMo9FaR5B9mlgamCIRakEYkZo CAqMASfDOyBWrbkSX3Yw7msmWWtZXEB5ICHsK4p8DGkaAEdzDGwDL1m8c0w/+0BU sclpWXy01Y2fe22IJ/VwvAnFOGBY5+nNN47jkrDzgOwaPzC6Yaw9FUCPbnSIQBPs eVfypoQxB5j9QsalxpTMmxzBZPGaa33mOuklsV2SGM7p4HJrf2NCDZCZiyp5Midp bYpNEtZKjFzmb5+tov/sWegcZfo+qSBsN6JmHgFkt7ibJvaZGhj0/qnvMyyYEoTH kArxG9kt =ydsM -----END PGP SIGNATURE----- gpgsig -----BEGIN PGP SIGNATURE----- iQGzBAABCgAdFiEEoxi+6c5pRPV/gdXcxWAb7Og/+bYFAmaEzMQACgkQxWAb7Og/ +bapeAwA1dLOPbWM/ad6p7M16x2vOs1YS6+eFCY/xC0xoNF3+fGPoSmOzHwAVoQH m+7CYeOq/f0yKeDigPuf1loA6mWpCrIEkVKvSDDn4S+G8JrHZgj6i4qp86f3zP/z PcL0e8Qn7BF3mvdOKQJk4/nDS0DHpcDhLoo0xyEYg+5EcH2Qe1jg5boZeYv9ATrI n2yHPebK2KBmKi5RP8CLB4wIcjJS0A8zK2VXbwX4PPG5xXRFCwqtEKjMBuiVbaTd DPYpMqxw36t4urIjIPDW31YCUqOkxlRVGT+l4v/2wjepzJ2d6B9+V/Xzg1zzHUd9 35fPxtYddQW/VMCFarevpkbBo8FSdtmF9M7d9ukgvcy2lVNw7pfRdAxxww+NGyIH whDW/ho8hpaqOLzh9f09h59bW0wJ5E4cLdJk4Ydl7KvQSlhYmEPDJInXADTzw/lK JjX8jul9M0FyZnsQn7bVLTnQJQ4hUnU7JjpNcjfrXGSiYcjws8D+/U46AjKFInCc aX/Ei+iK =icup -----END PGP SIGNATURE----- Merge tag 'exynos-drm-fixes-for-v6.10-rc4' of git://git.kernel.org/pub/scm/linux/kernel/git/daeinki/drm-exynos into exynos-drm-next Regression fix - Fix an regression issue by adding 640x480 fallback mode for Exynos HDMI driver. Bug fix - Fix a memory leak by ensuring the duplicated EDID is properly freed in the get_modes function. Code cleanup - Remove redundant driver owner initialization since platform_driver_register() sets it automatically.
This commit is contained in:
commit
98e05e40e9
|
|
@ -282,7 +282,6 @@ struct platform_driver dp_driver = {
|
|||
.remove_new = exynos_dp_remove,
|
||||
.driver = {
|
||||
.name = "exynos-dp",
|
||||
.owner = THIS_MODULE,
|
||||
.pm = pm_ptr(&exynos_dp_pm_ops),
|
||||
.of_match_table = exynos_dp_match,
|
||||
},
|
||||
|
|
|
|||
|
|
@ -309,6 +309,7 @@ static int vidi_get_modes(struct drm_connector *connector)
|
|||
struct vidi_context *ctx = ctx_from_connector(connector);
|
||||
struct edid *edid;
|
||||
int edid_len;
|
||||
int count;
|
||||
|
||||
/*
|
||||
* the edid data comes from user side and it would be set
|
||||
|
|
@ -328,7 +329,11 @@ static int vidi_get_modes(struct drm_connector *connector)
|
|||
|
||||
drm_connector_update_edid_property(connector, edid);
|
||||
|
||||
return drm_add_edid_modes(connector, edid);
|
||||
count = drm_add_edid_modes(connector, edid);
|
||||
|
||||
kfree(edid);
|
||||
|
||||
return count;
|
||||
}
|
||||
|
||||
static const struct drm_connector_helper_funcs vidi_connector_helper_funcs = {
|
||||
|
|
|
|||
|
|
@ -887,11 +887,11 @@ static int hdmi_get_modes(struct drm_connector *connector)
|
|||
int ret;
|
||||
|
||||
if (!hdata->ddc_adpt)
|
||||
return 0;
|
||||
goto no_edid;
|
||||
|
||||
edid = drm_get_edid(connector, hdata->ddc_adpt);
|
||||
if (!edid)
|
||||
return 0;
|
||||
goto no_edid;
|
||||
|
||||
hdata->dvi_mode = !connector->display_info.is_hdmi;
|
||||
DRM_DEV_DEBUG_KMS(hdata->dev, "%s : width[%d] x height[%d]\n",
|
||||
|
|
@ -906,6 +906,9 @@ static int hdmi_get_modes(struct drm_connector *connector)
|
|||
kfree(edid);
|
||||
|
||||
return ret;
|
||||
|
||||
no_edid:
|
||||
return drm_add_modes_noedid(connector, 640, 480);
|
||||
}
|
||||
|
||||
static int hdmi_find_phy_conf(struct hdmi_context *hdata, u32 pixel_clock)
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user