Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
OpenHarmony
kernel_linux
提交
8798975b
K
kernel_linux
项目概览
OpenHarmony
/
kernel_linux
上一次同步 4 年多
通知
15
Star
8
Fork
2
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
DevOps
流水线
流水线任务
计划
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
K
kernel_linux
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
DevOps
DevOps
流水线
流水线任务
计划
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
流水线任务
提交
Issue看板
提交
8798975b
编写于
1月 05, 2016
作者:
M
Mark Brown
浏览文件
操作
浏览文件
下载
差异文件
Merge remote-tracking branch 'regmap/topic/core' into regmap-next
上级
6cca6712
fcac0233
变更
6
显示空白变更内容
内联
并排
Showing
6 changed file
with
25 addition
and
23 deletion
+25
-23
drivers/base/regmap/regcache-flat.c
drivers/base/regmap/regcache-flat.c
+1
-1
drivers/base/regmap/regcache-lzo.c
drivers/base/regmap/regcache-lzo.c
+3
-3
drivers/base/regmap/regcache-rbtree.c
drivers/base/regmap/regcache-rbtree.c
+5
-4
drivers/base/regmap/regmap-irq.c
drivers/base/regmap/regmap-irq.c
+7
-6
drivers/base/regmap/regmap.c
drivers/base/regmap/regmap.c
+8
-8
include/linux/regmap.h
include/linux/regmap.h
+1
-1
未找到文件。
drivers/base/regmap/regcache-flat.c
浏览文件 @
8798975b
...
@@ -21,7 +21,7 @@ static int regcache_flat_init(struct regmap *map)
...
@@ -21,7 +21,7 @@ static int regcache_flat_init(struct regmap *map)
int
i
;
int
i
;
unsigned
int
*
cache
;
unsigned
int
*
cache
;
map
->
cache
=
k
zalloc
(
sizeof
(
unsigned
int
)
*
(
map
->
max_register
+
1
),
map
->
cache
=
k
calloc
(
map
->
max_register
+
1
,
sizeof
(
unsigned
int
),
GFP_KERNEL
);
GFP_KERNEL
);
if
(
!
map
->
cache
)
if
(
!
map
->
cache
)
return
-
ENOMEM
;
return
-
ENOMEM
;
...
...
drivers/base/regmap/regcache-lzo.c
浏览文件 @
8798975b
...
@@ -139,7 +139,7 @@ static int regcache_lzo_init(struct regmap *map)
...
@@ -139,7 +139,7 @@ static int regcache_lzo_init(struct regmap *map)
ret
=
0
;
ret
=
0
;
blkcount
=
regcache_lzo_block_count
(
map
);
blkcount
=
regcache_lzo_block_count
(
map
);
map
->
cache
=
k
zalloc
(
blkcount
*
sizeof
*
lzo_blocks
,
map
->
cache
=
k
calloc
(
blkcount
,
sizeof
(
*
lzo_blocks
)
,
GFP_KERNEL
);
GFP_KERNEL
);
if
(
!
map
->
cache
)
if
(
!
map
->
cache
)
return
-
ENOMEM
;
return
-
ENOMEM
;
...
@@ -152,7 +152,7 @@ static int regcache_lzo_init(struct regmap *map)
...
@@ -152,7 +152,7 @@ static int regcache_lzo_init(struct regmap *map)
* that register.
* that register.
*/
*/
bmp_size
=
map
->
num_reg_defaults_raw
;
bmp_size
=
map
->
num_reg_defaults_raw
;
sync_bmp
=
kmalloc
(
BITS_TO_LONGS
(
bmp_size
)
*
sizeof
(
long
),
sync_bmp
=
kmalloc
_array
(
BITS_TO_LONGS
(
bmp_size
),
sizeof
(
long
),
GFP_KERNEL
);
GFP_KERNEL
);
if
(
!
sync_bmp
)
{
if
(
!
sync_bmp
)
{
ret
=
-
ENOMEM
;
ret
=
-
ENOMEM
;
...
...
drivers/base/regmap/regcache-rbtree.c
浏览文件 @
8798975b
...
@@ -361,13 +361,14 @@ regcache_rbtree_node_alloc(struct regmap *map, unsigned int reg)
...
@@ -361,13 +361,14 @@ regcache_rbtree_node_alloc(struct regmap *map, unsigned int reg)
rbnode
->
base_reg
=
reg
;
rbnode
->
base_reg
=
reg
;
}
}
rbnode
->
block
=
kmalloc
(
rbnode
->
blklen
*
map
->
cache_word_size
,
rbnode
->
block
=
kmalloc
_array
(
rbnode
->
blklen
,
map
->
cache_word_size
,
GFP_KERNEL
);
GFP_KERNEL
);
if
(
!
rbnode
->
block
)
if
(
!
rbnode
->
block
)
goto
err_free
;
goto
err_free
;
rbnode
->
cache_present
=
kzalloc
(
BITS_TO_LONGS
(
rbnode
->
blklen
)
*
rbnode
->
cache_present
=
kcalloc
(
BITS_TO_LONGS
(
rbnode
->
blklen
),
sizeof
(
*
rbnode
->
cache_present
),
GFP_KERNEL
);
sizeof
(
*
rbnode
->
cache_present
),
GFP_KERNEL
);
if
(
!
rbnode
->
cache_present
)
if
(
!
rbnode
->
cache_present
)
goto
err_free_block
;
goto
err_free_block
;
...
...
drivers/base/regmap/regmap-irq.c
浏览文件 @
8798975b
...
@@ -386,23 +386,23 @@ int regmap_add_irq_chip(struct regmap *map, int irq, int irq_flags,
...
@@ -386,23 +386,23 @@ int regmap_add_irq_chip(struct regmap *map, int irq, int irq_flags,
if
(
!
d
)
if
(
!
d
)
return
-
ENOMEM
;
return
-
ENOMEM
;
d
->
status_buf
=
k
zalloc
(
sizeof
(
unsigned
int
)
*
chip
->
num_regs
,
d
->
status_buf
=
k
calloc
(
chip
->
num_regs
,
sizeof
(
unsigned
int
)
,
GFP_KERNEL
);
GFP_KERNEL
);
if
(
!
d
->
status_buf
)
if
(
!
d
->
status_buf
)
goto
err_alloc
;
goto
err_alloc
;
d
->
mask_buf
=
k
zalloc
(
sizeof
(
unsigned
int
)
*
chip
->
num_regs
,
d
->
mask_buf
=
k
calloc
(
chip
->
num_regs
,
sizeof
(
unsigned
int
)
,
GFP_KERNEL
);
GFP_KERNEL
);
if
(
!
d
->
mask_buf
)
if
(
!
d
->
mask_buf
)
goto
err_alloc
;
goto
err_alloc
;
d
->
mask_buf_def
=
k
zalloc
(
sizeof
(
unsigned
int
)
*
chip
->
num_regs
,
d
->
mask_buf_def
=
k
calloc
(
chip
->
num_regs
,
sizeof
(
unsigned
int
)
,
GFP_KERNEL
);
GFP_KERNEL
);
if
(
!
d
->
mask_buf_def
)
if
(
!
d
->
mask_buf_def
)
goto
err_alloc
;
goto
err_alloc
;
if
(
chip
->
wake_base
)
{
if
(
chip
->
wake_base
)
{
d
->
wake_buf
=
k
zalloc
(
sizeof
(
unsigned
int
)
*
chip
->
num_regs
,
d
->
wake_buf
=
k
calloc
(
chip
->
num_regs
,
sizeof
(
unsigned
int
)
,
GFP_KERNEL
);
GFP_KERNEL
);
if
(
!
d
->
wake_buf
)
if
(
!
d
->
wake_buf
)
goto
err_alloc
;
goto
err_alloc
;
...
@@ -422,8 +422,9 @@ int regmap_add_irq_chip(struct regmap *map, int irq, int irq_flags,
...
@@ -422,8 +422,9 @@ int regmap_add_irq_chip(struct regmap *map, int irq, int irq_flags,
if
(
!
map
->
use_single_read
&&
map
->
reg_stride
==
1
&&
if
(
!
map
->
use_single_read
&&
map
->
reg_stride
==
1
&&
d
->
irq_reg_stride
==
1
)
{
d
->
irq_reg_stride
==
1
)
{
d
->
status_reg_buf
=
kmalloc
(
map
->
format
.
val_bytes
*
d
->
status_reg_buf
=
kmalloc_array
(
chip
->
num_regs
,
chip
->
num_regs
,
GFP_KERNEL
);
map
->
format
.
val_bytes
,
GFP_KERNEL
);
if
(
!
d
->
status_reg_buf
)
if
(
!
d
->
status_reg_buf
)
goto
err_alloc
;
goto
err_alloc
;
}
}
...
...
drivers/base/regmap/regmap.c
浏览文件 @
8798975b
...
@@ -1513,7 +1513,7 @@ int regmap_write(struct regmap *map, unsigned int reg, unsigned int val)
...
@@ -1513,7 +1513,7 @@ int regmap_write(struct regmap *map, unsigned int reg, unsigned int val)
{
{
int
ret
;
int
ret
;
if
(
reg
%
map
->
reg_stride
)
if
(
!
IS_ALIGNED
(
reg
,
map
->
reg_stride
)
)
return
-
EINVAL
;
return
-
EINVAL
;
map
->
lock
(
map
->
lock_arg
);
map
->
lock
(
map
->
lock_arg
);
...
@@ -1540,7 +1540,7 @@ int regmap_write_async(struct regmap *map, unsigned int reg, unsigned int val)
...
@@ -1540,7 +1540,7 @@ int regmap_write_async(struct regmap *map, unsigned int reg, unsigned int val)
{
{
int
ret
;
int
ret
;
if
(
reg
%
map
->
reg_stride
)
if
(
!
IS_ALIGNED
(
reg
,
map
->
reg_stride
)
)
return
-
EINVAL
;
return
-
EINVAL
;
map
->
lock
(
map
->
lock_arg
);
map
->
lock
(
map
->
lock_arg
);
...
@@ -1714,7 +1714,7 @@ int regmap_bulk_write(struct regmap *map, unsigned int reg, const void *val,
...
@@ -1714,7 +1714,7 @@ int regmap_bulk_write(struct regmap *map, unsigned int reg, const void *val,
if
(
map
->
bus
&&
!
map
->
format
.
parse_inplace
)
if
(
map
->
bus
&&
!
map
->
format
.
parse_inplace
)
return
-
EINVAL
;
return
-
EINVAL
;
if
(
reg
%
map
->
reg_stride
)
if
(
!
IS_ALIGNED
(
reg
,
map
->
reg_stride
)
)
return
-
EINVAL
;
return
-
EINVAL
;
/*
/*
...
@@ -1983,7 +1983,7 @@ static int _regmap_multi_reg_write(struct regmap *map,
...
@@ -1983,7 +1983,7 @@ static int _regmap_multi_reg_write(struct regmap *map,
int
reg
=
regs
[
i
].
reg
;
int
reg
=
regs
[
i
].
reg
;
if
(
!
map
->
writeable_reg
(
map
->
dev
,
reg
))
if
(
!
map
->
writeable_reg
(
map
->
dev
,
reg
))
return
-
EINVAL
;
return
-
EINVAL
;
if
(
reg
%
map
->
reg_stride
)
if
(
!
IS_ALIGNED
(
reg
,
map
->
reg_stride
)
)
return
-
EINVAL
;
return
-
EINVAL
;
}
}
...
@@ -2133,7 +2133,7 @@ int regmap_raw_write_async(struct regmap *map, unsigned int reg,
...
@@ -2133,7 +2133,7 @@ int regmap_raw_write_async(struct regmap *map, unsigned int reg,
if
(
val_len
%
map
->
format
.
val_bytes
)
if
(
val_len
%
map
->
format
.
val_bytes
)
return
-
EINVAL
;
return
-
EINVAL
;
if
(
reg
%
map
->
reg_stride
)
if
(
!
IS_ALIGNED
(
reg
,
map
->
reg_stride
)
)
return
-
EINVAL
;
return
-
EINVAL
;
map
->
lock
(
map
->
lock_arg
);
map
->
lock
(
map
->
lock_arg
);
...
@@ -2260,7 +2260,7 @@ int regmap_read(struct regmap *map, unsigned int reg, unsigned int *val)
...
@@ -2260,7 +2260,7 @@ int regmap_read(struct regmap *map, unsigned int reg, unsigned int *val)
{
{
int
ret
;
int
ret
;
if
(
reg
%
map
->
reg_stride
)
if
(
!
IS_ALIGNED
(
reg
,
map
->
reg_stride
)
)
return
-
EINVAL
;
return
-
EINVAL
;
map
->
lock
(
map
->
lock_arg
);
map
->
lock
(
map
->
lock_arg
);
...
@@ -2296,7 +2296,7 @@ int regmap_raw_read(struct regmap *map, unsigned int reg, void *val,
...
@@ -2296,7 +2296,7 @@ int regmap_raw_read(struct regmap *map, unsigned int reg, void *val,
return
-
EINVAL
;
return
-
EINVAL
;
if
(
val_len
%
map
->
format
.
val_bytes
)
if
(
val_len
%
map
->
format
.
val_bytes
)
return
-
EINVAL
;
return
-
EINVAL
;
if
(
reg
%
map
->
reg_stride
)
if
(
!
IS_ALIGNED
(
reg
,
map
->
reg_stride
)
)
return
-
EINVAL
;
return
-
EINVAL
;
if
(
val_count
==
0
)
if
(
val_count
==
0
)
return
-
EINVAL
;
return
-
EINVAL
;
...
@@ -2414,7 +2414,7 @@ int regmap_bulk_read(struct regmap *map, unsigned int reg, void *val,
...
@@ -2414,7 +2414,7 @@ int regmap_bulk_read(struct regmap *map, unsigned int reg, void *val,
size_t
val_bytes
=
map
->
format
.
val_bytes
;
size_t
val_bytes
=
map
->
format
.
val_bytes
;
bool
vol
=
regmap_volatile_range
(
map
,
reg
,
val_count
);
bool
vol
=
regmap_volatile_range
(
map
,
reg
,
val_count
);
if
(
reg
%
map
->
reg_stride
)
if
(
!
IS_ALIGNED
(
reg
,
map
->
reg_stride
)
)
return
-
EINVAL
;
return
-
EINVAL
;
if
(
map
->
bus
&&
map
->
format
.
parse_inplace
&&
(
vol
||
map
->
cache_type
==
REGCACHE_NONE
))
{
if
(
map
->
bus
&&
map
->
format
.
parse_inplace
&&
(
vol
||
map
->
cache_type
==
REGCACHE_NONE
))
{
...
...
include/linux/regmap.h
浏览文件 @
8798975b
...
@@ -1021,7 +1021,7 @@ static inline void regmap_async_complete(struct regmap *map)
...
@@ -1021,7 +1021,7 @@ static inline void regmap_async_complete(struct regmap *map)
}
}
static
inline
int
regmap_register_patch
(
struct
regmap
*
map
,
static
inline
int
regmap_register_patch
(
struct
regmap
*
map
,
const
struct
reg_
default
*
regs
,
const
struct
reg_
sequence
*
regs
,
int
num_regs
)
int
num_regs
)
{
{
WARN_ONCE
(
1
,
"regmap API is disabled"
);
WARN_ONCE
(
1
,
"regmap API is disabled"
);
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录