Re: [PATCHv2 00/27] ARM: OMAP2+: clock code migration to drivers/clk/ti

2015-05-21 Thread Tero Kristo

On 05/21/2015 01:40 AM, Paul Walmsley wrote:

On Tue, 19 May 2015, Tero Kristo wrote:


Any news on this? As noted previously, I am not able to reproduce the issue
you are seeing currently, can you give DEBUG_LL a shot?


Yeah I just bisected it, it was caused by this:

commit cc4a5fe972ad7834e8662b49b3a5fdb597e9e15e
Author: Felipe Balbi ba...@ti.com
Date:   Fri Jan 30 11:18:56 2015 -0600

 arm: config: omap2plus_defconfig: switch over to LZMA compression

 LZMA compression makes about 33% smaller zImage
 with just a slight extra decompression time.

 Before this patch, zImage built with o2+_dc
 is 4.5MiB and after it's about 3.3MiB.

 Suggested-by: David Cohen david.a.co...@linux.intel.com
 Signed-off-by: Felipe Balbi ba...@ti.com
 Signed-off-by: Tony Lindgren t...@atomide.com


and the timeouts on the testbed being set to fail if a kernel takes longer
than five seconds to start.  Seems that the part about a slight extra
decompression time probably only applies to relatively recent chips.


- Paul



Oh, so this explains why I was thinking it took very long time to boot 
the recent kernels also. The boot lag is clearly noticeable without any 
measurement. I wonder if we should probably revert this patch.


-Tero
--
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: [PATCHv2 00/27] ARM: OMAP2+: clock code migration to drivers/clk/ti

2015-05-21 Thread Nishanth Menon
On 05/21/2015 01:38 AM, Tero Kristo wrote:
 On 05/21/2015 01:40 AM, Paul Walmsley wrote:
 On Tue, 19 May 2015, Tero Kristo wrote:

 Any news on this? As noted previously, I am not able to reproduce the
 issue
 you are seeing currently, can you give DEBUG_LL a shot?

 Yeah I just bisected it, it was caused by this:

 commit cc4a5fe972ad7834e8662b49b3a5fdb597e9e15e
 Author: Felipe Balbi ba...@ti.com
 Date:   Fri Jan 30 11:18:56 2015 -0600

  arm: config: omap2plus_defconfig: switch over to LZMA compression

  LZMA compression makes about 33% smaller zImage
  with just a slight extra decompression time.

  Before this patch, zImage built with o2+_dc
  is 4.5MiB and after it's about 3.3MiB.

  Suggested-by: David Cohen david.a.co...@linux.intel.com
  Signed-off-by: Felipe Balbi ba...@ti.com
  Signed-off-by: Tony Lindgren t...@atomide.com


 and the timeouts on the testbed being set to fail if a kernel takes
 longer
 than five seconds to start.  Seems that the part about a slight extra
 decompression time probably only applies to relatively recent chips.


 - Paul

 
 Oh, so this explains why I was thinking it took very long time to boot
 the recent kernels also. The boot lag is clearly noticeable without any
 measurement. I wonder if we should probably revert this patch.

