[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Sun Leo (ZX)



Mark Morgan Lloyd wrote:
Robert Reif wrote:
Robert Reif wrote:
I can duplicate your progress on my ss20. prom_printf still works and it appears that the driver is hanging in register_framebuffer. info or dp must not be right. I'll try some more tomorrow.


By looking at the code, it appears that leo has no property named "linebytes" which means that par->fbsize is probably 0. I will verify this tonight when I get a chance.

Bearing in mind that I am a long way down the ladder as far as understanding kernel driver modules and the Sun architecture goes, but adding more debugging code I see

[MarkMLl] In leo_fixup_var_rgb()
[MarkMLl] of_getintprop_default(linebytes, 1152) returned 1152
[MarkMLl] fbsize 1040384
[MarkMLl] In leo_init_wids()

i.e. I think it's being supplied with a plausible default. Can anybody say whether that result is sane?

I've been trying to compare 2.4 and 2.6 drivers but so far have not really found enough similarities to be able to work out the relevant differences.

This patch gets the driver loading and not crashing but it also doesn't work.
I just get a blank screen so there is still something else wrong.

Sun will be releasing leo documentation soon: http://wikis.sun.com/display/FOSSdocs/Home
so I hope that helps in figuring out what else is wrong.
diff --git a/drivers/video/leo.c b/drivers/video/leo.c
index 8bc46e9..c0187d8 100644
--- a/drivers/video/leo.c
+++ b/drivers/video/leo.c
@@ -596,6 +596,7 @@ static int __devinit leo_probe(struct of
 
 	info->flags = FBINFO_DEFAULT | FBINFO_HWACCEL_YPAN;
 	info->fbops = &leo_ops;
+	info->pseudo_palette = par->clut_data;
 
 	leo_init_wids(info);
 	leo_init_hw(info);
@@ -649,7 +650,7 @@ static int __devexit leo_remove(struct o
 
 static struct of_device_id leo_match[] = {
 	{
-		.name = "leo",
+		.name = "SUNW,leo",
 	},
 	{},
 };

Reply to: