mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
From: Mike Frysinger <vapier@gentoo.org>
To: linux-kernel@vger.kernel.org
Cc: uclinux-dist-devel@blackfin.uclinux.org
Subject: [PATCH 47/62] Blackfin: override default uClinux MTD addr/size
Date: Fri,  5 Jun 2009 04:04:56 -0400	[thread overview]
Message-ID: <1244189111-19639-48-git-send-email-vapier@gentoo.org> (raw)
In-Reply-To: <1244189111-19639-1-git-send-email-vapier@gentoo.org>

Due to a processor anomaly (05000263 to be exact), most Blackfin parts
cannot keep the embedded filesystem image directly after the kernel in
RAM.  Instead, the filesystem needs to be relocated to the end of memory.
As such, we need to tweak the map addr/size during boot for Blackfin
systems.

Signed-off-by: Mike Frysinger <vapier@gentoo.org>
---
 arch/blackfin/kernel/setup.c |   11 +++++++----
 1 files changed, 7 insertions(+), 4 deletions(-)

diff --git a/arch/blackfin/kernel/setup.c b/arch/blackfin/kernel/setup.c
index 59d9e3f..ed8452f 100644
--- a/arch/blackfin/kernel/setup.c
+++ b/arch/blackfin/kernel/setup.c
@@ -18,9 +18,12 @@
 #include <linux/tty.h>
 #include <linux/pfn.h>
 
+#ifdef CONFIG_MTD_UCLINUX
+#include <linux/mtd/map.h>
 #include <linux/ext2_fs.h>
 #include <linux/cramfs_fs.h>
 #include <linux/romfs_fs.h>
+#endif
 
 #include <asm/cplb.h>
 #include <asm/cacheflush.h>
@@ -45,6 +48,7 @@ EXPORT_SYMBOL(_ramend);
 EXPORT_SYMBOL(reserved_mem_dcache_on);
 
 #ifdef CONFIG_MTD_UCLINUX
+extern struct map_info uclinux_ram_map;
 unsigned long memory_mtd_end, memory_mtd_start, mtd_size;
 unsigned long _ebss;
 EXPORT_SYMBOL(memory_mtd_end);
@@ -535,10 +539,9 @@ static __init void memory_setup(void)
 	}
 
 	/* Relocate MTD image to the top of memory after the uncached memory area */
-	dma_memcpy((char *)memory_end, _end, mtd_size);
-
-	memory_mtd_start = memory_end;
-	_ebss = memory_mtd_start;	/* define _ebss for compatible */
+	uclinux_ram_map.phys = memory_mtd_start = memory_end;
+	uclinux_ram_map.size = mtd_size;
+	dma_memcpy((void *)uclinux_ram_map.phys, _end, uclinux_ram_map.size);
 #endif				/* CONFIG_MTD_UCLINUX */
 
 #if (defined(CONFIG_BFIN_ICACHE) && ANOMALY_05000263)
-- 
1.6.3.1


  parent reply	other threads:[~2009-06-05  8:21 UTC|newest]