we already have issues with zImage size bloating up and running headlong
into dtb - esp on platforms like N900. Felipe spend quiet some time
getting things into a manageable size here - loosing 33% sounds like
bad idea to me :(

-- 
Regards,
Nishanth Menon
--
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: [PATCHv2 00/27] ARM: OMAP2+: clock code migration to drivers/clk/ti

2015-05-21 Thread Tony Lindgren
* Nishanth Menon n...@ti.com [150521 00:03]:
 On 05/21/2015 01:38 AM, Tero Kristo wrote:
  On 05/21/2015 01:40 AM, Paul Walmsley wrote:
  On Tue, 19 May 2015, Tero Kristo wrote:
 
  Any news on this? As noted previously, I am not able to reproduce the
  issue
  you are seeing currently, can you give DEBUG_LL a shot?
 
  Yeah I just bisected it, it was caused by this:
 
  commit cc4a5fe972ad7834e8662b49b3a5fdb597e9e15e
  Author: Felipe Balbi ba...@ti.com
  Date:   Fri Jan 30 11:18:56 2015 -0600
 
   arm: config: omap2plus_defconfig: switch over to LZMA compression
 
   LZMA compression makes about 33% smaller zImage
   with just a slight extra decompression time.
 
   Before this patch, zImage built with o2+_dc
   is 4.5MiB and after it's about 3.3MiB.
 
   Suggested-by: David Cohen david.a.co...@linux.intel.com
   Signed-off-by: Felipe Balbi ba...@ti.com
   Signed-off-by: Tony Lindgren t...@atomide.com
 
 
  and the timeouts on the testbed being set to fail if a kernel takes
  longer
  than five seconds to start.  Seems that the part about a slight extra
  decompression time probably only applies to relatively recent chips.
 
 
  - Paul
 
  
  Oh, so this explains why I was thinking it took very long time to boot
  the recent kernels also. The boot lag is clearly noticeable without any
  measurement. I wonder if we should probably revert this patch.
 
 we already have issues with zImage size bloating up and running headlong
 into dtb - esp on platforms like N900. Felipe spend quiet some time
 getting things into a manageable size here - loosing 33% sounds like
 bad idea to me :(

If it affects people using the slower 34xx systems we should probably
revert it though. Or make the uncompress somehow faster :)

Regards,

Tony
--
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


[PATCH] ARM: OMAP1: Fix section mismatch warnings for omap_cfg_reg

2015-05-21 Thread Tony Lindgren
This is cleary used after init time too for example for
configuring UART wake-up events during runtime.

Signed-off-by: Tony Lindgren t...@atomide.com
---
 arch/arm/mach-omap1/mux.c | 8 
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/arch/arm/mach-omap1/mux.c b/arch/arm/mach-omap1/mux.c
index 667ce50..599490a 100644
--- a/arch/arm/mach-omap1/mux.c
+++ b/arch/arm/mach-omap1/mux.c
@@ -36,7 +36,7 @@
 static struct omap_mux_cfg arch_mux_cfg;
 
 #if defined(CONFIG_ARCH_OMAP730) || defined(CONFIG_ARCH_OMAP850)
-static struct pin_config __initdata_or_module omap7xx_pins[] = {
+static struct pin_config omap7xx_pins[] = {
 MUX_CFG_7XX(E2_7XX_KBR0,12,   21,0,   20,   1, 0)
 MUX_CFG_7XX(J7_7XX_KBR1,12,   25,0,   24,   1, 0)
 MUX_CFG_7XX(E1_7XX_KBR2,12,   29,0,   28,   1, 0)
@@ -82,7 +82,7 @@ MUX_CFG_7XX(UART_7XX_2,  8,1,6,0,   0, 
0)
 #endif /* CONFIG_ARCH_OMAP730 || CONFIG_ARCH_OMAP850 */
 
 #if defined(CONFIG_ARCH_OMAP15XX) || defined(CONFIG_ARCH_OMAP16XX)
-static struct pin_config __initdata_or_module omap1xxx_pins[] = {
+static struct pin_config omap1xxx_pins[] = {
 /*
  *  descriptionmux  mode   mux  pull pull  pull  pu_pd  pu  dbg
  * reg  offset mode reg  bit   ena   reg
@@ -343,7 +343,7 @@ MUX_CFG(Y14_1610_CCP_DATAM,9,   21,6,   2,   
3,   1,2, 0,  0)
 #define OMAP1XXX_PINS_SZ   0
 #endif /* CONFIG_ARCH_OMAP15XX || CONFIG_ARCH_OMAP16XX */
 
-static int __init_or_module omap1_cfg_reg(const struct pin_config *cfg)
+static int omap1_cfg_reg(const struct pin_config *cfg)
 {
static DEFINE_SPINLOCK(mux_spin_lock);
unsigned long flags;
@@ -469,7 +469,7 @@ int __init omap_mux_register(struct omap_mux_cfg 
*arch_mux_cfg)
 /*
  * Sets the Omap MUX and PULL_DWN registers based on the table
  */
-int __init_or_module omap_cfg_reg(const unsigned long index)
+int omap_cfg_reg(const unsigned long index)
 {
struct pin_config *reg;
 
-- 
2.1.4

--
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: [GIT PULL 2/2] omap1 sparse irq support for v4.2

2015-05-21 Thread Arnd Bergmann
On Wednesday 20 May 2015 15:36:05 Tony Lindgren wrote:
 Add support for CONFIG_SPARSE_IRQ for omap1. This takes us a bit closer
 to making omap1 support multiarch. After this series we still need to
 make omap1 use the common clock framework and fix up the drivers to not
 rely on includes from mach and plat directories.
 
 Note that this branch depends on a GPIO driver fix in v4.1-rc3
 d2d05c65c40e (gpio: omap: Fix regression for MPUIO interrupts).
 

I'm getting lots of build errors in linux-next, which I think are
caused by this series.

Here is my fixup. Unfortunately, this again gets us a little further
from making the drivers standalone, or at least it documents the
dependencies.

Arnd

diff --git a/arch/arm/mach-omap1/board-htcherald.c 
b/arch/arm/mach-omap1/board-htcherald.c
index 9525ef9bc6c0..ac9bd88c6b05 100644
--- a/arch/arm/mach-omap1/board-htcherald.c
+++ b/arch/arm/mach-omap1/board-htcherald.c
@@ -42,6 +42,7 @@
 #include asm/mach-types.h
 #include asm/mach/arch.h
 
+#include mach/hardware.h
 #include mach/omap7xx.h
 #include mmc.h
 
diff --git a/arch/arm/mach-omap1/gpio16xx.c b/arch/arm/mach-omap1/gpio16xx.c
index 6e6ec93dcbb3..404f3f55726f 100644
--- a/arch/arm/mach-omap1/gpio16xx.c
+++ b/arch/arm/mach-omap1/gpio16xx.c
@@ -19,6 +19,7 @@
 #include linux/gpio.h
 #include linux/platform_data/gpio-omap.h
 
+#include mach/soc.h
 #include mach/irqs.h
 
 #define OMAP1610_GPIO1_BASE0xfffbe400
diff --git a/arch/arm/mach-omap1/gpio7xx.c b/arch/arm/mach-omap1/gpio7xx.c
index 4612d2506a2d..1bb38a4aec8f 100644
--- a/arch/arm/mach-omap1/gpio7xx.c
+++ b/arch/arm/mach-omap1/gpio7xx.c
@@ -19,6 +19,7 @@
 #include linux/gpio.h
 #include linux/platform_data/gpio-omap.h
 
+#include mach/soc.h
 #include mach/irqs.h
 
 #define OMAP7XX_GPIO1_BASE 0xfffbc000
diff --git a/arch/arm/mach-omap1/iomap.h b/arch/arm/mach-omap1/iomap.h
index f4e2d7a21365..23686204df45 100644
--- a/arch/arm/mach-omap1/iomap.h
+++ b/arch/arm/mach-omap1/iomap.h
@@ -27,6 +27,7 @@
  * Omap1 specific IO mapping
  * 
  */
+#include mach/hardware.h
 
 #define OMAP1_IO_PHYS  0xFFFB
 #define OMAP1_IO_SIZE  0x4
diff --git a/arch/arm/mach-omap1/serial.c b/arch/arm/mach-omap1/serial.c
index d1ac08016f0b..652ba6b9385e 100644
--- a/arch/arm/mach-omap1/serial.c
+++ b/arch/arm/mach-omap1/serial.c
@@ -22,6 +22,7 @@
 
 #include asm/mach-types.h
 
+#include mach/soc.h
 #include mach/mux.h
 
 #include pm.h
diff --git a/arch/arm/mach-omap1/usb.c b/arch/arm/mach-omap1/usb.c
index 4118db50d5e8..1f28b5e8d6ca 100644
--- a/arch/arm/mach-omap1/usb.c
+++ b/arch/arm/mach-omap1/usb.c
@@ -26,6 +26,7 @@
 
 #include asm/irq.h
 
+#include mach/hardware.h
 #include mach/mux.h
 
 #include mach/usb.h
diff --git a/drivers/input/keyboard/omap-keypad.c 
b/drivers/input/keyboard/omap-keypad.c
index 7502e46165fa..32c8fc0fdc15 100644
--- a/drivers/input/keyboard/omap-keypad.c
+++ b/drivers/input/keyboard/omap-keypad.c
@@ -38,6 +38,10 @@
 #include linux/platform_data/gpio-omap.h
 #include linux/platform_data/keypad-omap.h
 
+#ifdef CONFIG_ARCH_OMAP1
+#include mach/hardware.h
+#endif
+
 #undef NEW_BOARD_LEARNING_MODE
 
 static void omap_kp_tasklet(unsigned long);
diff --git a/drivers/tty/serial/8250/8250.h b/drivers/tty/serial/8250/8250.h
index c43f74c53cd9..c73297bd7ed4 100644
--- a/drivers/tty/serial/8250/8250.h
+++ b/drivers/tty/serial/8250/8250.h
@@ -15,6 +15,10 @@
 #include linux/serial_reg.h
 #include linux/dmaengine.h
 
+#ifdef CONFIG_ARCH_OMAP1
+#include mach/soc.h
+#endif
+
 struct uart_8250_dma {
int (*tx_dma)(struct uart_8250_port *p);
int (*rx_dma)(struct uart_8250_port *p, unsigned int iir);
diff --git a/drivers/usb/phy/phy-isp1301-omap.c 
b/drivers/usb/phy/phy-isp1301-omap.c
index 3af263cc0caa..1c05541bbeee 100644
--- a/drivers/usb/phy/phy-isp1301-omap.c
+++ b/drivers/usb/phy/phy-isp1301-omap.c
@@ -36,6 +36,7 @@
 #include asm/irq.h
 #include asm/mach-types.h
 
+#include mach/hardware.h
 #include mach/mux.h
 
 #include mach/usb.h
diff --git a/drivers/video/fbdev/omap/lcdc.c b/drivers/video/fbdev/omap/lcdc.c
index 6efa2591eaa8..4e01fbbeb52f 100644
--- a/drivers/video/fbdev/omap/lcdc.c
+++ b/drivers/video/fbdev/omap/lcdc.c
@@ -30,6 +30,7 @@
 #include linux/clk.h
 #include linux/gfp.h
 
+#include mach/hardware.h
 #include mach/lcdc.h
 #include linux/omap-dma.h
 
diff --git a/drivers/video/fbdev/omap/sossi.c b/drivers/video/fbdev/omap/sossi.c
index d4e7684e7045..39d9d7050d78 100644
--- a/drivers/video/fbdev/omap/sossi.c
+++ b/drivers/video/fbdev/omap/sossi.c
@@ -27,6 +27,8 @@
 
 #include linux/omap-dma.h
 
+#include mach/hardware.h
+
 #include omapfb.h
 #include lcdc.h
 

--
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: [GIT PULL 2/2] omap1 sparse irq support for v4.2

2015-05-21 Thread Arnd Bergmann
On Wednesday 20 May 2015 15:36:05 Tony Lindgren wrote:
 Add support for CONFIG_SPARSE_IRQ for omap1. This takes us a bit closer
 to making omap1 support multiarch. After this series we still need to
 make omap1 use the common clock framework and fix up the drivers to not
 rely on includes from mach and plat directories.
 
 Note that this branch depends on a GPIO driver fix in v4.1-rc3
 d2d05c65c40e (gpio: omap: Fix regression for MPUIO interrupts).
 

fwiw, I have another patch in my 'multiplatform' series that will add
another baby step.

8---
ARM: OMAP1: make header files local if possible

A number of header files in mach-omap1 are never included from outside
of mach-omap1, so we can move them directly to that directory.

Signed-off-by: Arnd Bergmann a...@arndb.de

diff --git a/arch/arm/mach-omap1/board-ams-delta.c 
b/arch/arm/mach-omap1/board-ams-delta.c
index a95499ea8706..9fc70978823b 100644
--- a/arch/arm/mach-omap1/board-ams-delta.c
+++ b/arch/arm/mach-omap1/board-ams-delta.c
@@ -41,7 +41,7 @@
 
 #include mach/hardware.h
 #include mach/ams-delta-fiq.h
-#include mach/camera.h
+#include camera.h
 #include mach/usb.h
 
 #include iomap.h
diff --git a/arch/arm/mach-omap1/board-fsample.c 
b/arch/arm/mach-omap1/board-fsample.c
index 0fb51d22c8b5..fad95b74bb65 100644
--- a/arch/arm/mach-omap1/board-fsample.c
+++ b/arch/arm/mach-omap1/board-fsample.c
@@ -29,7 +29,7 @@
 
 #include mach/tc.h
 #include mach/mux.h
-#include mach/flash.h
+#include flash.h
 #include linux/platform_data/keypad-omap.h
 
 #include mach/hardware.h
diff --git a/arch/arm/mach-omap1/board-h2.c b/arch/arm/mach-omap1/board-h2.c
index 8340d684d8b6..cd146ed0538d 100644
--- a/arch/arm/mach-omap1/board-h2.c
+++ b/arch/arm/mach-omap1/board-h2.c
@@ -42,7 +42,7 @@
 #include linux/omap-dma.h
 #include mach/tc.h
 #include linux/platform_data/keypad-omap.h
-#include mach/flash.h
+#include flash.h
 
 #include mach/hardware.h
 #include mach/usb.h
diff --git a/arch/arm/mach-omap1/board-h3.c b/arch/arm/mach-omap1/board-h3.c
index 086ff34e072b..f7c8c63dd532 100644
--- a/arch/arm/mach-omap1/board-h3.c
+++ b/arch/arm/mach-omap1/board-h3.c
@@ -44,7 +44,7 @@
 #include mach/tc.h
 #include linux/platform_data/keypad-omap.h
 #include linux/omap-dma.h
-#include mach/flash.h
+#include flash.h
 
 #include mach/hardware.h
 #include mach/irqs.h
diff --git a/arch/arm/mach-omap1/board-innovator.c 
b/arch/arm/mach-omap1/board-innovator.c
index ed4e045c2ad8..ae90bd02b3bf 100644
--- a/arch/arm/mach-omap1/board-innovator.c
+++ b/arch/arm/mach-omap1/board-innovator.c
@@ -32,7 +32,7 @@
 #include asm/mach/map.h
 
 #include mach/mux.h
-#include mach/flash.h
+#include flash.h
 #include mach/tc.h
 #include linux/platform_data/keypad-omap.h
 
diff --git a/arch/arm/mach-omap1/board-osk.c b/arch/arm/mach-omap1/board-osk.c
index 0efd165b8227..209aecb0df68 100644
--- a/arch/arm/mach-omap1/board-osk.c
+++ b/arch/arm/mach-omap1/board-osk.c
@@ -46,7 +46,7 @@
 #include asm/mach/arch.h
 #include asm/mach/map.h
 
-#include mach/flash.h
+#include flash.h
 #include mach/mux.h
 #include mach/tc.h
 
diff --git a/arch/arm/mach-omap1/board-palmte.c 
b/arch/arm/mach-omap1/board-palmte.c
index 1142ae431fe0..e5288cda1a6a 100644
--- a/arch/arm/mach-omap1/board-palmte.c
+++ b/arch/arm/mach-omap1/board-palmte.c
@@ -34,7 +34,7 @@
 #include asm/mach/arch.h
 #include asm/mach/map.h
 
-#include mach/flash.h
+#include flash.h
 #include mach/mux.h
 #include mach/tc.h
 #include linux/omap-dma.h
diff --git a/arch/arm/mach-omap1/board-palmtt.c 
b/arch/arm/mach-omap1/board-palmtt.c
index 54a547a96950..d672495f7441 100644
--- a/arch/arm/mach-omap1/board-palmtt.c
+++ b/arch/arm/mach-omap1/board-palmtt.c
@@ -34,7 +34,7 @@
 #include asm/mach/arch.h
 #include asm/mach/map.h
 
-#include mach/flash.h
+#include flash.h
 #include mach/mux.h
 #include linux/omap-dma.h
 #include mach/tc.h
diff --git a/arch/arm/mach-omap1/board-palmz71.c 
b/arch/arm/mach-omap1/board-palmz71.c
index 87ec04ae40dd..aaf741b0aff6 100644
--- a/arch/arm/mach-omap1/board-palmz71.c
+++ b/arch/arm/mach-omap1/board-palmz71.c
@@ -36,7 +36,7 @@
 #include asm/mach/arch.h
 #include asm/mach/map.h
 
-#include mach/flash.h
+#include flash.h
 #include mach/mux.h
 #include linux/omap-dma.h
 #include mach/tc.h
diff --git a/arch/arm/mach-omap1/board-perseus2.c 
b/arch/arm/mach-omap1/board-perseus2.c
index 3d76f05407f0..150b57ba42bf 100644
--- a/arch/arm/mach-omap1/board-perseus2.c
+++ b/arch/arm/mach-omap1/board-perseus2.c
@@ -30,7 +30,7 @@
 
 #include mach/tc.h
 #include mach/mux.h
-#include mach/flash.h
+#include flash.h
 
 #include mach/hardware.h
 
diff --git a/arch/arm/mach-omap1/board-sx1-mmc.c 
b/arch/arm/mach-omap1/board-sx1-mmc.c
index 4fcf19c78a08..a9373570bbb1 100644
--- a/arch/arm/mach-omap1/board-sx1-mmc.c
+++ b/arch/arm/mach-omap1/board-sx1-mmc.c
@@ -16,7 +16,7 @@
 #include linux/platform_device.h
 
 #include mach/hardware.h
-#include mach/board-sx1.h
+#include board-sx1.h
 
 #include mmc.h
 
diff --git a/arch/arm/mach-omap1/board-sx1.c 

Re: [PATCH 01/10] ARM: OMAP2+: Return correct error values from device and hwmod

2015-05-21 Thread Pali Rohár
On Thursday 26 February 2015 14:49:51 Pali Rohár wrote:
 Without this patch function pm_runtime_get_sync() returns 0 even when some
 omap subfunction fails. This patch properly propagate error codes from omap
 functions back to caller.
 
 This patch fix problem, when loading omap-aes driver in qemu cause kernel 
 oops.
 
 Signed-off-by: Pali Rohár pali.ro...@gmail.com
 ---
  arch/arm/mach-omap2/omap_device.c |   30 +-
  arch/arm/mach-omap2/omap_hwmod.c  |   10 ++
  2 files changed, 23 insertions(+), 17 deletions(-)
 
 diff --git a/arch/arm/mach-omap2/omap_device.c 
 b/arch/arm/mach-omap2/omap_device.c
 index be9541e..9fd47a9 100644
 --- a/arch/arm/mach-omap2/omap_device.c
 +++ b/arch/arm/mach-omap2/omap_device.c
 @@ -224,13 +224,13 @@ static int _omap_device_notifier_call(struct 
 notifier_block *nb,
   */
  static int _omap_device_enable_hwmods(struct omap_device *od)
  {
 + int ret = 0;
   int i;
  
   for (i = 0; i  od-hwmods_cnt; i++)
 - omap_hwmod_enable(od-hwmods[i]);
 + ret |= omap_hwmod_enable(od-hwmods[i]);
  
 - /* XXX pass along return value here? */
 - return 0;
 + return ret;
  }
  
  /**
 @@ -241,13 +241,13 @@ static int _omap_device_enable_hwmods(struct 
 omap_device *od)
   */
  static int _omap_device_idle_hwmods(struct omap_device *od)
  {
 + int ret = 0;
   int i;
  
   for (i = 0; i  od-hwmods_cnt; i++)
 - omap_hwmod_idle(od-hwmods[i]);
 + ret |= omap_hwmod_idle(od-hwmods[i]);
  
 - /* XXX pass along return value here? */
 - return 0;
 + return ret;
  }
  
  /* Public functions for use by core code */
 @@ -595,18 +595,20 @@ static int _od_runtime_suspend(struct device *dev)
   int ret;
  
   ret = pm_generic_runtime_suspend(dev);
 + if (ret)
 + return ret;
  
 - if (!ret)
 - omap_device_idle(pdev);
 -
 - return ret;
 + return omap_device_idle(pdev);
  }
  
  static int _od_runtime_resume(struct device *dev)
  {
   struct platform_device *pdev = to_platform_device(dev);
 + int ret;
  
 - omap_device_enable(pdev);
 + ret = omap_device_enable(pdev);
 + if (ret)
 + return ret;
  
   return pm_generic_runtime_resume(dev);
  }
 @@ -740,7 +742,8 @@ int omap_device_enable(struct platform_device *pdev)
  
   ret = _omap_device_enable_hwmods(od);
  
 - od-_state = OMAP_DEVICE_STATE_ENABLED;
 + if (ret == 0)
 + od-_state = OMAP_DEVICE_STATE_ENABLED;
  
   return ret;
  }
 @@ -770,7 +773,8 @@ int omap_device_idle(struct platform_device *pdev)
  
   ret = _omap_device_idle_hwmods(od);
  
 - od-_state = OMAP_DEVICE_STATE_IDLE;
 + if (ret == 0)
 + od-_state = OMAP_DEVICE_STATE_IDLE;
  
   return ret;
  }
 diff --git a/arch/arm/mach-omap2/omap_hwmod.c 
 b/arch/arm/mach-omap2/omap_hwmod.c
 index 92afb72..870e984 100644
 --- a/arch/arm/mach-omap2/omap_hwmod.c
 +++ b/arch/arm/mach-omap2/omap_hwmod.c
 @@ -3350,16 +3350,17 @@ int omap_hwmod_enable(struct omap_hwmod *oh)
   */
  int omap_hwmod_idle(struct omap_hwmod *oh)
  {
 + int r;
   unsigned long flags;
  
   if (!oh)
   return -EINVAL;
  
   spin_lock_irqsave(oh-_lock, flags);
 - _idle(oh);
 + r = _idle(oh);
   spin_unlock_irqrestore(oh-_lock, flags);
  
 - return 0;
 + return r;
  }
  
  /**
 @@ -3372,16 +3373,17 @@ int omap_hwmod_idle(struct omap_hwmod *oh)
   */
  int omap_hwmod_shutdown(struct omap_hwmod *oh)
  {
 + int r;
   unsigned long flags;
  
   if (!oh)
   return -EINVAL;
  
   spin_lock_irqsave(oh-_lock, flags);
 - _shutdown(oh);
 + r = _shutdown(oh);
   spin_unlock_irqrestore(oh-_lock, flags);
  
 - return 0;
 + return r;
  }
  
  /*

Hello Paul, can you apply this patch?

-- 
Pali Rohár
pali.ro...@gmail.com
--
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: [GIT PULL 2/2] omap1 sparse irq support for v4.2

2015-05-21 Thread Arnd Bergmann
On Thursday 21 May 2015 14:14:12 Arnd Bergmann wrote:
 On Wednesday 20 May 2015 15:36:05 Tony Lindgren wrote:
  Add support for CONFIG_SPARSE_IRQ for omap1. This takes us a bit closer
  to making omap1 support multiarch. After this series we still need to
  make omap1 use the common clock framework and fix up the drivers to not
  rely on includes from mach and plat directories.
  
  Note that this branch depends on a GPIO driver fix in v4.1-rc3
  d2d05c65c40e (gpio: omap: Fix regression for MPUIO interrupts).
  
 
 fwiw, I have another patch in my 'multiplatform' series that will add
 another baby step.
 
 8---
 ARM: OMAP1: make header files local if possible
 
 A number of header files in mach-omap1 are never included from outside
 of mach-omap1, so we can move them directly to that directory.
 
 Signed-off-by: Arnd Bergmann a...@arndb.de

and three more:

diff --git a/arch/arm/mach-omap1/board-h3.h b/arch/arm/mach-omap1/board-h3.h
index 78de535be3c5..f70c42801969 100644
--- a/arch/arm/mach-omap1/board-h3.h
+++ b/arch/arm/mach-omap1/board-h3.h
@@ -27,6 +27,8 @@
 #ifndef __ASM_ARCH_OMAP_H3_H
 #define __ASM_ARCH_OMAP_H3_H
 
+#include mach/irqs.h
+
 #define H3_TPS_GPIO_BASE   (OMAP_MAX_GPIO_LINES + 16 /* MPUIO */)
 #  define H3_TPS_GPIO_MMC_PWR_EN   (H3_TPS_GPIO_BASE + 4)
 
diff --git a/drivers/usb/gadget/udc/omap_udc.c 
b/drivers/usb/gadget/udc/omap_udc.c
index e2fcdb8e5596..8a3690b2acbd 100644
--- a/drivers/usb/gadget/udc/omap_udc.c
+++ b/drivers/usb/gadget/udc/omap_udc.c
@@ -45,6 +45,7 @@
 
 #include linux/omap-dma.h
 
+#include mach/hardware.h
 #include mach/usb.h
 
 #include omap_udc.h
diff --git a/sound/soc/omap/omap-pcm.c b/sound/soc/omap/omap-pcm.c
index 6bb623a2a4df..1f6c8d91f738 100644
--- a/sound/soc/omap/omap-pcm.c
+++ b/sound/soc/omap/omap-pcm.c
@@ -34,6 +34,7 @@
 #include sound/omap-pcm.h
 
 #ifdef CONFIG_ARCH_OMAP1
+#include mach/soc.h
 #define pcm_omap1510() cpu_is_omap1510()
 #else
 #define pcm_omap1510() 0

--
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: High CPU usage when video streaming on EHCI, 3.17.8 kernel with DMA enabled

2015-05-21 Thread Ash Charles
On Mon, May 18, 2015 at 7:59 AM, Tony Lindgren t...@atomide.com wrote:
 [PATCH] dmaengine: omap-dma: Add support for memcpy

Hi Tom,

To follow up on your corresponding mail to the gumstix list [1], I
tried on the 3.17.8 kernel on an Overo COM (DM37390) with the
suggested dmaengine patch applied.  Using hdparm -t --DIRECT
/dev/sda with a USB hard drive attached via the USB EHCI port, I see
a read speed of ~24MB/s (vs ~33MB/s on my laptop).  I see the same
behaviour on a recent kernel (from tony/omap-for-v4.2/cleanup,
otherwise works nicely on an Overo FWIW) with and without the
dmaengine patch.

What would be the expected USB read speed for an OMAP3 platform?

--Ash
[1] http://gumstix.8.x6.nabble.com/Low-USB-speed-on-Overo-td4969907.html
--
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: [PATCH] spi: omap2-mcspi: Fix native cs with new set_cs

2015-05-21 Thread Mark Brown
On Thu, May 21, 2015 at 04:04:11PM -0500, Michael Welling wrote:

 Do you want to revert the patch and apply a new one or should I provide a
 patch that reverts the changes and fixes it all in one?

Can you please send me separate revert and re-add patches, that's
probably going to be easier to review.


signature.asc
Description: Digital signature


Re: [PATCH] spi: omap2-mcspi: Fix native cs with new set_cs

2015-05-21 Thread Michael Welling
On Thu, May 21, 2015 at 11:18:57AM +0100, Mark Brown wrote:
 On Wed, May 20, 2015 at 09:07:09PM -0500, Michael Welling wrote:
 
  My guess is that the set_cs needs to be called even when toggling as GPIO.
 
  How should I handle this?
 
 It shouldn't be part of a set_cs() operation but rather part of the main
 transfer operation.


Okay then this patch should be reverted.

Do you want to revert the patch and apply a new one or should I provide a
patch that reverts the changes and fixes it all in one?

Sorry for this mess.

--
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: [PATCH 1/2] ARM: dts: omap3-devkit8000: Add dm9000 support

2015-05-21 Thread Tony Lindgren
Hi,

* Anthoine Bourgeois anthoine.bourge...@gmail.com [150521 12:55]:
 Support dm9000 network interface in the device tree of devkit8000 board.
 
 Signed-off-by: Anthoine Bourgeois anthoine.bourge...@gmail.com
 ---
  arch/arm/boot/dts/omap3-devkit8000.dts | 41 
 ++
  1 file changed, 41 insertions(+)
 
 diff --git a/arch/arm/boot/dts/omap3-devkit8000.dts 
 b/arch/arm/boot/dts/omap3-devkit8000.dts
 index 283db1d..b32eeda 100644
 --- a/arch/arm/boot/dts/omap3-devkit8000.dts
 +++ b/arch/arm/boot/dts/omap3-devkit8000.dts
 @@ -158,3 +158,44 @@
   };
   };
  };
 +
 +gpmc {
 + ranges = 6 0 0x2c00 0x100;   /* CS6: 16MB for DM9000 */
 +
 + ethernet@0,0 {
 + compatible = davicom,dm9000;
 + reg = 6 0x000 3
 +6 0x400 3;

So CS6 for GPMC and ioarea at offsets 0 and 0x400.. But the
size of 3 does not look right to me.. That's the size that
gets ioremapped by the Ethernet driver?

 + bank-width = 2;
 + interrupt-parent = gpio1;/* CS6 - DM9000 */

Is this comment maybe on the wrong line or how is the GPIO
interrupt related to the CS6? :)

Otherwise looks good to me.

Regards,

Tony
--
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: [GIT PULL 2/2] omap1 sparse irq support for v4.2

2015-05-21 Thread Tony Lindgren
* Arnd Bergmann a...@arndb.de [150521 14:35]:
 On Thursday 21 May 2015 11:36:30 Tony Lindgren wrote:
   
   OK got it triggered here too with randconfig builds now.
   This seems to be related to not selecting some omap1 SoCs or
   boards. I'll try to do a minimal fix for it today.
   
   It seems the include changes you posted would be better done
   by replacing the the dependencies to mach/irqs.h where possible
   rather than adding more includes?
 
 Yes, I guess we can do that too. FWIW, almost all the problems
 were uses of cpu_is_omap*(), omap_read*() and omap_write*().
 
 There are quite a lot of them overall, but at least they are
 easy to grep for, and there should be an obvious fix for each
 of them, following what you did on OMAP2 a couple of years ago.

Yeah then that can be done one driver at a time.
 
  OK figured it out. We now rely on an indirect include selected
  with ARCH_OMAP15XX. Here's what I suggest as a fix for this
  issue, obviously the real fix is to fix the legacy drivers to not 
  #include mach/*.h.
 
 Ok, I've put this patch in my randconfig build setup to replace
 my older patch, let's see if there are still some corner cases
 left. So far, everything looks good (50 random mach-omap1 builds
 done). Can you send an updated pull request with the fix folded in?

OK will do. I'll also include the secion warning I posted earlier
today as that seems to get triggered with some randconfigs because
of the __init_or_module.

Regards,

Tony
--
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: [GIT PULL 2/2] omap1 sparse irq support for v4.2

2015-05-21 Thread Arnd Bergmann
On Thursday 21 May 2015 11:36:30 Tony Lindgren wrote:
  
  OK got it triggered here too with randconfig builds now.
  This seems to be related to not selecting some omap1 SoCs or
  boards. I'll try to do a minimal fix for it today.
  
  It seems the include changes you posted would be better done
  by replacing the the dependencies to mach/irqs.h where possible
  rather than adding more includes?

Yes, I guess we can do that too. FWIW, almost all the problems
were uses of cpu_is_omap*(), omap_read*() and omap_write*().

There are quite a lot of them overall, but at least they are
easy to grep for, and there should be an obvious fix for each
of them, following what you did on OMAP2 a couple of years ago.

 OK figured it out. We now rely on an indirect include selected
 with ARCH_OMAP15XX. Here's what I suggest as a fix for this
 issue, obviously the real fix is to fix the legacy drivers to not 
 #include mach/*.h.

Ok, I've put this patch in my randconfig build setup to replace
my older patch, let's see if there are still some corner cases
left. So far, everything looks good (50 random mach-omap1 builds
done). Can you send an updated pull request with the fix folded in?

Arnd
--
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: [PATCH] spi: omap2-mcspi: Fix native cs with new set_cs

2015-05-21 Thread Mark Brown
On Wed, May 20, 2015 at 09:07:09PM -0500, Michael Welling wrote:

 My guess is that the set_cs needs to be called even when toggling as GPIO.

 How should I handle this?

It shouldn't be part of a set_cs() operation but rather part of the main
transfer operation.


signature.asc
Description: Digital signature


Re: [GIT PULL 2/2] omap1 sparse irq support for v4.2

2015-05-21 Thread Tony Lindgren
* Arnd Bergmann a...@arndb.de [150521 05:13]:
 On Wednesday 20 May 2015 15:36:05 Tony Lindgren wrote:
  Add support for CONFIG_SPARSE_IRQ for omap1. This takes us a bit closer
  to making omap1 support multiarch. After this series we still need to
  make omap1 use the common clock framework and fix up the drivers to not
  rely on includes from mach and plat directories.
  
  Note that this branch depends on a GPIO driver fix in v4.1-rc3
  d2d05c65c40e (gpio: omap: Fix regression for MPUIO interrupts).
  
 
 I'm getting lots of build errors in linux-next, which I think are
 caused by this series.

Hmm is this with make randconfig? What's the Kconfig option enabling
these errors?

Regards,

Tony
--
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: [PATCH] spi: omap2-mcspi: Fix native cs with new set_cs

2015-05-21 Thread Michael Welling
On Thu, May 21, 2015 at 10:16:38PM +0100, Mark Brown wrote:
 On Thu, May 21, 2015 at 04:04:11PM -0500, Michael Welling wrote:
 
  Do you want to revert the patch and apply a new one or should I provide a
  patch that reverts the changes and fixes it all in one?
 
 Can you please send me separate revert and re-add patches, that's
 probably going to be easier to review.

So after reverting this patch I found there is a issue in that it is difficult
to determine when a transfer is complete to properly drive the chipselect from
within the transfer_one function.

Then I figured that we could handle the case when GPIOs are being used with
some conditional calls to omap2_mcspi_set_cs in the omap2_mcspi_work_one
function.

Near the beginning of the function I added:
if (gpio_is_valid(spi-cs_gpio))
omap2_mcspi_set_cs(spi, 0);

Near the end of the function I added:
if (gpio_is_valid(spi-cs_gpio))
omap2_mcspi_set_cs(spi, 1);

This makes GPIO chip select support work while leaving the native working
as previous.

Is this solution acceptible?

In the process of reviewing the changes I found a few other things that
should be changed as well.

Here you will see a delay that is already handled by the core spi driver:
https://git.kernel.org/cgit/linux/kernel/git/next/linux-next.git/tree/drivers/spi/spi-omap2-mcspi.c#n1166

In the set_cs function the inversion of the enable that occurs in the
core spi_set_cs function based on SPI_CS_HIGH needs to revert as the
controller handles the inversion with OMAP2_MCSPI_CHCONF_EPOL bit in the
CHCONF register.

If you approve of the fix for the GPIO support, I will provide a patch
series with all of these above mentioned fixes.
--
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


[GIT PULL 2.1/2] fixed up omap1 sparse irq support for v4.2

2015-05-21 Thread Tony Lindgren
Here's this pull request updated for the randconfig errors found
by Arnd.

The following changes since commit 030bbdbf4c833bc69f502eae58498bc5572db736:

  Linux 4.1-rc3 (2015-05-10 15:12:29 -0700)

are available in the git repository at:

  git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap 
tags/omap-for-v4.2/omap1-v2

for you to fetch changes up to 7bf15c4360b384e34d685616a77a8abf7dd8aea5:

  ARM: OMAP1: Fix section mismatch warnings for omap_cfg_reg (2015-05-21 
14:50:23 -0700)


Add support for CONFIG_SPARSE_IRQ for omap1. This takes us a bit closer
to making omap1 support multiarch. After this series we still need to
make omap1 use the common clock framework and fix up the drivers to not
rely on includes from mach and plat directories.

Note that this branch depends on a GPIO driver fix in v4.1-rc3
d2d05c65c40e (gpio: omap: Fix regression for MPUIO interrupts).


Tony Lindgren (6):
  ARM: OMAP1: Move UART defines to prepare for sparse IRQ
  ARM: OMAP1: Switch to use generic irqchip in preparation for sparse IRQ
  ARM: omap1: Switch to use MULTI_IRQ
  ARM: OMAP1: Change interrupt numbering for sparse IRQ
  ARM: OMAP1: Fix randconfig builds if ARCH_OMAP15XX not selected
  ARM: OMAP1: Fix section mismatch warnings for omap_cfg_reg

 arch/arm/Kconfig   |   2 +
 arch/arm/mach-omap1/ams-delta-fiq-handler.S|   3 +-
 arch/arm/mach-omap1/board-ams-delta.c  |   1 +
 arch/arm/mach-omap1/board-fsample.c|   1 +
 arch/arm/mach-omap1/board-generic.c|   1 +
 arch/arm/mach-omap1/board-h2.c |   1 +
 arch/arm/mach-omap1/board-h3-mmc.c |   1 +
 arch/arm/mach-omap1/board-h3.c |   1 +
 arch/arm/mach-omap1/board-htcherald.c  |   1 +
 arch/arm/mach-omap1/board-innovator.c  |   1 +
 arch/arm/mach-omap1/board-nokia770.c   |   1 +
 arch/arm/mach-omap1/board-osk.c|   1 +
 arch/arm/mach-omap1/board-palmte.c |   1 +
 arch/arm/mach-omap1/board-palmtt.c |   1 +
 arch/arm/mach-omap1/board-palmz71.c|   1 +
 arch/arm/mach-omap1/board-perseus2.c   |   1 +
 arch/arm/mach-omap1/board-sx1.c|   1 +
 arch/arm/mach-omap1/board-voiceblue.c  |   1 +
 arch/arm/mach-omap1/common.h   |   7 +-
 arch/arm/mach-omap1/dma.c  |   2 +-
 arch/arm/mach-omap1/gpio16xx.c |   2 +
 arch/arm/mach-omap1/gpio7xx.c  |   2 +
 arch/arm/mach-omap1/i2c.c  |   3 +-
 arch/arm/mach-omap1/include/mach/entry-macro.S |  39 --
 arch/arm/mach-omap1/include/mach/irqs.h| 124 ++-
 arch/arm/mach-omap1/include/mach/memory.h  |   4 +-
 arch/arm/mach-omap1/include/mach/serial.h  |   5 -
 arch/arm/mach-omap1/include/mach/soc.h |   4 +
 arch/arm/mach-omap1/irq.c  | 157 +++--
 arch/arm/mach-omap1/mux.c  |   8 +-
 arch/arm/mach-omap1/pm.c   |   1 +
 arch/arm/mach-omap1/serial.c   |   1 +
 arch/arm/mach-omap1/timer.c|   4 +-
 arch/arm/plat-omap/dma.c   |   4 +
 include/uapi/linux/serial_reg.h|   3 +
 35 files changed, 206 insertions(+), 185 deletions(-)
 delete mode 100644 arch/arm/mach-omap1/include/mach/entry-macro.S
--
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: [PATCH 1/2] am335x-evm: add mmc3 and wlan definitions to dts

2015-05-21 Thread Tony Lindgren
* Eyal Reizer eyalrei...@gmail.com [150503 05:20]:
 This includes the wlan regulator, pinmux, DMA
 and wlcore bindings.
 
 Signed-off-by: Arik Nemtsov a...@wizery.com
 Signed-off-by: Eliad Peller el...@wizery.com
 Signed-off-by: Eyal Reizer ey...@ti.com

Applying only 1/2 of this series into omap-for-v4.2/dt thanks.

Regards,

Tony
--
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


[PATCH 1/2] ARM: dts: omap3-devkit8000: Add dm9000 support

2015-05-21 Thread Anthoine Bourgeois
Support dm9000 network interface in the device tree of devkit8000 board.

Signed-off-by: Anthoine Bourgeois anthoine.bourge...@gmail.com
---
 arch/arm/boot/dts/omap3-devkit8000.dts | 41 ++
 1 file changed, 41 insertions(+)

diff --git a/arch/arm/boot/dts/omap3-devkit8000.dts 
b/arch/arm/boot/dts/omap3-devkit8000.dts
index 283db1d..b32eeda 100644
--- a/arch/arm/boot/dts/omap3-devkit8000.dts
+++ b/arch/arm/boot/dts/omap3-devkit8000.dts
@@ -158,3 +158,44 @@
};
};
 };
