linux-tegra.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH] drm: nouveau: Enable gp20b/gp10b firmware tag when relevant
@ 2018-06-10 11:01 Nicolas Chauvet
       [not found] ` <20180610110131.10490-1-kwizart-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
  0 siblings, 1 reply; 4+ messages in thread
From: Nicolas Chauvet @ 2018-06-10 11:01 UTC (permalink / raw)
  To: nouveau-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW,
	thierry.reding-Re5JQEeQqe8AvxtiuMwx3w
  Cc: linux-tegra-u79uwXL29TY76Z2rM5mHXA,
	mperttunen-DDmLM1+adcrQT0dZR+AlfA

This allows to have the related MODULE_FIRMWARE tag only
on relevant arch (arm64).
This will saves about 400k on initramfs when not relevant

Signed-off-by: Nicolas Chauvet <kwizart@gmail.com>
---
 drivers/gpu/drm/nouveau/nvkm/subdev/secboot/gm20b.c | 2 ++
 drivers/gpu/drm/nouveau/nvkm/subdev/secboot/gp10b.c | 2 ++
 2 files changed, 4 insertions(+)

diff --git a/drivers/gpu/drm/nouveau/nvkm/subdev/secboot/gm20b.c b/drivers/gpu/drm/nouveau/nvkm/subdev/secboot/gm20b.c
index 30491d132d59..df8b919dcf09 100644
--- a/drivers/gpu/drm/nouveau/nvkm/subdev/secboot/gm20b.c
+++ b/drivers/gpu/drm/nouveau/nvkm/subdev/secboot/gm20b.c
@@ -129,6 +129,7 @@ gm20b_secboot_new(struct nvkm_device *device, int index,
 	return 0;
 }
 
+#if IS_ENABLED(CONFIG_ARCH_TEGRA_210_SOC)
 MODULE_FIRMWARE("nvidia/gm20b/acr/bl.bin");
 MODULE_FIRMWARE("nvidia/gm20b/acr/ucode_load.bin");
 MODULE_FIRMWARE("nvidia/gm20b/gr/fecs_bl.bin");
@@ -144,3 +145,4 @@ MODULE_FIRMWARE("nvidia/gm20b/gr/sw_method_init.bin");
 MODULE_FIRMWARE("nvidia/gm20b/pmu/desc.bin");
 MODULE_FIRMWARE("nvidia/gm20b/pmu/image.bin");
 MODULE_FIRMWARE("nvidia/gm20b/pmu/sig.bin");
+#endif
diff --git a/drivers/gpu/drm/nouveau/nvkm/subdev/secboot/gp10b.c b/drivers/gpu/drm/nouveau/nvkm/subdev/secboot/gp10b.c
index 632e9545e292..28ca29d0eeee 100644
--- a/drivers/gpu/drm/nouveau/nvkm/subdev/secboot/gp10b.c
+++ b/drivers/gpu/drm/nouveau/nvkm/subdev/secboot/gp10b.c
@@ -74,6 +74,7 @@ gp10b_secboot_new(struct nvkm_device *device, int index,
 	return 0;
 }
 
+#if IS_ENABLED(CONFIG_ARCH_TEGRA_186_SOC)
 MODULE_FIRMWARE("nvidia/gp10b/acr/bl.bin");
 MODULE_FIRMWARE("nvidia/gp10b/acr/ucode_load.bin");
 MODULE_FIRMWARE("nvidia/gp10b/gr/fecs_bl.bin");
@@ -91,3 +92,4 @@ MODULE_FIRMWARE("nvidia/gp10b/gr/sw_method_init.bin");
 MODULE_FIRMWARE("nvidia/gp10b/pmu/desc.bin");
 MODULE_FIRMWARE("nvidia/gp10b/pmu/image.bin");
 MODULE_FIRMWARE("nvidia/gp10b/pmu/sig.bin");
+#endif
-- 
2.13.6

_______________________________________________
Nouveau mailing list
Nouveau@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/nouveau

^ permalink raw reply related	[flat|nested] 4+ messages in thread

* Re: [PATCH] drm: nouveau: Enable gp20b/gp10b firmware tag when relevant
       [not found] ` <20180610110131.10490-1-kwizart-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
