From: Tony Lindgren <tony@atomide.com>
To: Grazvydas Ignotas <notasas@gmail.com>
Cc: linux-arm-kernel@lists.infradead.org, linux-omap@vger.kernel.org,
Cory Maccarrone <darkstar6262@gmail.com>
Subject: Re: [PATCH 05/12] omap1: Add 7xx clocks and pin muxes for SPI
Date: Thu, 7 Jan 2010 11:15:03 -0800 [thread overview]
Message-ID: <20100107191502.GH11511@atomide.com> (raw)
In-Reply-To: <6ed0b2681001070146x4dbf52d9h406d128ccea826cf@mail.gmail.com>
[-- Attachment #1: Type: text/plain, Size: 1242 bytes --]
* Grazvydas Ignotas <notasas@gmail.com> [100107 01:44]:
> <snip>
>
> > --- a/arch/arm/mach-omap1/devices.c
> > +++ b/arch/arm/mach-omap1/devices.c
> > @@ -196,6 +198,38 @@ void __init omap1_init_mmc(struct omap_mmc_platform_data **mmc_data,
> >
> > /*-------------------------------------------------------------------------*/
> >
> > +/* OMAP7xx SPI support */
> > +#if defined(CONFIG_SPI_OMAP_100K) || defined(CONFIG_SPI_OMAP_100K_MODULE)
> > +
> > +struct platform_device omap_spi1 = {
> > + .name = "omap1_spi100k",
> > + .id = 1,
> > +};
> > +
> > +struct platform_device omap_spi2 = {
> > + .name = "omap1_spi100k",
> > + .id = 2,
> > +};
> > +
> > +static void omap_init_spi100k(void)
> > +{
> > + omap_spi1.dev.platform_data = ioremap(OMAP7XX_SPI1_BASE, 0x7ff);
> > + if (omap_spi1.dev.platform_data)
> > + platform_device_register(&omap_spi1);
> > +
> > + omap_spi2.dev.platform_data = ioremap(OMAP7XX_SPI2_BASE, 0x7ff);
> > + ifi (omap_spi2.dev.platform_data)
>
> a typo here?
Thanks, for pointing that out, my fault for editing the patch.. Fixed below
and now compile tested with omap1_spi100k enabled :)
Regards,
Tony
[-- Attachment #2: omap1-add-omap-7xx-pin-muxes-for-spi.patch --]
[-- Type: text/x-diff, Size: 4904 bytes --]
>From bb7c47c92b3e0d3a084d175163f71316ff1aa34e Mon Sep 17 00:00:00 2001
From: Cory Maccarrone <darkstar6262@gmail.com>
Date: Wed, 6 Jan 2010 17:29:10 -0800
Subject: [PATCH] omap1: Add 7xx clocks and pin muxes for SPI
Commit 35c9049b27040d09461bc90928ad770be7ddf661 added
drivers/spi/omap_spi_100k.c.
This patch add the related clocks and pin muxing
entries to make the driver work on omap7xx platforms.
Signed-off-by: Cory Maccarrone <darkstar6262@gmail.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
diff --git a/arch/arm/mach-omap1/clock_data.c b/arch/arm/mach-omap1/clock_data.c
index 8a85bbb..65e7b5b 100644
--- a/arch/arm/mach-omap1/clock_data.c
+++ b/arch/arm/mach-omap1/clock_data.c
@@ -658,6 +658,10 @@ static struct omap_clk omap_clks[] = {
CLK("i2c_omap.1", "fck", &i2c_fck, CK_16XX | CK_1510 | CK_310 | CK_7XX),
CLK("i2c_omap.1", "ick", &i2c_ick, CK_16XX),
CLK("i2c_omap.1", "ick", &dummy_ck, CK_1510 | CK_310 | CK_7XX),
+ CLK("omap1_spi100k.1", "fck", &dummy_ck, CK_7XX),
+ CLK("omap1_spi100k.1", "ick", &dummy_ck, CK_7XX),
+ CLK("omap1_spi100k.2", "fck", &dummy_ck, CK_7XX),
+ CLK("omap1_spi100k.2", "ick", &dummy_ck, CK_7XX),
CLK("omap_uwire", "fck", &armxor_ck.clk, CK_16XX | CK_1510 | CK_310),
CLK("omap-mcbsp.1", "ick", &dspper_ck, CK_16XX),
CLK("omap-mcbsp.1", "ick", &dummy_ck, CK_1510 | CK_310),
diff --git a/arch/arm/mach-omap1/devices.c b/arch/arm/mach-omap1/devices.c
index 23ded2d..a2d07aa 100644
--- a/arch/arm/mach-omap1/devices.c
+++ b/arch/arm/mach-omap1/devices.c
@@ -14,6 +14,7 @@
#include <linux/init.h>
#include <linux/platform_device.h>
#include <linux/io.h>
+#include <linux/spi/spi.h>
#include <mach/hardware.h>
#include <asm/mach/map.h>
@@ -23,6 +24,7 @@
#include <plat/mux.h>
#include <mach/gpio.h>
#include <plat/mmc.h>
+#include <plat/omap7xx.h>
/*-------------------------------------------------------------------------*/
@@ -196,6 +198,38 @@ void __init omap1_init_mmc(struct omap_mmc_platform_data **mmc_data,
/*-------------------------------------------------------------------------*/
+/* OMAP7xx SPI support */
+#if defined(CONFIG_SPI_OMAP_100K) || defined(CONFIG_SPI_OMAP_100K_MODULE)
+
+struct platform_device omap_spi1 = {
+ .name = "omap1_spi100k",
+ .id = 1,
+};
+
+struct platform_device omap_spi2 = {
+ .name = "omap1_spi100k",
+ .id = 2,
+};
+
+static void omap_init_spi100k(void)
+{
+ omap_spi1.dev.platform_data = ioremap(OMAP7XX_SPI1_BASE, 0x7ff);
+ if (omap_spi1.dev.platform_data)
+ platform_device_register(&omap_spi1);
+
+ omap_spi2.dev.platform_data = ioremap(OMAP7XX_SPI2_BASE, 0x7ff);
+ if (omap_spi2.dev.platform_data)
+ platform_device_register(&omap_spi2);
+}
+
+#else
+static inline void omap_init_spi100k(void)
+{
+}
+#endif
+
+/*-------------------------------------------------------------------------*/
+
#if defined(CONFIG_OMAP_STI)
#define OMAP1_STI_BASE 0xfffea000
@@ -263,6 +297,7 @@ static int __init omap1_init_devices(void)
omap_init_mbox();
omap_init_rtc();
+ omap_init_spi100k();
omap_init_sti();
return 0;
diff --git a/arch/arm/mach-omap1/mux.c b/arch/arm/mach-omap1/mux.c
index 07212cc..8434137 100644
--- a/arch/arm/mach-omap1/mux.c
+++ b/arch/arm/mach-omap1/mux.c
@@ -62,6 +62,14 @@ MUX_CFG_7XX("MMC_7XX_DAT0", 2, 17, 0, 16, 1, 0)
/* I2C interface */
MUX_CFG_7XX("I2C_7XX_SCL", 5, 1, 0, 0, 1, 0)
MUX_CFG_7XX("I2C_7XX_SDA", 5, 5, 0, 0, 1, 0)
+
+/* SPI pins */
+MUX_CFG_7XX("SPI_7XX_1", 6, 5, 4, 4, 1, 0)
+MUX_CFG_7XX("SPI_7XX_2", 6, 9, 4, 8, 1, 0)
+MUX_CFG_7XX("SPI_7XX_3", 6, 13, 4, 12, 1, 0)
+MUX_CFG_7XX("SPI_7XX_4", 6, 17, 4, 16, 1, 0)
+MUX_CFG_7XX("SPI_7XX_5", 8, 25, 0, 24, 0, 0)
+MUX_CFG_7XX("SPI_7XX_6", 9, 5, 0, 4, 0, 0)
};
#define OMAP7XX_PINS_SZ ARRAY_SIZE(omap7xx_pins)
#else
diff --git a/arch/arm/plat-omap/include/plat/mux.h b/arch/arm/plat-omap/include/plat/mux.h
index 8f069cc..692c90e 100644
--- a/arch/arm/plat-omap/include/plat/mux.h
+++ b/arch/arm/plat-omap/include/plat/mux.h
@@ -183,6 +183,14 @@ enum omap7xx_index {
/* I2C */
I2C_7XX_SCL,
I2C_7XX_SDA,
+
+ /* SPI */
+ SPI_7XX_1,
+ SPI_7XX_2,
+ SPI_7XX_3,
+ SPI_7XX_4,
+ SPI_7XX_5,
+ SPI_7XX_6,
};
enum omap1xxx_index {
diff --git a/arch/arm/plat-omap/include/plat/omap7xx.h b/arch/arm/plat-omap/include/plat/omap7xx.h
index 53f5241..48e4757 100644
--- a/arch/arm/plat-omap/include/plat/omap7xx.h
+++ b/arch/arm/plat-omap/include/plat/omap7xx.h
@@ -46,6 +46,9 @@
#define OMAP7XX_DSPREG_SIZE SZ_128K
#define OMAP7XX_DSPREG_START 0xE1000000
+#define OMAP7XX_SPI1_BASE 0xfffc0800
+#define OMAP7XX_SPI2_BASE 0xfffc1000
+
/*
* ----------------------------------------------------------------------------
* OMAP7XX specific configuration registers
next prev parent reply other threads:[~2010-01-07 19:15 UTC|newest]
Thread overview: 18+ messages / expand[flat|nested] mbox.gz Atom feed top
2010-01-07 0:18 [PATCH 00/12] Omap fixes for 2.6.33-rc3 Tony Lindgren
2010-01-07 0:18 ` [PATCH 01/12] omap: McBSP: Fix possible port lockout Tony Lindgren
2010-01-08 17:14 ` Sergei Shtylyov
2010-01-10 19:55 ` Janusz Krzysztofik
2010-01-07 0:18 ` [PATCH 02/12] omap: gpio: Simultaneously requested rising and falling edge Tony Lindgren
2010-01-07 0:19 ` [PATCH 03/12] omap: &&/|| confusion in iommu_put() Tony Lindgren
2010-01-07 0:19 ` [PATCH 04/12] omap: Remove uninitialized warning for gpio.c Tony Lindgren
2010-01-07 0:19 ` [PATCH 05/12] omap1: Add 7xx clocks and pin muxes for SPI Tony Lindgren
2010-01-07 9:46 ` Grazvydas Ignotas
2010-01-07 19:15 ` Tony Lindgren [this message]
2010-01-09 18:02 ` Cory Maccarrone
2010-01-07 0:19 ` [PATCH 06/12] omap1: Fix compile for omap1_bl.c Tony Lindgren
2010-01-07 0:19 ` [PATCH 07/12] omap2/3: make serial_in_override() address the right uart port Tony Lindgren
2010-01-07 0:20 ` [PATCH 08/12] omap2/3: ZOOM: Correcting key mapping for few keys Tony Lindgren
2010-01-07 0:20 ` [PATCH 09/12] omap3: add missing parentheses Tony Lindgren
2010-01-07 0:20 ` [PATCH 10/12] " Tony Lindgren
2010-01-07 0:20 ` [PATCH 11/12] omap3: Fix booting if package is uninitialized Tony Lindgren
2010-01-07 0:20 ` [PATCH 12/12] omap3: EVM: Choose OMAP_PACKAGE_CBB Tony Lindgren
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=20100107191502.GH11511@atomide.com \
--to=tony@atomide.com \
--cc=darkstar6262@gmail.com \
--cc=linux-arm-kernel@lists.infradead.org \
--cc=linux-omap@vger.kernel.org \
--cc=notasas@gmail.com \
/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