linux-arm-kernel.lists.infradead.org archive mirror
 help / color / mirror / Atom feed
From: eric@eukrea.com (Eric Bénard)
To: linux-arm-kernel@lists.infradead.org
Subject: [PATCH 14/19] mbimxsd35: add spi controler and spidev support
Date: Tue, 13 Dec 2011 07:31:46 +0100	[thread overview]
Message-ID: <1323757911-25217-14-git-send-email-eric@eukrea.com> (raw)
In-Reply-To: <1323757911-25217-1-git-send-email-eric@eukrea.com>

Signed-off-by: Eric B?nard <eric@eukrea.com>
Cc: Sascha Hauer <kernel@pengutronix.de>
---
 arch/arm/mach-imx/Kconfig                      |    1 +
 arch/arm/mach-imx/eukrea_mbimxsd35-baseboard.c |   39 ++++++++++++++++++++++++
 2 files changed, 40 insertions(+), 0 deletions(-)

diff --git a/arch/arm/mach-imx/Kconfig b/arch/arm/mach-imx/Kconfig
index 3000583..a32f82d 100644
--- a/arch/arm/mach-imx/Kconfig
+++ b/arch/arm/mach-imx/Kconfig
@@ -570,6 +570,7 @@ config MACH_EUKREA_MBIMXSD35_BASEBOARD
 	select IMX_HAVE_PLATFORM_GPIO_KEYS
 	select IMX_HAVE_PLATFORM_IMX_SSI
 	select IMX_HAVE_PLATFORM_IPU_CORE
+	select IMX_HAVE_PLATFORM_SPI_IMX
 	select LEDS_GPIO_REGISTER
 	help
 	  This adds board specific devices that can be found on Eukrea's
diff --git a/arch/arm/mach-imx/eukrea_mbimxsd35-baseboard.c b/arch/arm/mach-imx/eukrea_mbimxsd35-baseboard.c
index 0f0af02..b6a32cf 100644
--- a/arch/arm/mach-imx/eukrea_mbimxsd35-baseboard.c
+++ b/arch/arm/mach-imx/eukrea_mbimxsd35-baseboard.c
@@ -27,6 +27,7 @@
 #include <linux/leds.h>
 #include <linux/platform_device.h>
 #include <linux/input.h>
+#include <linux/spi/spi.h>
 #include <video/platform_lcd.h>
 #include <linux/i2c.h>
 
@@ -159,12 +160,22 @@ static iomux_v3_cfg_t eukrea_mbimxsd_pads[] = {
 	MX35_PAD_SD1_DATA3__ESDHC1_DAT3,
 	/* SD1 CD */
 	MX35_PAD_LD18__GPIO3_24,
+	/* SPI */
+	MX35_PAD_CSPI1_MOSI__CSPI1_MOSI,
+	MX35_PAD_CSPI1_MISO__CSPI1_MISO,
+	MX35_PAD_CSPI1_SS0__GPIO1_18,
+	MX35_PAD_CSPI1_SS1__GPIO1_19,
+	MX35_PAD_CSPI1_SCLK__CSPI1_SCLK,
+	MX35_PAD_CSPI1_SPI_RDY__GPIO3_5,
 };
 
 #define GPIO_LED1	IMX_GPIO_NR(3, 29)
 #define GPIO_SWITCH1	IMX_GPIO_NR(3, 25)
 #define GPIO_LCDPWR	IMX_GPIO_NR(1, 4)
 #define GPIO_SD1CD	IMX_GPIO_NR(3, 24)
+#define	GPIO_SPI1_SS0	IMX_GPIO_NR(1, 18)
+#define	GPIO_SPI1_SS1	IMX_GPIO_NR(1, 19)
+#define	GPIO_SPI1_IRQ	IMX_GPIO_NR(3, 5)
 
 static void eukrea_mbimxsd_lcd_power_set(struct plat_lcd_data *pd,
 				   unsigned int power)
@@ -240,6 +251,30 @@ static struct esdhc_platform_data sd1_pdata = {
 	.wp_type = ESDHC_WP_NONE,
 };
 
