SPI on RTEMS RPi BSP (4.12)

Gedare Bloom gedare at rtems.org
Thu Dec 21 17:12:56 UTC 2017


Hello Will,

Thank you for following-up with your findings. This is important :).

On Mon, Nov 20, 2017 at 1:12 AM, William Busacker <wbusacker at outlook.com> wrote:
> No longer an issue, but replying for future reference if anyone else has
> the same problem.
>
> As noted in the GSoC project intro
> https://asuolgsoc2014.wordpress.com/2015/05/03/project-intro/ the SPI
> bus for the RPi still uses the libi2c api. As far as I can tell, that
> means the standard Linux Spidev interface still doesn't work, nor does
> the spi01 test originally mentioned work. However, the test cases
> referenced https://github.com/asuol/RTEMS_rpi_testing do work. The
> instructions saying that the device driver must be placed in libchip/i2c
> can be ignored, just copy the files local to init.c and change the
> include reference to a local instead of compiler directory. Also, his
> blogpost says that the configure.ac script must have BSP_ENABLE_SPI in
> it to work, but doesn't say how to do so. In the file
> rtems-git/c/src/lib/libbsp/arm/raspberrypi/configure.ac include the line
> RTEMS_BSPOPTS_SET([BSP_ENABLE_SPI],[*],[1]) anywhere then re-run the
> makefile in the build directory for raspberry pi. Assuming you followed
> Alan Cudmore's instructions this should be build-rtems-rpi.
>
> To some this solution may seem obvious, but for those who are just
> starting out with rtems (like I am right now) hopefully this sheds some
> light on the subject.
>
> On 11/14/2017 07:21, William wrote:
>> Hello All,
>>
>> I am trying to get a minimum working example for using SPI on the
>> raspberry pi, however I have been unable to get anything on the SPI
>> ports for several weeks now.
>>
>> I have tried using the Linux spidev library as recommended by the user
>> guide, however that fails to work. The function calls don't send any
>> errors out, however nothing happens (I've been checking both SPI port
>> pins for activity). A similar thing happens when I run the spi test
>> program located at rtems-git/testsuites/libtests/spi01 in the RTEMS
>> source distribution. None of the assertions fail, but again, nothing
>> happens on either SPI Bus.
>>
>> Following the GSoC submission for SPI on the RPi
>> (https://devel.rtems.org/wiki/GSoC/2013/Raspberry_Pi_BSP_Peripherals)
>> it says that those steps should enable the board to run SPI, however I
>> am unable to replicate his results of proof that SPI works. The
>> autotools parts in the git repo linked on that page won't run as
>> configure.ac is missing. Admittedly my knowledge of autotools is
>> rather limited so that may simply be operator error, but the effort
>> that I've put into getting this working is telling me there has got to
>> be a better way.
>>
>> All I really want is a short list of functions to call and parameters
>> to pass in for spi control and then a simple rx and tx subroutine
>> (hence my first attempt at using spidev).
>>
>> Any advice or help would be much appreciated,
>> Will Busacker
>
> _______________________________________________
> users mailing list
> users at rtems.org
> http://lists.rtems.org/mailman/listinfo/users


More information about the users mailing list