RE: [PATCH 2/2] McSPI Slave and DMA,FIFO support

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



> -----Original Message-----
> From: linux-omap-owner@xxxxxxxxxxxxxxx 
> [mailto:linux-omap-owner@xxxxxxxxxxxxxxx] On Behalf Of Hemanth V
> Sent: Wednesday, May 20, 2009 11:27 AM
> To: linux-omap@xxxxxxxxxxxxxxx
> Subject: [PATCH 2/2] McSPI Slave and DMA,FIFO support
> 
> This patch adds MUX changes for SPI2 and also adds an
> option for test driver
> 
> Signed-off-by: Hemanth V <hemanthv@xxxxxx>
> ---
>  arch/arm/mach-omap2/board-3430sdp.c   |   26 ++++++++++++++++++++++++++
>  arch/arm/mach-omap2/mux.c             |   11 +++++++++++
>  arch/arm/plat-omap/include/mach/mux.h |    7 +++++++
>  3 files changed, 44 insertions(+)
> 
> Index: linux-omap-2.6/arch/arm/mach-omap2/board-3430sdp.c
> ===================================================================
> --- linux-omap-2.6.orig/arch/arm/mach-omap2/board-3430sdp.c	2009-05-20 11:02:34.000000000 +0530
> +++ linux-omap-2.6/arch/arm/mach-omap2/board-3430sdp.c	2009-05-20 11:05:22.000000000 +0530
> @@ -228,6 +228,13 @@
>  	.single_channel	= 1,	/* 0: slave, 1: master */
>  };
> 
> +#ifdef CONFIG_SPI_DEBUG
> +static struct omap2_mcspi_device_config dummy_mcspi_config = {
> +	.turbo_mode	= 0,
> +	.single_channel	= 1,  /* 0: slave, 1: master */
> +};
> +#endif
> +
>  static struct spi_board_info sdp3430_spi_board_info[] __initdata = {
>  	[0] = {
>  		/*
> @@ -242,6 +249,18 @@
>  		.irq			= 0,
>  		.platform_data		= &tsc2046_config,
>  	},
> +#ifdef CONFIG_SPI_DEBUG
> +	[1] = {
> +		/* SPI test driver attached to SPI2 controller by
> +		 * default
> +		 */
> +		.modalias		= "spitst",
> +		.bus_num		= 2,
> +		.chip_select		= 0,
> +		.max_speed_hz		= 1500000,
> +		.controller_data	= &dummy_mcspi_config,
> +	},
> +#endif
>  };
> 
>  static struct platform_device sdp3430_lcd_device = {
> @@ -666,6 +685,13 @@
> 
>  static void __init omap_3430sdp_init(void)
>  {
> +
> +	/* SPI2 Pin MUX */
> +	omap_cfg_reg(AA3_3430_McSPI2_CLK);
> +	omap_cfg_reg(Y2_3430_McSPI2_SIMO);
> +	omap_cfg_reg(Y3_3430_McSPI2_SOMI);
> +	omap_cfg_reg(Y4_3430_McSPI2_CS0);
> +

This will still change the padconf for this port unconditionally.

How do we handle the case where the same platform (SDP in this case)
could have different configurations McSPI2 vs USBHOST2, etc? Is there
a clean way, or do we have no option but to use a CONFIG option?

- Anand


>  	omap3430_i2c_init();
>  	platform_add_devices(sdp3430_devices, ARRAY_SIZE(sdp3430_devices));
>  	omap_board_config = sdp3430_config;
> Index: linux-omap-2.6/arch/arm/mach-omap2/mux.c
> ===================================================================
> --- linux-omap-2.6.orig/arch/arm/mach-omap2/mux.c	2009-05-20 11:02:34.000000000 +0530
> +++ linux-omap-2.6/arch/arm/mach-omap2/mux.c	2009-05-20 11:05:22.000000000 +0530
> @@ -486,6 +486,17 @@
>  		OMAP34XX_MUX_MODE4 | OMAP34XX_PIN_OUTPUT)
>  MUX_CFG_34XX("J25_34XX_GPIO170", 0x1c6,
>  		OMAP34XX_MUX_MODE4 | OMAP34XX_PIN_INPUT)
> +
> +/* McSPI */
> +MUX_CFG_34XX("AA3_3430_McSPI2_CLK", 0x1d6,
> +	OMAP34XX_MUX_MODE0 | OMAP34XX_PIN_INPUT)
> +MUX_CFG_34XX("Y2_3430_McSPI2_SIMO", 0x1d8,
> +	OMAP34XX_MUX_MODE0 | OMAP34XX_PIN_INPUT)
> +MUX_CFG_34XX("Y3_3430_McSPI2_SOMI", 0x1da,
> +	OMAP34XX_MUX_MODE0 | OMAP34XX_PIN_INPUT)
> +MUX_CFG_34XX("Y4_3430_McSPI2_CS0", 0x1dc,
> +	OMAP34XX_MUX_MODE0 | OMAP34XX_PIN_INPUT_PULLDOWN)
> +
>  };
> 
>  #define OMAP34XX_PINS_SZ	ARRAY_SIZE(omap34xx_pins)
> Index: linux-omap-2.6/arch/arm/plat-omap/include/mach/mux.h
> ===================================================================
> --- linux-omap-2.6.orig/arch/arm/plat-omap/include/mach/mux.h	2009-05-20 11:02:34.000000000 +0530
> +++ linux-omap-2.6/arch/arm/plat-omap/include/mach/mux.h	2009-05-20 11:05:22.000000000 +0530
> @@ -853,6 +853,13 @@
>  	AE5_34XX_GPIO143,
>  	H19_34XX_GPIO164_OUT,
>  	J25_34XX_GPIO170,
> +
> +	/* McSPI */
> +	AA3_3430_McSPI2_CLK,
> +	Y2_3430_McSPI2_SIMO,
> +	Y3_3430_McSPI2_SOMI,
> +	Y4_3430_McSPI2_CS0,
> +
>  };
> 
>  struct omap_mux_cfg {
> 
> 
> --
> To unsubscribe from this list: send the line "unsubscribe 
> linux-omap" in
> the body of a message to majordomo@xxxxxxxxxxxxxxx
> More majordomo info at  http://vger.kernel.org/majordomo-info.html
> 
> --
To unsubscribe from this list: send the line "unsubscribe linux-omap" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Index of Archives]     [Linux Arm (vger)]     [ARM Kernel]     [ARM MSM]     [Linux Tegra]     [Linux WPAN Networking]     [Linux Wireless Networking]     [Maemo Users]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite Trails]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux