udoo won't boot

Discussion in 'Troubleshooting' started by Xykon, Nov 9, 2013.

  1. Xykon

    Xykon Member

    Joined:
    Nov 1, 2013
    Messages:
    64
    Likes Received:
    20
    Since I didn't get any feedback through the official SDCard thread, I'm trying my own thread now. Plus I'm no longer convinced that my problem is from the SDCard.

    Yesterday I created another card and it was working fine until my udoo once again froze and didn't produce any more output. So instead of trying to recreate the SDCard I just put my udoo aside for another day and tried again this evening.

    What happened is that my udoo once again managed to boot from the card up to a certain point... and once again stopped working after a couple of minutes.

    Code:
        U-Boot 2009.08-svn82 (Oct 07 2013 - 13:43:50)
    
        CPU: Freescale i.MX6 family TO1.2 at 792 MHz
        Thermal sensor with ratio = 185
        Temperature:   37 C, calibration data 0x59451a69
        mx6q pll1: 792MHz
        mx6q pll2: 528MHz
        mx6q pll3: 480MHz
        mx6q pll8: 50MHz
        ipg clock     : 66000000Hz
        ipg per clock : 66000000Hz
        uart clock    : 80000000Hz
        cspi clock    : 60000000Hz
        ahb clock     : 132000000Hz
        axi clock   : 264000000Hz
        emi_slow clock: 132000000Hz
        ddr clock     : 528000000Hz
        usdhc1 clock  : 198000000Hz
        usdhc2 clock  : 198000000Hz
        usdhc3 clock  : 198000000Hz
        usdhc4 clock  : 198000000Hz
        nfc clock     : 24000000Hz
        Board: i.MX6Q-UDOO: unknown-board Board: 0x63012 [POR]
        Boot Device: NOR
        I2C:   ready
        DRAM:   1 GB
        MMC:   FSL_USDHC: 0,FSL_USDHC: 1,FSL_USDHC: 2,FSL_USDHC: 3
        In:    serial
        Out:   serial
        Err:   serial
        Net:   got MAC address from IIM: 00:c0:08:88:17:f5
        FEC0 [PRIME]
        Hit any key to stop autoboot:  0
        mmc2 is current device
        Loading file "/boot/uImage" from mmc device 2:1 (xxc1)
        4119112 bytes read
        ## Booting kernel from Legacy Image at 10800000 ...
           Image Name:   Linux-3.0.35
           Created:      2013-10-12  12:05:37 UTC
           Image Type:   ARM Linux Kernel Image (uncompressed)
           Data Size:    4119048 Bytes =  3.9 MB
           Load Address: 10008000
           Entry Point:  10008000
           Verifying Checksum ... OK
           Loading Kernel Image ... OK
        OK
    
        Starting kernel ...
    
        [    0.000000] Linux version 3.0.35 (udoo@ubuntu) (gcc version 4.4.4 (4.4.4_09.06.2010) ) #1 SMP PREEMPT Sat Oct 12 14:05:30 CEST 2013
        [    0.000000] CPU: ARMv7 Processor [412fc09a] revision 10 (ARMv7), cr=10c53c7d
        [    0.000000] CPU: VIPT nonaliasing data cache, VIPT aliasing instruction cache
        [    0.000000] Machine: SECO i.Mx6 UDOO Board
        [    0.000000] Kernel ver: v. 83
        [    0.000000] Ignoring unrecognised tag 0x41000901
        [    0.000000] Memory policy: ECC disabled, Data cache writealloc
        [    0.000000] CPU identified as i.MX6Q, silicon rev 1.2
        [    0.000000] PERCPU: Embedded 7 pages/cpu @8be08000 s5440 r8192 d15040 u32768
        [    0.000000] Built 1 zonelists in Zone order, mobility grouping on.  Total pages: 162304
        [    0.000000] Kernel command line: console=ttymxc1,115200 root=/dev/mmcblk0p1 rootwait rw fixrtc rootflags=barrier=1 mem=768M arm_freq=996 video=mxcfb0:dev=hdmi,1920x1080M@60,if=RGB24
        [    0.000000] PID hash table entries: 4096 (order: 2, 16384 bytes)
        [    0.000000] Dentry cache hash table entries: 131072 (order: 7, 524288 bytes)
        [    0.000000] Inode-cache hash table entries: 65536 (order: 6, 262144 bytes)
        [    0.000000] Memory: 640MB = 640MB total
        [    0.000000] Memory: 636288k/636288k available, 150144k reserved, 0K highmem
        [    0.000000] Virtual kernel memory layout:
        [    0.000000]     vector  : 0xffff0000 - 0xffff1000   (   4 kB)
        [    0.000000]     fixmap  : 0xfff00000 - 0xfffe0000   ( 896 kB)
        [    0.000000]     DMA     : 0xf4600000 - 0xffe00000   ( 184 MB)
        [    0.000000]     vmalloc : 0xb0800000 - 0xf2000000   (1048 MB)
        [    0.000000]     lowmem  : 0x80000000 - 0xb0000000   ( 768 MB)
        [    0.000000]     pkmap   : 0x7fe00000 - 0x80000000   (   2 MB)
        [    0.000000]     modules : 0x7f000000 - 0x7fe00000   (  14 MB)
        [    0.000000]       .init : 0x80008000 - 0x80038000   ( 192 kB)
        [    0.000000]       .text : 0x80038000 - 0x80b03e8c   (11056 kB)
        [    0.000000]       .data : 0x80b04000 - 0x80b63b00   ( 383 kB)
        [    0.000000]        .bss : 0x80b63b24 - 0x80bb2480   ( 315 kB)
        [    0.000000] SLUB: Genslabs=13, HWalign=32, Order=0-3, MinObjects=0, CPUs=4, Nodes=1
        [    0.000000] Preemptible hierarchical RCU implementation.
        [    0.000000] NR_IRQS:624
        [    0.000000] MXC GPIO hardware
        [    0.000000] sched_clock: 32 bits at 3000kHz, resolution 333ns, wraps every 1431655ms
        [    0.000000] arm_max_freq=1GHz
        [    0.000000] MXC_Early serial console at MMIO 0x21e8000 (options '115200')
        [    0.000000] bootconsole [ttymxc1] enabled
        [    0.000000] Console: colour dummy device 80x30
        [    0.222822] Calibrating delay loop... 1581.05 BogoMIPS (lpj=7905280)
        [    0.311155] pid_max: default: 32768 minimum: 301
        [    0.316040] Mount-cache hash table entries: 512
        [    0.321254] CPU: Testing write buffer coherency: ok
        [    0.326407] hw perfevents: enabled with ARMv7 Cortex-A9 PMU driver, 7 counters available
        [    0.426935] CPU1: Booted secondary processor
        [    0.506934] CPU2: Booted secondary processor
        [    0.586942] CPU3: Booted secondary processor
        [    0.626442] Brought up 4 CPUs
        [    0.642266] SMP: Total of 4 processors activated (6324.22 BogoMIPS).
        [    0.665752] print_constraints: dummy:
        [    0.669739] NET: Registered protocol family 16
        [    0.678453] print_constraints: vddpu: 725 <--> 1300 mV at 700 mV fast normal
        [    0.685905] print_constraints: vddcore: 725 <--> 1300 mV at 1150 mV fast normal
        [    0.693654] print_constraints: vddsoc: 725 <--> 1300 mV at 1200 mV fast normal
        [    0.701346] print_constraints: vdd2p5: 2000 <--> 2775 mV at 2400 mV fast normal
        [    0.709111] print_constraints: vdd1p1: 800 <--> 1400 mV at 1100 mV fast normal
        [    0.716764] print_constraints: vdd3p0: 2625 <--> 3400 mV at 3000 mV fast normal
        [    0.725754]
        [    0.725761] > UDOO quad
        [    0.729553] > rev C Called set_gpios_direction
        [    0.734213] Test and set gpios directions and values by Gionji feat. Ekirei test
        [    0.765204] Resetting ethernet physical layer.
        [    0.812956] hw-breakpoint: found 6 breakpoint and 1 watchpoint registers.
        [    0.819790] hw-breakpoint: 1 breakpoint(s) reserved for watchpoint single-step.
        [    0.827149] hw-breakpoint: maximum watchpoint size is 4 bytes.
        [    0.833035] L310 cache controller enabled
        [    0.837077] l2x0: 16 ways, CACHE_ID 0x410000c7, AUX_CTRL 0x02070000, Cache size: 1048576 B
        [    0.870441] bio: create slab <bio-0> at 0
        [    0.878313] mxs-dma mxs-dma-apbh: initialized
        [    0.882996] print_constraints: vmmc: 3300 mV
        [    0.888059] vgaarb: loaded
        [    0.891588] SCSI subsystem initialized
        [    0.896471] usbcore: registered new interface driver usbfs
        [    0.902099] usbcore: registered new interface driver hub
        [    0.907589] usbcore: registered new device driver usb
        [    0.912658] Freescale USB OTG Driver loaded, $Revision: 1.55 $
        [    0.936441] imx-ipuv3 imx-ipuv3.0: IPU DMFC NORMAL mode: 1(0~1), 5B(4,5), 5F(6,7)
        [    0.956440] imx-ipuv3 imx-ipuv3.1: IPU DMFC NORMAL mode: 1(0~1), 5B(4,5), 5F(6,7)
        [    0.964320] MIPI CSI2 driver module loaded
        [    0.968663] Advanced Linux Sound Architecture Driver Version 1.0.24.
        [    0.975878] Bluetooth: Core ver 2.16
        [    0.979594] NET: Registered protocol family 31
        [    0.984052] Bluetooth: HCI device and connection manager initialized
        [    0.990435] Bluetooth: HCI socket layer initialized
        [    0.995328] Bluetooth: L2CAP socket layer initialized
        [    1.000484] Bluetooth: SCO socket layer initialized
        [    1.005793] cfg80211: Calling CRDA to update world regulatory domain
        [    1.013192] i2c-core: driver [max17135] using legacy suspend method
        [    1.019491] i2c-core: driver [max17135] using legacy resume method
        [    1.025707] Switching to clocksource mxc_timer1
        [    1.042719] NET: Registered protocol family 2
        [    1.047269] IP route cache hash table entries: 32768 (order: 5, 131072 bytes)
        [    1.055198] TCP established hash table entries: 131072 (order: 8, 1048576 bytes)
        [    1.064539] TCP bind hash table entries: 65536 (order: 7, 786432 bytes)
        [    1.072280] TCP: Hash tables configured (established 131072 bind 65536)
        [    1.078915] TCP reno registered
        [    1.082091] UDP hash table entries: 512 (order: 2, 16384 bytes)
        [    1.088057] UDP-Lite hash table entries: 512 (order: 2, 16384 bytes)
        [    1.094808] NET: Registered protocol family 1
        [    1.099460] RPC: Registered named UNIX socket transport module.
        [    1.105423] RPC: Registered udp transport module.
        [    1.110142] RPC: Registered tcp transport module.
        [    1.114874] RPC: Registered tcp NFSv4.1 backchannel transport module.
        [    1.122226] PMU: registered new PMU device of type 0
        [    1.127329] Static Power Management for Freescale i.MX6
        [    1.132593] wait mode is enabled for i.MX6
        [    1.136887] cpaddr = b0880000 suspend_iram_base=b08fc000
        [    1.142334] PM driver module loaded
        [    1.146223] IMX usb wakeup probe
        [    1.149907] add wake up source irq 75
        [    1.157199] IMX usb wakeup probe
        [    1.160735] cpu regulator mode:ldo_enable
        [    1.165010] i.MXC CPU frequency driver
        [    1.192803] JFFS2 version 2.2. (NAND) © 2001-2006 Red Hat, Inc.
        [    1.199459] msgmni has been set to 1242
        [    1.204858] alg: No test for stdrng (krng)
        [    1.209122] io scheduler noop registered
        [    1.213078] io scheduler deadline registered
        [    1.217447] io scheduler cfq registered (default)
        [    1.223239] MIPI DSI driver module loaded
        [    1.227432] mxc_sdc_fb mxc_sdc_fb.0: register mxc display driver hdmi
        [    1.233951] mxc_hdmi mxc_hdmi: Detected HDMI controller 0x13:0xa:0xa0:0xc1
        [    1.240875] fbcvt: 1920x1080@60: CVT Name - 2.073M9
        [    1.252519] imx-ipuv3 imx-ipuv3.0: WARNING: adapt panel end blank lines
        [    1.270361] imx-ipuv3 imx-ipuv3.0: IPU DMFC DP HIGH RESOLUTION: 1(0,1), 5B(2~5), 5F(6,7)
        [    1.303669] imx-ipuv3 imx-ipuv3.0: WARNING: adapt panel end blank lines
        [    1.329122] Console: switching to colour frame buffer device 160x64
        [    1.377760] mxc_sdc_fb mxc_sdc_fb.1: register mxc display driver ldb
        [    1.384177] _regulator_get: get() with no identifier
        [    1.397617] mxc_sdc_fb mxc_sdc_fb.2: register mxc display driver ldb
        [    1.407955] fbcvt: 1920x1080@60: CVT Name - 2.073M9
        [    1.414117] imx-sdma imx-sdma: loaded firmware 1.1
        [    1.418394] imx-sdma imx-sdma: initialized
        [    1.625287] Serial: IMX driver
        [    1.625410] imx-uart.0: ttymxc0 at MMIO 0x2020000 (irq = 58) is a IMX
        [    1.625792] imx-uart.1: ttymxc1 at MMIO 0x21e8000 (irq = 59) is a IMX
        [    1.683094] console [ttymxc1] enabled, bootconsole disabled
        [    1.683094] console [ttymxc1] enabled, bootconsole disabled
        [    1.694643] imx-uart.3: ttymxc3 at MMIO 0x21f0000 (irq = 61) is a IMX
        [    1.706474] loop: module loaded
        [    1.709625] request BOSSA_CLK IRQ
        [    1.712952] registering IRQ 419 for BOSSAC Arduino erase/reset operation
        [    1.762314] No sata disk.
        [    1.766221] GPMI NAND driver registered. (IMX)
        [    1.772551] vcan: Virtual CAN interface driver
        [    1.776999] CAN device driver interface
        [    1.780848] flexcan netdevice driver
        [    1.784584] FEC Ethernet Driver
        [    1.789917] fec_enet_mii_bus: probed
        [    1.794652] usbcore: registered new interface driver rt2800usb
        [    1.800506] ehci_hcd: USB 2.0 'Enhanced' Host Controller (EHCI) Driver
        [    1.807151] fsl-ehci fsl-ehci.0: Freescale On-Chip EHCI Host Controller
        [    1.813798] fsl-ehci fsl-ehci.0: new USB bus registered, assigned bus number 1
        [    1.850323] fsl-ehci fsl-ehci.0: irq 75, io base 0x02184000
        [    1.870315] fsl-ehci fsl-ehci.0: USB 2.0 started, EHCI 1.00
        [    1.876510] hub 1-0:1.0: USB hub found
        [    1.880273] hub 1-0:1.0: 1 port detected
        [    1.884388] add wake up source irq 72
        [    1.888088] fsl-ehci fsl-ehci.1: Freescale On-Chip EHCI Host Controller
        [    1.894759] fsl-ehci fsl-ehci.1: new USB bus registered, assigned bus number 2
        [    1.930327] fsl-ehci fsl-ehci.1: irq 72, io base 0x02184200
        [    1.950311] fsl-ehci fsl-ehci.1: USB 2.0 started, EHCI 1.00
        [    1.956450] hub 2-0:1.0: USB hub found
        [    1.960213] hub 2-0:1.0: 1 port detected
        [    1.964497] Initializing USB Mass Storage driver...
        [    1.969557] usbcore: registered new interface driver usb-storage
        [    1.975580] USB Mass Storage support registered.
        [    1.980518] usbcore: registered new interface driver usbserial
        [    1.986460] USB Serial support registered for generic
        [    1.991655] usbcore: registered new interface driver usbserial_generic
        [    1.998186] usbserial: USB Serial Driver core
        [    2.002664] USB Serial support registered for debug
        [    2.007664] usbcore: registered new interface driver debug
        [    2.013166] ARC USBOTG Device Controller driver (1 August 2005)
        [    2.019853] mousedev: PS/2 mouse device common for all mice
        [    2.026422] i2c-core: driver [isl29023] using legacy suspend method
        [    2.032708] i2c-core: driver [isl29023] using legacy resume method
        [    2.039552] snvs_rtc snvs_rtc.0: rtc core: registered snvs_rtc as rtc0
        [    2.046241] i2c /dev entries driver
        [    2.050456] Linux video capture interface: v2.00
        [    2.055439] mxc_v4l2_output mxc_v4l2_output.0: V4L2 device registered as video16
        [    2.063066] mxc_v4l2_output mxc_v4l2_output.0: V4L2 device registered as video17
        [    2.070687] mxc_v4l2_output mxc_v4l2_output.0: V4L2 device registered as video18
        [    2.078288] mxc_v4l2_output mxc_v4l2_output.0: V4L2 device registered as video19
        [    2.085896] mxc_v4l2_output mxc_v4l2_output.0: V4L2 device registered as video20
        [    2.093699] vivi-000: V4L2 device registered as video0
        [    2.098841] Video Technology Magazine Virtual Video Capture Board ver 0.8.0 successfully loaded.
        [    2.108005] i2c-core: driver [mag3110] using legacy suspend method
        [    2.114203] i2c-core: driver [mag3110] using legacy resume method
        [    2.120718] imx2-wdt imx2-wdt.0: IMX2+ Watchdog Timer enabled. timeout=60s (nowayout=1)
        [    2.128825] Bluetooth: Virtual HCI driver ver 1.3
        [    2.133741] Bluetooth: HCI UART driver ver 2.2
        [    2.138188] Bluetooth: HCIATH3K protocol initialized
        [    2.143167] Bluetooth: Generic Bluetooth USB driver ver 0.6
        [    2.148872] usbcore: registered new interface driver btusb
        [    2.154527] sdhci: Secure Digital Host Controller Interface driver
        [    2.160724] sdhci: Copyright(c) Pierre Ossman
        [    2.165392] mmc0: SDHCI controller on platform [sdhci-esdhc-imx.2] using DMA
        [    2.172740] mxc_vdoa mxc_vdoa: i.MX Video Data Order Adapter(VDOA) driver probed
        [    2.183929] VPU initialized
        [    2.187721] mxc_asrc registered
    
    Without any more output from the serial console, I removed jumper J2 and connected a second MicroUSB cable to my computer. As expected it's recognizing the CPU as a HID device but the device manager is constantly refreshing. It seems like the CPU is constantly resetting itself.

    So I downloaded the MfgTool from the freescale website and configured it to load the udoo u-boot file and kernel:

    Code:
    <LIST name="udoo" desc="udoo">
        <!--<CMD state="BootStrap" type="find" body="Recovery" timeout="180"/> -->
        <CMD state="BootStrap" type="boot" body="Recovery" file ="u-boot-mx6q-udoo.bin" >Loading U-boot</CMD>
    	<CMD state="BootStrap" type="load" file="uImage-udoo" address="0x10800000"
    		loadSection="OTH" setSection="OTH" HasFlashHeader="FALSE" >Doing Kernel.</CMD>
    	<CMD state="BootStrap" type="jump" > Jumping to OS image. </CMD>
     ->
    </LIST>
    
    But it doesn't seem to manage to do this because from what I can figure the CPU is resetting before it has a chance to run the u-boot file (I also tried just with the uImage line but same result):

    Code:
    ModuleID[2] LevelID[10]: CMyExceptionHandler thread is running
    ModuleID[2] LevelID[1]: new MxHidDeviceClass
    ModuleID[2] LevelID[10]: Device Manager thread is running
    ModuleID[2] LevelID[10]: DeviceManager::DevChangeWnd::OnDeviceChange() - DEVICE_ARRIVAL_EVT(\\?\USB#VID_15A2&PID_0054#5&31de663d&0&1#{a5dcbf10-6530-11d2-901f-00c04fb951ed})
    ModuleID[2] LevelID[10]: DeviceManager::DevChangeWnd::OnDeviceChange() - end
    ModuleID[2] LevelID[10]: DeviceManager::OnMsgDeviceEvent() - DEVICE_ARRIVAL_EVT(\\?\USB#VID_15A2&PID_0054#5&31de663d&0&1#{a5dcbf10-6530-11d2-901f-00c04fb951ed})
    ModuleID[2] LevelID[10]: DeviceClass::FindDeviceByUsbPath--DeviceListType_Current, _devices.size: 0
    ModuleID[2] LevelID[1]: DeviceClass::FindDeviceByUsbPath() - DeviceListType_New--index: 0
    ModuleID[2] LevelID[1]: DeviceClass::FindDeviceByUsbPath() - DeviceListType_New--devPath: \\?\hid#vid_046d&pid_c52f&mi_00#7&34ddbbf8&0&0000#{4d1e55b2-f16f-11cf-88cb-001111000030}
    ModuleID[2] LevelID[1]: DeviceClass::FindDeviceByUsbPath() - DeviceListType_New--index: 1
    ModuleID[2] LevelID[1]: DeviceClass::FindDeviceByUsbPath() - DeviceListType_New--devPath: \\?\hid#vid_046d&pid_c52f&mi_01&col01#7&30157238&0&0000#{4d1e55b2-f16f-11cf-88cb-001111000030}
    ModuleID[2] LevelID[1]: DeviceClass::FindDeviceByUsbPath() - DeviceListType_New--index: 2
    ModuleID[2] LevelID[1]: DeviceClass::FindDeviceByUsbPath() - DeviceListType_New--devPath: \\?\hid#vid_046d&pid_c52f&mi_01&col02#7&30157238&0&0001#{4d1e55b2-f16f-11cf-88cb-001111000030}
    ModuleID[2] LevelID[1]: DeviceClass::FindDeviceByUsbPath() - DeviceListType_New--index: 3
    ModuleID[2] LevelID[1]: DeviceClass::FindDeviceByUsbPath() - DeviceListType_New--devPath: \\?\hid#vid_046d&pid_c52f&mi_01&col03#7&30157238&0&0002#{4d1e55b2-f16f-11cf-88cb-001111000030}
    ModuleID[2] LevelID[1]: DeviceClass::FindDeviceByUsbPath() - DeviceListType_New--index: 4
    ModuleID[2] LevelID[1]: DeviceClass::FindDeviceByUsbPath() - DeviceListType_New--devPath: \\?\hid#vid_15a2&pid_0054#6&ceff161&0&0000#{4d1e55b2-f16f-11cf-88cb-001111000030}
    ModuleID[2] LevelID[10]: new MxHidDevice[00E31898]
    ModuleID[2] LevelID[10]: DeviceClass::FindDeviceByUsbPath--DeviceListType_New, devInstPathToFind: USB\VID_15A2&PID_0054\5&31DE663D&0&1, _deviceInstanceID: USB\VID_15A2&PID_0054\5&31DE663D&0&1
    ModuleID[2] LevelID[10]: DeviceClass::FindDeviceByUsbPath--DeviceListType_New, Find the device, Port: 1
    ModuleID[2] LevelID[10]: DeviceClass::AddUsbDevice() successful USB#VID_15A2&PID_0054#5&31DE663D&0&1#{A5DCBF10-6530-11D2-901F-00C04FB951ED} add to current list, retrycount: 0
    ModuleID[2] LevelID[10]: DeviceManager::OnMsgDeviceEvent() - DEVICE_ARRIVAL_EVT,[MxHidDeviceClass] vid_15a2&pid_0054, Hub:7-Port:1
    ModuleID[2] LevelID[10]: DeviceManager::OnMsgDeviceEvent() - DEVICE_ARRIVAL_EVT, Notify
    ModuleID[2] LevelID[10]: CmdOpreation[0]--OnDeviceChangeNotify, Volume Arrive/Remove or Device Arrive/Remove
    ModuleID[2] LevelID[10]: CmdOpreation[0]--OnDeviceChangeNotify, m_p_usb_port is not NULL, so only refresh
    ModuleID[2] LevelID[10]: CmdOpreation[0]--OnDeviceChangeNotify, Volume/Device Arrive
    ModuleID[2] LevelID[1]: CmdOpreation[0]--set m_hDeviceArriveEvent.
    ModuleID[2] LevelID[10]: CmdOpreation[0]--WaitforEvents device arrive1
    ModuleID[2] LevelID[10]: CmdOperation[0] device chagned and reset to state 0
    ModuleID[2] LevelID[10]: ExecuteCommand--Boot[WndIndex], File is D:\userdata\fr025463\Downloads\udoo\tools\Mfgtools-Rel-4.1.0_130816_MX6Q_UPDATER\Profiles\MX6Q Linux Update\OS Firmware\u-boot-mx6q-udoo.bin
    ModuleID[2] LevelID[1]: MxHidDevice::Read() Error reading from device 0x48f.
    ModuleID[2] LevelID[1]: Failed to read HAB type from ROM!!!
    ModuleID[2] LevelID[1]: Failed to initialize memory!
    ModuleID[2] LevelID[1]: PortMgrDlg(0)--MxHidDevice--Command Boot excute failed
    ModuleID[2] LevelID[10]: CmdOperation[0], current command executed failed, so SetEvent(hDevCanDeleteEvent)
    ModuleID[2] LevelID[10]: DeviceManager::DevChangeWnd::OnDeviceChange() - DEVICE_REMOVAL_EVT(\\?\USB#VID_15A2&PID_0054#5&31de663d&0&1#{a5dcbf10-6530-11d2-901f-00c04fb951ed})
    ModuleID[2] LevelID[10]: DeviceManager::DevChangeWnd::OnDeviceChange() - end
    ModuleID[2] LevelID[10]: DeviceManager::OnMsgDeviceEvent() - DEVICE_REMOVAL_EVT(\\?\USB#VID_15A2&PID_0054#5&31de663d&0&1#{a5dcbf10-6530-11d2-901f-00c04fb951ed})
    ModuleID[2] LevelID[10]: DeviceClass::FindDeviceByUsbPath--DeviceListType_Current, _devices.size: 1
    ModuleID[2] LevelID[10]: DeviceClass::FindDeviceByUsbPath--DeviceListType_Current, devInstPathToFind: USB\VID_15A2&PID_0054\5&31DE663D&0&1, _deviceInstanceID: USB\VID_15A2&PID_0054\5&31DE663D&0&1
    ModuleID[2] LevelID[10]: DeviceClass::FindDeviceByUsbPath--DeviceListType_Current, Find the device
    ModuleID[2] LevelID[10]: DeviceManager::OnMsgDeviceEvent() - DEVICE_REMOVAL_EVT,[MxHidDeviceClass] vid_15a2&pid_0054, Hub:7-Port:1
    ModuleID[2] LevelID[10]: DeviceManager::OnMsgDeviceEvent() - DEVICE_REMOVAL_EVT, Notify
    ModuleID[2] LevelID[10]: CmdOpreation[0]--OnDeviceChangeNotify, Volume Arrive/Remove or Device Arrive/Remove
    ModuleID[2] LevelID[10]: CmdOpreation[0]--OnDeviceChangeNotify, m_p_usb_port is not NULL, so only refresh
    ModuleID[2] LevelID[10]: CmdOpreation[0]--OnDeviceChangeNotify, Volume/Device Remove
    ModuleID[2] LevelID[1]: CmdOpreation[0]--set m_hDeviceRemoveEvent.
    ModuleID[2] LevelID[10]: CmdOpreation[0]--WaitforEvents device remove1
    ModuleID[2] LevelID[10]: DeviceManager::OnMsgDeviceEvent()-DEVICE_REMOVAL_EVT, hDevCanDeleteEvent has been set
    ModuleID[2] LevelID[10]: delete MxHidDevice[00E31898]
    
    I'm wondering if this message has to do with the DDR RAM: ModuleID[2] LevelID[1]: Failed to initialize memory!

    I also connected a jtag module to the J17A1 header and get the following from openocd 7:

    Code:
    D:\openocd-0.7.0>bin\openocd-0.7.0.exe -f openocd.cfg
    Open On-Chip Debugger 0.7.0 (2013-05-05-10:41)
    Licensed under GNU GPL v2
    For bug reports, read
            http://openocd.sourceforge.net/doc/doxygen/bugs.html
    Info : only one transport option; autoselect 'jtag'
    Warn : imx6.sdma: nonstandard IR value
    RCLK - adaptive
    adapter speed: 2000 kHz
    Info : clock speed 2000 kHz
    Polling target imx6.cpu.0 failed, GDB will be halted. Polling again in 100ms
    Polling target imx6.cpu.0 failed, GDB will be halted. Polling again in 300ms
    Info : JTAG tap: imx6.dap tap/device found: 0x4ba00477 (mfg: 0x23b, part: 0xba00
    , ver: 0x4)
    Info : TAP imx6.sdma does not have IDCODE
    Info : JTAG tap: imx6.sjc tap/device found: 0x2191c01d (mfg: 0x00e, part: 0x191c
    , ver: 0x2)
    Info : imx6.cpu.0: hardware has 6 breakpoints, 4 watchpoints
    Polling target imx6.cpu.0 succeeded again
    Warn : Invalid ACK 0 in JTAG-DP transaction
    Polling target imx6.cpu.0 failed, GDB will be halted. Polling again in 100ms
    Polling target imx6.cpu.0 succeeded again
    Polling target imx6.cpu.0 failed, GDB will be halted. Polling again in 100ms
    Polling target imx6.cpu.0 succeeded again
    Warn : Invalid ACK 0 in JTAG-DP transaction
    Polling target imx6.cpu.0 failed, GDB will be halted. Polling again in 100ms
    Polling target imx6.cpu.0 succeeded again
    Polling target imx6.cpu.0 failed, GDB will be halted. Polling again in 100ms
    Polling target imx6.cpu.0 succeeded again
    Warn : Invalid ACK 0 in JTAG-DP transaction
    Polling target imx6.cpu.0 failed, GDB will be halted. Polling again in 100ms
    Polling target imx6.cpu.0 succeeded again
    Polling target imx6.cpu.0 failed, GDB will be halted. Polling again in 100ms
    Polling target imx6.cpu.0 succeeded again
    Warn : Invalid ACK 0 in JTAG-DP transaction
    Polling target imx6.cpu.0 failed, GDB will be halted. Polling again in 100ms
    
    I'm not 100% sure but I think this is also because of the CPU resetting constantly. I'll have to check this in more detail... at least I can see that the CPU itself seems to be fine... or at least it is recognized...


    Well does anyone have any idea what else I could check at this point?
     
  2. Xykon

    Xykon Member

    Joined:
    Nov 1, 2013
    Messages:
    64
    Likes Received:
    20
    I am now completely out of ideas. Last Friday, after I kept my udoo running for approx. 20minutes, it finally started to load u-boot and the kernel (but not the rootFS). However today, after leaving it turned off last night and during the day, it doesn't come up even after waiting a whole 90 minutes.

    I found the u-boot source code in the Android github repository and built a u-boot binary with the modifications necessary for the MF-tool, but after seemingly loading u-boot without problems it doesn't seem to load the kernel. And I'm still not getting any output on the serial debug port. I don't have much experience with these CPUs (I'm usually working with Atmel SAM9) so I might be missing something.

    My power supply is a 0-15V/3A lab unit which should be sufficient to power udoo. It shows my udoo using less that 0.2A at 12V. I posted a picture in the power supply thread.

    I'm now really thinking that my udoo has a hardware issue somewhere. The CPU itself seems to be OK because the HID device is coming up through the OTG port so maybe it's a memory issue? Or maybe some of the solder balls of the CPU don't have proper contact to the board, which might explain why it started working after a while when the CPU got heated up.

    I assume I won't be able to get a warranty exchange since I populated the jtag header in the hopes of troubleshooting the issue even though the behavior of my udoo was exactly the same before and after doing that and I have years of professional experience with embedded hardware.

    Now I'm wondering if I should just order another udoo quad or if I should wait, do more investigations and hope that updated images will be released soon that might work.

    It would be nice to get some feedback from the udoo team if there is anything left that I could try, or if they also think that this is a hardware issue.
     
  3. Lifeboat_Jim

    Lifeboat_Jim New Member

    Joined:
    Sep 16, 2013
    Messages:
    399
    Likes Received:
    1
    Sounds like you've done all the things I'd suggest.

    I don't have any fresh ideas for you I'm afraid :-(
     
  4. delba

    delba Administrator Staff Member

    Joined:
    May 8, 2013
    Messages:
    1,063
    Likes Received:
    9
    Xykon,

    If you used the last images we uploaded (at least ubuntu 1.2 & android 1.1) and still didn’t work, seems you have an hardware problem.

    It should be an issue from a watchdog signal. Basically it has 2 signals:

    1- Continuously resets the board;
    2- Checks if the board is on or off.

    Seems that you’re missing a resistor for the 2nd signal, if that’s true the watchdog thinks the board is off and resets continuously.
     
  5. Xykon

    Xykon Member

    Joined:
    Nov 1, 2013
    Messages:
    64
    Likes Received:
    20
    I got home from work today and tried my udoo again (I didn't have a chance yesterday) and the board once again came up all the way to the mxc_asrc registered message (but no gui or serial login prompt)

    I tried compiling u-boot from the github repository using either OS_TYPE=LINUX CROSS_COMPILE=/opt/csarmgcc/bin/arm-none-eabi- for the latest code sourcery gcc or OS_TYPE=LINUX CROSS_COMPILE=/opt/arm-fsl-linux-gnueabi/bin/arm-fsl-linux-gnueabi- using the same cross compiler recommended for the kernel. But neither way do I get any serial output. I've seen the same using the u-boot from the Android repository but that disappeared again...

    I also tried the new Ubuntu 1.3 image but get the same results as before...

    Could this still be a watchdog issue if my udoo works to a certain point when I left it alone for a rather lengthy time? I noticed that if I disconnect the power, wait a few minutes and then reconnect power that my udoo goes dead again and stays dead until I leave it alone again for a while (which varies from 20 minutes up to 24+ hours).

    It would be great if I could manage to build a version of udoo that is compatible with the MFtool so I could boot my udoo without SDCard to make sure it's not a card issue, but as mentioned before I don't seem to manage to build the sources with serial output. Maybe you can post a quick u-boot compilation guide either on the forum or better yet on the wiki? I don't have much time this week to dedicate to udoo as I'm swamped with work but I'll try to continue troubleshooting during the weekend.
     
  6. Xykon

    Xykon Member

    Joined:
    Nov 1, 2013
    Messages:
    64
    Likes Received:
    20
    Well I decided to look for any missing components today so I removed the heatsink. I noticed almost immediately that the RAM chip U12 isn't aligned properly. All the other RAM chips are within the white border but this one isn't. And it seems one half is closer to the board than the other, as if it wasn't soldered on properly.

    I checked all the non populated components with the board and schematics files and nothing is missing, especially all resistors are accounted for.

    I already speculated about this possibly being a memory problem and not that I've actually seen the RAM chips I really think this might be the problem. Unfortunately this is a BGA chip and I don't have a rework station for those, so I'm not really sure how to fix this at the moment...
     
  7. Lifeboat_Jim

    Lifeboat_Jim New Member

    Joined:
    Sep 16, 2013
    Messages:
    399
    Likes Received:
    1
    There were a couple of ppl who had loose/misaligned RAM modules so it's possible.
     
  8. Xykon

    Xykon Member

    Joined:
    Nov 1, 2013
    Messages:
    64
    Likes Received:
    20
    I guess that means I'll have to put a bga rework station onto my x-mas wishlist... I do have several sizes of solder b.alls but never managed to get them attach to a chip with my hot air station... when I tried in the past the b.alls would just fly off the chip due to the air pressure even at the lowest setting :(

    (I think censoring b.alls on the forum isn't a smart idea :) )
     
  9. Xykon

    Xykon Member

    Joined:
    Nov 1, 2013
    Messages:
    64
    Likes Received:
    20
    I'm wondering if...

    (a) the udoo team would accept a repair / exchange of my udoo despite the fact that I populated the jtag header J17A1 or
    (b) would be able to send me a single pre-b.alled DDR memory chip that I can solder onto the board.

    I don't see myself buying a BGA reword station anytime soon so repairing the chip myself is out of the quest for now. I tried to see if I can buy a new DDR memory chip but couldn't find any available at the usual vendors. According to the manufacturer there is a replacement available but even then the minimum order is 2000.

    I'm simply not willing to buy another board at full price just because of a manufacturing defect, especially when I'm not the only one with this defect that's not possible to have been caused by populating a stupid debug header.
     
  10. DracoLlasa

    DracoLlasa UDOOer

    Joined:
    Oct 15, 2013
    Messages:
    419
    Likes Received:
    3
    the UDOO Support guys have been pretty helpful and this is a known manufacturing defect so im sur ehtey will take that into consideration and likely do a replacement, but i cant say 100%

    you shoudl reach out to them via the contact form: http://www.udoo.org/support/contact-us/
    reference this thread so they can read the details.
    However, the UDOO guys may see it here in the forums before in email so you should be covered either way,
     
  11. Xykon

    Xykon Member

    Joined:
    Nov 1, 2013
    Messages:
    64
    Likes Received:
    20
    I sent a friendly message to EBV Electronics asking if they would consider selling me 4-6 of the ddr ram chips either as samples or courtesy despite the minimum 1000 unit requirement they have on their website. If I could simply get a replacement (or maybe a few just in case) I'm fairly confident I will be able to replace the current chip with my hot air station (I did bga replacements before with an 80% success rate on the first attempt provided I had a pre-b.alled chip). A BGA rework station has been on my wish list for a while now and I'm still considering getting a T862+ on Ebay which is quite affordable.

    However if the RAM chip is actually damaged then even the best equipment won't help if I can't get a new one in low quantity...
     
  12. delba

    delba Administrator Staff Member

    Joined:
    May 8, 2013
    Messages:
    1,063
    Likes Received:
    9

    Xykon,

    as DracoLlasa said the RAM issue is a known manufacturing defect so we can replace your UDOO even if you populated the jtag header J17A1. Write us using the contact form so we can add the request in our system.

    Thanks
     

Share This Page