diff -urN linux-benh/drivers/macintosh/adbhid.c linux-benh.new/drivers/macintosh/adbhid.c --- linux-benh/drivers/macintosh/adbhid.c Tue Jul 11 12:53:57 1933 +++ linux-benh.new/drivers/macintosh/adbhid.c Sun Jul 29 23:14:17 2001 @@ -493,6 +493,7 @@ set_bit(KEY_VOLUMEDOWN, adbhid[id]->input.keybit); set_bit(KEY_BRIGHTNESSUP, adbhid[id]->input.keybit); set_bit(KEY_BRIGHTNESSDOWN, adbhid[id]->input.keybit); + set_bit(KEY_EJECTCD, adbhid[id]->input.keybit); break; } if (adbhid[id]->name[0]) diff -urN linux-benh/drivers/macintosh/mac_hid.c linux-benh.new/drivers/macintosh/mac_hid.c --- linux-benh/drivers/macintosh/mac_hid.c Tue Jul 11 12:53:57 1933 +++ linux-benh.new/drivers/macintosh/mac_hid.c Tue Jul 11 13:17:59 1933 @@ -204,7 +204,7 @@ 0, 0, 0, 0, 0, KEY_VOLUMEDOWN, KEY_MUTE, 0, /* 0x20-0x27 */ 0, 0, 0, 0, 0, 0, 0, 0, /* 0x28-0x2f */ 0, 0, 0, 0, 0, KEY_KPSLASH, 0, KEY_SYSRQ, /* 0x30-0x37 */ - KEY_RIGHTALT, KEY_BRIGHTNESSUP, KEY_BRIGHTNESSDOWN, 0, 0, 0, 0, 0, /* 0x38-0x3f */ + KEY_RIGHTALT, KEY_BRIGHTNESSUP, KEY_BRIGHTNESSDOWN, KEY_EJECTCD, 0, 0, 0, 0, /* 0x38-0x3f */ 0, 0, 0, 0, 0, 0, 0, KEY_HOME, /* 0x40-0x47 */ KEY_UP, KEY_PAGEUP, 0, KEY_LEFT, 0, KEY_RIGHT, 0, KEY_END, /* 0x48-0x4f */ KEY_DOWN, KEY_PAGEDOWN, KEY_INSERT, KEY_DELETE, 0, 0, 0, 0, /* 0x50-0x57 */ diff -urN linux-benh/drivers/video/aty128fb.c linux-benh.new/drivers/video/aty128fb.c --- linux-benh/drivers/video/aty128fb.c Mon Jul 10 23:06:46 1933 +++ linux-benh.new/drivers/video/aty128fb.c Sun Jul 29 22:24:31 2001 @@ -1921,6 +1921,10 @@ /* turn off bus mastering, just in case */ aty_st_le32(BUS_CNTL, aty_ld_le32(BUS_CNTL) | BUS_MASTER_DIS); +#ifdef CONFIG_FB_BACKLIGHT + info->backlight_level=FBBACKLIGHT_MAX; +#endif + aty128fb_set_var(&var, -1, &info->fb_info); aty128_init_engine(&info->default_par, info); @@ -1937,9 +1941,6 @@ pmu_register_sleep_notifier(&aty128_sleep_notifier); } #endif -#ifdef CONFIG_FB_BACKLIGHT - info->backlight_level=FBBACKLIGHT_MAX; -#endif printk(KERN_INFO "fb%d: %s frame buffer device on %s\n", GET_FB_IDX(info->fb_info.node), aty128fb_name, name); @@ -2523,6 +2524,8 @@ aty128_set_backlight(int on, int level, struct fb_info_aty128* info) { unsigned int reg = aty_ld_le32(LVDS_GEN_CNTL); + + info->backlight_level = level; if (!info->lcd_on) on = 0;