Merge branch 'pci/header-cleanup-immutable' of git://git.kernel.org/pub/scm/linux/kernel/git/helgaas/pci.git
The OpenRISC PCI support depends on the fixups done in the pci/header-cleanup-immutable branch. Also, there are OpenRISC irqchip fixups in v5.19-rc6 that are needed to test the virt platform. This merge creates a base for the OpenRISC PCI changes.
This commit is contained in:
commit
0757060a43
|
@ -365,13 +365,4 @@ extern void free_dma(unsigned int dmanr); /* release it again */
|
|||
#define KERNEL_HAVE_CHECK_DMA
|
||||
extern int check_dma(unsigned int dmanr);
|
||||
|
||||
/* From PCI */
|
||||
|
||||
#ifdef CONFIG_PCI
|
||||
extern int isa_dma_bridge_buggy;
|
||||
#else
|
||||
#define isa_dma_bridge_buggy (0)
|
||||
#endif
|
||||
|
||||
|
||||
#endif /* _ASM_DMA_H */
|
||||
|
|
|
@ -56,12 +56,6 @@ struct pci_controller {
|
|||
|
||||
/* IOMMU controls. */
|
||||
|
||||
/* TODO: integrate with include/asm-generic/pci.h ? */
|
||||
static inline int pci_get_legacy_ide_irq(struct pci_dev *dev, int channel)
|
||||
{
|
||||
return channel ? 15 : 14;
|
||||
}
|
||||
|
||||
#define pci_domain_nr(bus) ((struct pci_controller *)(bus)->sysdata)->index
|
||||
|
||||
static inline int pci_proc_domain(struct pci_bus *bus)
|
||||
|
|
|
@ -7,10 +7,5 @@
|
|||
#define ASM_ARC_DMA_H
|
||||
|
||||
#define MAX_DMA_ADDRESS 0xC0000000
|
||||
#ifdef CONFIG_PCI
|
||||
extern int isa_dma_bridge_buggy;
|
||||
#else
|
||||
#define isa_dma_bridge_buggy 0
|
||||
#endif
|
||||
|
||||
#endif
|
||||
|
|
|
@ -143,10 +143,4 @@ extern int get_dma_residue(unsigned int chan);
|
|||
|
||||
#endif /* CONFIG_ISA_DMA_API */
|
||||
|
||||
#ifdef CONFIG_PCI
|
||||
extern int isa_dma_bridge_buggy;
|
||||
#else
|
||||
#define isa_dma_bridge_buggy (0)
|
||||
#endif
|
||||
|
||||
#endif /* __ASM_ARM_DMA_H */
|
||||
|
|
|
@ -22,11 +22,6 @@ static inline int pci_proc_domain(struct pci_bus *bus)
|
|||
#define HAVE_PCI_MMAP
|
||||
#define ARCH_GENERIC_PCI_MMAP_RESOURCE
|
||||
|
||||
static inline int pci_get_legacy_ide_irq(struct pci_dev *dev, int channel)
|
||||
{
|
||||
return channel ? 15 : 14;
|
||||
}
|
||||
|
||||
extern void pcibios_report_status(unsigned int status_mask, int warn);
|
||||
|
||||
#endif /* __KERNEL__ */
|
||||
|
|
|
@ -9,7 +9,6 @@
|
|||
#include <asm/io.h>
|
||||
|
||||
#define PCIBIOS_MIN_IO 0x1000
|
||||
#define PCIBIOS_MIN_MEM 0
|
||||
|
||||
/*
|
||||
* Set to 1 if the kernel should re-assign all PCI bus numbers
|
||||
|
@ -18,21 +17,8 @@
|
|||
(pci_has_flag(PCI_REASSIGN_ALL_BUS))
|
||||
|
||||
#define arch_can_pci_mmap_wc() 1
|
||||
#define ARCH_GENERIC_PCI_MMAP_RESOURCE 1
|
||||
|
||||
extern int isa_dma_bridge_buggy;
|
||||
|
||||
#ifdef CONFIG_PCI
|
||||
static inline int pci_get_legacy_ide_irq(struct pci_dev *dev, int channel)
|
||||
{
|
||||
/* no legacy IRQ on arm64 */
|
||||
return -ENODEV;
|
||||
}
|
||||
|
||||
static inline int pci_proc_domain(struct pci_bus *bus)
|
||||
{
|
||||
return 1;
|
||||
}
|
||||
#endif /* CONFIG_PCI */
|
||||
/* Generic PCI */
|
||||
#include <asm-generic/pci.h>
|
||||
|
||||
#endif /* __ASM_PCI_H */
|
||||
|
|
|
@ -9,26 +9,7 @@
|
|||
|
||||
#include <asm/io.h>
|
||||
|
||||
#define PCIBIOS_MIN_IO 0
|
||||
#define PCIBIOS_MIN_MEM 0
|
||||
|
||||
/* C-SKY shim does not initialize PCI bus */
|
||||
#define pcibios_assign_all_busses() 1
|
||||
|
||||
extern int isa_dma_bridge_buggy;
|
||||
|
||||
#ifdef CONFIG_PCI
|
||||
static inline int pci_get_legacy_ide_irq(struct pci_dev *dev, int channel)
|
||||
{
|
||||
/* no legacy IRQ on csky */
|
||||
return -ENODEV;
|
||||
}
|
||||
|
||||
static inline int pci_proc_domain(struct pci_bus *bus)
|
||||
{
|
||||
/* always show the domain in /proc */
|
||||
return 1;
|
||||
}
|
||||
#endif /* CONFIG_PCI */
|
||||
/* Generic PCI */
|
||||
#include <asm-generic/pci.h>
|
||||
|
||||
#endif /* __ASM_CSKY_PCI_H */
|
||||
|
|
|
@ -12,8 +12,6 @@
|
|||
|
||||
extern unsigned long MAX_DMA_ADDRESS;
|
||||
|
||||
extern int isa_dma_bridge_buggy;
|
||||
|
||||
#define free_dma(x)
|
||||
|
||||
#endif /* _ASM_IA64_DMA_H */
|
||||
|
|
|
@ -63,10 +63,4 @@ static inline int pci_proc_domain(struct pci_bus *bus)
|
|||
return (pci_domain_nr(bus) != 0);
|
||||
}
|
||||
|
||||
#define HAVE_ARCH_PCI_GET_LEGACY_IDE_IRQ
|
||||
static inline int pci_get_legacy_ide_irq(struct pci_dev *dev, int channel)
|
||||
{
|
||||
return channel ? isa_irq_to_vector(15) : isa_irq_to_vector(14);
|
||||
}
|
||||
|
||||
#endif /* _ASM_IA64_PCI_H */
|
||||
|
|
|
@ -6,10 +6,4 @@
|
|||
bootmem allocator (but this should do it for this) */
|
||||
#define MAX_DMA_ADDRESS PAGE_OFFSET
|
||||
|
||||
#ifdef CONFIG_PCI
|
||||
extern int isa_dma_bridge_buggy;
|
||||
#else
|
||||
#define isa_dma_bridge_buggy (0)
|
||||
#endif
|
||||
|
||||
#endif /* _M68K_DMA_H */
|
||||
|
|
|
@ -2,8 +2,6 @@
|
|||
#ifndef _ASM_M68K_PCI_H
|
||||
#define _ASM_M68K_PCI_H
|
||||
|
||||
#include <asm-generic/pci.h>
|
||||
|
||||
#define pcibios_assign_all_busses() 1
|
||||
|
||||
#define PCIBIOS_MIN_IO 0x00000100
|
||||
|
|
|
@ -9,10 +9,4 @@
|
|||
/* Virtual address corresponding to last available physical memory address. */
|
||||
#define MAX_DMA_ADDRESS (CONFIG_KERNEL_START + memory_size - 1)
|
||||
|
||||
#ifdef CONFIG_PCI
|
||||
extern int isa_dma_bridge_buggy;
|
||||
#else
|
||||
#define isa_dma_bridge_buggy (0)
|
||||
#endif
|
||||
|
||||
#endif /* _ASM_MICROBLAZE_DMA_H */
|
||||
|
|
|
@ -307,12 +307,4 @@ static __inline__ int get_dma_residue(unsigned int dmanr)
|
|||
extern int request_dma(unsigned int dmanr, const char * device_id); /* reserve a DMA channel */
|
||||
extern void free_dma(unsigned int dmanr); /* release it again */
|
||||
|
||||
/* From PCI */
|
||||
|
||||
#ifdef CONFIG_PCI
|
||||
extern int isa_dma_bridge_buggy;
|
||||
#else
|
||||
#define isa_dma_bridge_buggy (0)
|
||||
#endif
|
||||
|
||||
#endif /* _ASM_DMA_H */
|
||||
|
|
|
@ -139,10 +139,4 @@ static inline int pci_proc_domain(struct pci_bus *bus)
|
|||
/* Do platform specific device initialization at pci_enable_device() time */
|
||||
extern int pcibios_plat_dev_init(struct pci_dev *dev);
|
||||
|
||||
/* Chances are this interrupt is wired PC-style ... */
|
||||
static inline int pci_get_legacy_ide_irq(struct pci_dev *dev, int channel)
|
||||
{
|
||||
return channel ? 15 : 14;
|
||||
}
|
||||
|
||||
#endif /* _ASM_PCI_H */
|
||||
|
|
|
@ -176,10 +176,4 @@ static __inline__ void set_dma_count(unsigned int dmanr, unsigned int count)
|
|||
|
||||
#define free_dma(dmanr)
|
||||
|
||||
#ifdef CONFIG_PCI
|
||||
extern int isa_dma_bridge_buggy;
|
||||
#else
|
||||
#define isa_dma_bridge_buggy (0)
|
||||
#endif
|
||||
|
||||
#endif /* _ASM_DMA_H */
|
||||
|
|
|
@ -162,11 +162,6 @@ extern void pcibios_init_bridge(struct pci_dev *);
|
|||
#define PCIBIOS_MIN_IO 0x10
|
||||
#define PCIBIOS_MIN_MEM 0x1000 /* NBPG - but pci/setup-res.c dies */
|
||||
|
||||
static inline int pci_get_legacy_ide_irq(struct pci_dev *dev, int channel)
|
||||
{
|
||||
return channel ? 15 : 14;
|
||||
}
|
||||
|
||||
#define HAVE_PCI_MMAP
|
||||
#define ARCH_GENERIC_PCI_MMAP_RESOURCE
|
||||
|
||||
|
|
|
@ -340,11 +340,5 @@ extern int request_dma(unsigned int dmanr, const char *device_id);
|
|||
/* release it again */
|
||||
extern void free_dma(unsigned int dmanr);
|
||||
|
||||
#ifdef CONFIG_PCI
|
||||
extern int isa_dma_bridge_buggy;
|
||||
#else
|
||||
#define isa_dma_bridge_buggy (0)
|
||||
#endif
|
||||
|
||||
#endif /* __KERNEL__ */
|
||||
#endif /* _ASM_POWERPC_DMA_H */
|
||||
|
|
|
@ -39,7 +39,6 @@
|
|||
#define pcibios_assign_all_busses() \
|
||||
(pci_has_flag(PCI_REASSIGN_ALL_BUS))
|
||||
|
||||
#define HAVE_ARCH_PCI_GET_LEGACY_IDE_IRQ
|
||||
static inline int pci_get_legacy_ide_irq(struct pci_dev *dev, int channel)
|
||||
{
|
||||
if (ppc_md.pci_get_legacy_ide_irq)
|
||||
|
|
|
@ -12,31 +12,7 @@
|
|||
|
||||
#include <asm/io.h>
|
||||
|
||||
#define PCIBIOS_MIN_IO 0
|
||||
#define PCIBIOS_MIN_MEM 0
|
||||
|
||||
/* RISC-V shim does not initialize PCI bus */
|
||||
#define pcibios_assign_all_busses() 1
|
||||
|
||||
#define ARCH_GENERIC_PCI_MMAP_RESOURCE 1
|
||||
|
||||
extern int isa_dma_bridge_buggy;
|
||||
|
||||
#ifdef CONFIG_PCI
|
||||
static inline int pci_get_legacy_ide_irq(struct pci_dev *dev, int channel)
|
||||
{
|
||||
/* no legacy IRQ on risc-v */
|
||||
return -ENODEV;
|
||||
}
|
||||
|
||||
static inline int pci_proc_domain(struct pci_bus *bus)
|
||||
{
|
||||
/* always show the domain in /proc */
|
||||
return 1;
|
||||
}
|
||||
|
||||
#ifdef CONFIG_NUMA
|
||||
|
||||
#if defined(CONFIG_PCI) && defined(CONFIG_NUMA)
|
||||
static inline int pcibus_to_node(struct pci_bus *bus)
|
||||
{
|
||||
return dev_to_node(&bus->dev);
|
||||
|
@ -46,8 +22,9 @@ static inline int pcibus_to_node(struct pci_bus *bus)
|
|||
cpu_all_mask : \
|
||||
cpumask_of_node(pcibus_to_node(bus)))
|
||||
#endif
|
||||
#endif /* CONFIG_NUMA */
|
||||
#endif /* defined(CONFIG_PCI) && defined(CONFIG_NUMA) */
|
||||
|
||||
#endif /* CONFIG_PCI */
|
||||
/* Generic PCI */
|
||||
#include <asm-generic/pci.h>
|
||||
|
||||
#endif /* _ASM_RISCV_PCI_H */
|
||||
|
|
|
@ -11,10 +11,4 @@
|
|||
*/
|
||||
#define MAX_DMA_ADDRESS 0x80000000
|
||||
|
||||
#ifdef CONFIG_PCI
|
||||
extern int isa_dma_bridge_buggy;
|
||||
#else
|
||||
#define isa_dma_bridge_buggy (0)
|
||||
#endif
|
||||
|
||||
#endif /* _ASM_S390_DMA_H */
|
||||
|
|
|
@ -6,7 +6,6 @@
|
|||
#include <linux/mutex.h>
|
||||
#include <linux/iommu.h>
|
||||
#include <linux/pci_hotplug.h>
|
||||
#include <asm-generic/pci.h>
|
||||
#include <asm/pci_clp.h>
|
||||
#include <asm/pci_debug.h>
|
||||
#include <asm/sclp.h>
|
||||
|
|
|
@ -137,10 +137,4 @@ extern int register_chan_caps(const char *dmac, struct dma_chan_caps *capslist);
|
|||
extern int dma_create_sysfs_files(struct dma_channel *, struct dma_info *);
|
||||
extern void dma_remove_sysfs_files(struct dma_channel *, struct dma_info *);
|
||||
|
||||
#ifdef CONFIG_PCI
|
||||
extern int isa_dma_bridge_buggy;
|
||||
#else
|
||||
#define isa_dma_bridge_buggy (0)
|
||||
#endif
|
||||
|
||||
#endif /* __ASM_SH_DMA_H */
|
||||
|
|
|
@ -88,10 +88,4 @@ static inline int pci_proc_domain(struct pci_bus *bus)
|
|||
return hose->need_domain_info;
|
||||
}
|
||||
|
||||
/* Chances are this interrupt is wired PC-style ... */
|
||||
static inline int pci_get_legacy_ide_irq(struct pci_dev *dev, int channel)
|
||||
{
|
||||
return channel ? 15 : 14;
|
||||
}
|
||||
|
||||
#endif /* __ASM_SH_PCI_H */
|
||||
|
|
|
@ -82,14 +82,6 @@
|
|||
#define DMA_BURST64 0x40
|
||||
#define DMA_BURSTBITS 0x7f
|
||||
|
||||
/* From PCI */
|
||||
|
||||
#ifdef CONFIG_PCI
|
||||
extern int isa_dma_bridge_buggy;
|
||||
#else
|
||||
#define isa_dma_bridge_buggy (0)
|
||||
#endif
|
||||
|
||||
#ifdef CONFIG_SPARC32
|
||||
struct device;
|
||||
|
||||
|
|
|
@ -40,13 +40,4 @@ static inline int pci_proc_domain(struct pci_bus *bus)
|
|||
#define get_pci_unmapped_area get_fb_unmapped_area
|
||||
#endif /* CONFIG_SPARC64 */
|
||||
|
||||
#if defined(CONFIG_SPARC64) || defined(CONFIG_LEON_PCI)
|
||||
static inline int pci_get_legacy_ide_irq(struct pci_dev *dev, int channel)
|
||||
{
|
||||
return PCI_IRQ_NONE;
|
||||
}
|
||||
#else
|
||||
#include <asm-generic/pci.h>
|
||||
#endif
|
||||
|
||||
#endif /* ___ASM_SPARC_PCI_H */
|
||||
|
|
|
@ -4,28 +4,8 @@
|
|||
#include <linux/types.h>
|
||||
#include <asm/io.h>
|
||||
|
||||
#define PCIBIOS_MIN_IO 0
|
||||
#define PCIBIOS_MIN_MEM 0
|
||||
|
||||
#define pcibios_assign_all_busses() 1
|
||||
|
||||
extern int isa_dma_bridge_buggy;
|
||||
|
||||
#ifdef CONFIG_PCI
|
||||
static inline int pci_get_legacy_ide_irq(struct pci_dev *dev, int channel)
|
||||
{
|
||||
/* no legacy IRQs */
|
||||
return -ENODEV;
|
||||
}
|
||||
#endif
|
||||
|
||||
#ifdef CONFIG_PCI_DOMAINS
|
||||
static inline int pci_proc_domain(struct pci_bus *bus)
|
||||
{
|
||||
/* always show the domain in /proc */
|
||||
return 1;
|
||||
}
|
||||
#endif /* CONFIG_PCI */
|
||||
/* Generic PCI */
|
||||
#include <asm-generic/pci.h>
|
||||
|
||||
#ifdef CONFIG_PCI_MSI_IRQ_DOMAIN
|
||||
/*
|
||||
|
|
|
@ -307,12 +307,4 @@ extern int request_dma(unsigned int dmanr, const char *device_id);
|
|||
extern void free_dma(unsigned int dmanr);
|
||||
#endif
|
||||
|
||||
/* From PCI */
|
||||
|
||||
#ifdef CONFIG_PCI
|
||||
extern int isa_dma_bridge_buggy;
|
||||
#else
|
||||
#define isa_dma_bridge_buggy (0)
|
||||
#endif
|
||||
|
||||
#endif /* _ASM_X86_DMA_H */
|
||||
|
|
|
@ -105,9 +105,6 @@ static inline void early_quirks(void) { }
|
|||
|
||||
extern void pci_iommu_alloc(void);
|
||||
|
||||
/* generic pci stuff */
|
||||
#include <asm-generic/pci.h>
|
||||
|
||||
#ifdef CONFIG_NUMA
|
||||
/* Returns the node based on pci bus */
|
||||
static inline int __pcibus_to_node(const struct pci_bus *bus)
|
||||
|
|
|
@ -1,6 +1,7 @@
|
|||
// SPDX-License-Identifier: GPL-2.0
|
||||
#include <linux/bitops.h>
|
||||
#include <linux/delay.h>
|
||||
#include <linux/isa-dma.h>
|
||||
#include <linux/pci.h>
|
||||
#include <asm/dma.h>
|
||||
#include <linux/io.h>
|
||||
|
|
|
@ -52,11 +52,4 @@
|
|||
extern int request_dma(unsigned int dmanr, const char * device_id);
|
||||
extern void free_dma(unsigned int dmanr);
|
||||
|
||||
#ifdef CONFIG_PCI
|
||||
extern int isa_dma_bridge_buggy;
|
||||
#else
|
||||
#define isa_dma_bridge_buggy (0)
|
||||
#endif
|
||||
|
||||
|
||||
#endif
|
||||
|
|
|
@ -43,7 +43,4 @@
|
|||
#define ARCH_GENERIC_PCI_MMAP_RESOURCE 1
|
||||
#define arch_can_pci_mmap_io() 1
|
||||
|
||||
/* Generic PCI */
|
||||
#include <asm-generic/pci.h>
|
||||
|
||||
#endif /* _XTENSA_PCI_H */
|
||||
|
|
|
@ -8,7 +8,7 @@
|
|||
#include <linux/slab.h>
|
||||
#include <linux/delay.h>
|
||||
#include <linux/dma-mapping.h>
|
||||
#include <asm/dma.h>
|
||||
#include <linux/isa-dma.h>
|
||||
#include <linux/comedi/comedidev.h>
|
||||
#include <linux/comedi/comedi_isadma.h>
|
||||
|
||||
|
|
|
@ -41,8 +41,10 @@ const char *pci_power_names[] = {
|
|||
};
|
||||
EXPORT_SYMBOL_GPL(pci_power_names);
|
||||
|
||||
#ifdef CONFIG_X86_32
|
||||
int isa_dma_bridge_buggy;
|
||||
EXPORT_SYMBOL(isa_dma_bridge_buggy);
|
||||
#endif
|
||||
|
||||
int pci_pci_problems;
|
||||
EXPORT_SYMBOL(pci_pci_problems);
|
||||
|
|
|
@ -17,6 +17,7 @@
|
|||
#include <linux/kernel.h>
|
||||
#include <linux/export.h>
|
||||
#include <linux/pci.h>
|
||||
#include <linux/isa-dma.h> /* isa_dma_bridge_buggy */
|
||||
#include <linux/init.h>
|
||||
#include <linux/delay.h>
|
||||
#include <linux/acpi.h>
|
||||
|
@ -30,7 +31,6 @@
|
|||
#include <linux/pm_runtime.h>
|
||||
#include <linux/suspend.h>
|
||||
#include <linux/switchtec.h>
|
||||
#include <asm/dma.h> /* isa_dma_bridge_buggy */
|
||||
#include "pci.h"
|
||||
|
||||
static ktime_t fixup_debug_start(struct pci_dev *dev,
|
||||
|
@ -239,6 +239,7 @@ static void quirk_passive_release(struct pci_dev *dev)
|
|||
DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_INTEL, PCI_DEVICE_ID_INTEL_82441, quirk_passive_release);
|
||||
DECLARE_PCI_FIXUP_RESUME(PCI_VENDOR_ID_INTEL, PCI_DEVICE_ID_INTEL_82441, quirk_passive_release);
|
||||
|
||||
#ifdef CONFIG_X86_32
|
||||
/*
|
||||
* The VIA VP2/VP3/MVP3 seem to have some 'features'. There may be a
|
||||
* workaround but VIA don't answer queries. If you happen to have good
|
||||
|
@ -265,6 +266,7 @@ DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_AL, PCI_DEVICE_ID_AL_M1533, quirk_isa_dma
|
|||
DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_NEC, PCI_DEVICE_ID_NEC_CBUS_1, quirk_isa_dma_hangs);
|
||||
DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_NEC, PCI_DEVICE_ID_NEC_CBUS_2, quirk_isa_dma_hangs);
|
||||
DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_NEC, PCI_DEVICE_ID_NEC_CBUS_3, quirk_isa_dma_hangs);
|
||||
#endif
|
||||
|
||||
/*
|
||||
* Intel NM10 "TigerPoint" LPC PM1a_STS.BM_STS must be clear
|
||||
|
|
|
@ -17,6 +17,7 @@
|
|||
#include <asm/dma.h>
|
||||
#include <asm/irq.h>
|
||||
#include <linux/pci.h>
|
||||
#include <linux/libata.h>
|
||||
#include <linux/ioport.h>
|
||||
#include <linux/init.h>
|
||||
|
||||
|
@ -322,8 +323,8 @@ static int pci_dev_uses_irq(struct pnp_dev *pnp, struct pci_dev *pci,
|
|||
* treat the compatibility IRQs as busy.
|
||||
*/
|
||||
if ((progif & 0x5) != 0x5)
|
||||
if (pci_get_legacy_ide_irq(pci, 0) == irq ||
|
||||
pci_get_legacy_ide_irq(pci, 1) == irq) {
|
||||
if (ATA_PRIMARY_IRQ(pci) == irq ||
|
||||
ATA_SECONDARY_IRQ(pci) == irq) {
|
||||
pnp_dbg(&pnp->dev, " legacy IDE device %s "
|
||||
"using irq %d\n", pci_name(pci), irq);
|
||||
return 1;
|
||||
|
|
|
@ -1,17 +1,30 @@
|
|||
/* SPDX-License-Identifier: GPL-2.0 */
|
||||
/*
|
||||
* linux/include/asm-generic/pci.h
|
||||
*
|
||||
* Copyright (C) 2003 Russell King
|
||||
*/
|
||||
#ifndef _ASM_GENERIC_PCI_H
|
||||
#define _ASM_GENERIC_PCI_H
|
||||
/* SPDX-License-Identifier: GPL-2.0-only */
|
||||
|
||||
#ifndef HAVE_ARCH_PCI_GET_LEGACY_IDE_IRQ
|
||||
static inline int pci_get_legacy_ide_irq(struct pci_dev *dev, int channel)
|
||||
#ifndef __ASM_GENERIC_PCI_H
|
||||
#define __ASM_GENERIC_PCI_H
|
||||
|
||||
#ifndef PCIBIOS_MIN_IO
|
||||
#define PCIBIOS_MIN_IO 0
|
||||
#endif
|
||||
|
||||
#ifndef PCIBIOS_MIN_MEM
|
||||
#define PCIBIOS_MIN_MEM 0
|
||||
#endif
|
||||
|
||||
#ifndef pcibios_assign_all_busses
|
||||
/* For bootloaders that do not initialize the PCI bus */
|
||||
#define pcibios_assign_all_busses() 1
|
||||
#endif
|
||||
|
||||
/* Enable generic resource mapping code in drivers/pci/ */
|
||||
#define ARCH_GENERIC_PCI_MMAP_RESOURCE
|
||||
|
||||
#ifdef CONFIG_PCI_DOMAINS
|
||||
static inline int pci_proc_domain(struct pci_bus *bus)
|
||||
{
|
||||
return channel ? 15 : 14;
|
||||
/* always show the domain in /proc */
|
||||
return 1;
|
||||
}
|
||||
#endif /* HAVE_ARCH_PCI_GET_LEGACY_IDE_IRQ */
|
||||
#endif /* CONFIG_PCI_DOMAINS */
|
||||
|
||||
#endif /* _ASM_GENERIC_PCI_H */
|
||||
#endif /* __ASM_GENERIC_PCI_H */
|
||||
|
|
|
@ -25,6 +25,8 @@ extern void pci_iounmap(struct pci_dev *dev, void __iomem *);
|
|||
#ifdef CONFIG_NO_GENERIC_PCI_IOPORT_MAP
|
||||
extern void __iomem *__pci_ioport_map(struct pci_dev *dev, unsigned long port,
|
||||
unsigned int nr);
|
||||
#elif !defined(CONFIG_HAS_IOPORT_MAP)
|
||||
#define __pci_ioport_map(dev, port, nr) NULL
|
||||
#else
|
||||
#define __pci_ioport_map(dev, port, nr) ioport_map((port), (nr))
|
||||
#endif
|
||||
|
|
|
@ -0,0 +1,14 @@
|
|||
/* SPDX-License-Identifier: GPL-2.0 */
|
||||
|
||||
#ifndef __LINUX_ISA_DMA_H
|
||||
#define __LINUX_ISA_DMA_H
|
||||
|
||||
#include <asm/dma.h>
|
||||
|
||||
#if defined(CONFIG_PCI) && defined(CONFIG_X86_32)
|
||||
extern int isa_dma_bridge_buggy;
|
||||
#else
|
||||
#define isa_dma_bridge_buggy (0)
|
||||
#endif
|
||||
|
||||
#endif /* __LINUX_ISA_DMA_H */
|
|
@ -12,8 +12,8 @@
|
|||
#undef HAVE_REALLY_SLOW_DMA_CONTROLLER
|
||||
|
||||
#include <linux/export.h>
|
||||
#include <linux/isa-dma.h>
|
||||
#include <sound/core.h>
|
||||
#include <asm/dma.h>
|
||||
|
||||
/**
|
||||
* snd_dma_program - program an ISA DMA transfer
|
||||
|
|
Loading…
Reference in New Issue