[kernel] r15863 - in dists/sid/linux-2.6/debian: . config/armel patches/features/arm patches/series

Martin Michlmayr tbm at alioth.debian.org
Sun Jun 13 11:13:26 UTC 2010


Author: tbm
Date: Sun Jun 13 11:13:18 2010
New Revision: 15863

Log:
Add support for OpenRD-Ultimate.

Added:
   dists/sid/linux-2.6/debian/patches/features/arm/openrd-combine.patch
   dists/sid/linux-2.6/debian/patches/features/arm/openrd-ultimate.patch
Modified:
   dists/sid/linux-2.6/debian/changelog
   dists/sid/linux-2.6/debian/config/armel/config.kirkwood
   dists/sid/linux-2.6/debian/patches/series/16

Modified: dists/sid/linux-2.6/debian/changelog
==============================================================================
--- dists/sid/linux-2.6/debian/changelog	Sun Jun 13 11:11:28 2010	(r15862)
+++ dists/sid/linux-2.6/debian/changelog	Sun Jun 13 11:13:18 2010	(r15863)
@@ -30,6 +30,7 @@
   * OpenRD-Base: revert patch "allow SD/UART1 selection" since it
     never made it upstream.
   * ARM: update mach types.
+  * Add support for OpenRD-Ultimate.
 
  -- dann frazier <dannf at debian.org>  Tue, 01 Jun 2010 09:23:57 -0600
 

Modified: dists/sid/linux-2.6/debian/config/armel/config.kirkwood
==============================================================================
--- dists/sid/linux-2.6/debian/config/armel/config.kirkwood	Sun Jun 13 11:11:28 2010	(r15862)
+++ dists/sid/linux-2.6/debian/config/armel/config.kirkwood	Sun Jun 13 11:13:18 2010	(r15863)
@@ -62,8 +62,10 @@
 CONFIG_MACH_GURUPLUG=y
 CONFIG_MACH_TS219=y
 CONFIG_MACH_TS41X=y
+CONFIG_MACH_OPENRD=y
 CONFIG_MACH_OPENRD_BASE=y
 CONFIG_MACH_OPENRD_CLIENT=y
+CONFIG_MACH_OPENRD_ULTIMATE=y
 
 ##
 ## file: arch/arm/mm/Kconfig

