From 68a2d1b8a1532e00fd892c2ffd7dd319cb170116 Mon Sep 17 00:00:00 2001 From: Martin Michlmayr Date: Sun, 23 Aug 2009 15:18:15 +0000 Subject: [PATCH] add OpenRD-Base support svn path=/dists/trunk/linux-2.6/; revision=14174 --- debian/config/armel/config.kirkwood | 1 + .../features/arm/openrd-machtype.patch | 7 + debian/patches/features/arm/openrd-sata.patch | 43 ++++++ debian/patches/features/arm/openrd.patch | 138 ++++++++++++++++++ debian/patches/series/base | 3 + 5 files changed, 192 insertions(+) create mode 100644 debian/patches/features/arm/openrd-machtype.patch create mode 100644 debian/patches/features/arm/openrd-sata.patch create mode 100644 debian/patches/features/arm/openrd.patch diff --git a/debian/config/armel/config.kirkwood b/debian/config/armel/config.kirkwood index fad3969d3..84d90288a 100644 --- a/debian/config/armel/config.kirkwood +++ b/debian/config/armel/config.kirkwood @@ -60,6 +60,7 @@ CONFIG_MACH_RD88F6192_NAS=y CONFIG_MACH_RD88F6281=y CONFIG_MACH_SHEEVAPLUG=y CONFIG_MACH_TS219=y +CONFIG_MACH_OPENRD_BASE=y ## ## file: arch/arm/mm/Kconfig diff --git a/debian/patches/features/arm/openrd-machtype.patch b/debian/patches/features/arm/openrd-machtype.patch new file mode 100644 index 000000000..562d74606 --- /dev/null +++ b/debian/patches/features/arm/openrd-machtype.patch @@ -0,0 +1,7 @@ +--- arch/arm/tools/mach-types~ 2009-08-23 14:44:45.000000000 +0000 ++++ arch/arm/tools/mach-types 2009-08-23 14:44:52.000000000 +0000 +@@ -2280,3 +2280,4 @@ + htctopaz MACH_HTCTOPAZ HTCTOPAZ 2293 + matrix504 MACH_MATRIX504 MATRIX504 2294 + mrfsa MACH_MRFSA MRFSA 2295 ++openrd_base MACH_OPENRD_BASE OPENRD_BASE 2325 diff --git a/debian/patches/features/arm/openrd-sata.patch b/debian/patches/features/arm/openrd-sata.patch new file mode 100644 index 000000000..ed210dd92 --- /dev/null +++ b/debian/patches/features/arm/openrd-sata.patch @@ -0,0 +1,43 @@ +From: Ron Lee +Date: Mon, 10 Aug 2009 12:53:48 +0000 (+0530) +Subject: [ARM] Kirkwood: Initialise SATA for OpenRD-Base +X-Git-Url: http://git.marvell.com/?p=orion.git;a=commitdiff_plain;h=decf77079511fc5ef832ead074bb45e4e0b099c0 + +[ARM] Kirkwood: Initialise SATA for OpenRD-Base + +Signed-off-by: Ron Lee +Signed-off-by: Dhaval Vasa +Signed-off-by: Nicolas Pitre +--- + +diff --git a/arch/arm/mach-kirkwood/openrd_base-setup.c b/arch/arm/mach-kirkwood/openrd_base-setup.c +index 3144bb8..947dfb8 100644 +--- a/arch/arm/mach-kirkwood/openrd_base-setup.c ++++ b/arch/arm/mach-kirkwood/openrd_base-setup.c +@@ -12,6 +12,7 @@ + #include + #include + #include ++#include + #include + #include + #include +@@ -40,6 +41,10 @@ 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 */ + }; +@@ -63,6 +68,7 @@ static void __init openrd_base_init(void) + kirkwood_ehci_init(); + + kirkwood_ge00_init(&openrd_base_ge00_data); ++ kirkwood_sata_init(&openrd_base_sata_data); + kirkwood_sdio_init(&openrd_base_mvsdio_data); + } + diff --git a/debian/patches/features/arm/openrd.patch b/debian/patches/features/arm/openrd.patch new file mode 100644 index 000000000..dc7f62fae --- /dev/null +++ b/debian/patches/features/arm/openrd.patch @@ -0,0 +1,138 @@ +From: Dhaval Vasa +Date: Mon, 10 Aug 2009 12:07:34 +0000 (+0530) +Subject: [ARM] Kirkwood: Marvell OpenRD-Base board support +X-Git-Url: http://git.marvell.com/?p=orion.git;a=commitdiff_plain;h=7eeae54c68e91c46ec170e764d1cceac81f35969 + +[ARM] Kirkwood: Marvell OpenRD-Base board support + +reference: +http://open-rd.org +http://code.google.com/p/openrd + +This patch is tested for: +1. Boot from DRAM/NAND flash +2. NAND read/write/erase +3. GbE0 +4. USB read/write + +FIXME: +1. SD/UART1 selection +2. MPP configuration (currently, default) +3. PEX + +Signed-off-by: Dhaval Vasa +Signed-off-by: Nicolas Pitre +--- + +diff --git a/arch/arm/mach-kirkwood/Kconfig b/arch/arm/mach-kirkwood/Kconfig +index 25100f7..0aca451 100644 +--- a/arch/arm/mach-kirkwood/Kconfig ++++ b/arch/arm/mach-kirkwood/Kconfig +@@ -38,6 +38,12 @@ config MACH_TS219 + Say 'Y' here if you want your kernel to support the + QNAP TS-119 and TS-219 Turbo NAS devices. + ++config MACH_OPENRD_BASE ++ bool "Marvell OpenRD Base Board" ++ help ++ Say 'Y' here if you want your kernel to support the ++ Marvell OpenRD Base Board. ++ + endmenu + + endif +diff --git a/arch/arm/mach-kirkwood/Makefile b/arch/arm/mach-kirkwood/Makefile +index 9dd680e..80ab0ec 100644 +--- a/arch/arm/mach-kirkwood/Makefile ++++ b/arch/arm/mach-kirkwood/Makefile +@@ -6,5 +6,6 @@ obj-$(CONFIG_MACH_RD88F6281) += rd88f6281-setup.o + obj-$(CONFIG_MACH_MV88F6281GTW_GE) += mv88f6281gtw_ge-setup.o + obj-$(CONFIG_MACH_SHEEVAPLUG) += sheevaplug-setup.o + obj-$(CONFIG_MACH_TS219) += ts219-setup.o ++obj-$(CONFIG_MACH_OPENRD_BASE) += openrd_base-setup.o + + obj-$(CONFIG_CPU_IDLE) += cpuidle.o +diff --git a/arch/arm/mach-kirkwood/openrd_base-setup.c b/arch/arm/mach-kirkwood/openrd_base-setup.c +new file mode 100644 +index 0000000..3144bb8 +--- /dev/null ++++ b/arch/arm/mach-kirkwood/openrd_base-setup.c +@@ -0,0 +1,78 @@ ++/* ++ * 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 ++#include ++#include ++#include ++#include ++#include ++#include ++#include ++#include ++#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 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_sdio_init(&openrd_base_mvsdio_data); ++} ++ ++MACHINE_START(OPENRD_BASE, "Marvell OpenRD Base Board") ++ /* Maintainer: Dhaval Vasa */ ++ .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 diff --git a/debian/patches/series/base b/debian/patches/series/base index 4f5754338..33053be11 100644 --- a/debian/patches/series/base +++ b/debian/patches/series/base @@ -31,3 +31,6 @@ #+ bugfix/sparc/arch-zimage-target.patch + bugfix/arm/kirkwood-init-build-fix.patch + features/arm/qnap-219p-pci.patch ++ features/arm/openrd-machtype.patch ++ features/arm/openrd.patch ++ features/arm/openrd-sata.patch