android_kernel_xiaomi_sm8350/drivers/ata
David Woodhouse 8cdf92a98f Fix Maple PATA IRQ assignment.
On the Maple board, the AMD8111 IDE is in legacy mode... except that it
appears on IRQ 20 instead of IRQ 15. For drivers/ide this was handled by
the architecture's "pci_get_legacy_ide_irq()" function, but in libata we
just hard-code the numbers 14 and 15.

This patch provides asm-powerpc/libata-portmap.h which maps the IRQ as
appropriate, having added a pci_dev argument to the
ATA_{PRIM,SECOND}ARY_IRQ macros.

There's probably a better way to do this -- especially if we observe
that the _only_ case in which this seemingly-generic
"pci_get_legacy_ide_irq()" function returns anything other than 14 and
15 for primary and secondary respectively is the case of the AMD8111 on
the Maple board -- couldn't we handle that with a special case in the
pata_amd driver, or perhaps with a PCI quirk for Maple to switch it into
native mode during early boot and assign resources properly?

Signed-off-by: David Woodhouse <dwmw2@infradead.org>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
2007-01-26 17:27:40 -05:00
..
ahci.c ahci: use 0x80 as wait stat value instead of 0xff 2007-01-26 17:24:07 -05:00
ata_generic.c libata: set_mode, Fix the FIXME 2007-01-24 19:55:16 -05:00
ata_piix.c [PATCH] ata_piix: use piix_host_stop() in ich_pata_ops 2006-12-16 10:12:29 -05:00
Kconfig Fix Maple PATA IRQ assignment. 2007-01-26 17:27:40 -05:00
libata-core.c libata: set_mode, Fix the FIXME 2007-01-24 19:55:16 -05:00
libata-eh.c libata: fix handling of port actions in per-dev action mask 2007-01-19 19:22:45 -05:00
libata-scsi.c libata: Fixup n_elem initialization 2007-01-24 02:04:34 -05:00
libata-sff.c Fix Maple PATA IRQ assignment. 2007-01-26 17:27:40 -05:00
libata.h Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6 2006-12-05 17:01:28 +00:00
Makefile [libata] ARM: add ixp4xx PATA driver 2006-12-01 22:42:51 -05:00
pata_ali.c [PATCH] pata_ali: small fixes 2006-12-04 15:45:51 -05:00
pata_amd.c [PATCH] libata: kill unnecessary sht->max_sectors initializations 2006-12-03 17:56:22 +09:00
pata_artop.c [PATCH] libata: kill unnecessary sht->max_sectors initializations 2006-12-03 17:56:22 +09:00
pata_atiixp.c [PATCH] libata: kill unnecessary sht->max_sectors initializations 2006-12-03 17:56:22 +09:00
pata_cmd64x.c libata cmd64x: whack into a shape that looks like the documentation 2007-01-24 19:52:31 -05:00
pata_cs5520.c [PATCH] libata: kill unnecessary sht->max_sectors initializations 2006-12-03 17:56:22 +09:00
pata_cs5530.c [libata] pata_cs5530: suspend/resume support tweak 2006-12-20 13:03:11 -05:00
pata_cs5535.c [libata] pata_cs5535: fix build 2006-12-03 07:57:21 -05:00
pata_cypress.c [PATCH] libata: kill unnecessary sht->max_sectors initializations 2006-12-03 17:56:22 +09:00
pata_efar.c [PATCH] libata: kill unnecessary sht->max_sectors initializations 2006-12-03 17:56:22 +09:00
pata_hpt3x2n.c libata hpt3xn: Hopefully sort out the DPLL logic versus the vendor code 2007-01-24 19:52:31 -05:00
pata_hpt3x3.c [PATCH] libata: kill unnecessary sht->max_sectors initializations 2006-12-03 17:56:22 +09:00
pata_hpt37x.c [PATCH] hpt37x: Two important bug fixes 2007-01-05 23:55:29 -08:00
pata_hpt366.c [PATCH] libata: kill unnecessary sht->max_sectors initializations 2006-12-03 17:56:22 +09:00
pata_isapnp.c [PATCH] libata: kill unnecessary sht->max_sectors initializations 2006-12-03 17:56:22 +09:00
pata_it821x.c libata: set_mode, Fix the FIXME 2007-01-24 19:55:16 -05:00
pata_ixp4xx_cf.c libata: set_mode, Fix the FIXME 2007-01-24 19:55:16 -05:00
pata_jmicron.c [PATCH] libata: kill unnecessary sht->max_sectors initializations 2006-12-03 17:56:22 +09:00
pata_legacy.c libata: set_mode, Fix the FIXME 2007-01-24 19:55:16 -05:00
pata_marvell.c [PATCH] libata: kill unnecessary sht->max_sectors initializations 2006-12-03 17:56:22 +09:00
pata_mpiix.c [PATCH] libata: kill unnecessary sht->max_sectors initializations 2006-12-03 17:56:22 +09:00
pata_netcell.c [PATCH] libata: kill unnecessary sht->max_sectors initializations 2006-12-03 17:56:22 +09:00
pata_ns87410.c [PATCH] libata: kill unnecessary sht->max_sectors initializations 2006-12-03 17:56:22 +09:00
pata_oldpiix.c [PATCH] libata: kill unnecessary sht->max_sectors initializations 2006-12-03 17:56:22 +09:00
pata_opti.c [PATCH] libata: kill unnecessary sht->max_sectors initializations 2006-12-03 17:56:22 +09:00
pata_optidma.c [PATCH] libata: kill unnecessary sht->max_sectors initializations 2006-12-03 17:56:22 +09:00
pata_pcmcia.c [PATCH] pcmcia: conf.ConfigBase and conf.Present consolidation 2006-12-04 20:12:02 -05:00
pata_pdc202xx_old.c [PATCH] libata: kill unnecessary sht->max_sectors initializations 2006-12-03 17:56:22 +09:00
pata_pdc2027x.c [PATCH] libata: kill unnecessary sht->max_sectors initializations 2006-12-03 17:56:22 +09:00
pata_platform.c [PATCH] libata: kill unnecessary sht->max_sectors initializations 2006-12-03 17:56:22 +09:00
pata_qdi.c [PATCH] ata: fix platform_device_register_simple() error check 2006-12-16 10:45:28 -05:00
pata_radisys.c [PATCH] libata: kill unnecessary sht->max_sectors initializations 2006-12-03 17:56:22 +09:00
pata_rz1000.c libata: set_mode, Fix the FIXME 2007-01-24 19:55:16 -05:00
pata_sc1200.c [PATCH] libata: kill unnecessary sht->max_sectors initializations 2006-12-03 17:56:22 +09:00
pata_serverworks.c [PATCH] libata: kill unnecessary sht->max_sectors initializations 2006-12-03 17:56:22 +09:00
pata_sil680.c [PATCH] libata: kill unnecessary sht->max_sectors initializations 2006-12-03 17:56:22 +09:00
pata_sis.c [PATCH] libata: kill unnecessary sht->max_sectors initializations 2006-12-03 17:56:22 +09:00
pata_sl82c105.c [PATCH] libata: kill unnecessary sht->max_sectors initializations 2006-12-03 17:56:22 +09:00
pata_triflex.c [PATCH] libata: kill unnecessary sht->max_sectors initializations 2006-12-03 17:56:22 +09:00
pata_via.c [libata] pata_via: suspend/resume support fix 2006-12-20 13:09:10 -05:00
pata_winbond.c [PATCH] ata: fix platform_device_register_simple() error check 2006-12-16 10:45:28 -05:00
pdc_adma.c [PATCH] Fix numerous kcalloc() calls, convert to kzalloc() 2006-12-13 09:05:52 -08:00
sata_mv.c sata_mv HighPoint 2310 support (88SX7042) 2007-01-19 19:24:36 -05:00
sata_nv.c sata_nv: don't rely on NV_INT_DEV indication with ADMA 2007-01-24 02:01:49 -05:00
sata_promise.c [PATCH] sata_promise: new EH conversion, take 2 2006-12-07 07:25:01 -05:00
sata_promise.h
sata_qstor.c
sata_sil24.c
sata_sil.c [PATCH] libata: move BMDMA host status recording from EH to interrupt handler 2006-12-03 17:56:24 +09:00
sata_sis.c
sata_svw.c [libata] sata_svw, sata_vsc: kill iomem warnings 2006-12-20 14:37:04 -05:00
sata_sx4.c
sata_uli.c libata: implement ATA_FLAG_IGN_SIMPLEX and use it in sata_uli 2007-01-25 17:26:01 -05:00
sata_via.c sata_via: style clean up, no indirect method call in LLD 2007-01-26 17:24:07 -05:00
sata_vsc.c [libata] sata_svw, sata_vsc: kill iomem warnings 2006-12-20 14:37:04 -05:00