gnu startup file for at91rm9200

Hello,

I have another question about the AT91RM9200... I want to configurate the startup file to be able to use the gnu compiler.

Therefore I took a look into the startup file for one gnu example - there is no definition of the heap - is that correct?

What are the differences between the startup files (using gnu or using realview compiler)? Is it correct to change only the order by the configuration of the PIO controller and the mode bits?

.equ        Mode_USR               0x10

Where do I have to configurate the memory configuration in the gnu mode? When I use realview I can easily configurate the addresses where the internal / external ram /rom is - how is that possible with the gnu compiler? Because there's no such a field under "options for target" -> target?

best regards
Johannes

Parents
  • so now I have only 50 errors - not 400 erros at the start

    1.error: bad instruction 'preserve8'

    ;// <e> Instruction Cache Enable
    ;// </e>
    */
            .equ    CACHE_SETUP,          1
                    PRESERVE8
    

    Should I delete this part of code - I didn't find the instruction cache in the other startup script.

    2. error bad instruction area, RESET, CODE

    #  Startup Code must be linked first at Address at which it expects to run.
    
                    AREA    RESET, CODE, READONLY
                    ARM
    
    _startup:
    

    Is it correct to use here

    # Starupt Code must be linked first at Address at which it expects to run.
    
            .text
            .arm
    
            .global _startup
            .func   _startup
    _startup:
    

    3. error bad instruction export reset handler

    # Reset Handler
    
                    EXPORT  Reset_Handler
    Reset_Handler
    

    Should I delete this part of the startup script to use it with the gnu compiler?

    Moreover I have several errors in the part of the "setup external bus interface (EBI)", "setup power management controller" - I don't want to post everything - maybe anybody could tell what I've to do with this part of startup script.

    best regards
    Johannes

Reply
  • so now I have only 50 errors - not 400 erros at the start

    1.error: bad instruction 'preserve8'

    ;// <e> Instruction Cache Enable
    ;// </e>
    */
            .equ    CACHE_SETUP,          1
                    PRESERVE8
    

    Should I delete this part of code - I didn't find the instruction cache in the other startup script.

    2. error bad instruction area, RESET, CODE

    #  Startup Code must be linked first at Address at which it expects to run.
    
                    AREA    RESET, CODE, READONLY
                    ARM
    
    _startup:
    

    Is it correct to use here

    # Starupt Code must be linked first at Address at which it expects to run.
    
            .text
            .arm
    
            .global _startup
            .func   _startup
    _startup:
    

    3. error bad instruction export reset handler

    # Reset Handler
    
                    EXPORT  Reset_Handler
    Reset_Handler
    

    Should I delete this part of the startup script to use it with the gnu compiler?

    Moreover I have several errors in the part of the "setup external bus interface (EBI)", "setup power management controller" - I don't want to post everything - maybe anybody could tell what I've to do with this part of startup script.

    best regards
    Johannes

Children
More questions in this forum