+
+gpmc {
+   ranges = 6 0 0x2c00 0x100;   /* CS6: 16MB for DM9000 */
+
+   ethernet@0,0 {
+   compatible = davicom,dm9000;
+   reg = 6 0x000 3
+  6 0x400 3;
+   bank-width = 2;
+   interrupt-parent = gpio1;/* CS6 - DM9000 */
+   interrupts = 25 IRQ_TYPE_LEVEL_LOW;
+   davicom,no-eeprom;
+
+   gpmc,mux-add-data = 0;
+   gpmc,device-width = 1;
+   gpmc,wait-pin = 0;
+   gpmc,cycle2cycle-samecsen = 1;
+   gpmc,cycle2cycle-diffcsen = 1;
+
+   gpmc,cs-on-ns = 6;
+   gpmc,cs-rd-off-ns = 180;
+   gpmc,cs-wr-off-ns = 180;
+   gpmc,adv-on-ns = 0;
+   gpmc,adv-rd-off-ns = 18;
+   gpmc,adv-wr-off-ns = 48;
+   gpmc,oe-on-ns = 54;
+   gpmc,oe-off-ns = 168;
+   gpmc,we-on-ns = 54;
+   gpmc,we-off-ns = 168;
+   gpmc,rd-cycle-ns = 186;
+   gpmc,wr-cycle-ns = 186;
+   gpmc,access-ns = 144;
+   gpmc,page-burst-access-ns = 24;
+   gpmc,bus-turnaround-ns = 90;
+   gpmc,cycle2cycle-delay-ns = 90;
+   gpmc,wait-monitoring-ns = 0;
+   gpmc,clk-activation-ns = 0;
+   gpmc,wr-data-mux-bus-ns = 0;
+   gpmc,wr-access-ns = 0;
+   };
+};
-- 
2.0.5

