diff options
author | Linus Torvalds <torvalds@linux-foundation.org> | 2009-12-16 13:52:35 -0500 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2009-12-16 13:52:35 -0500 |
commit | 525995d77ca08dfc2ba6f8e606f93694271dbd66 (patch) | |
tree | be9ddad66cd1301eea8dab7814cbda144a909e35 /arch/blackfin/kernel/setup.c | |
parent | e4bdda1bc3123a9e65f4dd93a23041fde8ed3dc2 (diff) | |
parent | 64a2b168023bfd09037ba760838762e56c44178e (diff) |
Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/vapier/blackfin
* 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/vapier/blackfin: (88 commits)
Blackfin: Convert BUG() to use unreachable()
Blackfin: define __NR_recvmmsg
Blackfin: drop duplicate sched_clock
Blackfin: NOMPU: skip DMA ICPLB hole when it is redundant
Blackfin: MPU: add missing __init markings
Blackfin: add support for TIF_NOTIFY_RESUME
Blackfin: kgdb_test: clean up code a bit
Blackfin: convert kgdbtest to proc_fops
Blackfin: convert cyc2ns() to clocksource_cyc2ns()
Blackfin: ip0x: pull in asm/portmux.h for P_xxx defines
Blackfin: drop unused ax88180 resources
Blackfin: bf537-stamp: add ADF702x network driver resources
Blackfin: bf537-stamp: add CAN resources
Blackfin: bf537-stamp: add AD5258 i2c address
Blackfin: bf537-stamp: add adau1761 i2c address
Blackfin: bf537-stamp: add adau1371 i2c address
Blackfin: bf537-stamp: add ADP8870 resources
Blackfin: bf537-stamp: kill AD714x board-specific Kconfigs
Blackfin: bf537-stamp: update ADP5520 resources
Blackfin: bf537-stamp: add ADXL346 orientation sensing support
...
Diffstat (limited to 'arch/blackfin/kernel/setup.c')
-rw-r--r-- | arch/blackfin/kernel/setup.c | 46 |
1 files changed, 17 insertions, 29 deletions
diff --git a/arch/blackfin/kernel/setup.c b/arch/blackfin/kernel/setup.c index c202a44d1416..95448ae9c43a 100644 --- a/arch/blackfin/kernel/setup.c +++ b/arch/blackfin/kernel/setup.c | |||
@@ -178,10 +178,10 @@ void __init bfin_cache_init(void) | |||
178 | 178 | ||
179 | void __init bfin_relocate_l1_mem(void) | 179 | void __init bfin_relocate_l1_mem(void) |
180 | { | 180 | { |
181 | unsigned long l1_code_length; | 181 | unsigned long text_l1_len = (unsigned long)_text_l1_len; |
182 | unsigned long l1_data_a_length; | 182 | unsigned long data_l1_len = (unsigned long)_data_l1_len; |
183 | unsigned long l1_data_b_length; | 183 | unsigned long data_b_l1_len = (unsigned long)_data_b_l1_len; |
184 | unsigned long l2_length; | 184 | unsigned long l2_len = (unsigned long)_l2_len; |
185 | 185 | ||
186 | early_shadow_stamp(); | 186 | early_shadow_stamp(); |
187 | 187 | ||
@@ -201,30 +201,23 @@ void __init bfin_relocate_l1_mem(void) | |||
201 | 201 | ||
202 | blackfin_dma_early_init(); | 202 | blackfin_dma_early_init(); |
203 | 203 | ||
204 | /* if necessary, copy _stext_l1 to _etext_l1 to L1 instruction SRAM */ | 204 | /* if necessary, copy L1 text to L1 instruction SRAM */ |
205 | l1_code_length = _etext_l1 - _stext_l1; | 205 | if (L1_CODE_LENGTH && text_l1_len) |
206 | if (l1_code_length) | 206 | early_dma_memcpy(_stext_l1, _text_l1_lma, text_l1_len); |
207 | early_dma_memcpy(_stext_l1, _l1_lma_start, l1_code_length); | ||
208 | 207 | ||
209 | /* if necessary, copy _sdata_l1 to _sbss_l1 to L1 data bank A SRAM */ | 208 | /* if necessary, copy L1 data to L1 data bank A SRAM */ |
210 | l1_data_a_length = _sbss_l1 - _sdata_l1; | 209 | if (L1_DATA_A_LENGTH && data_l1_len) |
211 | if (l1_data_a_length) | 210 | early_dma_memcpy(_sdata_l1, _data_l1_lma, data_l1_len); |
212 | early_dma_memcpy(_sdata_l1, _l1_lma_start + l1_code_length, l1_data_a_length); | ||
213 | 211 | ||
214 | /* if necessary, copy _sdata_b_l1 to _sbss_b_l1 to L1 data bank B SRAM */ | 212 | /* if necessary, copy L1 data B to L1 data bank B SRAM */ |
215 | l1_data_b_length = _sbss_b_l1 - _sdata_b_l1; | 213 | if (L1_DATA_B_LENGTH && data_b_l1_len) |
216 | if (l1_data_b_length) | 214 | early_dma_memcpy(_sdata_b_l1, _data_b_l1_lma, data_b_l1_len); |
217 | early_dma_memcpy(_sdata_b_l1, _l1_lma_start + l1_code_length + | ||
218 | l1_data_a_length, l1_data_b_length); | ||
219 | 215 | ||
220 | early_dma_memcpy_done(); | 216 | early_dma_memcpy_done(); |
221 | 217 | ||
222 | /* if necessary, copy _stext_l2 to _edata_l2 to L2 SRAM */ | 218 | /* if necessary, copy L2 text/data to L2 SRAM */ |
223 | if (L2_LENGTH != 0) { | 219 | if (L2_LENGTH && l2_len) |
224 | l2_length = _sbss_l2 - _stext_l2; | 220 | memcpy(_stext_l2, _l2_lma, l2_len); |
225 | if (l2_length) | ||
226 | memcpy(_stext_l2, _l2_lma_start, l2_length); | ||
227 | } | ||
228 | } | 221 | } |
229 | 222 | ||
230 | /* add_memory_region to memmap */ | 223 | /* add_memory_region to memmap */ |
@@ -608,11 +601,6 @@ static __init void memory_setup(void) | |||
608 | page_mask_order = get_order(3 * page_mask_nelts * sizeof(long)); | 601 | page_mask_order = get_order(3 * page_mask_nelts * sizeof(long)); |
609 | #endif | 602 | #endif |
610 | 603 | ||
611 | #if !defined(CONFIG_MTD_UCLINUX) | ||
612 | /*In case there is no valid CPLB behind memory_end make sure we don't get to close*/ | ||
613 | memory_end -= SIZE_4K; | ||
614 | #endif | ||
615 | |||
616 | init_mm.start_code = (unsigned long)_stext; | 604 | init_mm.start_code = (unsigned long)_stext; |
617 | init_mm.end_code = (unsigned long)_etext; | 605 | init_mm.end_code = (unsigned long)_etext; |
618 | init_mm.end_data = (unsigned long)_edata; | 606 | init_mm.end_data = (unsigned long)_edata; |
@@ -917,7 +905,7 @@ void __init setup_arch(char **cmdline_p) | |||
917 | 905 | ||
918 | printk(KERN_INFO "Blackfin support (C) 2004-2009 Analog Devices, Inc.\n"); | 906 | printk(KERN_INFO "Blackfin support (C) 2004-2009 Analog Devices, Inc.\n"); |
919 | if (bfin_compiled_revid() == 0xffff) | 907 | if (bfin_compiled_revid() == 0xffff) |
920 | printk(KERN_INFO "Compiled for ADSP-%s Rev any\n", CPU); | 908 | printk(KERN_INFO "Compiled for ADSP-%s Rev any, running on 0.%d\n", CPU, bfin_revid()); |
921 | else if (bfin_compiled_revid() == -1) | 909 | else if (bfin_compiled_revid() == -1) |
922 | printk(KERN_INFO "Compiled for ADSP-%s Rev none\n", CPU); | 910 | printk(KERN_INFO "Compiled for ADSP-%s Rev none\n", CPU); |
923 | else | 911 | else |