# Vixy BBB PRU Firmware Makefile PRU_CGT ?= /usr/share/ti/cgt-pru PRU_SUPPORT ?= /usr/lib/ti/pru-software-support-package CC = clpru LD = lnkpru CFLAGS = --include_path=$(PRU_CGT)/include \ --include_path=$(PRU_SUPPORT)/include \ --include_path=$(PRU_SUPPORT)/include/am335x \ -v3 -O2 --printf_support=minimal --display_error_number \ --endian=little --hardware_mac=on LDFLAGS = -i$(PRU_CGT)/lib -i$(PRU_SUPPORT)/lib \ --reread_libs --warn_sections \ --stack_size=0x100 --heap_size=0x100 # Build combined firmware (recommended - handles both strips from PRU0) all: am335x-pru0-fw # Combined firmware for both strips on PRU0 am335x-pru0-fw: ws281x_combined.obj AM335x_PRU.cmd $(LD) $(LDFLAGS) -o $@ $^ -m $@.map --library=libc.a # Legacy separate firmwares (for reference) am335x-pru0-fw-mood: ws281x_pru0.obj AM335x_PRU.cmd $(LD) $(LDFLAGS) -o $@ $^ -m $@.map --library=libc.a am335x-pru1-fw-jaw: ws281x_pru1.obj AM335x_PRU.cmd $(LD) $(LDFLAGS) -o $@ $^ -m $@.map --library=libc.a %.obj: %.c $(CC) $(CFLAGS) -c $< -o $@ clean: rm -f *.obj *.map am335x-pru*-fw install: am335x-pru0-fw sudo cp am335x-pru0-fw /lib/firmware/ .PHONY: all clean install