xref: /aosp_15_r20/external/coreboot/src/include/dp_aux.h (revision b9411a12aaaa7e1e6a6fb7c5e057f44ee179a49c)
1 /* SPDX-License-Identifier: GPL-2.0-only */
2 
3 #ifndef _DP_AUX_H_
4 #define _DP_AUX_H_
5 
6 #include <types.h>
7 
8 enum {
9 	EDID_LENGTH         = 128,
10 	EDID_I2C_ADDR       = 0x50,
11 	EDID_EXTENSION_FLAG = 0x7e,
12 };
13 
14 enum i2c_over_aux {
15 	I2C_OVER_AUX_WRITE_MOT_0 = 0x0,
16 	I2C_OVER_AUX_READ_MOT_0 = 0x1,
17 	I2C_OVER_AUX_WRITE_STATUS_UPDATE_0 = 0x2,
18 	I2C_OVER_AUX_WRITE_MOT_1 = 0x4,
19 	I2C_OVER_AUX_READ_MOT_1 = 0x5,
20 	I2C_OVER_AUX_WRITE_STATUS_UPDATE_1 = 0x6,
21 	NATIVE_AUX_WRITE = 0x8,
22 	NATIVE_AUX_READ = 0x9,
23 };
24 
25 enum aux_request {
26 	DPCD_READ,
27 	DPCD_WRITE,
28 	I2C_RAW_READ,
29 	I2C_RAW_WRITE,
30 	I2C_RAW_READ_AND_STOP,
31 	I2C_RAW_WRITE_AND_STOP,
32 };
33 
34 /* Backlight configuration */
35 #define DP_BACKLIGHT_MODE_SET			0x721
36 #define DP_BACKLIGHT_CONTROL_MODE_MASK		0x3
37 #define DP_BACKLIGHT_CONTROL_MODE_DPCD		0x2
38 #define DP_DISPLAY_CONTROL_REGISTER		0x720
39 #define DP_BACKLIGHT_ENABLE			0x1
40 #define DP_BACKLIGHT_BRIGHTNESS_MSB		0x722
41 
42 #define DP_AUX_MAX_PAYLOAD_BYTES	16
43 
44 
45 bool dp_aux_request_is_write(enum aux_request request);
46 enum i2c_over_aux dp_get_aux_cmd(enum aux_request request, uint32_t remaining_after_this);
47 
48 #endif
49