summaryrefslogtreecommitdiff
path: root/include/spi.h
diff options
context:
space:
mode:
authorPeng Fan <Peng.Fan@freescale.com>2015-03-20 13:19:16 +0800
committerJagannadha Sutradharudu Teki <jagannadh.teki@gmail.com>2015-04-22 17:06:13 +0530
commit4fbad92e7382c74757a58491deb6d210d1d842db (patch)
tree8dc0fd2ce887d55b8ef441f7ae44848021ae8ee9 /include/spi.h
parented62756dcf5544e277d87c461a84c6274f42b765 (diff)
downloadu-boot-imx-4fbad92e7382c74757a58491deb6d210d1d842db.zip
u-boot-imx-4fbad92e7382c74757a58491deb6d210d1d842db.tar.gz
u-boot-imx-4fbad92e7382c74757a58491deb6d210d1d842db.tar.bz2
mtd: spi: check return value of spi_setup_slave
Need to check value of spi_setup_slave and spi_setup_slave_fdt. If their return value 'bus' is NULL, there is no need to pass it to following spi_flash_probe_tail. If 'bus' is null, the original function flow is as following: spi_flash_probe |->spi_setup_slave |->spi_probe_bus_tail |->spi_flash_probe_slave |->spi_free_slave Alougth check the pointer in spi_free_slave is ok, checking the return value of spi_setup_slave and spi_setup_slave_fdt is better. Before this fix: " => sf probe 0:2 FSL_QSPI: Not a valid cs ! SF: Failed to set up slave data abort pc : [<fff66dcc>] lr : [<fff7628c>] reloc pc : [<87814dcc>] lr : [<8782428c>] sp : fdf4fcf0 ip : e630396c fp : fe0d0888 r10: fffa2538 r9 : fdf4feb8 r8 : 02625a00 r7 : 00000002 r6 : fff94ec0 r5 : 00000000 r4 : 9355553c r3 : 1af0593c r2 : cb3fe030 r1 : fff94eb8 r0 : e59ff018 Flags: nZCv IRQs off FIQs off Mode SVC_32 Resetting CPU ... " After this fix: " => sf probe 0:2 FSL_QSPI: Not a valid cs ! Failed to initialize SPI flash at 0:2 " No data abort using this patch. Signed-off-by: Peng Fan <Peng.Fan@freescale.com> Reviewed-by: Jagannadha Sutradharudu Teki <jagannadh.teki@gmail.com>
Diffstat (limited to 'include/spi.h')
0 files changed, 0 insertions, 0 deletions