Enabling spidev in MCSPI1
I'm trying to enable spidev on mcspi1, but when I do, the kernel while booting after the kernel is uncompressed. No useful messages are displayed. This is with a current git. I've attached the diff I use to add the spi driver to the board file. (OVero + Summit). With the #if 0 inplace the kernel boots, enable that code and it fails. +#if 0 + spi_register_board_info(overo_mcspi_board_info, + ARRAY_SIZE(overo_mcspi_board_info)); +#endif Does anyone see anything obviously wrong with what I am doing? Philip diff --git a/arch/arm/mach-omap2/board-overo.c b/arch/arm/mach-omap2/board-overo.c index d192dd9..804d88f 100644 --- a/arch/arm/mach-omap2/board-overo.c +++ b/arch/arm/mach-omap2/board-overo.c @@ -33,6 +33,8 @@ #include #include +#include + #include #include #include @@ -184,6 +186,16 @@ static inline void __init overo_init_smsc911x(void) static inline void __init overo_init_smsc911x(void) { return; } #endif +static struct spi_board_info overo_mcspi_board_info[] = { + { + .modalias = "spidev", + .max_speed_hz = 1200, // 12 MHz + .bus_num= 1, + .chip_select= 0, + .mode = SPI_MODE_1, + }, +}; + static struct mtd_partition overo_nand_partitions[] = { { .name = "xloader", @@ -424,7 +436,10 @@ static void __init overo_init(void) usb_ehci_init(&ehci_pdata); overo_ads7846_init(); overo_init_smsc911x(); - +#if 0 + spi_register_board_info(overo_mcspi_board_info, + ARRAY_SIZE(overo_mcspi_board_info)); +#endif /* Ensure SDRC pins are mux'd for self-refresh */ omap_mux_init_signal("sdrc_cke0", OMAP_PIN_OUTPUT); omap_mux_init_signal("sdrc_cke1", OMAP_PIN_OUTPUT);
Re: Enabling spidev in MCSPI1
> I'm trying to enable spidev on mcspi1, but when I do, the kernel while > booting after the kernel is uncompressed. No useful messages are > displayed. This is with a current git. > > I've attached the diff I use to add the spi driver to the board file. > (OVero + Summit). > > With the #if 0 inplace the kernel boots, enable that code and it fails. > > +#if 0 > + spi_register_board_info(overo_mcspi_board_info, > + ARRAY_SIZE(overo_mcspi_board_info)); > +#endif > > Does anyone see anything obviously wrong with what I am doing? > Is SPI1 also used for touchscreen on your board, if so it might be conflicting -- To unsubscribe from this list: send the line "unsubscribe linux-omap" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
Re: Enabling spidev in MCSPI1
Hi Philip, On Wed, 13 Jan 2010, Philip Balister wrote: > I'm trying to enable spidev on mcspi1, but when I do, the kernel while booting > after the kernel is uncompressed. No useful messages are displayed. This is > with a current git. > > I've attached the diff I use to add the spi driver to the board file. (OVero + > Summit). Maybe try enabling early printk support if you haven't already? http://www.mail-archive.com/linux-omap@vger.kernel.org/msg21017.html - Paul -- To unsubscribe from this list: send the line "unsubscribe linux-omap" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
Re: Enabling spidev in MCSPI1
On 01/13/2010 03:36 PM, Paul Walmsley wrote: Hi Philip, On Wed, 13 Jan 2010, Philip Balister wrote: I'm trying to enable spidev on mcspi1, but when I do, the kernel while booting after the kernel is uncompressed. No useful messages are displayed. This is with a current git. I've attached the diff I use to add the spi driver to the board file. (OVero + Summit). Maybe try enabling early printk support if you haven't already? http://www.mail-archive.com/linux-omap@vger.kernel.org/msg21017.html I think the early printk stuff was stopping me seeing the message Unfortunately, I found the conflicting driver, the 7846 touchscreen driver, and disabled it, so the kernel boots again. (Before I could boot with debugging messages enabled) I suspect the kernel should not crash if two drivers try to claim the spi device. If someone is interested, I can reanable the bad configuration and try to collect better data. Philip -- To unsubscribe from this list: send the line "unsubscribe linux-omap" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html