sparc: Kill mmu_{un,}lockarea().

These were used on sun4c during floppy data transfers since on that
chip we had to lock the cpu mappings into the TLB because we cannot
take a TLB miss during the assembler floppy interrupt handler that
does the data transfer.

That is no longer necessary since we've removed sun4c support, thus
this stuff can disappear completely.

Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
David S. Miller 2012-05-13 13:23:16 -07:00
parent f613914efc
commit 679bea5e43
7 changed files with 3 additions and 47 deletions

View file

@ -92,12 +92,6 @@ extern int isa_dma_bridge_buggy;
#ifdef CONFIG_SPARC32 #ifdef CONFIG_SPARC32
/* Routines for data transfer buffers. */ /* Routines for data transfer buffers. */
BTFIXUPDEF_CALL(char *, mmu_lockarea, char *, unsigned long)
BTFIXUPDEF_CALL(void, mmu_unlockarea, char *, unsigned long)
#define mmu_lockarea(vaddr,len) BTFIXUP_CALL(mmu_lockarea)(vaddr,len)
#define mmu_unlockarea(vaddr,len) BTFIXUP_CALL(mmu_unlockarea)(vaddr,len)
struct page; struct page;
struct device; struct device;
struct scatterlist; struct scatterlist;

View file

@ -229,10 +229,7 @@ static inline void virtual_dma_init(void)
static inline void sun_fd_disable_dma(void) static inline void sun_fd_disable_dma(void)
{ {
doing_pdma = 0; doing_pdma = 0;
if (pdma_base) { pdma_base = NULL;
mmu_unlockarea(pdma_base, pdma_areasize);
pdma_base = NULL;
}
} }
static inline void sun_fd_set_dma_mode(int mode) static inline void sun_fd_set_dma_mode(int mode)
@ -262,7 +259,6 @@ static inline void sun_fd_set_dma_count(int length)
static inline void sun_fd_enable_dma(void) static inline void sun_fd_enable_dma(void)
{ {
pdma_vaddr = mmu_lockarea(pdma_vaddr, pdma_size);
pdma_base = pdma_vaddr; pdma_base = pdma_vaddr;
pdma_areasize = pdma_size; pdma_areasize = pdma_size;
} }

View file

@ -161,10 +161,7 @@ unsigned long pdma_areasize;
static void sun_fd_disable_dma(void) static void sun_fd_disable_dma(void)
{ {
doing_pdma = 0; doing_pdma = 0;
if (pdma_base) { pdma_base = NULL;
mmu_unlockarea(pdma_base, pdma_areasize);
pdma_base = NULL;
}
} }
static void sun_fd_set_dma_mode(int mode) static void sun_fd_set_dma_mode(int mode)
@ -194,7 +191,7 @@ static void sun_fd_set_dma_count(int length)
static void sun_fd_enable_dma(void) static void sun_fd_enable_dma(void)
{ {
pdma_vaddr = mmu_lockarea(pdma_vaddr, pdma_size); pdma_vaddr = pdma_vaddr;
pdma_base = pdma_vaddr; pdma_base = pdma_vaddr;
pdma_areasize = pdma_size; pdma_areasize = pdma_size;
} }

View file

@ -717,10 +717,6 @@ extern unsigned long find_ecache_flush_span(unsigned long size);
struct seq_file; struct seq_file;
extern void mmu_info(struct seq_file *); extern void mmu_info(struct seq_file *);
/* These do nothing with the way I have things setup. */
#define mmu_lockarea(vaddr, len) (vaddr)
#define mmu_unlockarea(vaddr, len) do { } while(0)
struct vm_area_struct; struct vm_area_struct;
extern void update_mmu_cache(struct vm_area_struct *, unsigned long, pte_t *); extern void update_mmu_cache(struct vm_area_struct *, unsigned long, pte_t *);

View file

@ -32,8 +32,6 @@ EXPORT_SYMBOL(empty_zero_page);
#ifdef CONFIG_SMP #ifdef CONFIG_SMP
EXPORT_SYMBOL(BTFIXUP_CALL(__hard_smp_processor_id)); EXPORT_SYMBOL(BTFIXUP_CALL(__hard_smp_processor_id));
#endif #endif
EXPORT_SYMBOL(BTFIXUP_CALL(mmu_unlockarea));
EXPORT_SYMBOL(BTFIXUP_CALL(mmu_lockarea));
EXPORT_SYMBOL(BTFIXUP_CALL(mmu_get_scsi_sgl)); EXPORT_SYMBOL(BTFIXUP_CALL(mmu_get_scsi_sgl));
EXPORT_SYMBOL(BTFIXUP_CALL(mmu_get_scsi_one)); EXPORT_SYMBOL(BTFIXUP_CALL(mmu_get_scsi_one));
EXPORT_SYMBOL(BTFIXUP_CALL(mmu_release_scsi_sgl)); EXPORT_SYMBOL(BTFIXUP_CALL(mmu_release_scsi_sgl));

View file

@ -242,22 +242,8 @@ static void iounit_unmap_dma_area(struct device *dev, unsigned long addr, int le
} }
#endif #endif
static char *iounit_lockarea(char *vaddr, unsigned long len)
{
/* FIXME: Write this */
return vaddr;
}
static void iounit_unlockarea(char *vaddr, unsigned long len)
{
/* FIXME: Write this */
}
void __init ld_mmu_iounit(void) void __init ld_mmu_iounit(void)
{ {
BTFIXUPSET_CALL(mmu_lockarea, iounit_lockarea, BTFIXUPCALL_RETO0);
BTFIXUPSET_CALL(mmu_unlockarea, iounit_unlockarea, BTFIXUPCALL_NOP);
BTFIXUPSET_CALL(mmu_get_scsi_one, iounit_get_scsi_one, BTFIXUPCALL_NORM); BTFIXUPSET_CALL(mmu_get_scsi_one, iounit_get_scsi_one, BTFIXUPCALL_NORM);
BTFIXUPSET_CALL(mmu_get_scsi_sgl, iounit_get_scsi_sgl, BTFIXUPCALL_NORM); BTFIXUPSET_CALL(mmu_get_scsi_sgl, iounit_get_scsi_sgl, BTFIXUPCALL_NORM);
BTFIXUPSET_CALL(mmu_release_scsi_one, iounit_release_scsi_one, BTFIXUPCALL_NORM); BTFIXUPSET_CALL(mmu_release_scsi_one, iounit_release_scsi_one, BTFIXUPCALL_NORM);

View file

@ -426,20 +426,9 @@ static void iommu_unmap_dma_area(struct device *dev, unsigned long busa, int len
} }
#endif #endif
static char *iommu_lockarea(char *vaddr, unsigned long len)
{
return vaddr;
}
static void iommu_unlockarea(char *vaddr, unsigned long len)
{
}
void __init ld_mmu_iommu(void) void __init ld_mmu_iommu(void)
{ {
viking_flush = (BTFIXUPVAL_CALL(flush_page_for_dma) == (unsigned long)viking_flush_page); viking_flush = (BTFIXUPVAL_CALL(flush_page_for_dma) == (unsigned long)viking_flush_page);
BTFIXUPSET_CALL(mmu_lockarea, iommu_lockarea, BTFIXUPCALL_RETO0);
BTFIXUPSET_CALL(mmu_unlockarea, iommu_unlockarea, BTFIXUPCALL_NOP);
if (!BTFIXUPVAL_CALL(flush_page_for_dma)) { if (!BTFIXUPVAL_CALL(flush_page_for_dma)) {
/* IO coherent chip */ /* IO coherent chip */