博客文章
云桌面之取代RDP的工具(PVE + Sunshine + Moonlight)
2025年12月01日 在 DevOps
2 分钟阅读
What-is-this-Talking-About 这份配置单涵盖了硬件基础设施、虚拟化显示方案、性能优化及串流设置,适用于我的 AMD EPYC 7551 (Home) 和 Dual Xeon (Work) 环境。 硬件环境 Homelab配置 CPU: AMD EPYC 7551 (Home) 主板:Supermicro H11SSL-i 显卡:NVIDIA GeForce GTX 1050 Ti (4GB) Work Server配置 CPU: Dual Xeon (Work) 主板:白 …
异地访问(安全)家中计算机-(OpenWRT+No-IP+WireGuard)
2025年11月27日 在 DevOps
2 分钟阅读
What-is-this-Talking-About 这是一份我的工作笔记,几乎没有进行润色,AI帮助我把思考过程和尝试过程,包括弯路和最终解法都整理出来,写成文档的格式。 其实,自从我在Github Pages开通了博客,我就很自然的也很乐此不疲的多增加一步的工作,把记录从Obsidian里搬进我的Github Blog。 环境: OpenWrt 23.05 目标: 实现外网通过 WireGuard 访问内网资源,并确保公网 IP 变动后自动同步。 要求 要用到异地访问内网,必须要有两个东西 …
硬件分层架构设计哲学
2025年10月16日 在 Linux
2 分钟阅读
Why为何有此文 现代SoC中几乎所有高速和复杂外设接口,都遵循着一套通用的分层设计架构。这并非巧合,而是一种核心的设计哲学,旨在分离关注点 (Separation of Concerns),将复杂的软硬件交互问题分解为更小、更易于管理的部分。 这个哲学是SOC上外设接口常见的设计范式,在配置dts(设备树)的工作时,有这个范式在脑海中,对调试的迷茫感会减轻不少。 本文将首先阐述这一通用的三层架构模型,然后以USB接口为例,详细解析数据从外部设备到CPU的完整通路,最后探讨该模型的普适性与相关专 …
DTS(设备树)调试心得
2025年10月16日 在 Linux
少于1分钟
调试外部设备的dts的思路是这样的: 1. 逻辑节点 有一个逻辑节点,表示开发者可以控制的那个逻辑设备(例如usb)的全部(一般逻辑节点也在被写在板级或产品级的dtsi里面); 2. 控制器节点 逻辑节点里会有一个控制器节点(如何判断一个节点是不是控制器几点,可以参考如何从代码中判断出控制器controller节点是哪一个 3. phy节点 控制器节点里会有phy节点,而如果是usb3.0的话,会有两个phy,一个提供usb2.0,一个提供usb3.0的模式支持。 这是因为usb协议是向前兼容 …
Rockchip显示子系统关键概念解析
2025年08月18日 在 Linux
Categories:
少于1分钟
DTS中"帧率"的计算公式 一个模式mode的帧率原来并不是直接以一个字段的形式写到timing里的,而是靠时钟去计算 计算公式如下: $$ \begin{aligned} \text{Htotal} &= (\text{hsync\_len} + \text{hfront\_porch} + \text{hback\_porch} + \text{hactive}) \\ \text{Vtotal} &= (\text{vsync\_len} + …
LCDs(lvds) on RK3568 Bring-Up 数据流研究
2025年08月18日 在 Linux
Categories:
少于1分钟
背景知识 参考:How-to: 显示接口调试标准工作流程 (SOP) 参考:Rockchip显示子系统关键概念解析 举例: 以lvds为例 数据流-(硬件的视角) 好了,这一步就是要确定硬件是怎么接的,我们直接梳理整个数据流的图形 1. 数据从内存->vop 不论是从外设进来的,还是emmc上的, 都要搬进内存.所以数据流的起点是内存. 这里从内存给到vop里配置的那个具体的vp.在dts里配置vop的代码如下: &lvds_in_vp2 { status = …
How-to: 显示接口调试标准工作流程 (SOP)
2025年08月18日 在 Linux
Categories:
少于1分钟
How-to: 显示接口调试标准工作流程 (SOP) 阶段一:准备与信息收集 (Preparation & Info Gathering) 目标: 在写任何代码或DTS之前,确保你拥有所有必需的“图纸”和“说明书”。 获取硬件原理图 (Schematic): 这是你的依据。你需要知道: 显示接口(MIPI/LVDS)连接到了主控SoC的哪个物理接口?(DSI0 还是 DSI1?) 相关的控制引脚(RESET, POWER_ENABLE, BACKLIGHT_PWM)连接到了哪个GPIO …
How-to: RK3568下强制HDMI的配置
2025年08月18日 在 Linux
Categories:
4 分钟阅读
How-to:hdmi keep connected no matter what 原理图: 检测: 不是用gpio控制的 不管是设置hpd-state还是force_hpd;都是不起作用 display-timings 也不行 接下来就得考虑改变cmdline了…这是唯一可用的方式 解决办法(成功) 打开kernel/drivers/gpu/drm/bridge/synopsys/dw-hdmi.c 修改函数dw_hdmi_phy_read_hpd 修改为如下: enum …
NFS(Net File System)
2025年07月29日 在 DevOps
3 分钟阅读
NFS 挂载问题深度复盘与标准工作流建立 前言 本文档旨在复盘一次在嵌入式 BusyBox 系统 (david 主机) 挂载 Ubuntu NFS 服务器 (Anastasia-Ubuntu) 时,反复出现 Connection refused 错误的排查过程。最终,通过添加 -o nolock 挂载选项成功解决了问题。本文将详细分析失败的根本原因,并建立一套标准的 NFS 服务端与客户端配置工作流,为未来的部署提供可靠参考。 Part 1: Connection refused …