I'm running FreeBSD 7.0 on a soekris 4801 with an image built by nanobsd. It's a small piece of headless hardware that boots from a compact flash drive - no moving parts.

I wanted to update the operating system to 7.1 and install some more packages on it, so I built a new image with nanobsd and uploaded it to the second partition using nanobsd's updatep2 tool. The new image mounts fine, but the last line of updatep2, "boot0cfg -s 2 -v ${NANO_DRIVE}" fails with the message I've quoted in the subject line.

The machine boots fine, but I can't provoke any kind of response from boot0cfg except for input/output errors. I'd like to make the machine start booting from the second slice.

Any ideas?

More information...

The number of heads that the "diskinfo" reports is different depending on whether the compact flash card is plugged into the soekris box or mounted in a USB card reader/writer.

The usb reader/writer reports:
da0
        512             # sectorsize
        2052513792      # mediasize in bytes (1.9G)
        4008816         # mediasize in sectors
        249             # Cylinders according to firmware.
        255             # Heads according to firmware.
        63              # Sectors according to firmware.
The soekris box reports:
ad1
        512             # sectorsize
        2052513792      # mediasize in bytes (1.9G)
        4008816         # mediasize in sectors
        3977            # Cylinders according to firmware.
        16              # Heads according to firmware.
        63              # Sectors according to firmware.

This is the same compact flash card.

I gave up on boot0cfg and booting from the second partition, so I took the compact flash card out of the soekris box, connected it to my workstation with a USB card reader, and wrote a whole new image to it.

Even after doing this, boot0cfg still won't work. I noticed some new messages on the console when I tried "boot0cfg -v ad1":

ata0: FAILURE - non aligned DMA transfer attempted
ad1: setting up DMA failed
boot0cfg: read /dev/ad1: Input/output error

ad1 is attached to ata0, per dmesg:
ad1: 1957MB <LEXAR ATA FLASH CARD 20060911> at ata0-slave WDMA2

I think this means there is some kind of geometry problem here, but I don't know how to fix it.
I'd like to find a solution to this, but it's not critical.
_______________________________________________
freebsd-questions@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-questions
To unsubscribe, send any mail to "freebsd-questions-unsubscr...@freebsd.org"

Reply via email to