From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1Gc6Qr-0001hv-Ch for qemu-devel@nongnu.org; Mon, 23 Oct 2006 16:30:01 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1Gc6Qn-0001gS-TU for qemu-devel@nongnu.org; Mon, 23 Oct 2006 16:30:01 -0400 Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1Gc6Qn-0001gP-O1 for qemu-devel@nongnu.org; Mon, 23 Oct 2006 16:29:57 -0400 Received: from [65.74.133.4] (helo=mail.codesourcery.com) by monty-python.gnu.org with esmtps (TLS-1.0:DHE_RSA_AES_256_CBC_SHA:32) (Exim 4.52) id 1Gc6Qn-00018q-JG for qemu-devel@nongnu.org; Mon, 23 Oct 2006 16:29:57 -0400 From: Paul Brook Subject: Re: [Qemu-devel] Config file support Date: Mon, 23 Oct 2006 21:29:52 +0100 References: <200610221927.34528.paul@codesourcery.com> <200610231601.44583.rob@landley.net> In-Reply-To: <200610231601.44583.rob@landley.net> MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit Content-Disposition: inline Message-Id: <200610232129.53615.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 On Monday 23 October 2006 21:01, Rob Landley wrote: > On Sunday 22 October 2006 2:27 pm, Paul Brook wrote: > > I've been considering a machine config file for a while, but haven't come > > up with a coherent way of representing everything yet. > > Do you at least have a list of everything that needs to be represented? (I > have a list but am fairly certain it's not complete.) Not really. I guess a generic key/value pair is sufficient for most things (base address, model number, etc). The trickier cases are where devices refer to each other: PCI, usb, IRQ lines, DMA channels, etc. ie. anything where the existing _init function returns a value. I guess you could use the same key/value mechanism, and allow the value to be an "object". The really OTT method is to embed a python interpreter or something and do the machine init that way. I'm not seriously suggesting that though. Paul