Skip to contentSkip to conversation

Fix omap builds

PATCH In review Tony Lindgren 6 participants 32 messages Jan 7, 2009 – Jan 23, 2009

Subsystems (6)
lore
Share & tools
lore

Tony Lindgren

author maintainer
#0 lore raw

cover Fix omap builds

Hi,

Here are two patches to fix omap builds.

Regards,

Tony

author maintainer
#1 lore raw

Re: [PATCH 1/2] ARM: OMAP: Fix missing includes

Include irqs.h or cpu.h directly as needed to fix
omap builds.

arch/arm/mach-omap1/mcbsp.c +1 -0
index 7de7c69..2fcdad1 100644
@@ -17,6 +17,7 @@
 #include <linux/io.h>
 #include <linux/platform_device.h>
 
+#include <mach/irqs.h>
 #include <mach/dma.h>
 #include <mach/mux.h>
 #include <mach/cpu.h>
arch/arm/mach-omap2/mcbsp.c +1 -0
index cae3ebe..6549656 100644
@@ -17,6 +17,7 @@
 #include <linux/io.h>
 #include <linux/platform_device.h>
 
+#include <mach/irqs.h>
 #include <mach/dma.h>
 #include <mach/mux.h>
 #include <mach/cpu.h>
arch/arm/plat-omap/i2c.c +1 -0
index 89a6ab0..467531e 100644
@@ -26,6 +26,7 @@
 #include <linux/kernel.h>
 #include <linux/platform_device.h>
 #include <linux/i2c.h>
+#include <mach/irqs.h>
 #include <mach/mux.h>
 
 #define OMAP_I2C_SIZE		0x3f
drivers/mfd/twl4030-core.c +1 -0
index b59c385..18179ac 100644
@@ -38,6 +38,7 @@
 #include <linux/i2c.h>
 #include <linux/i2c/twl4030.h>
 
+#include <mach/cpu.h>
 
 /*
  * The TWL4030 "Triton 2" is one of a family of a multi-function "Power
author maintainer
#2 lore raw

PATCH 2/2 ARM: OMAP: Fix gpio by switching to generic gpio calls

From: Jarkko Nikula <[email protected]>
Date: Wed, 7 Jan 2009 12:54:34 +0200
Subject: [PATCH] ARM: OMAP: Fix gpio by switching to generic gpio calls

Fix compile by removing remaining omap specific gpio calls. Based on earlier patches by Jarkko Nikula.

arch/arm/mach-omap1/board-sx1.c +3 -3
index 8171fe0..09a2422 100644
@@ -423,9 +423,9 @@ static void __init omap_sx1_init(void)
 
 	/* turn on USB power */
 	/* sx1_setusbpower(1); cant do it here because i2c is not ready */
-	omap_request_gpio(1);	/* A_IRDA_OFF */
-	omap_request_gpio(11);	/* A_SWITCH */
-	omap_request_gpio(15);	/* A_USB_ON */
+	gpio_request(1, "A_IRDA_OFF");
+	gpio_request(11, "A_SWITCH");
+	gpio_request(15, "A_USB_ON");
 	gpio_direction_output(1, 1);	/*A_IRDA_OFF = 1 */
 	gpio_direction_output(11, 0);	/*A_SWITCH = 0 */
 	gpio_direction_output(15, 0);	/*A_USB_ON = 0 */
arch/arm/mach-omap2/board-apollon.c +23 -26

91 lines not on this page · raw message

arch/arm/mach-omap2/board-ldp.c +1 -1
index aa69727..f6a1345 100644
@@ -88,7 +88,7 @@ static inline void __init ldp_init_smc911x(void)
 
 	ldp_smc911x_resources[1].start = OMAP_GPIO_IRQ(eth_gpio);
 
