Hi Eugine,
The compile options you mentioned seems to be that of 2.6 Kernel?
I am using 2.4. Would you please send me the 2.4 kernel options that work
for you?
Eugene Everson-2 wrote:
>
>
> Looks like your kernel isn't configured right.
>
> Here is what works for me.
>
> 1) Compile a kernel with these options build into the kernel(or as
> modules).
>
> CONFIG_FB=y
> CONFIG_FB_CFB_FILLRECT=y
> CONFIG_FB_CFB_COPYAREA=y
> CONFIG_FB_CFB_IMAGEBLIT=y
>
> 2) Set the pixelformat for directfb,
>
> echo pixelformat=ARGB >> /etc/directfbrc
>
> 3) Insert the sigma modules,
>
> # insmod llad
> # insmod em8xxx
> # ./osdbuf_control -c1280x768 -Ftc:32bpp
> # ./osdbuf_control -p
> For 2.4 kernel
> # insmod mambolfb
> For 2.6 kernel
> # insmod em8xxxfb
>
> Hope it helps.
>
> Eugene.
>
>
> On Mon, Oct 08, 2007 at 01:04:51PM -0700, ppanigrahi wrote:
>>
>> Hi Eugene,
>> Thanks for this post. it might help me in a while. however,
>> I have been trying to set up dfb on 8634 and have following issues.
>>
>> When I load the directdb samples, I am gettting the following messages
>> from
>> the framebuffer driver.
>>
>> resolution : 0
>> Warning, mambolfb_setcolreg, unsupported resolution : 0
>> Warning, mambolfb_setcolreg, unsupported resolution : 0
>> Warning, mambolfb_setcolreg, unsupported resolution : 0
>> Warning, mambolfb_setcolreg, unsupported resolution : 0
>> Warning, mambolfb_setcolreg, unsupported resolution : 0
>> Warning, mambolfb_setcolreg, unsupported resolution : 0
>> fbcon_setup: No support for fontwidth 8
>> fbcon_setup: type 0 (aux 0, depth 16) not supported
>>
>> I am using the following command the load the framebuffer driver.
>>
>> ./osdbuf_control -c -Ftck:16bpp_565
>> OSD format : tck:16bpp_565
>> videomemory=0x13969c00 videomemorysize=614400 palette=0x79000
>> mode=640:480:16
>> # ./osdbuf_control -p
>> videomemory=0x13969c00 videomemorysize=614400 palette=0x79000
>> mode=640:480:16
>> # insmod
>> /mnt/mrua_SMP8634_2.7.144.0_legacy_dev.mips/MRUA_src/mambolfb/mambolfb.o
>> videomemory=
>> 0x13969c00 videomemorysize=614400 palette=0x79000 mode=640:480:16
>> Using
>> /mnt/mrua_SMP8634_2.7.144.0_legacy_dev.mips/MRUA_src/mambolfb/mambolfb.o
>>
>> Is the parameters correct? I am using conventional TV as my output
>> device.
>>
>>
>>
>> I think I am getting unsupported resolution error, because none of
>> FBCON_HAS_CFB16, FBCON_HAS_CFB32,FBCON_HAS_CFB24 have been defined. I
>> tried
>> recompiling the kernel with these options enabled, but when I insert the
>> mambolfb driver, the system produces oops message with a segmentation
>> fault.
>> So I moved back to the original kernel.
>>
>> Please have a look at the following piece of code.
>>
>> #ifdef FBCON_HAS_CFB16
>> red >>= 3;
>> green >>= 2;
>> blue >>= 3;
>> fbcon_cmap.cfb16[regno] = (u16) red << 11
>> |
>> (u16) green << 5 | (u16) blue ;
>> #endif
>> break;
>> case 24:
>> #ifdef FBCON_HAS_CFB24
>> fbcon_cmap.cfb24[regno] = 0xFF << 24 |
>> red
>> << 16 | green << 8 | blue ;
>> #endif
>> break;
>> case 32:
>> #ifdef FBCON_HAS_CFB32
>> fbcon_cmap.cfb32[regno] = 0xFF << 24 |
>> red
>> << 16 | green << 8 | blue ;
>> #endif
>> break;
>> default:
>> printk(KERN_WARNING "Warning,
>> mambolfb_setcolreg, unsupported resolution : %d\n",
>> info->var.bits_per_pixel);
>> }
>>
>> When none of them have been defined, there is no way of plotting a pixel.
>> I
>> think that is the reason why I am not able to get anything on the screen.
>> But there should be some proper way of enabling FBCON_HAS_CFB32 or
>> FBCON_HAS_CFB16 option in the kernel. I looked at the documents which I
>> have. but I could not find any information related to this.
>>
>>
>>
>> When I insmod the driver, I am getting the following crash. This is when
>> I
>> enable FBCON_HAS_CFB16 or FBCON_HAS_CFB32. If I dont enable these, then
>> the
>> setcolreg function wont be able to plot a pixel.
>>
>> mode = 640:480:16
>> mode = 640x480 16 bpp
>> locked 1 regions, starting from region 328637440 at offset 0x00000000
>> OSD videomemory=0x13969c00 (614400 bytes)
>> Line 874
>> Line 780
>> Line 783
>> Line 795
>> mambolfb_set_var, con = -1
>> Line length = 1280 (640x16)
>> registering fb
>> con 0 currcon 0
>> Unable to handle kernel paging request at virtual address 139e1c00, epc
>> ==
>> 901a1ed0, ra == 901
>> a1f50
>> Oops in fault.c::do_page_fault, line 206:
>> $0 : 00000000 90450000 00000000 00000000 00000000 00000000 902d9db9
>> 902da9a8
>> $8 : 139e1c00 0000000e 00000063 ffffffff 00000008 00000800 00000200
>> 00000000
>> $16: 00000000 00000000 9044fa30 00000500 0000000f 915b8f02 139e1c00
>> ffffffff
>> $24: 00000000 901bd918 91b3e000 91b3f9b8 902da9a8
>> 901a1f50
>> Hi : 00000000
>> Lo : 00000630
>> epc : 901a1ed0 Tainted: P
>> Status: 10001c03
>> Cause : 5080800c
>> PrId : 00019068
>> Process insmod (pid: 62, stackpage=91b3e000)
>> Stack: 90440000 ffffffff 9013d908 0101a8c0 00000001 9043ea04 00000010
>> 00000000 904266f8 90440000 00000000 90440000 9043ea04 9019d568 90776480
>> 9043ea04 00000000 00000011 00000018 00000000 0000000a 9013a4bc 91b3fb30
>> 00000000 90222c98 91be6058 00000000 00000000 00000010 00000000 9043ea04
>> 00000000 902ad280 0000136f 90425378 0000136f 00001380 90425378 fffffec5
>> 90430000 ...
>> Call Trace: [<9013d908>] [<9019d568>] [<9013a4bc>] [<90222c98>]
>> [<900360d0>]
>> [<900364e8>] [<90036820>] [<d0631ad7>] [<90223938>] [<d063209c>]
>> [<d063209c>]
>> [<d0630668>] [<d0630fd0>] [<9025e650>] [<9005bda4>] [<901a090c>]
>> [<9013d908>]
>> [<9025e650>] [<9005c324>] [<901376e8>] [<90137a38>] [<90058414>]
>> [<9013837c>]
>> [<902247d0>] [<900e5e7c>] [<900e5e4c>] [<9025e650>] [<9005bda4>]
>> [<900e6024>]
>> [<9025e650>] [<9005c324>] [<90057280>] [<9013a3d0>] [<9013a3d0>]
>> [<90242e30>]
>> [<9025e650>] [<9019c93c>] [<d063209c>] [<90242e30>] [<9025e650>] ...
>>
>> Code: 00912024 00902026 30a3000c <ad040000> 00471021 00675021
>> 8c430000
>> 30a50003 00052880
>>
>> note: insmod[62] exited with preempt_count 1
>>
>>
>>
>> Eugene Everson-2 wrote:
>> >
>> >
>> > I've a had hard time to get dfb to run on sigma 8634/8635 boards with
>> > their
>> > mrua libraries above 142. Hope someone will find this usefull.
>> >
>> > The alignment have to be changed like this,
>> >
>> > systems/fbdev/fbdev.c, in system_initialize function under where the
>> > memory
>> > gets mapped,
>> >
>> > /* Map the framebuffer */
>> > dfb_fbdev->framebuffer_base = mmap( NULL, shared->fix.smem_len,
>> > PROT_READ | PROT_WRITE,
>> > MAP_SHARED,
>> > dfb_fbdev->fd, 0 );
>> >
>> > Add this to fix the allignment(only needed for standalone boards),
>> >
>> > printf("Base memory: %x\n", dfb_fbdev->framebuffer_base);
>> >
>> > #define PAGE_SIZE (4096)
>> >
>> > if (shared->fix.smem_start & (PAGE_SIZE-1)) {
>> > dfb_fbdev->framebuffer_base += (shared->fix.smem_start &
>> > (PAGE_SIZE-1));
>> > fprintf(stderr, "Fix alignment 0x%08lx -> %p.\n",
>> > shared->fix.smem_start, dfb_fbdev->framebuffer_base);
>> > }
>> >
>> > _______________________________________________
>> > directfb-dev mailing list
>> > [email protected]
>> > http://mail.directfb.org/cgi-bin/mailman/listinfo/directfb-dev
>> >
>> >
>>
>> --
>> View this message in context:
>> http://www.nabble.com/sigma-8634-8635-fix-tf4199088.html#a13102510
>> Sent from the DirectFB Dev mailing list archive at Nabble.com.
>>
>>
>> _______________________________________________
>> directfb-dev mailing list
>> [email protected]
>> http://mail.directfb.org/cgi-bin/mailman/listinfo/directfb-dev
>>
>
> _______________________________________________
> directfb-dev mailing list
> [email protected]
> http://mail.directfb.org/cgi-bin/mailman/listinfo/directfb-dev
>
>
--
View this message in context:
http://www.nabble.com/sigma-8634-8635-fix-tf4199088.html#a13145377
Sent from the DirectFB Dev mailing list archive at Nabble.com.
_______________________________________________
directfb-dev mailing list
[email protected]
http://mail.directfb.org/cgi-bin/mailman/listinfo/directfb-dev