All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH v4 0/4] Energy Micro efm32 support
@ 2013-11-04 10:58 Uwe Kleine-König
  2013-11-04 11:00 ` [PATCH v4 1/4] ARM: deprecate mach/timex.h for !ARCH_MULTIPLATFORM Uwe Kleine-König
                   ` (4 more replies)
  0 siblings, 5 replies; 30+ messages in thread
From: Uwe Kleine-König @ 2013-11-04 10:58 UTC (permalink / raw)
  To: linux-arm-kernel

Hello,

now that 3.12 is out, I patted my efm32 tree and I consider the base
platform support ready for merging. I put it into my for-next branch at

	git://git.pengutronix.de/git/ukl/linux.git for-next

so it should make it into the next next. I target 3.14-rc1 to make it
in. The patches have a few runtime (but no compile-time) dependencies on
these patches:

	ARM: call of_clk_init from default time_init handler
	clocksource: Provide timekeeping for efm32 SoCs
	clk: new driver for efm32 SoC

All but the last patch are already in next, Mike promised to take the
last one. DEBUG_LL is broken without

	ARM: DEBUG_LL on efm32 SoCs

which already is in next, too. There are no device tree source files yet
as they have a compile time dependency on the clk patch above.

I'm not using multiarch here. I'm still unsure if it makes sense or not
to use it for v7-M, I'm sticking to not using it mainly because of
Russell's objections. Still the patch adding the platform is very small
now (just a trivial machine file, a defconfig and Makefile/Kconfig
adaptions) and is easily switched to multiarch if need be.

The complete and runnable tree is available in my master branch.

I suggest to let it go in via Russell as it has less potential to
conflict with arm-soc.

As the patches changed a bit I will repost them here. Note I called them
all "v4" even though patches 1 to 3 are really only (a resent of) v1.

Any feed back is welcome.

Best regards
Uwe

-- 
Pengutronix e.K.                           | Uwe Kleine-K?nig            |
Industrial Linux Solutions                 | http://www.pengutronix.de/  |

^ permalink raw reply	[flat|nested] 30+ messages in thread

* [PATCH v4 1/4] ARM: deprecate mach/timex.h for !ARCH_MULTIPLATFORM
  2013-11-04 10:58 [PATCH v4 0/4] Energy Micro efm32 support Uwe Kleine-König
@ 2013-11-04 11:00 ` Uwe Kleine-König
  2013-11-04 13:53   ` Arnd Bergmann
  2013-11-04 11:00 ` [PATCH v4 2/4] ARM: make mach-xyz/Makefile.boot optional " Uwe Kleine-König
                   ` (3 subsequent siblings)
  4 siblings, 1 reply; 30+ messages in thread
From: Uwe Kleine-König @ 2013-11-04 11:00 UTC (permalink / raw)
  To: linux-arm-kernel

While mach/timex.h isn't used for multi-platform builds it still is for
"normal" builds. As there are only three platforms that do something else
than only defining CLOCK_TICK_RATE (and these are probably easy to fix),
deprecate mach/timex.h and drop the corresponding files.

Signed-off-by: Uwe Kleine-K?nig <u.kleine-koenig@pengutronix.de>
---
 arch/arm/Kconfig                              |  9 +++++++
 arch/arm/include/asm/timex.h                  |  6 ++---
 arch/arm/mach-clps711x/include/mach/timex.h   |  2 --
 arch/arm/mach-davinci/include/mach/timex.h    | 22 -----------------
 arch/arm/mach-dove/include/mach/timex.h       |  9 -------
 arch/arm/mach-ebsa110/include/mach/timex.h    | 19 ---------------
 arch/arm/mach-ep93xx/include/mach/timex.h     |  5 ----
 arch/arm/mach-exynos/include/mach/timex.h     | 29 -----------------------
 arch/arm/mach-footbridge/include/mach/timex.h | 18 --------------
 arch/arm/mach-gemini/include/mach/timex.h     | 13 ----------
 arch/arm/mach-integrator/include/mach/timex.h | 26 --------------------
 arch/arm/mach-iop13xx/include/mach/timex.h    |  1 -
 arch/arm/mach-iop32x/include/mach/timex.h     |  6 -----
 arch/arm/mach-iop33x/include/mach/timex.h     |  6 -----
 arch/arm/mach-kirkwood/include/mach/timex.h   | 10 --------
 arch/arm/mach-lpc32xx/include/mach/timex.h    | 28 ----------------------
 arch/arm/mach-mmp/include/mach/timex.h        | 13 ----------
 arch/arm/mach-msm/include/mach/timex.h        | 21 -----------------
 arch/arm/mach-mv78xx0/include/mach/timex.h    |  9 -------
 arch/arm/mach-netx/include/mach/timex.h       | 20 ----------------
 arch/arm/mach-omap1/include/mach/timex.h      |  5 ----
 arch/arm/mach-omap2/include/mach/timex.h      |  5 ----
 arch/arm/mach-orion5x/include/mach/timex.h    | 11 ---------
 arch/arm/mach-pxa/include/mach/timex.h        | 34 ---------------------------
 arch/arm/mach-realview/include/mach/timex.h   | 23 ------------------
 arch/arm/mach-rpc/include/mach/timex.h        | 17 --------------
 arch/arm/mach-s3c24xx/include/mach/timex.h    | 24 -------------------
 arch/arm/mach-s3c64xx/include/mach/timex.h    | 24 -------------------
 arch/arm/mach-s5p64x0/include/mach/timex.h    | 27 ---------------------
 arch/arm/mach-s5pc100/include/mach/timex.h    | 24 -------------------
 arch/arm/mach-s5pv210/include/mach/timex.h    | 29 -----------------------
 arch/arm/mach-sa1100/include/mach/timex.h     | 12 ----------
 arch/arm/mach-shark/include/mach/timex.h      |  7 ------
 arch/arm/mach-shmobile/include/mach/timex.h   |  6 -----
 arch/arm/mach-spear/include/mach/timex.h      | 19 ---------------
 arch/arm/mach-versatile/include/mach/timex.h  | 23 ------------------
 arch/arm/mach-w90x900/include/mach/timex.h    | 25 --------------------
 arch/arm/plat-omap/include/plat/timex.h       | 33 --------------------------
 38 files changed, 12 insertions(+), 608 deletions(-)
 delete mode 100644 arch/arm/mach-clps711x/include/mach/timex.h
 delete mode 100644 arch/arm/mach-davinci/include/mach/timex.h
 delete mode 100644 arch/arm/mach-dove/include/mach/timex.h
 delete mode 100644 arch/arm/mach-ebsa110/include/mach/timex.h
 delete mode 100644 arch/arm/mach-ep93xx/include/mach/timex.h
 delete mode 100644 arch/arm/mach-exynos/include/mach/timex.h
 delete mode 100644 arch/arm/mach-footbridge/include/mach/timex.h
 delete mode 100644 arch/arm/mach-gemini/include/mach/timex.h
 delete mode 100644 arch/arm/mach-integrator/include/mach/timex.h
 delete mode 100644 arch/arm/mach-iop13xx/include/mach/timex.h
 delete mode 100644 arch/arm/mach-iop32x/include/mach/timex.h
 delete mode 100644 arch/arm/mach-iop33x/include/mach/timex.h
 delete mode 100644 arch/arm/mach-kirkwood/include/mach/timex.h
 delete mode 100644 arch/arm/mach-lpc32xx/include/mach/timex.h
 delete mode 100644 arch/arm/mach-mmp/include/mach/timex.h
 delete mode 100644 arch/arm/mach-msm/include/mach/timex.h
 delete mode 100644 arch/arm/mach-mv78xx0/include/mach/timex.h
 delete mode 100644 arch/arm/mach-netx/include/mach/timex.h
 delete mode 100644 arch/arm/mach-omap1/include/mach/timex.h
 delete mode 100644 arch/arm/mach-omap2/include/mach/timex.h
 delete mode 100644 arch/arm/mach-orion5x/include/mach/timex.h
 delete mode 100644 arch/arm/mach-pxa/include/mach/timex.h
 delete mode 100644 arch/arm/mach-realview/include/mach/timex.h
 delete mode 100644 arch/arm/mach-rpc/include/mach/timex.h
 delete mode 100644 arch/arm/mach-s3c24xx/include/mach/timex.h
 delete mode 100644 arch/arm/mach-s3c64xx/include/mach/timex.h
 delete mode 100644 arch/arm/mach-s5p64x0/include/mach/timex.h
 delete mode 100644 arch/arm/mach-s5pc100/include/mach/timex.h
 delete mode 100644 arch/arm/mach-s5pv210/include/mach/timex.h
 delete mode 100644 arch/arm/mach-sa1100/include/mach/timex.h
 delete mode 100644 arch/arm/mach-shark/include/mach/timex.h
 delete mode 100644 arch/arm/mach-shmobile/include/mach/timex.h
 delete mode 100644 arch/arm/mach-spear/include/mach/timex.h
 delete mode 100644 arch/arm/mach-versatile/include/mach/timex.h
 delete mode 100644 arch/arm/mach-w90x900/include/mach/timex.h
 delete mode 100644 arch/arm/plat-omap/include/plat/timex.h

diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig
index 1ad6fb6..7ae0615 100644
--- a/arch/arm/Kconfig
+++ b/arch/arm/Kconfig
@@ -260,6 +260,12 @@ config NEED_MACH_MEMORY_H
 	  definitions for this platform.  The need for mach/memory.h should
 	  be avoided when possible.
 
+config NEED_MACH_TIMEX_H
+	bool
+	help
+	  Select this when mach/timex.h is required to provide special
+	  definitions for this platform. This should be avoided when possible.
+
 config PHYS_OFFSET
 	hex "Physical address of main memory" if MMU
 	depends on !ARM_PATCH_PHYS_VIRT && !NEED_MACH_MEMORY_H
@@ -362,6 +368,7 @@ config ARCH_AT91
 	select IRQ_DOMAIN
 	select NEED_MACH_GPIO_H
 	select NEED_MACH_IO_H if PCCARD
+	select NEED_MACH_TIMEX_H
 	select PINCTRL
 	select PINCTRL_AT91 if USE_OF
 	help
@@ -488,6 +495,7 @@ config ARCH_IXP4XX
 	select GENERIC_CLOCKEVENTS
 	select MIGHT_HAVE_PCI
 	select NEED_MACH_IO_H
+	select NEED_MACH_TIMEX_H
 	select USB_EHCI_BIG_ENDIAN_DESC
 	select USB_EHCI_BIG_ENDIAN_MMIO
 	help
@@ -573,6 +581,7 @@ config ARCH_KS8695
 	select CPU_ARM922T
 	select GENERIC_CLOCKEVENTS
 	select NEED_MACH_MEMORY_H
+	select NEED_MACH_TIMEX_H
 	help
 	  Support for Micrel/Kendin KS8695 "Centaur" (ARM922T) based
 	  System-on-Chip devices.
diff --git a/arch/arm/include/asm/timex.h b/arch/arm/include/asm/timex.h
index 83f2aa8..5e65662 100644
--- a/arch/arm/include/asm/timex.h
+++ b/arch/arm/include/asm/timex.h
@@ -12,10 +12,10 @@
 #ifndef _ASMARM_TIMEX_H
 #define _ASMARM_TIMEX_H
 
-#ifdef CONFIG_ARCH_MULTIPLATFORM
-#define CLOCK_TICK_RATE 1000000
-#else
+#ifdef CONFIG_NEED_MACH_TIMEX_H
 #include <mach/timex.h>
+#else
+#define CLOCK_TICK_RATE 1000000
 #endif
 
 typedef unsigned long cycles_t;
