lkml.org 
[lkml]   [2001]   [Mar]   [27]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
From
SubjectRe: module depencies during startup
Date
On Tue, 27 Mar 2001 20:09:13 +0200, 
Tea Age <th@visuelle-maschinen.de> wrote:
>I found out, that agpgart, which is needed by i810fb, is initialized
>_after_ i810fb setup. Therefore i810fb failes to initialize.

This will be messy. I assume you put i810fb in drivers/char/Makefile
as something like this
obj-$(CONFIG_I810FB) += i810fb.o
That links i810fb.o into drivers/char/char.o in a defined order
relative to the other objects in drivers/char. In the top level
Makefile we have

DRIVERS =drivers/block/block.o \
drivers/char/char.o \
...
DRIVERS-$(CONFIG_AGP) += drivers/char/agp/agp.o

so everything in drivers/char is linked into vmlinux before agp is
linked. Since the link order defines the execution order of the
__initcall routines, everything in drivers/char/char.o is initialised
before agp.

Two possible fixes, which one you use depends on what the frame buffer
maintainers think is the correct approach.

(1) Move agp.o ahead of char.o in the drivers list so agp is available
to all char drivers. Will that break any char drivers? I have no
idea, ask the agp and frame buffer maintainers.

(2) Move i810fb to its own directory under drivers/char, like agp and
drm. Adjust drivers/char/Makefile accordingly and add

DRIVERS-$(CONFIG_I810FB) += i810fb.o

after agp in the top level Makefile. This will work as a short
term fix but the correct order for agp versus the rest of the char
drivers still needs to be reviewd (and documented!).

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/

\
 
 \ /
  Last update: 2005-03-22 13:17    [W:0.080 / U:0.044 seconds]
©2003-2011 Jasper Spaans. Advertise on this site