diff options
author | Christoph Hellwig <hch@lst.de> | 2019-08-13 03:25:06 -0400 |
---|---|---|
committer | Tony Luck <tony.luck@intel.com> | 2019-08-16 14:33:57 -0400 |
commit | df43acac8e32e2ee51a1e9376993c5ac18598d92 (patch) | |
tree | fd86e0604c0485dd2116e38575806f93189bddb3 | |
parent | 2e0f2b1659ddd7bb005ca0bf9f92915904974676 (diff) |
ia64: remove the zx1 swiotlb machvec
The aim of this machvec is to support devices with < 32-bit dma
masks. But given that ia64 only has a ZONE_DMA32 and not a ZONE_DMA
that isn't supported by swiotlb either.
Signed-off-by: Christoph Hellwig <hch@lst.de>
Link: https://lkml.kernel.org/r/20190813072514.23299-21-hch@lst.de
Signed-off-by: Tony Luck <tony.luck@intel.com>
-rw-r--r-- | Documentation/admin-guide/kernel-parameters.txt | 2 | ||||
-rw-r--r-- | arch/ia64/Kconfig | 13 | ||||
-rw-r--r-- | arch/ia64/Kconfig.debug | 2 | ||||
-rw-r--r-- | arch/ia64/Makefile | 2 | ||||
-rw-r--r-- | arch/ia64/hp/common/Makefile | 2 | ||||
-rw-r--r-- | arch/ia64/hp/common/hwsw_iommu.c | 60 | ||||
-rw-r--r-- | arch/ia64/hp/common/sba_iommu.c | 15 | ||||
-rw-r--r-- | arch/ia64/hp/zx1/Makefile | 2 | ||||
-rw-r--r-- | arch/ia64/hp/zx1/hpzx1_swiotlb_machvec.c | 3 | ||||
-rw-r--r-- | arch/ia64/include/asm/acpi.h | 2 | ||||
-rw-r--r-- | arch/ia64/include/asm/dma-mapping.h | 8 | ||||
-rw-r--r-- | arch/ia64/include/asm/machvec.h | 15 | ||||
-rw-r--r-- | arch/ia64/include/asm/machvec_hpzx1_swiotlb.h | 20 | ||||
-rw-r--r-- | arch/ia64/kernel/dma-mapping.c | 6 | ||||
-rw-r--r-- | drivers/char/agp/Kconfig | 2 |
15 files changed, 7 insertions, 147 deletions
diff --git a/Documentation/admin-guide/kernel-parameters.txt b/Documentation/admin-guide/kernel-parameters.txt index 7ccd158b3894..4ace5af0e9a7 100644 --- a/Documentation/admin-guide/kernel-parameters.txt +++ b/Documentation/admin-guide/kernel-parameters.txt | |||
@@ -2373,7 +2373,7 @@ | |||
2373 | 2373 | ||
2374 | machvec= [IA-64] Force the use of a particular machine-vector | 2374 | machvec= [IA-64] Force the use of a particular machine-vector |
2375 | (machvec) in a generic kernel. | 2375 | (machvec) in a generic kernel. |
2376 | Example: machvec=hpzx1_swiotlb | 2376 | Example: machvec=hpzx1 |
2377 | 2377 | ||
2378 | machtype= [Loongson] Share the same kernel image file between different | 2378 | machtype= [Loongson] Share the same kernel image file between different |
2379 | yeeloong laptop. | 2379 | yeeloong laptop. |
diff --git a/arch/ia64/Kconfig b/arch/ia64/Kconfig index 63db7a5378ac..a42ab41ee8ab 100644 --- a/arch/ia64/Kconfig +++ b/arch/ia64/Kconfig | |||
@@ -138,7 +138,6 @@ config IA64_GENERIC | |||
138 | DIG-compliant For DIG ("Developer's Interface Guide") compliant systems | 138 | DIG-compliant For DIG ("Developer's Interface Guide") compliant systems |
139 | DIG+Intel+IOMMU For DIG systems with Intel IOMMU | 139 | DIG+Intel+IOMMU For DIG systems with Intel IOMMU |
140 | HP-zx1/sx1000 For HP systems | 140 | HP-zx1/sx1000 For HP systems |
141 | HP-zx1/sx1000+swiotlb For HP systems with (broken) DMA-constrained devices. | ||
142 | SGI-UV For SGI UV systems | 141 | SGI-UV For SGI UV systems |
143 | 142 | ||
144 | If you don't know what to do, choose "generic". | 143 | If you don't know what to do, choose "generic". |
@@ -158,16 +157,6 @@ config IA64_HP_ZX1 | |||
158 | Build a kernel that runs on HP zx1 and sx1000 systems. This adds | 157 | Build a kernel that runs on HP zx1 and sx1000 systems. This adds |
159 | support for the HP I/O MMU. | 158 | support for the HP I/O MMU. |
160 | 159 | ||
161 | config IA64_HP_ZX1_SWIOTLB | ||
162 | bool "HP-zx1/sx1000 with software I/O TLB" | ||
163 | select SWIOTLB | ||
164 | help | ||
165 | Build a kernel that runs on HP zx1 and sx1000 systems even when they | ||
166 | have broken PCI devices which cannot DMA to full 32 bits. Apart | ||
167 | from support for the HP I/O MMU, this includes support for the software | ||
168 | I/O TLB, which allows supporting the broken devices at the expense of | ||
169 | wasting some kernel memory (about 2MB by default). | ||
170 | |||
171 | config IA64_SGI_UV | 160 | config IA64_SGI_UV |
172 | bool "SGI-UV" | 161 | bool "SGI-UV" |
173 | select NUMA | 162 | select NUMA |
@@ -350,7 +339,7 @@ config ARCH_SPARSEMEM_ENABLE | |||
350 | select SPARSEMEM_VMEMMAP_ENABLE | 339 | select SPARSEMEM_VMEMMAP_ENABLE |
351 | 340 | ||
352 | config ARCH_DISCONTIGMEM_DEFAULT | 341 | config ARCH_DISCONTIGMEM_DEFAULT |
353 | def_bool y if (IA64_GENERIC || IA64_HP_ZX1 || IA64_HP_ZX1_SWIOTLB) | 342 | def_bool y if (IA64_GENERIC || IA64_HP_ZX1) |
354 | depends on ARCH_DISCONTIGMEM_ENABLE | 343 | depends on ARCH_DISCONTIGMEM_ENABLE |
355 | 344 | ||
356 | config NUMA | 345 | config NUMA |
diff --git a/arch/ia64/Kconfig.debug b/arch/ia64/Kconfig.debug index 793a613c54ab..abf8d04ab6ab 100644 --- a/arch/ia64/Kconfig.debug +++ b/arch/ia64/Kconfig.debug | |||
@@ -14,7 +14,7 @@ config IA64_GRANULE_16MB | |||
14 | 14 | ||
15 | config IA64_GRANULE_64MB | 15 | config IA64_GRANULE_64MB |
16 | bool "64MB" | 16 | bool "64MB" |
17 | depends on !(IA64_GENERIC || IA64_HP_ZX1 || IA64_HP_ZX1_SWIOTLB) | 17 | depends on !(IA64_GENERIC || IA64_HP_ZX1) |
18 | 18 | ||
19 | endchoice | 19 | endchoice |
20 | 20 | ||
diff --git a/arch/ia64/Makefile b/arch/ia64/Makefile index c06802799659..0b3647efde5d 100644 --- a/arch/ia64/Makefile +++ b/arch/ia64/Makefile | |||
@@ -54,12 +54,10 @@ core-$(CONFIG_IA64_DIG) += arch/ia64/dig/ | |||
54 | core-$(CONFIG_IA64_DIG_VTD) += arch/ia64/dig/ | 54 | core-$(CONFIG_IA64_DIG_VTD) += arch/ia64/dig/ |
55 | core-$(CONFIG_IA64_GENERIC) += arch/ia64/dig/ | 55 | core-$(CONFIG_IA64_GENERIC) += arch/ia64/dig/ |
56 | core-$(CONFIG_IA64_HP_ZX1) += arch/ia64/dig/ | 56 | core-$(CONFIG_IA64_HP_ZX1) += arch/ia64/dig/ |
57 | core-$(CONFIG_IA64_HP_ZX1_SWIOTLB) += arch/ia64/dig/ | ||
58 | core-$(CONFIG_IA64_SGI_UV) += arch/ia64/uv/ | 57 | core-$(CONFIG_IA64_SGI_UV) += arch/ia64/uv/ |
59 | 58 | ||
60 | drivers-y += arch/ia64/pci/ | 59 | drivers-y += arch/ia64/pci/ |
61 | drivers-$(CONFIG_IA64_HP_ZX1) += arch/ia64/hp/common/ arch/ia64/hp/zx1/ | 60 | drivers-$(CONFIG_IA64_HP_ZX1) += arch/ia64/hp/common/ arch/ia64/hp/zx1/ |
62 | drivers-$(CONFIG_IA64_HP_ZX1_SWIOTLB) += arch/ia64/hp/common/ arch/ia64/hp/zx1/ | ||
63 | drivers-$(CONFIG_IA64_GENERIC) += arch/ia64/hp/common/ arch/ia64/hp/zx1/ arch/ia64/uv/ | 61 | drivers-$(CONFIG_IA64_GENERIC) += arch/ia64/hp/common/ arch/ia64/hp/zx1/ arch/ia64/uv/ |
64 | drivers-$(CONFIG_OPROFILE) += arch/ia64/oprofile/ | 62 | drivers-$(CONFIG_OPROFILE) += arch/ia64/oprofile/ |
65 | 63 | ||
diff --git a/arch/ia64/hp/common/Makefile b/arch/ia64/hp/common/Makefile index 6026308f9a62..47c8f6ecb6f4 100644 --- a/arch/ia64/hp/common/Makefile +++ b/arch/ia64/hp/common/Makefile | |||
@@ -7,6 +7,4 @@ | |||
7 | # | 7 | # |
8 | 8 | ||
9 | obj-y := sba_iommu.o | 9 | obj-y := sba_iommu.o |
10 | obj-$(CONFIG_IA64_HP_ZX1_SWIOTLB) += hwsw_iommu.o | ||
11 | obj-$(CONFIG_IA64_GENERIC) += hwsw_iommu.o | ||
12 | obj-$(CONFIG_IA64_HP_AML_NFW) += aml_nfw.o | 10 | obj-$(CONFIG_IA64_HP_AML_NFW) += aml_nfw.o |
diff --git a/arch/ia64/hp/common/hwsw_iommu.c b/arch/ia64/hp/common/hwsw_iommu.c deleted file mode 100644 index 8840ed97712f..000000000000 --- a/arch/ia64/hp/common/hwsw_iommu.c +++ /dev/null | |||
@@ -1,60 +0,0 @@ | |||
1 | // SPDX-License-Identifier: GPL-2.0 | ||
2 | /* | ||
3 | * Copyright (c) 2004 Hewlett-Packard Development Company, L.P. | ||
4 | * Contributed by David Mosberger-Tang <davidm@hpl.hp.com> | ||
5 | * | ||
6 | * This is a pseudo I/O MMU which dispatches to the hardware I/O MMU | ||
7 | * whenever possible. We assume that the hardware I/O MMU requires | ||
8 | * full 32-bit addressability, as is the case, e.g., for HP zx1-based | ||
9 | * systems (there, the I/O MMU window is mapped at 3-4GB). If a | ||
10 | * device doesn't provide full 32-bit addressability, we fall back on | ||
11 | * the sw I/O TLB. This is good enough to let us support broken | ||
12 | * hardware such as soundcards which have a DMA engine that can | ||
13 | * address only 28 bits. | ||
14 | */ | ||
15 | |||
16 | #include <linux/device.h> | ||
17 | #include <linux/dma-mapping.h> | ||
18 | #include <linux/swiotlb.h> | ||
19 | #include <linux/export.h> | ||
20 | #include <asm/machvec.h> | ||
21 | |||
22 | extern const struct dma_map_ops sba_dma_ops; | ||
23 | |||
24 | /* swiotlb declarations & definitions: */ | ||
25 | extern int swiotlb_late_init_with_default_size (size_t size); | ||
26 | |||
27 | /* | ||
28 | * Note: we need to make the determination of whether or not to use | ||
29 | * the sw I/O TLB based purely on the device structure. Anything else | ||
30 | * would be unreliable or would be too intrusive. | ||
31 | */ | ||
32 | static inline int use_swiotlb(struct device *dev) | ||
33 | { | ||
34 | return dev && dev->dma_mask && | ||
35 | !sba_dma_ops.dma_supported(dev, *dev->dma_mask); | ||
36 | } | ||
37 | |||
38 | const struct dma_map_ops *hwsw_dma_get_ops(struct device *dev) | ||
39 | { | ||
40 | if (use_swiotlb(dev)) | ||
41 | return NULL; | ||
42 | return &sba_dma_ops; | ||
43 | } | ||
44 | EXPORT_SYMBOL(hwsw_dma_get_ops); | ||
45 | |||
46 | void __init | ||
47 | hwsw_init (void) | ||
48 | { | ||
49 | /* default to a smallish 2MB sw I/O TLB */ | ||
50 | if (swiotlb_late_init_with_default_size (2 * (1<<20)) != 0) { | ||
51 | #ifdef CONFIG_IA64_GENERIC | ||
52 | /* Better to have normal DMA than panic */ | ||
53 | printk(KERN_WARNING "%s: Failed to initialize software I/O TLB," | ||
54 | " reverting to hpzx1 platform vector\n", __func__); | ||
55 | machvec_init("hpzx1"); | ||
56 | #else | ||
57 | panic("Unable to initialize software I/O TLB services"); | ||
58 | #endif | ||
59 | } | ||
60 | } | ||
diff --git a/arch/ia64/hp/common/sba_iommu.c b/arch/ia64/hp/common/sba_iommu.c index 18321ce8bfa0..215fa688b729 100644 --- a/arch/ia64/hp/common/sba_iommu.c +++ b/arch/ia64/hp/common/sba_iommu.c | |||
@@ -2059,7 +2059,7 @@ arch_initcall(acpi_sba_ioc_init_acpi); | |||
2059 | static int __init | 2059 | static int __init |
2060 | sba_init(void) | 2060 | sba_init(void) |
2061 | { | 2061 | { |
2062 | if (!ia64_platform_is("hpzx1") && !ia64_platform_is("hpzx1_swiotlb")) | 2062 | if (!ia64_platform_is("hpzx1")) |
2063 | return 0; | 2063 | return 0; |
2064 | 2064 | ||
2065 | #if defined(CONFIG_IA64_GENERIC) | 2065 | #if defined(CONFIG_IA64_GENERIC) |
@@ -2102,19 +2102,6 @@ sba_init(void) | |||
2102 | return 0; | 2102 | return 0; |
2103 | } | 2103 | } |
2104 | 2104 | ||
2105 | #if defined(CONFIG_IA64_GENERIC) || defined(CONFIG_IA64_HP_ZX1_SWIOTLB) | ||
2106 | /* | ||
2107 | * hpzx1_swiotlb needs to have a fairly small swiotlb bounce | ||
2108 | * buffer setup to support devices with smaller DMA masks than | ||
2109 | * sba_iommu can handle. | ||
2110 | */ | ||
2111 | if (ia64_platform_is("hpzx1_swiotlb")) { | ||
2112 | extern void hwsw_init(void); | ||
2113 | |||
2114 | hwsw_init(); | ||
2115 | } | ||
2116 | #endif | ||
2117 | |||
2118 | { | 2105 | { |
2119 | struct pci_bus *b = NULL; | 2106 | struct pci_bus *b = NULL; |
2120 | while ((b = pci_find_next_bus(b)) != NULL) | 2107 | while ((b = pci_find_next_bus(b)) != NULL) |
diff --git a/arch/ia64/hp/zx1/Makefile b/arch/ia64/hp/zx1/Makefile index 46b37d820b59..bea44b4ed173 100644 --- a/arch/ia64/hp/zx1/Makefile +++ b/arch/ia64/hp/zx1/Makefile | |||
@@ -6,4 +6,4 @@ | |||
6 | # Copyright (C) Alex Williamson (alex_williamson@hp.com) | 6 | # Copyright (C) Alex Williamson (alex_williamson@hp.com) |
7 | # | 7 | # |
8 | 8 | ||
9 | obj-$(CONFIG_IA64_GENERIC) += hpzx1_machvec.o hpzx1_swiotlb_machvec.o | 9 | obj-$(CONFIG_IA64_GENERIC) += hpzx1_machvec.o |
diff --git a/arch/ia64/hp/zx1/hpzx1_swiotlb_machvec.c b/arch/ia64/hp/zx1/hpzx1_swiotlb_machvec.c deleted file mode 100644 index 4392a96b3c58..000000000000 --- a/arch/ia64/hp/zx1/hpzx1_swiotlb_machvec.c +++ /dev/null | |||
@@ -1,3 +0,0 @@ | |||
1 | #define MACHVEC_PLATFORM_NAME hpzx1_swiotlb | ||
2 | #define MACHVEC_PLATFORM_HEADER <asm/machvec_hpzx1_swiotlb.h> | ||
3 | #include <asm/machvec_init.h> | ||
diff --git a/arch/ia64/include/asm/acpi.h b/arch/ia64/include/asm/acpi.h index 01c1c269aa13..9e563df73038 100644 --- a/arch/ia64/include/asm/acpi.h +++ b/arch/ia64/include/asm/acpi.h | |||
@@ -39,8 +39,6 @@ static inline const char *acpi_get_sysname (void) | |||
39 | { | 39 | { |
40 | # if defined (CONFIG_IA64_HP_ZX1) | 40 | # if defined (CONFIG_IA64_HP_ZX1) |
41 | return "hpzx1"; | 41 | return "hpzx1"; |
42 | # elif defined (CONFIG_IA64_HP_ZX1_SWIOTLB) | ||
43 | return "hpzx1_swiotlb"; | ||
44 | # elif defined (CONFIG_IA64_SGI_UV) | 42 | # elif defined (CONFIG_IA64_SGI_UV) |
45 | return "uv"; | 43 | return "uv"; |
46 | # elif defined (CONFIG_IA64_DIG) | 44 | # elif defined (CONFIG_IA64_DIG) |
diff --git a/arch/ia64/include/asm/dma-mapping.h b/arch/ia64/include/asm/dma-mapping.h index f7ec71e4001e..a5d9d788eede 100644 --- a/arch/ia64/include/asm/dma-mapping.h +++ b/arch/ia64/include/asm/dma-mapping.h | |||
@@ -6,17 +6,11 @@ | |||
6 | * Copyright (C) 2003-2004 Hewlett-Packard Co | 6 | * Copyright (C) 2003-2004 Hewlett-Packard Co |
7 | * David Mosberger-Tang <davidm@hpl.hp.com> | 7 | * David Mosberger-Tang <davidm@hpl.hp.com> |
8 | */ | 8 | */ |
9 | #include <asm/machvec.h> | ||
10 | #include <linux/scatterlist.h> | ||
11 | #include <linux/dma-debug.h> | ||
12 | |||
13 | extern const struct dma_map_ops *dma_ops; | 9 | extern const struct dma_map_ops *dma_ops; |
14 | extern struct ia64_machine_vector ia64_mv; | ||
15 | extern void set_iommu_machvec(void); | ||
16 | 10 | ||
17 | static inline const struct dma_map_ops *get_arch_dma_ops(struct bus_type *bus) | 11 | static inline const struct dma_map_ops *get_arch_dma_ops(struct bus_type *bus) |
18 | { | 12 | { |
19 | return platform_dma_get_ops(NULL); | 13 | return dma_ops; |
20 | } | 14 | } |
21 | 15 | ||
22 | #endif /* _ASM_IA64_DMA_MAPPING_H */ | 16 | #endif /* _ASM_IA64_DMA_MAPPING_H */ |
diff --git a/arch/ia64/include/asm/machvec.h b/arch/ia64/include/asm/machvec.h index 5a9a8af79308..fa867e980d87 100644 --- a/arch/ia64/include/asm/machvec.h +++ b/arch/ia64/include/asm/machvec.h | |||
@@ -17,12 +17,6 @@ struct device; | |||
17 | 17 | ||
18 | typedef void ia64_mv_setup_t (char **); | 18 | typedef void ia64_mv_setup_t (char **); |
19 | typedef void ia64_mv_dma_init (void); | 19 | typedef void ia64_mv_dma_init (void); |
20 | typedef const struct dma_map_ops *ia64_mv_dma_get_ops(struct device *); | ||
21 | |||
22 | static inline void | ||
23 | machvec_noop (void) | ||
24 | { | ||
25 | } | ||
26 | 20 | ||
27 | extern void machvec_setup (char **); | 21 | extern void machvec_setup (char **); |
28 | 22 | ||
@@ -32,8 +26,6 @@ extern void machvec_setup (char **); | |||
32 | # include <asm/machvec_dig_vtd.h> | 26 | # include <asm/machvec_dig_vtd.h> |
33 | # elif defined (CONFIG_IA64_HP_ZX1) | 27 | # elif defined (CONFIG_IA64_HP_ZX1) |
34 | # include <asm/machvec_hpzx1.h> | 28 | # include <asm/machvec_hpzx1.h> |
35 | # elif defined (CONFIG_IA64_HP_ZX1_SWIOTLB) | ||
36 | # include <asm/machvec_hpzx1_swiotlb.h> | ||
37 | # elif defined (CONFIG_IA64_SGI_UV) | 29 | # elif defined (CONFIG_IA64_SGI_UV) |
38 | # include <asm/machvec_uv.h> | 30 | # include <asm/machvec_uv.h> |
39 | # elif defined (CONFIG_IA64_GENERIC) | 31 | # elif defined (CONFIG_IA64_GENERIC) |
@@ -44,7 +36,6 @@ extern void machvec_setup (char **); | |||
44 | # define ia64_platform_name ia64_mv.name | 36 | # define ia64_platform_name ia64_mv.name |
45 | # define platform_setup ia64_mv.setup | 37 | # define platform_setup ia64_mv.setup |
46 | # define platform_dma_init ia64_mv.dma_init | 38 | # define platform_dma_init ia64_mv.dma_init |
47 | # define platform_dma_get_ops ia64_mv.dma_get_ops | ||
48 | # endif | 39 | # endif |
49 | 40 | ||
50 | /* __attribute__((__aligned__(16))) is required to make size of the | 41 | /* __attribute__((__aligned__(16))) is required to make size of the |
@@ -56,7 +47,6 @@ struct ia64_machine_vector { | |||
56 | const char *name; | 47 | const char *name; |
57 | ia64_mv_setup_t *setup; | 48 | ia64_mv_setup_t *setup; |
58 | ia64_mv_dma_init *dma_init; | 49 | ia64_mv_dma_init *dma_init; |
59 | ia64_mv_dma_get_ops *dma_get_ops; | ||
60 | } __attribute__((__aligned__(16))); /* align attrib? see above comment */ | 50 | } __attribute__((__aligned__(16))); /* align attrib? see above comment */ |
61 | 51 | ||
62 | #define MACHVEC_INIT(name) \ | 52 | #define MACHVEC_INIT(name) \ |
@@ -64,7 +54,6 @@ struct ia64_machine_vector { | |||
64 | #name, \ | 54 | #name, \ |
65 | platform_setup, \ | 55 | platform_setup, \ |
66 | platform_dma_init, \ | 56 | platform_dma_init, \ |
67 | platform_dma_get_ops, \ | ||
68 | } | 57 | } |
69 | 58 | ||
70 | extern struct ia64_machine_vector ia64_mv; | 59 | extern struct ia64_machine_vector ia64_mv; |
@@ -76,7 +65,6 @@ extern void machvec_init_from_cmdline(const char *cmdline); | |||
76 | # endif /* CONFIG_IA64_GENERIC */ | 65 | # endif /* CONFIG_IA64_GENERIC */ |
77 | 66 | ||
78 | extern void swiotlb_dma_init(void); | 67 | extern void swiotlb_dma_init(void); |
79 | extern const struct dma_map_ops *dma_get_ops(struct device *); | ||
80 | 68 | ||
81 | /* | 69 | /* |
82 | * Define default versions so we can extend machvec for new platforms without having | 70 | * Define default versions so we can extend machvec for new platforms without having |
@@ -88,8 +76,5 @@ extern const struct dma_map_ops *dma_get_ops(struct device *); | |||
88 | #ifndef platform_dma_init | 76 | #ifndef platform_dma_init |
89 | # define platform_dma_init swiotlb_dma_init | 77 | # define platform_dma_init swiotlb_dma_init |
90 | #endif | 78 | #endif |
91 | #ifndef platform_dma_get_ops | ||
92 | # define platform_dma_get_ops dma_get_ops | ||
93 | #endif | ||
94 | 79 | ||
95 | #endif /* _ASM_IA64_MACHVEC_H */ | 80 | #endif /* _ASM_IA64_MACHVEC_H */ |
diff --git a/arch/ia64/include/asm/machvec_hpzx1_swiotlb.h b/arch/ia64/include/asm/machvec_hpzx1_swiotlb.h deleted file mode 100644 index 5aec6a008c61..000000000000 --- a/arch/ia64/include/asm/machvec_hpzx1_swiotlb.h +++ /dev/null | |||
@@ -1,20 +0,0 @@ | |||
1 | /* SPDX-License-Identifier: GPL-2.0 */ | ||
2 | #ifndef _ASM_IA64_MACHVEC_HPZX1_SWIOTLB_h | ||
3 | #define _ASM_IA64_MACHVEC_HPZX1_SWIOTLB_h | ||
4 | |||
5 | extern ia64_mv_setup_t dig_setup; | ||
6 | extern ia64_mv_dma_get_ops hwsw_dma_get_ops; | ||
7 | |||
8 | /* | ||
9 | * This stuff has dual use! | ||
10 | * | ||
11 | * For a generic kernel, the macros are used to initialize the | ||
12 | * platform's machvec structure. When compiling a non-generic kernel, | ||
13 | * the macros are used directly. | ||
14 | */ | ||
15 | #define ia64_platform_name "hpzx1_swiotlb" | ||
16 | #define platform_setup dig_setup | ||
17 | #define platform_dma_init machvec_noop | ||
18 | #define platform_dma_get_ops hwsw_dma_get_ops | ||
19 | |||
20 | #endif /* _ASM_IA64_MACHVEC_HPZX1_SWIOTLB_h */ | ||
diff --git a/arch/ia64/kernel/dma-mapping.c b/arch/ia64/kernel/dma-mapping.c index ad7d9963de34..4be5ee04ccfa 100644 --- a/arch/ia64/kernel/dma-mapping.c +++ b/arch/ia64/kernel/dma-mapping.c | |||
@@ -9,12 +9,6 @@ int iommu_detected __read_mostly; | |||
9 | const struct dma_map_ops *dma_ops; | 9 | const struct dma_map_ops *dma_ops; |
10 | EXPORT_SYMBOL(dma_ops); | 10 | EXPORT_SYMBOL(dma_ops); |
11 | 11 | ||
12 | const struct dma_map_ops *dma_get_ops(struct device *dev) | ||
13 | { | ||
14 | return dma_ops; | ||
15 | } | ||
16 | EXPORT_SYMBOL(dma_get_ops); | ||
17 | |||
18 | #ifdef CONFIG_SWIOTLB | 12 | #ifdef CONFIG_SWIOTLB |
19 | void *arch_dma_alloc(struct device *dev, size_t size, | 13 | void *arch_dma_alloc(struct device *dev, size_t size, |
20 | dma_addr_t *dma_handle, gfp_t gfp, unsigned long attrs) | 14 | dma_addr_t *dma_handle, gfp_t gfp, unsigned long attrs) |
diff --git a/drivers/char/agp/Kconfig b/drivers/char/agp/Kconfig index be50d7a93f4c..42d45e97c2ae 100644 --- a/drivers/char/agp/Kconfig +++ b/drivers/char/agp/Kconfig | |||
@@ -118,7 +118,7 @@ config AGP_I460 | |||
118 | 118 | ||
119 | config AGP_HP_ZX1 | 119 | config AGP_HP_ZX1 |
120 | tristate "HP ZX1 chipset AGP support" | 120 | tristate "HP ZX1 chipset AGP support" |
121 | depends on AGP && (IA64_HP_ZX1 || IA64_HP_ZX1_SWIOTLB || IA64_GENERIC) | 121 | depends on AGP && (IA64_HP_ZX1 || IA64_GENERIC) |
122 | help | 122 | help |
123 | This option gives you AGP GART support for the HP ZX1 chipset | 123 | This option gives you AGP GART support for the HP ZX1 chipset |
124 | for IA64 processors. | 124 | for IA64 processors. |