drivers/gpu/drm/via/via_analog.c | 63 ++++++++++++++++++++++++++++++++------- drivers/gpu/drm/via/via_drv.h | 4 +- 2 files changed, 55 insertions(+), 12 deletions(-)
New commits: commit b93306e89ce42c030047cac1e3ee5b5eb1ca7860 Author: Kevin Brace <kevinbr...@gmx.com> Date: Sat Jun 17 16:13:29 2017 -0500 Version bumped to 3.0.35 This version corrects a regression introduced with Version 3.0.34 (in particular commit bf8d577). Signed-off-by: Kevin Brace <kevinbr...@gmx.com> diff --git a/drivers/gpu/drm/via/via_drv.h b/drivers/gpu/drm/via/via_drv.h index 185df94b24f..c37c47df813 100644 --- a/drivers/gpu/drm/via/via_drv.h +++ b/drivers/gpu/drm/via/via_drv.h @@ -30,11 +30,11 @@ #define DRIVER_AUTHOR "The OpenChrome Project" #define DRIVER_NAME "via" #define DRIVER_DESC "OpenChrome DRM for VIA Technologies Chrome IGP" -#define DRIVER_DATE "20170616" +#define DRIVER_DATE "20170617" #define DRIVER_MAJOR 3 #define DRIVER_MINOR 0 -#define DRIVER_PATCHLEVEL 34 +#define DRIVER_PATCHLEVEL 35 #include <linux/module.h> commit 2c9296766654b56126ecf5ffcfcf63d3fca3c82b Author: Kevin Brace <kevinbr...@gmx.com> Date: Sat Jun 17 16:10:10 2017 -0500 Added via_analog_disable callback function Signed-off-by: Kevin Brace <kevinbr...@gmx.com> diff --git a/drivers/gpu/drm/via/via_analog.c b/drivers/gpu/drm/via/via_analog.c index 7be5a4c7c9a..730541c81a3 100644 --- a/drivers/gpu/drm/via/via_analog.c +++ b/drivers/gpu/drm/via/via_analog.c @@ -190,13 +190,26 @@ via_analog_commit(struct drm_encoder *encoder) DRM_DEBUG_KMS("Exiting via_analog_commit.\n"); } +static void +via_analog_disable(struct drm_encoder *encoder) +{ + struct via_device *dev_priv = encoder->dev->dev_private; + + DRM_DEBUG_KMS("Entered via_analog_disable.\n"); + + via_analog_set_dpms_control(VGABASE, VIA_ANALOG_DPMS_OFF); + via_analog_power(dev_priv, false); + + DRM_DEBUG_KMS("Exiting via_analog_disable.\n"); +} + static const struct drm_encoder_helper_funcs via_dac_enc_helper_funcs = { .dpms = via_analog_dpms, .mode_fixup = via_analog_mode_fixup, .mode_set = via_analog_mode_set, .prepare = via_analog_prepare, .commit = via_analog_commit, - .disable = via_encoder_disable, + .disable = via_analog_disable, }; static enum drm_connector_status commit c33183e5d2b4c5bc16d84001d3c2b81b1ec10605 Author: Kevin Brace <kevinbr...@gmx.com> Date: Sat Jun 17 16:05:28 2017 -0500 Correcting a bug that was introduced with commit bf8d577 This bad commit leading to a kernel panic during boot. Signed-off-by: Kevin Brace <kevinbr...@gmx.com> diff --git a/drivers/gpu/drm/via/via_analog.c b/drivers/gpu/drm/via/via_analog.c index 013cced6cb5..7be5a4c7c9a 100644 --- a/drivers/gpu/drm/via/via_analog.c +++ b/drivers/gpu/drm/via/via_analog.c @@ -106,19 +106,19 @@ via_analog_dpms(struct drm_encoder *encoder, int mode) switch (mode) { case DRM_MODE_DPMS_ON: via_analog_set_dpms_control(VGABASE, VIA_ANALOG_DPMS_ON); - via_analog_power(VGABASE, true); + via_analog_power(dev_priv, true); break; case DRM_MODE_DPMS_STANDBY: via_analog_set_dpms_control(VGABASE, VIA_ANALOG_DPMS_STANDBY); - via_analog_power(VGABASE, true); + via_analog_power(dev_priv, true); break; case DRM_MODE_DPMS_SUSPEND: via_analog_set_dpms_control(VGABASE, VIA_ANALOG_DPMS_SUSPEND); - via_analog_power(VGABASE, true); + via_analog_power(dev_priv, true); break; case DRM_MODE_DPMS_OFF: via_analog_set_dpms_control(VGABASE, VIA_ANALOG_DPMS_OFF); - via_analog_power(VGABASE, false); + via_analog_power(dev_priv, false); break; default: DRM_ERROR("Bad DPMS mode."); @@ -169,7 +169,7 @@ via_analog_prepare(struct drm_encoder *encoder) if (encoder->crtc) { via_analog_set_dpms_control(VGABASE, VIA_ANALOG_DPMS_OFF); - via_analog_power(VGABASE, false); + via_analog_power(dev_priv, false); } DRM_DEBUG_KMS("Exiting via_analog_prepare.\n"); @@ -184,7 +184,7 @@ via_analog_commit(struct drm_encoder *encoder) if (encoder->crtc) { via_analog_set_dpms_control(VGABASE, VIA_ANALOG_DPMS_ON); - via_analog_power(VGABASE, true); + via_analog_power(dev_priv, true); } DRM_DEBUG_KMS("Exiting via_analog_commit.\n"); commit 5d2fc75d5d761ef09d329b2e01103ab7e0798e71 Author: Kevin Brace <kevinbr...@gmx.com> Date: Sat Jun 17 00:10:52 2017 -0500 Renamed via_dac_mode_fixup to via_analog_mode_fixup Signed-off-by: Kevin Brace <kevinbr...@gmx.com> diff --git a/drivers/gpu/drm/via/via_analog.c b/drivers/gpu/drm/via/via_analog.c index 09df7700729..013cced6cb5 100644 --- a/drivers/gpu/drm/via/via_analog.c +++ b/drivers/gpu/drm/via/via_analog.c @@ -130,10 +130,10 @@ via_analog_dpms(struct drm_encoder *encoder, int mode) /* Pass our mode to the connectors and the CRTC to give them a chance to * adjust it according to limitations or connector properties, and also - * a chance to reject the mode entirely. Usefule for things like scaling. + * a chance to reject the mode entirely. Useful for things like scaling. */ static bool -via_dac_mode_fixup(struct drm_encoder *encoder, +via_analog_mode_fixup(struct drm_encoder *encoder, const struct drm_display_mode *mode, struct drm_display_mode *adjusted_mode) { @@ -192,7 +192,7 @@ via_analog_commit(struct drm_encoder *encoder) static const struct drm_encoder_helper_funcs via_dac_enc_helper_funcs = { .dpms = via_analog_dpms, - .mode_fixup = via_dac_mode_fixup, + .mode_fixup = via_analog_mode_fixup, .mode_set = via_analog_mode_set, .prepare = via_analog_prepare, .commit = via_analog_commit, commit 00fe99296a9295e2a23ea05bf5acd29436c07902 Author: Kevin Brace <kevinbr...@gmx.com> Date: Sat Jun 17 00:08:17 2017 -0500 Added via_analog_prepare callback function Signed-off-by: Kevin Brace <kevinbr...@gmx.com> diff --git a/drivers/gpu/drm/via/via_analog.c b/drivers/gpu/drm/via/via_analog.c index 8eec742a8af..09df7700729 100644 --- a/drivers/gpu/drm/via/via_analog.c +++ b/drivers/gpu/drm/via/via_analog.c @@ -161,6 +161,21 @@ via_analog_mode_set(struct drm_encoder *encoder, } static void +via_analog_prepare(struct drm_encoder *encoder) +{ + struct via_device *dev_priv = encoder->dev->dev_private; + + DRM_DEBUG_KMS("Entered via_analog_prepare.\n"); + + if (encoder->crtc) { + via_analog_set_dpms_control(VGABASE, VIA_ANALOG_DPMS_OFF); + via_analog_power(VGABASE, false); + } + + DRM_DEBUG_KMS("Exiting via_analog_prepare.\n"); +} + +static void via_analog_commit(struct drm_encoder *encoder) { struct via_device *dev_priv = encoder->dev->dev_private; @@ -179,7 +194,7 @@ static const struct drm_encoder_helper_funcs via_dac_enc_helper_funcs = { .dpms = via_analog_dpms, .mode_fixup = via_dac_mode_fixup, .mode_set = via_analog_mode_set, - .prepare = via_encoder_prepare, + .prepare = via_analog_prepare, .commit = via_analog_commit, .disable = via_encoder_disable, }; commit 87ec4c3e010601557f1dcb6b4c7f1c0dd69eef29 Author: Kevin Brace <kevinbr...@gmx.com> Date: Sat Jun 17 00:04:18 2017 -0500 Added via_analog_commit callback function Signed-off-by: Kevin Brace <kevinbr...@gmx.com> diff --git a/drivers/gpu/drm/via/via_analog.c b/drivers/gpu/drm/via/via_analog.c index 31c9b4b6613..8eec742a8af 100644 --- a/drivers/gpu/drm/via/via_analog.c +++ b/drivers/gpu/drm/via/via_analog.c @@ -160,12 +160,27 @@ via_analog_mode_set(struct drm_encoder *encoder, DRM_DEBUG_KMS("Exiting via_analog_mode_set.\n"); } +static void +via_analog_commit(struct drm_encoder *encoder) +{ + struct via_device *dev_priv = encoder->dev->dev_private; + + DRM_DEBUG_KMS("Entered via_analog_commit.\n"); + + if (encoder->crtc) { + via_analog_set_dpms_control(VGABASE, VIA_ANALOG_DPMS_ON); + via_analog_power(VGABASE, true); + } + + DRM_DEBUG_KMS("Exiting via_analog_commit.\n"); +} + static const struct drm_encoder_helper_funcs via_dac_enc_helper_funcs = { .dpms = via_analog_dpms, .mode_fixup = via_dac_mode_fixup, .mode_set = via_analog_mode_set, .prepare = via_encoder_prepare, - .commit = via_encoder_commit, + .commit = via_analog_commit, .disable = via_encoder_disable, }; _______________________________________________ Openchrome-devel mailing list Openchrome-devel@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/openchrome-devel