diff options
author | gdisirio <gdisirio@35acf78f-673a-0410-8e92-d51de3d6d3f4> | 2012-09-21 10:39:16 +0000 |
---|---|---|
committer | gdisirio <gdisirio@35acf78f-673a-0410-8e92-d51de3d6d3f4> | 2012-09-21 10:39:16 +0000 |
commit | 442fea6ed3ad06974cbc224b4f719ddd08192f91 (patch) | |
tree | 16780d9a2ea56cb8bb69b6eed9f43bb9b42b6b54 /os/ports/GCC/PPC | |
parent | 7a68e17dd09c3c148ba9d50a5728491988940d69 (diff) | |
download | ChibiOS-442fea6ed3ad06974cbc224b4f719ddd08192f91.tar.gz ChibiOS-442fea6ed3ad06974cbc224b4f719ddd08192f91.tar.bz2 ChibiOS-442fea6ed3ad06974cbc224b4f719ddd08192f91.zip |
Systick works now, better SPC560P ME support.
git-svn-id: svn://svn.code.sf.net/p/chibios/svn/trunk@4707 35acf78f-673a-0410-8e92-d51de3d6d3f4
Diffstat (limited to 'os/ports/GCC/PPC')
-rw-r--r-- | os/ports/GCC/PPC/SPC560Pxx/ld/SPC560P44.ld | 10 | ||||
-rw-r--r-- | os/ports/GCC/PPC/crt0.s | 1 |
2 files changed, 8 insertions, 3 deletions
diff --git a/os/ports/GCC/PPC/SPC560Pxx/ld/SPC560P44.ld b/os/ports/GCC/PPC/SPC560Pxx/ld/SPC560P44.ld index cf2216867..49b182721 100644 --- a/os/ports/GCC/PPC/SPC560Pxx/ld/SPC560P44.ld +++ b/os/ports/GCC/PPC/SPC560Pxx/ld/SPC560P44.ld @@ -47,13 +47,17 @@ SECTIONS . = ORIGIN(flash);
.boot : ALIGN(16) SUBALIGN(16)
{
- __ivpr_base__ = .;
KEEP(*(.bam))
KEEP(*(.crt0))
. = ALIGN(0x00000800);
- KEEP(*(.handlers))
- . = ALIGN(0x00001000);
KEEP(*(.vectors))
+ /* Note, have to waste the first 64KB because the IVPR register
+ requires an alignment of 64KB and the first 64KB cannot be used,
+ IVOR0 would conflict with the BAM word. Applications could
+ allocate code or data in the first 64KB by using special sections.*/
+ . = ALIGN(0x00010000);
+ __ivpr_base__ = .;
+ KEEP(*(.handlers))
} > flash
constructors : ALIGN(4) SUBALIGN(4)
diff --git a/os/ports/GCC/PPC/crt0.s b/os/ports/GCC/PPC/crt0.s index cec9a306f..4a2bc4dea 100644 --- a/os/ports/GCC/PPC/crt0.s +++ b/os/ports/GCC/PPC/crt0.s @@ -44,6 +44,7 @@ _boot_address: * IVPR initialization.
*/
lis %r4, __ivpr_base__@h
+ ori %r4, %r4, __ivpr_base__@l
mtIVPR %r4
/*
* Small sections registers initialization.
|