[Nouveau] [PATCH v4] pmu/gk20a: PMU boot support

Alexandre Courbot gnurou at gmail.com
Tue May 12 02:04:30 PDT 2015

Hi Ben,

On Fri, May 1, 2015 at 8:01 AM, Ben Skeggs <skeggsb at gmail.com> wrote:
> On 13 April 2015 at 20:42, Alexandre Courbot <acourbot at nvidia.com> wrote:
>> Ben, I guess our main remaining concern with this patch is how it should
>> integrate wrt. the existing PMU code. Since it is designed to interact with
>> the NVIDIA firmware, maybe we should use a different base code, or do you
>> think we can somehow share code and data structures?
> Hey Alexandre,
> Sorry for the delay in responding to this.

It is my turn to apologize - I was (well still am, technically :)) on
holidays and have just started unpiling my inbox...

> My original thinking with transitioning to use NVIDIA's firmware was
> that I'd modify our firmware interfaces to match yours, and share the
> code.  I haven't started on any of this yet due to not having any word
> on how you guys will be shipping the images, etc.  It would be nice to
> have some communication on these things :)

Indeed. For the first time with Maxwell GPUs, NVIDIA-provided firmware
will be required for GPUs to operate properly. This raises several

- Should the firmware be released under /lib/firmware/nouveau or
/lib/firmware/nvidia ? (this directory already exists for Tegra USB
firmware and makes more sense to me, since the firmware is not
- For GPCCS/FECS firmware, should we release the netlist "pack" file
or adopt the same format as Nouveau does? (1 file per firmware)
- Should we keep the current files names (e.g. nvxx_fucxxxx[cd]), or
try to switch to more meaningful ones?
- What about signature files that are required for secure boot?
- Knowing that NVIDIA's firmware ABI is a (very slowly) moving target,
it is worth to aim at ABI compatibility, or should we assume different
paths for Nouveau and NVIDIA firmware? If ABI incompatibilities are
introduced in the way, how do we handle versioning?

All these issues make me tend towards having a separate handling of
NVIDIA-released firmware (location, format, and ABI). It will also
make the firmware easier to release if conversions are not necessary
on the way out. What are your thoughts on this?

> I'm suspecting you won't be wanting to modify our falcon assembly, so
> I guess I'll set aside some time to use this patch as a base and
> transition our ucode to boot using it?  Then you guys can build more
> stuff on top of that.  I'm also happy to let you modify our ucode if
> you wish :)

There may be legal issues with us touching the Nouveau firmware. But
as I stated above, the first question is do we want to bother with
this compatiblity at all?

More information about the Nouveau mailing list