Added: dists/sid/linux-2.6/debian/patches/features/arm/openrd-combine.patch
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ dists/sid/linux-2.6/debian/patches/features/arm/openrd-combine.patch	Sun Jun 13 11:13:18 2010	(r15863)
@@ -0,0 +1,283 @@
+From: Alexander Clouter <alex at digriz.org.uk>
+Date: Mon, 18 Jan 2010 23:38:19 +0000 (+0000)
+Subject: [ARM] kirkwood: combine support for openrd base/client support
+X-Git-Tag: v2.6.34-rc2~66^2~53^2~9
+X-Git-Url: http://git.kernel.org/?p=linux%2Fkernel%2Fgit%2Ftorvalds%2Flinux-2.6.git;a=commitdiff_plain;h=b2fdb5660fccc060e47658baad8911a963397ced
+
+[ARM] kirkwood: combine support for openrd base/client support
+
+Inspired by the mach-ep93xx flattening work, there is really not
+much difference between the OpenRD base and client board support
+so they should be merged together.
+
+Signed-off-by: Alexander Clouter <alex at digriz.org.uk>
+Acked-by: Simon Kagstrom <simon.kagstrom at netinsight.net>
+Signed-off-by: Nicolas Pitre <nico at fluxnic.net>
+
+[tbm: adapted Kconfig and Makefile]
+
+---
+
+diff --git a/arch/arm/mach-kirkwood/Kconfig b/arch/arm/mach-kirkwood/Kconfig
+index f6c6196..4ac6f46 100644
+--- a/arch/arm/mach-kirkwood/Kconfig
++++ b/arch/arm/mach-kirkwood/Kconfig
+@@ -57,14 +57,19 @@
+ 	  QNAP TS-410, TS-410U, TS-419P and TS-419U Turbo NAS
+ 	  devices.
+ 
++config MACH_OPENRD
++	bool
++
+ config MACH_OPENRD_BASE
+ 	bool "Marvell OpenRD Base Board"
++	select MACH_OPENRD
+ 	help
+ 	  Say 'Y' here if you want your kernel to support the
+ 	  Marvell OpenRD Base Board.
+ 
+ config MACH_OPENRD_CLIENT
+ 	bool "Marvell OpenRD Client Board"
++	select MACH_OPENRD
+ 	help
+ 	  Say 'Y' here if you want your kernel to support the
+ 	  Marvell OpenRD Client Board.
+diff --git a/arch/arm/mach-kirkwood/Makefile b/arch/arm/mach-kirkwood/Makefile
+index d4d7f53..df91d07 100644
+--- a/arch/arm/mach-kirkwood/Makefile
++++ b/arch/arm/mach-kirkwood/Makefile
+@@ -9,7 +9,6 @@
+ obj-$(CONFIG_MACH_GURUPLUG)		+= guruplug-setup.o
+ obj-$(CONFIG_MACH_TS219)		+= ts219-setup.o
+ obj-$(CONFIG_MACH_TS41X)		+= ts41x-setup.o
+-obj-$(CONFIG_MACH_OPENRD_BASE)		+= openrd_base-setup.o
+-obj-$(CONFIG_MACH_OPENRD_CLIENT)	+= openrd_client-setup.o
++obj-$(CONFIG_MACH_OPENRD)		+= openrd-setup.o
+ 
+ obj-$(CONFIG_CPU_IDLE)			+= cpuidle.o
+diff --git a/arch/arm/mach-kirkwood/openrd-setup.c b/arch/arm/mach-kirkwood/openrd-setup.c
+new file mode 100644
+index 0000000..ad3f1ec
+--- /dev/null
++++ b/arch/arm/mach-kirkwood/openrd-setup.c
+@@ -0,0 +1,118 @@
++/*
++ * arch/arm/mach-kirkwood/openrd-setup.c
++ *
++ * Marvell OpenRD (Base|Client) Board Setup
++ *
++ * 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.
++ */
++
++#include <linux/kernel.h>
++#include <linux/init.h>
++#include <linux/platform_device.h>
++#include <linux/mtd/nand.h>
++#include <linux/mtd/partitions.h>
++#include <linux/ata_platform.h>
++#include <linux/mv643xx_eth.h>
++#include <asm/mach-types.h>
++#include <asm/mach/arch.h>
++#include <mach/kirkwood.h>
++#include <plat/mvsdio.h>
++#include "common.h"
++#include "mpp.h"
++
++static struct mtd_partition openrd_nand_parts[] = {
++	{
++		.name		= "u-boot",
++		.offset		= 0,
++		.size		= SZ_1M,
++		.mask_flags	= MTD_WRITEABLE
++	}, {
++		.name		= "uImage",
++		.offset		= MTDPART_OFS_NXTBLK,
++		.size		= SZ_4M
++	}, {
++		.name		= "root",
++		.offset		= MTDPART_OFS_NXTBLK,
++		.size		= MTDPART_SIZ_FULL
++	},
++};
++
++static struct mv643xx_eth_platform_data openrd_ge00_data = {
++	.phy_addr	= MV643XX_ETH_PHY_ADDR(8),
++};
++
++static struct mv643xx_eth_platform_data openrd_ge01_data = {
++	.phy_addr	= MV643XX_ETH_PHY_ADDR(24),
++};
++
++static struct mv_sata_platform_data openrd_sata_data = {
++	.n_ports	= 2,
++};
++
++static struct mvsdio_platform_data openrd_mvsdio_data = {
++	.gpio_card_detect = 29,	/* MPP29 used as SD card detect */
++};
++
++static unsigned int openrd_mpp_config[] __initdata = {
++	MPP29_GPIO,
++	0
++};
++
++static void __init openrd_init(void)
++{
++	/*
++	 * Basic setup. Needs to be called early.
++	 */
++	kirkwood_init();
++	kirkwood_mpp_conf(openrd_mpp_config);
++
++	kirkwood_uart0_init();
++	kirkwood_nand_init(ARRAY_AND_SIZE(openrd_nand_parts), 25);
++
++	kirkwood_ehci_init();
++
++	kirkwood_ge00_init(&openrd_ge00_data);
++	if (machine_is_openrd_client())
++		kirkwood_ge01_init(&openrd_ge01_data);
++	kirkwood_sata_init(&openrd_sata_data);
++	kirkwood_sdio_init(&openrd_mvsdio_data);
++
++	kirkwood_i2c_init();
++}
++
++static int __init openrd_pci_init(void)
++{
++	if (machine_is_openrd_base() || machine_is_openrd_client())
++		kirkwood_pcie_init();
++
++	return 0;
++}
++subsys_initcall(openrd_pci_init);
++
++#ifdef CONFIG_MACH_OPENRD_BASE
++MACHINE_START(OPENRD_BASE, "Marvell OpenRD Base Board")
++	/* Maintainer: Dhaval Vasa <dhaval.vasa at einfochips.com> */
++	.phys_io	= KIRKWOOD_REGS_PHYS_BASE,
++	.io_pg_offst	= ((KIRKWOOD_REGS_VIRT_BASE) >> 18) & 0xfffc,
++	.boot_params	= 0x00000100,
++	.init_machine	= openrd_init,
++	.map_io		= kirkwood_map_io,
++	.init_irq	= kirkwood_init_irq,
++	.timer		= &kirkwood_timer,
++MACHINE_END
++#endif
++
++#ifdef CONFIG_MACH_OPENRD_CLIENT
++MACHINE_START(OPENRD_CLIENT, "Marvell OpenRD Client Board")
++	/* Maintainer: Dhaval Vasa <dhaval.vasa at einfochips.com> */
++	.phys_io	= KIRKWOOD_REGS_PHYS_BASE,
++	.io_pg_offst	= ((KIRKWOOD_REGS_VIRT_BASE) >> 18) & 0xfffc,
++	.boot_params	= 0x00000100,
++	.init_machine	= openrd_init,
++	.map_io		= kirkwood_map_io,
++	.init_irq	= kirkwood_init_irq,
++	.timer		= &kirkwood_timer,
++MACHINE_END
++#endif
+diff --git a/arch/arm/mach-kirkwood/openrd_base-setup.c b/arch/arm/mach-kirkwood/openrd_base-setup.c
+deleted file mode 100644
+index 77617c7..0000000
+--- a/arch/arm/mach-kirkwood/openrd_base-setup.c
++++ /dev/null
+@@ -1,96 +0,0 @@
+-/*
+- * arch/arm/mach-kirkwood/openrd_base-setup.c
+- *
+- * Marvell OpenRD Base Board Setup
+- *
+- * 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.
+- */
+-
+-#include <linux/kernel.h>
+-#include <linux/init.h>
+-#include <linux/platform_device.h>
+-#include <linux/mtd/partitions.h>
+-#include <linux/ata_platform.h>
+-#include <linux/mv643xx_eth.h>
+-#include <asm/mach-types.h>
+-#include <asm/mach/arch.h>
+-#include <mach/kirkwood.h>
+-#include <plat/mvsdio.h>
+-#include "common.h"
+-#include "mpp.h"
+-
+-static struct mtd_partition openrd_base_nand_parts[] = {
+-	{
+-		.name = "u-boot",
+-		.offset = 0,
+-		.size = SZ_1M
+-	}, {
+-		.name = "uImage",
+-		.offset = MTDPART_OFS_NXTBLK,
+-		.size = SZ_4M
+-	}, {
+-		.name = "root",
+-		.offset = MTDPART_OFS_NXTBLK,
+-		.size = MTDPART_SIZ_FULL
+-	},
+-};
+-
+-static struct mv643xx_eth_platform_data openrd_base_ge00_data = {
+-	.phy_addr	= MV643XX_ETH_PHY_ADDR(8),
+-};
+-
+-static struct mv_sata_platform_data openrd_base_sata_data = {
+-	.n_ports	= 2,
+-};
+-
+-static struct mvsdio_platform_data openrd_base_mvsdio_data = {
+-	.gpio_card_detect = 29,	/* MPP29 used as SD card detect */
+-};
+-
+-static unsigned int openrd_base_mpp_config[] __initdata = {
+-	MPP29_GPIO,
+-	0
+-};
+-
+-static void __init openrd_base_init(void)
+-{
+-	/*
+-	 * Basic setup. Needs to be called early.
+-	 */
+-	kirkwood_init();
+-	kirkwood_mpp_conf(openrd_base_mpp_config);
+-
+-	kirkwood_uart0_init();
+-	kirkwood_nand_init(ARRAY_AND_SIZE(openrd_base_nand_parts), 25);
+-
+-	kirkwood_ehci_init();
+-
+-	kirkwood_ge00_init(&openrd_base_ge00_data);
+-	kirkwood_sata_init(&openrd_base_sata_data);
+-	kirkwood_sdio_init(&openrd_base_mvsdio_data);
+-
+-	kirkwood_i2c_init();
+-}
+-
+-static int __init openrd_base_pci_init(void)
+-{
+-	if (machine_is_openrd_base())
+-		kirkwood_pcie_init();
+-
+-	return 0;
+- }
+-subsys_initcall(openrd_base_pci_init);
+-
+-
+-MACHINE_START(OPENRD_BASE, "Marvell OpenRD Base Board")
+-	/* Maintainer: Dhaval Vasa <dhaval.vasa at einfochips.com> */
+-	.phys_io	= KIRKWOOD_REGS_PHYS_BASE,
+-	.io_pg_offst	= ((KIRKWOOD_REGS_VIRT_BASE) >> 18) & 0xfffc,
+-	.boot_params	= 0x00000100,
+-	.init_machine	= openrd_base_init,
+-	.map_io		= kirkwood_map_io,
+-	.init_irq	= kirkwood_init_irq,
+-	.timer		= &kirkwood_timer,
+-MACHINE_END

