summaryrefslogtreecommitdiffstats
path: root/arch/hexagon/include/asm/tlb.h
diff options
context:
space:
mode:
authorRichard Kuo2011-11-01 00:52:00 +0100
committerLinus Torvalds2011-11-01 15:34:20 +0100
commit5df87c1556515dfae504da342990821f407a8c99 (patch)
tree9cd922340f301d0ab18cf3280b5c1c9f2df5e4cb /arch/hexagon/include/asm/tlb.h
parentHexagon: Implement basic cache-flush support (diff)
downloadkernel-qcow2-linux-5df87c1556515dfae504da342990821f407a8c99.tar.gz
kernel-qcow2-linux-5df87c1556515dfae504da342990821f407a8c99.tar.xz
kernel-qcow2-linux-5df87c1556515dfae504da342990821f407a8c99.zip
Hexagon: Implement basic TLB management routines for Hexagon.
Mostly all stubs, as the TLB is managed by the hypervisor. Signed-off-by: Richard Kuo <rkuo@codeaurora.org> Acked-by: Arnd Bergmann <arnd@arndb.de> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to 'arch/hexagon/include/asm/tlb.h')
-rw-r--r--arch/hexagon/include/asm/tlb.h39
1 files changed, 39 insertions, 0 deletions
diff --git a/arch/hexagon/include/asm/tlb.h b/arch/hexagon/include/asm/tlb.h
new file mode 100644
index 000000000000..473abde01d62
--- /dev/null
+++ b/arch/hexagon/include/asm/tlb.h
@@ -0,0 +1,39 @@
+/*
+ * Copyright (c) 2010-2011, Code Aurora Forum. All rights reserved.
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License version 2 and
+ * only version 2 as published by the Free Software Foundation.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+ * 02110-1301, USA.
+ */
+
+#ifndef _ASM_TLB_H
+#define _ASM_TLB_H
+
+#include <linux/pagemap.h>
+#include <asm/tlbflush.h>
+
+/*
+ * We don't need any special per-pte or per-vma handling...
+ */
+#define tlb_start_vma(tlb, vma) do { } while (0)
+#define tlb_end_vma(tlb, vma) do { } while (0)
+#define __tlb_remove_tlb_entry(tlb, ptep, address) do { } while (0)
+
+/*
+ * .. because we flush the whole mm when it fills up
+ */
+#define tlb_flush(tlb) flush_tlb_mm((tlb)->mm)
+
+#include <asm-generic/tlb.h>
+
+#endif