f2d69e03 |
1 | 1.) build/install pru kernel module driver & library objects/headers |
2 | a. https://github.com/beagleboard/am335x_pru_package.git |
3 | b. headers go in /usr/include/pruss/ |
4 | c. in app_loader/interface/, `CROSS_COMPILE= make` |
5 | d. in app_loader/lib/ move objects to /usr/lib && `ldconfig` |
6 | |
7 | 2.) build/install assembler |
8 | a. in pru_sw/utils/pasm_source/, `source linuxbuild` (wtf) |
9 | b. executable is one dir up, put in $PATH |
10 | |
11 | 3.) load "kernel module" |
12 | a. `echo BB-BONE-PRU-01 > /sys/devices/bone_capemgr.9/slots` |
13 | |
14 | 4.) write pru assembly |
15 | a. this is the most fun part |
16 | b. assemble object via binary in step 2 |
17 | |
18 | 5.) write host loader |
19 | a. C |
20 | b. init lib, setup intr. |
21 | c. load object from 4a via lib func |
22 | d. block until intr via lib func |
23 | e. clean up via lib func |