[Armadeus-commitlog] armadeus branch, master, updated. armadeus-4.1-342-gbd953cb
Brought to you by:
sszy
|
From: jorasse <jo...@us...> - 2012-06-04 14:45:01
|
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "armadeus".
The branch, master has been updated
via bd953cb9415fe1ed333fb7b57f2fd826f0ed79f3 (commit)
from 5a88f24ae2075de21746407f41d7064a5e409282 (commit)
Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.
- Log -----------------------------------------------------------------
commit bd953cb9415fe1ed333fb7b57f2fd826f0ed79f3
Author: Eric Jarrige <eri...@ar...>
Date: Mon Jun 4 16:45:39 2012 +0200
[LINUX] apf28: refactor NAND flash integration
-----------------------------------------------------------------------
Summary of changes:
.../450-armadeus-add_apf28_module_support.patch | 252 +++++++++++++++++++-
.../453-armadeus-disable-nand-boot-area.patch | 19 --
2 files changed, 240 insertions(+), 31 deletions(-)
delete mode 100644 patches/linux/2.6.35/453-armadeus-disable-nand-boot-area.patch
diff --git a/patches/linux/2.6.35/450-armadeus-add_apf28_module_support.patch b/patches/linux/2.6.35/450-armadeus-add_apf28_module_support.patch
index 91d6d70..2985a03 100644
--- a/patches/linux/2.6.35/450-armadeus-add_apf28_module_support.patch
+++ b/patches/linux/2.6.35/450-armadeus-add_apf28_module_support.patch
@@ -37,7 +37,7 @@ Index: linux-2.6.35.3/arch/arm/mach-mx28/mach-apf28.c
===================================================================
--- /dev/null 1970-01-01 00:00:00.000000000 +0000
+++ linux-2.6.35.3/arch/arm/mach-mx28/mach-apf28.c 2012-02-03 17:39:56.000000000 +0100
-@@ -0,0 +1,401 @@
+@@ -0,0 +1,629 @@
+/*
+ * Copyright (C) 2012 Armadeus systems
+ *
@@ -60,30 +60,31 @@ Index: linux-2.6.35.3/arch/arm/mach-mx28/mach-apf28.c
+ */
+
+#include <linux/kernel.h>
-+#include <linux/init.h>
-+#include <linux/io.h>
-+#include <linux/err.h>
+#include <linux/clk.h>
-+#include <linux/platform_device.h>
+#include <linux/delay.h>
++#include <linux/err.h>
+#include <linux/fec.h>
++#include <linux/gpmi-nfc.h>
++#include <linux/io.h>
++#include <linux/init.h>
++#include <linux/mtd/mtd.h>
++#include <linux/mtd/partitions.h>
++#include <linux/mtd/physmap.h>
++#include <linux/platform_device.h>
+
+#include <asm/setup.h>
+#include <asm/mach-types.h>
+#include <asm/mach/arch.h>
+
+#include <mach/apf28.h>
-+#include <mach/hardware.h>
+#include <mach/device.h>
++#include <mach/dma.h>
++#include <mach/hardware.h>
+#include <mach/pinctrl.h>
+#include <mach/regs-ocotp.h>
+
-+#include <linux/mtd/mtd.h>
-+#include <linux/mtd/partitions.h>
-+#include <linux/mtd/physmap.h>
-+
-+#include "mx28_pins.h"
+#include "device.h"
++#include "mx28_pins.h"
+
+static struct pin_desc apf28_fixed_pins[] = {
+ {
@@ -96,6 +97,143 @@ Index: linux-2.6.35.3/arch/arm/mach-mx28/mach-apf28.c
+ .id = PINID_PWM1,
+ .fun = PIN_FUN3,
+ },
++#if defined(CONFIG_MTD_NAND_GPMI_NFC)
++ {
++ .name = "GPMI D0",
++ .id = PINID_GPMI_D00,
++ .fun = PIN_FUN1,
++ .strength = PAD_4MA,
++ .voltage = PAD_3_3V,
++ .pullup = 0,
++ .drive = !0
++ },
++ {
++ .name = "GPMI D1",
++ .id = PINID_GPMI_D01,
++ .fun = PIN_FUN1,
++ .strength = PAD_4MA,
++ .voltage = PAD_3_3V,
++ .pullup = 0,
++ .drive = !0
++ },
++ {
++ .name = "GPMI D2",
++ .id = PINID_GPMI_D02,
++ .fun = PIN_FUN1,
++ .strength = PAD_4MA,
++ .voltage = PAD_3_3V,
++ .pullup = 0,
++ .drive = !0
++ },
++ {
++ .name = "GPMI D3",
++ .id = PINID_GPMI_D03,
++ .fun = PIN_FUN1,
++ .strength = PAD_4MA,
++ .voltage = PAD_3_3V,
++ .pullup = 0,
++ .drive = !0
++ },
++ {
++ .name = "GPMI D4",
++ .id = PINID_GPMI_D04,
++ .fun = PIN_FUN1,
++ .strength = PAD_4MA,
++ .voltage = PAD_3_3V,
++ .pullup = 0,
++ .drive = !0
++ },
++ {
++ .name = "GPMI D5",
++ .id = PINID_GPMI_D05,
++ .fun = PIN_FUN1,
++ .strength = PAD_4MA,
++ .voltage = PAD_3_3V,
++ .pullup = 0,
++ .drive = !0
++ },
++ {
++ .name = "GPMI D6",
++ .id = PINID_GPMI_D06,
++ .fun = PIN_FUN1,
++ .strength = PAD_4MA,
++ .voltage = PAD_3_3V,
++ .pullup = 0,
++ .drive = !0
++ },
++ {
++ .name = "GPMI D7",
++ .id = PINID_GPMI_D07,
++ .fun = PIN_FUN1,
++ .strength = PAD_4MA,
++ .voltage = PAD_3_3V,
++ .pullup = 0,
++ .drive = !0
++ },
++ {
++ .name = "GPMI CE0-",
++ .id = PINID_GPMI_CE0N,
++ .fun = PIN_FUN1,
++ .strength = PAD_4MA,
++ .voltage = PAD_3_3V,
++ .pullup = 0,
++ .drive = !0
++ },
++ {
++ .name = "GPMI RDY0",
++ .id = PINID_GPMI_RDY0,
++ .fun = PIN_FUN1,
++ .strength = PAD_4MA,
++ .voltage = PAD_3_3V,
++ .pullup = 0,
++ .drive = !0
++ },
++ {
++ .name = "GPMI RD-",
++ .id = PINID_GPMI_RDN,
++ .fun = PIN_FUN1,
++ .strength = PAD_12MA,
++ .voltage = PAD_3_3V,
++ .pullup = 0,
++ .drive = !0
++ },
++ {
++ .name = "GPMI WR-",
++ .id = PINID_GPMI_WRN,
++ .fun = PIN_FUN1,
++ .strength = PAD_12MA,
++ .voltage = PAD_3_3V,
++ .pullup = 0,
++ .drive = !0
++ },
++ {
++ .name = "GPMI ALE",
++ .id = PINID_GPMI_ALE,
++ .fun = PIN_FUN1,
++ .strength = PAD_4MA,
++ .voltage = PAD_3_3V,
++ .pullup = 0,
++ .drive = !0
++ },
++ {
++ .name = "GPMI CLE",
++ .id = PINID_GPMI_CLE,
++ .fun = PIN_FUN1,
++ .strength = PAD_4MA,
++ .voltage = PAD_3_3V,
++ .pullup = 0,
++ .drive = !0
++ },
++ {
++ .name = "GPMI RST-",
++ .id = PINID_GPMI_RESETN,
++ .fun = PIN_FUN1,
++ .strength = PAD_12MA,
++ .voltage = PAD_3_3V,
++ .pullup = 0,
++ .drive = !0
++ },
++#endif /* defined(CONFIG_MTD_NAND_GPMI_NFC) */
+#if defined(CONFIG_FEC) || defined(CONFIG_FEC_MODULE)\
+ || defined(CONFIG_FEC_L2SWITCH)
+ {
@@ -214,11 +352,100 @@ Index: linux-2.6.35.3/arch/arm/mach-mx28/mach-apf28.c
+#endif /* defined(CONFIG_FEC) || defined(CONFIG_FEC_MODULE) */
+};
+
++#if defined(CONFIG_MTD_NAND_GPMI_NFC)
++
++static int apf28_gpmi_nfc_platform_init(unsigned int max_chip_count)
++{
++ return 0;
++}
++
++static void apf28_gpmi_nfc_platform_exit(unsigned int max_chip_count)
++{
++}
++
++static const char *apf28_gpmi_nfc_partition_source_types[] =
++ { "cmdlinepart", 0 };
++
++static struct gpmi_nfc_platform_data apf28_gpmi_nfc_platform_data = {
++ .nfc_version = 1,
++ .boot_rom_version = 1,
++ .clock_name = "gpmi",
++ .platform_init = apf28_gpmi_nfc_platform_init,
++ .platform_exit = apf28_gpmi_nfc_platform_exit,
++ .min_prop_delay_in_ns = 5,
++ .max_prop_delay_in_ns = 9,
++ .max_chip_count = 1,
++ .boot_area_size_in_bytes = 0 * SZ_1M,
++ .partition_source_types = apf28_gpmi_nfc_partition_source_types,
++ .partitions = 0,
++ .partition_count = 0,
++};
++
++static struct resource gpmi_nfc_resources[] = {
++ {
++ .name = GPMI_NFC_GPMI_REGS_ADDR_RES_NAME,
++ .flags = IORESOURCE_MEM,
++ .start = GPMI_PHYS_ADDR,
++ .end = GPMI_PHYS_ADDR + SZ_8K - 1,
++ },
++ {
++ .name = GPMI_NFC_GPMI_INTERRUPT_RES_NAME,
++ .flags = IORESOURCE_IRQ,
++ .start = IRQ_GPMI,
++ .end = IRQ_GPMI,
++ },
++ {
++ .name = GPMI_NFC_BCH_REGS_ADDR_RES_NAME,
++ .flags = IORESOURCE_MEM,
++ .start = BCH_PHYS_ADDR,
++ .end = BCH_PHYS_ADDR + SZ_8K - 1,
++ },
++ {
++ .name = GPMI_NFC_BCH_INTERRUPT_RES_NAME,
++ .flags = IORESOURCE_IRQ,
++ .start = IRQ_BCH,
++ .end = IRQ_BCH,
++ },
++ {
++ .name = GPMI_NFC_DMA_CHANNELS_RES_NAME,
++ .flags = IORESOURCE_DMA,
++ .start = MXS_DMA_CHANNEL_AHB_APBH_GPMI0,
++ .end = MXS_DMA_CHANNEL_AHB_APBH_GPMI7,
++ },
++ {
++ .name = GPMI_NFC_DMA_INTERRUPT_RES_NAME,
++ .flags = IORESOURCE_IRQ,
++ .start = IRQ_GPMI_DMA,
++ .end = IRQ_GPMI_DMA,
++ },
++};
++
++static void __init apf28_init_gpmi_nfc(void)
++{
++ struct platform_device *pdev;
++
++ pdev = mxs_get_device(GPMI_NFC_DRIVER_NAME, 0);
++ if (pdev == NULL || IS_ERR(pdev))
++ return;
++ pdev->dev.platform_data = &apf28_gpmi_nfc_platform_data;
++ pdev->resource = gpmi_nfc_resources;
++ pdev->num_resources = ARRAY_SIZE(gpmi_nfc_resources);
++ mxs_add_device(pdev, 1);
++ mxs_get_devices(GPMI_NFC_DRIVER_NAME); /* to lock the ressource */
++}
++#else
++static void apf28_init_gpmi_nfc(void)
++{
++}
++#endif
++
++
+/*
+ * Stub implementations for mx287 FEC1 init to be overloaded in the baseboard
+ * source code.
+ */
-+int __mx287_fec1_gpio_init(void) {
++int __mx287_fec1_gpio_init(void)
++{
+ return 0;
+}
+
@@ -419,6 +646,7 @@ Index: linux-2.6.35.3/arch/arm/mach-mx28/mach-apf28.c
+#endif
+
+ apf28_init_fec();
++ apf28_init_gpmi_nfc();
+
+ mx28_device_init();
+ apf28_device_init();
diff --git a/patches/linux/2.6.35/453-armadeus-disable-nand-boot-area.patch b/patches/linux/2.6.35/453-armadeus-disable-nand-boot-area.patch
deleted file mode 100644
index 1f2c55a..0000000
--- a/patches/linux/2.6.35/453-armadeus-disable-nand-boot-area.patch
+++ /dev/null
@@ -1,19 +0,0 @@
-Quick fix to fully support NAND address space for board memory partitions -
-therefore this add support for any commandline partition.
-
-Signed-off-by: Eric Jarrige <eri...@ar...>
----
-Index: linux-2.6.35.3/arch/arm/mach-mx28/device.c
-===================================================================
---- linux-2.6.35.3/arch/arm/mach-mx28/device.c 2012-03-12 12:29:25.000000000 +0100
-+++ linux-2.6.35.3/arch/arm/mach-mx28/device.c 2012-03-13 23:28:56.000000000 +0100
-@@ -357,7 +357,9 @@ static struct gpmi_nfc_platform_data gp
- .min_prop_delay_in_ns = 5,
- .max_prop_delay_in_ns = 9,
- .max_chip_count = 2,
-+#if defined(CONFIG_MACH_MX28EVK)
- .boot_area_size_in_bytes = 20 * SZ_1M,
-+#endif
- .partition_source_types = gpmi_nfc_partition_source_types,
- .partitions = 0,
- .partition_count = 0,
hooks/post-receive
--
armadeus
|