From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([140.186.70.92]:35684) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1RARDO-00079u-DI for qemu-devel@nongnu.org; Sun, 02 Oct 2011 14:56:43 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1RARDN-0004VD-AE for qemu-devel@nongnu.org; Sun, 02 Oct 2011 14:56:42 -0400 Received: from fmmailgate02.web.de ([217.72.192.227]:38497) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1RARDN-0004V6-1l for qemu-devel@nongnu.org; Sun, 02 Oct 2011 14:56:41 -0400 From: =?UTF-8?q?Andreas=20F=C3=A4rber?= Date: Sun, 2 Oct 2011 20:56:46 +0200 Message-Id: <1317581808-9784-1-git-send-email-andreas.faerber@web.de> MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Sender: andreas.faerber@web.de Content-Transfer-Encoding: quoted-printable Subject: [Qemu-devel] [RFC 0/2] target-arm: Adding Cortex-R4F support List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: peter.maydell@linaro.org Cc: =?UTF-8?q?Andreas=20F=C3=A4rber?= , qemu-devel@nongnu.org Hello Peter, I've been looking into adding support for Cortex-R4F. 1) Currently, -cpu is used to look up a Main ID Register value and to bas= e feature decisions on that. This doesn't work for Cortex-R4 and Cortex-R4F= , which have an identical MIDR but only -R4F has the FPU. Re-checking the model string, while ugly, does the trick. Comments? 2) The R4/R4F TRM says "It implements the ARMv7R architecture, and includ= es Thumb-2 technology" - how to incur the pre-v7 feature bits in addition to the easy _V7 and _THUMB2? I.e. where is it documented (in ARMv7-A/R TRM?) whether or not this should include _V4T, _V6K, etc.? If V7 were to always imply the same set of features, I would expect it alongside VAPA. (Could use some comments either way.) 3) How to handle processor revisions? The only two available TRMs for R4F seem to be r1p3 and r1p4. ARM_CPUID_CORTEXA9 seems to use r0p0, with r2p0 being the oldest available TRM atm. Apart from the actual MIDR define and its binding to -cpu name, this also affects the FPSID register and gets a little ugly with non-linear mapping= s. The ARM1136 seems a particularly bad example, will try to post a cleanup. Regards, Andreas Andreas F=C3=A4rber (2): target-arm: Prepare support for Cortex-R4 target-arm: Add support for Cortex-R4F target-arm/cpu.h | 1 + target-arm/helper.c | 49 +++++++++++++++++++++++++++++++++++++++++++++= ++++ 2 files changed, 50 insertions(+), 0 deletions(-) --=20 1.7.3.4