Topic: Compile WolfSSL for TIROS with WOLFSSL_USER_IO

Hi,

I'm trying o compile WolfSSL for TIRTOS on a CC2640 chip with -DWOLFSSL_USER_IO defined I get the following error:

"/Users/justinmclean/Downloads/wolfssl-3.10.0/tirtos/../wolfcrypt/src/port/ti/ti-aes.c", line 40: fatal error: cannot open source file "inc/hw_aes.h"
1 catastrophic error detected in the compilation of "/Users/justinmclean/Downloads/wolfssl-3.10.0/tirtos/../wolfcrypt/src/aes.c".

Where is it expecting to find hw_aes.h?

In my products.make I have set:
XDC_INSTALL_DIR        =/Applications/ti/xdctools_3_31_01_33_core
BIOS_INSTALL_DIR       =/Applications/ti/tirtos_simplelink_2_14_03_28/products/bios_6_42_03_35/
TIVAWARE_INSTALL_DIR   =/Applications/ti/tirtos_simplelink_2_14_03_28/products/cc26xxware_2_22_00_16101/driverlib/
ti.targets.arm.elf.M4F =/Applications/ti/ccsv6/tools/compiler/ti-cgt-arm_5.2.5/

Thanks,
Justin

Share

Re: Compile WolfSSL for TIROS with WOLFSSL_USER_IO

Hi,

I've found out that the encryption function are found in:
./tirtos_simplelink_2_14_03_28/products/cc26xxware_2_22_00_16101/driverlib/rom_crypto.h

rather than a hw_aes.h if that helps.

Thanks,
Justin

Share

Re: Compile WolfSSL for TIROS with WOLFSSL_USER_IO

Hi,

I also tried -DNO_AES and it get further but then fails here:
"/Users/justinmclean/Downloads/wolfssl-3.10.0/tirtos/../wolfssl/internal.h", line 2177: error: identifier "Aes" is undefined
1 error detected in the compilation of "/Users/justinmclean/Downloads/wolfssl-3.10.0/tirtos/../src/internal.c".

Any suggestions?

Thanks,
Justin

Share

Re: Compile WolfSSL for TIROS with WOLFSSL_USER_IO

Hi Justin Mclean,

Apologies for the delay in getting back to you. The TIRTOS stuff to date has only been tested and build on the TIVA-C series micro controller family. I am not sure about the CC2640 but my suspicion is that it may not have hardware crypto supported?

The hw_aes.h header file is for hardware aes implementation and is included when WOLFSSL_TIRTOS is defined to speed up aes operations but that is specific to the TIVA-C series family.

If you wish to build for an alternate platform/device family there will likely be modifications necessary. You might check for HW support on your device and if it does have AES Hardware Support then include the correct header in place of hw_aes.h.

A good starting point would be to add a new section to <wolfssl-root>/wolfssl/wolfcrypt/settings.h for WOLFSSL_TIRTOS_CC, use the same settings there as in the WOLFSSL_TIRTOS section and then systematically add a similar section everywhere in the library where WOLFSSL_TIRTOS appears for WOLFSSL_TIRTOS_CC.

Could you share some more details on your project? What are your end goals, what is driving the motivation to port to CC2640?

Regards,

Kaleb