[coreboot] DBE62 status

Mart Raudsepp mart.raudsepp at artecdesign.ee
Sat May 3 05:40:51 CEST 2008

Ühel kenal päeval, L, 2008-05-03 kell 05:31, kirjutas Mart Raudsepp:
> * lxfb and Xorg does not work, probably no video memory setup:
> lxfb 0000:00:01.1: failed to map frame buffer or controller registers
> lxfb: probe of 0000:00:01.1 failed with error -12

Attached is a trivial patch to set up the video memory, but I still get
no picture. Probably other setup problems causing trouble still.
With video memory set up I get problems starting with no visual effect
on loading lxfb module to a nice kernel oops loop on Xorg start.

Patch itself is probably good, I'm just not sure where the 8MB comes
from and I don't know yet what this reserved memory is used for (just
framebuffer, or other functions too, etc).

This also reminds me that I didn't notice a way in the current
menuconfig to disable the muxed first UART to allow VGA DDC to work.
That I believe should be configurable from Kconfig, but I might have
overlooked something. Got reminded because i've had trouble without DDC
on vm86 based xorg-server with geode driver before.

One difference with our working v2 code regarding video is that the
video IRQ isn't shared, as they are given out more separately via
Config/Options.lb. Not sure if that could matter, but that's one thing.

dmesg additions on "modprobe lxfb" after video memory patch:

PCI: Guessed IRQ 11 for device 0000:00:01.1
PCI: Sharing IRQ 11 with 0000:00:01.2
PCI: Sharing IRQ 11 with 0000:00:0f.1
lxfb 0000:00:01.1: 8192 KB of video memory at 0xfd000000
fb0: Geode LX frame buffer device

Start of kernel spew I found from my serial console quite some time
later on after starting X and sitting in a freeze (there are some 50
pages more, probably got into a loop on pdflush problems - not pasted
here - more textual content in the end):

Oops: 0000 [#1] PREEMPT 
Modules linked in: lxfb fb cfbcopyarea cfbimgblt cfbfillrect geode_aes crypto_blkcipher crypto_algapi via_velocity

Pid: 3162, comm: X Not tainted (2.6.25-gentoo-r1 #4)
EIP: 0060:[<c027210a>] EFLAGS: 00010282 CPU: 0
EIP is at do_mpage_readpage+0x15/0x3e1
EAX: 00000000 EBX: 0000013c ECX: 00000001 EDX: c10252c0
ESI: 00000000 EDI: c10252c0 EBP: ce609d6c ESP: ce609d10
 DS: 007b ES: 007b FS: 0000 GS: 0033 SS: 0068
Process X (pid: 3162, ti=ce608000 task=cf02a070 task.ti=ce608000)
Stack: ce609d4c 00000000 ce609d30 00000001 c10252c0 00000000 00000001 00000000 
       ce609d38 c025e210 ce609d4c c025fbcd c03c7a38 cecc1534 cec0b430 ce609d64 
       c028b8b4 00000000 cecc1534 cecc1534 0000013c 00000000 c10252c0 ce609dc0 
Call Trace:
 [<c025e210>] ? d_rehash+0x16/0x42
 [<c025fbcd>] ? d_splice_alias+0xd0/0xd9
 [<c028b8b4>] ? ext3_lookup+0x7b/0xa2
 [<c027250a>] ? mpage_readpage+0x34/0x48
 [<c0288269>] ? ext3_get_block+0x0/0xb8
 [<c025654c>] ? path_put+0x0/0x23
 [<c0258225>] ? __link_path_walk+0xc68/0xc7f
 [<c0235d8e>] ? find_lock_page+0x26/0x9c
 [<c0287a94>] ? ext3_readpage+0xf/0x11
 [<c0236567>] ? filemap_fault+0x310/0x351
 [<c02582c9>] ? path_walk+0x8d/0x96
 [<c023fd2d>] ? __do_fault+0x4f/0x304
 [<c02411ec>] ? handle_mm_fault+0x235/0x4f2
 [<c020cd7e>] ? do_page_fault+0x238/0x5e2
 [<c03911c4>] ? unix_stream_connect+0x362/0x38e
 [<c0342249>] ? sys_connect+0x54/0x71
 [<c03424c9>] ? sock_map_fd+0x45/0x4f
 [<c03434bb>] ? sys_socketcall+0x6f/0x168
 [<c020cb46>] ? do_page_fault+0x0/0x5e2
 [<c03bb2ba>] ? error_code+0x6a/0x70
Code: 58 85 d2 74 0a b8 01 00 00 00 e8 da f9 ff ff 89 d8 8b 5d fc c9 c3 55 89 e5 57 56 53 83 ec 50 89 45 b8 89 55 b4 89 4d b0 8b 42 10 <8b> 0 
EIP: [<c027210a>] do_mpage_readpage+0x15/0x3e1 SS:ESP 0068:ce609d10
---[ end trace c55b15462a99792c ]---
Eeek! page_mapcount(page) went negative! (-1807219968)
  page pfn = 1280
  page->flags = 98393bc4
  page->count = 2000000
  page->mapping = 00000000
  vma->vm_ops = generic_file_vm_ops+0x0/0x18
  vma->vm_ops->nopage = 0x0
  vma->vm_ops->fault = filemap_fault+0x0/0x351
  vma->vm_file->f_op->mmap = generic_file_mmap+0x0/0x3f
------------[ cut here ]------------
kernel BUG at mm/rmap.c:669!
invalid opcode: 0000 [#2] PREEMPT 

Feels very much like more setup work is necessary. I think getting the
other USB ports to give power (e.g light up an optical mouse) might be a
good start.

Mart Raudsepp
-------------- next part --------------
A non-text attachment was scrubbed...
Name: dbe62_video_mem.patch
Type: text/x-patch
Size: 649 bytes
Desc: not available
URL: <http://www.coreboot.org/pipermail/coreboot/attachments/20080503/11a2a13e/attachment.patch>

More information about the coreboot mailing list