All of lore.kernel.org
 help / color / mirror / Atom feed
From: Alexandre Courbot <acourbot-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org>
To: Ilia Mirkin <imirkin-FrUbXkNCsVf2fBVCVOL8/A@public.gmane.org>
Cc: "nouveau-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org"
	<nouveau-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org>,
	"mesa-dev-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org"
	<mesa-dev-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org>,
	"linux-tegra-u79uwXL29TY76Z2rM5mHXA@public.gmane.org"
	<linux-tegra-u79uwXL29TY76Z2rM5mHXA@public.gmane.org>,
	Alexandre Courbot
	<gnurou-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
Subject: Re: [PATCH 2/2] nvc0: use SM35 ISA with GK20A
Date: Tue, 27 May 2014 15:51:27 +0900	[thread overview]
Message-ID: <538435EF.6060201@nvidia.com> (raw)
In-Reply-To: <CAKb7Uvi_-DrhjFPS+D=P71bF+V5K21xKYK_+FhxmvX-Kyyf89Q-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>

On 05/27/2014 02:26 PM, Ilia Mirkin wrote:
> On Tue, May 27, 2014 at 12:59 AM, Alexandre Courbot <acourbot-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org> wrote:
>> GK20A is mostly compatible with GK104, but uses the SM35 ISA. Use
>> the GK110 path when this chip is detected.
>>
>> Signed-off-by: Alexandre Courbot <acourbot-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org>
>> ---
>>   src/gallium/drivers/nouveau/codegen/nv50_ir_driver.h        |  1 +
>>   src/gallium/drivers/nouveau/codegen/nv50_ir_emit_nvc0.cpp   |  2 +-
>>   src/gallium/drivers/nouveau/codegen/nv50_ir_target_nvc0.cpp | 13 +++++++++----
>>   3 files changed, 11 insertions(+), 5 deletions(-)
>>
>> diff --git a/src/gallium/drivers/nouveau/codegen/nv50_ir_driver.h b/src/gallium/drivers/nouveau/codegen/nv50_ir_driver.h
>> index bbb89d97932e..aab857ee7e4f 100644
>> --- a/src/gallium/drivers/nouveau/codegen/nv50_ir_driver.h
>> +++ b/src/gallium/drivers/nouveau/codegen/nv50_ir_driver.h
>> @@ -91,6 +91,7 @@ struct nv50_ir_prog_symbol
>>   #define NVISA_GF100_CHIPSET_C0 0xc0
>>   #define NVISA_GF100_CHIPSET_D0 0xd0
>>   #define NVISA_GK104_CHIPSET    0xe0
>> +#define NVISA_GK20A_CHIPSET    0xea
>>   #define NVISA_GK110_CHIPSET    0xf0
>>   #define NVISA_GM107_CHIPSET    0x110
>>
>> diff --git a/src/gallium/drivers/nouveau/codegen/nv50_ir_emit_nvc0.cpp b/src/gallium/drivers/nouveau/codegen/nv50_ir_emit_nvc0.cpp
>> index b1f76cf80432..f69e6a183e19 100644
>> --- a/src/gallium/drivers/nouveau/codegen/nv50_ir_emit_nvc0.cpp
>> +++ b/src/gallium/drivers/nouveau/codegen/nv50_ir_emit_nvc0.cpp
>> @@ -3027,7 +3027,7 @@ TargetNVC0::createCodeEmitterNVC0(Program::Type type)
>>   CodeEmitter *
>>   TargetNVC0::getCodeEmitter(Program::Type type)
>>   {
>> -   if (chipset >= NVISA_GK110_CHIPSET)
>> +   if (chipset >= NVISA_GK20A_CHIPSET)
>>         return createCodeEmitterGK110(type);
>>      return createCodeEmitterNVC0(type);
>>   }
>
> As mentioned on IRC, you also need to update TargetNVC0::getFileSize
> to return 255 GPRs, since that value is presumably ISA-specific. You
> could, at that point, get rid of the GK110_CHIPSET define.

Will do.

> Eventually
> all that stuff needs to be nuked and replaced with an 'isa' property.
> But you don't have to do that.
>
>> diff --git a/src/gallium/drivers/nouveau/codegen/nv50_ir_target_nvc0.cpp b/src/gallium/drivers/nouveau/codegen/nv50_ir_target_nvc0.cpp
>> index 064e7a2c63f9..8212bfd9555e 100644
>> --- a/src/gallium/drivers/nouveau/codegen/nv50_ir_target_nvc0.cpp
>> +++ b/src/gallium/drivers/nouveau/codegen/nv50_ir_target_nvc0.cpp
>> @@ -49,9 +49,12 @@ TargetNVC0::getBuiltinCode(const uint32_t **code, uint32_t *size) const
>>   {
>>      switch (chipset & ~0xf) {
>>      case 0xe0:
>> -      *code = (const uint32_t *)&gk104_builtin_code[0];
>> -      *size = sizeof(gk104_builtin_code);
>> -      break;
>> +      if (chipset != NVISA_GK20A_CHIPSET) {
>
> You change the code emitter if chipset >= GK20A. Might as well be
> consistent here and below.

Sure.

  parent reply	other threads:[~2014-05-27  6:51 UTC|newest]

Thread overview: 12+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-05-27  4:59 [PATCH 0/2] nvc0: support for GK20A (Tegra K1) Alexandre Courbot
     [not found] ` <1401166783-24086-1-git-send-email-acourbot-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org>
2014-05-27  4:59   ` [PATCH 1/2] nvc0: add GK20A 3D class Alexandre Courbot
     [not found]     ` <1401166783-24086-2-git-send-email-acourbot-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org>
2014-05-27  5:29       ` Ilia Mirkin
     [not found]         ` <CAKb7Uvjvo=9u-mSH01AHidOBS_6cE88kpy+H=QoJQprtLekvKg-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2014-05-27  6:35           ` Alexandre Courbot
     [not found]             ` <53843236.4030508-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org>
2014-05-27 15:48               ` Ilia Mirkin
2014-05-27  4:59   ` [PATCH 2/2] nvc0: use SM35 ISA with GK20A Alexandre Courbot
     [not found]     ` <1401166783-24086-3-git-send-email-acourbot-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org>
2014-05-27  5:26       ` Ilia Mirkin
     [not found]         ` <CAKb7Uvi_-DrhjFPS+D=P71bF+V5K21xKYK_+FhxmvX-Kyyf89Q-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2014-05-27  6:51           ` Alexandre Courbot [this message]
2014-05-27  7:03   ` [PATCH v2 0/2] nvc0: support for GK20A (Tegra K1) Alexandre Courbot
2014-05-27  7:03   ` [PATCH v2 1/2] nvc0: add GK20A 3D class Alexandre Courbot
2014-05-27  7:03 ` [PATCH v2 2/2] nvc0: use SM35 ISA with GK20A Alexandre Courbot
     [not found]   ` <1401174182-2182-3-git-send-email-acourbot-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org>
2014-05-27 15:49     ` Ilia Mirkin

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=538435EF.6060201@nvidia.com \
    --to=acourbot-ddmlm1+adcrqt0dzr+alfa@public.gmane.org \
    --cc=gnurou-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org \
    --cc=imirkin-FrUbXkNCsVf2fBVCVOL8/A@public.gmane.org \
    --cc=linux-tegra-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
    --cc=mesa-dev-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org \
    --cc=nouveau-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.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.