From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1K97PO-000147-A1 for qemu-devel@nongnu.org; Wed, 18 Jun 2008 19:49:46 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1K97PL-00013v-Qw for qemu-devel@nongnu.org; Wed, 18 Jun 2008 19:49:44 -0400 Received: from [199.232.76.173] (port=47528 helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1K97PL-00013s-L7 for qemu-devel@nongnu.org; Wed, 18 Jun 2008 19:49:43 -0400 Received: from mail.codesourcery.com ([65.74.133.4]:41521) by monty-python.gnu.org with esmtps (TLS-1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.60) (envelope-from ) id 1K97PK-00038W-Uq for qemu-devel@nongnu.org; Wed, 18 Jun 2008 19:49:43 -0400 From: Paul Brook Subject: Re: [Qemu-devel] QEMU configuration files Date: Thu, 19 Jun 2008 00:49:37 +0100 References: <48595024.7050400@bellard.org> In-Reply-To: <48595024.7050400@bellard.org> MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit Content-Disposition: inline Message-Id: <200806190049.37955.paul@codesourcery.com> Reply-To: qemu-devel@nongnu.org List-Id: qemu-devel.nongnu.org List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: qemu-devel@nongnu.org > - Machine definitions contain machine parameters and device definitions. > Device definitions are used to create new devices not instanciated in > the hardcoded machine definition such as PCI and USB devices. >... > - Is it worth specifying board specific network controllers as separate > devices (I tried to do that for smc91c111 devices) ? A simpler solution > would be to add new machine parameters to do that. IMHO the goal should be for most (maybe all) devices to be explicitly instantiated, not just the easy USB/PCI ones. That may require additional work to specify things like IRQ routing and memory ranges. For example there's no real reason why qemu needs to know about most of the the ARM boards I've added (e.g. integrator, versatile, realview and stellaris boards). They all use approximately the same set of modular components, just in connected in different combinations. I suspect the same is true of many of the pxa boards, and proably many ColdFire devices. This is maybe slightly different between emulating embedded boards and workstation/server class machines. For workstation/server emulation it's entirely reasonable to arbitrarily add/remove serial and network devices from a "PC" machine based on the user config. For embedded SoC devices you tend to want to emulate a fixed number of devices (matching those present on real hardware) and leave them present but disconnected if the user does not specify appropriate net/serial options. On case where we currently do this is CDROMs. Omitting -cdrom does not remove the cdrom from the machine, it just means an "empty" cdrom drive is created. Paul