From mboxrd@z Thu Jan 1 00:00:00 1970 From: Peter Maydell Subject: Re: [Qemu-devel] KVM call minutes for Feb 8 Date: Thu, 10 Feb 2011 09:04:26 +0000 Message-ID: References: <20110208155557.GM6198@x200.localdomain> <4D51B1C9.3080507@codemonkey.ws> <4D526D0D.9020507@codemonkey.ws> <4D52A86A.1030407@codemonkey.ws> <4D52F20A.7070009@codemonkey.ws> <4D539800.3070802@codemonkey.ws> <4D53A39D.8000108@codemonkey.ws> Mime-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: QUOTED-PRINTABLE Cc: Blue Swirl , Chris Wright , Markus Armbruster , kvm@vger.kernel.org, qemu-devel@nongnu.org To: Anthony Liguori Return-path: Received: from mail-fx0-f46.google.com ([209.85.161.46]:61065 "EHLO mail-fx0-f46.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752940Ab1BJJE2 convert rfc822-to-8bit (ORCPT ); Thu, 10 Feb 2011 04:04:28 -0500 Received: by fxm20 with SMTP id 20so1211699fxm.19 for ; Thu, 10 Feb 2011 01:04:27 -0800 (PST) In-Reply-To: <4D53A39D.8000108@codemonkey.ws> Sender: kvm-owner@vger.kernel.org List-ID: On 10 February 2011 08:36, Anthony Liguori wrot= e: > On 02/10/2011 09:16 AM, Peter Maydell wrote: >> On 10 February 2011 07:47, Anthony Liguori =C2= =A0wrote: >>> 2) get rid of the entire concept of machines. =C2=A0Creating a i440= fx is >>> essentially equivalent to creating a bare machine. >> >> Does that make any sense for anything other than target-i386? >> The concept of a machine model seems a pretty obvious one >> for ARM boards, for instance, and I'm not sure we'd gain much >> by having i386 be different to the other architectures... > > Yes, it makes a lot of sense, I just don't know the component names a= s well > so bear with me :-) > > There are two types of Versatile machines today, Versatile/AB and > Versatile/PB. =C2=A0They are both made with the same core, ARM926EJ-S= , with > different expansions. > > So you would model arm926ej-s as the chipset and then build up the ma= chines > by modifying parameters of the chipset (like the board id) and/or add= ing > different components on top of it. Er, ARM926 is the CPU, it's not a chipset. The board ID is definitely not a property of an ARM926, it's a property of the board (clue is in the name :-)). I don't think versatile boards have a "chipset" really..= =2E In my understanding the "machine" is the thing that says "I need a 926, and an MMC controller at this address, and some UARTS, and..." ie it is the thing that does the "modifying parameters" and "adding different components". So if we'd still be doing that I don't see how we've "got rid of the concept". I guess I'm missing the point somehow. > A good way to think about what I'm proposing is that machine->init re= ally > should be a constructor for a device object. If you mean that you want machines to be implemented under the hood as a single huge "device" you can only have one of that spans the entire memory map, well I guess that's an implementation detail. But conceptually machines really do exist, and we definitely still want users to be able to say "I want a beagle machine; I want a versatile; I want an n900". -- PMM