Thread overview: 63+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2009-06-05  8:04 [PATCH 00/62] Blackfin arch updates for 2.6.31 Mike Frysinger
2009-06-05  8:04 ` [PATCH 01/62] Blackfin: add comment for anomaly 05000171 to init code Mike Frysinger
2009-06-05  8:04 ` [PATCH 02/62] Blackfin: add some help text to the EBIU_AMBCTL settings Mike Frysinger
2009-06-05  8:04 ` [PATCH 03/62] Blackfin: bf527-ezkit: add support for mmc-spi Mike Frysinger
2009-06-05  8:04 ` [PATCH 04/62] Blackfin: Allow bf548 ATAPI to be routed to GPIO Mike Frysinger
2009-06-05  8:04 ` [PATCH 05/62] Blackfin: allow scheduler functions to be placed into L1 Mike Frysinger
2009-06-05  8:04 ` [PATCH 06/62] Blackfin: fix link failure due to CONFIG_EXCEPTION_L1_SCRATCH Mike Frysinger
2009-06-05  8:04 ` [PATCH 07/62] Blackfin: fix data cache flushing when doing icache flushing Mike Frysinger
2009-06-05  8:04 ` [PATCH 08/62] Blackfin: fix bug found by traps test case 21 Mike Frysinger
2009-06-05  8:04 ` [PATCH 09/62] Blackfin: fix parentheses balance and convert some tab/space mixing Mike Frysinger
2009-06-05  8:04 ` [PATCH 10/62] Blackfin: fix warnings with I/O port macros Mike Frysinger
2009-06-05  8:04 ` [PATCH 11/62] Blackfin: merge Philippe's recent ipipe patch Mike Frysinger
2009-06-05  8:04 ` [PATCH 12/62] Blackfin: fix up PATA resource handling in bf537-stamp Mike Frysinger
2009-06-05  8:04 ` [PATCH 13/62] Blackfin: pull updated anomaly lists from toolchain Mike Frysinger
2009-06-05  8:04 ` [PATCH 14/62] Blackfin: do not error if GPIO IRQ is requested already as GPIO Mike Frysinger
2009-06-05  8:04 ` [PATCH 15/62] Blackfin: set bf51x/bf52x to 0.0 rev by default and bf54x to 0.2 Mike Frysinger
2009-06-05  8:04 ` [PATCH 16/62] Blackfin: simplify the do_flush macro Mike Frysinger
2009-06-05  8:04 ` [PATCH 17/62] Blackfin: update defconfigs Mike Frysinger
2009-06-05  8:04 ` [PATCH 18/62] Blackfin: simplify BF561 coreb driver greatly Mike Frysinger
2009-06-05  8:04 ` [PATCH 19/62] Blackfin: fix detection of cached L2 SRAM Mike Frysinger
2009-06-05  8:04 ` [PATCH 20/62] Blackfin: add MDMA defines to make cross-variant coding easier Mike Frysinger
2009-06-05  8:04 ` [PATCH 21/62] Blackfin: fix early L1 relocation crash Mike Frysinger
2009-06-05  8:04 ` [PATCH 22/62] Blackfin: document anomaly 05000234 workaround Mike Frysinger
2009-06-05  8:04 ` [PATCH 23/62] Blackfin: annotate anomaly 05000119 in core DMA code Mike Frysinger
2009-06-05  8:04 ` [PATCH 24/62] Blackfin: punt useless GPIO init call Mike Frysinger
2009-06-05  8:04 ` [PATCH 25/62] Blackfin: work around anomaly 05000287 Mike Frysinger
2009-06-05  8:04 ` [PATCH 26/62] Blackfin: delete unused sys_getpagesize() function Mike Frysinger
2009-06-05  8:04 ` [PATCH 27/62] Blackfin: workaround anomaly 05000227 Mike Frysinger
2009-06-05  8:04 ` [PATCH 28/62] Blackfin: do not append newlines to panic() messages Mike Frysinger
2009-06-05  8:04 ` [PATCH 29/62] Blackfin: detect anomaly 05000274 Mike Frysinger
2009-06-05  8:04 ` [PATCH 30/62] Blackfin: BF518F-EZBRD: handle required portmuxing of async pins Mike Frysinger
2009-06-05  8:04 ` [PATCH 31/62] Blackfin: annotate anomaly 05000120 Mike Frysinger
2009-06-05  8:04 ` [PATCH 32/62] Blackfin: add support for gptimer0 as a tick source Mike Frysinger
2009-06-05  8:04 ` [PATCH 33/62] Blackfin: add workaround for anomaly 05000287 Mike Frysinger
2009-06-05  8:04 ` [PATCH 34/62] Blackfin: make sure MPU CPLB for first 1k is marked as valid Mike Frysinger
2009-06-05  8:04 ` [PATCH 35/62] Blackfin: rename some Blackfin drivers Mike Frysinger
2009-06-05  8:04 ` [PATCH 36/62] Blackfin: work around anomaly 05000220 Mike Frysinger
2009-06-05  8:04 ` [PATCH 37/62] Blackfin: add note about anomaly 05000242 being worked around Mike Frysinger
2009-06-05  8:04 ` [PATCH 38/62] Blackfin: make deferred hardware errors more exact Mike Frysinger
2009-06-05  8:04 ` [PATCH 39/62] Blackfin: make sure stack is accessible before dumping it Mike Frysinger
2009-06-05  8:04 ` [PATCH 40/62] Blackfin: add workaround for anomaly 05000461 Mike Frysinger
2009-06-05  8:04 ` [PATCH 41/62] Blackfin: include system/processor info in dump messages Mike Frysinger
2009-06-05  8:04 ` [PATCH 42/62] Blackfin: update gptimers API Mike Frysinger
2009-06-05  8:04 ` [PATCH 43/62] Blackfin: drop unused reserve_pda() function Mike Frysinger
2009-06-05  8:04 ` [PATCH 44/62] Blackfin: merge sram init functions Mike Frysinger
2009-06-05  8:04 ` [PATCH 45/62] Blackfin: fix handling of initial L1 reservation Mike Frysinger
2009-06-05  8:04 ` [PATCH 46/62] Blackfin: fix command line corruption with DEBUG_DOUBLEFAULT Mike Frysinger
2009-06-05  8:04 ` Mike Frysinger [this message]
2009-06-05  8:04 ` [PATCH 48/62] Blackfin: bf548-ezkit: add resources for ADXL345/346 Mike Frysinger
2009-06-05  8:04 ` [PATCH 49/62] Blackfin: convert SMP to only use generic time framework Mike Frysinger
2009-06-05  8:04 ` [PATCH 50/62] Blackfin: add SSYNC to set_dma_sg() for descriptor fetching Mike Frysinger
2009-06-05  8:05 ` [PATCH 51/62] Blackfin: check SIC defines rather than variant names Mike Frysinger
2009-06-05  8:05 ` [PATCH 52/62] Blackfin: rename Blackfin relocs according to the toolchain Mike Frysinger
2009-06-05  8:05 ` [PATCH 53/62] Blackfin: document the lsl variants of the L1 allocator Mike Frysinger
2009-06-05  8:05 ` [PATCH 54/62] Blackfin: convert early_printk EVT init to a loop Mike Frysinger
2009-06-05  8:05 ` [PATCH 55/62] Blackfin: add missing access_ok() checks to user functions Mike Frysinger
2009-06-05  8:05 ` [PATCH 56/62] Blackfin: punt duplicated search_exception_table() prototype Mike Frysinger
2009-06-05  8:05 ` [PATCH 57/62] Blackfin: push access_ok() L1 attribute down Mike Frysinger
2009-06-05  8:05 ` [PATCH 58/62] Blackfin: kgdb: fix up error return values Mike Frysinger
2009-06-05  8:05 ` [PATCH 59/62] Blackfin: fix length checking in kgdb_ebin2mem Mike Frysinger
2009-06-05  8:05 ` [PATCH 60/62] Blackfin: export the last exception cause via debugfs Mike Frysinger
2009-06-05  8:05 ` [PATCH 61/62] Blackfin: fix unused warnings after nommu update Mike Frysinger
2009-06-05  8:05 ` [PATCH 62/62] Blackfin: fix sparseirq/kstat_irqs fallout Mike Frysinger

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1244189111-19639-48-git-send-email-vapier@gentoo.org \
    --to=vapier@gentoo.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=uclinux-dist-devel@blackfin.uclinux.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox

all inboxes | Powered by JetHome®