From: Dmitry Ilyevsky <ilyevsky@gmail.com>
To: Alexander Graf <agraf@suse.de>,
"Krumme, Chris" <Chris.Krumme@windriver.com>
Cc: qemu-devel@nongnu.org
Subject: Re: [Qemu-devel] TBL register permissions for PPC
Date: Thu, 25 Mar 2010 00:56:54 +0300 [thread overview]
Message-ID: <4aa8564b1003241456y4851b964iafcc534324506666@mail.gmail.com> (raw)
In-Reply-To: <8F6B1156-5574-41A3-B2EE-978E77391EF7@suse.de>
[-- Attachment #1.1: Type: text/plain, Size: 1350 bytes --]
Hello All,
Please review patch for TBL SPR read access for generic PPC.
*Description:*
POWER specification docs define TBL/TBU SPRs as readable in user
and privileged modes. Therefore SPRs permissions were changed in gen_tbl
function in target-ppc/translate_init.c file.
*Testing:*
Tested with vxworks-6.2 bsp and OS on custom qemu board that includes ppc405
emulated core
BR,
Dmitry Ilyevsky
On Wed, Dec 2, 2009 at 2:23 AM, Alexander Graf <agraf@suse.de> wrote:
>
> On 01.12.2009, at 19:33, Dima Ilyevsky wrote:
>
> > Hello All,
> >
> > I have a question about read permissions of TBL SPR for all ppc
> processors:
> > I have discovered that my application, compiled by WindRiver diab
> compiler and running in vxworks OS on ppc405 architecture bumps into
> exception generated when trying to read TBL or TBU registers:
>
> Unless Linux does something funky, mftlb, mftbu (and mftb on 64 bit) are
> readable from PR=1.
>
> int main()
> {
> long tbu=0, tbl=0;
>
> asm("mftbu %0" : "=r" (tbu));
> asm("mftbl %0" : "=r" (tbl));
>
> printf("TB: %#x %#x\n", tbl, tbu);
> }
>
> agraf@lychee:/tmp> ./mftb
> TB: 0xc0397180 0x603
>
> However it can't be written to:
>
> asm("mttbl %0" : : "r" (tbl));
>
> agraf@lychee:/tmp> ./mftb
> Illegal instruction
>
>
> So yes, I'd suspect a bug in qemu here. Feel free to send a patch.
>
> Alex
>
[-- Attachment #1.2: Type: text/html, Size: 2077 bytes --]
[-- Attachment #2: 0001-Generic-PowerPC-time-base-SPR-should-be-accessible-i.patch --]
[-- Type: text/x-patch, Size: 1365 bytes --]
From 141bf29f5355f163205c57e98590730ed15bfb86 Mon Sep 17 00:00:00 2001
From: n/a <install@ubuntu-desktop.(none)>
Date: Thu, 25 Mar 2010 00:22:25 +0300
Subject: [PATCH] Generic PowerPC time base SPR should be accessible in user/priv modes for reading
---
target-ppc/translate_init.c | 8 ++++----
1 files changed, 4 insertions(+), 4 deletions(-)
diff --git a/target-ppc/translate_init.c b/target-ppc/translate_init.c
index db4dc17..e8eadf4 100644
--- a/target-ppc/translate_init.c
+++ b/target-ppc/translate_init.c
@@ -777,16 +777,16 @@ static void gen_tbl (CPUPPCState *env)
&spr_read_tbl, SPR_NOACCESS,
0x00000000);
spr_register(env, SPR_TBL, "TBL",
- SPR_NOACCESS, SPR_NOACCESS,
- SPR_NOACCESS, &spr_write_tbl,
+ &spr_read_tbl, SPR_NOACCESS,
+ &spr_read_tbl, &spr_write_tbl,
0x00000000);
spr_register(env, SPR_VTBU, "TBU",
&spr_read_tbu, SPR_NOACCESS,
&spr_read_tbu, SPR_NOACCESS,
0x00000000);
spr_register(env, SPR_TBU, "TBU",
- SPR_NOACCESS, SPR_NOACCESS,
- SPR_NOACCESS, &spr_write_tbu,
+ &spr_read_tbu, SPR_NOACCESS,
+ &spr_read_tbu, &spr_write_tbu,
0x00000000);
}
--
1.7.0
next prev parent reply other threads:[~2010-03-24 21:57 UTC|newest]
Thread overview: 9+ messages / expand[flat|nested] mbox.gz Atom feed top
2009-12-01 18:33 [Qemu-devel] TBL register permissions for PPC Dima Ilyevsky
2009-12-01 19:28 ` Krumme, Chris
2009-12-01 23:23 ` Alexander Graf
2009-12-01 23:35 ` malc
2010-03-24 21:56 ` Dmitry Ilyevsky [this message]
2010-03-25 7:53 ` Alexander Graf
2010-03-26 0:31 ` Dmitry Ilyevsky
2010-03-26 1:15 ` Alexander Graf
2010-03-26 22:42 ` Aurelien Jarno
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=4aa8564b1003241456y4851b964iafcc534324506666@mail.gmail.com \
--to=ilyevsky@gmail.com \
--cc=Chris.Krumme@windriver.com \
--cc=agraf@suse.de \
--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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).