.global _start
_start:
mts rmsr, r0 /* disable cache */
+ mfs r20, rpc
+ addi r20, r20, -4
- addi r8, r0, _end
- mts rslr, r8
+ mts rslr, r0
+ mts rshr, r20
#if defined(CONFIG_SPL_BUILD)
- addi r1, r0, CONFIG_SPL_STACK_ADDR
+ addi r1, r0, CONFIG_SPL_STACK
#else
- addi r1, r0, CONFIG_SYS_INIT_SP_OFFSET
+ add r1, r0, r20
+ #if defined(CONFIG_STATIC_RELA)
+ bri 1f
+
+ /* Force alignment for easier ASM code below */
+ #define ALIGNMENT_ADDR 0x20
+ .align 4
+ uboot_dyn_start:
+ .word __rel_dyn_start
+
+ uboot_dyn_end:
+ .word __rel_dyn_end
+
+ uboot_sym_start:
+ .word __dyn_sym_start
+ 1:
+
+ addi r5, r20, 0
+ add r6, r0, r0
+
+ lwi r7, r20, ALIGNMENT_ADDR
+ addi r7, r7, -CONFIG_SYS_TEXT_BASE
+ add r7, r7, r5
+ lwi r8, r20, ALIGNMENT_ADDR + 0x4
+ addi r8, r8, -CONFIG_SYS_TEXT_BASE
+ add r8, r8, r5
+ lwi r9, r20, ALIGNMENT_ADDR + 0x8
+ addi r9, r9, -CONFIG_SYS_TEXT_BASE
+ add r9, r9, r5
+ addi r10, r0, CONFIG_SYS_TEXT_BASE
+
+ brlid r15, mb_fix_rela
+ nop
+ #endif
#endif
addi r1, r1, -4 /* Decrement SP to top of memory */
# define CONFIG_SYS_MAX_FLASH_SECT 2048
#endif
- #ifndef XILINX_DCACHE_BYTE_SIZE
- #define XILINX_DCACHE_BYTE_SIZE 32768
- #endif
-/* size of console buffer */
-#define CONFIG_SYS_CBSIZE 512
-/* max number of command args */
-#define CONFIG_SYS_MAXARGS 15
--
#define CONFIG_HOSTNAME "microblaze-generic"
/* architecture dependent code */