drivers/gpu/drm/via/via_drv.h |    4 +-
 drivers/gpu/drm/via/via_fp.c  |   82 +++++++++++++++++++++++++++++++++++-------
 2 files changed, 72 insertions(+), 14 deletions(-)

New commits:
commit f8e1cd06afe1cd1db331da4a4cfd8ec538cfed2c
Author: Kevin Brace <kevinbr...@gmx.com>
Date:   Wed Jul 12 11:06:35 2017 -0500

    Version bumped to 3.0.41
    
    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 362e697ab78..8e6d1c416f9 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         "20170707"
+#define DRIVER_DATE         "20170712"
 
 #define DRIVER_MAJOR           3
 #define DRIVER_MINOR           0
-#define DRIVER_PATCHLEVEL      40
+#define DRIVER_PATCHLEVEL      41
 
 #include <linux/module.h>
 
commit ee3110634db3d87ab527c582dff10f5fd6a4d1a6
Author: Kevin Brace <kevinbr...@gmx.com>
Date:   Wed Jul 12 11:04:00 2017 -0500

    Added viaFPCastleRockSoftPowerSeq
    
    This function is untested since the developer does not own a CLE266
    chipset based computer with FP support.
    
    Signed-off-by: Kevin Brace <kevinbr...@gmx.com>

diff --git a/drivers/gpu/drm/via/via_fp.c b/drivers/gpu/drm/via/via_fp.c
index 9c1128e5675..7bfc56e7382 100644
--- a/drivers/gpu/drm/via/via_fp.c
+++ b/drivers/gpu/drm/via/via_fp.c
@@ -234,6 +234,59 @@ via_disable_internal_lvds(struct drm_encoder *encoder)
 }
 
 static void
