Re: [Nouveau] [PATCH v2 2/5] core: add support for secure boot

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 01/21/2016 10:09 PM, Emil Velikov wrote:
> Hi Alexandre,
> 
> On 18 January 2016 at 06:10, Alexandre Courbot <acourbot@xxxxxxxxxx> wrote:
> 
> [snip]
>> +static const char *
>> +managed_falcons_names[] = {
>> +       [NVKM_SECBOOT_FALCON_PMU] = "PMU",
>> +       [NVKM_SECBOOT_FALCON_RESERVED] = "<invalid>",
> "<reserved>" perhaps ? we already have one invalid below.
Does <reserved> really mean: "we don't want to tell you?" here? :)

> 
>> +       [NVKM_SECBOOT_FALCON_FECS] = "FECS",
>> +       [NVKM_SECBOOT_FALCON_GPCCS] = "GPCCS",
>> +       [NVKM_SECBOOT_FALCON_END] = "<invalid>",
>> +};
>> +
> 
> [snip]
>> +int
>> +nvkm_secboot_ctor(const struct nvkm_secboot_func *func,
>> +                 struct nvkm_device *device, int index,
>> +                 struct nvkm_secboot *sb)
>> +{
>> +       unsigned long fid;
>> +
>> +       nvkm_subdev_ctor(&nvkm_secboot, device, index, 0, &sb->subdev);
>> +       sb->func = func;
>> +
> Move these two after the switch statement ?
They need to be done here to make the failure path cleanup stuff work
correctly, so it's correct as-is.

> 
>> +       /* setup the performing falcon's base address and masks */
>> +       switch (func->boot_falcon) {
>> +       case NVKM_SECBOOT_FALCON_PMU:
>> +               sb->base = 0x10a000;
>> +               sb->irq_mask = 0x1000000;
>> +               sb->enable_mask = 0x2000;
>> +               break;
>> +       default:
>> +               nvdev_error(device, "invalid secure boot falcon\n");
>> +               return -EINVAL;
>> +       };
>> +
>> +       nvkm_info(&sb->subdev, "securely managed falcons:\n");
>> +       for_each_set_bit(fid, &sb->func->managed_falcons,
>> +                        NVKM_SECBOOT_FALCON_END)
>> +               nvkm_info(&sb->subdev, "- %s\n", managed_falcons_names[fid]);
>> +
>> +       return 0;
>> +}
> 
> Cheers,
> Emil
> 

Attachment: signature.asc
Description: OpenPGP digital signature


[Index of Archives]     [ARM Kernel]     [Linux ARM]     [Linux ARM MSM]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux