From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1Fo0z5-00058k-H5 for qemu-devel@nongnu.org; Wed, 07 Jun 2006 12:34:19 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1Fo0z4-00057O-Lc for qemu-devel@nongnu.org; Wed, 07 Jun 2006 12:34:19 -0400 Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1Fo0z4-000575-96 for qemu-devel@nongnu.org; Wed, 07 Jun 2006 12:34:18 -0400 Received: from [193.252.23.84] (helo=smtp15.wanadoo.fr) by monty-python.gnu.org with esmtp (Exim 4.52) id 1Fo16h-0004js-6S for qemu-devel@nongnu.org; Wed, 07 Jun 2006 12:42:11 -0400 Received: from wwinf1507 (wwinf1507 [172.22.146.50]) by mwinf1504.orange.fr (SMTP Server) with ESMTP id DD1817000089 for ; Wed, 7 Jun 2006 18:34:13 +0200 (CEST) Message-ID: <13441846.1149698053893.JavaMail.www@wwinf1507> From: Laurent DESNOGUES Subject: Re: [Qemu-devel] I want to add the ARMv6 instructions, who can give some advices? Mime-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit Date: Wed, 7 Jun 2006 18:34:13 +0200 (CEST) Reply-To: laurent.desnogues@wanadoo.fr, 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 > > All the information used to implement the current qemu Arm support is > > available from other sources not covered by this licence. I'm confident I > > could prove this if necessary. True for ARMv6, probably not for ARMv7, be it -A, -R or -M. > In the thread you cited earlier, Wolfgang Schildbach refers to "ARM > System Developer's Guide", by Sloss, Symes, and Wright, Elsevier 2004 > as documentation that may be sufficient for Qemu ARMv6 support, and > which is not covered by the license. Yes. But you would need instruction encoding that are not in the book. You will find them in binutils (opcode directory). > If ARMv6 support were developed by someone else, using only that book, > and maybe looking at other code (GCC, Linux etc.), that would prove > that all the information used is from other sources not covered by the > license, wouldn't it? Linux uses a small subset of the System Coprocessor. If you want information about ARMv6 cp15, look in ARM TRM (arm11), I don't think they have any restriction such as ARMv7-M. > The support might be missing a few features, if the other information > sources are incomplete, but even incomplete support that can be > deduced from those sources would be good enough for most purposes. Certainly yes. But that's not a small effort :) But bear in mind a few things: for instance supersection, that are ARMv6 specific, were added to Linux kernel in 2.6.13 which is kind of recent; so if you omit some features, you might have to add them in one day. > If that were done, you could prove that the resulting feature in Qemu > was written using sources not covered by the license. > > So would you have any problem contributing to Qemu after ARMv6 support > was integrated, if the person who contributes ARMv6 support states > that they have never seen the ARM document and refers to the sources > they have used instead? I think that it could be very difficult to prove you did not use any official NDA document. I am doing simulator development at ARM and would certainly never approach anything v6 or v7 related until information is publically available with no restriction. Anyway I am not speaking for ARM :) Laurent