@ 2018-06-11  8:33   ` Thierry Reding
  2018-06-11  9:32     ` Nicolas Chauvet
  0 siblings, 1 reply; 4+ messages in thread
From: Thierry Reding @ 2018-06-11  8:33 UTC (permalink / raw)
  To: Nicolas Chauvet
  Cc: linux-tegra-u79uwXL29TY76Z2rM5mHXA,
	nouveau-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW,
	mperttunen-DDmLM1+adcrQT0dZR+AlfA


[-- Attachment #1.1: Type: text/plain, Size: 2499 bytes --]

On Sun, Jun 10, 2018 at 01:01:31PM +0200, Nicolas Chauvet wrote:
> This allows to have the related MODULE_FIRMWARE tag only
> on relevant arch (arm64).
> This will saves about 400k on initramfs when not relevant
> 
> Signed-off-by: Nicolas Chauvet <kwizart-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
> ---
>  drivers/gpu/drm/nouveau/nvkm/subdev/secboot/gm20b.c | 2 ++
>  drivers/gpu/drm/nouveau/nvkm/subdev/secboot/gp10b.c | 2 ++
>  2 files changed, 4 insertions(+)
> 
> diff --git a/drivers/gpu/drm/nouveau/nvkm/subdev/secboot/gm20b.c b/drivers/gpu/drm/nouveau/nvkm/subdev/secboot/gm20b.c
> index 30491d132d59..df8b919dcf09 100644
> --- a/drivers/gpu/drm/nouveau/nvkm/subdev/secboot/gm20b.c
> +++ b/drivers/gpu/drm/nouveau/nvkm/subdev/secboot/gm20b.c
> @@ -129,6 +129,7 @@ gm20b_secboot_new(struct nvkm_device *device, int index,
>  	return 0;
>  }
>  
> +#if IS_ENABLED(CONFIG_ARCH_TEGRA_210_SOC)
>  MODULE_FIRMWARE("nvidia/gm20b/acr/bl.bin");
>  MODULE_FIRMWARE("nvidia/gm20b/acr/ucode_load.bin");
>  MODULE_FIRMWARE("nvidia/gm20b/gr/fecs_bl.bin");
> @@ -144,3 +145,4 @@ MODULE_FIRMWARE("nvidia/gm20b/gr/sw_method_init.bin");
>  MODULE_FIRMWARE("nvidia/gm20b/pmu/desc.bin");
>  MODULE_FIRMWARE("nvidia/gm20b/pmu/image.bin");
>  MODULE_FIRMWARE("nvidia/gm20b/pmu/sig.bin");
> +#endif
> diff --git a/drivers/gpu/drm/nouveau/nvkm/subdev/secboot/gp10b.c b/drivers/gpu/drm/nouveau/nvkm/subdev/secboot/gp10b.c
> index 632e9545e292..28ca29d0eeee 100644
> --- a/drivers/gpu/drm/nouveau/nvkm/subdev/secboot/gp10b.c
> +++ b/drivers/gpu/drm/nouveau/nvkm/subdev/secboot/gp10b.c
> @@ -74,6 +74,7 @@ gp10b_secboot_new(struct nvkm_device *device, int index,
>  	return 0;
>  }
>  
> +#if IS_ENABLED(CONFIG_ARCH_TEGRA_186_SOC)
>  MODULE_FIRMWARE("nvidia/gp10b/acr/bl.bin");
>  MODULE_FIRMWARE("nvidia/gp10b/acr/ucode_load.bin");
>  MODULE_FIRMWARE("nvidia/gp10b/gr/fecs_bl.bin");
> @@ -91,3 +92,4 @@ MODULE_FIRMWARE("nvidia/gp10b/gr/sw_method_init.bin");
>  MODULE_FIRMWARE("nvidia/gp10b/pmu/desc.bin");
>  MODULE_FIRMWARE("nvidia/gp10b/pmu/image.bin");
>  MODULE_FIRMWARE("nvidia/gp10b/pmu/sig.bin");
> +#endif

I suppose that makes sense, so:

Acked-by: Thierry Reding <treding-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org>

On a side-note, I was checking for what we do for gk20a, but it seems
like we don't have MODULE_FIRMWARE() entries for Tegra124. How do we
make sure that firmware is automatically pulled into initramfs on the
Tegra124 devices?

Thierry

[-- Attachment #1.2: signature.asc --]
[-- Type: application/pgp-signature, Size: 833 bytes --]

[-- Attachment #2: Type: text/plain, Size: 154 bytes --]

_______________________________________________
Nouveau mailing list
Nouveau@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/nouveau

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: [PATCH] drm: nouveau: Enable gp20b/gp10b firmware tag when relevant
  2018-06-11  8:33   ` Thierry Reding
@ 2018-06-11  9:32     ` Nicolas Chauvet
       [not found]       ` <CABr+WTk19So=oLbQ0UMLza5HGRo7QvCyZdcOw25zH42oAELLqQ-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
  0 siblings, 1 reply; 4+ messages in thread
From: Nicolas Chauvet @ 2018-06-11  9:32 UTC (permalink / raw)
  To: Thierry Reding
  Cc: linux-tegra-u79uwXL29TY76Z2rM5mHXA,
	nouveau-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW,
	mperttunen-DDmLM1+adcrQT0dZR+AlfA

2018-06-11 10:33 GMT+02:00 Thierry Reding <thierry.reding@gmail.com>:
> On Sun, Jun 10, 2018 at 01:01:31PM +0200, Nicolas Chauvet wrote:
>> This allows to have the related MODULE_FIRMWARE tag only
>> on relevant arch (arm64).
>> This will saves about 400k on initramfs when not relevant
>>
>> Signed-off-by: Nicolas Chauvet <kwizart@gmail.com>
>> ---
>>  drivers/gpu/drm/nouveau/nvkm/subdev/secboot/gm20b.c | 2 ++
>>  drivers/gpu/drm/nouveau/nvkm/subdev/secboot/gp10b.c | 2 ++
>>  2 files changed, 4 insertions(+)
>>
>> diff --git a/drivers/gpu/drm/nouveau/nvkm/subdev/secboot/gm20b.c b/drivers/gpu/drm/nouveau/nvkm/subdev/secboot/gm20b.c
>> index 30491d132d59..df8b919dcf09 100644
>> --- a/drivers/gpu/drm/nouveau/nvkm/subdev/secboot/gm20b.c
>> +++ b/drivers/gpu/drm/nouveau/nvkm/subdev/secboot/gm20b.c
>> @@ -129,6 +129,7 @@ gm20b_secboot_new(struct nvkm_device *device, int index,
>>       return 0;
>>  }
>>
>> +#if IS_ENABLED(CONFIG_ARCH_TEGRA_210_SOC)
>>  MODULE_FIRMWARE("nvidia/gm20b/acr/bl.bin");
>>  MODULE_FIRMWARE("nvidia/gm20b/acr/ucode_load.bin");
>>  MODULE_FIRMWARE("nvidia/gm20b/gr/fecs_bl.bin");
>> @@ -144,3 +145,4 @@ MODULE_FIRMWARE("nvidia/gm20b/gr/sw_method_init.bin");
>>  MODULE_FIRMWARE("nvidia/gm20b/pmu/desc.bin");
>>  MODULE_FIRMWARE("nvidia/gm20b/pmu/image.bin");
>>  MODULE_FIRMWARE("nvidia/gm20b/pmu/sig.bin");
>> +#endif
>> diff --git a/drivers/gpu/drm/nouveau/nvkm/subdev/secboot/gp10b.c b/drivers/gpu/drm/nouveau/nvkm/subdev/secboot/gp10b.c
>> index 632e9545e292..28ca29d0eeee 100644
>> --- a/drivers/gpu/drm/nouveau/nvkm/subdev/secboot/gp10b.c
>> +++ b/drivers/gpu/drm/nouveau/nvkm/subdev/secboot/gp10b.c
>> @@ -74,6 +74,7 @@ gp10b_secboot_new(struct nvkm_device *device, int index,
>>       return 0;
>>  }
>>
>> +#if IS_ENABLED(CONFIG_ARCH_TEGRA_186_SOC)
>>  MODULE_FIRMWARE("nvidia/gp10b/acr/bl.bin");
>>  MODULE_FIRMWARE("nvidia/gp10b/acr/ucode_load.bin");
>>  MODULE_FIRMWARE("nvidia/gp10b/gr/fecs_bl.bin");
>> @@ -91,3 +92,4 @@ MODULE_FIRMWARE("nvidia/gp10b/gr/sw_method_init.bin");
>>  MODULE_FIRMWARE("nvidia/gp10b/pmu/desc.bin");
>>  MODULE_FIRMWARE("nvidia/gp10b/pmu/image.bin");
>>  MODULE_FIRMWARE("nvidia/gp10b/pmu/sig.bin");
>> +#endif
>
> I suppose that makes sense, so:
>
> Acked-by: Thierry Reding <treding@nvidia.com>
>
> On a side-note, I was checking for what we do for gk20a, but it seems
> like we don't have MODULE_FIRMWARE() entries for Tegra124. How do we
> make sure that firmware is automatically pulled into initramfs on the
> Tegra124 devices?
The MODULE_FIRMWARE entries related to gtk20a are located in
drivers/gpu/drm/nouveau/nouveau_platform.c
This file is only built when using ARCH_TEGRA.
I'm not aware that nouveau can build a gk20a only driver, so moving
theses entries to a gk20a specific file will have the same effect at
this time.

Thx for the review.

-- 
-

Nicolas (kwizart)
_______________________________________________
Nouveau mailing list
Nouveau@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/nouveau

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: [PATCH] drm: nouveau: Enable gp20b/gp10b firmware tag when relevant
       [not found]       ` <CABr+WTk19So=oLbQ0UMLza5HGRo7QvCyZdcOw25zH42oAELLqQ-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
@ 2018-06-11 11:10         ` Thierry Reding
  0 siblings, 0 replies; 4+ messages in thread
From: Thierry Reding @ 2018-06-11 11:10 UTC (permalink / raw)
  To: Nicolas Chauvet
  Cc: linux-tegra-u79uwXL29TY76Z2rM5mHXA,
	nouveau-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW,
	mperttunen-DDmLM1+adcrQT0dZR+AlfA


[-- Attachment #1.1: Type: text/plain, Size: 3181 bytes --]

On Mon, Jun 11, 2018 at 11:32:53AM +0200, Nicolas Chauvet wrote:
> 2018-06-11 10:33 GMT+02:00 Thierry Reding <thierry.reding-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>:
> > On Sun, Jun 10, 2018 at 01:01:31PM +0200, Nicolas Chauvet wrote:
> >> This allows to have the related MODULE_FIRMWARE tag only
> >> on relevant arch (arm64).
> >> This will saves about 400k on initramfs when not relevant
> >>
> >> Signed-off-by: Nicolas Chauvet <kwizart-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
> >> ---
> >>  drivers/gpu/drm/nouveau/nvkm/subdev/secboot/gm20b.c | 2 ++
> >>  drivers/gpu/drm/nouveau/nvkm/subdev/secboot/gp10b.c | 2 ++
> >>  2 files changed, 4 insertions(+)
> >>
> >> diff --git a/drivers/gpu/drm/nouveau/nvkm/subdev/secboot/gm20b.c b/drivers/gpu/drm/nouveau/nvkm/subdev/secboot/gm20b.c
> >> index 30491d132d59..df8b919dcf09 100644
> >> --- a/drivers/gpu/drm/nouveau/nvkm/subdev/secboot/gm20b.c
> >> +++ b/drivers/gpu/drm/nouveau/nvkm/subdev/secboot/gm20b.c
> >> @@ -129,6 +129,7 @@ gm20b_secboot_new(struct nvkm_device *device, int index,
> >>       return 0;
> >>  }
> >>
> >> +#if IS_ENABLED(CONFIG_ARCH_TEGRA_210_SOC)
> >>  MODULE_FIRMWARE("nvidia/gm20b/acr/bl.bin");
> >>  MODULE_FIRMWARE("nvidia/gm20b/acr/ucode_load.bin");
> >>  MODULE_FIRMWARE("nvidia/gm20b/gr/fecs_bl.bin");
> >> @@ -144,3 +145,4 @@ MODULE_FIRMWARE("nvidia/gm20b/gr/sw_method_init.bin");
> >>  MODULE_FIRMWARE("nvidia/gm20b/pmu/desc.bin");
> >>  MODULE_FIRMWARE("nvidia/gm20b/pmu/image.bin");
> >>  MODULE_FIRMWARE("nvidia/gm20b/pmu/sig.bin");
> >> +#endif
> >> diff --git a/drivers/gpu/drm/nouveau/nvkm/subdev/secboot/gp10b.c b/drivers/gpu/drm/nouveau/nvkm/subdev/secboot/gp10b.c
> >> index 632e9545e292..28ca29d0eeee 100644
> >> --- a/drivers/gpu/drm/nouveau/nvkm/subdev/secboot/gp10b.c
> >> +++ b/drivers/gpu/drm/nouveau/nvkm/subdev/secboot/gp10b.c
> >> @@ -74,6 +74,7 @@ gp10b_secboot_new(struct nvkm_device *device, int index,
> >>       return 0;
> >>  }
> >>
> >> +#if IS_ENABLED(CONFIG_ARCH_TEGRA_186_SOC)
> >>  MODULE_FIRMWARE("nvidia/gp10b/acr/bl.bin");
> >>  MODULE_FIRMWARE("nvidia/gp10b/acr/ucode_load.bin");
> >>  MODULE_FIRMWARE("nvidia/gp10b/gr/fecs_bl.bin");
> >> @@ -91,3 +92,4 @@ MODULE_FIRMWARE("nvidia/gp10b/gr/sw_method_init.bin");
> >>  MODULE_FIRMWARE("nvidia/gp10b/pmu/desc.bin");
> >>  MODULE_FIRMWARE("nvidia/gp10b/pmu/image.bin");
> >>  MODULE_FIRMWARE("nvidia/gp10b/pmu/sig.bin");
> >> +#endif
> >
> > I suppose that makes sense, so:
> >
> > Acked-by: Thierry Reding <treding-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org>
> >
> > On a side-note, I was checking for what we do for gk20a, but it seems
> > like we don't have MODULE_FIRMWARE() entries for Tegra124. How do we
> > make sure that firmware is automatically pulled into initramfs on the
> > Tegra124 devices?
> The MODULE_FIRMWARE entries related to gtk20a are located in
> drivers/gpu/drm/nouveau/nouveau_platform.c
> This file is only built when using ARCH_TEGRA.
> I'm not aware that nouveau can build a gk20a only driver, so moving
> theses entries to a gk20a specific file will have the same effect at
> this time.

Huh... you're right. I must've screwed up my git grep invocation. All
looks well, then.

Thierry

[-- Attachment #1.2: signature.asc --]
[-- Type: application/pgp-signature, Size: 833 bytes --]

[-- Attachment #2: Type: text/plain, Size: 154 bytes --]

_______________________________________________
Nouveau mailing list
Nouveau@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/nouveau

^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2018-06-11 11:10 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2018-06-10 11:01 [PATCH] drm: nouveau: Enable gp20b/gp10b firmware tag when relevant Nicolas Chauvet
     [not found] ` <20180610110131.10490-1-kwizart-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
2018-06-11  8:33   ` Thierry Reding
2018-06-11  9:32     ` Nicolas Chauvet
     [not found]       ` <CABr+WTk19So=oLbQ0UMLza5HGRo7QvCyZdcOw25zH42oAELLqQ-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2018-06-11 11:10         ` Thierry Reding

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).