OSDN Git Service

spi: spi-bitbang: Fix conversion of spi_bitbang_transfer_one()
authorFabio Estevam <fabio.estevam@freescale.com>
Wed, 17 Jul 2013 18:49:54 +0000 (15:49 -0300)
committerMark Brown <broonie@linaro.org>
Wed, 17 Jul 2013 22:34:27 +0000 (23:34 +0100)
commitd60990d597bfa2816dfe28a5c5c6787610b423e6
treefe937851b5700028cf3709c6cc388c168b4a6c00
parent2025172e32808a327b00f968c72baa79adc594c2
spi: spi-bitbang: Fix conversion of spi_bitbang_transfer_one()

Since commit 2025172e3 (spi/bitbang: Use core message pump), the following
kernel crash is seen:

Unable to handle kernel NULL pointer dereference at virtual address 0000000d
pgd = 80004000
[0000000d] *pgd=00000000
Internal error: Oops: 5 [#1] SMP ARM
Modules linked in:
CPU: 1 PID: 48 Comm: spi32766 Not tainted 3.11.0-rc1+ #4
task: bfa3e580 ti: bfb90000 task.ti: bfb90000
PC is at spi_bitbang_transfer_one+0x50/0x248
LR is at spi_bitbang_transfer_one+0x20/0x248
...

,and also the following build warning:

drivers/spi/spi-bitbang.c: In function 'spi_bitbang_start':
drivers/spi/spi-bitbang.c:436:31: warning: assignment from incompatible pointer type [enabled by default]

In order to fix it, we need to change the first parameter of
spi_bitbang_transfer_one() to 'struct spi_master *master'.

Tested on a mx6qsabrelite by succesfully probing a SPI NOR flash.

Signed-off-by: Fabio Estevam <fabio.estevam@freescale.com>
Signed-off-by: Mark Brown <broonie@linaro.org>
drivers/spi/spi-bitbang.c