--
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


[PATCH 2/2] ARM: OMAP: enable DM9000 in omap2plus_defconfig

2015-05-21 Thread Anthoine Bourgeois
This ethernet device is used on devkit8000 board.

Signed-off-by: Anthoine Bourgeois anthoine.bourge...@gmail.com
---
 arch/arm/configs/omap2plus_defconfig | 1 +
 1 file changed, 1 insertion(+)

diff --git a/arch/arm/configs/omap2plus_defconfig 
b/arch/arm/configs/omap2plus_defconfig
index 8e10859..08cd89c 100644
--- a/arch/arm/configs/omap2plus_defconfig
+++ b/arch/arm/configs/omap2plus_defconfig
@@ -135,6 +135,7 @@ CONFIG_NETDEVICES=y
 # CONFIG_NET_CADENCE is not set
 # CONFIG_NET_VENDOR_BROADCOM is not set
 # CONFIG_NET_VENDOR_CIRRUS is not set
+CONFIG_DM9000=y
 # CONFIG_NET_VENDOR_FARADAY is not set
 # CONFIG_NET_VENDOR_HISILICON is not set
 # CONFIG_NET_VENDOR_INTEL is not set
-- 
2.0.5

--
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: [GIT PULL 2/2] omap1 sparse irq support for v4.2

