diff -up ./drivers/video/pxafb.c.helge ./drivers/video/pxafb.c --- ./drivers/video/pxafb.c.helge 2008-01-27 13:26:44.000000000 +0100 +++ ./drivers/video/pxafb.c 2008-01-27 13:27:39.000000000 +0100 @@ -1194,7 +1194,7 @@ pxafb_freq_transition(struct notifier_bl if ((clkinfo->old == 13000)) break; - pcd = get_pcd(fbi->fb.var.pixclock); + pcd = get_pcd(fbi, fbi->fb.var.pixclock); lccr3 = fbi->reg_lccr3; set_hsync_time(fbi, pcd); fbi->reg_lccr3 = (fbi->reg_lccr3 & ~0xff) | LCCR3_PixClkDiv(pcd); diff -up ./drivers/video/backlight/locomolcd.c.helge ./drivers/video/backlight/locomolcd.c --- ./drivers/video/backlight/locomolcd.c.helge 2008-01-27 15:40:33.000000000 +0100 +++ ./drivers/video/backlight/locomolcd.c 2008-01-27 15:42:26.000000000 +0100 @@ -80,7 +80,7 @@ static void locomolcd_off(int comadj) locomo_gpio_write(locomolcd_dev->dev.parent, LOCOMO_GPIO_LCD_VSHD_ON, 0); } -void locomolcd_power(int on) +void locomolcd_power(int on, struct fb_var_screeninfo *var_unused) { int comadj = sharpsl_param.comadj; unsigned long flags; @@ -178,7 +178,7 @@ static int locomolcd_probe(struct locomo * from fs_initcall, which is before locomo is activated. * We need to recall poodle_lcd_power here*/ if (machine_is_poodle()) - locomolcd_power(1); + locomolcd_power(1, NULL); local_irq_restore(flags); diff -up ./arch/arm/mach-pxa/poodle.c.helge ./arch/arm/mach-pxa/poodle.c --- ./arch/arm/mach-pxa/poodle.c.helge 2008-01-27 13:07:09.000000000 +0100 +++ ./arch/arm/mach-pxa/poodle.c 2008-01-27 15:49:59.000000000 +0100 @@ -48,7 +48,7 @@ #include "devices.h" #include "sharpsl.h" -extern void locomolcd_power(int on); +extern void locomolcd_power(int on, struct fb_var_screeninfo *var_unused); static struct resource poodle_scoop_resources[] = { [0] = { @@ -176,7 +176,7 @@ static void poodle_null_hsync(void) } static struct corgits_machinfo poodle_ts_machinfo = { - .get_hsync_len = poodle_get_hsync_len, + .get_hsync_invperiod = poodle_get_hsync_len, .put_hsync = poodle_null_hsync, .wait_hsync = poodle_null_hsync, };