AnsweredAssumed Answered

How to boot OBDS via USB

Question asked by lategoodbye on Jan 14, 2014
Latest reply on Mar 7, 2014 by fear_nada

Hi,

 

i've modified i.MX28 On-Board Diagnostics Suite (OBDS) 1.0 to run on a custom hardware (still i.MX28 + USB but without SD card slot).

After that i generated the mx28-obds.sb file with tools/linux/build_mx28.sh and modified the XML of the Mfgtool:

 

<UCL>
  <CFG>
    <STATE name="Recovery" dev="IMX28"/>
    <STATE name="Updater" dev="Updater" />
    <DEV name="IMX28" vid="15A2" pid="004F"/>
    <DEV name="Updater" vid="066F" pid="37FF" />
  </CFG>

  <LIST name="Custom img" desc="Start OBDS">
    <CMD type="boot" body="Recovery" file="mx28-obds.sb" >Start OBDS</CMD>
  </LIST>
</UCL>


 

If i run the MfgTool, the custom hardware only prints

 

HTLLCL


But if i try the original updater_ivt.sb with MfgTool, everything is fine. So i think the mx28-obds.sb has the wrong format.

 

Here is the content of the bd file:

 

options {
        driveTag = 0x00;
        flags = 0x01;
}

constants {
        IVT_ADDR = 0x70;
        LOAD_ADDR  = 0x100;
        ENTRY_ADDR = 0x40800000;
}

sources {
        ipl = "../../output/mx28/bin/ipl";
        obds = "../../output/mx28/bin/diag-obds-mx28evk.bin";
}

section (0) {
    load ipl > LOAD_ADDR;
    load ivt (entry=LOAD_ADDR) > IVT_ADDR;
    hab call IVT_ADDR;

    load obds > ENTRY_ADDR;
    load ivt (entry=ENTRY_ADDR) > IVT_ADDR;
    hab jump IVT_ADDR;
}

 

How can i generate a sb file which works like a bare metal application in internal i.MX28 RAM?

 

Do i need to change the bd file?

Outcomes