+via_fp_castle_rock_soft_power_seq(struct via_device *dev_priv,
+                                       bool power_state)
+{
+       DRM_DEBUG_KMS("Entered via_fp_castle_rock_soft_power_seq.\n");
+
+       if (power_state) {
+               /* Wait for 25 ms. */
+               mdelay(25);
+
+               /* Turn on FP VDD rail. */
+               via_fp_set_primary_soft_vdd(VGABASE, true);
+
+               /* Wait for 510 ms. */
+               mdelay(510);
+
+               /* Turn on FP data transmission. */
+               via_fp_set_primary_soft_data(VGABASE, true);
+
+               /* Wait for 1 ms. */
+               mdelay(1);
+
+               /* Turn on FP VEE rail. */
+               via_fp_set_primary_soft_vee(VGABASE, true);
+
+               /* Turn on FP back light. */
+               via_fp_set_primary_soft_back_light(VGABASE, true);
+       } else {
+               /* Wait for 1 ms. */
+               mdelay(1);
+
+               /* Turn off FP back light. */
+               via_fp_set_primary_soft_back_light(VGABASE, false);
+
+               /* Turn off FP VEE rail. */
+               via_fp_set_primary_soft_vee(VGABASE, false);
+
+               /* Wait for 510 ms. */
+               mdelay(510);
+
+               /* Turn off FP data transmission. */
+               via_fp_set_primary_soft_data(VGABASE, false);
+
+               /* Wait for 25 ms. */
+               mdelay(25);
+
+               /* Turn off FP VDD rail. */
+               via_fp_set_primary_soft_vdd(VGABASE, false);
+       }
+
+       DRM_DEBUG_KMS("Exiting via_fp_castle_rock_soft_power_seq.\n");
+}
+
+static void
 via_fp_primary_soft_power_seq(struct via_device *dev_priv, bool power_state)
 {
        DRM_DEBUG_KMS("Entered via_fp_primary_soft_power_seq.\n");
@@ -406,6 +459,8 @@ via_fp_power(struct via_device *dev_priv, unsigned short 
device,
 
        switch (device) {
        case PCI_DEVICE_ID_VIA_CLE266:
+               via_fp_castle_rock_soft_power_seq(dev_priv,
+                                                       power_state);
                break;
        case PCI_DEVICE_ID_VIA_KM400:
        case PCI_DEVICE_ID_VIA_CN700:
commit 0259543082a0fd8d7919dcf6eb0c8797eef42d98
Author: Kevin Brace <kevinbr...@gmx.com>
Date:   Mon Jul 10 15:56:08 2017 -0500

    Made minor comment related adjustments to via_fp.c
    
    Signed-off-by: Kevin Brace <kevinbr...@gmx.com>

diff --git a/drivers/gpu/drm/via/via_fp.c b/drivers/gpu/drm/via/via_fp.c
index 906b33df0d6..9c1128e5675 100644
--- a/drivers/gpu/drm/via/via_fp.c
+++ b/drivers/gpu/drm/via/via_fp.c
@@ -245,7 +245,7 @@ via_fp_primary_soft_power_seq(struct via_device *dev_priv, 
bool power_state)
        via_fp_set_primary_power_seq_type(VGABASE, false);
 
        if (power_state) {
-               /* Turn on FP Display Period. */
+               /* Turn on FP display period. */
                via_fp_set_primary_direct_display_period(VGABASE, true);
 
                /* Wait for TD0 ms. */
@@ -293,7 +293,7 @@ via_fp_primary_soft_power_seq(struct via_device *dev_priv, 
bool power_state)
                /* Turn off FP VDD rail. */
                via_fp_set_primary_soft_vdd(VGABASE, false);
 
-               /* Turn off FP Display Period. */
+               /* Turn off FP display period. */
                via_fp_set_primary_direct_display_period(VGABASE, false);
        }
 
@@ -312,7 +312,7 @@ via_fp_secondary_soft_power_seq(struct via_device 
*dev_priv, bool power_state)
        via_fp_set_secondary_power_seq_type(VGABASE, false);
 
        if (power_state) {
-               /* Turn on FP Display Period. */
+               /* Turn on FP display period. */
                via_fp_set_secondary_direct_display_period(VGABASE, true);
 
                /* Wait for TD0 ms. */
@@ -360,7 +360,7 @@ via_fp_secondary_soft_power_seq(struct via_device 
*dev_priv, bool power_state)
                /* Turn off FP VDD rail. */
                via_fp_set_secondary_soft_vdd(VGABASE, false);
 
-               /* Turn off FP Display Period. */
+               /* Turn off FP display period. */
                via_fp_set_secondary_direct_display_period(VGABASE, false);
        }
 
commit ae1e68bae91131df71168a19402a42bfca7d1634
Author: Kevin Brace <kevinbr...@gmx.com>
Date:   Mon Jul 10 15:27:29 2017 -0500

    Made comment adjustments to via_fp_primary_hard_power_seq
    
    Signed-off-by: Kevin Brace <kevinbr...@gmx.com>

diff --git a/drivers/gpu/drm/via/via_fp.c b/drivers/gpu/drm/via/via_fp.c
index dd737c1289a..906b33df0d6 100644
--- a/drivers/gpu/drm/via/via_fp.c
+++ b/drivers/gpu/drm/via/via_fp.c
@@ -376,7 +376,7 @@ via_fp_primary_hard_power_seq(struct via_device *dev_priv, 
bool power_state)
        via_fp_set_primary_power_seq_type(VGABASE, true);
 
        if (power_state) {
-               /* Turn on FP Display Period. */
+               /* Turn on FP display period. */
                via_fp_set_primary_direct_display_period(VGABASE, true);
 
                /* Turn on FP hardware power sequence. */
@@ -391,7 +391,7 @@ via_fp_primary_hard_power_seq(struct via_device *dev_priv, 
bool power_state)
                /* Turn off FP hardware power sequence. */
                via_fp_set_primary_hard_power(VGABASE, false);
 
-               /* Turn on FP Display Period. */
+               /* Turn on FP display period. */
                via_fp_set_primary_direct_display_period(VGABASE, false);
        }
 
commit f5d541da62df68c464e6a5f9d587b505bad93b6f
Author: Kevin Brace <kevinbr...@gmx.com>
Date:   Mon Jul 10 14:52:10 2017 -0500

    Made indentation related adjustments to viaFPPrimarySoftPowerSeq
    
    Signed-off-by: Kevin Brace <kevinbr...@gmx.com>

diff --git a/drivers/gpu/drm/via/via_fp.c b/drivers/gpu/drm/via/via_fp.c
index 0352158a392..dd737c1289a 100644
--- a/drivers/gpu/drm/via/via_fp.c
+++ b/drivers/gpu/drm/via/via_fp.c
@@ -245,31 +245,31 @@ via_fp_primary_soft_power_seq(struct via_device 
*dev_priv, bool power_state)
        via_fp_set_primary_power_seq_type(VGABASE, false);
 
        if (power_state) {
-               /* Turn on FP Display Period. */
+               /* Turn on FP Display Period. */
                via_fp_set_primary_direct_display_period(VGABASE, true);
 
                /* Wait for TD0 ms. */
                mdelay(TD0);
 
-               /* Turn on FP VDD rail. */
+               /* Turn on FP VDD rail. */
                via_fp_set_primary_soft_vdd(VGABASE, true);
 
                /* Wait for TD1 ms. */
                mdelay(TD1);
 
-               /* Turn on FP data transmission. */
+               /* Turn on FP data transmission. */
                via_fp_set_primary_soft_data(VGABASE, true);
 
                /* Wait for TD2 ms. */
                mdelay(TD2);
 
-               /* Turn on FP VEE rail. */
+               /* Turn on FP VEE rail. */
                via_fp_set_primary_soft_vee(VGABASE, true);
 
                /* Wait for TD3 ms. */
                mdelay(TD3);
 
-               /* Turn on FP back light. */
+               /* Turn on FP back light. */
                via_fp_set_primary_soft_back_light(VGABASE, true);
        } else {
                /* Turn off FP back light. */
@@ -284,16 +284,16 @@ via_fp_primary_soft_power_seq(struct via_device 
*dev_priv, bool power_state)
                /* Wait for TD2 ms. */
                mdelay(TD2);
 
-               /* Turn off FP data transmission. */
+               /* Turn off FP data transmission. */
                via_fp_set_primary_soft_data(VGABASE, false);
 
                /* Wait for TD1 ms. */
                mdelay(TD1);
 
-               /* Turn off FP VDD rail. */
+               /* Turn off FP VDD rail. */
                via_fp_set_primary_soft_vdd(VGABASE, false);
 
-               /* Turn off FP Display Period. */
+               /* Turn off FP Display Period. */
                via_fp_set_primary_direct_display_period(VGABASE, false);
        }
 
commit 7aa5b289955094874b3557ee0f3144556da2da2c
Author: Kevin Brace <kevinbr...@gmx.com>
Date:   Mon Jul 10 14:29:03 2017 -0500

    Keep FP hardware sequence off inside via_fp_primary_soft_power_seq
    
    Signed-off-by: Kevin Brace <kevinbr...@gmx.com>

diff --git a/drivers/gpu/drm/via/via_fp.c b/drivers/gpu/drm/via/via_fp.c
index 1d730a9eab9..0352158a392 100644
--- a/drivers/gpu/drm/via/via_fp.c
+++ b/drivers/gpu/drm/via/via_fp.c
@@ -238,6 +238,9 @@ via_fp_primary_soft_power_seq(struct via_device *dev_priv, 
bool power_state)
 {
        DRM_DEBUG_KMS("Entered via_fp_primary_soft_power_seq.\n");
 
+       /* Turn off FP hardware power sequence. */
+       via_fp_set_primary_hard_power(VGABASE, false);
+
        /* Use software FP power sequence control. */
        via_fp_set_primary_power_seq_type(VGABASE, false);
 
_______________________________________________
Openchrome-devel mailing list
Openchrome-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/openchrome-devel

Reply via email to