All of lore.kernel.org
 help / color / mirror / Atom feed
From: Sergey Sorokin <afarallax@yandex.ru>
To: Peter Maydell <peter.maydell@linaro.org>
Cc: qemu-arm <qemu-arm@nongnu.org>, QEMU Developers <qemu-devel@nongnu.org>
Subject: Re: [Qemu-devel] [PATCH] target-arm: Add missed AArch32 TLBI sytem registers
Date: Mon, 11 Jul 2016 21:23:06 +0300	[thread overview]
Message-ID: <458161468261386@web2h.yandex.ru> (raw)
In-Reply-To: <CAFEAcA8mTv4LJh2WO5chuga+ZqAEWkzTeoTn8M4t+K5LGGnhNQ@mail.gmail.com>

11.07.2016, 20:39, "Peter Maydell" <peter.maydell@linaro.org>:
>>  +
>>  + CPU_FOREACH(other_cs) {
>>  + tlb_flush_page_by_mmuidx(other_cs, pageaddr, ARMMMUIdx_S1E2, -1);
>>  + }
>>  +}
>>  +
>>   static const ARMCPRegInfo cp_reginfo[] = {
>>       /* Define the secure and non-secure FCSE identifier CP registers
>>        * separately because there is no secure bank in V8 (no _EL3). This allows
>>  @@ -1238,6 +1343,14 @@ static const ARMCPRegInfo v7_cp_reginfo[] = {
>>         .type = ARM_CP_NO_RAW, .access = PL1_W, .writefn = tlbiasid_write },
>>       { .name = "TLBIMVAA", .cp = 15, .opc1 = 0, .crn = 8, .crm = 7, .opc2 = 3,
>>         .type = ARM_CP_NO_RAW, .access = PL1_W, .writefn = tlbimvaa_write },
>>  + { .name = "TLBIALLNSNH",
>>  + .cp = 15, .opc1 = 4, .crn = 8, .crm = 7, .opc2 = 4,
>>  + .type = ARM_CP_NO_RAW, .access = PL2_W,
>>  + .writefn = tlbiall_nsnh_write },
>>  + { .name = "TLBIALLNSNHIS",
>>  + .cp = 15, .opc1 = 4, .crn = 8, .crm = 3, .opc2 = 4,
>>  + .type = ARM_CP_NO_RAW, .access = PL2_W,
>>  + .writefn = tlbiall_nsnh_is_write },
>
> These don't exist on v7 unless the virtualization extensions are present
> (though they do exist on v8 without EL3).

So I should check arm_feature(env, ARM_FEATURE_EL2) to add these registers,
e.g. by moving them to el2_cp_reginfo, right?


WARNING: multiple messages have this Message-ID (diff)
From: Sergey Sorokin <afarallax@yandex.ru>
To: Peter Maydell <peter.maydell@linaro.org>
Cc: QEMU Developers <qemu-devel@nongnu.org>, qemu-arm <qemu-arm@nongnu.org>
Subject: Re: [Qemu-devel] [PATCH] target-arm: Add missed AArch32 TLBI sytem registers
Date: Mon, 11 Jul 2016 21:23:06 +0300	[thread overview]
Message-ID: <458161468261386@web2h.yandex.ru> (raw)
In-Reply-To: <CAFEAcA8mTv4LJh2WO5chuga+ZqAEWkzTeoTn8M4t+K5LGGnhNQ@mail.gmail.com>

11.07.2016, 20:39, "Peter Maydell" <peter.maydell@linaro.org>:
>>  +
>>  + CPU_FOREACH(other_cs) {
>>  + tlb_flush_page_by_mmuidx(other_cs, pageaddr, ARMMMUIdx_S1E2, -1);
>>  + }
>>  +}
>>  +
>>   static const ARMCPRegInfo cp_reginfo[] = {
>>       /* Define the secure and non-secure FCSE identifier CP registers
>>        * separately because there is no secure bank in V8 (no _EL3). This allows
>>  @@ -1238,6 +1343,14 @@ static const ARMCPRegInfo v7_cp_reginfo[] = {
>>         .type = ARM_CP_NO_RAW, .access = PL1_W, .writefn = tlbiasid_write },
>>       { .name = "TLBIMVAA", .cp = 15, .opc1 = 0, .crn = 8, .crm = 7, .opc2 = 3,
>>         .type = ARM_CP_NO_RAW, .access = PL1_W, .writefn = tlbimvaa_write },
>>  + { .name = "TLBIALLNSNH",
>>  + .cp = 15, .opc1 = 4, .crn = 8, .crm = 7, .opc2 = 4,
>>  + .type = ARM_CP_NO_RAW, .access = PL2_W,
>>  + .writefn = tlbiall_nsnh_write },
>>  + { .name = "TLBIALLNSNHIS",
>>  + .cp = 15, .opc1 = 4, .crn = 8, .crm = 3, .opc2 = 4,
>>  + .type = ARM_CP_NO_RAW, .access = PL2_W,
>>  + .writefn = tlbiall_nsnh_is_write },
>
> These don't exist on v7 unless the virtualization extensions are present
> (though they do exist on v8 without EL3).

So I should check arm_feature(env, ARM_FEATURE_EL2) to add these registers,
e.g. by moving them to el2_cp_reginfo, right?

  reply	other threads:[~2016-07-11 18:24 UTC|newest]

Thread overview: 15+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-06-23 15:11 [Qemu-arm] [PATCH] target-arm: Add missed AArch32 TLBI sytem registers Sergey Sorokin
2016-06-23 15:11 ` [Qemu-devel] " Sergey Sorokin
2016-07-08 15:47 ` Sergey Sorokin
2016-07-11 12:12 ` [Qemu-arm] " Sergey Sorokin
2016-07-11 12:12   ` [Qemu-devel] " Sergey Sorokin
2016-07-11 17:39 ` [Qemu-arm] " Peter Maydell
2016-07-11 17:39   ` [Qemu-devel] " Peter Maydell
2016-07-11 18:23   ` Sergey Sorokin [this message]
2016-07-11 18:23     ` Sergey Sorokin
2016-07-11 18:35     ` [Qemu-arm] " Peter Maydell
2016-07-11 18:35       ` [Qemu-devel] " Peter Maydell
2016-07-11 18:47       ` [Qemu-arm] " Sergey Sorokin
2016-07-11 18:47         ` [Qemu-devel] " Sergey Sorokin
2016-07-11 19:25         ` [Qemu-arm] " Peter Maydell
2016-07-11 19:25           ` [Qemu-devel] " Peter Maydell

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=458161468261386@web2h.yandex.ru \
    --to=afarallax@yandex.ru \
    --cc=peter.maydell@linaro.org \
    --cc=qemu-arm@nongnu.org \
    --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.