diff --git a/arch/arm/mach-clps711x/include/mach/timex.h b/arch/arm/mach-clps711x/include/mach/timex.h
deleted file mode 100644
index de6fd19..0000000
--- a/arch/arm/mach-clps711x/include/mach/timex.h
+++ /dev/null
@@ -1,2 +0,0 @@
-/* Bogus value */
-#define CLOCK_TICK_RATE 512000
diff --git a/arch/arm/mach-davinci/include/mach/timex.h b/arch/arm/mach-davinci/include/mach/timex.h
deleted file mode 100644
index 9b88529..0000000
--- a/arch/arm/mach-davinci/include/mach/timex.h
+++ /dev/null
@@ -1,22 +0,0 @@
-/*
- * DaVinci timer defines
- *
- * Author: Kevin Hilman, MontaVista Software, Inc. <source@mvista.com>
- *
- * 2007 (c) MontaVista Software, Inc. This file is licensed under
- * the terms of the GNU General Public License version 2. This program
- * is licensed "as is" without any warranty of any kind, whether express
- * or implied.
- */
-#ifndef __ASM_ARCH_TIMEX_H
-#define __ASM_ARCH_TIMEX_H
-
-/*
- * Alert: Not all timers of the DaVinci family run at a frequency of 27MHz,
- * but we should be fine as long as CLOCK_TICK_RATE or LATCH (see include/
- * linux/jiffies.h) are not used directly in code. Currently none of the
- * code relevant to DaVinci platform depends on these values directly.
- */
-#define CLOCK_TICK_RATE 27000000
-
-#endif /* __ASM_ARCH_TIMEX_H__ */
diff --git a/arch/arm/mach-dove/include/mach/timex.h b/arch/arm/mach-dove/include/mach/timex.h
deleted file mode 100644
index 251d538..0000000
--- a/arch/arm/mach-dove/include/mach/timex.h
+++ /dev/null
@@ -1,9 +0,0 @@
-/*
- * arch/arm/mach-dove/include/mach/timex.h
- *
- * This file is licensed under the terms of the GNU General Public
- * License version 2.  This program is licensed "as is" without any
- * warranty of any kind, whether express or implied.
- */
-
-#define CLOCK_TICK_RATE		(100 * HZ)
diff --git a/arch/arm/mach-ebsa110/include/mach/timex.h b/arch/arm/mach-ebsa110/include/mach/timex.h
deleted file mode 100644
index 4fb43b2..0000000
--- a/arch/arm/mach-ebsa110/include/mach/timex.h
+++ /dev/null
@@ -1,19 +0,0 @@
-/*
- *  arch/arm/mach-ebsa110/include/mach/timex.h
- *
- *  Copyright (C) 1997, 1998 Russell King
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License version 2 as
- * published by the Free Software Foundation.
- *
- *  EBSA110 architecture timex specifications
- */
-
-/*
- * On the EBSA, the clock ticks at weird rates.
- * This is therefore not used to calculate the
- * divisor.
- */
-#define CLOCK_TICK_RATE		47894000
-
diff --git a/arch/arm/mach-ep93xx/include/mach/timex.h b/arch/arm/mach-ep93xx/include/mach/timex.h
deleted file mode 100644
index 6b3503b..0000000
--- a/arch/arm/mach-ep93xx/include/mach/timex.h
+++ /dev/null
@@ -1,5 +0,0 @@
-/*
- * arch/arm/mach-ep93xx/include/mach/timex.h
- */
-
-#define CLOCK_TICK_RATE		983040
diff --git a/arch/arm/mach-exynos/include/mach/timex.h b/arch/arm/mach-exynos/include/mach/timex.h
deleted file mode 100644
index 6d13875..0000000
--- a/arch/arm/mach-exynos/include/mach/timex.h
+++ /dev/null
@@ -1,29 +0,0 @@
-/* linux/arch/arm/mach-exynos4/include/mach/timex.h
- *
- * Copyright (c) 2010-2011 Samsung Electronics Co., Ltd.
- *		http://www.samsung.com
- *
- * Copyright (c) 2003-2010 Simtec Electronics
- *	Ben Dooks <ben@simtec.co.uk>
- *
- * Based on arch/arm/mach-s5p6442/include/mach/timex.h
- *
- * EXYNOS4 - time parameters
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License version 2 as
- * published by the Free Software Foundation.
-*/
-
-#ifndef __ASM_ARCH_TIMEX_H
-#define __ASM_ARCH_TIMEX_H __FILE__
-
-/* CLOCK_TICK_RATE needs to be evaluatable by the cpp, so making it
- * a variable is useless. It seems as long as we make our timers an
- * exact multiple of HZ, any value that makes a 1->1 correspondence
- * for the time conversion functions to/from jiffies is acceptable.
-*/
-
-#define CLOCK_TICK_RATE 12000000
-
-#endif /* __ASM_ARCH_TIMEX_H */
diff --git a/arch/arm/mach-footbridge/include/mach/timex.h b/arch/arm/mach-footbridge/include/mach/timex.h
deleted file mode 100644
index d0fea9d..0000000
--- a/arch/arm/mach-footbridge/include/mach/timex.h
+++ /dev/null
@@ -1,18 +0,0 @@
-/*
- *  arch/arm/mach-footbridge/include/mach/timex.h
- *
- *  Copyright (C) 1998 Russell King
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License version 2 as
- * published by the Free Software Foundation.
- *
- *  EBSA285 architecture timex specifications
- */
-
-/*
- * We assume a constant here; this satisfies the maths in linux/timex.h
- * and linux/time.h.  CLOCK_TICK_RATE is actually system dependent, but
- * this must be a constant.
- */
-#define CLOCK_TICK_RATE		(50000000/16)
diff --git a/arch/arm/mach-gemini/include/mach/timex.h b/arch/arm/mach-gemini/include/mach/timex.h
deleted file mode 100644
index dc5690b..0000000
--- a/arch/arm/mach-gemini/include/mach/timex.h
+++ /dev/null
@@ -1,13 +0,0 @@
-/*
- * Gemini timex specifications
- *
- * Copyright (C) 2008-2009 Paulius Zaleckas <paulius.zaleckas@teltonika.lt>
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- */
-
-/* When AHB bus frequency is 150MHz */
-#define CLOCK_TICK_RATE	38000000
diff --git a/arch/arm/mach-integrator/include/mach/timex.h b/arch/arm/mach-integrator/include/mach/timex.h
deleted file mode 100644
index 1dcb420..0000000
--- a/arch/arm/mach-integrator/include/mach/timex.h
+++ /dev/null
@@ -1,26 +0,0 @@
-/*
- *  arch/arm/mach-integrator/include/mach/timex.h
- *
- *  Integrator architecture timex specifications
- *
- *  Copyright (C) 1999 ARM Limited
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
- */
-
-/*
- * ??
- */
-#define CLOCK_TICK_RATE		(50000000 / 16)
diff --git a/arch/arm/mach-iop13xx/include/mach/timex.h b/arch/arm/mach-iop13xx/include/mach/timex.h
deleted file mode 100644
index 45fb274..0000000
--- a/arch/arm/mach-iop13xx/include/mach/timex.h
+++ /dev/null
@@ -1 +0,0 @@
-#define CLOCK_TICK_RATE (100 * HZ)
diff --git a/arch/arm/mach-iop32x/include/mach/timex.h b/arch/arm/mach-iop32x/include/mach/timex.h
deleted file mode 100644
index 7262ab8..0000000
--- a/arch/arm/mach-iop32x/include/mach/timex.h
+++ /dev/null
@@ -1,6 +0,0 @@
-/*
- * arch/arm/mach-iop32x/include/mach/timex.h
- *
- * IOP32x architecture timex specifications
- */
-#define CLOCK_TICK_RATE		(100 * HZ)
diff --git a/arch/arm/mach-iop33x/include/mach/timex.h b/arch/arm/mach-iop33x/include/mach/timex.h
deleted file mode 100644
index 54c5890..0000000
--- a/arch/arm/mach-iop33x/include/mach/timex.h
+++ /dev/null
@@ -1,6 +0,0 @@
-/*
- * arch/arm/mach-iop33x/include/mach/timex.h
- *
- * IOP3xx architecture timex specifications
- */
-#define CLOCK_TICK_RATE		(100 * HZ)
diff --git a/arch/arm/mach-kirkwood/include/mach/timex.h b/arch/arm/mach-kirkwood/include/mach/timex.h
deleted file mode 100644
index c923cd1..0000000
--- a/arch/arm/mach-kirkwood/include/mach/timex.h
+++ /dev/null
@@ -1,10 +0,0 @@
-/*
- * arch/arm/mach-kirkwood/include/mach/timex.h
- *
- * This file is licensed under the terms of the GNU General Public
- * License version 2.  This program is licensed "as is" without any
- * warranty of any kind, whether express or implied.
- */
-
-#define CLOCK_TICK_RATE		(100 * HZ)
-
diff --git a/arch/arm/mach-lpc32xx/include/mach/timex.h b/arch/arm/mach-lpc32xx/include/mach/timex.h
deleted file mode 100644
index 8d4066b..0000000
--- a/arch/arm/mach-lpc32xx/include/mach/timex.h
+++ /dev/null
@@ -1,28 +0,0 @@
-/*
- * arch/arm/mach-lpc32xx/include/mach/timex.h
- *
- * Author: Kevin Wells <kevin.wells@nxp.com>
- *
- * Copyright (C) 2010 NXP Semiconductors
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- */
-
-#ifndef __ASM_ARCH_TIMEX_H
-#define __ASM_ARCH_TIMEX_H
-
-/*
- * Rate in Hz of the main system oscillator. This value should match
- * the value 'MAIN_OSC_FREQ' in platform.h
- */
-#define CLOCK_TICK_RATE	13000000
-
-#endif
diff --git a/arch/arm/mach-mmp/include/mach/timex.h b/arch/arm/mach-mmp/include/mach/timex.h
deleted file mode 100644
index 70c9f1d..0000000
--- a/arch/arm/mach-mmp/include/mach/timex.h
+++ /dev/null
@@ -1,13 +0,0 @@
-/*
- * linux/arch/arm/mach-mmp/include/mach/timex.h
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License version 2 as
- * published by the Free Software Foundation.
- */
-
-#ifdef CONFIG_CPU_MMP2
-#define CLOCK_TICK_RATE		6500000
-#else
-#define CLOCK_TICK_RATE		3250000
-#endif
diff --git a/arch/arm/mach-msm/include/mach/timex.h b/arch/arm/mach-msm/include/mach/timex.h
deleted file mode 100644
index a62e6b2..0000000
--- a/arch/arm/mach-msm/include/mach/timex.h
+++ /dev/null
@@ -1,21 +0,0 @@
-/* arch/arm/mach-msm/include/mach/timex.h
- *
- * Copyright (C) 2007 Google, Inc.
- *
- * This software is licensed under the terms of the GNU General Public
- * License version 2, as published by the Free Software Foundation, and
- * may be copied, distributed, and modified under those terms.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- */
-
-#ifndef __ASM_ARCH_MSM_TIMEX_H
-#define __ASM_ARCH_MSM_TIMEX_H
-
-#define CLOCK_TICK_RATE		1000000
-
-#endif
diff --git a/arch/arm/mach-mv78xx0/include/mach/timex.h b/arch/arm/mach-mv78xx0/include/mach/timex.h
deleted file mode 100644
index 0e8c443..0000000
--- a/arch/arm/mach-mv78xx0/include/mach/timex.h
+++ /dev/null
@@ -1,9 +0,0 @@
-/*
- * arch/arm/mach-mv78xx0/include/mach/timex.h
- *
- * This file is licensed under the terms of the GNU General Public
- * License version 2.  This program is licensed "as is" without any
- * warranty of any kind, whether express or implied.
- */
-
-#define CLOCK_TICK_RATE		(100 * HZ)
diff --git a/arch/arm/mach-netx/include/mach/timex.h b/arch/arm/mach-netx/include/mach/timex.h
deleted file mode 100644
index 1120dd0..0000000
--- a/arch/arm/mach-netx/include/mach/timex.h
+++ /dev/null
@@ -1,20 +0,0 @@
-/*
- * arch/arm/mach-netx/include/mach/timex.h
- *
- * Copyright (C) 2005 Sascha Hauer <s.hauer@pengutronix.de>, Pengutronix
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License version 2
- * as published by the Free Software Foundation.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
- */
-
-#define CLOCK_TICK_RATE 100000000
diff --git a/arch/arm/mach-omap1/include/mach/timex.h b/arch/arm/mach-omap1/include/mach/timex.h
deleted file mode 100644
index 4793790..0000000
--- a/arch/arm/mach-omap1/include/mach/timex.h
+++ /dev/null
@@ -1,5 +0,0 @@
-/*
- * arch/arm/mach-omap1/include/mach/timex.h
- */
-
-#include <plat/timex.h>
diff --git a/arch/arm/mach-omap2/include/mach/timex.h b/arch/arm/mach-omap2/include/mach/timex.h
deleted file mode 100644
index de9f8fc..0000000
--- a/arch/arm/mach-omap2/include/mach/timex.h
+++ /dev/null
@@ -1,5 +0,0 @@
-/*
- * arch/arm/mach-omap2/include/mach/timex.h
- */
-
-#include <plat/timex.h>
diff --git a/arch/arm/mach-orion5x/include/mach/timex.h b/arch/arm/mach-orion5x/include/mach/timex.h
deleted file mode 100644
index 4c69820..0000000
--- a/arch/arm/mach-orion5x/include/mach/timex.h
+++ /dev/null
@@ -1,11 +0,0 @@
-/*
- * arch/arm/mach-orion5x/include/mach/timex.h
- *
- * Tzachi Perelstein <tzachi@marvell.com>
- *
- * This file is licensed under the terms of the GNU General Public
- * License version 2.  This program is licensed "as is" without any
- * warranty of any kind, whether express or implied.
- */
-
-#define CLOCK_TICK_RATE		(100 * HZ)
diff --git a/arch/arm/mach-pxa/include/mach/timex.h b/arch/arm/mach-pxa/include/mach/timex.h
deleted file mode 100644
index af6760a..0000000
--- a/arch/arm/mach-pxa/include/mach/timex.h
+++ /dev/null
@@ -1,34 +0,0 @@
-/*
- * arch/arm/mach-pxa/include/mach/timex.h
- *
- * Author:	Nicolas Pitre
- * Created:	Jun 15, 2001
- * Copyright:	MontaVista Software Inc.
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License version 2 as
- * published by the Free Software Foundation.
- */
-
-/* Various drivers are still using the constant of CLOCK_TICK_RATE, for
- * those drivers to at least work, the definition is provided here.
- *
- * NOTE: this is no longer accurate when multiple processors and boards
- * are selected, newer drivers should not depend on this any more.  Use
- * either the clocksource/clockevent or get this at run-time by calling
- * get_clock_tick_rate() (as defined in generic.c).
- */
-
-#if defined(CONFIG_PXA25x)
-/* PXA250/210 timer base */
-#define CLOCK_TICK_RATE 3686400
-#elif defined(CONFIG_PXA27x)
-/* PXA27x timer base */
-#ifdef CONFIG_MACH_MAINSTONE
-#define CLOCK_TICK_RATE 3249600
-#else
-#define CLOCK_TICK_RATE 3250000
-#endif
-#else
-#define CLOCK_TICK_RATE 3250000
-#endif
diff --git a/arch/arm/mach-realview/include/mach/timex.h b/arch/arm/mach-realview/include/mach/timex.h
deleted file mode 100644
index 4eeb069..0000000
--- a/arch/arm/mach-realview/include/mach/timex.h
+++ /dev/null
@@ -1,23 +0,0 @@
-/*
- *  arch/arm/mach-realview/include/mach/timex.h
- *
- *  RealView architecture timex specifications
- *
- *  Copyright (C) 2003 ARM Limited
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
- */
-
-#define CLOCK_TICK_RATE		(50000000 / 16)
diff --git a/arch/arm/mach-rpc/include/mach/timex.h b/arch/arm/mach-rpc/include/mach/timex.h
deleted file mode 100644
index dd75e73..0000000
--- a/arch/arm/mach-rpc/include/mach/timex.h
+++ /dev/null
@@ -1,17 +0,0 @@
-/*
- *  arch/arm/mach-rpc/include/mach/timex.h
- *
- *  Copyright (C) 1997, 1998 Russell King
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License version 2 as
- * published by the Free Software Foundation.
- *
- *  RiscPC architecture timex specifications
- */
-
-/*
- * On the RiscPC, the clock ticks at 2MHz.
- */
-#define CLOCK_TICK_RATE		2000000
-
diff --git a/arch/arm/mach-s3c24xx/include/mach/timex.h b/arch/arm/mach-s3c24xx/include/mach/timex.h
deleted file mode 100644
index fe9ca1f..0000000
--- a/arch/arm/mach-s3c24xx/include/mach/timex.h
+++ /dev/null
@@ -1,24 +0,0 @@
-/* arch/arm/mach-s3c2410/include/mach/timex.h
- *
- * Copyright (c) 2003-2005 Simtec Electronics
- *	Ben Dooks <ben@simtec.co.uk>
- *
- * S3C2410 - time parameters
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License version 2 as
- * published by the Free Software Foundation.
-*/
-
-#ifndef __ASM_ARCH_TIMEX_H
-#define __ASM_ARCH_TIMEX_H
-
-/* CLOCK_TICK_RATE needs to be evaluatable by the cpp, so making it
- * a variable is useless. It seems as long as we make our timers an
- * exact multiple of HZ, any value that makes a 1->1 correspondence
- * for the time conversion functions to/from jiffies is acceptable.
-*/
-
-#define CLOCK_TICK_RATE 12000000
-
-#endif /* __ASM_ARCH_TIMEX_H */
diff --git a/arch/arm/mach-s3c64xx/include/mach/timex.h b/arch/arm/mach-s3c64xx/include/mach/timex.h
deleted file mode 100644
index fb2e8cd..0000000
--- a/arch/arm/mach-s3c64xx/include/mach/timex.h
+++ /dev/null
@@ -1,24 +0,0 @@
-/* arch/arm/mach-s3c64xx/include/mach/timex.h
- *
- * Copyright (c) 2003-2005 Simtec Electronics
- *	Ben Dooks <ben@simtec.co.uk>
- *
- * S3C6400 - time parameters
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License version 2 as
- * published by the Free Software Foundation.
-*/
-
-#ifndef __ASM_ARCH_TIMEX_H
-#define __ASM_ARCH_TIMEX_H
-
-/* CLOCK_TICK_RATE needs to be evaluatable by the cpp, so making it
- * a variable is useless. It seems as long as we make our timers an
- * exact multiple of HZ, any value that makes a 1->1 correspondence
- * for the time conversion functions to/from jiffies is acceptable.
-*/
-
-#define CLOCK_TICK_RATE 12000000
-
-#endif /* __ASM_ARCH_TIMEX_H */
diff --git a/arch/arm/mach-s5p64x0/include/mach/timex.h b/arch/arm/mach-s5p64x0/include/mach/timex.h
deleted file mode 100644
index 4b91faa..0000000
--- a/arch/arm/mach-s5p64x0/include/mach/timex.h
+++ /dev/null
@@ -1,27 +0,0 @@
-/* linux/arch/arm/mach-s5p64x0/include/mach/timex.h
- *
- * Copyright (c) 2010 Samsung Electronics Co., Ltd.
- *		http://www.samsung.com
- *
- * Copyright (c) 2003-2005 Simtec Electronics
- *	Ben Dooks <ben@simtec.co.uk>
- *
- * S5P64X0 - time parameters
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License version 2 as
- * published by the Free Software Foundation.
-*/
-
-#ifndef __ASM_ARCH_TIMEX_H
-#define __ASM_ARCH_TIMEX_H
-
-/* CLOCK_TICK_RATE needs to be evaluatable by the cpp, so making it
- * a variable is useless. It seems as long as we make our timers an
- * exact multiple of HZ, any value that makes a 1->1 correspondence
- * for the time conversion functions to/from jiffies is acceptable.
-*/
-
-#define CLOCK_TICK_RATE 12000000
-
-#endif /* __ASM_ARCH_TIMEX_H */
diff --git a/arch/arm/mach-s5pc100/include/mach/timex.h b/arch/arm/mach-s5pc100/include/mach/timex.h
deleted file mode 100644
index 47ffb17..0000000
--- a/arch/arm/mach-s5pc100/include/mach/timex.h
+++ /dev/null
@@ -1,24 +0,0 @@
-/* arch/arm/mach-s5pc100/include/mach/timex.h
- *
- * Copyright (c) 2003-2005 Simtec Electronics
- *	Ben Dooks <ben@simtec.co.uk>
- *
- * S3C6400 - time parameters
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License version 2 as
- * published by the Free Software Foundation.
-*/
-
-#ifndef __ASM_ARCH_TIMEX_H
-#define __ASM_ARCH_TIMEX_H
-
-/* CLOCK_TICK_RATE needs to be evaluatable by the cpp, so making it
- * a variable is useless. It seems as long as we make our timers an
- * exact multiple of HZ, any value that makes a 1->1 correspondence
- * for the time conversion functions to/from jiffies is acceptable.
-*/
-
-#define CLOCK_TICK_RATE 12000000
-
-#endif /* __ASM_ARCH_TIMEX_H */
diff --git a/arch/arm/mach-s5pv210/include/mach/timex.h b/arch/arm/mach-s5pv210/include/mach/timex.h
deleted file mode 100644
index 73dc854..0000000
--- a/arch/arm/mach-s5pv210/include/mach/timex.h
+++ /dev/null
@@ -1,29 +0,0 @@
-/* linux/arch/arm/mach-s5pv210/include/mach/timex.h
- *
- * Copyright (c) 2003-2010 Simtec Electronics
- *	Ben Dooks <ben@simtec.co.uk>
- *
- * Copyright (c) 2010 Samsung Electronics Co., Ltd.
- *		http://www.samsung.com/
- *
- * Based on arch/arm/mach-s5p6442/include/mach/timex.h
- *
- * S5PV210 - time parameters
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License version 2 as
- * published by the Free Software Foundation.
-*/
-
-#ifndef __ASM_ARCH_TIMEX_H
-#define __ASM_ARCH_TIMEX_H __FILE__
-
-/* CLOCK_TICK_RATE needs to be evaluatable by the cpp, so making it
- * a variable is useless. It seems as long as we make our timers an
- * exact multiple of HZ, any value that makes a 1->1 correspondence
- * for the time conversion functions to/from jiffies is acceptable.
-*/
-
-#define CLOCK_TICK_RATE 12000000
-
-#endif /* __ASM_ARCH_TIMEX_H */
diff --git a/arch/arm/mach-sa1100/include/mach/timex.h b/arch/arm/mach-sa1100/include/mach/timex.h
deleted file mode 100644
index 7a5d017..0000000
--- a/arch/arm/mach-sa1100/include/mach/timex.h
+++ /dev/null
@@ -1,12 +0,0 @@
-/*
- * arch/arm/mach-sa1100/include/mach/timex.h
- *
- * SA1100 architecture timex specifications
- *
- * Copyright (C) 1998 
- */
-
-/*
- * SA1100 timer
- */
-#define CLOCK_TICK_RATE		3686400
diff --git a/arch/arm/mach-shark/include/mach/timex.h b/arch/arm/mach-shark/include/mach/timex.h
deleted file mode 100644
index bb6eeae..0000000
--- a/arch/arm/mach-shark/include/mach/timex.h
+++ /dev/null
@@ -1,7 +0,0 @@
-/*
- * arch/arm/mach-shark/include/mach/timex.h
- *
- * by Alexander Schulz
- */
-
-#define CLOCK_TICK_RATE 1193180
diff --git a/arch/arm/mach-shmobile/include/mach/timex.h b/arch/arm/mach-shmobile/include/mach/timex.h
deleted file mode 100644
index ae0d8d8..0000000
--- a/arch/arm/mach-shmobile/include/mach/timex.h
+++ /dev/null
@@ -1,6 +0,0 @@
-#ifndef __ASM_MACH_TIMEX_H
-#define __ASM_MACH_TIMEX_H
-
-#define CLOCK_TICK_RATE		1193180 /* unused i8253 PIT value */
-
-#endif /* __ASM_MACH_TIMEX_H */
diff --git a/arch/arm/mach-spear/include/mach/timex.h b/arch/arm/mach-spear/include/mach/timex.h
deleted file mode 100644
index ef95e5b..0000000
--- a/arch/arm/mach-spear/include/mach/timex.h
+++ /dev/null
@@ -1,19 +0,0 @@
-/*
- * arch/arm/plat-spear/include/plat/timex.h
- *
- * SPEAr platform specific timex definitions
- *
- * Copyright (C) 2009 ST Microelectronics
- * Viresh Kumar <viresh.linux@gmail.com>
- *
- * This file is licensed under the terms of the GNU General Public
- * License version 2. This program is licensed "as is" without any
- * warranty of any kind, whether express or implied.
- */
-
-#ifndef __PLAT_TIMEX_H
-#define __PLAT_TIMEX_H
-
-#define CLOCK_TICK_RATE			48000000
-
-#endif /* __PLAT_TIMEX_H */
diff --git a/arch/arm/mach-versatile/include/mach/timex.h b/arch/arm/mach-versatile/include/mach/timex.h
deleted file mode 100644
index 426199b..0000000
--- a/arch/arm/mach-versatile/include/mach/timex.h
+++ /dev/null
@@ -1,23 +0,0 @@
-/*
- *  arch/arm/mach-versatile/include/mach/timex.h
- *
- *  Versatile architecture timex specifications
- *
- *  Copyright (C) 2003 ARM Limited
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
- */
-
-#define CLOCK_TICK_RATE		(50000000 / 16)
diff --git a/arch/arm/mach-w90x900/include/mach/timex.h b/arch/arm/mach-w90x900/include/mach/timex.h
deleted file mode 100644
index 164dce0..0000000
--- a/arch/arm/mach-w90x900/include/mach/timex.h
+++ /dev/null
@@ -1,25 +0,0 @@
-/*
- * arch/arm/mach-w90x900/include/mach/timex.h
- *
- * Copyright (c) 2008 Nuvoton technology corporation
- * All rights reserved.
- *
- * Wan ZongShun <mcuos.com@gmail.com>
- *
- * Based on arch/arm/mach-s3c2410/include/mach/timex.h
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- */
-
-#ifndef __ASM_ARCH_TIMEX_H
-#define __ASM_ARCH_TIMEX_H
-
-/* CLOCK_TICK_RATE Now, I don't use it. */
-
-#define CLOCK_TICK_RATE 15000000
-
-#endif /* __ASM_ARCH_TIMEX_H */
diff --git a/arch/arm/plat-omap/include/plat/timex.h b/arch/arm/plat-omap/include/plat/timex.h
deleted file mode 100644
index e27d2da..0000000
--- a/arch/arm/plat-omap/include/plat/timex.h
+++ /dev/null
@@ -1,33 +0,0 @@
-/*
- * arch/arm/plat-omap/include/mach/timex.h
- *
- * Copyright (C) 2000 RidgeRun, Inc.
- * Author:  Greg Lonnon <glonnon@ridgerun.com>
- *
- * This program is free software; you can redistribute it and/or modify it
- * under the terms of the GNU General Public License as published by the
- * Free Software Foundation; either version 2 of the License, or (at your
- * option) any later version.
- *
- * THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESS OR IMPLIED
- * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
- * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN
- * NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
- * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
- * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
- * USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
- * ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
- * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- *
- * You should have received a copy of the  GNU General Public License along
- * with this program; if not, write  to the Free Software Foundation, Inc.,
- * 675 Mass Ave, Cambridge, MA 02139, USA.
- */
-
-#if !defined(__ASM_ARCH_OMAP_TIMEX_H)
-#define __ASM_ARCH_OMAP_TIMEX_H
-
-#define CLOCK_TICK_RATE		(HZ * 100000UL)
-
-#endif /* __ASM_ARCH_OMAP_TIMEX_H */
-- 
1.8.4.rc3