2015-05-21 Thread Tony Lindgren
* Tony Lindgren t...@atomide.com [150521 09:55]:
 * Tony Lindgren t...@atomide.com [150521 08:52]:
  * Arnd Bergmann a...@arndb.de [150521 08:41]:
   On Thursday 21 May 2015 07:58:41 Tony Lindgren wrote:
* Arnd Bergmann a...@arndb.de [150521 05:13]:
 On Wednesday 20 May 2015 15:36:05 Tony Lindgren wrote:
  Add support for CONFIG_SPARSE_IRQ for omap1. This takes us a bit 
  closer
  to making omap1 support multiarch. After this series we still need 
  to
  make omap1 use the common clock framework and fix up the drivers to 
  not
  rely on includes from mach and plat directories.
  
  Note that this branch depends on a GPIO driver fix in v4.1-rc3
  d2d05c65c40e (gpio: omap: Fix regression for MPUIO interrupts).
  
 
 I'm getting lots of build errors in linux-next, which I think are
 caused by this series.

Hmm is this with make randconfig?
   
   Yes, all sorts of randconfig builds hit different parts here
   
What's the Kconfig option enabling these errors?
   
   From what I can tell, this is simply a result of enabling
   CONFIG_SPARSE_IRQ, which results in linux/irq.h no longer
   implicitly including  mach/hardware.h through mach/irqs.h.
  
  Hmm not seeing that here, well at least not with what I've
  tried so far.
   
   You should be able to see these errors by just enabling
   the respective drivers. The errors manifest as a long list
   of undefined symbols like
   
   /git/arm-soc/arch/arm/mach-omap1/io.c:33:28: error: 'OMAP1_IO_OFFSET' 
   undeclared here (not in a function)
   /git/arm-soc/arch/arm/mach-omap1/io.c:43:14: error: 'OMAP7XX_DSP_BASE' 
   undeclared here (not in a function)
   /git/arm-soc/arch/arm/mach-omap1/serial.c:114:33: note: each undeclared 
   identifier is reported only once for each function it appears in
   /git/arm-soc/arch/arm/mach-omap1/pm.c:217:23: error: 
   'ULPD_SOFT_DISABLE_REQ_REG' undeclared (first use in this function)
   /git/arm-soc/drivers/video/fbdev/omap/sossi.c:608:17: error: 
   'MOD_CONF_CTRL_1' undeclared (first use in this function)
   
   Then again, it is possible that I only see the errors because of
   an interaction with another patch from my randconfig fixes
   series.
  
  I think there's something like that going on.. Maybe you're
  now enabling multiarch for omap1 in your branch?
 
 OK got it triggered here too with randconfig builds now.
 This seems to be related to not selecting some omap1 SoCs or
 boards. I'll try to do a minimal fix for it today.
 
 It seems the include changes you posted would be better done
 by replacing the the dependencies to mach/irqs.h where possible
 rather than adding more includes?

