Merge branch 'upstream' of git://ftp.linux-mips.org/pub/scm/upstream-linus
* 'upstream' of git://ftp.linux-mips.org/pub/scm/upstream-linus: MIPS: IP32: Update defconfig MIPS: Add missing calls to plat_unmap_dma_mem. MIPS: Kconfig: Fix the arch-specific header path MIPS: Use EI/DI for MIPS R2.
This commit is contained in:
commit
fae1aa4a0b
4 changed files with 656 additions and 455 deletions
|
@ -48,7 +48,7 @@ config RUNTIME_DEBUG
|
||||||
help
|
help
|
||||||
If you say Y here, some debugging macros will do run-time checking.
|
If you say Y here, some debugging macros will do run-time checking.
|
||||||
If you say N here, those macros will mostly turn to no-ops. See
|
If you say N here, those macros will mostly turn to no-ops. See
|
||||||
include/asm-mips/debug.h for debuging macros.
|
arch/mips/include/asm/debug.h for debugging macros.
|
||||||
If unsure, say N.
|
If unsure, say N.
|
||||||
|
|
||||||
endmenu
|
endmenu
|
||||||
|
|
File diff suppressed because it is too large
Load diff
|
@ -35,6 +35,16 @@
|
||||||
mtc0 \reg, CP0_TCSTATUS
|
mtc0 \reg, CP0_TCSTATUS
|
||||||
_ehb
|
_ehb
|
||||||
.endm
|
.endm
|
||||||
|
#elif defined(CONFIG_CPU_MIPSR2)
|
||||||
|
.macro local_irq_enable reg=t0
|
||||||
|
ei
|
||||||
|
irq_enable_hazard
|
||||||
|
.endm
|
||||||
|
|
||||||
|
.macro local_irq_disable reg=t0
|
||||||
|
di
|
||||||
|
irq_disable_hazard
|
||||||
|
.endm
|
||||||
#else
|
#else
|
||||||
.macro local_irq_enable reg=t0
|
.macro local_irq_enable reg=t0
|
||||||
mfc0 \reg, CP0_STATUS
|
mfc0 \reg, CP0_STATUS
|
||||||
|
|
|
@ -111,6 +111,7 @@ EXPORT_SYMBOL(dma_alloc_coherent);
|
||||||
void dma_free_noncoherent(struct device *dev, size_t size, void *vaddr,
|
void dma_free_noncoherent(struct device *dev, size_t size, void *vaddr,
|
||||||
dma_addr_t dma_handle)
|
dma_addr_t dma_handle)
|
||||||
{
|
{
|
||||||
|
plat_unmap_dma_mem(dma_handle);
|
||||||
free_pages((unsigned long) vaddr, get_order(size));
|
free_pages((unsigned long) vaddr, get_order(size));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -121,6 +122,8 @@ void dma_free_coherent(struct device *dev, size_t size, void *vaddr,
|
||||||
{
|
{
|
||||||
unsigned long addr = (unsigned long) vaddr;
|
unsigned long addr = (unsigned long) vaddr;
|
||||||
|
|
||||||
|
plat_unmap_dma_mem(dma_handle);
|
||||||
|
|
||||||
if (!plat_device_is_coherent(dev))
|
if (!plat_device_is_coherent(dev))
|
||||||
addr = CAC_ADDR(addr);
|
addr = CAC_ADDR(addr);
|
||||||
|
|
||||||
|
|
Loading…
Add table
Reference in a new issue