aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/ide/q40ide.c
Commit message (Collapse)AuthorAgeFilesLines
* ide: move ack_intr() method into 'struct ide_port_ops' (take 2)Sergei Shtylyov2009-06-151-5/+2
| | | | | | | | Move the ack_intr() method into 'struct ide_port_ops', also renaming it to test_irq() while at it... Signed-off-by: Sergei Shtylyov <sshtylyov@ru.mvista.com> Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
* ide: remove hw_regs_t typedefBartlomiej Zolnierkiewicz2009-05-171-3/+3
| | | | | | | | | Remove hw_regs_t typedef and rename struct hw_regs_s to struct ide_hw. There should be no functional changes caused by this patch. Acked-by: Sergei Shtylyov <sshtylyov@ru.mvista.com> Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
* ide: pass number of ports to ide_host_{alloc,add}() (v2)Bartlomiej Zolnierkiewicz2009-05-171-2/+2
| | | | | | | | | | | | | | Pass number of ports to ide_host_{alloc,add}() and then update all users accordingly. v2: - drop no longer needed NULL initializers in buddha.c, cmd640.c and gayle.c (noticed by Sergei) There should be no functional changes caused by this patch. Acked-by: Sergei Shtylyov <sshtylyov@ru.mvista.com> Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
* ide: remove chipset field from hw_regs_tBartlomiej Zolnierkiewicz2009-05-171-2/+1
| | | | | | | | | | | | | | | | | | * Convert host drivers that still use hw_regs_t's chipset field to use the one in struct ide_port_info instead. * Move special handling of ide_pci chipset type from ide_hw_configure() to ide_init_port(). * Remove chipset field from hw_regs_t. While at it: - remove stale comment in delkin_cb.c There should be no functional changes caused by this patch. Acked-by: Sergei Shtylyov <sshtylyov@ru.mvista.com> Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
* ide: falconide/q40ide - Use __ide_mm_{in,out}sw() for dataGeert Uytterhoeven2009-04-081-4/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | Both of commits f94116aeec7a299640dd692128e1d22178affa8d ("ide: cleanup <asm-m68k/ide.h>") and 15a453a955f89f6545118770c669b52e925368bd ("ide: include <asm/ide.h> only when needed") break falconide: | Uniform Multi-Platform E-IDE driver | ide: Falcon IDE controller | Probing IDE interface ide0... | hda: Sarge m68k, ATA DISK drive | ide0 at 0xfff00000 on irq 15 (serialized) | ide-gd driver 1.18 | hda: max request size: 128KiB | hda: 2118816 sectors (1084 MB) w/256KiB Cache, CHS=2102/16/63 | hda:<4>hda: lost interrupt This happens because falconide relies on {in,out}sw() being redefined in <asm/ide.h>, as included by <linux/ide.h>, which is no longer the case. Use __ide_mm_{in,out}sw() from <asm/ide.h> instead, just like ide_{in,out}put_data() do. The same problem seems to exist in q40ide. Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org> Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
* ide: turn selectproc() method into dev_select() method (take 5)Sergei Shtylyov2009-03-311-0/+1
| | | | | | | | | | | Turn selectproc() method into dev_select() method by teaching it to write to the device register and moving it from 'struct ide_port_ops' to 'struct ide_tp_ops'. Signed-off-by: Sergei Shtylyov <sshtylyov@ru.mvista.com> Cc: benh@kernel.crashing.org Cc: petkovbb@gmail.com [bart: add ->dev_select to at91_ide.c and tx4939.c (__BIG_ENDIAN case)] Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
* ide: turn set_irq() method into write_devctl() methodSergei Shtylyov2009-03-311-2/+1
| | | | | | | | Turn set_irq() method with its software reset hack into write_devctl() method (for just writing a value into the device control register) at last... Signed-off-by: Sergei Shtylyov <sshtylyov@ru.mvista.com> Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
* ide: pass command instead of request to ide_pio_datablock()Bartlomiej Zolnierkiewicz2009-03-271-4/+4
| | | | | | | | | | | | | | | * Add IDE_TFLAG_FS taskfile flag and set it for REQ_TYPE_FS requests. * Convert ->{in,out}put_data methods to take command instead of request as an argument. Then convert pre_task_out_intr(), task_end_request(), task_error(), task_in_unexpected(), ide_pio_sector(), ide_pio_multi() and ide_pio_datablock() in similar way. * Rename task_end_request() to ide_finish_cmd(). There should be no functional changes caused by this patch. Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
* ide: allow host drivers to specify IRQ flagsBartlomiej Zolnierkiewicz2009-03-271-0/+1
| | | | | | | | | | | | | * Add ->irq_flags field to struct ide_port_info and struct ide_host. * Update host drivers and IDE PCI code to use ->irq_flags field. * Convert init_irq() and ide_intr() to use host->irq_flags. This fixes handling of shared IRQs for non-PCI hosts and removes ugly ifdeffery from core IDE code. Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
* ide: cleanup <asm-m68k/ide.h>Bartlomiej Zolnierkiewicz2009-03-271-2/+2
| | | | | | | | | | | | | | | | * Remove superfluous <asm/macints.h> include. * No need to re-define in/out*() macros as they are no longer used by m68k host drivers. * readl() and writel() are not used by core IDE code. * Use raw_*_swapw() directly in {falcon,q40}ide.c and remove {in,out}sw_swapw() macros. Cc: Geert Uytterhoeven <geert@linux-m68k.org> Cc: Michael Schmitz <schmitz@debian.org> Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
* ide: make m68k host drivers use IDE_HFLAG_MMIOBartlomiej Zolnierkiewicz2009-03-271-1/+1
| | | | | | Cc: Geert Uytterhoeven <geert@linux-m68k.org> Cc: Michael Schmitz <schmitz@debian.org> Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
* ide: move read_sff_dma_status() method to 'struct ide_dma_ops'Sergei Shtylyov2009-01-061-1/+0
| | | | | | | | | | | | Move apparently misplaced read_sff_dma_status() method from 'struct ide_tp_ops' to 'struct ide_dma_ops', renaming it to dma_sff_read_status() and making only required for SFF-8038i compatible IDE controller drivers (greatly cutting down the number of initializers) as its only user (outside ide-dma-sff.c and such drivers) appears to be ide_pci_check_simplex() which is only called for such controllers... Signed-off-by: Sergei Shtylyov <sshtylyov@ru.mvista.com> Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
* ide: remove useless subdirs from drivers/ide/Bartlomiej Zolnierkiewicz2008-10-211-0/+165
Suggested-by: Ralf Baechle <ralf@linux-mips.org> Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>