提交 9d3bc3d4 编写于 作者: L Linus Torvalds

Merge tag 'arc-4.8-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/vgupta/arc

Pull ARC updates from Vineet Gupta:
 "Things have been calm here - nothing much except for a few fixes"

* tag 'arc-4.8-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/vgupta/arc:
  ARC: mm: don't loose PTE_SPECIAL in pte_modify()
  ARC: dma: fix address translation in arc_dma_free
  ARC: typo fix in mm/ioremap.c
  ARC: fix linux-next build breakage
...@@ -110,7 +110,7 @@ ...@@ -110,7 +110,7 @@
#define ___DEF (_PAGE_PRESENT | _PAGE_CACHEABLE) #define ___DEF (_PAGE_PRESENT | _PAGE_CACHEABLE)
/* Set of bits not changed in pte_modify */ /* Set of bits not changed in pte_modify */
#define _PAGE_CHG_MASK (PAGE_MASK | _PAGE_ACCESSED | _PAGE_DIRTY) #define _PAGE_CHG_MASK (PAGE_MASK | _PAGE_ACCESSED | _PAGE_DIRTY | _PAGE_SPECIAL)
/* More Abbrevaited helpers */ /* More Abbrevaited helpers */
#define PAGE_U_NONE __pgprot(___DEF) #define PAGE_U_NONE __pgprot(___DEF)
......
...@@ -14,6 +14,7 @@ ...@@ -14,6 +14,7 @@
#include <linux/module.h> #include <linux/module.h>
#include <linux/cpu.h> #include <linux/cpu.h>
#include <linux/of_fdt.h> #include <linux/of_fdt.h>
#include <linux/of.h>
#include <linux/of_platform.h> #include <linux/of_platform.h>
#include <linux/cache.h> #include <linux/cache.h>
#include <asm/sections.h> #include <asm/sections.h>
......
...@@ -92,7 +92,8 @@ static void *arc_dma_alloc(struct device *dev, size_t size, ...@@ -92,7 +92,8 @@ static void *arc_dma_alloc(struct device *dev, size_t size,
static void arc_dma_free(struct device *dev, size_t size, void *vaddr, static void arc_dma_free(struct device *dev, size_t size, void *vaddr,
dma_addr_t dma_handle, struct dma_attrs *attrs) dma_addr_t dma_handle, struct dma_attrs *attrs)
{ {
struct page *page = virt_to_page(dma_handle); phys_addr_t paddr = plat_dma_to_phys(dev, dma_handle);
struct page *page = virt_to_page(paddr);
int is_non_coh = 1; int is_non_coh = 1;
is_non_coh = dma_get_attr(DMA_ATTR_NON_CONSISTENT, attrs) || is_non_coh = dma_get_attr(DMA_ATTR_NON_CONSISTENT, attrs) ||
......
...@@ -49,7 +49,7 @@ EXPORT_SYMBOL(ioremap); ...@@ -49,7 +49,7 @@ EXPORT_SYMBOL(ioremap);
/* /*
* ioremap with access flags * ioremap with access flags
* Cache semantics wise it is same as ioremap - "forced" uncached. * Cache semantics wise it is same as ioremap - "forced" uncached.
* However unline vanilla ioremap which bypasses ARC MMU for addresses in * However unlike vanilla ioremap which bypasses ARC MMU for addresses in
* ARC hardware uncached region, this one still goes thru the MMU as caller * ARC hardware uncached region, this one still goes thru the MMU as caller
* might need finer access control (R/W/X) * might need finer access control (R/W/X)
*/ */
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册