Re: HPA and failed opcode was: 0x37 ?

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi,

>>         for (i = IDE_DATA_OFFSET; i <= IDE_STATUS_OFFSET; i++) {
>>                 hw.io_ports[i] = ide_virt_base + (i << 1);
>>         }
> 
>>         hw.io_ports[IDE_CONTROL_OFFSET] = ide_virt_base + 0x10;
> 
>> Thus it has an offset 0x10 from the base address.
> 
>> ide0 at 0xc3856000-0xc3856007,0xc3856010 on irq 27
> 
>> But I just noticed that A[2..0] should look like "110" when accessing the
>> "Device Control Register". Thus the offset should be 0x16 instead! Right?
> 
>    If your FPGA passes A[2..0] untouched to the IDE bus, it's certainly
> wrong. It must pass 110.

Stupid me. As I mentioned earlier CPU's A[3..1] are connected to HDD's
A[2..0]. And CPU's A4 is used for HDD's CS1 (inverted of course). Thus the
offset for IDE_CONTROL_OFFSET must be 0x1C (=0x10 + 0x6 << 1).

And volá

ide0 at 0xc3856000-0xc3856007,0xc385601c on irq 27
hda: max request size: 1024KiB
idedisk_supports_hpa(): cfs_enable_1=346b, cfs_enable_1=3469
idedisk_read_native_max_address_ext(): addr = 000004a852ff
idedisk_read_native_max_address_ext(): addr = 000004a852ff
idedisk_read_native_max_address_ext(): addr = 000004a85300
idedisk_read_native_max_address_ext(): addr = 000004a85300
hda: 78140160 sectors (40007 MB) w/8192KiB Cache, CHS=16383/255/63
hda: cache flushes supported
 hda: hda1

idedisk_read_native_max_address_ext() works now. No HPA reported anymore!

Thanks a million to everyone!!!!

PS: Still I don't know why ARM reports "max request size: 1024KiB" and y86
reports only "max request size: 512KiB" ...

Steven
-
To unsubscribe from this list: send the line "unsubscribe linux-ide" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Index of Archives]     [Linux Filesystems]     [Linux SCSI]     [Linux RAID]     [Git]     [Kernel Newbies]     [Linux Newbie]     [Security]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Samba]     [Device Mapper]

  Powered by Linux