Final changes to get a Nano 2G main build compiling.

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@22879 a1c6a512-1295-4272-9138-f99709370657
This commit is contained in:
Dave Chapman 2009-10-02 23:45:53 +00:00
parent f5feb13cc5
commit 8d5acd64c9
3 changed files with 52 additions and 13 deletions

View File

@ -1277,6 +1277,11 @@ target/arm/tcc780x/cowond2/audio-cowond2.c
#ifdef CPU_S5L870X
target/arm/s5l8700/system-s5l8700.c
#ifndef SIMULATOR
#ifndef BOOTLOADER
target/arm/s5l8700/timer-s5l8700.c
#endif /* BOOTLOADER */
#endif /* SIMULATOR */
#endif
#ifdef MEIZU_M6SL
@ -1311,10 +1316,20 @@ target/arm/s5l8700/udacodec-meizu.c
#endif /* MEIZU_M3 */
#ifdef IPOD_NANO2G
drivers/audio/wm8975.c
target/arm/ipod/button-clickwheel.c
target/arm/s5l8700/kernel-s5l8700.c
target/arm/s5l8700/wmcodec-s5l8700.c
target/arm/s5l8700/pcm-s5l8700.c
target/arm/s5l8700/adc-s5l8700.c
target/arm/s5l8700/debug-s5l8700.c
target/arm/s5l8700/dma-s5l8700.c
target/arm/s5l8700/usb-s5l8700.c
target/arm/s5l8700/ipodnano2g/backlight-nano2g.c
target/arm/s5l8700/ipodnano2g/lcd-nano2g.c
target/arm/s5l8700/ipodnano2g/powermgmt-nano2g.c
target/arm/s5l8700/ipodnano2g/power-nano2g.c
target/arm/s5l8700/ipodnano2g/audio-nano2g.c
#endif
#ifndef SIMULATOR

View File

@ -1,6 +1,6 @@
#include "config.h"
ENTRY(_start)
ENTRY(start)
#ifdef ROCKBOX_LITTLE_ENDIAN
OUTPUT_FORMAT(elf32-littlearm)
#else

View File

@ -23,10 +23,10 @@
#include "cpu.h"
.section .intvect,"ax",%progbits
.global _start
.global start
.global _newstart
/* Exception vectors */
_start:
start:
b _newstart
ldr pc, =undef_instr_handler
ldr pc, =software_int_handler
@ -82,9 +82,14 @@ newstart2:
// orr r0, r0, r2
// str r0, [r1] // switch backlight on
#ifndef IPOD_NANO2G
/* Currently disabled for the Nano2G as it doesn't appear to be
correct - e.g. audio doesn't work with this code enabled. */
#if CONFIG_CPU==S5L8701
ldr r1, =0x38200000
ldr r2, [r1]
orr r2, r2, #1
bic r2, r2, #0x10000
str r2, [r1] // remap iram to address 0x0
#endif
ldr r1, =0x3c500000 // CLKCON
ldr r0, =0x00800080
str r0, [r1]
@ -126,7 +131,6 @@ newstart2:
nop
nop
nop
#endif
// ldr r0, =0x10100000
// ldr r1, =0x38200034
@ -231,9 +235,8 @@ newstart2:
mrc 15, 0, r0, c1, c0, 0
orr r0, r0, r1
mcr 15, 0, r0, c1, c0, 0 // enable protection unit
#if CONFIG_CPU==S5L8700
#if CONFIG_CPU==S5L8700 || !defined(BOOTLOADER)
/* Copy interrupt vectors to iram */
ldr r2, =_intvectstart
ldr r3, =_intvectend
@ -254,7 +257,7 @@ newstart2:
strhi r4, [r2], #4
bhi 1b
#if CONFIG_CPU==S5L8700
#if CONFIG_CPU==S5L8700 && defined(BOOTLOADER)
/* Copy icode and data to ram */
ldr r2, =_datastart
ldr r3, =_dataend
@ -265,10 +268,31 @@ newstart2:
strhi r1, [r2], #4
bhi 1b
#endif
#ifndef BOOTLOADER
/* Copy icode and data to ram */
ldr r2, =_iramstart
ldr r3, =_iramend
ldr r4, =_iramcopy
1:
cmp r3, r2
ldrhi r1, [r4], #4
strhi r1, [r2], #4
bhi 1b
/* Initialise ibss section to zero */
ldr r2, =_iedata
ldr r3, =_iend
mov r4, #0
1:
cmp r3, r2
strhi r4, [r2], #4
bhi 1b
#endif
/* Set up some stack and munge it with 0xdeadbeef */
ldr sp, =_stackend
ldr r2, =_stackbegin
ldr sp, =stackend
ldr r2, =stackbegin
ldr r3, =0xdeadbeef
1:
cmp sp, r2