ich4 documentation
ich4 documentation
i am looking to program the ide controller on the ich4 hub. i found the data sheet for the ide controller on intel's website but the data sheet does not contain the list of commands for the ide controller. where can i find the commands for this controller? on intel's website? its an ultra dma controller...
- Pype.Clicker
- Member
- Posts: 5964
- Joined: Wed Oct 18, 2006 2:31 am
- Location: In a galaxy, far, far away
- Contact:
Re:ich4 documentation
http://www.mega-tokyo.com/forum/index.p ... 24&start=0
does this helps ?
does this helps ?
* Another interresting register is UDMA-enable register (offset 0x48 in configuration space) which has one bit per hdd. I hope src/linux/drivers/ide/ide-dma.c will tell me a bit more about this ...
* Once you get your busmaster activated and gave it a base address, you have at that base address 8 I/O ports for each controller (xxx0 - xxx7 is for primary, xxx8 - xxxf for secondary). The structure of each block is:
0 8bits command byte
2 8bits status byte
4 32bits descriptor table base address
DMA operation is programmed by writing direction and start bits in the command byte. (thus outb(udma_base,1) for a read and outb(udma_base,9) for a write.
* The place in memory where the DMA transfer is performed is described by the Descriptor Table. The physical address of that table must be loaded in udma_base+4 before the transfer begins. The structure of that table is unknown by your humble servant so far.
Re:ich4 documentation
i read on intel's website that they no longer use the bus master....?
- Pype.Clicker
- Member
- Posts: 5964
- Joined: Wed Oct 18, 2006 2:31 am
- Location: In a galaxy, far, far away
- Contact:
Re:ich4 documentation
from the doc you pointed, 10.1.6
I would advice that you have plug-in components for each 'function' you support and load the one corresponding to the function available on the device ... if you have no component ready for that device, submit a guru meditation to the clueless user
so it would quite surprise me if busmaster was no longer supported. Probably it has *evolved* and thus newer chip use the 0x8A function rather than 0x80 ...
PI -- Programming Interface Register (IDE D31:F1)
Address Offset: 09h Default Value: 8Ah
Attribute: R/W Size: 8 bits
Description :
bit 7 This read-only bit is a 1 to indicate that the ICH4 supports bus master operation
I would advice that you have plug-in components for each 'function' you support and load the one corresponding to the function available on the device ... if you have no component ready for that device, submit a guru meditation to the clueless user