-
Notifications
You must be signed in to change notification settings - Fork 54
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
intel-ipu6: CSE authenticate_run failed + error -EIO: FW authentication failed #306
Comments
@bingbucao Any tips which I could do myself to narrow down the issue? Unfortunately, I am not much of a kernel programmer so I have no idea how I could investigate myself what might cause the failing authentication. |
Do you have SecureBoot enabled? |
Yes, secure boot is enabled. I replaced the platform key (PK) with my own key, re-signed the Microsoft KEKs 2011 and 2023, Canonical KEK with my own PK and imported the DB keys from Microsoft (as I need dual boot with Windows) and Canonical as well as my own DB key to sign my custom Linux kernel. Where do I get the Intel keys? |
Silly me, the download link for the certificate is on the page you linked. However, I built and signed the IPU6 kernel module myself, so the Intel certificate is not required to authenticate the kernel module. Do I also need the certificate to verify the firmware? I thought the CSE uses fixed hash values fused into the hardware to authenticate the firmware. I am asking, because firmware loading works with a self-built and self-signed kernel based on a distribution-provided configuration even if the Intel certificate is not installed in my EFI vars. Hence, I was under the impression that the Intel keys are only necessary if one uses the pre-built Intel kernel module. |
Honestly I do not know. And I do not know how far the hardware itself checks those things. But my camera is still not working =( |
I added the Intel keys to the UEFI firmware. It didn't help (as expected). For my custom-built kernel, the CSE still fails to authenticate the firmware. It works with a self-compiled kernel based on the distribution-provided kernel configuration. |
Which UEFI firmware version are you using? It looks like the CSE firmware does not match the signed IPU firmware. |
But please keep in mind that FW loading and authentication works with a distribution kernel, but not with the self-configured kernel on the same machine using the same firmware. So it shouldn't be a hardware or firmware problem. |
Are you sure using same IPU firmware binary with the distribution kernel? I see that the distribution kernel is using a built-in firmware binary.
|
Yes, I am. Once again: Both kernels are self-compiled. The kernels are built on the target machine (and both kernels include the same, identical firmware file from Quite obviously, I disabled too much, i.e. left out a necessary kernel option or module. |
I have experimented a bit and at least was able to achieve some different behavior. (But nothing good though.) Summary (TLDR)There seems to be at least three issues here, but I do not know how they are related or if they are independent:
Links to Pastebins:
Note: All kernels have been self-compiled on the target machine using the same tool chain. If firmware is embedded into the kernel, this firmware is identical to the firmware which is dynamically loaded at run-time from DetailsIssue 1: Successful CSE authentication for IPU6 requires at least
|
I get the following error on kernel 6.12.1 with a custom kernel config
Expected behaviour: AUTHENTICATE_RUN should succeed.
A necessary kernel option might be missing in the custom kernel configuration, because FW loading works with the distribution-provided kernel. However, if this was indeed the reason, that would indicate a issue with Kconfig for the IPU6 driver as Kconfig should ensure that the kernel includes all necessary options.
Pastebins:
The text was updated successfully, but these errors were encountered: