Skip to contentSkip to conversation

mx31: add support for the bugbase 1.3 from buglabs

PATCH New Denis 'GNUtoo' Carikli 5 participants 25 messages Feb 10, 2011 – Feb 18, 2011

Subsystems (3)
lore
Share & tools
lore
#0 lore raw

PATCH 1/1 mx31: add support for the bugbase 1.3 from buglabs

This work was based on bug-linux-2.6.30.patch that can be found
in buglabs's svn here:
svn://bugcamp.net/bug/branches/izzy/experimental

Note that the hardware schematics and documentations can be obtained
here: http://www.bugcommunity.com/wiki/index.php/BUGbase

---
 arch/arm/mach-mx3/Kconfig            |    9 +++
 arch/arm/mach-mx3/Makefile           |    1 +
 arch/arm/mach-mx3/mach-mx31bugbase.c |   97 ++++++++++++++++++++++++++++++++++
 3 files changed, 107 insertions(+), 0 deletions(-)
 create mode 100644 arch/arm/mach-mx3/mach-mx31bugbase.c
arch/arm/mach-mx3/Kconfig +9 -0
index de80d98..4f57f13 100644
@@ -199,6 +199,15 @@ config MACH_KZM_ARM11_01
 	  Include support for KZM-ARM11-01. This includes specific
 	  configurations for the board and its peripherals.
 
+config MACH_BUG
+	bool "Support Buglabs BUGBase platform"
+	select SOC_IMX31
+	select IMX_HAVE_PLATFORM_IMX_UART
+	default y
+	help
+	  Include support for BUGBase 1.3 platform. This includes specific
+	  configurations for the board and its peripherals.
+
 config MACH_EUKREA_CPUIMX35
 	bool "Support Eukrea CPUIMX35 Platform"
 	select SOC_IMX35
arch/arm/mach-mx3/Makefile +1 -0
index bc7294f..98e5eb3 100644
@@ -20,6 +20,7 @@ obj-$(CONFIG_MACH_PCM043)	+= mach-pcm043.o
 obj-$(CONFIG_MACH_ARMADILLO5X0) += mach-armadillo5x0.o
 obj-$(CONFIG_MACH_MX35_3DS)	+= mach-mx35_3ds.o
 obj-$(CONFIG_MACH_KZM_ARM11_01)	+= mach-kzm_arm11_01.o
+obj-$(CONFIG_MACH_BUG)          += mach-mx31bugbase.o
 obj-$(CONFIG_MACH_EUKREA_CPUIMX35)	+= mach-cpuimx35.o
 obj-$(CONFIG_MACH_EUKREA_MBIMXSD35_BASEBOARD)	+= eukrea_mbimxsd-baseboard.o
 obj-$(CONFIG_MACH_VPR200)	+= mach-vpr200.o
arch/arm/mach-mx3/mach-mx31bugbase.c new file +97 -0

97 lines not on this page · raw message

Signature · 1 line
1.7.0.4
#1 lore raw

PATCH 1/1 mx31: add support for the bugbase 1.3 from buglabs

Hello,

(sorry if this mail is sent twice..)

Quoted 6 lines · Denis 'GNUtoo' Carikli

This work was based on bug-linux-2.6.30.patch that can be found
in buglabs's svn here:
svn://bugcamp.net/bug/branches/izzy/experimental

Note that the hardware schematics and documentations can be obtained
here: http://www.bugcommunity.com/wiki/index.php/BUGbase

some nitpicking inside:

Quoted 55 lines
---
 arch/arm/mach-mx3/Kconfig            |    9 +++
 arch/arm/mach-mx3/Makefile           |    1 +
 arch/arm/mach-mx3/mach-mx31bugbase.c |   97 ++++++++++++++++++++++++++++++++++
 3 files changed, 107 insertions(+), 0 deletions(-)
 create mode 100644 arch/arm/mach-mx3/mach-mx31bugbase.c
arch/arm/mach-mx3/Kconfig +9 -0
index de80d98..4f57f13 100644
@@ -199,6 +199,15 @@ config MACH_KZM_ARM11_01
 	  Include support for KZM-ARM11-01. This includes specific
 	  configurations for the board and its peripherals.
 
+config MACH_BUG
+	bool "Support Buglabs BUGBase platform"
+	select SOC_IMX31
+	select IMX_HAVE_PLATFORM_IMX_UART
+	default y
+	help
+	  Include support for BUGBase 1.3 platform. This includes specific
+	  configurations for the board and its peripherals.
+
 config MACH_EUKREA_CPUIMX35
 	bool "Support Eukrea CPUIMX35 Platform"
 	select SOC_IMX35
arch/arm/mach-mx3/Makefile +1 -0
index bc7294f..98e5eb3 100644
@@ -20,6 +20,7 @@ obj-$(CONFIG_MACH_PCM043)	+= mach-pcm043.o
 obj-$(CONFIG_MACH_ARMADILLO5X0) += mach-armadillo5x0.o
 obj-$(CONFIG_MACH_MX35_3DS)	+= mach-mx35_3ds.o
 obj-$(CONFIG_MACH_KZM_ARM11_01)	+= mach-kzm_arm11_01.o
+obj-$(CONFIG_MACH_BUG)          += mach-mx31bugbase.o
 obj-$(CONFIG_MACH_EUKREA_CPUIMX35)	+= mach-cpuimx35.o
 obj-$(CONFIG_MACH_EUKREA_MBIMXSD35_BASEBOARD)	+= eukrea_mbimxsd-baseboard.o
 obj-$(CONFIG_MACH_VPR200)	+= mach-vpr200.o
arch/arm/mach-mx3/mach-mx31bugbase.c new file +8 -0
new file mode 100644
index 0000000..e0ad0f0
@@ -0,0 +1,97 @@
+/*
+ *  Copyright (C) 2000 Deep Blue Solutions Ltd
+ *  Copyright (C) 2002 Shane Nay (shane at minirl.com)
+ *  Copyright 2005-2007 Freescale Semiconductor, Inc. All Rights Reserved.
+ *
+ * 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

arch/arm/mach-mx3/mach-mx31bugbase.c line 18

Quoted 10 lines
arch/arm/mach-mx3/mach-mx31bugbase.c new file +10 -0
+ * (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

The address isn't correct anymore, just remove the paragraph, see commit aa71251c5b8c673361281fbfd8be5a9ee8b9f4cc.

Quoted 25 lines
arch/arm/mach-mx3/mach-mx31bugbase.c new file +25 -0
+ */
+
+#include <linux/kernel.h>
+#include <linux/init.h>
+#include <linux/platform_device.h>
+
+#include <mach/iomux-mx3.h>
+#include <mach/imx-uart.h>
+#include <mach/hardware.h>
+#include <mach/common.h>
+
+#include <asm/mach/time.h>
+#include <asm/mach/arch.h>
+#include <asm/mach-types.h>
+
+#include "devices-imx31.h"
+
+/*!
+ * @file mx31bugbase.c
+ *
+ * @brief This file contains the board-specific initialization routines.
+ *
+ * @ingroup System
+ */
+

arch/arm/mach-mx3/mach-mx31bugbase.c line 53

Quoted 10 lines
arch/arm/mach-mx3/mach-mx31bugbase.c new file +10 -0
+#if defined(CONFIG_SERIAL_IMX) || defined(CONFIG_SERIAL_IMX_MODULE)
+static struct imxuart_platform_data uart_pdata = {
+	.flags = IMXUART_HAVE_RTSCTS,
+};
+
+static unsigned int uart5_pins[] = {
+	MX31_PIN_PC_RST__CTS5,
+	MX31_PIN_PC_VS2__RTS5,
+	MX31_PIN_PC_BVD2__TXD5,
+	MX31_PIN_PC_BVD1__RXD5

please add a ","

Quoted 34 lines
arch/arm/mach-mx3/mach-mx31bugbase.c new file +34 -0
+};
+
+static inline void mxc_init_imx_uart(void)
+{
+	mxc_iomux_setup_multiple_pins(uart5_pins,
+				ARRAY_SIZE(uart5_pins), "uart-4");
+	imx31_add_imx_uart4(&uart_pdata);
+}
+#else /* !SERIAL_IMX */
+static inline void mxc_init_imx_uart(void)
+{
+}
+#endif /* !SERIAL_IMX */
+
+/*!
+ * Board specific initialization.
+ */
+static void __init mxc_board_init(void)
+{
+	mxc_init_imx_uart();
+}
+
+
+static void __init mx31bug_timer_init(void)
+{
+	mx31_clocks_init(26000000);
+}
+
+static struct sys_timer mx31bug_timer = {
+	.init	= mx31bug_timer_init,
+};
+
+/*
+ * The following uses standard kernel macros defined in arch.h in order to

arch/arm/mach-mx3/mach-mx31bugbase.c line 97

Quoted 10 lines
arch/arm/mach-mx3/mach-mx31bugbase.c new file +10 -0
+ * initialize __mach_desc_MX31BUG data structure.
+ */
+
+MACHINE_START(BUG, "BugLabs BUGBase")
+	.boot_params    = PHYS_OFFSET + 0x100,
+	.timer          = &mx31bug_timer,
+	.map_io         = mx31_map_io,
+	.init_irq       = mx31_init_irq,
+	.init_machine   = mxc_board_init,
+MACHINE_END

cheers, Marc

Signature · 12 lines
Pengutronix e.K.                  | Marc Kleine-Budde           |
Industrial Linux Solutions        | Phone: +49-231-2826-924     |
Vertretung West/Dortmund          | Fax:   +49-5121-206917-5555 |
Amtsgericht Hildesheim, HRA 2686  | http://www.pengutronix.de   |

-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 262 bytes
Desc: OpenPGP digital signature
URL: <http://lists.infradead.org/pipermail/linux-arm-kernel/attachments/20110210/79462723/attachment.sig>
reviewer
#2 lore raw

PATCH 1/1 mx31: add support for the bugbase 1.3 from buglabs

In reply to Denis 'GNUtoo' Carikli

Hi Denis,

Quoted 7 lines · Denis 'GNUtoo' Carikli

This work was based on bug-linux-2.6.30.patch that can be found ?in buglabs's svn here:
?svn://bugcamp.net/bug/branches/izzy/experimental

Note that the hardware schematics and documentations can be obtained ?here: http://www.bugcommunity.com/wiki/index.php/BUGbase

Quoted 6 lines

---

?arch/arm/mach-mx3/Kconfig ? ? ? ? ? ?| ? ?9 +++
?arch/arm/mach-mx3/Makefile ? ? ? ? ? | ? ?1 +
?arch/arm/mach-mx3/mach-mx31bugbase.c | ? 97 ++++++++++++++++++++++++++++++++++

?3 files changed, 107 insertions(+), 0 deletions(-)

Please add an entry for this board at
arch/arm/plat-mxc/include/mach/uncompress.h

Regards,

Fabio Estevam

#3 lore raw

PATCH 1/1 mx31: add support for the bugbase 1.3 from buglabs

In reply to Denis 'GNUtoo' Carikli
Quoted 53 lines · Denis 'GNUtoo' Carikli

This work was based on bug-linux-2.6.30.patch that can be found
in buglabs's svn here:
svn://bugcamp.net/bug/branches/izzy/experimental

Note that the hardware schematics and documentations can be obtained
here: http://www.bugcommunity.com/wiki/index.php/BUGbase

---
 arch/arm/mach-mx3/Kconfig            |    9 +++
 arch/arm/mach-mx3/Makefile           |    1 +
 arch/arm/mach-mx3/mach-mx31bugbase.c |   97 ++++++++++++++++++++++++++++++++++
 3 files changed, 107 insertions(+), 0 deletions(-)
 create mode 100644 arch/arm/mach-mx3/mach-mx31bugbase.c
arch/arm/mach-mx3/Kconfig +9 -0
index de80d98..4f57f13 100644
@@ -199,6 +199,15 @@ config MACH_KZM_ARM11_01
 	  Include support for KZM-ARM11-01. This includes specific
 	  configurations for the board and its peripherals.
 
