UDMA with CS5530 using IBM Netvista N2200 (8363)
Hello,
I have been trying to compile kernel 2.6.24.7 to boot from an IBM Netvista N220 (8363) http://jeanchristophe.duber.free.fr/netvista_8363/
however, some people points that the IDE DMA driver is broken
(http://www.selfservix.org/n2200.htm).
For sure, i cannot have the kernel option "Cyrix/National Semiconductor CS5530 MediaGX chipset support (BLK_DEV_CS5530)" enabled, or the Netvista will complain with the messages bellow, using kernel 2.6.24.7 (i haven't used any more recent kernel because since kernel 2.6.24.7 they just fail to boot in Netvista 8363).
...
ide: Assuming 33MHz system bus speed for PIO modes; override with idebus=xx
CS5530: IDE controller (0x1078:0x0102 rev 0x00) at PCI slot 0000:00:12.2
CS5530: not 100% native mode: will probe irqs later
ide0: BM-DMA at 0xfc00-0xfc07, BIOS settings: hda:pio, hdb:pio
ide1: BM-DMA at 0xfc08-0xfc0f, BIOS settings: hdc:pio, hdd:piohda: SILICON POWER, ATA DISK drive
hda: UDMA/33 mode selected
ide0 at 0x1f0-0x1f7,0x3f6 on irq 14
hda: max request size: 128KiB
hda: 2000880 sectors (1024 MB) w/2KiB Cache, CHS=1985/16/63
hda:<4>hda: dma_timer_expiry: dma status == 0x20
hda: DMA timeout retry
hda: timeout waiting for DMA
hda: status error: status=0x58 { DriveReady SeekComplete DataRequest }
ide: failed opcode was: unknown
hda: drive not ready for command
ide0: reset: success
Clocksource tsc unstable (delta = 119999355 ns)
time: pit clocksource has been installed.
hda: irq timeout: status=0xd0 { Busy }
ide: failed opcode was: unknown
ide0: reset timed-out: status=0x80
hda: status timeout: status=0x80 { Busy }
ide: failed opcode was: unknownend_request: I/O error, dev hda, sector 0
Buffer I/O error on device hda, logical block 0
hda: drive not ready for command
hda: status timeout: status=0x80 { Busy }
ide: failed opcode was: unknown
hda: DMA disabled
hda: drive not ready for command
ide0: reset timed-out, status=0x80end_request: I/O error, dev hda, sector 0
Buffer I/O error on device hda, logical block 0
unable to read partition table
...
VFS: Cannot open root device "<NULL>" or unknown-block(0,0) Please append a correct "root=" boot option; here are the available partitions:
0300 1000440 hda driver: ide-disk
Kernel panic - not syncing: VFS: Unable to mount root fs on
unknown-block(0,0)
Does anyone know what could be the problem here?
IBM Netvista is a thin client with Geode GX1 and boots the kernel directly from ext3 without any boot loader. It does not support any kernel boot parameters.
Thank you
Signature · 4 lines
-----------------------------------------
Antonio Cardoso Martins
[email protected]
-----------------------------------------Quoted 3 lines
Netvista will complain with the messages bellow, using kernel 2.6.24.7 (i haven't used any more recent kernel because since kernel 2.6.24.7 they just fail to boot in Netvista 8363).
What was the last kernel that did boot correctly ?
If you are using a CF/ATA adapter do you have one which is rated for UDMA ?
Does 2.6.24.7 work with CS5530=n and CONFIG_PATA_CS5530 enabled instead ? (If it doesn't then the different diagnostics will be useful)
Alan
Quoted 11 lines · Alan Cox
Quoted 4 lines
Netvista will complain with the messages bellow, using kernel 2.6.24.7 (i haven't used any more recent kernel because since kernel 2.6.24.7 they just fail to boot in Netvista 8363).
What was the last kernel that did boot correctly ?
If you are using a CF/ATA adapter do you have one which is rated for UDMA ?
Does 2.6.24.7 work with CS5530=n andCONFIG_PATA_CS5530enabled instead ? (If it doesn't then the different diagnostics will be useful)
Quoted 4 lines
Alan
From kernel 2.6.25, using the same .config as in 2.6.24.7, kernel does
not start. I also tried with 2.6.25.2 and 2.6.26.3 with the same results. The ATA adapter is embedded into the motherboard. Looking at the board, the chipset reads Cyrix Cx5530. There is some contradictory information about whether this chip supports DMA or not. Regarding the CF, i am almost sure it supports some form of UDMA. You can see an image of the Netvista in http://jeanchristophe.duber.free.fr/netvista_8363/
Booting with CONFIG_BLK_DEV_CS5530=n and CONFIG_PATA_CS5530=y and kernel 2.6.24.7 gives:
...
ide: Assuming 33MHz system bus speed for PIO modes; override with idebus=xx Driver 'sd' needs updating - please use bus_type methods
scsi0: pata_cs5530
scsi1: pata_cs5530
ata1: PATA max UDMA/33 cmd 0x1f0 ctl 0x3f6 bmdma 0xfc00 irq 14
ata2: PATA max UDMA/33 cmd 0x170 ctl 0x376 bmdma 0xfc08 irq 15 ata1.00: ATA-5: SILICON POWER, 2.0, mas UDMA/66
ata1.00: 2000880 sectors, multi 1: LBA
ata1.00: configured for UDMA/33
scsi 0:0:0:0: Direct-Access ATA SILICON POWER
2.0 PQ: 0 ANSI: 5
sd 0:0:0:0: [sda] 2000880 512-byte hardware sectors (1024 MB) sd 0:0:0:0: [sda] Write Protect is off
sd 0:0:0:0: [sda] Write cache: disabled, read cache: enabled, doesn't support DPO or FUA
sd 0:0:0:0: [sda] 2000880 512-byte hardware sectors (1024 MB) sd 0:0:0:0: [sda] Write Protect is off
sd 0:0:0:0: [sda] Write cache: disabled, read cache: enabled, doesn't support DPO or FUA
sda:<4>Clocksource tsc unstable (delta = 120000656 ns)
Time: pit clocksource has been installed.
ata1.00: exception Emask 0x0 SAct 0x0 SErr 0x0 actions 0x2 frozen ata1.00: cmd c8/00:08:00:00:00/00:00:00:00:00/e0 tag 0 dma 4096 in
res 40/00:00:00:00:00/00:00:00:00:00/00 Emask 0x4 (timeout)
ata1.00: status: { DRDY }
ata1: soft resetting link
ata1.00: qc timeout (cmd 0xec)
ata1.00: failed to IDENTIFY (I/O error, err_mask=0x4) ata1.00: revalidation failed (errno=-5)
ata1: failed to recover some devices, retrying in 5 secs
ata1: port is slow to respond, please be patient (Status 0xd0)
ata1: device not ready (errno=-16), forcing hardreset
ata1: soft resetting link
ata1.00: qc timeout (cmd 0xec)
ata1.00: failed to IDENTIFY (I/O error, err_mask=0x4) ata1.00: revalidation failed (errno=-5)
ata1: failed to recover some devices, retrying in 5 secs
ata1: port is slow to respond, please be patient (Status 0x80)
ata1: device not ready (errno=-16), forcing hardreset
ata1: soft resetting link
ata1.00: qc timeout (cmd 0xec)
ata1.00: failed to IDENTIFY (I/O error, err_mask=0x4) ata1.00: revalidation failed (errno=-5)
ata1.00: disabled
ata1: port is slow to respond, please be patient (Status 0x80)
ata1: device not ready (errno=-16), forcing hardreset
ata1: soft resetting link
ata1: EH complete
sd 0:0:0:0: [sda] Result: hostbyte=0x04 driverbyte=0x00end_request: I/O error, dev sda, sector 0
Buffer I/O error on device sda, logical block 0
sd 0:0:0:0: [sda] Result: hostbyte=0x04 driverbyte=0x00end_request: I/O error, dev sda, sector 0
Buffer I/O error on device sda, logical block 0
unable to read partition table
sd 0:0:0.0: [sda] attached SCSI disk
sd 0:0:0.0: Attached scsi generic sg0 type 0
...
VFS: Cannot open root device "<NULL>" or unknown-block(0,0) Please append a correct "root=" boot option; here are the available partitions:
0800 1000440 sda driver: sd
Kernel panic - not syncing: VFS: Unable to mount root fs on
unknown-block(0,0)
Does this give any interesting info to the problem?
PS: Since i cannot provide parameters to the kernel, i don't know how the kernel i have completely working (2.6.22.15) figure out that he should continue boot from root=/dev/hda1. This kernel does not seem to get to that conclusion.
Best regards
Quoted 6 lines · Antonio Cardoso Martins
..
Quoted 1 line
From kernel 2.6.25, using the same .config as in 2.6.24.7, kernel does
not start. I also tried with 2.6.25.2 and 2.6.26.3 with the same results. The ATA adapter is embedded into the motherboard. Looking at the board, the chipset reads Cyrix Cx5530. There is some contradictory information about whether this chip supports DMA or not.
..
The CS5530 most definitely supports both MWDMA and UDMA.
I wrote the original IDE driver for it under NDA from National Semiconductor.
The chipset does have a few quirks, though, and one of those is an inability to cope with scatter/gather segments == 64KBytes -- it misinterprets the 64KB length value (0x0000) as zero, rather than 0x10000. I don't know if current code (IDE or libata) is still careful about that or not (?).
It has other quirks, too, including some for master/slave sharing a cable, but the DMA transfer length is the biggie. I don't know if that's what is happening on your system or not.
I do have *two* CS5530 systems here, but both are mothballed, and neither is particularly easy to install new software onto.
Cheers
Quoted 95 lines
Regarding the CF, i am
almost sure it supports some form of UDMA. You can see an image of the Netvista in http://jeanchristophe.duber.free.fr/netvista_8363/Booting with
CONFIG_BLK_DEV_CS5530=nandCONFIG_PATA_CS5530=yand kernel 2.6.24.7 gives:
...
ide: Assuming 33MHz system bus speed for PIO modes; override with idebus=xx Driver 'sd' needs updating - please usebus_typemethods
scsi0:pata_cs5530
scsi1:pata_cs5530
ata1: PATA max UDMA/33 cmd0x1f0ctl0x3f6bmdma0xfc00irq 14
ata2: PATA max UDMA/33 cmd0x170ctl0x376bmdma0xfc08irq 15 ata1.00: ATA-5: SILICON POWER, 2.0, mas UDMA/66
ata1.00: 2000880 sectors, multi 1: LBA
ata1.00: configured for UDMA/33
scsi 0:0:0:0: Direct-Access ATA SILICON POWER 2.0 PQ: 0 ANSI: 5
sd 0:0:0:0: [sda] 2000880 512-byte hardware sectors (1024 MB) sd 0:0:0:0: [sda] Write Protect is off
sd 0:0:0:0: [sda] Write cache: disabled, read cache: enabled, doesn't support DPO or FUA
sd 0:0:0:0: [sda] 2000880 512-byte hardware sectors (1024 MB) sd 0:0:0:0: [sda] Write Protect is off
sd 0:0:0:0: [sda] Write cache: disabled, read cache: enabled, doesn't support DPO or FUA
sda:<4>Clocksource tsc unstable (delta = 120000656 ns)
Time: pit clocksource has been installed.
ata1.00: exception Emask0x0SAct0x0SErr0x0actions0x2frozen ata1.00: cmd c8/00:08:00:00:00/00:00:00:00:00/e0 tag 0 dma 4096 inres 40/00:00:00:00:00/00:00:00:00:00/00 Emask 0x4 (timeout) Alan Cox wrote:Quoted 4 lines
Quoted 4 lines
Netvista will complain with the messages bellow, using kernel 2.6.24.7 (i haven't used any more recent kernel because since kernel 2.6.24.7 they just fail to boot in Netvista 8363).
Quoted 9 lines
What was the last kernel that did boot correctly ?
If you are using a CF/ATA adapter do you have one which is rated for UDMA ?
Does 2.6.24.7 work with CS5530=n andCONFIG_PATA_CS5530enabled instead ? (If it doesn't then the different diagnostics will be useful)Alan
ata1.00: status: { DRDY }
ata1: soft resetting link
ata1.00: qc timeout (cmd0xec)
ata1.00: failed to IDENTIFY (I/O error, err_mask=0x4) ata1.00: revalidation failed (errno=-5)
ata1: failed to recover some devices, retrying in 5 secs
ata1: port is slow to respond, please be patient (Status0xd0)
ata1: device not ready (errno=-16), forcing hardreset
ata1: soft resetting link
ata1.00: qc timeout (cmd0xec)
ata1.00: failed to IDENTIFY (I/O error, err_mask=0x4) ata1.00: revalidation failed (errno=-5)
ata1: failed to recover some devices, retrying in 5 secs
ata1: port is slow to respond, please be patient (Status0x80)
ata1: device not ready (errno=-16), forcing hardreset
ata1: soft resetting link
ata1.00: qc timeout (cmd0xec)
ata1.00: failed to IDENTIFY (I/O error, err_mask=0x4) ata1.00: revalidation failed (errno=-5)
ata1.00: disabled
ata1: port is slow to respond, please be patient (Status0x80)
ata1: device not ready (errno=-16), forcing hardreset
ata1: soft resetting link
ata1: EH complete
sd 0:0:0:0: [sda] Result: hostbyte=0x04 driverbyte=0x00end_request: I/O error, dev sda, sector 0
Buffer I/O error on device sda, logical block 0
sd 0:0:0:0: [sda] Result: hostbyte=0x04 driverbyte=0x00end_request: I/O error, dev sda, sector 0
Buffer I/O error on device sda, logical block 0
unable to read partition table
sd 0:0:0.0: [sda] attached SCSI disk
sd 0:0:0.0: Attached scsi generic sg0 type 0
...
VFS: Cannot open root device "<NULL>" or unknown-block(0,0) Please append a correct "root=" boot option; here are the available partitions:
0800 1000440 sda driver: sdKernel panic - not syncing: VFS: Unable to mount root fs onunknown-block(0,0)
Does this give any interesting info to the problem?
PS: Since i cannot provide parameters to the kernel, i don't know how the kernel i have completely working (2.6.22.15) figure out that he should continue boot from root=/dev/hda1. This kernel does not seem to get to that conclusion.Best regards
--
To unsubscribe from this list: send the line "unsubscribe linux-ide" in the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html
Quoted 4 lines
The chipset does have a few quirks, though, and one of those is an inability to cope with scatter/gather segments == 64KBytes -- it misinterprets the 64KB length value (
0x0000) as zero, rather than0x10000. I don't know if current code (IDE or libata) is still careful about that or not (?).
Both are covered.
Quoted 3 lines
The ATA adapter is embedded into the motherboard. Looking at the board, the chipset reads Cyrix Cx5530. There is some contradictory information about whether this chip supports DMA or not. Regarding the CF, i am
The CS5530 supports UDMA, the CF card may well support UDMA but there is a third ingredient in the CF cases - whatever connects the two must support UDMA. A lot of (especially older) CF convertors, CF cards slots on boards and the like do not even have the required wiring present, others don't have to to the standard needed for UDMA.
Quoted 1 line
ata1.00: ATA-5: SILICON POWER, 2.0, mas UDMA/66
Your CF card reports that it supports UDMA so I am quite sure it does.
Quoted 4 lines
sd 0:0:0:0: [sda] 2000880 512-byte hardware sectors (1024 MB) sd 0:0:0:0: [sda] Write Protect is off
sd 0:0:0:0: [sda] Write cache: disabled, read cache: enabled, doesn't support DPO or FUA
So PIO works and DMA doesn't.
Quoted 1 line
Does this give any interesting info to the problem?
It matches the other driver behaviour which is very helpful.
Quoted 4 lines
PS: Since i cannot provide parameters to the kernel, i don't know how the kernel i have completely working (2.6.22.15) figure out that he should continue boot from root=/dev/hda1. This kernel does not seem to get to that conclusion.
It would be /dev/sda1. I've no idea how the firmware bootloader passes information to the kernel on your netvista. You could see if the old rdev stuff is used (rdev /vmlinuz /dev/sda1)
For the PIO find
static int libata_dma_mask = ....
In drivers/ata/libata-core.c and change it to = 0;
Quoted 39 lines · Alan Cox
Quoted 4 lines
The ATA adapter is embedded into the motherboard. Looking at the board, the chipset reads Cyrix Cx5530. There is some contradictory information about whether this chip supports DMA or not. Regarding the CF, i am
The CS5530 supports UDMA, the CF card may well support UDMA but there is a third ingredient in the CF cases - whatever connects the two must support UDMA. A lot of (especially older) CF convertors, CF cards slots on boards and the like do not even have the required wiring present, others don't have to to the standard needed for UDMA.
Quoted 2 lines
ata1.00: ATA-5: SILICON POWER, 2.0, mas UDMA/66
Your CF card reports that it supports UDMA so I am quite sure it does.
Quoted 5 lines
sd 0:0:0:0: [sda] 2000880 512-byte hardware sectors (1024 MB) sd 0:0:0:0: [sda] Write Protect is off
sd 0:0:0:0: [sda] Write cache: disabled, read cache: enabled, doesn't support DPO or FUASo PIO works and DMA doesn't.
Quoted 2 lines
Does this give any interesting info to the problem?
It matches the other driver behaviour which is very helpful.
Quoted 5 lines
PS: Since i cannot provide parameters to the kernel, i don't know how the kernel i have completely working (2.6.22.15) figure out that he should continue boot from root=/dev/hda1. This kernel does not seem to get to that conclusion.
Quoted 10 lines
It would be
/dev/sda1. I've no idea how the firmware bootloader passes information to the kernel on your netvista. You could see if the old rdev stuff is used (rdev /vmlinuz/dev/sda1)
For the PIO findstatic int
libata_dma_mask= ....In
drivers/ata/libata-core.cand change it to = 0;
Booting with CONFIG_BLK_DEV_CS5530=n and CONFIG_PATA_CS5530=y and libdata_dma_mask=0
kernel 2.6.24.7:
...
ide: Assuming 33MHz system bus speed for PIO modes; override with idebus=xx Driver 'sd' needs updating - please use bus_type methods
scsi0: pata_cs5530
scsi1: pata_cs5530
ata1: PATA max UDMA/33 cmd 0x1f0 ctl 0x3f6 bmdma 0xfc00 irq 14
ata2: PATA max UDMA/33 cmd 0x170 ctl 0x376 bmdma 0xfc08 irq 15
ata1.00: ATA-5: SILICON POWER, 2.0, mas UDMA/66
ata1.00: 2000880 sectors, multi 1: LBA
ata1.00: configured for PIO4
scsi 0:0:0:0: Direct-Access ATA SILICON POWER 2.0 PQ: 0 ANSI: 5
sd 0:0:0:0: [sda] 2000880 512-byte hardware sectors (1024 MB)
sd 0:0:0:0: [sda] Write Protect is off
sd 0:0:0:0: [sda] Write cache: disabled, read cache: enabled, doesn't support DPO or FUA sd 0:0:0:0: [sda] 2000880 512-byte hardware sectors (1024 MB)
sd 0:0:0:0: [sda] Write Protect is off
sd 0:0:0:0: [sda] Write cache: disabled, read cache: enabled, doesn't support DPO or FUA
sda: sda1
sd 0:0:0.0: [sda] attached SCSI disk
sd 0:0:0.0: Attached scsi generic sg0 type 0
...
VFS: Cannot open root device "<NULL>" or unknown-block(0,0)
Please append a correct "root=" boot option; here are the available partitions:
0800 1000440 sda driver: sd
0801 999905 sda1
Kernel panic - not syncing: VFS: Unable to mount root fs on unknown-block(0,0)
So PIO4 is now working. Great. But i am stuck with the root device.
Netvista 8363 firmware calls vmlinux (not bzImage) directly from an ext2 partition since the filename is kernel.2x00 and ELF program-header-count (offset 0x2c) is patched with the value 1. I am not sure, but rdev doesn't apply to vmlinux. Until 2.6.23.17, the kernel figured that the root device is /dev/hda1. From kernel 2.6.24.1, the root device cannot be mounted because the root is <NULL>. This must be hardcoded somewhere and changed in 2.6.24.1 as the firmware does not pass any parameters to the kernel. Any hints?
Best regards
Quoted 13 lines
Booting with
CONFIG_BLK_DEV_CS5530=nandCONFIG_PATA_CS5530=yand libdata_dma_mask=0
kernel 2.6.24.7:
...
ide: Assuming 33MHz system bus speed for PIO modes; override with idebus=xx Driver 'sd' needs updating - please usebus_typemethods
scsi0:pata_cs5530
scsi1:pata_cs5530
ata1: PATA max UDMA/33 cmd0x1f0ctl0x3f6bmdma0xfc00irq 14
ata2: PATA max UDMA/33 cmd0x170ctl0x376bmdma0xfc08irq 15 ata1.00: ATA-5: SILICON POWER, 2.0, mas UDMA/66
ata1.00: 2000880 sectors, multi 1: LBA
ata1.00: configured for PIO4
Quoted 8 lines
scsi 0:0:0:0: Direct-Access ATA SILICON POWER 2.0 PQ: 0 ANSI: 5
sd 0:0:0:0: [sda] 2000880 512-byte hardware sectors (1024 MB)
sd 0:0:0:0: [sda] Write Protect is off
sd 0:0:0:0: [sda] Write cache: disabled, read cache: enabled, doesn't support DPO or FUA sd 0:0:0:0: [sda] 2000880 512-byte hardware sectors (1024 MB)
sd 0:0:0:0: [sda] Write Protect is off
sd 0:0:0:0: [sda] Write cache: disabled, read cache: enabled, doesn't support DPO or FUA
sda: sda1
And now it all works nicely
Quoted 2 lines
Kernel panic - not syncing: VFS: Unable to mount root fs on unknown-block(0,0)So PIO4 is now working. Great. But i am stuck with the root device.
I would suggest posting to linux-kernel on that and talking to H Peter Anvin about possible ways to get a real boot loader on the box.
Quoted 22 lines · Alan Cox
Quoted 13 lines
Booting with
CONFIG_BLK_DEV_CS5530=nandCONFIG_PATA_CS5530=yand libdata_dma_mask=0
kernel 2.6.24.7:
...
ide: Assuming 33MHz system bus speed for PIO modes; override with idebus=xx Driver 'sd' needs updating - please usebus_typemethods
scsi0:pata_cs5530
scsi1:pata_cs5530
ata1: PATA max UDMA/33 cmd0x1f0ctl0x3f6bmdma0xfc00irq 14
ata2: PATA max UDMA/33 cmd0x170ctl0x376bmdma0xfc08irq 15 ata1.00: ATA-5: SILICON POWER, 2.0, mas UDMA/66
ata1.00: 2000880 sectors, multi 1: LBA
ata1.00: configured for PIO4Quoted 8 lines
scsi 0:0:0:0: Direct-Access ATA SILICON POWER 2.0 PQ: 0 ANSI: 5
sd 0:0:0:0: [sda] 2000880 512-byte hardware sectors (1024 MB)
sd 0:0:0:0: [sda] Write Protect is off
sd 0:0:0:0: [sda] Write cache: disabled, read cache: enabled, doesn't support DPO or FUA sd 0:0:0:0: [sda] 2000880 512-byte hardware sectors (1024 MB)
sd 0:0:0:0: [sda] Write Protect is off
sd 0:0:0:0: [sda] Write cache: disabled, read cache: enabled, doesn't support DPO or FUA
sda: sda1
Quoted 8 lines
And now it all works nicely
Quoted 2 lines
Kernel panic - not syncing: VFS: Unable to mount root fs on unknown-block(0,0)So PIO4 is now working. Great. But i am stuck with the root device.
I would suggest posting to linux-kernel on that and talking to H Peter Anvin about possible ways to get a real boot loader on the box.
So regarding DMA, Netvista 8363 has this limitation, and there is no DMA or UDMA mode that we can successfully enable. The only way to force PIO4, is changing directly in the source code. If kernel parameters were supported, we would be able to use some "idebus" parameter. Are these statements correct?
Hello.
Quoted 27 lines · Antonio Martins
Quoted 26 lines
Quoted 13 lines
Booting with
CONFIG_BLK_DEV_CS5530=nandCONFIG_PATA_CS5530=yand libdata_dma_mask=0
kernel 2.6.24.7:
...
ide: Assuming 33MHz system bus speed for PIO modes; override with idebus=xx Driver 'sd' needs updating - please usebus_typemethods
scsi0:pata_cs5530
scsi1:pata_cs5530
ata1: PATA max UDMA/33 cmd0x1f0ctl0x3f6bmdma0xfc00irq 14
ata2: PATA max UDMA/33 cmd0x170ctl0x376bmdma0xfc08irq 15 ata1.00: ATA-5: SILICON POWER, 2.0, mas UDMA/66
ata1.00: 2000880 sectors, multi 1: LBA
ata1.00: configured for PIO4Quoted 8 lines
scsi 0:0:0:0: Direct-Access ATA SILICON POWER 2.0 PQ: 0 ANSI: 5
sd 0:0:0:0: [sda] 2000880 512-byte hardware sectors (1024 MB)
sd 0:0:0:0: [sda] Write Protect is off
sd 0:0:0:0: [sda] Write cache: disabled, read cache: enabled, doesn't support DPO or FUA sd 0:0:0:0: [sda] 2000880 512-byte hardware sectors (1024 MB)
sd 0:0:0:0: [sda] Write Protect is off
sd 0:0:0:0: [sda] Write cache: disabled, read cache: enabled, doesn't support DPO or FUA
sda: sda1And now it all works nicely
Quoted 2 lines
Kernel panic - not syncing: VFS: Unable to mount root fs on unknown-block(0,0)So PIO4 is now working. Great. But i am stuck with the root device.
Quoted 8 lines
Quoted 2 lines
I would suggest posting to linux-kernel on that and talking to H Peter Anvin about possible ways to get a real boot loader on the box.
So regarding DMA, Netvista 8363 has this limitation, and there is no DMA or UDMA mode that we can successfully enable. The only way to force PIO4, is changing directly in the source code.
If kernel parameters were supported, we would be able to use some "idebus" parameter. Are these statements correct?
There's "libata.dma=" option (if you can pass it), set it to 0
and DMA won't ever be used.
Note that the "old" IDE code also has the parameter controlling
DMA usage (even per drive) -- look for "nodma" in Documentation/ide/ide.txt.
MBR, Sergei
Quoted 5 lines · Sergei Shtylyov
There's "libata.dma=" option (if you can pass it), set it to 0
and DMA won't ever be used.
Note that the "old" IDE code also has the parameter controlling
DMA usage (even per drive) -- look for "nodma" inDocumentation/ide/ide.txt.
libata.force can do per device or per-port speed override.
libata.force=1.00:pio4
Signature · 1 line
tejun
Quoted 5 lines
So regarding DMA, Netvista 8363 has this limitation, and there is no DMA or UDMA mode that we can successfully enable. The only way to force PIO4, is changing directly in the source code. If kernel parameters were supported, we would be able to use some "idebus" parameter. Are these statements correct?
That seems to be the case yes, and would be fairly normal for devices of that era using CF type interfaces. Nobody anticipated giant CF devices with UDMA