The PPI frame capture device (PPIFCD) is a CMOS camera that connects to a Blackfin via the parallel peripheral interface. It is intended to only capture single frames. Currently two camera sensors are supported.
See here: v4l_blackfin_camera for an v4l video driver supporting several sensors.
The PPIFCD can be built using a Micron MT9T001 (datasheet), as described here. It uses the standard Inter-IC Bus (intro) and the programmable flags to control the camera (e.g., to take out of standby mode, etc.).
As mentioned here, the PPIFCD Frame Capture Driver test application aims to see if the digital image sensor can take pictures effectively which is connected through the PPI port to the target board. It records the row_time, total_frame_time, total_frame_capture_time, and the taken picture. If the printed data is as expected, the case passes, otherwise it fails.
This program serves CGI-based web pages that allow the user to specify settings, capture frames, and verify the overall operation of the camera.
The Blackfin PPI supports a number of daughter cards, the PPIFCD being one.
Below are some configuration settings for the BF533 and BF537 STAMP boards. To get either of the programs mentioned above built, specify the following:
under Customize Vendor/User Settings == Select Blackfin test programs == Enable PPIFCD test program == Select Blackfin app programs == Enable CGI based Test Application for the PPI Frame Capture Driver
As described here, the BF533-STAMP board is known to work with the PPIFCD with the following settings:
under Customize Kernel Settings == Select Device Drivers == == Select Character devices == Enable [*] Simple GPIO char interface Enable [*] Blackfin BF5xx PPI Driver == Select I2C support == Enable I2C support Enable I2C device interface Select I2C Hardware Bus support Enable GPIO-based bitbanging I2C
In the linux-2.6.x/arch/blackfin/mach-bf533/boards/stamp.c, make sure
.sda_pin =2 .scl_pin =4
And make sure you are using packing mode with argument -p 1. eg
ppifcd-test -p 1 -b 533
under Customize Kernel Settings == Select Device Drivers == == Select Character devices == Enable [*] Simple GPIO char interface Enable [*] Blackfin BF5xx PPI Driver == Select I2C support == Enable I2C support Enable I2C device interface Select I2C Hardware Bus support Enable Blackfin TWI I2C support