Skip to main content
Visitor II
September 4, 2008
Question

STR 750 - Embedded Linux - RTOS

  • September 4, 2008
  • 3 replies
  • 987 views
Posted on September 04, 2008 at 11:49

STR 750 - Embedded Linux - RTOS

    This topic has been closed for replies.

    3 replies

    ronyAuthor
    Visitor II
    August 26, 2008
    Posted on August 26, 2008 at 05:56

    Hello,

    I am trying to get embedded Linux and/or FreeRTOS to work on this.

    Well, I am totally stuck right now...

    My hardware is: STR750-Eval Board with a Segger j-link

    My IDE is the IAR Kickstart 5.0

    I tried to re-write the bootloader from the STR710 to work on this machine.

    Well, with the exception of the EMI -> SMI conversion (right now outcommented) I got it to compile without errors... My first problem here is to flash it into the SMI - as stated in the STR71x docs it has to be flashed into the external memory

    I used the SMI Flashloader provided with the ST75x-libraries, but I always get the errors:

    Flash download warning: 1776 of 1776 bytes from data record CODE:[0x80000000,0x800006EF] will not be flashed

    Flash download warning: 26344 of 26344 bytes from data record CODE:[0x800006F4,0x80006DDB] will not be flashed

    Well, it remains empty.

    So my questions for this problem:

    * Is there a ready uCLinux and bootloader port available for this board ? (I don't seem to find anything)

    * Can someone help me to get rid of this error ?

    My other question refers to freertos.org RTOS. There is a ready port for this plattform and even for the IAR Kickstart 5.0 but it won't start !!

    I got the following informations from J-Link driver:

    Breakpoint #1

    Handle 0x001

    Address 0x00000008

    Permission Hard

    Implementation Hard

    * No device selected

    The output of IAR says:

    692 Bytes downloaded and verified

    Target reset

    Then it is stalled until removing the USB-connection to the J-Link.

    After that I get:

    Fatal error: Could not transfer JTAG data

    Session aborted

    Warning: Code still contains old breakpoints

    Well as for the breakpoints: IAR Workbench doesn't not show me a single one. It's just the one I have seen in the J-Link info.

    I even tried another flasher-file (from the other projects) without success.

    I really would be thankfull if I get any of this finally to work with your help...

    Regards,

    Liemmukda

    ronyAuthor
    Visitor II
    August 27, 2008
    Posted on August 27, 2008 at 11:59

    Well, OK - I got the bootloader code ported and flashed. I just need to figure out why the system does a reboot when attempting to write in to internal or external flash (though ST routines, maybe I need to configure a few jumpers). Also I have to figure out whether the ported ASM Linux-Loader code will work..

    Might be a small thing now as the main part (receiving the files from Hyperterminal, code porting) finally works

    [ This message was edited by: rony.liemmukda on 27-08-2008 15:30 ]

    ronyAuthor
    Visitor II
    September 4, 2008
    Posted on September 04, 2008 at 11:49

    Well, maybe this question can be answered...

    Is the following call to execute from SMI correct ?

    C calling

    /* r0=0, r1=machine_id, r2=parameter, r3=kernel */

    loadLinuxZImage( 0, 603, 0x80000100, 0x80220000 );

    Assembler routine

    SECTION loadLinux:CODE(2)

    Mode_SVC EQU 0x13

    I_Bit EQU 0x80 ; when I bit is set, IRQ is disabled

    F_Bit EQU 0x40 ; when F bit is set, FIQ is disabled

    ; void LoadLinux( int, int, u32, u32 )

    ; Call linux kernel image

    EXPORT loadLinuxZImage

    loadLinuxZImage

    MSR CPSR_c, #Mode_SVC|F_Bit|I_Bit ;enter SVC with FIQ IRQ disabled

    MOV pc, r3 ; program counter to linux kernel location

    LTORG

    END

    It actually does something, but it's far beyond the view of the debugger. All I get as information after hitting a few times the break button, is a data abort exception. I don't know if it comes from this very piece of code or from my kernel modifications...

    Well, would be nice if someone does know an answer. I just doN't know where to seek for an error right now. It might be the kernel (I modified those 13000 lines of code of the STR710-patch...) or it might be this calling.

    Thanks

    [ This message was edited by: rony.liemmukda on 04-09-2008 15:20 ]