PRU C Header files for am335x specific hardware

I’ve read mention of TI header files specific to the am335x PRU C language compiler.
I’ve installed the PRU support packages for debian 3.8 kernel: am335x-pru-package ti-pru-cgt-installer.
The PRU C compiler is installed and a C runtime library is installed.
I can’t find any header files under /usr/share/ti/cgt-pru/include that target the PRU memory layout and structures.

The TI website mentions PRU header files targeting the am335x PRU:

Are they included somewhere I haven’t looked?
I can create PRU layout unions and structures, but if some already exist, I’d rather use them.
Also, if there is a document that spells all this out and I missed it, please add a link to where it is.
All I’ve been able to find is this guide: PRU Optimizing C/C++ Compiler User’s Guide

You’d honest to god do yourself a better favor by picking up a good book on the gcc tool chain ( general term ), and just read. So, with that said, the TI PRU C compiler is not gcc ( at least strictly speaking ), but what this information will do is give you an idea of what all is involved whenever doing anything of this nature. e.g. setting up toolchains.

My own first time doing this was a few years back with the msp430-gcc toolchain. I can honestly say that this helped me understand everything much better. Prior to that I was just tinkering around with C/C++ , C# etc. Albeit for many years, and having some very nice results, at least on the Windows desktop.

Without looking for them, as far as I remember all the PRU-thingies are located in /opt/ti/… and not in /usr/share.

I bet that's the case when you compile and install the git package (haven't tried it yet)

git clone git://

I'm using the bundled pre-compiled packages:

sudo apt-get install make gcc g++ am335x-pru-package ti-pru-cgt-installer

The apt-get packages seem to install in the /usr/share/ti directory.
It may be the packages are not the same pru package you get with git & compile & install.

The ti-pru-cgt-installer now also set's up a global variable...

export PRU_C_DIR="/usr/share/ti/cgt-pru/include;/usr/share/ti/cgt-pru/lib"

So pru-cgt tools will find the include/lib's by default..


I found what I was looking for.
TI has a support package for the PRU C library.
The package contains headers and example code for PRU side operations.
You can get it using:

#git clone git://