Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 04 Dec 1998 22:54:27 -0800
From:      "Jordan K. Hubbard" <jkh@zippy.cdrom.com>
To:        Bill Paul <wpaul@skynet.ctr.columbia.edu>
Cc:        mike@smith.net.au, wilko@yedi.iaf.nl, current@FreeBSD.ORG
Subject:   Re: New drivers and install floppy space
Message-ID:  <3440.912840867@zippy.cdrom.com>
In-Reply-To: Your message of "Sat, 05 Dec 1998 01:07:04 EST." <199812050607.BAA13658@skynet.ctr.columbia.edu>

next in thread | previous in thread | raw e-mail | index | archive | help
> So you boot the FreeBSD install floppy and it probes and finds all
> the hardware that it knows about and brings you to the opening menu
> of sysinstall (or son of sysinstall, or bride of sysinstall, or
> Abott & Costello meet sysinstall, or whatever we have by then).
> One of the menu options is 'Install unlisted/3rd party drivers.'
> So you select this option and it prompts you to insert a floppy
> diskette (or maybe some other media) with the driver KLD on it and
> a description file. The installer reads this file, and from there
> it learns the name of the driver and/or the devices it supports

I think this is the right basic idea, but the wrong place to attack
the problem.  To put it succinctly, it's just not possible right now
to kld in any conceivable driver you might want (most notably those
requiring large contiguous DMA regions).  It is possible, however, to
grab them with the 3rd stage boot code and aggregate the whole mess
together in such a way that it's functionally indistinguishable from
the monolithic kernel image once booted.  If you want to make this
a menu oriented process with options to insert other media (or heck,
grab things over the net) or otherwise populate memory with lots
of optional components before booting the kernel, that's all quite
conceivable from the forth layer.  You wouldn't be able to be very
fancy with your UI, but then I don't think you'd need to be:

    +---------------- driver configuration menu -------------+
    |                                                        |
    | >BOOT -  Boot kernel with default driver set.  	     |
    |  LOAD -  Load 3rd party drivers for installation.      |
    |  CLI  -  Launch a command interpreter instance.        |
    |  QUIT -  Reset the system                              |
    |  	       	       	       	      			     |
    | Enter one of the options above and press [enter]       |
    +--------------------------------------------------------+

Would pretty much do the trick, the LOAD option bringing up a
submenu allowing you to choose floppy, bootp, tftp, whatever..

And it's all technology within our grasp today without having to
implement fully kld'able device drivers or make DEVFS mandatory
first. :)

- Jordan

To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-current" in the body of the message



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?3440.912840867>