All of lore.kernel.org
 help / color / mirror / Atom feed
From: Meador Inge <meadori@codesourcery.com>
To: "Andreas Färber" <afaerber@suse.de>
Cc: qemu-devel@nongnu.org, aurelien@aurel32.net
Subject: Re: [Qemu-devel] [PATCH] target-mips: Enable access to required RDHWR hardware registers
Date: Tue, 21 Aug 2012 10:41:49 -0500	[thread overview]
Message-ID: <5033AC3D.2020302@codesourcery.com> (raw)
In-Reply-To: <50335F77.4020900@suse.de>

On 08/21/2012 05:14 AM, Andreas Färber wrote:

> Am 21.08.2012 01:41, schrieb Meador Inge:
>> While running in the usermode emulator all of the MIPS32r2 *required*
>> RDHWR hardware registers should be accessible (the Linux kernel enables
>> access to these same registers).
>>
>> Signed-off-by: Meador Inge <meadori@codesourcery.com>
>> ---
>>  target-mips/translate.c |    7 +++++--
>>  1 files changed, 5 insertions(+), 2 deletions(-)
>>
>> diff --git a/target-mips/translate.c b/target-mips/translate.c
>> index 47daf85..849e75d 100644
>> --- a/target-mips/translate.c
>> +++ b/target-mips/translate.c
>> @@ -12768,8 +12768,11 @@ void cpu_state_reset(CPUMIPSState *env)
>>  
>>  #if defined(CONFIG_USER_ONLY)
>>      env->hflags = MIPS_HFLAG_UM;
>> -    /* Enable access to the SYNCI_Step register.  */
>> -    env->CP0_HWREna |= (1 << 1);
>> +    if (env->insn_flags & ISA_MIPS32R2) {
>> +        /* Enable access to the CPUNum, SYNCI_Step, CC, and CCRes RDHWR
>> +           hardware registers.  */
>> +        env->CP0_HWREna |= 0x0000000F;
>> +    }
> 
> So what about the non-MIPS32r2 case? IIUC then the SYNCI_Step register
> would no longer be accessible, which your commit message does not
> mention. Intentional?

Yes, that is intentional.  In Section 9.13 of [1] it is stated that these
registers are only required starting at release 2 of the architecture.  The
Linux kernel follows the same approach.

I guess I should just split this into two minor patches: (1) for enabling all
the registers and (2) for making them conditional on R2.

[1] MIPS® Architecture For Programmers,
    Volume III: The MIPS32 (R) and microMIPS32TM Privileged Resource
    Architecture
    Revision 3.12

> If this is a bugfix for v1.2.0 don't forget to mark "for-1.2".

Will do.

Thanks for the review.

-- 
Meador Inge
CodeSourcery / Mentor Embedded
http://www.mentor.com/embedded-software

  reply	other threads:[~2012-08-21 15:42 UTC|newest]

Thread overview: 5+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-08-20 23:41 [Qemu-devel] [PATCH] target-mips: Enable access to required RDHWR hardware registers Meador Inge
2012-08-21 10:14 ` Andreas Färber
2012-08-21 15:41   ` Meador Inge [this message]
2012-08-21 15:52     ` Aurelien Jarno
2012-08-21 16:04       ` Meador Inge

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=5033AC3D.2020302@codesourcery.com \
    --to=meadori@codesourcery.com \
    --cc=afaerber@suse.de \
    --cc=aurelien@aurel32.net \
    --cc=qemu-devel@nongnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.