OK figured it out. We now rely on an indirect include selected
with ARCH_OMAP15XX. Here's what I suggest as a fix for this
issue, obviously the real fix is to fix the legacy drivers to not 
#include mach/*.h.

Regards,

Tony

8 
From: Tony Lindgren t...@atomide.com
Date: Thu, 21 May 2015 11:01:29 -0700
Subject: [PATCH] ARM: OMAP1: Fix randconfig builds if ARCH_OMAP15XX not
 selected

With the omap1 SPARSE_IRQ changes mach/irqs.h is no longer
automatically included. Turns out now we rely on ARCH_OMAP15XX
including hardware.h from memory.h, so without ARCH_OMAP15XX
we get build failures.

As we have legacy drivers still relying on these indirect
includes, let's not add more mach includes to the drivers.
Those have to be removed anyways for multiplatform support.

Let's fix up mach-omap1 to include soc.h where cpu_is_omap
checks are done, and common.h for board-*.c files.

But let's keep the indirect memory.h include for now to avoid
unnecessary churn in the drivers.

Signed-off-by: Tony Lindgren t...@atomide.com

--- a/arch/arm/mach-omap1/board-h3-mmc.c
+++ b/arch/arm/mach-omap1/board-h3-mmc.c
@@ -16,6 +16,7 @@
 
 #include linux/i2c/tps65010.h
 
