[MIPS] Remove LIMITED_DMA support
This code was needed only by Jaguar ATX. Signed-off-by: Franck Bui-Huu <fbuihuu@gmail.com> Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
This commit is contained in:
committed by
Ralf Baechle
parent
bef964e55a
commit
599ca0fb63
@@ -883,11 +883,6 @@ config GENERIC_ISA_DMA
|
|||||||
config I8259
|
config I8259
|
||||||
bool
|
bool
|
||||||
|
|
||||||
config LIMITED_DMA
|
|
||||||
bool
|
|
||||||
select HIGHMEM
|
|
||||||
select SYS_SUPPORTS_HIGHMEM
|
|
||||||
|
|
||||||
config MIPS_BONITO64
|
config MIPS_BONITO64
|
||||||
bool
|
bool
|
||||||
|
|
||||||
|
@@ -80,7 +80,6 @@ void __kunmap_atomic(void *kvaddr, enum km_type type)
|
|||||||
pagefault_enable();
|
pagefault_enable();
|
||||||
}
|
}
|
||||||
|
|
||||||
#ifndef CONFIG_LIMITED_DMA
|
|
||||||
/*
|
/*
|
||||||
* This is the same as kmap_atomic() but can map memory that doesn't
|
* This is the same as kmap_atomic() but can map memory that doesn't
|
||||||
* have a struct page associated with it.
|
* have a struct page associated with it.
|
||||||
@@ -99,7 +98,6 @@ void *kmap_atomic_pfn(unsigned long pfn, enum km_type type)
|
|||||||
|
|
||||||
return (void*) vaddr;
|
return (void*) vaddr;
|
||||||
}
|
}
|
||||||
#endif /* CONFIG_LIMITED_DMA */
|
|
||||||
|
|
||||||
struct page *__kmap_atomic_to_page(void *ptr)
|
struct page *__kmap_atomic_to_page(void *ptr)
|
||||||
{
|
{
|
||||||
|
@@ -424,9 +424,6 @@ void __init mem_init(void)
|
|||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
ClearPageReserved(page);
|
ClearPageReserved(page);
|
||||||
#ifdef CONFIG_LIMITED_DMA
|
|
||||||
set_page_address(page, lowmem_page_address(page));
|
|
||||||
#endif
|
|
||||||
init_page_count(page);
|
init_page_count(page);
|
||||||
__free_page(page);
|
__free_page(page);
|
||||||
totalhigh_pages++;
|
totalhigh_pages++;
|
||||||
|
@@ -48,46 +48,6 @@ extern pte_t *pkmap_page_table;
|
|||||||
extern void * kmap_high(struct page *page);
|
extern void * kmap_high(struct page *page);
|
||||||
extern void kunmap_high(struct page *page);
|
extern void kunmap_high(struct page *page);
|
||||||
|
|
||||||
/*
|
|
||||||
* CONFIG_LIMITED_DMA is for systems with DMA limitations such as Momentum's
|
|
||||||
* Jaguar ATX. This option exploits the highmem code in the kernel so is
|
|
||||||
* always enabled together with CONFIG_HIGHMEM but at this time doesn't
|
|
||||||
* actually add highmem functionality.
|
|
||||||
*/
|
|
||||||
|
|
||||||
#ifdef CONFIG_LIMITED_DMA
|
|
||||||
|
|
||||||
/*
|
|
||||||
* These are the default functions for the no-highmem case from
|
|
||||||
* <linux/highmem.h>
|
|
||||||
*/
|
|
||||||
static inline void *kmap(struct page *page)
|
|
||||||
{
|
|
||||||
might_sleep();
|
|
||||||
return page_address(page);
|
|
||||||
}
|
|
||||||
|
|
||||||
#define kunmap(page) do { (void) (page); } while (0)
|
|
||||||
|
|
||||||
static inline void *kmap_atomic(struct page *page, enum km_type type)
|
|
||||||
{
|
|
||||||
pagefault_disable();
|
|
||||||
return page_address(page);
|
|
||||||
}
|
|
||||||
|
|
||||||
static inline void kunmap_atomic(void *kvaddr, enum km_type type)
|
|
||||||
{
|
|
||||||
pagefault_enable();
|
|
||||||
}
|
|
||||||
|
|
||||||
#define kmap_atomic_pfn(pfn, idx) kmap_atomic(pfn_to_page(pfn), (idx))
|
|
||||||
|
|
||||||
#define kmap_atomic_to_page(ptr) virt_to_page(ptr)
|
|
||||||
|
|
||||||
#define flush_cache_kmaps() do { } while (0)
|
|
||||||
|
|
||||||
#else /* LIMITED_DMA */
|
|
||||||
|
|
||||||
extern void *__kmap(struct page *page);
|
extern void *__kmap(struct page *page);
|
||||||
extern void __kunmap(struct page *page);
|
extern void __kunmap(struct page *page);
|
||||||
extern void *__kmap_atomic(struct page *page, enum km_type type);
|
extern void *__kmap_atomic(struct page *page, enum km_type type);
|
||||||
@@ -103,8 +63,6 @@ extern struct page *__kmap_atomic_to_page(void *ptr);
|
|||||||
|
|
||||||
#define flush_cache_kmaps() flush_cache_all()
|
#define flush_cache_kmaps() flush_cache_all()
|
||||||
|
|
||||||
#endif /* LIMITED_DMA */
|
|
||||||
|
|
||||||
#endif /* __KERNEL__ */
|
#endif /* __KERNEL__ */
|
||||||
|
|
||||||
#endif /* _ASM_HIGHMEM_H */
|
#endif /* _ASM_HIGHMEM_H */
|
||||||
|
@@ -190,10 +190,6 @@ typedef struct { unsigned long pgprot; } pgprot_t;
|
|||||||
#define UNCAC_ADDR(addr) ((addr) - PAGE_OFFSET + UNCAC_BASE)
|
#define UNCAC_ADDR(addr) ((addr) - PAGE_OFFSET + UNCAC_BASE)
|
||||||
#define CAC_ADDR(addr) ((addr) - UNCAC_BASE + PAGE_OFFSET)
|
#define CAC_ADDR(addr) ((addr) - UNCAC_BASE + PAGE_OFFSET)
|
||||||
|
|
||||||
#ifdef CONFIG_LIMITED_DMA
|
|
||||||
#define WANT_PAGE_VIRTUAL
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#include <asm-generic/memory_model.h>
|
#include <asm-generic/memory_model.h>
|
||||||
#include <asm-generic/page.h>
|
#include <asm-generic/page.h>
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user