1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
|
/* Copyright 2020 The Chromium OS Authors. All rights reserved.
* Use of this source code is governed by a BSD-style license that can be
* found in the LICENSE file.
*/
#ifndef _DEDEDE_CBI_FW_CONFIG__H_
#define _DEDEDE_CBI_FW_CONFIG__H_
/****************************************************************************
* Dedede CBI FW Configuration
*/
/*
* Daughter Board (Bits 0-3)
*/
enum fw_config_db {
DB_NONE,
DB_2C,
DB_1C_LTE,
DB_1A_HDMI,
DB_1C_1A,
DB_LTE_HDMI,
DB_1C_1A_LTE,
DB_1C,
DB_1A_HDMI_LTE,
};
#define FW_CONFIG_DB_OFFSET 0
#define FW_CONFIG_DB_MASK GENMASK(3, 0)
/*
* Keyboard backlight (1 bit)
*/
enum fw_config_kblight_type {
KB_BL_ABSENT = 0,
KB_BL_PRESENT = 1,
};
#define FW_CONFIG_KB_BL_OFFSET 8
#define FW_CONFIG_KB_BL_MASK GENMASK(8, 8)
/*
* Keyboard numeric pad (1 bit)
*/
enum fw_config_numeric_pad_type {
NUMERIC_PAD_ABSENT = 0,
NUMERIC_PAD_PRESENT = 1,
};
#define FW_CONFIG_KB_NUMPAD_OFFSET 9
#define FW_CONFIG_KB_NUMPAD_MASK GENMASK(9, 9)
/*
* Tablet Mode (1 bit)
*/
enum fw_config_tablet_mode_type {
TABLET_MODE_ABSENT = 0,
TABLET_MODE_PRESENT = 1,
};
#define FW_CONFIG_TABLET_MODE_OFFSET 10
#define FW_CONFIG_TABLET_MODE_MASK GENMASK(10, 10)
#define FW_CONFIG_KB_LAYOUT_OFFSET 12
#define FW_CONFIG_KB_LAYOUT_MASK GENMASK(13, 12)
/*
* Hdmi (1 bit)
*/
enum fw_config_hdmi_type {
HDMI_ABSENT = 0,
HDMI_PRESENT = 1,
};
#define FW_CONFIG_HDMI_OFFSET 17
#define FW_CONFIG_HDMI_MASK GENMASK(17, 17)
enum fw_config_db get_cbi_fw_config_db(void);
enum fw_config_kblight_type get_cbi_fw_config_kblight(void);
enum fw_config_tablet_mode_type get_cbi_fw_config_tablet_mode(void);
enum fw_config_numeric_pad_type get_cbi_fw_config_numeric_pad(void);
enum fw_config_hdmi_type get_cbi_fw_config_hdmi(void);
int get_cbi_fw_config_keyboard(void);
#endif /* _DEDEDE_CBI_FW_CONFIG__H_ */
|