^ permalink raw reply related	[flat|nested] 30+ messages in thread

* [PATCH v4 2/4] ARM: make mach-xyz/Makefile.boot optional for !ARCH_MULTIPLATFORM
  2013-11-04 10:58 [PATCH v4 0/4] Energy Micro efm32 support Uwe Kleine-König
  2013-11-04 11:00 ` [PATCH v4 1/4] ARM: deprecate mach/timex.h for !ARCH_MULTIPLATFORM Uwe Kleine-König
@ 2013-11-04 11:00 ` Uwe Kleine-König
  2013-11-11 19:35   ` Olof Johansson
  2013-11-04 11:00 ` [PATCH v4 3/4] ARM: v7-M: drop using mach/entry-macro.S Uwe Kleine-König
                   ` (2 subsequent siblings)
  4 siblings, 1 reply; 30+ messages in thread
From: Uwe Kleine-König @ 2013-11-04 11:00 UTC (permalink / raw)
  To: linux-arm-kernel

Makefile.boot is supposed to define zreladdr-y, params_phys-y and
initrd_phys-y. The first one is only needed in the absence of AUTO_ZRELADDR
and when building a zImage. The latters are only needed for bootp stuff.
So ignore errors on including Makefile.boot and error out in the targets
that need the corresponding settings.

This makes it unnecessary to create dummy Makefile.boot files.

Signed-off-by: Uwe Kleine-K?nig <u.kleine-koenig@pengutronix.de>
---
 arch/arm/boot/Makefile | 13 ++++++++++++-
 1 file changed, 12 insertions(+), 1 deletion(-)

diff --git a/arch/arm/boot/Makefile b/arch/arm/boot/Makefile
index 84aa2ca..44203b3 100644
--- a/arch/arm/boot/Makefile
+++ b/arch/arm/boot/Makefile
@@ -12,7 +12,7 @@
 #
 
 ifneq ($(MACHINE),)
-include $(srctree)/$(MACHINE)/Makefile.boot
+sinclude $(srctree)/$(MACHINE)/Makefile.boot
 endif
 
 # Note: the following conditions must always be true:
@@ -51,10 +51,19 @@ $(obj)/Image: vmlinux FORCE
 $(obj)/compressed/vmlinux: $(obj)/Image FORCE
 	$(Q)$(MAKE) $(build)=$(obj)/compressed $@
 
+ifneq ($(CONFIG_AUTO_ZRELADDR)$(ZRELADDR),)
+
 $(obj)/zImage:	$(obj)/compressed/vmlinux FORCE
 	$(call if_changed,objcopy)
 	@$(kecho) '  Kernel: $@ is ready'
 
+else
+
+$(obj)/zImage: FORCE
+	@echo 'Either enable CONFIG_AUTO_ZRELADDR or provide zreladdr-y in Makefile.boot'
+	@false
+
+endif
 endif
 
 ifneq ($(LOADADDR),)
@@ -81,6 +90,8 @@ $(obj)/uImage:	$(obj)/zImage FORCE
 	@$(kecho) '  Image $@ is ready'
 
 $(obj)/bootp/bootp: $(obj)/zImage initrd FORCE
+	@test -n "$(PARAMS_PHYS)" || \
+	(echo This machine does not support BOOTP; exit -1)
 	$(Q)$(MAKE) $(build)=$(obj)/bootp $@
 	@:
 
-- 
1.8.4.rc3

^ permalink raw reply related	[flat|nested] 30+ messages in thread

* [PATCH v4 3/4] ARM: v7-M: drop using mach/entry-macro.S
  2013-11-04 10:58 [PATCH v4 0/4] Energy Micro efm32 support Uwe Kleine-König
  2013-11-04 11:00 ` [PATCH v4 1/4] ARM: deprecate mach/timex.h for !ARCH_MULTIPLATFORM Uwe Kleine-König
  2013-11-04 11:00 ` [PATCH v4 2/4] ARM: make mach-xyz/Makefile.boot optional " Uwe Kleine-König
@ 2013-11-04 11:00 ` Uwe Kleine-König
  2013-11-11 19:35   ` Olof Johansson
  2013-11-04 11:00 ` [PATCH v4 4/4] ARM: new platform for Energy Micro's EFM32 Cortex-M3 SoCs Uwe Kleine-König
  2013-11-19 10:20 ` [PATCH v4 0/4] Energy Micro efm32 support Uwe Kleine-König
  4 siblings, 1 reply; 30+ messages in thread
From: Uwe Kleine-König @ 2013-11-04 11:00 UTC (permalink / raw)
  To: linux-arm-kernel

The only v7-M platform only has some unused stubs in its
mach/entry-macro.S file. So don't include it which allows efm32 to drop
the file.

Signed-off-by: Uwe Kleine-K?nig <u.kleine-koenig@pengutronix.de>
---
 arch/arm/kernel/entry-v7m.S | 2 --
 1 file changed, 2 deletions(-)

diff --git a/arch/arm/kernel/entry-v7m.S b/arch/arm/kernel/entry-v7m.S
index 52b2643..2260f18 100644
--- a/arch/arm/kernel/entry-v7m.S
+++ b/arch/arm/kernel/entry-v7m.S
@@ -14,8 +14,6 @@
 #include <asm/thread_notify.h>
 #include <asm/v7m.h>
 
-#include <mach/entry-macro.S>
-
 #include "entry-header.S"
 
 #ifdef CONFIG_TRACE_IRQFLAGS
-- 
1.8.4.rc3

^ permalink raw reply related	[flat|nested] 30+ messages in thread

* [PATCH v4 4/4] ARM: new platform for Energy Micro's EFM32 Cortex-M3 SoCs
  2013-11-04 10:58 [PATCH v4 0/4] Energy Micro efm32 support Uwe Kleine-König
                   ` (2 preceding siblings ...)
  2013-11-04 11:00 ` [PATCH v4 3/4] ARM: v7-M: drop using mach/entry-macro.S Uwe Kleine-König
@ 2013-11-04 11:00 ` Uwe Kleine-König
  2013-11-04 13:56   ` Arnd Bergmann
  2013-11-19 10:20 ` [PATCH v4 0/4] Energy Micro efm32 support Uwe Kleine-König
  4 siblings, 1 reply; 30+ messages in thread
From: Uwe Kleine-König @ 2013-11-04 11:00 UTC (permalink / raw)
  To: linux-arm-kernel

Signed-off-by: Uwe Kleine-K?nig <u.kleine-koenig@pengutronix.de>
---
 arch/arm/Kconfig                 |  19 +++++++-
 arch/arm/Makefile                |   1 +
 arch/arm/configs/efm32_defconfig | 102 +++++++++++++++++++++++++++++++++++++++
 arch/arm/mach-efm32/Makefile     |   1 +
 arch/arm/mach-efm32/dtmachine.c  |  15 ++++++
 5 files changed, 137 insertions(+), 1 deletion(-)
 create mode 100644 arch/arm/configs/efm32_defconfig
 create mode 100644 arch/arm/mach-efm32/Makefile
 create mode 100644 arch/arm/mach-efm32/dtmachine.c

diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig
index 7ae0615..d8145fe 100644
--- a/arch/arm/Kconfig
+++ b/arch/arm/Kconfig
@@ -413,6 +413,23 @@ config ARCH_EBSA110
 	  Ethernet interface, two PCMCIA sockets, two serial ports and a
 	  parallel port.
 
+config ARCH_EFM32
+	bool "Energy Micro efm32"
+	depends on !MMU
+	select ARCH_REQUIRE_GPIOLIB
+	select ARM_NVIC
+	select CLKSRC_MMIO
+	select CLKSRC_OF
+	select COMMON_CLK
+	select CPU_V7M
+	select GENERIC_CLOCKEVENTS
+	select NO_DMA
+	select NO_IOPORT
+	select SPARSE_IRQ
+	select USE_OF
+	help
+	  Support for Energy Micro's (now Silicon Labs) efm32 processors.
+
 config ARCH_EP93XX
 	bool "EP93xx-based"
 	select ARCH_HAS_HOLES_MEMORYMODEL
@@ -1812,7 +1829,7 @@ config FORCE_MAX_ZONEORDER
 	int "Maximum zone order" if ARCH_SHMOBILE
 	range 11 64 if ARCH_SHMOBILE
 	default "12" if SOC_AM33XX
-	default "9" if SA1111
+	default "9" if SA1111 || ARCH_EFM32
 	default "11"
 	help
 	  The kernel memory allocator divides physically contiguous memory
diff --git a/arch/arm/Makefile b/arch/arm/Makefile
index a37a50f..bee8be4 100644
--- a/arch/arm/Makefile
+++ b/arch/arm/Makefile
@@ -152,6 +152,7 @@ machine-$(CONFIG_ARCH_CNS3XXX)		+= cns3xxx
 machine-$(CONFIG_ARCH_DAVINCI)		+= davinci
 machine-$(CONFIG_ARCH_DOVE)		+= dove
 machine-$(CONFIG_ARCH_EBSA110)		+= ebsa110
+machine-$(CONFIG_ARCH_EFM32)		+= efm32
 machine-$(CONFIG_ARCH_EP93XX)		+= ep93xx
 machine-$(CONFIG_ARCH_EXYNOS)		+= exynos
 machine-$(CONFIG_ARCH_GEMINI)		+= gemini
diff --git a/arch/arm/configs/efm32_defconfig b/arch/arm/configs/efm32_defconfig
new file mode 100644
index 0000000..f59fffb
--- /dev/null
+++ b/arch/arm/configs/efm32_defconfig
@@ -0,0 +1,102 @@
+CONFIG_HIGH_RES_TIMERS=y
+CONFIG_LOG_BUF_SHIFT=12
+CONFIG_CC_OPTIMIZE_FOR_SIZE=y
+# CONFIG_UID16 is not set
+# CONFIG_BASE_FULL is not set
+# CONFIG_FUTEX is not set
+# CONFIG_EPOLL is not set
+# CONFIG_SIGNALFD is not set
+# CONFIG_EVENTFD is not set
+# CONFIG_AIO is not set
+CONFIG_EMBEDDED=y
+# CONFIG_VM_EVENT_COUNTERS is not set
+# CONFIG_SLUB_DEBUG is not set
+# CONFIG_LBDAF is not set
+# CONFIG_BLK_DEV_BSG is not set
+# CONFIG_IOSCHED_DEADLINE is not set
+# CONFIG_IOSCHED_CFQ is not set
+# CONFIG_MMU is not set
+CONFIG_ARCH_EFM32=y
+# CONFIG_KUSER_HELPERS is not set
+CONFIG_SET_MEM_PARAM=y
+CONFIG_DRAM_BASE=0x88000000
+CONFIG_DRAM_SIZE=0x00400000
+CONFIG_FLASH_MEM_BASE=0x8c000000
+CONFIG_FLASH_SIZE=0x01000000
+CONFIG_PREEMPT=y
+CONFIG_ZBOOT_ROM_TEXT=0x0
+CONFIG_ZBOOT_ROM_BSS=0x0
+CONFIG_XIP_KERNEL=y
+CONFIG_XIP_PHYS_ADDR=0x8c000000
+CONFIG_BINFMT_FLAT=y
+CONFIG_BINFMT_SHARED_FLAT=y
+# CONFIG_COREDUMP is not set
+CONFIG_NET=y
+CONFIG_PACKET=y
+CONFIG_UNIX=y
+CONFIG_INET=y
+# CONFIG_INET_XFRM_MODE_TRANSPORT is not set
+# CONFIG_INET_XFRM_MODE_TUNNEL is not set
+# CONFIG_INET_XFRM_MODE_BEET is not set
+# CONFIG_INET_LRO is not set
+# CONFIG_INET_DIAG is not set
+# CONFIG_IPV6 is not set
+# CONFIG_WIRELESS is not set
+CONFIG_DEVTMPFS=y
+CONFIG_DEVTMPFS_MOUNT=y
+# CONFIG_FW_LOADER is not set
+CONFIG_MTD=y
+CONFIG_MTD_BLOCK_RO=y
+CONFIG_MTD_ROM=y
+CONFIG_MTD_UCLINUX=y
+CONFIG_PROC_DEVICETREE=y
+# CONFIG_BLK_DEV is not set
+CONFIG_NETDEVICES=y
+# CONFIG_NET_VENDOR_ARC is not set
+# CONFIG_NET_CADENCE is not set
+# CONFIG_NET_VENDOR_BROADCOM is not set
+# CONFIG_NET_VENDOR_CIRRUS is not set
+# CONFIG_NET_VENDOR_FARADAY is not set
+# CONFIG_NET_VENDOR_INTEL is not set
+# CONFIG_NET_VENDOR_MARVELL is not set
+CONFIG_KS8851=y
+# CONFIG_NET_VENDOR_MICROCHIP is not set
+# CONFIG_NET_VENDOR_NATSEMI is not set
+# CONFIG_NET_VENDOR_SEEQ is not set
+# CONFIG_NET_VENDOR_SMSC is not set
+# CONFIG_NET_VENDOR_STMICRO is not set
+# CONFIG_NET_VENDOR_VIA is not set
+# CONFIG_NET_VENDOR_WIZNET is not set
+# CONFIG_WLAN is not set
+# CONFIG_INPUT is not set
+# CONFIG_SERIO is not set
+# CONFIG_VT is not set
+# CONFIG_UNIX98_PTYS is not set
+# CONFIG_LEGACY_PTYS is not set
+CONFIG_SERIAL_NONSTANDARD=y
+# CONFIG_DEVKMEM is not set
+CONFIG_SERIAL_EFM32_UART=y
+CONFIG_SERIAL_EFM32_UART_CONSOLE=y
+# CONFIG_HW_RANDOM is not set
+CONFIG_SPI=y
+CONFIG_SPI_EFM32=y
+CONFIG_GPIO_SYSFS=y
+# CONFIG_USB_SUPPORT is not set
+CONFIG_MMC=y
+CONFIG_MMC_SPI=y
+# CONFIG_IOMMU_SUPPORT is not set
+CONFIG_EXT2_FS=y
+# CONFIG_FILE_LOCKING is not set
+# CONFIG_DNOTIFY is not set
+# CONFIG_INOTIFY_USER is not set
+CONFIG_ROMFS_FS=y
+CONFIG_ROMFS_BACKED_BY_MTD=y
+# CONFIG_NETWORK_FILESYSTEMS is not set
+CONFIG_PRINTK_TIME=y
+CONFIG_DEBUG_INFO=y
+# CONFIG_ENABLE_WARN_DEPRECATED is not set
+# CONFIG_ENABLE_MUST_CHECK is not set
+CONFIG_MAGIC_SYSRQ=y
+# CONFIG_SCHED_DEBUG is not set
+# CONFIG_DEBUG_BUGVERBOSE is not set
+# CONFIG_FTRACE is not set
diff --git a/arch/arm/mach-efm32/Makefile b/arch/arm/mach-efm32/Makefile
new file mode 100644
index 0000000..3a74af7
--- /dev/null
+++ b/arch/arm/mach-efm32/Makefile
@@ -0,0 +1 @@
+obj-y += dtmachine.o
diff --git a/arch/arm/mach-efm32/dtmachine.c b/arch/arm/mach-efm32/dtmachine.c
new file mode 100644
index 0000000..2367495
--- /dev/null
+++ b/arch/arm/mach-efm32/dtmachine.c
@@ -0,0 +1,15 @@
+#include <linux/kernel.h>
+
+#include <asm/v7m.h>
+
+#include <asm/mach/arch.h>
+
+static const char *const efm32gg_compat[] __initconst = {
+	"efm32,dk3750",
+	NULL
+};
+
+DT_MACHINE_START(EFM32DT, "EFM32 (Device Tree Support)")
+	.dt_compat = efm32gg_compat,
+	.restart = armv7m_restart,
+MACHINE_END
-- 
1.8.4.rc3

