mirror of
https://github.com/adulau/aha.git
synced 2024-12-27 19:26:25 +00:00
swiotlb: Remove the swiotlb variable usage
POWERPC doesn't expect it to be used. This fixes the linux-next build failure reported by Stephen Rothwell: lib/swiotlb.c: In function 'setup_io_tlb_npages': lib/swiotlb.c:114: error: 'swiotlb' undeclared (first use in this function) Reported-by: Stephen Rothwell <sfr@canb.auug.org.au> Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp> Cc: peterz@infradead.org LKML-Reference: <20091112000258F.fujita.tomonori@lab.ntt.co.jp> Signed-off-by: Ingo Molnar <mingo@elte.hu>
This commit is contained in:
parent
b4941a9a60
commit
b18485e7ac
4 changed files with 18 additions and 10 deletions
|
@ -9,11 +9,12 @@ extern int swiotlb_force;
|
|||
|
||||
#ifdef CONFIG_SWIOTLB
|
||||
extern int swiotlb;
|
||||
extern void pci_swiotlb_init(void);
|
||||
extern int pci_swiotlb_init(void);
|
||||
#else
|
||||
#define swiotlb 0
|
||||
static inline void pci_swiotlb_init(void)
|
||||
static inline int pci_swiotlb_init(void)
|
||||
{
|
||||
return 0;
|
||||
}
|
||||
#endif
|
||||
|
||||
|
|
|
@ -125,16 +125,13 @@ static void __init dma32_free_bootmem(void)
|
|||
|
||||
void __init pci_iommu_alloc(void)
|
||||
{
|
||||
/* swiotlb is forced by the boot option */
|
||||
int use_swiotlb = swiotlb;
|
||||
#ifdef CONFIG_X86_64
|
||||
/* free the range so iommu could get some range less than 4G */
|
||||
dma32_free_bootmem();
|
||||
#else
|
||||
dma_ops = &nommu_dma_ops;
|
||||
#endif
|
||||
pci_swiotlb_init();
|
||||
if (use_swiotlb)
|
||||
if (pci_swiotlb_init())
|
||||
return;
|
||||
|
||||
gart_iommu_hole_init();
|
||||
|
|
|
@ -42,16 +42,27 @@ static struct dma_map_ops swiotlb_dma_ops = {
|
|||
.dma_supported = NULL,
|
||||
};
|
||||
|
||||
void __init pci_swiotlb_init(void)
|
||||
/*
|
||||
* pci_swiotlb_init - initialize swiotlb if necessary
|
||||
*
|
||||
* This returns non-zero if we are forced to use swiotlb (by the boot
|
||||
* option).
|
||||
*/
|
||||
int __init pci_swiotlb_init(void)
|
||||
{
|
||||
/* don't initialize swiotlb if iommu=off (no_iommu=1) */
|
||||
#ifdef CONFIG_X86_64
|
||||
if (!no_iommu && max_pfn > MAX_DMA32_PFN)
|
||||
swiotlb = 1;
|
||||
#endif
|
||||
if (swiotlb_force)
|
||||
swiotlb = 1;
|
||||
|
||||
if (swiotlb) {
|
||||
swiotlb_init(0);
|
||||
dma_ops = &swiotlb_dma_ops;
|
||||
} else
|
||||
dma_ops = &nommu_dma_ops;
|
||||
|
||||
return swiotlb_force;
|
||||
}
|
||||
|
|
|
@ -109,10 +109,9 @@ setup_io_tlb_npages(char *str)
|
|||
}
|
||||
if (*str == ',')
|
||||
++str;
|
||||
if (!strcmp(str, "force")) {
|
||||
if (!strcmp(str, "force"))
|
||||
swiotlb_force = 1;
|
||||
swiotlb = 1;
|
||||
}
|
||||
|
||||
return 1;
|
||||
}
|
||||
__setup("swiotlb=", setup_io_tlb_npages);
|
||||
|
|
Loading…
Reference in a new issue