rendered paste bodystatic int blizzard_set_rotate(int angle){ u32 l; struct omapfb_device *fbdev = blizzard.fbdev; l = blizzard_read_reg(BLIZZARD_POWER_SAVE); if (l & 0x03) { return -EINVAL; } l = blizzard_read_reg(BLIZZARD_PANEL_CONFIGURATION); l &= ~0x03; switch (angle) { case 0: l = l | 0x00; break; case 90: l = l | 0x03; break; case 180: l = l | 0x02; break; case 270: l = l | 0x01; break; default: return -EINVAL; } blizzard_write_reg(BLIZZARD_PANEL_CONFIGURATION, l); if (l & 0x01) { blizzard.auto_update_window.width = fbdev->panel->y_res; blizzard.auto_update_window.height = fbdev->panel->x_res; blizzard.auto_update_window.out_width = fbdev->panel->y_res; blizzard.auto_update_window.out_height = fbdev->panel->x_res; blizzard.screen_width = fbdev->panel->y_res; blizzard.screen_height = fbdev->panel->x_res; } else { blizzard.auto_update_window.width = fbdev->panel->x_res; blizzard.auto_update_window.height = fbdev->panel->y_res; blizzard.auto_update_window.out_width = fbdev->panel->x_res; blizzard.auto_update_window.out_height = fbdev->panel->y_res; blizzard.screen_width = fbdev->panel->x_res; blizzard.screen_height = fbdev->panel->y_res; } return 0;}