^ permalink raw reply related	[flat|nested] 30+ messages in thread

* [PATCH v4 1/4] ARM: deprecate mach/timex.h for !ARCH_MULTIPLATFORM
  2013-11-04 11:00 ` [PATCH v4 1/4] ARM: deprecate mach/timex.h for !ARCH_MULTIPLATFORM Uwe Kleine-König
@ 2013-11-04 13:53   ` Arnd Bergmann
  2013-11-05  8:33     ` Uwe Kleine-König
  0 siblings, 1 reply; 30+ messages in thread
From: Arnd Bergmann @ 2013-11-04 13:53 UTC (permalink / raw)
  To: linux-arm-kernel

On Monday 04 November 2013, Uwe Kleine-K?nig wrote:
> While mach/timex.h isn't used for multi-platform builds it still is for
> "normal" builds. As there are only three platforms that do something else
> than only defining CLOCK_TICK_RATE (and these are probably easy to fix),
> deprecate mach/timex.h and drop the corresponding files.
> 
> Signed-off-by: Uwe Kleine-K?nig <u.kleine-koenig@pengutronix.de>

+LinusW, +rmk

I don't think we can do this (yet): IIRC, CLOCK_TICK_RATE is required
at least for platforms using CONFIG_ARCH_USES_GETTIMEOFFSET (which
is not allowed for multiplatform).

	Arnd

^ permalink raw reply	[flat|nested] 30+ messages in thread

* [PATCH v4 4/4] ARM: new platform for Energy Micro's EFM32 Cortex-M3 SoCs
  2013-11-04 11:00 ` [PATCH v4 4/4] ARM: new platform for Energy Micro's EFM32 Cortex-M3 SoCs Uwe Kleine-König
@ 2013-11-04 13:56   ` Arnd Bergmann
  2013-11-05  9:48     ` Uwe Kleine-König
  0 siblings, 1 reply; 30+ messages in thread
From: Arnd Bergmann @ 2013-11-04 13:56 UTC (permalink / raw)
  To: linux-arm-kernel

On Monday 04 November 2013, Uwe Kleine-K?nig wrote:
> Signed-off-by: Uwe Kleine-K?nig <u.kleine-koenig@pengutronix.de>
> ---
>  arch/arm/Kconfig                 |  19 +++++++-
>  arch/arm/Makefile                |   1 +
>  arch/arm/configs/efm32_defconfig | 102 +++++++++++++++++++++++++++++++++++++++
>  arch/arm/mach-efm32/Makefile     |   1 +
>  arch/arm/mach-efm32/dtmachine.c  |  15 ++++++
>  5 files changed, 137 insertions(+), 1 deletion(-)
>  create mode 100644 arch/arm/configs/efm32_defconfig
>  create mode 100644 arch/arm/mach-efm32/Makefile
>  create mode 100644 arch/arm/mach-efm32/dtmachine.c
> 
> diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig
> index 7ae0615..d8145fe 100644
> --- a/arch/arm/Kconfig
> +++ b/arch/arm/Kconfig
> @@ -413,6 +413,23 @@ config ARCH_EBSA110
>           Ethernet interface, two PCMCIA sockets, two serial ports and a
>           parallel port.
>  
> +config ARCH_EFM32
> +       bool "Energy Micro efm32"
> +       depends on !MMU
> +       select ARCH_REQUIRE_GPIOLIB
> +       select ARM_NVIC
> +       select CLKSRC_MMIO
> +       select CLKSRC_OF
> +       select COMMON_CLK
> +       select CPU_V7M
> +       select GENERIC_CLOCKEVENTS
> +       select NO_DMA
> +       select NO_IOPORT
> +       select SPARSE_IRQ
> +       select USE_OF
> +       help
> +         Support for Energy Micro's (now Silicon Labs) efm32 processors.
> +

It would be good to have at least in either the changeset description or the Kconfig
text (or both) some description about the platform: which SoCs have been tested,
what is this platform used for, where can one find data sheets etc.

	Arnd

^ permalink raw reply	[flat|nested] 30+ messages in thread

* [PATCH v4 1/4] ARM: deprecate mach/timex.h for !ARCH_MULTIPLATFORM
  2013-11-04 13:53   ` Arnd Bergmann
@ 2013-11-05  8:33     ` Uwe Kleine-König
  2013-11-05  9:03       ` [PATCH] ARM: u300: fix timekeeping when periodic mode is used Uwe Kleine-König
  2013-11-05  9:12       ` [PATCH v5 1/4] ARM: deprecate mach/timex.h for !ARCH_MULTIPLATFORM Uwe Kleine-König
  0 siblings, 2 replies; 30+ messages in thread
From: Uwe Kleine-König @ 2013-11-05  8:33 UTC (permalink / raw)
  To: linux-arm-kernel

On Mon, Nov 04, 2013 at 02:53:09PM +0100, Arnd Bergmann wrote:
> On Monday 04 November 2013, Uwe Kleine-K?nig wrote:
> > While mach/timex.h isn't used for multi-platform builds it still is for
> > "normal" builds. As there are only three platforms that do something else
> > than only defining CLOCK_TICK_RATE (and these are probably easy to fix),
> > deprecate mach/timex.h and drop the corresponding files.
> > 
> > Signed-off-by: Uwe Kleine-K?nig <u.kleine-koenig@pengutronix.de>
> 
> +LinusW, +rmk
> 
> I don't think we can do this (yet): IIRC, CLOCK_TICK_RATE is required
> at least for platforms using CONFIG_ARCH_USES_GETTIMEOFFSET (which
> is not allowed for multiplatform).
Hmm, I indeed missed some uses, i.e. ep93xx, mmp, netx, sa1100, u300,
ixp4xx and rpc use CLOCK_TICK_RATE (or LATCH). Also
drivers/rtc/rtc-pxa.c uses CLOCK_TICK_RATE. I didn't find that
ARCH_USES_GETTIMEOFFSET implies a use of CLOCK_TICK_RATE though. Did I
miss something?

For now I took the patch out of my next branch and will rework it to at
least let the above listed platforms also continue to use timex.h.

Best regards
Uwe

-- 
Pengutronix e.K.                           | Uwe Kleine-K?nig            |
Industrial Linux Solutions                 | http://www.pengutronix.de/  |

^ permalink raw reply	[flat|nested] 30+ messages in thread

* [PATCH] ARM: u300: fix timekeeping when periodic mode is used
  2013-11-05  8:33     ` Uwe Kleine-König
@ 2013-11-05  9:03       ` Uwe Kleine-König
  2013-11-05  9:44         ` Linus Walleij
  2013-11-05  9:12       ` [PATCH v5 1/4] ARM: deprecate mach/timex.h for !ARCH_MULTIPLATFORM Uwe Kleine-König
  1 sibling, 1 reply; 30+ messages in thread
From: Uwe Kleine-König @ 2013-11-05  9:03 UTC (permalink / raw)
  To: linux-arm-kernel

To determine the value to write to the hardware's timer counter register
the symbol CLOCK_TICK_RATE is used. This value is a dummy value on u300
though. So instead use the clock rate that is used for oneshot mode.

Signed-off-by: Uwe Kleine-K?nig <u.kleine-koenig@pengutronix.de>
---
 arch/arm/mach-u300/timer.c | 38 ++++++++++++++++++++++++--------------
 1 file changed, 24 insertions(+), 14 deletions(-)

diff --git a/arch/arm/mach-u300/timer.c b/arch/arm/mach-u300/timer.c
index 9a5f9fb..5226162 100644
--- a/arch/arm/mach-u300/timer.c
+++ b/arch/arm/mach-u300/timer.c
@@ -184,11 +184,13 @@
 #define U300_TIMER_APP_CRC					(0x100)
 #define U300_TIMER_APP_CRC_CLOCK_REQUEST_ENABLE			(0x00000001)
 
-#define TICKS_PER_JIFFY ((CLOCK_TICK_RATE + (HZ/2)) / HZ)
-#define US_PER_TICK ((1000000 + (HZ/2)) / HZ)
-
 static void __iomem *u300_timer_base;
 
+struct u300_clockevent_data {
+	struct clock_event_device cevd;
+	unsigned ticks_per_jiffy;
+};
+
 /*
  * The u300_set_mode() function is always called first, if we
  * have oneshot timer active, the oneshot scheduling function
@@ -197,6 +199,9 @@ static void __iomem *u300_timer_base;
 static void u300_set_mode(enum clock_event_mode mode,
 			  struct clock_event_device *evt)
 {
+	struct u300_clockevent_data *cevdata =
+		container_of(evt, struct u300_clockevent_data, cevd);
+
 	switch (mode) {
 	case CLOCK_EVT_MODE_PERIODIC:
 		/* Disable interrupts on GPT1 */
