Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
openanolis
cloud-kernel
提交
38593426
cloud-kernel
项目概览
openanolis
/
cloud-kernel
1 年多 前同步成功
通知
161
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看板
提交
38593426
编写于
7月 25, 2016
作者:
T
Thierry Reding
浏览文件
操作
浏览文件
下载
差异文件
Merge branch 'for-4.8/mfd' into for-4.8/drivers
上级
017bb04e
2b66bd69
变更
3
隐藏空白更改
内联
并排
Showing
3 changed file
with
63 addition
and
0 deletion
+63
-0
drivers/platform/chrome/cros_ec_proto.c
drivers/platform/chrome/cros_ec_proto.c
+17
-0
include/linux/mfd/cros_ec.h
include/linux/mfd/cros_ec.h
+15
-0
include/linux/mfd/cros_ec_commands.h
include/linux/mfd/cros_ec_commands.h
+31
-0
未找到文件。
drivers/platform/chrome/cros_ec_proto.c
浏览文件 @
38593426
...
...
@@ -380,3 +380,20 @@ int cros_ec_cmd_xfer(struct cros_ec_device *ec_dev,
return
ret
;
}
EXPORT_SYMBOL
(
cros_ec_cmd_xfer
);
int
cros_ec_cmd_xfer_status
(
struct
cros_ec_device
*
ec_dev
,
struct
cros_ec_command
*
msg
)
{
int
ret
;
ret
=
cros_ec_cmd_xfer
(
ec_dev
,
msg
);
if
(
ret
<
0
)
{
dev_err
(
ec_dev
->
dev
,
"Command xfer error (err:%d)
\n
"
,
ret
);
}
else
if
(
msg
->
result
!=
EC_RES_SUCCESS
)
{
dev_dbg
(
ec_dev
->
dev
,
"Command result (err: %d)
\n
"
,
msg
->
result
);
return
-
EPROTO
;
}
return
ret
;
}
EXPORT_SYMBOL
(
cros_ec_cmd_xfer_status
);
include/linux/mfd/cros_ec.h
浏览文件 @
38593426
...
...
@@ -225,6 +225,21 @@ int cros_ec_check_result(struct cros_ec_device *ec_dev,
int
cros_ec_cmd_xfer
(
struct
cros_ec_device
*
ec_dev
,
struct
cros_ec_command
*
msg
);
/**
* cros_ec_cmd_xfer_status - Send a command to the ChromeOS EC
*
* This function is identical to cros_ec_cmd_xfer, except it returns success
* status only if both the command was transmitted successfully and the EC
* replied with success status. It's not necessary to check msg->result when
* using this function.
*
* @ec_dev: EC device
* @msg: Message to write
* @return: Num. of bytes transferred on success, <0 on failure
*/
int
cros_ec_cmd_xfer_status
(
struct
cros_ec_device
*
ec_dev
,
struct
cros_ec_command
*
msg
);
/**
* cros_ec_remove - Remove a ChromeOS EC
*
...
...
include/linux/mfd/cros_ec_commands.h
浏览文件 @
38593426
...
...
@@ -949,6 +949,37 @@ struct ec_params_pwm_set_fan_duty {
uint32_t
percent
;
}
__packed
;
#define EC_CMD_PWM_SET_DUTY 0x25
/* 16 bit duty cycle, 0xffff = 100% */
#define EC_PWM_MAX_DUTY 0xffff
enum
ec_pwm_type
{
/* All types, indexed by board-specific enum pwm_channel */
EC_PWM_TYPE_GENERIC
=
0
,
/* Keyboard backlight */
EC_PWM_TYPE_KB_LIGHT
,
/* Display backlight */
EC_PWM_TYPE_DISPLAY_LIGHT
,
EC_PWM_TYPE_COUNT
,
};
struct
ec_params_pwm_set_duty
{
uint16_t
duty
;
/* Duty cycle, EC_PWM_MAX_DUTY = 100% */
uint8_t
pwm_type
;
/* ec_pwm_type */
uint8_t
index
;
/* Type-specific index, or 0 if unique */
}
__packed
;
#define EC_CMD_PWM_GET_DUTY 0x26
struct
ec_params_pwm_get_duty
{
uint8_t
pwm_type
;
/* ec_pwm_type */
uint8_t
index
;
/* Type-specific index, or 0 if unique */
}
__packed
;
struct
ec_response_pwm_get_duty
{
uint16_t
duty
;
/* Duty cycle, EC_PWM_MAX_DUTY = 100% */
}
__packed
;
/*****************************************************************************/
/*
* Lightbar commands. This looks worse than it is. Since we only use one HOST
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录