drm_compat: remove kmap_atomic_prot_pfn()
This function is unused, and yet creates build problems: the symbol init_mm is not exported by the latest -rc kernels and I don't believe it ever will be. Even CONFIG_UNUSED_SYMBOLS does not provide it anymore. If this function is needed in the future, it needs to be reinvented in any case. So remove it. Signed-off-by: Pekka Paalanen <pq@iki.fi>main
parent
e32aa6226f
commit
0054e14793
|
@ -730,35 +730,6 @@ void *idr_replace(struct idr *idp, void *ptr, int id)
|
||||||
EXPORT_SYMBOL(idr_replace);
|
EXPORT_SYMBOL(idr_replace);
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#if defined(DRM_KMAP_ATOMIC_PROT_PFN)
|
|
||||||
#define drm_kmap_get_fixmap_pte(vaddr) \
|
|
||||||
pte_offset_kernel(pmd_offset(pud_offset(pgd_offset_k(vaddr), vaddr), (vaddr)), (vaddr))
|
|
||||||
|
|
||||||
void *kmap_atomic_prot_pfn(unsigned long pfn, enum km_type type,
|
|
||||||
pgprot_t protection)
|
|
||||||
{
|
|
||||||
enum fixed_addresses idx;
|
|
||||||
unsigned long vaddr;
|
|
||||||
static pte_t *km_pte;
|
|
||||||
static int initialized = 0;
|
|
||||||
|
|
||||||
if (unlikely(!initialized)) {
|
|
||||||
km_pte = drm_kmap_get_fixmap_pte(__fix_to_virt(FIX_KMAP_BEGIN));
|
|
||||||
initialized = 1;
|
|
||||||
}
|
|
||||||
|
|
||||||
pagefault_disable();
|
|
||||||
idx = type + KM_TYPE_NR*smp_processor_id();
|
|
||||||
vaddr = __fix_to_virt(FIX_KMAP_BEGIN + idx);
|
|
||||||
set_pte(km_pte-idx, pfn_pte(pfn, protection));
|
|
||||||
|
|
||||||
return (void*) vaddr;
|
|
||||||
}
|
|
||||||
|
|
||||||
EXPORT_SYMBOL(kmap_atomic_prot_pfn);
|
|
||||||
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#ifdef DRM_FULL_MM_COMPAT
|
#ifdef DRM_FULL_MM_COMPAT
|
||||||
#ifdef DRM_NO_FAULT
|
#ifdef DRM_NO_FAULT
|
||||||
unsigned long drm_bo_vm_nopfn(struct vm_area_struct *vma,
|
unsigned long drm_bo_vm_nopfn(struct vm_area_struct *vma,
|
||||||
|
|
|
@ -338,27 +338,6 @@ typedef _Bool bool;
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
|
||||||
#if (defined(CONFIG_X86) && defined(CONFIG_X86_32) && defined(CONFIG_HIGHMEM))
|
|
||||||
/*
|
|
||||||
* pgd_offset_k() is a macro that uses the symbol init_mm,
|
|
||||||
* check that it is available.
|
|
||||||
*/
|
|
||||||
# if ((LINUX_VERSION_CODE < KERNEL_VERSION(2,6,25)) || \
|
|
||||||
defined(CONFIG_UNUSED_SYMBOLS))
|
|
||||||
#define DRM_KMAP_ATOMIC_PROT_PFN
|
|
||||||
extern void *kmap_atomic_prot_pfn(unsigned long pfn, enum km_type type,
|
|
||||||
pgprot_t protection);
|
|
||||||
# else
|
|
||||||
#warning "init_mm is not available on this kernel!"
|
|
||||||
static inline void *kmap_atomic_prot_pfn(unsigned long pfn, enum km_type type,
|
|
||||||
pgprot_t protection)
|
|
||||||
{
|
|
||||||
/* stub */
|
|
||||||
return NULL;
|
|
||||||
}
|
|
||||||
# endif /* no init_mm */
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#if !defined(flush_agp_mappings)
|
#if !defined(flush_agp_mappings)
|
||||||
#define flush_agp_mappings() do {} while(0)
|
#define flush_agp_mappings() do {} while(0)
|
||||||
#endif
|
#endif
|
||||||
|
|
Loading…
Reference in New Issue