+#include common.h
 #include board-h3.h
 #include mmc.h
 
--- a/arch/arm/mach-omap1/common.h
+++ b/arch/arm/mach-omap1/common.h
@@ -36,6 +36,8 @@
 
 #include mach/irqs.h
 
+#include soc.h
+
 #if defined(CONFIG_ARCH_OMAP730) || defined(CONFIG_ARCH_OMAP850)
 void omap7xx_map_io(void);
 #else
--- a/arch/arm/mach-omap1/gpio16xx.c
+++ b/arch/arm/mach-omap1/gpio16xx.c
@@ -21,6 +21,8 @@
 
 #include mach/irqs.h
 
+#include soc.h
+
 #define OMAP1610_GPIO1_BASE0xfffbe400
 #define OMAP1610_GPIO2_BASE0xfffbec00
 #define OMAP1610_GPIO3_BASE0xfffbb400
--- a/arch/arm/mach-omap1/gpio7xx.c
+++ b/arch/arm/mach-omap1/gpio7xx.c
@@ -21,6 +21,8 @@
 
 #include mach/irqs.h
 
+#include soc.h
+
 #define OMAP7XX_GPIO1_BASE 0xfffbc000
 #define OMAP7XX_GPIO2_BASE 0xfffbc800
 #define OMAP7XX_GPIO3_BASE 0xfffbd000
--- a/arch/arm/mach-omap1/include/mach/memory.h
+++ b/arch/arm/mach-omap1/include/mach/memory.h
@@ -5,6 +5,9 @@
 #ifndef __ASM_ARCH_MEMORY_H
 #define __ASM_ARCH_MEMORY_H
 
+/* REVISIT: omap1 legacy drivers still rely on this */
+#include mach/soc.h
+

Re: [GIT PULL 2/2] omap1 sparse irq support for v4.2

2015-05-21 Thread Arnd Bergmann
On Thursday 21 May 2015 07:58:41 Tony Lindgren wrote:
 * Arnd Bergmann a...@arndb.de [150521 05:13]:
  On Wednesday 20 May 2015 15:36:05 Tony Lindgren wrote:
   Add support for CONFIG_SPARSE_IRQ for omap1. This takes us a bit closer
   to making omap1 support multiarch. After this series we still need to
   make omap1 use the common clock framework and fix up the drivers to not
   rely on includes from mach and plat directories.
   
   Note that this branch depends on a GPIO driver fix in v4.1-rc3
   d2d05c65c40e (gpio: omap: Fix regression for MPUIO interrupts).
   
  
  I'm getting lots of build errors in linux-next, which I think are
  caused by this series.
 
 Hmm is this with make randconfig?

Yes, all sorts of randconfig builds hit different parts here

 What's the Kconfig option enabling these errors?

From what I can tell, this is simply a result of enabling
CONFIG_SPARSE_IRQ, which results in linux/irq.h no longer
implicitly including  mach/hardware.h through mach/irqs.h.

