cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 
Highlighted
Observer
Observer
846 Views
Registered: ‎10-08-2018

Accessing PUF from Linux application?

Jump to solution

I have previously worked with standalone applications on ZynqMP and have recently started to look at Petalinux.
My use case involves using the PUF and my research regarding Petalinux and PUF usage has given me... nothing what-so-ever :-).

Therefore, I'm hoping someone more informed can enlighten me regarding the following:

1. Is it possible to access the PUF from Linux and in such case, how?
2. If it is not possible to access the PUF from Linux, I suppose AMP is an alternative. Is shared memory the only way of communicating between a standalone and a Linux application?

I also saw something indicating that at least the crypto accelerators are accessible in Linux.

"Following are the new features added in PMU Firmware in 2017.3 release:
Added xilsecure API calls to support xilsecure functionality from Linux"

3. How can I access said xilsecure functionality in Linux?

0 Kudos
1 Solution

Accepted Solutions
Highlighted
Xilinx Employee
Xilinx Employee
738 Views
Registered: ‎04-15-2011

@niklaslindskog 

I am not sure why you can't see those pictures. I have attached the screenshot FYI.

-------------------------------------------------------------------------
Don't forget to reply, kudo, and accept as solution.
-------------------------------------------------------------------------

View solution in original post

kernel_config.PNG
0 Kudos
7 Replies
Highlighted
Xilinx Employee
Xilinx Employee
808 Views
Registered: ‎04-15-2011

@niklaslindskog 

AES driver has been added since 2018.3 kernel. 

You can check below link for more info.

https://xilinx-wiki.atlassian.net/wiki/spaces/A/pages/64749783/ZynqMP+AES+Driver

Regards,

Longley

-------------------------------------------------------------------------
Don't forget to reply, kudo, and accept as solution.
-------------------------------------------------------------------------
0 Kudos
Highlighted
Observer
Observer
797 Views
Registered: ‎10-08-2018

Thanks!

So from Linux I can use the PUF key but not access the PUF itself, is that correct?

0 Kudos
Highlighted
Xilinx Employee
Xilinx Employee
787 Views
Registered: ‎04-15-2011

@niklaslindskog 

Yes, you can use PUF key to encrypt and decrypt data. 

What do you want to do for accessing PUF itself?

-------------------------------------------------------------------------
Don't forget to reply, kudo, and accept as solution.
-------------------------------------------------------------------------
0 Kudos
Highlighted
Observer
Observer
775 Views
Registered: ‎10-08-2018

That's a good start at least!
There are however two broken images on the page you linked to, maybe something to report to the page admin?

Without going into too much details - I want to be able to start and use the PUF without using bootheader options.
Using a standalone app enables access to the PUF also when booting via JTAG.

Therefore I am looking for something which provides the same functionality as XilSKey_Puf_Regeneration(XilSKey_Puf *InstancePtr).

 

0 Kudos
Highlighted
Observer
Observer
753 Views
Registered: ‎10-08-2018

The pictures displaying the kernel configuration on the AES driver wiki page are not showing.
Would it be possible to fix that?

0 Kudos
Highlighted
Xilinx Employee
Xilinx Employee
739 Views
Registered: ‎04-15-2011

@niklaslindskog 

I am not sure why you can't see those pictures. I have attached the screenshot FYI.

-------------------------------------------------------------------------
Don't forget to reply, kudo, and accept as solution.
-------------------------------------------------------------------------

View solution in original post

kernel_config.PNG
0 Kudos
Highlighted
Observer
Observer
725 Views
Registered: ‎10-08-2018

Thank you!
Got stuck and the upper picture made all the difference.

BTW, I don't think I am alone not seeing the pictures.
https://forums.xilinx.com/t5/Embedded-Linux/Using-HW-SHA-3-from-Linux/td-p/950530 has the same issue albeit a different accelerator.

0 Kudos