diff options
Diffstat (limited to 'drivers/video/i810/i810_main.c')
-rw-r--r-- | drivers/video/i810/i810_main.c | 13 |
1 files changed, 10 insertions, 3 deletions
diff --git a/drivers/video/i810/i810_main.c b/drivers/video/i810/i810_main.c index 266d0ab92663..d8467c03b49f 100644 --- a/drivers/video/i810/i810_main.c +++ b/drivers/video/i810/i810_main.c | |||
@@ -149,6 +149,7 @@ static int vyres __devinitdata; | |||
149 | static int sync __devinitdata; | 149 | static int sync __devinitdata; |
150 | static int extvga __devinitdata; | 150 | static int extvga __devinitdata; |
151 | static int dcolor __devinitdata; | 151 | static int dcolor __devinitdata; |
152 | static int ddc3 __devinitdata = 2; | ||
152 | 153 | ||
153 | /*------------------------------------------------------------*/ | 154 | /*------------------------------------------------------------*/ |
154 | 155 | ||
@@ -1763,6 +1764,8 @@ static void __devinit i810_init_defaults(struct i810fb_par *par, | |||
1763 | if (sync) | 1764 | if (sync) |
1764 | par->dev_flags |= ALWAYS_SYNC; | 1765 | par->dev_flags |= ALWAYS_SYNC; |
1765 | 1766 | ||
1767 | par->ddc_num = ddc3; | ||
1768 | |||
1766 | if (bpp < 8) | 1769 | if (bpp < 8) |
1767 | bpp = 8; | 1770 | bpp = 8; |
1768 | 1771 | ||
@@ -1885,7 +1888,7 @@ static void __devinit i810fb_find_init_mode(struct fb_info *info) | |||
1885 | int found = 0; | 1888 | int found = 0; |
1886 | #ifdef CONFIG_FB_I810_I2C | 1889 | #ifdef CONFIG_FB_I810_I2C |
1887 | int i; | 1890 | int i; |
1888 | int err; | 1891 | int err = 1; |
1889 | struct i810fb_par *par = info->par; | 1892 | struct i810fb_par *par = info->par; |
1890 | #endif | 1893 | #endif |
1891 | 1894 | ||
@@ -1895,8 +1898,8 @@ static void __devinit i810fb_find_init_mode(struct fb_info *info) | |||
1895 | #ifdef CONFIG_FB_I810_I2C | 1898 | #ifdef CONFIG_FB_I810_I2C |
1896 | i810_create_i2c_busses(par); | 1899 | i810_create_i2c_busses(par); |
1897 | 1900 | ||
1898 | for (i = 0; i < 4; i++) { | 1901 | for (i = 0; i < par->ddc_num + 1; i++) { |
1899 | err = i810_probe_i2c_connector(info, &par->edid, i+1); | 1902 | err = i810_probe_i2c_connector(info, &par->edid, i); |
1900 | if (!err) | 1903 | if (!err) |
1901 | break; | 1904 | break; |
1902 | } | 1905 | } |
@@ -1983,6 +1986,8 @@ static int __devinit i810fb_setup(char *options) | |||
1983 | vsync2 = simple_strtoul(this_opt+7, NULL, 0); | 1986 | vsync2 = simple_strtoul(this_opt+7, NULL, 0); |
1984 | else if (!strncmp(this_opt, "dcolor", 6)) | 1987 | else if (!strncmp(this_opt, "dcolor", 6)) |
1985 | dcolor = 1; | 1988 | dcolor = 1; |
1989 | else if (!strncmp(this_opt, "ddc3", 4)) | ||
1990 | ddc3 = 3; | ||
1986 | else | 1991 | else |
1987 | mode_option = this_opt; | 1992 | mode_option = this_opt; |
1988 | } | 1993 | } |
@@ -2190,6 +2195,8 @@ MODULE_PARM_DESC(sync, "wait for accel engine to finish drawing" | |||
2190 | module_param(dcolor, bool, 0); | 2195 | module_param(dcolor, bool, 0); |
2191 | MODULE_PARM_DESC(dcolor, "use DirectColor visuals" | 2196 | MODULE_PARM_DESC(dcolor, "use DirectColor visuals" |
2192 | " (default = 0 = TrueColor)"); | 2197 | " (default = 0 = TrueColor)"); |
2198 | module_param(ddc3, bool, 0); | ||
2199 | MODULE_PARM_DESC(ddc3, "Probe DDC bus 3 (default = 0 = no)"); | ||
2193 | module_param(mode_option, charp, 0); | 2200 | module_param(mode_option, charp, 0); |
2194 | MODULE_PARM_DESC(mode_option, "Specify initial video mode"); | 2201 | MODULE_PARM_DESC(mode_option, "Specify initial video mode"); |
2195 | 2202 | ||