+config MACH_BUG
+	bool "Support Buglabs BUGBase platform"
+	select SOC_IMX31
+	select IMX_HAVE_PLATFORM_IMX_UART
+	default y
+	help
+	  Include support for BUGBase 1.3 platform. This includes specific
+	  configurations for the board and its peripherals.
+
 config MACH_EUKREA_CPUIMX35
 	bool "Support Eukrea CPUIMX35 Platform"
 	select SOC_IMX35
arch/arm/mach-mx3/Makefile +1 -0
index bc7294f..98e5eb3 100644
@@ -20,6 +20,7 @@ obj-$(CONFIG_MACH_PCM043)	+= mach-pcm043.o
 obj-$(CONFIG_MACH_ARMADILLO5X0) += mach-armadillo5x0.o
 obj-$(CONFIG_MACH_MX35_3DS)	+= mach-mx35_3ds.o
 obj-$(CONFIG_MACH_KZM_ARM11_01)	+= mach-kzm_arm11_01.o
+obj-$(CONFIG_MACH_BUG)          += mach-mx31bugbase.o
 obj-$(CONFIG_MACH_EUKREA_CPUIMX35)	+= mach-cpuimx35.o
 obj-$(CONFIG_MACH_EUKREA_MBIMXSD35_BASEBOARD)	+= eukrea_mbimxsd-baseboard.o
 obj-$(CONFIG_MACH_VPR200)	+= mach-vpr200.o
arch/arm/mach-mx3/mach-mx31bugbase.c new file +0 -0
new file mode 100644
index 0000000..e0ad0f0

arch/arm/mach-mx3/mach-mx31bugbase.c line 4

Quoted 4 lines
arch/arm/mach-mx3/mach-mx31bugbase.c new file +4 -0
@@ -0,0 +1,97 @@
+/*
+ *  Copyright (C) 2000 Deep Blue Solutions Ltd
+ *  Copyright (C) 2002 Shane Nay (shane at minirl.com)
+ *  Copyright 2005-2007 Freescale Semiconductor, Inc. All Rights Reserved.

If you ask me, remove the double space before the "Copyright"s.

Quoted 27 lines
arch/arm/mach-mx3/mach-mx31bugbase.c new file +27 -0
+ * 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
+ */
+
+#include <linux/kernel.h>
+#include <linux/init.h>
+#include <linux/platform_device.h>
+
+#include <mach/iomux-mx3.h>
+#include <mach/imx-uart.h>
+#include <mach/hardware.h>
+#include <mach/common.h>
+
+#include <asm/mach/time.h>
+#include <asm/mach/arch.h>
+#include <asm/mach-types.h>

arch/arm/mach-mx3/mach-mx31bugbase.c line 42

Quoted 10 lines
arch/arm/mach-mx3/mach-mx31bugbase.c new file +10 -0
+
+#include "devices-imx31.h"
+
+/*!
+ * @file mx31bugbase.c
+ *
+ * @brief This file contains the board-specific initialization routines.
+ *
+ * @ingroup System
+ */

No doxygen-like comments, please. This comment is quite useless actually.

Quoted 14 lines
arch/arm/mach-mx3/mach-mx31bugbase.c new file +14 -0
+
+#if defined(CONFIG_SERIAL_IMX) || defined(CONFIG_SERIAL_IMX_MODULE)
+static struct imxuart_platform_data uart_pdata = {
+	.flags = IMXUART_HAVE_RTSCTS,
+};
+
+static unsigned int uart5_pins[] = {
+	MX31_PIN_PC_RST__CTS5,
+	MX31_PIN_PC_VS2__RTS5,
+	MX31_PIN_PC_BVD2__TXD5,
+	MX31_PIN_PC_BVD1__RXD5
+};
+
+static inline void mxc_init_imx_uart(void)

arch/arm/mach-mx3/mach-mx31bugbase.c line 66

Quoted 10 lines
arch/arm/mach-mx3/mach-mx31bugbase.c new file +10 -0
+{
+	mxc_iomux_setup_multiple_pins(uart5_pins,
+				ARRAY_SIZE(uart5_pins), "uart-4");
+	imx31_add_imx_uart4(&uart_pdata);
+}
+#else /* !SERIAL_IMX */
+static inline void mxc_init_imx_uart(void)
+{
+}
+#endif /* !SERIAL_IMX */

We usually register devices independant of the availability of the drivers.

arch/arm/mach-mx3/mach-mx31bugbase.c line 71

Quoted 5 lines
arch/arm/mach-mx3/mach-mx31bugbase.c new file +5 -0
+
+/*!
+ * Board specific initialization.
+ */
+static void __init mxc_board_init(void)

Please use a different name. mxc_board_init is used much and so makes ctags and backtraces less valuable. Something like mx31bug_init would be fine.

Quoted 8 lines
arch/arm/mach-mx3/mach-mx31bugbase.c new file +8 -0
+{
+	mxc_init_imx_uart();
+}
+
+
+static void __init mx31bug_timer_init(void)
+{
+	mx31_clocks_init(26000000);

arch/arm/mach-mx3/mach-mx31bugbase.c line 89

Quoted 10 lines
arch/arm/mach-mx3/mach-mx31bugbase.c new file +10 -0
+}
+
+static struct sys_timer mx31bug_timer = {
+	.init	= mx31bug_timer_init,
+};
+
+/*
+ * The following uses standard kernel macros defined in arch.h in order to
+ * initialize __mach_desc_MX31BUG data structure.
+ */

not usefull.

arch/arm/mach-mx3/mach-mx31bugbase.c line 92

Quoted 3 lines
arch/arm/mach-mx3/mach-mx31bugbase.c new file +3 -0
+
+MACHINE_START(BUG, "BugLabs BUGBase")
+	.boot_params    = PHYS_OFFSET + 0x100,

use MX3_PHYS_OFFSET here please.

arch/arm/mach-mx3/mach-mx31bugbase.c line 97

Quoted 5 lines
arch/arm/mach-mx3/mach-mx31bugbase.c new file +5 -0
+	.timer          = &mx31bug_timer,
+	.map_io         = mx31_map_io,
+	.init_irq       = mx31_init_irq,
+	.init_machine   = mxc_board_init,
+MACHINE_END

Note that this patch conflicts with

	http://mid.gmane.org/1297092922-12741-2-git-send-email-u.kleine-koenig at pengutronix.de

Best regards
Uwe

Signature · 2 lines
Pengutronix e.K.                           | Uwe Kleine-K?nig            |
Industrial Linux Solutions                 | http://www.pengutronix.de/  |
#4 lore raw

PATCH 1/3 ARM: mx3+mx5: rename to ${machine}_init

mxc_board_init is too generic to be useful. Additionally change some mxc_timer to ${machine}_timer, too.

---
 arch/arm/mach-mx3/mach-cpuimx35.c      |    4 ++--
 arch/arm/mach-mx3/mach-kzm_arm11_01.c  |    6 +-----
 arch/arm/mach-mx3/mach-mx31_3ds.c      |    7 ++-----
 arch/arm/mach-mx3/mach-mx31ads.c       |    7 ++-----
 arch/arm/mach-mx3/mach-mx31lite.c      |    4 ++--
 arch/arm/mach-mx3/mach-mx31moboard.c   |    4 ++--
 arch/arm/mach-mx3/mach-mx35_3ds.c      |    4 ++--
 arch/arm/mach-mx3/mach-pcm037.c        |    4 ++--
 arch/arm/mach-mx3/mach-pcm043.c        |    4 ++--
 arch/arm/mach-mx3/mach-qong.c          |    4 ++--
 arch/arm/mach-mx5/board-mx51_3ds.c     |   10 +++++-----
 arch/arm/mach-mx5/board-mx51_babbage.c |   10 +++++-----
 arch/arm/mach-mx5/board-mx51_efikamx.c |   10 +++++-----
 13 files changed, 34 insertions(+), 44 deletions(-)
arch/arm/mach-mx3/mach-cpuimx35.c +2 -2
index 3eedf0f..7364db1 100644
@@ -146,7 +146,7 @@ __setup("otg_mode=", eukrea_cpuimx35_otg_mode);
 /*
  * Board specific initialization.
  */
-static void __init mxc_board_init(void)
+static void __init eukrea_cpuimx35_init(void)
 {
 	mxc_iomux_v3_setup_multiple_pads(eukrea_cpuimx35_pads,
 			ARRAY_SIZE(eukrea_cpuimx35_pads));
@@ -189,5 +189,5 @@ MACHINE_START(EUKREA_CPUIMX35, "Eukrea CPUIMX35")
 	.init_ext3_fs = imx35_init_early,
 	.init_irq = mx35_init_irq,
 	.timer = &eukrea_cpuimx35_timer,
-	.init_machine = mxc_board_init,
+	.init_machine = eukrea_cpuimx35_init,
 MACHINE_END
arch/arm/mach-mx3/mach-kzm_arm11_01.c +1 -5
index 52b8dd7..d3cc739 100644
@@ -266,13 +266,9 @@ static void __init kzm_timer_init(void)
 }
 
 static struct sys_timer kzm_timer = {
-	.init   = kzm_timer_init,
+	.init = kzm_timer_init,
 };
 
-/*
- * The following uses standard kernel macros define in arch.h in order to
- * initialize __mach_desc_KZM_ARM11_01 data structure.
- */
 MACHINE_START(KZM_ARM11_01, "Kyoto Microcomputer Co., Ltd. KZM-ARM11-01")
 	.boot_params = MX3x_PHYS_OFFSET + 0x100,
 	.map_io = kzm_map_io,
arch/arm/mach-mx3/mach-mx31_3ds.c +2 -5
index 3d0ded9..1360fe4 100644
@@ -320,10 +320,7 @@ static const struct imxuart_platform_data uart_pdata __initconst = {
 	.flags = IMXUART_HAVE_RTSCTS,
 };
 
-/*!
- * Board specific initialization.
- */
-static void __init mxc_board_init(void)
+static void __init mx31_3ds_init(void)
 {
 	mxc_iomux_setup_multiple_pins(mx31_3ds_pins, ARRAY_SIZE(mx31_3ds_pins),
 				      "mx31_3ds");
@@ -378,5 +375,5 @@ MACHINE_START(MX31_3DS, "Freescale MX31PDK (3DS)")
 	.init_early = imx31_init_early,
 	.init_irq = mx31_init_irq,
 	.timer = &mx31_3ds_timer,
-	.init_machine = mxc_board_init,
+	.init_machine = mx31_3ds_init,
 MACHINE_END
arch/arm/mach-mx3/mach-mx31ads.c +2 -5
index 787bdc4..cb80b96 100644
@@ -524,10 +524,7 @@ static void __init mx31ads_init_irq(void)
 	mx31ads_init_expio();
 }
 