-	if (omap_request_gpio(eth_gpio) < 0) {
+	if (gpio_request(eth_gpio, "smc911x irq") < 0) {
 		printk(KERN_ERR "Failed to request GPIO%d for smc911x IRQ\n",
 				eth_gpio);
 		return;
arch/arm/plat-omap/include/mach/gpio.h +0 -10
index 04e68e8..8d9dfe3 100644
@@ -87,16 +87,6 @@ extern void omap_set_gpio_debounce_time(int gpio, int enable);
 #include <linux/errno.h>
 #include <asm-generic/gpio.h>
 
-static inline int omap_request_gpio(int gpio)
-{
-	return gpio_request(gpio, "FIXME");
-}
-
-static inline void omap_free_gpio(int gpio)
-{
-	gpio_free(gpio);
-}
-
 static inline int gpio_get_value(unsigned gpio)
 {
 	return __gpio_get_value(gpio);
drivers/mtd/onenand/omap2.c +3 -3
index 96ecc17..77a4f14 100644
@@ -629,7 +629,7 @@ static int __devinit omap2_onenand_probe(struct platform_device *pdev)
 	}
 
 	if (c->gpio_irq) {
-		if ((r = omap_request_gpio(c->gpio_irq)) < 0) {
+		if ((r = gpio_request(c->gpio_irq, "OneNAND irq")) < 0) {
 			dev_err(&pdev->dev,  "Failed to request GPIO%d for "
 				"OneNAND\n", c->gpio_irq);
 			goto err_iounmap;
@@ -726,7 +726,7 @@ err_release_dma:
 		free_irq(gpio_to_irq(c->gpio_irq), c);
 err_release_gpio:
 	if (c->gpio_irq)
-		omap_free_gpio(c->gpio_irq);
+		gpio_free(c->gpio_irq);
 err_iounmap:
 	iounmap(c->onenand.base);
 err_release_mem_region:
@@ -761,7 +761,7 @@ static int __devexit omap2_onenand_remove(struct platform_device *pdev)
 	platform_set_drvdata(pdev, NULL);
 	if (c->gpio_irq) {
 		free_irq(gpio_to_irq(c->gpio_irq), c);
-		omap_free_gpio(c->gpio_irq);
+		gpio_free(c->gpio_irq);
 	}
 	iounmap(c->onenand.base);
 	release_mem_region(c->phys_base, ONENAND_IO_SIZE);
author maintainer
#31 lore raw

git pull request for omap compile fixes, mailbox and hsmmc for current merge window

In reply to Tony Lindgren
Quoted 3 lines · Tony Lindgren

Hi,

Here are two patches to fix omap builds.

Russell, here's the pull request for few misc omap patches for the current merge window:

- These two build fixes

- The hsmmc driver posted earlier and acked by Pierre [1]

- Mailbox updates for omap3 posted earlier by Hiroshi [2]

Regards,

Tony

[1] http://lists.arm.linux.org.uk/lurker/thread/20081207.215139.ba39f495.en.html#20081207.215139.ba39f495
[2] http://lists.arm.linux.org.uk/lurker/thread/20090107.111220.eb4aadfb.en.html#20090107.111220.eb4aadfb

The following changes since commit ede6f5aea054d3fb67c78857f7abdee602302043:
Linus Torvalds (1):
Fix up 64-bit byte swaps for most 32-bit architectures

are available in the git repository at:

git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap-2.6.git omap-misc-for-rmk

Hiroshi DOYU (10):
omap mailbox: cleanup omap2 register definition with macro omap mailbox: add initial omap3 support
omap mailbox: print hardware revision at startup omap mailbox: fix empty struct device for omap_mbox omap mailbox: fix empty struct device for omap1 omap mailbox: fix empty struct device for omap2 omap mailbox: add save_/restore_ctx() for PM
omap mailbox: move mailbox.h into mailbox.c
omap mailbox: convert sequence bit checking to module paramter omap mailbox: remove unnecessary header file inclusion

Jarkko Nikula (1):
ARM: OMAP: Fix gpio by switching to generic gpio calls

Madhusudhan Chikkature (1):
omap mmc: Add new omap hsmmc controller for 2430 and 34xx, v3

Tony Lindgren (1):
ARM: OMAP: Fix missing includes

 arch/arm/mach-omap1/board-sx1.c            |    6 +-
 arch/arm/mach-omap1/devices.c              |    2 +-
 arch/arm/mach-omap1/mailbox.c              |   31 +-
 arch/arm/mach-omap1/mcbsp.c                |    1 +
 arch/arm/mach-omap2/board-apollon.c        |   49 +-
 arch/arm/mach-omap2/board-ldp.c            |    2 +-
 arch/arm/mach-omap2/devices.c              |   38 +-
 arch/arm/mach-omap2/mailbox.c              |  195 +++--
 arch/arm/mach-omap2/mcbsp.c                |    1 +
 arch/arm/plat-omap/Kconfig                 |    8 +
 arch/arm/plat-omap/i2c.c                   |    1 +
 arch/arm/plat-omap/include/mach/gpio.h     |   10 -
 arch/arm/plat-omap/include/mach/mailbox.h  |   27 +-
 arch/arm/plat-omap/include/mach/omap34xx.h |    1 +
 arch/arm/plat-omap/mailbox.c               |  152 +++-
 arch/arm/plat-omap/mailbox.h               |  100 ---
 drivers/mfd/twl4030-core.c                 |    1 +
 drivers/mmc/host/Kconfig                   |   10 +
 drivers/mmc/host/Makefile                  |    1 +
 drivers/mmc/host/omap_hsmmc.c              | 1242 ++++++++++++++++++++++++++++
 drivers/mtd/onenand/omap2.c                |    6 +-
 21 files changed, 1598 insertions(+), 286 deletions(-)
 delete mode 100644 arch/arm/plat-omap/mailbox.h
 create mode 100644 drivers/mmc/host/omap_hsmmc.c
#3 lore raw

Re: [PATCH 2/2] ARM: OMAP: Fix gpio by switching to generic gpio calls

In reply to Tony Lindgren
Quoted 7 lines · On Wed, 7 Jan 2009 13:17:45 +0200 "ext Tony Lindgren" <[email protected]> wrote:

From: Jarkko Nikula <[email protected]>
Date: Wed, 7 Jan 2009 12:54:34 +0200
Subject: [PATCH] ARM: OMAP: Fix gpio by switching to generic gpio calls

Fix compile by removing remaining omap specific gpio calls. Based on earlier patches by Jarkko Nikula.

Thanks Tony!

drivers/mtd/onenand/omap2.c

Quoted 5 lines
drivers/mtd/onenand/omap2.c +0 -0
index 96ecc17..77a4f14 100644

I think this was already handed over to mtd list by Adrian?

Jarkko

author maintainer
#4 lore raw

Re: [PATCH 2/2] ARM: OMAP: Fix gpio by switching to generic gpio calls

Quoted 10 lines · Jarkko Nikula
Quoted 7 lines · On Wed, 7 Jan 2009 13:17:45 +0200 "ext Tony Lindgren" <[email protected]> wrote:

From: Jarkko Nikula <[email protected]>
Date: Wed, 7 Jan 2009 12:54:34 +0200
Subject: [PATCH] ARM: OMAP: Fix gpio by switching to generic gpio calls

Fix compile by removing remaining omap specific gpio calls. Based on earlier patches by Jarkko Nikula.

Quoted 8 lines

Thanks Tony!

drivers/mtd/onenand/omap2.c

Quoted 5 lines
drivers/mtd/onenand/omap2.c +0 -0
index 96ecc17..77a4f14 100644

I think this was already handed over to mtd list by Adrian?

Oops, sorry. Adrian, do you want me to drop the compile fix for onenand?

Regards,

Tony

#5 lore raw

Re: [PATCH 2/2] ARM: OMAP: Fix gpio by switching to generic gpio calls

Quoted 20 lines · Tony Lindgren
Quoted 10 lines · Jarkko Nikula
Quoted 7 lines · On Wed, 7 Jan 2009 13:17:45 +0200 "ext Tony Lindgren" <[email protected]> wrote:

From: Jarkko Nikula <[email protected]>
Date: Wed, 7 Jan 2009 12:54:34 +0200
Subject: [PATCH] ARM: OMAP: Fix gpio by switching to generic gpio calls

Fix compile by removing remaining omap specific gpio calls. Based on earlier patches by Jarkko Nikula.

Quoted 8 lines

Thanks Tony!

drivers/mtd/onenand/omap2.c

Quoted 5 lines
drivers/mtd/onenand/omap2.c +0 -0
index 96ecc17..77a4f14 100644

I think this was already handed over to mtd list by Adrian?

Quoted 6 lines

Oops, sorry. Adrian, do you want me to drop the compile fix for onenand?

Regards,

Tony

No, those changes have not been sent to mainline before. Please go ahead.

author maintainer
#6 lore raw

Re: [PATCH 2/2] ARM: OMAP: Fix gpio by switching to generic gpio calls

Quoted 23 lines · Adrian Hunter
Quoted 22 lines · Tony Lindgren
Quoted 10 lines · Jarkko Nikula
Quoted 7 lines · On Wed, 7 Jan 2009 13:17:45 +0200 "ext Tony Lindgren" <[email protected]> wrote:

From: Jarkko Nikula <[email protected]>
Date: Wed, 7 Jan 2009 12:54:34 +0200
Subject: [PATCH] ARM: OMAP: Fix gpio by switching to generic gpio calls

Fix compile by removing remaining omap specific gpio calls. Based on earlier patches by Jarkko Nikula.

Quoted 8 lines

Thanks Tony!

drivers/mtd/onenand/omap2.c

Quoted 5 lines
drivers/mtd/onenand/omap2.c +0 -0
index 96ecc17..77a4f14 100644

I think this was already handed over to mtd list by Adrian?

Oops, sorry. Adrian, do you want me to drop the compile fix for onenand?

Quoted 7 lines
Quoted 4 lines

Regards,

Tony

No, those changes have not been sent to mainline before. Please go ahead.

OK, thanks. Keeping the onenand change so the pull request is still valid.

Tony

#7 lore raw

Re: [PATCH 2/2] ARM: OMAP: Fix gpio by switching to generic gpio calls

In reply to Tony Lindgren

arch/arm/mach-omap2/board-apollon.c static void __init apollon_sw_init(void) · line 327

Quoted 4 lines · Tony Lindgren
arch/arm/mach-omap2/board-apollon.c +2 -2
-	set_irq_type(OMAP_GPIO_IRQ(SW_ENTER_GPIO16), IRQ_TYPE_EDGE_RISING);
-	if (request_irq(OMAP_GPIO_IRQ(SW_ENTER_GPIO16), &apollon_sw_interrupt,
+	set_irq_type(gpio_to_irq(SW_ENTER_GPIO16), IRQ_TYPE_EDGE_RISING);
+	if (request_irq(gpio_to_irq(SW_ENTER_GPIO16), &apollon_sw_interrupt,

NAK. I wonder how the f*** this got anywhere near the mainline kernel. No no no no no. set_irq_type + request_irq is utter crap and should be rejected whenever its seen. There's absolutely no need for it - request_irq is sufficient. Get rid of this set_irq_type usage from everywhere please.

author maintainer
#8 lore raw

Re: [PATCH 2/2] ARM: OMAP: Fix gpio by switching to generic gpio calls, v2

Quoted 11 lines · Russell King - ARM Linux

Review

Quoted 4 lines · Tony Lindgren
(quoted diff) +2 -2
-	set_irq_type(OMAP_GPIO_IRQ(SW_ENTER_GPIO16), IRQ_TYPE_EDGE_RISING);
-	if (request_irq(OMAP_GPIO_IRQ(SW_ENTER_GPIO16), &apollon_sw_interrupt,
+	set_irq_type(gpio_to_irq(SW_ENTER_GPIO16), IRQ_TYPE_EDGE_RISING);
+	if (request_irq(gpio_to_irq(SW_ENTER_GPIO16), &apollon_sw_interrupt,

NAK. I wonder how the f*** this got anywhere near the mainline kernel. No no no no no. set_irq_type + request_irq is utter crap and should be rejected whenever its seen. There's absolutely no need for it - request_irq is sufficient. Get rid of this set_irq_type usage from everywhere please.

Blind search and replace? :) I've removed the GPIO key code as there's already a patch to do that cleaner with gpio_keys.

Looks like there are still few places where gpio_request() and then set_irq_type() is called in the board-*.c files, and then the irq is passed to the driver which does request_irq().

Tony

Quoted 1 line

From 4afb512f6a37d9ca87fb3e8d2f423ce3eaf7e407 Mon Sep 17 00:00:00 2001

From: Jarkko Nikula <[email protected]>
Date: Wed, 7 Jan 2009 12:54:34 +0200
Subject: [PATCH] ARM: OMAP: Fix gpio by switching to generic gpio calls, v2

Fix compile by removing remaining omap specific gpio calls. Based on earlier patches by Jarkko Nikula.

Also remove old GPIO key code, there is already a patch to do this with gpio_keys.

arch/arm/mach-omap1/board-sx1.c +3 -3
index 8171fe0..09a2422 100644
@@ -423,9 +423,9 @@ static void __init omap_sx1_init(void)
 
 	/* turn on USB power */
 	/* sx1_setusbpower(1); cant do it here because i2c is not ready */
-	omap_request_gpio(1);	/* A_IRDA_OFF */
-	omap_request_gpio(11);	/* A_SWITCH */
-	omap_request_gpio(15);	/* A_USB_ON */
+	gpio_request(1, "A_IRDA_OFF");
+	gpio_request(11, "A_SWITCH");
+	gpio_request(15, "A_USB_ON");
 	gpio_direction_output(1, 1);	/*A_IRDA_OFF = 1 */
 	gpio_direction_output(11, 0);	/*A_SWITCH = 0 */
 	gpio_direction_output(15, 0);	/*A_USB_ON = 0 */
arch/arm/mach-omap2/board-apollon.c +6 -58

86 lines not on this page · raw message

arch/arm/mach-omap2/board-ldp.c +1 -1
index aa69727..f6a1345 100644
@@ -88,7 +88,7 @@ static inline void __init ldp_init_smc911x(void)
 
 	ldp_smc911x_resources[1].start = OMAP_GPIO_IRQ(eth_gpio);
 
-	if (omap_request_gpio(eth_gpio) < 0) {
+	if (gpio_request(eth_gpio, "smc911x irq") < 0) {
 		printk(KERN_ERR "Failed to request GPIO%d for smc911x IRQ\n",
 				eth_gpio);
 		return;
arch/arm/plat-omap/include/mach/gpio.h +0 -10
index 04e68e8..8d9dfe3 100644
@@ -87,16 +87,6 @@ extern void omap_set_gpio_debounce_time(int gpio, int enable);
 #include <linux/errno.h>
 #include <asm-generic/gpio.h>
 
-static inline int omap_request_gpio(int gpio)
-{
-	return gpio_request(gpio, "FIXME");
-}
-
-static inline void omap_free_gpio(int gpio)
-{
-	gpio_free(gpio);
-}
-
 static inline int gpio_get_value(unsigned gpio)
 {
 	return __gpio_get_value(gpio);
drivers/mtd/onenand/omap2.c +3 -3
index 96ecc17..77a4f14 100644
@@ -629,7 +629,7 @@ static int __devinit omap2_onenand_probe(struct platform_device *pdev)
 	}
 
 	if (c->gpio_irq) {
-		if ((r = omap_request_gpio(c->gpio_irq)) < 0) {
+		if ((r = gpio_request(c->gpio_irq, "OneNAND irq")) < 0) {
 			dev_err(&pdev->dev,  "Failed to request GPIO%d for "
 				"OneNAND\n", c->gpio_irq);
 			goto err_iounmap;
@@ -726,7 +726,7 @@ err_release_dma:
 		free_irq(gpio_to_irq(c->gpio_irq), c);
 err_release_gpio:
 	if (c->gpio_irq)
-		omap_free_gpio(c->gpio_irq);
+		gpio_free(c->gpio_irq);
 err_iounmap:
 	iounmap(c->onenand.base);
 err_release_mem_region:
@@ -761,7 +761,7 @@ static int __devexit omap2_onenand_remove(struct platform_device *pdev)
 	platform_set_drvdata(pdev, NULL);
 	if (c->gpio_irq) {
 		free_irq(gpio_to_irq(c->gpio_irq), c);
-		omap_free_gpio(c->gpio_irq);
+		gpio_free(c->gpio_irq);
 	}
 	iounmap(c->onenand.base);
 	release_mem_region(c->phys_base, ONENAND_IO_SIZE);
#9 lore raw

Re: [PATCH 2/2] ARM: OMAP: Fix gpio by switching to generic gpio calls, v2

Quoted 13 lines · Tony Lindgren
Quoted 11 lines · Russell King - ARM Linux

arch/arm/mach-omap2/board-apollon.c static void __init apollon_led_init(void)

Quoted 4 lines · Tony Lindgren
arch/arm/mach-omap2/board-apollon.c +2 -2
-	set_irq_type(OMAP_GPIO_IRQ(SW_ENTER_GPIO16), IRQ_TYPE_EDGE_RISING);
-	if (request_irq(OMAP_GPIO_IRQ(SW_ENTER_GPIO16), &apollon_sw_interrupt,
+	set_irq_type(gpio_to_irq(SW_ENTER_GPIO16), IRQ_TYPE_EDGE_RISING);
+	if (request_irq(gpio_to_irq(SW_ENTER_GPIO16), &apollon_sw_interrupt,

NAK. I wonder how the f*** this got anywhere near the mainline kernel. No no no no no. set_irq_type + request_irq is utter crap and should be rejected whenever its seen. There's absolutely no need for it - request_irq is sufficient. Get rid of this set_irq_type usage from everywhere please.

Quoted 2 lines

Blind search and replace? :) I've removed the GPIO key code as there's already a patch to do that cleaner with gpio_keys.

Revised patch is fine.

author maintainer
#10 lore raw

updated git pull request for omap compile fixes, mailbox and hsmmc

Quoted 14 lines · Russell King - ARM Linux
Quoted 13 lines · Tony Lindgren
Quoted 11 lines · Russell King - ARM Linux

arch/arm/mach-omap2/board-apollon.c static void __init apollon_led_init(void)

Quoted 4 lines · Tony Lindgren
arch/arm/mach-omap2/board-apollon.c +2 -2
-	set_irq_type(OMAP_GPIO_IRQ(SW_ENTER_GPIO16), IRQ_TYPE_EDGE_RISING);
-	if (request_irq(OMAP_GPIO_IRQ(SW_ENTER_GPIO16), &apollon_sw_interrupt,
+	set_irq_type(gpio_to_irq(SW_ENTER_GPIO16), IRQ_TYPE_EDGE_RISING);
+	if (request_irq(gpio_to_irq(SW_ENTER_GPIO16), &apollon_sw_interrupt,

NAK. I wonder how the f*** this got anywhere near the mainline kernel. No no no no no. set_irq_type + request_irq is utter crap and should be rejected whenever its seen. There's absolutely no need for it - request_irq is sufficient. Get rid of this set_irq_type usage from everywhere please.

Quoted 4 lines
Quoted 2 lines

Blind search and replace? :) I've removed the GPIO key code as there's already a patch to do that cleaner with gpio_keys.

Revised patch is fine.

OK, here's the pull request again:

The following changes since commit ede6f5aea054d3fb67c78857f7abdee602302043:
Linus Torvalds (1):
Fix up 64-bit byte swaps for most 32-bit architectures

are available in the git repository at:

git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap-2.6.git omap-misc-for-rmk

Hiroshi DOYU (10):
omap mailbox: cleanup omap2 register definition with macro omap mailbox: add initial omap3 support
omap mailbox: print hardware revision at startup omap mailbox: fix empty struct device for omap_mbox omap mailbox: fix empty struct device for omap1 omap mailbox: fix empty struct device for omap2 omap mailbox: add save_/restore_ctx() for PM
omap mailbox: move mailbox.h into mailbox.c
omap mailbox: convert sequence bit checking to module paramter omap mailbox: remove unnecessary header file inclusion

Jarkko Nikula (1):
ARM: OMAP: Fix gpio by switching to generic gpio calls, v2

Madhusudhan Chikkature (1):
omap mmc: Add new omap hsmmc controller for 2430 and 34xx, v3

Tony Lindgren (1):
ARM: OMAP: Fix missing includes

 arch/arm/mach-omap1/board-sx1.c            |    6 +-
 arch/arm/mach-omap1/devices.c              |    2 +-
 arch/arm/mach-omap1/mailbox.c              |   31 +-
 arch/arm/mach-omap1/mcbsp.c                |    1 +
 arch/arm/mach-omap2/board-apollon.c        |   64 +--
 arch/arm/mach-omap2/board-ldp.c            |    2 +-
 arch/arm/mach-omap2/devices.c              |   38 +-
 arch/arm/mach-omap2/mailbox.c              |  195 +++--
 arch/arm/mach-omap2/mcbsp.c                |    1 +
 arch/arm/plat-omap/Kconfig                 |    8 +
 arch/arm/plat-omap/i2c.c                   |    1 +
 arch/arm/plat-omap/include/mach/gpio.h     |   10 -
 arch/arm/plat-omap/include/mach/mailbox.h  |   27 +-
 arch/arm/plat-omap/include/mach/omap34xx.h |    1 +
 arch/arm/plat-omap/mailbox.c               |  152 +++-
 arch/arm/plat-omap/mailbox.h               |  100 ---
 drivers/mfd/twl4030-core.c                 |    1 +
 drivers/mmc/host/Kconfig                   |   10 +
 drivers/mmc/host/Makefile                  |    1 +
 drivers/mmc/host/omap_hsmmc.c              | 1242 ++++++++++++++++++++++++++++
 drivers/mtd/onenand/omap2.c                |    6 +-
 21 files changed, 1581 insertions(+), 318 deletions(-)
 delete mode 100644 arch/arm/plat-omap/mailbox.h
 create mode 100644 drivers/mmc/host/omap_hsmmc.c
#21 lore raw

Re: [PATCH 1/2] ARM: OMAP: Fix missing includes

In reply to Tony Lindgren

drivers/mfd/twl4030-core.c line 41

Quoted 9 lines · Tony Lindgren
drivers/mfd/twl4030-core.c +1 -0
index b59c385..18179ac 100644
@@ -38,6 +38,7 @@
 #include <linux/i2c.h>
 #include <linux/i2c/twl4030.h>
 
+#include <mach/cpu.h>

This really needs the clock API usage fixing, rather than fixing it like this. I want to see the OMAP clock API getting fixed ASAP. For the time being, I'm going to add a comment about it into this file.

#19 lore raw

Re: [PATCH 2/2] ARM: OMAP: Fix gpio by switching to generic gpio calls

In reply to Tony Lindgren
Quoted 6 lines · Tony Lindgren

From: Jarkko Nikula <[email protected]>
Date: Wed, 7 Jan 2009 12:54:34 +0200
Subject: [PATCH] ARM: OMAP: Fix gpio by switching to generic gpio calls

Fix compile by removing remaining omap specific gpio calls. Based on earlier patches by Jarkko Nikula.

This isn't the whole story... There's another build error related to the OMAP GPIO changes which remain unaddressed:

arch/arm/plat-omap/gpio.c:1792: error: 'struct gpio_bank' has no member named 'suspend_wakeup'

and there's also the unrelated:

arch/arm/mach-omap1/board-palmte.c:198: error: variable 'palmte_mmc_config' has initializer but incomplete type

#11 lore raw

Re: updated git pull request for omap compile fixes, mailbox and hsmmc

In reply to Tony Lindgren
Quoted 10 lines · Tony Lindgren

OK, here's the pull request again:

The following changes since commit ede6f5aea054d3fb67c78857f7abdee602302043:
Linus Torvalds (1):
Fix up 64-bit byte swaps for most 32-bit architectures

are available in the git repository at:

git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap-2.6.git omap-misc-for-rmk

Quoted 11 lines

Hiroshi DOYU (10):
omap mailbox: cleanup omap2 register definition with macro omap mailbox: add initial omap3 support
omap mailbox: print hardware revision at startup omap mailbox: fix empty struct device for omap_mbox omap mailbox: fix empty struct device for omap1 omap mailbox: fix empty struct device for omap2 omap mailbox: add save_/restore_ctx() for PM
omap mailbox: move mailbox.h into mailbox.c
omap mailbox: convert sequence bit checking to module paramter omap mailbox: remove unnecessary header file inclusion

I'd rather avoid adding new stuff this late in the merge window - it's had no exposure in linux-next, etc.

Quoted 5 lines

Jarkko Nikula (1):
ARM: OMAP: Fix gpio by switching to generic gpio calls, v2

Madhusudhan Chikkature (1):
omap mmc: Add new omap hsmmc controller for 2430 and 34xx, v3

This I'd argue falls into the same category, but since its well known between us and Pierre who's acked it, I think it has sufficiently low impact that it can be accepted.

Quoted 2 lines

Tony Lindgren (1):
ARM: OMAP: Fix missing includes

The vast majority of this one is already in via a wider ranging change.

#22 lore raw

Re: [PATCH 1/2] ARM: OMAP: Fix missing includes

In reply to Tony Lindgren

Hi Tony,

drivers/mfd/twl4030-core.c line 41

Quoted 9 lines · Tony Lindgren
drivers/mfd/twl4030-core.c +1 -0
index b59c385..18179ac 100644
@@ -38,6 +38,7 @@
 #include <linux/i2c.h>
 #include <linux/i2c/twl4030.h>
 
+#include <mach/cpu.h>

That will break the build on !ARM for this driver.

Cheers,
Samuel.

Signature · 2 lines
Intel Open Source Technology Centre
http://oss.intel.com/
#23 lore raw

Re: [PATCH 1/2] ARM: OMAP: Fix missing includes

Quoted 11 lines · Samuel Ortiz

Hi Tony,

Quoted 8 lines · Tony Lindgren
drivers/mfd/twl4030-core.c +0 -0
index b59c385..18179ac 100644
@@ -38,6 +38,7 @@
 #include <linux/i2c.h>
 #include <linux/i2c/twl4030.h>
 
Quoted 2 lines

drivers/mfd/twl4030-core.c line 41

Quoted 1 line
drivers/mfd/twl4030-core.c +1 -0
+#include <mach/cpu.h>

That will break the build on !ARM for this driver.

... which in itself is an argument for making it use the clk API properly so that these kinds of CPU specific dependencies are kept out of the driver.

In other words:

        if (cpu_is_omap2430())
                osc = clk_get(NULL, "osc_ck");
        else
                osc = clk_get(NULL, "osc_sys_ck");

becomes:

        osc = clk_get(dev, "hfclk");

since "hfclk" is the name of the input on the device, or it should be NULL if it is the only input on the device (iow, you don't want to distinguish it from the 32kHz clock.)

And that eliminates the need for any platform specific includes (which is the whole point of the clk API - giving drivers a _generic_ way to get at clock information without resorting to platform specific crap.)

#24 lore raw

Re: [PATCH 1/2] ARM: OMAP: Fix missing includes

Quoted 12 lines · Russell King - ARM Linux
Quoted 11 lines · Samuel Ortiz

Hi Tony,

Quoted 8 lines · Tony Lindgren
drivers/mfd/twl4030-core.c +0 -0
index b59c385..18179ac 100644
@@ -38,6 +38,7 @@
 #include <linux/i2c.h>
 #include <linux/i2c/twl4030.h>
 
Quoted 6 lines
Quoted 2 lines

drivers/mfd/twl4030-core.c line 41

Quoted 1 line
drivers/mfd/twl4030-core.c +1 -0
+#include <mach/cpu.h>

That will break the build on !ARM for this driver.

... which in itself is an argument for making it use the clk API properly so that these kinds of CPU specific dependencies are kept out of the driver.

I agree.
Until that gets done, if we really need to include a header file to fix this build, I would rather go for a generic one, <linux/io.h> for example.

Cheers,
Samuel.

Quoted 18 lines

In other words:

        if (cpu_is_omap2430())
                osc = clk_get(NULL, "osc_ck");
        else
                osc = clk_get(NULL, "osc_sys_ck");

becomes:

        osc = clk_get(dev, "hfclk");

since "hfclk" is the name of the input on the device, or it should be NULL if it is the only input on the device (iow, you don't want to distinguish it from the 32kHz clock.)

And that eliminates the need for any platform specific includes (which is the whole point of the clk API - giving drivers a _generic_ way to get at clock information without resorting to platform specific crap.)

Signature · 2 lines
Intel Open Source Technology Centre
http://oss.intel.com/
#25 lore raw

Re: [PATCH 1/2] ARM: OMAP: Fix missing includes

Quoted 16 lines · Samuel Ortiz
Quoted 15 lines · Russell King - ARM Linux
Quoted 13 lines · Samuel Ortiz

Hi Tony,

drivers/mfd/twl4030-core.c line 41

Quoted 9 lines · Tony Lindgren
drivers/mfd/twl4030-core.c +1 -0
index b59c385..18179ac 100644
@@ -38,6 +38,7 @@
 #include <linux/i2c.h>
 #include <linux/i2c/twl4030.h>
 
+#include <mach/cpu.h>

That will break the build on !ARM for this driver.

Quoted 7 lines
Quoted 3 lines

... which in itself is an argument for making it use the clk API properly so that these kinds of CPU specific dependencies are kept out of the driver.

I agree.
Until that gets done, if we really need to include a header file to fix this build, I would rather go for a generic one, <linux/io.h> for example.

I fear that such an approach will result in the current situation persisting.

I've tried to tackle the OMAP clock implementation, and ended up giving up because other people are busy fiddling with it as well. I was rather hoping that these other changes were going to make it into the mainline kernel so I could resume my work on it, but alas that's not happened.

And note that I _only_ work with the mainline kernel, so having work sitting in other peoples trees derived from Tony's tree is completely useless.

Of course, I could say "sod it, waited long enough, I'm merging my omap-clks1 branch" for the next merge window.

#28 lore raw

Re: [PATCH 1/2] ARM: OMAP: Fix missing includes

In reply to Samuel Ortiz
Quoted 8 lines · Samuel Ortiz
Quoted 7 lines
drivers/mfd/twl4030-core.c +0 -0
@@ -38,6 +38,7 @@
  #include <linux/i2c.h>
  #include <linux/i2c/twl4030.h>


+#include <mach/cpu.h>

That will break the build on !ARM for this driver.

What needs to happen with twl4030-core.c is IMO this:

- Near term:
* revert 6354ab5c63bc986bf539026a1b289cc142f6e87c and just make the driver depend on HAVE_CLK
* #ifdef CONFIG_ARM do the #include <mach/cpu.h>

- Longer term:
* get rid of that remaining OMAP dependency
somehow (RMK's comment is the right direction,
but insufficient).
--
To unsubscribe from this list: send the line "unsubscribe linux-omap" in the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html

#27 lore raw

Re: [PATCH 1/2] ARM: OMAP: Fix missing includes

In reply to Russell King - ARM Linux
Quoted 7 lines · Russell King - ARM Linux

In other words:

        if (cpu_is_omap2430())
                osc = clk_get(NULL, "osc_ck");
        else
                osc = clk_get(NULL, "osc_sys_ck");
Quoted 7 lines

becomes:

        osc = clk_get(dev, "hfclk");

since "hfclk" is the name of the input on the device, or it should be NULL if it is the only input on the device (iow, you don't want to distinguish it from the 32kHz clock.)

Sort of. The twl4030 has "hfclkin" ... from which it generates "hfclkout", and that likely becomes "osc_sys_ck" (or "osc_ck" on omap2430). Agreed that the OMAP main clock is actually a proxy for what's needed.

Quoted 3 lines

And that eliminates the need for any platform specific includes (which is the whole point of the clk API - giving drivers a _generic_ way to get at clock information without resorting to platform specific crap.)

Yeah but ... remembering that the twl4030 is an I2C device, which is initialized well after the clock framework and associated SoC platform devices, that implementation approach begs a few questions:

- How to associate clocks with non-SoC devices.

This is an issue that comes up repeatedly when folk want to apply <linux/clk.h> calls to things like off-chip codecs ... sometimes fed by programmable off-chip clock generators, for which one would naturally want portable drivers.

- How to perform *this* association "late", as part of setting up the I2C device when its i2c_adapter is set up ... and before i2c_driver.probe() for the device is called. This obviously generalizes...

- Likewise, how to reverse that association when that device is removed (e.g. because the adapter driver gets removed or unbound). Also generalizes.

Full answers for those questions imply some degree of implementation framework for <linux/clk.h> ... a change from its current status as a pure interface.

Probably "Answers Mark I" would depend on extensions to the platform specific <linux/clk.h> implementation frameworks.

- Dave

#29 lore raw

Re: [PATCH 1/2] ARM: OMAP: Fix missing includes

In reply to David Brownell
Quoted 10 lines · David Brownell
Quoted 8 lines · Samuel Ortiz
Quoted 7 lines
drivers/mfd/twl4030-core.c +0 -0
@@ -38,6 +38,7 @@
  #include <linux/i2c.h>
  #include <linux/i2c/twl4030.h>


+#include <mach/cpu.h>

That will break the build on !ARM for this driver.

Quoted 5 lines

What needs to happen with twl4030-core.c is IMO this:

- Near term:
* revert 6354ab5c63bc986bf539026a1b289cc142f6e87c and just make the driver depend on HAVE_CLK

Yep, I'll do that afer the merge window.

Quoted 1 line

* #ifdef CONFIG_ARM do the #include <mach/cpu.h>

Not too pretty, but a good enough compromise for me. I'll push that.

Cheers,
Samuel.

Signature · 6 lines
Intel Open Source Technology Centre
http://oss.intel.com/
--
To unsubscribe from this list: send the line "unsubscribe linux-omap" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
#12 lore raw

Re: updated git pull request for omap compile fixes, mailbox and hsmmc

In reply to Russell King - ARM Linux
Quoted 7 lines · Russell King - ARM Linux
Quoted 2 lines · Tony Lindgren

Madhusudhan Chikkature (1):
omap mmc: Add new omap hsmmc controller for 2430 and 34xx, v3

This I'd argue falls into the same category, but since its well known between us and Pierre who's acked it, I think it has sufficiently low impact that it can be accepted.

... and now -rc1 is out, it's now too late for this.

author maintainer
#13 lore raw

Re: updated git pull request for omap compile fixes, mailbox and hsmmc

Quoted 10 lines · Russell King - ARM Linux
Quoted 7 lines · Russell King - ARM Linux
Quoted 2 lines · Tony Lindgren

Madhusudhan Chikkature (1):
omap mmc: Add new omap hsmmc controller for 2430 and 34xx, v3

This I'd argue falls into the same category, but since its well known between us and Pierre who's acked it, I think it has sufficiently low impact that it can be accepted.

... and now -rc1 is out, it's now too late for this.

Oh well. Will resubmit it later on LKML for Pierre, at least the MMC init code is mostly dealt with now.

Regards,

Tony

author maintainer
#18 lore raw

Re: updated git pull request for omap compile fixes, mailbox and hsmmc

In reply to Russell King - ARM Linux
Quoted 23 lines · Russell King - ARM Linux
Quoted 10 lines · Tony Lindgren

OK, here's the pull request again:

The following changes since commit ede6f5aea054d3fb67c78857f7abdee602302043:
Linus Torvalds (1):
Fix up 64-bit byte swaps for most 32-bit architectures

are available in the git repository at:

git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap-2.6.git omap-misc-for-rmk

Quoted 11 lines

Hiroshi DOYU (10):
omap mailbox: cleanup omap2 register definition with macro omap mailbox: add initial omap3 support
omap mailbox: print hardware revision at startup omap mailbox: fix empty struct device for omap_mbox omap mailbox: fix empty struct device for omap1 omap mailbox: fix empty struct device for omap2 omap mailbox: add save_/restore_ctx() for PM
omap mailbox: move mailbox.h into mailbox.c
omap mailbox: convert sequence bit checking to module paramter omap mailbox: remove unnecessary header file inclusion

Quoted 2 lines

I'd rather avoid adding new stuff this late in the merge window - it's had no exposure in linux-next, etc.

OK, will drop it from omap-fixes queue and into omap3-upstream for next merge window.

<snip>

Regards,

Tony

author maintainer
#30 lore raw

Re: [PATCH 1/2] ARM: OMAP: Fix missing includes

In reply to Samuel Ortiz
Quoted 13 lines · Samuel Ortiz
Quoted 12 lines · David Brownell
Quoted 8 lines · Samuel Ortiz
Quoted 7 lines
drivers/mfd/twl4030-core.c +0 -0
@@ -38,6 +38,7 @@
  #include <linux/i2c.h>
  #include <linux/i2c/twl4030.h>


+#include <mach/cpu.h>

That will break the build on !ARM for this driver.

What needs to happen with twl4030-core.c is IMO this:

Quoted 8 lines
Quoted 3 lines

- Near term:
* revert 6354ab5c63bc986bf539026a1b289cc142f6e87c and just make the driver depend on HAVE_CLK

Yep, I'll do that afer the merge window.

Quoted 1 line

* #ifdef CONFIG_ARM do the #include <mach/cpu.h>

Not too pretty, but a good enough compromise for me. I'll push that.

Thanks! I'll rework the other omap build fixes today.

Tony
--
To unsubscribe from this list: send the line "unsubscribe linux-omap" in the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html

author maintainer
#26 lore raw

Re: [PATCH 1/2] ARM: OMAP: Fix missing includes

In reply to Russell King - ARM Linux
Quoted 25 lines · Russell King - ARM Linux
Quoted 16 lines · Samuel Ortiz
Quoted 15 lines · Russell King - ARM Linux
Quoted 13 lines · Samuel Ortiz

Hi Tony,

drivers/mfd/twl4030-core.c line 41

Quoted 9 lines · Tony Lindgren
drivers/mfd/twl4030-core.c +1 -0
index b59c385..18179ac 100644
@@ -38,6 +38,7 @@
 #include <linux/i2c.h>
 #include <linux/i2c/twl4030.h>
 
+#include <mach/cpu.h>

That will break the build on !ARM for this driver.

Quoted 7 lines
Quoted 3 lines

... which in itself is an argument for making it use the clk API properly so that these kinds of CPU specific dependencies are kept out of the driver.

I agree.
Until that gets done, if we really need to include a header file to fix this build, I would rather go for a generic one, <linux/io.h> for example.

Quoted 7 lines

I fear that such an approach will result in the current situation persisting.

I've tried to tackle the OMAP clock implementation, and ended up giving up because other people are busy fiddling with it as well. I was rather hoping that these other changes were going to make it into the mainline kernel so I could resume my work on it, but alas that's not happened.

Those are good fixes, thanks. And things are happening, we just need a bit of time to get all the clock patches queued up.

Quoted 3 lines

And note that I _only_ work with the mainline kernel, so having work sitting in other peoples trees derived from Tony's tree is completely useless.

Sure, we'd like to work only against the mainline kernel too and have linux-omap tree only contain patches queued up for the next merge window. And that should help with issues regarding other linux-omap based trees too.

Quoted 2 lines

Of course, I could say "sod it, waited long enough, I'm merging my omap-clks1 branch" for the next merge window.

I don't see a problem with merging your omapm-clks1. Paul, do you see any issues with that?

AFAIK, Paul is in process of rebasing his clock changes on top of your clock patches. And we already have your clock patches now in linux-omap tree. So we'll start posting clock changes early on for the next merge window as there are quite a bit of clock patches.

Regards,

Tony

author maintainer
#20 lore raw

Re: [PATCH 2/2] ARM: OMAP: Fix gpio by switching to generic gpio calls

In reply to Russell King - ARM Linux
Quoted 5 lines · Russell King - ARM Linux
Quoted 4 lines · Tony Lindgren

From: Jarkko Nikula <[email protected]>
Date: Wed, 7 Jan 2009 12:54:34 +0200
Subject: [PATCH] ARM: OMAP: Fix gpio by switching to generic gpio calls

Quoted 7 lines
Quoted 2 lines

Fix compile by removing remaining omap specific gpio calls. Based on earlier patches by Jarkko Nikula.

This isn't the whole story... There's another build error related to the OMAP GPIO changes which remain unaddressed:

arch/arm/plat-omap/gpio.c:1792: error: 'struct gpio_bank' has no member named 'suspend_wakeup'

Looks like this happens with CONFIG_DEBUG_FS, will fix.

Quoted 3 lines

and there's also the unrelated:

arch/arm/mach-omap1/board-palmte.c:198: error: variable 'palmte_mmc_config' has initializer but incomplete type

Thanks, looks like I somehow missed removing the old style MMC init for palmte.

Will post a series of omap-fixes soonish.

Tony

#14 lore raw

Re: updated git pull request for omap compile fixes, mailbox and hsmmc

In reply to Tony Lindgren
Quoted 6 lines · Tony Lindgren
Quoted 5 lines · Russell King - ARM Linux
Quoted 4 lines · Russell King - ARM Linux
Quoted 2 lines · Tony Lindgren

Madhusudhan Chikkature (1):
omap mmc: Add new omap hsmmc controller for 2430 and 34xx, v3

Quoted 8 lines
Quoted 5 lines
Quoted 3 lines

This I'd argue falls into the same category, but since its well known between us and Pierre who's acked it, I think it has sufficiently low impact that it can be accepted.

... and now -rc1 is out, it's now too late for this.

Oh well. Will resubmit it later on LKML for Pierre, at least the MMC init code is mostly dealt with now.

Actually, as Pierre is okay with it coming via my tree, I'd prefer that so I can sanely run my devel branch on the LDP.

author maintainer
#15 lore raw

Re: updated git pull request for omap compile fixes, mailbox and hsmmc

Quoted 11 lines · Russell King - ARM Linux
Quoted 10 lines · Tony Lindgren
Quoted 9 lines · Russell King - ARM Linux
Quoted 7 lines · Russell King - ARM Linux
Quoted 2 lines · Tony Lindgren

Madhusudhan Chikkature (1):
omap mmc: Add new omap hsmmc controller for 2430 and 34xx, v3

This I'd argue falls into the same category, but since its well known between us and Pierre who's acked it, I think it has sufficiently low impact that it can be accepted.

Quoted 7 lines
Quoted 4 lines
Quoted 1 line

... and now -rc1 is out, it's now too late for this.

Oh well. Will resubmit it later on LKML for Pierre, at least the MMC init code is mostly dealt with now.

Actually, as Pierre is okay with it coming via my tree, I'd prefer that so I can sanely run my devel branch on the LDP.

OK, will start putting together for-next branch.

Tony

#16 lore raw

Re: updated git pull request for omap compile fixes, mailbox and hsmmc

Quoted 14 lines · Tony Lindgren
Quoted 13 lines · Russell King - ARM Linux
Quoted 12 lines · Tony Lindgren
Quoted 10 lines · Russell King - ARM Linux
Quoted 7 lines · Russell King - ARM Linux
Quoted 2 lines · Tony Lindgren

Madhusudhan Chikkature (1):
omap mmc: Add new omap hsmmc controller for 2430 and 34xx, v3

This I'd argue falls into the same category, but since its well known between us and Pierre who's acked it, I think it has sufficiently low impact that it can be accepted.

... and now -rc1 is out, it's now too late for this.

Quoted 7 lines
Quoted 5 lines
Quoted 2 lines

Oh well. Will resubmit it later on LKML for Pierre, at least the MMC init code is mostly dealt with now.

Actually, as Pierre is okay with it coming via my tree, I'd prefer that so I can sanely run my devel branch on the LDP.

OK, will start putting together for-next branch.

I'd like the MMC driver on its own please.

author maintainer
#17 lore raw

Re: updated git pull request for omap compile fixes, mailbox and hsmmc

Quoted 18 lines · Russell King - ARM Linux
Quoted 17 lines · Tony Lindgren
Quoted 16 lines · Russell King - ARM Linux
Quoted 14 lines · Tony Lindgren
Quoted 10 lines · Russell King - ARM Linux
Quoted 7 lines · Russell King - ARM Linux
Quoted 2 lines · Tony Lindgren

Madhusudhan Chikkature (1):
omap mmc: Add new omap hsmmc controller for 2430 and 34xx, v3

This I'd argue falls into the same category, but since its well known between us and Pierre who's acked it, I think it has sufficiently low impact that it can be accepted.

... and now -rc1 is out, it's now too late for this.

Oh well. Will resubmit it later on LKML for Pierre, at least the MMC init code is mostly dealt with now.

Quoted 6 lines
Quoted 4 lines
Quoted 2 lines

Actually, as Pierre is okay with it coming via my tree, I'd prefer that so I can sanely run my devel branch on the LDP.

OK, will start putting together for-next branch.

I'd like the MMC driver on its own please.

Posted to your patch system as 5369/1.

Tony