+static struct spi_board_info eukrea_mbimxsd35_spi_board_info[] __initdata = {
+	{
+		.modalias = "spidev",
+		.max_speed_hz = 20000000,
+		.bus_num = 0,
+		.chip_select = 0,
+		.mode = SPI_MODE_0,
+	},
+	{
+		.modalias = "spidev",
+		.max_speed_hz = 20000000,
+		.bus_num = 0,
+		.chip_select = 1,
+		.mode = SPI_MODE_0,
+	},
+};
+
+static int eukrea_mbimxsd35_spi_cs[] = {GPIO_SPI1_SS0, GPIO_SPI1_SS1};
+
+static const struct spi_imx_master eukrea_mbimxsd35_spi0_data __initconst = {
+	.chipselect     = eukrea_mbimxsd35_spi_cs,
+	.num_chipselect = ARRAY_SIZE(eukrea_mbimxsd35_spi_cs),
+};
+
 /*
  * system init for baseboard usage. Will be called by cpuimx35 init.
  *
@@ -291,6 +326,10 @@ void __init eukrea_mbimxsd35_baseboard_init(void)
 	i2c_register_board_info(0, eukrea_mbimxsd_i2c_devices,
 				ARRAY_SIZE(eukrea_mbimxsd_i2c_devices));
 
+	imx35_add_spi_imx0(&eukrea_mbimxsd35_spi0_data);
+	spi_register_board_info(eukrea_mbimxsd35_spi_board_info,
+		ARRAY_SIZE(eukrea_mbimxsd35_spi_board_info));
+
 	platform_add_devices(platform_devices, ARRAY_SIZE(platform_devices));
 	gpio_led_register_device(-1, &eukrea_mbimxsd_led_info);
 	imx_add_gpio_keys(&eukrea_mbimxsd_button_data);
-- 
1.7.6.4

  parent reply	other threads:[~2011-12-13  6:31 UTC|newest]

Thread overview: 42+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-12-13  6:31 [PATCH 01/19] mxc_udc: add workaround for ENGcm09152 for i.MX25 Eric Bénard
2011-12-13  6:31 ` [PATCH 02/19] eukrea_cpuimx25: enable workaround ENGcm09152 Eric Bénard
2011-12-13  6:31 ` [PATCH 03/19] cpuimx25sd: fix Kconfig Eric Bénard
2011-12-13 10:16   ` Wolfram Sang
2011-12-13  6:31 ` [PATCH 04/19] mbimxsd25: add spi controler and spidev support Eric Bénard
2011-12-13 12:39   ` Fabio Estevam
2011-12-13  6:31 ` [PATCH 05/19] cpuimx25: add watchdog support Eric Bénard
2011-12-13  6:31 ` [PATCH 06/19] mx27vis-aic32x4: only register when running on the right machine Eric Bénard
2011-12-13  6:40   ` Mark Brown
2011-12-13  6:31 ` [PATCH 07/19] imx_v4_v5_defconfig: update default configuration Eric Bénard
2011-12-13  6:31 ` [PATCH 08/19] dma: MX3_IPU fix depends Eric Bénard
2011-12-13 10:53   ` Sergei Shtylyov
2011-12-13 13:17     ` Eric Bénard
2011-12-13 12:48   ` Fabio Estevam
2011-12-13 14:12     ` [PATCH v2 " Eric Bénard
2011-12-23 15:45       ` Vinod Koul
2011-12-23 16:04         ` Eric Bénard
2011-12-23 16:14           ` Vinod Koul
2011-12-13  6:31 ` [PATCH 09/19] clock-imx35: fix reboot in internal boot mode Eric Bénard
2011-12-13 10:00   ` [PATCH 09/19] clock-imx35: fix reboot in internal boot modeg Sascha Hauer
2011-12-13 13:47     ` Eric Bénard
2011-12-13 14:13     ` [PATCH v2 09/19] clock-imx35: fix reboot in internal boot mode Eric Bénard
2011-12-13 10:52   ` [PATCH " Sergei Shtylyov
2011-12-13 13:41     ` Eric Bénard
2011-12-13  6:31 ` [PATCH 10/19] wm1133-ev1: only register when running on the right machine Eric Bénard
2011-12-13  6:31 ` [PATCH 11/19] cpuimx35sd: fix Kconfig Eric Bénard
2011-12-13  6:31 ` [PATCH 12/19] cpuimx35: fix touchscreen support Eric Bénard
2011-12-13  6:31 ` [PATCH 13/19] enable uncompress log on cpuimx35sd Eric Bénard
2011-12-13  6:31 ` Eric Bénard [this message]
2011-12-13  6:31 ` [PATCH 15/19] mx3_defconfig: update default configuration Eric Bénard
2011-12-13  6:31 ` [PATCH 16/19] eukrea-cpuimx51: remove board Eric Bénard
2011-12-13 10:05   ` Sascha Hauer
2011-12-13 10:13     ` Eric Bénard
2011-12-15  3:58       ` Amit Kucheria
2011-12-15  6:55         ` Eric Bénard
2011-12-13  6:31 ` [PATCH 17/19] cpuimx51sd: add watchdog support Eric Bénard
2011-12-13  6:31 ` [PATCH 18/19] mbimx51sd: add audio codec support Eric Bénard
2011-12-13  6:31 ` [PATCH 19/19] eukrea-cpuimx51sd: support rev2 PCB Eric Bénard
2011-12-13 10:17 ` [PATCH 01/19] mxc_udc: add workaround for ENGcm09152 for i.MX25 Sascha Hauer
2011-12-13 10:18 ` Wolfram Sang
2011-12-13 14:09   ` [PATCH v2 " Eric Bénard
2011-12-13 14:18     ` Felipe Balbi

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1323757911-25217-14-git-send-email-eric@eukrea.com \
    --to=eric@eukrea.com \
    --cc=linux-arm-kernel@lists.infradead.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).