您好、TI!
我们将使用 OLED 屏幕、需要通过辅助通道控制背光亮度。
使用 Linux 时、我们如何读取和写入 HDCP 数据? 您能提供演示代码吗?
期待您的回复!
This thread has been locked.
If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.
您好、Chen!
DSI86不支持 HDCP。
谢谢。
察赫
您好、Chen!
需要对控制和状态寄存器进行配置、以支持标准 DP 显示面板。
数据表列出了用户可以对器件进行读/写来配置的内容。
以下是可帮助您配置器件的电子表格:
关于第二个问题、这是上一个主题、 https://e2e.ti.com/support/interface-group/interface/f/interface-forum/1163750/sn65dsi86-aux-backlight-control。
谢谢。
察赫
尊敬的 Zach:
根据这个 Samsung OLED 面板的数据表、我认为亮度只能由0x0320或0x0354控制。
1.下面是对亮度控制的描述:
1.1 Intel 亮度控制
| 地址 | R/W | 试验 | 该设计的链接 |
| 0x0354 0x0355的配置 |
R/W | {0xxx、0xxx};/* 0x90、0x01:400Nit */ /* 0x96、0x00:150nit */ /* 0x04、0x00:4尼特*/ |
DPCD_INTEL_EDP_BILITY_NITS 尼特值的{LSB、MSB} |
1.2 AMD 亮度控制
| 地址 | R/W | 试验 | 该设计的链接 |
| 0x0320 0x0321 0x0322 0x0323 |
w | {0xxx、0xxx、0xxx、0xxx}; /* 0x80、0x1A、0x06、0x00:400nit */ /* 0xF0、0x49、0x02、0x00:150nit */ /* 0xA0、0x0F、0x00、0x00:4nit */ |
32位要求的亮度、单位为毫尼特 –字节0 (LSB)~字节3 (MSB) |
2.下面是 Linux 中的 Inter 的背光代码:
#define INTEL_EDP_BILITS_LSB 0x354
静态空 intel_dp_aux_hdr_set_aux_backlight (const struct drm_connector_state * conn_state、u32级)
{
buf[0]= level & 0xFF;
buf[1]=(level & 0xFF00)>>8;
drm_dp_dpcd_write (&intel_dp->aux、intel_edp_brightness、nits_lsb、buf、sizeof (buf))! = sizeof (buf))
}
3.因此、我需要读取和写入 Samsung OLED 面板的0x0320寄存器地址、以便通过 AUX 进行亮度控制。
如何配置 sn65dsi86值以读取和写入 OLED 面板的地址0x0320?
期待您的回复! 可考虑!
您好、Chen!
让我们继续讨论一个线程。
这里的 David 似乎正在帮助您解答类似问题:
谢谢。
察赫
尊敬的 Zach:
感谢您的答复。
1.如果我想覆盖指定的寄存器、有没有工具可以生成寄存器地址?
DSI 调谐器2.0.exe 似乎不会为指定的寄存器生成代码、例如将值写入0x0320或00722h。
3.使用什么工具来生成以下代码?
========= 清除 AUX 写入请求的状态寄存器===
F4 FF />
========= 将 DPCD 寄存器0x0010A 写入 Sink 以启用 ASSR===
=========== 要写入的数据为0x01。 =========
64 01. />
=========== DPCD 寄存器为0x0010A。 =========
74 00 />
7501 />
76 0A. />
=========== 要写入的字节数为1 ===
77 01. />
=========== 发送 AUX 写入请求===
78 81.
========= AUX 请求的读取状态===
========= 确保 SEND_INT 已设置,且没有错误===
F4. />
00 />