Tool/software: Linux
I'm trying to use the 2 PRUs in the AM3358 to accomplish 3 tasks while the core is running Linux:
- PRU0 will run a bit-banged I2C slave receiver
- Depending upon what's written to the I2C slave, PRU1 will either implement a SPI protocol to record samples from an external ADC, OR will implement a SPI protocol to dump the recorded data to an external host.
Is this possible? Can the linux core observe the data read in by the I2C slave in the first PRU and then stop the second PRU if necessary, load a new executable in the second PRU, and kick it off?
I'm trying to work around the fact that the I2C modules used in this processor can't seem to be configured as slave devices -- https://e2e.ti.com/support/arm/sitara_arm/f/791/t/501656. I don't think I can bit bang a couple of GPIO fast enough in the main core running linux to create a stable I2C slave module.
Thanks,
Dave