Hi,
I’m trying to use the spi device on my beaglebone black with a C program.
For setup I use something like:
`
uint8_t SPImode |= SPI_CPOL;
uint8_t bits = 8;
uint16_t delay = 0;
uint32_t speed = 500000;
fd= open(“spidev1.0”, O_RDWR);
ret = ioctl(fd, SPI_IOC_WR_MODE, &SPImode);
ret = ioctl(fd, SPI_IOC_RD_MODE, &SPImode);
ret = ioctl(fd, SPI_IOC_WR_BITS_PER_WORD, &bits);
ret = ioctl(fd, SPI_IOC_RD_BITS_PER_WORD, &bits);
ret = ioctl(fd, SPI_IOC_WR_MAX_SPEED_HZ, &speed);
ret = ioctl(fd, SPI_IOC_RD_MAX_SPEED_HZ, &speed);
`
For transfer I use something like:
`
struct spi_ioc_transfer tr = {
.tx_buf = (unsigned long)dataWrite,
.rx_buf = (unsigned long)dataRead,
.len = len,
.delay_usecs = 0,
.speed_hz = 500000,
.bits_per_word = 8,
};
ret = ioctl(fd, SPI_IOC_MESSAGE(1), &tr);
`
Unfortunately my log files (syslog, kern.log, debug) gets flooded with SPI messages:
Mar 28 14:25:28 bbbi-ohl-1 kernel: [ 9846.393284] spidev spi1.0: setup: speed 500000, sample trailing edge, clk normal
Mar 28 14:25:28 bbbi-ohl-1 kernel: [ 9846.393337] spidev spi1.0: setup: speed 16000000, sample trailing edge, clk normal
Mar 28 14:25:28 bbbi-ohl-1 kernel: [ 9846.393440] spidev spi1.0: setup: speed 500000, sample trailing edge, clk normal
Mar 28 14:25:28 bbbi-ohl-1 kernel: [ 9846.393492] spidev spi1.0: setup: speed 16000000, sample trailing edge, clk normal
Mar 28 14:25:28 bbbi-ohl-1 kernel: [ 9846.394007] spidev spi1.0: setup: speed 500000, sample trailing edge, clk normal
Mar 28 14:25:28 bbbi-ohl-1 kernel: [ 9846.394062] spidev spi1.0: setup: speed 16000000, sample trailing edge, clk normal
Looks like somebody tries to reset the SPI clock to the maximum of 16 MHz?
And the SPI driver logs everthing in each log file.
Somebody knows a solution for this?
Because my flash gets filled in just a few seconds