7 Replies Latest reply on Jun 28, 2016 12:58 PM by Intel Corporation

    OSIP Header compiler - Standalone

    Mosfet

      Dear Admins

       

      Given that I already have compiled u-boot.bin and u-boot-env.bin and I have rootfs.fat file, how do I use this function python do_osip_mkimage() to calculate and output the OSIP.bin file?

       

      http://git.yoctoproject.org/cgit/cgit.cgi/meta-intel-edison/tree/meta-intel-edison-bsp/recipes-bsp/u-boot/u-boot-osip.inc

       

      1) Does its calculation depend on the size of the u-boot and size of u-boot-env

      2) Does its calculation depend on the size of the rootfs.fat file?

       

      If so what are the various variables needed to calculate the correct OSIP.bin?

       

      It seems the xfstk looks at the osip.bin for determining the correct file size before flashing rootfs file along with the fw files.

       

      xfstk-dldr-solo --gpflags 0x80000007 --osimage output_xfstk.img --fwdnx edison_dnx_fwr.bin --fwimage edison_ifwi-dbg-00.bin --osdnx edison_dnx_osr.bin

       

      Kindly throw light.

      We can finish this development of custom OS distros for Edison

        • 1. Re: OSIP Header compiler - Standalone
          Intel Corporation
          This message was posted on behalf of Intel Corporation

          Hi Mosfet,

          Let me gather some more information and do some tests related to this. I will let you know as soon as I get some more information/results.

          Regards,
          Charlie
           

          • 2. Re: OSIP Header compiler - Standalone
            Mosfet

            I guess xfstk cant do bulk transfers? May be that is reason why only basic firmware is pushed via xfstk and then edison is bought into dfu mode to flash via dfu-util??

             

            Correct me if i am wrong. But if i burn osimage output_xfstk.img (smaller sized ones which include osip.bin+u-boot.bin+u-boot-env+roofts) it seems to burn okie but for large sized ones it doesn't seem to work.

             

             

            • 3. Re: OSIP Header compiler - Standalone
              Mosfet

              Here is the log for the command (only showing upto the errors part)

               

              xfstk-dldr-solo -v --gpflags 0x80000007 --osimage output_xfstk.img --fwdnx edison_dnx_fwr.bin --fwimage edison_ifwi-dbg-00.bin --osdnx edison_dnx_osr.bin

               

              Please note that ouput_xfstk.img contains OSIP+u-boot+uboot-env0+uboot-env1+rootfs which is about 400MB.

               

              XFSTK-PROGRESS--98

              XFSTK-LOG--GetOpCode

              XFSTK-LOG--ReadInAck

              XFSTK-LOG--GetAck

              XFSTK-LOG--GetAck - DIFWI31(0x8)

              XFSTK-LOG--WriteOutPipe __BINARY__

              XFSTK-LOG--WriteOutPipe 0

              XFSTK-LOG--Write --->__BINARY__

              XFSTK-LOG--LogProgress

              XFSTK-PROGRESS--100

              XFSTK-LOG--GetOpCode

              XFSTK-LOG--ReadInAck

              XFSTK-LOG--GetAck

              XFSTK-LOG--GetAck - HLT$(0x4)

              XFSTK-LOG--FW: Firmware update completed...

              XFSTK-LOG--LogProgress

              XFSTK-PROGRESS--100

              XFSTK-LOG--LogProgress

              XFSTK-PROGRESS--100

              XFSTK-LOG--LogError

              XFSTK-STATUS--Error Code: 0 - Success

              XFSTK-LOG--void MerrifieldDownloader::do_abort()

              XFSTK-LOG--Abort

              XFSTK-LOG--edison_ifwi-dbg-00.bin size:4194468 bytes

              XFSTK-STATUS--PASS

              XFSTK-STATUS--Firmware download completed. Continuing to OS...

              XFSTK-STATUS--Reconnecting to device - Attempt #1

              XFSTK-LOG--virtual bool MerrifieldDownloader::UpdateTarget()

              XFSTK-LOG--FWDnxPath -- edison_dnx_fwr.bin

              XFSTK-LOG--FWImagePath -- edison_ifwi-dbg-00.bin

              XFSTK-LOG--OSDnxPath -- edison_dnx_osr.bin

              XFSTK-LOG--OSImagePath -- output_xfstk.img

              XFSTK-LOG--MiscDnxPath -- edison_dnx_fwr.bin

              XFSTK-LOG--MiscBinPath -- BLANK.bin

              XFSTK-LOG--Gpflags -- 80000007

              XFSTK-LOG--DebugLevel -- ffffffff

              XFSTK-LOG--UsbDelay ms -- 0

              XFSTK-LOG--TransferType -- USB

              XFSTK-LOG--WipeIFWI -- False

              XFSTK-LOG--Idrq -- False

              XFSTK-LOG--Verbose -- True

              XFSTK-LOG--void MerrifieldDownloader::Init()

              XFSTK-LOG--Open

              XFSTK-LOG--Windriver Error: 0x2000000F, Device not found

              XFSTK-LOG--Device Vendor id:0, productId:0,  NOT FOUND!!

              XFSTK-STATUS--Reconnecting to device - Attempt #2

              XFSTK-LOG--virtual bool MerrifieldDownloader::UpdateTarget()

              XFSTK-LOG--FWDnxPath -- edison_dnx_fwr.bin

              XFSTK-LOG--FWImagePath -- edison_ifwi-dbg-00.bin

              XFSTK-LOG--OSDnxPath -- edison_dnx_osr.bin

              XFSTK-LOG--OSImagePath -- output_xfstk.img

              XFSTK-LOG--MiscDnxPath -- edison_dnx_fwr.bin

              XFSTK-LOG--MiscBinPath -- BLANK.bin

              XFSTK-LOG--Gpflags -- 80000007

              XFSTK-LOG--DebugLevel -- ffffffff

              XFSTK-LOG--UsbDelay ms -- 0

              XFSTK-LOG--TransferType -- USB

              XFSTK-LOG--WipeIFWI -- False

              XFSTK-LOG--Idrq -- False

              XFSTK-LOG--Verbose -- True

              XFSTK-LOG--void MerrifieldDownloader::Init()

              XFSTK-LOG--Open

              XFSTK-LOG--USB Device found - USBSN: AC715B4A5B9F2143004B352B27B8745D Address:4

              XFSTK-LOG--void MerrifieldDownloader::do_update(MerrifieldOptions*)

              XFSTK-LOG--Start

              XFSTK-LOG--Sending DnER...

              XFSTK-LOG--WriteOutPipe DnER

              XFSTK-LOG--WriteOutPipe 0

              XFSTK-LOG--Write --->DnER

              XFSTK-LOG--GetOpCode

              XFSTK-LOG--ReadInAck

              XFSTK-LOG--GetAck

              XFSTK-LOG--GetAck - DORM(0x4)

              XFSTK-LOG--OS:  Handle OS download...

              XFSTK-LOG--LogProgress

              XFSTK-PROGRESS--11

              XFSTK-LOG--GetOpCode

              XFSTK-LOG--Changing to DLDR_STATE_OS_NORMAL ...

              XFSTK-LOG--CheckFile

              XFSTK-LOG--_num OS Images : 1

              XFSTK-LOG--_temp_data : c0000

              XFSTK-LOG--OSII: 0 Data Size: 402653184

              XFSTK-LOG--_Temp Data is: c0000 h

              XFSTK-LOG--InitOsipHdr

              XFSTK-LOG--Init OSIP header ...

              XFSTK-LOG--_After fread osip_hdr

              XFSTK-LOG--CheckFile

              XFSTK-LOG--InitOsDnX

              XFSTK-LOG--edison_dnx_osr.bin size:148996 bytes

              XFSTK-STATUS--POS download is in progress ...

              XFSTK-LOG--StartOs

              XFSTK-LOG--sending 6 DWORDS of DnxOS size and checksum...

              XFSTK-LOG--GetOsDnXHdr

              XFSTK-LOG--edison_dnx_osr.bin size:148996 bytes

              XFSTK-LOG--WriteOutPipe  F

              XFSTK-LOG--WriteOutPipe 0

              XFSTK-LOG--Write ---> F

              XFSTK-LOG--LogProgress

              XFSTK-PROGRESS--22

              XFSTK-LOG--End of MrfdStHandleOsNormal

              XFSTK-LOG--LogProgress

              XFSTK-PROGRESS--33

              XFSTK-LOG--GetOpCode

              XFSTK-LOG--ReadInAck

              XFSTK-LOG--GetAck

              XFSTK-LOG--GetAck - DXBL(0x4)

              XFSTK-LOG--OS: Sending DnX ...

              XFSTK-LOG--OsDXBL

              XFSTK-LOG--LogProgress

              XFSTK-PROGRESS--44

              XFSTK-LOG--GetOsDnX

              XFSTK-LOG--WriteOutPipe __BINARY__

              XFSTK-LOG--WriteOutPipe 0

              XFSTK-LOG--Write --->__BINARY__

              XFSTK-LOG--LogProgress

              XFSTK-PROGRESS--55

              XFSTK-LOG--GetOpCode

              XFSTK-LOG--ReadInAck

              XFSTK-LOG--GetAck

              XFSTK-LOG--GetAck - ROSIP$$$(0x8)

              XFSTK-LOG--GetOsipHdr

              XFSTK-LOG--Get OSIP header + Partion Table...

              XFSTK-LOG--sending OSIP...

              XFSTK-LOG--sending OSIP header + Partion Table...

              XFSTK-LOG--WriteOutPipe __BINARY__

              XFSTK-LOG--WriteOutPipe 0

              XFSTK-LOG--Write --->__BINARY__

              XFSTK-LOG--LogProgress

              XFSTK-PROGRESS--66

              XFSTK-LOG--GetOpCode

              XFSTK-LOG--ReadInAck

              XFSTK-LOG--GetAck

              XFSTK-LOG--usb_bulk_read() fails

              XFSTK-LOG--Windriver Error: 0x20000015, Timeout expired

              XFSTK-LOG--usb_bulk_read() fails

              XFSTK-LOG--Windriver Error: 0x20000015, Timeout expired

              XFSTK-LOG--usb_bulk_read() fails

              XFSTK-LOG--Windriver Error: 0x20000015, Timeout expired

              XFSTK-LOG--usb_bulk_read() fails

              XFSTK-LOG--Windriver Error: 0x20000015, Timeout expired

              XFSTK-LOG--usb_bulk_read() fails

              XFSTK-LOG--Windriver Error: 0x20000015, Timeout expired

              XFSTK-LOG--Device is not responding...

               

              XFSTK-LOG--GetAck - (0xBAADF00D)

              XFSTK-LOG--LogError

              XFSTK-STATUS--Error Code: 4 - Error attempting to read ACK/NACK from IN Pipe

              XFSTK-STATUS--Unknown Ack code:0, aborting ...

               

              XFSTK-LOG--void MerrifieldDownloader::do_abort()

              XFSTK-LOG--Abort

              XFSTK-STATUS--FAIL

              XFSTK-STATUS--Errors encounter during OS download. Aborting ...

              • 4. Re: OSIP Header compiler - Standalone
                Mosfet

                can we do something about the Timeout? Is there an option for have large timeouts for large files?? I dont see that option...i tried usbdelayms but that doesnt seem to help

                • 5. Re: OSIP Header compiler - Standalone
                  Intel Corporation
                  This message was posted on behalf of Intel Corporation

                  Hi Mosfet,

                  I’m still working on this, thank you for the full log. I also would like to know if there is something else you have tried that we should consider too.
                  I will see if there is a flag that we could use for setting the timeouts.

                  Regards,
                  Charlie

                  • 6. Re: OSIP Header compiler - Standalone
                    Mosfet

                    I dont have anything else Charlie. I am waiting for a solution from you guys....

                    • 7. Re: OSIP Header compiler - Standalone
                      Intel Corporation
                      This message was posted on behalf of Intel Corporation

                      Hi Mosfet,

                       

                      I’ve been investigating to help you with this, unfortunately this hasn’t been validated yet so there is no more information regarding to it.

                       

                      Regards,
                      -Charlie