Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 09 Jun 1998 13:21:42 +0900
From:      Jun-ichiro Itoh <itojun@itojun.org>
To:        core@FreeBSD.ORG
Cc:        itojun@itojun.org
Subject:   new config
Message-ID:  <9929.897366102@cardamom.itojun.org>

next in thread | raw e-mail | index | archive | help
	Hello, this is Jun-ichiro Itoh.
	What is the plan for "config" program?  Specifically, when will
	FreeBSD move to "new config" which is used by NetBSD or BSDI?

	On June 3rd, there was FreeBSD BOF at Interop98 Tokyo, and
	it became very clear that many project has been stucked due to the
	fact FreeBSD is using old config.
	For example (this is basically summary of discussion):
	- With old config, the order of probe/attach is defined sorely by
	  the type of bus, say, pci_configure() then isa_configure().
	  There are devices that are not happy with this method, such as
	  cardbus controller.
	- PAO/laptop support people would like to have separate bus type
	  for pccard and cardbus.  Cardbus people feels that they cannot make
	  progress any more without bus separation.  Current probe/attach
	  mechanism used for laptop support is not clean enough, and very hard
	  to understand.  Also, this is affected by order-of-probe problem
	  (the previous item).
	  (pccard attach routine fills intr/port information and calls isa
	  attach routines, basically)
	- Cannot pass "flags" field to pci devices.
	- isapnp/pci should have a separate bustype from isa, of course.
	- It is becoming really hard to port something from/to FreeBSD to/from
	  NetBSD or BSDI.
	- There are many bus kind of hardware coming, for example, usb or
	  IEEE1394.  If we don't have separate bus type for them, config file
	  will become too ugly.
	  NetBSD usb team uses bus named "usb" for this, and it looks really
	  clean.
	- New config gives a cleaner way to define relationship between
	  "parent" device and "child" device.  This must be incorporated for
	  cleaner wdc/wd disk/atapi/whatever structure, and for parallel-port
	  bus.
	- Having foo_softc[NFOO] is A BAD THING, thinking about pci/isapnp
	  devices.  We must avoid this.
	- The way to register interrupt is different between pci device and
	  isa device.  It is cumbersome.
	I understand that FreeBSD-current kernel is targetted toward
	LKM-centric approach, but I believe new config is inevitable for
	future development of FreeBSD kernel.
	I think this is the last chance to incorporate new config, it must
	be done before moving everything to 3.0.

	I also understand that it needs a whole bunch of rewrites to every
	drivers.
	I propose to have separate repository for a while for "new config"
	migration (machine and disk is almost ready, hosted by jp.freebsd
	camp), and merge it into freefall if completed.
	There's some work has already been done, initial patch is already
	available so we can start working right away.  There are some
	volunteers from jp.freebsd camp already, and of course I'm waiting
	for more volunteers to come.

	If something is already decided about this topic, please give me
	some pointer for the discussion archive.  I do not want to spend
	my time to this, if it will never be merged into.

itojun

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



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