On Thursday, July 19, 2012 1:49 AM, olaf@xxxxxxxxx wrote: > From: Tony Breeds <tony@xxxxxxxxxxxxxxxxxx> > > These devices are set to 640x480 by firmware, switch them to 800x600@60 > so that the graphical installer can run on remote console. > > Reported by IBM during SLES10 SP2 beta testing: > > https://bugzilla.novell.com/show_bug.cgi?id=461002 > LTC50817 > > Signed-off-by: Olaf Hering <olaf@xxxxxxxxx> If the author is Tony Breeds, please add 'Signed-off-by: Tony Breeds <tony@xxxxxxxxxxxxxxxxxx>'. Best regards, Jingoo Han > > diff --git a/drivers/video/aty/radeon_monitor.c b/drivers/video/aty/radeon_monitor.c > index 9261c91..5c23eac 100644 > --- a/drivers/video/aty/radeon_monitor.c > +++ b/drivers/video/aty/radeon_monitor.c > @@ -730,6 +730,25 @@ static void radeon_videomode_to_var(struct fb_var_screeninfo *var, > var->vmode = mode->vmode; > } > > +#ifdef CONFIG_PPC_PSERIES > +static int is_powerblade(const char *model) > +{ > + struct device_node *root; > + const char* cp; > + int len, l, rc = 0; > + > + root = of_find_node_by_path("/"); > + if (root && model) { > + l = strlen(model); > + cp = of_get_property(root, "model", &len); > + if (cp) > + rc = memcmp(model, cp, min(len, l)) == 0; > + of_node_put(root); > + } > + return rc; > +} > +#endif > + > /* > * Build the modedb for head 1 (head 2 will come later), check panel infos > * from either BIOS or EDID, and pick up the default mode > @@ -865,6 +884,22 @@ void __devinit radeon_check_modes(struct radeonfb_info *rinfo, const char *mode_ > has_default_mode = 1; > } > > +#ifdef CONFIG_PPC_PSERIES > + if (!has_default_mode && ( > + is_powerblade("IBM,8842") || /* JS20 */ > + is_powerblade("IBM,8844") || /* JS21 */ > + is_powerblade("IBM,7998") || /* JS12/JS21/JS22 */ > + is_powerblade("IBM,0792") || /* QS21 */ > + is_powerblade("IBM,0793") /* QS22 */ > + )) { > + printk("Falling back to 800x600 on JSxx hardware\n"); > + if (fb_find_mode(&info->var, info, "800x600@60", > + info->monspecs.modedb, > + info->monspecs.modedb_len, NULL, 8) != 0) > + has_default_mode = 1; > + } > +#endif > + > /* > * Still no mode, let's pick up a default from the db > */ > -- > 1.7.10.4 > > -- > To unsubscribe from this list: send the line "unsubscribe linux-fbdev" in > the body of a message to majordomo@xxxxxxxxxxxxxxx > More majordomo info at http://vger.kernel.org/majordomo-info.html -- To unsubscribe from this list: send the line "unsubscribe linux-fbdev" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html