Thanks for advices! --- On Mon, 11/15/10, Freddie Cash <fjwc...@gmail.com> wrote:
> From: Freddie Cash <fjwc...@gmail.com> > Subject: Re: booting from CF > To: "FreeBSD Stable" <freebsd-stable@freebsd.org> > Date: Monday, November 15, 2010, 6:32 PM > On Mon, Nov 15, 2010 at 7:05 AM, > Alexander Motin <m...@freebsd.org> > wrote: > > Kirill Yelizarov wrote: > >> I have a problem with booting 8.1-stable from > compact flash. This maybe some speed selection issue. I have > two verbose dmesg of the same hardware: 7.2 stable and > 8.1-stable. The main difference in 7.2 is such message: > >> ad0: setting PIO4 on ICH5 chip > >> ad0: FAILURE - SET_MULTI > status=51<READY,DSC,ERROR> error=4<ABORTED> > >> ad0: 3887MB <TRANSCEND 20081024> at > ata0-master PIO4 > >> But 7.2 starts and run. > >> And 8.1 stable when trying to mount root shows the > following > >> Trying to mount root from ufs:/dev/ad0p2 > >> ct_to_ts([2010-11-15 12:41:03]) = > 1289824863.000000000 > >> start_init: trying /sbin/init > >> Nov 15 15:41:03 init: /bin/sh on /etc/rc > terminated abnormally, going to singlee > >> Enter full pathname of shell or RETURN for > /bin/sh: > >> And then i can only switch if off using acpi or > just power off. > >> > >> I know there were changes in ata. Maybe there are > some tunings available to select PIO4 (most cf are using > it)? > > > > In 8-STABLE there were added tunables > hint.ata.X.devX.mode and > > hint.ata.X.mode to set ATA mode during boot. Before > that - only > > hw.ata.ata_dma. I tried to add hint.ata.0.mode="PIO4", hint.ata.0.ad0.mode="PIO4" and PIO1,UDMA0,UDMA1 to /boot/device.hints and /boot/loader.conf. I saw controller was switching from one mode to another but no success. Here is the ata part from 8-stable dmesg: /boot/kernel/kernel text=0x51a220 data=0x521d4+0x77b90 syms=[0x4+0x64940+0x4+0]\ Data TLB: 4 KB or 4 MB pages, fully associative, 64 entries 1st-level data cache: 16 KB, 8-way set associative, sectored cache, 64 byte line pnpbios: Found PnP BIOS data at 0xc00f3e90 atapci0: <Intel ICH5 UDMA100 controller> port 0x1f0-0x1f7,0x3f6,0x170-0x177,0x30 atapci0: Reserved 0x10 bytes for rid 0x20 type 4 at 0xffa0 ata0: <ATA channel 0> on atapci0 atapci0: Reserved 0x8 bytes for rid 0x10 type 4 at 0x1f0 atapci0: Reserved 0x1 bytes for rid 0x14 type 4 at 0x3f6 ata0: reset tp1 mask=03 ostat0=50 ostat1=00 ata0: stat0=0x50 err=0x01 lsb=0x00 msb=0x00 ata0: stat1=0x00 err=0x01 lsb=0x00 msb=0x00 ata0: reset tp2 stat0=50 stat1=00 devices=0x1 ata0: [MPSAFE] ata0: [ITHREAD] ata1: <ATA channel 1> on atapci0 atapci0: Reserved 0x8 bytes for rid 0x18 type 4 at 0x170 atapci0: Reserved 0x1 bytes for rid 0x1c type 4 at 0x376 ata1: reset tp1 mask=03 ostat0=00 ostat1=00 ata1: stat0=0x00 err=0x00 lsb=0x00 msb=0x00 ata1: stat1=0x00 err=0x00 lsb=0x00 msb=0x00 ata1: reset tp2 stat0=00 stat1=00 devices=0x0 ata1: [MPSAFE] ata1: [ITHREAD] atapci1: <Intel ICH5 SATA150 controller> port 0xec00-0xec07,0xe800-0xe803,0xe400 atapci1: Reserved 0x10 bytes for rid 0x20 type 4 at 0xdc00 atapci1: [MPSAFE] atapci1: [ITHREAD] ata2: <ATA channel 0> on atapci1 atapci1: Reserved 0x8 bytes for rid 0x10 type 4 at 0xec00 atapci1: Reserved 0x4 bytes for rid 0x14 type 4 at 0xe800 ata2: reset tp1 mask=01 ostat0=80 ostat1=00 ata2: stat0=0x50 err=0x01 lsb=0x00 msb=0x00 ata2: reset tp2 stat0=50 stat1=00 devices=0x1 ata2: [MPSAFE] ata2: [ITHREAD] ata3: <ATA channel 1> on atapci1 atapci1: Reserved 0x8 bytes for rid 0x18 type 4 at 0xe400 atapci1: Reserved 0x4 bytes for rid 0x1c type 4 at 0xe000 ata3: reset tp1 mask=01 ostat0=7f ostat1=00 ata3: stat0=0x7f err=0xff lsb=0xff msb=0xff ata3: stat0=0x7f err=0xff lsb=0xff msb=0xff ata3: stat0=0x7f err=0xff lsb=0xff msb=0xff ata3: stat0=0x7f err=0xff lsb=0xff msb=0xff ata3: stat0=0x7f err=0xff lsb=0xff msb=0xff ata3: stat0=0x7f err=0xff lsb=0xff msb=0xff ata3: stat0=0x7f err=0xff lsb=0xff msb=0xff ata3: stat0=0x7f err=0xff lsb=0xff msb=0xff ata3: stat0=0x7f err=0xff lsb=0xff msb=0xff ata3: stat0=0x7f err=0xff lsb=0xff msb=0xff ata3: stat0=0x7f err=0xff lsb=0xff msb=0xff ata3: stat0=0x7f err=0xff lsb=0xff msb=0xff ata3: reset tp2 stat0=ff stat1=00 devices=0x0 ata3: [MPSAFE] ata3: [ITHREAD] ata: ata0 already exists; skipping it ata: ata1 already exists; skipping it ata0: Identifying devices: 00000001 ata0: New devices: 00000001 ata0-master: pio=PIO4 wdma=WDMA2 udma=UDMA66 cable=80 wire ad0: 3887MB <TRANSCEND 20090520> at ata0-master PIO4 ata1: Identifying devices: 00000000 ata1: New devices: 00000000 ata2: Identifying devices: 00000001 ata2: New devices: 00000001 ata2-master: pio=PIO4 wdma=WDMA2 udma=UDMA133 cable=40 wire ad4: 305245MB <Seagate ST3320613AS CC2J> at ata2-master PIO4 SATA ata3: Identifying devices: 00000000 ata3: New devices: 00000000 In 7.2 there is a line FAILURE - SET_MULTI status=51<READY,DSC,ERROR> error=4<ABORTED> and there is no such line in 8. Can i switch off this mode somehow in 8? Or is it already switched off? Also is it possible to tell the controller i have a 40 wires cable? This motherboard Intel S875WP1-E doesn't have a pin to detect what kind of cable is attached. But kernel is downloaded successfully and the problem occurs when running init. And 7.2 is running too. > > > >> P.S. I have two verbose dmesg but they are rather > big. If needed i can post them hear. > > > > Verbose dmesg could be useful in many cases. Better > upload it somewhere > > else and post a link here. > > On our 7.3 and 8.1 boxes, I've had to disable DMA in the > BIOS and via > /boot/loader.conf in order to successfully boot off 2 GB > and 4 GB > CompactFlash cards, in CF-to-IDE and CF-to-SATA adapters. > I always set this for cf-to-pata controller and never for cf-to-sata hw.ata.wc="0" hw.ata.atapi_dma="0" hw.ata.ata_dma_check_80pin="0" hw.ata.ata_dma="0" > > -- > Freddie Cash > fjwc...@gmail.com > _______________________________________________ > freebsd-stable@freebsd.org > mailing list > http://lists.freebsd.org/mailman/listinfo/freebsd-stable > To unsubscribe, send any mail to "freebsd-stable-unsubscr...@freebsd.org" > _______________________________________________ freebsd-stable@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/freebsd-stable To unsubscribe, send any mail to "freebsd-stable-unsubscr...@freebsd.org"