Quantcast
Channel: Embedded Software (Read Only)
Viewing all articles
Browse latest Browse all 25965

Forum Post: RE: linux-c6x: Can't work with SPI NOR flash

$
0
0

Update 1:

I add output debug messages from davinci_spi driver and found that system is hung in interrupt service routine:

...

Serial: 8250/16550 driver, 1 ports, IRQ sharing disabled
serial8250.0: ttyS0 at MMIO 0x2540000 (irq = 276) is a 16550A
console [ttyS0] enabled
brd: module loaded
loop: module loaded
at24 1-0050: 131072 byte 24c1024 EEPROM (writable)
mtdoops: mtd device (mtddev=name/number) must be supplied
m25p80_init()
davinci_spi_init()
davinci_spi_probe()
set_io_bits()
set_io_bits()
davinci_spi_setup()
clear_fmt_bits()
clear_io_bits()
clear_fmt_bits()
clear_io_bits()
set_fmt_bits()
set_io_bits()
davinci_spi_setup_transfer()
clear_fmt_bits()
clear_io_bits()
set_fmt_bits()
set_io_bits()
clear_fmt_bits()
clear_io_bits()
set_fmt_bits()
set_io_bits()
m25p_probe()
jedec_probe()
spi_write_then_read()
spi_message_init()
spi_message_add_tail()
spi_message_add_tail()
spi_sync()
spi_async()
davinci_spi_setup_transfer()
clear_fmt_bits()
clear_io_bits()
set_fmt_bits()
set_io_bits()
clear_fmt_bits()
clear_io_bits()
set_fmt_bits()
set_io_bits()
davinci_spi_chipselect()
clear_io_bits()
set_io_bits()
clear_io_bits()
clear_io_bits()
davinci_spi_setup_transfer()
clear_fmt_bits()
clear_io_bits()
set_fmt_bits()
set_io_bits()
clear_fmt_bits()
clear_io_bits()
set_fmt_bits()
set_io_bits()
clear_io_bits()
set_io_bits()
clear_io_bits()
set_io_bits()
davinci_spi_irq() int_status = 0x1000300
set_io_bits()

If I enable polling mode in struct evm_spi0_pdata

poll_mode=1,/*0->interruptmode,1->pollingmode*/

system boot up and I can see the /dev/mtdXX

/ # ls -l /dev/mtd*
crw-rw---- 1 root root 90, 0 Nov 30 00:00 /dev/mtd0
crw-rw---- 1 root root 90, 1 Nov 30 00:00 /dev/mtd0ro

Please, tell me why SPI can't work in interrupt mode?

Vladimir

 


Viewing all articles
Browse latest Browse all 25965

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>