From owner-freebsd-questions@FreeBSD.ORG Tue Sep 15 11:59:12 2009 Return-Path: Delivered-To: freebsd-questions@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id B9424106566C for ; Tue, 15 Sep 2009 11:59:12 +0000 (UTC) (envelope-from maksverver@geocities.com) Received: from mx.utwente.nl (mx3.utsp.utwente.nl [130.89.2.14]) by mx1.freebsd.org (Postfix) with ESMTP id 40BDB8FC5C for ; Tue, 15 Sep 2009 11:59:11 +0000 (UTC) Received: from heaven.student.utwente.nl (heaven.student.utwente.nl [130.89.167.52]) by mx.utwente.nl (8.12.10/SuSE Linux 0.7) with ESMTP id n8FBffxx027730 for ; Tue, 15 Sep 2009 13:41:41 +0200 Message-ID: <4AAF7D75.8080805@geocities.com> Date: Tue, 15 Sep 2009 13:41:41 +0200 From: Maks Verver User-Agent: Thunderbird 2.0.0.23 (X11/20090827) MIME-Version: 1.0 To: freebsd-questions@freebsd.org Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit X-UTwente-MailScanner-Information: Scanned by MailScanner. Contact icts.servicedesk@utwente.nl for more information. X-UTwente-MailScanner: Found to be clean X-UTwente-MailScanner-From: maksverver@geocities.com X-Spam-Status: No Subject: Re: Can't boot Marvel Sheevaplug from USB X-BeenThere: freebsd-questions@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: User questions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 15 Sep 2009 11:59:12 -0000 Hi everyone, I'm also playing with a Sheevaplug and I'm running into the same problem as reported by Rafal Jaworowski, but I think I have a clearer picture of what goes wrong. To recap, the kernel fails to mount the root filesystem because the partition on the USB stick isn't recognized by the kernel: FreeBSD 9.0-CURRENT #4: Mon Sep 14 19:57:10 CEST 2009 -- blablabla -- ugen0.1: at usbus0 uhub0: on usbus0 uhub0: 1 port with 1 removable, self powered Root mount waiting for: usbus0 ugen0.2: at usbus0 umass0: on usbus0 umass0: SCSI over Bulk-Only; quirks = 0x0000 Root mount waiting for: usbus0 umass0:0:0:-1: Attached to scbus0 Trying to mount root from ufs:/dev/da0s1a ROOT MOUNT ERROR: I think the problem is that the partition is detected only after the USB bus has been scanned. If I configure a kernel to boot from the network instead, it does recognize the USB device because of the additional delay involved in booting from the network: FreeBSD 9.0-CURRENT #5: Mon Sep 14 20:45:30 CEST 2009 -- blablabla -- ugen0.1: at usbus0 uhub0: on usbus0 uhub0: 1 port with 1 removable, self powered mge0: link state changed to UP Received DHCP Offer packet on mge0 from 130.89.1.145 via 130.89.160.4 (accepted) (no root path) Received DHCP Offer packet on mge0 from 130.89.1.144 via 130.89.160.5 (ignored) (no root path) ugen0.2: at usbus0 umass0: on usbus0 umass0: SCSI over Bulk-Only; quirks = 0x0000 umass0:0:0:-1: Attached to scbus0 (probe0:umass-sim0:0:0:0): TEST UNIT READY. CDB: 0 0 0 0 0 0 (probe0:umass-sim0:0:0:0): CAM Status: SCSI Status Error (probe0:umass-sim0:0:0:0): SCSI Status: Check Condition (probe0:umass-sim0:0:0:0): UNIT ATTENTION asc:28,0 (probe0:umass-sim0:0:0:0): Not ready to ready change, medium may have changed (probe0:umass-sim0:0:0:0): (probe0:umass-sim0:0:0:0): TEST UNIT READY. CDB: 0 0 0 0 0 0 (probe0:umass-sim0:0:0:0): UNIT ATTENTION asc:28,0 (probe0:umass-sim0:0:0:0): Not ready to ready change, medium may have changed Retrying Command (per Sense Data) (probe0:umass-sim0:0:0:0): Retrying Command pass0 at umass-sim0 bus 0 scbus0 target 0 lun 0 pass0: < USB Flash Memory 1.00> Removable Direct Access SCSI-2 device pass0: Serial Number 0612140557130 pass0: 40.000MB/s transfers GEOM: new disk da0 da0 at umass-sim0 bus 0 scbus0 target 0 lun 0 da0: < USB Flash Memory 1.00> Removable Direct Access SCSI-2 device da0: Serial Number 0612140557130 da0: 40.000MB/s transfers da0: 962MB (1971200 512 byte sectors: 64H 32S/T 962C) Of course with the kernel configured like this, the kernel wants to mount the root filesystem from NFS and I can't break into the mountroot> prompt! It seems that the kernel assumes that it only needs to wait for the USB bus to finish scanning and then expects the root partition to be available, but apparently partitions can be detected after that. Does anyone have a suggestion how to deal with this? Is there a way to insert a delay before trying to mount root? (I tried setting SCSI_DELAY to 5000 but this didn't seem to have any effect -- I didn't notice any delay. Maybe this isn't supported for the ARM architecture?) Kind regards, Maks Verver.