linux/drivers/ide
Shane McDonald 391ad1908a Resurrect IT8172 IDE controller driver
Support for the IT8172 IDE controller was removed from the kernel
sometime after 2.6.18.  Support for the only boards that used the IT8172
was removed from the kernel after 2.6.18, as they had never compiled
since 2.6.0.  However, there are a couple of platforms that use this
chip: the PMC-Sierra Xiao Hu thin-client computer, which is no longer
in production, and the Linksys NSS4000 Network Attached Storage box,
which is based on the Xiao Hu board.  I am attempting to add support
for the Xiao Hu to the kernel, and this IT8172 IDE controller is the
first bit of code in this effort.

This patch resurrects the IT8172 IDE controller code.  I began with
the 2.6.18 version of the it8172.c file, and have moved it forward so
that it works with the latest version of the kernel.  I have run this
driver on a PMC-Sierra Xiao Hu board with the 2.6.28 kernel, and
I have had no problems with it in my configuration.  The attached patch
applies cleanly against 2.6.28.

Signed-off-by: Shane McDonald <mcdonald.shane@gmail.com>
Acked-by: Sergei Shtylyov <sshtylyov@ru.mvista.com>
Cc: alan@lxorguk.ukuu.org.uk
[bart: s/HWIF(drive)/drive->hwif/]
Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
2009-01-06 17:21:01 +01:00
..
Kconfig Resurrect IT8172 IDE controller driver 2009-01-06 17:21:01 +01:00
Makefile Resurrect IT8172 IDE controller driver 2009-01-06 17:21:01 +01:00
aec62xx.c ide: remove HWIF() macro 2009-01-06 17:20:52 +01:00
ali14xx.c ide: remove useless subdirs from drivers/ide/ 2008-10-21 20:57:23 +02:00
alim15x3.c ide: remove HWIF() macro 2009-01-06 17:20:52 +01:00
amd74xx.c amd74xx: use ide_get_pair_dev() helper 2009-01-06 17:20:54 +01:00
atiixp.c ide: remove useless subdirs from drivers/ide/ 2008-10-21 20:57:23 +02:00
au1xxx-ide.c ide: remove HWIF() macro 2009-01-06 17:20:52 +01:00
buddha.c ide: remove useless subdirs from drivers/ide/ 2008-10-21 20:57:23 +02:00
cmd64x.c cmd64x: use ide_get_pair_dev() helper 2009-01-06 17:20:55 +01:00
cmd640.c cmd640: use ide_get_pair_dev() helper 2009-01-06 17:20:55 +01:00
cs5520.c ide: remove HWIF() macro 2009-01-06 17:20:52 +01:00
cs5530.c drivers/ide/{cs5530.c,sc1200.c}: Move a dereference below a NULL test 2008-12-22 23:05:06 +01:00
cs5535.c ide: remove useless subdirs from drivers/ide/ 2008-10-21 20:57:23 +02:00
cy82c693.c ide: remove HWIF() macro 2009-01-06 17:20:52 +01:00
delkin_cb.c ide: remove useless subdirs from drivers/ide/ 2008-10-21 20:57:23 +02:00
dtc2278.c ide: remove useless subdirs from drivers/ide/ 2008-10-21 20:57:23 +02:00
falconide.c ide: remove useless subdirs from drivers/ide/ 2008-10-21 20:57:23 +02:00
gayle.c gayle: set IDE_HFLAG_SERIALIZE explictly 2008-12-29 20:27:33 +01:00
hpt366.c ide: remove HWIF() macro 2009-01-06 17:20:52 +01:00
ht6560b.c ide: remove useless subdirs from drivers/ide/ 2008-10-21 20:57:23 +02:00
icside.c ide: remove HWIF() macro 2009-01-06 17:20:52 +01:00
ide-4drives.c ide: remove useless subdirs from drivers/ide/ 2008-10-21 20:57:23 +02:00
ide-acpi.c ide: add port and host iterators 2009-01-06 17:20:56 +01:00
ide-atapi.c ide-cd: convert to ide-atapi facilities 2009-01-06 17:20:58 +01:00
ide-cd.c ide-cd: convert to ide-atapi facilities 2009-01-06 17:20:58 +01:00
ide-cd.h ide: remove ide_driver_t typedef 2009-01-06 17:20:53 +01:00
ide-cd_ioctl.c ide: remove IDE_AFLAG_NO_DOORLOCKING 2008-10-17 18:09:11 +02:00
ide-cd_verbose.c block: replace sizeof(rq->cmd) with BLK_MAX_CDB 2008-04-29 14:48:55 +02:00
ide-cs.c pcmcia: add another pata/ide ID 2008-11-09 21:35:36 +01:00
ide-disk.c ide: remove HWIF() macro 2009-01-06 17:20:52 +01:00
ide-disk.h [PATCH] switch ide_disk_ops ->ioctl() to sane prototype 2008-10-21 07:47:30 -04:00
ide-disk_ioctl.c [PATCH] switch ide_disk_ops ->ioctl() to sane prototype 2008-10-21 07:47:30 -04:00
ide-disk_proc.c ide-disk: factor out generic disk handling code to ide-gd.c 2008-10-17 18:09:12 +02:00
ide-dma-sff.c ide: merge ide_hwgroup_t with ide_hwif_t (v2) 2009-01-06 17:20:50 +01:00
ide-dma.c ide: merge ide_hwgroup_t with ide_hwif_t (v2) 2009-01-06 17:20:50 +01:00
ide-floppy.c ide: merge ide_hwgroup_t with ide_hwif_t (v2) 2009-01-06 17:20:50 +01:00
ide-floppy.h [PATCH] switch ide_disk_ops ->ioctl() to sane prototype 2008-10-21 07:47:30 -04:00
ide-floppy_ioctl.c ide-floppy: allocate only toplevel packet commands 2009-01-02 16:12:51 +01:00
ide-floppy_proc.c ide: prepare for merging ide-gd-floppy.c with ide-gd.c 2008-10-17 18:09:13 +02:00
ide-gd.c ide: remove ->error method from struct ide_driver 2009-01-06 17:20:54 +01:00
ide-gd.h ide: remove ide_driver_t typedef 2009-01-06 17:20:53 +01:00
ide-generic.c ide-generic: remove no longer needed ide_probe_legacy() 2008-10-13 21:39:42 +02:00
ide-h8300.c ide: remove useless subdirs from drivers/ide/ 2008-10-21 20:57:23 +02:00
ide-io.c ide: remove now redundant ->cur_dev checks 2009-01-06 17:20:59 +01:00
ide-ioctls.c ide: remove the last ide-scsi remnants 2009-01-02 16:12:54 +01:00
ide-iops.c ide: add port and host iterators 2009-01-06 17:20:56 +01:00
ide-legacy.c ide: move legacy ISA/VLB ports handling to ide-legacy.c (v2) 2008-12-29 20:27:37 +01:00
ide-lib.c ide: merge ide_hwgroup_t with ide_hwif_t (v2) 2009-01-06 17:20:50 +01:00
ide-park.c ide: merge ide_hwgroup_t with ide_hwif_t (v2) 2009-01-06 17:20:50 +01:00
ide-pci-generic.c ide: Switch to a common address 2008-11-02 21:40:08 +01:00
ide-pio-blacklist.c ide: move PIO blacklist to ide-pio-blacklist.c 2008-07-16 20:33:39 +02:00
ide-pm.c ide: remove ide_driver_t typedef 2009-01-06 17:20:53 +01:00
ide-pnp.c ide: add ide_host_add() helper 2008-07-23 19:55:57 +02:00
ide-probe.c ide: fix ide_port_scan() to do ACPI setup after initializing request queues 2009-01-06 17:21:00 +01:00
ide-proc.c ide: add port and host iterators 2009-01-06 17:20:56 +01:00
ide-scan-pci.c ide: replace remaining __FUNCTION__ occurrences 2008-04-26 22:25:20 +02:00
ide-sysfs.c ide: move sysfs support to ide-sysfs.c 2009-01-02 16:12:48 +01:00
ide-tape.c ide: remove ->error method from struct ide_driver 2009-01-06 17:20:54 +01:00
ide-taskfile.c ide: remove ide_driver_t typedef 2009-01-06 17:20:53 +01:00
ide-timings.c ide: include <linux/hdreg.h> only when needed 2008-10-10 22:39:27 +02:00
ide.c ide: add port and host iterators 2009-01-06 17:20:56 +01:00
ide_arm.c [ARM] clps7500: remove support 2008-11-27 12:38:11 +00:00
ide_platform.c ide: remove useless subdirs from drivers/ide/ 2008-10-21 20:57:23 +02:00
it821x.c it821x: use ide_get_pair_dev() helper 2009-01-06 17:20:56 +01:00
it8172.c Resurrect IT8172 IDE controller driver 2009-01-06 17:21:01 +01:00
it8213.c ide: remove HWIF() macro 2009-01-06 17:20:52 +01:00
jmicron.c ide: Switch to a common address 2008-11-02 21:40:08 +01:00
macide.c m68k: machw.h cleanup 2008-12-28 20:00:03 +01:00
ns87415.c ide: remove HWIF() macro 2009-01-06 17:20:52 +01:00
opti621.c ide: remove useless subdirs from drivers/ide/ 2008-10-21 20:57:23 +02:00
palm_bk3710.c ide: remove useless subdirs from drivers/ide/ 2008-10-21 20:57:23 +02:00
pdc202xx_new.c ide: remove HWIF() macro 2009-01-06 17:20:52 +01:00
pdc202xx_old.c ide: remove HWIF() macro 2009-01-06 17:20:52 +01:00
piix.c piix: sync ich_laptop[] with ata_piix.c 2009-01-06 17:21:01 +01:00
pmac.c ide: remove HWIF() macro 2009-01-06 17:20:52 +01:00
q40ide.c ide: remove useless subdirs from drivers/ide/ 2008-10-21 20:57:23 +02:00
qd65xx.c ide: remove HWIF() macro 2009-01-06 17:20:52 +01:00
qd65xx.h ide: remove 'byte' typedef 2009-01-06 17:20:53 +01:00
rapide.c arm ide breakage 2008-10-26 09:35:05 -07:00
rz1000.c rz1000: apply chipset quirks early (v2) 2008-12-29 20:27:33 +01:00
sc1200.c ide: remove 'byte' typedef 2009-01-06 17:20:53 +01:00
scc_pata.c ide: add port and host iterators 2009-01-06 17:20:56 +01:00
serverworks.c ide: remove HWIF() macro 2009-01-06 17:20:52 +01:00
setup-pci.c ide: use ide_pci_is_in_compatibility_mode() helper in setup-pci.c 2009-01-06 17:20:58 +01:00
sgiioc4.c ide: remove HWIF() macro 2009-01-06 17:20:52 +01:00
siimage.c ide: remove HWIF() macro 2009-01-06 17:20:52 +01:00
sis5513.c ide: remove HWIF() macro 2009-01-06 17:20:52 +01:00
sl82c105.c ide: remove HWIF() macro 2009-01-06 17:20:52 +01:00
slc90e66.c ide: remove HWIF() macro 2009-01-06 17:20:52 +01:00
tc86c001.c ide: remove HWIF() macro 2009-01-06 17:20:52 +01:00
triflex.c ide: remove HWIF() macro 2009-01-06 17:20:52 +01:00
trm290.c ide: remove HWIF() macro 2009-01-06 17:20:52 +01:00
tx4938ide.c ide: remove chipset type fixup from ide_host_register() 2009-01-02 16:12:47 +01:00
tx4939ide.c ide: merge ide_hwgroup_t with ide_hwif_t (v2) 2009-01-06 17:20:50 +01:00
umc8672.c ide: merge ide_hwgroup_t with ide_hwif_t (v2) 2009-01-06 17:20:50 +01:00
via82cxxx.c ide: remove HWIF() macro 2009-01-06 17:20:52 +01:00