SG-3100 Bad USB controller
-
@stephenw10 here's a full boot and output
BootROM - 1.73 Booting from SPI flash General initialization - Version: 1.0.0 AVS selection from EFUSE disabled (Skip reading EFUSE values) Overriding default AVS value to: 0x23 Detected Device ID 6820 High speed PHY - Version: 2.0 Init Customer board board SerDes lanes topology details: | Lane # | Speed| Type | ------------------------------| | 0 | 3 | SATA0 | | 1 | 5 | PCIe0 | | 2 | 3 | SATA1 | | 3 | 4 | SGMII2 | | 4 | 5 | PCIe1 | | 5 | 5 | USB3 HOST1 | ------------------------------- PCIe, Idx 0: detected no link PCIe, Idx 1: detected no link High speed PHY - Ended Successfully mv_ddr: mv_ddr-armada-17.06.1-g07f8294 (Aug 11 2017 - 13:12:46) DDR4 Training Sequence - Switching XBAR Window to FastPath Window mv_ddr: completed successfully BootROM: Image checksum verification PASSED __ __ _ _ | \/ | __ _ _ ____ _____| | | | |\/| |/ _` | '__\ \ / / _ \ | | | | | | (_| | | \ V / __/ | | |_| |_|\__,_|_| \_/ \___|_|_| _ _ ____ _ | | | | | __ ) ___ ___ | |_ | | | |___| _ \ / _ \ / _ \| __| | |_| |___| |_) | (_) | (_) | |_ \___/ |____/ \___/ \___/ \__| ** LOADER ** U-Boot 2013.01-02873-g5e4ac3c (Aug 11 2017 - 13:12:40) Marvell version: devel-17.06.0 Board: Rogue-1 SoC: MV88F6820 Rev A0 running 2 CPUs CPU: ARM Cortex A9 MPCore (Rev 1) LE CPU 0 CPU @ 1600 [MHz] L2 @ 800 [MHz] TClock @ 250 [MHz] DDR4 @ 800 [MHz] DDR4 32 Bit Width,FastPath Memory Access, DLB Enabled, ECC Disabled DRAM: 2 GiB MMC: mv_sdh: 0 DBG: Calling spi_flash_probe from env_relocate_spec() SF: Probing bus 0 cs 0 @ 20000000Hz mode 3 SF: Detected N25Q128 with page size 64 KiB, total 16 MiB PCI-e 0: Detected No Link. PCI-e 1: Detected No Link. USB2.0 0: Host Mode USB3.0 1: Host Mode Map: Code: 0x7fedc000:0x7ff975a8 BSS: 0x7ffef600 Stack: 0x7f4cbf20 Heap: 0x7f4cc000:0x7fedc000 U-Boot Environment: 0x00100000:0x00110000 (SPI) Board configuration detected: Net: | port | Interface | PHY address | |--------|-----------|--------------| | egiga0 | RGMII | 0x00 | | egiga1 | RGMII | 0x01 | | egiga2 | SGMII | In-Band | egiga0 [PRIME], egiga1, egiga2 Hit any key to stop autoboot: 0 Marvell>> usb reset (Re)start USB... USB0: mvBoardUsbVbusSet: gppNo = 35 Port (usbActive) : 1 Interface (usbType = 3) : USB XHCI 1.00 scanning bus 0 for devices... cannot reset port 2!? 1 USB Device(s) found Bad detection, need a second reset... USB0: mvBoardUsbVbusSet: gppNo = 35 Port (usbActive) : 1 Interface (usbType = 3) : USB XHCI 1.00 scanning bus 0 for devices... 2 USB Device(s) found scanning usb for storage devices... 1 Storage Device(s) found scanning usb for ethernet devices... 0 Ethernet Device(s) found Marvell>> run recovery (Re)start USB... USB0: mvBoardUsbVbusSet: gppNo = 35 Port (usbActive) : 1 Interface (usbType = 3) : USB XHCI 1.00 scanning bus 0 for devices... 2 USB Device(s) found scanning usb for storage devices... 1 Storage Device(s) found scanning usb for ethernet devices... 0 Ethernet Device(s) found reading ubldr.bin 228648 bytes read in 29 ms (7.5 MiB/s) Starting application at 0x00200000 ... Consoles: U-Boot console Compatible U-Boot API signature found @0x7f4dc280 FreeBSD/armv6 U-Boot loader, Revision 1.2 (Tue Jul 10 10:26:23 EDT 2018 root@buildbot3) DRAM: 2048MB Number of U-Boot devices: 5 U-Boot env: loaderdev not set, will probe all devices. Found U-Boot device: disk Probing all disk devices... Checking unit=0 slice=<auto> partition=<auto>...disk0: read failed, error=1 Checking unit=1 slice=<auto> partition=<auto>... good. Booting from disk1s2a: Loading /boot/defaults/loader.conf /boot/kernel/kernel text=0x1b4 text=0x71add0 text=0x197b88 data=0x88f6c data=0x0+0x50000 syms=[0x4+0x94540+0x4+0xec78c] - Hit [Enter] to boot immediately, or any other key for command prompt. Booting [/boot/kernel/kernel]... No valid device tree blob found! Type '?' for a list of commands, 'help' for more detailed help.
-
Hmm, it finds the USB drive and is able to load ubldr.bin from it. It boots the kernel form it but can't find the dtb file. At least not the one it's looking for.
Try this, at the
Marvell>>
prompt runprintenv
see if it's lost the correct dtb name.Steve
-
@stephenw10 here it is
Marvell>> printenv CASset=max MALLOC_len=10 MPmode=SMP autoload=no baudrate=115200 boardpn=80500-0148-G00 boardrev=R310 boardsn=XXXXXXX boot_from_pxe=0 boot_order=hd_scr usb_scr mmc_scr hd_img usb_img mmc_img pxe net_img net_scr bootargs=console=ttyS0,115200 mtdparts=spi_flash:4m(boot),-(spi-rootfs) root=/dev/nfs rw nfsroot=10.4.50.38:/srv/nfs/ ip=10.4.50.170:10.4.50.38:10.4.50.254:255.255.255.0:Armada38x:eth0:none mv_net_config=4,(00:50:43:11:11:11,0:1:2:3),mtu=1500 video=dovefb:lcd0:640x480-16@60 clcd.lcd0_enable=0 clcd.lcd_panel=0 bootargs_dflt=$console $nandEcc $mtdparts_lgcy $bootargs_root nfsroot=$serverip:$rootpath ip=$ipaddr:$serverip$bootargs_end $mvNetConfig video=dovefb:lcd0:$lcd0_params clcd.lcd0_enable=$lcd0_enable clcd.lcd_panel=$lcd_panel bootargs_end=:$gatewayip:255.255.255.0:Armada38x:$netdev:none bootargs_root=root=/dev/nfs rw bootcmd=run setLED; run emmcboot; bootcmd_auto=setenv bootargs_end :$gatewayip:255.255.255.0:Armada:$netdev:none; stage_boot $boot_order bootcmd_fdt=setenv bootargs_end :$gatewayip:255.255.255.0:Armada:$netdev:none; tftpboot 0x2000000 $image_name;tftpboot $fdtaddr $fdtfile;setenv bootargs $console $nandEcc $mtdparts $bootargs_root nfsroot=$serverip:$rootpath ip=$ipaddr:$serverip$bootargs_end $mvNetConfig video=dovefb:lcd0:$lcd0_params clcd.lcd0_enable=$lcd0_enable clcd.lcd_panel=$lcd_panel; bootz 0x2000000 - $fdtaddr; bootcmd_fdt_boot=setenv bootargs_end :$gatewayip:255.255.255.0:Armada:$netdev:none; tftpboot 0x2000000 $image_name; setenv bootargs $console $nandEcc $mtdparts $bootargs_root nfsroot=$serverip:$rootpath ip=$ipaddr:$serverip$bootargs_end $mvNetConfig video=dovefb:lcd0:$lcd0_params clcd.lcd0_enable=$lcd0_enable clcd.lcd_panel=$lcd_panel; bootz 0x2000000 - $fdtaddr; bootcmd_fdt_edit=setenv bootargs_end :$gatewayip:255.255.255.0:Armada:$netdev:none; tftpboot $fdtaddr $fdtfile; fdt addr $fdtaddr; setenv bootcmd $bootcmd_fdt_boot bootcmd_ftenv=bootargs_end :10.4.50.254:255.255.255.0:Armada:eth0:none bootcmd_lgcy=setenv bootargs_end :$gatewayip:255.255.255.0:Armada:$netdev:none; tftpboot 0x2000000 $image_name;setenv bootargs $console $nandEcc $mtdparts_lgcy $bootargs_root nfsroot=$serverip:$rootpath ip=$ipaddr:$serverip$bootargs_end video=dovefb:lcd0:$lcd0_params clcd.lcd0_enable=$lcd0_enable clcd.lcd_panel=$lcd_panel; bootm $loadaddr; bootdelay=3 cacheShare=no console=console=ttyS0,115200 device_partition=0:1 disaMvPnp=no eeeEnable=no emmcboot=fatload mmc 0:1 200000 ubldr.bin; go 200000; enaClockGating=no enaCpuStream=no enaFPU=yes enaMonExt=no enaWrAllo=no eth1addr=xx:xx:xx:xx:xx eth1mtu=1500 eth2addr=xx:xx:xx:xx:xx eth2mtu=1500 eth3addr=xx:xx:xx:xx:xx eth3mtu=1500 ethact=egiga0 ethaddr=xx:xx:xx:xx:xx ethmtu=1500 ethprime=egiga0 factory=setenv autoload yes; bootp; go $loadaddr; fdt_addr=2040000 fdt_skip_update=yes fdtaddr=0x1000000 fdtfile=armada-38x.dtb ftboot=sleep 2; scsi init; sleep 2; setenv bootargs root=/dev/sda1 rootfstype=ext4 rootwait rw raid=noautodetect init=/sbin/init; ext4load scsi 0:1 ${fdtaddr} /boot/rogue-1.dtb; ext4load scsi 0:1 ${loadaddr} /boot/zImage; bootz ${loadaddr} - ${fdtaddr}; gatewayip=10.4.50.254 ide_path=/ image_name=zImage initrd_name=uInitrd ipaddr=10.4.50.170 kernel_addr_r=2080000 lcd0_enable=0 lcd0_params=640x480-16@60 lcd_panel=0 limit_dram_size=yes loadaddr=0x02000000 loads_echo=0 m2boot=scsi reset; fatload scsi 0:$m2dev 200000 ubldr.bin; go 200000; m2dev=1 mtdids=spi0=spi_flash mtdparts=mtdparts=spi0.0:4m(boot),-(spi-rootfs) mtdparts_lgcy=mtdparts=spi_flash:4m(boot),-(spi-rootfs) mvNetConfig=mv_net_config=4,(00:50:43:11:11:11,0:1:2:3),mtu=1500 mv_pon_addr=xx:xx:xx:xx:xx netbsd_en=no netdev=eth0 netmask=255.255.255.0 netretry=no pcieTune=no pexMode=RC pxe_files_load=:default.arm-armadaxp-db:default.arm-armadaxp:default.arm pxefile_addr_r=3000000 ramdisk_addr_r=2880000 recovery=usb start; fatload usb 0:1 200000 ubldr.bin; go 200000; rootpath=/srv/nfs/ run_script=no sata_delay_reset=0 sata_dma_mode=yes script_addr_r=3000000 script_name=boot.scr sd_detection_dat3=no serverip=10.4.50.38 setLED=i2c mw 67 ff 0; i2c mw 67 0 1; i2c mw 67 f 35; i2c mw 67 3 40; i2c mw 67 26 0; i2c mw 67 10 0 skip_switch_pci_scan=no standalone=fsload 0x2000000 $image_name;setenv bootargs $console $nandEcc $mtdparts_lgcy root=/dev/mtdblock0 rw ip=$ipaddr:$serverip$bootargs_end; bootm 0x2000000; stderr=serial stdin=serial stdout=serial usb0Mode=host usbActive=1 usbType=3 vxworks_en=no yuk_ethaddr=xx:xx:xx:xx:xx Environment size: 4649/65532 bytes Marvell>>
-
Ah, OK. Yup the envs are missing. Let me have TAC reach out to you again....
-
Hmm, that's odd it's actually only the ftdfile env that appears to be wrong.
OK try this. At the Marvell prompt run:
setenv fdtfile armada-385-80300-0148-G00-X100.dtb saveenv reset
Try to boot from USB again.
-
@stephenw10 you're a genius !!!!!!! that did it now let's see if I can configure it and it sticks and doens't do anything else funny. Do you know what might have caused that?
-
No, it's odd. The only time we ever see that sort of issue on the 3100 is it's unable to read the uboot envs and resets them to the default values. I assumed that might have happened when I saw the fdtname was incorrect but after checking everything else is correct.
The only way I could do that would be manually at the uboot prompt but I can't imagine you did that!Steve
-
I edited your post to obscure the serial and MACs FYI.
-
@stephenw10 thanks so much for your help you're a life saver. I was pretty bummed thinking I got scammed when I bought this as "new" and it's in pretty new condition.
Cheers,
-
Great result. The MAC addresses you have there should be sequential and I don't believe they were. If you don't see sequential MACs in pfSense you might want to open a new ticket with support and get the full set of uboot envs for your specific device to be sure.
Steve