@@ -209,7 +214,7 @@ static void u300_set_mode(enum clock_event_mode mode,
 		 * Set the periodic mode to a certain number of ticks per
 		 * jiffy.
 		 */
-		writel(TICKS_PER_JIFFY,
+		writel(cevdata->ticks_per_jiffy,
 		       u300_timer_base + U300_TIMER_APP_GPT1TC);
 		/*
 		 * Set continuous mode, so the timer keeps triggering
@@ -305,20 +310,23 @@ static int u300_set_next_event(unsigned long cycles,
 	return 0;
 }
 
-
-/* Use general purpose timer 1 as clock event */
-static struct clock_event_device clockevent_u300_1mhz = {
-	.name		= "GPT1",
-	.rating		= 300, /* Reasonably fast and accurate clock event */
-	.features	= CLOCK_EVT_FEAT_PERIODIC | CLOCK_EVT_FEAT_ONESHOT,
-	.set_next_event	= u300_set_next_event,
-	.set_mode	= u300_set_mode,
+static struct u300_clockevent_data u300_clockevent_data = {
+	/* Use general purpose timer 1 as clock event */
+	.cevd = {
+		.name		= "GPT1",
+		/* Reasonably fast and accurate clock event */
+		.rating		= 300,
+		.features	= CLOCK_EVT_FEAT_PERIODIC |
+			CLOCK_EVT_FEAT_ONESHOT,
+		.set_next_event	= u300_set_next_event,
+		.set_mode	= u300_set_mode,
+	},
 };
 
 /* Clock event timer interrupt handler */
 static irqreturn_t u300_timer_interrupt(int irq, void *dev_id)
 {
-	struct clock_event_device *evt = &clockevent_u300_1mhz;
+	struct clock_event_device *evt = &u300_clockevent_data.cevd;
 	/* ACK/Clear timer IRQ for the APP GPT1 Timer */
 
 	writel(U300_TIMER_APP_GPT1IA_IRQ_ACK,
@@ -379,6 +387,8 @@ static void __init u300_timer_init_of(struct device_node *np)
 	clk_prepare_enable(clk);
 	rate = clk_get_rate(clk);
 
+	u300_clockevent_data.ticks_per_jiffy = DIV_ROUND_CLOSEST(rate, HZ);
+
 	setup_sched_clock(u300_read_sched_clock, 32, rate);
 
 	u300_delay_timer.read_current_timer = &u300_read_current_timer;
@@ -428,7 +438,7 @@ static void __init u300_timer_init_of(struct device_node *np)
 		pr_err("timer: failed to initialize U300 clock source\n");
 
 	/* Configure and register the clockevent */
-	clockevents_config_and_register(&clockevent_u300_1mhz, rate,
+	clockevents_config_and_register(&u300_clockevent_data.cevd, rate,
 					1, 0xffffffff);
 
 	/*
-- 
1.8.4.rc3

^ permalink raw reply related	[flat|nested] 30+ messages in thread

* [PATCH v5 1/4] ARM: deprecate mach/timex.h for !ARCH_MULTIPLATFORM
  2013-11-05  8:33     ` Uwe Kleine-König
  2013-11-05  9:03       ` [PATCH] ARM: u300: fix timekeeping when periodic mode is used Uwe Kleine-König
@ 2013-11-05  9:12       ` Uwe Kleine-König
  2013-11-05  9:42         ` Linus Walleij
  1 sibling, 1 reply; 30+ messages in thread
From: Uwe Kleine-König @ 2013-11-05  9:12 UTC (permalink / raw)
  To: linux-arm-kernel

While mach/timex.h isn't used for multi-platform builds it still is for
"normal" builds. As there are only three platforms that do something else
than only defining CLOCK_TICK_RATE (and these are probably easy to fix),
deprecate mach/timex.h and drop the corresponding files.

Signed-off-by: Uwe Kleine-K?nig <u.kleine-koenig@pengutronix.de>
---
Changes since v4, sent with Message-Id: 20131105083336.GK14892 at pengutronix.de:
 - keep mach/timex.h for ep93xx, mmp, netx, sa1100, u300, ixp4xx, rpc and pxa

 arch/arm/Kconfig                              | 15 ++++++++++++
 arch/arm/include/asm/timex.h                  |  6 ++---
 arch/arm/mach-clps711x/include/mach/timex.h   |  2 --
 arch/arm/mach-davinci/include/mach/timex.h    | 22 ------------------
 arch/arm/mach-dove/include/mach/timex.h       |  9 --------
 arch/arm/mach-ebsa110/include/mach/timex.h    | 19 ---------------
 arch/arm/mach-exynos/include/mach/timex.h     | 29 -----------------------
 arch/arm/mach-footbridge/include/mach/timex.h | 18 ---------------
 arch/arm/mach-gemini/include/mach/timex.h     | 13 -----------
 arch/arm/mach-integrator/include/mach/timex.h | 26 ---------------------
 arch/arm/mach-iop13xx/include/mach/timex.h    |  1 -
 arch/arm/mach-iop32x/include/mach/timex.h     |  6 -----
 arch/arm/mach-iop33x/include/mach/timex.h     |  6 -----
 arch/arm/mach-kirkwood/include/mach/timex.h   | 10 --------
 arch/arm/mach-lpc32xx/include/mach/timex.h    | 28 -----------------------
 arch/arm/mach-msm/include/mach/timex.h        | 21 -----------------
 arch/arm/mach-mv78xx0/include/mach/timex.h    |  9 --------
 arch/arm/mach-omap1/include/mach/timex.h      |  5 ----
 arch/arm/mach-omap2/include/mach/timex.h      |  5 ----
 arch/arm/mach-orion5x/include/mach/timex.h    | 11 ---------
 arch/arm/mach-realview/include/mach/timex.h   | 23 -------------------
 arch/arm/mach-s3c24xx/include/mach/timex.h    | 24 -------------------
 arch/arm/mach-s3c64xx/include/mach/timex.h    | 24 -------------------
 arch/arm/mach-s5p64x0/include/mach/timex.h    | 27 ----------------------
 arch/arm/mach-s5pc100/include/mach/timex.h    | 24 -------------------
 arch/arm/mach-s5pv210/include/mach/timex.h    | 29 -----------------------
 arch/arm/mach-shark/include/mach/timex.h      |  7 ------
 arch/arm/mach-shmobile/include/mach/timex.h   |  6 -----
 arch/arm/mach-spear/include/mach/timex.h      | 19 ---------------
 arch/arm/mach-versatile/include/mach/timex.h  | 23 -------------------
 arch/arm/mach-w90x900/include/mach/timex.h    | 25 --------------------
 arch/arm/plat-omap/include/plat/timex.h       | 33 ---------------------------
 32 files changed, 18 insertions(+), 507 deletions(-)
 delete mode 100644 arch/arm/mach-clps711x/include/mach/timex.h
 delete mode 100644 arch/arm/mach-davinci/include/mach/timex.h
 delete mode 100644 arch/arm/mach-dove/include/mach/timex.h
 delete mode 100644 arch/arm/mach-ebsa110/include/mach/timex.h
 delete mode 100644 arch/arm/mach-exynos/include/mach/timex.h
 delete mode 100644 arch/arm/mach-footbridge/include/mach/timex.h
 delete mode 100644 arch/arm/mach-gemini/include/mach/timex.h
 delete mode 100644 arch/arm/mach-integrator/include/mach/timex.h
 delete mode 100644 arch/arm/mach-iop13xx/include/mach/timex.h
 delete mode 100644 arch/arm/mach-iop32x/include/mach/timex.h
 delete mode 100644 arch/arm/mach-iop33x/include/mach/timex.h
 delete mode 100644 arch/arm/mach-kirkwood/include/mach/timex.h
 delete mode 100644 arch/arm/mach-lpc32xx/include/mach/timex.h
 delete mode 100644 arch/arm/mach-msm/include/mach/timex.h
 delete mode 100644 arch/arm/mach-mv78xx0/include/mach/timex.h
 delete mode 100644 arch/arm/mach-omap1/include/mach/timex.h
 delete mode 100644 arch/arm/mach-omap2/include/mach/timex.h
 delete mode 100644 arch/arm/mach-orion5x/include/mach/timex.h
 delete mode 100644 arch/arm/mach-realview/include/mach/timex.h
 delete mode 100644 arch/arm/mach-s3c24xx/include/mach/timex.h
 delete mode 100644 arch/arm/mach-s3c64xx/include/mach/timex.h
 delete mode 100644 arch/arm/mach-s5p64x0/include/mach/timex.h
 delete mode 100644 arch/arm/mach-s5pc100/include/mach/timex.h
 delete mode 100644 arch/arm/mach-s5pv210/include/mach/timex.h
 delete mode 100644 arch/arm/mach-shark/include/mach/timex.h
 delete mode 100644 arch/arm/mach-shmobile/include/mach/timex.h
 delete mode 100644 arch/arm/mach-spear/include/mach/timex.h
 delete mode 100644 arch/arm/mach-versatile/include/mach/timex.h
 delete mode 100644 arch/arm/mach-w90x900/include/mach/timex.h
 delete mode 100644 arch/arm/plat-omap/include/plat/timex.h

diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig
index 1ad6fb6..f480753 100644
--- a/arch/arm/Kconfig
+++ b/arch/arm/Kconfig
@@ -260,6 +260,12 @@ config NEED_MACH_MEMORY_H
 	  definitions for this platform.  The need for mach/memory.h should
 	  be avoided when possible.
 
+config NEED_MACH_TIMEX_H
+	bool
+	help
+	  Select this when mach/timex.h is required to provide special
+	  definitions for this platform. This should be avoided when possible.
+
 config PHYS_OFFSET
 	hex "Physical address of main memory" if MMU
 	depends on !ARM_PATCH_PHYS_VIRT && !NEED_MACH_MEMORY_H
@@ -362,6 +368,7 @@ config ARCH_AT91
 	select IRQ_DOMAIN
 	select NEED_MACH_GPIO_H
 	select NEED_MACH_IO_H if PCCARD
+	select NEED_MACH_TIMEX_H
 	select PINCTRL
 	select PINCTRL_AT91 if USE_OF
 	help
@@ -416,6 +423,7 @@ config ARCH_EP93XX
 	select CLKDEV_LOOKUP
 	select CPU_ARM920T
 	select NEED_MACH_MEMORY_H
+	select NEED_MACH_TIMEX_H
 	help
 	  This enables support for the Cirrus EP93xx series of CPUs.
 
@@ -437,6 +445,7 @@ config ARCH_NETX
 	select CLKSRC_MMIO
 	select CPU_ARM926T
 	select GENERIC_CLOCKEVENTS
+	select NEED_MACH_TIMEX_H
 	help
 	  This enables support for systems based on the Hilscher NetX Soc
 
@@ -488,6 +497,7 @@ config ARCH_IXP4XX
 	select GENERIC_CLOCKEVENTS
 	select MIGHT_HAVE_PCI
 	select NEED_MACH_IO_H
+	select NEED_MACH_TIMEX_H
 	select USB_EHCI_BIG_ENDIAN_DESC
 	select USB_EHCI_BIG_ENDIAN_MMIO
 	help
@@ -560,6 +570,7 @@ config ARCH_MMP
 	select IRQ_DOMAIN
 	select MULTI_IRQ_HANDLER
 	select NEED_MACH_GPIO_H
+	select NEED_MACH_TIMEX_H
 	select PINCTRL
 	select PLAT_PXA
 	select SPARSE_IRQ
@@ -573,6 +584,7 @@ config ARCH_KS8695
 	select CPU_ARM922T
 	select GENERIC_CLOCKEVENTS
 	select NEED_MACH_MEMORY_H
+	select NEED_MACH_TIMEX_H
 	help
 	  Support for Micrel/Kendin KS8695 "Centaur" (ARM922T) based
 	  System-on-Chip devices.
@@ -623,6 +635,7 @@ config ARCH_PXA
 	select HAVE_IDE
 	select MULTI_IRQ_HANDLER
 	select NEED_MACH_GPIO_H
+	select NEED_MACH_TIMEX_H
 	select PLAT_PXA
 	select SPARSE_IRQ
 	help
@@ -673,6 +686,7 @@ config ARCH_RPC
 	select ISA_DMA_API
 	select NEED_MACH_IO_H
 	select NEED_MACH_MEMORY_H
+	select NEED_MACH_TIMEX_H
 	select NO_IOPORT
 	select VIRT_TO_BUS
 	help
@@ -694,6 +708,7 @@ config ARCH_SA1100
 	select ISA
 	select NEED_MACH_GPIO_H
 	select NEED_MACH_MEMORY_H
+	select NEED_MACH_TIMEX_H
 	select SPARSE_IRQ
 	help
 	  Support for StrongARM 11x0 based boards.
diff --git a/arch/arm/include/asm/timex.h b/arch/arm/include/asm/timex.h
index 83f2aa8..5e65662 100644
--- a/arch/arm/include/asm/timex.h
+++ b/arch/arm/include/asm/timex.h
@@ -12,10 +12,10 @@
 #ifndef _ASMARM_TIMEX_H
 #define _ASMARM_TIMEX_H
 
-#ifdef CONFIG_ARCH_MULTIPLATFORM
-#define CLOCK_TICK_RATE 1000000
-#else
+#ifdef CONFIG_NEED_MACH_TIMEX_H
 #include <mach/timex.h>
+#else
+#define CLOCK_TICK_RATE 1000000
 #endif
 
 typedef unsigned long cycles_t;
diff --git a/arch/arm/mach-clps711x/include/mach/timex.h b/arch/arm/mach-clps711x/include/mach/timex.h
deleted file mode 100644
index de6fd19..0000000
--- a/arch/arm/mach-clps711x/include/mach/timex.h
+++ /dev/null
@@ -1,2 +0,0 @@
-/* Bogus value */
-#define CLOCK_TICK_RATE 512000
diff --git a/arch/arm/mach-davinci/include/mach/timex.h b/arch/arm/mach-davinci/include/mach/timex.h
deleted file mode 100644
index 9b88529..0000000
--- a/arch/arm/mach-davinci/include/mach/timex.h
+++ /dev/null
@@ -1,22 +0,0 @@
-/*
- * DaVinci timer defines
- *
- * Author: Kevin Hilman, MontaVista Software, Inc. <source@mvista.com>
- *
- * 2007 (c) MontaVista Software, Inc. This file is licensed under
- * the terms of the GNU General Public License version 2. This program
- * is licensed "as is" without any warranty of any kind, whether express
- * or implied.
- */
-#ifndef __ASM_ARCH_TIMEX_H
-#define __ASM_ARCH_TIMEX_H
-
-/*
- * Alert: Not all timers of the DaVinci family run at a frequency of 27MHz,
- * but we should be fine as long as CLOCK_TICK_RATE or LATCH (see include/
- * linux/jiffies.h) are not used directly in code. Currently none of the
- * code relevant to DaVinci platform depends on these values directly.
- */
-#define CLOCK_TICK_RATE 27000000
-
-#endif /* __ASM_ARCH_TIMEX_H__ */
diff --git a/arch/arm/mach-dove/include/mach/timex.h b/arch/arm/mach-dove/include/mach/timex.h
deleted file mode 100644
index 251d538..0000000
--- a/arch/arm/mach-dove/include/mach/timex.h
+++ /dev/null
@@ -1,9 +0,0 @@
-/*
- * arch/arm/mach-dove/include/mach/timex.h
- *
- * This file is licensed under the terms of the GNU General Public
- * License version 2.  This program is licensed "as is" without any
- * warranty of any kind, whether express or implied.
- */
-
-#define CLOCK_TICK_RATE		(100 * HZ)
diff --git a/arch/arm/mach-ebsa110/include/mach/timex.h b/arch/arm/mach-ebsa110/include/mach/timex.h
deleted file mode 100644
index 4fb43b2..0000000
--- a/arch/arm/mach-ebsa110/include/mach/timex.h
+++ /dev/null
@@ -1,19 +0,0 @@
-/*
- *  arch/arm/mach-ebsa110/include/mach/timex.h
- *
- *  Copyright (C) 1997, 1998 Russell King
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License version 2 as
- * published by the Free Software Foundation.
- *
- *  EBSA110 architecture timex specifications
- */
-
-/*
- * On the EBSA, the clock ticks at weird rates.
- * This is therefore not used to calculate the
- * divisor.
- */
-#define CLOCK_TICK_RATE		47894000
-
diff --git a/arch/arm/mach-exynos/include/mach/timex.h b/arch/arm/mach-exynos/include/mach/timex.h
deleted file mode 100644
index 6d13875..0000000
--- a/arch/arm/mach-exynos/include/mach/timex.h
+++ /dev/null
@@ -1,29 +0,0 @@
-/* linux/arch/arm/mach-exynos4/include/mach/timex.h
- *
- * Copyright (c) 2010-2011 Samsung Electronics Co., Ltd.
- *		http://www.samsung.com
- *
- * Copyright (c) 2003-2010 Simtec Electronics
- *	Ben Dooks <ben@simtec.co.uk>
- *
- * Based on arch/arm/mach-s5p6442/include/mach/timex.h
- *
- * EXYNOS4 - time parameters
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License version 2 as
- * published by the Free Software Foundation.
-*/
-
-#ifndef __ASM_ARCH_TIMEX_H
-#define __ASM_ARCH_TIMEX_H __FILE__
-
-/* CLOCK_TICK_RATE needs to be evaluatable by the cpp, so making it
- * a variable is useless. It seems as long as we make our timers an
- * exact multiple of HZ, any value that makes a 1->1 correspondence
- * for the time conversion functions to/from jiffies is acceptable.
-*/
-
-#define CLOCK_TICK_RATE 12000000
-
-#endif /* __ASM_ARCH_TIMEX_H */
diff --git a/arch/arm/mach-footbridge/include/mach/timex.h b/arch/arm/mach-footbridge/include/mach/timex.h
deleted file mode 100644
index d0fea9d..0000000
--- a/arch/arm/mach-footbridge/include/mach/timex.h
+++ /dev/null
@@ -1,18 +0,0 @@
-/*
- *  arch/arm/mach-footbridge/include/mach/timex.h
- *
- *  Copyright (C) 1998 Russell King
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License version 2 as
- * published by the Free Software Foundation.
- *
- *  EBSA285 architecture timex specifications
- */
-
-/*
- * We assume a constant here; this satisfies the maths in linux/timex.h
- * and linux/time.h.  CLOCK_TICK_RATE is actually system dependent, but
- * this must be a constant.
- */
-#define CLOCK_TICK_RATE		(50000000/16)
diff --git a/arch/arm/mach-gemini/include/mach/timex.h b/arch/arm/mach-gemini/include/mach/timex.h
deleted file mode 100644
index dc5690b..0000000
--- a/arch/arm/mach-gemini/include/mach/timex.h
+++ /dev/null
@@ -1,13 +0,0 @@
-/*
- * Gemini timex specifications
- *
- * Copyright (C) 2008-2009 Paulius Zaleckas <paulius.zaleckas@teltonika.lt>
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- */
-
-/* When AHB bus frequency is 150MHz */
-#define CLOCK_TICK_RATE	38000000
diff --git a/arch/arm/mach-integrator/include/mach/timex.h b/arch/arm/mach-integrator/include/mach/timex.h
deleted file mode 100644
index 1dcb420..0000000
--- a/arch/arm/mach-integrator/include/mach/timex.h
+++ /dev/null
@@ -1,26 +0,0 @@
-/*
- *  arch/arm/mach-integrator/include/mach/timex.h
- *
- *  Integrator architecture timex specifications
- *
- *  Copyright (C) 1999 ARM Limited
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
- */
-
-/*
- * ??
- */
-#define CLOCK_TICK_RATE		(50000000 / 16)
diff --git a/arch/arm/mach-iop13xx/include/mach/timex.h b/arch/arm/mach-iop13xx/include/mach/timex.h
deleted file mode 100644
index 45fb274..0000000
--- a/arch/arm/mach-iop13xx/include/mach/timex.h
+++ /dev/null
@@ -1 +0,0 @@
-#define CLOCK_TICK_RATE (100 * HZ)
diff --git a/arch/arm/mach-iop32x/include/mach/timex.h b/arch/arm/mach-iop32x/include/mach/timex.h
deleted file mode 100644
index 7262ab8..0000000
--- a/arch/arm/mach-iop32x/include/mach/timex.h
+++ /dev/null
@@ -1,6 +0,0 @@
-/*
- * arch/arm/mach-iop32x/include/mach/timex.h
- *
- * IOP32x architecture timex specifications
- */
-#define CLOCK_TICK_RATE		(100 * HZ)
diff --git a/arch/arm/mach-iop33x/include/mach/timex.h b/arch/arm/mach-iop33x/include/mach/timex.h
deleted file mode 100644
index 54c5890..0000000
--- a/arch/arm/mach-iop33x/include/mach/timex.h
+++ /dev/null
@@ -1,6 +0,0 @@
-/*
- * arch/arm/mach-iop33x/include/mach/timex.h
- *
- * IOP3xx architecture timex specifications
- */
-#define CLOCK_TICK_RATE		(100 * HZ)
diff --git a/arch/arm/mach-kirkwood/include/mach/timex.h b/arch/arm/mach-kirkwood/include/mach/timex.h
deleted file mode 100644
index c923cd1..0000000
--- a/arch/arm/mach-kirkwood/include/mach/timex.h
+++ /dev/null
@@ -1,10 +0,0 @@
-/*
- * arch/arm/mach-kirkwood/include/mach/timex.h
- *
- * This file is licensed under the terms of the GNU General Public
- * License version 2.  This program is licensed "as is" without any
- * warranty of any kind, whether express or implied.
- */
-
-#define CLOCK_TICK_RATE		(100 * HZ)
-
diff --git a/arch/arm/mach-lpc32xx/include/mach/timex.h b/arch/arm/mach-lpc32xx/include/mach/timex.h
deleted file mode 100644
index 8d4066b..0000000
--- a/arch/arm/mach-lpc32xx/include/mach/timex.h
+++ /dev/null
@@ -1,28 +0,0 @@
-/*
- * arch/arm/mach-lpc32xx/include/mach/timex.h
- *
- * Author: Kevin Wells <kevin.wells@nxp.com>
- *
- * Copyright (C) 2010 NXP Semiconductors
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- */
-
-#ifndef __ASM_ARCH_TIMEX_H
-#define __ASM_ARCH_TIMEX_H
-
-/*
- * Rate in Hz of the main system oscillator. This value should match
- * the value 'MAIN_OSC_FREQ' in platform.h
- */
-#define CLOCK_TICK_RATE	13000000
-
-#endif
diff --git a/arch/arm/mach-msm/include/mach/timex.h b/arch/arm/mach-msm/include/mach/timex.h
deleted file mode 100644
index a62e6b2..0000000
--- a/arch/arm/mach-msm/include/mach/timex.h
+++ /dev/null
@@ -1,21 +0,0 @@
-/* arch/arm/mach-msm/include/mach/timex.h
- *
- * Copyright (C) 2007 Google, Inc.
- *
- * This software is licensed under the terms of the GNU General Public
- * License version 2, as published by the Free Software Foundation, and
- * may be copied, distributed, and modified under those terms.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- */
-
-#ifndef __ASM_ARCH_MSM_TIMEX_H
-#define __ASM_ARCH_MSM_TIMEX_H
-
-#define CLOCK_TICK_RATE		1000000
-
-#endif
diff --git a/arch/arm/mach-mv78xx0/include/mach/timex.h b/arch/arm/mach-mv78xx0/include/mach/timex.h
deleted file mode 100644
index 0e8c443..0000000
--- a/arch/arm/mach-mv78xx0/include/mach/timex.h
+++ /dev/null
@@ -1,9 +0,0 @@
-/*
- * arch/arm/mach-mv78xx0/include/mach/timex.h
- *
- * This file is licensed under the terms of the GNU General Public
- * License version 2.  This program is licensed "as is" without any
- * warranty of any kind, whether express or implied.
- */
-
-#define CLOCK_TICK_RATE		(100 * HZ)
diff --git a/arch/arm/mach-omap1/include/mach/timex.h b/arch/arm/mach-omap1/include/mach/timex.h
deleted file mode 100644
index 4793790..0000000
--- a/arch/arm/mach-omap1/include/mach/timex.h
+++ /dev/null
@@ -1,5 +0,0 @@
-/*
- * arch/arm/mach-omap1/include/mach/timex.h
- */
-
-#include <plat/timex.h>
diff --git a/arch/arm/mach-omap2/include/mach/timex.h b/arch/arm/mach-omap2/include/mach/timex.h
deleted file mode 100644
index de9f8fc..0000000
--- a/arch/arm/mach-omap2/include/mach/timex.h
+++ /dev/null
@@ -1,5 +0,0 @@
-/*
- * arch/arm/mach-omap2/include/mach/timex.h
- */
-
-#include <plat/timex.h>
diff --git a/arch/arm/mach-orion5x/include/mach/timex.h b/arch/arm/mach-orion5x/include/mach/timex.h
deleted file mode 100644
index 4c69820..0000000
--- a/arch/arm/mach-orion5x/include/mach/timex.h
+++ /dev/null
@@ -1,11 +0,0 @@
-/*
- * arch/arm/mach-orion5x/include/mach/timex.h
- *
- * Tzachi Perelstein <tzachi@marvell.com>
- *
- * This file is licensed under the terms of the GNU General Public
- * License version 2.  This program is licensed "as is" without any
- * warranty of any kind, whether express or implied.
- */
-
-#define CLOCK_TICK_RATE		(100 * HZ)
diff --git a/arch/arm/mach-realview/include/mach/timex.h b/arch/arm/mach-realview/include/mach/timex.h
deleted file mode 100644
index 4eeb069..0000000
--- a/arch/arm/mach-realview/include/mach/timex.h
+++ /dev/null
@@ -1,23 +0,0 @@
-/*
- *  arch/arm/mach-realview/include/mach/timex.h
- *
- *  RealView architecture timex specifications
- *
- *  Copyright (C) 2003 ARM Limited
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
- */
-
-#define CLOCK_TICK_RATE		(50000000 / 16)
diff --git a/arch/arm/mach-s3c24xx/include/mach/timex.h b/arch/arm/mach-s3c24xx/include/mach/timex.h
deleted file mode 100644
index fe9ca1f..0000000
--- a/arch/arm/mach-s3c24xx/include/mach/timex.h
+++ /dev/null
@@ -1,24 +0,0 @@
-/* arch/arm/mach-s3c2410/include/mach/timex.h
- *
- * Copyright (c) 2003-2005 Simtec Electronics
- *	Ben Dooks <ben@simtec.co.uk>
- *
- * S3C2410 - time parameters
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License version 2 as
- * published by the Free Software Foundation.
-*/
-
-#ifndef __ASM_ARCH_TIMEX_H
-#define __ASM_ARCH_TIMEX_H
-
-/* CLOCK_TICK_RATE needs to be evaluatable by the cpp, so making it
- * a variable is useless. It seems as long as we make our timers an
- * exact multiple of HZ, any value that makes a 1->1 correspondence
- * for the time conversion functions to/from jiffies is acceptable.
-*/
-
-#define CLOCK_TICK_RATE 12000000
-
-#endif /* __ASM_ARCH_TIMEX_H */
diff --git a/arch/arm/mach-s3c64xx/include/mach/timex.h b/arch/arm/mach-s3c64xx/include/mach/timex.h
deleted file mode 100644
index fb2e8cd..0000000
--- a/arch/arm/mach-s3c64xx/include/mach/timex.h
+++ /dev/null
@@ -1,24 +0,0 @@
-/* arch/arm/mach-s3c64xx/include/mach/timex.h
- *
- * Copyright (c) 2003-2005 Simtec Electronics
- *	Ben Dooks <ben@simtec.co.uk>
- *
- * S3C6400 - time parameters
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License version 2 as
- * published by the Free Software Foundation.
-*/
-
-#ifndef __ASM_ARCH_TIMEX_H
-#define __ASM_ARCH_TIMEX_H
-
-/* CLOCK_TICK_RATE needs to be evaluatable by the cpp, so making it
- * a variable is useless. It seems as long as we make our timers an
- * exact multiple of HZ, any value that makes a 1->1 correspondence
- * for the time conversion functions to/from jiffies is acceptable.
-*/
-
-#define CLOCK_TICK_RATE 12000000
-
-#endif /* __ASM_ARCH_TIMEX_H */
diff --git a/arch/arm/mach-s5p64x0/include/mach/timex.h b/arch/arm/mach-s5p64x0/include/mach/timex.h
deleted file mode 100644
index 4b91faa..0000000
--- a/arch/arm/mach-s5p64x0/include/mach/timex.h
+++ /dev/null
@@ -1,27 +0,0 @@
-/* linux/arch/arm/mach-s5p64x0/include/mach/timex.h
- *
- * Copyright (c) 2010 Samsung Electronics Co., Ltd.
- *		http://www.samsung.com
- *
- * Copyright (c) 2003-2005 Simtec Electronics
- *	Ben Dooks <ben@simtec.co.uk>
- *
- * S5P64X0 - time parameters
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License version 2 as
- * published by the Free Software Foundation.
-*/
-
-#ifndef __ASM_ARCH_TIMEX_H
-#define __ASM_ARCH_TIMEX_H
-
-/* CLOCK_TICK_RATE needs to be evaluatable by the cpp, so making it
- * a variable is useless. It seems as long as we make our timers an
- * exact multiple of HZ, any value that makes a 1->1 correspondence
- * for the time conversion functions to/from jiffies is acceptable.
-*/
-
-#define CLOCK_TICK_RATE 12000000
-
-#endif /* __ASM_ARCH_TIMEX_H */
diff --git a/arch/arm/mach-s5pc100/include/mach/timex.h b/arch/arm/mach-s5pc100/include/mach/timex.h
deleted file mode 100644
index 47ffb17..0000000
--- a/arch/arm/mach-s5pc100/include/mach/timex.h
+++ /dev/null
@@ -1,24 +0,0 @@
-/* arch/arm/mach-s5pc100/include/mach/timex.h
- *
- * Copyright (c) 2003-2005 Simtec Electronics
- *	Ben Dooks <ben@simtec.co.uk>
- *
- * S3C6400 - time parameters
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License version 2 as
- * published by the Free Software Foundation.
-*/
-
-#ifndef __ASM_ARCH_TIMEX_H
-#define __ASM_ARCH_TIMEX_H
-
-/* CLOCK_TICK_RATE needs to be evaluatable by the cpp, so making it
- * a variable is useless. It seems as long as we make our timers an
- * exact multiple of HZ, any value that makes a 1->1 correspondence
- * for the time conversion functions to/from jiffies is acceptable.
-*/
-
-#define CLOCK_TICK_RATE 12000000
-
-#endif /* __ASM_ARCH_TIMEX_H */
diff --git a/arch/arm/mach-s5pv210/include/mach/timex.h b/arch/arm/mach-s5pv210/include/mach/timex.h
deleted file mode 100644
index 73dc854..0000000
--- a/arch/arm/mach-s5pv210/include/mach/timex.h
+++ /dev/null
@@ -1,29 +0,0 @@
-/* linux/arch/arm/mach-s5pv210/include/mach/timex.h
- *
- * Copyright (c) 2003-2010 Simtec Electronics
- *	Ben Dooks <ben@simtec.co.uk>
- *
- * Copyright (c) 2010 Samsung Electronics Co., Ltd.
- *		http://www.samsung.com/
- *
- * Based on arch/arm/mach-s5p6442/include/mach/timex.h
- *
- * S5PV210 - time parameters
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License version 2 as
- * published by the Free Software Foundation.
-*/
-
-#ifndef __ASM_ARCH_TIMEX_H
-#define __ASM_ARCH_TIMEX_H __FILE__
-
-/* CLOCK_TICK_RATE needs to be evaluatable by the cpp, so making it
- * a variable is useless. It seems as long as we make our timers an
- * exact multiple of HZ, any value that makes a 1->1 correspondence
- * for the time conversion functions to/from jiffies is acceptable.
-*/
-
-#define CLOCK_TICK_RATE 12000000
-
-#endif /* __ASM_ARCH_TIMEX_H */
diff --git a/arch/arm/mach-shark/include/mach/timex.h b/arch/arm/mach-shark/include/mach/timex.h
deleted file mode 100644
index bb6eeae..0000000
--- a/arch/arm/mach-shark/include/mach/timex.h
+++ /dev/null
@@ -1,7 +0,0 @@
-/*
- * arch/arm/mach-shark/include/mach/timex.h
- *
- * by Alexander Schulz
- */
-
-#define CLOCK_TICK_RATE 1193180
diff --git a/arch/arm/mach-shmobile/include/mach/timex.h b/arch/arm/mach-shmobile/include/mach/timex.h
deleted file mode 100644
index ae0d8d8..0000000
--- a/arch/arm/mach-shmobile/include/mach/timex.h
+++ /dev/null
@@ -1,6 +0,0 @@
-#ifndef __ASM_MACH_TIMEX_H
-#define __ASM_MACH_TIMEX_H
-
-#define CLOCK_TICK_RATE		1193180 /* unused i8253 PIT value */
-
-#endif /* __ASM_MACH_TIMEX_H */
diff --git a/arch/arm/mach-spear/include/mach/timex.h b/arch/arm/mach-spear/include/mach/timex.h
deleted file mode 100644
index ef95e5b..0000000
--- a/arch/arm/mach-spear/include/mach/timex.h
+++ /dev/null
@@ -1,19 +0,0 @@
-/*
- * arch/arm/plat-spear/include/plat/timex.h
- *
- * SPEAr platform specific timex definitions
- *
- * Copyright (C) 2009 ST Microelectronics
- * Viresh Kumar <viresh.linux@gmail.com>
- *
- * This file is licensed under the terms of the GNU General Public
- * License version 2. This program is licensed "as is" without any
- * warranty of any kind, whether express or implied.
- */
-
-#ifndef __PLAT_TIMEX_H
-#define __PLAT_TIMEX_H
-
-#define CLOCK_TICK_RATE			48000000
-
-#endif /* __PLAT_TIMEX_H */
diff --git a/arch/arm/mach-versatile/include/mach/timex.h b/arch/arm/mach-versatile/include/mach/timex.h
deleted file mode 100644
index 426199b..0000000
--- a/arch/arm/mach-versatile/include/mach/timex.h
+++ /dev/null
@@ -1,23 +0,0 @@
-/*
- *  arch/arm/mach-versatile/include/mach/timex.h
- *
- *  Versatile architecture timex specifications
- *
- *  Copyright (C) 2003 ARM Limited
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
- */
-
-#define CLOCK_TICK_RATE		(50000000 / 16)
diff --git a/arch/arm/mach-w90x900/include/mach/timex.h b/arch/arm/mach-w90x900/include/mach/timex.h
deleted file mode 100644
index 164dce0..0000000
--- a/arch/arm/mach-w90x900/include/mach/timex.h
+++ /dev/null
@@ -1,25 +0,0 @@
-/*
- * arch/arm/mach-w90x900/include/mach/timex.h
- *
- * Copyright (c) 2008 Nuvoton technology corporation
- * All rights reserved.
- *
- * Wan ZongShun <mcuos.com@gmail.com>
- *
- * Based on arch/arm/mach-s3c2410/include/mach/timex.h
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- */
-
-#ifndef __ASM_ARCH_TIMEX_H
-#define __ASM_ARCH_TIMEX_H
-
-/* CLOCK_TICK_RATE Now, I don't use it. */
-
-#define CLOCK_TICK_RATE 15000000
-
-#endif /* __ASM_ARCH_TIMEX_H */
diff --git a/arch/arm/plat-omap/include/plat/timex.h b/arch/arm/plat-omap/include/plat/timex.h
deleted file mode 100644
index e27d2da..0000000
--- a/arch/arm/plat-omap/include/plat/timex.h
+++ /dev/null
@@ -1,33 +0,0 @@
-/*
- * arch/arm/plat-omap/include/mach/timex.h
- *
- * Copyright (C) 2000 RidgeRun, Inc.
- * Author:  Greg Lonnon <glonnon@ridgerun.com>
- *
- * This program is free software; you can redistribute it and/or modify it
- * under the terms of the GNU General Public License as published by the
- * Free Software Foundation; either version 2 of the License, or (at your
- * option) any later version.
- *
- * THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESS OR IMPLIED
- * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
- * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN
- * NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
- * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
- * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
- * USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
- * ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
- * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- *
- * You should have received a copy of the  GNU General Public License along
- * with this program; if not, write  to the Free Software Foundation, Inc.,
- * 675 Mass Ave, Cambridge, MA 02139, USA.
- */
-
-#if !defined(__ASM_ARCH_OMAP_TIMEX_H)
-#define __ASM_ARCH_OMAP_TIMEX_H
-
-#define CLOCK_TICK_RATE		(HZ * 100000UL)
-
-#endif /* __ASM_ARCH_OMAP_TIMEX_H */
-- 
1.8.4.rc3

^ permalink raw reply related	[flat|nested] 30+ messages in thread

* [PATCH v5 1/4] ARM: deprecate mach/timex.h for !ARCH_MULTIPLATFORM
  2013-11-05  9:12       ` [PATCH v5 1/4] ARM: deprecate mach/timex.h for !ARCH_MULTIPLATFORM Uwe Kleine-König
@ 2013-11-05  9:42         ` Linus Walleij
  2013-11-05 10:01           ` Uwe Kleine-König
  2013-11-05 11:34           ` Arnd Bergmann
  0 siblings, 2 replies; 30+ messages in thread
From: Linus Walleij @ 2013-11-05  9:42 UTC (permalink / raw)
  To: linux-arm-kernel

On Tue, Nov 5, 2013 at 10:12 AM, Uwe Kleine-K?nig
<u.kleine-koenig@pengutronix.de> wrote:

> +config NEED_MACH_TIMEX_H
> +       bool
> +       help
> +         Select this when mach/timex.h is required to provide special
> +         definitions for this platform. This should be avoided when possible.

OK this is no blocker, and do proceed with this as the kernel sure
looks better after this than before it.

However as the next step I would prefer that we start to get rid of
all the NEED_MACH_FOO_H used for just refactoring out headers.

Can we not completely do away with this header next, and provide
the services it supplied locally in the mach-foo folder for these machines
instead so we do not need to have all these Kconfig things and preserve
the <mach/*> namespace for them?

The real trick is to make CLOCK_TICK_RATE and LATCH runtime
variables instead of a compile-time variables, right? Can't we do
this?

Yours,
Linus Walleij

^ permalink raw reply	[flat|nested] 30+ messages in thread

* [PATCH] ARM: u300: fix timekeeping when periodic mode is used
  2013-11-05  9:03       ` [PATCH] ARM: u300: fix timekeeping when periodic mode is used Uwe Kleine-König
@ 2013-11-05  9:44         ` Linus Walleij
  2013-11-25 21:13           ` Uwe Kleine-König
  0 siblings, 1 reply; 30+ messages in thread
From: Linus Walleij @ 2013-11-05  9:44 UTC (permalink / raw)
  To: linux-arm-kernel

On Tue, Nov 5, 2013 at 10:03 AM, Uwe Kleine-K?nig
<u.kleine-koenig@pengutronix.de> wrote:

> To determine the value to write to the hardware's timer counter register
> the symbol CLOCK_TICK_RATE is used. This value is a dummy value on u300
> though. So instead use the clock rate that is used for oneshot mode.
>
> Signed-off-by: Uwe Kleine-K?nig <u.kleine-koenig@pengutronix.de>

Thanks, patch applied to the u300 branch in the linux-stericsson
tree.

Yours,
Linus Walleij

^ permalink raw reply	[flat|nested] 30+ messages in thread

* [PATCH v4 4/4] ARM: new platform for Energy Micro's EFM32 Cortex-M3 SoCs
  2013-11-04 13:56   ` Arnd Bergmann
@ 2013-11-05  9:48     ` Uwe Kleine-König
  2013-11-05 11:10       ` Arnd Bergmann
  0 siblings, 1 reply; 30+ messages in thread
From: Uwe Kleine-König @ 2013-11-05  9:48 UTC (permalink / raw)
  To: linux-arm-kernel

On Mon, Nov 04, 2013 at 02:56:27PM +0100, Arnd Bergmann wrote:
> On Monday 04 November 2013, Uwe Kleine-K?nig wrote:
> > Signed-off-by: Uwe Kleine-K?nig <u.kleine-koenig@pengutronix.de>
> > ---
> >  arch/arm/Kconfig                 |  19 +++++++-
> >  arch/arm/Makefile                |   1 +
> >  arch/arm/configs/efm32_defconfig | 102 +++++++++++++++++++++++++++++++++++++++
> >  arch/arm/mach-efm32/Makefile     |   1 +
> >  arch/arm/mach-efm32/dtmachine.c  |  15 ++++++
> >  5 files changed, 137 insertions(+), 1 deletion(-)
> >  create mode 100644 arch/arm/configs/efm32_defconfig
> >  create mode 100644 arch/arm/mach-efm32/Makefile
> >  create mode 100644 arch/arm/mach-efm32/dtmachine.c
> > 
> > diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig
> > index 7ae0615..d8145fe 100644
> > --- a/arch/arm/Kconfig
> > +++ b/arch/arm/Kconfig
> > @@ -413,6 +413,23 @@ config ARCH_EBSA110
> >           Ethernet interface, two PCMCIA sockets, two serial ports and a
> >           parallel port.
> >  
> > +config ARCH_EFM32
> > +       bool "Energy Micro efm32"
> > +       depends on !MMU
> > +       select ARCH_REQUIRE_GPIOLIB
> > +       select ARM_NVIC
> > +       select CLKSRC_MMIO
> > +       select CLKSRC_OF
> > +       select COMMON_CLK
> > +       select CPU_V7M
> > +       select GENERIC_CLOCKEVENTS
> > +       select NO_DMA
> > +       select NO_IOPORT
> > +       select SPARSE_IRQ
> > +       select USE_OF
> > +       help
> > +         Support for Energy Micro's (now Silicon Labs) efm32 processors.
> > +
> 
> It would be good to have at least in either the changeset description or the Kconfig
> text (or both) some description about the platform: which SoCs have been tested,
> what is this platform used for, where can one find data sheets etc.
I have links to the datasheet of the processor and the user manual of
the board in the corresponding device trees. Also I added a paragraph to
the commit log mentioning the development board I used:

	There are still some missing parts (e.g. board support, device
	trees), but with these bits added on top of this patch I can
	successfully boot a EFM32GG-DK3750 board that uses an
	EFM32GG990F1024.

Good enough?

Best regards
Uwe

-- 
Pengutronix e.K.                           | Uwe Kleine-K?nig            |
Industrial Linux Solutions                 | http://www.pengutronix.de/  |

^ permalink raw reply	[flat|nested] 30+ messages in thread

* [PATCH v5 1/4] ARM: deprecate mach/timex.h for !ARCH_MULTIPLATFORM
  2013-11-05  9:42         ` Linus Walleij
@ 2013-11-05 10:01           ` Uwe Kleine-König
  2013-11-05 11:34           ` Arnd Bergmann
  1 sibling, 0 replies; 30+ messages in thread
From: Uwe Kleine-König @ 2013-11-05 10:01 UTC (permalink / raw)
  To: linux-arm-kernel

On Tue, Nov 05, 2013 at 10:42:48AM +0100, Linus Walleij wrote:
> On Tue, Nov 5, 2013 at 10:12 AM, Uwe Kleine-K?nig
> <u.kleine-koenig@pengutronix.de> wrote:
> 
> > +config NEED_MACH_TIMEX_H
> > +       bool
> > +       help
> > +         Select this when mach/timex.h is required to provide special
> > +         definitions for this platform. This should be avoided when possible.
> 
> OK this is no blocker, and do proceed with this as the kernel sure
> looks better after this than before it.
> 
> However as the next step I would prefer that we start to get rid of
> all the NEED_MACH_FOO_H used for just refactoring out headers.
> 
> Can we not completely do away with this header next, and provide
> the services it supplied locally in the mach-foo folder for these machines
> instead so we do not need to have all these Kconfig things and preserve
> the <mach/*> namespace for them?
> 
> The real trick is to make CLOCK_TICK_RATE and LATCH runtime
> variables instead of a compile-time variables, right? Can't we do
> this?
Well, for LATCH there is no problem because it just uses CLOCK_TICK_RATE
and if the latter is provided correctly there is no problem. However I
don't see a way how to determine CLOCK_TICK_RATE at runtime. IMHO here
you need to fix all users as I just did for the u300 timer code.

Best regards
Uwe

-- 
Pengutronix e.K.                           | Uwe Kleine-K?nig            |
Industrial Linux Solutions                 | http://www.pengutronix.de/  |

^ permalink raw reply	[flat|nested] 30+ messages in thread

* [PATCH v4 4/4] ARM: new platform for Energy Micro's EFM32 Cortex-M3 SoCs
  2013-11-05  9:48     ` Uwe Kleine-König
@ 2013-11-05 11:10       ` Arnd Bergmann
  0 siblings, 0 replies; 30+ messages in thread
From: Arnd Bergmann @ 2013-11-05 11:10 UTC (permalink / raw)
  To: linux-arm-kernel

On Tuesday 05 November 2013, Uwe Kleine-K?nig wrote:
> I have links to the datasheet of the processor and the user manual of
> the board in the corresponding device trees. Also I added a paragraph to
> the commit log mentioning the development board I used:
> 
>         There are still some missing parts (e.g. board support, device
>         trees), but with these bits added on top of this patch I can
>         successfully boot a EFM32GG-DK3750 board that uses an
>         EFM32GG990F1024.
> 
> Good enough?
> 

Ok, works for me.

	Arnd

^ permalink raw reply	[flat|nested] 30+ messages in thread

* [PATCH v5 1/4] ARM: deprecate mach/timex.h for !ARCH_MULTIPLATFORM
  2013-11-05  9:42         ` Linus Walleij
  2013-11-05 10:01           ` Uwe Kleine-König
@ 2013-11-05 11:34           ` Arnd Bergmann
  2013-11-05 11:37             ` Linus Walleij
                               ` (2 more replies)
  1 sibling, 3 replies; 30+ messages in thread
From: Arnd Bergmann @ 2013-11-05 11:34 UTC (permalink / raw)
  To: linux-arm-kernel

On Tuesday 05 November 2013, Linus Walleij wrote:
> On Tue, Nov 5, 2013 at 10:12 AM, Uwe Kleine-K?nig
> <u.kleine-koenig@pengutronix.de> wrote:
> 
> > +config NEED_MACH_TIMEX_H
> > +       bool
> > +       help
> > +         Select this when mach/timex.h is required to provide special
> > +         definitions for this platform. This should be avoided when possible.
> 
> OK this is no blocker, and do proceed with this as the kernel sure
> looks better after this than before it.
> 
> However as the next step I would prefer that we start to get rid of
> all the NEED_MACH_FOO_H used for just refactoring out headers.
> 
> Can we not completely do away with this header next, and provide
> the services it supplied locally in the mach-foo folder for these machines
> instead so we do not need to have all these Kconfig things and preserve
> the <mach/*> namespace for them?

Maybe we can collapse the CLOCK_TICK_RATE into a single Kconfig symbol
like


asm/timex.h:

#ifdef CONFIG_CLOCK_TICK_RATE
#define CLOCK_TICK_RATE CONFIG_CLOCK_TICK_RATE
#endif
/* EOF */

Kconfig:

config CLOCK_TICK_RATE
	int
	depends on !ARCH_MULTIPLATFORM && ARCH_USES_GETTIMEOFFSET
	depends on ARCH_GEMINI || ARCH_SA1100 || ARCH_EBSA110 || ARCH_EP93XX || ARCH_RPC || ARCH_AT91X40
	default 40000000 if ARCH_AT91X40
	default 38000000 if ARCH_GEMINI
	default 3686400 if ARCH_SA1100
	default 47894000 if ARCH_EBSA110
	default 983040 if ARCH_EP93xx
	default 2000000 if ARCH_RPC
	# don't even think about adding more to this list, better get rid of the
	# existing ones by converting them to proper clocksources

> The real trick is to make CLOCK_TICK_RATE and LATCH runtime
> variables instead of a compile-time variables, right? Can't we do
> this?

We've almost killed off CLOCK_TICK_RATE for anything that matters, I'd prefer not
doing anything to it other than reducing its uses to the places that we know need
it.

	Arnd

^ permalink raw reply	[flat|nested] 30+ messages in thread

* [PATCH v5 1/4] ARM: deprecate mach/timex.h for !ARCH_MULTIPLATFORM
  2013-11-05 11:34           ` Arnd Bergmann
@ 2013-11-05 11:37             ` Linus Walleij
  2013-11-05 11:45             ` Russell King - ARM Linux
  2013-11-05 11:52             ` Uwe Kleine-König
  2 siblings, 0 replies; 30+ messages in thread
From: Linus Walleij @ 2013-11-05 11:37 UTC (permalink / raw)
  To: linux-arm-kernel

On Tue, Nov 5, 2013 at 12:34 PM, Arnd Bergmann <arnd@arndb.de> wrote:

> Maybe we can collapse the CLOCK_TICK_RATE into a single Kconfig symbol
> like
>
> asm/timex.h:
>
> #ifdef CONFIG_CLOCK_TICK_RATE
> #define CLOCK_TICK_RATE CONFIG_CLOCK_TICK_RATE
> #endif
> /* EOF */
>
> Kconfig:
>
> config CLOCK_TICK_RATE
>         int
>         depends on !ARCH_MULTIPLATFORM && ARCH_USES_GETTIMEOFFSET
>         depends on ARCH_GEMINI || ARCH_SA1100 || ARCH_EBSA110 || ARCH_EP93XX || ARCH_RPC || ARCH_AT91X40
>         default 40000000 if ARCH_AT91X40
>         default 38000000 if ARCH_GEMINI
>         default 3686400 if ARCH_SA1100
>         default 47894000 if ARCH_EBSA110
>         default 983040 if ARCH_EP93xx
>         default 2000000 if ARCH_RPC
>         # don't even think about adding more to this list, better get rid of the
>         # existing ones by converting them to proper clocksources

+1 for this approach, since we already use this pattern for
other things.

Yours,
Linus Walleij

^ permalink raw reply	[flat|nested] 30+ messages in thread

* [PATCH v5 1/4] ARM: deprecate mach/timex.h for !ARCH_MULTIPLATFORM
  2013-11-05 11:34           ` Arnd Bergmann
  2013-11-05 11:37             ` Linus Walleij
@ 2013-11-05 11:45             ` Russell King - ARM Linux
  2013-11-05 12:26               ` Arnd Bergmann
  2013-11-05 11:52             ` Uwe Kleine-König
  2 siblings, 1 reply; 30+ messages in thread
From: Russell King - ARM Linux @ 2013-11-05 11:45 UTC (permalink / raw)
  To: linux-arm-kernel

On Tue, Nov 05, 2013 at 12:34:42PM +0100, Arnd Bergmann wrote:
> config CLOCK_TICK_RATE
> 	int
> 	depends on !ARCH_MULTIPLATFORM && ARCH_USES_GETTIMEOFFSET
> 	depends on ARCH_GEMINI || ARCH_SA1100 || ARCH_EBSA110 || ARCH_EP93XX || ARCH_RPC || ARCH_AT91X40
> 	default 40000000 if ARCH_AT91X40
> 	default 38000000 if ARCH_GEMINI
> 	default 3686400 if ARCH_SA1100
> 	default 47894000 if ARCH_EBSA110
> 	default 983040 if ARCH_EP93xx
> 	default 2000000 if ARCH_RPC
> 	# don't even think about adding more to this list, better get rid of the
> 	# existing ones by converting them to proper clocksources

That's a pipedream.  It really is.  Some of those are impossible to
convert because you don't have enough timers/counters to provide the
clocksource and clockevents - as I've mentioned several times in the
past.

clocksource and clockevents are all very nice and such, but they don't
always fit real hardware.

^ permalink raw reply	[flat|nested] 30+ messages in thread

* [PATCH v5 1/4] ARM: deprecate mach/timex.h for !ARCH_MULTIPLATFORM
  2013-11-05 11:34           ` Arnd Bergmann
  2013-11-05 11:37             ` Linus Walleij
  2013-11-05 11:45             ` Russell King - ARM Linux
@ 2013-11-05 11:52             ` Uwe Kleine-König
  2 siblings, 0 replies; 30+ messages in thread
From: Uwe Kleine-König @ 2013-11-05 11:52 UTC (permalink / raw)
  To: linux-arm-kernel

On Tue, Nov 05, 2013 at 12:34:42PM +0100, Arnd Bergmann wrote:
> On Tuesday 05 November 2013, Linus Walleij wrote:
> > On Tue, Nov 5, 2013 at 10:12 AM, Uwe Kleine-K?nig
> > <u.kleine-koenig@pengutronix.de> wrote:
> > 
> > > +config NEED_MACH_TIMEX_H
> > > +       bool
> > > +       help
> > > +         Select this when mach/timex.h is required to provide special
> > > +         definitions for this platform. This should be avoided when possible.
> > 
> > OK this is no blocker, and do proceed with this as the kernel sure
> > looks better after this than before it.
> > 
> > However as the next step I would prefer that we start to get rid of
> > all the NEED_MACH_FOO_H used for just refactoring out headers.
> > 
> > Can we not completely do away with this header next, and provide
> > the services it supplied locally in the mach-foo folder for these machines
> > instead so we do not need to have all these Kconfig things and preserve
> > the <mach/*> namespace for them?
> 
> Maybe we can collapse the CLOCK_TICK_RATE into a single Kconfig symbol
> like
> 
> 
> asm/timex.h:
> 
> #ifdef CONFIG_CLOCK_TICK_RATE
> #define CLOCK_TICK_RATE CONFIG_CLOCK_TICK_RATE
> #endif
> /* EOF */
> 
> Kconfig:
> 
> config CLOCK_TICK_RATE
> 	int
> 	depends on !ARCH_MULTIPLATFORM && ARCH_USES_GETTIMEOFFSET
> 	depends on ARCH_GEMINI || ARCH_SA1100 || ARCH_EBSA110 || ARCH_EP93XX || ARCH_RPC || ARCH_AT91X40
"depends on ARCH_USES_GETTIMEOFFSET" is wrong I think:

	$ make hackkit_defconfig
	....
	$ grep -E '^CONFIG_(ARCH_SA|USES_GET)' .config 
	CONFIG_ARCH_SA1100=y
	$

so ARCH_SA1100 doesn't imply ARCH_USES_GETTIMEOFFSET and so there won't
be a CONFIG_CLOCK_TICK_RATE here.

> 	default 40000000 if ARCH_AT91X40
> 	default 38000000 if ARCH_GEMINI
> 	default 3686400 if ARCH_SA1100
> 	default 47894000 if ARCH_EBSA110
> 	default 983040 if ARCH_EP93xx
> 	default 2000000 if ARCH_RPC
> 	# don't even think about adding more to this list, better get rid of the
> 	# existing ones by converting them to proper clocksources
> 
> > The real trick is to make CLOCK_TICK_RATE and LATCH runtime
> > variables instead of a compile-time variables, right? Can't we do
> > this?
> 
> We've almost killed off CLOCK_TICK_RATE for anything that matters, I'd prefer not
> doing anything to it other than reducing its uses to the places that we know need
> it.
Where is it still needed apart from some platform specific uses? I think
my patch is fine and with the corresponding hardware to test its easy to
fix all users that I am aware of. IMHO a Kconfig symbol is overkill
here. I even volunteer to address the users, just cannot test.

Best regards
Uwe

-- 
Pengutronix e.K.                           | Uwe Kleine-K?nig            |
Industrial Linux Solutions                 | http://www.pengutronix.de/  |

^ permalink raw reply	[flat|nested] 30+ messages in thread

* [PATCH v5 1/4] ARM: deprecate mach/timex.h for !ARCH_MULTIPLATFORM
  2013-11-05 11:45             ` Russell King - ARM Linux
@ 2013-11-05 12:26               ` Arnd Bergmann
  2013-11-05 13:27                 ` Uwe Kleine-König
  0 siblings, 1 reply; 30+ messages in thread
From: Arnd Bergmann @ 2013-11-05 12:26 UTC (permalink / raw)
  To: linux-arm-kernel

On Tuesday 05 November 2013, Russell King - ARM Linux wrote:
> On Tue, Nov 05, 2013 at 12:34:42PM +0100, Arnd Bergmann wrote:
> > config CLOCK_TICK_RATE
> >       int
> >       depends on !ARCH_MULTIPLATFORM && ARCH_USES_GETTIMEOFFSET
> >       depends on ARCH_GEMINI || ARCH_SA1100 || ARCH_EBSA110 || ARCH_EP93XX || ARCH_RPC || ARCH_AT91X40
> >       default 40000000 if ARCH_AT91X40
> >       default 38000000 if ARCH_GEMINI
> >       default 3686400 if ARCH_SA1100
> >       default 47894000 if ARCH_EBSA110
> >       default 983040 if ARCH_EP93xx
> >       default 2000000 if ARCH_RPC
> >       # don't even think about adding more to this list, better get rid of the
> >       # existing ones by converting them to proper clocksources
> 
> That's a pipedream.  It really is.  Some of those are impossible to
> convert because you don't have enough timers/counters to provide the
> clocksource and clockevents - as I've mentioned several times in the
> past.

Do you mean removing all of the above is a pipedream, or using Kconfig like that?

I know we can't kill all of them, but there are still a few in the list above
that can be made to use clocksource, and I'm fine with keeping the list
around for the ones that really can't. The comment should probably be
clearer, but it was more intended for people with random out-of-tree platform
code that should be converted to use clocksource.

	Arnd

^ permalink raw reply	[flat|nested] 30+ messages in thread

* [PATCH v5 1/4] ARM: deprecate mach/timex.h for !ARCH_MULTIPLATFORM
  2013-11-05 12:26               ` Arnd Bergmann
@ 2013-11-05 13:27                 ` Uwe Kleine-König
  2013-11-05 14:58                   ` Arnd Bergmann
  0 siblings, 1 reply; 30+ messages in thread
From: Uwe Kleine-König @ 2013-11-05 13:27 UTC (permalink / raw)
  To: linux-arm-kernel

On Tue, Nov 05, 2013 at 01:26:31PM +0100, Arnd Bergmann wrote:
> On Tuesday 05 November 2013, Russell King - ARM Linux wrote:
> > On Tue, Nov 05, 2013 at 12:34:42PM +0100, Arnd Bergmann wrote:
> > > config CLOCK_TICK_RATE
> > >       int
> > >       depends on !ARCH_MULTIPLATFORM && ARCH_USES_GETTIMEOFFSET
> > >       depends on ARCH_GEMINI || ARCH_SA1100 || ARCH_EBSA110 || ARCH_EP93XX || ARCH_RPC || ARCH_AT91X40
> > >       default 40000000 if ARCH_AT91X40
> > >       default 38000000 if ARCH_GEMINI
> > >       default 3686400 if ARCH_SA1100
> > >       default 47894000 if ARCH_EBSA110
> > >       default 983040 if ARCH_EP93xx
> > >       default 2000000 if ARCH_RPC
> > >       # don't even think about adding more to this list, better get rid of the
> > >       # existing ones by converting them to proper clocksources
> > 
> > That's a pipedream.  It really is.  Some of those are impossible to
> > convert because you don't have enough timers/counters to provide the
> > clocksource and clockevents - as I've mentioned several times in the
> > past.
> 
> Do you mean removing all of the above is a pipedream, or using Kconfig like that?
> 
> I know we can't kill all of them, but there are still a few in the list above
> that can be made to use clocksource, and I'm fine with keeping the list
> around for the ones that really can't. The comment should probably be
> clearer, but it was more intended for people with random out-of-tree platform
> code that should be converted to use clocksource.
droping the CLOCK_TICK_RATE cpp symbol and converting to clocksource
doesn't necessarily need to go hand in hand, do they? If yes, can you
please point out the non-trivial use of CLOCK_TICK_RATE?

Best regards
Uwe

-- 
Pengutronix e.K.                           | Uwe Kleine-K?nig            |
Industrial Linux Solutions                 | http://www.pengutronix.de/  |

^ permalink raw reply	[flat|nested] 30+ messages in thread

* [PATCH v5 1/4] ARM: deprecate mach/timex.h for !ARCH_MULTIPLATFORM
  2013-11-05 13:27                 ` Uwe Kleine-König
@ 2013-11-05 14:58                   ` Arnd Bergmann
  0 siblings, 0 replies; 30+ messages in thread
From: Arnd Bergmann @ 2013-11-05 14:58 UTC (permalink / raw)
  To: linux-arm-kernel

On Tuesday 05 November 2013, Uwe Kleine-K?nig wrote:
> On Tue, Nov 05, 2013 at 01:26:31PM +0100, Arnd Bergmann wrote:

> > I know we can't kill all of them, but there are still a few in the list above
> > that can be made to use clocksource, and I'm fine with keeping the list
> > around for the ones that really can't. The comment should probably be
> > clearer, but it was more intended for people with random out-of-tree platform
> > code that should be converted to use clocksource.
> droping the CLOCK_TICK_RATE cpp symbol and converting to clocksource
> doesn't necessarily need to go hand in hand, do they? If yes, can you
> please point out the non-trivial use of CLOCK_TICK_RATE?

The last time I had a closer look at this file, defining CLOCK_TICK_RATE
was required for calculating ACT_HZ as the basis for accurate timekeeping
in the absence of a full clocksource driver. That seems to be no longer
the case, I know we talked about getting rid of this particular use
of CLOCK_TICK_RATE in the past, but I don't currently remember what
exactly happened.

	Arnd

^ permalink raw reply	[flat|nested] 30+ messages in thread

* [PATCH v4 2/4] ARM: make mach-xyz/Makefile.boot optional for !ARCH_MULTIPLATFORM
  2013-11-04 11:00 ` [PATCH v4 2/4] ARM: make mach-xyz/Makefile.boot optional " Uwe Kleine-König
@ 2013-11-11 19:35   ` Olof Johansson
  2015-01-30  9:32     ` Uwe Kleine-König
  0 siblings, 1 reply; 30+ messages in thread
From: Olof Johansson @ 2013-11-11 19:35 UTC (permalink / raw)
  To: linux-arm-kernel

On Mon, Nov 04, 2013 at 12:00:51PM +0100, Uwe Kleine-K?nig wrote:
> Makefile.boot is supposed to define zreladdr-y, params_phys-y and
> initrd_phys-y. The first one is only needed in the absence of AUTO_ZRELADDR
> and when building a zImage. The latters are only needed for bootp stuff.
> So ignore errors on including Makefile.boot and error out in the targets
> that need the corresponding settings.
> 
> This makes it unnecessary to create dummy Makefile.boot files.
> 
> Signed-off-by: Uwe Kleine-K?nig <u.kleine-koenig@pengutronix.de>

Acked-by: Olof Johansson <olof@lixom.net>

Please send it to Russell's patch tracker.


-Olof

^ permalink raw reply	[flat|nested] 30+ messages in thread

* [PATCH v4 3/4] ARM: v7-M: drop using mach/entry-macro.S
  2013-11-04 11:00 ` [PATCH v4 3/4] ARM: v7-M: drop using mach/entry-macro.S Uwe Kleine-König
@ 2013-11-11 19:35   ` Olof Johansson
  0 siblings, 0 replies; 30+ messages in thread
From: Olof Johansson @ 2013-11-11 19:35 UTC (permalink / raw)
  To: linux-arm-kernel

On Mon, Nov 04, 2013 at 12:00:52PM +0100, Uwe Kleine-K?nig wrote:
> The only v7-M platform only has some unused stubs in its
> mach/entry-macro.S file. So don't include it which allows efm32 to drop
> the file.
> 
> Signed-off-by: Uwe Kleine-K?nig <u.kleine-koenig@pengutronix.de>

Acked-by: Olof Johansson <olof@lixom.net>


-Olof

^ permalink raw reply	[flat|nested] 30+ messages in thread

* [PATCH v4 0/4] Energy Micro efm32 support
  2013-11-04 10:58 [PATCH v4 0/4] Energy Micro efm32 support Uwe Kleine-König
                   ` (3 preceding siblings ...)
  2013-11-04 11:00 ` [PATCH v4 4/4] ARM: new platform for Energy Micro's EFM32 Cortex-M3 SoCs Uwe Kleine-König
@ 2013-11-19 10:20 ` Uwe Kleine-König
  2013-11-19 13:11   ` Arnd Bergmann
  4 siblings, 1 reply; 30+ messages in thread
From: Uwe Kleine-König @ 2013-11-19 10:20 UTC (permalink / raw)
  To: linux-arm-kernel

Hello,

On Mon, Nov 04, 2013 at 11:58:36AM +0100, Uwe Kleine-K?nig wrote:
> now that 3.12 is out, I patted my efm32 tree and I consider the base
> platform support ready for merging. I put it into my for-next branch at
> 
> 	git://git.pengutronix.de/git/ukl/linux.git for-next
> 
> so it should make it into the next next. I target 3.14-rc1 to make it
> in. The patches have a few runtime (but no compile-time) dependencies on
> these patches:
> 
> 	ARM: call of_clk_init from default time_init handler
> 	clocksource: Provide timekeeping for efm32 SoCs
> 	clk: new driver for efm32 SoC
> 
> All but the last patch are already in next, Mike promised to take the
> last one. DEBUG_LL is broken without
> 
> 	ARM: DEBUG_LL on efm32 SoCs
I'd like to get patch 4 (ARM: new platform for Energy Micro's EFM32
Cortex-M3 SoCs) in. In the state as it was sent here it build depends on
patches 1 - 3.  Patches 2 and 3 are in Russell's patch tracker (7890/1
and 7889/1). What do you think about patch 1? Some of the
NEED_MACH_TIMEX_H are already fixed by patches that I sent out. The
options here are:

	- rework patch 4 to not depend on patch 1 (easy)
	- merge v5 of patch 1 (which is conservative, i.e. introduces
	  more NEED_MACH_TIMEX_H as probably will be needed in 3.14-rc1
	  and fix up later)
	- depend on all sent patches and coordinate accordingly (at
	  least: watchdog, clocksource, rtc).

I'd prefer the 2nd option as I didn't get Acks on all patches needed for
the third. What do you think?

Russell, if you are happy with patches 2 and 3 and would apply them to
your tree I could prepare a branch for the arm-soc people to pull which
bases on your tree and has patch 1 (v5).

Best regards
Uwe

-- 
Pengutronix e.K.                           | Uwe Kleine-K?nig            |
Industrial Linux Solutions                 | http://www.pengutronix.de/  |

^ permalink raw reply	[flat|nested] 30+ messages in thread

* [PATCH v4 0/4] Energy Micro efm32 support
  2013-11-19 10:20 ` [PATCH v4 0/4] Energy Micro efm32 support Uwe Kleine-König
@ 2013-11-19 13:11   ` Arnd Bergmann
  2013-11-19 19:08     ` Uwe Kleine-König
  0 siblings, 1 reply; 30+ messages in thread
From: Arnd Bergmann @ 2013-11-19 13:11 UTC (permalink / raw)
  To: linux-arm-kernel

On Tuesday 19 November 2013, Uwe Kleine-K?nig wrote:
> I'd like to get patch 4 (ARM: new platform for Energy Micro's EFM32
> Cortex-M3 SoCs) in. In the state as it was sent here it build depends on
> patches 1 - 3.  Patches 2 and 3 are in Russell's patch tracker (7890/1
> and 7889/1). What do you think about patch 1? Some of the
> NEED_MACH_TIMEX_H are already fixed by patches that I sent out. The
> options here are:
> 
>         - rework patch 4 to not depend on patch 1 (easy)
>         - merge v5 of patch 1 (which is conservative, i.e. introduces
>           more NEED_MACH_TIMEX_H as probably will be needed in 3.14-rc1
>           and fix up later)

These both sound fine to me in retrospect, unless someone has objections.
I would prefer the Kconfig solution I suggested (with the help text
fixed to address Russell's objections, and the list of platforms changed
to match your v4 patch), but I don't want to force you to go through
more revisions for this.

>         - depend on all sent patches and coordinate accordingly (at
>           least: watchdog, clocksource, rtc).
> 
> I'd prefer the 2nd option as I didn't get Acks on all patches needed for
> the third. What do you think?

Makes sense. It would be nice to still follow up on those patches
and merge them eventually.

> Russell, if you are happy with patches 2 and 3 and would apply them to
> your tree I could prepare a branch for the arm-soc people to pull which
> bases on your tree and has patch 1 (v5).

Did you get in touch with Jonathan about the patch set to make ARMv7-M
support coexist with multiplatform? I think that would be the best
solution in the long run, and IIRC there were no more objections at the
ARM mini summit to the draft patch.

	Arnd

^ permalink raw reply	[flat|nested] 30+ messages in thread

* [PATCH v4 0/4] Energy Micro efm32 support
  2013-11-19 13:11   ` Arnd Bergmann
@ 2013-11-19 19:08     ` Uwe Kleine-König
  0 siblings, 0 replies; 30+ messages in thread
From: Uwe Kleine-König @ 2013-11-19 19:08 UTC (permalink / raw)
  To: linux-arm-kernel

Hello Arnd,

On Tue, Nov 19, 2013 at 02:11:41PM +0100, Arnd Bergmann wrote:
> On Tuesday 19 November 2013, Uwe Kleine-K?nig wrote:
> > I'd like to get patch 4 (ARM: new platform for Energy Micro's EFM32
> > Cortex-M3 SoCs) in. In the state as it was sent here it build depends on
> > patches 1 - 3.  Patches 2 and 3 are in Russell's patch tracker (7890/1
> > and 7889/1). What do you think about patch 1? Some of the
> > NEED_MACH_TIMEX_H are already fixed by patches that I sent out. The
> > options here are:
> > 
> >         - rework patch 4 to not depend on patch 1 (easy)
> >         - merge v5 of patch 1 (which is conservative, i.e. introduces
> >           more NEED_MACH_TIMEX_H as probably will be needed in 3.14-rc1
> >           and fix up later)
> 
> These both sound fine to me in retrospect, unless someone has objections.
> I would prefer the Kconfig solution I suggested (with the help text
> fixed to address Russell's objections, and the list of platforms changed
> to match your v4 patch), but I don't want to force you to go through
> more revisions for this.
I think with all my patches only 2 or 3 platforms are left that need
timex.h. (Note this is a related but still different problem to the
gettimeoffset stuff.) And I plan to get rid of it again for 3.15-rc1, so
not needing to rework it sounds right to me.

> >         - depend on all sent patches and coordinate accordingly (at
> >           least: watchdog, clocksource, rtc).
> > 
> > I'd prefer the 2nd option as I didn't get Acks on all patches needed for
> > the third. What do you think?
> 
> Makes sense. It would be nice to still follow up on those patches
> and merge them eventually.
Sure.

> > Russell, if you are happy with patches 2 and 3 and would apply them to
> > your tree I could prepare a branch for the arm-soc people to pull which
> > bases on your tree and has patch 1 (v5).
> 
> Did you get in touch with Jonathan about the patch set to make ARMv7-M
> support coexist with multiplatform? I think that would be the best
> solution in the long run, and IIRC there were no more objections at the
> ARM mini summit to the draft patch.
Yeah, the previous revision used multiarch. I dropped it because of
objections from Russell. It's only some Kconfig shuffling away to use it
again.

Best regards
Uwe

-- 
Pengutronix e.K.                           | Uwe Kleine-K?nig            |
Industrial Linux Solutions                 | http://www.pengutronix.de/  |

^ permalink raw reply	[flat|nested] 30+ messages in thread

* [PATCH] ARM: u300: fix timekeeping when periodic mode is used
  2013-11-05  9:44         ` Linus Walleij
@ 2013-11-25 21:13           ` Uwe Kleine-König
  2013-11-26 12:32             ` Linus Walleij
  0 siblings, 1 reply; 30+ messages in thread
From: Uwe Kleine-König @ 2013-11-25 21:13 UTC (permalink / raw)
  To: linux-arm-kernel

On Tue, Nov 05, 2013 at 10:44:58AM +0100, Linus Walleij wrote:
> On Tue, Nov 5, 2013 at 10:03 AM, Uwe Kleine-K?nig
> <u.kleine-koenig@pengutronix.de> wrote:
> 
> > To determine the value to write to the hardware's timer counter register
> > the symbol CLOCK_TICK_RATE is used. This value is a dummy value on u300
> > though. So instead use the clock rate that is used for oneshot mode.
> >
> > Signed-off-by: Uwe Kleine-K?nig <u.kleine-koenig@pengutronix.de>
> 
> Thanks, patch applied to the u300 branch in the linux-stericsson
> tree.
This isn't in next? At least this patch doesn't appear there.

Best regards
Uwe

-- 
Pengutronix e.K.                           | Uwe Kleine-K?nig            |
Industrial Linux Solutions                 | http://www.pengutronix.de/  |

^ permalink raw reply	[flat|nested] 30+ messages in thread

* [PATCH] ARM: u300: fix timekeeping when periodic mode is used
  2013-11-25 21:13           ` Uwe Kleine-König
@ 2013-11-26 12:32             ` Linus Walleij
  0 siblings, 0 replies; 30+ messages in thread
From: Linus Walleij @ 2013-11-26 12:32 UTC (permalink / raw)
  To: linux-arm-kernel

On Mon, Nov 25, 2013 at 10:13 PM, Uwe Kleine-K?nig
<u.kleine-koenig@pengutronix.de> wrote:
> On Tue, Nov 05, 2013 at 10:44:58AM +0100, Linus Walleij wrote:
>> On Tue, Nov 5, 2013 at 10:03 AM, Uwe Kleine-K?nig
>> <u.kleine-koenig@pengutronix.de> wrote:
>>
>> > To determine the value to write to the hardware's timer counter register
>> > the symbol CLOCK_TICK_RATE is used. This value is a dummy value on u300
>> > though. So instead use the clock rate that is used for oneshot mode.
>> >
>> > Signed-off-by: Uwe Kleine-K?nig <u.kleine-koenig@pengutronix.de>
>>
>> Thanks, patch applied to the u300 branch in the linux-stericsson
>> tree.
>
> This isn't in next? At least this patch doesn't appear there.

I missed to send it upstream for v3.13, sorry.

It is in my U300 patch queue, I'll send a pull request to ARM SoC
ASAP.

Yours,
Linus Walleij

^ permalink raw reply	[flat|nested] 30+ messages in thread

* [PATCH v4 2/4] ARM: make mach-xyz/Makefile.boot optional for !ARCH_MULTIPLATFORM
  2013-11-11 19:35   ` Olof Johansson
@ 2015-01-30  9:32     ` Uwe Kleine-König
  0 siblings, 0 replies; 30+ messages in thread
From: Uwe Kleine-König @ 2015-01-30  9:32 UTC (permalink / raw)
  To: linux-arm-kernel

Hello Olof, hello Russell,

On Mon, Nov 11, 2013 at 11:35:26AM -0800, Olof Johansson wrote:
> On Mon, Nov 04, 2013 at 12:00:51PM +0100, Uwe Kleine-K?nig wrote:
> > Makefile.boot is supposed to define zreladdr-y, params_phys-y and
> > initrd_phys-y. The first one is only needed in the absence of AUTO_ZRELADDR
> > and when building a zImage. The latters are only needed for bootp stuff.
> > So ignore errors on including Makefile.boot and error out in the targets
> > that need the corresponding settings.
> > 
> > This makes it unnecessary to create dummy Makefile.boot files.
> > 
> > Signed-off-by: Uwe Kleine-K?nig <u.kleine-koenig@pengutronix.de>
> 
> Acked-by: Olof Johansson <olof@lixom.net>
> 
> Please send it to Russell's patch tracker.
I did that and it waits for being applied there since November 2013.

Russell, is there a problem with the patch?

Having this patch would allow to get rid of
arch/arm/mach-efm32/Makefile.boot.

Thanks
Uwe

-- 
Pengutronix e.K.                           | Uwe Kleine-K?nig            |
Industrial Linux Solutions                 | http://www.pengutronix.de/  |

^ permalink raw reply	[flat|nested] 30+ messages in thread

end of thread, other threads:[~2015-01-30  9:32 UTC | newest]

Thread overview: 30+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2013-11-04 10:58 [PATCH v4 0/4] Energy Micro efm32 support Uwe Kleine-König
2013-11-04 11:00 ` [PATCH v4 1/4] ARM: deprecate mach/timex.h for !ARCH_MULTIPLATFORM Uwe Kleine-König
2013-11-04 13:53   ` Arnd Bergmann
2013-11-05  8:33     ` Uwe Kleine-König
2013-11-05  9:03       ` [PATCH] ARM: u300: fix timekeeping when periodic mode is used Uwe Kleine-König
2013-11-05  9:44         ` Linus Walleij
2013-11-25 21:13           ` Uwe Kleine-König
2013-11-26 12:32             ` Linus Walleij
2013-11-05  9:12       ` [PATCH v5 1/4] ARM: deprecate mach/timex.h for !ARCH_MULTIPLATFORM Uwe Kleine-König
2013-11-05  9:42         ` Linus Walleij
2013-11-05 10:01           ` Uwe Kleine-König
2013-11-05 11:34           ` Arnd Bergmann
2013-11-05 11:37             ` Linus Walleij
2013-11-05 11:45             ` Russell King - ARM Linux
2013-11-05 12:26               ` Arnd Bergmann
2013-11-05 13:27                 ` Uwe Kleine-König
2013-11-05 14:58                   ` Arnd Bergmann
2013-11-05 11:52             ` Uwe Kleine-König
2013-11-04 11:00 ` [PATCH v4 2/4] ARM: make mach-xyz/Makefile.boot optional " Uwe Kleine-König
2013-11-11 19:35   ` Olof Johansson
2015-01-30  9:32     ` Uwe Kleine-König
2013-11-04 11:00 ` [PATCH v4 3/4] ARM: v7-M: drop using mach/entry-macro.S Uwe Kleine-König
2013-11-11 19:35   ` Olof Johansson
2013-11-04 11:00 ` [PATCH v4 4/4] ARM: new platform for Energy Micro's EFM32 Cortex-M3 SoCs Uwe Kleine-König
2013-11-04 13:56   ` Arnd Bergmann
2013-11-05  9:48     ` Uwe Kleine-König
2013-11-05 11:10       ` Arnd Bergmann
2013-11-19 10:20 ` [PATCH v4 0/4] Energy Micro efm32 support Uwe Kleine-König
2013-11-19 13:11   ` Arnd Bergmann
2013-11-19 19:08     ` Uwe Kleine-König

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.