View Single Post
Posts: 2,152 | Thanked: 1,490 times | Joined on Jan 2006 @ Czech Republic
#70
I have uploaded updated kernel that seems to work with media player and camera.
http://fanoush.wz.cz/maemo/kernel-2....otation.tar.gz

Basically I reverted two changes below back to original state
Code:
@@ -522,10 +530,8 @@ static int set_fb_var(struct fb_info *fb
 		xres_max = panel->x_res;
 		yres_min = OMAPFB_PLANE_YRES_MIN;
 		yres_max = panel->y_res;
-		if (cpu_is_omap15xx()) {
-			var->xres = panel->x_res;
-			var->yres = panel->y_res;
-		}
+		var->xres = panel->x_res;
+		var->yres = panel->y_res;
 		break;
 	case 90:
 	case 270:
@@ -533,10 +539,8 @@ static int set_fb_var(struct fb_info *fb
 		xres_max = panel->y_res;
 		yres_min = OMAPFB_PLANE_XRES_MIN;
 		yres_max = panel->x_res;
-		if (cpu_is_omap15xx()) {
-			var->xres = panel->y_res;
-			var->yres = panel->x_res;
-		}
+		var->xres = panel->y_res;
+		var->yres = panel->x_res;
 		break;
 	default:
 		return -EINVAL;
While the idea in those changes looks good for normal screen, it messes up resolution of overlay/video/camera plane because it uses values from LCD panel resolution (panel->x_res,panel->y_res =800x480) which is wrong for (smaller) overlay plane.

With stock kernel after playing Nokia_N810.avi video it looks like this
Code:
Nokia-N810-50-2:~# cat /sys/class/graphics/fb1/virtual_size
400,240
With the code above in effect, resolution is changed to 800,120 which is not ideal :-)

Omitting those changes seems to not to break anything visible and allows overlay plane to work (even in rotated mode). Still, this quick 'fix' is not correct and better code is needed. Please report if this kernel makes anything worse.
__________________
Newbies click here before posting. Thanks.

If you really need to PM me with troubleshooting question please consider posting it to the forum instead. It is OK to PM me a link to such post then. Thank you.

Last edited by fanoush; 2008-03-15 at 22:28. Reason: more details added
 

The Following 6 Users Say Thank You to fanoush For This Useful Post: