Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
openanolis
cloud-kernel
提交
9a51f3fc
cloud-kernel
项目概览
openanolis
/
cloud-kernel
1 年多 前同步成功
通知
163
Star
36
Fork
7
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
10
列表
看板
标记
里程碑
合并请求
2
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
cloud-kernel
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
10
Issue
10
列表
看板
标记
里程碑
合并请求
2
合并请求
2
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
提交
9a51f3fc
编写于
5月 09, 2016
作者:
J
Joerg Roedel
浏览文件
操作
浏览文件
下载
差异文件
Merge branch 'arm/smmu' into core
上级
809eac54
8801561c
变更
6
展开全部
隐藏空白更改
内联
并排
Showing
6 changed file
with
265 addition
and
83 deletion
+265
-83
Documentation/arm64/silicon-errata.txt
Documentation/arm64/silicon-errata.txt
+2
-0
Documentation/devicetree/bindings/iommu/arm,smmu.txt
Documentation/devicetree/bindings/iommu/arm,smmu.txt
+1
-0
drivers/iommu/arm-smmu.c
drivers/iommu/arm-smmu.c
+210
-81
include/asm-generic/io.h
include/asm-generic/io.h
+2
-2
include/linux/io-64-nonatomic-hi-lo.h
include/linux/io-64-nonatomic-hi-lo.h
+25
-0
include/linux/io-64-nonatomic-lo-hi.h
include/linux/io-64-nonatomic-lo-hi.h
+25
-0
未找到文件。
Documentation/arm64/silicon-errata.txt
浏览文件 @
9a51f3fc
...
...
@@ -53,7 +53,9 @@ stable kernels.
| ARM | Cortex-A57 | #832075 | ARM64_ERRATUM_832075 |
| ARM | Cortex-A57 | #852523 | N/A |
| ARM | Cortex-A57 | #834220 | ARM64_ERRATUM_834220 |
| ARM | MMU-500 | #841119,#826419 | N/A |
| | | | |
| Cavium | ThunderX ITS | #22375, #24313 | CAVIUM_ERRATUM_22375 |
| Cavium | ThunderX GICv3 | #23154 | CAVIUM_ERRATUM_23154 |
| Cavium | ThunderX Core | #27456 | CAVIUM_ERRATUM_27456 |
| Cavium | ThunderX SMMUv2 | #27704 | N/A |
Documentation/devicetree/bindings/iommu/arm,smmu.txt
浏览文件 @
9a51f3fc
...
...
@@ -16,6 +16,7 @@ conditions.
"arm,mmu-400"
"arm,mmu-401"
"arm,mmu-500"
"cavium,smmu-v2"
depending on the particular implementation and/or the
version of the architecture implemented.
...
...
drivers/iommu/arm-smmu.c
浏览文件 @
9a51f3fc
此差异已折叠。
点击以展开。
include/asm-generic/io.h
浏览文件 @
9a51f3fc
...
...
@@ -191,7 +191,7 @@ static inline void writeq(u64 value, volatile void __iomem *addr)
#define readl_relaxed readl
#endif
#if
ndef readq_relaxed
#if
defined(readq) && !defined(readq_relaxed)
#define readq_relaxed readq
#endif
...
...
@@ -207,7 +207,7 @@ static inline void writeq(u64 value, volatile void __iomem *addr)
#define writel_relaxed writel
#endif
#if
ndef writeq_relaxed
#if
defined(writeq) && !defined(writeq_relaxed)
#define writeq_relaxed writeq
#endif
...
...
include/linux/io-64-nonatomic-hi-lo.h
浏览文件 @
9a51f3fc
...
...
@@ -21,6 +21,23 @@ static inline void hi_lo_writeq(__u64 val, volatile void __iomem *addr)
writel
(
val
,
addr
);
}
static
inline
__u64
hi_lo_readq_relaxed
(
const
volatile
void
__iomem
*
addr
)
{
const
volatile
u32
__iomem
*
p
=
addr
;
u32
low
,
high
;
high
=
readl_relaxed
(
p
+
1
);
low
=
readl_relaxed
(
p
);
return
low
+
((
u64
)
high
<<
32
);
}
static
inline
void
hi_lo_writeq_relaxed
(
__u64
val
,
volatile
void
__iomem
*
addr
)
{
writel_relaxed
(
val
>>
32
,
addr
+
4
);
writel_relaxed
(
val
,
addr
);
}
#ifndef readq
#define readq hi_lo_readq
#endif
...
...
@@ -29,4 +46,12 @@ static inline void hi_lo_writeq(__u64 val, volatile void __iomem *addr)
#define writeq hi_lo_writeq
#endif
#ifndef readq_relaxed
#define readq_relaxed hi_lo_readq_relaxed
#endif
#ifndef writeq_relaxed
#define writeq_relaxed hi_lo_writeq_relaxed
#endif
#endif
/* _LINUX_IO_64_NONATOMIC_HI_LO_H_ */
include/linux/io-64-nonatomic-lo-hi.h
浏览文件 @
9a51f3fc
...
...
@@ -21,6 +21,23 @@ static inline void lo_hi_writeq(__u64 val, volatile void __iomem *addr)
writel
(
val
>>
32
,
addr
+
4
);
}
static
inline
__u64
lo_hi_readq_relaxed
(
const
volatile
void
__iomem
*
addr
)
{
const
volatile
u32
__iomem
*
p
=
addr
;
u32
low
,
high
;
low
=
readl_relaxed
(
p
);
high
=
readl_relaxed
(
p
+
1
);
return
low
+
((
u64
)
high
<<
32
);
}
static
inline
void
lo_hi_writeq_relaxed
(
__u64
val
,
volatile
void
__iomem
*
addr
)
{
writel_relaxed
(
val
,
addr
);
writel_relaxed
(
val
>>
32
,
addr
+
4
);
}
#ifndef readq
#define readq lo_hi_readq
#endif
...
...
@@ -29,4 +46,12 @@ static inline void lo_hi_writeq(__u64 val, volatile void __iomem *addr)
#define writeq lo_hi_writeq
#endif
#ifndef readq_relaxed
#define readq_relaxed lo_hi_readq_relaxed
#endif
#ifndef writeq_relaxed
#define writeq_relaxed lo_hi_writeq_relaxed
#endif
#endif
/* _LINUX_IO_64_NONATOMIC_LO_HI_H_ */
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录