From: "Antonino A. Daplas" - Ensure that CRTC registers are accessible by unlocking them on set_par(), otherwise i2c reading will fail. - The function nvidia_vga_protect(), does not protect the VGA registers, but turns off the screen. Rename it to nvidia_screen_off(). Signed-off-by: Antonino Daplas Signed-off-by: Andrew Morton --- drivers/video/nvidia/nvidia.c | 7 ++++--- 1 files changed, 4 insertions(+), 3 deletions(-) diff -puN drivers/video/nvidia/nvidia.c~nvidiafb-ensure-that-crtc-registers-are-accessible drivers/video/nvidia/nvidia.c --- a/drivers/video/nvidia/nvidia.c~nvidiafb-ensure-that-crtc-registers-are-accessible +++ a/drivers/video/nvidia/nvidia.c @@ -200,7 +200,7 @@ static int nvidia_panel_tweak(struct nvi return tweak; } -static void nvidia_vga_protect(struct nvidia_par *par, int on) +static void nvidia_screen_off(struct nvidia_par *par, int on) { unsigned char tmp; @@ -649,7 +649,7 @@ static int nvidiafb_set_par(struct fb_in NVLockUnlock(par, 0); } - nvidia_vga_protect(par, 1); + nvidia_screen_off(par, 1); nvidia_write_regs(par, &par->ModeReg); NVSetStartAddress(par, 0); @@ -687,7 +687,7 @@ static int nvidiafb_set_par(struct fb_in par->cursor_reset = 1; - nvidia_vga_protect(par, 0); + nvidia_screen_off(par, 0); #ifdef CONFIG_BOOTX_TEXT /* Update debug text engine */ @@ -696,6 +696,7 @@ static int nvidiafb_set_par(struct fb_in info->var.bits_per_pixel, info->fix.line_length); #endif + NVLockUnlock(par, 0); NVTRACE_LEAVE(); return 0; } _