Re: [PATCH 05/17] libata: implement PCI init helpers for new LLD init model

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

 



Alan Cox wrote:
> Ar Mer, 2006-08-09 am 02:41 -0400, ysgrifennodd Jeff Garzik:
> 
>>ata_generic, ISA, VLB, and embedded controllers that use libata are not 
>>PCI.  libata-bmdma can drive older non-PCI controllers.
>>
>>Its a bit confusing because "PCI IDE" is often used to refer to the 
>>legacy IDE shadow register interface.  I started to use "bmdma" to 
>>describe the interface, but it drives Alan crazy :)
> 
> 
> Properly we have
> 
> 	ST506		(register layout for PIO)
> 	BMDMA		(register layout for dma area/sg tables) [SFF]
> 	SFF		(full SFF - BAR4, PCI BMDMA)
> 	ADMA		(also in SFF)
> 	AHCI
> 
> 	+ various weird vendor stuff
> 
> 

The first time libata-"bmdma".c was seen, it looked strange to me, too.

I remember the WD1003/ST-506 adapter on my old i386 PC, which was later replaced by
an "AT-Bus" IDE controller. The IDE controller is register level compatible
to the WD1003 ST-506 adapter, with the same legacy PIO address and irq 14.
(IDE had to be register-level compatible with the old WD1003 interface,
because the Int 13h code for the WD1003 is in the main PC/AT BIOS, not on the adapter.)

At about the 486 VL-bus days, an additional "secondary" port was added, with irq 15.
In those old 286/386/486 days, the IDE adapters were PIO only.

The BM-DMA came at about the time of the Intel Pentium/PCI-bus, with the new BM-DMA registers. 

When libata-bmdma.c is seperated out from libata-core.c, I was wondering why the
BM-DMA PRD table management codes such as ata_sg_setup() are left in libata-core.c,
while the old WD1003/ST-506 like logic ata_tf_load(), ata_exec_command() and ata_check_status()
are moved to the libata-bmdma.c.

Jeff explained the traditional WD1003 ST-506 registers can be viewed as subset of BM-DMA,
but I still feel strange to call the old WD1003-like IDE controllers on my 386/486 as "BM-DMA"...

--
albert


-
: 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