Added: dists/sid/linux-2.6/debian/patches/features/arm/openrd-ultimate.patch
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ dists/sid/linux-2.6/debian/patches/features/arm/openrd-ultimate.patch	Sun Jun 13 11:13:18 2010	(r15863)
@@ -0,0 +1,102 @@
+Hi!
+This patch adds support for the OpenRD Ultimate machine(could be found at http://www.arm.linux.org.uk/developer/machines/list.php?id=2884)
+
+Besides adding machine description this patch adds correction for PHY address for Ultimate version.
+
+Differences from the previous attempt:
+ - Correctly filled instances of mv643xx_eth_platform_data in case of ultimate version.
+ - Do PCIE initialization for Ultimate version along with Base and Client
+ - Init ge01 if (!openrd-base) to make the code cleaner
+
+Regards,
+
+-- Dmytro Milinevskyy
+
+Signed-off-by: Dmytro Milinevskyy <milinevskyy at gmail.com>
+
+[tbm: adapted Kconfig]
+
+---
+
+ arch/arm/mach-kirkwood/Kconfig        |    7 +++++++
+ arch/arm/mach-kirkwood/openrd-setup.c |   27 ++++++++++++++++++++++++---
+ 2 files changed, 31 insertions(+), 3 deletions(-)
+
+diff --git a/arch/arm/mach-kirkwood/Kconfig b/arch/arm/mach-kirkwood/Kconfig
+index 29b2163..110a3b8 100644
+--- a/arch/arm/mach-kirkwood/Kconfig
++++ b/arch/arm/mach-kirkwood/Kconfig
+@@ -74,6 +74,13 @@
+ 	  Say 'Y' here if you want your kernel to support the
+ 	  Marvell OpenRD Client Board.
+ 
++config MACH_OPENRD_ULTIMATE
++	bool "Marvell OpenRD Ultimate Board"
++	select MACH_OPENRD
++	help
++	  Say 'Y' here if you want your kernel to support the
++	  Marvell OpenRD Ultimate Board.
++
+ endmenu
+ 
+ endif
+diff --git a/arch/arm/mach-kirkwood/openrd-setup.c b/arch/arm/mach-kirkwood/openrd-setup.c
+index ad3f1ec..284b00f 100644
+--- a/arch/arm/mach-kirkwood/openrd-setup.c
++++ b/arch/arm/mach-kirkwood/openrd-setup.c
+@@ -1,7 +1,7 @@
+ /*
+  * arch/arm/mach-kirkwood/openrd-setup.c
+  *
+- * Marvell OpenRD (Base|Client) Board Setup
++ * Marvell OpenRD (Base|Client|Ultimate) Board Setup
+  *
+  * This file is licensed under the terms of the GNU General Public
+  * License version 2.  This program is licensed "as is" without any
+@@ -73,9 +73,15 @@ static void __init openrd_init(void)
+ 
+ 	kirkwood_ehci_init();
+ 
++	if (machine_is_openrd_ultimate()) {
++		openrd_ge00_data.phy_addr = MV643XX_ETH_PHY_ADDR(0);
++		openrd_ge01_data.phy_addr = MV643XX_ETH_PHY_ADDR(1);
++	}
++
+ 	kirkwood_ge00_init(&openrd_ge00_data);
+-	if (machine_is_openrd_client())
++	if (!machine_is_openrd_base())
+ 		kirkwood_ge01_init(&openrd_ge01_data);
++
+ 	kirkwood_sata_init(&openrd_sata_data);
+ 	kirkwood_sdio_init(&openrd_mvsdio_data);
+ 
+@@ -84,7 +90,9 @@ static void __init openrd_init(void)
+ 
+ static int __init openrd_pci_init(void)
+ {
+-	if (machine_is_openrd_base() || machine_is_openrd_client())
++	if (machine_is_openrd_base() ||
++		machine_is_openrd_client() ||
++		machine_is_openrd_ultimate())
+ 		kirkwood_pcie_init();
+ 
+ 	return 0;
+@@ -116,3 +124,16 @@ MACHINE_START(OPENRD_CLIENT, "Marvell OpenRD Client Board")
+ 	.timer		= &kirkwood_timer,
+ MACHINE_END
+ #endif
++
++#ifdef CONFIG_MACH_OPENRD_ULTIMATE
++MACHINE_START(OPENRD_ULTIMATE, "Marvell OpenRD Ultimate Board")
++	/* Maintainer: Dhaval Vasa <dhaval.vasa at einfochips.com> */
++	.phys_io	= KIRKWOOD_REGS_PHYS_BASE,
++	.io_pg_offst	= ((KIRKWOOD_REGS_VIRT_BASE) >> 18) & 0xfffc,
++	.boot_params	= 0x00000100,
++	.init_machine	= openrd_init,
++	.map_io		= kirkwood_map_io,
++	.init_irq	= kirkwood_init_irq,
++	.timer		= &kirkwood_timer,
++MACHINE_END
++#endif
+-- 
+1.7.1

Modified: dists/sid/linux-2.6/debian/patches/series/16
==============================================================================
--- dists/sid/linux-2.6/debian/patches/series/16	Sun Jun 13 11:11:28 2010	(r15862)
+++ dists/sid/linux-2.6/debian/patches/series/16	Sun Jun 13 11:13:18 2010	(r15863)
@@ -130,3 +130,5 @@
 + bugfix/x86/eeepc-laptop-check-wireless-hotplug-events.patch
 - features/arm/openrd-base-uart.patch
 + features/arm/mach-types-update-2010-06-13.patch
++ features/arm/openrd-combine.patch
++ features/arm/openrd-ultimate.patch



More information about the Kernel-svn-changes mailing list