none
[WEC7] IEMGD driver could not boot on BayTrail platfrom RRS feed

  • Question

  • Hi,

          Have a any one know how to integration IEMGD driver into WEC7?
          Currently I work on Baytrail platform device. it can boot with VESA mode.
          but when to change EMGD driver always show the below message on debug port(UART1)

    PID:00400003 TID:016D001E Exception 'Access Violation' (0xe): Thread-Id=016d001e(pth=a0471060), Proc-Id=00400002(pprc=82f58c88) 'NK'
    PID:00400003 TID:016D001E PC=efe12997(gwes.dll+0x00022997) RA=efe1c034(gwes.dll+0x0002c034) SP=af67fc30, BVA=0000010c

         

    My system configuration on the below      

    ----------------------------------------------------------------------------------------

    CPU: Baytrail E3845
    RAM: 4GB
    BIOS: Phoenix SCT 3.1.0.334
    DISPLAY : 1366x768 or 1024x768 LCD  use EDP port
    BSP: BYT_WEC7_2013_IO_BSP_MR2 from Adeneo Emebbed 
    IEMGD:  INTEL_EMGD_BYT_WEC7_MR2_HF_36.16.2_2012 from Adeneo Embbed

    VBIOS : INTEL_EMGD.BYT_VBIOS_MR4_36.2.9_3842 from Intel

    ----------------------------------------------------------------------------------------

    registry setting
    ;-- Display drivers @ PCI bus --------------------------------------------------
    ; @CESYSGEN IF CE_MODULES_PCI
    ; @CESYSGEN IF CE_MODULES_DISPLAY
    ; @XIPREGION IF PACKAGE_OEMDRIVERS
    
    ; GWES will be able to auto-detect the display adapter if a candidate value
    ; points to the adapter's PCI instance.  Values from Candidate1 to Candidate32
    ; (decimal) are possible; GWES will examine them sequentially until it finds
    ; a match.
    
    
    ; include the path to the emgd.reg file in the release package
    ;#include C:\ssigd\vlv_wec7\ial\ce\project\emgd.reg
    ; --> Entering C:\WINCE700\platform\INTEL_CS\SRC\DRIVERS\IEMGD\emgd.reg
    
    [HKEY_LOCAL_MACHINE\Drivers\BuiltIn\PCI\Template\EMGD]
    
    	"Dll"="isr_emgd.dll"
    
    	"Class"=dword:03
    
    	"SubClass"=dword:00
    	"ProgIF"=dword:00
    	
    "VendorID"=multi_sz: "8086","8086","8086","8086","8086"
    	
    "DeviceID"=multi_sz: "0f31","0412","0406","0416","0426"
    	
    "Prefix"="IGD"
    	
    "IsrDll"="isr_emgd.dll"
    
    	"IsrHandler"="isr_handler"
    
    
    [HKEY_LOCAL_MACHINE\System\GDI\Drivers]
    	"Display"="ddi_emgd.dll"
    
    
    [HKEY_LOCAL_MACHINE\System\GDI\Drivers]
    
    	"D3DMOverride"="ddi_emgd.dll"
    
    
    [HKEY_LOCAL_MACHINE\System\D3DM\Drivers]
    	
    "RemoteHook"="ddi_emgd.dll"
    
    [HKEY_LOCAL_MACHINE\System\GDI\DisplayCandidates]
    	
    "Candidate3"="Drivers\\Display\\Intel"
    
    
    ;[HKEY_LOCAL_MACHINE\System\GDI\Monitors]
    
    	;"Total Monitors"=dword:2
    
    ; <-- Leaving C:\WINCE700\platform\INTEL_CS\SRC\DRIVERS\IEMGD\emgd.reg
    
    ; @XIPREGION ENDIF PACKAGE_OEMDRIVERS
    ; @CESYSGEN ENDIF CE_MODULES_DISPLAY
    ; @CESYSGEN ENDIF CE_MODULES_PCI
    ;-------------------------------------------------------------------------------

    Total debug message

    --------------------------------------------------------------------------------------------------------------
    Debug Serial Init
    SysInit: GDTBase=82f57000 IDTBase=82f5b700 KData=82f55800
    Windows CE Kernel for i486
    INFO:OALLogSetZones: dpCurSettings.ulZoneMask: 0x83ff
    +OEMInit
    PCIInitConfigMechanism():ucConfigMechanism 0x1
    PCIBIOS:: BIOS Address static map to addr=a0000000
    GetPicRoutingIrqTable: Start
    SearchPciBios start
    CE Ethernet Bootloader found 32Bit BIOS Entry master_bios32=a00126c0 bios32_call_offset=1c000 for CE/PC 
    Return from First BIOS EAX=49435000 EBX=f0000,ECX=62d EDX=c030
    32 PCI BIOS offset located.addr=1c030
    32 PCI BIOS Present EDX=20494350,EAX=11 EBX=f0300,ECX=604
    +GetRoutingOption
    SearchPciRouting
    SearchPciRouting found entry =a001bc00  CE/PC 
    GetRoutingOption, found ROM version for Routing table.
    GetRoutingOption return SUCCESS .AH=0 
    ScanConfiguredIrq with PCI Exclusive Irq Bit (wExClusive)  =0 
    ScanConfigureIrq: BufferSize = 416 @ address 82f50172 
    ScanConfigureIrq: for Bus=0 ,Device=0 SlotNumber=0
         INTA_LinkValue=60,INTA_IrqBitMap=8c80
         INTB_LinkValue=61,INTB_IrqBitMap=8c80
         INTC_LinkValue=62,INTC_IrqBitMap=8c80
         INTD_LinkValue=63,INTD_IrqBitMap=8c80
    ScanConfigureIrq: for Bus=0 ,Device=2 SlotNumber=0
         INTA_LinkValue=60,INTA_IrqBitMap=8c80
         INTB_LinkValue=0,INTB_IrqBitMap=8c80
         INTC_LinkValue=0,INTC_IrqBitMap=8c80
         INTD_LinkValue=0,INTD_IrqBitMap=8c80
    AddIrqLink: LinkNumber=60,bus=0,device=2,func=0 associated with irq=7
    ScanConfigureIrq: for Bus=0 ,Device=19 SlotNumber=0
         INTA_LinkValue=63,INTA_IrqBitMap=8c80
         INTB_LinkValue=0,INTB_IrqBitMap=8c80
         INTC_LinkValue=0,INTC_IrqBitMap=8c80
         INTD_LinkValue=0,INTD_IrqBitMap=8c80
    AddIrqLink: LinkNumber=63,bus=0,device=19,func=0 associated with irq=7
    ScanConfigureIrq: for Bus=0 ,Device=20 SlotNumber=0
         INTA_LinkValue=68,INTA_IrqBitMap=8c80
         INTB_LinkValue=0,INTB_IrqBitMap=8c80
         INTC_LinkValue=0,INTC_IrqBitMap=8c80
         INTD_LinkValue=0,INTD_IrqBitMap=8c80
    AddIrqLink: LinkNumber=68,bus=0,device=20,func=0 associated with irq=10
    ScanConfigureIrq: for Bus=0 ,Device=26 SlotNumber=0
         INTA_LinkValue=6a,INTA_IrqBitMap=8c80
         INTB_LinkValue=0,INTB_IrqBitMap=8c80
         INTC_LinkValue=0,INTC_IrqBitMap=8c80
         INTD_LinkValue=0,INTD_IrqBitMap=8c80
    ScanConfigureIrq: for Bus=0 ,Device=27 SlotNumber=0
         INTA_LinkValue=6a,INTA_IrqBitMap=8c80
         INTB_LinkValue=0,INTB_IrqBitMap=8c80
         INTC_LinkValue=0,INTC_IrqBitMap=8c80
         INTD_LinkValue=0,INTD_IrqBitMap=8c80
    ScanConfigureIrq: for Bus=0 ,Device=28 SlotNumber=0
         INTA_LinkValue=60,INTA_IrqBitMap=8c80
         INTB_LinkValue=61,INTB_IrqBitMap=8c80
         INTC_LinkValue=62,INTC_IrqBitMap=8c80
         INTD_LinkValue=63,INTD_IrqBitMap=8c80
    AddIrqLink: LinkNumber=60,bus=0,device=28,func=0 associated with irq=11
    AddIrqLink: LinkNumber=61,bus=0,device=28,func=1 associated with irq=11
    AddIrqLink: LinkNumber=62,bus=0,device=28,func=2 associated with irq=10
    AddIrqLink: LinkNumber=63,bus=0,device=28,func=3 associated with irq=7
    ScanConfigureIrq: for Bus=0 ,Device=29 SlotNumber=0
         INTA_LinkValue=6b,INTA_IrqBitMap=8c80
         INTB_LinkValue=0,INTB_IrqBitMap=8c80
         INTC_LinkValue=0,INTC_IrqBitMap=8c80
         INTD_LinkValue=0,INTD_IrqBitMap=8c80
    ScanConfigureIrq: for Bus=0 ,Device=31 SlotNumber=0
         INTA_LinkValue=62,INTA_IrqBitMap=8c80
         INTB_LinkValue=0,INTB_IrqBitMap=8c80
         INTC_LinkValue=0,INTC_IrqBitMap=8c80
         INTD_LinkValue=0,INTD_IrqBitMap=8c80
    ScanConfigureIrq: for Bus=1 ,Device=0 SlotNumber=1
         INTA_LinkValue=60,INTA_IrqBitMap=8c80
         INTB_LinkValue=61,INTB_IrqBitMap=8c80
         INTC_LinkValue=62,INTC_IrqBitMap=8c80
         INTD_LinkValue=63,INTD_IrqBitMap=8c80
    AddIrqLink: LinkNumber=60,bus=1,device=0,func=0 associated with irq=11
    ScanConfigureIrq: for Bus=2 ,Device=0 SlotNumber=2
         INTA_LinkValue=61,INTA_IrqBitMap=8c80
         INTB_LinkValue=62,INTB_IrqBitMap=8c80
         INTC_LinkValue=63,INTC_IrqBitMap=8c80
         INTD_LinkValue=60,INTD_IrqBitMap=8c80
    AddIrqLink: LinkNumber=61,bus=2,device=0,func=0 associated with irq=11
    ScanConfigureIrq: for Bus=3 ,Device=0 SlotNumber=3
         INTA_LinkValue=62,INTA_IrqBitMap=8c80
         INTB_LinkValue=63,INTB_IrqBitMap=8c80
         INTC_LinkValue=60,INTC_IrqBitMap=8c80
         INTD_LinkValue=61,INTD_IrqBitMap=8c80
    AddIrqLink: LinkNumber=62,bus=3,device=0,func=0 associated with irq=10
    ScanConfigureIrq: for Bus=4 ,Device=0 SlotNumber=4
         INTA_LinkValue=63,INTA_IrqBitMap=8c80
         INTB_LinkValue=60,INTB_IrqBitMap=8c80
         INTC_LinkValue=61,INTC_IrqBitMap=8c80
         INTD_LinkValue=62,INTD_IrqBitMap=8c80
    ScanConfigureIrq: for Bus=0 ,Device=0 SlotNumber=0
         INTA_LinkValue=0,INTA_IrqBitMap=0
         INTB_LinkValue=0,INTB_IrqBitMap=0
         INTC_LinkValue=0,INTC_IrqBitMap=0
         INTD_LinkValue=0,INTD_IrqBitMap=0
    ScanConfigureIrq: for Bus=0 ,Device=0 SlotNumber=0
         INTA_LinkValue=0,INTA_IrqBitMap=0
         INTB_LinkValue=0,INTB_IrqBitMap=0
         INTC_LinkValue=0,INTC_IrqBitMap=0
         INTD_LinkValue=0,INTD_IrqBitMap=0
    ScanConfigureIrq: for Bus=0 ,Device=0 SlotNumber=0
         INTA_LinkValue=0,INTA_IrqBitMap=0
         INTB_LinkValue=0,INTB_IrqBitMap=0
         INTC_LinkValue=0,INTC_IrqBitMap=0
         INTD_LinkValue=0,INTD_IrqBitMap=0
    ScanConfigureIrq: for Bus=0 ,Device=0 SlotNumber=0
         INTA_LinkValue=0,INTA_IrqBitMap=0
         INTB_LinkValue=0,INTB_IrqBitMap=0
         INTC_LinkValue=0,INTC_IrqBitMap=0
         INTD_LinkValue=0,INTD_IrqBitMap=0
    ScanConfigureIrq: for Bus=0 ,Device=0 SlotNumber=0
         INTA_LinkValue=0,INTA_IrqBitMap=0
         INTB_LinkValue=0,INTB_IrqBitMap=0
         INTC_LinkValue=0,INTC_IrqBitMap=0
         INTD_LinkValue=0,INTD_IrqBitMap=0
    ScanConfigureIrq: for Bus=0 ,Device=0 SlotNumber=0
         INTA_LinkValue=0,INTA_IrqBitMap=0
         INTB_LinkValue=0,INTB_IrqBitMap=0
         INTC_LinkValue=0,INTC_IrqBitMap=0
         INTD_LinkValue=0,INTD_IrqBitMap=0
    ScanConfigureIrq: for Bus=0 ,Device=0 SlotNumber=0
         INTA_LinkValue=0,INTA_IrqBitMap=0
         INTB_LinkValue=0,INTB_IrqBitMap=0
         INTC_LinkValue=0,INTC_IrqBitMap=0
         INTD_LinkValue=0,INTD_IrqBitMap=0
    ScanConfigureIrq: for Bus=0 ,Device=0 SlotNumber=0
         INTA_LinkValue=0,INTA_IrqBitMap=0
         INTB_LinkValue=0,INTB_IrqBitMap=0
         INTC_LinkValue=0,INTC_IrqBitMap=0
         INTD_LinkValue=0,INTD_IrqBitMap=0
    ScanConfigureIrq: for Bus=0 ,Device=0 SlotNumber=0
         INTA_LinkValue=0,INTA_IrqBitMap=0
         INTB_LinkValue=0,INTB_IrqBitMap=0
         INTC_LinkValue=0,INTC_IrqBitMap=0
         INTD_LinkValue=0,INTD_IrqBitMap=0
    ScanConfigureIrq: for Bus=0 ,Device=0 SlotNumber=0
         INTA_LinkValue=0,INTA_IrqBitMap=0
         INTB_LinkValue=0,INTB_IrqBitMap=0
         INTC_LinkValue=0,INTC_IrqBitMap=0
         INTD_LinkValue=0,INTD_IrqBitMap=0
    ScanConfigureIrq: for Bus=0 ,Device=0 SlotNumber=0
         INTA_LinkValue=0,INTA_IrqBitMap=0
         INTB_LinkValue=0,INTB_IrqBitMap=0
         INTC_LinkValue=0,INTC_IrqBitMap=0
         INTD_LinkValue=0,INTD_IrqBitMap=0
    ScanConfigureIrq: for Bus=0 ,Device=0 SlotNumber=0
         INTA_LinkValue=0,INTA_IrqBitMap=0
         INTB_LinkValue=0,INTB_IrqBitMap=0
         INTC_LinkValue=0,INTC_IrqBitMap=0
         INTD_LinkValue=0,INTD_IrqBitMap=0
    ScanConfigureIrq: for Bus=0 ,Device=0 SlotNumber=0
         INTA_LinkValue=0,INTA_IrqBitMap=0
         INTB_LinkValue=0,INTB_IrqBitMap=0
         INTC_LinkValue=0,INTC_IrqBitMap=0
         INTD_LinkValue=0,INTD_IrqBitMap=0
    +OALPAtoVA(0x0, 1)
    -OALPAtoVA(va = 0x80000000)
    +OALPAtoVA(0xe0000, 1)
    -OALPAtoVA(va = 0x800e0000)
     RSDP Start:0x800f0120 ACPI Rev:2 Length:36
     x86InitMemory(): dwAcpiPHYS = 0x7940E0D4
    dwCPUFeatures = bfebfbff
    g_nMtrrCnt = 8
    PhysMask0: 0000000fffc00800
    PhysMask1: 0000000f80000800
    PhysMask2: 0000000ffc000800
    PhysMask3: 0000000ffe000800
    PhysMask4: 0000000f80000800
    PhysMask5: 0000000000000000
    PhysMask6: 0000000000000000
    PhysMask7: 0000000000000000
    g_nMtrrInuse = 5
     x86InitMemory(): dwRamEndPHYS = 0x20000000
     x86InitMemory(): dwRamTop(1)= 0xc0000000
     Using ACPI location to determine RAM size
     ACPI Tables found at 0x7930e0d4
     RAM reported to kernel 1939MB
     x86InitMemory():g_pOemGlobal->dwMainMemoryEndAddress = 0xa0000000
    +OALPAtoVA(0x0, 1)
    -OALPAtoVA(va = 0x80000000)
    +OALPAtoVA(0xe0000, 1)
    -OALPAtoVA(va = 0x800e0000)
     RSDP Start:0x800f0120 ACPI Rev:2 Length:36
     Found ACPI but it was located above 512MB at 1940MB
    IDE deviceId = 0xffff
    disLegacyUsbSupport LPC deviceId=0xf1c PMBase=0x400 
    +OALMpInit
    -OALMpInit
    -OEMInit
    +OEMStartAllCPUs
    -OEMStartAllCPUs, OalNumCpus = 4
    PID:00400002 TID:00410002 ++x86IoCtlPostInit()
    PID:00400002 TID:00410002 +OALPAtoVA(0x0, 1)
    PID:00400002 TID:00410002 -OALPAtoVA(va = 0x80000000)
    PID:00400002 TID:00410002 +OALPAtoVA(0xe0000, 1)
    PID:00400002 TID:00410002 -OALPAtoVA(va = 0x800e0000)
    PID:00400002 TID:00410002  RSDP Start:0x800f0120 ACPI Rev:2 Length:36
    PID:00400002 TID:00410002  Found ACPI but it was located above 512MB at 1940MB
    PID:00400002 TID:00410002 --x86IoCtlPostInit()
    PID:00400004 TID:00510002 ++x86IoCtlHalInitRegistry()
    PID:00400004 TID:00510002 WARNING: COM1: has been reserved exclusively for Debug Messages.
    PID:00400004 TID:00510002 ++SaveVGAArgs()
    PID:00400004 TID:00510002 --SaveVGAArgs()
    PID:00400004 TID:00510002 --x86IoCtlHalInitRegistry()
    PID:00400003 TID:00870006 WINCE 6.0 E1Q:: MiniportDevicePnPEventNotify 
    PID:00400004 TID:00870006 WINCE 6.0 E1Q:: MiniportDevicePnPEventNotify 
    PID:00400003 TID:016D001E Exception 'Access Violation' (0xe): Thread-Id=016d001e(pth=a0471060), Proc-Id=00400002(pprc=82f58c88) 'NK'
    PID:00400003 TID:016D001E PC=efe12997(gwes.dll+0x00022997) RA=efe1c034(gwes.dll+0x0002c034) SP=af67fc30, BVA=0000010c


    Wednesday, May 6, 2015 3:40 AM

All replies

  • okay the exception is my fault!

    Because driver .dll need insertion 'K' attribute. into Platform.bib file.

    I just copy user guide context and  forget check this.

    but currently still keep in black screen status :'(

    next step will try VBIOS setting.

    Update Status,

    Latest Phoenix BIOS code base  have been fixed black the screen issues!


    • Edited by KunYi Tuesday, May 19, 2015 12:00 AM
    Wednesday, May 6, 2015 3:56 AM
  • Hi KunYi,

    Has this been resolved?

    Regards,

    Adeneo Support team

    Tuesday, January 26, 2016 5:48 PM