You should be able to see these errors by just enabling
the respective drivers. The errors manifest as a long list
of undefined symbols like

/git/arm-soc/arch/arm/mach-omap1/io.c:33:28: error: 'OMAP1_IO_OFFSET' 
undeclared here (not in a function)
/git/arm-soc/arch/arm/mach-omap1/io.c:43:14: error: 'OMAP7XX_DSP_BASE' 
undeclared here (not in a function)
/git/arm-soc/arch/arm/mach-omap1/serial.c:114:33: note: each undeclared 
identifier is reported only once for each function it appears in
/git/arm-soc/arch/arm/mach-omap1/pm.c:217:23: error: 
'ULPD_SOFT_DISABLE_REQ_REG' undeclared (first use in this function)
/git/arm-soc/drivers/video/fbdev/omap/sossi.c:608:17: error: 'MOD_CONF_CTRL_1' 
undeclared (first use in this function)

Then again, it is possible that I only see the errors because of
an interaction with another patch from my randconfig fixes
series.

Arnd
--
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: [GIT PULL 2/2] omap1 sparse irq support for v4.2

2015-05-21 Thread Tony Lindgren
* Arnd Bergmann a...@arndb.de [150521 08:41]:
 On Thursday 21 May 2015 07:58:41 Tony Lindgren wrote:
  * Arnd Bergmann a...@arndb.de [150521 05:13]:
   On Wednesday 20 May 2015 15:36:05 Tony Lindgren wrote:
Add support for CONFIG_SPARSE_IRQ for omap1. This takes us a bit closer
to making omap1 support multiarch. After this series we still need to
make omap1 use the common clock framework and fix up the drivers to not
rely on includes from mach and plat directories.

Note that this branch depends on a GPIO driver fix in v4.1-rc3
d2d05c65c40e (gpio: omap: Fix regression for MPUIO interrupts).

   
   I'm getting lots of build errors in linux-next, which I think are
   caused by this series.
  
  Hmm is this with make randconfig?
 
 Yes, all sorts of randconfig builds hit different parts here
 
  What's the Kconfig option enabling these errors?
 
 From what I can tell, this is simply a result of enabling
 CONFIG_SPARSE_IRQ, which results in linux/irq.h no longer
 implicitly including  mach/hardware.h through mach/irqs.h.

Hmm not seeing that here, well at least not with what I've
tried so far.
 
 You should be able to see these errors by just enabling
 the respective drivers. The errors manifest as a long list
 of undefined symbols like
 
 /git/arm-soc/arch/arm/mach-omap1/io.c:33:28: error: 'OMAP1_IO_OFFSET' 
 undeclared here (not in a function)
 /git/arm-soc/arch/arm/mach-omap1/io.c:43:14: error: 'OMAP7XX_DSP_BASE' 
 undeclared here (not in a function)
 /git/arm-soc/arch/arm/mach-omap1/serial.c:114:33: note: each undeclared 
 identifier is reported only once for each function it appears in
 /git/arm-soc/arch/arm/mach-omap1/pm.c:217:23: error: 
 'ULPD_SOFT_DISABLE_REQ_REG' undeclared (first use in this function)
 /git/arm-soc/drivers/video/fbdev/omap/sossi.c:608:17: error: 
 'MOD_CONF_CTRL_1' undeclared (first use in this function)
 
 Then again, it is possible that I only see the errors because of
 an interaction with another patch from my randconfig fixes
 series.

I think there's something like that going on.. Maybe you're
now enabling multiarch for omap1 in your branch?

Regards,

Tony
--
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: [GIT PULL 2/2] omap1 sparse irq support for v4.2

2015-05-21 Thread Tony Lindgren
* Tony Lindgren t...@atomide.com [150521 08:52]:
 * Arnd Bergmann a...@arndb.de [150521 08:41]:
  On Thursday 21 May 2015 07:58:41 Tony Lindgren wrote:
   * Arnd Bergmann a...@arndb.de [150521 05:13]:
On Wednesday 20 May 2015 15:36:05 Tony Lindgren wrote:
 Add support for CONFIG_SPARSE_IRQ for omap1. This takes us a bit 
 closer
 to making omap1 support multiarch. After this series we still need to
 make omap1 use the common clock framework and fix up the drivers to 
 not
 rely on includes from mach and plat directories.
 
 Note that this branch depends on a GPIO driver fix in v4.1-rc3
 d2d05c65c40e (gpio: omap: Fix regression for MPUIO interrupts).
 

I'm getting lots of build errors in linux-next, which I think are
caused by this series.
   
   Hmm is this with make randconfig?
  
  Yes, all sorts of randconfig builds hit different parts here
  
   What's the Kconfig option enabling these errors?
  
  From what I can tell, this is simply a result of enabling
  CONFIG_SPARSE_IRQ, which results in linux/irq.h no longer
  implicitly including  mach/hardware.h through mach/irqs.h.
 
 Hmm not seeing that here, well at least not with what I've
 tried so far.
  
  You should be able to see these errors by just enabling
  the respective drivers. The errors manifest as a long list
  of undefined symbols like
  
  /git/arm-soc/arch/arm/mach-omap1/io.c:33:28: error: 'OMAP1_IO_OFFSET' 
  undeclared here (not in a function)
  /git/arm-soc/arch/arm/mach-omap1/io.c:43:14: error: 'OMAP7XX_DSP_BASE' 
  undeclared here (not in a function)
  /git/arm-soc/arch/arm/mach-omap1/serial.c:114:33: note: each undeclared 
  identifier is reported only once for each function it appears in
  /git/arm-soc/arch/arm/mach-omap1/pm.c:217:23: error: 
  'ULPD_SOFT_DISABLE_REQ_REG' undeclared (first use in this function)
  /git/arm-soc/drivers/video/fbdev/omap/sossi.c:608:17: error: 
  'MOD_CONF_CTRL_1' undeclared (first use in this function)
  
  Then again, it is possible that I only see the errors because of
  an interaction with another patch from my randconfig fixes
  series.
 
 I think there's something like that going on.. Maybe you're
 now enabling multiarch for omap1 in your branch?

OK got it triggered here too with randconfig builds now.
This seems to be related to not selecting some omap1 SoCs or
boards. I'll try to do a minimal fix for it today.

It seems the include changes you posted would be better done
by replacing the the dependencies to mach/irqs.h where possible
rather than adding more includes?

Regards,

Tony
--
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


am33xx: ignore SYSBOOT 15:14 if board OSC is known

2015-05-21 Thread Nuno Gonçalves
Currently the processor PLLs and Dividers are configured according to
SYSBOOT levels during boot [1][2].

In the case of boards with expansion capabitliy, like the Beaglebone,
the expansion board might touch this SYSBOOT pins a provide a wrong
clock information.

If we know the OSC on board as a fact (for example 24MHz for the
Beaglebone), the SYSBOOT information can be safely ignored and the
correct value hardcoded on the DT.

The patch following works for am33xx.

Anyway I have some reservations about this. Maybe overriding
sys_clkin_ck with virt_2400_ck is a better solution?

Regards,
Nuno

[1] 
https://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git/tree/arch/arm/boot/dts/am33xx-clocks.dtsi#n11
[2] http://www.ti.com/lit/ug/spruh73l/spruh73l.pdf


diff --git a/src/arm/am335x-bone-common.dtsi b/src/arm/am335x-bone-common.dtsi
index 77067d6..1ddaa58 100644
--- a/src/arm/am335x-bone-common.dtsi
+++ b/src/arm/am335x-bone-common.dtsi
@@ -356,6 +356,10 @@
status = okay;
 };

+sys_clkin_ck {
+   clocks = virt_2400_ck, virt_2400_ck,
virt_2400_ck, virt_2400_ck;
+};
+
 /* the cape manager */
 / {
bone_capemgr {
--
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