From nobody Wed Jun 29 09:06:14 2022 X-Original-To: freebsd-arm@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 22B6886ECD6 for ; Wed, 29 Jun 2022 09:07:25 +0000 (UTC) (envelope-from bproffit@amaranth.digital) Received: from mail.amaranth.digital (mail.amaranth.digital [66.23.237.42]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 4LXwZz5gdzz3KrC for ; Wed, 29 Jun 2022 09:07:23 +0000 (UTC) (envelope-from bproffit@amaranth.digital) Received: from [192.168.1.32] (unknown [73.83.240.71]) by mail.amaranth.digital (Postfix) with ESMTPSA id 2DD93FBBB2 for ; Tue, 28 Jun 2022 22:08:23 -0400 (EDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=amaranth.digital; s=amaranth; t=1656468504; bh=STIreOzpdsxZSXuBMjAGz7G08mgk7m4uqnmiYPzesLI=; h=Date:To:From:Subject; b=eoIL2xULnmAjzyeltUyA8BV5hHJ6Pe2EKrn0BW4Ww7hMne01sI0jvQ+MVed81iohM Iw3YXtnoDCVp++OtIiz1aGxuBVoSXlOn+/3zj9FDwZ41SU8ZjqAyRJSDrnKH1xmpNs 7gvF1BQo+mgMfZIolR8whJkSmIz1ErHe9BBsd8muIJDI7yb/X7S4+m8WKID0tVGMRC jFmeCQe0OpSetpvDv8ps80+PsbxpRlPYS502O13xxxR/Ayno8r8l2uVKKhpcIt7/HA DY7/7EPBHyZ5mdHWJIvmiBLve9wcDW/7oM7jwReZgT05ToO41xjoYyvohf8C48LJAA 6m7xU4wohGfPw== Content-Type: multipart/alternative; boundary="------------c268bajFDQH6Lt4n6MzfzKaV" Message-ID: <12609da5-c560-f336-762f-32fc5fa71d48@amaranth.digital> Date: Wed, 29 Jun 2022 02:06:14 -0700 List-Id: Porting FreeBSD to ARM processors List-Archive: https://lists.freebsd.org/archives/freebsd-arm List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-freebsd-arm@freebsd.org MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:91.0) Gecko/20100101 Thunderbird/91.10.0 To: freebsd-arm@freebsd.org Content-Language: en-US From: Bradley Proffit Subject: U-Boot fails to load from SD when a USB dual HDD device is attached X-Spam-Status: No, score=5.8 required=10.0 tests=DATE_IN_FUTURE_06_12, HTML_MESSAGE,RCVD_IN_PBL,RCVD_IN_SORBS_DUL,RDNS_NONE,SPF_SOFTFAIL, T_SCC_BODY_TEXT_LINE autolearn=no autolearn_force=no version=3.4.5 X-Spam-Level: ***** X-Spam-Checker-Version: SpamAssassin 3.4.5 (2021-03-20) on mail.amaranth.digital X-Rspamd-Queue-Id: 4LXwZz5gdzz3KrC X-Spamd-Bar: ---- Authentication-Results: mx1.freebsd.org; dkim=pass header.d=amaranth.digital header.s=amaranth header.b=eoIL2xUL; dmarc=pass (policy=none) header.from=amaranth.digital; spf=pass (mx1.freebsd.org: domain of bproffit@amaranth.digital designates 66.23.237.42 as permitted sender) smtp.mailfrom=bproffit@amaranth.digital X-Spamd-Result: default: False [-4.00 / 15.00]; RCVD_VIA_SMTP_AUTH(0.00)[]; ARC_NA(0.00)[]; R_DKIM_ALLOW(-0.20)[amaranth.digital:s=amaranth]; MID_RHS_MATCH_FROM(0.00)[]; FROM_HAS_DN(0.00)[]; TO_MATCH_ENVRCPT_ALL(0.00)[]; R_SPF_ALLOW(-0.20)[+a:mail.amaranth.digital]; MIME_GOOD(-0.10)[multipart/alternative,text/plain]; TO_DN_NONE(0.00)[]; PREVIOUSLY_DELIVERED(0.00)[freebsd-arm@freebsd.org]; RCPT_COUNT_ONE(0.00)[1]; NEURAL_HAM_LONG(-1.00)[-1.000]; NEURAL_HAM_MEDIUM(-1.00)[-1.000]; DKIM_TRACE(0.00)[amaranth.digital:+]; DMARC_POLICY_ALLOW(-0.50)[amaranth.digital,none]; NEURAL_HAM_SHORT(-1.00)[-1.000]; MLMMJ_DEST(0.00)[freebsd-arm]; FROM_EQ_ENVFROM(0.00)[]; MIME_TRACE(0.00)[0:+,1:+,2:~]; ASN(0.00)[asn:19318, ipnet:66.23.224.0/20, country:US]; RCVD_COUNT_TWO(0.00)[2]; RCVD_TLS_ALL(0.00)[]; RECEIVED_SPAMHAUS_PBL(0.00)[73.83.240.71:received] X-ThisMailContainsUnwantedMimeParts: N This is a multi-part message in MIME format. --------------c268bajFDQH6Lt4n6MzfzKaV Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit I'm running FreeBSD 13.1 on the Raspberry Pi 4B, with a new dual SATA-to-USB hard drive docking station, and I've noticed a peculiar situation: U-Boot fails to load FreeBSD from the SD card when the docking station is plugged in and has two hard drives in it (presenting two USB storage devices to U-Boot), but still succeeds when: 1. the device is not attached; 2. the device is attached but only has one hard drive in it, presenting one USB storage device to U-Boot; 3. when the device with one hard drive in it, and another USB storage device, such as a flash drive, are plugged in. Any clue what might be causing this problem? I wonder if this might be an issue with voltage sag/over-voltage on the USB interface causing the SD card not to select, or something similar, although the docking station has its own power supply and so should not be drawing a substantial current from the pi. I've included what errors I collected through the serial interface. U-Boot 2021.07 (May 12 2022 - 07:00:33 +0000) DRAM:  3.9 GiB RPI 4 Model B (0xc03112) MMC:   mmc@7e300000: 3, emmc2@7e340000: 0 Loading Environment from FAT... In:    serial Out:   vidconsole Err:   vidconsole Net:   eth0: ethernet@7d580000 PCIe BRCM: link up, 5.0 Gbps x1 (SSC) starting USB... Bus xhci_pci: Register 5000420 NbrPorts 5 Starting the controller USB XHCI 1.00 scanning bus xhci_pci for devices... 3 USB Device(s) found        scanning usb for storage devices... 2 Storage Device(s) found Hit any key to stop autoboot:  0 U-Boot> boot switch to partitions #0, OK mmc0 is current device Scanning mmc 0:1... libfdt fdt_check_header(): FDT_ERR_BADMAGIC Scanning disk mmc@7e300000.blk... Disk mmc@7e300000.blk not ready Scanning disk emmc2@7e340000.blk... ** Unrecognized filesystem type ** ... run bootcmd switch to partitions #0, OK mmc0 is current device Couldn't find partition dhcp 0:1 MMC Device 1 not found no mmc device at slot 1 MMC Device 2 not found no mmc device at slot 2 Device 0: Vendor: ASMT     Rev: 0    Prod: ASM1156-PM             Type: Hard Disk             Capacity: 305245.3 MB = 298.0 GB (625142448 x 512) ... is now current device Couldn't find partition dhcp 0:1 BOOTP broadcast 1 BOOTP broadcast 2 DHCP client bound to address 192.168.1.33 (1246 ms) *** ERROR: `serverip' not set Cannot autoload with TFTPGET missing environment variable: pxeuuid Retrieving file: pxelinux.cfg/01-dc-a6-32-90-1f-1e *** ERROR: `serverip' not set Retrieving file: pxelinux.cfg/C0A80121 *** ERROR: `serverip' not set Retrieving file: pxelinux.cfg/C0A8012 *** ERROR: `serverip' not set Retrieving file: pxelinux.cfg/C0A801 *** ERROR: `serverip' not set Retrieving file: pxelinux.cfg/C0A80 *** ERROR: `serverip' not set Retrieving file: pxelinux.cfg/C0A8 *** ERROR: `serverip' not set Retrieving file: pxelinux.cfg/C0A *** ERROR: `serverip' not set Retrieving file: pxelinux.cfg/C0 *** ERROR: `serverip' not set Retrieving file: pxelinux.cfg/C *** ERROR: `serverip' not set Retrieving file: pxelinux.cfg/default-arm-bcm283x-rpi *** ERROR: `serverip' not set Retrieving file: pxelinux.cfg/default-arm-bcm283x *** ERROR: `serverip' not set Retrieving file: pxelinux.cfg/default-arm *** ERROR: `serverip' not set Retrieving file: pxelinux.cfg/default *** ERROR: `serverip' not set Config file not found BOOTP broadcast 1 BOOTP broadcast 2 DHCP client bound to address 192.168.1.33 (907 ms) *** ERROR: `serverip' not set Cannot autoload with TFTPGET BOOTP broadcast 1 BOOTP broadcast 2 DHCP client bound to address 192.168.1.33 (1312 ms) *** ERROR: `serverip' not set Cannot autoload with TFTPGET U-Boot> Thanks! Bradley --------------c268bajFDQH6Lt4n6MzfzKaV Content-Type: text/html; charset=UTF-8 Content-Transfer-Encoding: 8bit

I'm running FreeBSD 13.1 on the Raspberry Pi 4B, with a new dual SATA-to-USB hard drive docking station, and I've noticed a peculiar situation: U-Boot fails to load FreeBSD from the SD card when the docking station is plugged in and has two hard drives in it (presenting two USB storage devices to U-Boot), but still succeeds when:

  1. the device is not attached;
  2. the device is attached but only has one hard drive in it, presenting one USB storage device to U-Boot;
  3. when the device with one hard drive in it, and another USB storage device, such as a flash drive, are plugged in.

Any clue what might be causing this problem? I wonder if this might be an issue with voltage sag/over-voltage on the USB interface causing the SD card not to select, or something similar, although the docking station has its own power supply and so should not be drawing a substantial current from the pi.

I've included what errors I collected through the serial interface.


U-Boot 2021.07 (May 12 2022 - 07:00:33 +0000)

DRAM:  3.9 GiB
RPI 4 Model B (0xc03112)
MMC:   mmc@7e300000: 3, emmc2@7e340000: 0
Loading Environment from FAT... In:    serial
Out:   vidconsole
Err:   vidconsole
Net:   eth0: ethernet@7d580000
PCIe BRCM: link up, 5.0 Gbps x1 (SSC)
starting USB...
Bus xhci_pci: Register 5000420 NbrPorts 5
Starting the controller
USB XHCI 1.00
scanning bus xhci_pci for devices... 3 USB Device(s) found
       scanning usb for storage devices... 2 Storage Device(s) found
Hit any key to stop autoboot:  0
U-Boot> boot
switch to partitions #0, OK
mmc0 is current device
Scanning mmc 0:1...
libfdt fdt_check_header(): FDT_ERR_BADMAGIC
Scanning disk mmc@7e300000.blk...
Disk mmc@7e300000.blk not ready
Scanning disk emmc2@7e340000.blk...
** Unrecognized filesystem type **

...

run bootcmd
switch to partitions #0, OK
mmc0 is current device
Couldn't find partition dhcp 0:1
MMC Device 1 not found
no mmc device at slot 1
MMC Device 2 not found
no mmc device at slot 2

Device 0: Vendor: ASMT     Rev: 0    Prod: ASM1156-PM      
            Type: Hard Disk
            Capacity: 305245.3 MB = 298.0 GB (625142448 x 512)
... is now current device
Couldn't find partition dhcp 0:1
BOOTP broadcast 1
BOOTP broadcast 2
DHCP client bound to address 192.168.1.33 (1246 ms)
*** ERROR: `serverip' not set
Cannot autoload with TFTPGET
missing environment variable: pxeuuid
Retrieving file: pxelinux.cfg/01-dc-a6-32-90-1f-1e
*** ERROR: `serverip' not set
Retrieving file: pxelinux.cfg/C0A80121
*** ERROR: `serverip' not set
Retrieving file: pxelinux.cfg/C0A8012
*** ERROR: `serverip' not set
Retrieving file: pxelinux.cfg/C0A801
*** ERROR: `serverip' not set
Retrieving file: pxelinux.cfg/C0A80
*** ERROR: `serverip' not set
Retrieving file: pxelinux.cfg/C0A8
*** ERROR: `serverip' not set
Retrieving file: pxelinux.cfg/C0A
*** ERROR: `serverip' not set
Retrieving file: pxelinux.cfg/C0
*** ERROR: `serverip' not set
Retrieving file: pxelinux.cfg/C
*** ERROR: `serverip' not set
Retrieving file: pxelinux.cfg/default-arm-bcm283x-rpi
*** ERROR: `serverip' not set
Retrieving file: pxelinux.cfg/default-arm-bcm283x
*** ERROR: `serverip' not set
Retrieving file: pxelinux.cfg/default-arm
*** ERROR: `serverip' not set
Retrieving file: pxelinux.cfg/default
*** ERROR: `serverip' not set
Config file not found
BOOTP broadcast 1
BOOTP broadcast 2
DHCP client bound to address 192.168.1.33 (907 ms)
*** ERROR: `serverip' not set
Cannot autoload with TFTPGET
BOOTP broadcast 1
BOOTP broadcast 2
DHCP client bound to address 192.168.1.33 (1312 ms)
*** ERROR: `serverip' not set
Cannot autoload with TFTPGET
U-Boot> 


Thanks!

Bradley

--------------c268bajFDQH6Lt4n6MzfzKaV--