Commit 75de290e authored by Greg Ungerer's avatar Greg Ungerer Committed by Linus Torvalds

[PATCH] reformat m68knommu 68360/uCquicc crt0_ram.S

This patch reformats the 68360 crt_ram.S file to make it consistent
with the other m68knommu assembler files, and generally to good
style standards :-)
parent bf68af96
...@@ -15,7 +15,6 @@ ...@@ -15,7 +15,6 @@
#include <linux/config.h> #include <linux/config.h>
.global _stext .global _stext
.global __bss_start
.global _start .global _start
.global _rambase .global _rambase
...@@ -26,7 +25,6 @@ ...@@ -26,7 +25,6 @@
.global _quicc_base .global _quicc_base
.global _periph_base .global _periph_base
.global _dprbase
#define REGB 0x1000 #define REGB 0x1000
#define PEPAR (_dprbase + REGB + 0x0016) #define PEPAR (_dprbase + REGB + 0x0016)
...@@ -94,8 +92,10 @@ ...@@ -94,8 +92,10 @@
#include <asm/m68360_regs.h> #include <asm/m68360_regs.h>
/* By the time this RAM specific code begins to execute, DPRAM /*
* and DRAM should already be mapped and accessible. */ * By the time this RAM specific code begins to execute, DPRAM
* and DRAM should already be mapped and accessible.
*/
.text .text
_start: _start:
...@@ -103,8 +103,7 @@ _stext: ...@@ -103,8 +103,7 @@ _stext:
nop nop
ori.w #MCU_DISABLE_INTRPTS, %sr /* disable interrupts: */ ori.w #MCU_DISABLE_INTRPTS, %sr /* disable interrupts: */
/* We should not need to setup the boot stack the reset should do it. */ /* We should not need to setup the boot stack the reset should do it. */
movea.l #_boot_stack, %sp /*set up stack at the end of DRAM:*/ movea.l #__ramend, %sp /*set up stack at the end of DRAM:*/
set_mbar_register: set_mbar_register:
moveq.l #0x07, %d1 /* Setup MBAR */ moveq.l #0x07, %d1 /* Setup MBAR */
...@@ -119,14 +118,13 @@ set_mbar_register: ...@@ -119,14 +118,13 @@ set_mbar_register:
moveq.l #0x05, %d1 moveq.l #0x05, %d1
movec.l %d1, %dfc movec.l %d1, %dfc
/* Now we can begin to access registers in DPRAM */ /* Now we can begin to access registers in DPRAM */
set_sim_mcr: set_sim_mcr:
/* Set Module Configuration Register */ /* Set Module Configuration Register */
move.l #MCU_SIM_MCR, MCR move.l #MCU_SIM_MCR, MCR
/* to do: Determine cause of reset */ /* to do: Determine cause of reset */
/* /*
* configure system clock MC68360 p. 6-40 * configure system clock MC68360 p. 6-40
...@@ -137,20 +135,19 @@ set_sim_clock: ...@@ -137,20 +135,19 @@ set_sim_clock:
move.b #MCU_SIM_CLKOCR, CLKOCR move.b #MCU_SIM_CLKOCR, CLKOCR
move.w #MCU_SIM_CDVCR, CDVCR move.w #MCU_SIM_CDVCR, CDVCR
// Wait for the PLL to settle /* Wait for the PLL to settle */
move.w #16384, %d0 move.w #16384, %d0
pll_settle_wait: pll_settle_wait:
subi.w #1, %d0 subi.w #1, %d0
bne pll_settle_wait bne pll_settle_wait
/* Setup the system protection register, and watchdog timer register */ /* Setup the system protection register, and watchdog timer register */
move.b #MCU_SIM_SWIV, SWIV move.b #MCU_SIM_SWIV, SWIV
move.w #MCU_SIM_PICR, PICR move.w #MCU_SIM_PICR, PICR
move.w #MCU_SIM_PITR, PITR move.w #MCU_SIM_PITR, PITR
move.w #MCU_SIM_SYPCR, SYPCR move.w #MCU_SIM_SYPCR, SYPCR
/* Clear DPRAM - system + parameter */ /* Clear DPRAM - system + parameter */
movea.l #_dprbase, %a0 movea.l #_dprbase, %a0
movea.l #_dprbase+0x2000, %a1 movea.l #_dprbase+0x2000, %a1
...@@ -161,9 +158,7 @@ clear_dpram: ...@@ -161,9 +158,7 @@ clear_dpram:
bhi clear_dpram bhi clear_dpram
configure_memory_controller: configure_memory_controller:
/* /* Set up Global Memory Register (GMR) */
* Set up Global Memory Register (GMR)
*/
move.l #MCU_SIM_GMR, %d0 move.l #MCU_SIM_GMR, %d0
move.l %d0, GMR move.l %d0, GMR
...@@ -179,23 +174,21 @@ configure_chip_select_0: ...@@ -179,23 +174,21 @@ configure_chip_select_0:
ori.l #SIM_BR0_MASK, %d0 ori.l #SIM_BR0_MASK, %d0
move.l %d0, BR0 move.l %d0, BR0
configure_chip_select_1: configure_chip_select_1:
move.l #__flashend, %d0 move.l #__rom_end, %d0
subi.l #__flashstart, %d0 subi.l #__rom_start, %d0
subq.l #0x01, %d0 subq.l #0x01, %d0
eori.l #SIM_OR_MASK, %d0 eori.l #SIM_OR_MASK, %d0
ori.l #SIM_OR1_MASK, %d0 ori.l #SIM_OR1_MASK, %d0
move.l %d0, OR1 move.l %d0, OR1
move.l #__flashstart, %d0 move.l #__rom_start, %d0
ori.l #SIM_BR1_MASK, %d0 ori.l #SIM_BR1_MASK, %d0
move.l %d0, BR1 move.l %d0, BR1
move.w #MCU_SIM_PEPAR, PEPAR move.w #MCU_SIM_PEPAR, PEPAR
/* point to vector table: */ /* point to vector table: */
move.l #_romvec, %a0 move.l #_romvec, %a0
move.l #_ramvec, %a1 move.l #_ramvec, %a1
copy_vectors: copy_vectors:
...@@ -212,9 +205,9 @@ copy_vectors: ...@@ -212,9 +205,9 @@ copy_vectors:
/* Copy data segment from ROM to RAM */ /* Copy data segment from ROM to RAM */
moveal #__data_rom_start, %a0 moveal #_stext, %a0
moveal #__data_start, %a1 moveal #_sdata, %a1
moveal #__data_end, %a2 moveal #_edata, %a2
/* Copy %a0 to %a1 until %a1 == %a2 */ /* Copy %a0 to %a1 until %a1 == %a2 */
LD1: LD1:
...@@ -222,11 +215,11 @@ LD1: ...@@ -222,11 +215,11 @@ LD1:
addq.l #0x04, %a0 addq.l #0x04, %a0
move.l %d0, %a1@ move.l %d0, %a1@
addq.l #0x04, %a1 addq.l #0x04, %a1
cmp.l #__data_end, %a1 cmp.l #_edata, %a1
blt LD1 blt LD1
moveal #__bss_start, %a0 moveal #_sbss, %a0
moveal #end, %a1 moveal #_ebss, %a1
/* Copy 0 to %a0 until %a0 == %a1 */ /* Copy 0 to %a0 until %a0 == %a1 */
L1: L1:
...@@ -240,15 +233,15 @@ load_quicc: ...@@ -240,15 +233,15 @@ load_quicc:
store_ram_size: store_ram_size:
/* Set ram size information */ /* Set ram size information */
move.l #_sdata, _rambase move.l #_sdata, _rambase
move.l #end, _ramstart move.l #_ebss, _ramstart
move.l #__ramend, %d0 move.l #__ramend, %d0
sub.l #0x1000, %d0 /* Reserve 4K for stack space.*/ sub.l #0x1000, %d0 /* Reserve 4K for stack space.*/
move.l %d0, _ramend /* Different from __ramend.*/ move.l %d0, _ramend /* Different from __ramend.*/
store_flash_size: store_flash_size:
/* Set rom size information */ /* Set rom size information */
move.l #__flashend, %d0 move.l #__rom_end, %d0
sub.l #__flashstart, %d0 sub.l #__rom_start, %d0
move.l %d0, rom_length move.l %d0, rom_length
pea 0 pea 0
...@@ -261,14 +254,11 @@ store_flash_size: ...@@ -261,14 +254,11 @@ store_flash_size:
lp: lp:
jsr start_kernel jsr start_kernel
/* jmp lp */
_exit: _exit:
jmp _exit jmp _exit
.data .data
.align 4 .align 4
env: env:
...@@ -285,6 +275,9 @@ _ramstart: ...@@ -285,6 +275,9 @@ _ramstart:
.long 0 .long 0
_ramend: _ramend:
.long 0 .long 0
_dprbase:
.long 0xffffe000
.text .text
/* /*
...@@ -293,7 +286,7 @@ _ramend: ...@@ -293,7 +286,7 @@ _ramend:
*/ */
.section ".data.initvect","awx" .section ".data.initvect","awx"
.long _boot_stack /* Reset: Initial Stack Pointer - 0. */ .long __ramend /* Reset: Initial Stack Pointer - 0. */
.long _start /* Reset: Initial Program Counter - 1. */ .long _start /* Reset: Initial Program Counter - 1. */
.long buserr /* Bus Error - 2. */ .long buserr /* Bus Error - 2. */
.long trap /* Address Error - 3. */ .long trap /* Address Error - 3. */
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment