From: davej@redhat.com Negate the expression not the register seems more sensible? --- drivers/video/aty/aty128fb.c | 2 +- 1 files changed, 1 insertion(+), 1 deletion(-) diff -puN drivers/video/aty/aty128fb.c~aty128fb-logic-error drivers/video/aty/aty128fb.c --- 25/drivers/video/aty/aty128fb.c~aty128fb-logic-error 2004-01-22 22:53:40.000000000 -0800 +++ 25-akpm/drivers/video/aty/aty128fb.c 2004-01-22 22:53:40.000000000 -0800 @@ -2102,7 +2102,7 @@ aty128_set_backlight_enable(int on, int reg |= LVDS_BL_MOD_EN | LVDS_BLON; if (on && level > BACKLIGHT_OFF) { reg |= LVDS_DIGION; - if (!reg & LVDS_ON) { + if (!(reg & LVDS_ON)) { reg &= ~LVDS_BLON; aty_st_le32(LVDS_GEN_CNTL, reg); (void)aty_ld_le32(LVDS_GEN_CNTL); _