-/*!
- * Board specific initialization.
- */
-static void __init mxc_board_init(void)
+static void __init mx31ads_init(void)
 {
 	mxc_init_extuart();
 	mxc_init_imx_uart();
@@ -555,5 +552,5 @@ MACHINE_START(MX31ADS, "Freescale MX31ADS")
 	.init_early = imx31_init_early,
 	.init_irq = mx31ads_init_irq,
 	.timer = &mx31ads_timer,
-	.init_machine = mxc_board_init,
+	.init_machine = mx31ads_init,
 MACHINE_END
arch/arm/mach-mx3/mach-mx31lite.c +2 -2
index 01e24b5..64a1c1e 100644
@@ -227,7 +227,7 @@ void __init mx31lite_map_io(void)
 static int mx31lite_baseboard;
 core_param(mx31lite_baseboard, mx31lite_baseboard, int, 0444);
 
-static void __init mxc_board_init(void)
+static void __init mx31lite_init(void)
 {
 	int ret;
 
@@ -286,5 +286,5 @@ MACHINE_START(MX31LITE, "LogicPD i.MX31 SOM")
 	.init_early = imx31_init_early,
 	.init_irq = mx31_init_irq,
 	.timer = &mx31lite_timer,
-	.init_machine = mxc_board_init,
+	.init_machine = mx31lite_init,
 MACHINE_END
arch/arm/mach-mx3/mach-mx31moboard.c +2 -2
index fd988a0..e77b081 100644
@@ -503,7 +503,7 @@ core_param(mx31moboard_baseboard, mx31moboard_baseboard, int, 0444);
 /*
  * Board specific initialization.
  */
-static void __init mxc_board_init(void)
+static void __init mx31moboard_init(void)
 {
 	mxc_iomux_setup_multiple_pins(moboard_pins, ARRAY_SIZE(moboard_pins),
 		"moboard");
@@ -569,5 +569,5 @@ MACHINE_START(MX31MOBOARD, "EPFL Mobots mx31moboard")
 	.init_early = imx31_init_early,
 	.init_irq = mx31_init_irq,
 	.timer = &mx31moboard_timer,
-	.init_machine = mxc_board_init,
+	.init_machine = mx31moboard_init,
 MACHINE_END
arch/arm/mach-mx3/mach-mx35_3ds.c +2 -2
index c5115dc..0665111 100644
@@ -156,7 +156,7 @@ __setup("otg_mode=", mx35_3ds_otg_mode);
 /*
  * Board specific initialization.
  */
-static void __init mxc_board_init(void)
+static void __init mx35_3ds_init(void)
 {
 	mxc_iomux_v3_setup_multiple_pads(mx35pdk_pads, ARRAY_SIZE(mx35pdk_pads));
 
@@ -198,5 +198,5 @@ MACHINE_START(MX35_3DS, "Freescale MX35PDK")
 	.init_early = imx35_init_early,
 	.init_irq = mx35_init_irq,
 	.timer = &mx35pdk_timer,
-	.init_machine = mxc_board_init,
+	.init_machine = mx35_3ds_init,
 MACHINE_END
arch/arm/mach-mx3/mach-pcm037.c +2 -2
index 7d444f7..b4f9ace 100644
@@ -568,7 +568,7 @@ __setup("otg_mode=", pcm037_otg_mode);
 /*
  * Board specific initialization.
  */
-static void __init mxc_board_init(void)
+static void __init pcm037_init(void)
 {
 	int ret;
 
@@ -680,5 +680,5 @@ MACHINE_START(PCM037, "Phytec Phycore pcm037")
 	.init_early = imx31_init_early,
 	.init_irq = mx31_init_irq,
 	.timer = &pcm037_timer,
-	.init_machine = mxc_board_init,
+	.init_machine = pcm037_init,
 MACHINE_END
arch/arm/mach-mx3/mach-pcm043.c +2 -2
index b03e19d..912841c 100644
@@ -341,7 +341,7 @@ __setup("otg_mode=", pcm043_otg_mode);
 /*
  * Board specific initialization.
  */
-static void __init mxc_board_init(void)
+static void __init pcm043_init(void)
 {
 	mxc_iomux_v3_setup_multiple_pads(pcm043_pads, ARRAY_SIZE(pcm043_pads));
 
@@ -408,5 +408,5 @@ MACHINE_START(PCM043, "Phytec Phycore pcm043")
 	.init_early = imx35_init_early,
 	.init_irq = mx35_init_irq,
 	.timer = &pcm043_timer,
-	.init_machine = mxc_board_init,
+	.init_machine = pcm043_init,
 MACHINE_END
arch/arm/mach-mx3/mach-qong.c +2 -2
index 064f2db..0028163 100644
@@ -247,7 +247,7 @@ static void __init qong_init_fpga(void)
 /*
  * Board specific initialization.
  */
-static void __init mxc_board_init(void)
+static void __init qong_init(void)
 {
 	mxc_init_imx_uart();
 	qong_init_nor_mtd();
@@ -275,5 +275,5 @@ MACHINE_START(QONG, "Dave/DENX QongEVB-LITE")
 	.init_early = imx31_init_early,
 	.init_irq = mx31_init_irq,
 	.timer = &qong_timer,
-	.init_machine = mxc_board_init,
+	.init_machine = qong_init,
 MACHINE_END
arch/arm/mach-mx5/board-mx51_3ds.c +5 -5
index 0168470..63dfbea 100644
@@ -133,7 +133,7 @@ static struct spi_board_info mx51_3ds_spi_nor_device[] = {
 /*
  * Board specific initialization.
  */
-static void __init mxc_board_init(void)
+static void __init mx51_3ds_init(void)
 {
 	mxc_iomux_v3_setup_multiple_pads(mx51_3ds_pads,
 					ARRAY_SIZE(mx51_3ds_pads));
@@ -160,8 +160,8 @@ static void __init mx51_3ds_timer_init(void)
 	mx51_clocks_init(32768, 24000000, 22579200, 0);
 }
 
-static struct sys_timer mxc_timer = {
-	.init	= mx51_3ds_timer_init,
+static struct sys_timer mx51_3ds_timer = {
+	.init = mx51_3ds_timer_init,
 };
 
 MACHINE_START(MX51_3DS, "Freescale MX51 3-Stack Board")
@@ -170,6 +170,6 @@ MACHINE_START(MX51_3DS, "Freescale MX51 3-Stack Board")
 	.map_io = mx51_map_io,
 	.init_early = imx51_init_early,
 	.init_irq = mx51_init_irq,
-	.timer = &mxc_timer,
-	.init_machine = mxc_board_init,
+	.timer = &mx51_3ds_timer,
+	.init_machine = mx51_3ds_init,
 MACHINE_END
arch/arm/mach-mx5/board-mx51_babbage.c +5 -5
index 2bd9c9e..ab725e0 100644
@@ -336,7 +336,7 @@ static const struct spi_imx_master mx51_babbage_spi_pdata __initconst = {
 /*
  * Board specific initialization.
  */
-static void __init mxc_board_init(void)
+static void __init mx51_babbage_init(void)
 {
 	iomux_v3_cfg_t usbh1stp = MX51_PAD_USBH1_STP__USBH1_STP;
 	iomux_v3_cfg_t power_key = _MX51_PAD_EIM_A27__GPIO2_21 |
@@ -390,8 +390,8 @@ static void __init mx51_babbage_timer_init(void)
 	mx51_clocks_init(32768, 24000000, 22579200, 0);
 }
 
-static struct sys_timer mxc_timer = {
-	.init	= mx51_babbage_timer_init,
+static struct sys_timer mx51_babbage_timer = {
+	.init = mx51_babbage_timer_init,
 };
 
 MACHINE_START(MX51_BABBAGE, "Freescale MX51 Babbage Board")
@@ -400,6 +400,6 @@ MACHINE_START(MX51_BABBAGE, "Freescale MX51 Babbage Board")
 	.map_io = mx51_map_io,
 	.init_early = imx51_init_early,
 	.init_irq = mx51_init_irq,
-	.timer = &mxc_timer,
-	.init_machine = mxc_board_init,
+	.timer = &mx51_babbage_timer,
+	.init_machine = mx51_babbage_init,
 MACHINE_END
arch/arm/mach-mx5/board-mx51_efikamx.c +5 -5
index 2aac4c5..6b35c7d 100644
@@ -301,7 +301,7 @@ void mx51_efikamx_reset(void)
 		gpio_direction_output(EFIKAMX_RESET, 0);
 }
 
-static void __init mxc_board_init(void)
+static void __init mx51_efikamx_init(void)
 {
 	mxc_iomux_v3_setup_multiple_pads(mx51efikamx_pads,
 					ARRAY_SIZE(mx51efikamx_pads));
@@ -339,8 +339,8 @@ static void __init mx51_efikamx_timer_init(void)
 	mx51_clocks_init(32768, 24000000, 22579200, 24576000);
 }
 
-static struct sys_timer mxc_timer = {
-	.init	= mx51_efikamx_timer_init,
+static struct sys_timer mx51_efikamx_timer = {
+	.init = mx51_efikamx_timer_init,
 };
 
 MACHINE_START(MX51_EFIKAMX, "Genesi EfikaMX nettop")
@@ -349,6 +349,6 @@ MACHINE_START(MX51_EFIKAMX, "Genesi EfikaMX nettop")
 	.map_io = mx51_map_io,
 	.init_early = imx51_init_early,
 	.init_irq = mx51_init_irq,
-	.timer = &mxc_timer,
-	.init_machine =  mxc_board_init,
+	.timer = &mx51_efikamx_timer,
+	.init_machine = mx51_efikamx_init,
 MACHINE_END
Signature · 1 line
1.7.2.3
#5 lore raw

PATCH v2 1/3 ARM: mx3+mx5: rename mxc_board_init to ${machine}_init

mxc_board_init is too generic to be useful. Additionally change some mxc_timer to ${machine}_timer, too.

---
Hello,

sorry, the first version had a word missing in the Subject.

Uwe

 arch/arm/mach-mx3/mach-cpuimx35.c      |    4 ++--
 arch/arm/mach-mx3/mach-kzm_arm11_01.c  |    6 +-----
 arch/arm/mach-mx3/mach-mx31_3ds.c      |    7 ++-----
 arch/arm/mach-mx3/mach-mx31ads.c       |    7 ++-----
 arch/arm/mach-mx3/mach-mx31lite.c      |    4 ++--
 arch/arm/mach-mx3/mach-mx31moboard.c   |    4 ++--
 arch/arm/mach-mx3/mach-mx35_3ds.c      |    4 ++--
 arch/arm/mach-mx3/mach-pcm037.c        |    4 ++--
 arch/arm/mach-mx3/mach-pcm043.c        |    4 ++--
 arch/arm/mach-mx3/mach-qong.c          |    4 ++--
 arch/arm/mach-mx5/board-mx51_3ds.c     |   10 +++++-----
 arch/arm/mach-mx5/board-mx51_babbage.c |   10 +++++-----
 arch/arm/mach-mx5/board-mx51_efikamx.c |   10 +++++-----
 13 files changed, 34 insertions(+), 44 deletions(-)
arch/arm/mach-mx3/mach-cpuimx35.c +2 -2
index 3eedf0f..7364db1 100644
@@ -146,7 +146,7 @@ __setup("otg_mode=", eukrea_cpuimx35_otg_mode);
 /*
  * Board specific initialization.
  */
-static void __init mxc_board_init(void)
+static void __init eukrea_cpuimx35_init(void)
 {
 	mxc_iomux_v3_setup_multiple_pads(eukrea_cpuimx35_pads,
 			ARRAY_SIZE(eukrea_cpuimx35_pads));
@@ -189,5 +189,5 @@ MACHINE_START(EUKREA_CPUIMX35, "Eukrea CPUIMX35")
 	.init_ext3_fs = imx35_init_early,
 	.init_irq = mx35_init_irq,
 	.timer = &eukrea_cpuimx35_timer,
-	.init_machine = mxc_board_init,
+	.init_machine = eukrea_cpuimx35_init,
 MACHINE_END
arch/arm/mach-mx3/mach-kzm_arm11_01.c +1 -5
index 52b8dd7..d3cc739 100644
@@ -266,13 +266,9 @@ static void __init kzm_timer_init(void)
 }
 
 static struct sys_timer kzm_timer = {
-	.init   = kzm_timer_init,
+	.init = kzm_timer_init,
 };
 
-/*
- * The following uses standard kernel macros define in arch.h in order to
- * initialize __mach_desc_KZM_ARM11_01 data structure.
- */
 MACHINE_START(KZM_ARM11_01, "Kyoto Microcomputer Co., Ltd. KZM-ARM11-01")
 	.boot_params = MX3x_PHYS_OFFSET + 0x100,
 	.map_io = kzm_map_io,
arch/arm/mach-mx3/mach-mx31_3ds.c +2 -5
index 3d0ded9..1360fe4 100644
@@ -320,10 +320,7 @@ static const struct imxuart_platform_data uart_pdata __initconst = {
 	.flags = IMXUART_HAVE_RTSCTS,
 };
 
-/*!
- * Board specific initialization.
- */
-static void __init mxc_board_init(void)
+static void __init mx31_3ds_init(void)
 {
 	mxc_iomux_setup_multiple_pins(mx31_3ds_pins, ARRAY_SIZE(mx31_3ds_pins),
 				      "mx31_3ds");
@@ -378,5 +375,5 @@ MACHINE_START(MX31_3DS, "Freescale MX31PDK (3DS)")
 	.init_early = imx31_init_early,
 	.init_irq = mx31_init_irq,
 	.timer = &mx31_3ds_timer,
-	.init_machine = mxc_board_init,
+	.init_machine = mx31_3ds_init,
 MACHINE_END
arch/arm/mach-mx3/mach-mx31ads.c +2 -5
index 787bdc4..cb80b96 100644
@@ -524,10 +524,7 @@ static void __init mx31ads_init_irq(void)
 	mx31ads_init_expio();
 }
 
-/*!
- * Board specific initialization.
- */
-static void __init mxc_board_init(void)
+static void __init mx31ads_init(void)
 {
 	mxc_init_extuart();
 	mxc_init_imx_uart();
@@ -555,5 +552,5 @@ MACHINE_START(MX31ADS, "Freescale MX31ADS")
 	.init_early = imx31_init_early,
 	.init_irq = mx31ads_init_irq,
 	.timer = &mx31ads_timer,
-	.init_machine = mxc_board_init,
+	.init_machine = mx31ads_init,
 MACHINE_END
arch/arm/mach-mx3/mach-mx31lite.c +2 -2
index 01e24b5..64a1c1e 100644
@@ -227,7 +227,7 @@ void __init mx31lite_map_io(void)
 static int mx31lite_baseboard;
 core_param(mx31lite_baseboard, mx31lite_baseboard, int, 0444);
 
-static void __init mxc_board_init(void)
+static void __init mx31lite_init(void)
 {
 	int ret;
 
@@ -286,5 +286,5 @@ MACHINE_START(MX31LITE, "LogicPD i.MX31 SOM")
 	.init_early = imx31_init_early,
 	.init_irq = mx31_init_irq,
 	.timer = &mx31lite_timer,
-	.init_machine = mxc_board_init,
+	.init_machine = mx31lite_init,
 MACHINE_END
arch/arm/mach-mx3/mach-mx31moboard.c +2 -2
index fd988a0..e77b081 100644
@@ -503,7 +503,7 @@ core_param(mx31moboard_baseboard, mx31moboard_baseboard, int, 0444);
 /*
  * Board specific initialization.
  */
-static void __init mxc_board_init(void)
+static void __init mx31moboard_init(void)
 {
 	mxc_iomux_setup_multiple_pins(moboard_pins, ARRAY_SIZE(moboard_pins),
 		"moboard");
@@ -569,5 +569,5 @@ MACHINE_START(MX31MOBOARD, "EPFL Mobots mx31moboard")
 	.init_early = imx31_init_early,
 	.init_irq = mx31_init_irq,
 	.timer = &mx31moboard_timer,
-	.init_machine = mxc_board_init,
+	.init_machine = mx31moboard_init,
 MACHINE_END
arch/arm/mach-mx3/mach-mx35_3ds.c +2 -2
index c5115dc..0665111 100644
@@ -156,7 +156,7 @@ __setup("otg_mode=", mx35_3ds_otg_mode);
 /*
  * Board specific initialization.
  */
-static void __init mxc_board_init(void)
+static void __init mx35_3ds_init(void)
 {
 	mxc_iomux_v3_setup_multiple_pads(mx35pdk_pads, ARRAY_SIZE(mx35pdk_pads));
 
@@ -198,5 +198,5 @@ MACHINE_START(MX35_3DS, "Freescale MX35PDK")
 	.init_early = imx35_init_early,
 	.init_irq = mx35_init_irq,
 	.timer = &mx35pdk_timer,
-	.init_machine = mxc_board_init,
+	.init_machine = mx35_3ds_init,
 MACHINE_END
arch/arm/mach-mx3/mach-pcm037.c +2 -2
index 7d444f7..b4f9ace 100644
@@ -568,7 +568,7 @@ __setup("otg_mode=", pcm037_otg_mode);
 /*
  * Board specific initialization.
  */
-static void __init mxc_board_init(void)
+static void __init pcm037_init(void)
 {
 	int ret;
 
@@ -680,5 +680,5 @@ MACHINE_START(PCM037, "Phytec Phycore pcm037")
 	.init_early = imx31_init_early,
 	.init_irq = mx31_init_irq,
 	.timer = &pcm037_timer,
-	.init_machine = mxc_board_init,
+	.init_machine = pcm037_init,
 MACHINE_END
arch/arm/mach-mx3/mach-pcm043.c +2 -2
index b03e19d..912841c 100644
@@ -341,7 +341,7 @@ __setup("otg_mode=", pcm043_otg_mode);
 /*
  * Board specific initialization.
  */
-static void __init mxc_board_init(void)
+static void __init pcm043_init(void)
 {
 	mxc_iomux_v3_setup_multiple_pads(pcm043_pads, ARRAY_SIZE(pcm043_pads));
 
@@ -408,5 +408,5 @@ MACHINE_START(PCM043, "Phytec Phycore pcm043")
 	.init_early = imx35_init_early,
 	.init_irq = mx35_init_irq,
 	.timer = &pcm043_timer,
-	.init_machine = mxc_board_init,
+	.init_machine = pcm043_init,
 MACHINE_END
arch/arm/mach-mx3/mach-qong.c +2 -2
index 064f2db..0028163 100644
@@ -247,7 +247,7 @@ static void __init qong_init_fpga(void)
 /*
  * Board specific initialization.
  */
-static void __init mxc_board_init(void)
+static void __init qong_init(void)
 {
 	mxc_init_imx_uart();
 	qong_init_nor_mtd();
@@ -275,5 +275,5 @@ MACHINE_START(QONG, "Dave/DENX QongEVB-LITE")
 	.init_early = imx31_init_early,
 	.init_irq = mx31_init_irq,
 	.timer = &qong_timer,
-	.init_machine = mxc_board_init,
+	.init_machine = qong_init,
 MACHINE_END
arch/arm/mach-mx5/board-mx51_3ds.c +5 -5
index 0168470..63dfbea 100644
@@ -133,7 +133,7 @@ static struct spi_board_info mx51_3ds_spi_nor_device[] = {
 /*
  * Board specific initialization.
  */
-static void __init mxc_board_init(void)
+static void __init mx51_3ds_init(void)
 {
 	mxc_iomux_v3_setup_multiple_pads(mx51_3ds_pads,
 					ARRAY_SIZE(mx51_3ds_pads));
@@ -160,8 +160,8 @@ static void __init mx51_3ds_timer_init(void)
 	mx51_clocks_init(32768, 24000000, 22579200, 0);
 }
 
-static struct sys_timer mxc_timer = {
-	.init	= mx51_3ds_timer_init,
+static struct sys_timer mx51_3ds_timer = {
+	.init = mx51_3ds_timer_init,
 };
 
 MACHINE_START(MX51_3DS, "Freescale MX51 3-Stack Board")
@@ -170,6 +170,6 @@ MACHINE_START(MX51_3DS, "Freescale MX51 3-Stack Board")
 	.map_io = mx51_map_io,
 	.init_early = imx51_init_early,
 	.init_irq = mx51_init_irq,
-	.timer = &mxc_timer,
-	.init_machine = mxc_board_init,
+	.timer = &mx51_3ds_timer,
+	.init_machine = mx51_3ds_init,
 MACHINE_END
arch/arm/mach-mx5/board-mx51_babbage.c +5 -5
index 2bd9c9e..ab725e0 100644
@@ -336,7 +336,7 @@ static const struct spi_imx_master mx51_babbage_spi_pdata __initconst = {
 /*
  * Board specific initialization.
  */
-static void __init mxc_board_init(void)
+static void __init mx51_babbage_init(void)
 {
 	iomux_v3_cfg_t usbh1stp = MX51_PAD_USBH1_STP__USBH1_STP;
 	iomux_v3_cfg_t power_key = _MX51_PAD_EIM_A27__GPIO2_21 |
@@ -390,8 +390,8 @@ static void __init mx51_babbage_timer_init(void)
 	mx51_clocks_init(32768, 24000000, 22579200, 0);
 }
 
-static struct sys_timer mxc_timer = {
-	.init	= mx51_babbage_timer_init,
+static struct sys_timer mx51_babbage_timer = {
+	.init = mx51_babbage_timer_init,
 };
 
 MACHINE_START(MX51_BABBAGE, "Freescale MX51 Babbage Board")
@@ -400,6 +400,6 @@ MACHINE_START(MX51_BABBAGE, "Freescale MX51 Babbage Board")
 	.map_io = mx51_map_io,
 	.init_early = imx51_init_early,
 	.init_irq = mx51_init_irq,
-	.timer = &mxc_timer,
-	.init_machine = mxc_board_init,
+	.timer = &mx51_babbage_timer,
+	.init_machine = mx51_babbage_init,
 MACHINE_END
arch/arm/mach-mx5/board-mx51_efikamx.c +5 -5
index 2aac4c5..6b35c7d 100644
@@ -301,7 +301,7 @@ void mx51_efikamx_reset(void)
 		gpio_direction_output(EFIKAMX_RESET, 0);
 }
 
-static void __init mxc_board_init(void)
+static void __init mx51_efikamx_init(void)
 {
 	mxc_iomux_v3_setup_multiple_pads(mx51efikamx_pads,
 					ARRAY_SIZE(mx51efikamx_pads));
@@ -339,8 +339,8 @@ static void __init mx51_efikamx_timer_init(void)
 	mx51_clocks_init(32768, 24000000, 22579200, 24576000);
 }
 
-static struct sys_timer mxc_timer = {
-	.init	= mx51_efikamx_timer_init,
+static struct sys_timer mx51_efikamx_timer = {
+	.init = mx51_efikamx_timer_init,
 };
 
 MACHINE_START(MX51_EFIKAMX, "Genesi EfikaMX nettop")
@@ -349,6 +349,6 @@ MACHINE_START(MX51_EFIKAMX, "Genesi EfikaMX nettop")
 	.map_io = mx51_map_io,
 	.init_early = imx51_init_early,
 	.init_irq = mx51_init_irq,
-	.timer = &mxc_timer,
-	.init_machine =  mxc_board_init,
+	.timer = &mx51_efikamx_timer,
+	.init_machine = mx51_efikamx_init,
 MACHINE_END
Signature · 1 line
1.7.2.3
#6 lore raw

PATCH 2/3 ARM: mx3: remove some useless comments

In reply to Uwe Kleine-König
---
 arch/arm/mach-mx3/mach-mx31_3ds.c |    8 --------
 arch/arm/mach-mx3/mach-mx31ads.c  |   14 +-------------
 arch/arm/mach-mx3/mach-qong.c     |    9 ---------
 arch/arm/mach-mx3/mm.c            |    9 ---------
 4 files changed, 1 insertions(+), 39 deletions(-)
arch/arm/mach-mx3/mach-mx31_3ds.c +0 -8
index 1360fe4..817a275 100644
@@ -42,10 +42,6 @@
 /* CPLD IRQ line for external uart, external ethernet etc */
 #define EXPIO_PARENT_INT	IOMUX_TO_IRQ(MX31_PIN_GPIO1_1)
 
-/*
- * This file contains the board-specific initialization routines.
- */
-
 static int mx31_3ds_pins[] = {
 	/* UART1 */
 	MX31_PIN_CTS1__CTS1,
@@ -364,10 +360,6 @@ static struct sys_timer mx31_3ds_timer = {
 	.init	= mx31_3ds_timer_init,
 };
 
-/*
- * The following uses standard kernel macros defined in arch.h in order to
- * initialize __mach_desc_MX31_3DS data structure.
- */
 MACHINE_START(MX31_3DS, "Freescale MX31PDK (3DS)")
 	/* Maintainer: Freescale Semiconductor, Inc. */
 	.boot_params = MX3x_PHYS_OFFSET + 0x100,
arch/arm/mach-mx3/mach-mx31ads.c +1 -13
index cb80b96..14e7671 100644
@@ -69,9 +69,6 @@
 #define EXPIO_INT_XUART_INTB	(MXC_EXP_IO_BASE + 11)
 
 #define MXC_MAX_EXP_IO_LINES	16
-/*
- * This file contains the board-specific initialization routines.
- */
 
 /*
  * The serial port definition structure.
@@ -497,9 +494,7 @@ static void mxc_init_audio(void)
 	mxc_iomux_setup_multiple_pins(ssi_pins, ARRAY_SIZE(ssi_pins), "ssi");
 }
 
-/*!
- * This structure defines static mappings for the i.MX31ADS board.
- */
+/* static mappings */
 static struct map_desc mx31ads_io_desc[] __initdata = {
 	{
 		.virtual	= MX31_CS4_BASE_ADDR_VIRT,
@@ -509,9 +504,6 @@ static struct map_desc mx31ads_io_desc[] __initdata = {
 	},
 };
 
-/*!
- * Set up static virtual mappings.
- */
 static void __init mx31ads_map_io(void)
 {
 	mx31_map_io();
@@ -541,10 +533,6 @@ static struct sys_timer mx31ads_timer = {
 	.init	= mx31ads_timer_init,
 };
 
-/*
- * The following uses standard kernel macros defined in arch.h in order to
- * initialize __mach_desc_MX31ADS data structure.
- */
 MACHINE_START(MX31ADS, "Freescale MX31ADS")
 	/* Maintainer: Freescale Semiconductor, Inc. */
 	.boot_params = MX3x_PHYS_OFFSET + 0x100,
arch/arm/mach-mx3/mach-qong.c +0 -9
index 0028163..17f758b 100644
@@ -54,10 +54,6 @@
 
 #define QONG_FPGA_IRQ		IOMUX_TO_IRQ(MX31_PIN_DTR_DCE1)
 
-/*
- * This file contains the board-specific initialization routines.
- */
-
 static const struct imxuart_platform_data uart_pdata __initconst = {
 	.flags = IMXUART_HAVE_RTSCTS,
 };
@@ -263,11 +259,6 @@ static struct sys_timer qong_timer = {
 	.init	= qong_timer_init,
 };
 
-/*
- * The following uses standard kernel macros defined in arch.h in order to
- * initialize __mach_desc_QONG data structure.
- */
-
 MACHINE_START(QONG, "Dave/DENX QongEVB-LITE")
 	/* Maintainer: DENX Software Engineering GmbH */
 	.boot_params = MX3x_PHYS_OFFSET + 0x100,
arch/arm/mach-mx3/mm.c +0 -9
index 3387319..eefd4cf 100644
@@ -28,14 +28,6 @@
 #include <mach/hardware.h>
 #include <mach/iomux-v3.h>
 
-/*!
- * @file mm.c
- *
- * @brief This file creates static virtual to physical mappings, common to all MX3 boards.
- *
- * @ingroup Memory
- */
-
 #ifdef CONFIG_SOC_IMX31
 static struct map_desc mx31_io_desc[] __initdata = {
 	imx_map_entry(MX31, X_MEMC, MT_DEVICE),
@@ -135,4 +127,3 @@ static int mxc_init_l2x0(void)
 
 arch_initcall(mxc_init_l2x0);
 #endif
-
Signature · 1 line
1.7.2.3
#7 lore raw

PATCH 3/3 ARM: mx3/mx31ads: fix comments of irq callbacks

In reply to Uwe Kleine-König

The arguments to these callbacks were changed in

	e981a30 (ARM: mx3: irq_data conversion.)

but the comments were not adapted.

Cc Lennert Buytenhek <[email protected]>
---
 arch/arm/mach-mx3/mach-mx31ads.c |    6 +++---
 1 files changed, 3 insertions(+), 3 deletions(-)
arch/arm/mach-mx3/mach-mx31ads.c +3 -3
index 14e7671..4e4b780 100644
@@ -144,7 +144,7 @@ static void mx31ads_expio_irq_handler(u32 irq, struct irq_desc *desc)
 
 /*
  * Disable an expio pin's interrupt by setting the bit in the imr.
- * @param irq           an expio virtual irq number
+ * @param d	an expio virtual irq description
  */
 static void expio_mask_irq(struct irq_data *d)
 {
@@ -156,7 +156,7 @@ static void expio_mask_irq(struct irq_data *d)
 
 /*
  * Acknowledge an expanded io pin's interrupt by clearing the bit in the isr.
- * @param irq           an expanded io virtual irq number
+ * @param d	an expio virtual irq description
  */
 static void expio_ack_irq(struct irq_data *d)
 {
@@ -167,7 +167,7 @@ static void expio_ack_irq(struct irq_data *d)
 
 /*
  * Enable a expio pin's interrupt by clearing the bit in the imr.
- * @param irq           a expio virtual irq number
+ * @param d	an expio virtual irq description
  */
 static void expio_unmask_irq(struct irq_data *d)
 {
Signature · 1 line
1.7.2.3
#8 lore raw

PATCH 1/1 mx31: add support for the bugbase 1.3 from buglabs

In reply to Uwe Kleine-König

This work was based on bug-linux-2.6.30.patch that can be found
in buglabs's svn here:
svn://bugcamp.net/bug/branches/izzy/experimental

Note that the hardware schematics and documentations can be obtained
here: http://www.bugcommunity.com/wiki/index.php/BUGbase

---
 arch/arm/mach-mx3/Kconfig                   |    9 +++
 arch/arm/mach-mx3/Makefile                  |    1 +
 arch/arm/mach-mx3/mach-mx31bugbase.c        |   75 +++++++++++++++++++++++++++
 arch/arm/plat-mxc/include/mach/uncompress.h |    4 ++
 4 files changed, 89 insertions(+), 0 deletions(-)
 create mode 100644 arch/arm/mach-mx3/mach-mx31bugbase.c
arch/arm/mach-mx3/Kconfig +9 -0
index de80d98..4f57f13 100644
@@ -199,6 +199,15 @@ config MACH_KZM_ARM11_01
 	  Include support for KZM-ARM11-01. This includes specific
 	  configurations for the board and its peripherals.
 
+config MACH_BUG
+	bool "Support Buglabs BUGBase platform"
+	select SOC_IMX31
+	select IMX_HAVE_PLATFORM_IMX_UART
+	default y
+	help
+	  Include support for BUGBase 1.3 platform. This includes specific
+	  configurations for the board and its peripherals.
+
 config MACH_EUKREA_CPUIMX35
 	bool "Support Eukrea CPUIMX35 Platform"
 	select SOC_IMX35
arch/arm/mach-mx3/Makefile +1 -0
index bc7294f..98e5eb3 100644
@@ -20,6 +20,7 @@ obj-$(CONFIG_MACH_PCM043)	+= mach-pcm043.o
 obj-$(CONFIG_MACH_ARMADILLO5X0) += mach-armadillo5x0.o
 obj-$(CONFIG_MACH_MX35_3DS)	+= mach-mx35_3ds.o
 obj-$(CONFIG_MACH_KZM_ARM11_01)	+= mach-kzm_arm11_01.o
+obj-$(CONFIG_MACH_BUG)          += mach-mx31bugbase.o
 obj-$(CONFIG_MACH_EUKREA_CPUIMX35)	+= mach-cpuimx35.o
 obj-$(CONFIG_MACH_EUKREA_MBIMXSD35_BASEBOARD)	+= eukrea_mbimxsd-baseboard.o
 obj-$(CONFIG_MACH_VPR200)	+= mach-vpr200.o
arch/arm/mach-mx3/mach-mx31bugbase.c new file +75 -0

75 lines not on this page · raw message

arch/arm/plat-mxc/include/mach/uncompress.h +4 -0
index e634d6c..b45f534 100644
@@ -62,6 +62,7 @@ static inline void flush(void)
 #define MX2X_UART1_BASE_ADDR	0x1000a000
 #define MX3X_UART1_BASE_ADDR	0x43F90000
 #define MX3X_UART2_BASE_ADDR	0x43F94000
+#define MX3X_UART5_BASE_ADDR	0x43FB4000
 #define MX51_UART1_BASE_ADDR	0x73fbc000
 #define MX50_UART1_BASE_ADDR	0x53fbc000
 #define MX53_UART1_BASE_ADDR	0x53fbc000
@@ -102,6 +103,9 @@ static __inline__ void __arch_decomp_setup(unsigned long arch_id)
 	case MACH_TYPE_MAGX_ZN5:
 		uart_base = MX3X_UART2_BASE_ADDR;
 		break;
+	case MACH_TYPE_BUG:
+		uart_base = MX3X_UART5_BASE_ADDR;
+		break;
 	case MACH_TYPE_MX51_BABBAGE:
 	case MACH_TYPE_EUKREA_CPUIMX51SD:
 	case MACH_TYPE_MX51_3DS:
Signature · 1 line
1.7.0.4
#9 lore raw

PATCH 1/1 mx31: add support for the bugbase 1.3 from buglabs

Sorry, the --subject-prefix="[PATCH V2]" was ignored

Denis.

#10 lore raw

PATCH 1/1 mx31: add support for the bugbase 1.3 from buglabs

In reply to Denis 'GNUtoo' Carikli
Quoted 13 lines
arch/arm/plat-mxc/include/mach/uncompress.h +1 -0
index e634d6c..b45f534 100644
@@ -62,6 +62,7 @@ static inline void flush(void)
 #define MX2X_UART1_BASE_ADDR	0x1000a000
 #define MX3X_UART1_BASE_ADDR	0x43F90000
 #define MX3X_UART2_BASE_ADDR	0x43F94000
+#define MX3X_UART5_BASE_ADDR	0x43FB4000
 #define MX51_UART1_BASE_ADDR	0x73fbc000
 #define MX50_UART1_BASE_ADDR	0x53fbc000
 #define MX53_UART1_BASE_ADDR	0x53fbc000

arch/arm/plat-mxc/include/mach/uncompress.h static __inline__ void __arch_decomp_setup(unsigned long arch_id) · line 111

Quoted 9 lines
arch/arm/plat-mxc/include/mach/uncompress.h +3 -0
@@ -102,6 +103,9 @@ static __inline__ void __arch_decomp_setup(unsigned long arch_id)
 	case MACH_TYPE_MAGX_ZN5:
 		uart_base = MX3X_UART2_BASE_ADDR;
 		break;
+	case MACH_TYPE_BUG:
+		uart_base = MX3X_UART5_BASE_ADDR;
+		break;
 	case MACH_TYPE_MX51_BABBAGE:
 	case MACH_TYPE_EUKREA_CPUIMX51SD:
 	case MACH_TYPE_MX51_3DS:

That seem not to crash, but I wonder if it's really useful:
Basically I see u-boot loading the kernel, then I have

Quoted 1 line

Uncompressing Linux...

Then I wait some seconds
Then I see that line beeing complretted with:

Quoted 1 line

done, booting the kernel.

Then the rest of the messages are displayed very fast, along with initramfs loading messages and I finally get a shell.

Denis.

#11 lore raw

PATCH 1/1 mx31: add support for the bugbase 1.3 from buglabs

Quoted 24 lines · Denis 'GNUtoo' Carikli
Quoted 13 lines
arch/arm/plat-mxc/include/mach/uncompress.h +1 -0
index e634d6c..b45f534 100644
@@ -62,6 +62,7 @@ static inline void flush(void)
 #define MX2X_UART1_BASE_ADDR	0x1000a000
 #define MX3X_UART1_BASE_ADDR	0x43F90000
 #define MX3X_UART2_BASE_ADDR	0x43F94000
+#define MX3X_UART5_BASE_ADDR	0x43FB4000
 #define MX51_UART1_BASE_ADDR	0x73fbc000
 #define MX50_UART1_BASE_ADDR	0x53fbc000
 #define MX53_UART1_BASE_ADDR	0x53fbc000

arch/arm/plat-mxc/include/mach/uncompress.h static __inline__ void __arch_decomp_setup(unsigned long arch_id) · line 111

Quoted 9 lines
arch/arm/plat-mxc/include/mach/uncompress.h +3 -0
@@ -102,6 +103,9 @@ static __inline__ void __arch_decomp_setup(unsigned long arch_id)
 	case MACH_TYPE_MAGX_ZN5:
 		uart_base = MX3X_UART2_BASE_ADDR;
 		break;
+	case MACH_TYPE_BUG:
+		uart_base = MX3X_UART5_BASE_ADDR;
+		break;
 	case MACH_TYPE_MX51_BABBAGE:
 	case MACH_TYPE_EUKREA_CPUIMX51SD:
 	case MACH_TYPE_MX51_3DS:

That seem not to crash, but I wonder if it's really useful:
Basically I see u-boot loading the kernel, then I have

Quoted 6 lines
Quoted 1 line

Uncompressing Linux...

Then I wait some seconds
Then I see that line beeing complretted with:

Quoted 1 line

done, booting the kernel.

Then the rest of the messages are displayed very fast, along with initramfs loading messages and I finally get a shell.

That means you'd prefer no output? Some time ago we even got some more dots during decompression, I'd like to get these back.

The only downside of these outputs I can imagine is to save the time it takes to get them out of the serial. But if you really care, you might want to evaluate the possibility to let U-Boot uncompress your kernel. (Depending on some parameters of your hardware this might or might not be faster for you.)

Best regards
Uwe

Signature · 2 lines
Pengutronix e.K.                           | Uwe Kleine-K?nig            |
Industrial Linux Solutions                 | http://www.pengutronix.de/  |
#12 lore raw

PATCH 1/1 mx31: add support for the bugbase 1.3 from buglabs

Quoted 25 lines · Uwe Kleine-K?nig
Quoted 24 lines · Denis 'GNUtoo' Carikli
Quoted 13 lines
arch/arm/plat-mxc/include/mach/uncompress.h +1 -0
index e634d6c..b45f534 100644
@@ -62,6 +62,7 @@ static inline void flush(void)
 #define MX2X_UART1_BASE_ADDR	0x1000a000
 #define MX3X_UART1_BASE_ADDR	0x43F90000
 #define MX3X_UART2_BASE_ADDR	0x43F94000
+#define MX3X_UART5_BASE_ADDR	0x43FB4000
 #define MX51_UART1_BASE_ADDR	0x73fbc000
 #define MX50_UART1_BASE_ADDR	0x53fbc000
 #define MX53_UART1_BASE_ADDR	0x53fbc000

arch/arm/plat-mxc/include/mach/uncompress.h static __inline__ void __arch_decomp_setup(unsigned long arch_id) · line 111

Quoted 9 lines
arch/arm/plat-mxc/include/mach/uncompress.h +3 -0
@@ -102,6 +103,9 @@ static __inline__ void __arch_decomp_setup(unsigned long arch_id)
 	case MACH_TYPE_MAGX_ZN5:
 		uart_base = MX3X_UART2_BASE_ADDR;
 		break;
+	case MACH_TYPE_BUG:
+		uart_base = MX3X_UART5_BASE_ADDR;
+		break;
 	case MACH_TYPE_MX51_BABBAGE:
 	case MACH_TYPE_EUKREA_CPUIMX51SD:
 	case MACH_TYPE_MX51_3DS:

That seem not to crash, but I wonder if it's really useful:
Basically I see u-boot loading the kernel, then I have

Quoted 7 lines
Quoted 6 lines
Quoted 1 line

Uncompressing Linux...

Then I wait some seconds
Then I see that line beeing complretted with:

Quoted 1 line

done, booting the kernel.

Then the rest of the messages are displayed very fast, along with initramfs loading messages and I finally get a shell.

That means you'd prefer no output?

I should have misunderstood something, but I believed that that uncompress.h was for early printk.
And so I expected printk to be printed on serial console immediately, not waiting for the serial port to be initialized again(as it is already initialized by the u-boot bootloader).

Denis.

#13 lore raw

PATCH 1/1 mx31: add support for the bugbase 1.3 from buglabs

Hi Denis,

Quoted 30 lines · Denis 'GNUtoo' Carikli
Quoted 29 lines · Uwe Kleine-K?nig
Quoted 28 lines · Denis 'GNUtoo' Carikli
Quoted 13 lines
arch/arm/plat-mxc/include/mach/uncompress.h +1 -0
index e634d6c..b45f534 100644
@@ -62,6 +62,7 @@ static inline void flush(void)
 #define MX2X_UART1_BASE_ADDR	0x1000a000
 #define MX3X_UART1_BASE_ADDR	0x43F90000
 #define MX3X_UART2_BASE_ADDR	0x43F94000
+#define MX3X_UART5_BASE_ADDR	0x43FB4000
 #define MX51_UART1_BASE_ADDR	0x73fbc000
 #define MX50_UART1_BASE_ADDR	0x53fbc000
 #define MX53_UART1_BASE_ADDR	0x53fbc000

arch/arm/plat-mxc/include/mach/uncompress.h static __inline__ void __arch_decomp_setup(unsigned long arch_id) · line 111

Quoted 9 lines
arch/arm/plat-mxc/include/mach/uncompress.h +3 -0
@@ -102,6 +103,9 @@ static __inline__ void __arch_decomp_setup(unsigned long arch_id)
 	case MACH_TYPE_MAGX_ZN5:
 		uart_base = MX3X_UART2_BASE_ADDR;
 		break;
+	case MACH_TYPE_BUG:
+		uart_base = MX3X_UART5_BASE_ADDR;
+		break;
 	case MACH_TYPE_MX51_BABBAGE:
 	case MACH_TYPE_EUKREA_CPUIMX51SD:
 	case MACH_TYPE_MX51_3DS:

That seem not to crash, but I wonder if it's really useful:
Basically I see u-boot loading the kernel, then I have

Quoted 1 line

Uncompressing Linux...

Then I wait some seconds
Then I see that line beeing complretted with:

Quoted 1 line

done, booting the kernel.

Quoted 8 lines
Quoted 3 lines
Quoted 2 lines

Then the rest of the messages are displayed very fast, along with initramfs loading messages and I finally get a shell.

That means you'd prefer no output?

I should have misunderstood something, but I believed that that uncompress.h was for early printk.
And so I expected printk to be printed on serial console immediately, not waiting for the serial port to be initialized again(as it is already initialized by the u-boot bootloader).

There is nothing reinitialized, in fact the code in arch/arm/plat-mxc/include/mach/uncompress.h assumes the UART is already initialized by the boot loader. The only difference this hunk above results in is that the messages "Uncompressing Linux..." and "done, booting the kernel." are printed on your UART. And if you skip them you still have that some seconds pause, and you only save the time the characters need to pass your UART.

Best regards
Uwe

Signature · 2 lines
Pengutronix e.K.                           | Uwe Kleine-K?nig            |
Industrial Linux Solutions                 | http://www.pengutronix.de/  |
#14 lore raw

PATCH 1/1 mx31: add support for the bugbase 1.3 from buglabs

In reply to Denis 'GNUtoo' Carikli
Quoted 115 lines · Denis 'GNUtoo' Carikli

This work was based on bug-linux-2.6.30.patch that can be found
in buglabs's svn here:
svn://bugcamp.net/bug/branches/izzy/experimental

Note that the hardware schematics and documentations can be obtained
here: http://www.bugcommunity.com/wiki/index.php/BUGbase

---
 arch/arm/mach-mx3/Kconfig                   |    9 +++
 arch/arm/mach-mx3/Makefile                  |    1 +
 arch/arm/mach-mx3/mach-mx31bugbase.c        |   75 +++++++++++++++++++++++++++
 arch/arm/plat-mxc/include/mach/uncompress.h |    4 ++
 4 files changed, 89 insertions(+), 0 deletions(-)
 create mode 100644 arch/arm/mach-mx3/mach-mx31bugbase.c
arch/arm/mach-mx3/Kconfig +9 -0
index de80d98..4f57f13 100644
@@ -199,6 +199,15 @@ config MACH_KZM_ARM11_01
 	  Include support for KZM-ARM11-01. This includes specific
 	  configurations for the board and its peripherals.
 
+config MACH_BUG
+	bool "Support Buglabs BUGBase platform"
+	select SOC_IMX31
+	select IMX_HAVE_PLATFORM_IMX_UART
+	default y
+	help
+	  Include support for BUGBase 1.3 platform. This includes specific
+	  configurations for the board and its peripherals.
+
 config MACH_EUKREA_CPUIMX35
 	bool "Support Eukrea CPUIMX35 Platform"
 	select SOC_IMX35
arch/arm/mach-mx3/Makefile +1 -0
index bc7294f..98e5eb3 100644
@@ -20,6 +20,7 @@ obj-$(CONFIG_MACH_PCM043)	+= mach-pcm043.o
 obj-$(CONFIG_MACH_ARMADILLO5X0) += mach-armadillo5x0.o
 obj-$(CONFIG_MACH_MX35_3DS)	+= mach-mx35_3ds.o
 obj-$(CONFIG_MACH_KZM_ARM11_01)	+= mach-kzm_arm11_01.o
+obj-$(CONFIG_MACH_BUG)          += mach-mx31bugbase.o
 obj-$(CONFIG_MACH_EUKREA_CPUIMX35)	+= mach-cpuimx35.o
 obj-$(CONFIG_MACH_EUKREA_MBIMXSD35_BASEBOARD)	+= eukrea_mbimxsd-baseboard.o
 obj-$(CONFIG_MACH_VPR200)	+= mach-vpr200.o
arch/arm/mach-mx3/mach-mx31bugbase.c new file +61 -0
new file mode 100644
index 0000000..1d8ca1c
@@ -0,0 +1,75 @@
+/*
+ * Copyright (C) 2000 Deep Blue Solutions Ltd
+ * Copyright (C) 2002 Shane Nay (shane at minirl.com)
+ * Copyright 2005-2007 Freescale Semiconductor, Inc. All Rights Reserved.
+ *
+ * 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.
+ */
+
+#include <linux/kernel.h>
+#include <linux/init.h>
+#include <linux/platform_device.h>
+
+#include <mach/iomux-mx3.h>
+#include <mach/imx-uart.h>
+#include <mach/hardware.h>
+#include <mach/common.h>
+
+#include <asm/mach/time.h>
+#include <asm/mach/arch.h>
+#include <asm/mach-types.h>
+
+#include "devices-imx31.h"
+
+static struct imxuart_platform_data uart_pdata = {
+	.flags = IMXUART_HAVE_RTSCTS,
+};
+
+static unsigned int uart5_pins[] = {
+	MX31_PIN_PC_RST__CTS5,
+	MX31_PIN_PC_VS2__RTS5,
+	MX31_PIN_PC_BVD2__TXD5,
+	MX31_PIN_PC_BVD1__RXD5,
+};
+
+static inline void mx31bug_init_imx_uart(void)
+{
+	mxc_iomux_setup_multiple_pins(uart5_pins,
+				ARRAY_SIZE(uart5_pins), "uart-4");
+	imx31_add_imx_uart4(&uart_pdata);
+}
+
+/*!
+ * Board specific initialization.
+ */
+static void __init mx31bug_board_init(void)
+{
+	mx31bug_init_imx_uart();
+}
+
+
+static void __init mx31bug_timer_init(void)
+{
+	mx31_clocks_init(26000000);

arch/arm/mach-mx3/mach-mx31bugbase.c line 71

Quoted 10 lines
arch/arm/mach-mx3/mach-mx31bugbase.c new file +10 -0
+}
+
+static struct sys_timer mx31bug_timer = {
+	.init	= mx31bug_timer_init,
+};
+
+MACHINE_START(BUG, "BugLabs BUGBase")
+	.boot_params = MX3x_PHYS_OFFSET + 0x100,
+	.map_io = mx31_map_io,
+        .init_early = imx31_init_early,

here slipped some spaces in

arch/arm/mach-mx3/mach-mx31bugbase.c line 73

Quoted 2 lines
arch/arm/mach-mx3/mach-mx31bugbase.c new file +2 -0
+	.init_irq = mx31_init_irq,
+        .timer = &mx31bug_timer,

dito

Quoted 15 lines
arch/arm/mach-mx3/mach-mx31bugbase.c new file +2 -0
+	.init_machine = mx31bug_board_init,
+MACHINE_END
arch/arm/plat-mxc/include/mach/uncompress.h +1 -0
index e634d6c..b45f534 100644
@@ -62,6 +62,7 @@ static inline void flush(void)
 #define MX2X_UART1_BASE_ADDR	0x1000a000
 #define MX3X_UART1_BASE_ADDR	0x43F90000
 #define MX3X_UART2_BASE_ADDR	0x43F94000
+#define MX3X_UART5_BASE_ADDR	0x43FB4000
 #define MX51_UART1_BASE_ADDR	0x73fbc000
 #define MX50_UART1_BASE_ADDR	0x53fbc000
 #define MX53_UART1_BASE_ADDR	0x53fbc000

arch/arm/plat-mxc/include/mach/uncompress.h static __inline__ void __arch_decomp_setup(unsigned long arch_id) · line 111

Quoted 9 lines
arch/arm/plat-mxc/include/mach/uncompress.h +3 -0
@@ -102,6 +103,9 @@ static __inline__ void __arch_decomp_setup(unsigned long arch_id)
 	case MACH_TYPE_MAGX_ZN5:
 		uart_base = MX3X_UART2_BASE_ADDR;
 		break;
+	case MACH_TYPE_BUG:
+		uart_base = MX3X_UART5_BASE_ADDR;
+		break;
 	case MACH_TYPE_MX51_BABBAGE:
 	case MACH_TYPE_EUKREA_CPUIMX51SD:
 	case MACH_TYPE_MX51_3DS:

Marc

Signature · 12 lines
Pengutronix e.K.                  | Marc Kleine-Budde           |
Industrial Linux Solutions        | Phone: +49-231-2826-924     |
Vertretung West/Dortmund          | Fax:   +49-5121-206917-5555 |
Amtsgericht Hildesheim, HRA 2686  | http://www.pengutronix.de   |

-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 262 bytes
Desc: OpenPGP digital signature
URL: <http://lists.infradead.org/pipermail/linux-arm-kernel/attachments/20110211/d522a02e/attachment.sig>
#15 lore raw

PATCH 1/1 mx31: add support for the bugbase 1.3 from buglabs

Quoted 5 lines · Marc Kleine-Budde

here slipped some spaces in

arch/arm/mach-mx3/mach-mx31bugbase.c line 73

Quoted 2 lines
arch/arm/mach-mx3/mach-mx31bugbase.c new file +2 -0
+     .init_irq = mx31_init_irq,
+        .timer = &mx31bug_timer,

dito

Sorry, I looked carefully after such errors at first,
before sending the first patch,
but then I forgot to look after it when fixing what the comments pointed out.

I'll fix it in the new patch I'll resend, I'll try to find how to make git-send-email send a v3 too(last time I failed, because I looked for some command that did it on some wiki that was not very up to date)

Denis.

#16 lore raw

PATCH 1/1 mx31: add support for the bugbase 1.3 from buglabs

In reply to Denis 'GNUtoo' Carikli
Quoted 41 lines · Denis 'GNUtoo' Carikli

This work was based on bug-linux-2.6.30.patch that can be found
in buglabs's svn here:
svn://bugcamp.net/bug/branches/izzy/experimental

Note that the hardware schematics and documentations can be obtained
here: http://www.bugcommunity.com/wiki/index.php/BUGbase

---
 arch/arm/mach-mx3/Kconfig                   |    9 +++
 arch/arm/mach-mx3/Makefile                  |    1 +
 arch/arm/mach-mx3/mach-mx31bugbase.c        |   75 +++++++++++++++++++++++++++
 arch/arm/plat-mxc/include/mach/uncompress.h |    4 ++
 4 files changed, 89 insertions(+), 0 deletions(-)
 create mode 100644 arch/arm/mach-mx3/mach-mx31bugbase.c
arch/arm/mach-mx3/Kconfig +9 -0
index de80d98..4f57f13 100644
@@ -199,6 +199,15 @@ config MACH_KZM_ARM11_01
 	  Include support for KZM-ARM11-01. This includes specific
 	  configurations for the board and its peripherals.
 
+config MACH_BUG
+	bool "Support Buglabs BUGBase platform"
+	select SOC_IMX31
+	select IMX_HAVE_PLATFORM_IMX_UART
+	default y
+	help
+	  Include support for BUGBase 1.3 platform. This includes specific
+	  configurations for the board and its peripherals.
+
 config MACH_EUKREA_CPUIMX35
 	bool "Support Eukrea CPUIMX35 Platform"
 	select SOC_IMX35
arch/arm/mach-mx3/Makefile +0 -0
index bc7294f..98e5eb3 100644

arch/arm/mach-mx3/Makefile obj-$(CONFIG_MACH_PCM043) += mach-pcm043.o · line 23

Quoted 4 lines
arch/arm/mach-mx3/Makefile +1 -0
@@ -20,6 +20,7 @@ obj-$(CONFIG_MACH_PCM043)	+= mach-pcm043.o
 obj-$(CONFIG_MACH_ARMADILLO5X0) += mach-armadillo5x0.o
 obj-$(CONFIG_MACH_MX35_3DS)	+= mach-mx35_3ds.o
 obj-$(CONFIG_MACH_KZM_ARM11_01)	+= mach-kzm_arm11_01.o
+obj-$(CONFIG_MACH_BUG)          += mach-mx31bugbase.o

I'd like to have the file name matching the MACH variable. That is mach-bug.c

Quoted 33 lines
arch/arm/mach-mx3/Makefile +0 -0
 obj-$(CONFIG_MACH_EUKREA_CPUIMX35)	+= mach-cpuimx35.o
 obj-$(CONFIG_MACH_EUKREA_MBIMXSD35_BASEBOARD)	+= eukrea_mbimxsd-baseboard.o
 obj-$(CONFIG_MACH_VPR200)	+= mach-vpr200.o
arch/arm/mach-mx3/mach-mx31bugbase.c new file +24 -0
new file mode 100644
index 0000000..1d8ca1c
@@ -0,0 +1,75 @@
+/*
+ * Copyright (C) 2000 Deep Blue Solutions Ltd
+ * Copyright (C) 2002 Shane Nay (shane at minirl.com)
+ * Copyright 2005-2007 Freescale Semiconductor, Inc. All Rights Reserved.
+ *
+ * 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.
+ */
+
+#include <linux/kernel.h>
+#include <linux/init.h>
+#include <linux/platform_device.h>
+
+#include <mach/iomux-mx3.h>
+#include <mach/imx-uart.h>
+#include <mach/hardware.h>
+#include <mach/common.h>

arch/arm/mach-mx3/mach-mx31bugbase.c line 34

Quoted 10 lines
arch/arm/mach-mx3/mach-mx31bugbase.c new file +10 -0
+
+#include <asm/mach/time.h>
+#include <asm/mach/arch.h>
+#include <asm/mach-types.h>
+
+#include "devices-imx31.h"
+
+static struct imxuart_platform_data uart_pdata = {
+	.flags = IMXUART_HAVE_RTSCTS,
+};

can be const and __initconst and lacks a prefix

arch/arm/mach-mx3/mach-mx31bugbase.c line 41

Quoted 7 lines
arch/arm/mach-mx3/mach-mx31bugbase.c new file +7 -0
+
+static unsigned int uart5_pins[] = {
+	MX31_PIN_PC_RST__CTS5,
+	MX31_PIN_PC_VS2__RTS5,
+	MX31_PIN_PC_BVD2__TXD5,
+	MX31_PIN_PC_BVD1__RXD5,
+};

can be const and __initconst and lacks a prefix, but see below.

arch/arm/mach-mx3/mach-mx31bugbase.c line 48

Quoted 7 lines
arch/arm/mach-mx3/mach-mx31bugbase.c new file +7 -0
+
+static inline void mx31bug_init_imx_uart(void)
+{
+	mxc_iomux_setup_multiple_pins(uart5_pins,
+				ARRAY_SIZE(uart5_pins), "uart-4");
+	imx31_add_imx_uart4(&uart_pdata);
+}

can be __init. I'd prefer a prefix of bug, not mx31bug, because that matches the machine id.

arch/arm/mach-mx3/mach-mx31bugbase.c line 50

Quoted 2 lines
arch/arm/mach-mx3/mach-mx31bugbase.c new file +2 -0
+
+/*!

no doxygen style comments in the kernel please

arch/arm/mach-mx3/mach-mx31bugbase.c line 55

Quoted 5 lines
arch/arm/mach-mx3/mach-mx31bugbase.c new file +5 -0
+ * Board specific initialization.
+ */
+static void __init mx31bug_board_init(void)
+{
+	mx31bug_init_imx_uart();

I assume your machine doesn't only have an uart. If so, I'd suggest to rename uart5_pins (which lacks a prefix btw) to mx31bug_pins and put the mxc_iomux_setup_multiple_pins into mx31bug_board_init. Then mx31bug_init_imx_uart only has imx31_add_imx_uart4 which then can better go directly into mx31bug_board_init, too.

arch/arm/mach-mx3/mach-mx31bugbase.c line 57

Quoted 3 lines
arch/arm/mach-mx3/mach-mx31bugbase.c new file +3 -0
+}
+
+

You can remove one of these two empty lines.

arch/arm/mach-mx3/mach-mx31bugbase.c line 69

Quoted 11 lines
arch/arm/mach-mx3/mach-mx31bugbase.c new file +11 -0
+static void __init mx31bug_timer_init(void)
+{
+	mx31_clocks_init(26000000);
+}
+
+static struct sys_timer mx31bug_timer = {
+	.init	= mx31bug_timer_init,
+};
+
+MACHINE_START(BUG, "BugLabs BUGBase")
+	.boot_params = MX3x_PHYS_OFFSET + 0x100,

BTW, if you have a decent bootloader, you don't need this line.

arch/arm/mach-mx3/mach-mx31bugbase.c line 74

Quoted 5 lines
arch/arm/mach-mx3/mach-mx31bugbase.c new file +5 -0
+	.map_io = mx31_map_io,
+        .init_early = imx31_init_early,
+	.init_irq = mx31_init_irq,
+        .timer = &mx31bug_timer,
+	.init_machine = mx31bug_board_init,

please use tabs consistently for indention. And if you use a single space before the = here (which is totally ok, even prefered by me), then do the same in mx31bug_timer, please.

Quoted 15 lines
arch/arm/mach-mx3/mach-mx31bugbase.c new file +1 -0
+MACHINE_END
arch/arm/plat-mxc/include/mach/uncompress.h +1 -0
index e634d6c..b45f534 100644
@@ -62,6 +62,7 @@ static inline void flush(void)
 #define MX2X_UART1_BASE_ADDR	0x1000a000
 #define MX3X_UART1_BASE_ADDR	0x43F90000
 #define MX3X_UART2_BASE_ADDR	0x43F94000
+#define MX3X_UART5_BASE_ADDR	0x43FB4000
 #define MX51_UART1_BASE_ADDR	0x73fbc000
 #define MX50_UART1_BASE_ADDR	0x53fbc000
 #define MX53_UART1_BASE_ADDR	0x53fbc000

arch/arm/plat-mxc/include/mach/uncompress.h static __inline__ void __arch_decomp_setup(unsigned long arch_id) · line 111

Quoted 9 lines
arch/arm/plat-mxc/include/mach/uncompress.h +3 -0
@@ -102,6 +103,9 @@ static __inline__ void __arch_decomp_setup(unsigned long arch_id)
 	case MACH_TYPE_MAGX_ZN5:
 		uart_base = MX3X_UART2_BASE_ADDR;
 		break;
+	case MACH_TYPE_BUG:
+		uart_base = MX3X_UART5_BASE_ADDR;
+		break;
 	case MACH_TYPE_MX51_BABBAGE:
 	case MACH_TYPE_EUKREA_CPUIMX51SD:
 	case MACH_TYPE_MX51_3DS:

Thanks
Uwe

Signature · 2 lines
Pengutronix e.K.                           | Uwe Kleine-K?nig            |
Industrial Linux Solutions                 | http://www.pengutronix.de/  |
#17 lore raw

PATCH v3 1/1 mx31: add support for the bugbase 1.3 from buglabs

This work was based on bug-linux-2.6.30.patch that can be found
in buglabs's svn here:
svn://bugcamp.net/bug/branches/izzy/experimental

Note that the hardware schematics and documentations can be obtained
here: http://www.bugcommunity.com/wiki/index.php/BUGbase

---
 arch/arm/mach-mx3/Kconfig                   |    9 ++++
 arch/arm/mach-mx3/Makefile                  |    1 +
 arch/arm/mach-mx3/mach-bug.c                |   66 +++++++++++++++++++++++++++
 arch/arm/plat-mxc/include/mach/uncompress.h |    4 ++
 4 files changed, 80 insertions(+), 0 deletions(-)
 create mode 100644 arch/arm/mach-mx3/mach-bug.c
arch/arm/mach-mx3/Kconfig +9 -0
index de80d98..4f57f13 100644
@@ -199,6 +199,15 @@ config MACH_KZM_ARM11_01
 	  Include support for KZM-ARM11-01. This includes specific
 	  configurations for the board and its peripherals.
 
+config MACH_BUG
+	bool "Support Buglabs BUGBase platform"
+	select SOC_IMX31
+	select IMX_HAVE_PLATFORM_IMX_UART
+	default y
+	help
+	  Include support for BUGBase 1.3 platform. This includes specific
+	  configurations for the board and its peripherals.
+
 config MACH_EUKREA_CPUIMX35
 	bool "Support Eukrea CPUIMX35 Platform"
 	select SOC_IMX35
arch/arm/mach-mx3/Makefile +1 -0
index bc7294f..37d968b 100644
@@ -20,6 +20,7 @@ obj-$(CONFIG_MACH_PCM043)	+= mach-pcm043.o
 obj-$(CONFIG_MACH_ARMADILLO5X0) += mach-armadillo5x0.o
 obj-$(CONFIG_MACH_MX35_3DS)	+= mach-mx35_3ds.o
 obj-$(CONFIG_MACH_KZM_ARM11_01)	+= mach-kzm_arm11_01.o
+obj-$(CONFIG_MACH_BUG)		+= mach-bug.o
 obj-$(CONFIG_MACH_EUKREA_CPUIMX35)	+= mach-cpuimx35.o
 obj-$(CONFIG_MACH_EUKREA_MBIMXSD35_BASEBOARD)	+= eukrea_mbimxsd-baseboard.o
 obj-$(CONFIG_MACH_VPR200)	+= mach-vpr200.o
arch/arm/mach-mx3/mach-bug.c new file +66 -0

66 lines not on this page · raw message

arch/arm/plat-mxc/include/mach/uncompress.h +4 -0
index e634d6c..b45f534 100644
@@ -62,6 +62,7 @@ static inline void flush(void)
 #define MX2X_UART1_BASE_ADDR	0x1000a000
 #define MX3X_UART1_BASE_ADDR	0x43F90000
 #define MX3X_UART2_BASE_ADDR	0x43F94000
+#define MX3X_UART5_BASE_ADDR	0x43FB4000
 #define MX51_UART1_BASE_ADDR	0x73fbc000
 #define MX50_UART1_BASE_ADDR	0x53fbc000
 #define MX53_UART1_BASE_ADDR	0x53fbc000
@@ -102,6 +103,9 @@ static __inline__ void __arch_decomp_setup(unsigned long arch_id)
 	case MACH_TYPE_MAGX_ZN5:
 		uart_base = MX3X_UART2_BASE_ADDR;
 		break;
+	case MACH_TYPE_BUG:
+		uart_base = MX3X_UART5_BASE_ADDR;
+		break;
 	case MACH_TYPE_MX51_BABBAGE:
 	case MACH_TYPE_EUKREA_CPUIMX51SD:
 	case MACH_TYPE_MX51_3DS:
Signature · 1 line
1.7.0.4
#18 lore raw

PATCH v3 1/1 mx31: add support for the bugbase 1.3 from buglabs

Hi Denis,

Quoted 8 lines · Denis 'GNUtoo' Carikli

This work was based on bug-linux-2.6.30.patch that can be found
in buglabs's svn here:
svn://bugcamp.net/bug/branches/izzy/experimental

Note that the hardware schematics and documentations can be obtained
here: http://www.bugcommunity.com/wiki/index.php/BUGbase

The patch looks good to me now. If you want to make me still more happy, there are still two minor things to optimize:

- don't reference the history of the patch in the commit log. This is quite useless once the commit made it into Linus' tree. (The info might still be interesting, but then put it after the tripple dash below. Then it won't make it into git.)
- there is a trailing empty line in bug_board_init()

Maybe Sascha can fix this up when taking the patch? (Assuming the others are happy now, too of course.)

And I wonder there is no copyright statement by you in arch/arm/mach-mx3/mach-bug.c, maybe because you consider your changes too minor to be relevant? (INAL and I don't know who to value your contribution.)

Best regards
Uwe

Signature · 2 lines
Pengutronix e.K.                           | Uwe Kleine-K?nig            |
Industrial Linux Solutions                 | http://www.pengutronix.de/  |
#19 lore raw

PATCH v3 1/1 mx31: add support for the bugbase 1.3 from buglabs

Quoted 2 lines · On Sun, 13 Feb 2011 22:18:55 +0100 Uwe Kleine-K?nig…

Maybe Sascha can fix this up when taking the patch? (Assuming the others are happy now, too of course.)

That would be great, because I'll be travelling tommorow and won't be able to modify the patch soon.

Quoted 5 lines

And I wonder there is no copyright statement by you in arch/arm/mach-mx3/mach-bug.c, maybe because you consider your changes too minor to be relevant? (INAL and I don't know who to value your contribution.)

yes,that's what I tought...I'd be happy to have my name in the copyrights,however I'm not sure the contribution is relevant enough...still it was quite some work for
me (rebasing,debugging,upstrem ajustements).

There was a thread about that with the nexus one support from Daniel Walker in the msm mailing list...I don't have it off hand because I'm on a mobile device.

Thanks a lot for the review!!!

Denis

#20 lore raw

PATCH v3 1/1 mx31: add support for the bugbase 1.3 from buglabs

In reply to Uwe Kleine-König
Quoted 4 lines

And I wonder there is no copyright statement by you in arch/arm/mach-mx3/mach-bug.c, maybe because you consider your changes too minor to be relevant? (INAL and I don't know who to value your contribution.)

Here is the thread:
http://thread.gmane.org/gmane.linux.ports.arm.msm/122

What should I do? can I add my own name too?

Denis.

#21 lore raw

PATCH v3 1/1 mx31: add support for the bugbase 1.3 from buglabs

Quoted 6 lines · Denis 'GNUtoo' Carikli
Quoted 4 lines

And I wonder there is no copyright statement by you in arch/arm/mach-mx3/mach-bug.c, maybe because you consider your changes too minor to be relevant? (INAL and I don't know who to value your contribution.)

Here is the thread:
http://thread.gmane.org/gmane.linux.ports.arm.msm/122

read that, too.

Quoted 2 lines

What should I do? can I add my own name too?

I don't care much. These machine files are more or less trivial, and as I said, INAL. But I would be surprised if you would be kicked in a similar way for adding a copyright to "your" machine file. I think its is quite usual to add one's own copyright.

Best regards
Uwe

Signature · 2 lines
Pengutronix e.K.                           | Uwe Kleine-K?nig            |
Industrial Linux Solutions                 | http://www.pengutronix.de/  |
#22 lore raw

PATCH v3 1/1 mx31: add support for the bugbase 1.3 from buglabs

In reply to Denis 'GNUtoo' Carikli

No problems for that on our end Denis.

thx
ken

2011/2/17 Denis 'GNUtoo' Carikli <[email protected]>

Quoted 17 lines
Quoted 4 lines

And I wonder there is no copyright statement by you in arch/arm/mach-mx3/mach-bug.c, maybe because you consider your changes too minor to be relevant? (INAL and I don't know who to value your contribution.)

Here is the thread:
http://thread.gmane.org/gmane.linux.ports.arm.msm/122

What should I do? can I add my own name too?

Denis.

_______________________________________________
bug-dev mailing list
bug-dev at lists.buglabs.net
http://lists.buglabs.net/cgi-bin/mailman/listinfo/bug-dev

Signature · 5 lines
thx
ken
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.infradead.org/pipermail/linux-arm-kernel/attachments/20110217/91e473a2/attachment-0001.html>
#23 lore raw

PATCH 1/1 mx31: add support for the bugbase 1.3 from buglabs

In reply to Uwe Kleine-König

Note that the hardware schematics and documentations can be obtained
here: http://www.bugcommunity.com/wiki/index.php/BUGbase

---
 arch/arm/mach-mx3/Kconfig                   |    9 ++++
 arch/arm/mach-mx3/Makefile                  |    1 +
 arch/arm/mach-mx3/mach-bug.c                |   66 +++++++++++++++++++++++++++
 arch/arm/plat-mxc/include/mach/uncompress.h |    4 ++
 4 files changed, 80 insertions(+), 0 deletions(-)
 create mode 100644 arch/arm/mach-mx3/mach-bug.c
arch/arm/mach-mx3/Kconfig +9 -0
index 5000ac1..3daf1fe 100644
@@ -160,6 +160,15 @@ config MACH_KZM_ARM11_01
 	  Include support for KZM-ARM11-01. This includes specific
 	  configurations for the board and its peripherals.
 
+config MACH_BUG
+	bool "Support Buglabs BUGBase platform"
+	select SOC_IMX31
+	select IMX_HAVE_PLATFORM_IMX_UART
+	default y
+	help
+	  Include support for BUGBase 1.3 platform. This includes specific
+	  configurations for the board and its peripherals.
+
 config MACH_EUKREA_CPUIMX35
 	bool "Support Eukrea CPUIMX35 Platform"
 	select ARCH_MX35
arch/arm/mach-mx3/Makefile +1 -0
index 8a182d0..95a45e8 100644
@@ -23,5 +23,6 @@ obj-$(CONFIG_MACH_PCM043)	+= mach-pcm043.o
 obj-$(CONFIG_MACH_ARMADILLO5X0) += mach-armadillo5x0.o
 obj-$(CONFIG_MACH_MX35_3DS)	+= mach-mx35_3ds.o
 obj-$(CONFIG_MACH_KZM_ARM11_01)	+= mach-kzm_arm11_01.o
+obj-$(CONFIG_MACH_BUG)		+= mach-bug.o
 obj-$(CONFIG_MACH_EUKREA_CPUIMX35)	+= mach-cpuimx35.o
 obj-$(CONFIG_MACH_EUKREA_MBIMXSD35_BASEBOARD)	+= eukrea_mbimxsd-baseboard.o
arch/arm/mach-mx3/mach-bug.c new file +66 -0

66 lines not on this page · raw message

arch/arm/plat-mxc/include/mach/uncompress.h +4 -0
index 9dd9c20..c3b155c 100644
@@ -62,6 +62,7 @@ static inline void flush(void)
 #define MX2X_UART1_BASE_ADDR	0x1000a000
 #define MX3X_UART1_BASE_ADDR	0x43F90000
 #define MX3X_UART2_BASE_ADDR	0x43F94000
+#define MX3X_UART5_BASE_ADDR	0x43FB4000
 #define MX51_UART1_BASE_ADDR	0x73fbc000
 
 static __inline__ void __arch_decomp_setup(unsigned long arch_id)
@@ -98,6 +99,9 @@ static __inline__ void __arch_decomp_setup(unsigned long arch_id)
 	case MACH_TYPE_MAGX_ZN5:
 		uart_base = MX3X_UART2_BASE_ADDR;
 		break;
+	case MACH_TYPE_BUG:
+		uart_base = MX3X_UART5_BASE_ADDR;
+		break;
 	case MACH_TYPE_MX51_BABBAGE:
 	case MACH_TYPE_EUKREA_CPUIMX51SD:
 		uart_base = MX51_UART1_BASE_ADDR;
Signature · 1 line
1.7.0.4
#24 lore raw

PATCH 1/1 mx31: add support for the bugbase 1.3 from buglabs

Quoted 5 lines · Denis 'GNUtoo' Carikli

Note that the hardware schematics and documentations can be obtained
here: http://www.bugcommunity.com/wiki/index.php/BUGbase

---

As you didn't provide these and before someone else does the same, here come the changes compared to v3:

- moved "config MACH_BUG" further to the top of arch/arm/mach-mx3/Kconfig
- add a copyright statement in arch/arm/mach-mx3/mach-bug.c
- removed an empty line
- s/\t=/ =/ in the initializer of bug_timer

I don't know why you moved config MACH_BUG, but I don't care much.

Best regards
Uwe

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