Gitweb:     
http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=101aa56d02240dfe36b2fb229fed0a9d6efba425
Commit:     101aa56d02240dfe36b2fb229fed0a9d6efba425
Parent:     71a27fecaf836093a30fe538c5ab98ef0b25bfc8
Author:     Geert Uytterhoeven <[EMAIL PROTECTED]>
AuthorDate: Tue Oct 16 01:29:41 2007 -0700
Committer:  Linus Torvalds <[EMAIL PROTECTED]>
CommitDate: Tue Oct 16 09:43:20 2007 -0700

    ps3av: treat DVI-D like HDMI in autodetect
    
    treat DVI-D monitors like HDMI monitors when autodetecting the best video 
mode
    
    Signed-off-by: Geert Uytterhoeven <[EMAIL PROTECTED]>
    Signed-off-by: Antonino Daplas <[EMAIL PROTECTED]>
    Signed-off-by: Andrew Morton <[EMAIL PROTECTED]>
    Signed-off-by: Linus Torvalds <[EMAIL PROTECTED]>
---
 drivers/ps3/ps3av.c         |   24 ++++++++----------------
 include/asm-powerpc/ps3av.h |    1 -
 2 files changed, 8 insertions(+), 17 deletions(-)

diff --git a/drivers/ps3/ps3av.c b/drivers/ps3/ps3av.c
index 51feb7e..21f69a7 100644
--- a/drivers/ps3/ps3av.c
+++ b/drivers/ps3/ps3av.c
@@ -620,9 +620,6 @@ static int ps3av_hdmi_get_id(struct ps3av_info_monitor 
*info)
        u32 res_50, res_60;
        int id;
 
-       if (info->monitor_type != PS3AV_MONITOR_TYPE_HDMI)
-               return 0;
-
        /* check native resolution */
        res_50 = info->res_50.native & PS3AV_RES_MASK_50;
        res_60 = info->res_60.native & PS3AV_RES_MASK_60;
@@ -712,7 +709,7 @@ static int ps3av_auto_videomode(struct 
ps3av_pkt_av_get_hw_conf *av_hw_conf,
        struct ps3av_info_monitor *info;
 
        /* get mode id for hdmi */
-       for (i = 0; i < av_hw_conf->num_of_hdmi; i++) {
+       for (i = 0; i < av_hw_conf->num_of_hdmi && !id; i++) {
                res = ps3av_cmd_video_get_monitor_info(&monitor_info,
                                                       PS3AV_CMD_AVPORT_HDMI_0 +
                                                       i);
@@ -720,24 +717,19 @@ static int ps3av_auto_videomode(struct 
ps3av_pkt_av_get_hw_conf *av_hw_conf,
                        return -1;
 
                ps3av_monitor_info_dump(&monitor_info);
+
                info = &monitor_info.info;
-               /* check DVI */
-               if (info->monitor_type == PS3AV_MONITOR_TYPE_DVI) {
+               switch (info->monitor_type) {
+               case PS3AV_MONITOR_TYPE_DVI:
                        dvi = PS3AV_MODE_DVI;
-                       break;
-               }
-               /* check HDMI */
-               id = ps3av_hdmi_get_id(info);
-               if (id) {
-                       /* got valid mode id */
+                       /* fall through */
+               case PS3AV_MONITOR_TYPE_HDMI:
+                       id = ps3av_hdmi_get_id(info);
                        break;
                }
        }
 
-       if (dvi) {
-               /* DVI mode */
-               id = PS3AV_DEFAULT_DVI_MODE_ID;
-       } else if (!id) {
+       if (!id) {
                /* no HDMI interface or HDMI is off */
                if (ps3av->region & PS3AV_REGION_60)
                        id = PS3AV_DEFAULT_AVMULTI_MODE_ID_REG_60;
diff --git a/include/asm-powerpc/ps3av.h b/include/asm-powerpc/ps3av.h
index c023c5d..014673e 100644
--- a/include/asm-powerpc/ps3av.h
+++ b/include/asm-powerpc/ps3av.h
@@ -305,7 +305,6 @@
 #define PS3AV_DEFAULT_AVMULTI_MODE_ID_REG_60   1       /* 480i */
 #define PS3AV_DEFAULT_HDMI_MODE_ID_REG_50      7       /* 576p */
 #define PS3AV_DEFAULT_AVMULTI_MODE_ID_REG_50   6       /* 576i */
-#define PS3AV_DEFAULT_DVI_MODE_ID              2       /* 480p */
 
 #define PS3AV_REGION_60                                0x01
 #define PS3AV_REGION_50                                0x02
-
To unsubscribe from this list: send the line "unsubscribe git-commits-head" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to