none
WEC 7 and Intel BayTrail RRS feed

  • Question

  • Hello,

    I have a Qt application that copies files from SD Card to RAM and I'm using a CPU Intel Bay Trail E3825 with OS WEC 7. Sometimes, these files are corrupted and the application not start. What I can resolve it?

    Thank you,
    Marzio Guarnaccia
    Monday, January 25, 2016 8:05 AM

All replies

  • Hi Marzio,

      indeed you should ask your board/BSP vendor to provide QA results and/or make sure that this isn't known issue.
    But I have seen similar troubles on Intel's CRB + native BSP for RAM size > 512 MB.
    Workaround was to reduce RAM size to 256 MB (build BSP with IMGRAM256=1).

    Good luck, Igor

    Monday, January 25, 2016 9:35 AM
  • Hello Igor,

    thanks for your response, I'm using 2 GB of RAM and native BSP, without modification.

    Thank you,
    Marzio Guarnaccia

    Monday, January 25, 2016 9:46 AM
  • Hi Marzio,

    please note -

    1. mentioned case is only applicable to Intel CRB with its engineering BIOS drop.

    2. WinCE RAM size autodetect algoritm isn't for real world, it has very simple implementation based on assumption that available memory end = ACPI tables start. I suggest to check it by any E820 tool, e.g. http://ubios.blogspot.com/

    I fixed it @ C:\WINCE700\platform\common\src\x86\common\memory\memory.c - x86InitMemory()

        DWORD dwAcpiPHYS = AcpiFindTablesStartAddress () - MY_OFFSET

     MY_OFFSET = 1..2 MB usually

    Monday, January 25, 2016 10:32 AM
  • Hello

    sometimes, I have the corruption.

    Thank you,
    Marzio Guarnaccia

    Monday, January 25, 2016 6:21 PM
  • Hi Marzio,

    Does your app keep the file handles open or close them regularly? While not specific to the board you are discussing, in general I recommend closing the handles and re-opening them as file handles can change between SD Card insertions.

    Sincerely,

    IoTGirl


    Monday, January 25, 2016 6:35 PM
    Moderator
  • Hello IoTGirl,

    thanks for your response, I'm using a custom board with Intel Bay Trail E3825 and OS WEC 7 with native BSP. Yes, this app closes the handles and re-opening them.

    Sincerely,
    Marzio Guarnaccia

    Tuesday, January 26, 2016 6:14 PM
  • Hi Marzio,

    Any luck narrowing down when the corruption actually occurs?  Or can you application check the files before it starts and re-copy if they are corrupt?

    Sincerely,

    IoTGirl

    Tuesday, January 26, 2016 6:36 PM
    Moderator
  • Hello IoTGirl,

    sometimes, the original file and copied are different.

    Sincerely,
    Marzio Guarnaccia

    Tuesday, January 26, 2016 6:52 PM
  • Hi Marzio,

    Then you should be able to validate by comparing the files when the app starts.  If they are different, then copy the file again, at least as a work around until you discover how the files are getting corrupted.

    Sincerely,

    IoTGirl

    Tuesday, January 26, 2016 9:17 PM
    Moderator
  • Hi Marzio,

    I ran into a similar problem using E3800 platform and WEC7, but with Marvell 88SE6101 PCI Express to PATA driver. It wasn't memory related, and only when the driver was using DMA. The problem was that sometimes an interrupt was received before the actual DMA transfer was over, resulting in corrupt files. A simple check in the INT handler of the ATAPI driver to check whether the DMA transfer is actually finished resolved the problem.

    Best Regards,

    Kristof

    Tuesday, February 9, 2016 9:31 AM
  • Hi Kristof Vandenbussche,

    thanks for your help.

    Best Regards,

    Marzio Guarnaccia

    Friday, March 11, 2016 9:39 AM